@planningcenter/chat-react-native 3.30.0-rc.4 → 3.30.0-rc.5

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 (755) hide show
  1. package/build/components/conversation/attachments/attachment_card.js +1 -1
  2. package/build/components/conversation/attachments/attachment_card.js.map +1 -1
  3. package/build/components/conversation/attachments/attachment_deleting_overlay.js +1 -1
  4. package/build/components/conversation/attachments/attachment_deleting_overlay.js.map +1 -1
  5. package/build/components/conversation/attachments/audio_attachment.d.ts.map +1 -1
  6. package/build/components/conversation/attachments/audio_attachment.js +3 -3
  7. package/build/components/conversation/attachments/audio_attachment.js.map +1 -1
  8. package/build/components/conversation/attachments/expanded_link.d.ts.map +1 -1
  9. package/build/components/conversation/attachments/expanded_link.js.map +1 -1
  10. package/build/components/conversation/attachments/generic_file_attachment.d.ts.map +1 -1
  11. package/build/components/conversation/attachments/generic_file_attachment.js +3 -3
  12. package/build/components/conversation/attachments/generic_file_attachment.js.map +1 -1
  13. package/build/components/conversation/attachments/giphy_attachment.d.ts.map +1 -1
  14. package/build/components/conversation/attachments/giphy_attachment.js +1 -1
  15. package/build/components/conversation/attachments/giphy_attachment.js.map +1 -1
  16. package/build/components/conversation/attachments/image_attachment.d.ts.map +1 -1
  17. package/build/components/conversation/attachments/image_attachment.js +2 -2
  18. package/build/components/conversation/attachments/image_attachment.js.map +1 -1
  19. package/build/components/conversation/attachments/video_attachment.d.ts.map +1 -1
  20. package/build/components/conversation/attachments/video_attachment.js +3 -3
  21. package/build/components/conversation/attachments/video_attachment.js.map +1 -1
  22. package/build/components/conversation/empty_conversation_blank_state.js +1 -1
  23. package/build/components/conversation/empty_conversation_blank_state.js.map +1 -1
  24. package/build/components/conversation/jump_to_bottom_button.js +1 -1
  25. package/build/components/conversation/jump_to_bottom_button.js.map +1 -1
  26. package/build/components/conversation/message.d.ts.map +1 -1
  27. package/build/components/conversation/message.js +5 -5
  28. package/build/components/conversation/message.js.map +1 -1
  29. package/build/components/conversation/message_attachments.d.ts +1 -1
  30. package/build/components/conversation/message_attachments.d.ts.map +1 -1
  31. package/build/components/conversation/message_attachments.js +1 -1
  32. package/build/components/conversation/message_attachments.js.map +1 -1
  33. package/build/components/conversation/message_form/message_form_attachment_image.d.ts.map +1 -1
  34. package/build/components/conversation/message_form/message_form_attachment_image.js +1 -1
  35. package/build/components/conversation/message_form/message_form_attachment_image.js.map +1 -1
  36. package/build/components/conversation/message_form/message_form_attachment_video.d.ts.map +1 -1
  37. package/build/components/conversation/message_form/message_form_attachment_video.js +1 -1
  38. package/build/components/conversation/message_form/message_form_attachment_video.js.map +1 -1
  39. package/build/components/conversation/message_form.d.ts.map +1 -1
  40. package/build/components/conversation/message_form.js +4 -4
  41. package/build/components/conversation/message_form.js.map +1 -1
  42. package/build/components/conversation/message_markdown.js +1 -1
  43. package/build/components/conversation/message_markdown.js.map +1 -1
  44. package/build/components/conversation/message_reaction.d.ts.map +1 -1
  45. package/build/components/conversation/message_reaction.js.map +1 -1
  46. package/build/components/conversation/message_read_receipts.d.ts.map +1 -1
  47. package/build/components/conversation/message_read_receipts.js +1 -1
  48. package/build/components/conversation/message_read_receipts.js.map +1 -1
  49. package/build/components/conversation/messages_disabled_banners.js +1 -1
  50. package/build/components/conversation/messages_disabled_banners.js.map +1 -1
  51. package/build/components/conversation/reply_connectors.d.ts.map +1 -1
  52. package/build/components/conversation/reply_connectors.js.map +1 -1
  53. package/build/components/conversation/reply_shadow_message.d.ts.map +1 -1
  54. package/build/components/conversation/reply_shadow_message.js +2 -2
  55. package/build/components/conversation/reply_shadow_message.js.map +1 -1
  56. package/build/components/conversation/typing_indicator.js +1 -1
  57. package/build/components/conversation/typing_indicator.js.map +1 -1
  58. package/build/components/conversations/conversation_actions.d.ts.map +1 -1
  59. package/build/components/conversations/conversation_actions.js +2 -2
  60. package/build/components/conversations/conversation_actions.js.map +1 -1
  61. package/build/components/conversations/conversation_preview.d.ts.map +1 -1
  62. package/build/components/conversations/conversation_preview.js +3 -3
  63. package/build/components/conversations/conversation_preview.js.map +1 -1
  64. package/build/components/conversations/conversations.js +2 -2
  65. package/build/components/conversations/conversations.js.map +1 -1
  66. package/build/components/conversations/mute_indicator.js +1 -1
  67. package/build/components/conversations/mute_indicator.js.map +1 -1
  68. package/build/components/conversations/swipeable_toggle_button.d.ts +1 -1
  69. package/build/components/conversations/swipeable_toggle_button.d.ts.map +1 -1
  70. package/build/components/conversations/swipeable_toggle_button.js +1 -1
  71. package/build/components/conversations/swipeable_toggle_button.js.map +1 -1
  72. package/build/components/conversations/unread_count_badge.js +1 -1
  73. package/build/components/conversations/unread_count_badge.js.map +1 -1
  74. package/build/components/display/action_button.d.ts.map +1 -1
  75. package/build/components/display/action_button.js +2 -2
  76. package/build/components/display/action_button.js.map +1 -1
  77. package/build/components/display/avatar.d.ts +1 -1
  78. package/build/components/display/avatar.d.ts.map +1 -1
  79. package/build/components/display/avatar.js +1 -1
  80. package/build/components/display/avatar.js.map +1 -1
  81. package/build/components/display/avatar_group.d.ts +1 -1
  82. package/build/components/display/avatar_group.d.ts.map +1 -1
  83. package/build/components/display/avatar_group.js +1 -1
  84. package/build/components/display/avatar_group.js.map +1 -1
  85. package/build/components/display/badge.d.ts.map +1 -1
  86. package/build/components/display/badge.js +3 -3
  87. package/build/components/display/badge.js.map +1 -1
  88. package/build/components/display/banner.d.ts +1 -1
  89. package/build/components/display/banner.d.ts.map +1 -1
  90. package/build/components/display/banner.js +1 -1
  91. package/build/components/display/banner.js.map +1 -1
  92. package/build/components/display/banner_collapsible.d.ts.map +1 -1
  93. package/build/components/display/banner_collapsible.js +1 -1
  94. package/build/components/display/banner_collapsible.js.map +1 -1
  95. package/build/components/display/button.d.ts.map +1 -1
  96. package/build/components/display/button.js +3 -3
  97. package/build/components/display/button.js.map +1 -1
  98. package/build/components/display/child_notice.d.ts.map +1 -1
  99. package/build/components/display/child_notice.js +2 -2
  100. package/build/components/display/child_notice.js.map +1 -1
  101. package/build/components/display/heading.js.map +1 -1
  102. package/build/components/display/icon.js.map +1 -1
  103. package/build/components/display/icon_button.d.ts.map +1 -1
  104. package/build/components/display/icon_button.js +2 -2
  105. package/build/components/display/icon_button.js.map +1 -1
  106. package/build/components/display/image.js +1 -1
  107. package/build/components/display/image.js.map +1 -1
  108. package/build/components/display/image_attachment_preview.js +2 -2
  109. package/build/components/display/image_attachment_preview.js.map +1 -1
  110. package/build/components/display/keyboard_view.js.map +1 -1
  111. package/build/components/display/person.d.ts.map +1 -1
  112. package/build/components/display/person.js +1 -1
  113. package/build/components/display/person.js.map +1 -1
  114. package/build/components/display/platform_modal_header_buttons.js +1 -1
  115. package/build/components/display/platform_modal_header_buttons.js.map +1 -1
  116. package/build/components/display/pressable_row.d.ts.map +1 -1
  117. package/build/components/display/pressable_row.js +1 -1
  118. package/build/components/display/pressable_row.js.map +1 -1
  119. package/build/components/display/spinner.js.map +1 -1
  120. package/build/components/display/switch.js.map +1 -1
  121. package/build/components/display/tabs.js.map +1 -1
  122. package/build/components/display/text.js.map +1 -1
  123. package/build/components/display/text_button.d.ts.map +1 -1
  124. package/build/components/display/text_button.js +2 -2
  125. package/build/components/display/text_button.js.map +1 -1
  126. package/build/components/display/text_inline_button.d.ts.map +1 -1
  127. package/build/components/display/text_inline_button.js +2 -2
  128. package/build/components/display/text_inline_button.js.map +1 -1
  129. package/build/components/display/toggle_button.d.ts.map +1 -1
  130. package/build/components/display/toggle_button.js +2 -2
  131. package/build/components/display/toggle_button.js.map +1 -1
  132. package/build/components/display/utils/button_colors.js.map +1 -1
  133. package/build/components/display/utils/status_colors.js.map +1 -1
  134. package/build/components/display/video_attachment_preview.js +3 -3
  135. package/build/components/display/video_attachment_preview.js.map +1 -1
  136. package/build/components/group_conversation_list.d.ts.map +1 -1
  137. package/build/components/group_conversation_list.js +2 -2
  138. package/build/components/group_conversation_list.js.map +1 -1
  139. package/build/components/page/error_boundary.d.ts.map +1 -1
  140. package/build/components/page/error_boundary.js +1 -1
  141. package/build/components/page/error_boundary.js.map +1 -1
  142. package/build/components/page/loading.js +1 -1
  143. package/build/components/page/loading.js.map +1 -1
  144. package/build/components/primitive/avatar_primitive.d.ts +2 -2
  145. package/build/components/primitive/avatar_primitive.d.ts.map +1 -1
  146. package/build/components/primitive/avatar_primitive.js +3 -3
  147. package/build/components/primitive/avatar_primitive.js.map +1 -1
  148. package/build/components/primitive/banner_primitive.d.ts +2 -2
  149. package/build/components/primitive/banner_primitive.d.ts.map +1 -1
  150. package/build/components/primitive/banner_primitive.js +5 -5
  151. package/build/components/primitive/banner_primitive.js.map +1 -1
  152. package/build/components/primitive/blank_state_primitive.d.ts +1 -1
  153. package/build/components/primitive/blank_state_primitive.d.ts.map +1 -1
  154. package/build/components/primitive/blank_state_primitive.js +1 -1
  155. package/build/components/primitive/blank_state_primitive.js.map +1 -1
  156. package/build/components/primitive/form_sheet.d.ts +2 -2
  157. package/build/components/primitive/form_sheet.d.ts.map +1 -1
  158. package/build/components/primitive/form_sheet.js +1 -1
  159. package/build/components/primitive/form_sheet.js.map +1 -1
  160. package/build/components/safe_area_modal.js.map +1 -1
  161. package/build/contexts/api_provider.js +1 -1
  162. package/build/contexts/api_provider.js.map +1 -1
  163. package/build/contexts/chat_context.d.ts.map +1 -1
  164. package/build/contexts/chat_context.js.map +1 -1
  165. package/build/contexts/conversations_context.d.ts.map +1 -1
  166. package/build/contexts/conversations_context.js.map +1 -1
  167. package/build/contexts/session_context.d.ts.map +1 -1
  168. package/build/contexts/session_context.js +1 -1
  169. package/build/contexts/session_context.js.map +1 -1
  170. package/build/hooks/groups/use_group_members_for_new_conversation.d.ts +2 -2
  171. package/build/hooks/groups/use_group_members_for_new_conversation.d.ts.map +1 -1
  172. package/build/hooks/groups/use_group_members_for_new_conversation.js +2 -2
  173. package/build/hooks/groups/use_group_members_for_new_conversation.js.map +1 -1
  174. package/build/hooks/groups/use_groups_conversation_create.d.ts.map +1 -1
  175. package/build/hooks/groups/use_groups_conversation_create.js +1 -1
  176. package/build/hooks/groups/use_groups_conversation_create.js.map +1 -1
  177. package/build/hooks/services/use_find_or_create_services_conversation.d.ts +1 -1
  178. package/build/hooks/services/use_find_or_create_services_conversation.d.ts.map +1 -1
  179. package/build/hooks/services/use_find_or_create_services_conversation.js +1 -1
  180. package/build/hooks/services/use_find_or_create_services_conversation.js.map +1 -1
  181. package/build/hooks/services/use_services_team.d.ts.map +1 -1
  182. package/build/hooks/services/use_services_team.js +1 -1
  183. package/build/hooks/services/use_services_team.js.map +1 -1
  184. package/build/hooks/services/use_team_members_for_new_conversation.d.ts.map +1 -1
  185. package/build/hooks/services/use_team_members_for_new_conversation.js +1 -1
  186. package/build/hooks/services/use_team_members_for_new_conversation.js.map +1 -1
  187. package/build/hooks/services/use_team_plans.js +1 -1
  188. package/build/hooks/services/use_team_plans.js.map +1 -1
  189. package/build/hooks/use_api.d.ts +1 -1
  190. package/build/hooks/use_api.d.ts.map +1 -1
  191. package/build/hooks/use_api.js.map +1 -1
  192. package/build/hooks/use_api_client.d.ts.map +1 -1
  193. package/build/hooks/use_api_client.js.map +1 -1
  194. package/build/hooks/use_async_storage.js +1 -1
  195. package/build/hooks/use_async_storage.js.map +1 -1
  196. package/build/hooks/use_attachment_uploader.d.ts.map +1 -1
  197. package/build/hooks/use_attachment_uploader.js.map +1 -1
  198. package/build/hooks/use_broadcast_typing_status.js +1 -1
  199. package/build/hooks/use_broadcast_typing_status.js.map +1 -1
  200. package/build/hooks/use_chat_permissions.d.ts +1 -1
  201. package/build/hooks/use_chat_permissions.d.ts.map +1 -1
  202. package/build/hooks/use_chat_permissions.js.map +1 -1
  203. package/build/hooks/use_conversation.d.ts +1 -1
  204. package/build/hooks/use_conversation.d.ts.map +1 -1
  205. package/build/hooks/use_conversation.js +2 -2
  206. package/build/hooks/use_conversation.js.map +1 -1
  207. package/build/hooks/use_conversation_jolt_events.js +1 -1
  208. package/build/hooks/use_conversation_jolt_events.js.map +1 -1
  209. package/build/hooks/use_conversation_membership.d.ts.map +1 -1
  210. package/build/hooks/use_conversation_membership.js +2 -2
  211. package/build/hooks/use_conversation_membership.js.map +1 -1
  212. package/build/hooks/use_conversation_message.d.ts.map +1 -1
  213. package/build/hooks/use_conversation_message.js +1 -1
  214. package/build/hooks/use_conversation_message.js.map +1 -1
  215. package/build/hooks/use_conversation_messages.d.ts +1 -1
  216. package/build/hooks/use_conversation_messages.d.ts.map +1 -1
  217. package/build/hooks/use_conversation_messages.js +1 -1
  218. package/build/hooks/use_conversation_messages.js.map +1 -1
  219. package/build/hooks/use_conversation_messages_jolt_events.js +5 -5
  220. package/build/hooks/use_conversation_messages_jolt_events.js.map +1 -1
  221. package/build/hooks/use_conversations.d.ts.map +1 -1
  222. package/build/hooks/use_conversations.js +1 -1
  223. package/build/hooks/use_conversations.js.map +1 -1
  224. package/build/hooks/use_conversations_actions.d.ts.map +1 -1
  225. package/build/hooks/use_conversations_actions.js +1 -1
  226. package/build/hooks/use_conversations_actions.js.map +1 -1
  227. package/build/hooks/use_conversations_cache.d.ts.map +1 -1
  228. package/build/hooks/use_conversations_cache.js +2 -2
  229. package/build/hooks/use_conversations_cache.js.map +1 -1
  230. package/build/hooks/use_conversations_jolt_events.js +2 -2
  231. package/build/hooks/use_conversations_jolt_events.js.map +1 -1
  232. package/build/hooks/use_current_person.d.ts.map +1 -1
  233. package/build/hooks/use_current_person.js.map +1 -1
  234. package/build/hooks/use_features.d.ts.map +1 -1
  235. package/build/hooks/use_features.js +1 -1
  236. package/build/hooks/use_features.js.map +1 -1
  237. package/build/hooks/use_giphy.d.ts.map +1 -1
  238. package/build/hooks/use_giphy.js.map +1 -1
  239. package/build/hooks/use_groups.d.ts.map +1 -1
  240. package/build/hooks/use_groups.js.map +1 -1
  241. package/build/hooks/use_groups_groups.d.ts.map +1 -1
  242. package/build/hooks/use_groups_groups.js.map +1 -1
  243. package/build/hooks/use_jolt.js.map +1 -1
  244. package/build/hooks/use_live_relative_time.d.ts.map +1 -1
  245. package/build/hooks/use_live_relative_time.js.map +1 -1
  246. package/build/hooks/use_mark_latest_message_read.d.ts.map +1 -1
  247. package/build/hooks/use_mark_latest_message_read.js.map +1 -1
  248. package/build/hooks/use_message_create_or_update.d.ts.map +1 -1
  249. package/build/hooks/use_message_create_or_update.js +2 -2
  250. package/build/hooks/use_message_create_or_update.js.map +1 -1
  251. package/build/hooks/use_message_draft.d.ts.map +1 -1
  252. package/build/hooks/use_message_draft.js +1 -1
  253. package/build/hooks/use_message_draft.js.map +1 -1
  254. package/build/hooks/use_message_reaction_toggle.d.ts.map +1 -1
  255. package/build/hooks/use_message_reaction_toggle.js +1 -1
  256. package/build/hooks/use_message_reaction_toggle.js.map +1 -1
  257. package/build/hooks/use_my_gender.js.map +1 -1
  258. package/build/hooks/use_organization.d.ts +2 -2
  259. package/build/hooks/use_organization.d.ts.map +1 -1
  260. package/build/hooks/use_organization.js.map +1 -1
  261. package/build/hooks/use_people_person.d.ts.map +1 -1
  262. package/build/hooks/use_people_person.js.map +1 -1
  263. package/build/hooks/use_product_analytics.d.ts.map +1 -1
  264. package/build/hooks/use_product_analytics.js.map +1 -1
  265. package/build/hooks/use_qualified_by_age.js +1 -1
  266. package/build/hooks/use_qualified_by_age.js.map +1 -1
  267. package/build/hooks/use_read_receipts.d.ts +1 -1
  268. package/build/hooks/use_read_receipts.d.ts.map +1 -1
  269. package/build/hooks/use_read_receipts.js.map +1 -1
  270. package/build/hooks/use_report_message.d.ts.map +1 -1
  271. package/build/hooks/use_report_message.js +1 -1
  272. package/build/hooks/use_report_message.js.map +1 -1
  273. package/build/hooks/use_storage.d.ts.map +1 -1
  274. package/build/hooks/use_storage.js.map +1 -1
  275. package/build/hooks/use_submit_age_check.d.ts.map +1 -1
  276. package/build/hooks/use_submit_age_check.js +1 -1
  277. package/build/hooks/use_submit_age_check.js.map +1 -1
  278. package/build/hooks/use_suspense_api.d.ts +3 -3
  279. package/build/hooks/use_suspense_api.d.ts.map +1 -1
  280. package/build/hooks/use_suspense_api.js +1 -1
  281. package/build/hooks/use_suspense_api.js.map +1 -1
  282. package/build/hooks/use_teams.d.ts.map +1 -1
  283. package/build/hooks/use_teams.js.map +1 -1
  284. package/build/hooks/use_theme.d.ts.map +1 -1
  285. package/build/hooks/use_theme.js.map +1 -1
  286. package/build/hooks/use_typing_indicators.d.ts.map +1 -1
  287. package/build/hooks/use_typing_indicators.js +1 -1
  288. package/build/hooks/use_typing_indicators.js.map +1 -1
  289. package/build/hooks/use_typing_status_cache.d.ts.map +1 -1
  290. package/build/hooks/use_typing_status_cache.js.map +1 -1
  291. package/build/hooks/use_upload_client.d.ts.map +1 -1
  292. package/build/hooks/use_upload_client.js.map +1 -1
  293. package/build/icons/font_awesome.js.map +1 -1
  294. package/build/index.d.ts +1 -1
  295. package/build/index.js +1 -1
  296. package/build/navigation/chat_access_gate.js.map +1 -1
  297. package/build/navigation/index.d.ts +1 -1
  298. package/build/navigation/index.d.ts.map +1 -1
  299. package/build/navigation/index.js +2 -2
  300. package/build/navigation/index.js.map +1 -1
  301. package/build/navigation/screenLayout.js +1 -1
  302. package/build/navigation/screenLayout.js.map +1 -1
  303. package/build/polyfills/events/Event.d.ts +0 -4
  304. package/build/polyfills/events/Event.d.ts.map +1 -1
  305. package/build/polyfills/events/Event.js +5 -1
  306. package/build/polyfills/events/Event.js.map +1 -1
  307. package/build/polyfills/events/EventTarget.d.ts +0 -3
  308. package/build/polyfills/events/EventTarget.d.ts.map +1 -1
  309. package/build/polyfills/events/EventTarget.js +1 -1
  310. package/build/polyfills/events/EventTarget.js.map +1 -1
  311. package/build/polyfills/events/internals/EventInternals.d.ts +2 -2
  312. package/build/polyfills/events/internals/EventInternals.d.ts.map +1 -1
  313. package/build/polyfills/events/internals/EventInternals.js.map +1 -1
  314. package/build/polyfills/events/internals/EventTargetInternals.d.ts +2 -2
  315. package/build/polyfills/events/internals/EventTargetInternals.d.ts.map +1 -1
  316. package/build/polyfills/events/internals/EventTargetInternals.js.map +1 -1
  317. package/build/screens/age_check/age_check_required_screen.js +1 -1
  318. package/build/screens/age_check/age_check_required_screen.js.map +1 -1
  319. package/build/screens/age_check/age_check_underage_screen.js.map +1 -1
  320. package/build/screens/age_check/components/age_check_select_birthdate_modal.js.map +1 -1
  321. package/build/screens/attachment_actions/attachment_actions_screen.js +1 -1
  322. package/build/screens/attachment_actions/attachment_actions_screen.js.map +1 -1
  323. package/build/screens/attachment_actions/hooks/useDeleteAttachment.js.map +1 -1
  324. package/build/screens/bug_report_screen.js.map +1 -1
  325. package/build/screens/conversation/message_read_receipts_screen.js.map +1 -1
  326. package/build/screens/conversation_details_screen.js.map +1 -1
  327. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts +1 -1
  328. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts.map +1 -1
  329. package/build/screens/conversation_filter_recipients/components/checkbox_row.js.map +1 -1
  330. package/build/screens/conversation_filter_recipients/components/header_row.d.ts +1 -1
  331. package/build/screens/conversation_filter_recipients/components/header_row.d.ts.map +1 -1
  332. package/build/screens/conversation_filter_recipients/components/header_row.js.map +1 -1
  333. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts.map +1 -1
  334. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js +5 -5
  335. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js.map +1 -1
  336. package/build/screens/conversation_filter_recipients/hooks/use_flattened_array_of_service_types_with_teams.d.ts +1 -1
  337. package/build/screens/conversation_filter_recipients/hooks/use_flattened_array_of_service_types_with_teams.d.ts.map +1 -1
  338. package/build/screens/conversation_filter_recipients/hooks/use_flattened_array_of_service_types_with_teams.js +1 -1
  339. package/build/screens/conversation_filter_recipients/hooks/use_flattened_array_of_service_types_with_teams.js.map +1 -1
  340. package/build/screens/conversation_filter_recipients/hooks/use_service_types_with_teams.d.ts +1 -1
  341. package/build/screens/conversation_filter_recipients/hooks/use_service_types_with_teams.d.ts.map +1 -1
  342. package/build/screens/conversation_filter_recipients/hooks/use_service_types_with_teams.js +1 -1
  343. package/build/screens/conversation_filter_recipients/hooks/use_service_types_with_teams.js.map +1 -1
  344. package/build/screens/conversation_filter_recipients/types.d.ts.map +1 -1
  345. package/build/screens/conversation_filter_recipients/types.js.map +1 -1
  346. package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
  347. package/build/screens/conversation_filters/components/conversation_filters.js +4 -4
  348. package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
  349. package/build/screens/conversation_filters/components/rows.d.ts +3 -3
  350. package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
  351. package/build/screens/conversation_filters/components/rows.js +2 -2
  352. package/build/screens/conversation_filters/components/rows.js.map +1 -1
  353. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts +1 -1
  354. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts.map +1 -1
  355. package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
  356. package/build/screens/conversation_filters/group_filters.d.ts.map +1 -1
  357. package/build/screens/conversation_filters/group_filters.js +1 -1
  358. package/build/screens/conversation_filters/group_filters.js.map +1 -1
  359. package/build/screens/conversation_filters/hooks/filters.d.ts.map +1 -1
  360. package/build/screens/conversation_filters/hooks/filters.js.map +1 -1
  361. package/build/screens/conversation_filters/screen_props.d.ts.map +1 -1
  362. package/build/screens/conversation_filters/screen_props.js.map +1 -1
  363. package/build/screens/conversation_filters/team_filters.d.ts.map +1 -1
  364. package/build/screens/conversation_filters/team_filters.js +1 -1
  365. package/build/screens/conversation_filters/team_filters.js.map +1 -1
  366. package/build/screens/conversation_filters_screen.d.ts.map +1 -1
  367. package/build/screens/conversation_filters_screen.js +1 -1
  368. package/build/screens/conversation_filters_screen.js.map +1 -1
  369. package/build/screens/conversation_new/components/filter_by_plan.js.map +1 -1
  370. package/build/screens/conversation_new/components/form_list.d.ts.map +1 -1
  371. package/build/screens/conversation_new/components/form_list.js.map +1 -1
  372. package/build/screens/conversation_new/components/gender_filter_toggle.js.map +1 -1
  373. package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
  374. package/build/screens/conversation_new/components/groups_form.js +2 -2
  375. package/build/screens/conversation_new/components/groups_form.js.map +1 -1
  376. package/build/screens/conversation_new/components/services_form.d.ts +1 -1
  377. package/build/screens/conversation_new/components/services_form.d.ts.map +1 -1
  378. package/build/screens/conversation_new/components/services_form.js +2 -2
  379. package/build/screens/conversation_new/components/services_form.js.map +1 -1
  380. package/build/screens/conversation_new/components/source_app_error_card.js.map +1 -1
  381. package/build/screens/conversation_new/conversation_new_screen.d.ts +1 -1
  382. package/build/screens/conversation_new/conversation_new_screen.d.ts.map +1 -1
  383. package/build/screens/conversation_new/conversation_new_screen.js.map +1 -1
  384. package/build/screens/conversation_notification_level_select_screen.js.map +1 -1
  385. package/build/screens/conversation_screen.d.ts.map +1 -1
  386. package/build/screens/conversation_screen.js.map +1 -1
  387. package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts.map +1 -1
  388. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js +1 -1
  389. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js.map +1 -1
  390. package/build/screens/conversation_select_recipients/components/recipient_link_row.js.map +1 -1
  391. package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts.map +1 -1
  392. package/build/screens/conversation_select_recipients/components/restricted_group_row.js.map +1 -1
  393. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts +1 -1
  394. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts.map +1 -1
  395. package/build/screens/conversation_select_recipients/components/team_recipient_row.js +1 -1
  396. package/build/screens/conversation_select_recipients/components/team_recipient_row.js.map +1 -1
  397. package/build/screens/conversation_select_recipients/components/view_more_link_row.js.map +1 -1
  398. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts.map +1 -1
  399. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js.map +1 -1
  400. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts.map +1 -1
  401. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js +2 -2
  402. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js.map +1 -1
  403. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts.map +1 -1
  404. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js +3 -3
  405. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js.map +1 -1
  406. package/build/screens/conversation_select_recipients/types/screen_props.d.ts.map +1 -1
  407. package/build/screens/conversation_select_recipients/types/screen_props.js.map +1 -1
  408. package/build/screens/conversation_select_type_screen.d.ts.map +1 -1
  409. package/build/screens/conversation_select_type_screen.js.map +1 -1
  410. package/build/screens/conversations/components/chat_group_badge.js.map +1 -1
  411. package/build/screens/conversations/components/list_header_action_button.d.ts.map +1 -1
  412. package/build/screens/conversations/components/list_header_action_button.js.map +1 -1
  413. package/build/screens/conversations/components/list_header_component.js +2 -2
  414. package/build/screens/conversations/components/list_header_component.js.map +1 -1
  415. package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
  416. package/build/screens/conversations/conversations_screen.js +1 -1
  417. package/build/screens/conversations/conversations_screen.js.map +1 -1
  418. package/build/screens/design_system_screen.js.map +1 -1
  419. package/build/screens/get_help_screen.js.map +1 -1
  420. package/build/screens/group_notification_level_select_screen.js +1 -1
  421. package/build/screens/group_notification_level_select_screen.js.map +1 -1
  422. package/build/screens/group_notification_settings_screen.js +1 -1
  423. package/build/screens/group_notification_settings_screen.js.map +1 -1
  424. package/build/screens/message_actions_screen.js.map +1 -1
  425. package/build/screens/message_report/components/message_preview.d.ts.map +1 -1
  426. package/build/screens/message_report/components/message_preview.js.map +1 -1
  427. package/build/screens/message_report/components/report_reason_list.d.ts.map +1 -1
  428. package/build/screens/message_report/components/report_reason_list.js +1 -1
  429. package/build/screens/message_report/components/report_reason_list.js.map +1 -1
  430. package/build/screens/message_report_screen.js +2 -2
  431. package/build/screens/message_report_screen.js.map +1 -1
  432. package/build/screens/notification_settings/hooks/groups.d.ts +2 -2
  433. package/build/screens/notification_settings/hooks/groups.d.ts.map +1 -1
  434. package/build/screens/notification_settings/hooks/groups.js.map +1 -1
  435. package/build/screens/notification_settings_screen.js +2 -2
  436. package/build/screens/notification_settings_screen.js.map +1 -1
  437. package/build/screens/preferred_app/hooks/use_chat_types.d.ts +1 -1
  438. package/build/screens/preferred_app/hooks/use_chat_types.d.ts.map +1 -1
  439. package/build/screens/preferred_app/hooks/use_chat_types.js.map +1 -1
  440. package/build/screens/preferred_app_selection_screen.d.ts.map +1 -1
  441. package/build/screens/preferred_app_selection_screen.js +4 -4
  442. package/build/screens/preferred_app_selection_screen.js.map +1 -1
  443. package/build/screens/reactions_screen.js.map +1 -1
  444. package/build/screens/send_giphy_screen.js.map +1 -1
  445. package/build/screens/team_conversation_screen.js.map +1 -1
  446. package/build/types/jolt_events/message_events.d.ts +1 -1
  447. package/build/types/jolt_events/message_events.d.ts.map +1 -1
  448. package/build/types/jolt_events/message_events.js.map +1 -1
  449. package/build/types/jolt_events/reaction_events.d.ts +1 -1
  450. package/build/types/jolt_events/reaction_events.d.ts.map +1 -1
  451. package/build/types/jolt_events/reaction_events.js.map +1 -1
  452. package/build/types/resources/app_grant.d.ts +1 -1
  453. package/build/types/resources/app_grant.d.ts.map +1 -1
  454. package/build/types/resources/app_grant.js.map +1 -1
  455. package/build/types/resources/conversation_membership.d.ts +1 -1
  456. package/build/types/resources/conversation_membership.d.ts.map +1 -1
  457. package/build/types/resources/conversation_membership.js.map +1 -1
  458. package/build/types/resources/group_membership.d.ts +1 -1
  459. package/build/types/resources/group_membership.d.ts.map +1 -1
  460. package/build/types/resources/group_membership.js.map +1 -1
  461. package/build/types/resources/groups/groups_group_resource.d.ts +1 -1
  462. package/build/types/resources/groups/groups_group_resource.d.ts.map +1 -1
  463. package/build/types/resources/groups/groups_group_resource.js.map +1 -1
  464. package/build/types/resources/organization.d.ts +1 -1
  465. package/build/types/resources/organization.d.ts.map +1 -1
  466. package/build/types/resources/organization.js.map +1 -1
  467. package/build/types/resources/person.d.ts +1 -1
  468. package/build/types/resources/person.d.ts.map +1 -1
  469. package/build/types/resources/person.js.map +1 -1
  470. package/build/types/resources/services/chat_resource.d.ts +1 -1
  471. package/build/types/resources/services/chat_resource.d.ts.map +1 -1
  472. package/build/types/resources/services/chat_resource.js.map +1 -1
  473. package/build/types/resources/services/team_resource.d.ts +1 -1
  474. package/build/types/resources/services/team_resource.d.ts.map +1 -1
  475. package/build/types/resources/services/team_resource.js.map +1 -1
  476. package/build/utils/cache/messages_cache.d.ts.map +1 -1
  477. package/build/utils/cache/messages_cache.js +3 -3
  478. package/build/utils/cache/messages_cache.js.map +1 -1
  479. package/build/utils/cache/optimistically_create_message.d.ts.map +1 -1
  480. package/build/utils/cache/optimistically_create_message.js +3 -3
  481. package/build/utils/cache/optimistically_create_message.js.map +1 -1
  482. package/build/utils/cache/optimistically_update_message.d.ts.map +1 -1
  483. package/build/utils/cache/optimistically_update_message.js +1 -1
  484. package/build/utils/cache/optimistically_update_message.js.map +1 -1
  485. package/build/utils/cache/page_mutations.d.ts.map +1 -1
  486. package/build/utils/cache/page_mutations.js.map +1 -1
  487. package/build/utils/client/client.d.ts +1 -1
  488. package/build/utils/client/client.d.ts.map +1 -1
  489. package/build/utils/client/client.js.map +1 -1
  490. package/build/utils/convert_attachments_for_create.d.ts.map +1 -1
  491. package/build/utils/convert_attachments_for_create.js.map +1 -1
  492. package/build/utils/destructure_chat_group_graph_id.d.ts.map +1 -1
  493. package/build/utils/destructure_chat_group_graph_id.js.map +1 -1
  494. package/build/utils/jolt/transform_message_event_data_to_message_resource.d.ts.map +1 -1
  495. package/build/utils/jolt/transform_message_event_data_to_message_resource.js +1 -1
  496. package/build/utils/jolt/transform_message_event_data_to_message_resource.js.map +1 -1
  497. package/build/utils/jolt/transform_reaction_event_data_to_reaction_count_resource.d.ts.map +1 -1
  498. package/build/utils/jolt/transform_reaction_event_data_to_reaction_count_resource.js.map +1 -1
  499. package/build/utils/performance_tracking.d.ts.map +1 -1
  500. package/build/utils/performance_tracking.js.map +1 -1
  501. package/build/utils/reaction_constants.d.ts.map +1 -1
  502. package/build/utils/reaction_constants.js.map +1 -1
  503. package/build/utils/request/conversation.d.ts +1 -1
  504. package/build/utils/request/conversation.d.ts.map +1 -1
  505. package/build/utils/request/conversation.js.map +1 -1
  506. package/build/utils/request/get_features.d.ts.map +1 -1
  507. package/build/utils/request/get_features.js.map +1 -1
  508. package/build/utils/request/get_message.d.ts.map +1 -1
  509. package/build/utils/request/get_message.js +1 -1
  510. package/build/utils/request/get_message.js.map +1 -1
  511. package/build/utils/request/get_messages.d.ts.map +1 -1
  512. package/build/utils/request/get_messages.js +1 -1
  513. package/build/utils/request/get_messages.js.map +1 -1
  514. package/build/utils/response_error.d.ts.map +1 -1
  515. package/build/utils/response_error.js.map +1 -1
  516. package/build/utils/session.d.ts.map +1 -1
  517. package/build/utils/session.js.map +1 -1
  518. package/build/utils/session_manager.d.ts +1 -1
  519. package/build/utils/session_manager.d.ts.map +1 -1
  520. package/build/utils/session_manager.js.map +1 -1
  521. package/build/utils/styles.js.map +1 -1
  522. package/build/utils/theme.d.ts.map +1 -1
  523. package/build/utils/theme.js.map +1 -1
  524. package/build/utils/upload_uri.d.ts +1 -1
  525. package/package.json +3 -5
  526. package/src/__tests__/contexts/session_context.tsx +5 -5
  527. package/src/__tests__/event-polyfill.test.ts +3 -3
  528. package/src/__tests__/hooks/useTheme.tsx +2 -2
  529. package/src/__tests__/hooks/use_async_storage.test.tsx +1 -1
  530. package/src/__tests__/hooks/use_conversation_messages.ts +2 -2
  531. package/src/__tests__/hooks/use_font_scale.test.ts +1 -1
  532. package/src/__tests__/utils/cache/page_mutations.ts +1 -1
  533. package/src/__tests__/utils/client.ts +5 -5
  534. package/src/__tests__/utils/native_adapters/configuration.ts +4 -4
  535. package/src/__tests__/utils/parse_simple_markdown.ts +1 -1
  536. package/src/__tests__/utils/pluralize.tsx +1 -1
  537. package/src/__tests__/utils/session.ts +2 -2
  538. package/src/__tests__/utils/uri.ts +1 -1
  539. package/src/__utils__/handlers.ts +1 -1
  540. package/src/components/conversation/attachments/attachment_card.tsx +3 -3
  541. package/src/components/conversation/attachments/attachment_deleting_overlay.tsx +2 -2
  542. package/src/components/conversation/attachments/audio_attachment.tsx +4 -4
  543. package/src/components/conversation/attachments/expanded_link.tsx +4 -4
  544. package/src/components/conversation/attachments/generic_file_attachment.tsx +5 -5
  545. package/src/components/conversation/attachments/giphy_attachment.tsx +5 -5
  546. package/src/components/conversation/attachments/image_attachment.tsx +6 -6
  547. package/src/components/conversation/attachments/video_attachment.tsx +5 -5
  548. package/src/components/conversation/empty_conversation_blank_state.tsx +1 -1
  549. package/src/components/conversation/jump_to_bottom_button.tsx +3 -3
  550. package/src/components/conversation/message.tsx +19 -19
  551. package/src/components/conversation/message_attachments.tsx +5 -5
  552. package/src/components/conversation/message_form/message_form_attachment_image.tsx +2 -2
  553. package/src/components/conversation/message_form/message_form_attachment_video.tsx +2 -2
  554. package/src/components/conversation/message_form.tsx +17 -17
  555. package/src/components/conversation/message_markdown.tsx +3 -3
  556. package/src/components/conversation/message_reaction.tsx +8 -8
  557. package/src/components/conversation/message_read_receipts.tsx +3 -3
  558. package/src/components/conversation/messages_disabled_banners.tsx +2 -2
  559. package/src/components/conversation/reply_connectors.tsx +3 -3
  560. package/src/components/conversation/reply_shadow_message.tsx +9 -9
  561. package/src/components/conversation/typing_indicator.tsx +3 -3
  562. package/src/components/conversations/conversation_actions.tsx +9 -6
  563. package/src/components/conversations/conversation_preview.tsx +9 -4
  564. package/src/components/conversations/conversations.tsx +6 -6
  565. package/src/components/conversations/mute_indicator.tsx +3 -3
  566. package/src/components/conversations/swipeable_toggle_button.tsx +5 -5
  567. package/src/components/conversations/unread_count_badge.tsx +3 -3
  568. package/src/components/display/action_button.tsx +2 -2
  569. package/src/components/display/avatar.tsx +2 -2
  570. package/src/components/display/avatar_group.tsx +2 -2
  571. package/src/components/display/badge.tsx +3 -3
  572. package/src/components/display/banner.tsx +1 -1
  573. package/src/components/display/banner_collapsible.tsx +1 -1
  574. package/src/components/display/button.tsx +3 -3
  575. package/src/components/display/child_notice.tsx +3 -3
  576. package/src/components/display/heading.tsx +3 -3
  577. package/src/components/display/icon.tsx +1 -1
  578. package/src/components/display/icon_button.tsx +2 -2
  579. package/src/components/display/image.tsx +1 -1
  580. package/src/components/display/image_attachment_preview.tsx +2 -2
  581. package/src/components/display/keyboard_view.tsx +1 -1
  582. package/src/components/display/person.tsx +2 -2
  583. package/src/components/display/platform_modal_header_buttons.tsx +1 -1
  584. package/src/components/display/pressable_row.tsx +1 -1
  585. package/src/components/display/spinner.tsx +1 -1
  586. package/src/components/display/switch.tsx +1 -1
  587. package/src/components/display/tabs.tsx +1 -1
  588. package/src/components/display/text.tsx +2 -2
  589. package/src/components/display/text_button.tsx +2 -2
  590. package/src/components/display/text_inline_button.tsx +2 -2
  591. package/src/components/display/toggle_button.tsx +6 -6
  592. package/src/components/display/utils/button_colors.ts +1 -1
  593. package/src/components/display/utils/status_colors.ts +1 -1
  594. package/src/components/display/video_attachment_preview.tsx +3 -3
  595. package/src/components/group_conversation_list.tsx +5 -5
  596. package/src/components/page/error_boundary.tsx +2 -2
  597. package/src/components/page/loading.tsx +1 -1
  598. package/src/components/primitive/avatar_primitive.tsx +5 -5
  599. package/src/components/primitive/banner_primitive.tsx +11 -11
  600. package/src/components/primitive/blank_state_primitive.tsx +2 -2
  601. package/src/components/primitive/form_sheet.tsx +4 -4
  602. package/src/components/safe_area_modal.tsx +1 -1
  603. package/src/contexts/api_provider.tsx +4 -4
  604. package/src/contexts/chat_context.tsx +6 -6
  605. package/src/contexts/conversations_context.tsx +3 -3
  606. package/src/contexts/session_context.tsx +9 -9
  607. package/src/hooks/groups/use_group_members_for_new_conversation.ts +4 -4
  608. package/src/hooks/groups/use_groups_conversation_create.ts +3 -3
  609. package/src/hooks/services/use_find_or_create_services_conversation.ts +3 -3
  610. package/src/hooks/services/use_services_team.ts +2 -2
  611. package/src/hooks/services/use_team_members_for_new_conversation.ts +2 -2
  612. package/src/hooks/services/use_team_plans.ts +2 -2
  613. package/src/hooks/use_api.ts +2 -2
  614. package/src/hooks/use_api_client.ts +3 -3
  615. package/src/hooks/use_async_storage.ts +1 -1
  616. package/src/hooks/use_attachment_uploader.ts +5 -5
  617. package/src/hooks/use_broadcast_typing_status.ts +1 -1
  618. package/src/hooks/use_chat_permissions.ts +1 -1
  619. package/src/hooks/use_conversation.ts +4 -4
  620. package/src/hooks/use_conversation_jolt_events.ts +3 -3
  621. package/src/hooks/use_conversation_membership.ts +3 -3
  622. package/src/hooks/use_conversation_message.ts +2 -2
  623. package/src/hooks/use_conversation_messages.ts +2 -2
  624. package/src/hooks/use_conversation_messages_jolt_events.ts +14 -14
  625. package/src/hooks/use_conversations.ts +2 -2
  626. package/src/hooks/use_conversations_actions.ts +2 -2
  627. package/src/hooks/use_conversations_cache.ts +5 -5
  628. package/src/hooks/use_conversations_jolt_events.ts +4 -4
  629. package/src/hooks/use_current_person.ts +2 -2
  630. package/src/hooks/use_features.ts +3 -3
  631. package/src/hooks/use_giphy.ts +2 -2
  632. package/src/hooks/use_groups.ts +2 -2
  633. package/src/hooks/use_groups_groups.ts +1 -1
  634. package/src/hooks/use_jolt.ts +3 -3
  635. package/src/hooks/use_live_relative_time.ts +2 -2
  636. package/src/hooks/use_mark_latest_message_read.ts +1 -1
  637. package/src/hooks/use_message_create_or_update.ts +11 -11
  638. package/src/hooks/use_message_draft.ts +2 -2
  639. package/src/hooks/use_message_reaction_toggle.ts +4 -4
  640. package/src/hooks/use_my_gender.ts +1 -1
  641. package/src/hooks/use_organization.ts +1 -1
  642. package/src/hooks/use_people_person.ts +1 -1
  643. package/src/hooks/use_product_analytics.ts +5 -5
  644. package/src/hooks/use_qualified_by_age.ts +1 -1
  645. package/src/hooks/use_read_receipts.ts +1 -1
  646. package/src/hooks/use_report_message.ts +2 -2
  647. package/src/hooks/use_storage.ts +1 -1
  648. package/src/hooks/use_submit_age_check.ts +2 -2
  649. package/src/hooks/use_suspense_api.ts +5 -5
  650. package/src/hooks/use_teams.ts +1 -1
  651. package/src/hooks/use_theme.tsx +2 -2
  652. package/src/hooks/use_typing_indicators.ts +1 -1
  653. package/src/hooks/use_typing_status_cache.ts +1 -1
  654. package/src/hooks/use_upload_client.ts +3 -3
  655. package/src/icons/font_awesome.ts +1 -1
  656. package/src/navigation/chat_access_gate.tsx +7 -7
  657. package/src/navigation/index.tsx +34 -31
  658. package/src/navigation/screenLayout.tsx +2 -2
  659. package/src/polyfills/events/Event.ts +1 -1
  660. package/src/polyfills/events/EventTarget.ts +1 -1
  661. package/src/polyfills/events/internals/EventInternals.ts +2 -2
  662. package/src/polyfills/events/internals/EventTargetInternals.ts +2 -2
  663. package/src/screens/age_check/age_check_required_screen.tsx +8 -8
  664. package/src/screens/age_check/age_check_underage_screen.tsx +3 -3
  665. package/src/screens/age_check/components/age_check_select_birthdate_modal.tsx +3 -3
  666. package/src/screens/attachment_actions/attachment_actions_screen.tsx +1 -1
  667. package/src/screens/attachment_actions/hooks/useDeleteAttachment.tsx +3 -3
  668. package/src/screens/bug_report_screen.tsx +11 -11
  669. package/src/screens/conversation/message_read_receipts_screen.tsx +5 -5
  670. package/src/screens/conversation_details_screen.tsx +10 -10
  671. package/src/screens/conversation_filter_recipients/components/checkbox_row.tsx +4 -8
  672. package/src/screens/conversation_filter_recipients/components/header_row.tsx +5 -5
  673. package/src/screens/conversation_filter_recipients/conversation_filter_recipients_screen.tsx +6 -6
  674. package/src/screens/conversation_filter_recipients/hooks/use_flattened_array_of_service_types_with_teams.tsx +1 -5
  675. package/src/screens/conversation_filter_recipients/hooks/use_service_types_with_teams.ts +3 -6
  676. package/src/screens/conversation_filter_recipients/types.tsx +1 -1
  677. package/src/screens/conversation_filters/components/conversation_filters.tsx +5 -8
  678. package/src/screens/conversation_filters/components/rows.tsx +14 -9
  679. package/src/screens/conversation_filters/context/conversation_filter_context.tsx +1 -4
  680. package/src/screens/conversation_filters/group_filters.tsx +1 -1
  681. package/src/screens/conversation_filters/hooks/filters.ts +5 -5
  682. package/src/screens/conversation_filters/screen_props.ts +1 -1
  683. package/src/screens/conversation_filters/team_filters.tsx +1 -1
  684. package/src/screens/conversation_filters_screen.tsx +1 -1
  685. package/src/screens/conversation_new/components/filter_by_plan.tsx +7 -7
  686. package/src/screens/conversation_new/components/form_list.tsx +3 -3
  687. package/src/screens/conversation_new/components/gender_filter_toggle.tsx +3 -3
  688. package/src/screens/conversation_new/components/groups_form.tsx +14 -14
  689. package/src/screens/conversation_new/components/services_form.tsx +10 -10
  690. package/src/screens/conversation_new/components/source_app_error_card.tsx +1 -1
  691. package/src/screens/conversation_new/conversation_new_screen.tsx +3 -3
  692. package/src/screens/conversation_notification_level_select_screen.tsx +6 -6
  693. package/src/screens/conversation_screen.tsx +23 -23
  694. package/src/screens/conversation_select_recipients/components/groups_recipient_row.tsx +2 -2
  695. package/src/screens/conversation_select_recipients/components/recipient_link_row.tsx +3 -3
  696. package/src/screens/conversation_select_recipients/components/restricted_group_row.tsx +4 -4
  697. package/src/screens/conversation_select_recipients/components/team_recipient_row.tsx +2 -2
  698. package/src/screens/conversation_select_recipients/components/view_more_link_row.tsx +1 -1
  699. package/src/screens/conversation_select_recipients/conversation_new_entry_screen.tsx +4 -4
  700. package/src/screens/conversation_select_recipients/conversation_select_group_recipients_screen.tsx +3 -3
  701. package/src/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.tsx +4 -7
  702. package/src/screens/conversation_select_recipients/types/screen_props.tsx +2 -2
  703. package/src/screens/conversation_select_type_screen.tsx +4 -4
  704. package/src/screens/conversations/components/chat_group_badge.tsx +4 -4
  705. package/src/screens/conversations/components/list_header_action_button.tsx +4 -4
  706. package/src/screens/conversations/components/list_header_component.tsx +10 -10
  707. package/src/screens/conversations/conversations_screen.tsx +5 -5
  708. package/src/screens/design_system_screen.tsx +6 -6
  709. package/src/screens/get_help_screen.tsx +5 -5
  710. package/src/screens/group_notification_level_select_screen.tsx +3 -3
  711. package/src/screens/group_notification_settings_screen.tsx +3 -3
  712. package/src/screens/message_actions_screen.tsx +12 -12
  713. package/src/screens/message_report/components/message_preview.tsx +3 -3
  714. package/src/screens/message_report/components/report_reason_list.tsx +7 -4
  715. package/src/screens/message_report_screen.tsx +11 -11
  716. package/src/screens/notification_settings/hooks/groups.ts +6 -6
  717. package/src/screens/notification_settings_screen.tsx +4 -4
  718. package/src/screens/preferred_app/hooks/use_chat_types.ts +2 -2
  719. package/src/screens/preferred_app_selection_screen.tsx +7 -7
  720. package/src/screens/reactions_screen.tsx +9 -9
  721. package/src/screens/send_giphy_screen.tsx +8 -8
  722. package/src/screens/team_conversation_screen.tsx +3 -3
  723. package/src/types/jolt_events/message_events.ts +1 -1
  724. package/src/types/jolt_events/reaction_events.ts +1 -1
  725. package/src/types/resources/app_grant.ts +1 -1
  726. package/src/types/resources/conversation_membership.ts +1 -1
  727. package/src/types/resources/group_membership.ts +1 -1
  728. package/src/types/resources/groups/groups_group_resource.ts +1 -1
  729. package/src/types/resources/organization.ts +1 -1
  730. package/src/types/resources/person.ts +1 -1
  731. package/src/types/resources/services/chat_resource.ts +1 -1
  732. package/src/types/resources/services/team_resource.ts +1 -1
  733. package/src/utils/__tests__/convert_attachments_for_create.test.ts +3 -3
  734. package/src/utils/__tests__/session_manager.test.ts +3 -3
  735. package/src/utils/__tests__/sha_256.test.ts +1 -1
  736. package/src/utils/cache/messages_cache.ts +5 -5
  737. package/src/utils/cache/optimistically_create_message.ts +7 -7
  738. package/src/utils/cache/optimistically_update_message.ts +3 -3
  739. package/src/utils/cache/page_mutations.ts +1 -1
  740. package/src/utils/client/client.ts +1 -1
  741. package/src/utils/convert_attachments_for_create.ts +2 -2
  742. package/src/utils/destructure_chat_group_graph_id.ts +2 -2
  743. package/src/utils/jolt/transform_message_event_data_to_message_resource.ts +4 -4
  744. package/src/utils/jolt/transform_reaction_event_data_to_reaction_count_resource.ts +3 -3
  745. package/src/utils/performance_tracking.ts +1 -1
  746. package/src/utils/reaction_constants.ts +1 -1
  747. package/src/utils/request/conversation.ts +2 -2
  748. package/src/utils/request/get_features.ts +1 -1
  749. package/src/utils/request/get_message.ts +1 -1
  750. package/src/utils/request/get_messages.ts +1 -1
  751. package/src/utils/response_error.ts +1 -1
  752. package/src/utils/session.ts +1 -1
  753. package/src/utils/session_manager.ts +1 -1
  754. package/src/utils/styles.ts +1 -1
  755. package/src/utils/theme.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"use_product_analytics.js","sourceRoot":"","sources":["../../src/hooks/use_product_analytics.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useMemo, useRef } from 'react'\nimport { useChatContext } from '@/contexts/chat_context'\nimport { ProductAnalyticsConfig } from '@/types/product_analytics'\nimport { AnalyticsMetadataResource } from '@/types/resources/analytics_metadata'\nimport { keysToSnakeCase } from '@/utils/client/utils'\nimport { SHA256, enc } from '@/utils/sha_256'\n\nexport interface EventMetadata {\n [key: string]: string | number | boolean | null | undefined\n}\n\ninterface AnalyticsEvent {\n name: string\n meta: EventMetadata\n}\n\nfunction contentSha256(payload: string): string {\n return SHA256(payload).toString(enc.Hex)\n}\n\nfunction sendEvents(events: AnalyticsEvent[], config: ProductAnalyticsConfig): Promise<Response[]> {\n // Split into chunks of 10 and make parallel requests\n const chunks: AnalyticsEvent[][] = []\n for (let i = 0; i < events.length; i += 10) {\n chunks.push(events.slice(i, i + 10))\n }\n\n return Promise.all(\n chunks.map(async chunk => {\n const payload = JSON.stringify({ events: chunk })\n return fetch(config.endpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json; charset=utf-8',\n 'X-Authorization': `Bearer ${config.token}`,\n 'X-Amz-Content-Sha256': contentSha256(payload),\n },\n body: payload,\n })\n })\n )\n}\n\nconst useProductAnalytics = () => {\n const { productAnalyticsConfig } = useChatContext()\n\n const snakeCasedBaseMeta = useMemo(\n () => keysToSnakeCase(productAnalyticsConfig?.metadata || {}),\n [productAnalyticsConfig?.metadata]\n )\n\n const publishEvent = useCallback(\n (name: string, meta: EventMetadata = {}): Promise<Response[]> => {\n if (!productAnalyticsConfig) {\n if (__DEV__) {\n console.warn('Product Analytics not available')\n }\n return Promise.resolve([])\n }\n\n const mergedMeta = { ...snakeCasedBaseMeta, ...meta } as EventMetadata\n\n return sendEvents([{ name, meta: mergedMeta }], productAnalyticsConfig)\n },\n [productAnalyticsConfig, snakeCasedBaseMeta]\n )\n\n const publishEvents = useCallback(\n (events: Array<{ name: string; meta?: EventMetadata }>): Promise<Response[]> => {\n if (!productAnalyticsConfig) {\n if (__DEV__) {\n console.warn('Product Analytics not available')\n }\n return Promise.resolve([])\n }\n\n const eventsWithMeta = events.map(event => ({\n name: event.name,\n meta: { ...snakeCasedBaseMeta, ...event.meta } as EventMetadata,\n }))\n\n return sendEvents(eventsWithMeta, productAnalyticsConfig)\n },\n [productAnalyticsConfig, snakeCasedBaseMeta]\n )\n\n return { publishEvent, publishEvents }\n}\n\nexport function usePublishProductAnalyticsEvent(eventName: string, meta: EventMetadata = {}) {\n const { publishEvent } = useProductAnalytics()\n const hasPublishedEventRef = useRef(false)\n\n useEffect(() => {\n if (hasPublishedEventRef.current) return\n\n hasPublishedEventRef.current = true\n\n publishEvent(eventName, meta)\n }, [eventName, meta, publishEvent])\n}\n\nexport function normalizeAnalyticsMetadata(resource: {\n analyticsMetadata?: AnalyticsMetadataResource\n}) {\n return keysToSnakeCase(resource?.analyticsMetadata?.metadata || {}) as Record<string, unknown>\n}\n"]}
1
+ {"version":3,"file":"use_product_analytics.js","sourceRoot":"","sources":["../../src/hooks/use_product_analytics.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useMemo, useRef } from 'react'\nimport { useChatContext } from '../contexts/chat_context'\nimport { ProductAnalyticsConfig } from '../types/product_analytics'\nimport { AnalyticsMetadataResource } from '../types/resources/analytics_metadata'\nimport { keysToSnakeCase } from '../utils/client/utils'\nimport { SHA256, enc } from '../utils/sha_256'\n\nexport interface EventMetadata {\n [key: string]: string | number | boolean | null | undefined\n}\n\ninterface AnalyticsEvent {\n name: string\n meta: EventMetadata\n}\n\nfunction contentSha256(payload: string): string {\n return SHA256(payload).toString(enc.Hex)\n}\n\nfunction sendEvents(events: AnalyticsEvent[], config: ProductAnalyticsConfig): Promise<Response[]> {\n // Split into chunks of 10 and make parallel requests\n const chunks: AnalyticsEvent[][] = []\n for (let i = 0; i < events.length; i += 10) {\n chunks.push(events.slice(i, i + 10))\n }\n\n return Promise.all(\n chunks.map(async chunk => {\n const payload = JSON.stringify({ events: chunk })\n return fetch(config.endpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json; charset=utf-8',\n 'X-Authorization': `Bearer ${config.token}`,\n 'X-Amz-Content-Sha256': contentSha256(payload),\n },\n body: payload,\n })\n })\n )\n}\n\nconst useProductAnalytics = () => {\n const { productAnalyticsConfig } = useChatContext()\n\n const snakeCasedBaseMeta = useMemo(\n () => keysToSnakeCase(productAnalyticsConfig?.metadata || {}),\n [productAnalyticsConfig?.metadata]\n )\n\n const publishEvent = useCallback(\n (name: string, meta: EventMetadata = {}): Promise<Response[]> => {\n if (!productAnalyticsConfig) {\n if (__DEV__) {\n console.warn('Product Analytics not available')\n }\n return Promise.resolve([])\n }\n\n const mergedMeta = { ...snakeCasedBaseMeta, ...meta } as EventMetadata\n\n return sendEvents([{ name, meta: mergedMeta }], productAnalyticsConfig)\n },\n [productAnalyticsConfig, snakeCasedBaseMeta]\n )\n\n const publishEvents = useCallback(\n (events: Array<{ name: string; meta?: EventMetadata }>): Promise<Response[]> => {\n if (!productAnalyticsConfig) {\n if (__DEV__) {\n console.warn('Product Analytics not available')\n }\n return Promise.resolve([])\n }\n\n const eventsWithMeta = events.map(event => ({\n name: event.name,\n meta: { ...snakeCasedBaseMeta, ...event.meta } as EventMetadata,\n }))\n\n return sendEvents(eventsWithMeta, productAnalyticsConfig)\n },\n [productAnalyticsConfig, snakeCasedBaseMeta]\n )\n\n return { publishEvent, publishEvents }\n}\n\nexport function usePublishProductAnalyticsEvent(eventName: string, meta: EventMetadata = {}) {\n const { publishEvent } = useProductAnalytics()\n const hasPublishedEventRef = useRef(false)\n\n useEffect(() => {\n if (hasPublishedEventRef.current) return\n\n hasPublishedEventRef.current = true\n\n publishEvent(eventName, meta)\n }, [eventName, meta, publishEvent])\n}\n\nexport function normalizeAnalyticsMetadata(resource: {\n analyticsMetadata?: AnalyticsMetadataResource\n}) {\n return keysToSnakeCase(resource?.analyticsMetadata?.metadata || {}) as Record<string, unknown>\n}\n"]}
@@ -1,6 +1,6 @@
1
+ import { AgeQualificationStatus } from '../types';
1
2
  import { useApiGet } from './use_api';
2
3
  import { currentPersonRequestArgs } from './use_current_person';
3
- import { AgeQualificationStatus } from '../types';
4
4
  export const useQualifiedByAge = () => {
5
5
  const { data: person, isFetched } = useApiGet(currentPersonRequestArgs);
6
6
  if (!isFetched) {
@@ -1 +1 @@
1
- {"version":3,"file":"use_qualified_by_age.js","sourceRoot":"","sources":["../../src/hooks/use_qualified_by_age.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAyB,MAAM,SAAS,CAAA;AAEvE,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAY,EAAE;IAC7C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAwB,wBAAwB,CAAC,CAAA;IAE9F,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,sBAAsB,KAAK,sBAAsB,CAAC,SAAS,CAAA;AAC3E,CAAC,CAAA","sourcesContent":["import { useApiGet } from './use_api'\nimport { currentPersonRequestArgs } from './use_current_person'\nimport { AgeQualificationStatus, CurrentPersonResource } from '@/types'\n\nexport const useQualifiedByAge = (): boolean => {\n const { data: person, isFetched } = useApiGet<CurrentPersonResource>(currentPersonRequestArgs)\n\n if (!isFetched) {\n return false\n }\n\n if (!person) {\n return false\n }\n\n return person.ageQualificationStatus === AgeQualificationStatus.QUALIFIED\n}\n"]}
1
+ {"version":3,"file":"use_qualified_by_age.js","sourceRoot":"","sources":["../../src/hooks/use_qualified_by_age.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,UAAU,CAAA;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAE/D,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAY,EAAE;IAC7C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAwB,wBAAwB,CAAC,CAAA;IAE9F,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,KAAK,CAAA;IACd,CAAC;IAED,OAAO,MAAM,CAAC,sBAAsB,KAAK,sBAAsB,CAAC,SAAS,CAAA;AAC3E,CAAC,CAAA","sourcesContent":["import { AgeQualificationStatus, CurrentPersonResource } from '../types'\nimport { useApiGet } from './use_api'\nimport { currentPersonRequestArgs } from './use_current_person'\n\nexport const useQualifiedByAge = (): boolean => {\n const { data: person, isFetched } = useApiGet<CurrentPersonResource>(currentPersonRequestArgs)\n\n if (!isFetched) {\n return false\n }\n\n if (!person) {\n return false\n }\n\n return person.ageQualificationStatus === AgeQualificationStatus.QUALIFIED\n}\n"]}
@@ -6,13 +6,13 @@ export declare function useReadReceipts({ conversation_id, message_id, }: {
6
6
  data: ReadReceiptResource[];
7
7
  totalCount: number;
8
8
  error: Response | null;
9
+ status: "success" | "error";
9
10
  isError: boolean;
10
11
  isPending: false;
11
12
  isLoading: false;
12
13
  isLoadingError: false;
13
14
  isRefetchError: boolean;
14
15
  isSuccess: boolean;
15
- status: "error" | "success";
16
16
  dataUpdatedAt: number;
17
17
  errorUpdatedAt: number;
18
18
  failureCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"use_read_receipts.d.ts","sourceRoot":"","sources":["../../src/hooks/use_read_receipts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AAEpE,wBAAgB,eAAe,CAAC,EAC9B,eAAe,EACf,UAAU,GACX,EAAE;IACD,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;CACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAeA"}
1
+ {"version":3,"file":"use_read_receipts.d.ts","sourceRoot":"","sources":["../../src/hooks/use_read_receipts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAA;AAGrE,wBAAgB,eAAe,CAAC,EAC9B,eAAe,EACf,UAAU,GACX,EAAE;IACD,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;CACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAeA"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_read_receipts.js","sourceRoot":"","sources":["../../src/hooks/use_read_receipts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAGzD,MAAM,UAAU,eAAe,CAAC,EAC9B,eAAe,EACf,UAAU,GAIX;IACC,OAAO,oBAAoB,CACzB;QACE,GAAG,EAAE,qBAAqB,eAAe,aAAa,UAAU,gBAAgB;QAChF,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,WAAW,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAChC;SACF;KACF,EACD;QACE,SAAS,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;KACV,CACF,CAAA;AACH,CAAC","sourcesContent":["import { useSuspensePaginator } from './use_suspense_api'\nimport { ReadReceiptResource } from '@/types/resources/read_receipt'\n\nexport function useReadReceipts({\n conversation_id,\n message_id,\n}: {\n conversation_id: number\n message_id: string\n}) {\n return useSuspensePaginator<ReadReceiptResource>(\n {\n url: `/me/conversations/${conversation_id}/messages/${message_id}/read_receipts`,\n data: {\n fields: {\n ReadReceipt: ['name', 'avatar'],\n },\n },\n },\n {\n staleTime: 0,\n gcTime: 0,\n }\n )\n}\n"]}
1
+ {"version":3,"file":"use_read_receipts.js","sourceRoot":"","sources":["../../src/hooks/use_read_receipts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAEzD,MAAM,UAAU,eAAe,CAAC,EAC9B,eAAe,EACf,UAAU,GAIX;IACC,OAAO,oBAAoB,CACzB;QACE,GAAG,EAAE,qBAAqB,eAAe,aAAa,UAAU,gBAAgB;QAChF,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,WAAW,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAChC;SACF;KACF,EACD;QACE,SAAS,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;KACV,CACF,CAAA;AACH,CAAC","sourcesContent":["import { ReadReceiptResource } from '../types/resources/read_receipt'\nimport { useSuspensePaginator } from './use_suspense_api'\n\nexport function useReadReceipts({\n conversation_id,\n message_id,\n}: {\n conversation_id: number\n message_id: string\n}) {\n return useSuspensePaginator<ReadReceiptResource>(\n {\n url: `/me/conversations/${conversation_id}/messages/${message_id}/read_receipts`,\n data: {\n fields: {\n ReadReceipt: ['name', 'avatar'],\n },\n },\n },\n {\n staleTime: 0,\n gcTime: 0,\n }\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_report_message.d.ts","sourceRoot":"","sources":["../../src/hooks/use_report_message.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,kCAAkC,CAAA;AAG5F,eAAO,MAAM,gBAAgB,mBAAoB,MAAM,aAAa,MAAM;YAQ5D,mBAAmB;mBACZ,MAAM;WAsB1B,CAAA"}
1
+ {"version":3,"file":"use_report_message.d.ts","sourceRoot":"","sources":["../../src/hooks/use_report_message.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAwB,MAAM,mCAAmC,CAAA;AAI7F,eAAO,MAAM,gBAAgB,mBAAoB,MAAM,aAAa,MAAM;YAQ5D,mBAAmB;mBACZ,MAAM;WAsB1B,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { useMutation } from '@tanstack/react-query';
2
- import { useApiClient } from './use_api_client';
3
2
  import { Haptic } from '../utils/native_adapters';
3
+ import { useApiClient } from './use_api_client';
4
4
  export const useReportMessage = (conversationId, messageId) => {
5
5
  const apiClient = useApiClient();
6
6
  return useMutation({
@@ -1 +1 @@
1
- {"version":3,"file":"use_report_message.js","sourceRoot":"","sources":["../../src/hooks/use_report_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,cAAsB,EAAE,SAAiB,EAAE,EAAE;IAC5E,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAEhC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,EACjB,MAAM,EACN,YAAY,GAIb,EAAE,EAAE;YACH,MAAM,GAAG,GAAG,qBAAqB,cAAc,aAAa,SAAS,SAAS,CAAA;YAC9E,MAAM,IAAI,GAAyB;gBACjC,IAAI,EAAE;oBACJ,IAAI,EAAE,eAAe;oBACrB,UAAU,EAAE;wBACV,MAAM;wBACN,GAAG,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;qBACrD;iBACF;aACF,CAAA;YAED,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,MAAM,CAAC,mBAAmB,EAAE,CAAA;QAC9B,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,iBAAiB,EAAE,CAAA;QAC5B,CAAC;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { useMutation } from '@tanstack/react-query'\nimport { useApiClient } from './use_api_client'\nimport { MessageReportReason, MessageReportPayload } from '@/types/resources/message_report'\nimport { Haptic } from '@/utils/native_adapters'\n\nexport const useReportMessage = (conversationId: number, messageId: string) => {\n const apiClient = useApiClient()\n\n return useMutation({\n mutationFn: async ({\n reason,\n reasonDetail,\n }: {\n reason: MessageReportReason\n reasonDetail?: string\n }) => {\n const url = `/me/conversations/${conversationId}/messages/${messageId}/report`\n const data: MessageReportPayload = {\n data: {\n type: 'MessageReport',\n attributes: {\n reason,\n ...(reasonDetail && { reason_detail: reasonDetail }),\n },\n },\n }\n\n return apiClient.chat.post({ url, data })\n },\n onSuccess: () => {\n Haptic.notificationSuccess()\n },\n onError: () => {\n Haptic.notificationError()\n },\n })\n}\n"]}
1
+ {"version":3,"file":"use_report_message.js","sourceRoot":"","sources":["../../src/hooks/use_report_message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,cAAsB,EAAE,SAAiB,EAAE,EAAE;IAC5E,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAEhC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,EACjB,MAAM,EACN,YAAY,GAIb,EAAE,EAAE;YACH,MAAM,GAAG,GAAG,qBAAqB,cAAc,aAAa,SAAS,SAAS,CAAA;YAC9E,MAAM,IAAI,GAAyB;gBACjC,IAAI,EAAE;oBACJ,IAAI,EAAE,eAAe;oBACrB,UAAU,EAAE;wBACV,MAAM;wBACN,GAAG,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;qBACrD;iBACF;aACF,CAAA;YAED,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACd,MAAM,CAAC,mBAAmB,EAAE,CAAA;QAC9B,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,iBAAiB,EAAE,CAAA;QAC5B,CAAC;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { useMutation } from '@tanstack/react-query'\nimport { MessageReportReason, MessageReportPayload } from '../types/resources/message_report'\nimport { Haptic } from '../utils/native_adapters'\nimport { useApiClient } from './use_api_client'\n\nexport const useReportMessage = (conversationId: number, messageId: string) => {\n const apiClient = useApiClient()\n\n return useMutation({\n mutationFn: async ({\n reason,\n reasonDetail,\n }: {\n reason: MessageReportReason\n reasonDetail?: string\n }) => {\n const url = `/me/conversations/${conversationId}/messages/${messageId}/report`\n const data: MessageReportPayload = {\n data: {\n type: 'MessageReport',\n attributes: {\n reason,\n ...(reasonDetail && { reason_detail: reasonDetail }),\n },\n },\n }\n\n return apiClient.chat.post({ url, data })\n },\n onSuccess: () => {\n Haptic.notificationSuccess()\n },\n onError: () => {\n Haptic.notificationError()\n },\n })\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_storage.d.ts","sourceRoot":"","sources":["../../src/hooks/use_storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAIxD,KAAK,QAAQ,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;AAE5E;;;GAGG;AACH,wBAAgB,UAAU,CAAC,UAAU,EACnC,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,UAAU,EACxB,YAAY,GAAE,OAAe,GAC5B,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAkDpC"}
1
+ {"version":3,"file":"use_storage.d.ts","sourceRoot":"","sources":["../../src/hooks/use_storage.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAIzD,KAAK,QAAQ,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;AAE5E;;;GAGG;AACH,wBAAgB,UAAU,CAAC,UAAU,EACnC,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,UAAU,EACxB,YAAY,GAAE,OAAe,GAC5B,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAkDpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_storage.js","sourceRoot":"","sources":["../../src/hooks/use_storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAGnC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAA;AAIrE;;;GAGG;AACH,MAAM,UAAU,UAAU,CACxB,OAAuB,EACvB,GAAW,EACX,YAAwB,EACxB,eAAwB,KAAK;IAE7B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;IAEvC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAa;QAC5D,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,GAAG,EAAE,CACZ,OAAO;aACJ,OAAO,CAAC,GAAG,CAAC;aACZ,IAAI,CAAC,WAAW,CAAC,EAAE;YAClB,IAAI,CAAC,WAAW;gBAAE,OAAO,YAAY,CAAA;YAErC,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAe,CAAA;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,WAAyB,CAAA;YAClC,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY;gBAAE,OAAO,YAAY,CAAA;YAEtC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC,CAAC;KACP,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAyB,WAAW,CAChD,SAAS,CAAC,EAAE;QACV,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAClD,OAAO,OAAO;iBACX,UAAU,CAAC,GAAG,CAAC;iBACf,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,EAAE,CAAA;YACX,CAAC,CAAC;iBACD,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;QAED,OAAO,OAAO;aACX,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;aACvC,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,EAAE,CAAA;QACX,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY;gBAAE,OAAM;YAEzB,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC,CAAC,CAAA;IACN,CAAC,EACD,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CACtC,CAAA;IAED,OAAO,CAAC,KAAK,IAAI,YAAY,EAAE,QAAQ,CAAC,CAAA;AAC1C,CAAC","sourcesContent":["import { useSuspenseQuery } from '@tanstack/react-query'\nimport { noop } from 'lodash'\nimport { useCallback } from 'react'\nimport { StorageAdapter } from '@/utils/native_adapters'\n\nconst cacheKeyGenerator = (key: string) => [`StorageResource:${key}`]\n\ntype SetValue<TCacheData> = (_itemValue?: TCacheData | null) => Promise<any>\n\n/**\n * Hook for using a storage adapter with React Query caching.\n * Similar to useAsyncStorage but accepts a StorageAdapter instead of using AsyncStorage directly.\n */\nexport function useStorage<TCacheData>(\n storage: StorageAdapter,\n key: string,\n initialValue: TCacheData,\n throwOnError: boolean = false\n): [TCacheData, SetValue<TCacheData>] {\n const cacheKey = cacheKeyGenerator(key)\n\n const { data: value, refetch } = useSuspenseQuery<TCacheData>({\n queryKey: cacheKey,\n queryFn: () =>\n storage\n .getItem(key)\n .then(storedValue => {\n if (!storedValue) return initialValue\n\n try {\n return JSON.parse(storedValue) as TCacheData\n } catch {\n return storedValue as TCacheData\n }\n })\n .catch(e => {\n if (!throwOnError) return initialValue\n\n return Promise.reject(e)\n }),\n })\n\n const setValue: SetValue<TCacheData> = useCallback(\n itemValue => {\n if (itemValue === null || itemValue === undefined) {\n return storage\n .removeItem(key)\n .then(() => {\n refetch()\n })\n .catch(noop)\n }\n\n return storage\n .setItem(key, JSON.stringify(itemValue))\n .then(() => {\n refetch()\n })\n .catch(e => {\n if (!throwOnError) return\n\n return Promise.reject(e)\n })\n },\n [throwOnError, key, refetch, storage]\n )\n\n return [value || initialValue, setValue]\n}\n"]}
1
+ {"version":3,"file":"use_storage.js","sourceRoot":"","sources":["../../src/hooks/use_storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAGnC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAA;AAIrE;;;GAGG;AACH,MAAM,UAAU,UAAU,CACxB,OAAuB,EACvB,GAAW,EACX,YAAwB,EACxB,eAAwB,KAAK;IAE7B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;IAEvC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAa;QAC5D,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,GAAG,EAAE,CACZ,OAAO;aACJ,OAAO,CAAC,GAAG,CAAC;aACZ,IAAI,CAAC,WAAW,CAAC,EAAE;YAClB,IAAI,CAAC,WAAW;gBAAE,OAAO,YAAY,CAAA;YAErC,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAe,CAAA;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,WAAyB,CAAA;YAClC,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY;gBAAE,OAAO,YAAY,CAAA;YAEtC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC,CAAC;KACP,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAyB,WAAW,CAChD,SAAS,CAAC,EAAE;QACV,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAClD,OAAO,OAAO;iBACX,UAAU,CAAC,GAAG,CAAC;iBACf,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,EAAE,CAAA;YACX,CAAC,CAAC;iBACD,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;QAED,OAAO,OAAO;aACX,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;aACvC,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,EAAE,CAAA;QACX,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE;YACT,IAAI,CAAC,YAAY;gBAAE,OAAM;YAEzB,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC,CAAC,CAAA;IACN,CAAC,EACD,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CACtC,CAAA;IAED,OAAO,CAAC,KAAK,IAAI,YAAY,EAAE,QAAQ,CAAC,CAAA;AAC1C,CAAC","sourcesContent":["import { useSuspenseQuery } from '@tanstack/react-query'\nimport { noop } from 'lodash'\nimport { useCallback } from 'react'\nimport { StorageAdapter } from '../utils/native_adapters'\n\nconst cacheKeyGenerator = (key: string) => [`StorageResource:${key}`]\n\ntype SetValue<TCacheData> = (_itemValue?: TCacheData | null) => Promise<any>\n\n/**\n * Hook for using a storage adapter with React Query caching.\n * Similar to useAsyncStorage but accepts a StorageAdapter instead of using AsyncStorage directly.\n */\nexport function useStorage<TCacheData>(\n storage: StorageAdapter,\n key: string,\n initialValue: TCacheData,\n throwOnError: boolean = false\n): [TCacheData, SetValue<TCacheData>] {\n const cacheKey = cacheKeyGenerator(key)\n\n const { data: value, refetch } = useSuspenseQuery<TCacheData>({\n queryKey: cacheKey,\n queryFn: () =>\n storage\n .getItem(key)\n .then(storedValue => {\n if (!storedValue) return initialValue\n\n try {\n return JSON.parse(storedValue) as TCacheData\n } catch {\n return storedValue as TCacheData\n }\n })\n .catch(e => {\n if (!throwOnError) return initialValue\n\n return Promise.reject(e)\n }),\n })\n\n const setValue: SetValue<TCacheData> = useCallback(\n itemValue => {\n if (itemValue === null || itemValue === undefined) {\n return storage\n .removeItem(key)\n .then(() => {\n refetch()\n })\n .catch(noop)\n }\n\n return storage\n .setItem(key, JSON.stringify(itemValue))\n .then(() => {\n refetch()\n })\n .catch(e => {\n if (!throwOnError) return\n\n return Promise.reject(e)\n })\n },\n [throwOnError, key, refetch, storage]\n )\n\n return [value || initialValue, setValue]\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_submit_age_check.d.ts","sourceRoot":"","sources":["../../src/hooks/use_submit_age_check.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAGpD,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC5B;AAED,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiChC"}
1
+ {"version":3,"file":"use_submit_age_check.d.ts","sourceRoot":"","sources":["../../src/hooks/use_submit_age_check.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAKrD,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;CAC5B;AAED,wBAAgB,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiChC"}
@@ -1,8 +1,8 @@
1
1
  import { useMutation, useQueryClient } from '@tanstack/react-query';
2
2
  import { Alert } from 'react-native';
3
+ import { Haptic } from '../utils/native_adapters';
3
4
  import { useApiClient } from './use_api_client';
4
5
  import { currentPersonQueryKey } from './use_current_person';
5
- import { Haptic } from '../utils/native_adapters';
6
6
  export function useSubmitAgeCheck() {
7
7
  const apiClient = useApiClient();
8
8
  const queryClient = useQueryClient();
@@ -1 +1 @@
1
- {"version":3,"file":"use_submit_age_check.js","sourceRoot":"","sources":["../../src/hooks/use_submit_age_check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAShD,MAAM,UAAU,iBAAiB;IAC/B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAChC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,CAAC;QAC/D,WAAW,EAAE,CAAC,gBAAgB,CAAC;QAC/B,UAAU,EAAE,CAAC,IAAU,EAAE,EAAE,CACzB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAgC;YACnD,GAAG,EAAE,gBAAgB;YACrB,IAAI,EAAE;gBACJ,MAAM,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE;gBAC1C,IAAI,EAAE;oBACJ,IAAI,EAAE,UAAU;oBAChB,UAAU,EAAE;wBACV,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;qBAChC;iBACF;aACF;SACF,CAAC;QACJ,SAAS,EAAE,CAAC,QAAuC,EAAE,EAAE;YACrD,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC,CAAA;YAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACtC,MAAM,CAAC,mBAAmB,EAAE,CAAA;gBAC5B,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,kCAAkC,CAAC,CAAA;YACpE,CAAC;QACH,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,iBAAiB,EAAE,CAAA;YAC1B,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,4DAA4D,CAAC,CAAA;QACnF,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAA;AACxC,CAAC","sourcesContent":["import { useMutation, useQueryClient } from '@tanstack/react-query'\nimport { Alert } from 'react-native'\nimport { useApiClient } from './use_api_client'\nimport { currentPersonQueryKey } from './use_current_person'\nimport { ApiResource } from '@/types/api_primitives'\nimport { Haptic } from '@/utils/native_adapters'\n\ninterface AgeCheckResource {\n type: 'AgeCheck'\n id: string\n stated_date: string\n status: 'passed' | 'failed'\n}\n\nexport function useSubmitAgeCheck() {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n\n const { mutateAsync: submitAgeCheck, ...mutation } = useMutation({\n mutationKey: ['submitAgeCheck'],\n mutationFn: (date: Date) =>\n apiClient.people.post<ApiResource<AgeCheckResource>>({\n url: '/me/age_checks',\n data: {\n fields: { AgeCheck: 'stated_date,status' },\n data: {\n type: 'AgeCheck',\n attributes: {\n stated_date: date.toISOString(),\n },\n },\n },\n }),\n onSuccess: (response: ApiResource<AgeCheckResource>) => {\n queryClient.invalidateQueries({ queryKey: currentPersonQueryKey })\n if (response.data.status === 'passed') {\n Haptic.notificationSuccess()\n Alert.alert('Profile updated', `Your birthdate has been updated.`)\n }\n },\n onError: () => {\n Haptic.notificationError()\n Alert.alert('Oops', `We were unable to update your birthdate. Please try again.`)\n },\n })\n\n return { submitAgeCheck, ...mutation }\n}\n"]}
1
+ {"version":3,"file":"use_submit_age_check.js","sourceRoot":"","sources":["../../src/hooks/use_submit_age_check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAS5D,MAAM,UAAU,iBAAiB;IAC/B,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAChC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,CAAC;QAC/D,WAAW,EAAE,CAAC,gBAAgB,CAAC;QAC/B,UAAU,EAAE,CAAC,IAAU,EAAE,EAAE,CACzB,SAAS,CAAC,MAAM,CAAC,IAAI,CAAgC;YACnD,GAAG,EAAE,gBAAgB;YACrB,IAAI,EAAE;gBACJ,MAAM,EAAE,EAAE,QAAQ,EAAE,oBAAoB,EAAE;gBAC1C,IAAI,EAAE;oBACJ,IAAI,EAAE,UAAU;oBAChB,UAAU,EAAE;wBACV,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;qBAChC;iBACF;aACF;SACF,CAAC;QACJ,SAAS,EAAE,CAAC,QAAuC,EAAE,EAAE;YACrD,WAAW,CAAC,iBAAiB,CAAC,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC,CAAA;YAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACtC,MAAM,CAAC,mBAAmB,EAAE,CAAA;gBAC5B,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,kCAAkC,CAAC,CAAA;YACpE,CAAC;QACH,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,CAAC,iBAAiB,EAAE,CAAA;YAC1B,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,4DAA4D,CAAC,CAAA;QACnF,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAA;AACxC,CAAC","sourcesContent":["import { useMutation, useQueryClient } from '@tanstack/react-query'\nimport { Alert } from 'react-native'\nimport { ApiResource } from '../types/api_primitives'\nimport { Haptic } from '../utils/native_adapters'\nimport { useApiClient } from './use_api_client'\nimport { currentPersonQueryKey } from './use_current_person'\n\ninterface AgeCheckResource {\n type: 'AgeCheck'\n id: string\n stated_date: string\n status: 'passed' | 'failed'\n}\n\nexport function useSubmitAgeCheck() {\n const apiClient = useApiClient()\n const queryClient = useQueryClient()\n\n const { mutateAsync: submitAgeCheck, ...mutation } = useMutation({\n mutationKey: ['submitAgeCheck'],\n mutationFn: (date: Date) =>\n apiClient.people.post<ApiResource<AgeCheckResource>>({\n url: '/me/age_checks',\n data: {\n fields: { AgeCheck: 'stated_date,status' },\n data: {\n type: 'AgeCheck',\n attributes: {\n stated_date: date.toISOString(),\n },\n },\n },\n }),\n onSuccess: (response: ApiResource<AgeCheckResource>) => {\n queryClient.invalidateQueries({ queryKey: currentPersonQueryKey })\n if (response.data.status === 'passed') {\n Haptic.notificationSuccess()\n Alert.alert('Profile updated', `Your birthdate has been updated.`)\n }\n },\n onError: () => {\n Haptic.notificationError()\n Alert.alert('Oops', `We were unable to update your birthdate. Please try again.`)\n },\n })\n\n return { submitAgeCheck, ...mutation }\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  import { AnyUseSuspenseInfiniteQueryOptions, InfiniteData, UseSuspenseQueryOptions } from '@tanstack/react-query';
2
- import { App } from './use_api_client';
3
2
  import { ApiCollection, ApiResource, ResourceObject } from '../types';
4
3
  import { FailedResponse } from '../types/api_primitives';
5
4
  import { GetRequest } from '../utils/client';
5
+ import { App } from './use_api_client';
6
6
  interface SuspenseGetOptions extends GetRequest {
7
7
  app?: App;
8
8
  reply_root_id?: string | null;
@@ -10,13 +10,13 @@ interface SuspenseGetOptions extends GetRequest {
10
10
  export type SuspenseGetQueryOptions<T extends ResourceObject | ResourceObject[]> = Omit<UseSuspenseQueryOptions<ApiResource<T>, FailedResponse>, 'queryKey' | 'queryFn'>;
11
11
  export declare const useSuspenseGet: <T extends ResourceObject | ResourceObject[]>(args: SuspenseGetOptions, options?: SuspenseGetQueryOptions<T>) => {
12
12
  error: FailedResponse | null;
13
+ status: "success" | "error";
13
14
  isError: boolean;
14
15
  isPending: false;
15
16
  isLoading: false;
16
17
  isLoadingError: false;
17
18
  isRefetchError: boolean;
18
19
  isSuccess: boolean;
19
- status: "error" | "success";
20
20
  dataUpdatedAt: number;
21
21
  errorUpdatedAt: number;
22
22
  failureCount: number;
@@ -40,13 +40,13 @@ export declare const useSuspensePaginator: <T extends ResourceObject>(args: Susp
40
40
  data: T[];
41
41
  totalCount: number;
42
42
  error: Response | null;
43
+ status: "success" | "error";
43
44
  isError: boolean;
44
45
  isPending: false;
45
46
  isLoading: false;
46
47
  isLoadingError: false;
47
48
  isRefetchError: boolean;
48
49
  isSuccess: boolean;
49
- status: "error" | "success";
50
50
  dataUpdatedAt: number;
51
51
  errorUpdatedAt: number;
52
52
  failureCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"use_suspense_api.d.ts","sourceRoot":"","sources":["../../src/hooks/use_suspense_api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kCAAkC,EAClC,YAAY,EAGZ,uBAAuB,EACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,GAAG,EAAgB,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,OAAO,EAAE,UAAU,EAAe,MAAM,gBAAgB,CAAA;AAGxD,UAAU,kBAAmB,SAAQ,UAAU;IAC7C,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,IAAI,IAAI,CACrF,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EACvD,UAAU,GAAG,SAAS,CACvB,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,QAClE,kBAAkB,YACd,uBAAuB,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBrC,CAAA;AAOD,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,kCAAkC,EAClC,kBAAkB,GAAG,kBAAkB,GAAG,SAAS,GAAG,UAAU,CACjE,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,cAAc,QACrD,kBAAkB,SACjB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6ChC,CAAA;AAUD,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,KAAK,CAAC;IACzB,kBAAkB,CAAC,MAAM,CAAC;IAC1B,kBAAkB,CAAC,SAAS,CAAC;IAC7B,kBAAkB,CAAC,KAAK,CAAC;IACzB,kBAAkB,CAAC,eAAe,CAAC;CACpC,CAAA;AACD,eAAO,MAAM,kBAAkB,SAAU,kBAAkB,KAAG,eAM7D,CAAA"}
1
+ {"version":3,"file":"use_suspense_api.d.ts","sourceRoot":"","sources":["../../src/hooks/use_suspense_api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kCAAkC,EAClC,YAAY,EAGZ,uBAAuB,EACxB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAAE,UAAU,EAAe,MAAM,iBAAiB,CAAA;AAEzD,OAAO,EAAE,GAAG,EAAgB,MAAM,kBAAkB,CAAA;AAEpD,UAAU,kBAAmB,SAAQ,UAAU;IAC7C,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC9B;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,IAAI,IAAI,CACrF,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,EACvD,UAAU,GAAG,SAAS,CACvB,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,QAClE,kBAAkB,YACd,uBAAuB,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBrC,CAAA;AAOD,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,kCAAkC,EAClC,kBAAkB,GAAG,kBAAkB,GAAG,SAAS,GAAG,UAAU,CACjE,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,CAAC,SAAS,cAAc,QACrD,kBAAkB,SACjB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6ChC,CAAA;AAUD,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,KAAK,CAAC;IACzB,kBAAkB,CAAC,MAAM,CAAC;IAC1B,kBAAkB,CAAC,SAAS,CAAC;IAC7B,kBAAkB,CAAC,KAAK,CAAC;IACzB,kBAAkB,CAAC,eAAe,CAAC;CACpC,CAAA;AACD,eAAO,MAAM,kBAAkB,SAAU,kBAAkB,KAAG,eAM7D,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { useSuspenseInfiniteQuery, useSuspenseQuery, } from '@tanstack/react-query';
2
- import { useApiClient } from './use_api_client';
3
2
  import { Log } from '../utils';
4
3
  import { ResponseError } from '../utils/response_error';
4
+ import { useApiClient } from './use_api_client';
5
5
  export const useSuspenseGet = (args, options) => {
6
6
  const apiClient = useApiClient();
7
7
  const { data, ...query } = useSuspenseQuery({
@@ -1 +1 @@
1
- {"version":3,"file":"use_suspense_api.js","sourceRoot":"","sources":["../../src/hooks/use_suspense_api.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AnyUseSuspenseInfiniteQueryOptions,\n InfiniteData,\n useSuspenseInfiniteQuery,\n useSuspenseQuery,\n UseSuspenseQueryOptions,\n} from '@tanstack/react-query'\nimport { App, useApiClient } from './use_api_client'\nimport { ApiCollection, ApiResource, ResourceObject } from '@/types'\nimport { FailedResponse } from '@/types/api_primitives'\nimport { Log } from '@/utils'\nimport { GetRequest, RequestData } from '@/utils/client'\nimport { ResponseError } from '@/utils/response_error'\n\ninterface SuspenseGetOptions extends GetRequest {\n app?: App\n reply_root_id?: string | null\n}\n\nexport type SuspenseGetQueryOptions<T extends ResourceObject | ResourceObject[]> = Omit<\n UseSuspenseQueryOptions<ApiResource<T>, FailedResponse>,\n 'queryKey' | 'queryFn'\n>\n\nexport const useSuspenseGet = <T extends ResourceObject | ResourceObject[]>(\n args: SuspenseGetOptions,\n options?: SuspenseGetQueryOptions<T>\n) => {\n type Resource = ApiResource<T>\n const apiClient = useApiClient()\n\n const { data, ...query } = useSuspenseQuery<Resource, FailedResponse>({\n queryKey: getRequestQueryKey(args),\n queryFn: ({ queryKey }) => {\n const [url, d, headers, app = 'chat'] = queryKey as RequestQueryKey\n return apiClient[app]\n .get({ url, data: d, headers })\n .catch(throwResponseError) as Promise<Resource>\n },\n ...options,\n })\n\n return { ...data, ...query }\n}\n\ntype NextMeta = Partial<{\n offset: string\n idLt: string\n}>\n\nexport type SuspensePaginatorOptions = Omit<\n AnyUseSuspenseInfiniteQueryOptions,\n 'getNextPageParam' | 'initialPageParam' | 'queryFn' | 'queryKey'\n>\n\nexport const useSuspensePaginator = <T extends ResourceObject>(\n args: SuspenseGetOptions,\n opts?: SuspensePaginatorOptions\n) => {\n const apiClient = useApiClient()\n const query = useSuspenseInfiniteQuery<\n ApiCollection<T>,\n Response,\n InfiniteData<ApiCollection<T>>,\n any,\n Partial<RequestData> | undefined\n >({\n queryKey: getRequestQueryKey(args),\n queryFn: ({ pageParam }) => {\n Log.info('useSuspenseGet', { pageParam })\n\n const pageParmWhere = pageParam?.where || {}\n const argsWhere = args.data.where || {}\n const where = { ...argsWhere, ...pageParmWhere }\n const app = args.app || 'chat'\n const offset = pageParam?.offset || args.data.offset\n const data = { ...args.data, where, offset }\n\n return apiClient[app]\n .get<ApiCollection<T>>({\n url: args.url,\n data,\n })\n .catch(throwResponseError)\n },\n initialPageParam: {} as Partial<RequestData>,\n getNextPageParam: lastPage => {\n const next: NextMeta = lastPage.meta?.next || {}\n const { offset, idLt } = next\n\n if (idLt) return { where: { id_lt: idLt } }\n if (offset) return { offset: Number(offset) }\n\n return undefined\n },\n ...(opts || {}),\n })\n\n const data: T[] = query.data?.pages.flatMap(page => page.data) || []\n const totalCount = query.data?.pages[0]?.meta?.totalCount || data.length\n\n return { ...query, data, totalCount }\n}\n\nconst throwResponseError = (error: unknown) => {\n if (error instanceof Response) {\n throw new ResponseError(error as FailedResponse)\n }\n\n return Promise.reject(error)\n}\n\nexport type RequestQueryKey = [\n SuspenseGetOptions['url'],\n SuspenseGetOptions['data'],\n SuspenseGetOptions['headers'],\n SuspenseGetOptions['app'],\n SuspenseGetOptions['reply_root_id'],\n]\nexport const getRequestQueryKey = (args: SuspenseGetOptions): RequestQueryKey => [\n args.url,\n args.data,\n args.headers,\n args.app || 'chat',\n args.reply_root_id,\n]\n"]}
1
+ {"version":3,"file":"use_suspense_api.js","sourceRoot":"","sources":["../../src/hooks/use_suspense_api.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,wBAAwB,EACxB,gBAAgB,GAEjB,MAAM,uBAAuB,CAAA;AAG9B,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAE9B,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAO,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAYpD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,IAAwB,EACxB,OAAoC,EACpC,EAAE;IAEF,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAEhC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,gBAAgB,CAA2B;QACpE,QAAQ,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAClC,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxB,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,MAAM,CAAC,GAAG,QAA2B,CAAA;YACnE,OAAO,SAAS,CAAC,GAAG,CAAC;iBAClB,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;iBAC9B,KAAK,CAAC,kBAAkB,CAAsB,CAAA;QACnD,CAAC;QACD,GAAG,OAAO;KACX,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,EAAE,CAAA;AAC9B,CAAC,CAAA;AAYD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,IAAwB,EACxB,IAA+B,EAC/B,EAAE;IACF,MAAM,SAAS,GAAG,YAAY,EAAE,CAAA;IAChC,MAAM,KAAK,GAAG,wBAAwB,CAMpC;QACA,QAAQ,EAAE,kBAAkB,CAAC,IAAI,CAAC;QAClC,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;YACzB,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;YAEzC,MAAM,aAAa,GAAG,SAAS,EAAE,KAAK,IAAI,EAAE,CAAA;YAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;YACvC,MAAM,KAAK,GAAG,EAAE,GAAG,SAAS,EAAE,GAAG,aAAa,EAAE,CAAA;YAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,MAAM,CAAA;YAC9B,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA;YACpD,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAA;YAE5C,OAAO,SAAS,CAAC,GAAG,CAAC;iBAClB,GAAG,CAAmB;gBACrB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI;aACL,CAAC;iBACD,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAC9B,CAAC;QACD,gBAAgB,EAAE,EAA0B;QAC5C,gBAAgB,EAAE,QAAQ,CAAC,EAAE;YAC3B,MAAM,IAAI,GAAa,QAAQ,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAA;YAChD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YAE7B,IAAI,IAAI;gBAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAA;YAC3C,IAAI,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAA;YAE7C,OAAO,SAAS,CAAA;QAClB,CAAC;QACD,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;KAChB,CAAC,CAAA;IAEF,MAAM,IAAI,GAAQ,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACpE,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,MAAM,CAAA;IAExE,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;AACvC,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAE,EAAE;IAC5C,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,aAAa,CAAC,KAAuB,CAAC,CAAA;IAClD,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC,CAAA;AASD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAwB,EAAmB,EAAE,CAAC;IAC/E,IAAI,CAAC,GAAG;IACR,IAAI,CAAC,IAAI;IACT,IAAI,CAAC,OAAO;IACZ,IAAI,CAAC,GAAG,IAAI,MAAM;IAClB,IAAI,CAAC,aAAa;CACnB,CAAA","sourcesContent":["import {\n AnyUseSuspenseInfiniteQueryOptions,\n InfiniteData,\n useSuspenseInfiniteQuery,\n useSuspenseQuery,\n UseSuspenseQueryOptions,\n} from '@tanstack/react-query'\nimport { ApiCollection, ApiResource, ResourceObject } from '../types'\nimport { FailedResponse } from '../types/api_primitives'\nimport { Log } from '../utils'\nimport { GetRequest, RequestData } from '../utils/client'\nimport { ResponseError } from '../utils/response_error'\nimport { App, useApiClient } from './use_api_client'\n\ninterface SuspenseGetOptions extends GetRequest {\n app?: App\n reply_root_id?: string | null\n}\n\nexport type SuspenseGetQueryOptions<T extends ResourceObject | ResourceObject[]> = Omit<\n UseSuspenseQueryOptions<ApiResource<T>, FailedResponse>,\n 'queryKey' | 'queryFn'\n>\n\nexport const useSuspenseGet = <T extends ResourceObject | ResourceObject[]>(\n args: SuspenseGetOptions,\n options?: SuspenseGetQueryOptions<T>\n) => {\n type Resource = ApiResource<T>\n const apiClient = useApiClient()\n\n const { data, ...query } = useSuspenseQuery<Resource, FailedResponse>({\n queryKey: getRequestQueryKey(args),\n queryFn: ({ queryKey }) => {\n const [url, d, headers, app = 'chat'] = queryKey as RequestQueryKey\n return apiClient[app]\n .get({ url, data: d, headers })\n .catch(throwResponseError) as Promise<Resource>\n },\n ...options,\n })\n\n return { ...data, ...query }\n}\n\ntype NextMeta = Partial<{\n offset: string\n idLt: string\n}>\n\nexport type SuspensePaginatorOptions = Omit<\n AnyUseSuspenseInfiniteQueryOptions,\n 'getNextPageParam' | 'initialPageParam' | 'queryFn' | 'queryKey'\n>\n\nexport const useSuspensePaginator = <T extends ResourceObject>(\n args: SuspenseGetOptions,\n opts?: SuspensePaginatorOptions\n) => {\n const apiClient = useApiClient()\n const query = useSuspenseInfiniteQuery<\n ApiCollection<T>,\n Response,\n InfiniteData<ApiCollection<T>>,\n any,\n Partial<RequestData> | undefined\n >({\n queryKey: getRequestQueryKey(args),\n queryFn: ({ pageParam }) => {\n Log.info('useSuspenseGet', { pageParam })\n\n const pageParmWhere = pageParam?.where || {}\n const argsWhere = args.data.where || {}\n const where = { ...argsWhere, ...pageParmWhere }\n const app = args.app || 'chat'\n const offset = pageParam?.offset || args.data.offset\n const data = { ...args.data, where, offset }\n\n return apiClient[app]\n .get<ApiCollection<T>>({\n url: args.url,\n data,\n })\n .catch(throwResponseError)\n },\n initialPageParam: {} as Partial<RequestData>,\n getNextPageParam: lastPage => {\n const next: NextMeta = lastPage.meta?.next || {}\n const { offset, idLt } = next\n\n if (idLt) return { where: { id_lt: idLt } }\n if (offset) return { offset: Number(offset) }\n\n return undefined\n },\n ...(opts || {}),\n })\n\n const data: T[] = query.data?.pages.flatMap(page => page.data) || []\n const totalCount = query.data?.pages[0]?.meta?.totalCount || data.length\n\n return { ...query, data, totalCount }\n}\n\nconst throwResponseError = (error: unknown) => {\n if (error instanceof Response) {\n throw new ResponseError(error as FailedResponse)\n }\n\n return Promise.reject(error)\n}\n\nexport type RequestQueryKey = [\n SuspenseGetOptions['url'],\n SuspenseGetOptions['data'],\n SuspenseGetOptions['headers'],\n SuspenseGetOptions['app'],\n SuspenseGetOptions['reply_root_id'],\n]\nexport const getRequestQueryKey = (args: SuspenseGetOptions): RequestQueryKey => [\n args.url,\n args.data,\n args.headers,\n args.app || 'chat',\n args.reply_root_id,\n]\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_teams.d.ts","sourceRoot":"","sources":["../../src/hooks/use_teams.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAEhE,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBpB,CAAA;AAED,eAAO,MAAM,kBAAkB,eAI9B,CAAA"}
1
+ {"version":3,"file":"use_teams.d.ts","sourceRoot":"","sources":["../../src/hooks/use_teams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AAGjE,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBpB,CAAA;AAED,eAAO,MAAM,kBAAkB,eAI9B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_teams.js","sourceRoot":"","sources":["../../src/hooks/use_teams.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAG3C,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,OAAO,eAAe,CAAgB;QACpC,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE;aACV;YACD,KAAK,EAAE;gBACL,eAAe,EAAE,UAAU;gBAC3B,WAAW,EAAE,MAAM;aACpB;YACD,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,GAAG;SACb;QACD,GAAG,EAAE,MAAM;KACZ,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAA;IAEvC,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC,CAAA;AAC1B,CAAC,CAAA","sourcesContent":["import { useApiPaginator } from './use_api'\nimport { GroupResource } from '@/types/resources/group_resource'\n\nexport const useTeams = () => {\n return useApiPaginator<GroupResource>({\n url: '/me/groups',\n data: {\n fields: {\n Group: [],\n },\n where: {\n source_app_name: 'Services',\n source_type: 'Team',\n },\n order: 'name',\n perPage: 100,\n },\n app: 'chat',\n })\n}\n\nexport const useCanDisplayTeams = () => {\n const { data: teams = [] } = useTeams()\n\n return teams?.length > 0\n}\n"]}
1
+ {"version":3,"file":"use_teams.js","sourceRoot":"","sources":["../../src/hooks/use_teams.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAE3C,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,OAAO,eAAe,CAAgB;QACpC,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,KAAK,EAAE,EAAE;aACV;YACD,KAAK,EAAE;gBACL,eAAe,EAAE,UAAU;gBAC3B,WAAW,EAAE,MAAM;aACpB;YACD,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,GAAG;SACb;QACD,GAAG,EAAE,MAAM;KACZ,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,CAAA;IAEvC,OAAO,KAAK,EAAE,MAAM,GAAG,CAAC,CAAA;AAC1B,CAAC,CAAA","sourcesContent":["import { GroupResource } from '../types/resources/group_resource'\nimport { useApiPaginator } from './use_api'\n\nexport const useTeams = () => {\n return useApiPaginator<GroupResource>({\n url: '/me/groups',\n data: {\n fields: {\n Group: [],\n },\n where: {\n source_app_name: 'Services',\n source_type: 'Team',\n },\n order: 'name',\n perPage: 100,\n },\n app: 'chat',\n })\n}\n\nexport const useCanDisplayTeams = () => {\n const { data: teams = [] } = useTeams()\n\n return teams?.length > 0\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_theme.d.ts","sourceRoot":"","sources":["../../src/hooks/use_theme.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAEzC,eAAO,MAAM,QAAQ,QAAO,SAI3B,CAAA"}
1
+ {"version":3,"file":"use_theme.d.ts","sourceRoot":"","sources":["../../src/hooks/use_theme.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,eAAO,MAAM,QAAQ,QAAO,SAI3B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_theme.js","sourceRoot":"","sources":["../../src/hooks/use_theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAGrD,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAc,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;IAEzC,OAAO,KAAK,CAAA;AACd,CAAC,CAAA","sourcesContent":["import { useContext } from 'react'\nimport { ChatContext } from '@/contexts/chat_context'\nimport { ChatTheme } from '@/utils/theme'\n\nexport const useTheme = (): ChatTheme => {\n const { theme } = useContext(ChatContext)\n\n return theme\n}\n"]}
1
+ {"version":3,"file":"use_theme.js","sourceRoot":"","sources":["../../src/hooks/use_theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAGtD,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAc,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;IAEzC,OAAO,KAAK,CAAA;AACd,CAAC,CAAA","sourcesContent":["import { useContext } from 'react'\nimport { ChatContext } from '../contexts/chat_context'\nimport { ChatTheme } from '../utils/theme'\n\nexport const useTheme = (): ChatTheme => {\n const { theme } = useContext(ChatContext)\n\n return theme\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_typing_indicators.d.ts","sourceRoot":"","sources":["../../src/hooks/use_typing_indicators.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAGxD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,sBAuB/B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,WAAY,YAAY,EAAE,KAAG,MAU/D,CAAA"}
1
+ {"version":3,"file":"use_typing_indicators.d.ts","sourceRoot":"","sources":["../../src/hooks/use_typing_indicators.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,sBAuB/B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,WAAY,YAAY,EAAE,KAAG,MAU/D,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { useQuery } from '@tanstack/react-query';
2
2
  import { useMemo } from 'react';
3
- import { useCurrentPerson } from './use_current_person';
4
3
  import { useConversationContext } from '../contexts/conversation_context';
4
+ import { useCurrentPerson } from './use_current_person';
5
5
  /**
6
6
  * Hook for getting people currently typing in a conversation
7
7
  *
@@ -1 +1 @@
1
- {"version":3,"file":"use_typing_indicators.js","sourceRoot":"","sources":["../../src/hooks/use_typing_indicators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAExE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,MAAM,EAAE,cAAc,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,CAAA;IAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAChG,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IACxC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,KAAK,aAAa,EAAE,EAAE,CAAA;IAC5E,MAAM,sBAAsB,GAAG,CAAC,sBAAsB,CAAA;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QACxB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW;QAC1B,WAAW,EAAE,WAAW;KACzB,CAAC,CAAA;IAEF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE;QAC3D,IAAI,eAAe,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAA;QAC5C,IAAI,GAAG,GAAG,OAAO;YAAE,OAAO,KAAK,CAAA;QAE/B,0EAA0E;QAC1E,IAAI,sBAAsB;YAAE,OAAO,IAAI,CAAA;QAEvC,mFAAmF;QACnF,OAAO,aAAa,KAAK,sBAAsB,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAsB,EAAU,EAAE;IACvE,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAE7B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,eAAe,CAAA;IAChD,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,QAAQ,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,gBAAgB,CAAA;IAC9E,CAAC;SAAM,CAAC;QACN,OAAO,8BAA8B,CAAA;IACvC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAmB,EAAE,CAAA","sourcesContent":["import { useQuery } from '@tanstack/react-query'\nimport { useMemo } from 'react'\nimport { useCurrentPerson } from './use_current_person'\nimport { PersonTyping } from './use_typing_status_cache'\nimport { useConversationContext } from '@/contexts/conversation_context'\n\n/**\n * Hook for getting people currently typing in a conversation\n *\n * The query function itself doesn't do anything, but we add to the cache\n * from useTypingStatusCache when we receive a typing event.\n */\nexport const useTypingIndicators = () => {\n const { conversationId, currentPageReplyRootId } = useConversationContext()\n const cacheKey = useMemo(() => ['conversationTyping', String(conversationId)], [conversationId])\n const currentPerson = useCurrentPerson()\n const isCurrentPerson = (authorId: number) => authorId === currentPerson?.id\n const inMainConversationView = !currentPageReplyRootId\n const now = Date.now()\n const { data } = useQuery({\n queryKey: cacheKey,\n queryFn: () => stableArray,\n initialData: stableArray,\n })\n\n return data.filter(({ author_id, expires, reply_root_id }) => {\n if (isCurrentPerson(author_id)) return false\n if (now > expires) return false\n\n // If you are in the main conversation view, you will see any message sent\n if (inMainConversationView) return true\n\n // If you are in a reply view, you will only see messages sent in this reply thread\n return reply_root_id === currentPageReplyRootId\n })\n}\n\n/**\n * Format text for typing indicators based on the number of people typing\n */\nexport const getTypingIndicatorText = (people: PersonTyping[]): string => {\n if (!people.length) return ''\n\n if (people.length === 1) {\n return `${people[0].author_name} is typing...`\n } else if (people.length === 2) {\n return `${people[0].author_name} and ${people[1].author_name} are typing...`\n } else {\n return 'Several people are typing...'\n }\n}\n\nconst stableArray: PersonTyping[] = []\n"]}
1
+ {"version":3,"file":"use_typing_indicators.js","sourceRoot":"","sources":["../../src/hooks/use_typing_indicators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAGvD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,MAAM,EAAE,cAAc,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,CAAA;IAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAChG,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IACxC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,KAAK,aAAa,EAAE,EAAE,CAAA;IAC5E,MAAM,sBAAsB,GAAG,CAAC,sBAAsB,CAAA;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACtB,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QACxB,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW;QAC1B,WAAW,EAAE,WAAW;KACzB,CAAC,CAAA;IAEF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE;QAC3D,IAAI,eAAe,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAA;QAC5C,IAAI,GAAG,GAAG,OAAO;YAAE,OAAO,KAAK,CAAA;QAE/B,0EAA0E;QAC1E,IAAI,sBAAsB;YAAE,OAAO,IAAI,CAAA;QAEvC,mFAAmF;QACnF,OAAO,aAAa,KAAK,sBAAsB,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAsB,EAAU,EAAE;IACvE,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,CAAA;IAE7B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,eAAe,CAAA;IAChD,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,QAAQ,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,gBAAgB,CAAA;IAC9E,CAAC;SAAM,CAAC;QACN,OAAO,8BAA8B,CAAA;IACvC,CAAC;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAmB,EAAE,CAAA","sourcesContent":["import { useQuery } from '@tanstack/react-query'\nimport { useMemo } from 'react'\nimport { useConversationContext } from '../contexts/conversation_context'\nimport { useCurrentPerson } from './use_current_person'\nimport { PersonTyping } from './use_typing_status_cache'\n\n/**\n * Hook for getting people currently typing in a conversation\n *\n * The query function itself doesn't do anything, but we add to the cache\n * from useTypingStatusCache when we receive a typing event.\n */\nexport const useTypingIndicators = () => {\n const { conversationId, currentPageReplyRootId } = useConversationContext()\n const cacheKey = useMemo(() => ['conversationTyping', String(conversationId)], [conversationId])\n const currentPerson = useCurrentPerson()\n const isCurrentPerson = (authorId: number) => authorId === currentPerson?.id\n const inMainConversationView = !currentPageReplyRootId\n const now = Date.now()\n const { data } = useQuery({\n queryKey: cacheKey,\n queryFn: () => stableArray,\n initialData: stableArray,\n })\n\n return data.filter(({ author_id, expires, reply_root_id }) => {\n if (isCurrentPerson(author_id)) return false\n if (now > expires) return false\n\n // If you are in the main conversation view, you will see any message sent\n if (inMainConversationView) return true\n\n // If you are in a reply view, you will only see messages sent in this reply thread\n return reply_root_id === currentPageReplyRootId\n })\n}\n\n/**\n * Format text for typing indicators based on the number of people typing\n */\nexport const getTypingIndicatorText = (people: PersonTyping[]): string => {\n if (!people.length) return ''\n\n if (people.length === 1) {\n return `${people[0].author_name} is typing...`\n } else if (people.length === 2) {\n return `${people[0].author_name} and ${people[1].author_name} are typing...`\n } else {\n return 'Several people are typing...'\n }\n}\n\nconst stableArray: PersonTyping[] = []\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_typing_status_cache.d.ts","sourceRoot":"","sources":["../../src/hooks/use_typing_status_cache.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAA;AAEjF,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAE3C,MAAM,WAAW,YAAa,SAAQ,6BAA6B;IACjE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,mBAAoB,MAAM;2BAKhD,6BAA6B;gCAa/B,MAAM;gDASA,MAAM;CAapB,CAAA"}
1
+ {"version":3,"file":"use_typing_status_cache.d.ts","sourceRoot":"","sources":["../../src/hooks/use_typing_status_cache.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAElF,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAE3C,MAAM,WAAW,YAAa,SAAQ,6BAA6B;IACjE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,mBAAoB,MAAM;2BAKhD,6BAA6B;gCAa/B,MAAM;gDASA,MAAM;CAapB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_typing_status_cache.js","sourceRoot":"","sources":["../../src/hooks/use_typing_status_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAG5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAA,CAAC,YAAY;AAMxD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC7D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAEhG,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,IAAmC,EAAE,EAAE;QACtC,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAC7B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CACvE,CAAA;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,CAAA;YACpD,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,MAAM,qBAAqB,GAAG,WAAW,CACvC,CAAC,EAAU,EAAE,EAAE;QACb,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,MAAM,+BAA+B,GAAG,WAAW,CACjD,CAAC,QAAgB,EAAE,EAAE;QACnB,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,OAAO;QACL,cAAc;QACd,qBAAqB;QACrB,+BAA+B;KAChC,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { useCallback, useMemo } from 'react'\nimport { TypingBroadcastDataAttributes } from '@/types/jolt_events/typing_events'\n\nexport const TYPING_TIMEOUT_INTERVAL = 6000 // 6 seconds\n\nexport interface PersonTyping extends TypingBroadcastDataAttributes {\n expires: number\n}\n\n/**\n * Hook for managing the cache of people currently typing in a conversation\n */\nexport const useTypingStatusCache = (conversationId: number) => {\n const queryClient = useQueryClient()\n const cacheKey = useMemo(() => ['conversationTyping', String(conversationId)], [conversationId])\n\n const addTypingEvent = useCallback(\n (data: TypingBroadcastDataAttributes) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n const filtered = oldData.filter(\n item => item.author_id !== data.author_id && item.expires > Date.now()\n )\n const expires = Date.now() + TYPING_TIMEOUT_INTERVAL\n return [...filtered, { ...data, expires }]\n })\n },\n [queryClient, cacheKey]\n )\n\n const removeTypingEventById = useCallback(\n (id: string) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n return oldData.filter(item => item.id !== id)\n })\n },\n [queryClient, cacheKey]\n )\n\n const removeAllTypingEventsByAuthorId = useCallback(\n (authorId: number) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n return oldData.filter(item => item.author_id !== authorId)\n })\n },\n [queryClient, cacheKey]\n )\n\n return {\n addTypingEvent,\n removeTypingEventById,\n removeAllTypingEventsByAuthorId,\n }\n}\n"]}
1
+ {"version":3,"file":"use_typing_status_cache.js","sourceRoot":"","sources":["../../src/hooks/use_typing_status_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAG5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAA,CAAC,YAAY;AAMxD;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,cAAsB,EAAE,EAAE;IAC7D,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAEhG,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,IAAmC,EAAE,EAAE;QACtC,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAC7B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CACvE,CAAA;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,uBAAuB,CAAA;YACpD,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,MAAM,qBAAqB,GAAG,WAAW,CACvC,CAAC,EAAU,EAAE,EAAE;QACb,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,MAAM,+BAA+B,GAAG,WAAW,CACjD,CAAC,QAAgB,EAAE,EAAE;QACnB,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE,EAAE;YAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,QAAQ,CAAC,CACxB,CAAA;IAED,OAAO;QACL,cAAc;QACd,qBAAqB;QACrB,+BAA+B;KAChC,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { useQueryClient } from '@tanstack/react-query'\nimport { useCallback, useMemo } from 'react'\nimport { TypingBroadcastDataAttributes } from '../types/jolt_events/typing_events'\n\nexport const TYPING_TIMEOUT_INTERVAL = 6000 // 6 seconds\n\nexport interface PersonTyping extends TypingBroadcastDataAttributes {\n expires: number\n}\n\n/**\n * Hook for managing the cache of people currently typing in a conversation\n */\nexport const useTypingStatusCache = (conversationId: number) => {\n const queryClient = useQueryClient()\n const cacheKey = useMemo(() => ['conversationTyping', String(conversationId)], [conversationId])\n\n const addTypingEvent = useCallback(\n (data: TypingBroadcastDataAttributes) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n const filtered = oldData.filter(\n item => item.author_id !== data.author_id && item.expires > Date.now()\n )\n const expires = Date.now() + TYPING_TIMEOUT_INTERVAL\n return [...filtered, { ...data, expires }]\n })\n },\n [queryClient, cacheKey]\n )\n\n const removeTypingEventById = useCallback(\n (id: string) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n return oldData.filter(item => item.id !== id)\n })\n },\n [queryClient, cacheKey]\n )\n\n const removeAllTypingEventsByAuthorId = useCallback(\n (authorId: number) => {\n queryClient.setQueryData(cacheKey, (oldData: PersonTyping[] = []) => {\n return oldData.filter(item => item.author_id !== authorId)\n })\n },\n [queryClient, cacheKey]\n )\n\n return {\n addTypingEvent,\n removeTypingEventById,\n removeAllTypingEventsByAuthorId,\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"use_upload_client.d.ts","sourceRoot":"","sources":["../../src/hooks/use_upload_client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAGhC,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,eAAe,oBAiB3B,CAAA;AAED,cAAM,YAAa,SAAQ,MAAM;IACzB,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAiCvE;AAED,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE;QACV,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,GAAG,EAAE,MAAM,CAAA;QACX,UAAU,EAAE,MAAM,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF"}
1
+ {"version":3,"file":"use_upload_client.d.ts","sourceRoot":"","sources":["../../src/hooks/use_upload_client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAGjC,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,eAAe,oBAiB3B,CAAA;AAED,cAAM,YAAa,SAAQ,MAAM;IACzB,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAiCvE;AAED,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE;QACV,eAAe,EAAE,MAAM,CAAA;QACvB,SAAS,EAAE,MAAM,CAAA;QACjB,GAAG,EAAE,MAAM,CAAA;QACX,UAAU,EAAE,MAAM,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,YAAY,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,MAAM,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"use_upload_client.js","sourceRoot":"","sources":["../../src/hooks/use_upload_client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAQ9C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;IAEnE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEhE,MAAM,GAAG,GAAG,OAAO,CACjB,GAAG,EAAE,CACH,IAAI,YAAY,CAAC;QACf,OAAO,EAAE,YAAY,EAAE,4DAA4D;QACnF,IAAI,EAAE,GAAG,CAAC,OAAO;QACjB,cAAc,EAAE,GAAG,CAAC,OAAO;QAC3B,sBAAsB;KACvB,CAAC,EACJ,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAC9B,CAAA;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,YAAa,SAAQ,MAAM;IAC/B,KAAK,CAAC,UAAU,CAAC,IAAyB;QACxC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;QAC/B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAA;QAEF,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3D,OAAO,OAAO,CAAC,cAAc,CAAC,CAAA;QAE9B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,WAAW,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,QAAQ;SACf,CAAC,CAAA;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YACzD,IAAI,SAAS,EAAE,MAAM,KAAK,mBAAmB,EAAE,CAAC;gBAC9C,OAAO,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;CACF","sourcesContent":["import { useContext, useMemo } from 'react'\nimport { ChatContext } from '@/contexts/chat_context'\nimport { Client } from '@/utils'\nimport { UploadUri } from '@/utils/upload_uri'\n\nexport interface FileForUploadClient {\n uri: string\n name: string\n type: string // Should be a MIME type\n}\n\nexport const useUploadClient = () => {\n const { session, onUnauthorizedResponse } = useContext(ChatContext)\n\n const uri = useMemo(() => new UploadUri({ session }), [session])\n\n const api = useMemo(\n () =>\n new UploadClient({\n version: '2025-05-16', // not really needed, but required by the Client constructor\n root: uri.baseUrl,\n defaultHeaders: uri.headers,\n onUnauthorizedResponse,\n }),\n [uri, onUnauthorizedResponse]\n )\n\n return api\n}\n\nclass UploadClient extends Client {\n async uploadFile(file: FileForUploadClient): Promise<UploadedResource> {\n const formData = new FormData()\n formData.append('file', {\n uri: file.uri,\n name: file.name,\n type: file.type,\n })\n\n const headers: RequestInit['headers'] = { ...this.headers }\n delete headers['Content-Type']\n\n const response = await fetch(`${this.root}/v2/files`, {\n method: 'POST',\n headers,\n body: formData,\n })\n\n if (response.status === 403) {\n const errorBody = await response.json().catch(() => null)\n if (errorBody?.detail === 'Image was flagged') {\n return Promise.reject({ code: 'image_flagged' })\n }\n return this.handleNotOk(response)\n }\n\n if (!response.ok) {\n return this.handleNotOk(response)\n }\n\n const jsonResponse = await response.json()\n\n return jsonResponse.data[0]\n }\n}\n\ninterface UploadedResource {\n id: string\n type: string\n attributes: {\n organization_id: string\n person_id: string\n md5: string\n created_at: string\n expires_at: string\n source_ip: string\n name: string\n content_type: string\n file_size: number\n location: string\n }\n}\n"]}
1
+ {"version":3,"file":"use_upload_client.js","sourceRoot":"","sources":["../../src/hooks/use_upload_client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAQ/C,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;IAEnE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IAEhE,MAAM,GAAG,GAAG,OAAO,CACjB,GAAG,EAAE,CACH,IAAI,YAAY,CAAC;QACf,OAAO,EAAE,YAAY,EAAE,4DAA4D;QACnF,IAAI,EAAE,GAAG,CAAC,OAAO;QACjB,cAAc,EAAE,GAAG,CAAC,OAAO;QAC3B,sBAAsB;KACvB,CAAC,EACJ,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAC9B,CAAA;IAED,OAAO,GAAG,CAAA;AACZ,CAAC,CAAA;AAED,MAAM,YAAa,SAAQ,MAAM;IAC/B,KAAK,CAAC,UAAU,CAAC,IAAyB;QACxC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;QAC/B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAA;QAEF,MAAM,OAAO,GAA2B,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3D,OAAO,OAAO,CAAC,cAAc,CAAC,CAAA;QAE9B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,WAAW,EAAE;YACpD,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,QAAQ;SACf,CAAC,CAAA;QAEF,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YACzD,IAAI,SAAS,EAAE,MAAM,KAAK,mBAAmB,EAAE,CAAC;gBAC9C,OAAO,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAA;YAClD,CAAC;YACD,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;CACF","sourcesContent":["import { useContext, useMemo } from 'react'\nimport { ChatContext } from '../contexts/chat_context'\nimport { Client } from '../utils'\nimport { UploadUri } from '../utils/upload_uri'\n\nexport interface FileForUploadClient {\n uri: string\n name: string\n type: string // Should be a MIME type\n}\n\nexport const useUploadClient = () => {\n const { session, onUnauthorizedResponse } = useContext(ChatContext)\n\n const uri = useMemo(() => new UploadUri({ session }), [session])\n\n const api = useMemo(\n () =>\n new UploadClient({\n version: '2025-05-16', // not really needed, but required by the Client constructor\n root: uri.baseUrl,\n defaultHeaders: uri.headers,\n onUnauthorizedResponse,\n }),\n [uri, onUnauthorizedResponse]\n )\n\n return api\n}\n\nclass UploadClient extends Client {\n async uploadFile(file: FileForUploadClient): Promise<UploadedResource> {\n const formData = new FormData()\n formData.append('file', {\n uri: file.uri,\n name: file.name,\n type: file.type,\n })\n\n const headers: RequestInit['headers'] = { ...this.headers }\n delete headers['Content-Type']\n\n const response = await fetch(`${this.root}/v2/files`, {\n method: 'POST',\n headers,\n body: formData,\n })\n\n if (response.status === 403) {\n const errorBody = await response.json().catch(() => null)\n if (errorBody?.detail === 'Image was flagged') {\n return Promise.reject({ code: 'image_flagged' })\n }\n return this.handleNotOk(response)\n }\n\n if (!response.ok) {\n return this.handleNotOk(response)\n }\n\n const jsonResponse = await response.json()\n\n return jsonResponse.data[0]\n }\n}\n\ninterface UploadedResource {\n id: string\n type: string\n attributes: {\n organization_id: string\n person_id: string\n md5: string\n created_at: string\n expires_at: string\n source_ip: string\n name: string\n content_type: string\n file_size: number\n location: string\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"font_awesome.js","sourceRoot":"","sources":["../../src/icons/font_awesome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAC3D,OAAO;AACL,SAAS;AACT,WAAW,EACX,QAAQ,EACR,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,YAAY;AACZ,WAAW;AACX,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,EACN,UAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW;AACX,SAAS;AACT,QAAQ,EACR,aAAa,EACb,aAAa,EACb,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,GACP,MAAM,uCAAuC,CAAA;AAE9C,OAAO,CAAC,GAAG;AACT,SAAS;AACT,WAAW,EACX,QAAQ,EACR,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,YAAY;AACZ,WAAW;AACX,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,EACN,UAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW;AACX,SAAS;AACT,QAAQ,EACR,aAAa,EACb,aAAa,EACb,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,CACP,CAAA","sourcesContent":["import { library } from '@fortawesome/fontawesome-svg-core'\nimport {\n // Church\n faBookBible,\n faChurch,\n faCross,\n faDove,\n faHandsHeart,\n faPersonRays,\n faPrayingHands,\n faPodium,\n faDroplet,\n faPersonDrowning,\n faLighthouse,\n // Services\n faGuitar,\n faGuitarElectric,\n faViolin,\n faCalendarHeart,\n faHandHeart,\n faHandWave,\n faBaby,\n faChildren,\n faMugHot,\n faVideoCamera,\n faMusic,\n faPianoKeyboard,\n faDrum,\n faUserGraduate,\n faCommentsQuestion,\n faPresentation,\n faMicrophoneStand,\n faIdBadge,\n faBookUser,\n faHandHoldingHeart,\n faGuitars,\n faAmpGuitar,\n faSchoolFlag,\n faShieldCheck,\n faProjector,\n // Groups\n faPeople,\n faPeopleGroup,\n faPersonDress,\n faPerson,\n faSeedling,\n faCommentsAlt,\n faGlobe,\n faBookOpenReader,\n faRunning,\n faLeaf,\n} from '@/vendor/font_awesome_pro_solid_icons'\n\nlibrary.add(\n // Church\n faBookBible,\n faChurch,\n faCross,\n faDove,\n faHandsHeart,\n faPersonRays,\n faPrayingHands,\n faPodium,\n faDroplet,\n faPersonDrowning,\n faLighthouse,\n // Services\n faGuitar,\n faGuitarElectric,\n faViolin,\n faCalendarHeart,\n faHandHeart,\n faHandWave,\n faBaby,\n faChildren,\n faMugHot,\n faVideoCamera,\n faMusic,\n faPianoKeyboard,\n faDrum,\n faUserGraduate,\n faCommentsQuestion,\n faPresentation,\n faMicrophoneStand,\n faIdBadge,\n faBookUser,\n faHandHoldingHeart,\n faGuitars,\n faAmpGuitar,\n faSchoolFlag,\n faShieldCheck,\n faProjector,\n // Groups\n faPeople,\n faPeopleGroup,\n faPersonDress,\n faPerson,\n faSeedling,\n faCommentsAlt,\n faGlobe,\n faBookOpenReader,\n faRunning,\n faLeaf\n)\n"]}
1
+ {"version":3,"file":"font_awesome.js","sourceRoot":"","sources":["../../src/icons/font_awesome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAC3D,OAAO;AACL,SAAS;AACT,WAAW,EACX,QAAQ,EACR,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,YAAY;AACZ,WAAW;AACX,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,EACN,UAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW;AACX,SAAS;AACT,QAAQ,EACR,aAAa,EACb,aAAa,EACb,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,GACP,MAAM,wCAAwC,CAAA;AAE/C,OAAO,CAAC,GAAG;AACT,SAAS;AACT,WAAW,EACX,QAAQ,EACR,OAAO,EACP,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,YAAY;AACZ,WAAW;AACX,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,MAAM,EACN,UAAU,EACV,QAAQ,EACR,aAAa,EACb,OAAO,EACP,eAAe,EACf,MAAM,EACN,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,YAAY,EACZ,aAAa,EACb,WAAW;AACX,SAAS;AACT,QAAQ,EACR,aAAa,EACb,aAAa,EACb,QAAQ,EACR,UAAU,EACV,aAAa,EACb,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,CACP,CAAA","sourcesContent":["import { library } from '@fortawesome/fontawesome-svg-core'\nimport {\n // Church\n faBookBible,\n faChurch,\n faCross,\n faDove,\n faHandsHeart,\n faPersonRays,\n faPrayingHands,\n faPodium,\n faDroplet,\n faPersonDrowning,\n faLighthouse,\n // Services\n faGuitar,\n faGuitarElectric,\n faViolin,\n faCalendarHeart,\n faHandHeart,\n faHandWave,\n faBaby,\n faChildren,\n faMugHot,\n faVideoCamera,\n faMusic,\n faPianoKeyboard,\n faDrum,\n faUserGraduate,\n faCommentsQuestion,\n faPresentation,\n faMicrophoneStand,\n faIdBadge,\n faBookUser,\n faHandHoldingHeart,\n faGuitars,\n faAmpGuitar,\n faSchoolFlag,\n faShieldCheck,\n faProjector,\n // Groups\n faPeople,\n faPeopleGroup,\n faPersonDress,\n faPerson,\n faSeedling,\n faCommentsAlt,\n faGlobe,\n faBookOpenReader,\n faRunning,\n faLeaf,\n} from '../vendor/font_awesome_pro_solid_icons'\n\nlibrary.add(\n // Church\n faBookBible,\n faChurch,\n faCross,\n faDove,\n faHandsHeart,\n faPersonRays,\n faPrayingHands,\n faPodium,\n faDroplet,\n faPersonDrowning,\n faLighthouse,\n // Services\n faGuitar,\n faGuitarElectric,\n faViolin,\n faCalendarHeart,\n faHandHeart,\n faHandWave,\n faBaby,\n faChildren,\n faMugHot,\n faVideoCamera,\n faMusic,\n faPianoKeyboard,\n faDrum,\n faUserGraduate,\n faCommentsQuestion,\n faPresentation,\n faMicrophoneStand,\n faIdBadge,\n faBookUser,\n faHandHoldingHeart,\n faGuitars,\n faAmpGuitar,\n faSchoolFlag,\n faShieldCheck,\n faProjector,\n // Groups\n faPeople,\n faPeopleGroup,\n faPersonDress,\n faPerson,\n faSeedling,\n faCommentsAlt,\n faGlobe,\n faBookOpenReader,\n faRunning,\n faLeaf\n)\n"]}
package/build/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import './icons/font_awesome';
1
+ import '@/icons/font_awesome';
2
2
  export { GroupConversations } from './components';
3
3
  export { ApiProvider, chatQueryClient, useFocusManager } from './contexts/api_provider';
4
4
  export * from './contexts/chat_context';
package/build/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import './icons/font_awesome';
1
+ import '@/icons/font_awesome';
2
2
  export { GroupConversations } from './components';
3
3
  export { ApiProvider, chatQueryClient, useFocusManager } from './contexts/api_provider';
4
4
  export * from './contexts/chat_context';
@@ -1 +1 @@
1
- {"version":3,"file":"chat_access_gate.js","sourceRoot":"","sources":["../../src/navigation/chat_access_gate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAqB,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,OAAO,EAAE,sBAAsB,EAAyB,MAAM,SAAS,CAAA;AAEvE,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC5D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAwB,wBAAwB,CAAC,CAAA;IAC9F,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAEhD,MAAM,sBAAsB,GAAG,MAAM,EAAE,sBAAsB,CAAA;IAC7D,MAAM,YAAY,GAAG,YAAY,EAAE,YAAY,CAAA;IAE/C,sBAAsB,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAA;IAE5D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,cAAc,CAAC,AAAD,EAAG,CAAA;IAC3B,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,sBAAsB,KAAK,sBAAsB,CAAC,YAAY,EAAE,CAAC;QACnE,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EAAG,CAAA;IAC/D,CAAC;IAED,IAAI,sBAAsB,KAAK,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC9D,OAAO,CAAC,sBAAsB,CAAC,AAAD,EAAG,CAAA;IACnC,CAAC;IAED,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAA;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,sBAAuE,EACvE,YAAgC;IAEhC,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,EAAE,CAAA;IAClD,MAAM,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,IACE,sBAAsB,KAAK,sBAAsB,CAAC,YAAY;YAC9D,CAAC,oBAAoB,CAAC,OAAO,EAC7B,CAAC;YACD,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAA;YACnC,qBAAqB,CAAC,EAAE,YAAY,EAAE,YAAY,IAAI,EAAE,EAAE,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC,EAAE,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,YAAY,CAAC,CAAC,CAAA;AACnE,CAAC","sourcesContent":["import React, { PropsWithChildren, useEffect, useRef } from 'react'\nimport { DefaultLoading } from '@/components/page/loading'\nimport { useChatContext } from '@/contexts/chat_context'\nimport { useApiGet, useOrganization } from '@/hooks'\nimport { currentPersonRequestArgs } from '@/hooks/use_current_person'\nimport { AgeCheckRequiredScreen } from '@/screens/age_check/age_check_required_screen'\nimport { AgeCheckUnderageScreen } from '@/screens/age_check/age_check_underage_screen'\nimport { AgeQualificationStatus, CurrentPersonResource } from '@/types'\n\nexport function ChatAccessGate({ children }: PropsWithChildren) {\n const { data: person, isFetched } = useApiGet<CurrentPersonResource>(currentPersonRequestArgs)\n const { data: organization } = useOrganization()\n\n const ageQualificationStatus = person?.ageQualificationStatus\n const contactEmail = organization?.contactEmail\n\n useAgeDisqualification(ageQualificationStatus, contactEmail)\n\n if (!isFetched) {\n return <DefaultLoading />\n }\n\n if (!person) {\n throw new Error('Current person not found')\n }\n\n if (ageQualificationStatus === AgeQualificationStatus.DISQUALIFIED) {\n return <AgeCheckUnderageScreen contactEmail={contactEmail} />\n }\n\n if (ageQualificationStatus === AgeQualificationStatus.UNKNOWN) {\n return <AgeCheckRequiredScreen />\n }\n\n return <>{children}</>\n}\n\n/**\n * Helper hook that handles the age disqualification logic.\n *\n * If a host app provides an onAgeDisqualification callback, it will be called\n * when a user is found to be disqualified by their age.\n */\nfunction useAgeDisqualification(\n ageQualificationStatus: CurrentPersonResource['ageQualificationStatus'],\n contactEmail: string | undefined\n) {\n const { onAgeDisqualification } = useChatContext()\n const hasCalledCallbackRef = useRef(false)\n\n useEffect(() => {\n if (\n ageQualificationStatus === AgeQualificationStatus.DISQUALIFIED &&\n !hasCalledCallbackRef.current\n ) {\n hasCalledCallbackRef.current = true\n onAgeDisqualification({ contactEmail: contactEmail || '' })\n }\n }, [ageQualificationStatus, onAgeDisqualification, contactEmail])\n}\n"]}
1
+ {"version":3,"file":"chat_access_gate.js","sourceRoot":"","sources":["../../src/navigation/chat_access_gate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAqB,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAA;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAA;AACvF,OAAO,EAAE,sBAAsB,EAAyB,MAAM,UAAU,CAAA;AAExE,MAAM,UAAU,cAAc,CAAC,EAAE,QAAQ,EAAqB;IAC5D,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAwB,wBAAwB,CAAC,CAAA;IAC9F,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAEhD,MAAM,sBAAsB,GAAG,MAAM,EAAE,sBAAsB,CAAA;IAC7D,MAAM,YAAY,GAAG,YAAY,EAAE,YAAY,CAAA;IAE/C,sBAAsB,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAA;IAE5D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,cAAc,CAAC,AAAD,EAAG,CAAA;IAC3B,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,sBAAsB,KAAK,sBAAsB,CAAC,YAAY,EAAE,CAAC;QACnE,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EAAG,CAAA;IAC/D,CAAC;IAED,IAAI,sBAAsB,KAAK,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC9D,OAAO,CAAC,sBAAsB,CAAC,AAAD,EAAG,CAAA;IACnC,CAAC;IAED,OAAO,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAA;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,sBAAuE,EACvE,YAAgC;IAEhC,MAAM,EAAE,qBAAqB,EAAE,GAAG,cAAc,EAAE,CAAA;IAClD,MAAM,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,IACE,sBAAsB,KAAK,sBAAsB,CAAC,YAAY;YAC9D,CAAC,oBAAoB,CAAC,OAAO,EAC7B,CAAC;YACD,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAA;YACnC,qBAAqB,CAAC,EAAE,YAAY,EAAE,YAAY,IAAI,EAAE,EAAE,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC,EAAE,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,YAAY,CAAC,CAAC,CAAA;AACnE,CAAC","sourcesContent":["import React, { PropsWithChildren, useEffect, useRef } from 'react'\nimport { DefaultLoading } from '../components/page/loading'\nimport { useChatContext } from '../contexts/chat_context'\nimport { useApiGet, useOrganization } from '../hooks'\nimport { currentPersonRequestArgs } from '../hooks/use_current_person'\nimport { AgeCheckRequiredScreen } from '../screens/age_check/age_check_required_screen'\nimport { AgeCheckUnderageScreen } from '../screens/age_check/age_check_underage_screen'\nimport { AgeQualificationStatus, CurrentPersonResource } from '../types'\n\nexport function ChatAccessGate({ children }: PropsWithChildren) {\n const { data: person, isFetched } = useApiGet<CurrentPersonResource>(currentPersonRequestArgs)\n const { data: organization } = useOrganization()\n\n const ageQualificationStatus = person?.ageQualificationStatus\n const contactEmail = organization?.contactEmail\n\n useAgeDisqualification(ageQualificationStatus, contactEmail)\n\n if (!isFetched) {\n return <DefaultLoading />\n }\n\n if (!person) {\n throw new Error('Current person not found')\n }\n\n if (ageQualificationStatus === AgeQualificationStatus.DISQUALIFIED) {\n return <AgeCheckUnderageScreen contactEmail={contactEmail} />\n }\n\n if (ageQualificationStatus === AgeQualificationStatus.UNKNOWN) {\n return <AgeCheckRequiredScreen />\n }\n\n return <>{children}</>\n}\n\n/**\n * Helper hook that handles the age disqualification logic.\n *\n * If a host app provides an onAgeDisqualification callback, it will be called\n * when a user is found to be disqualified by their age.\n */\nfunction useAgeDisqualification(\n ageQualificationStatus: CurrentPersonResource['ageQualificationStatus'],\n contactEmail: string | undefined\n) {\n const { onAgeDisqualification } = useChatContext()\n const hasCalledCallbackRef = useRef(false)\n\n useEffect(() => {\n if (\n ageQualificationStatus === AgeQualificationStatus.DISQUALIFIED &&\n !hasCalledCallbackRef.current\n ) {\n hasCalledCallbackRef.current = true\n onAgeDisqualification({ contactEmail: contactEmail || '' })\n }\n }, [ageQualificationStatus, onAgeDisqualification, contactEmail])\n}\n"]}
@@ -2,7 +2,6 @@ import { StaticParamList } from '@react-navigation/native';
2
2
  import { NativeStackHeaderRightProps } from '@react-navigation/native-stack';
3
3
  import { CardStyleInterpolators } from '@react-navigation/stack';
4
4
  import React from 'react';
5
- import { ScreenLayoutWithChatAccessGate } from './screenLayout';
6
5
  import { AttachmentActionsScreen } from '../screens/attachment_actions/attachment_actions_screen';
7
6
  import { BugReportScreen } from '../screens/bug_report_screen';
8
7
  import { MessageReadReceiptsScreen } from '../screens/conversation/message_read_receipts_screen';
@@ -20,6 +19,7 @@ import { NotificationSettingsScreen } from '../screens/notification_settings_scr
20
19
  import { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_screen';
21
20
  import { ReactionsScreen } from '../screens/reactions_screen';
22
21
  import { SendGiphyScreen } from '../screens/send_giphy_screen';
22
+ import { ScreenLayoutWithChatAccessGate } from './screenLayout';
23
23
  export declare const NewConversationStack: import("@react-navigation/native").TypedNavigator<{
24
24
  ParamList: import("@react-navigation/native").ParamListBase;
25
25
  NavigatorID: undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ import { createNativeStackNavigator, } from '@react-navigation/native-stack';
3
3
  import { CardStyleInterpolators } from '@react-navigation/stack';
4
4
  import React from 'react';
5
5
  import { Platform } from 'react-native';
6
- import { ScreenLayoutWithChatAccessGate } from './screenLayout';
7
6
  import { Icon } from '../components';
8
7
  import { HeaderDoneButton, HeaderTextButton, } from '../components/display/platform_modal_header_buttons';
9
8
  import { useQualifiedByAge } from '../hooks';
@@ -24,7 +23,7 @@ import { ConversationsScreen } from '../screens/conversations/conversations_scre
24
23
  import { GetHelpScreen } from '../screens/get_help_screen';
25
24
  import { GroupNotificationLevelSelectScreen, GroupNotificationLevelSelectScreenOptions, } from '../screens/group_notification_level_select_screen';
26
25
  import { GroupNotificationSettingsScreen } from '../screens/group_notification_settings_screen';
27
- import { MessageActionsScreen, MessageActionsScreenOptions } from '../screens/message_actions_screen';
26
+ import { MessageActionsScreen, MessageActionsScreenOptions, } from '../screens/message_actions_screen';
28
27
  import { MessageReportScreen, MessageReportScreenOptions } from '../screens/message_report_screen';
29
28
  import { NotFound } from '../screens/not_found';
30
29
  import { NotificationSettingsScreen } from '../screens/notification_settings_screen';
@@ -32,6 +31,7 @@ import { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_
32
31
  import { ReactionsScreen, ReactionsScreenOptions } from '../screens/reactions_screen';
33
32
  import { SendGiphyScreen, SendGiphyScreenOptions } from '../screens/send_giphy_screen';
34
33
  import { TeamConversationScreen } from '../screens/team_conversation_screen';
34
+ import { ScreenLayoutWithChatAccessGate } from './screenLayout';
35
35
  const HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES = {
36
36
  marginLeft: Platform.select({ ios: -8, default: -3 }),
37
37
  marginRight: Platform.select({ ios: 0, default: 30 }),