@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,5 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { PlatformPressable } from '@react-navigation/elements';
2
- import React, { useCallback } from 'react';
3
+ import { useCallback } from 'react';
3
4
  import { FlatList, StyleSheet, useWindowDimensions } from 'react-native';
4
5
  import LinearGradient from 'react-native-linear-gradient';
5
6
  import { COLOR_KEYS, getAvatarGradientProps, } from '../../components/display/utils/avatar_gradient_colors';
@@ -10,11 +11,9 @@ export function ColorPicker({ selectedColor, onColorSelect }) {
10
11
  const renderItem = useCallback(({ item }) => {
11
12
  const gradientProps = getAvatarGradientProps(item);
12
13
  const isSelected = item === selectedColor;
13
- return (<PlatformPressable onPress={() => onColorSelect(item)} style={[styles.swatchOuter, isSelected && styles.swatchSelected]} accessibilityRole="button" accessibilityLabel={`${item.replace(/-/g, ' ')} color`} accessibilityState={{ selected: isSelected }}>
14
- <LinearGradient {...gradientProps} style={styles.swatch}/>
15
- </PlatformPressable>);
14
+ return (_jsx(PlatformPressable, { onPress: () => onColorSelect(item), style: [styles.swatchOuter, isSelected && styles.swatchSelected], accessibilityRole: "button", accessibilityLabel: `${item.replace(/-/g, ' ')} color`, accessibilityState: { selected: isSelected }, children: _jsx(LinearGradient, { ...gradientProps, style: styles.swatch }) }));
16
15
  }, [selectedColor, onColorSelect, styles.swatch, styles.swatchOuter, styles.swatchSelected]);
17
- return (<FlatList data={COLOR_KEYS} numColumns={GRID_COLUMNS} keyExtractor={item => item} renderItem={renderItem} contentContainerStyle={styles.grid} columnWrapperStyle={styles.row} scrollEnabled={false}/>);
16
+ return (_jsx(FlatList, { data: COLOR_KEYS, numColumns: GRID_COLUMNS, keyExtractor: item => item, renderItem: renderItem, contentContainerStyle: styles.grid, columnWrapperStyle: styles.row, scrollEnabled: false }));
18
17
  }
19
18
  const PADDING = 16;
20
19
  const GAP = 8;
@@ -1 +1 @@
1
- {"version":3,"file":"color_picker.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/color_picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport React, { useCallback } from 'react'\nimport { FlatList, StyleSheet, useWindowDimensions } from 'react-native'\nimport LinearGradient from 'react-native-linear-gradient'\nimport {\n COLOR_KEYS,\n type CustomAvatarColorKey,\n getAvatarGradientProps,\n} from '../../components/display/utils/avatar_gradient_colors'\nimport { useTheme } from '../../hooks'\nimport { GRID_COLUMNS } from './constants'\n\ninterface ColorPickerProps {\n selectedColor: string\n onColorSelect: (color: CustomAvatarColorKey) => void\n}\n\nexport function ColorPicker({ selectedColor, onColorSelect }: ColorPickerProps) {\n const styles = useStyles()\n\n const renderItem = useCallback(\n ({ item }: { item: CustomAvatarColorKey }) => {\n const gradientProps = getAvatarGradientProps(item)\n const isSelected = item === selectedColor\n\n return (\n <PlatformPressable\n onPress={() => onColorSelect(item)}\n style={[styles.swatchOuter, isSelected && styles.swatchSelected]}\n accessibilityRole=\"button\"\n accessibilityLabel={`${item.replace(/-/g, ' ')} color`}\n accessibilityState={{ selected: isSelected }}\n >\n <LinearGradient {...gradientProps} style={styles.swatch} />\n </PlatformPressable>\n )\n },\n [selectedColor, onColorSelect, styles.swatch, styles.swatchOuter, styles.swatchSelected]\n )\n\n return (\n <FlatList\n data={COLOR_KEYS}\n numColumns={GRID_COLUMNS}\n keyExtractor={item => item}\n renderItem={renderItem}\n contentContainerStyle={styles.grid}\n columnWrapperStyle={styles.row}\n scrollEnabled={false}\n />\n )\n}\n\nconst PADDING = 16\nconst GAP = 8\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const { width: screenWidth } = useWindowDimensions()\n const swatchSize = Math.floor(\n (screenWidth - PADDING * 2 - (GRID_COLUMNS - 1) * GAP) / GRID_COLUMNS\n )\n const innerSize = swatchSize - 6\n\n return StyleSheet.create({\n grid: {\n paddingHorizontal: PADDING,\n paddingVertical: 12,\n },\n row: {\n gap: GAP,\n marginBottom: GAP,\n },\n swatchOuter: {\n width: swatchSize,\n height: swatchSize,\n borderRadius: swatchSize / 2,\n alignItems: 'center',\n justifyContent: 'center',\n },\n swatchSelected: {\n borderWidth: 3,\n borderColor: colors.interaction,\n },\n swatch: {\n width: innerSize,\n height: innerSize,\n borderRadius: innerSize / 2,\n },\n })\n}\n"]}
1
+ {"version":3,"file":"color_picker.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/color_picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport React, { useCallback } from 'react'\nimport { FlatList, StyleSheet, useWindowDimensions } from 'react-native'\nimport LinearGradient from 'react-native-linear-gradient'\nimport {\n COLOR_KEYS,\n type CustomAvatarColorKey,\n getAvatarGradientProps,\n} from '../../components/display/utils/avatar_gradient_colors'\nimport { useTheme } from '../../hooks'\nimport { GRID_COLUMNS } from './constants'\n\ninterface ColorPickerProps {\n selectedColor: string\n onColorSelect: (color: CustomAvatarColorKey) => void\n}\n\nexport function ColorPicker({ selectedColor, onColorSelect }: ColorPickerProps) {\n const styles = useStyles()\n\n const renderItem = useCallback(\n ({ item }: { item: CustomAvatarColorKey }) => {\n const gradientProps = getAvatarGradientProps(item)\n const isSelected = item === selectedColor\n\n return (\n <PlatformPressable\n onPress={() => onColorSelect(item)}\n style={[styles.swatchOuter, isSelected && styles.swatchSelected]}\n accessibilityRole=\"button\"\n accessibilityLabel={`${item.replace(/-/g, ' ')} color`}\n accessibilityState={{ selected: isSelected }}\n >\n <LinearGradient {...gradientProps} style={styles.swatch} />\n </PlatformPressable>\n )\n },\n [selectedColor, onColorSelect, styles.swatch, styles.swatchOuter, styles.swatchSelected]\n )\n\n return (\n <FlatList\n data={COLOR_KEYS}\n numColumns={GRID_COLUMNS}\n keyExtractor={item => item}\n renderItem={renderItem}\n contentContainerStyle={styles.grid}\n columnWrapperStyle={styles.row}\n scrollEnabled={false}\n />\n )\n}\n\nconst PADDING = 16\nconst GAP = 8\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const { width: screenWidth } = useWindowDimensions()\n const swatchSize = Math.floor(\n (screenWidth - PADDING * 2 - (GRID_COLUMNS - 1) * GAP) / GRID_COLUMNS\n )\n const innerSize = swatchSize - 6\n\n return StyleSheet.create({\n grid: {\n paddingHorizontal: PADDING,\n paddingVertical: 12,\n },\n row: {\n gap: GAP,\n marginBottom: GAP,\n },\n swatchOuter: {\n width: swatchSize,\n height: swatchSize,\n borderRadius: swatchSize / 2,\n alignItems: 'center',\n justifyContent: 'center',\n },\n swatchSelected: {\n borderWidth: 3,\n borderColor: colors.interaction,\n },\n swatch: {\n width: innerSize,\n height: innerSize,\n borderRadius: innerSize / 2,\n },\n })\n}\n"]}
@@ -1,7 +1,6 @@
1
- import React from 'react';
2
1
  interface EmojiTabProps {
3
2
  onEmojiSelect: (emoji: string) => void;
4
3
  }
5
- export declare function EmojiTab({ onEmojiSelect }: EmojiTabProps): React.JSX.Element;
4
+ export declare function EmojiTab({ onEmojiSelect }: EmojiTabProps): import("react/jsx-runtime").JSX.Element;
6
5
  export {};
7
6
  //# sourceMappingURL=emoji_tab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emoji_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAW1C,UAAU,aAAa;IACrB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC;AAED,wBAAgB,QAAQ,CAAC,EAAE,aAAa,EAAE,EAAE,aAAa,qBAyDxD"}
1
+ {"version":3,"file":"emoji_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AAYA,UAAU,aAAa;IACrB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC;AAED,wBAAgB,QAAQ,CAAC,EAAE,aAAa,EAAE,EAAE,aAAa,2CAyDxD"}
@@ -1,5 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { EmojiKeyboard, emojisByCategory } from '@planningcenter/emoji-keyboard';
2
- import React, { useCallback } from 'react';
3
+ import { useCallback } from 'react';
3
4
  import { StyleSheet, View } from 'react-native';
4
5
  import { useTheme } from '../../hooks';
5
6
  const BLOCKED_EMOJIS = new Set(['🖕']);
@@ -34,19 +35,17 @@ export function EmojiTab({ onEmojiSelect }) {
34
35
  selected: colors.fillColorNeutral080,
35
36
  },
36
37
  };
37
- return (<View style={styles.container}>
38
- <EmojiKeyboard categoryPosition="top" emojisByCategory={filteredEmojis} onEmojiSelected={handleEmojiSelected} hideHeader enableSearchBar enableRecentlyUsed theme={emojiTheme} styles={{
39
- container: { borderRadius: 0 },
40
- category: {
41
- container: {
42
- borderRadius: 0,
43
- marginTop: -6,
44
- borderBottomWidth: 1,
45
- borderBottomColor: colors.borderColorDefaultDim,
38
+ return (_jsx(View, { style: styles.container, children: _jsx(EmojiKeyboard, { categoryPosition: "top", emojisByCategory: filteredEmojis, onEmojiSelected: handleEmojiSelected, hideHeader: true, enableSearchBar: true, enableRecentlyUsed: true, theme: emojiTheme, styles: {
39
+ container: { borderRadius: 0 },
40
+ category: {
41
+ container: {
42
+ borderRadius: 0,
43
+ marginTop: -6,
44
+ borderBottomWidth: 1,
45
+ borderBottomColor: colors.borderColorDefaultDim,
46
+ },
46
47
  },
47
- },
48
- }}/>
49
- </View>);
48
+ } }) }));
50
49
  }
51
50
  const useStyles = () => {
52
51
  const { colors } = useTheme();
@@ -1 +1 @@
1
- {"version":3,"file":"emoji_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAkB,MAAM,gCAAgC,CAAA;AAChG,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAEtC,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,GAAG,QAAQ;IACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;CAC9D,CAAC,CAAC,CAAA;AAMH,MAAM,UAAU,QAAQ,CAAC,EAAE,aAAa,EAAiB;IACvD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,WAAsB,EAAE,EAAE;QACzB,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAA;IAED,MAAM,UAAU,GAAG;QACjB,SAAS,EAAE,MAAM,CAAC,2BAA2B;QAC7C,MAAM,EAAE,MAAM,CAAC,yBAAyB;QACxC,IAAI,EAAE,MAAM,CAAC,mBAAmB;QAChC,kBAAkB,EAAE,MAAM,CAAC,mBAAmB;QAC9C,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,yBAAyB;YACtC,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,SAAS,EAAE,MAAM,CAAC,2BAA2B;YAC7C,eAAe,EAAE,MAAM,CAAC,mBAAmB;SAC5C;QACD,MAAM,EAAE;YACN,UAAU,EAAE,MAAM,CAAC,mBAAmB;YACtC,IAAI,EAAE,MAAM,CAAC,uBAAuB;YACpC,WAAW,EAAE,MAAM,CAAC,yBAAyB;YAC7C,IAAI,EAAE,MAAM,CAAC,yBAAyB;SACvC;QACD,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC,mBAAmB;SACrC;KACF,CAAA;IAED,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B;MAAA,CAAC,aAAa,CACZ,gBAAgB,CAAC,KAAK,CACtB,gBAAgB,CAAC,CAAC,cAAc,CAAC,CACjC,eAAe,CAAC,CAAC,mBAAmB,CAAC,CACrC,UAAU,CACV,eAAe,CACf,kBAAkB,CAClB,KAAK,CAAC,CAAC,UAAU,CAAC,CAClB,MAAM,CAAC,CAAC;YACN,SAAS,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;YAC9B,QAAQ,EAAE;gBACR,SAAS,EAAE;oBACT,YAAY,EAAE,CAAC;oBACf,SAAS,EAAE,CAAC,CAAC;oBACb,iBAAiB,EAAE,CAAC;oBACpB,iBAAiB,EAAE,MAAM,CAAC,qBAAqB;iBAChD;aACF;SACF,CAAC,EAEN;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,IAAI,EAAE,CAAC;YACP,eAAe,EAAE,MAAM,CAAC,2BAA2B;SACpD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { EmojiKeyboard, emojisByCategory, type EmojiType } from '@planningcenter/emoji-keyboard'\nimport React, { useCallback } from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { useTheme } from '../../hooks'\n\nconst BLOCKED_EMOJIS = new Set(['🖕'])\n\nconst filteredEmojis = emojisByCategory.map(category => ({\n ...category,\n data: category.data.filter(e => !BLOCKED_EMOJIS.has(e.emoji)),\n}))\n\ninterface EmojiTabProps {\n onEmojiSelect: (emoji: string) => void\n}\n\nexport function EmojiTab({ onEmojiSelect }: EmojiTabProps) {\n const styles = useStyles()\n const { colors } = useTheme()\n\n const handleEmojiSelected = useCallback(\n (emojiObject: EmojiType) => {\n onEmojiSelect(emojiObject.emoji)\n },\n [onEmojiSelect]\n )\n\n const emojiTheme = {\n container: colors.fillColorNeutral100Inverted,\n header: colors.textColorDefaultSecondary,\n knob: colors.fillColorNeutral040,\n skinTonesContainer: colors.fillColorNeutral060,\n category: {\n icon: colors.textColorDefaultSecondary,\n iconActive: colors.interaction,\n container: colors.fillColorNeutral100Inverted,\n containerActive: colors.fillColorNeutral080,\n },\n search: {\n background: colors.fillColorNeutral080,\n text: colors.textColorDefaultPrimary,\n placeholder: colors.textColorDefaultSecondary,\n icon: colors.textColorDefaultSecondary,\n },\n emoji: {\n selected: colors.fillColorNeutral080,\n },\n }\n\n return (\n <View style={styles.container}>\n <EmojiKeyboard\n categoryPosition=\"top\"\n emojisByCategory={filteredEmojis}\n onEmojiSelected={handleEmojiSelected}\n hideHeader\n enableSearchBar\n enableRecentlyUsed\n theme={emojiTheme}\n styles={{\n container: { borderRadius: 0 },\n category: {\n container: {\n borderRadius: 0,\n marginTop: -6,\n borderBottomWidth: 1,\n borderBottomColor: colors.borderColorDefaultDim,\n },\n },\n }}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: colors.fillColorNeutral100Inverted,\n },\n })\n}\n"]}
1
+ {"version":3,"file":"emoji_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/emoji_tab.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAkB,MAAM,gCAAgC,CAAA;AAChG,OAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;AAEtC,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,GAAG,QAAQ;IACX,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;CAC9D,CAAC,CAAC,CAAA;AAMH,MAAM,UAAU,QAAQ,CAAC,EAAE,aAAa,EAAiB;IACvD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,WAAsB,EAAE,EAAE;QACzB,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAClC,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAA;IAED,MAAM,UAAU,GAAG;QACjB,SAAS,EAAE,MAAM,CAAC,2BAA2B;QAC7C,MAAM,EAAE,MAAM,CAAC,yBAAyB;QACxC,IAAI,EAAE,MAAM,CAAC,mBAAmB;QAChC,kBAAkB,EAAE,MAAM,CAAC,mBAAmB;QAC9C,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,yBAAyB;YACtC,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,SAAS,EAAE,MAAM,CAAC,2BAA2B;YAC7C,eAAe,EAAE,MAAM,CAAC,mBAAmB;SAC5C;QACD,MAAM,EAAE;YACN,UAAU,EAAE,MAAM,CAAC,mBAAmB;YACtC,IAAI,EAAE,MAAM,CAAC,uBAAuB;YACpC,WAAW,EAAE,MAAM,CAAC,yBAAyB;YAC7C,IAAI,EAAE,MAAM,CAAC,yBAAyB;SACvC;QACD,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC,mBAAmB;SACrC;KACF,CAAA;IAED,OAAO,CACL,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,YAC3B,KAAC,aAAa,IACZ,gBAAgB,EAAC,KAAK,EACtB,gBAAgB,EAAE,cAAc,EAChC,eAAe,EAAE,mBAAmB,EACpC,UAAU,QACV,eAAe,QACf,kBAAkB,QAClB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE;gBACN,SAAS,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE;gBAC9B,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,YAAY,EAAE,CAAC;wBACf,SAAS,EAAE,CAAC,CAAC;wBACb,iBAAiB,EAAE,CAAC;wBACpB,iBAAiB,EAAE,MAAM,CAAC,qBAAqB;qBAChD;iBACF;aACF,GACD,GACG,CACR,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,IAAI,EAAE,CAAC;YACP,eAAe,EAAE,MAAM,CAAC,2BAA2B;SACpD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import { EmojiKeyboard, emojisByCategory, type EmojiType } from '@planningcenter/emoji-keyboard'\nimport React, { useCallback } from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { useTheme } from '../../hooks'\n\nconst BLOCKED_EMOJIS = new Set(['🖕'])\n\nconst filteredEmojis = emojisByCategory.map(category => ({\n ...category,\n data: category.data.filter(e => !BLOCKED_EMOJIS.has(e.emoji)),\n}))\n\ninterface EmojiTabProps {\n onEmojiSelect: (emoji: string) => void\n}\n\nexport function EmojiTab({ onEmojiSelect }: EmojiTabProps) {\n const styles = useStyles()\n const { colors } = useTheme()\n\n const handleEmojiSelected = useCallback(\n (emojiObject: EmojiType) => {\n onEmojiSelect(emojiObject.emoji)\n },\n [onEmojiSelect]\n )\n\n const emojiTheme = {\n container: colors.fillColorNeutral100Inverted,\n header: colors.textColorDefaultSecondary,\n knob: colors.fillColorNeutral040,\n skinTonesContainer: colors.fillColorNeutral060,\n category: {\n icon: colors.textColorDefaultSecondary,\n iconActive: colors.interaction,\n container: colors.fillColorNeutral100Inverted,\n containerActive: colors.fillColorNeutral080,\n },\n search: {\n background: colors.fillColorNeutral080,\n text: colors.textColorDefaultPrimary,\n placeholder: colors.textColorDefaultSecondary,\n icon: colors.textColorDefaultSecondary,\n },\n emoji: {\n selected: colors.fillColorNeutral080,\n },\n }\n\n return (\n <View style={styles.container}>\n <EmojiKeyboard\n categoryPosition=\"top\"\n emojisByCategory={filteredEmojis}\n onEmojiSelected={handleEmojiSelected}\n hideHeader\n enableSearchBar\n enableRecentlyUsed\n theme={emojiTheme}\n styles={{\n container: { borderRadius: 0 },\n category: {\n container: {\n borderRadius: 0,\n marginTop: -6,\n borderBottomWidth: 1,\n borderBottomColor: colors.borderColorDefaultDim,\n },\n },\n }}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: colors.fillColorNeutral100Inverted,\n },\n })\n}\n"]}
@@ -1,8 +1,7 @@
1
- import React from 'react';
2
1
  interface IconGridProps {
3
2
  selectedIconKey: string | null;
4
3
  onIconSelect: (iconKey: string) => void;
5
4
  }
6
- export declare function IconGrid({ selectedIconKey, onIconSelect }: IconGridProps): React.JSX.Element;
5
+ export declare function IconGrid({ selectedIconKey, onIconSelect }: IconGridProps): import("react/jsx-runtime").JSX.Element;
7
6
  export {};
8
7
  //# sourceMappingURL=icon_grid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon_grid.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/icon_grid.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAK1C,UAAU,aAAa;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,wBAAgB,QAAQ,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE,EAAE,aAAa,qBAiCxE"}
1
+ {"version":3,"file":"icon_grid.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/icon_grid.tsx"],"names":[],"mappings":"AAQA,UAAU,aAAa;IACrB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,wBAAgB,QAAQ,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE,EAAE,aAAa,2CAiCxE"}
@@ -1,6 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome';
2
3
  import { PlatformPressable } from '@react-navigation/elements';
3
- import React, { useCallback } from 'react';
4
+ import { useCallback } from 'react';
4
5
  import { FlatList, StyleSheet, useWindowDimensions } from 'react-native';
5
6
  import { useTheme } from '../../hooks';
6
7
  import { AVATAR_ICON_KEYS, GRID_COLUMNS } from './constants';
@@ -8,11 +9,9 @@ export function IconGrid({ selectedIconKey, onIconSelect }) {
8
9
  const styles = useStyles();
9
10
  const renderItem = useCallback(({ item }) => {
10
11
  const isSelected = item === selectedIconKey;
11
- return (<PlatformPressable onPress={() => onIconSelect(item)} style={[styles.cell, isSelected && styles.cellSelected]} accessibilityRole="button" accessibilityLabel={`${item.replace(/-/g, ' ')} icon`} accessibilityState={{ selected: isSelected }}>
12
- <FontAwesomeIcon icon={['fas', item]} size={20} color="white"/>
13
- </PlatformPressable>);
12
+ return (_jsx(PlatformPressable, { onPress: () => onIconSelect(item), style: [styles.cell, isSelected && styles.cellSelected], accessibilityRole: "button", accessibilityLabel: `${item.replace(/-/g, ' ')} icon`, accessibilityState: { selected: isSelected }, children: _jsx(FontAwesomeIcon, { icon: ['fas', item], size: 20, color: "white" }) }));
14
13
  }, [selectedIconKey, onIconSelect, styles.cell, styles.cellSelected]);
15
- return (<FlatList data={AVATAR_ICON_KEYS} numColumns={GRID_COLUMNS} keyExtractor={item => item} renderItem={renderItem} contentContainerStyle={styles.grid} columnWrapperStyle={styles.row} style={styles.list}/>);
14
+ return (_jsx(FlatList, { data: AVATAR_ICON_KEYS, numColumns: GRID_COLUMNS, keyExtractor: item => item, renderItem: renderItem, contentContainerStyle: styles.grid, columnWrapperStyle: styles.row, style: styles.list }));
16
15
  }
17
16
  const PADDING = 16;
18
17
  const GAP = 8;
@@ -1 +1 @@
1
- {"version":3,"file":"icon_grid.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/icon_grid.tsx"],"names":[],"mappings":"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","sourcesContent":["import type { IconName } from '@fortawesome/fontawesome-svg-core'\nimport { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome'\nimport { PlatformPressable } from '@react-navigation/elements'\nimport React, { useCallback } from 'react'\nimport { FlatList, StyleSheet, useWindowDimensions } from 'react-native'\nimport { useTheme } from '../../hooks'\nimport { AVATAR_ICON_KEYS, GRID_COLUMNS } from './constants'\n\ninterface IconGridProps {\n selectedIconKey: string | null\n onIconSelect: (iconKey: string) => void\n}\n\nexport function IconGrid({ selectedIconKey, onIconSelect }: IconGridProps) {\n const styles = useStyles()\n\n const renderItem = useCallback(\n ({ item }: { item: string }) => {\n const isSelected = item === selectedIconKey\n\n return (\n <PlatformPressable\n onPress={() => onIconSelect(item)}\n style={[styles.cell, isSelected && styles.cellSelected]}\n accessibilityRole=\"button\"\n accessibilityLabel={`${item.replace(/-/g, ' ')} icon`}\n accessibilityState={{ selected: isSelected }}\n >\n <FontAwesomeIcon icon={['fas', item as IconName]} size={20} color=\"white\" />\n </PlatformPressable>\n )\n },\n [selectedIconKey, onIconSelect, styles.cell, styles.cellSelected]\n )\n\n return (\n <FlatList\n data={AVATAR_ICON_KEYS}\n numColumns={GRID_COLUMNS}\n keyExtractor={item => item}\n renderItem={renderItem}\n contentContainerStyle={styles.grid}\n columnWrapperStyle={styles.row}\n style={styles.list}\n />\n )\n}\n\nconst PADDING = 16\nconst GAP = 8\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const { width: screenWidth } = useWindowDimensions()\n const cellSize = Math.floor((screenWidth - PADDING * 2 - (GRID_COLUMNS - 1) * GAP) / GRID_COLUMNS)\n\n return StyleSheet.create({\n list: {\n flex: 1,\n },\n grid: {\n padding: PADDING,\n },\n row: {\n gap: GAP,\n marginBottom: GAP,\n },\n cell: {\n width: cellSize,\n height: cellSize,\n borderRadius: cellSize / 2,\n backgroundColor: colors.fillColorNeutral040,\n alignItems: 'center',\n justifyContent: 'center',\n },\n cellSelected: {\n borderWidth: 3,\n borderColor: colors.interaction,\n },\n })\n}\n"]}
1
+ {"version":3,"file":"icon_grid.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/icon_grid.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAO5D,MAAM,UAAU,QAAQ,CAAC,EAAE,eAAe,EAAE,YAAY,EAAiB;IACvE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,IAAI,KAAK,eAAe,CAAA;QAE3C,OAAO,CACL,KAAC,iBAAiB,IAChB,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACjC,KAAK,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,IAAI,MAAM,CAAC,YAAY,CAAC,EACvD,iBAAiB,EAAC,QAAQ,EAC1B,kBAAkB,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EACrD,kBAAkB,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YAE5C,KAAC,eAAe,IAAC,IAAI,EAAE,CAAC,KAAK,EAAE,IAAgB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAC,OAAO,GAAG,GAC1D,CACrB,CAAA;IACH,CAAC,EACD,CAAC,eAAe,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAClE,CAAA;IAED,OAAO,CACL,KAAC,QAAQ,IACP,IAAI,EAAE,gBAAgB,EACtB,UAAU,EAAE,YAAY,EACxB,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAC1B,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,MAAM,CAAC,IAAI,EAClC,kBAAkB,EAAE,MAAM,CAAC,GAAG,EAC9B,KAAK,EAAE,MAAM,CAAC,IAAI,GAClB,CACH,CAAA;AACH,CAAC;AAED,MAAM,OAAO,GAAG,EAAE,CAAA;AAClB,MAAM,GAAG,GAAG,CAAC,CAAA;AAEb,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAC7B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,mBAAmB,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC,CAAA;IAElG,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC;SACR;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,OAAO;SACjB;QACD,GAAG,EAAE;YACH,GAAG,EAAE,GAAG;YACR,YAAY,EAAE,GAAG;SAClB;QACD,IAAI,EAAE;YACJ,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,QAAQ;YAChB,YAAY,EAAE,QAAQ,GAAG,CAAC;YAC1B,eAAe,EAAE,MAAM,CAAC,mBAAmB;YAC3C,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;SACzB;QACD,YAAY,EAAE;YACZ,WAAW,EAAE,CAAC;YACd,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import type { IconName } from '@fortawesome/fontawesome-svg-core'\nimport { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome'\nimport { PlatformPressable } from '@react-navigation/elements'\nimport React, { useCallback } from 'react'\nimport { FlatList, StyleSheet, useWindowDimensions } from 'react-native'\nimport { useTheme } from '../../hooks'\nimport { AVATAR_ICON_KEYS, GRID_COLUMNS } from './constants'\n\ninterface IconGridProps {\n selectedIconKey: string | null\n onIconSelect: (iconKey: string) => void\n}\n\nexport function IconGrid({ selectedIconKey, onIconSelect }: IconGridProps) {\n const styles = useStyles()\n\n const renderItem = useCallback(\n ({ item }: { item: string }) => {\n const isSelected = item === selectedIconKey\n\n return (\n <PlatformPressable\n onPress={() => onIconSelect(item)}\n style={[styles.cell, isSelected && styles.cellSelected]}\n accessibilityRole=\"button\"\n accessibilityLabel={`${item.replace(/-/g, ' ')} icon`}\n accessibilityState={{ selected: isSelected }}\n >\n <FontAwesomeIcon icon={['fas', item as IconName]} size={20} color=\"white\" />\n </PlatformPressable>\n )\n },\n [selectedIconKey, onIconSelect, styles.cell, styles.cellSelected]\n )\n\n return (\n <FlatList\n data={AVATAR_ICON_KEYS}\n numColumns={GRID_COLUMNS}\n keyExtractor={item => item}\n renderItem={renderItem}\n contentContainerStyle={styles.grid}\n columnWrapperStyle={styles.row}\n style={styles.list}\n />\n )\n}\n\nconst PADDING = 16\nconst GAP = 8\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const { width: screenWidth } = useWindowDimensions()\n const cellSize = Math.floor((screenWidth - PADDING * 2 - (GRID_COLUMNS - 1) * GAP) / GRID_COLUMNS)\n\n return StyleSheet.create({\n list: {\n flex: 1,\n },\n grid: {\n padding: PADDING,\n },\n row: {\n gap: GAP,\n marginBottom: GAP,\n },\n cell: {\n width: cellSize,\n height: cellSize,\n borderRadius: cellSize / 2,\n backgroundColor: colors.fillColorNeutral040,\n alignItems: 'center',\n justifyContent: 'center',\n },\n cellSelected: {\n borderWidth: 3,\n borderColor: colors.interaction,\n },\n })\n}\n"]}
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  import type { ImagePickerAsset } from '../../utils/native_adapters/image_picker';
3
2
  interface UploadTabProps {
4
3
  imagePreviewUri: string | null;
5
4
  onImageSelect: (asset: ImagePickerAsset) => void;
6
5
  }
7
- export declare function UploadTab({ imagePreviewUri, onImageSelect }: UploadTabProps): React.JSX.Element;
6
+ export declare function UploadTab({ imagePreviewUri, onImageSelect }: UploadTabProps): import("react/jsx-runtime").JSX.Element;
8
7
  export {};
9
8
  //# sourceMappingURL=upload_tab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upload_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/upload_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAM1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAIhF,UAAU,cAAc;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;CACjD;AAED,wBAAgB,SAAS,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,cAAc,qBAmC3E"}
1
+ {"version":3,"file":"upload_tab.d.ts","sourceRoot":"","sources":["../../../src/screens/avatar_picker/upload_tab.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAA;AAIhF,UAAU,cAAc;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAA;CACjD;AAED,wBAAgB,SAAS,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,cAAc,2CAmC3E"}
@@ -1,4 +1,5 @@
1
- import React, { useCallback } from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useCallback } from 'react';
2
3
  import { Alert, StyleSheet, View } from 'react-native';
3
4
  import { Button } from '../../components';
4
5
  import { useTheme } from '../../hooks';
@@ -22,9 +23,7 @@ export function UploadTab({ imagePreviewUri, onImageSelect }) {
22
23
  }
23
24
  onImageSelect(asset);
24
25
  }, [onImageSelect]);
25
- return (<View style={styles.container}>
26
- <Button title={imagePreviewUri ? 'Change photo' : 'Choose photo'} iconNameLeft="general.image" onPress={pickImage} variant="outline" appearance="interaction" size="md" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}/>
27
- </View>);
26
+ return (_jsx(View, { style: styles.container, children: _jsx(Button, { title: imagePreviewUri ? 'Change photo' : 'Choose photo', iconNameLeft: "general.image", onPress: pickImage, variant: "outline", appearance: "interaction", size: "md", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER_LANDMARK }) }));
28
27
  }
29
28
  const useStyles = () => {
30
29
  const { colors } = useTheme();
@@ -1 +1 @@
1
- {"version":3,"file":"upload_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/upload_tab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAGzD,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA,CAAC,OAAO;AAO9C,MAAM,UAAU,SAAS,CAAC,EAAE,eAAe,EAAE,aAAa,EAAkB;IAC1E,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,CAAC;YACrD,UAAU,EAAE,CAAC,QAAQ,CAAC;YACtB,aAAa,EAAE,IAAI;YACnB,uBAAuB,EAAE,KAAK;SAC/B,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAE,OAAM;QAElD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAE9B,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,aAAa,EAAE,CAAC;YACrD,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,oCAAoC,CAAC,CAAA;YACpE,OAAM;QACR,CAAC;QAED,aAAa,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;IAEnB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAC5B;MAAA,CAAC,MAAM,CACL,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CACzD,YAAY,CAAC,eAAe,CAC5B,OAAO,CAAC,CAAC,SAAS,CAAC,CACnB,OAAO,CAAC,SAAS,CACjB,UAAU,CAAC,aAAa,CACxB,IAAI,CAAC,IAAI,CACT,qBAAqB,CAAC,CAAC,iCAAiC,CAAC,EAE7D;IAAA,EAAE,IAAI,CAAC,CACR,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,IAAI,EAAE,CAAC;YACP,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;YACxB,eAAe,EAAE,MAAM,CAAC,2BAA2B;SACpD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import React, { useCallback } from 'react'\nimport { Alert, StyleSheet, View } from 'react-native'\nimport { Button } from '../../components'\nimport { useTheme } from '../../hooks'\nimport { MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../utils'\nimport { ImagePicker } from '../../utils/native_adapters'\nimport type { ImagePickerAsset } from '../../utils/native_adapters/image_picker'\n\nconst MAX_FILE_SIZE = 10 * 1024 * 1024 // 10MB\n\ninterface UploadTabProps {\n imagePreviewUri: string | null\n onImageSelect: (asset: ImagePickerAsset) => void\n}\n\nexport function UploadTab({ imagePreviewUri, onImageSelect }: UploadTabProps) {\n const styles = useStyles()\n\n const pickImage = useCallback(async () => {\n const result = await ImagePicker.openImageLibraryAsync({\n mediaTypes: ['images'],\n allowsEditing: true,\n allowsMultipleSelection: false,\n })\n\n if (result.canceled || !result.assets?.[0]) return\n\n const asset = result.assets[0]\n\n if (asset.fileSize && asset.fileSize > MAX_FILE_SIZE) {\n Alert.alert('Image too large', 'Please choose an image under 10MB.')\n return\n }\n\n onImageSelect(asset)\n }, [onImageSelect])\n\n return (\n <View style={styles.container}>\n <Button\n title={imagePreviewUri ? 'Change photo' : 'Choose photo'}\n iconNameLeft=\"general.image\"\n onPress={pickImage}\n variant=\"outline\"\n appearance=\"interaction\"\n size=\"md\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: colors.fillColorNeutral100Inverted,\n },\n })\n}\n"]}
1
+ {"version":3,"file":"upload_tab.js","sourceRoot":"","sources":["../../../src/screens/avatar_picker/upload_tab.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAGzD,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA,CAAC,OAAO;AAO9C,MAAM,UAAU,SAAS,CAAC,EAAE,eAAe,EAAE,aAAa,EAAkB;IAC1E,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAE1B,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,CAAC;YACrD,UAAU,EAAE,CAAC,QAAQ,CAAC;YACtB,aAAa,EAAE,IAAI;YACnB,uBAAuB,EAAE,KAAK;SAC/B,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAAE,OAAM;QAElD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAE9B,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,GAAG,aAAa,EAAE,CAAC;YACrD,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,oCAAoC,CAAC,CAAA;YACpE,OAAM;QACR,CAAC;QAED,aAAa,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;IAEnB,OAAO,CACL,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,YAC3B,KAAC,MAAM,IACL,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,EACxD,YAAY,EAAC,eAAe,EAC5B,OAAO,EAAE,SAAS,EAClB,OAAO,EAAC,SAAS,EACjB,UAAU,EAAC,aAAa,EACxB,IAAI,EAAC,IAAI,EACT,qBAAqB,EAAE,iCAAiC,GACxD,GACG,CACR,CAAA;AACH,CAAC;AAED,MAAM,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IAE7B,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE;YACT,IAAI,EAAE,CAAC;YACP,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;YACxB,eAAe,EAAE,MAAM,CAAC,2BAA2B;SACpD;KACF,CAAC,CAAA;AACJ,CAAC,CAAA","sourcesContent":["import React, { useCallback } from 'react'\nimport { Alert, StyleSheet, View } from 'react-native'\nimport { Button } from '../../components'\nimport { useTheme } from '../../hooks'\nimport { MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../utils'\nimport { ImagePicker } from '../../utils/native_adapters'\nimport type { ImagePickerAsset } from '../../utils/native_adapters/image_picker'\n\nconst MAX_FILE_SIZE = 10 * 1024 * 1024 // 10MB\n\ninterface UploadTabProps {\n imagePreviewUri: string | null\n onImageSelect: (asset: ImagePickerAsset) => void\n}\n\nexport function UploadTab({ imagePreviewUri, onImageSelect }: UploadTabProps) {\n const styles = useStyles()\n\n const pickImage = useCallback(async () => {\n const result = await ImagePicker.openImageLibraryAsync({\n mediaTypes: ['images'],\n allowsEditing: true,\n allowsMultipleSelection: false,\n })\n\n if (result.canceled || !result.assets?.[0]) return\n\n const asset = result.assets[0]\n\n if (asset.fileSize && asset.fileSize > MAX_FILE_SIZE) {\n Alert.alert('Image too large', 'Please choose an image under 10MB.')\n return\n }\n\n onImageSelect(asset)\n }, [onImageSelect])\n\n return (\n <View style={styles.container}>\n <Button\n title={imagePreviewUri ? 'Change photo' : 'Choose photo'}\n iconNameLeft=\"general.image\"\n onPress={pickImage}\n variant=\"outline\"\n appearance=\"interaction\"\n size=\"md\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: colors.fillColorNeutral100Inverted,\n },\n })\n}\n"]}
@@ -1,5 +1,4 @@
1
1
  import type { NativeStackNavigationOptions, NativeStackScreenProps } from '@react-navigation/native-stack';
2
- import React from 'react';
3
2
  export declare const BugReportScreenOptions: ({ navigation, }: NativeStackScreenProps<any>) => NativeStackNavigationOptions;
4
- export declare function BugReportScreen(): React.JSX.Element;
3
+ export declare function BugReportScreen(): import("react/jsx-runtime").JSX.Element;
5
4
  //# sourceMappingURL=bug_report_screen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bug_report_screen.d.ts","sourceRoot":"","sources":["../../src/screens/bug_report_screen.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,KAAiD,MAAM,OAAO,CAAA;AAiDrE,eAAO,MAAM,sBAAsB,GAAI,iBAEpC,sBAAsB,CAAC,GAAG,CAAC,KAAG,4BAI/B,CAAA;AAoBF,wBAAgB,eAAe,sBA0S9B"}
1
+ {"version":3,"file":"bug_report_screen.d.ts","sourceRoot":"","sources":["../../src/screens/bug_report_screen.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,gCAAgC,CAAA;AAmDvC,eAAO,MAAM,sBAAsB,GAAI,iBAEpC,sBAAsB,CAAC,GAAG,CAAC,KAAG,4BAI/B,CAAA;AAoBF,wBAAgB,eAAe,4CA0S9B"}
@@ -1,6 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { useNavigation } from '@react-navigation/native';
2
3
  import { startsWith } from 'lodash';
3
- import React, { useCallback, useLayoutEffect, useState } from 'react';
4
+ import { useCallback, useLayoutEffect, useState } from 'react';
4
5
  import { View, StyleSheet, TextInput, Linking, ScrollView, TouchableOpacity, Platform, } from 'react-native';
5
6
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
6
7
  import { Button, Spinner, Text, TextInlineButton, ImageAttachmentPreview, Icon, KeyboardView, } from '../components';
@@ -31,7 +32,7 @@ var BUG_TYPE_OPTIONS;
31
32
  export const BugReportScreenOptions = ({ navigation, }) => ({
32
33
  presentation: 'modal',
33
34
  title: 'Report a bug',
34
- headerLeft: () => <HeaderDismissButton title="Cancel" onPress={() => navigation.goBack()}/>,
35
+ headerLeft: () => _jsx(HeaderDismissButton, { title: "Cancel", onPress: () => navigation.goBack() }),
35
36
  });
36
37
  var QualifiedMobileAppName;
37
38
  (function (QualifiedMobileAppName) {
@@ -116,129 +117,22 @@ export function BugReportScreen() {
116
117
  useLayoutEffect(() => {
117
118
  navigation.setOptions({
118
119
  // eslint-disable-next-line react/no-unstable-nested-components
119
- headerRight: () => (<HeaderTextButton title="Submit" onPress={handleSubmit} disabled={!formValid}/>),
120
+ headerRight: () => (_jsx(HeaderTextButton, { title: "Submit", onPress: handleSubmit, disabled: !formValid })),
120
121
  });
121
122
  }, [formValid, handleSubmit, navigation]);
122
123
  if (status === 'pending') {
123
- return (<View style={[styles.container, styles.fullHeight]}>
124
- <DefaultLoading />
125
- </View>);
124
+ return (_jsx(View, { style: [styles.container, styles.fullHeight], children: _jsx(DefaultLoading, {}) }));
126
125
  }
127
126
  if (status === 'success') {
128
- return (<BlankState.Root>
129
- <BlankState.Imagery name="general.checkCircle" style={styles.successIcon}/>
130
- <BlankState.Content>
131
- <BlankState.Heading style={styles.successTitle}>Thank you!</BlankState.Heading>
132
- <BlankState.Text style={styles.successSubtitle}>
133
- We appreciate you taking the time to help improve {DisplayableAppName[name]}! We'll take
134
- a look at the issue you reported.
135
- </BlankState.Text>
136
- </BlankState.Content>
137
- <BlankState.Button title="Return to chat" onPress={navigation.goBack} size="lg" variant="fill"/>
138
- </BlankState.Root>);
127
+ return (_jsxs(BlankState.Root, { children: [_jsx(BlankState.Imagery, { name: "general.checkCircle", style: styles.successIcon }), _jsxs(BlankState.Content, { children: [_jsx(BlankState.Heading, { style: styles.successTitle, children: "Thank you!" }), _jsxs(BlankState.Text, { style: styles.successSubtitle, children: ["We appreciate you taking the time to help improve ", DisplayableAppName[name], "! We'll take a look at the issue you reported."] })] }), _jsx(BlankState.Button, { title: "Return to chat", onPress: navigation.goBack, size: "lg", variant: "fill" })] }));
139
128
  }
140
129
  if (status === 'error') {
141
- return (<View style={styles.container}>
142
- <Text>
143
- This is embarrassing, we can't submit your bug report right now. If you still need help or
144
- would like to submit this bug report another way please{' '}
145
- <TextInlineButton accessibilityRole="link" onPress={() => Linking.openURL('https://support.planningcenteronline.com/hc/en-us/requests/new')}>
146
- contact our help center
147
- </TextInlineButton>
148
- .
149
- </Text>
150
- <Button title="Return to chat" onPress={navigation.goBack} variant="fill" size="lg"/>
151
- </View>);
130
+ return (_jsxs(View, { style: styles.container, children: [_jsxs(Text, { children: ["This is embarrassing, we can't submit your bug report right now. If you still need help or would like to submit this bug report another way please", ' ', _jsx(TextInlineButton, { accessibilityRole: "link", onPress: () => Linking.openURL('https://support.planningcenteronline.com/hc/en-us/requests/new'), children: "contact our help center" }), "."] }), _jsx(Button, { title: "Return to chat", onPress: navigation.goBack, variant: "fill", size: "lg" })] }));
152
131
  }
153
- return (<KeyboardView>
154
- <ScrollView contentContainerStyle={styles.container}>
155
- <Text style={styles.description}>
156
- Thanks for helping us improve {DisplayableAppName[name]}. We won't be able to respond to
157
- your submission, but your feedback helps us improve the experience helps us improve the
158
- experience.
159
- </Text>
160
-
161
- <View style={styles.textInputContainer}>
162
- <Text style={styles.fieldLabel}>
163
- Where did you experience the issue? <Text style={styles.required}>*</Text>
164
- </Text>
165
- <TouchableOpacity style={styles.pickerButton} onPress={() => setShowBugTypePicker(true)}>
166
- <Text style={[styles.pickerText, !bugType && styles.pickerPlaceholder]}>{bugType}</Text>
167
- <Icon name="general.downChevron" style={styles.pickerArrow} accessibilityElementsHidden/>
168
- </TouchableOpacity>
169
- </View>
170
-
171
- <SafeAreaModal visible={showBugTypePicker} animationType="slide" presentationStyle="pageSheet" onRequestClose={() => setShowBugTypePicker(false)}>
172
- <View style={styles.modalContainer}>
173
- <View style={styles.modalHeader}>
174
- <HeaderDismissButton title="Cancel" onPress={() => setShowBugTypePicker(false)}/>
175
- <Text style={styles.modalTitle}>Select Bug Type</Text>
176
- <View style={styles.modalHeaderSpacer}/>
177
- </View>
178
- <ScrollView style={styles.modalContent}>
179
- {Object.values(BUG_TYPE_OPTIONS).map(option => (<TouchableOpacity key={option} style={styles.modalOption} onPress={() => {
180
- setBugType(option);
181
- setShowBugTypePicker(false);
182
- }}>
183
- <Text style={styles.modalOptionText}>{option}</Text>
184
- {bugType === option && (<Icon name="general.check" style={styles.modalCheckmark} accessibilityElementsHidden/>)}
185
- </TouchableOpacity>))}
186
- </ScrollView>
187
- </View>
188
- </SafeAreaModal>
189
-
190
- <View style={styles.textInputContainer}>
191
- <Text style={styles.fieldLabel}>
192
- What were you trying to do when you encountered the bug?{' '}
193
- <Text style={styles.required}>*</Text>
194
- </Text>
195
- <TextInput style={styles.textInput} multiline placeholder="Description" value={whatWereDoing} onChangeText={setWhatWereDoing} maxLength={MAX_DESCRIPTION_LENGTH}/>
196
- {whatWereDoing.length >= MAX_DESCRIPTION_LENGTH - 100 && (<Text variant="footnote">
197
- {whatWereDoing.length}/{MAX_DESCRIPTION_LENGTH}
198
- </Text>)}
199
- </View>
200
-
201
- <View style={styles.textInputContainer}>
202
- <Text style={styles.fieldLabel}>
203
- What did you expect to happen? Please describe what actually happened.{' '}
204
- <Text style={styles.required}>*</Text>
205
- </Text>
206
- <TextInput style={styles.textInput} multiline placeholder="Description" value={whatExpected} onChangeText={setWhatExpected} maxLength={MAX_DESCRIPTION_LENGTH}/>
207
- {whatExpected.length >= MAX_DESCRIPTION_LENGTH - 100 && (<Text variant="footnote">
208
- {whatExpected.length}/{MAX_DESCRIPTION_LENGTH}
209
- </Text>)}
210
- </View>
211
-
212
- <View style={styles.attachmentSection}>
213
- <View style={styles.attachmentHeader}>
214
- <Text style={styles.attachmentLabel}>
215
- Attachment <Text style={styles.subLabel}>(optional)</Text>
216
- </Text>
217
- {uploading && <Spinner />}
218
- </View>
219
- {uploadError && <Text style={styles.attachmentErrorText}>{uploadError}</Text>}
220
- {attachment ? (<View style={styles.attachmentPreviewContainer}>
221
- {isImageAttachment ? (<ImageAttachmentPreview uri={imagePreviewURI} fileName={attachment.name} onRemovePress={handleRemoveAttachment}/>) : (<VideoAttachmentPreview name={attachment.name} onRemovePress={handleRemoveAttachment}/>)}
222
- </View>) : (<Button title="Attach a screenshot or recording" accessibilityHint="Opens your device's image gallery" iconNameLeft="general.paperclip" onPress={pickImage} size="sm" variant="outline" style={styles.attachButton} disabled={uploading || Boolean(attachment)}/>)}
223
- <Text variant="footnote">
224
- Screenshots and screen recordings help us reproduce and fix issues faster.{' '}
225
- <TextInlineButton accessibilityRole="link" variant="footnote" onPress={() => Linking.openURL(VIDEO_RECORDING_HELP_URL)}>
226
- How to record your screen
227
- </TextInlineButton>
228
- </Text>
229
- </View>
230
-
231
- <View style={styles.footer}>
232
- <Text variant="footnote">
233
- For details on how we process your data and ensure its security, please refer to our{' '}
234
- <TextInlineButton accessibilityRole="link" variant="footnote" onPress={() => Linking.openURL('https://www.planningcenter.com/privacy')}>
235
- Privacy Policy
236
- </TextInlineButton>
237
- .
238
- </Text>
239
- </View>
240
- </ScrollView>
241
- </KeyboardView>);
132
+ return (_jsx(KeyboardView, { children: _jsxs(ScrollView, { contentContainerStyle: styles.container, children: [_jsxs(Text, { style: styles.description, children: ["Thanks for helping us improve ", DisplayableAppName[name], ". We won't be able to respond to your submission, but your feedback helps us improve the experience helps us improve the experience."] }), _jsxs(View, { style: styles.textInputContainer, children: [_jsxs(Text, { style: styles.fieldLabel, children: ["Where did you experience the issue? ", _jsx(Text, { style: styles.required, children: "*" })] }), _jsxs(TouchableOpacity, { style: styles.pickerButton, onPress: () => setShowBugTypePicker(true), children: [_jsx(Text, { style: [styles.pickerText, !bugType && styles.pickerPlaceholder], children: bugType }), _jsx(Icon, { name: "general.downChevron", style: styles.pickerArrow, accessibilityElementsHidden: true })] })] }), _jsx(SafeAreaModal, { visible: showBugTypePicker, animationType: "slide", presentationStyle: "pageSheet", onRequestClose: () => setShowBugTypePicker(false), children: _jsxs(View, { style: styles.modalContainer, children: [_jsxs(View, { style: styles.modalHeader, children: [_jsx(HeaderDismissButton, { title: "Cancel", onPress: () => setShowBugTypePicker(false) }), _jsx(Text, { style: styles.modalTitle, children: "Select Bug Type" }), _jsx(View, { style: styles.modalHeaderSpacer })] }), _jsx(ScrollView, { style: styles.modalContent, children: Object.values(BUG_TYPE_OPTIONS).map(option => (_jsxs(TouchableOpacity, { style: styles.modalOption, onPress: () => {
133
+ setBugType(option);
134
+ setShowBugTypePicker(false);
135
+ }, children: [_jsx(Text, { style: styles.modalOptionText, children: option }), bugType === option && (_jsx(Icon, { name: "general.check", style: styles.modalCheckmark, accessibilityElementsHidden: true }))] }, option))) })] }) }), _jsxs(View, { style: styles.textInputContainer, children: [_jsxs(Text, { style: styles.fieldLabel, children: ["What were you trying to do when you encountered the bug?", ' ', _jsx(Text, { style: styles.required, children: "*" })] }), _jsx(TextInput, { style: styles.textInput, multiline: true, placeholder: "Description", value: whatWereDoing, onChangeText: setWhatWereDoing, maxLength: MAX_DESCRIPTION_LENGTH }), whatWereDoing.length >= MAX_DESCRIPTION_LENGTH - 100 && (_jsxs(Text, { variant: "footnote", children: [whatWereDoing.length, "/", MAX_DESCRIPTION_LENGTH] }))] }), _jsxs(View, { style: styles.textInputContainer, children: [_jsxs(Text, { style: styles.fieldLabel, children: ["What did you expect to happen? Please describe what actually happened.", ' ', _jsx(Text, { style: styles.required, children: "*" })] }), _jsx(TextInput, { style: styles.textInput, multiline: true, placeholder: "Description", value: whatExpected, onChangeText: setWhatExpected, maxLength: MAX_DESCRIPTION_LENGTH }), whatExpected.length >= MAX_DESCRIPTION_LENGTH - 100 && (_jsxs(Text, { variant: "footnote", children: [whatExpected.length, "/", MAX_DESCRIPTION_LENGTH] }))] }), _jsxs(View, { style: styles.attachmentSection, children: [_jsxs(View, { style: styles.attachmentHeader, children: [_jsxs(Text, { style: styles.attachmentLabel, children: ["Attachment ", _jsx(Text, { style: styles.subLabel, children: "(optional)" })] }), uploading && _jsx(Spinner, {})] }), uploadError && _jsx(Text, { style: styles.attachmentErrorText, children: uploadError }), attachment ? (_jsx(View, { style: styles.attachmentPreviewContainer, children: isImageAttachment ? (_jsx(ImageAttachmentPreview, { uri: imagePreviewURI, fileName: attachment.name, onRemovePress: handleRemoveAttachment })) : (_jsx(VideoAttachmentPreview, { name: attachment.name, onRemovePress: handleRemoveAttachment })) })) : (_jsx(Button, { title: "Attach a screenshot or recording", accessibilityHint: "Opens your device's image gallery", iconNameLeft: "general.paperclip", onPress: pickImage, size: "sm", variant: "outline", style: styles.attachButton, disabled: uploading || Boolean(attachment) })), _jsxs(Text, { variant: "footnote", children: ["Screenshots and screen recordings help us reproduce and fix issues faster.", ' ', _jsx(TextInlineButton, { accessibilityRole: "link", variant: "footnote", onPress: () => Linking.openURL(VIDEO_RECORDING_HELP_URL), children: "How to record your screen" })] })] }), _jsx(View, { style: styles.footer, children: _jsxs(Text, { variant: "footnote", children: ["For details on how we process your data and ensure its security, please refer to our", ' ', _jsx(TextInlineButton, { accessibilityRole: "link", variant: "footnote", onPress: () => Linking.openURL('https://www.planningcenter.com/privacy'), children: "Privacy Policy" }), "."] }) })] }) }));
242
136
  }
243
137
  const VIDEO_RECORDING_HELP_URL = Platform.select({
244
138
  android: 'https://support.google.com/android/answer/9075928?hl=en',