@planningcenter/chat-react-native 3.42.3-qa-staging.0 → 3.42.3-qa-staging.2

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 (694) hide show
  1. package/build/components/conversation/attachments/attachment_card.d.ts +3 -3
  2. package/build/components/conversation/attachments/attachment_card.d.ts.map +1 -1
  3. package/build/components/conversation/attachments/attachment_card.js +3 -7
  4. package/build/components/conversation/attachments/attachment_card.js.map +1 -1
  5. package/build/components/conversation/attachments/attachment_deleting_overlay.d.ts +1 -2
  6. package/build/components/conversation/attachments/attachment_deleting_overlay.d.ts.map +1 -1
  7. package/build/components/conversation/attachments/attachment_deleting_overlay.js +12 -7
  8. package/build/components/conversation/attachments/attachment_deleting_overlay.js.map +1 -1
  9. package/build/components/conversation/attachments/audio_attachment.d.ts +1 -2
  10. package/build/components/conversation/attachments/audio_attachment.d.ts.map +1 -1
  11. package/build/components/conversation/attachments/audio_attachment.js +6 -23
  12. package/build/components/conversation/attachments/audio_attachment.js.map +1 -1
  13. package/build/components/conversation/attachments/expanded_link.d.ts +1 -2
  14. package/build/components/conversation/attachments/expanded_link.d.ts.map +1 -1
  15. package/build/components/conversation/attachments/expanded_link.js +2 -8
  16. package/build/components/conversation/attachments/expanded_link.js.map +1 -1
  17. package/build/components/conversation/attachments/generic_file_attachment.d.ts +1 -2
  18. package/build/components/conversation/attachments/generic_file_attachment.d.ts.map +1 -1
  19. package/build/components/conversation/attachments/generic_file_attachment.js +2 -12
  20. package/build/components/conversation/attachments/generic_file_attachment.js.map +1 -1
  21. package/build/components/conversation/attachments/giphy_attachment.d.ts +1 -2
  22. package/build/components/conversation/attachments/giphy_attachment.d.ts.map +1 -1
  23. package/build/components/conversation/attachments/giphy_attachment.js +2 -7
  24. package/build/components/conversation/attachments/giphy_attachment.js.map +1 -1
  25. package/build/components/conversation/attachments/image_attachment.d.ts +1 -2
  26. package/build/components/conversation/attachments/image_attachment.d.ts.map +1 -1
  27. package/build/components/conversation/attachments/image_attachment.js +16 -53
  28. package/build/components/conversation/attachments/image_attachment.js.map +1 -1
  29. package/build/components/conversation/attachments/video_attachment.d.ts +1 -2
  30. package/build/components/conversation/attachments/video_attachment.d.ts.map +1 -1
  31. package/build/components/conversation/attachments/video_attachment.js +3 -13
  32. package/build/components/conversation/attachments/video_attachment.js.map +1 -1
  33. package/build/components/conversation/conversation_start_banner.d.ts +1 -2
  34. package/build/components/conversation/conversation_start_banner.d.ts.map +1 -1
  35. package/build/components/conversation/conversation_start_banner.js +2 -14
  36. package/build/components/conversation/conversation_start_banner.js.map +1 -1
  37. package/build/components/conversation/empty_conversation_blank_state.d.ts +1 -1
  38. package/build/components/conversation/empty_conversation_blank_state.d.ts.map +1 -1
  39. package/build/components/conversation/empty_conversation_blank_state.js +2 -9
  40. package/build/components/conversation/empty_conversation_blank_state.js.map +1 -1
  41. package/build/components/conversation/jump_to_bottom_button.d.ts +1 -1
  42. package/build/components/conversation/jump_to_bottom_button.d.ts.map +1 -1
  43. package/build/components/conversation/jump_to_bottom_button.js +2 -10
  44. package/build/components/conversation/jump_to_bottom_button.js.map +1 -1
  45. package/build/components/conversation/message.d.ts +1 -2
  46. package/build/components/conversation/message.d.ts.map +1 -1
  47. package/build/components/conversation/message.js +2 -53
  48. package/build/components/conversation/message.js.map +1 -1
  49. package/build/components/conversation/message_attachments.d.ts +1 -2
  50. package/build/components/conversation/message_attachments.d.ts.map +1 -1
  51. package/build/components/conversation/message_attachments.js +17 -21
  52. package/build/components/conversation/message_attachments.js.map +1 -1
  53. package/build/components/conversation/message_form/message_form_attachment_file.d.ts +1 -2
  54. package/build/components/conversation/message_form/message_form_attachment_file.d.ts.map +1 -1
  55. package/build/components/conversation/message_form/message_form_attachment_file.js +2 -2
  56. package/build/components/conversation/message_form/message_form_attachment_file.js.map +1 -1
  57. package/build/components/conversation/message_form/message_form_attachment_image.d.ts +1 -2
  58. package/build/components/conversation/message_form/message_form_attachment_image.d.ts.map +1 -1
  59. package/build/components/conversation/message_form/message_form_attachment_image.js +2 -2
  60. package/build/components/conversation/message_form/message_form_attachment_image.js.map +1 -1
  61. package/build/components/conversation/message_form/message_form_attachment_video.d.ts +1 -2
  62. package/build/components/conversation/message_form/message_form_attachment_video.d.ts.map +1 -1
  63. package/build/components/conversation/message_form/message_form_attachment_video.js +2 -2
  64. package/build/components/conversation/message_form/message_form_attachment_video.js.map +1 -1
  65. package/build/components/conversation/message_form.d.ts +5 -6
  66. package/build/components/conversation/message_form.d.ts.map +1 -1
  67. package/build/components/conversation/message_form.js +20 -82
  68. package/build/components/conversation/message_form.js.map +1 -1
  69. package/build/components/conversation/message_markdown.d.ts +1 -2
  70. package/build/components/conversation/message_markdown.d.ts.map +1 -1
  71. package/build/components/conversation/message_markdown.js +8 -16
  72. package/build/components/conversation/message_markdown.js.map +1 -1
  73. package/build/components/conversation/message_reaction.d.ts +1 -2
  74. package/build/components/conversation/message_reaction.d.ts.map +1 -1
  75. package/build/components/conversation/message_reaction.js +3 -5
  76. package/build/components/conversation/message_reaction.js.map +1 -1
  77. package/build/components/conversation/message_read_receipts.d.ts +1 -2
  78. package/build/components/conversation/message_read_receipts.d.ts.map +1 -1
  79. package/build/components/conversation/message_read_receipts.js +3 -13
  80. package/build/components/conversation/message_read_receipts.js.map +1 -1
  81. package/build/components/conversation/messages_disabled_banners.d.ts +7 -3
  82. package/build/components/conversation/messages_disabled_banners.d.ts.map +1 -1
  83. package/build/components/conversation/messages_disabled_banners.js +11 -11
  84. package/build/components/conversation/messages_disabled_banners.js.map +1 -1
  85. package/build/components/conversation/reply_connectors.d.ts +2 -2
  86. package/build/components/conversation/reply_connectors.d.ts.map +1 -1
  87. package/build/components/conversation/reply_connectors.js +18 -50
  88. package/build/components/conversation/reply_connectors.js.map +1 -1
  89. package/build/components/conversation/reply_shadow_message.d.ts +1 -2
  90. package/build/components/conversation/reply_shadow_message.d.ts.map +1 -1
  91. package/build/components/conversation/reply_shadow_message.js +16 -46
  92. package/build/components/conversation/reply_shadow_message.js.map +1 -1
  93. package/build/components/conversation/system_message.d.ts +1 -2
  94. package/build/components/conversation/system_message.d.ts.map +1 -1
  95. package/build/components/conversation/system_message.js +3 -12
  96. package/build/components/conversation/system_message.js.map +1 -1
  97. package/build/components/conversation/typing_indicator.d.ts +1 -2
  98. package/build/components/conversation/typing_indicator.d.ts.map +1 -1
  99. package/build/components/conversation/typing_indicator.js +3 -13
  100. package/build/components/conversation/typing_indicator.js.map +1 -1
  101. package/build/components/conversations/conversation_actions.d.ts +2 -2
  102. package/build/components/conversations/conversation_actions.d.ts.map +1 -1
  103. package/build/components/conversations/conversation_actions.js +4 -10
  104. package/build/components/conversations/conversation_actions.js.map +1 -1
  105. package/build/components/conversations/conversation_preview.d.ts +2 -3
  106. package/build/components/conversations/conversation_preview.d.ts.map +1 -1
  107. package/build/components/conversations/conversation_preview.js +7 -37
  108. package/build/components/conversations/conversation_preview.js.map +1 -1
  109. package/build/components/conversations/conversations.d.ts +1 -1
  110. package/build/components/conversations/conversations.d.ts.map +1 -1
  111. package/build/components/conversations/conversations.js +16 -17
  112. package/build/components/conversations/conversations.js.map +1 -1
  113. package/build/components/conversations/conversations_blank_state.d.ts +1 -2
  114. package/build/components/conversations/conversations_blank_state.d.ts.map +1 -1
  115. package/build/components/conversations/conversations_blank_state.js +2 -12
  116. package/build/components/conversations/conversations_blank_state.js.map +1 -1
  117. package/build/components/conversations/mute_indicator.d.ts +1 -2
  118. package/build/components/conversations/mute_indicator.d.ts.map +1 -1
  119. package/build/components/conversations/mute_indicator.js +2 -2
  120. package/build/components/conversations/mute_indicator.js.map +1 -1
  121. package/build/components/conversations/swipeable_toggle_button.d.ts +1 -2
  122. package/build/components/conversations/swipeable_toggle_button.d.ts.map +1 -1
  123. package/build/components/conversations/swipeable_toggle_button.js +3 -10
  124. package/build/components/conversations/swipeable_toggle_button.js.map +1 -1
  125. package/build/components/conversations/unread_count_badge.d.ts +1 -2
  126. package/build/components/conversations/unread_count_badge.d.ts.map +1 -1
  127. package/build/components/conversations/unread_count_badge.js +3 -7
  128. package/build/components/conversations/unread_count_badge.js.map +1 -1
  129. package/build/components/display/action_button.d.ts +1 -1
  130. package/build/components/display/action_button.d.ts.map +1 -1
  131. package/build/components/display/action_button.js +3 -13
  132. package/build/components/display/action_button.js.map +1 -1
  133. package/build/components/display/adult_requirement_notice.d.ts +1 -2
  134. package/build/components/display/adult_requirement_notice.d.ts.map +1 -1
  135. package/build/components/display/adult_requirement_notice.js +2 -4
  136. package/build/components/display/adult_requirement_notice.js.map +1 -1
  137. package/build/components/display/avatar.d.ts +1 -2
  138. package/build/components/display/avatar.d.ts.map +1 -1
  139. package/build/components/display/avatar.js +2 -7
  140. package/build/components/display/avatar.js.map +1 -1
  141. package/build/components/display/avatar_group.d.ts +1 -2
  142. package/build/components/display/avatar_group.d.ts.map +1 -1
  143. package/build/components/display/avatar_group.js +2 -9
  144. package/build/components/display/avatar_group.js.map +1 -1
  145. package/build/components/display/badge.d.ts +1 -2
  146. package/build/components/display/badge.d.ts.map +1 -1
  147. package/build/components/display/badge.js +6 -37
  148. package/build/components/display/badge.js.map +1 -1
  149. package/build/components/display/banner.d.ts +3 -3
  150. package/build/components/display/banner.d.ts.map +1 -1
  151. package/build/components/display/banner.js +4 -11
  152. package/build/components/display/banner.js.map +1 -1
  153. package/build/components/display/banner_collapsible.d.ts +2 -2
  154. package/build/components/display/banner_collapsible.d.ts.map +1 -1
  155. package/build/components/display/banner_collapsible.js +2 -10
  156. package/build/components/display/banner_collapsible.js.map +1 -1
  157. package/build/components/display/button.d.ts +1 -2
  158. package/build/components/display/button.d.ts.map +1 -1
  159. package/build/components/display/button.js +3 -14
  160. package/build/components/display/button.js.map +1 -1
  161. package/build/components/display/child_notice.d.ts +1 -2
  162. package/build/components/display/child_notice.d.ts.map +1 -1
  163. package/build/components/display/child_notice.js +3 -15
  164. package/build/components/display/child_notice.js.map +1 -1
  165. package/build/components/display/conversation_avatar.d.ts +1 -2
  166. package/build/components/display/conversation_avatar.d.ts.map +1 -1
  167. package/build/components/display/conversation_avatar.js +5 -9
  168. package/build/components/display/conversation_avatar.js.map +1 -1
  169. package/build/components/display/emoji_avatar.d.ts +1 -2
  170. package/build/components/display/emoji_avatar.d.ts.map +1 -1
  171. package/build/components/display/emoji_avatar.js +2 -12
  172. package/build/components/display/emoji_avatar.js.map +1 -1
  173. package/build/components/display/file_attachment_preview.d.ts +1 -1
  174. package/build/components/display/file_attachment_preview.d.ts.map +1 -1
  175. package/build/components/display/file_attachment_preview.js +3 -17
  176. package/build/components/display/file_attachment_preview.js.map +1 -1
  177. package/build/components/display/heading.d.ts +1 -2
  178. package/build/components/display/heading.d.ts.map +1 -1
  179. package/build/components/display/heading.js +2 -4
  180. package/build/components/display/heading.js.map +1 -1
  181. package/build/components/display/icon.d.ts +1 -2
  182. package/build/components/display/icon.d.ts.map +1 -1
  183. package/build/components/display/icon.js +4 -4
  184. package/build/components/display/icon.js.map +1 -1
  185. package/build/components/display/icon_avatar.d.ts +1 -2
  186. package/build/components/display/icon_avatar.d.ts.map +1 -1
  187. package/build/components/display/icon_avatar.js +2 -12
  188. package/build/components/display/icon_avatar.js.map +1 -1
  189. package/build/components/display/icon_button.d.ts +1 -2
  190. package/build/components/display/icon_button.d.ts.map +1 -1
  191. package/build/components/display/icon_button.js +3 -5
  192. package/build/components/display/icon_button.js.map +1 -1
  193. package/build/components/display/image.d.ts +1 -2
  194. package/build/components/display/image.d.ts.map +1 -1
  195. package/build/components/display/image.js +3 -7
  196. package/build/components/display/image.js.map +1 -1
  197. package/build/components/display/image_attachment_preview.d.ts +1 -1
  198. package/build/components/display/image_attachment_preview.d.ts.map +1 -1
  199. package/build/components/display/image_attachment_preview.js +2 -7
  200. package/build/components/display/image_attachment_preview.js.map +1 -1
  201. package/build/components/display/keyboard_view.d.ts +1 -2
  202. package/build/components/display/keyboard_view.d.ts.map +1 -1
  203. package/build/components/display/keyboard_view.js +4 -9
  204. package/build/components/display/keyboard_view.js.map +1 -1
  205. package/build/components/display/person.d.ts +1 -2
  206. package/build/components/display/person.d.ts.map +1 -1
  207. package/build/components/display/person.js +2 -12
  208. package/build/components/display/person.js.map +1 -1
  209. package/build/components/display/platform_modal_header_buttons.d.ts +3 -3
  210. package/build/components/display/platform_modal_header_buttons.d.ts.map +1 -1
  211. package/build/components/display/platform_modal_header_buttons.js +5 -10
  212. package/build/components/display/platform_modal_header_buttons.js.map +1 -1
  213. package/build/components/display/pressable_row.d.ts +1 -1
  214. package/build/components/display/pressable_row.d.ts.map +1 -1
  215. package/build/components/display/pressable_row.js +2 -7
  216. package/build/components/display/pressable_row.js.map +1 -1
  217. package/build/components/display/spinner.d.ts +1 -2
  218. package/build/components/display/spinner.d.ts.map +1 -1
  219. package/build/components/display/spinner.js +3 -9
  220. package/build/components/display/spinner.js.map +1 -1
  221. package/build/components/display/switch.d.ts +1 -2
  222. package/build/components/display/switch.d.ts.map +1 -1
  223. package/build/components/display/switch.js +2 -2
  224. package/build/components/display/switch.js.map +1 -1
  225. package/build/components/display/tabs.d.ts +1 -1
  226. package/build/components/display/tabs.d.ts.map +1 -1
  227. package/build/components/display/tabs.js +21 -31
  228. package/build/components/display/tabs.js.map +1 -1
  229. package/build/components/display/text.d.ts +1 -2
  230. package/build/components/display/text.d.ts.map +1 -1
  231. package/build/components/display/text.js +2 -4
  232. package/build/components/display/text.js.map +1 -1
  233. package/build/components/display/text_button.d.ts +1 -2
  234. package/build/components/display/text_button.d.ts.map +1 -1
  235. package/build/components/display/text_button.js +3 -8
  236. package/build/components/display/text_button.js.map +1 -1
  237. package/build/components/display/text_inline_button.d.ts +1 -2
  238. package/build/components/display/text_inline_button.d.ts.map +1 -1
  239. package/build/components/display/text_inline_button.js +4 -5
  240. package/build/components/display/text_inline_button.js.map +1 -1
  241. package/build/components/display/text_input.d.ts +1 -1
  242. package/build/components/display/text_input.d.ts.map +1 -1
  243. package/build/components/display/text_input.js +2 -1
  244. package/build/components/display/text_input.js.map +1 -1
  245. package/build/components/display/toggle_button.d.ts +1 -2
  246. package/build/components/display/toggle_button.d.ts.map +1 -1
  247. package/build/components/display/toggle_button.js +3 -9
  248. package/build/components/display/toggle_button.js.map +1 -1
  249. package/build/components/display/video_attachment_preview.d.ts +1 -1
  250. package/build/components/display/video_attachment_preview.d.ts.map +1 -1
  251. package/build/components/display/video_attachment_preview.js +3 -20
  252. package/build/components/display/video_attachment_preview.js.map +1 -1
  253. package/build/components/group_conversation_list.d.ts +1 -1
  254. package/build/components/group_conversation_list.d.ts.map +1 -1
  255. package/build/components/group_conversation_list.js +4 -14
  256. package/build/components/group_conversation_list.js.map +1 -1
  257. package/build/components/page/component_error_boundary.d.ts +2 -2
  258. package/build/components/page/component_error_boundary.d.ts.map +1 -1
  259. package/build/components/page/component_error_boundary.js +2 -4
  260. package/build/components/page/component_error_boundary.js.map +1 -1
  261. package/build/components/page/loading.d.ts +1 -2
  262. package/build/components/page/loading.d.ts.map +1 -1
  263. package/build/components/page/loading.js +2 -4
  264. package/build/components/page/loading.js.map +1 -1
  265. package/build/components/page/page_error_boundary.d.ts +2 -2
  266. package/build/components/page/page_error_boundary.d.ts.map +1 -1
  267. package/build/components/page/page_error_boundary.js +11 -32
  268. package/build/components/page/page_error_boundary.js.map +1 -1
  269. package/build/components/primitive/avatar_primitive.js +14 -41
  270. package/build/components/primitive/avatar_primitive.js.map +1 -1
  271. package/build/components/primitive/banner_primitive.js +10 -18
  272. package/build/components/primitive/banner_primitive.js.map +1 -1
  273. package/build/components/primitive/blank_state_primitive.js +8 -12
  274. package/build/components/primitive/blank_state_primitive.js.map +1 -1
  275. package/build/components/primitive/form_sheet.d.ts +1 -1
  276. package/build/components/primitive/form_sheet.d.ts.map +1 -1
  277. package/build/components/primitive/form_sheet.js +9 -22
  278. package/build/components/primitive/form_sheet.js.map +1 -1
  279. package/build/components/safe_area_modal.d.ts +1 -1
  280. package/build/components/safe_area_modal.d.ts.map +1 -1
  281. package/build/components/safe_area_modal.js +2 -3
  282. package/build/components/safe_area_modal.js.map +1 -1
  283. package/build/contexts/api_provider.d.ts +1 -2
  284. package/build/contexts/api_provider.d.ts.map +1 -1
  285. package/build/contexts/api_provider.js +3 -5
  286. package/build/contexts/api_provider.js.map +1 -1
  287. package/build/contexts/chat_context.d.ts +2 -1
  288. package/build/contexts/chat_context.d.ts.map +1 -1
  289. package/build/contexts/chat_context.js +9 -2
  290. package/build/contexts/chat_context.js.map +1 -1
  291. package/build/contexts/conversation_context.d.ts +2 -2
  292. package/build/contexts/conversation_context.d.ts.map +1 -1
  293. package/build/contexts/conversation_context.js +3 -2
  294. package/build/contexts/conversation_context.js.map +1 -1
  295. package/build/contexts/conversations_context.d.ts +2 -2
  296. package/build/contexts/conversations_context.d.ts.map +1 -1
  297. package/build/contexts/conversations_context.js +3 -2
  298. package/build/contexts/conversations_context.js.map +1 -1
  299. package/build/contexts/session_context.d.ts +1 -1
  300. package/build/contexts/session_context.d.ts.map +1 -1
  301. package/build/contexts/session_context.js +3 -2
  302. package/build/contexts/session_context.js.map +1 -1
  303. package/build/hooks/direct_messages/find_direct_message_conversation.d.ts +14 -0
  304. package/build/hooks/direct_messages/find_direct_message_conversation.d.ts.map +1 -0
  305. package/build/hooks/direct_messages/find_direct_message_conversation.js +10 -0
  306. package/build/hooks/direct_messages/find_direct_message_conversation.js.map +1 -0
  307. package/build/hooks/direct_messages/resolve_message_available_members_link.d.ts +16 -0
  308. package/build/hooks/direct_messages/resolve_message_available_members_link.d.ts.map +1 -0
  309. package/build/hooks/direct_messages/resolve_message_available_members_link.js +24 -0
  310. package/build/hooks/direct_messages/resolve_message_available_members_link.js.map +1 -0
  311. package/build/hooks/direct_messages/use_find_or_create_direct_message_conversation.d.ts.map +1 -1
  312. package/build/hooks/direct_messages/use_find_or_create_direct_message_conversation.js +1 -8
  313. package/build/hooks/direct_messages/use_find_or_create_direct_message_conversation.js.map +1 -1
  314. package/build/hooks/direct_messages/use_message_available_members.d.ts +6 -0
  315. package/build/hooks/direct_messages/use_message_available_members.d.ts.map +1 -0
  316. package/build/hooks/direct_messages/use_message_available_members.js +40 -0
  317. package/build/hooks/direct_messages/use_message_available_members.js.map +1 -0
  318. package/build/hooks/direct_messages/use_message_available_members_action.d.ts +6 -0
  319. package/build/hooks/direct_messages/use_message_available_members_action.d.ts.map +1 -0
  320. package/build/hooks/direct_messages/use_message_available_members_action.js +30 -0
  321. package/build/hooks/direct_messages/use_message_available_members_action.js.map +1 -0
  322. package/build/hooks/index.d.ts +1 -1
  323. package/build/hooks/index.d.ts.map +1 -1
  324. package/build/hooks/index.js +1 -1
  325. package/build/hooks/index.js.map +1 -1
  326. package/build/hooks/use_animated_message_background_color.d.ts +2 -2
  327. package/build/hooks/use_conversation.d.ts +1 -1
  328. package/build/hooks/use_conversation.d.ts.map +1 -1
  329. package/build/hooks/use_conversation.js +1 -0
  330. package/build/hooks/use_conversation.js.map +1 -1
  331. package/build/hooks/use_conversation_membership.d.ts +1 -1
  332. package/build/hooks/use_conversation_membership.d.ts.map +1 -1
  333. package/build/hooks/use_conversations_actions.d.ts +36 -36
  334. package/build/hooks/use_current_person.d.ts.map +1 -1
  335. package/build/hooks/use_current_person.js +1 -0
  336. package/build/hooks/use_current_person.js.map +1 -1
  337. package/build/hooks/use_direct_messages_eligible.d.ts +2 -0
  338. package/build/hooks/use_direct_messages_eligible.d.ts.map +1 -0
  339. package/build/hooks/use_direct_messages_eligible.js +9 -0
  340. package/build/hooks/use_direct_messages_eligible.js.map +1 -0
  341. package/build/hooks/use_features.d.ts +0 -1
  342. package/build/hooks/use_features.d.ts.map +1 -1
  343. package/build/hooks/use_features.js +0 -1
  344. package/build/hooks/use_features.js.map +1 -1
  345. package/build/hooks/use_person_settings.d.ts +1 -1
  346. package/build/index.d.ts +2 -1
  347. package/build/index.d.ts.map +1 -1
  348. package/build/index.js.map +1 -1
  349. package/build/navigation/chat_access_gate.d.ts +2 -2
  350. package/build/navigation/chat_access_gate.d.ts.map +1 -1
  351. package/build/navigation/chat_access_gate.js +6 -5
  352. package/build/navigation/chat_access_gate.js.map +1 -1
  353. package/build/navigation/index.d.ts +37 -39
  354. package/build/navigation/index.d.ts.map +1 -1
  355. package/build/navigation/index.js +21 -23
  356. package/build/navigation/index.js.map +1 -1
  357. package/build/navigation/screenLayout.d.ts +2 -2
  358. package/build/navigation/screenLayout.d.ts.map +1 -1
  359. package/build/navigation/screenLayout.js +3 -9
  360. package/build/navigation/screenLayout.js.map +1 -1
  361. package/build/polyfills/events/EventTarget.d.ts +1 -1
  362. package/build/polyfills/events/EventTarget.d.ts.map +1 -1
  363. package/build/polyfills/events/EventTarget.js.map +1 -1
  364. package/build/screens/age_check/age_check_required_screen.d.ts +1 -2
  365. package/build/screens/age_check/age_check_required_screen.d.ts.map +1 -1
  366. package/build/screens/age_check/age_check_required_screen.js +3 -46
  367. package/build/screens/age_check/age_check_required_screen.js.map +1 -1
  368. package/build/screens/age_check/age_check_underage_screen.d.ts +1 -2
  369. package/build/screens/age_check/age_check_underage_screen.d.ts.map +1 -1
  370. package/build/screens/age_check/age_check_underage_screen.js +2 -25
  371. package/build/screens/age_check/age_check_underage_screen.js.map +1 -1
  372. package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts +1 -2
  373. package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts.map +1 -1
  374. package/build/screens/age_check/components/age_check_select_birthdate_modal.js +6 -25
  375. package/build/screens/age_check/components/age_check_select_birthdate_modal.js.map +1 -1
  376. package/build/screens/attachment_actions/attachment_actions_screen.d.ts +1 -2
  377. package/build/screens/attachment_actions/attachment_actions_screen.d.ts.map +1 -1
  378. package/build/screens/attachment_actions/attachment_actions_screen.js +3 -5
  379. package/build/screens/attachment_actions/attachment_actions_screen.js.map +1 -1
  380. package/build/screens/avatar_picker/avatar_picker_screen.d.ts +1 -2
  381. package/build/screens/avatar_picker/avatar_picker_screen.d.ts.map +1 -1
  382. package/build/screens/avatar_picker/avatar_picker_screen.js +9 -36
  383. package/build/screens/avatar_picker/avatar_picker_screen.js.map +1 -1
  384. package/build/screens/avatar_picker/avatar_preview.d.ts +1 -1
  385. package/build/screens/avatar_picker/avatar_preview.d.ts.map +1 -1
  386. package/build/screens/avatar_picker/avatar_preview.js +5 -9
  387. package/build/screens/avatar_picker/avatar_preview.js.map +1 -1
  388. package/build/screens/avatar_picker/color_picker.d.ts +1 -2
  389. package/build/screens/avatar_picker/color_picker.d.ts.map +1 -1
  390. package/build/screens/avatar_picker/color_picker.js +4 -5
  391. package/build/screens/avatar_picker/color_picker.js.map +1 -1
  392. package/build/screens/avatar_picker/emoji_tab.d.ts +1 -2
  393. package/build/screens/avatar_picker/emoji_tab.d.ts.map +1 -1
  394. package/build/screens/avatar_picker/emoji_tab.js +12 -13
  395. package/build/screens/avatar_picker/emoji_tab.js.map +1 -1
  396. package/build/screens/avatar_picker/icon_grid.d.ts +1 -2
  397. package/build/screens/avatar_picker/icon_grid.d.ts.map +1 -1
  398. package/build/screens/avatar_picker/icon_grid.js +4 -5
  399. package/build/screens/avatar_picker/icon_grid.js.map +1 -1
  400. package/build/screens/avatar_picker/upload_tab.d.ts +1 -2
  401. package/build/screens/avatar_picker/upload_tab.d.ts.map +1 -1
  402. package/build/screens/avatar_picker/upload_tab.js +3 -4
  403. package/build/screens/avatar_picker/upload_tab.js.map +1 -1
  404. package/build/screens/bug_report_screen.d.ts +1 -2
  405. package/build/screens/bug_report_screen.d.ts.map +1 -1
  406. package/build/screens/bug_report_screen.js +11 -117
  407. package/build/screens/bug_report_screen.js.map +1 -1
  408. package/build/screens/conversation/message_read_receipts_screen.d.ts +1 -2
  409. package/build/screens/conversation/message_read_receipts_screen.d.ts.map +1 -1
  410. package/build/screens/conversation/message_read_receipts_screen.js +4 -20
  411. package/build/screens/conversation/message_read_receipts_screen.js.map +1 -1
  412. package/build/screens/conversation_details_screen.d.ts +1 -2
  413. package/build/screens/conversation_details_screen.d.ts.map +1 -1
  414. package/build/screens/conversation_details_screen.js +43 -106
  415. package/build/screens/conversation_details_screen.js.map +1 -1
  416. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts +1 -1
  417. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts.map +1 -1
  418. package/build/screens/conversation_filter_recipients/components/checkbox_row.js +3 -9
  419. package/build/screens/conversation_filter_recipients/components/checkbox_row.js.map +1 -1
  420. package/build/screens/conversation_filter_recipients/components/header_row.d.ts +1 -1
  421. package/build/screens/conversation_filter_recipients/components/header_row.d.ts.map +1 -1
  422. package/build/screens/conversation_filter_recipients/components/header_row.js +2 -12
  423. package/build/screens/conversation_filter_recipients/components/header_row.js.map +1 -1
  424. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts +1 -2
  425. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts.map +1 -1
  426. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js +20 -44
  427. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js.map +1 -1
  428. package/build/screens/conversation_filters/components/conversation_filters.d.ts +1 -2
  429. package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
  430. package/build/screens/conversation_filters/components/conversation_filters.js +13 -14
  431. package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
  432. package/build/screens/conversation_filters/components/rows.d.ts +6 -6
  433. package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
  434. package/build/screens/conversation_filters/components/rows.js +7 -34
  435. package/build/screens/conversation_filters/components/rows.js.map +1 -1
  436. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts +1 -1
  437. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts.map +1 -1
  438. package/build/screens/conversation_filters/context/conversation_filter_context.js +2 -1
  439. package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
  440. package/build/screens/conversation_filters/group_filters.d.ts +1 -2
  441. package/build/screens/conversation_filters/group_filters.d.ts.map +1 -1
  442. package/build/screens/conversation_filters/group_filters.js +2 -2
  443. package/build/screens/conversation_filters/group_filters.js.map +1 -1
  444. package/build/screens/conversation_filters/team_filters.d.ts +1 -2
  445. package/build/screens/conversation_filters/team_filters.d.ts.map +1 -1
  446. package/build/screens/conversation_filters/team_filters.js +2 -2
  447. package/build/screens/conversation_filters/team_filters.js.map +1 -1
  448. package/build/screens/conversation_filters_screen.d.ts +1 -2
  449. package/build/screens/conversation_filters_screen.d.ts.map +1 -1
  450. package/build/screens/conversation_filters_screen.js +4 -16
  451. package/build/screens/conversation_filters_screen.js.map +1 -1
  452. package/build/screens/conversation_new/components/avatar_selection_row.d.ts +2 -3
  453. package/build/screens/conversation_new/components/avatar_selection_row.d.ts.map +1 -1
  454. package/build/screens/conversation_new/components/avatar_selection_row.js +6 -16
  455. package/build/screens/conversation_new/components/avatar_selection_row.js.map +1 -1
  456. package/build/screens/conversation_new/components/filter_by_plan.d.ts +3 -4
  457. package/build/screens/conversation_new/components/filter_by_plan.d.ts.map +1 -1
  458. package/build/screens/conversation_new/components/filter_by_plan.js +22 -46
  459. package/build/screens/conversation_new/components/filter_by_plan.js.map +1 -1
  460. package/build/screens/conversation_new/components/form_list.d.ts +2 -3
  461. package/build/screens/conversation_new/components/form_list.d.ts.map +1 -1
  462. package/build/screens/conversation_new/components/form_list.js +4 -6
  463. package/build/screens/conversation_new/components/form_list.js.map +1 -1
  464. package/build/screens/conversation_new/components/gender_filter_toggle.d.ts +1 -2
  465. package/build/screens/conversation_new/components/gender_filter_toggle.d.ts.map +1 -1
  466. package/build/screens/conversation_new/components/gender_filter_toggle.js +4 -20
  467. package/build/screens/conversation_new/components/gender_filter_toggle.js.map +1 -1
  468. package/build/screens/conversation_new/components/groups_form.d.ts +1 -2
  469. package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
  470. package/build/screens/conversation_new/components/groups_form.js +4 -30
  471. package/build/screens/conversation_new/components/groups_form.js.map +1 -1
  472. package/build/screens/conversation_new/components/services_form.d.ts +1 -2
  473. package/build/screens/conversation_new/components/services_form.d.ts.map +1 -1
  474. package/build/screens/conversation_new/components/services_form.js +27 -61
  475. package/build/screens/conversation_new/components/services_form.js.map +1 -1
  476. package/build/screens/conversation_new/components/source_app_error_card.d.ts +1 -1
  477. package/build/screens/conversation_new/components/source_app_error_card.d.ts.map +1 -1
  478. package/build/screens/conversation_new/components/source_app_error_card.js +2 -3
  479. package/build/screens/conversation_new/components/source_app_error_card.js.map +1 -1
  480. package/build/screens/conversation_new/conversation_new_screen.d.ts +1 -2
  481. package/build/screens/conversation_new/conversation_new_screen.d.ts.map +1 -1
  482. package/build/screens/conversation_new/conversation_new_screen.js +4 -4
  483. package/build/screens/conversation_new/conversation_new_screen.js.map +1 -1
  484. package/build/screens/conversation_notification_level_select_screen.d.ts +1 -2
  485. package/build/screens/conversation_notification_level_select_screen.d.ts.map +1 -1
  486. package/build/screens/conversation_notification_level_select_screen.js +4 -6
  487. package/build/screens/conversation_notification_level_select_screen.js.map +1 -1
  488. package/build/screens/conversation_screen.d.ts +2 -3
  489. package/build/screens/conversation_screen.d.ts.map +1 -1
  490. package/build/screens/conversation_screen.js +26 -65
  491. package/build/screens/conversation_screen.js.map +1 -1
  492. package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts +1 -1
  493. package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts.map +1 -1
  494. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js +2 -1
  495. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js.map +1 -1
  496. package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts +1 -2
  497. package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts.map +1 -1
  498. package/build/screens/conversation_select_recipients/components/recipient_link_row.js +2 -15
  499. package/build/screens/conversation_select_recipients/components/recipient_link_row.js.map +1 -1
  500. package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts +1 -2
  501. package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts.map +1 -1
  502. package/build/screens/conversation_select_recipients/components/restricted_group_row.js +2 -14
  503. package/build/screens/conversation_select_recipients/components/restricted_group_row.js.map +1 -1
  504. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts +1 -1
  505. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts.map +1 -1
  506. package/build/screens/conversation_select_recipients/components/team_recipient_row.js +2 -1
  507. package/build/screens/conversation_select_recipients/components/team_recipient_row.js.map +1 -1
  508. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts +1 -1
  509. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts.map +1 -1
  510. package/build/screens/conversation_select_recipients/components/view_more_link_row.js +2 -5
  511. package/build/screens/conversation_select_recipients/components/view_more_link_row.js.map +1 -1
  512. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts +1 -2
  513. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts.map +1 -1
  514. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js +4 -11
  515. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js.map +1 -1
  516. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts +1 -1
  517. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts.map +1 -1
  518. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js +24 -85
  519. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js.map +1 -1
  520. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts +1 -2
  521. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts.map +1 -1
  522. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js +7 -14
  523. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js.map +1 -1
  524. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts +1 -2
  525. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts.map +1 -1
  526. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js +15 -18
  527. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js.map +1 -1
  528. package/build/screens/conversation_select_recipients/types/screen_props.d.ts +2 -0
  529. package/build/screens/conversation_select_recipients/types/screen_props.d.ts.map +1 -1
  530. package/build/screens/conversation_select_recipients/types/screen_props.js.map +1 -1
  531. package/build/screens/conversation_select_type_screen.d.ts +1 -2
  532. package/build/screens/conversation_select_type_screen.d.ts.map +1 -1
  533. package/build/screens/conversation_select_type_screen.js +7 -17
  534. package/build/screens/conversation_select_type_screen.js.map +1 -1
  535. package/build/screens/conversations/components/chat_group_badge.d.ts +1 -2
  536. package/build/screens/conversations/components/chat_group_badge.d.ts.map +1 -1
  537. package/build/screens/conversations/components/chat_group_badge.js +3 -4
  538. package/build/screens/conversations/components/chat_group_badge.js.map +1 -1
  539. package/build/screens/conversations/components/list_header_action_button.d.ts +1 -2
  540. package/build/screens/conversations/components/list_header_action_button.d.ts.map +1 -1
  541. package/build/screens/conversations/components/list_header_action_button.js +3 -5
  542. package/build/screens/conversations/components/list_header_action_button.js.map +1 -1
  543. package/build/screens/conversations/components/list_header_component.d.ts +1 -2
  544. package/build/screens/conversations/components/list_header_component.d.ts.map +1 -1
  545. package/build/screens/conversations/components/list_header_component.js +22 -45
  546. package/build/screens/conversations/components/list_header_component.js.map +1 -1
  547. package/build/screens/conversations/conversations_screen.d.ts +1 -2
  548. package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
  549. package/build/screens/conversations/conversations_screen.js +2 -6
  550. package/build/screens/conversations/conversations_screen.js.map +1 -1
  551. package/build/screens/design_system_screen.d.ts +1 -2
  552. package/build/screens/design_system_screen.d.ts.map +1 -1
  553. package/build/screens/design_system_screen.js +35 -558
  554. package/build/screens/design_system_screen.js.map +1 -1
  555. package/build/screens/get_help_screen.d.ts +1 -1
  556. package/build/screens/get_help_screen.d.ts.map +1 -1
  557. package/build/screens/get_help_screen.js +4 -25
  558. package/build/screens/get_help_screen.js.map +1 -1
  559. package/build/screens/group_notification_level_select_screen.d.ts +1 -2
  560. package/build/screens/group_notification_level_select_screen.d.ts.map +1 -1
  561. package/build/screens/group_notification_level_select_screen.js +2 -4
  562. package/build/screens/group_notification_level_select_screen.js.map +1 -1
  563. package/build/screens/group_notification_settings_screen.d.ts +1 -2
  564. package/build/screens/group_notification_settings_screen.d.ts.map +1 -1
  565. package/build/screens/group_notification_settings_screen.js +3 -25
  566. package/build/screens/group_notification_settings_screen.js.map +1 -1
  567. package/build/screens/message_actions_screen.d.ts +1 -2
  568. package/build/screens/message_actions_screen.d.ts.map +1 -1
  569. package/build/screens/message_actions_screen.js +12 -28
  570. package/build/screens/message_actions_screen.js.map +1 -1
  571. package/build/screens/message_report/components/message_preview.d.ts +1 -2
  572. package/build/screens/message_report/components/message_preview.d.ts.map +1 -1
  573. package/build/screens/message_report/components/message_preview.js +2 -22
  574. package/build/screens/message_report/components/message_preview.js.map +1 -1
  575. package/build/screens/message_report/components/report_reason_list.d.ts +1 -2
  576. package/build/screens/message_report/components/report_reason_list.d.ts.map +1 -1
  577. package/build/screens/message_report/components/report_reason_list.js +4 -13
  578. package/build/screens/message_report/components/report_reason_list.js.map +1 -1
  579. package/build/screens/message_report_screen.d.ts +1 -2
  580. package/build/screens/message_report_screen.d.ts.map +1 -1
  581. package/build/screens/message_report_screen.js +9 -61
  582. package/build/screens/message_report_screen.js.map +1 -1
  583. package/build/screens/not_found.d.ts +1 -2
  584. package/build/screens/not_found.d.ts.map +1 -1
  585. package/build/screens/not_found.js +2 -5
  586. package/build/screens/not_found.js.map +1 -1
  587. package/build/screens/notification_settings/hooks/groups.d.ts +1 -1
  588. package/build/screens/notification_settings/hooks/groups.d.ts.map +1 -1
  589. package/build/screens/notification_settings_screen.d.ts +1 -2
  590. package/build/screens/notification_settings_screen.d.ts.map +1 -1
  591. package/build/screens/notification_settings_screen.js +28 -66
  592. package/build/screens/notification_settings_screen.js.map +1 -1
  593. package/build/screens/preferred_app_selection_screen.d.ts +1 -2
  594. package/build/screens/preferred_app_selection_screen.d.ts.map +1 -1
  595. package/build/screens/preferred_app_selection_screen.js +3 -21
  596. package/build/screens/preferred_app_selection_screen.js.map +1 -1
  597. package/build/screens/reactions_screen.d.ts +1 -2
  598. package/build/screens/reactions_screen.d.ts.map +1 -1
  599. package/build/screens/reactions_screen.js +7 -19
  600. package/build/screens/reactions_screen.js.map +1 -1
  601. package/build/screens/send_giphy_screen.d.ts +1 -2
  602. package/build/screens/send_giphy_screen.d.ts.map +1 -1
  603. package/build/screens/send_giphy_screen.js +5 -31
  604. package/build/screens/send_giphy_screen.js.map +1 -1
  605. package/build/screens/settings_screen.d.ts +1 -2
  606. package/build/screens/settings_screen.d.ts.map +1 -1
  607. package/build/screens/settings_screen.js +6 -28
  608. package/build/screens/settings_screen.js.map +1 -1
  609. package/build/screens/system_message_people_screen.d.ts +1 -2
  610. package/build/screens/system_message_people_screen.d.ts.map +1 -1
  611. package/build/screens/system_message_people_screen.js +4 -10
  612. package/build/screens/system_message_people_screen.js.map +1 -1
  613. package/build/screens/team_conversation_screen.d.ts +1 -1
  614. package/build/screens/team_conversation_screen.d.ts.map +1 -1
  615. package/build/screens/team_conversation_screen.js +4 -12
  616. package/build/screens/team_conversation_screen.js.map +1 -1
  617. package/build/types/resources/direct_message_candidate.d.ts +1 -0
  618. package/build/types/resources/direct_message_candidate.d.ts.map +1 -1
  619. package/build/types/resources/direct_message_candidate.js.map +1 -1
  620. package/build/types/resources/member.d.ts +1 -0
  621. package/build/types/resources/member.d.ts.map +1 -1
  622. package/build/types/resources/member.js.map +1 -1
  623. package/build/types/resources/member_ability.d.ts +1 -0
  624. package/build/types/resources/member_ability.d.ts.map +1 -1
  625. package/build/types/resources/member_ability.js.map +1 -1
  626. package/build/types/resources/person.d.ts +1 -0
  627. package/build/types/resources/person.d.ts.map +1 -1
  628. package/build/types/resources/person.js.map +1 -1
  629. package/build/utils/index.d.ts +1 -0
  630. package/build/utils/index.d.ts.map +1 -1
  631. package/build/utils/index.js +1 -0
  632. package/build/utils/index.js.map +1 -1
  633. package/build/utils/liquid_glass.d.ts +3 -0
  634. package/build/utils/liquid_glass.d.ts.map +1 -0
  635. package/build/utils/liquid_glass.js +9 -0
  636. package/build/utils/liquid_glass.js.map +1 -0
  637. package/build/utils/sha_256.js.map +1 -1
  638. package/build/utils/system_messages.d.ts +1 -1
  639. package/build/utils/system_messages.d.ts.map +1 -1
  640. package/build/utils/system_messages.js.map +1 -1
  641. package/build/utils/theme.d.ts +2 -2
  642. package/build/utils/theme.d.ts.map +1 -1
  643. package/build/utils/theme.js +1 -1
  644. package/build/utils/theme.js.map +1 -1
  645. package/package.json +12 -12
  646. package/src/__tests__/hooks/resolve_message_available_members_link.test.ts +72 -0
  647. package/src/__tests__/hooks/use_attachment_uploader.test.tsx +1 -0
  648. package/src/__tests__/hooks/use_direct_messages_eligible.test.tsx +77 -0
  649. package/src/__tests__/hooks/use_font_scale.test.ts +7 -3
  650. package/src/__tests__/utils/liquid_glass.ts +40 -0
  651. package/src/__tests__/utils/native_adapters/configuration.ts +1 -1
  652. package/src/__tests__/utils/system_messages.ts +1 -1
  653. package/src/__tests__/utils/uri.ts +8 -50
  654. package/src/__utils__/handlers.ts +5 -6
  655. package/src/components/conversation/attachments/attachment_deleting_overlay.tsx +10 -3
  656. package/src/components/conversation/messages_disabled_banners.tsx +31 -4
  657. package/src/components/page/__tests__/component_error_boundary.test.tsx +1 -1
  658. package/src/components/page/__tests__/error_boundary.test.tsx +6 -2
  659. package/src/components/page/__tests__/page_error_boundary.test.tsx +1 -1
  660. package/src/contexts/chat_context.tsx +8 -0
  661. package/src/hooks/direct_messages/find_direct_message_conversation.ts +16 -0
  662. package/src/hooks/direct_messages/resolve_message_available_members_link.ts +42 -0
  663. package/src/hooks/direct_messages/use_find_or_create_direct_message_conversation.ts +2 -11
  664. package/src/hooks/direct_messages/use_message_available_members.ts +65 -0
  665. package/src/hooks/direct_messages/use_message_available_members_action.ts +34 -0
  666. package/src/hooks/index.ts +1 -1
  667. package/src/hooks/use_conversation.ts +1 -0
  668. package/src/hooks/use_current_person.ts +1 -0
  669. package/src/hooks/use_direct_messages_eligible.ts +11 -0
  670. package/src/hooks/use_features.ts +0 -1
  671. package/src/index.tsx +2 -1
  672. package/src/navigation/index.tsx +2 -2
  673. package/src/polyfills/events/EventTarget.ts +1 -1
  674. package/src/screens/conversation_filters/components/conversation_filters.tsx +3 -3
  675. package/src/screens/conversation_screen.tsx +9 -1
  676. package/src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx +18 -4
  677. package/src/screens/conversation_select_recipients/types/screen_props.tsx +2 -0
  678. package/src/screens/conversation_select_type_screen.tsx +4 -7
  679. package/src/screens/conversations/components/list_header_component.tsx +3 -3
  680. package/src/screens/settings_screen.tsx +3 -3
  681. package/src/types/resources/direct_message_candidate.ts +5 -0
  682. package/src/types/resources/member.ts +1 -0
  683. package/src/types/resources/member_ability.ts +1 -0
  684. package/src/types/resources/person.ts +1 -0
  685. package/src/utils/index.ts +1 -0
  686. package/src/utils/liquid_glass.ts +12 -0
  687. package/src/utils/sha_256.ts +24 -24
  688. package/src/utils/system_messages.ts +1 -1
  689. package/src/utils/theme.ts +3 -8
  690. package/build/hooks/use_direct_messages_enabled.d.ts +0 -2
  691. package/build/hooks/use_direct_messages_enabled.d.ts.map +0 -1
  692. package/build/hooks/use_direct_messages_enabled.js +0 -16
  693. package/build/hooks/use_direct_messages_enabled.js.map +0 -1
  694. package/src/hooks/use_direct_messages_enabled.ts +0 -23
@@ -1,11 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { HeaderBackButton } from '@react-navigation/elements';
2
3
  import { createNativeStackNavigator, } from '@react-navigation/native-stack';
3
4
  import { CardStyleInterpolators } from '@react-navigation/stack';
4
- import React from 'react';
5
5
  import { Platform } from 'react-native';
6
6
  import { Icon } from '../components';
7
7
  import { HeaderDoneButton, HeaderTextButton, } from '../components/display/platform_modal_header_buttons';
8
- import { useDirectMessagesEnabled, useQualifiedByAge } from '../hooks';
8
+ import { useDirectMessagesEligible, useQualifiedByAge } from '../hooks';
9
9
  import { AttachmentActionsScreen, AttachmentActionsScreenOptions, } from '../screens/attachment_actions/attachment_actions_screen';
10
10
  import { AvatarPickerScreen, AvatarPickerScreenOptions, AvatarPickerCreateScreenOptions, } from '../screens/avatar_picker/avatar_picker_screen';
11
11
  import { BugReportScreen, BugReportScreenOptions } from '../screens/bug_report_screen';
@@ -51,7 +51,7 @@ export const NewConversationStack = createNativeStackNavigator({
51
51
  screen: ConversationNewEntryScreen,
52
52
  options: ({ navigation }) => ({
53
53
  title: 'New conversation',
54
- headerRight: (props) => (<HeaderTextButton {...props} onPress={navigation.goBack} title="Cancel"/>),
54
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Cancel" })),
55
55
  headerBackVisible: false,
56
56
  }),
57
57
  },
@@ -59,22 +59,22 @@ export const NewConversationStack = createNativeStackNavigator({
59
59
  screen: ConversationSelectGroupRecipientsScreen,
60
60
  options: ({ navigation, route }) => ({
61
61
  title: 'New conversation',
62
- headerRight: (props) => (<HeaderTextButton {...props} onPress={() => navigation.popTo('Conversations', route.params)} title="Cancel"/>),
62
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: () => navigation.popTo('Conversations', route.params), title: "Cancel" })),
63
63
  }),
64
64
  },
65
65
  ConversationSelectTeamsILeadRecipients: {
66
66
  screen: ConversationSelectTeamsILeadRecipientsScreen,
67
67
  options: ({ navigation, route }) => ({
68
68
  title: 'New conversation',
69
- headerRight: (props) => (<HeaderTextButton {...props} onPress={() => navigation.popTo('Conversations', route.params)} title="Cancel"/>),
69
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: () => navigation.popTo('Conversations', route.params), title: "Cancel" })),
70
70
  }),
71
71
  },
72
72
  ConversationSelectDirectMessageRecipients: {
73
73
  screen: ConversationSelectDirectMessageRecipientsScreen,
74
- if: useDirectMessagesEnabled,
74
+ if: useDirectMessagesEligible,
75
75
  options: ({ navigation, route }) => ({
76
76
  title: 'New conversation',
77
- headerRight: (props) => (<HeaderTextButton {...props} onPress={() => navigation.popTo('Conversations', route.params)} title="Cancel"/>),
77
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: () => navigation.popTo('Conversations', route.params), title: "Cancel" })),
78
78
  }),
79
79
  },
80
80
  ConversationFilterRecipients: {
@@ -86,10 +86,10 @@ export const NewConversationStack = createNativeStackNavigator({
86
86
  options: ({ navigation, route }) => ({
87
87
  title: 'New conversation',
88
88
  headerLeft: () => null,
89
- headerRight: (props) => (<HeaderTextButton {...props} onPress={() => {
89
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: () => {
90
90
  const { chat_group_graph_id, group_source_app_name } = route.params;
91
91
  navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name });
92
- }} title="Cancel"/>),
92
+ }, title: "Cancel" })),
93
93
  }),
94
94
  },
95
95
  AvatarPicker: {
@@ -109,7 +109,7 @@ export const ChatStack = createNativeStackNavigator({
109
109
  options: ({ route, navigation }) => ({
110
110
  headerTitle: route.params?.title ?? 'Chat',
111
111
  headerBackVisible: false,
112
- headerRight: (props) => (<HeaderBackButton backImage={() => <Icon name="general.x" size={18} color={props.tintColor}/>} onPress={navigation.goBack} {...props}/>),
112
+ headerRight: (props) => (_jsx(HeaderBackButton, { backImage: () => _jsx(Icon, { name: "general.x", size: 18, color: props.tintColor }), onPress: navigation.goBack, ...props })),
113
113
  }),
114
114
  },
115
115
  ConversationFilters: {
@@ -121,12 +121,10 @@ export const ChatStack = createNativeStackNavigator({
121
121
  options: ({ route, navigation }) => ({
122
122
  headerTitle: (props) => {
123
123
  const { conversation_id, title, badge, deleted, muted } = route.params;
124
- return (<ConversationScreenTitle conversation_id={conversation_id} badge={badge} deleted={deleted} muted={muted} {...props}>
125
- {title ?? 'Conversation'}
126
- </ConversationScreenTitle>);
124
+ return (_jsx(ConversationScreenTitle, { conversation_id: conversation_id, badge: badge, deleted: deleted, muted: muted, ...props, children: title ?? 'Conversation' }));
127
125
  },
128
- headerRight: (props) => (<HeaderBackButton backImage={() => <Icon name="general.x" size={18} color={props.tintColor}/>} onPress={() => navigation.getParent()?.goBack()}/>),
129
- headerLeft: props => (<HeaderBackButton style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES} displayMode="minimal" onPress={() => {
126
+ headerRight: (props) => (_jsx(HeaderBackButton, { backImage: () => _jsx(Icon, { name: "general.x", size: 18, color: props.tintColor }), onPress: () => navigation.getParent()?.goBack() })),
127
+ headerLeft: props => (_jsx(HeaderBackButton, { style: HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES, displayMode: "minimal", onPress: () => {
130
128
  const params = route.params;
131
129
  if (params?.chat_group_graph_id) {
132
130
  // Ensure that conversations with a graph id pass them back to the conversation list
@@ -136,14 +134,14 @@ export const ChatStack = createNativeStackNavigator({
136
134
  else {
137
135
  navigation.goBack();
138
136
  }
139
- }} {...props}/>),
137
+ }, ...props })),
140
138
  }),
141
139
  },
142
140
  ConversationReply: {
143
141
  screen: ConversationScreen,
144
142
  options: ({ route, navigation }) => ({
145
143
  title: route.params?.title ?? 'Reply',
146
- headerLeft: props => (<HeaderBackButton style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES} displayMode="minimal" onPress={() => navigation.goBack()} {...props}/>),
144
+ headerLeft: props => (_jsx(HeaderBackButton, { style: HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES, displayMode: "minimal", onPress: () => navigation.goBack(), ...props })),
147
145
  }),
148
146
  },
149
147
  TeamConversation: {
@@ -160,7 +158,7 @@ export const ChatStack = createNativeStackNavigator({
160
158
  options: ({ navigation }) => ({
161
159
  presentation: 'modal',
162
160
  title: 'Conversation details',
163
- headerRight: (props) => (<HeaderTextButton {...props} onPress={navigation.goBack} title="Done"/>),
161
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Done" })),
164
162
  }),
165
163
  },
166
164
  AvatarPicker: {
@@ -172,7 +170,7 @@ export const ChatStack = createNativeStackNavigator({
172
170
  options: ({ navigation }) => ({
173
171
  title: 'Chat settings',
174
172
  headerBackVisible: false,
175
- headerRight: (props) => (<HeaderTextButton {...props} onPress={navigation.goBack} title="Done"/>),
173
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Done" })),
176
174
  }),
177
175
  },
178
176
  NotificationSettings: {
@@ -180,7 +178,7 @@ export const ChatStack = createNativeStackNavigator({
180
178
  options: ({ navigation }) => ({
181
179
  title: 'Chat',
182
180
  headerBackVisible: false,
183
- headerRight: (props) => (<HeaderTextButton {...props} onPress={navigation.goBack} title="Done"/>),
181
+ headerRight: (props) => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Done" })),
184
182
  }),
185
183
  },
186
184
  PreferredAppSelection: {
@@ -193,7 +191,7 @@ export const ChatStack = createNativeStackNavigator({
193
191
  screen: GroupNotificationSettingsScreen,
194
192
  options: ({ route, navigation }) => ({
195
193
  title: route.params?.title || 'Group Settings',
196
- headerRight: (props) => (<HeaderDoneButton {...props} navigation={navigation}/>),
194
+ headerRight: (props) => (_jsx(HeaderDoneButton, { ...props, navigation: navigation })),
197
195
  }),
198
196
  },
199
197
  GroupNotificationLevelSelect: {
@@ -218,7 +216,7 @@ export const ChatStack = createNativeStackNavigator({
218
216
  options: ({ navigation }) => ({
219
217
  title: 'New conversation',
220
218
  headerLeft: () => null,
221
- headerRight: props => (<HeaderTextButton {...props} onPress={() => navigation.getParent()?.goBack()} title="Cancel"/>),
219
+ headerRight: props => (_jsx(HeaderTextButton, { ...props, onPress: () => navigation.getParent()?.goBack(), title: "Cancel" })),
222
220
  }),
223
221
  },
224
222
  SendGiphy: {
@@ -264,7 +262,7 @@ export const ChatStack = createNativeStackNavigator({
264
262
  headerTitle: 'Get help',
265
263
  headerBackVisible: false,
266
264
  presentation: 'modal',
267
- headerRight: props => (<HeaderTextButton {...props} onPress={navigation.goBack} title="Close"/>),
265
+ headerRight: props => (_jsx(HeaderTextButton, { ...props, onPress: navigation.goBack, title: "Close" })),
268
266
  }),
269
267
  },
270
268
  NotFound: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import { HeaderBackButton } from '@react-navigation/elements'\nimport { StaticParamList } from '@react-navigation/native'\nimport {\n createNativeStackNavigator,\n NativeStackHeaderRightProps,\n} from '@react-navigation/native-stack'\nimport { CardStyleInterpolators } from '@react-navigation/stack'\nimport React from 'react'\nimport { Platform } from 'react-native'\nimport { Icon } from '../components'\nimport {\n HeaderDoneButton,\n HeaderTextButton,\n} from '../components/display/platform_modal_header_buttons'\nimport { useDirectMessagesEnabled, useQualifiedByAge } from '../hooks'\nimport {\n AttachmentActionsScreen,\n AttachmentActionsScreenOptions,\n} from '../screens/attachment_actions/attachment_actions_screen'\nimport {\n AvatarPickerScreen,\n AvatarPickerScreenOptions,\n AvatarPickerCreateScreenOptions,\n} from '../screens/avatar_picker/avatar_picker_screen'\nimport { BugReportScreen, BugReportScreenOptions } from '../screens/bug_report_screen'\nimport {\n MessageReadReceiptsScreen,\n MessageReadReceiptsScreenOptions,\n} from '../screens/conversation/message_read_receipts_screen'\nimport { ConversationDetailsScreen } from '../screens/conversation_details_screen'\nimport {\n ConversationFilterReceipientsScreenOptions,\n ConversationFilterRecipientsScreen,\n} from '../screens/conversation_filter_recipients/conversation_filter_recipients_screen'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport {\n ConversationFiltersScreen,\n ConversationFiltersScreenOptions,\n} from '../screens/conversation_filters_screen'\nimport { ConversationNewScreen } from '../screens/conversation_new/conversation_new_screen'\nimport {\n ConversationNotificationLevelSelectScreen,\n ConversationNotificationLevelSelectScreenOptions,\n} from '../screens/conversation_notification_level_select_screen'\nimport {\n ConversationRouteProps,\n ConversationScreen,\n ConversationScreenTitle,\n} from '../screens/conversation_screen'\nimport { ConversationNewEntryScreen } from '../screens/conversation_select_recipients/conversation_new_entry_screen'\nimport { ConversationSelectDirectMessageRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen'\nimport { ConversationSelectGroupRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_group_recipients_screen'\nimport { ConversationSelectTeamsILeadRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen'\nimport { ConversationSelectRecipientsParams } from '../screens/conversation_select_recipients/types/screen_props'\nimport {\n ConversationSelectTypeScreen,\n ConversationSelectTypeScreenOptions,\n} from '../screens/conversation_select_type_screen'\nimport { ConversationsScreen } from '../screens/conversations/conversations_screen'\nimport { GetHelpScreen } from '../screens/get_help_screen'\nimport {\n GroupNotificationLevelSelectScreen,\n GroupNotificationLevelSelectScreenOptions,\n} from '../screens/group_notification_level_select_screen'\nimport { GroupNotificationSettingsScreen } from '../screens/group_notification_settings_screen'\nimport {\n MessageActionsScreen,\n MessageActionsScreenOptions,\n} from '../screens/message_actions_screen'\nimport { MessageReportScreen, MessageReportScreenOptions } from '../screens/message_report_screen'\nimport { NotFound } from '../screens/not_found'\nimport { NotificationSettingsScreen } from '../screens/notification_settings_screen'\nimport { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_screen'\nimport { ReactionsScreen, ReactionsScreenOptions } from '../screens/reactions_screen'\nimport { SendGiphyScreen, SendGiphyScreenOptions } from '../screens/send_giphy_screen'\nimport { SettingsScreen } from '../screens/settings_screen'\nimport {\n SystemMessagePeopleScreen,\n SystemMessagePeopleScreenOptions,\n} from '../screens/system_message_people_screen'\nimport { TeamConversationScreen } from '../screens/team_conversation_screen'\nimport { ScreenLayoutWithChatAccessGate } from './screenLayout'\n\nconst HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES = {\n marginLeft: Platform.select({ ios: -8, default: -3 }),\n marginRight: Platform.select({ ios: 0, default: 30 }),\n}\n\nexport const NewConversationStack = createNativeStackNavigator({\n initialRouteName: 'ConversationNewEntry',\n screenOptions: {\n headerBackButtonDisplayMode: 'minimal',\n },\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n ConversationNewEntry: {\n screen: ConversationNewEntryScreen,\n options: ({ navigation }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Cancel\" />\n ),\n headerBackVisible: false,\n }),\n },\n ConversationSelectGroupRecipients: {\n screen: ConversationSelectGroupRecipientsScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationSelectTeamsILeadRecipients: {\n screen: ConversationSelectTeamsILeadRecipientsScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationSelectDirectMessageRecipients: {\n screen: ConversationSelectDirectMessageRecipientsScreen,\n if: useDirectMessagesEnabled,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationFilterRecipients: {\n screen: ConversationFilterRecipientsScreen,\n options: ConversationFilterReceipientsScreenOptions,\n },\n ConversationNew: {\n screen: ConversationNewScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerLeft: () => null,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => {\n const { chat_group_graph_id, group_source_app_name } =\n route.params as ConversationSelectRecipientsParams\n navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name })\n }}\n title=\"Cancel\"\n />\n ),\n }),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerCreateScreenOptions,\n },\n },\n})\n\nexport const ChatStack = createNativeStackNavigator({\n screenOptions: {\n headerBackButtonDisplayMode: 'minimal',\n },\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n Conversations: {\n screen: ConversationsScreen,\n options: ({ route, navigation }) => ({\n headerTitle: (route.params as { title?: string })?.title ?? 'Chat',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderBackButton\n backImage={() => <Icon name=\"general.x\" size={18} color={props.tintColor} />}\n onPress={navigation.goBack}\n {...props}\n />\n ),\n }),\n },\n ConversationFilters: {\n screen: ConversationFiltersScreen,\n options: ConversationFiltersScreenOptions,\n },\n Conversation: {\n screen: ConversationScreen,\n options: ({ route, navigation }) => ({\n headerTitle: (props: NativeStackHeaderRightProps) => {\n const { conversation_id, title, badge, deleted, muted } =\n route.params as ConversationRouteProps\n\n return (\n <ConversationScreenTitle\n conversation_id={conversation_id}\n badge={badge}\n deleted={deleted}\n muted={muted}\n {...props}\n >\n {title ?? 'Conversation'}\n </ConversationScreenTitle>\n )\n },\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderBackButton\n backImage={() => <Icon name=\"general.x\" size={18} color={props.tintColor} />}\n onPress={() => navigation.getParent()?.goBack()}\n />\n ),\n headerLeft: props => (\n <HeaderBackButton\n style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES}\n displayMode=\"minimal\"\n onPress={() => {\n const params = route.params as ConversationRouteProps\n if ((params as ConversationFiltersParams)?.chat_group_graph_id) {\n // Ensure that conversations with a graph id pass them back to the conversation list\n const { chat_group_graph_id } = params\n navigation.popTo('Conversations', { chat_group_graph_id })\n } else {\n navigation.goBack()\n }\n }}\n {...props}\n />\n ),\n }),\n },\n ConversationReply: {\n screen: ConversationScreen,\n options: ({ route, navigation }) => ({\n title: (route.params as ConversationRouteProps)?.title ?? 'Reply',\n headerLeft: props => (\n <HeaderBackButton\n style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES}\n displayMode=\"minimal\"\n onPress={() => navigation.goBack()}\n {...props}\n />\n ),\n }),\n },\n TeamConversation: {\n screen: TeamConversationScreen,\n if: useQualifiedByAge,\n options: {\n title: 'Finding conversation...',\n animation: 'none',\n cardStyleInterpolator: CardStyleInterpolators.forNoAnimation,\n },\n },\n ConversationDetails: {\n screen: ConversationDetailsScreen,\n options: ({ navigation }) => ({\n presentation: 'modal',\n title: 'Conversation details',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerScreenOptions,\n },\n ChatSettings: {\n screen: SettingsScreen,\n options: ({ navigation }) => ({\n title: 'Chat settings',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n NotificationSettings: {\n screen: NotificationSettingsScreen,\n options: ({ navigation }) => ({\n title: 'Chat',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n PreferredAppSelection: {\n screen: PreferredAppSelectionScreen,\n options: {\n title: 'Preferred app',\n },\n },\n GroupNotificationSettings: {\n screen: GroupNotificationSettingsScreen,\n options: ({ route, navigation }) => ({\n title: (route.params as { title?: string })?.title || 'Group Settings',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderDoneButton {...props} navigation={navigation} />\n ),\n }),\n },\n GroupNotificationLevelSelect: {\n screen: GroupNotificationLevelSelectScreen,\n options: GroupNotificationLevelSelectScreenOptions,\n },\n ConversationNotificationLevelSelect: {\n screen: ConversationNotificationLevelSelectScreen,\n options: ConversationNotificationLevelSelectScreenOptions,\n },\n New: {\n screen: NewConversationStack,\n if: useQualifiedByAge,\n options: {\n headerShown: false,\n presentation: 'modal',\n },\n },\n GroupConversationNew: {\n screen: ConversationNewScreen,\n if: useQualifiedByAge,\n options: ({ navigation }) => ({\n title: 'New conversation',\n headerLeft: () => null,\n headerRight: props => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.getParent()?.goBack()}\n title=\"Cancel\"\n />\n ),\n }),\n },\n SendGiphy: {\n screen: SendGiphyScreen,\n options: SendGiphyScreenOptions,\n },\n MessageActions: {\n screen: MessageActionsScreen,\n // Something about sheetAllowedDetents declared inline breaks TS\n options: MessageActionsScreenOptions,\n },\n MessageReport: {\n screen: MessageReportScreen,\n options: MessageReportScreenOptions,\n },\n AttachmentActions: {\n screen: AttachmentActionsScreen,\n options: AttachmentActionsScreenOptions,\n },\n ConversationSelectType: {\n screen: ConversationSelectTypeScreen,\n options: ConversationSelectTypeScreenOptions,\n },\n Reactions: {\n screen: ReactionsScreen,\n options: ReactionsScreenOptions,\n },\n SystemMessagePeople: {\n screen: SystemMessagePeopleScreen,\n options: SystemMessagePeopleScreenOptions,\n },\n MessageReadReceipts: {\n screen: MessageReadReceiptsScreen,\n options: MessageReadReceiptsScreenOptions,\n },\n BugReport: {\n screen: BugReportScreen,\n options: BugReportScreenOptions,\n },\n GetHelp: {\n screen: GetHelpScreen,\n options: ({ navigation }) => ({\n headerTitle: 'Get help',\n headerBackVisible: false,\n presentation: 'modal',\n headerRight: props => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Close\" />\n ),\n }),\n },\n NotFound: {\n screen: NotFound,\n options: {\n title: '404',\n },\n linking: {\n path: '*',\n },\n },\n },\n})\n\ntype ChatStackParamList = StaticParamList<typeof ChatStack>\n\ndeclare global {\n namespace ReactNavigation {\n interface RootParamList extends ChatStackParamList {}\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAE7D,OAAO,EACL,0BAA0B,GAE3B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,qDAAqD,CAAA;AAC5D,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AACvE,OAAO,EACL,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,yDAAyD,CAAA;AAChE,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,+BAA+B,GAChC,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACtF,OAAO,EACL,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAClF,OAAO,EACL,0CAA0C,EAC1C,kCAAkC,GACnC,MAAM,iFAAiF,CAAA;AAExF,OAAO,EACL,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,wCAAwC,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAA;AAC3F,OAAO,EACL,yCAAyC,EACzC,gDAAgD,GACjD,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEL,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,yEAAyE,CAAA;AACpH,OAAO,EAAE,+CAA+C,EAAE,MAAM,gGAAgG,CAAA;AAChK,OAAO,EAAE,uCAAuC,EAAE,MAAM,uFAAuF,CAAA;AAC/I,OAAO,EAAE,4CAA4C,EAAE,MAAM,8FAA8F,CAAA;AAE3J,OAAO,EACL,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAA;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EACL,kCAAkC,EAClC,yCAAyC,GAC1C,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAA;AAC/F,OAAO,EACL,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAA;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACrF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EACL,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,yCAAyC,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAA;AAC5E,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAA;AAE/D,MAAM,sCAAsC,GAAG;IAC7C,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;IACrD,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;CACtD,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;IAC7D,gBAAgB,EAAE,sBAAsB;IACxC,aAAa,EAAE;QACb,2BAA2B,EAAE,SAAS;KACvC;IACD,YAAY,EAAE,8BAA8B;IAC5C,OAAO,EAAE;QACP,oBAAoB,EAAE;YACpB,MAAM,EAAE,0BAA0B;YAClC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OAAK,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAC,QAAQ,GAAG,CAC3E;gBACD,iBAAiB,EAAE,KAAK;aACzB,CAAC;SACH;QACD,iCAAiC,EAAE;YACjC,MAAM,EAAE,uCAAuC;YAC/C,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OACX,KAAK,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,EAC9D,KAAK,EAAC,QAAQ,GACd,CACH;aACF,CAAC;SACH;QACD,sCAAsC,EAAE;YACtC,MAAM,EAAE,4CAA4C;YACpD,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OACX,KAAK,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,EAC9D,KAAK,EAAC,QAAQ,GACd,CACH;aACF,CAAC;SACH;QACD,yCAAyC,EAAE;YACzC,MAAM,EAAE,+CAA+C;YACvD,EAAE,EAAE,yBAAyB;YAC7B,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OACX,KAAK,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,EAC9D,KAAK,EAAC,QAAQ,GACd,CACH;aACF,CAAC;SACH;QACD,4BAA4B,EAAE;YAC5B,MAAM,EAAE,kCAAkC;YAC1C,OAAO,EAAE,0CAA0C;SACpD;QACD,eAAe,EAAE;YACf,MAAM,EAAE,qBAAqB;YAC7B,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAE,kBAAkB;gBACzB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;gBACtB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OACX,KAAK,EACT,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,GAClD,KAAK,CAAC,MAA4C,CAAA;wBACpD,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,CAAC,CAAA;oBACnF,CAAC,EACD,KAAK,EAAC,QAAQ,GACd,CACH;aACF,CAAC;SACH;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,+BAA+B;SACzC;KACF;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,0BAA0B,CAAC;IAClD,aAAa,EAAE;QACb,2BAA2B,EAAE,SAAS;KACvC;IACD,YAAY,EAAE,8BAA8B;IAC5C,OAAO,EAAE;QACP,aAAa,EAAE;YACb,MAAM,EAAE,mBAAmB;YAC3B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,WAAW,EAAG,KAAK,CAAC,MAA6B,EAAE,KAAK,IAAI,MAAM;gBAClE,iBAAiB,EAAE,KAAK;gBACxB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,IACf,SAAS,EAAE,GAAG,EAAE,CAAC,KAAC,IAAI,IAAC,IAAI,EAAC,WAAW,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,GAAI,EAC5E,OAAO,EAAE,UAAU,CAAC,MAAM,KACtB,KAAK,GACT,CACH;aACF,CAAC;SACH;QACD,mBAAmB,EAAE;YACnB,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,gCAAgC;SAC1C;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE;oBAClD,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GACrD,KAAK,CAAC,MAAgC,CAAA;oBAExC,OAAO,CACL,KAAC,uBAAuB,IACtB,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,KACR,KAAK,YAER,KAAK,IAAI,cAAc,GACA,CAC3B,CAAA;gBACH,CAAC;gBACD,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,IACf,SAAS,EAAE,GAAG,EAAE,CAAC,KAAC,IAAI,IAAC,IAAI,EAAC,WAAW,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,GAAI,EAC5E,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,GAC/C,CACH;gBACD,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CACnB,KAAC,gBAAgB,IACf,KAAK,EAAE,sCAAsC,EAC7C,WAAW,EAAC,SAAS,EACrB,OAAO,EAAE,GAAG,EAAE;wBACZ,MAAM,MAAM,GAAG,KAAK,CAAC,MAAgC,CAAA;wBACrD,IAAK,MAAoC,EAAE,mBAAmB,EAAE,CAAC;4BAC/D,oFAAoF;4BACpF,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,CAAA;4BACtC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAA;wBAC5D,CAAC;6BAAM,CAAC;4BACN,UAAU,CAAC,MAAM,EAAE,CAAA;wBACrB,CAAC;oBACH,CAAC,KACG,KAAK,GACT,CACH;aACF,CAAC;SACH;QACD,iBAAiB,EAAE;YACjB,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAG,KAAK,CAAC,MAAiC,EAAE,KAAK,IAAI,OAAO;gBACjE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CACnB,KAAC,gBAAgB,IACf,KAAK,EAAE,sCAAsC,EAC7C,WAAW,EAAC,SAAS,EACrB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,KAC9B,KAAK,GACT,CACH;aACF,CAAC;SACH;QACD,gBAAgB,EAAE;YAChB,MAAM,EAAE,sBAAsB;YAC9B,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE;gBACP,KAAK,EAAE,yBAAyB;gBAChC,SAAS,EAAE,MAAM;gBACjB,qBAAqB,EAAE,sBAAsB,CAAC,cAAc;aAC7D;SACF;QACD,mBAAmB,EAAE;YACnB,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,YAAY,EAAE,OAAO;gBACrB,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OAAK,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAC,MAAM,GAAG,CACzE;aACF,CAAC;SACH;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,kBAAkB;YAC1B,OAAO,EAAE,yBAAyB;SACnC;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,KAAK,EAAE,eAAe;gBACtB,iBAAiB,EAAE,KAAK;gBACxB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OAAK,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAC,MAAM,GAAG,CACzE;aACF,CAAC;SACH;QACD,oBAAoB,EAAE;YACpB,MAAM,EAAE,0BAA0B;YAClC,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,KAAK,EAAE,MAAM;gBACb,iBAAiB,EAAE,KAAK;gBACxB,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OAAK,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAC,MAAM,GAAG,CACzE;aACF,CAAC;SACH;QACD,qBAAqB,EAAE;YACrB,MAAM,EAAE,2BAA2B;YACnC,OAAO,EAAE;gBACP,KAAK,EAAE,eAAe;aACvB;SACF;QACD,yBAAyB,EAAE;YACzB,MAAM,EAAE,+BAA+B;YACvC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBACnC,KAAK,EAAG,KAAK,CAAC,MAA6B,EAAE,KAAK,IAAI,gBAAgB;gBACtE,WAAW,EAAE,CAAC,KAAkC,EAAE,EAAE,CAAC,CACnD,KAAC,gBAAgB,OAAK,KAAK,EAAE,UAAU,EAAE,UAAU,GAAI,CACxD;aACF,CAAC;SACH;QACD,4BAA4B,EAAE;YAC5B,MAAM,EAAE,kCAAkC;YAC1C,OAAO,EAAE,yCAAyC;SACnD;QACD,mCAAmC,EAAE;YACnC,MAAM,EAAE,yCAAyC;YACjD,OAAO,EAAE,gDAAgD;SAC1D;QACD,GAAG,EAAE;YACH,MAAM,EAAE,oBAAoB;YAC5B,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE;gBACP,WAAW,EAAE,KAAK;gBAClB,YAAY,EAAE,OAAO;aACtB;SACF;QACD,oBAAoB,EAAE;YACpB,MAAM,EAAE,qBAAqB;YAC7B,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,KAAK,EAAE,kBAAkB;gBACzB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;gBACtB,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,CACpB,KAAC,gBAAgB,OACX,KAAK,EACT,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,EAC/C,KAAK,EAAC,QAAQ,GACd,CACH;aACF,CAAC;SACH;QACD,SAAS,EAAE;YACT,MAAM,EAAE,eAAe;YACvB,OAAO,EAAE,sBAAsB;SAChC;QACD,cAAc,EAAE;YACd,MAAM,EAAE,oBAAoB;YAC5B,gEAAgE;YAChE,OAAO,EAAE,2BAA2B;SACrC;QACD,aAAa,EAAE;YACb,MAAM,EAAE,mBAAmB;YAC3B,OAAO,EAAE,0BAA0B;SACpC;QACD,iBAAiB,EAAE;YACjB,MAAM,EAAE,uBAAuB;YAC/B,OAAO,EAAE,8BAA8B;SACxC;QACD,sBAAsB,EAAE;YACtB,MAAM,EAAE,4BAA4B;YACpC,OAAO,EAAE,mCAAmC;SAC7C;QACD,SAAS,EAAE;YACT,MAAM,EAAE,eAAe;YACvB,OAAO,EAAE,sBAAsB;SAChC;QACD,mBAAmB,EAAE;YACnB,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,gCAAgC;SAC1C;QACD,mBAAmB,EAAE;YACnB,MAAM,EAAE,yBAAyB;YACjC,OAAO,EAAE,gCAAgC;SAC1C;QACD,SAAS,EAAE;YACT,MAAM,EAAE,eAAe;YACvB,OAAO,EAAE,sBAAsB;SAChC;QACD,OAAO,EAAE;YACP,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5B,WAAW,EAAE,UAAU;gBACvB,iBAAiB,EAAE,KAAK;gBACxB,YAAY,EAAE,OAAO;gBACrB,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,CACpB,KAAC,gBAAgB,OAAK,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAC,OAAO,GAAG,CAC1E;aACF,CAAC;SACH;QACD,QAAQ,EAAE;YACR,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE;gBACP,KAAK,EAAE,KAAK;aACb;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,GAAG;aACV;SACF;KACF;CACF,CAAC,CAAA","sourcesContent":["import { HeaderBackButton } from '@react-navigation/elements'\nimport { StaticParamList } from '@react-navigation/native'\nimport {\n createNativeStackNavigator,\n NativeStackHeaderRightProps,\n} from '@react-navigation/native-stack'\nimport { CardStyleInterpolators } from '@react-navigation/stack'\nimport React from 'react'\nimport { Platform } from 'react-native'\nimport { Icon } from '../components'\nimport {\n HeaderDoneButton,\n HeaderTextButton,\n} from '../components/display/platform_modal_header_buttons'\nimport { useDirectMessagesEligible, useQualifiedByAge } from '../hooks'\nimport {\n AttachmentActionsScreen,\n AttachmentActionsScreenOptions,\n} from '../screens/attachment_actions/attachment_actions_screen'\nimport {\n AvatarPickerScreen,\n AvatarPickerScreenOptions,\n AvatarPickerCreateScreenOptions,\n} from '../screens/avatar_picker/avatar_picker_screen'\nimport { BugReportScreen, BugReportScreenOptions } from '../screens/bug_report_screen'\nimport {\n MessageReadReceiptsScreen,\n MessageReadReceiptsScreenOptions,\n} from '../screens/conversation/message_read_receipts_screen'\nimport { ConversationDetailsScreen } from '../screens/conversation_details_screen'\nimport {\n ConversationFilterReceipientsScreenOptions,\n ConversationFilterRecipientsScreen,\n} from '../screens/conversation_filter_recipients/conversation_filter_recipients_screen'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport {\n ConversationFiltersScreen,\n ConversationFiltersScreenOptions,\n} from '../screens/conversation_filters_screen'\nimport { ConversationNewScreen } from '../screens/conversation_new/conversation_new_screen'\nimport {\n ConversationNotificationLevelSelectScreen,\n ConversationNotificationLevelSelectScreenOptions,\n} from '../screens/conversation_notification_level_select_screen'\nimport {\n ConversationRouteProps,\n ConversationScreen,\n ConversationScreenTitle,\n} from '../screens/conversation_screen'\nimport { ConversationNewEntryScreen } from '../screens/conversation_select_recipients/conversation_new_entry_screen'\nimport { ConversationSelectDirectMessageRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen'\nimport { ConversationSelectGroupRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_group_recipients_screen'\nimport { ConversationSelectTeamsILeadRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen'\nimport { ConversationSelectRecipientsParams } from '../screens/conversation_select_recipients/types/screen_props'\nimport {\n ConversationSelectTypeScreen,\n ConversationSelectTypeScreenOptions,\n} from '../screens/conversation_select_type_screen'\nimport { ConversationsScreen } from '../screens/conversations/conversations_screen'\nimport { GetHelpScreen } from '../screens/get_help_screen'\nimport {\n GroupNotificationLevelSelectScreen,\n GroupNotificationLevelSelectScreenOptions,\n} from '../screens/group_notification_level_select_screen'\nimport { GroupNotificationSettingsScreen } from '../screens/group_notification_settings_screen'\nimport {\n MessageActionsScreen,\n MessageActionsScreenOptions,\n} from '../screens/message_actions_screen'\nimport { MessageReportScreen, MessageReportScreenOptions } from '../screens/message_report_screen'\nimport { NotFound } from '../screens/not_found'\nimport { NotificationSettingsScreen } from '../screens/notification_settings_screen'\nimport { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_screen'\nimport { ReactionsScreen, ReactionsScreenOptions } from '../screens/reactions_screen'\nimport { SendGiphyScreen, SendGiphyScreenOptions } from '../screens/send_giphy_screen'\nimport { SettingsScreen } from '../screens/settings_screen'\nimport {\n SystemMessagePeopleScreen,\n SystemMessagePeopleScreenOptions,\n} from '../screens/system_message_people_screen'\nimport { TeamConversationScreen } from '../screens/team_conversation_screen'\nimport { ScreenLayoutWithChatAccessGate } from './screenLayout'\n\nconst HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES = {\n marginLeft: Platform.select({ ios: -8, default: -3 }),\n marginRight: Platform.select({ ios: 0, default: 30 }),\n}\n\nexport const NewConversationStack = createNativeStackNavigator({\n initialRouteName: 'ConversationNewEntry',\n screenOptions: {\n headerBackButtonDisplayMode: 'minimal',\n },\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n ConversationNewEntry: {\n screen: ConversationNewEntryScreen,\n options: ({ navigation }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Cancel\" />\n ),\n headerBackVisible: false,\n }),\n },\n ConversationSelectGroupRecipients: {\n screen: ConversationSelectGroupRecipientsScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationSelectTeamsILeadRecipients: {\n screen: ConversationSelectTeamsILeadRecipientsScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationSelectDirectMessageRecipients: {\n screen: ConversationSelectDirectMessageRecipientsScreen,\n if: useDirectMessagesEligible,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.popTo('Conversations', route.params)}\n title=\"Cancel\"\n />\n ),\n }),\n },\n ConversationFilterRecipients: {\n screen: ConversationFilterRecipientsScreen,\n options: ConversationFilterReceipientsScreenOptions,\n },\n ConversationNew: {\n screen: ConversationNewScreen,\n options: ({ navigation, route }) => ({\n title: 'New conversation',\n headerLeft: () => null,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton\n {...props}\n onPress={() => {\n const { chat_group_graph_id, group_source_app_name } =\n route.params as ConversationSelectRecipientsParams\n navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name })\n }}\n title=\"Cancel\"\n />\n ),\n }),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerCreateScreenOptions,\n },\n },\n})\n\nexport const ChatStack = createNativeStackNavigator({\n screenOptions: {\n headerBackButtonDisplayMode: 'minimal',\n },\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n Conversations: {\n screen: ConversationsScreen,\n options: ({ route, navigation }) => ({\n headerTitle: (route.params as { title?: string })?.title ?? 'Chat',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderBackButton\n backImage={() => <Icon name=\"general.x\" size={18} color={props.tintColor} />}\n onPress={navigation.goBack}\n {...props}\n />\n ),\n }),\n },\n ConversationFilters: {\n screen: ConversationFiltersScreen,\n options: ConversationFiltersScreenOptions,\n },\n Conversation: {\n screen: ConversationScreen,\n options: ({ route, navigation }) => ({\n headerTitle: (props: NativeStackHeaderRightProps) => {\n const { conversation_id, title, badge, deleted, muted } =\n route.params as ConversationRouteProps\n\n return (\n <ConversationScreenTitle\n conversation_id={conversation_id}\n badge={badge}\n deleted={deleted}\n muted={muted}\n {...props}\n >\n {title ?? 'Conversation'}\n </ConversationScreenTitle>\n )\n },\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderBackButton\n backImage={() => <Icon name=\"general.x\" size={18} color={props.tintColor} />}\n onPress={() => navigation.getParent()?.goBack()}\n />\n ),\n headerLeft: props => (\n <HeaderBackButton\n style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES}\n displayMode=\"minimal\"\n onPress={() => {\n const params = route.params as ConversationRouteProps\n if ((params as ConversationFiltersParams)?.chat_group_graph_id) {\n // Ensure that conversations with a graph id pass them back to the conversation list\n const { chat_group_graph_id } = params\n navigation.popTo('Conversations', { chat_group_graph_id })\n } else {\n navigation.goBack()\n }\n }}\n {...props}\n />\n ),\n }),\n },\n ConversationReply: {\n screen: ConversationScreen,\n options: ({ route, navigation }) => ({\n title: (route.params as ConversationRouteProps)?.title ?? 'Reply',\n headerLeft: props => (\n <HeaderBackButton\n style={HEADER_BACK_BUTTON_LAYOUT_RESET_STYLES}\n displayMode=\"minimal\"\n onPress={() => navigation.goBack()}\n {...props}\n />\n ),\n }),\n },\n TeamConversation: {\n screen: TeamConversationScreen,\n if: useQualifiedByAge,\n options: {\n title: 'Finding conversation...',\n animation: 'none',\n cardStyleInterpolator: CardStyleInterpolators.forNoAnimation,\n },\n },\n ConversationDetails: {\n screen: ConversationDetailsScreen,\n options: ({ navigation }) => ({\n presentation: 'modal',\n title: 'Conversation details',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerScreenOptions,\n },\n ChatSettings: {\n screen: SettingsScreen,\n options: ({ navigation }) => ({\n title: 'Chat settings',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n NotificationSettings: {\n screen: NotificationSettingsScreen,\n options: ({ navigation }) => ({\n title: 'Chat',\n headerBackVisible: false,\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Done\" />\n ),\n }),\n },\n PreferredAppSelection: {\n screen: PreferredAppSelectionScreen,\n options: {\n title: 'Preferred app',\n },\n },\n GroupNotificationSettings: {\n screen: GroupNotificationSettingsScreen,\n options: ({ route, navigation }) => ({\n title: (route.params as { title?: string })?.title || 'Group Settings',\n headerRight: (props: NativeStackHeaderRightProps) => (\n <HeaderDoneButton {...props} navigation={navigation} />\n ),\n }),\n },\n GroupNotificationLevelSelect: {\n screen: GroupNotificationLevelSelectScreen,\n options: GroupNotificationLevelSelectScreenOptions,\n },\n ConversationNotificationLevelSelect: {\n screen: ConversationNotificationLevelSelectScreen,\n options: ConversationNotificationLevelSelectScreenOptions,\n },\n New: {\n screen: NewConversationStack,\n if: useQualifiedByAge,\n options: {\n headerShown: false,\n presentation: 'modal',\n },\n },\n GroupConversationNew: {\n screen: ConversationNewScreen,\n if: useQualifiedByAge,\n options: ({ navigation }) => ({\n title: 'New conversation',\n headerLeft: () => null,\n headerRight: props => (\n <HeaderTextButton\n {...props}\n onPress={() => navigation.getParent()?.goBack()}\n title=\"Cancel\"\n />\n ),\n }),\n },\n SendGiphy: {\n screen: SendGiphyScreen,\n options: SendGiphyScreenOptions,\n },\n MessageActions: {\n screen: MessageActionsScreen,\n // Something about sheetAllowedDetents declared inline breaks TS\n options: MessageActionsScreenOptions,\n },\n MessageReport: {\n screen: MessageReportScreen,\n options: MessageReportScreenOptions,\n },\n AttachmentActions: {\n screen: AttachmentActionsScreen,\n options: AttachmentActionsScreenOptions,\n },\n ConversationSelectType: {\n screen: ConversationSelectTypeScreen,\n options: ConversationSelectTypeScreenOptions,\n },\n Reactions: {\n screen: ReactionsScreen,\n options: ReactionsScreenOptions,\n },\n SystemMessagePeople: {\n screen: SystemMessagePeopleScreen,\n options: SystemMessagePeopleScreenOptions,\n },\n MessageReadReceipts: {\n screen: MessageReadReceiptsScreen,\n options: MessageReadReceiptsScreenOptions,\n },\n BugReport: {\n screen: BugReportScreen,\n options: BugReportScreenOptions,\n },\n GetHelp: {\n screen: GetHelpScreen,\n options: ({ navigation }) => ({\n headerTitle: 'Get help',\n headerBackVisible: false,\n presentation: 'modal',\n headerRight: props => (\n <HeaderTextButton {...props} onPress={navigation.goBack} title=\"Close\" />\n ),\n }),\n },\n NotFound: {\n screen: NotFound,\n options: {\n title: '404',\n },\n linking: {\n path: '*',\n },\n },\n },\n})\n\ntype ChatStackParamList = StaticParamList<typeof ChatStack>\n\ndeclare global {\n namespace ReactNavigation {\n interface RootParamList extends ChatStackParamList {}\n }\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  export declare function ScreenLayout({ children }: {
3
3
  children: React.ReactElement;
4
- }): React.JSX.Element;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
5
  export declare function ScreenLayoutWithChatAccessGate({ children }: {
6
6
  children: React.ReactElement;
7
- }): React.JSX.Element;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
8
  //# sourceMappingURL=screenLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"screenLayout.d.ts","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,qBAQ1E;AAED,wBAAgB,8BAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,qBAQ5F"}
1
+ {"version":3,"file":"screenLayout.d.ts","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,2CAQ1E;AAED,wBAAgB,8BAA8B,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,2CAQ5F"}
@@ -1,20 +1,14 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { useRoute } from '@react-navigation/native';
2
- import React from 'react';
3
3
  import { Suspense } from 'react';
4
4
  import { DefaultLoading } from '../components/page/loading';
5
5
  import { PageErrorBoundary } from '../components/page/page_error_boundary';
6
6
  import { ChatAccessGate } from './chat_access_gate';
7
7
  export function ScreenLayout({ children }) {
8
8
  const route = useRoute();
9
- return (<PageErrorBoundary screenName={route.name}>
10
- <Suspense fallback={<DefaultLoading />}>{children}</Suspense>
11
- </PageErrorBoundary>);
9
+ return (_jsx(PageErrorBoundary, { screenName: route.name, children: _jsx(Suspense, { fallback: _jsx(DefaultLoading, {}), children: children }) }));
12
10
  }
13
11
  export function ScreenLayoutWithChatAccessGate({ children }) {
14
- return (<ScreenLayout>
15
- <ChatAccessGate>
16
- <Suspense fallback={<DefaultLoading />}>{children}</Suspense>
17
- </ChatAccessGate>
18
- </ScreenLayout>);
12
+ return (_jsx(ScreenLayout, { children: _jsx(ChatAccessGate, { children: _jsx(Suspense, { fallback: _jsx(DefaultLoading, {}), children: children }) }) }));
19
13
  }
20
14
  //# sourceMappingURL=screenLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"screenLayout.js","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAoC;IACzE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CACxC;MAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,AAAD,EAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAC9D;IAAA,EAAE,iBAAiB,CAAC,CACrB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,EAAE,QAAQ,EAAoC;IAC3F,OAAO,CACL,CAAC,YAAY,CACX;MAAA,CAAC,cAAc,CACb;QAAA,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,AAAD,EAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAC9D;MAAA,EAAE,cAAc,CAClB;IAAA,EAAE,YAAY,CAAC,CAChB,CAAA;AACH,CAAC","sourcesContent":["import { useRoute } from '@react-navigation/native'\nimport React from 'react'\nimport { Suspense } from 'react'\nimport { DefaultLoading } from '../components/page/loading'\nimport { PageErrorBoundary } from '../components/page/page_error_boundary'\nimport { ChatAccessGate } from './chat_access_gate'\n\nexport function ScreenLayout({ children }: { children: React.ReactElement }) {\n const route = useRoute()\n\n return (\n <PageErrorBoundary screenName={route.name}>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </PageErrorBoundary>\n )\n}\n\nexport function ScreenLayoutWithChatAccessGate({ children }: { children: React.ReactElement }) {\n return (\n <ScreenLayout>\n <ChatAccessGate>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </ChatAccessGate>\n </ScreenLayout>\n )\n}\n"]}
1
+ {"version":3,"file":"screenLayout.js","sourceRoot":"","sources":["../../src/navigation/screenLayout.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAEnD,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,UAAU,YAAY,CAAC,EAAE,QAAQ,EAAoC;IACzE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,KAAC,iBAAiB,IAAC,UAAU,EAAE,KAAK,CAAC,IAAI,YACvC,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,cAAc,KAAG,YAAG,QAAQ,GAAY,GAC3C,CACrB,CAAA;AACH,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,EAAE,QAAQ,EAAoC;IAC3F,OAAO,CACL,KAAC,YAAY,cACX,KAAC,cAAc,cACb,KAAC,QAAQ,IAAC,QAAQ,EAAE,KAAC,cAAc,KAAG,YAAG,QAAQ,GAAY,GAC9C,GACJ,CAChB,CAAA;AACH,CAAC","sourcesContent":["import { useRoute } from '@react-navigation/native'\nimport React from 'react'\nimport { Suspense } from 'react'\nimport { DefaultLoading } from '../components/page/loading'\nimport { PageErrorBoundary } from '../components/page/page_error_boundary'\nimport { ChatAccessGate } from './chat_access_gate'\n\nexport function ScreenLayout({ children }: { children: React.ReactElement }) {\n const route = useRoute()\n\n return (\n <PageErrorBoundary screenName={route.name}>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </PageErrorBoundary>\n )\n}\n\nexport function ScreenLayoutWithChatAccessGate({ children }: { children: React.ReactElement }) {\n return (\n <ScreenLayout>\n <ChatAccessGate>\n <Suspense fallback={<DefaultLoading />}>{children}</Suspense>\n </ChatAccessGate>\n </ScreenLayout>\n )\n}\n"]}
@@ -22,7 +22,7 @@ export type AddEventListenerOptions = Readonly<{
22
22
  }>;
23
23
  export default class EventTarget {
24
24
  addEventListener(type: string, callback: EventListener | null, optionsOrUseCapture?: AddEventListenerOptions | boolean): void;
25
- removeEventListener(type: string, callback: EventListener, optionsOrUseCapture?: EventListenerOptions | boolean): void;
25
+ removeEventListener(type: string, callback: EventListener | null, optionsOrUseCapture?: EventListenerOptions | boolean): void;
26
26
  dispatchEvent(event: Event): boolean;
27
27
  [EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null;
28
28
  [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void;
@@ -1 +1 @@
1
- {"version":3,"file":"EventTarget.d.ts","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,MAAM,SAAS,CAAA;AAa3B,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,kCAAkC,CAAA;AAEzC,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;AAClD,MAAM,MAAM,YAAY,GAAG;IAAE,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAA;AAC9D,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,CAAA;AAExD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAC,CAAA;AAWF,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,uBAAuB,GAAG,OAAY,GAC1D,IAAI;IAmFP,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,EACvB,mBAAmB,GAAE,oBAAoB,GAAG,OAAY,GACvD,IAAI;IAiCP,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAmBpC,CAAC,+BAA+B,CAAC,IAAI,WAAW,GAAG,IAAI;IAKvD,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAGnD"}
1
+ {"version":3,"file":"EventTarget.d.ts","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,MAAM,SAAS,CAAA;AAa3B,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC7B,MAAM,kCAAkC,CAAA;AAEzC,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;AAClD,MAAM,MAAM,YAAY,GAAG;IAAE,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAA;AAC9D,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,YAAY,CAAA;AAExD,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,CAAC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAC,CAAA;AAWF,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,uBAAuB,GAAG,OAAY,GAC1D,IAAI;IAmFP,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,aAAa,GAAG,IAAI,EAC9B,mBAAmB,GAAE,oBAAoB,GAAG,OAAY,GACvD,IAAI;IAiCP,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAmBpC,CAAC,+BAA+B,CAAC,IAAI,WAAW,GAAG,IAAI;IAKvD,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;CAGnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"EventTarget.js","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Implements the `EventTarget` interface from the DOM.\n */\n\nimport { setPlatformObject } from '../webidl/PlatformObjects'\nimport Event from './Event'\nimport {\n getStopImmediatePropagationFlag,\n getStopPropagationFlag,\n setComposedPath,\n setCurrentTarget,\n setEventPhase,\n setInPassiveListenerFlag,\n setIsTrusted,\n setStopImmediatePropagationFlag,\n setStopPropagationFlag,\n setTarget,\n} from './internals/EventInternals'\nimport {\n EVENT_TARGET_GET_THE_PARENT_KEY,\n INTERNAL_DISPATCH_METHOD_KEY,\n} from './internals/EventTargetInternals'\n\nexport type EventCallback = (event: Event) => void\nexport type EventHandler = { handleEvent(event: Event): void }\nexport type EventListener = EventCallback | EventHandler\n\nexport type EventListenerOptions = Readonly<{\n capture?: boolean\n}>\n\nexport type AddEventListenerOptions = Readonly<{\n capture?: boolean\n passive?: boolean\n once?: boolean\n signal?: AbortSignal\n}>\n\ntype EventListenerRegistration = {\n readonly callback: EventListener\n readonly passive: boolean\n readonly once: boolean\n removed: boolean\n}\n\ntype ListenersMap = Map<string, Map<EventListener, EventListenerRegistration>>\n\nexport default class EventTarget {\n addEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: AddEventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'addEventListener')\n\n const processedType = String(type)\n\n let capture: boolean\n let passive: boolean\n let once: boolean\n let signal: AbortSignal | null | undefined\n\n if (\n optionsOrUseCapture != null &&\n (typeof optionsOrUseCapture === 'object' || typeof optionsOrUseCapture === 'function')\n ) {\n const opts = optionsOrUseCapture as AddEventListenerOptions\n capture = Boolean(opts.capture)\n passive =\n opts.passive == null ? getDefaultPassiveValue(processedType, this) : Boolean(opts.passive)\n once = Boolean(opts.once)\n signal = opts.signal\n if (signal !== undefined && !(signal instanceof AbortSignal)) {\n throw new TypeError(\n \"Failed to execute 'addEventListener' on 'EventTarget': Failed to read the 'signal' property from 'AddEventListenerOptions': Failed to convert value to 'AbortSignal'.\"\n )\n }\n } else {\n capture = Boolean(optionsOrUseCapture)\n passive = false\n once = false\n signal = null\n }\n\n if (signal?.aborted) {\n return\n }\n\n let listenersByType = getListenersForPhase(this, capture)\n let listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n if (listenersByType == null) {\n listenersByType = new Map()\n setListenersMap(this, capture, listenersByType)\n }\n listeners = new Map()\n listenersByType.set(processedType, listeners)\n } else if (listeners.has(callback)) {\n return\n }\n\n const listener: EventListenerRegistration = {\n callback,\n passive,\n once,\n removed: false,\n }\n listeners.set(callback, listener)\n\n const nonNullListeners = listeners\n\n if (signal != null) {\n signal.addEventListener(\n 'abort',\n () => {\n listener.removed = true\n if (nonNullListeners.get(callback) === listener) {\n nonNullListeners.delete(callback)\n }\n },\n { once: true }\n )\n }\n }\n\n removeEventListener(\n type: string,\n callback: EventListener,\n optionsOrUseCapture: EventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'removeEventListener')\n\n const processedType = String(type)\n\n const capture =\n typeof optionsOrUseCapture === 'boolean'\n ? optionsOrUseCapture\n : Boolean((optionsOrUseCapture as EventListenerOptions).capture)\n\n const listenersByType = getListenersForPhase(this, capture)\n const listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n return\n }\n\n const listener = listeners.get(callback)\n if (listener != null) {\n listener.removed = true\n listeners.delete(callback)\n }\n }\n\n dispatchEvent(event: Event): boolean {\n if (!(event instanceof Event)) {\n throw new TypeError(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.\"\n )\n }\n\n if (getEventDispatchFlag(event)) {\n throw new Error(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': The event is already being dispatched.\"\n )\n }\n\n setIsTrusted(event, false)\n dispatch(this, event)\n return !event.defaultPrevented\n }\n\n // \"protected\" for subclasses: get the parent (see spec)\n [EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null {\n return null\n }\n\n // \"protected\" to dispatch trusted events\n [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void {\n dispatch(this, event)\n }\n}\n\nsetPlatformObject(EventTarget)\n\nfunction validateCallback(callback: EventListener, methodName: string): void {\n if (typeof callback !== 'function' && typeof callback !== 'object') {\n throw new TypeError(\n `Failed to execute '${methodName}' on 'EventTarget': parameter 2 is not of type 'Object'.`\n )\n }\n}\n\nfunction getDefaultPassiveValue(_type: string, _eventTarget: EventTarget): boolean {\n return false\n}\n\nfunction dispatch(eventTarget: EventTarget, event: Event): void {\n setEventDispatchFlag(event, true)\n\n const eventPath = getEventPath(eventTarget, event)\n setComposedPath(event, eventPath)\n setTarget(event, eventTarget)\n\n for (let i = eventPath.length - 1; i >= 0; i--) {\n if (getStopPropagationFlag(event)) {\n break\n }\n const target = eventPath[i]\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.CAPTURING_PHASE)\n invoke(target, event, Event.CAPTURING_PHASE)\n }\n\n for (const target of eventPath) {\n if (getStopPropagationFlag(event)) {\n break\n }\n if (!event.bubbles && target !== eventTarget) {\n break\n }\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.BUBBLING_PHASE)\n invoke(target, event, Event.BUBBLING_PHASE)\n }\n\n setEventPhase(event, Event.NONE)\n setCurrentTarget(event, null)\n setComposedPath(event, [])\n\n setEventDispatchFlag(event, false)\n setStopImmediatePropagationFlag(event, false)\n setStopPropagationFlag(event, false)\n}\n\nfunction getEventPath(eventTarget: EventTarget, _event: Event): ReadonlyArray<EventTarget> {\n const path: EventTarget[] = []\n let target: EventTarget | null = eventTarget\n\n while (target != null) {\n path.push(target)\n target = target[EVENT_TARGET_GET_THE_PARENT_KEY]()\n }\n\n return path\n}\n\nfunction invoke(eventTarget: EventTarget, event: Event, eventPhase: import('./Event').EventPhase) {\n const listenersByType = getListenersForPhase(eventTarget, eventPhase === Event.CAPTURING_PHASE)\n\n setCurrentTarget(event, eventTarget)\n\n const maybeListeners = listenersByType?.get(event.type)\n if (maybeListeners == null) {\n return\n }\n\n const listeners = Array.from(maybeListeners.values())\n setCurrentTarget(event, eventTarget)\n\n for (const listener of listeners) {\n if (listener.removed) {\n continue\n }\n\n if (listener.once) {\n eventTarget.removeEventListener(\n event.type,\n listener.callback,\n eventPhase === Event.CAPTURING_PHASE\n )\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, true)\n }\n\n const currentEvent = (global as any).event\n ;(global as any).event = event\n\n const callback = listener.callback as any\n try {\n if (typeof callback === 'function') {\n callback.call(eventTarget, event)\n } else if (typeof callback.handleEvent === 'function') {\n callback.handleEvent(event)\n }\n } catch (error) {\n // TODO: replace with `reportError` when it's available.\n\n console.error(error)\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, false)\n }\n\n ;(global as any).event = currentEvent\n\n if (getStopImmediatePropagationFlag(event)) {\n break\n }\n }\n}\n\nconst CAPTURING_LISTENERS_KEY = Symbol('capturingListeners')\nconst BUBBLING_LISTENERS_KEY = Symbol('bubblingListeners')\n\nfunction getListenersForPhase(\n eventTarget: EventTarget,\n isCapture: boolean\n): ListenersMap | null | undefined {\n // @ts-expect-error index on symbol\n return isCapture ? eventTarget[CAPTURING_LISTENERS_KEY] : eventTarget[BUBBLING_LISTENERS_KEY]\n}\n\nfunction setListenersMap(\n eventTarget: EventTarget,\n isCapture: boolean,\n listenersMap: ListenersMap\n): void {\n if (isCapture) {\n ;(eventTarget as any)[CAPTURING_LISTENERS_KEY] = listenersMap\n } else {\n ;(eventTarget as any)[BUBBLING_LISTENERS_KEY] = listenersMap\n }\n}\n\nconst EVENT_DISPATCH_FLAG = Symbol('Event.dispatch')\n\nfunction getEventDispatchFlag(event: Event): boolean {\n return (event as any)[EVENT_DISPATCH_FLAG]\n}\n\nfunction setEventDispatchFlag(event: Event, value: boolean): void {\n ;(event as any)[EVENT_DISPATCH_FLAG] = value\n}\n"]}
1
+ {"version":3,"file":"EventTarget.js","sourceRoot":"","sources":["../../../src/polyfills/events/EventTarget.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/**\n * Implements the `EventTarget` interface from the DOM.\n */\n\nimport { setPlatformObject } from '../webidl/PlatformObjects'\nimport Event from './Event'\nimport {\n getStopImmediatePropagationFlag,\n getStopPropagationFlag,\n setComposedPath,\n setCurrentTarget,\n setEventPhase,\n setInPassiveListenerFlag,\n setIsTrusted,\n setStopImmediatePropagationFlag,\n setStopPropagationFlag,\n setTarget,\n} from './internals/EventInternals'\nimport {\n EVENT_TARGET_GET_THE_PARENT_KEY,\n INTERNAL_DISPATCH_METHOD_KEY,\n} from './internals/EventTargetInternals'\n\nexport type EventCallback = (event: Event) => void\nexport type EventHandler = { handleEvent(event: Event): void }\nexport type EventListener = EventCallback | EventHandler\n\nexport type EventListenerOptions = Readonly<{\n capture?: boolean\n}>\n\nexport type AddEventListenerOptions = Readonly<{\n capture?: boolean\n passive?: boolean\n once?: boolean\n signal?: AbortSignal\n}>\n\ntype EventListenerRegistration = {\n readonly callback: EventListener\n readonly passive: boolean\n readonly once: boolean\n removed: boolean\n}\n\ntype ListenersMap = Map<string, Map<EventListener, EventListenerRegistration>>\n\nexport default class EventTarget {\n addEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: AddEventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'addEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'addEventListener')\n\n const processedType = String(type)\n\n let capture: boolean\n let passive: boolean\n let once: boolean\n let signal: AbortSignal | null | undefined\n\n if (\n optionsOrUseCapture != null &&\n (typeof optionsOrUseCapture === 'object' || typeof optionsOrUseCapture === 'function')\n ) {\n const opts = optionsOrUseCapture as AddEventListenerOptions\n capture = Boolean(opts.capture)\n passive =\n opts.passive == null ? getDefaultPassiveValue(processedType, this) : Boolean(opts.passive)\n once = Boolean(opts.once)\n signal = opts.signal\n if (signal !== undefined && !(signal instanceof AbortSignal)) {\n throw new TypeError(\n \"Failed to execute 'addEventListener' on 'EventTarget': Failed to read the 'signal' property from 'AddEventListenerOptions': Failed to convert value to 'AbortSignal'.\"\n )\n }\n } else {\n capture = Boolean(optionsOrUseCapture)\n passive = false\n once = false\n signal = null\n }\n\n if (signal?.aborted) {\n return\n }\n\n let listenersByType = getListenersForPhase(this, capture)\n let listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n if (listenersByType == null) {\n listenersByType = new Map()\n setListenersMap(this, capture, listenersByType)\n }\n listeners = new Map()\n listenersByType.set(processedType, listeners)\n } else if (listeners.has(callback)) {\n return\n }\n\n const listener: EventListenerRegistration = {\n callback,\n passive,\n once,\n removed: false,\n }\n listeners.set(callback, listener)\n\n const nonNullListeners = listeners\n\n if (signal != null) {\n signal.addEventListener(\n 'abort',\n () => {\n listener.removed = true\n if (nonNullListeners.get(callback) === listener) {\n nonNullListeners.delete(callback)\n }\n },\n { once: true }\n )\n }\n }\n\n removeEventListener(\n type: string,\n callback: EventListener | null,\n optionsOrUseCapture: EventListenerOptions | boolean = {}\n ): void {\n if (arguments.length < 2) {\n throw new TypeError(\n `Failed to execute 'removeEventListener' on 'EventTarget': 2 arguments required, but only ${arguments.length} present.`\n )\n }\n\n if (callback == null) {\n return\n }\n\n validateCallback(callback, 'removeEventListener')\n\n const processedType = String(type)\n\n const capture =\n typeof optionsOrUseCapture === 'boolean'\n ? optionsOrUseCapture\n : Boolean((optionsOrUseCapture as EventListenerOptions).capture)\n\n const listenersByType = getListenersForPhase(this, capture)\n const listeners = listenersByType?.get(processedType)\n if (listeners == null) {\n return\n }\n\n const listener = listeners.get(callback)\n if (listener != null) {\n listener.removed = true\n listeners.delete(callback)\n }\n }\n\n dispatchEvent(event: Event): boolean {\n if (!(event instanceof Event)) {\n throw new TypeError(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': parameter 1 is not of type 'Event'.\"\n )\n }\n\n if (getEventDispatchFlag(event)) {\n throw new Error(\n \"Failed to execute 'dispatchEvent' on 'EventTarget': The event is already being dispatched.\"\n )\n }\n\n setIsTrusted(event, false)\n dispatch(this, event)\n return !event.defaultPrevented\n }\n\n // \"protected\" for subclasses: get the parent (see spec)\n [EVENT_TARGET_GET_THE_PARENT_KEY](): EventTarget | null {\n return null\n }\n\n // \"protected\" to dispatch trusted events\n [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void {\n dispatch(this, event)\n }\n}\n\nsetPlatformObject(EventTarget)\n\nfunction validateCallback(callback: EventListener, methodName: string): void {\n if (typeof callback !== 'function' && typeof callback !== 'object') {\n throw new TypeError(\n `Failed to execute '${methodName}' on 'EventTarget': parameter 2 is not of type 'Object'.`\n )\n }\n}\n\nfunction getDefaultPassiveValue(_type: string, _eventTarget: EventTarget): boolean {\n return false\n}\n\nfunction dispatch(eventTarget: EventTarget, event: Event): void {\n setEventDispatchFlag(event, true)\n\n const eventPath = getEventPath(eventTarget, event)\n setComposedPath(event, eventPath)\n setTarget(event, eventTarget)\n\n for (let i = eventPath.length - 1; i >= 0; i--) {\n if (getStopPropagationFlag(event)) {\n break\n }\n const target = eventPath[i]\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.CAPTURING_PHASE)\n invoke(target, event, Event.CAPTURING_PHASE)\n }\n\n for (const target of eventPath) {\n if (getStopPropagationFlag(event)) {\n break\n }\n if (!event.bubbles && target !== eventTarget) {\n break\n }\n setEventPhase(event, target === eventTarget ? Event.AT_TARGET : Event.BUBBLING_PHASE)\n invoke(target, event, Event.BUBBLING_PHASE)\n }\n\n setEventPhase(event, Event.NONE)\n setCurrentTarget(event, null)\n setComposedPath(event, [])\n\n setEventDispatchFlag(event, false)\n setStopImmediatePropagationFlag(event, false)\n setStopPropagationFlag(event, false)\n}\n\nfunction getEventPath(eventTarget: EventTarget, _event: Event): ReadonlyArray<EventTarget> {\n const path: EventTarget[] = []\n let target: EventTarget | null = eventTarget\n\n while (target != null) {\n path.push(target)\n target = target[EVENT_TARGET_GET_THE_PARENT_KEY]()\n }\n\n return path\n}\n\nfunction invoke(eventTarget: EventTarget, event: Event, eventPhase: import('./Event').EventPhase) {\n const listenersByType = getListenersForPhase(eventTarget, eventPhase === Event.CAPTURING_PHASE)\n\n setCurrentTarget(event, eventTarget)\n\n const maybeListeners = listenersByType?.get(event.type)\n if (maybeListeners == null) {\n return\n }\n\n const listeners = Array.from(maybeListeners.values())\n setCurrentTarget(event, eventTarget)\n\n for (const listener of listeners) {\n if (listener.removed) {\n continue\n }\n\n if (listener.once) {\n eventTarget.removeEventListener(\n event.type,\n listener.callback,\n eventPhase === Event.CAPTURING_PHASE\n )\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, true)\n }\n\n const currentEvent = (global as any).event\n ;(global as any).event = event\n\n const callback = listener.callback as any\n try {\n if (typeof callback === 'function') {\n callback.call(eventTarget, event)\n } else if (typeof callback.handleEvent === 'function') {\n callback.handleEvent(event)\n }\n } catch (error) {\n // TODO: replace with `reportError` when it's available.\n\n console.error(error)\n }\n\n if (listener.passive) {\n setInPassiveListenerFlag(event, false)\n }\n\n ;(global as any).event = currentEvent\n\n if (getStopImmediatePropagationFlag(event)) {\n break\n }\n }\n}\n\nconst CAPTURING_LISTENERS_KEY = Symbol('capturingListeners')\nconst BUBBLING_LISTENERS_KEY = Symbol('bubblingListeners')\n\nfunction getListenersForPhase(\n eventTarget: EventTarget,\n isCapture: boolean\n): ListenersMap | null | undefined {\n // @ts-expect-error index on symbol\n return isCapture ? eventTarget[CAPTURING_LISTENERS_KEY] : eventTarget[BUBBLING_LISTENERS_KEY]\n}\n\nfunction setListenersMap(\n eventTarget: EventTarget,\n isCapture: boolean,\n listenersMap: ListenersMap\n): void {\n if (isCapture) {\n ;(eventTarget as any)[CAPTURING_LISTENERS_KEY] = listenersMap\n } else {\n ;(eventTarget as any)[BUBBLING_LISTENERS_KEY] = listenersMap\n }\n}\n\nconst EVENT_DISPATCH_FLAG = Symbol('Event.dispatch')\n\nfunction getEventDispatchFlag(event: Event): boolean {\n return (event as any)[EVENT_DISPATCH_FLAG]\n}\n\nfunction setEventDispatchFlag(event: Event, value: boolean): void {\n ;(event as any)[EVENT_DISPATCH_FLAG] = value\n}\n"]}
@@ -1,3 +1,2 @@
1
- import React from 'react';
2
- export declare function AgeCheckRequiredScreen(): React.JSX.Element;
1
+ export declare function AgeCheckRequiredScreen(): import("react/jsx-runtime").JSX.Element;
3
2
  //# sourceMappingURL=age_check_required_screen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"age_check_required_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAsBvC,wBAAgB,sBAAsB,sBAsHrC"}
1
+ {"version":3,"file":"age_check_required_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"AAuBA,wBAAgB,sBAAsB,4CAsHrC"}
@@ -1,5 +1,6 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
2
  import { date as formatDate } from '@planningcenter/datetime-fmt';
2
- import React, { useState } from 'react';
3
+ import { useState } from 'react';
3
4
  import { StyleSheet, View, ScrollView } from 'react-native';
4
5
  import { Heading } from '../../components';
5
6
  import { Avatar } from '../../components/display/avatar';
@@ -45,51 +46,7 @@ export function AgeCheckRequiredScreen() {
45
46
  return;
46
47
  submitAgeCheck(birthdate);
47
48
  };
48
- return (<>
49
- <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>
50
- <View style={styles.header}>
51
- <View style={styles.heading}>
52
- <Icon name="general.exclamationTriangle" size={20} style={styles.warningIcon}/>
53
- <Heading variant="h2">Your age is required to use chat</Heading>
54
- </View>
55
- <Text>
56
- Privacy laws require us to verify your age before you can use messaging features. This
57
- helps us protect minors who use chat.
58
- </Text>
59
- </View>
60
- <View style={styles.cards}>
61
- <View style={styles.card}>
62
- <Heading variant="h3">My profile</Heading>
63
- <View style={styles.profileContent}>
64
- <Avatar sourceUri={person.avatar || ''} size="lg" showFallback={!person.avatar}/>
65
- <View style={styles.personInfo}>
66
- <Text style={styles.name}>{person.name}</Text>
67
- <View style={styles.birthdateInfo}>
68
- <Text variant="tertiary" style={styles.birthdateLabel}>
69
- Birthdate:{' '}
70
- </Text>
71
- <Text variant="tertiary">{birthdateStamp}</Text>
72
- </View>
73
- </View>
74
- {birthdate && (<Button title="Edit" accessibilityHint="Choose a new birthdate for your profile" size="sm" variant="outline" style={styles.editButton} onPress={openBirthdateModal}/>)}
75
- </View>
76
- {!birthdate && (<Button title="Add birthdate" accessibilityHint="Choose a birthdate for your profile" size="lg" style={styles.primaryButton} onPress={openBirthdateModal}/>)}
77
- </View>
78
- {birthdate && (<View style={styles.card}>
79
- <Heading variant="h3">Age confirmation</Heading>
80
- {age !== null && age < 13 ? (<Banner appearance="warning" description={confirmationText}/>) : (<Text>{confirmationText}</Text>)}
81
- <Button title="Yes, update my profile" size="lg" style={styles.primaryButton} onPress={handleSubmitAgeConfirmation} disabled={isPending || isSuccess}/>
82
- </View>)}
83
- </View>
84
- <Text variant="tertiary">
85
- Your birthdate will be added to your profile, but it is only visible to church
86
- administrators at {organization?.name}. It will not be shared with other church members,
87
- unless you give permission.
88
- </Text>
89
- </ScrollView>
90
-
91
- <AgeCheckSelectBirthdateModal onChange={setDraftBirthdate} onDismiss={closeBirthdateModal} onRequestClose={closeBirthdateModal} onSubmit={setBirthdate} value={draftBirthdate || new Date()} visible={isBirthdateModalOpen}/>
92
- </>);
49
+ return (_jsxs(_Fragment, { children: [_jsxs(ScrollView, { style: styles.scrollView, contentContainerStyle: styles.container, children: [_jsxs(View, { style: styles.header, children: [_jsxs(View, { style: styles.heading, children: [_jsx(Icon, { name: "general.exclamationTriangle", size: 20, style: styles.warningIcon }), _jsx(Heading, { variant: "h2", children: "Your age is required to use chat" })] }), _jsx(Text, { children: "Privacy laws require us to verify your age before you can use messaging features. This helps us protect minors who use chat." })] }), _jsxs(View, { style: styles.cards, children: [_jsxs(View, { style: styles.card, children: [_jsx(Heading, { variant: "h3", children: "My profile" }), _jsxs(View, { style: styles.profileContent, children: [_jsx(Avatar, { sourceUri: person.avatar || '', size: "lg", showFallback: !person.avatar }), _jsxs(View, { style: styles.personInfo, children: [_jsx(Text, { style: styles.name, children: person.name }), _jsxs(View, { style: styles.birthdateInfo, children: [_jsxs(Text, { variant: "tertiary", style: styles.birthdateLabel, children: ["Birthdate:", ' '] }), _jsx(Text, { variant: "tertiary", children: birthdateStamp })] })] }), birthdate && (_jsx(Button, { title: "Edit", accessibilityHint: "Choose a new birthdate for your profile", size: "sm", variant: "outline", style: styles.editButton, onPress: openBirthdateModal }))] }), !birthdate && (_jsx(Button, { title: "Add birthdate", accessibilityHint: "Choose a birthdate for your profile", size: "lg", style: styles.primaryButton, onPress: openBirthdateModal }))] }), birthdate && (_jsxs(View, { style: styles.card, children: [_jsx(Heading, { variant: "h3", children: "Age confirmation" }), age !== null && age < 13 ? (_jsx(Banner, { appearance: "warning", description: confirmationText })) : (_jsx(Text, { children: confirmationText })), _jsx(Button, { title: "Yes, update my profile", size: "lg", style: styles.primaryButton, onPress: handleSubmitAgeConfirmation, disabled: isPending || isSuccess })] }))] }), _jsxs(Text, { variant: "tertiary", children: ["Your birthdate will be added to your profile, but it is only visible to church administrators at ", organization?.name, ". It will not be shared with other church members, unless you give permission."] })] }), _jsx(AgeCheckSelectBirthdateModal, { onChange: setDraftBirthdate, onDismiss: closeBirthdateModal, onRequestClose: closeBirthdateModal, onSubmit: setBirthdate, value: draftBirthdate || new Date(), visible: isBirthdateModalOpen })] }));
93
50
  }
94
51
  const useStyles = () => {
95
52
  const { colors } = useTheme();
@@ -1 +1 @@
1
- {"version":3,"file":"age_check_required_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":"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","sourcesContent":["import { date as formatDate } from '@planningcenter/datetime-fmt'\nimport React, { useState } from 'react'\nimport { StyleSheet, View, ScrollView } from 'react-native'\nimport { Heading } from '../../components'\nimport { Avatar } from '../../components/display/avatar'\nimport { Banner } from '../../components/display/banner'\nimport { Button } from '../../components/display/button'\nimport { Icon } from '../../components/display/icon'\nimport { Text } from '../../components/display/text'\nimport { useCurrentPerson, useTheme, useSubmitAgeCheck, useOrganization } from '../../hooks'\nimport { platformFontWeightBold } from '../../utils/styles'\nimport { AgeCheckSelectBirthdateModal } from './components/age_check_select_birthdate_modal'\n\nfunction calculateAge(birthdate: Date) {\n const today = new Date()\n const age = today.getUTCFullYear() - birthdate.getUTCFullYear()\n const hasHadBirthdayThisYear =\n today.getUTCMonth() > birthdate.getUTCMonth() ||\n (today.getUTCMonth() === birthdate.getUTCMonth() &&\n today.getUTCDate() >= birthdate.getUTCDate())\n return hasHadBirthdayThisYear ? age : age - 1\n}\n\nexport function AgeCheckRequiredScreen() {\n const person = useCurrentPerson()\n const { data: organization } = useOrganization()\n\n const [birthdate, setBirthdate] = useState<Date | null>(null)\n const [draftBirthdate, setDraftBirthdate] = useState<Date | null>(null)\n const [isBirthdateModalOpen, setBirthdateModalOpen] = useState(false)\n const { submitAgeCheck, isPending, isSuccess } = useSubmitAgeCheck()\n const styles = useStyles()\n\n const birthdateStamp = birthdate\n ? formatDate(birthdate, { style: 'standard', year: true, timeZone: 'UTC' })\n : 'Missing'\n\n const age = birthdate ? calculateAge(birthdate) : null\n\n const confirmationText =\n birthdate !== null\n ? `Your birthdate is ${birthdateStamp} and you are ${age} years old. Is that correct?`\n : ''\n\n const openBirthdateModal = () => {\n setDraftBirthdate(birthdate || new Date())\n setBirthdateModalOpen(true)\n }\n\n const closeBirthdateModal = () => {\n setBirthdateModalOpen(false)\n }\n\n const handleSubmitAgeConfirmation = () => {\n if (!birthdate) return\n submitAgeCheck(birthdate)\n }\n\n return (\n <>\n <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>\n <View style={styles.header}>\n <View style={styles.heading}>\n <Icon name=\"general.exclamationTriangle\" size={20} style={styles.warningIcon} />\n <Heading variant=\"h2\">Your age is required to use chat</Heading>\n </View>\n <Text>\n Privacy laws require us to verify your age before you can use messaging features. This\n helps us protect minors who use chat.\n </Text>\n </View>\n <View style={styles.cards}>\n <View style={styles.card}>\n <Heading variant=\"h3\">My profile</Heading>\n <View style={styles.profileContent}>\n <Avatar sourceUri={person.avatar || ''} size=\"lg\" showFallback={!person.avatar} />\n <View style={styles.personInfo}>\n <Text style={styles.name}>{person.name}</Text>\n <View style={styles.birthdateInfo}>\n <Text variant=\"tertiary\" style={styles.birthdateLabel}>\n Birthdate:{' '}\n </Text>\n <Text variant=\"tertiary\">{birthdateStamp}</Text>\n </View>\n </View>\n {birthdate && (\n <Button\n title=\"Edit\"\n accessibilityHint=\"Choose a new birthdate for your profile\"\n size=\"sm\"\n variant=\"outline\"\n style={styles.editButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {!birthdate && (\n <Button\n title=\"Add birthdate\"\n accessibilityHint=\"Choose a birthdate for your profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {birthdate && (\n <View style={styles.card}>\n <Heading variant=\"h3\">Age confirmation</Heading>\n {age !== null && age < 13 ? (\n <Banner appearance=\"warning\" description={confirmationText} />\n ) : (\n <Text>{confirmationText}</Text>\n )}\n <Button\n title=\"Yes, update my profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={handleSubmitAgeConfirmation}\n disabled={isPending || isSuccess}\n />\n </View>\n )}\n </View>\n <Text variant=\"tertiary\">\n Your birthdate will be added to your profile, but it is only visible to church\n administrators at {organization?.name}. It will not be shared with other church members,\n unless you give permission.\n </Text>\n </ScrollView>\n\n <AgeCheckSelectBirthdateModal\n onChange={setDraftBirthdate}\n onDismiss={closeBirthdateModal}\n onRequestClose={closeBirthdateModal}\n onSubmit={setBirthdate}\n value={draftBirthdate || new Date()}\n visible={isBirthdateModalOpen}\n />\n </>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n scrollView: {\n flex: 1,\n backgroundColor: colors.surfaceColor080,\n },\n container: {\n padding: 16,\n gap: 16,\n },\n header: {\n gap: 8,\n },\n heading: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n warningIcon: {\n color: colors.statusErrorIcon,\n },\n card: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n padding: 16,\n gap: 8,\n },\n cards: {\n gap: 8,\n },\n profileContent: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'flex-start',\n gap: 8,\n },\n personInfo: {\n flex: 1,\n minWidth: 0,\n },\n primaryButton: {\n alignSelf: 'center',\n marginTop: 8,\n },\n name: {\n fontWeight: platformFontWeightBold,\n },\n birthdateLabel: {\n fontWeight: platformFontWeightBold,\n },\n birthdateInfo: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 4,\n },\n editButton: {\n alignSelf: 'flex-end',\n },\n formSheetContent: {\n flex: 1,\n },\n })\n}\n"]}
1
+ {"version":3,"file":"age_check_required_screen.js","sourceRoot":"","sources":["../../../src/screens/age_check/age_check_required_screen.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAA;AAE5F,SAAS,YAAY,CAAC,SAAe;IACnC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;IACxB,MAAM,GAAG,GAAG,KAAK,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC,cAAc,EAAE,CAAA;IAC/D,MAAM,sBAAsB,GAC1B,KAAK,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE;QAC7C,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE;YAC9C,KAAK,CAAC,UAAU,EAAE,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,CAAA;IACjD,OAAO,sBAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;AAC/C,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAA;IACjC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAEhD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAc,IAAI,CAAC,CAAA;IAC7D,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAc,IAAI,CAAC,CAAA;IACvE,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACrE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,iBAAiB,EAAE,CAAA;IACpE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,cAAc,GAAG,SAAS;QAC9B,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC3E,CAAC,CAAC,SAAS,CAAA;IAEb,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAEtD,MAAM,gBAAgB,GACpB,SAAS,KAAK,IAAI;QAChB,CAAC,CAAC,qBAAqB,cAAc,gBAAgB,GAAG,8BAA8B;QACtF,CAAC,CAAC,EAAE,CAAA;IAER,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,iBAAiB,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,CAAA;QAC1C,qBAAqB,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC,CAAA;IAED,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,qBAAqB,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC,CAAA;IAED,MAAM,2BAA2B,GAAG,GAAG,EAAE;QACvC,IAAI,CAAC,SAAS;YAAE,OAAM;QACtB,cAAc,CAAC,SAAS,CAAC,CAAA;IAC3B,CAAC,CAAA;IAED,OAAO,CACL,8BACE,MAAC,UAAU,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,qBAAqB,EAAE,MAAM,CAAC,SAAS,aAC3E,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,aACxB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,aACzB,KAAC,IAAI,IAAC,IAAI,EAAC,6BAA6B,EAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,GAAI,EAChF,KAAC,OAAO,IAAC,OAAO,EAAC,IAAI,iDAA2C,IAC3D,EACP,KAAC,IAAI,+IAGE,IACF,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,aACvB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,aACtB,KAAC,OAAO,IAAC,OAAO,EAAC,IAAI,2BAAqB,EAC1C,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,cAAc,aAChC,KAAC,MAAM,IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,EAAC,IAAI,EAAC,YAAY,EAAE,CAAC,MAAM,CAAC,MAAM,GAAI,EAClF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,aAC5B,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,MAAM,CAAC,IAAI,GAAQ,EAC9C,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,aAAa,aAC/B,MAAC,IAAI,IAAC,OAAO,EAAC,UAAU,EAAC,KAAK,EAAE,MAAM,CAAC,cAAc,2BACxC,GAAG,IACT,EACP,KAAC,IAAI,IAAC,OAAO,EAAC,UAAU,YAAE,cAAc,GAAQ,IAC3C,IACF,EACN,SAAS,IAAI,CACZ,KAAC,MAAM,IACL,KAAK,EAAC,MAAM,EACZ,iBAAiB,EAAC,yCAAyC,EAC3D,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,KAAK,EAAE,MAAM,CAAC,UAAU,EACxB,OAAO,EAAE,kBAAkB,GAC3B,CACH,IACI,EACN,CAAC,SAAS,IAAI,CACb,KAAC,MAAM,IACL,KAAK,EAAC,eAAe,EACrB,iBAAiB,EAAC,qCAAqC,EACvD,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,MAAM,CAAC,aAAa,EAC3B,OAAO,EAAE,kBAAkB,GAC3B,CACH,IACI,EACN,SAAS,IAAI,CACZ,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,aACtB,KAAC,OAAO,IAAC,OAAO,EAAC,IAAI,iCAA2B,EAC/C,GAAG,KAAK,IAAI,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAC1B,KAAC,MAAM,IAAC,UAAU,EAAC,SAAS,EAAC,WAAW,EAAE,gBAAgB,GAAI,CAC/D,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,cAAE,gBAAgB,GAAQ,CAChC,EACD,KAAC,MAAM,IACL,KAAK,EAAC,wBAAwB,EAC9B,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,MAAM,CAAC,aAAa,EAC3B,OAAO,EAAE,2BAA2B,EACpC,QAAQ,EAAE,SAAS,IAAI,SAAS,GAChC,IACG,CACR,IACI,EACP,MAAC,IAAI,IAAC,OAAO,EAAC,UAAU,kHAEH,YAAY,EAAE,IAAI,sFAEhC,IACI,EAEb,KAAC,4BAA4B,IAC3B,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,mBAAmB,EAC9B,cAAc,EAAE,mBAAmB,EACnC,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,cAAc,IAAI,IAAI,IAAI,EAAE,EACnC,OAAO,EAAE,oBAAoB,GAC7B,IACD,CACJ,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAC7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,UAAU,EAAE;YACV,IAAI,EAAE,CAAC;YACP,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,EAAE;YACX,GAAG,EAAE,EAAE;SACR;QACD,MAAM,EAAE;YACN,GAAG,EAAE,CAAC;SACP;QACD,OAAO,EAAE;YACP,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,QAAQ;YACpB,GAAG,EAAE,CAAC;SACP;QACD,WAAW,EAAE;YACX,KAAK,EAAE,MAAM,CAAC,eAAe;SAC9B;QACD,IAAI,EAAE;YACJ,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,EAAE;YACX,GAAG,EAAE,CAAC;SACP;QACD,KAAK,EAAE;YACL,GAAG,EAAE,CAAC;SACP;QACD,cAAc,EAAE;YACd,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,YAAY;YACxB,GAAG,EAAE,CAAC;SACP;QACD,UAAU,EAAE;YACV,IAAI,EAAE,CAAC;YACP,QAAQ,EAAE,CAAC;SACZ;QACD,aAAa,EAAE;YACb,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,CAAC;SACb;QACD,IAAI,EAAE;YACJ,UAAU,EAAE,sBAAsB;SACnC;QACD,cAAc,EAAE;YACd,UAAU,EAAE,sBAAsB;SACnC;QACD,aAAa,EAAE;YACb,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,QAAQ;YACpB,GAAG,EAAE,CAAC;SACP;QACD,UAAU,EAAE;YACV,SAAS,EAAE,UAAU;SACtB;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,CAAC;SACR;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { date as formatDate } from '@planningcenter/datetime-fmt'\nimport React, { useState } from 'react'\nimport { StyleSheet, View, ScrollView } from 'react-native'\nimport { Heading } from '../../components'\nimport { Avatar } from '../../components/display/avatar'\nimport { Banner } from '../../components/display/banner'\nimport { Button } from '../../components/display/button'\nimport { Icon } from '../../components/display/icon'\nimport { Text } from '../../components/display/text'\nimport { useCurrentPerson, useTheme, useSubmitAgeCheck, useOrganization } from '../../hooks'\nimport { platformFontWeightBold } from '../../utils/styles'\nimport { AgeCheckSelectBirthdateModal } from './components/age_check_select_birthdate_modal'\n\nfunction calculateAge(birthdate: Date) {\n const today = new Date()\n const age = today.getUTCFullYear() - birthdate.getUTCFullYear()\n const hasHadBirthdayThisYear =\n today.getUTCMonth() > birthdate.getUTCMonth() ||\n (today.getUTCMonth() === birthdate.getUTCMonth() &&\n today.getUTCDate() >= birthdate.getUTCDate())\n return hasHadBirthdayThisYear ? age : age - 1\n}\n\nexport function AgeCheckRequiredScreen() {\n const person = useCurrentPerson()\n const { data: organization } = useOrganization()\n\n const [birthdate, setBirthdate] = useState<Date | null>(null)\n const [draftBirthdate, setDraftBirthdate] = useState<Date | null>(null)\n const [isBirthdateModalOpen, setBirthdateModalOpen] = useState(false)\n const { submitAgeCheck, isPending, isSuccess } = useSubmitAgeCheck()\n const styles = useStyles()\n\n const birthdateStamp = birthdate\n ? formatDate(birthdate, { style: 'standard', year: true, timeZone: 'UTC' })\n : 'Missing'\n\n const age = birthdate ? calculateAge(birthdate) : null\n\n const confirmationText =\n birthdate !== null\n ? `Your birthdate is ${birthdateStamp} and you are ${age} years old. Is that correct?`\n : ''\n\n const openBirthdateModal = () => {\n setDraftBirthdate(birthdate || new Date())\n setBirthdateModalOpen(true)\n }\n\n const closeBirthdateModal = () => {\n setBirthdateModalOpen(false)\n }\n\n const handleSubmitAgeConfirmation = () => {\n if (!birthdate) return\n submitAgeCheck(birthdate)\n }\n\n return (\n <>\n <ScrollView style={styles.scrollView} contentContainerStyle={styles.container}>\n <View style={styles.header}>\n <View style={styles.heading}>\n <Icon name=\"general.exclamationTriangle\" size={20} style={styles.warningIcon} />\n <Heading variant=\"h2\">Your age is required to use chat</Heading>\n </View>\n <Text>\n Privacy laws require us to verify your age before you can use messaging features. This\n helps us protect minors who use chat.\n </Text>\n </View>\n <View style={styles.cards}>\n <View style={styles.card}>\n <Heading variant=\"h3\">My profile</Heading>\n <View style={styles.profileContent}>\n <Avatar sourceUri={person.avatar || ''} size=\"lg\" showFallback={!person.avatar} />\n <View style={styles.personInfo}>\n <Text style={styles.name}>{person.name}</Text>\n <View style={styles.birthdateInfo}>\n <Text variant=\"tertiary\" style={styles.birthdateLabel}>\n Birthdate:{' '}\n </Text>\n <Text variant=\"tertiary\">{birthdateStamp}</Text>\n </View>\n </View>\n {birthdate && (\n <Button\n title=\"Edit\"\n accessibilityHint=\"Choose a new birthdate for your profile\"\n size=\"sm\"\n variant=\"outline\"\n style={styles.editButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {!birthdate && (\n <Button\n title=\"Add birthdate\"\n accessibilityHint=\"Choose a birthdate for your profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={openBirthdateModal}\n />\n )}\n </View>\n {birthdate && (\n <View style={styles.card}>\n <Heading variant=\"h3\">Age confirmation</Heading>\n {age !== null && age < 13 ? (\n <Banner appearance=\"warning\" description={confirmationText} />\n ) : (\n <Text>{confirmationText}</Text>\n )}\n <Button\n title=\"Yes, update my profile\"\n size=\"lg\"\n style={styles.primaryButton}\n onPress={handleSubmitAgeConfirmation}\n disabled={isPending || isSuccess}\n />\n </View>\n )}\n </View>\n <Text variant=\"tertiary\">\n Your birthdate will be added to your profile, but it is only visible to church\n administrators at {organization?.name}. It will not be shared with other church members,\n unless you give permission.\n </Text>\n </ScrollView>\n\n <AgeCheckSelectBirthdateModal\n onChange={setDraftBirthdate}\n onDismiss={closeBirthdateModal}\n onRequestClose={closeBirthdateModal}\n onSubmit={setBirthdate}\n value={draftBirthdate || new Date()}\n visible={isBirthdateModalOpen}\n />\n </>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n return StyleSheet.create({\n scrollView: {\n flex: 1,\n backgroundColor: colors.surfaceColor080,\n },\n container: {\n padding: 16,\n gap: 16,\n },\n header: {\n gap: 8,\n },\n heading: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 8,\n },\n warningIcon: {\n color: colors.statusErrorIcon,\n },\n card: {\n backgroundColor: colors.surfaceColor100,\n borderRadius: 8,\n padding: 16,\n gap: 8,\n },\n cards: {\n gap: 8,\n },\n profileContent: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'flex-start',\n gap: 8,\n },\n personInfo: {\n flex: 1,\n minWidth: 0,\n },\n primaryButton: {\n alignSelf: 'center',\n marginTop: 8,\n },\n name: {\n fontWeight: platformFontWeightBold,\n },\n birthdateLabel: {\n fontWeight: platformFontWeightBold,\n },\n birthdateInfo: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 4,\n },\n editButton: {\n alignSelf: 'flex-end',\n },\n formSheetContent: {\n flex: 1,\n },\n })\n}\n"]}
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  export interface AgeCheckUnderageScreenProps {
3
2
  contactEmail?: string;
4
3
  }
5
- export declare function AgeCheckUnderageScreen({ contactEmail }?: AgeCheckUnderageScreenProps): React.JSX.Element;
4
+ export declare function AgeCheckUnderageScreen({ contactEmail }?: AgeCheckUnderageScreenProps): import("react/jsx-runtime").JSX.Element;
6
5
  //# sourceMappingURL=age_check_underage_screen.d.ts.map