@planningcenter/chat-react-native 3.42.2-qa-staging.2 → 3.42.2-qa-821.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (646) 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 +3 -3
  82. package/build/components/conversation/messages_disabled_banners.d.ts.map +1 -1
  83. package/build/components/conversation/messages_disabled_banners.js +5 -8
  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 +12 -76
  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 +2 -4
  126. package/build/components/conversations/unread_count_badge.d.ts.map +1 -1
  127. package/build/components/conversations/unread_count_badge.js +7 -12
  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 +1 -1
  288. package/build/contexts/chat_context.d.ts.map +1 -1
  289. package/build/contexts/chat_context.js +2 -1
  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/use_animated_message_background_color.d.ts +2 -2
  304. package/build/hooks/use_conversation.d.ts +1 -1
  305. package/build/hooks/use_conversation.d.ts.map +1 -1
  306. package/build/hooks/use_conversation.js +0 -2
  307. package/build/hooks/use_conversation.js.map +1 -1
  308. package/build/hooks/use_conversation_jolt_events.d.ts.map +1 -1
  309. package/build/hooks/use_conversation_jolt_events.js +19 -4
  310. package/build/hooks/use_conversation_jolt_events.js.map +1 -1
  311. package/build/hooks/use_conversation_membership.d.ts +1 -1
  312. package/build/hooks/use_conversation_membership.d.ts.map +1 -1
  313. package/build/hooks/use_conversation_messages.d.ts +1 -0
  314. package/build/hooks/use_conversation_messages.d.ts.map +1 -1
  315. package/build/hooks/use_conversation_messages.js +2 -2
  316. package/build/hooks/use_conversation_messages.js.map +1 -1
  317. package/build/hooks/use_conversations_actions.d.ts +36 -36
  318. package/build/hooks/use_conversations_actions.d.ts.map +1 -1
  319. package/build/hooks/use_conversations_actions.js +1 -3
  320. package/build/hooks/use_conversations_actions.js.map +1 -1
  321. package/build/hooks/use_mark_latest_message_read.d.ts.map +1 -1
  322. package/build/hooks/use_mark_latest_message_read.js +4 -3
  323. package/build/hooks/use_mark_latest_message_read.js.map +1 -1
  324. package/build/hooks/use_person_settings.d.ts +1 -1
  325. package/build/hooks/use_suspense_api.d.ts.map +1 -1
  326. package/build/hooks/use_suspense_api.js +7 -1
  327. package/build/hooks/use_suspense_api.js.map +1 -1
  328. package/build/index.d.ts +2 -1
  329. package/build/index.d.ts.map +1 -1
  330. package/build/index.js.map +1 -1
  331. package/build/navigation/chat_access_gate.d.ts +2 -2
  332. package/build/navigation/chat_access_gate.d.ts.map +1 -1
  333. package/build/navigation/chat_access_gate.js +6 -5
  334. package/build/navigation/chat_access_gate.js.map +1 -1
  335. package/build/navigation/index.d.ts +35 -36
  336. package/build/navigation/index.d.ts.map +1 -1
  337. package/build/navigation/index.js +19 -21
  338. package/build/navigation/index.js.map +1 -1
  339. package/build/navigation/screenLayout.d.ts +2 -2
  340. package/build/navigation/screenLayout.d.ts.map +1 -1
  341. package/build/navigation/screenLayout.js +3 -9
  342. package/build/navigation/screenLayout.js.map +1 -1
  343. package/build/polyfills/events/EventTarget.d.ts +1 -1
  344. package/build/polyfills/events/EventTarget.d.ts.map +1 -1
  345. package/build/polyfills/events/EventTarget.js.map +1 -1
  346. package/build/screens/age_check/age_check_required_screen.d.ts +1 -2
  347. package/build/screens/age_check/age_check_required_screen.d.ts.map +1 -1
  348. package/build/screens/age_check/age_check_required_screen.js +3 -46
  349. package/build/screens/age_check/age_check_required_screen.js.map +1 -1
  350. package/build/screens/age_check/age_check_underage_screen.d.ts +1 -2
  351. package/build/screens/age_check/age_check_underage_screen.d.ts.map +1 -1
  352. package/build/screens/age_check/age_check_underage_screen.js +2 -25
  353. package/build/screens/age_check/age_check_underage_screen.js.map +1 -1
  354. package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts +1 -2
  355. package/build/screens/age_check/components/age_check_select_birthdate_modal.d.ts.map +1 -1
  356. package/build/screens/age_check/components/age_check_select_birthdate_modal.js +6 -25
  357. package/build/screens/age_check/components/age_check_select_birthdate_modal.js.map +1 -1
  358. package/build/screens/attachment_actions/attachment_actions_screen.d.ts +1 -2
  359. package/build/screens/attachment_actions/attachment_actions_screen.d.ts.map +1 -1
  360. package/build/screens/attachment_actions/attachment_actions_screen.js +3 -5
  361. package/build/screens/attachment_actions/attachment_actions_screen.js.map +1 -1
  362. package/build/screens/avatar_picker/avatar_picker_screen.d.ts +1 -2
  363. package/build/screens/avatar_picker/avatar_picker_screen.d.ts.map +1 -1
  364. package/build/screens/avatar_picker/avatar_picker_screen.js +9 -36
  365. package/build/screens/avatar_picker/avatar_picker_screen.js.map +1 -1
  366. package/build/screens/avatar_picker/avatar_preview.d.ts +1 -1
  367. package/build/screens/avatar_picker/avatar_preview.d.ts.map +1 -1
  368. package/build/screens/avatar_picker/avatar_preview.js +5 -9
  369. package/build/screens/avatar_picker/avatar_preview.js.map +1 -1
  370. package/build/screens/avatar_picker/color_picker.d.ts +1 -2
  371. package/build/screens/avatar_picker/color_picker.d.ts.map +1 -1
  372. package/build/screens/avatar_picker/color_picker.js +4 -5
  373. package/build/screens/avatar_picker/color_picker.js.map +1 -1
  374. package/build/screens/avatar_picker/emoji_tab.d.ts +1 -2
  375. package/build/screens/avatar_picker/emoji_tab.d.ts.map +1 -1
  376. package/build/screens/avatar_picker/emoji_tab.js +12 -13
  377. package/build/screens/avatar_picker/emoji_tab.js.map +1 -1
  378. package/build/screens/avatar_picker/icon_grid.d.ts +1 -2
  379. package/build/screens/avatar_picker/icon_grid.d.ts.map +1 -1
  380. package/build/screens/avatar_picker/icon_grid.js +4 -5
  381. package/build/screens/avatar_picker/icon_grid.js.map +1 -1
  382. package/build/screens/avatar_picker/upload_tab.d.ts +1 -2
  383. package/build/screens/avatar_picker/upload_tab.d.ts.map +1 -1
  384. package/build/screens/avatar_picker/upload_tab.js +3 -4
  385. package/build/screens/avatar_picker/upload_tab.js.map +1 -1
  386. package/build/screens/bug_report_screen.d.ts +1 -2
  387. package/build/screens/bug_report_screen.d.ts.map +1 -1
  388. package/build/screens/bug_report_screen.js +11 -117
  389. package/build/screens/bug_report_screen.js.map +1 -1
  390. package/build/screens/conversation/message_read_receipts_screen.d.ts +1 -2
  391. package/build/screens/conversation/message_read_receipts_screen.d.ts.map +1 -1
  392. package/build/screens/conversation/message_read_receipts_screen.js +4 -20
  393. package/build/screens/conversation/message_read_receipts_screen.js.map +1 -1
  394. package/build/screens/conversation_details_screen.d.ts +1 -2
  395. package/build/screens/conversation_details_screen.d.ts.map +1 -1
  396. package/build/screens/conversation_details_screen.js +43 -106
  397. package/build/screens/conversation_details_screen.js.map +1 -1
  398. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts +1 -1
  399. package/build/screens/conversation_filter_recipients/components/checkbox_row.d.ts.map +1 -1
  400. package/build/screens/conversation_filter_recipients/components/checkbox_row.js +3 -9
  401. package/build/screens/conversation_filter_recipients/components/checkbox_row.js.map +1 -1
  402. package/build/screens/conversation_filter_recipients/components/header_row.d.ts +1 -1
  403. package/build/screens/conversation_filter_recipients/components/header_row.d.ts.map +1 -1
  404. package/build/screens/conversation_filter_recipients/components/header_row.js +2 -12
  405. package/build/screens/conversation_filter_recipients/components/header_row.js.map +1 -1
  406. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts +1 -2
  407. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.d.ts.map +1 -1
  408. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js +20 -44
  409. package/build/screens/conversation_filter_recipients/conversation_filter_recipients_screen.js.map +1 -1
  410. package/build/screens/conversation_filters/components/conversation_filters.d.ts +1 -2
  411. package/build/screens/conversation_filters/components/conversation_filters.d.ts.map +1 -1
  412. package/build/screens/conversation_filters/components/conversation_filters.js +10 -11
  413. package/build/screens/conversation_filters/components/conversation_filters.js.map +1 -1
  414. package/build/screens/conversation_filters/components/rows.d.ts +6 -6
  415. package/build/screens/conversation_filters/components/rows.d.ts.map +1 -1
  416. package/build/screens/conversation_filters/components/rows.js +7 -34
  417. package/build/screens/conversation_filters/components/rows.js.map +1 -1
  418. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts +1 -1
  419. package/build/screens/conversation_filters/context/conversation_filter_context.d.ts.map +1 -1
  420. package/build/screens/conversation_filters/context/conversation_filter_context.js +2 -1
  421. package/build/screens/conversation_filters/context/conversation_filter_context.js.map +1 -1
  422. package/build/screens/conversation_filters/group_filters.d.ts +1 -2
  423. package/build/screens/conversation_filters/group_filters.d.ts.map +1 -1
  424. package/build/screens/conversation_filters/group_filters.js +2 -2
  425. package/build/screens/conversation_filters/group_filters.js.map +1 -1
  426. package/build/screens/conversation_filters/team_filters.d.ts +1 -2
  427. package/build/screens/conversation_filters/team_filters.d.ts.map +1 -1
  428. package/build/screens/conversation_filters/team_filters.js +2 -2
  429. package/build/screens/conversation_filters/team_filters.js.map +1 -1
  430. package/build/screens/conversation_filters_screen.d.ts +1 -2
  431. package/build/screens/conversation_filters_screen.d.ts.map +1 -1
  432. package/build/screens/conversation_filters_screen.js +4 -16
  433. package/build/screens/conversation_filters_screen.js.map +1 -1
  434. package/build/screens/conversation_new/components/avatar_selection_row.d.ts +2 -3
  435. package/build/screens/conversation_new/components/avatar_selection_row.d.ts.map +1 -1
  436. package/build/screens/conversation_new/components/avatar_selection_row.js +6 -16
  437. package/build/screens/conversation_new/components/avatar_selection_row.js.map +1 -1
  438. package/build/screens/conversation_new/components/filter_by_plan.d.ts +3 -4
  439. package/build/screens/conversation_new/components/filter_by_plan.d.ts.map +1 -1
  440. package/build/screens/conversation_new/components/filter_by_plan.js +22 -46
  441. package/build/screens/conversation_new/components/filter_by_plan.js.map +1 -1
  442. package/build/screens/conversation_new/components/form_list.d.ts +2 -3
  443. package/build/screens/conversation_new/components/form_list.d.ts.map +1 -1
  444. package/build/screens/conversation_new/components/form_list.js +4 -6
  445. package/build/screens/conversation_new/components/form_list.js.map +1 -1
  446. package/build/screens/conversation_new/components/gender_filter_toggle.d.ts +1 -2
  447. package/build/screens/conversation_new/components/gender_filter_toggle.d.ts.map +1 -1
  448. package/build/screens/conversation_new/components/gender_filter_toggle.js +4 -20
  449. package/build/screens/conversation_new/components/gender_filter_toggle.js.map +1 -1
  450. package/build/screens/conversation_new/components/groups_form.d.ts +1 -2
  451. package/build/screens/conversation_new/components/groups_form.d.ts.map +1 -1
  452. package/build/screens/conversation_new/components/groups_form.js +4 -30
  453. package/build/screens/conversation_new/components/groups_form.js.map +1 -1
  454. package/build/screens/conversation_new/components/services_form.d.ts +1 -2
  455. package/build/screens/conversation_new/components/services_form.d.ts.map +1 -1
  456. package/build/screens/conversation_new/components/services_form.js +27 -61
  457. package/build/screens/conversation_new/components/services_form.js.map +1 -1
  458. package/build/screens/conversation_new/components/source_app_error_card.d.ts +1 -1
  459. package/build/screens/conversation_new/components/source_app_error_card.d.ts.map +1 -1
  460. package/build/screens/conversation_new/components/source_app_error_card.js +2 -3
  461. package/build/screens/conversation_new/components/source_app_error_card.js.map +1 -1
  462. package/build/screens/conversation_new/conversation_new_screen.d.ts +1 -2
  463. package/build/screens/conversation_new/conversation_new_screen.d.ts.map +1 -1
  464. package/build/screens/conversation_new/conversation_new_screen.js +4 -4
  465. package/build/screens/conversation_new/conversation_new_screen.js.map +1 -1
  466. package/build/screens/conversation_notification_level_select_screen.d.ts +1 -2
  467. package/build/screens/conversation_notification_level_select_screen.d.ts.map +1 -1
  468. package/build/screens/conversation_notification_level_select_screen.js +4 -6
  469. package/build/screens/conversation_notification_level_select_screen.js.map +1 -1
  470. package/build/screens/conversation_screen.d.ts +2 -3
  471. package/build/screens/conversation_screen.d.ts.map +1 -1
  472. package/build/screens/conversation_screen.js +25 -66
  473. package/build/screens/conversation_screen.js.map +1 -1
  474. package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts +1 -1
  475. package/build/screens/conversation_select_recipients/components/groups_recipient_row.d.ts.map +1 -1
  476. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js +2 -1
  477. package/build/screens/conversation_select_recipients/components/groups_recipient_row.js.map +1 -1
  478. package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts +1 -2
  479. package/build/screens/conversation_select_recipients/components/recipient_link_row.d.ts.map +1 -1
  480. package/build/screens/conversation_select_recipients/components/recipient_link_row.js +2 -15
  481. package/build/screens/conversation_select_recipients/components/recipient_link_row.js.map +1 -1
  482. package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts +1 -2
  483. package/build/screens/conversation_select_recipients/components/restricted_group_row.d.ts.map +1 -1
  484. package/build/screens/conversation_select_recipients/components/restricted_group_row.js +2 -14
  485. package/build/screens/conversation_select_recipients/components/restricted_group_row.js.map +1 -1
  486. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts +1 -1
  487. package/build/screens/conversation_select_recipients/components/team_recipient_row.d.ts.map +1 -1
  488. package/build/screens/conversation_select_recipients/components/team_recipient_row.js +2 -1
  489. package/build/screens/conversation_select_recipients/components/team_recipient_row.js.map +1 -1
  490. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts +1 -1
  491. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts.map +1 -1
  492. package/build/screens/conversation_select_recipients/components/view_more_link_row.js +2 -5
  493. package/build/screens/conversation_select_recipients/components/view_more_link_row.js.map +1 -1
  494. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts +1 -2
  495. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.d.ts.map +1 -1
  496. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js +4 -11
  497. package/build/screens/conversation_select_recipients/conversation_new_entry_screen.js.map +1 -1
  498. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts +1 -1
  499. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts.map +1 -1
  500. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js +11 -83
  501. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js.map +1 -1
  502. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts +1 -2
  503. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.d.ts.map +1 -1
  504. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js +7 -14
  505. package/build/screens/conversation_select_recipients/conversation_select_group_recipients_screen.js.map +1 -1
  506. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts +1 -2
  507. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.d.ts.map +1 -1
  508. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js +15 -18
  509. package/build/screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen.js.map +1 -1
  510. package/build/screens/conversation_select_type_screen.d.ts +1 -2
  511. package/build/screens/conversation_select_type_screen.d.ts.map +1 -1
  512. package/build/screens/conversation_select_type_screen.js +3 -10
  513. package/build/screens/conversation_select_type_screen.js.map +1 -1
  514. package/build/screens/conversations/components/chat_group_badge.d.ts +1 -2
  515. package/build/screens/conversations/components/chat_group_badge.d.ts.map +1 -1
  516. package/build/screens/conversations/components/chat_group_badge.js +3 -4
  517. package/build/screens/conversations/components/chat_group_badge.js.map +1 -1
  518. package/build/screens/conversations/components/list_header_action_button.d.ts +1 -2
  519. package/build/screens/conversations/components/list_header_action_button.d.ts.map +1 -1
  520. package/build/screens/conversations/components/list_header_action_button.js +3 -5
  521. package/build/screens/conversations/components/list_header_action_button.js.map +1 -1
  522. package/build/screens/conversations/components/list_header_component.d.ts +1 -2
  523. package/build/screens/conversations/components/list_header_component.d.ts.map +1 -1
  524. package/build/screens/conversations/components/list_header_component.js +19 -42
  525. package/build/screens/conversations/components/list_header_component.js.map +1 -1
  526. package/build/screens/conversations/conversations_screen.d.ts +1 -2
  527. package/build/screens/conversations/conversations_screen.d.ts.map +1 -1
  528. package/build/screens/conversations/conversations_screen.js +2 -6
  529. package/build/screens/conversations/conversations_screen.js.map +1 -1
  530. package/build/screens/design_system_screen.d.ts +1 -2
  531. package/build/screens/design_system_screen.d.ts.map +1 -1
  532. package/build/screens/design_system_screen.js +35 -558
  533. package/build/screens/design_system_screen.js.map +1 -1
  534. package/build/screens/get_help_screen.d.ts +1 -1
  535. package/build/screens/get_help_screen.d.ts.map +1 -1
  536. package/build/screens/get_help_screen.js +4 -25
  537. package/build/screens/get_help_screen.js.map +1 -1
  538. package/build/screens/group_notification_level_select_screen.d.ts +1 -2
  539. package/build/screens/group_notification_level_select_screen.d.ts.map +1 -1
  540. package/build/screens/group_notification_level_select_screen.js +2 -4
  541. package/build/screens/group_notification_level_select_screen.js.map +1 -1
  542. package/build/screens/group_notification_settings_screen.d.ts +1 -2
  543. package/build/screens/group_notification_settings_screen.d.ts.map +1 -1
  544. package/build/screens/group_notification_settings_screen.js +3 -25
  545. package/build/screens/group_notification_settings_screen.js.map +1 -1
  546. package/build/screens/message_actions_screen.d.ts +1 -2
  547. package/build/screens/message_actions_screen.d.ts.map +1 -1
  548. package/build/screens/message_actions_screen.js +12 -28
  549. package/build/screens/message_actions_screen.js.map +1 -1
  550. package/build/screens/message_report/components/message_preview.d.ts +1 -2
  551. package/build/screens/message_report/components/message_preview.d.ts.map +1 -1
  552. package/build/screens/message_report/components/message_preview.js +2 -22
  553. package/build/screens/message_report/components/message_preview.js.map +1 -1
  554. package/build/screens/message_report/components/report_reason_list.d.ts +1 -2
  555. package/build/screens/message_report/components/report_reason_list.d.ts.map +1 -1
  556. package/build/screens/message_report/components/report_reason_list.js +4 -13
  557. package/build/screens/message_report/components/report_reason_list.js.map +1 -1
  558. package/build/screens/message_report_screen.d.ts +1 -2
  559. package/build/screens/message_report_screen.d.ts.map +1 -1
  560. package/build/screens/message_report_screen.js +9 -61
  561. package/build/screens/message_report_screen.js.map +1 -1
  562. package/build/screens/not_found.d.ts +1 -2
  563. package/build/screens/not_found.d.ts.map +1 -1
  564. package/build/screens/not_found.js +2 -5
  565. package/build/screens/not_found.js.map +1 -1
  566. package/build/screens/notification_settings/hooks/groups.d.ts +1 -1
  567. package/build/screens/notification_settings/hooks/groups.d.ts.map +1 -1
  568. package/build/screens/notification_settings_screen.d.ts +1 -2
  569. package/build/screens/notification_settings_screen.d.ts.map +1 -1
  570. package/build/screens/notification_settings_screen.js +28 -66
  571. package/build/screens/notification_settings_screen.js.map +1 -1
  572. package/build/screens/preferred_app_selection_screen.d.ts +1 -2
  573. package/build/screens/preferred_app_selection_screen.d.ts.map +1 -1
  574. package/build/screens/preferred_app_selection_screen.js +3 -21
  575. package/build/screens/preferred_app_selection_screen.js.map +1 -1
  576. package/build/screens/reactions_screen.d.ts +1 -2
  577. package/build/screens/reactions_screen.d.ts.map +1 -1
  578. package/build/screens/reactions_screen.js +7 -19
  579. package/build/screens/reactions_screen.js.map +1 -1
  580. package/build/screens/send_giphy_screen.d.ts +1 -2
  581. package/build/screens/send_giphy_screen.d.ts.map +1 -1
  582. package/build/screens/send_giphy_screen.js +5 -31
  583. package/build/screens/send_giphy_screen.js.map +1 -1
  584. package/build/screens/settings_screen.d.ts +1 -2
  585. package/build/screens/settings_screen.d.ts.map +1 -1
  586. package/build/screens/settings_screen.js +4 -26
  587. package/build/screens/settings_screen.js.map +1 -1
  588. package/build/screens/system_message_people_screen.d.ts +1 -2
  589. package/build/screens/system_message_people_screen.d.ts.map +1 -1
  590. package/build/screens/system_message_people_screen.js +4 -10
  591. package/build/screens/system_message_people_screen.js.map +1 -1
  592. package/build/screens/team_conversation_screen.d.ts +1 -1
  593. package/build/screens/team_conversation_screen.d.ts.map +1 -1
  594. package/build/screens/team_conversation_screen.js +4 -12
  595. package/build/screens/team_conversation_screen.js.map +1 -1
  596. package/build/types/resources/conversation.d.ts +1 -10
  597. package/build/types/resources/conversation.d.ts.map +1 -1
  598. package/build/types/resources/conversation.js.map +1 -1
  599. package/build/utils/client/client.d.ts.map +1 -1
  600. package/build/utils/client/client.js +1 -2
  601. package/build/utils/client/client.js.map +1 -1
  602. package/build/utils/request/conversation.d.ts.map +1 -1
  603. package/build/utils/request/conversation.js +0 -2
  604. package/build/utils/request/conversation.js.map +1 -1
  605. package/build/utils/response_error.d.ts +0 -1
  606. package/build/utils/response_error.d.ts.map +1 -1
  607. package/build/utils/response_error.js +1 -10
  608. package/build/utils/response_error.js.map +1 -1
  609. package/build/utils/sha_256.js.map +1 -1
  610. package/build/utils/system_messages.d.ts +1 -1
  611. package/build/utils/system_messages.d.ts.map +1 -1
  612. package/build/utils/system_messages.js.map +1 -1
  613. package/build/utils/theme.d.ts +2 -2
  614. package/build/utils/theme.d.ts.map +1 -1
  615. package/build/utils/theme.js.map +1 -1
  616. package/package.json +12 -12
  617. package/src/__tests__/hooks/use_attachment_uploader.test.tsx +1 -0
  618. package/src/__tests__/hooks/use_font_scale.test.ts +7 -3
  619. package/src/__tests__/utils/native_adapters/configuration.ts +1 -1
  620. package/src/__tests__/utils/system_messages.ts +1 -1
  621. package/src/__tests__/utils/uri.ts +8 -50
  622. package/src/__utils__/handlers.ts +5 -6
  623. package/src/components/conversation/attachments/attachment_deleting_overlay.tsx +10 -3
  624. package/src/components/conversations/conversation_preview.tsx +23 -58
  625. package/src/components/conversations/unread_count_badge.tsx +4 -13
  626. package/src/components/page/__tests__/component_error_boundary.test.tsx +1 -1
  627. package/src/components/page/__tests__/error_boundary.test.tsx +6 -2
  628. package/src/components/page/__tests__/page_error_boundary.test.tsx +1 -1
  629. package/src/hooks/use_conversation.ts +0 -2
  630. package/src/hooks/use_conversation_jolt_events.ts +19 -3
  631. package/src/hooks/use_conversation_messages.ts +6 -5
  632. package/src/hooks/use_conversations_actions.ts +1 -3
  633. package/src/hooks/use_mark_latest_message_read.ts +4 -3
  634. package/src/hooks/use_suspense_api.ts +9 -1
  635. package/src/index.tsx +2 -1
  636. package/src/polyfills/events/EventTarget.ts +1 -1
  637. package/src/screens/conversation_screen.tsx +4 -2
  638. package/src/screens/conversations/components/list_header_component.tsx +6 -6
  639. package/src/types/resources/conversation.ts +1 -11
  640. package/src/utils/client/client.ts +1 -2
  641. package/src/utils/request/conversation.ts +0 -2
  642. package/src/utils/response_error.ts +1 -12
  643. package/src/utils/sha_256.ts +24 -24
  644. package/src/utils/system_messages.ts +1 -1
  645. package/src/utils/theme.ts +3 -2
  646. package/src/utils/__tests__/response_error.test.ts +0 -40
@@ -1,5 +1,6 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome';
2
- import React, { useState } from 'react';
3
+ import { useState } from 'react';
3
4
  import { Alert, Pressable, ScrollView, StyleSheet, View } from 'react-native';
4
5
  import { Avatar, AvatarGroup, Badge, Banner, BannerCollapsible, Button, ConversationAvatar, EmojiAvatar, IconAvatar, ToggleButton, Heading, Icon, IconButton, Image, Person, Spinner, Switch, Text, TextButton, TextInlineButton, ImageAttachmentPreview, } from '../components/display';
5
6
  import { VideoAttachmentPreview } from '../components/display/video_attachment_preview';
@@ -52,524 +53,51 @@ const buttonPress = () => Alert.alert('Button clicked');
52
53
  // =================================
53
54
  export function DesignSystemScreen() {
54
55
  const styles = useStyles();
55
- return (<ScrollView contentContainerStyle={styles.container} style={styles.scrollView}>
56
- <ThemeSection />
57
- <IndicatorsSection />
58
- <HeadingTextSection />
59
- <PressablesSection />
60
- <HapticsSection />
61
- <ImageIconsSection />
62
- <FormControlsSection />
63
- <StatusComponentsSection />
64
- <FontAwesomeIconsSection />
65
- <MiscComponentsSection isLast/>
66
- </ScrollView>);
56
+ return (_jsxs(ScrollView, { contentContainerStyle: styles.container, style: styles.scrollView, children: [_jsx(ThemeSection, {}), _jsx(IndicatorsSection, {}), _jsx(HeadingTextSection, {}), _jsx(PressablesSection, {}), _jsx(HapticsSection, {}), _jsx(ImageIconsSection, {}), _jsx(FormControlsSection, {}), _jsx(StatusComponentsSection, {}), _jsx(FontAwesomeIconsSection, {}), _jsx(MiscComponentsSection, { isLast: true })] }));
67
57
  }
68
58
  function ThemeSection({ isLast }) {
69
- return (<CollapsableSection title="Theme" isLast={isLast}>
70
- <TextGroup>
71
- <Text>There are four main parts to our theming system…</Text>
72
- <TextRow>
73
- <Heading variant="h3">Default theme</Heading>
74
- <Text>
75
- Start at `src/utils/theme` when adding new theme values or checking what target apps
76
- have access to. The file has more instructions and examples.
77
- </Text>
78
- <Text>At a high level, it provides…</Text>
79
- <TextListItem label="1.">
80
- Access to consuming app targets of what theme values that they can be customized.
81
- </TextListItem>
82
- <TextListItem label="2.">
83
- Fallback values for our components to use if the values weren't overriden.
84
- </TextListItem>
85
- </TextRow>
86
- <TextRow>
87
- <Heading variant="h3">Customizing the theme</Heading>
88
- <Text>
89
- Apps can override any default theme value by passing a `theme` object to our
90
- `ChatProvider` that holds a `theme` and a `colorScheme`.
91
- </Text>
92
- <Text>
93
- Currently types can be enforced by setting the parent theme object to
94
- `CreateChatThemeProps`.
95
- </Text>
96
- <Text variant="footnote">
97
- Example setup: `apps/sandbox/src/context/chat_context_provider.tsx`
98
- </Text>
99
- </TextRow>
100
- <TextRow>
101
- <Heading variant="h3">Merged theme</Heading>
102
- <Text>
103
- In `src/contexts/chat_context.tsx` we merge the default theme and any custom values
104
- coming from a product target with the `useCreateChatTheme` hook. It creates a single
105
- `ChatTheme` type.
106
- </Text>
107
- </TextRow>
108
- <TextRow>
109
- <Heading variant="h3">Using theme values</Heading>
110
- <Text>
111
- Inside of our own `chat-react-native` components we can access the merged `ChatTheme`
112
- object via our own `useTheme` hook.
113
- </Text>
114
- <Text variant="footnote">Example setup: `src/components/display/button.tsx`</Text>
115
- </TextRow>
116
- </TextGroup>
117
- </CollapsableSection>);
59
+ return (_jsx(CollapsableSection, { title: "Theme", isLast: isLast, children: _jsxs(TextGroup, { children: [_jsx(Text, { children: "There are four main parts to our theming system\u2026" }), _jsxs(TextRow, { children: [_jsx(Heading, { variant: "h3", children: "Default theme" }), _jsx(Text, { children: "Start at `src/utils/theme` when adding new theme values or checking what target apps have access to. The file has more instructions and examples." }), _jsx(Text, { children: "At a high level, it provides\u2026" }), _jsx(TextListItem, { label: "1.", children: "Access to consuming app targets of what theme values that they can be customized." }), _jsx(TextListItem, { label: "2.", children: "Fallback values for our components to use if the values weren't overriden." })] }), _jsxs(TextRow, { children: [_jsx(Heading, { variant: "h3", children: "Customizing the theme" }), _jsx(Text, { children: "Apps can override any default theme value by passing a `theme` object to our `ChatProvider` that holds a `theme` and a `colorScheme`." }), _jsx(Text, { children: "Currently types can be enforced by setting the parent theme object to `CreateChatThemeProps`." }), _jsx(Text, { variant: "footnote", children: "Example setup: `apps/sandbox/src/context/chat_context_provider.tsx`" })] }), _jsxs(TextRow, { children: [_jsx(Heading, { variant: "h3", children: "Merged theme" }), _jsx(Text, { children: "In `src/contexts/chat_context.tsx` we merge the default theme and any custom values coming from a product target with the `useCreateChatTheme` hook. It creates a single `ChatTheme` type." })] }), _jsxs(TextRow, { children: [_jsx(Heading, { variant: "h3", children: "Using theme values" }), _jsx(Text, { children: "Inside of our own `chat-react-native` components we can access the merged `ChatTheme` object via our own `useTheme` hook." }), _jsx(Text, { variant: "footnote", children: "Example setup: `src/components/display/button.tsx`" })] })] }) }));
118
60
  }
119
61
  function IndicatorsSection({ isLast }) {
120
- return (<CollapsableSection title="Indicators" isLast={isLast}>
121
- <Group title="Spinner" description="Loading indicators that can be used within or close to atomic components. Not intended for full-screen loading.">
122
- <Row>
123
- <Spinner size={24}/>
124
- </Row>
125
- </Group>
126
- </CollapsableSection>);
62
+ return (_jsx(CollapsableSection, { title: "Indicators", isLast: isLast, children: _jsx(Group, { title: "Spinner", description: "Loading indicators that can be used within or close to atomic components. Not intended for full-screen loading.", children: _jsx(Row, { children: _jsx(Spinner, { size: 24 }) }) }) }));
127
63
  }
128
64
  function HeadingTextSection({ isLast }) {
129
65
  const styles = useStyles();
130
- return (<CollapsableSection title="Heading & Text" isLast={isLast}>
131
- <Group title="Heading" description="Use for headings & titles as it includes the a11y 'header' role. Change the size and style with the h1-h4 variants.">
132
- <Column style={styles.columnCenter}>
133
- <Heading>Heading 1</Heading>
134
- <Heading variant="h2">Heading 2</Heading>
135
- <Heading variant="h3">Heading 3</Heading>
136
- <Heading variant="h4">Heading 4</Heading>
137
- </Column>
138
- </Group>
139
- <Group title="Text" description="Use for body copy and supporting text.">
140
- <Column style={styles.columnCenter}>
141
- <Text>Plain text</Text>
142
- <Text variant="secondary">Secondary</Text>
143
- <Text variant="tertiary">Tertiary</Text>
144
- <Text variant="footnote">Footnote</Text>
145
- </Column>
146
- </Group>
147
- </CollapsableSection>);
66
+ return (_jsxs(CollapsableSection, { title: "Heading & Text", isLast: isLast, children: [_jsx(Group, { title: "Heading", description: "Use for headings & titles as it includes the a11y 'header' role. Change the size and style with the h1-h4 variants.", children: _jsxs(Column, { style: styles.columnCenter, children: [_jsx(Heading, { children: "Heading 1" }), _jsx(Heading, { variant: "h2", children: "Heading 2" }), _jsx(Heading, { variant: "h3", children: "Heading 3" }), _jsx(Heading, { variant: "h4", children: "Heading 4" })] }) }), _jsx(Group, { title: "Text", description: "Use for body copy and supporting text.", children: _jsxs(Column, { style: styles.columnCenter, children: [_jsx(Text, { children: "Plain text" }), _jsx(Text, { variant: "secondary", children: "Secondary" }), _jsx(Text, { variant: "tertiary", children: "Tertiary" }), _jsx(Text, { variant: "footnote", children: "Footnote" })] }) })] }));
148
67
  }
149
68
  function PressablesSection({ isLast }) {
150
69
  const styles = useStyles();
151
70
  const [filterSelected, setFilterSelected] = useState('Groups');
152
- return (<CollapsableSection title="Pressables" isLast={isLast}>
153
- <Group title="Button" description="Feature fill and outline variants for primary and danger usecases, along with disabled & loading states. Optionally shows icons to the left and right of the text.">
154
- <Row>
155
- <Button onPress={buttonPress} title="Default" size="sm"/>
156
- <Button onPress={buttonPress} title="Default" size="md"/>
157
- <Button onPress={buttonPress} title="Danger" appearance="danger" size="lg"/>
158
- </Row>
159
- <Row>
160
- <Button disabled onPress={buttonPress} title="Disabled" size="sm"/>
161
- <Button disabled onPress={buttonPress} title="Disabled" size="md"/>
162
- <Button disabled onPress={buttonPress} title="Disabled" appearance="danger" size="lg"/>
163
- </Row>
164
- <Row>
165
- <Button onPress={buttonPress} title="Default" size="sm" iconNameLeft="general.plus" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
166
- <Button onPress={buttonPress} title="Default" size="md" iconNameRight="churchCenter.sort" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
167
- <Button onPress={buttonPress} title="Danger" appearance="danger" size="lg" iconNameLeft="groups.cards" iconNameRight="general.downChevron" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
168
- </Row>
169
- <Row>
170
- <Button loading onPress={buttonPress} title="Default" size="sm"/>
171
- <Button loading onPress={buttonPress} title="Default" size="md"/>
172
- <Button loading onPress={buttonPress} title="Danger" appearance="danger" size="lg"/>
173
- </Row>
174
- <Row>
175
- <Button onPress={buttonPress} title="Default" size="sm" variant="outline"/>
176
- <Button onPress={buttonPress} title="Default" size="md" variant="outline"/>
177
- <Button onPress={buttonPress} title="Danger" appearance="danger" size="lg" variant="outline"/>
178
- </Row>
179
- <Row>
180
- <Button onPress={buttonPress} title="Default" size="sm" variant="outline" iconNameLeft="general.plus" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
181
- <Button onPress={buttonPress} title="Default" size="md" variant="outline" iconNameRight="churchCenter.sort" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
182
- <Button onPress={buttonPress} title="Danger" appearance="danger" size="lg" variant="outline" iconNameLeft="groups.cards" iconNameRight="general.downChevron" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
183
- </Row>
184
- <Row>
185
- <Button disabled onPress={buttonPress} title="Disabled" size="sm" variant="outline" iconNameLeft="general.plus" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
186
- <Button disabled onPress={buttonPress} title="Disabled" size="md" variant="outline" iconNameRight="churchCenter.sort" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
187
- <Button disabled onPress={buttonPress} title="Disabled" appearance="danger" size="lg" variant="outline" iconNameLeft="groups.cards" iconNameRight="general.downChevron" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
188
- </Row>
189
- <Row>
190
- <Button loading onPress={buttonPress} title="Default" size="sm" variant="outline" iconNameLeft="general.plus" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
191
- <Button loading onPress={buttonPress} title="Default" size="md" variant="outline" iconNameRight="churchCenter.sort" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
192
- <Button loading onPress={buttonPress} title="Danger" appearance="danger" size="lg" variant="outline" iconNameLeft="groups.cards" iconNameRight="general.downChevron" maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER}/>
193
- </Row>
194
- </Group>
195
- <Group title="ToggleButton" description="Button with active and deactive states. Supports right & left icons, along with standard pressable props.">
196
- <Row>
197
- <ToggleButton onPress={() => setFilterSelected('Groups')} title="Groups" active={filterSelected === 'Groups'} accessibilityLabel="Filter to group conversations"/>
198
- <ToggleButton onPress={() => setFilterSelected('Teams')} title="Teams" active={filterSelected === 'Teams'} accessibilityLabel="Filter to team conversations"/>
199
- <ToggleButton onPress={() => setFilterSelected('More')} title="More" active={filterSelected === 'More'} iconNameRight="general.threeReducingHorizontalBars" accessibilityLabel="View more filters"/>
200
- </Row>
201
- </Group>
202
- <Group title="IconButton" description="Supports different appearances, sizes, along with loading & disabled states. Use `iconStyle` for custom colors and font sizes. Requires `accessibilityLabel` as icon's don't provide context to screen readers.">
203
- <Row>
204
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="md"/>
205
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="danger" size="lg"/>
206
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="interaction" size="xl"/>
207
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" iconStyle={styles.customIconButtonColor} size="xxl"/>
208
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="xxxl"/>
209
- </Row>
210
- <Row>
211
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="md" disabled/>
212
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="danger" size="lg" disabled/>
213
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="interaction" size="xl" disabled/>
214
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" iconStyle={styles.customIconButtonColor} size="xxl" disabled/>
215
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="xxxl" disabled/>
216
- </Row>
217
- <Row>
218
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="md" loading/>
219
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="danger" size="lg" loading/>
220
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" appearance="interaction" size="xl" loading/>
221
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" iconStyle={styles.customIconButtonColor} size="xxl" loading/>
222
- <IconButton onPress={buttonPress} name="general.paperclip" accessibilityLabel="Add attachment" accessibilityHint="Opens your device's image gallary" size="xxxl" loading/>
223
- </Row>
224
- </Group>
225
- <Group title="TextButton" description="Pressable text with default & danger appearance options. Can be disabled and accept `Text` variance props.">
226
- <Row>
227
- <TextButton onPress={buttonPress}>Default</TextButton>
228
- <TextButton onPress={buttonPress} variant="secondary">
229
- Default
230
- </TextButton>
231
- <TextButton onPress={buttonPress} variant="tertiary">
232
- Default
233
- </TextButton>
234
- <TextButton onPress={buttonPress} variant="footnote">
235
- Default
236
- </TextButton>
237
- </Row>
238
- <Row>
239
- <TextButton onPress={buttonPress} appearance="danger">
240
- Danger
241
- </TextButton>
242
- <TextButton onPress={buttonPress} variant="secondary" appearance="danger">
243
- Danger
244
- </TextButton>
245
- <TextButton onPress={buttonPress} variant="tertiary" appearance="danger">
246
- Danger
247
- </TextButton>
248
- <TextButton onPress={buttonPress} variant="footnote" appearance="danger">
249
- Danger
250
- </TextButton>
251
- </Row>
252
- <Row>
253
- <TextButton onPress={buttonPress} disabled>
254
- Disabled
255
- </TextButton>
256
- <TextButton onPress={buttonPress} variant="secondary" disabled>
257
- Disabled
258
- </TextButton>
259
- <TextButton onPress={buttonPress} variant="tertiary" disabled>
260
- Disabled
261
- </TextButton>
262
- <TextButton onPress={buttonPress} variant="footnote" disabled>
263
- Disabled
264
- </TextButton>
265
- </Row>
266
- </Group>
267
- <Group title="TextInlineButton" description="Supports nesting within `Text`. Temporary component until React Native fixes a layout bug in `Pressable` which used in `TextButton`.">
268
- <Row style={styles.alignRowLeft}>
269
- <Text>
270
- This text is next to{' '}
271
- <TextInlineButton onPress={buttonPress}>default button text</TextInlineButton> Lorem
272
- ipsum dolor{' '}
273
- <TextInlineButton onPress={buttonPress} appearance="danger">
274
- danger button text
275
- </TextInlineButton>{' '}
276
- consectetur{' '}
277
- <TextInlineButton onPress={buttonPress} disabled>
278
- disabled button text
279
- </TextInlineButton>{' '}
280
- elit.
281
- </Text>
282
- <Text variant="secondary">
283
- This text is next to{' '}
284
- <TextInlineButton variant="secondary" onPress={buttonPress}>
285
- default button text
286
- </TextInlineButton>{' '}
287
- Lorem ipsum dolor{' '}
288
- <TextInlineButton variant="secondary" onPress={buttonPress} appearance="danger">
289
- danger button text
290
- </TextInlineButton>{' '}
291
- consectetur{' '}
292
- <TextInlineButton variant="secondary" onPress={buttonPress} disabled>
293
- disabled button text
294
- </TextInlineButton>{' '}
295
- elit.
296
- </Text>
297
- <Text variant="tertiary">
298
- This text is next to{' '}
299
- <TextInlineButton variant="tertiary" onPress={buttonPress}>
300
- default button text
301
- </TextInlineButton>{' '}
302
- Lorem ipsum dolor{' '}
303
- <TextInlineButton variant="tertiary" onPress={buttonPress} appearance="danger">
304
- danger button text
305
- </TextInlineButton>{' '}
306
- consectetur{' '}
307
- <TextInlineButton variant="tertiary" onPress={buttonPress} disabled>
308
- disabled button text
309
- </TextInlineButton>{' '}
310
- elit.
311
- </Text>
312
- <Text variant="footnote">
313
- This text is next to{' '}
314
- <TextInlineButton variant="footnote" onPress={buttonPress}>
315
- default button text
316
- </TextInlineButton>{' '}
317
- Lorem ipsum dolor{' '}
318
- <TextInlineButton variant="footnote" onPress={buttonPress} appearance="danger">
319
- danger button text
320
- </TextInlineButton>{' '}
321
- consectetur{' '}
322
- <TextInlineButton variant="footnote" onPress={buttonPress} disabled>
323
- disabled button text
324
- </TextInlineButton>{' '}
325
- elit.
326
- </Text>
327
- </Row>
328
- </Group>
329
- </CollapsableSection>);
71
+ return (_jsxs(CollapsableSection, { title: "Pressables", isLast: isLast, children: [_jsxs(Group, { title: "Button", description: "Feature fill and outline variants for primary and danger usecases, along with disabled & loading states. Optionally shows icons to the left and right of the text.", children: [_jsxs(Row, { children: [_jsx(Button, { onPress: buttonPress, title: "Default", size: "sm" }), _jsx(Button, { onPress: buttonPress, title: "Default", size: "md" }), _jsx(Button, { onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg" })] }), _jsxs(Row, { children: [_jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", size: "sm" }), _jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", size: "md" }), _jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", appearance: "danger", size: "lg" })] }), _jsxs(Row, { children: [_jsx(Button, { onPress: buttonPress, title: "Default", size: "sm", iconNameLeft: "general.plus", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { onPress: buttonPress, title: "Default", size: "md", iconNameRight: "churchCenter.sort", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg", iconNameLeft: "groups.cards", iconNameRight: "general.downChevron", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })] }), _jsxs(Row, { children: [_jsx(Button, { loading: true, onPress: buttonPress, title: "Default", size: "sm" }), _jsx(Button, { loading: true, onPress: buttonPress, title: "Default", size: "md" }), _jsx(Button, { loading: true, onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg" })] }), _jsxs(Row, { children: [_jsx(Button, { onPress: buttonPress, title: "Default", size: "sm", variant: "outline" }), _jsx(Button, { onPress: buttonPress, title: "Default", size: "md", variant: "outline" }), _jsx(Button, { onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg", variant: "outline" })] }), _jsxs(Row, { children: [_jsx(Button, { onPress: buttonPress, title: "Default", size: "sm", variant: "outline", iconNameLeft: "general.plus", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { onPress: buttonPress, title: "Default", size: "md", variant: "outline", iconNameRight: "churchCenter.sort", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg", variant: "outline", iconNameLeft: "groups.cards", iconNameRight: "general.downChevron", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })] }), _jsxs(Row, { children: [_jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", size: "sm", variant: "outline", iconNameLeft: "general.plus", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", size: "md", variant: "outline", iconNameRight: "churchCenter.sort", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { disabled: true, onPress: buttonPress, title: "Disabled", appearance: "danger", size: "lg", variant: "outline", iconNameLeft: "groups.cards", iconNameRight: "general.downChevron", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })] }), _jsxs(Row, { children: [_jsx(Button, { loading: true, onPress: buttonPress, title: "Default", size: "sm", variant: "outline", iconNameLeft: "general.plus", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { loading: true, onPress: buttonPress, title: "Default", size: "md", variant: "outline", iconNameRight: "churchCenter.sort", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER }), _jsx(Button, { loading: true, onPress: buttonPress, title: "Danger", appearance: "danger", size: "lg", variant: "outline", iconNameLeft: "groups.cards", iconNameRight: "general.downChevron", maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })] })] }), _jsx(Group, { title: "ToggleButton", description: "Button with active and deactive states. Supports right & left icons, along with standard pressable props.", children: _jsxs(Row, { children: [_jsx(ToggleButton, { onPress: () => setFilterSelected('Groups'), title: "Groups", active: filterSelected === 'Groups', accessibilityLabel: "Filter to group conversations" }), _jsx(ToggleButton, { onPress: () => setFilterSelected('Teams'), title: "Teams", active: filterSelected === 'Teams', accessibilityLabel: "Filter to team conversations" }), _jsx(ToggleButton, { onPress: () => setFilterSelected('More'), title: "More", active: filterSelected === 'More', iconNameRight: "general.threeReducingHorizontalBars", accessibilityLabel: "View more filters" })] }) }), _jsxs(Group, { title: "IconButton", description: "Supports different appearances, sizes, along with loading & disabled states. Use `iconStyle` for custom colors and font sizes. Requires `accessibilityLabel` as icon's don't provide context to screen readers.", children: [_jsxs(Row, { children: [_jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "md" }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "danger", size: "lg" }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "interaction", size: "xl" }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", iconStyle: styles.customIconButtonColor, size: "xxl" }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "xxxl" })] }), _jsxs(Row, { children: [_jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "md", disabled: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "danger", size: "lg", disabled: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "interaction", size: "xl", disabled: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", iconStyle: styles.customIconButtonColor, size: "xxl", disabled: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "xxxl", disabled: true })] }), _jsxs(Row, { children: [_jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "md", loading: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "danger", size: "lg", loading: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", appearance: "interaction", size: "xl", loading: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", iconStyle: styles.customIconButtonColor, size: "xxl", loading: true }), _jsx(IconButton, { onPress: buttonPress, name: "general.paperclip", accessibilityLabel: "Add attachment", accessibilityHint: "Opens your device's image gallary", size: "xxxl", loading: true })] })] }), _jsxs(Group, { title: "TextButton", description: "Pressable text with default & danger appearance options. Can be disabled and accept `Text` variance props.", children: [_jsxs(Row, { children: [_jsx(TextButton, { onPress: buttonPress, children: "Default" }), _jsx(TextButton, { onPress: buttonPress, variant: "secondary", children: "Default" }), _jsx(TextButton, { onPress: buttonPress, variant: "tertiary", children: "Default" }), _jsx(TextButton, { onPress: buttonPress, variant: "footnote", children: "Default" })] }), _jsxs(Row, { children: [_jsx(TextButton, { onPress: buttonPress, appearance: "danger", children: "Danger" }), _jsx(TextButton, { onPress: buttonPress, variant: "secondary", appearance: "danger", children: "Danger" }), _jsx(TextButton, { onPress: buttonPress, variant: "tertiary", appearance: "danger", children: "Danger" }), _jsx(TextButton, { onPress: buttonPress, variant: "footnote", appearance: "danger", children: "Danger" })] }), _jsxs(Row, { children: [_jsx(TextButton, { onPress: buttonPress, disabled: true, children: "Disabled" }), _jsx(TextButton, { onPress: buttonPress, variant: "secondary", disabled: true, children: "Disabled" }), _jsx(TextButton, { onPress: buttonPress, variant: "tertiary", disabled: true, children: "Disabled" }), _jsx(TextButton, { onPress: buttonPress, variant: "footnote", disabled: true, children: "Disabled" })] })] }), _jsx(Group, { title: "TextInlineButton", description: "Supports nesting within `Text`. Temporary component until React Native fixes a layout bug in `Pressable` which used in `TextButton`.", children: _jsxs(Row, { style: styles.alignRowLeft, children: [_jsxs(Text, { children: ["This text is next to", ' ', _jsx(TextInlineButton, { onPress: buttonPress, children: "default button text" }), " Lorem ipsum dolor", ' ', _jsx(TextInlineButton, { onPress: buttonPress, appearance: "danger", children: "danger button text" }), ' ', "consectetur", ' ', _jsx(TextInlineButton, { onPress: buttonPress, disabled: true, children: "disabled button text" }), ' ', "elit."] }), _jsxs(Text, { variant: "secondary", children: ["This text is next to", ' ', _jsx(TextInlineButton, { variant: "secondary", onPress: buttonPress, children: "default button text" }), ' ', "Lorem ipsum dolor", ' ', _jsx(TextInlineButton, { variant: "secondary", onPress: buttonPress, appearance: "danger", children: "danger button text" }), ' ', "consectetur", ' ', _jsx(TextInlineButton, { variant: "secondary", onPress: buttonPress, disabled: true, children: "disabled button text" }), ' ', "elit."] }), _jsxs(Text, { variant: "tertiary", children: ["This text is next to", ' ', _jsx(TextInlineButton, { variant: "tertiary", onPress: buttonPress, children: "default button text" }), ' ', "Lorem ipsum dolor", ' ', _jsx(TextInlineButton, { variant: "tertiary", onPress: buttonPress, appearance: "danger", children: "danger button text" }), ' ', "consectetur", ' ', _jsx(TextInlineButton, { variant: "tertiary", onPress: buttonPress, disabled: true, children: "disabled button text" }), ' ', "elit."] }), _jsxs(Text, { variant: "footnote", children: ["This text is next to", ' ', _jsx(TextInlineButton, { variant: "footnote", onPress: buttonPress, children: "default button text" }), ' ', "Lorem ipsum dolor", ' ', _jsx(TextInlineButton, { variant: "footnote", onPress: buttonPress, appearance: "danger", children: "danger button text" }), ' ', "consectetur", ' ', _jsx(TextInlineButton, { variant: "footnote", onPress: buttonPress, disabled: true, children: "disabled button text" }), ' ', "elit."] })] }) })] }));
330
72
  }
331
73
  function HapticsSection({ isLast }) {
332
- return (<CollapsableSection title="Haptics" isLast={isLast}>
333
- <TextGroup>
334
- <Text>
335
- Haptics help communicate changes and interactions in the UI by making them feel physical
336
- and "weighty". They are a progressive enhancement and shouldn't replace visual feedback.
337
- </Text>
338
- </TextGroup>
339
- <Group title="Impact" description="Communicates that a user interaction is occurring.">
340
- <Row>
341
- <HapticButton title="Impact Light" onPress={() => Haptic.impactLight()}/>
342
- <HapticButton title="Impact Medium" onPress={() => Haptic.impactMedium()}/>
343
- <HapticButton title="Impact Heavy" onPress={() => Haptic.impactHeavy()}/>
344
- <HapticButton title="Rigid" onPress={() => Haptic.rigid()}/>
345
- <HapticButton title="Soft" onPress={() => Haptic.soft()}/>
346
- </Row>
347
- </Group>
348
- <Group title="Notification" description="Communicates the result of a user or application action.">
349
- <Row>
350
- <HapticButton title="Notification Success" onPress={() => Haptic.notificationSuccess()}/>
351
- <HapticButton title="Notification Warning" onPress={() => Haptic.notificationWarning()}/>
352
- <HapticButton title="Notification Error" onPress={() => Haptic.notificationError()}/>
353
- </Row>
354
- </Group>
355
- </CollapsableSection>);
74
+ return (_jsxs(CollapsableSection, { title: "Haptics", isLast: isLast, children: [_jsx(TextGroup, { children: _jsx(Text, { children: "Haptics help communicate changes and interactions in the UI by making them feel physical and \"weighty\". They are a progressive enhancement and shouldn't replace visual feedback." }) }), _jsx(Group, { title: "Impact", description: "Communicates that a user interaction is occurring.", children: _jsxs(Row, { children: [_jsx(HapticButton, { title: "Impact Light", onPress: () => Haptic.impactLight() }), _jsx(HapticButton, { title: "Impact Medium", onPress: () => Haptic.impactMedium() }), _jsx(HapticButton, { title: "Impact Heavy", onPress: () => Haptic.impactHeavy() }), _jsx(HapticButton, { title: "Rigid", onPress: () => Haptic.rigid() }), _jsx(HapticButton, { title: "Soft", onPress: () => Haptic.soft() })] }) }), _jsx(Group, { title: "Notification", description: "Communicates the result of a user or application action.", children: _jsxs(Row, { children: [_jsx(HapticButton, { title: "Notification Success", onPress: () => Haptic.notificationSuccess() }), _jsx(HapticButton, { title: "Notification Warning", onPress: () => Haptic.notificationWarning() }), _jsx(HapticButton, { title: "Notification Error", onPress: () => Haptic.notificationError() })] }) })] }));
356
75
  }
357
76
  function ImageIconsSection({ isLast }) {
358
77
  const styles = useStyles();
359
78
  const { colors } = useTheme();
360
- return (<CollapsableSection title="Images & Icons" isLast={isLast}>
361
- <Group title="Image" description="Foundational way of displaying images. Loading or broken images will fallback to show a spinner. Hide decortive images from screen readers with `alt=''`.">
362
- <Row>
363
- <Image source={{ uri: URL.broken }} style={styles.image} alt="Mountain sunrise"/>
364
- <Image source={{ uri: URL.image }} style={styles.image} alt="Mountain sunrise"/>
365
- <Image source={{ uri: URL.image }} style={styles.image} alt=""/>
366
- </Row>
367
- </Group>
368
- <Group title="ImageAttachmentPreview" description="Displays an image attachment in different sizes with a close button. It takes a `fileName` prop that gets passed to the image's `alt` attribute. Can show loading and error states.">
369
- <Row>
370
- <ImageAttachmentPreview size="sm" uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress}/>
371
- <ImageAttachmentPreview uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress}/>
372
- <ImageAttachmentPreview size="sm" uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress} loading hideRemoveButton/>
373
- <ImageAttachmentPreview uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress} loading hideRemoveButton/>
374
- <ImageAttachmentPreview size="sm" uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress} error/>
375
- <ImageAttachmentPreview uri={URL.image} fileName="mountains.jpg" onRemovePress={buttonPress} error/>
376
- </Row>
377
- </Group>
378
- <Group title="VideoAttachmentPreview" description="Displays an video attachment with a close button. It takes a `name` prop, an optional duration, and can show loading and error states.">
379
- <Row>
380
- <VideoAttachmentPreview name="mountains.mp4" onRemovePress={buttonPress}/>
381
- <VideoAttachmentPreview name="mountains.mp4" duration="1:20" onRemovePress={buttonPress}/>
382
- <VideoAttachmentPreview name="mountains.mp4" onRemovePress={buttonPress} loading hideRemoveButton/>
383
- <VideoAttachmentPreview name="mountains.mp4" duration="1:20" onRemovePress={buttonPress} error/>
384
- </Row>
385
- </Group>
386
- <Group title="Avatar" description='Displays the profile image for a user in different sizes and has a loading spinner. Can optionally show an online/offline "presence" indicator. Fallback condition and icon are optionally configurable.'>
387
- <Row>
388
- <Avatar sourceUri={URL.broken}/>
389
- <Avatar size="md" sourceUri={URL.avatar_fallback}/>
390
- <Avatar sourceUri={URL.avatar}/>
391
- </Row>
392
- <Row>
393
- <Avatar presence="offline" sourceUri={URL.broken}/>
394
- <Avatar presence="online" size="md" sourceUri={URL.avatar_fallback}/>
395
- <Avatar presence="offline" sourceUri={URL.avatar}/>
396
- </Row>
397
- <Row>
398
- <Avatar sourceUri=""/>
399
- <Avatar sourceUri="" size="md"/>
400
- <Avatar sourceUri="" size="sm"/>
401
- <Avatar sourceUri={URL.broken} showFallback={true} fallbackIconName="general.star" size="sm"/>
402
- </Row>
403
- </Group>
404
- <Group title="AvatarGroup" description="Shows 1-4 images in a grid at different sizes. Loading spinner shows until all images successfully load. Fallback condition and icon are optionally configurable.">
405
- <Row>
406
- <AvatarGroup sourceUris={[URL.broken]}/>
407
- <AvatarGroup sourceUris={[URL.broken, URL.broken, ...URL.two_avatars]}/>
408
- <AvatarGroup sourceUris={[URL.avatar]}/>
409
- <AvatarGroup sourceUris={URL.two_avatars}/>
410
- <AvatarGroup sourceUris={URL.three_avatars}/>
411
- <AvatarGroup sourceUris={URL.four_avatars}/>
412
- </Row>
413
- <Row>
414
- <AvatarGroup sourceUris={[]} showFallback={true} fallbackIconName="general.person"/>
415
- <AvatarGroup sourceUris={[]} showFallback={true} fallbackIconName="people.noTextMessage"/>
416
- <AvatarGroup sourceUris={[]} showFallback={true} fallbackIconName="general.star" size="md"/>
417
- <AvatarGroup sourceUris={[]} showFallback={true} fallbackIconName="general.heart" size="sm"/>
418
- </Row>
419
- </Group>
420
- <Group title="IconAvatar" description="Renders a FontAwesome icon centered on a gradient background. Used by ConversationAvatar for icon-type custom avatars, and reusable in the avatar picker UI.">
421
- <Row>
422
- <IconAvatar iconKey="church" color="warm-sunset" size="lg"/>
423
- <IconAvatar iconKey="guitar" color="cosmic" size="lg"/>
424
- <IconAvatar iconKey="music" color="iris" size="md"/>
425
- <IconAvatar iconKey="dove" color="rose-teal" size="sm"/>
426
- <IconAvatar iconKey="cross" color="gold" size="xs"/>
427
- </Row>
428
- <Row>
429
- <IconAvatar iconKey="church" color="garden" size="lg"/>
430
- <IconAvatar iconKey="church" color="twilight" size="lg"/>
431
- <IconAvatar iconKey="church" color="amethyst" size="lg"/>
432
- <IconAvatar iconKey="church" color="rainbow" size="lg"/>
433
- </Row>
434
- </Group>
435
- <Group title="EmojiAvatar" description="Renders an emoji centered on a gradient background. Used by ConversationAvatar for emoji-type custom avatars.">
436
- <Row>
437
- <EmojiAvatar emoji="🎉" color="warm-sunset" size="lg"/>
438
- <EmojiAvatar emoji="🔥" color="cosmic" size="lg"/>
439
- <EmojiAvatar emoji="💬" color="iris" size="md"/>
440
- <EmojiAvatar emoji="⭐" color="gold" size="sm"/>
441
- <EmojiAvatar emoji="🎵" color="navy-purple" size="xs"/>
442
- </Row>
443
- </Group>
444
- <Group title="ConversationAvatar" description="Smart avatar that resolves a conversation's custom avatar (image, icon, or emoji) or falls back to the member AvatarGroup. Takes a conversation object and delegates to IconAvatar, EmojiAvatar, or AvatarGroup.">
445
- <Row>
446
- <ConversationAvatar conversation={{
447
- customAvatarType: 'icon',
448
- customAvatarKey: 'church',
449
- customAvatarColor: 'warm-sunset',
450
- }}/>
451
- <ConversationAvatar conversation={{
452
- customAvatarType: 'emoji',
453
- customAvatarKey: '🎉',
454
- customAvatarColor: 'cosmic',
455
- }}/>
456
- <ConversationAvatar conversation={{
457
- customAvatarType: 'image',
458
- customAvatarImageUrl: URL.avatar,
459
- }}/>
460
- <ConversationAvatar conversation={{
461
- previewAvatarUrls: URL.two_avatars,
462
- }}/>
463
- <ConversationAvatar conversation={{}} fallbackIconName="people.noTextMessage"/>
464
- </Row>
465
- </Group>
466
- <Group title="Icon" description="Displays any icon from @planningcenter/icons. Missing icons will fallback to a grey circle. Styling with `fontSize` will allow it to scale with the device's text a11y size.">
467
- <Row>
468
- {/* @ts-expect-error - Testing missing icon fallback */}
469
- <Icon name="missingIcon" size={20}/>
470
- <Icon name="general.textMessage" size={20}/>
471
- <Icon name="general.bell" size={20} color={colors.needsDesignPass}/>
472
- <Icon name="churchCenter.sort" style={styles.icon}/>
473
- </Row>
474
- </Group>
475
- </CollapsableSection>);
79
+ return (_jsxs(CollapsableSection, { title: "Images & Icons", isLast: isLast, children: [_jsx(Group, { title: "Image", description: "Foundational way of displaying images. Loading or broken images will fallback to show a spinner. Hide decortive images from screen readers with `alt=''`.", children: _jsxs(Row, { children: [_jsx(Image, { source: { uri: URL.broken }, style: styles.image, alt: "Mountain sunrise" }), _jsx(Image, { source: { uri: URL.image }, style: styles.image, alt: "Mountain sunrise" }), _jsx(Image, { source: { uri: URL.image }, style: styles.image, alt: "" })] }) }), _jsx(Group, { title: "ImageAttachmentPreview", description: "Displays an image attachment in different sizes with a close button. It takes a `fileName` prop that gets passed to the image's `alt` attribute. Can show loading and error states.", children: _jsxs(Row, { children: [_jsx(ImageAttachmentPreview, { size: "sm", uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress }), _jsx(ImageAttachmentPreview, { uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress }), _jsx(ImageAttachmentPreview, { size: "sm", uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress, loading: true, hideRemoveButton: true }), _jsx(ImageAttachmentPreview, { uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress, loading: true, hideRemoveButton: true }), _jsx(ImageAttachmentPreview, { size: "sm", uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress, error: true }), _jsx(ImageAttachmentPreview, { uri: URL.image, fileName: "mountains.jpg", onRemovePress: buttonPress, error: true })] }) }), _jsx(Group, { title: "VideoAttachmentPreview", description: "Displays an video attachment with a close button. It takes a `name` prop, an optional duration, and can show loading and error states.", children: _jsxs(Row, { children: [_jsx(VideoAttachmentPreview, { name: "mountains.mp4", onRemovePress: buttonPress }), _jsx(VideoAttachmentPreview, { name: "mountains.mp4", duration: "1:20", onRemovePress: buttonPress }), _jsx(VideoAttachmentPreview, { name: "mountains.mp4", onRemovePress: buttonPress, loading: true, hideRemoveButton: true }), _jsx(VideoAttachmentPreview, { name: "mountains.mp4", duration: "1:20", onRemovePress: buttonPress, error: true })] }) }), _jsxs(Group, { title: "Avatar", description: 'Displays the profile image for a user in different sizes and has a loading spinner. Can optionally show an online/offline "presence" indicator. Fallback condition and icon are optionally configurable.', children: [_jsxs(Row, { children: [_jsx(Avatar, { sourceUri: URL.broken }), _jsx(Avatar, { size: "md", sourceUri: URL.avatar_fallback }), _jsx(Avatar, { sourceUri: URL.avatar })] }), _jsxs(Row, { children: [_jsx(Avatar, { presence: "offline", sourceUri: URL.broken }), _jsx(Avatar, { presence: "online", size: "md", sourceUri: URL.avatar_fallback }), _jsx(Avatar, { presence: "offline", sourceUri: URL.avatar })] }), _jsxs(Row, { children: [_jsx(Avatar, { sourceUri: "" }), _jsx(Avatar, { sourceUri: "", size: "md" }), _jsx(Avatar, { sourceUri: "", size: "sm" }), _jsx(Avatar, { sourceUri: URL.broken, showFallback: true, fallbackIconName: "general.star", size: "sm" })] })] }), _jsxs(Group, { title: "AvatarGroup", description: "Shows 1-4 images in a grid at different sizes. Loading spinner shows until all images successfully load. Fallback condition and icon are optionally configurable.", children: [_jsxs(Row, { children: [_jsx(AvatarGroup, { sourceUris: [URL.broken] }), _jsx(AvatarGroup, { sourceUris: [URL.broken, URL.broken, ...URL.two_avatars] }), _jsx(AvatarGroup, { sourceUris: [URL.avatar] }), _jsx(AvatarGroup, { sourceUris: URL.two_avatars }), _jsx(AvatarGroup, { sourceUris: URL.three_avatars }), _jsx(AvatarGroup, { sourceUris: URL.four_avatars })] }), _jsxs(Row, { children: [_jsx(AvatarGroup, { sourceUris: [], showFallback: true, fallbackIconName: "general.person" }), _jsx(AvatarGroup, { sourceUris: [], showFallback: true, fallbackIconName: "people.noTextMessage" }), _jsx(AvatarGroup, { sourceUris: [], showFallback: true, fallbackIconName: "general.star", size: "md" }), _jsx(AvatarGroup, { sourceUris: [], showFallback: true, fallbackIconName: "general.heart", size: "sm" })] })] }), _jsxs(Group, { title: "IconAvatar", description: "Renders a FontAwesome icon centered on a gradient background. Used by ConversationAvatar for icon-type custom avatars, and reusable in the avatar picker UI.", children: [_jsxs(Row, { children: [_jsx(IconAvatar, { iconKey: "church", color: "warm-sunset", size: "lg" }), _jsx(IconAvatar, { iconKey: "guitar", color: "cosmic", size: "lg" }), _jsx(IconAvatar, { iconKey: "music", color: "iris", size: "md" }), _jsx(IconAvatar, { iconKey: "dove", color: "rose-teal", size: "sm" }), _jsx(IconAvatar, { iconKey: "cross", color: "gold", size: "xs" })] }), _jsxs(Row, { children: [_jsx(IconAvatar, { iconKey: "church", color: "garden", size: "lg" }), _jsx(IconAvatar, { iconKey: "church", color: "twilight", size: "lg" }), _jsx(IconAvatar, { iconKey: "church", color: "amethyst", size: "lg" }), _jsx(IconAvatar, { iconKey: "church", color: "rainbow", size: "lg" })] })] }), _jsx(Group, { title: "EmojiAvatar", description: "Renders an emoji centered on a gradient background. Used by ConversationAvatar for emoji-type custom avatars.", children: _jsxs(Row, { children: [_jsx(EmojiAvatar, { emoji: "\uD83C\uDF89", color: "warm-sunset", size: "lg" }), _jsx(EmojiAvatar, { emoji: "\uD83D\uDD25", color: "cosmic", size: "lg" }), _jsx(EmojiAvatar, { emoji: "\uD83D\uDCAC", color: "iris", size: "md" }), _jsx(EmojiAvatar, { emoji: "\u2B50", color: "gold", size: "sm" }), _jsx(EmojiAvatar, { emoji: "\uD83C\uDFB5", color: "navy-purple", size: "xs" })] }) }), _jsx(Group, { title: "ConversationAvatar", description: "Smart avatar that resolves a conversation's custom avatar (image, icon, or emoji) or falls back to the member AvatarGroup. Takes a conversation object and delegates to IconAvatar, EmojiAvatar, or AvatarGroup.", children: _jsxs(Row, { children: [_jsx(ConversationAvatar, { conversation: {
80
+ customAvatarType: 'icon',
81
+ customAvatarKey: 'church',
82
+ customAvatarColor: 'warm-sunset',
83
+ } }), _jsx(ConversationAvatar, { conversation: {
84
+ customAvatarType: 'emoji',
85
+ customAvatarKey: '🎉',
86
+ customAvatarColor: 'cosmic',
87
+ } }), _jsx(ConversationAvatar, { conversation: {
88
+ customAvatarType: 'image',
89
+ customAvatarImageUrl: URL.avatar,
90
+ } }), _jsx(ConversationAvatar, { conversation: {
91
+ previewAvatarUrls: URL.two_avatars,
92
+ } }), _jsx(ConversationAvatar, { conversation: {}, fallbackIconName: "people.noTextMessage" })] }) }), _jsx(Group, { title: "Icon", description: "Displays any icon from @planningcenter/icons. Missing icons will fallback to a grey circle. Styling with `fontSize` will allow it to scale with the device's text a11y size.", children: _jsxs(Row, { children: [_jsx(Icon, { name: "missingIcon", size: 20 }), _jsx(Icon, { name: "general.textMessage", size: 20 }), _jsx(Icon, { name: "general.bell", size: 20, color: colors.needsDesignPass }), _jsx(Icon, { name: "churchCenter.sort", style: styles.icon })] }) })] }));
476
93
  }
477
94
  function FormControlsSection({ isLast }) {
478
95
  const [switchOn, setSwitchOn] = useState(true);
479
96
  const [switchOff, setSwitchOff] = useState(false);
480
- return (<CollapsableSection title="Form Controls" isLast={isLast}>
481
- <Group title="Switch" description="Use to toggle a boolean value for some sort of contained setting. (ie. Muting a conversation) This is a light wrapper that takes into account themed colors.">
482
- <Row>
483
- <Switch value={switchOn} onValueChange={value => setSwitchOn(value)}/>
484
- <Switch value={switchOff} onValueChange={value => setSwitchOff(value)}/>
485
- <Switch value={true} disabled/>
486
- <Switch value={false} disabled/>
487
- </Row>
488
- </Group>
489
- </CollapsableSection>);
97
+ return (_jsx(CollapsableSection, { title: "Form Controls", isLast: isLast, children: _jsx(Group, { title: "Switch", description: "Use to toggle a boolean value for some sort of contained setting. (ie. Muting a conversation) This is a light wrapper that takes into account themed colors.", children: _jsxs(Row, { children: [_jsx(Switch, { value: switchOn, onValueChange: value => setSwitchOn(value) }), _jsx(Switch, { value: switchOff, onValueChange: value => setSwitchOff(value) }), _jsx(Switch, { value: true, disabled: true }), _jsx(Switch, { value: false, disabled: true })] }) }) }));
490
98
  }
491
99
  function StatusComponentsSection({ isLast }) {
492
- return (<CollapsableSection title="Status components" isLast={isLast}>
493
- <Group title="Badge" description="Badge that can convey a status and show an icon. It also supports a meta label and product logo for the conversation list and conversation header. Target products can change colors and hide the logo via theming.">
494
- <Row>
495
- <Badge label="Neutral" appearance="neutral"/>
496
- <Badge label="Error" appearance="error"/>
497
- <Badge label="Info" appearance="info"/>
498
- <Badge label="Success" appearance="success"/>
499
- <Badge label="Warning" appearance="warning"/>
500
- </Row>
501
- <Row>
502
- <Badge label="Neutral" appearance="neutral" iconName="general.star"/>
503
- <Badge label="Error" appearance="error" iconName="general.exclamationTriangle"/>
504
- <Badge label="Info" appearance="info" iconName="general.outlinedInfoCircle"/>
505
- <Badge label="Success" appearance="success" iconName="general.check"/>
506
- <Badge label="Warning" appearance="warning" iconName="general.shieldExclamation"/>
507
- </Row>
508
- <Row>
509
- <Badge variant="meta" productLogoName="groups" label="Group" metaLabel="Worlds longest group name that will probably overflow if it gets very much longer"/>
510
- <Badge variant="meta" productLogoName="groups" label="Group" metaLabel="Young adults"/>
511
- <Badge variant="meta" productLogoName="services" label="Plan" metaLabel="June 19, 2025"/>
512
- <Badge variant="meta" productLogoName="services" label="Team"/>
513
- </Row>
514
- <Row>
515
- <Badge variant="metaSubtle" productLogoName="groups" label="Group" metaLabel="Worlds longest group name that will probably overflow if it gets very much longer"/>
516
- <Badge variant="metaSubtle" productLogoName="groups" label="Group" metaLabel="Young adults"/>
517
- <Badge variant="metaSubtle" productLogoName="services" label="Plan" metaLabel="June 19, 2025"/>
518
- <Badge variant="metaSubtle" productLogoName="services" label="Team"/>
519
- </Row>
520
- </Group>
521
- <Group title="Banner" description="Banners that can convey a status with color and an optional icon. They render a description and optional heading. A `Banner.Link` can be used by wrapping it in `Banner.Text` and passing it to `description`. Target products can change colors via theming.">
522
- <Column>
523
- <Banner appearance="neutral" showIcon={false} description="Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt."/>
524
- <Banner appearance="info" heading="Banner heading" description="Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt."/>
525
- <Banner appearance="success" heading="Banner heading" description={<BannerPrimitive.Text>
526
- Et sint Quis non excepturi{' '}
527
- <BannerPrimitive.Link onPress={buttonPress}>
528
- enim et conseq atur porro est
529
- </BannerPrimitive.Link>{' '}
530
- galisum labore ea volupt.
531
- </BannerPrimitive.Text>}/>
532
- <Banner appearance="warning" iconName="general.shieldExclamation" heading="13 members under age 13" description="Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt."/>
533
- <Banner appearance="error" heading="Banner heading" description="Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt."/>
534
- </Column>
535
- </Group>
536
- <Group title="BannerCollapsible" description="Same as `Banner` but takes children that can be hidden/revealed on a tap.">
537
- <Column>
538
- <BannerCollapsible appearance="neutral" showIcon={false} heading="Banner heading">
539
- <BannerPrimitive.Text>
540
- Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt.
541
- </BannerPrimitive.Text>
542
- </BannerCollapsible>
543
- <BannerCollapsible appearance="info" heading="Banner heading">
544
- <BannerPrimitive.Text>
545
- Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt.
546
- </BannerPrimitive.Text>
547
- </BannerCollapsible>
548
- <BannerCollapsible appearance="success" heading="Banner heading">
549
- <BannerPrimitive.Text>
550
- Et sint Quis non excepturi{' '}
551
- <BannerPrimitive.Link onPress={buttonPress}>
552
- enim et conseq atur porro est
553
- </BannerPrimitive.Link>{' '}
554
- galisum labore ea volupt.
555
- </BannerPrimitive.Text>
556
- </BannerCollapsible>
557
- <BannerCollapsible appearance="warning" iconName="general.shieldExclamation" heading="13 members under age 13" description="Et sint Quis non excepturi enim et conse.">
558
- <BannerPrimitive.Text>
559
- More hdden content that can be revealed on a tap. Lorem ipsum dolor sit amet,
560
- consectetur
561
- </BannerPrimitive.Text>
562
- </BannerCollapsible>
563
- <BannerCollapsible appearance="error" heading="Banner heading" description="Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt.">
564
- <BannerPrimitive.Text>
565
- Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt. Et
566
- sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt. Et
567
- sint Quis non excepturi enim et .
568
- </BannerPrimitive.Text>
569
- </BannerCollapsible>
570
- </Column>
571
- </Group>
572
- </CollapsableSection>);
100
+ return (_jsxs(CollapsableSection, { title: "Status components", isLast: isLast, children: [_jsxs(Group, { title: "Badge", description: "Badge that can convey a status and show an icon. It also supports a meta label and product logo for the conversation list and conversation header. Target products can change colors and hide the logo via theming.", children: [_jsxs(Row, { children: [_jsx(Badge, { label: "Neutral", appearance: "neutral" }), _jsx(Badge, { label: "Error", appearance: "error" }), _jsx(Badge, { label: "Info", appearance: "info" }), _jsx(Badge, { label: "Success", appearance: "success" }), _jsx(Badge, { label: "Warning", appearance: "warning" })] }), _jsxs(Row, { children: [_jsx(Badge, { label: "Neutral", appearance: "neutral", iconName: "general.star" }), _jsx(Badge, { label: "Error", appearance: "error", iconName: "general.exclamationTriangle" }), _jsx(Badge, { label: "Info", appearance: "info", iconName: "general.outlinedInfoCircle" }), _jsx(Badge, { label: "Success", appearance: "success", iconName: "general.check" }), _jsx(Badge, { label: "Warning", appearance: "warning", iconName: "general.shieldExclamation" })] }), _jsxs(Row, { children: [_jsx(Badge, { variant: "meta", productLogoName: "groups", label: "Group", metaLabel: "Worlds longest group name that will probably overflow if it gets very much longer" }), _jsx(Badge, { variant: "meta", productLogoName: "groups", label: "Group", metaLabel: "Young adults" }), _jsx(Badge, { variant: "meta", productLogoName: "services", label: "Plan", metaLabel: "June 19, 2025" }), _jsx(Badge, { variant: "meta", productLogoName: "services", label: "Team" })] }), _jsxs(Row, { children: [_jsx(Badge, { variant: "metaSubtle", productLogoName: "groups", label: "Group", metaLabel: "Worlds longest group name that will probably overflow if it gets very much longer" }), _jsx(Badge, { variant: "metaSubtle", productLogoName: "groups", label: "Group", metaLabel: "Young adults" }), _jsx(Badge, { variant: "metaSubtle", productLogoName: "services", label: "Plan", metaLabel: "June 19, 2025" }), _jsx(Badge, { variant: "metaSubtle", productLogoName: "services", label: "Team" })] })] }), _jsx(Group, { title: "Banner", description: "Banners that can convey a status with color and an optional icon. They render a description and optional heading. A `Banner.Link` can be used by wrapping it in `Banner.Text` and passing it to `description`. Target products can change colors via theming.", children: _jsxs(Column, { children: [_jsx(Banner, { appearance: "neutral", showIcon: false, description: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." }), _jsx(Banner, { appearance: "info", heading: "Banner heading", description: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." }), _jsx(Banner, { appearance: "success", heading: "Banner heading", description: _jsxs(BannerPrimitive.Text, { children: ["Et sint Quis non excepturi", ' ', _jsx(BannerPrimitive.Link, { onPress: buttonPress, children: "enim et conseq atur porro est" }), ' ', "galisum labore ea volupt."] }) }), _jsx(Banner, { appearance: "warning", iconName: "general.shieldExclamation", heading: "13 members under age 13", description: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." }), _jsx(Banner, { appearance: "error", heading: "Banner heading", description: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." })] }) }), _jsx(Group, { title: "BannerCollapsible", description: "Same as `Banner` but takes children that can be hidden/revealed on a tap.", children: _jsxs(Column, { children: [_jsx(BannerCollapsible, { appearance: "neutral", showIcon: false, heading: "Banner heading", children: _jsx(BannerPrimitive.Text, { children: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." }) }), _jsx(BannerCollapsible, { appearance: "info", heading: "Banner heading", children: _jsx(BannerPrimitive.Text, { children: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt." }) }), _jsx(BannerCollapsible, { appearance: "success", heading: "Banner heading", children: _jsxs(BannerPrimitive.Text, { children: ["Et sint Quis non excepturi", ' ', _jsx(BannerPrimitive.Link, { onPress: buttonPress, children: "enim et conseq atur porro est" }), ' ', "galisum labore ea volupt."] }) }), _jsx(BannerCollapsible, { appearance: "warning", iconName: "general.shieldExclamation", heading: "13 members under age 13", description: "Et sint Quis non excepturi enim et conse.", children: _jsx(BannerPrimitive.Text, { children: "More hdden content that can be revealed on a tap. Lorem ipsum dolor sit amet, consectetur" }) }), _jsx(BannerCollapsible, { appearance: "error", heading: "Banner heading", description: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt.", children: _jsx(BannerPrimitive.Text, { children: "Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt. Et sint Quis non excepturi enim et conseq atur porro est galisum labore ea volupt. Et sint Quis non excepturi enim et ." }) })] }) })] }));
573
101
  }
574
102
  const FA_ICONS = [
575
103
  {
@@ -636,18 +164,7 @@ const FA_ICONS = [
636
164
  ];
637
165
  function FontAwesomeIconsSection({ isLast }) {
638
166
  const { colors } = useTheme();
639
- return (<CollapsableSection title="FontAwesome Pro Icons" isLast={isLast}>
640
- {FA_ICONS.map(({ category, icons }) => (<Group key={category} title={category}>
641
- <View style={faStyles.grid}>
642
- {icons.map(name => (<View key={name} style={faStyles.cell}>
643
- <FontAwesomeIcon icon={['fas', name]} size={20} color={colors.iconColorDefaultSecondary}/>
644
- <Text variant="footnote" numberOfLines={1}>
645
- {name}
646
- </Text>
647
- </View>))}
648
- </View>
649
- </Group>))}
650
- </CollapsableSection>);
167
+ return (_jsx(CollapsableSection, { title: "FontAwesome Pro Icons", isLast: isLast, children: FA_ICONS.map(({ category, icons }) => (_jsx(Group, { title: category, children: _jsx(View, { style: faStyles.grid, children: icons.map(name => (_jsxs(View, { style: faStyles.cell, children: [_jsx(FontAwesomeIcon, { icon: ['fas', name], size: 20, color: colors.iconColorDefaultSecondary }), _jsx(Text, { variant: "footnote", numberOfLines: 1, children: name })] }, name))) }) }, category))) }));
651
168
  }
652
169
  const faStyles = StyleSheet.create({
653
170
  grid: {
@@ -662,84 +179,44 @@ const faStyles = StyleSheet.create({
662
179
  },
663
180
  });
664
181
  function MiscComponentsSection({ isLast }) {
665
- return (<CollapsableSection title="Misc components" isLast={isLast}>
666
- <Group title="Person" description="Takes a person object (`MemberResource` type) and displays an avatar, name, and badges. If person is a child we show a special badge and faded styles. Implomentation is based on a similar Chat Web component.">
667
- <Column>
668
- <Person person={personAdult}/>
669
- <Person person={personChild}/>
670
- </Column>
671
- </Group>
672
- <Group title="BlankState" description="Compound component with primitives to display imagary, heading, title, and a button.">
673
- <Column>
674
- <BlankState.Root>
675
- <BlankState.Imagery name="general.outlinedTextMessage"/>
676
- <BlankState.Content>
677
- <BlankState.Heading>No messages</BlankState.Heading>
678
- <BlankState.Text>
679
- Conversation is hidden from everyone until you send a message.
680
- </BlankState.Text>
681
- </BlankState.Content>
682
- <BlankState.Button onPress={buttonPress} title="Go back" accessibilityHint="Navigates back to the conversations list" accessibilityRole="link"/>
683
- </BlankState.Root>
684
- </Column>
685
- </Group>
686
- </CollapsableSection>);
182
+ return (_jsxs(CollapsableSection, { title: "Misc components", isLast: isLast, children: [_jsx(Group, { title: "Person", description: "Takes a person object (`MemberResource` type) and displays an avatar, name, and badges. If person is a child we show a special badge and faded styles. Implomentation is based on a similar Chat Web component.", children: _jsxs(Column, { children: [_jsx(Person, { person: personAdult }), _jsx(Person, { person: personChild })] }) }), _jsx(Group, { title: "BlankState", description: "Compound component with primitives to display imagary, heading, title, and a button.", children: _jsx(Column, { children: _jsxs(BlankState.Root, { children: [_jsx(BlankState.Imagery, { name: "general.outlinedTextMessage" }), _jsxs(BlankState.Content, { children: [_jsx(BlankState.Heading, { children: "No messages" }), _jsx(BlankState.Text, { children: "Conversation is hidden from everyone until you send a message." })] }), _jsx(BlankState.Button, { onPress: buttonPress, title: "Go back", accessibilityHint: "Navigates back to the conversations list", accessibilityRole: "link" })] }) }) })] }));
687
183
  }
688
184
  function CollapsableSection({ children, title, isLast = false }) {
689
185
  const styles = useStyles();
690
186
  const { colors } = useTheme();
691
187
  const [collapsed, setCollapsed] = useState(true);
692
- return (<View style={[styles.section, styles.sectionBorderTop, isLast && styles.sectionBorderBottom]}>
693
- <Pressable onPress={() => setCollapsed(!collapsed)} style={({ pressed }) => [styles.sectionHeader, pressed && platformPressedOpacityStyle]} android_ripple={{ color: colors.androidRippleNeutral, borderless: false, foreground: true }}>
694
- <Heading>{title}</Heading>
695
- <Icon name={collapsed ? 'general.plus' : 'general.minus'} size={16}/>
696
- </Pressable>
697
- {!collapsed && <View style={styles.sectionChildren}>{children}</View>}
698
- </View>);
188
+ return (_jsxs(View, { style: [styles.section, styles.sectionBorderTop, isLast && styles.sectionBorderBottom], children: [_jsxs(Pressable, { onPress: () => setCollapsed(!collapsed), style: ({ pressed }) => [styles.sectionHeader, pressed && platformPressedOpacityStyle], android_ripple: { color: colors.androidRippleNeutral, borderless: false, foreground: true }, children: [_jsx(Heading, { children: title }), _jsx(Icon, { name: collapsed ? 'general.plus' : 'general.minus', size: 16 })] }), !collapsed && _jsx(View, { style: styles.sectionChildren, children: children })] }));
699
189
  }
700
190
  function Group({ title, description, children }) {
701
191
  const styles = useStyles();
702
- return (<View style={styles.group}>
703
- <View style={styles.groupHeading}>
704
- <Heading variant="h3">{title}</Heading>
705
- {description && <Text variant="tertiary">{description}</Text>}
706
- </View>
707
- {children}
708
- </View>);
192
+ return (_jsxs(View, { style: styles.group, children: [_jsxs(View, { style: styles.groupHeading, children: [_jsx(Heading, { variant: "h3", children: title }), description && _jsx(Text, { variant: "tertiary", children: description })] }), children] }));
709
193
  }
710
194
  function Row({ children, style }) {
711
195
  const styles = useStyles();
712
- return <View style={[styles.row, style]}>{children}</View>;
196
+ return _jsx(View, { style: [styles.row, style], children: children });
713
197
  }
714
198
  function Column({ children, style }) {
715
199
  const styles = useStyles();
716
- return <View style={[styles.column, style]}>{children}</View>;
200
+ return _jsx(View, { style: [styles.column, style], children: children });
717
201
  }
718
202
  function TextGroup({ children }) {
719
203
  const styles = useStyles();
720
- return <View style={styles.textGroup}>{children}</View>;
204
+ return _jsx(View, { style: styles.textGroup, children: children });
721
205
  }
722
206
  function TextRow({ children, style }) {
723
207
  const styles = useStyles();
724
- return <View style={[styles.textRow, style]}>{children}</View>;
208
+ return _jsx(View, { style: [styles.textRow, style], children: children });
725
209
  }
726
210
  function TextListItem({ label, children }) {
727
211
  const styles = useStyles();
728
- return (<Text variant="tertiary">
729
- <Text variant="tertiary" style={styles.mediumWeight}>
730
- {label}
731
- </Text>{' '}
732
- {children}
733
- </Text>);
212
+ return (_jsxs(Text, { variant: "tertiary", children: [_jsx(Text, { variant: "tertiary", style: styles.mediumWeight, children: label }), ' ', children] }));
734
213
  }
735
214
  function HapticButton({ title, onPress }) {
736
215
  const styles = useStyles();
737
- return (<Pressable onPress={onPress} style={({ pressed }) => ({
216
+ return (_jsx(Pressable, { onPress: onPress, style: ({ pressed }) => ({
738
217
  ...styles.hapticButton,
739
218
  ...{ opacity: pressed ? 0.5 : 1 },
740
- })}>
741
- <Text style={styles.hapticButtonText}>{title}</Text>
742
- </Pressable>);
219
+ }), children: _jsx(Text, { style: styles.hapticButtonText, children: title }) }));
743
220
  }
744
221
  // =================================
745
222
  // ====== Styles ===================