@planningcenter/chat-react-native 4.3.0-rc.9 → 4.3.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 (75) hide show
  1. package/build/components/conversation/message_form.js +1 -1
  2. package/build/components/conversation/message_form.js.map +1 -1
  3. package/build/hooks/use_debounced_search_term.d.ts +2 -0
  4. package/build/hooks/use_debounced_search_term.d.ts.map +1 -0
  5. package/build/hooks/use_debounced_search_term.js +40 -0
  6. package/build/hooks/use_debounced_search_term.js.map +1 -0
  7. package/build/hooks/use_search_results.d.ts +19 -0
  8. package/build/hooks/use_search_results.d.ts.map +1 -0
  9. package/build/hooks/use_search_results.js +153 -0
  10. package/build/hooks/use_search_results.js.map +1 -0
  11. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts +2 -1
  12. package/build/screens/conversation_select_recipients/components/view_more_link_row.d.ts.map +1 -1
  13. package/build/screens/conversation_select_recipients/components/view_more_link_row.js +39 -24
  14. package/build/screens/conversation_select_recipients/components/view_more_link_row.js.map +1 -1
  15. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts.map +1 -1
  16. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js +142 -158
  17. package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js.map +1 -1
  18. package/build/screens/search/components/conversation_result_row.d.ts +8 -0
  19. package/build/screens/search/components/conversation_result_row.d.ts.map +1 -0
  20. package/build/screens/search/components/conversation_result_row.js +80 -0
  21. package/build/screens/search/components/conversation_result_row.js.map +1 -0
  22. package/build/screens/search/components/conversation_results.d.ts +8 -0
  23. package/build/screens/search/components/conversation_results.d.ts.map +1 -0
  24. package/build/screens/search/components/conversation_results.js +77 -0
  25. package/build/screens/search/components/conversation_results.js.map +1 -0
  26. package/build/screens/search/components/message_result_row.d.ts +8 -0
  27. package/build/screens/search/components/message_result_row.d.ts.map +1 -0
  28. package/build/screens/search/components/message_result_row.js +152 -0
  29. package/build/screens/search/components/message_result_row.js.map +1 -0
  30. package/build/screens/search/components/result_row.d.ts +10 -0
  31. package/build/screens/search/components/result_row.d.ts.map +1 -0
  32. package/build/screens/search/components/result_row.js +102 -0
  33. package/build/screens/search/components/result_row.js.map +1 -0
  34. package/build/screens/search/components/results_section.d.ts +9 -0
  35. package/build/screens/search/components/results_section.d.ts.map +1 -0
  36. package/build/screens/search/components/results_section.js +51 -0
  37. package/build/screens/search/components/results_section.js.map +1 -0
  38. package/build/screens/search/components/search_results_list.d.ts +8 -0
  39. package/build/screens/search/components/search_results_list.d.ts.map +1 -0
  40. package/build/screens/search/components/search_results_list.js +314 -0
  41. package/build/screens/search/components/search_results_list.js.map +1 -0
  42. package/build/screens/search/components/snippet.d.ts +8 -0
  43. package/build/screens/search/components/snippet.d.ts.map +1 -0
  44. package/build/screens/search/components/snippet.js +68 -0
  45. package/build/screens/search/components/snippet.js.map +1 -0
  46. package/build/screens/search/search_screen.d.ts.map +1 -1
  47. package/build/screens/search/search_screen.js +18 -9
  48. package/build/screens/search/search_screen.js.map +1 -1
  49. package/build/utils/client/request_helpers.js +1 -1
  50. package/build/utils/client/request_helpers.js.map +1 -1
  51. package/package.json +3 -3
  52. package/src/__tests__/utils/client.ts +3 -4
  53. package/src/components/conversation/__tests__/message_form.test.tsx +83 -0
  54. package/src/components/conversation/message_form.tsx +1 -1
  55. package/src/hooks/__tests__/use_debounced_search_term.test.tsx +38 -0
  56. package/src/hooks/__tests__/use_search_results.test.tsx +88 -0
  57. package/src/hooks/use_debounced_search_term.ts +20 -0
  58. package/src/hooks/use_search_results.ts +78 -0
  59. package/src/screens/conversation_select_recipients/components/view_more_link_row.tsx +12 -3
  60. package/src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx +3 -8
  61. package/src/screens/search/__tests__/search_screen.test.tsx +64 -0
  62. package/src/screens/search/components/__tests__/conversation_results.test.tsx +55 -0
  63. package/src/screens/search/components/__tests__/message_result_row.test.tsx +65 -0
  64. package/src/screens/search/components/__tests__/result_row.test.tsx +33 -0
  65. package/src/screens/search/components/__tests__/search_results_list.test.tsx +135 -0
  66. package/src/screens/search/components/conversation_result_row.tsx +36 -0
  67. package/src/screens/search/components/conversation_results.tsx +39 -0
  68. package/src/screens/search/components/message_result_row.tsx +48 -0
  69. package/src/screens/search/components/result_row.tsx +58 -0
  70. package/src/screens/search/components/results_section.tsx +34 -0
  71. package/src/screens/search/components/search_results_list.tsx +147 -0
  72. package/src/screens/search/components/snippet.tsx +37 -0
  73. package/src/screens/search/search_screen.tsx +9 -1
  74. package/src/utils/client/__tests__/request_helpers.test.ts +40 -0
  75. package/src/utils/client/request_helpers.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"conversation_select_direct_message_recipients_screen.js","names":["PlatformPressable","StackActions","useNavigation","useEffect","useRef","useState","FlatList","Pressable","StyleSheet","View","Avatar","Badge","Banner","Icon","KeyboardView","Spinner","Text","ActionButton","AutoFocusAwareTextInput","ComponentErrorBoundary","useTheme","useDirectMessageAffiliations","useDirectMessageCandidates","useDirectMessageConversationValidate","useFindOrCreateDirectMessageConversation","availableFeatures","useFeatures","ResultsHeading","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_RECIPIENTS","ConversationSelectDirectMessageRecipientsScreen","t0","$","_c","route","t1","params","preselected_people","t2","t3","undefined","styles","useStyles","navigation","featureEnabled","searchTerm","setSearchTerm","debouncedTerm","setDebouncedTerm","t4","Map","map","_temp","selectedPeople","setSelectedPeople","searchInputRef","t5","t6","timer","setTimeout","clearTimeout","t7","size","person_0","prev","set","person","id","dm_search_clear_fix","current","clear","selectPerson","t8","Symbol","for","prev_0","next","delete","removePerson","t9","keys","recipientIds","t10","warnings","validationPending","t11","conversationId","getParent","dispatch","replace","conversation_id","handleSuccess","t12","onSuccess","findOrCreateConversation","directMessageExists","isFinding","isError","t13","bb0","t14","values","value","name","split","firstName","buttonText","errorBanner","appearance","description","style","t15","t16","ToField","onClear","t17","t18","CandidateResults","t19","fallback","children","t20","candidateResultsContainer","t21","length","t22","t23","t24","disabled","loading","onPress","t25","type","groups","teams","under_18","directMessagesDisabled","onSearchChange","onRemove","colors","hasSelections","toField","toLabel","clearButton","hitSlop","toFieldHeader","toInputArea","PersonChip","textColorDefaultPlaceholder","toTextInput","autoFocus","placeholder","placeholderTextColor","returnKeyType","avatar","sourceUri","showFallback","chipName","chipRemoveIcon","accessibilityLabel","chip","term","onSelect","data","isFetching","resultsDescription","emptyStateIcon","emptyStateTitle","emptyStateSubtitle","variant","emptyState","isAtLimit","c","has","filter","unselectedCandidates","hasTruncated","meta","totalCount","CandidateList","candidateBadges","candidate","badges","push","title","candidateAffiliationNames","flatMap","get","candidates","_temp2","available","T0","dmDisabled","_temp3","_temp4","item","item_0","CandidateItem","affiliationNames","unavailableHeader","unavailableLabel","truncatedFooter","truncatedText","keyboardShouldPersistTaps","keyExtractor","renderItem","ListHeaderComponent","ListFooterComponent","c_0","candidateDisabled","row","rowName","rowAffiliations","numberOfLines","join","badgeRow","_temp5","rowInfo","accessibilityRole","accessibilityState","borderColorDefaultBase","borderColorDefaultDim","iconColorDefaultSecondary","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flex","paddingHorizontal","paddingTop","paddingBottom","flexDirection","justifyContent","alignItems","marginBottom","fontWeight","color","flexWrap","gap","borderWidth","borderColor","borderRadius","paddingVertical","minWidth","fontSize","paddingLeft","paddingRight","margin","textAlign","borderBottomWidth","marginTop","opacity"],"sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport { StackActions, useNavigation } from '@react-navigation/native'\nimport { RefObject, useEffect, useRef, useState } from 'react'\nimport { FlatList, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Avatar, Badge, Banner, Icon, KeyboardView, Spinner, Text } from '../../components'\nimport { ActionButton } from '../../components/display/action_button'\nimport { AutoFocusAwareTextInput } from '../../components/display/text_input'\nimport { ComponentErrorBoundary } from '../../components/page/component_error_boundary'\nimport { useTheme } from '../../hooks'\nimport { useDirectMessageAffiliations } from '../../hooks/direct_messages/use_direct_message_affiliations'\nimport { useDirectMessageCandidates } from '../../hooks/direct_messages/use_direct_message_candidates'\nimport { useDirectMessageConversationValidate } from '../../hooks/direct_messages/use_direct_message_conversation_validate'\nimport { useFindOrCreateDirectMessageConversation } from '../../hooks/direct_messages/use_find_or_create_direct_message_conversation'\nimport { availableFeatures, useFeatures } from '../../hooks/use_features'\nimport { DirectMessageCandidateResource } from '../../types/resources/direct_message_candidate'\nimport { ResultsHeading } from './components/results_heading'\nimport { ConversationSelectRecipientsScreenProps } from './types/screen_props'\n\nconst MAX_RECIPIENTS = 9\n\nexport function ConversationSelectDirectMessageRecipientsScreen({\n route,\n}: ConversationSelectRecipientsScreenProps) {\n const { preselected_people = [] } = route.params ?? {}\n const styles = useStyles()\n const navigation = useNavigation()\n const { featureEnabled } = useFeatures()\n const [searchTerm, setSearchTerm] = useState('')\n const [debouncedTerm, setDebouncedTerm] = useState('')\n const [selectedPeople, setSelectedPeople] = useState<Map<string, DirectMessageCandidateResource>>(\n () =>\n new Map(\n preselected_people.map(person => [\n person.id,\n {\n ...person,\n type: 'DirectMessageCandidate' as const,\n groups: [],\n teams: [],\n under_18: false,\n directMessagesDisabled: false,\n },\n ])\n )\n )\n const searchInputRef = useRef<TextInput>(null)\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedTerm(searchTerm), 200)\n return () => clearTimeout(timer)\n }, [searchTerm])\n\n const selectPerson = (person: DirectMessageCandidateResource) => {\n if (selectedPeople.size >= MAX_RECIPIENTS) return\n setSelectedPeople(prev => new Map(prev).set(person.id, person))\n setSearchTerm('')\n setDebouncedTerm('')\n // Controlled TextInput can retain stale native text on iOS when the value\n // is cleared while it stays focused (keyboardShouldPersistTaps keeps it\n // focused through the tap) — clear() forces the native view to sync. Gated\n // so EAP reporters can toggle the fix on their devices to confirm it.\n if (featureEnabled(availableFeatures.dm_search_clear_fix)) {\n searchInputRef.current?.clear()\n }\n }\n\n const removePerson = (id: string) => {\n setSelectedPeople(prev => {\n const next = new Map(prev)\n next.delete(id)\n return next\n })\n }\n\n const recipientIds = [...selectedPeople.keys()]\n const { warnings, validationPending } = useDirectMessageConversationValidate({ recipientIds })\n\n const handleSuccess = (conversationId: number) => {\n navigation\n .getParent()\n ?.dispatch(StackActions.replace('Conversation', { conversation_id: conversationId }))\n }\n\n const { findOrCreateConversation, directMessageExists, isFinding, isError } =\n useFindOrCreateDirectMessageConversation({ recipientIds, onSuccess: handleSuccess })\n\n const buttonText = (() => {\n if (selectedPeople.size === 0) return 'Start conversation'\n if (selectedPeople.size === 1) {\n const firstName = selectedPeople.values().next().value!.name.split(' ')[0]\n return directMessageExists ? `Open message with ${firstName}` : `Message ${firstName}`\n }\n return directMessageExists\n ? `Open direct message (${selectedPeople.size})`\n : `Start direct message (${selectedPeople.size})`\n })()\n\n return (\n <KeyboardView>\n {isError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue starting the conversation. Please try again.\"\n style={styles.errorBanner}\n />\n )}\n <ToField\n selectedPeople={selectedPeople}\n searchTerm={searchTerm}\n onSearchChange={setSearchTerm}\n onRemove={removePerson}\n onClear={() => setSelectedPeople(new Map())}\n searchInputRef={searchInputRef}\n />\n <View style={styles.candidateResultsContainer}>\n <ComponentErrorBoundary\n key={debouncedTerm}\n fallback={\n <Banner\n appearance=\"error\"\n description=\"Couldn't load people right now. Try again.\"\n style={styles.errorBanner}\n />\n }\n >\n <CandidateResults\n term={debouncedTerm}\n selectedPeople={selectedPeople}\n onSelect={selectPerson}\n />\n </ComponentErrorBoundary>\n </View>\n <ActionButton\n title={buttonText}\n disabled={\n selectedPeople.size === 0 || validationPending || warnings.length > 0 || isFinding\n }\n loading={validationPending || isFinding}\n onPress={() => findOrCreateConversation(recipientIds)}\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\nfunction ToField({\n selectedPeople,\n searchTerm,\n onSearchChange,\n onRemove,\n onClear,\n searchInputRef,\n}: {\n selectedPeople: Map<string, DirectMessageCandidateResource>\n searchTerm: string\n onSearchChange: (term: string) => void\n onRemove: (id: string) => void\n onClear: () => void\n searchInputRef: RefObject<TextInput | null>\n}) {\n const styles = useStyles()\n const { colors } = useTheme()\n const hasSelections = selectedPeople.size > 0\n\n return (\n <View style={styles.toField}>\n <View style={styles.toFieldHeader}>\n <Text style={styles.toLabel}>To</Text>\n {hasSelections && (\n <Pressable onPress={onClear} hitSlop={8}>\n <Text style={styles.clearButton}>Clear</Text>\n </Pressable>\n )}\n </View>\n <View style={styles.toInputArea}>\n {[...selectedPeople.values()].map(person => (\n <PersonChip key={person.id} person={person} onRemove={onRemove} />\n ))}\n <AutoFocusAwareTextInput\n autoFocus\n inputRef={searchInputRef}\n placeholder=\"Search\"\n placeholderTextColor={colors.textColorDefaultPlaceholder}\n value={searchTerm}\n onChangeText={onSearchChange}\n style={styles.toTextInput}\n returnKeyType=\"search\"\n />\n </View>\n </View>\n )\n}\n\nfunction PersonChip({\n person,\n onRemove,\n}: {\n person: DirectMessageCandidateResource\n onRemove: (id: string) => void\n}) {\n const styles = useStyles()\n\n return (\n <View style={styles.chip}>\n <Avatar sourceUri={person.avatar} size=\"sm\" showFallback={!person.avatar} />\n <Text style={styles.chipName}>{person.name}</Text>\n <Pressable\n onPress={() => onRemove(person.id)}\n hitSlop={8}\n accessibilityLabel={`Remove ${person.name}`}\n >\n <Icon name=\"general.x\" size={12} style={styles.chipRemoveIcon} />\n </Pressable>\n </View>\n )\n}\n\nfunction CandidateResults({\n term,\n selectedPeople,\n onSelect,\n}: {\n term: string\n selectedPeople: Map<string, DirectMessageCandidateResource>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const { data, isFetching } = useDirectMessageCandidates(term)\n const { groups, teams, resultsDescription } = useDirectMessageAffiliations()\n\n if (term.length < 1) {\n if (selectedPeople.size > 0) return null\n\n return (\n <View style={styles.emptyState}>\n <Icon name=\"churchCenter.people\" size={40} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>Search for people to direct message</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Start a conversation with people in your groups and teams.\n </Text>\n </View>\n )\n }\n\n const isAtLimit = selectedPeople.size >= MAX_RECIPIENTS\n\n if (isAtLimit) {\n return (\n <View style={styles.emptyState}>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n You can add up to {MAX_RECIPIENTS} people to a direct message.\n </Text>\n </View>\n )\n }\n\n const unselectedCandidates = (data?.data ?? []).filter(c => !selectedPeople.has(c.id))\n const hasTruncated = (data?.meta.totalCount ?? 0) > (data?.data.length ?? 0)\n\n if (isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Spinner />\n </View>\n )\n }\n\n if (!isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Icon name=\"general.search\" size={32} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>No matches for \"{term}\"</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Try a different name, or check that you share a group or team with them.\n </Text>\n </View>\n )\n }\n\n return (\n <CandidateList\n candidates={unselectedCandidates}\n hasTruncated={hasTruncated}\n description={resultsDescription}\n groups={groups}\n teams={teams}\n onSelect={onSelect}\n />\n )\n}\n\nfunction candidateBadges(candidate: DirectMessageCandidateResource) {\n const badges = []\n if (candidate.directMessagesDisabled) badges.push({ title: 'DMs off' })\n if (candidate.under_18) badges.push({ title: 'Under 18' })\n return badges\n}\n\nfunction candidateAffiliationNames(\n candidate: DirectMessageCandidateResource,\n groups: Map<number, string>,\n teams: Map<number, string>\n) {\n return [\n ...candidate.groups.flatMap(id => {\n const name = groups.get(id)\n return name ? [name] : []\n }),\n ...candidate.teams.flatMap(id => {\n const name = teams.get(id)\n return name ? [name] : []\n }),\n ]\n}\n\nfunction CandidateList({\n candidates,\n hasTruncated,\n description,\n groups,\n teams,\n onSelect,\n}: {\n candidates: DirectMessageCandidateResource[]\n hasTruncated: boolean\n description: string | null\n groups: Map<number, string>\n teams: Map<number, string>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const available = candidates.filter(c => !c.directMessagesDisabled)\n const dmDisabled = candidates.filter(c => c.directMessagesDisabled)\n\n return (\n <FlatList<DirectMessageCandidateResource>\n data={available}\n keyboardShouldPersistTaps=\"handled\"\n keyExtractor={item => item.id}\n renderItem={({ item }) => (\n <CandidateItem\n candidate={item}\n badges={candidateBadges(item)}\n affiliationNames={candidateAffiliationNames(item, groups, teams)}\n onSelect={() => onSelect(item)}\n />\n )}\n ListHeaderComponent={<ResultsHeading description={description} />}\n ListFooterComponent={\n <>\n {dmDisabled.length > 0 && (\n <>\n <View style={styles.unavailableHeader}>\n <Text variant=\"secondary\" style={styles.unavailableLabel}>\n Unavailable for direct messages\n </Text>\n </View>\n {dmDisabled.map(candidate => (\n <CandidateItem\n key={candidate.id}\n candidate={candidate}\n badges={candidateBadges(candidate)}\n affiliationNames={candidateAffiliationNames(candidate, groups, teams)}\n disabled\n />\n ))}\n </>\n )}\n {hasTruncated && (\n <View style={styles.truncatedFooter}>\n <Text variant=\"secondary\" style={styles.truncatedText}>\n Keep typing to narrow your results.\n </Text>\n </View>\n )}\n </>\n }\n />\n )\n}\n\nfunction CandidateItem({\n candidate,\n badges,\n affiliationNames,\n onSelect,\n disabled = false,\n}: {\n candidate: DirectMessageCandidateResource\n badges: { title: string }[]\n affiliationNames: string[]\n onSelect?: () => void\n disabled?: boolean\n}) {\n const styles = useStyles()\n\n return (\n <PlatformPressable\n onPress={disabled ? undefined : onSelect}\n accessibilityRole=\"button\"\n accessibilityLabel={`Select ${candidate.name}`}\n accessibilityState={{ disabled }}\n >\n <View style={[styles.row, disabled && styles.candidateDisabled]}>\n <Avatar sourceUri={candidate.avatar} size=\"lg\" showFallback={!candidate.avatar} />\n <View style={styles.rowInfo}>\n <Text style={styles.rowName}>{candidate.name}</Text>\n {affiliationNames.length > 0 && (\n <Text style={styles.rowAffiliations} numberOfLines={2}>\n {affiliationNames.join(', ')}\n </Text>\n )}\n {badges.length > 0 && (\n <View style={styles.badgeRow}>\n {badges.map(({ title }) => (\n <Badge key={title} label={title} />\n ))}\n </View>\n )}\n </View>\n </View>\n </PlatformPressable>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n candidateResultsContainer: {\n flex: 1,\n },\n toField: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n toFieldHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n marginBottom: 8,\n },\n toLabel: {\n fontWeight: '600',\n color: colors.textColorDefaultSecondary,\n },\n clearButton: {\n color: colors.interaction,\n },\n toInputArea: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 6,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 8,\n paddingHorizontal: 10,\n paddingVertical: 8,\n },\n toTextInput: {\n flex: 1,\n minWidth: 80,\n color: colors.textColorDefaultPrimary,\n fontSize: 16,\n paddingVertical: 2,\n },\n chip: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 100,\n paddingLeft: 4,\n paddingRight: 6,\n paddingVertical: 3,\n },\n chipName: {\n fontSize: 14,\n },\n chipRemoveIcon: {\n color: colors.iconColorDefaultSecondary,\n },\n errorBanner: {\n margin: 16,\n },\n emptyState: {\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 32,\n gap: 8,\n },\n emptyStateIcon: {\n color: colors.iconColorDefaultSecondary,\n marginBottom: 4,\n },\n emptyStateTitle: {\n fontWeight: '600',\n textAlign: 'center',\n },\n emptyStateSubtitle: {\n textAlign: 'center',\n fontSize: 14,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderColor: colors.borderColorDefaultDim,\n },\n rowInfo: {\n flex: 1,\n gap: 2,\n },\n rowName: {\n fontSize: 15,\n fontWeight: '500',\n },\n rowAffiliations: {\n fontSize: 12,\n color: colors.textColorDefaultSecondary,\n },\n badgeRow: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: 4,\n marginTop: 4,\n },\n\n candidateDisabled: {\n opacity: 0.5,\n },\n unavailableHeader: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n unavailableLabel: {\n fontSize: 13,\n },\n truncatedFooter: {\n paddingHorizontal: 16,\n paddingTop: 12,\n paddingBottom: 8,\n },\n truncatedText: {\n fontSize: 13,\n textAlign: 'center',\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"conversation_select_direct_message_recipients_screen.js","names":["PlatformPressable","StackActions","useNavigation","useRef","useState","FlatList","Pressable","StyleSheet","View","Avatar","Badge","Banner","Icon","KeyboardView","Spinner","Text","ActionButton","AutoFocusAwareTextInput","ComponentErrorBoundary","useTheme","useDirectMessageAffiliations","useDirectMessageCandidates","useDirectMessageConversationValidate","useFindOrCreateDirectMessageConversation","useDebouncedSearchTerm","availableFeatures","useFeatures","ResultsHeading","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_RECIPIENTS","ConversationSelectDirectMessageRecipientsScreen","t0","$","_c","route","t1","params","preselected_people","t2","t3","undefined","styles","useStyles","navigation","featureEnabled","searchTerm","setSearchTerm","debouncedTerm","t4","Map","map","_temp","selectedPeople","setSelectedPeople","searchInputRef","t5","size","person_0","prev","set","person","id","dm_search_clear_fix","current","clear","selectPerson","t6","Symbol","for","prev_0","next","delete","removePerson","t7","keys","recipientIds","t8","warnings","validationPending","t9","conversationId","getParent","dispatch","replace","conversation_id","handleSuccess","t10","onSuccess","findOrCreateConversation","directMessageExists","isFinding","isError","t11","bb0","t12","values","value","name","split","firstName","buttonText","errorBanner","appearance","description","style","t13","t14","ToField","onClear","t15","t16","CandidateResults","t17","fallback","children","t18","candidateResultsContainer","t19","length","t20","t21","t22","disabled","loading","onPress","t23","type","groups","teams","under_18","directMessagesDisabled","onSearchChange","onRemove","colors","hasSelections","toField","toLabel","clearButton","hitSlop","toFieldHeader","toInputArea","PersonChip","textColorDefaultPlaceholder","toTextInput","autoFocus","placeholder","placeholderTextColor","returnKeyType","avatar","sourceUri","showFallback","chipName","chipRemoveIcon","accessibilityLabel","chip","term","onSelect","data","isFetching","resultsDescription","emptyStateIcon","emptyStateTitle","emptyStateSubtitle","variant","emptyState","isAtLimit","c","has","filter","unselectedCandidates","hasTruncated","meta","totalCount","CandidateList","candidateBadges","candidate","badges","push","title","candidateAffiliationNames","flatMap","get","candidates","_temp2","available","T0","dmDisabled","_temp3","_temp4","item","item_0","CandidateItem","affiliationNames","unavailableHeader","unavailableLabel","truncatedFooter","truncatedText","keyboardShouldPersistTaps","keyExtractor","renderItem","ListHeaderComponent","ListFooterComponent","c_0","candidateDisabled","row","rowName","rowAffiliations","numberOfLines","join","badgeRow","_temp5","rowInfo","accessibilityRole","accessibilityState","borderColorDefaultBase","borderColorDefaultDim","iconColorDefaultSecondary","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flex","paddingHorizontal","paddingTop","paddingBottom","flexDirection","justifyContent","alignItems","marginBottom","fontWeight","color","flexWrap","gap","borderWidth","borderColor","borderRadius","paddingVertical","minWidth","fontSize","paddingLeft","paddingRight","margin","textAlign","borderBottomWidth","marginTop","opacity"],"sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport { StackActions, useNavigation } from '@react-navigation/native'\nimport { RefObject, useRef, useState } from 'react'\nimport { FlatList, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Avatar, Badge, Banner, Icon, KeyboardView, Spinner, Text } from '../../components'\nimport { ActionButton } from '../../components/display/action_button'\nimport { AutoFocusAwareTextInput } from '../../components/display/text_input'\nimport { ComponentErrorBoundary } from '../../components/page/component_error_boundary'\nimport { useTheme } from '../../hooks'\nimport { useDirectMessageAffiliations } from '../../hooks/direct_messages/use_direct_message_affiliations'\nimport { useDirectMessageCandidates } from '../../hooks/direct_messages/use_direct_message_candidates'\nimport { useDirectMessageConversationValidate } from '../../hooks/direct_messages/use_direct_message_conversation_validate'\nimport { useFindOrCreateDirectMessageConversation } from '../../hooks/direct_messages/use_find_or_create_direct_message_conversation'\nimport { useDebouncedSearchTerm } from '../../hooks/use_debounced_search_term'\nimport { availableFeatures, useFeatures } from '../../hooks/use_features'\nimport { DirectMessageCandidateResource } from '../../types/resources/direct_message_candidate'\nimport { ResultsHeading } from './components/results_heading'\nimport { ConversationSelectRecipientsScreenProps } from './types/screen_props'\n\nconst MAX_RECIPIENTS = 9\n\nexport function ConversationSelectDirectMessageRecipientsScreen({\n route,\n}: ConversationSelectRecipientsScreenProps) {\n const { preselected_people = [] } = route.params ?? {}\n const styles = useStyles()\n const navigation = useNavigation()\n const { featureEnabled } = useFeatures()\n const [searchTerm, setSearchTerm] = useState('')\n const debouncedTerm = useDebouncedSearchTerm(searchTerm)\n const [selectedPeople, setSelectedPeople] = useState<Map<string, DirectMessageCandidateResource>>(\n () =>\n new Map(\n preselected_people.map(person => [\n person.id,\n {\n ...person,\n type: 'DirectMessageCandidate' as const,\n groups: [],\n teams: [],\n under_18: false,\n directMessagesDisabled: false,\n },\n ])\n )\n )\n const searchInputRef = useRef<TextInput>(null)\n\n const selectPerson = (person: DirectMessageCandidateResource) => {\n if (selectedPeople.size >= MAX_RECIPIENTS) return\n setSelectedPeople(prev => new Map(prev).set(person.id, person))\n setSearchTerm('')\n // Controlled TextInput can retain stale native text on iOS when the value\n // is cleared while it stays focused (keyboardShouldPersistTaps keeps it\n // focused through the tap) — clear() forces the native view to sync. Gated\n // so EAP reporters can toggle the fix on their devices to confirm it.\n if (featureEnabled(availableFeatures.dm_search_clear_fix)) {\n searchInputRef.current?.clear()\n }\n }\n\n const removePerson = (id: string) => {\n setSelectedPeople(prev => {\n const next = new Map(prev)\n next.delete(id)\n return next\n })\n }\n\n const recipientIds = [...selectedPeople.keys()]\n const { warnings, validationPending } = useDirectMessageConversationValidate({ recipientIds })\n\n const handleSuccess = (conversationId: number) => {\n navigation\n .getParent()\n ?.dispatch(StackActions.replace('Conversation', { conversation_id: conversationId }))\n }\n\n const { findOrCreateConversation, directMessageExists, isFinding, isError } =\n useFindOrCreateDirectMessageConversation({ recipientIds, onSuccess: handleSuccess })\n\n const buttonText = (() => {\n if (selectedPeople.size === 0) return 'Start conversation'\n if (selectedPeople.size === 1) {\n const firstName = selectedPeople.values().next().value!.name.split(' ')[0]\n return directMessageExists ? `Open message with ${firstName}` : `Message ${firstName}`\n }\n return directMessageExists\n ? `Open direct message (${selectedPeople.size})`\n : `Start direct message (${selectedPeople.size})`\n })()\n\n return (\n <KeyboardView>\n {isError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue starting the conversation. Please try again.\"\n style={styles.errorBanner}\n />\n )}\n <ToField\n selectedPeople={selectedPeople}\n searchTerm={searchTerm}\n onSearchChange={setSearchTerm}\n onRemove={removePerson}\n onClear={() => setSelectedPeople(new Map())}\n searchInputRef={searchInputRef}\n />\n <View style={styles.candidateResultsContainer}>\n <ComponentErrorBoundary\n key={debouncedTerm}\n fallback={\n <Banner\n appearance=\"error\"\n description=\"Couldn't load people right now. Try again.\"\n style={styles.errorBanner}\n />\n }\n >\n <CandidateResults\n term={debouncedTerm}\n selectedPeople={selectedPeople}\n onSelect={selectPerson}\n />\n </ComponentErrorBoundary>\n </View>\n <ActionButton\n title={buttonText}\n disabled={\n selectedPeople.size === 0 || validationPending || warnings.length > 0 || isFinding\n }\n loading={validationPending || isFinding}\n onPress={() => findOrCreateConversation(recipientIds)}\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\nfunction ToField({\n selectedPeople,\n searchTerm,\n onSearchChange,\n onRemove,\n onClear,\n searchInputRef,\n}: {\n selectedPeople: Map<string, DirectMessageCandidateResource>\n searchTerm: string\n onSearchChange: (term: string) => void\n onRemove: (id: string) => void\n onClear: () => void\n searchInputRef: RefObject<TextInput | null>\n}) {\n const styles = useStyles()\n const { colors } = useTheme()\n const hasSelections = selectedPeople.size > 0\n\n return (\n <View style={styles.toField}>\n <View style={styles.toFieldHeader}>\n <Text style={styles.toLabel}>To</Text>\n {hasSelections && (\n <Pressable onPress={onClear} hitSlop={8}>\n <Text style={styles.clearButton}>Clear</Text>\n </Pressable>\n )}\n </View>\n <View style={styles.toInputArea}>\n {[...selectedPeople.values()].map(person => (\n <PersonChip key={person.id} person={person} onRemove={onRemove} />\n ))}\n <AutoFocusAwareTextInput\n autoFocus\n inputRef={searchInputRef}\n placeholder=\"Search\"\n placeholderTextColor={colors.textColorDefaultPlaceholder}\n value={searchTerm}\n onChangeText={onSearchChange}\n style={styles.toTextInput}\n returnKeyType=\"search\"\n />\n </View>\n </View>\n )\n}\n\nfunction PersonChip({\n person,\n onRemove,\n}: {\n person: DirectMessageCandidateResource\n onRemove: (id: string) => void\n}) {\n const styles = useStyles()\n\n return (\n <View style={styles.chip}>\n <Avatar sourceUri={person.avatar} size=\"sm\" showFallback={!person.avatar} />\n <Text style={styles.chipName}>{person.name}</Text>\n <Pressable\n onPress={() => onRemove(person.id)}\n hitSlop={8}\n accessibilityLabel={`Remove ${person.name}`}\n >\n <Icon name=\"general.x\" size={12} style={styles.chipRemoveIcon} />\n </Pressable>\n </View>\n )\n}\n\nfunction CandidateResults({\n term,\n selectedPeople,\n onSelect,\n}: {\n term: string\n selectedPeople: Map<string, DirectMessageCandidateResource>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const { data, isFetching } = useDirectMessageCandidates(term)\n const { groups, teams, resultsDescription } = useDirectMessageAffiliations()\n\n if (term.length < 1) {\n if (selectedPeople.size > 0) return null\n\n return (\n <View style={styles.emptyState}>\n <Icon name=\"churchCenter.people\" size={40} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>Search for people to direct message</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Start a conversation with people in your groups and teams.\n </Text>\n </View>\n )\n }\n\n const isAtLimit = selectedPeople.size >= MAX_RECIPIENTS\n\n if (isAtLimit) {\n return (\n <View style={styles.emptyState}>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n You can add up to {MAX_RECIPIENTS} people to a direct message.\n </Text>\n </View>\n )\n }\n\n const unselectedCandidates = (data?.data ?? []).filter(c => !selectedPeople.has(c.id))\n const hasTruncated = (data?.meta.totalCount ?? 0) > (data?.data.length ?? 0)\n\n if (isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Spinner />\n </View>\n )\n }\n\n if (!isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Icon name=\"general.search\" size={32} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>No matches for \"{term}\"</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Try a different name, or check that you share a group or team with them.\n </Text>\n </View>\n )\n }\n\n return (\n <CandidateList\n candidates={unselectedCandidates}\n hasTruncated={hasTruncated}\n description={resultsDescription}\n groups={groups}\n teams={teams}\n onSelect={onSelect}\n />\n )\n}\n\nfunction candidateBadges(candidate: DirectMessageCandidateResource) {\n const badges = []\n if (candidate.directMessagesDisabled) badges.push({ title: 'DMs off' })\n if (candidate.under_18) badges.push({ title: 'Under 18' })\n return badges\n}\n\nfunction candidateAffiliationNames(\n candidate: DirectMessageCandidateResource,\n groups: Map<number, string>,\n teams: Map<number, string>\n) {\n return [\n ...candidate.groups.flatMap(id => {\n const name = groups.get(id)\n return name ? [name] : []\n }),\n ...candidate.teams.flatMap(id => {\n const name = teams.get(id)\n return name ? [name] : []\n }),\n ]\n}\n\nfunction CandidateList({\n candidates,\n hasTruncated,\n description,\n groups,\n teams,\n onSelect,\n}: {\n candidates: DirectMessageCandidateResource[]\n hasTruncated: boolean\n description: string | null\n groups: Map<number, string>\n teams: Map<number, string>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const available = candidates.filter(c => !c.directMessagesDisabled)\n const dmDisabled = candidates.filter(c => c.directMessagesDisabled)\n\n return (\n <FlatList<DirectMessageCandidateResource>\n data={available}\n keyboardShouldPersistTaps=\"handled\"\n keyExtractor={item => item.id}\n renderItem={({ item }) => (\n <CandidateItem\n candidate={item}\n badges={candidateBadges(item)}\n affiliationNames={candidateAffiliationNames(item, groups, teams)}\n onSelect={() => onSelect(item)}\n />\n )}\n ListHeaderComponent={<ResultsHeading description={description} />}\n ListFooterComponent={\n <>\n {dmDisabled.length > 0 && (\n <>\n <View style={styles.unavailableHeader}>\n <Text variant=\"secondary\" style={styles.unavailableLabel}>\n Unavailable for direct messages\n </Text>\n </View>\n {dmDisabled.map(candidate => (\n <CandidateItem\n key={candidate.id}\n candidate={candidate}\n badges={candidateBadges(candidate)}\n affiliationNames={candidateAffiliationNames(candidate, groups, teams)}\n disabled\n />\n ))}\n </>\n )}\n {hasTruncated && (\n <View style={styles.truncatedFooter}>\n <Text variant=\"secondary\" style={styles.truncatedText}>\n Keep typing to narrow your results.\n </Text>\n </View>\n )}\n </>\n }\n />\n )\n}\n\nfunction CandidateItem({\n candidate,\n badges,\n affiliationNames,\n onSelect,\n disabled = false,\n}: {\n candidate: DirectMessageCandidateResource\n badges: { title: string }[]\n affiliationNames: string[]\n onSelect?: () => void\n disabled?: boolean\n}) {\n const styles = useStyles()\n\n return (\n <PlatformPressable\n onPress={disabled ? undefined : onSelect}\n accessibilityRole=\"button\"\n accessibilityLabel={`Select ${candidate.name}`}\n accessibilityState={{ disabled }}\n >\n <View style={[styles.row, disabled && styles.candidateDisabled]}>\n <Avatar sourceUri={candidate.avatar} size=\"lg\" showFallback={!candidate.avatar} />\n <View style={styles.rowInfo}>\n <Text style={styles.rowName}>{candidate.name}</Text>\n {affiliationNames.length > 0 && (\n <Text style={styles.rowAffiliations} numberOfLines={2}>\n {affiliationNames.join(', ')}\n </Text>\n )}\n {badges.length > 0 && (\n <View style={styles.badgeRow}>\n {badges.map(({ title }) => (\n <Badge key={title} label={title} />\n ))}\n </View>\n )}\n </View>\n </View>\n </PlatformPressable>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n candidateResultsContainer: {\n flex: 1,\n },\n toField: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n toFieldHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n marginBottom: 8,\n },\n toLabel: {\n fontWeight: '600',\n color: colors.textColorDefaultSecondary,\n },\n clearButton: {\n color: colors.interaction,\n },\n toInputArea: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 6,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 8,\n paddingHorizontal: 10,\n paddingVertical: 8,\n },\n toTextInput: {\n flex: 1,\n minWidth: 80,\n color: colors.textColorDefaultPrimary,\n fontSize: 16,\n paddingVertical: 2,\n },\n chip: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 100,\n paddingLeft: 4,\n paddingRight: 6,\n paddingVertical: 3,\n },\n chipName: {\n fontSize: 14,\n },\n chipRemoveIcon: {\n color: colors.iconColorDefaultSecondary,\n },\n errorBanner: {\n margin: 16,\n },\n emptyState: {\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 32,\n gap: 8,\n },\n emptyStateIcon: {\n color: colors.iconColorDefaultSecondary,\n marginBottom: 4,\n },\n emptyStateTitle: {\n fontWeight: '600',\n textAlign: 'center',\n },\n emptyStateSubtitle: {\n textAlign: 'center',\n fontSize: 14,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderColor: colors.borderColorDefaultDim,\n },\n rowInfo: {\n flex: 1,\n gap: 2,\n },\n rowName: {\n fontSize: 15,\n fontWeight: '500',\n },\n rowAffiliations: {\n fontSize: 12,\n color: colors.textColorDefaultSecondary,\n },\n badgeRow: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: 4,\n marginTop: 4,\n },\n\n candidateDisabled: {\n opacity: 0.5,\n },\n unavailableHeader: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n unavailableLabel: {\n fontSize: 13,\n },\n truncatedFooter: {\n paddingHorizontal: 16,\n paddingTop: 12,\n paddingBottom: 8,\n },\n truncatedText: {\n fontSize: 13,\n textAlign: 'center',\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { ConversationSearchResultResource } from '../../../types';
2
+ interface ConversationResultRowProps {
3
+ result: ConversationSearchResultResource;
4
+ onPress: () => void;
5
+ }
6
+ export declare function ConversationResultRow({ result, onPress }: ConversationResultRowProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=conversation_result_row.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation_result_row.d.ts","sourceRoot":"","sources":["../../../../src/screens/search/components/conversation_result_row.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAA;AAGtE,UAAU,0BAA0B;IAClC,MAAM,EAAE,gCAAgC,CAAA;IACxC,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,qBAAqB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,0BAA0B,2CAYpF"}
@@ -0,0 +1,80 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { StyleSheet } from 'react-native';
3
+ import { ConversationAvatar, Heading } from '../../../components';
4
+ import { useScalableNumberOfLines, useTheme } from '../../../hooks';
5
+ import { ResultRow } from './result_row';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ export function ConversationResultRow(t0) {
8
+ const $ = _c(11);
9
+ const {
10
+ result,
11
+ onPress
12
+ } = t0;
13
+ const styles = useStyles();
14
+ const numberOfLines = useScalableNumberOfLines(1);
15
+ let t1;
16
+ if ($[0] !== result.extra.avatar) {
17
+ t1 = /*#__PURE__*/_jsx(ConversationAvatar, {
18
+ conversation: result.extra.avatar,
19
+ size: "lg"
20
+ });
21
+ $[0] = result.extra.avatar;
22
+ $[1] = t1;
23
+ } else {
24
+ t1 = $[1];
25
+ }
26
+ let t2;
27
+ if ($[2] !== numberOfLines || $[3] !== result.title || $[4] !== styles.title) {
28
+ t2 = /*#__PURE__*/_jsx(Heading, {
29
+ variant: "h3",
30
+ numberOfLines: numberOfLines,
31
+ style: styles.title,
32
+ children: result.title
33
+ });
34
+ $[2] = numberOfLines;
35
+ $[3] = result.title;
36
+ $[4] = styles.title;
37
+ $[5] = t2;
38
+ } else {
39
+ t2 = $[5];
40
+ }
41
+ let t3;
42
+ if ($[6] !== onPress || $[7] !== result.title || $[8] !== t1 || $[9] !== t2) {
43
+ t3 = /*#__PURE__*/_jsxs(ResultRow, {
44
+ accessibilityLabel: result.title,
45
+ onPress: onPress,
46
+ alignItems: "center",
47
+ children: [t1, t2]
48
+ });
49
+ $[6] = onPress;
50
+ $[7] = result.title;
51
+ $[8] = t1;
52
+ $[9] = t2;
53
+ $[10] = t3;
54
+ } else {
55
+ t3 = $[10];
56
+ }
57
+ return t3;
58
+ }
59
+ const useStyles = () => {
60
+ const $ = _c(2);
61
+ const {
62
+ colors
63
+ } = useTheme();
64
+ let t0;
65
+ if ($[0] !== colors.textColorDefaultPrimary) {
66
+ t0 = StyleSheet.create({
67
+ title: {
68
+ flex: 1,
69
+ fontSize: 16,
70
+ color: colors.textColorDefaultPrimary
71
+ }
72
+ });
73
+ $[0] = colors.textColorDefaultPrimary;
74
+ $[1] = t0;
75
+ } else {
76
+ t0 = $[1];
77
+ }
78
+ return t0;
79
+ };
80
+ //# sourceMappingURL=conversation_result_row.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation_result_row.js","names":["StyleSheet","ConversationAvatar","Heading","useScalableNumberOfLines","useTheme","ResultRow","jsx","_jsx","jsxs","_jsxs","ConversationResultRow","t0","$","_c","result","onPress","styles","useStyles","numberOfLines","t1","extra","avatar","conversation","size","t2","title","variant","style","children","t3","accessibilityLabel","alignItems","colors","textColorDefaultPrimary","create","flex","fontSize","color"],"sources":["../../../../src/screens/search/components/conversation_result_row.tsx"],"sourcesContent":["import { StyleSheet } from 'react-native'\nimport { ConversationAvatar, Heading } from '../../../components'\nimport { useScalableNumberOfLines, useTheme } from '../../../hooks'\nimport type { ConversationSearchResultResource } from '../../../types'\nimport { ResultRow } from './result_row'\n\ninterface ConversationResultRowProps {\n result: ConversationSearchResultResource\n onPress: () => void\n}\n\nexport function ConversationResultRow({ result, onPress }: ConversationResultRowProps) {\n const styles = useStyles()\n const numberOfLines = useScalableNumberOfLines(1)\n\n return (\n <ResultRow accessibilityLabel={result.title} onPress={onPress} alignItems=\"center\">\n <ConversationAvatar conversation={result.extra.avatar} size=\"lg\" />\n <Heading variant=\"h3\" numberOfLines={numberOfLines} style={styles.title}>\n {result.title}\n </Heading>\n </ResultRow>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n title: {\n flex: 1,\n fontSize: 16,\n color: colors.textColorDefaultPrimary,\n },\n })\n}\n"],"mappings":";AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,kBAAkB,EAAEC,OAAO,QAAQ,qBAAqB;AACjE,SAASC,wBAAwB,EAAEC,QAAQ,QAAQ,gBAAgB;AAEnE,SAASC,SAAS,QAAQ,cAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAOxC,OAAO,SAAAC,sBAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAA+B;IAAAC,MAAA;IAAAC;EAAA,IAAAJ,EAA+C;EACnF,MAAAK,MAAA,GAAeC,SAAS,CAAC,CAAC;EAC1B,MAAAC,aAAA,GAAsBf,wBAAwB,CAAC,CAAC,CAAC;EAAA,IAAAgB,EAAA;EAAA,IAAAP,CAAA,QAAAE,MAAA,CAAAM,KAAA,CAAAC,MAAA;IAI7CF,EAAA,gBAAAZ,IAAA,CAACN,kBAAkB;MAAeqB,YAAmB,EAAnBR,MAAM,CAAAM,KAAM,CAAAC,MAAO;MAAOE,IAAI,EAAJ;IAAI,CAAE,CAAC;IAAAX,CAAA,MAAAE,MAAA,CAAAM,KAAA,CAAAC,MAAA;IAAAT,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAAA,IAAAY,EAAA;EAAA,IAAAZ,CAAA,QAAAM,aAAA,IAAAN,CAAA,QAAAE,MAAA,CAAAW,KAAA,IAAAb,CAAA,QAAAI,MAAA,CAAAS,KAAA;IACnED,EAAA,gBAAAjB,IAAA,CAACL,OAAO;MAASwB,OAAI,EAAJ,IAAI;MAAgBR,aAAa,EAAbA,aAAa;MAASS,KAAY,EAAZX,MAAM,CAAAS,KAAM;MAAAG,QAAA,EACpEd,MAAM,CAAAW;IAAM,CACN,CAAC;IAAAb,CAAA,MAAAM,aAAA;IAAAN,CAAA,MAAAE,MAAA,CAAAW,KAAA;IAAAb,CAAA,MAAAI,MAAA,CAAAS,KAAA;IAAAb,CAAA,MAAAY,EAAA;EAAA;IAAAA,EAAA,GAAAZ,CAAA;EAAA;EAAA,IAAAiB,EAAA;EAAA,IAAAjB,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAE,MAAA,CAAAW,KAAA,IAAAb,CAAA,QAAAO,EAAA,IAAAP,CAAA,QAAAY,EAAA;IAJZK,EAAA,gBAAApB,KAAA,CAACJ,SAAS;MAAqByB,kBAAY,EAAZhB,MAAM,CAAAW,KAAM;MAAWV,OAAO,EAAPA,OAAO;MAAagB,UAAQ,EAAR,QAAQ;MAAAH,QAAA,GAChFT,EAAmE,EACnEK,EAEU;IAAA,CACD,CAAC;IAAAZ,CAAA,MAAAG,OAAA;IAAAH,CAAA,MAAAE,MAAA,CAAAW,KAAA;IAAAb,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAY,EAAA;IAAAZ,CAAA,OAAAiB,EAAA;EAAA;IAAAA,EAAA,GAAAjB,CAAA;EAAA;EAAA,OALZiB,EAKY;AAAA;AAIhB,MAAMZ,SAAS,GAAGA,CAAA;EAAA,MAAAL,CAAA,GAAAC,EAAA;EAChB;IAAAmB;EAAA,IAAmB5B,QAAQ,CAAC,CAAC;EAAA,IAAAO,EAAA;EAAA,IAAAC,CAAA,QAAAoB,MAAA,CAAAC,uBAAA;IAEtBtB,EAAA,GAAAX,UAAU,CAAAkC,MAAO,CAAC;MAAAT,KAAA,EAChB;QAAAU,IAAA,EACC,CAAC;QAAAC,QAAA,EACG,EAAE;QAAAC,KAAA,EACLL,MAAM,CAAAC;MACf;IACF,CAAC,CAAC;IAAArB,CAAA,MAAAoB,MAAA,CAAAC,uBAAA;IAAArB,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OANKD,EAML;AAAA,CACH","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { ConversationSearchResultResource } from '../../../types';
2
+ interface ConversationResultsProps {
3
+ results: ConversationSearchResultResource[];
4
+ onSelect: (result: ConversationSearchResultResource) => void;
5
+ }
6
+ export declare function ConversationResults({ results, onSelect }: ConversationResultsProps): import("react/jsx-runtime").JSX.Element | null;
7
+ export {};
8
+ //# sourceMappingURL=conversation_results.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation_results.d.ts","sourceRoot":"","sources":["../../../../src/screens/search/components/conversation_results.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAA;AAOtE,UAAU,wBAAwB;IAChC,OAAO,EAAE,gCAAgC,EAAE,CAAA;IAC3C,QAAQ,EAAE,CAAC,MAAM,EAAE,gCAAgC,KAAK,IAAI,CAAA;CAC7D;AAED,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,wBAAwB,kDAyBlF"}
@@ -0,0 +1,77 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { useState } from 'react';
3
+ import { ViewMoreLinkRow } from '../../conversation_select_recipients/components/view_more_link_row';
4
+ import { ConversationResultRow } from './conversation_result_row';
5
+ import { ResultsSection } from './results_section';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const COLLAPSED_COUNT = 5;
8
+ export function ConversationResults(t0) {
9
+ const $ = _c(14);
10
+ const {
11
+ results,
12
+ onSelect
13
+ } = t0;
14
+ const [expanded, setExpanded] = useState(false);
15
+ let t1;
16
+ if ($[0] !== expanded || $[1] !== results) {
17
+ t1 = expanded ? results : results.slice(0, COLLAPSED_COUNT);
18
+ $[0] = expanded;
19
+ $[1] = results;
20
+ $[2] = t1;
21
+ } else {
22
+ t1 = $[2];
23
+ }
24
+ const visible = t1;
25
+ if (results.length === 0) {
26
+ return null;
27
+ }
28
+ let t2;
29
+ if ($[3] !== expanded || $[4] !== results.length) {
30
+ t2 = results.length > COLLAPSED_COUNT && /*#__PURE__*/_jsx(ViewMoreLinkRow, {
31
+ expanded: expanded,
32
+ onPress: () => setExpanded(!expanded),
33
+ accessibilityHint: expanded ? `Shows the first ${COLLAPSED_COUNT} conversation results` : `Shows all ${results.length} conversation results`
34
+ });
35
+ $[3] = expanded;
36
+ $[4] = results.length;
37
+ $[5] = t2;
38
+ } else {
39
+ t2 = $[5];
40
+ }
41
+ const footer = t2;
42
+ let t3;
43
+ if ($[6] !== onSelect || $[7] !== visible) {
44
+ let t4;
45
+ if ($[9] !== onSelect) {
46
+ t4 = result => /*#__PURE__*/_jsx(ConversationResultRow, {
47
+ result: result,
48
+ onPress: () => onSelect(result)
49
+ }, result.id);
50
+ $[9] = onSelect;
51
+ $[10] = t4;
52
+ } else {
53
+ t4 = $[10];
54
+ }
55
+ t3 = visible.map(t4);
56
+ $[6] = onSelect;
57
+ $[7] = visible;
58
+ $[8] = t3;
59
+ } else {
60
+ t3 = $[8];
61
+ }
62
+ let t4;
63
+ if ($[11] !== footer || $[12] !== t3) {
64
+ t4 = /*#__PURE__*/_jsx(ResultsSection, {
65
+ title: "Conversations",
66
+ footer: footer,
67
+ children: t3
68
+ });
69
+ $[11] = footer;
70
+ $[12] = t3;
71
+ $[13] = t4;
72
+ } else {
73
+ t4 = $[13];
74
+ }
75
+ return t4;
76
+ }
77
+ //# sourceMappingURL=conversation_results.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation_results.js","names":["useState","ViewMoreLinkRow","ConversationResultRow","ResultsSection","jsx","_jsx","COLLAPSED_COUNT","ConversationResults","t0","$","_c","results","onSelect","expanded","setExpanded","t1","slice","visible","length","t2","onPress","accessibilityHint","footer","t3","t4","result","id","map","title","children"],"sources":["../../../../src/screens/search/components/conversation_results.tsx"],"sourcesContent":["import { useState } from 'react'\nimport type { ConversationSearchResultResource } from '../../../types'\nimport { ViewMoreLinkRow } from '../../conversation_select_recipients/components/view_more_link_row'\nimport { ConversationResultRow } from './conversation_result_row'\nimport { ResultsSection } from './results_section'\n\nconst COLLAPSED_COUNT = 5\n\ninterface ConversationResultsProps {\n results: ConversationSearchResultResource[]\n onSelect: (result: ConversationSearchResultResource) => void\n}\n\nexport function ConversationResults({ results, onSelect }: ConversationResultsProps) {\n const [expanded, setExpanded] = useState(false)\n const visible = expanded ? results : results.slice(0, COLLAPSED_COUNT)\n\n if (results.length === 0) return null\n\n const footer = results.length > COLLAPSED_COUNT && (\n <ViewMoreLinkRow\n expanded={expanded}\n onPress={() => setExpanded(!expanded)}\n accessibilityHint={\n expanded\n ? `Shows the first ${COLLAPSED_COUNT} conversation results`\n : `Shows all ${results.length} conversation results`\n }\n />\n )\n\n return (\n <ResultsSection title=\"Conversations\" footer={footer}>\n {visible.map(result => (\n <ConversationResultRow key={result.id} result={result} onPress={() => onSelect(result)} />\n ))}\n </ResultsSection>\n )\n}\n"],"mappings":";AAAA,SAASA,QAAQ,QAAQ,OAAO;AAEhC,SAASC,eAAe,QAAQ,oEAAoE;AACpG,SAASC,qBAAqB,QAAQ,2BAA2B;AACjE,SAASC,cAAc,QAAQ,mBAAmB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAElD,MAAMC,eAAe,GAAG,CAAC;AAOzB,OAAO,SAAAC,oBAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAA6B;IAAAC,OAAA;IAAAC;EAAA,IAAAJ,EAA+C;EACjF,OAAAK,QAAA,EAAAC,WAAA,IAAgCd,QAAQ,CAAC,KAAK,CAAC;EAAA,IAAAe,EAAA;EAAA,IAAAN,CAAA,QAAAI,QAAA,IAAAJ,CAAA,QAAAE,OAAA;IAC/BI,EAAA,GAAAF,QAAQ,GAARF,OAAsD,GAAjCA,OAAO,CAAAK,KAAM,CAAC,CAAC,EAAEV,eAAe,CAAC;IAAAG,CAAA,MAAAI,QAAA;IAAAJ,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAAtE,MAAAQ,OAAA,GAAgBF,EAAsD;EAEtE,IAAIJ,OAAO,CAAAO,MAAO,KAAK,CAAC;IAAA,OAAS,IAAI;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAV,CAAA,QAAAI,QAAA,IAAAJ,CAAA,QAAAE,OAAA,CAAAO,MAAA;IAEtBC,EAAA,GAAAR,OAAO,CAAAO,MAAO,GAAGZ,eAU/B,iBAVcD,IAAA,CACZJ,eAAe;MACJY,QAAQ,EAARA,QAAQ;MACTO,OAA4B,EAA5BA,CAAA,KAAMN,WAAW,CAAC,CAACD,QAAQ,CAAC;MAEnCQ,iBAEsD,EAFtDR,QAAQ,GAAR,mBACuBP,eAAe,uBACgB,GAFtD,aAEiBK,OAAO,CAAAO,MAAO;IAAuB,CAG5D,CAAC;IAAAT,CAAA,MAAAI,QAAA;IAAAJ,CAAA,MAAAE,OAAA,CAAAO,MAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAA,EAAA,GAAAV,CAAA;EAAA;EAVD,MAAAa,MAAA,GAAeH,EAUd;EAAA,IAAAI,EAAA;EAAA,IAAAd,CAAA,QAAAG,QAAA,IAAAH,CAAA,QAAAQ,OAAA;IAAA,IAAAO,EAAA;IAAA,IAAAf,CAAA,QAAAG,QAAA;MAIgBY,EAAA,GAAAC,MAAA,iBACXpB,IAAA,CAACH,qBAAqB;QAAyBuB,MAAM,EAANA,MAAM;QAAWL,OAAsB,EAAtBA,CAAA,KAAMR,QAAQ,CAACa,MAAM;MAAC,GAA1DA,MAAM,CAAAC,EAAuD,CAC1F;MAAAjB,CAAA,MAAAG,QAAA;MAAAH,CAAA,OAAAe,EAAA;IAAA;MAAAA,EAAA,GAAAf,CAAA;IAAA;IAFAc,EAAA,GAAAN,OAAO,CAAAU,GAAI,CAACH,EAEZ,CAAC;IAAAf,CAAA,MAAAG,QAAA;IAAAH,CAAA,MAAAQ,OAAA;IAAAR,CAAA,MAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EAAA,IAAAe,EAAA;EAAA,IAAAf,CAAA,SAAAa,MAAA,IAAAb,CAAA,SAAAc,EAAA;IAHJC,EAAA,gBAAAnB,IAAA,CAACF,cAAc;MAAOyB,KAAe,EAAf,eAAe;MAASN,MAAM,EAANA,MAAM;MAAAO,QAAA,EACjDN;IAEC,CACY,CAAC;IAAAd,CAAA,OAAAa,MAAA;IAAAb,CAAA,OAAAc,EAAA;IAAAd,CAAA,OAAAe,EAAA;EAAA;IAAAA,EAAA,GAAAf,CAAA;EAAA;EAAA,OAJjBe,EAIiB;AAAA","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { MessageSearchResultResource } from '../../../types/resources/search_result';
2
+ interface MessageResultRowProps {
3
+ result: MessageSearchResultResource;
4
+ onPress: (result: MessageSearchResultResource) => void;
5
+ }
6
+ export declare function MessageResultRow({ result, onPress }: MessageResultRowProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=message_result_row.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message_result_row.d.ts","sourceRoot":"","sources":["../../../../src/screens/search/components/message_result_row.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAA;AAMzF,UAAU,qBAAqB;IAC7B,MAAM,EAAE,2BAA2B,CAAA;IACnC,OAAO,EAAE,CAAC,MAAM,EAAE,2BAA2B,KAAK,IAAI,CAAA;CACvD;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,qBAAqB,2CAqB1E"}
@@ -0,0 +1,152 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import React from 'react';
3
+ import { StyleSheet, View } from 'react-native';
4
+ import { ConversationAvatar, Text } from '../../../components/display';
5
+ import { useScalableNumberOfLines } from '../../../hooks';
6
+ import { platformFontWeightMedium } from '../../../utils';
7
+ import { formatDatePreview } from '../../../utils/date';
8
+ import { ResultRow } from './result_row';
9
+ import { plainSnippetText, Snippet } from './snippet';
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ export function MessageResultRow(t0) {
12
+ const $ = _c(29);
13
+ const {
14
+ result,
15
+ onPress
16
+ } = t0;
17
+ const {
18
+ authorName,
19
+ avatar,
20
+ snippet,
21
+ createdAt
22
+ } = result.extra;
23
+ const titleNumberOfLines = useScalableNumberOfLines(1);
24
+ const previewNumberOfLines = useScalableNumberOfLines(2);
25
+ let t1;
26
+ if ($[0] !== createdAt) {
27
+ t1 = formatDatePreview(createdAt);
28
+ $[0] = createdAt;
29
+ $[1] = t1;
30
+ } else {
31
+ t1 = $[1];
32
+ }
33
+ const date = t1;
34
+ const t2 = result.title;
35
+ let t3;
36
+ if ($[2] !== snippet) {
37
+ t3 = plainSnippetText(snippet);
38
+ $[2] = snippet;
39
+ $[3] = t3;
40
+ } else {
41
+ t3 = $[3];
42
+ }
43
+ const accessibilityLabel = `${t2}, ${authorName}: ${t3}, ${date}`;
44
+ let t4;
45
+ if ($[4] !== onPress || $[5] !== result) {
46
+ t4 = () => onPress(result);
47
+ $[4] = onPress;
48
+ $[5] = result;
49
+ $[6] = t4;
50
+ } else {
51
+ t4 = $[6];
52
+ }
53
+ let t5;
54
+ if ($[7] !== avatar) {
55
+ t5 = /*#__PURE__*/_jsx(ConversationAvatar, {
56
+ conversation: avatar,
57
+ size: "lg"
58
+ });
59
+ $[7] = avatar;
60
+ $[8] = t5;
61
+ } else {
62
+ t5 = $[8];
63
+ }
64
+ let t6;
65
+ if ($[9] !== result.title || $[10] !== titleNumberOfLines) {
66
+ t6 = /*#__PURE__*/_jsx(Text, {
67
+ numberOfLines: titleNumberOfLines,
68
+ style: styles.title,
69
+ children: result.title
70
+ });
71
+ $[9] = result.title;
72
+ $[10] = titleNumberOfLines;
73
+ $[11] = t6;
74
+ } else {
75
+ t6 = $[11];
76
+ }
77
+ let t7;
78
+ if ($[12] !== snippet) {
79
+ t7 = /*#__PURE__*/_jsx(Snippet, {
80
+ segments: snippet
81
+ });
82
+ $[12] = snippet;
83
+ $[13] = t7;
84
+ } else {
85
+ t7 = $[13];
86
+ }
87
+ let t8;
88
+ if ($[14] !== authorName || $[15] !== previewNumberOfLines || $[16] !== t7) {
89
+ t8 = /*#__PURE__*/_jsxs(Text, {
90
+ variant: "tertiary",
91
+ numberOfLines: previewNumberOfLines,
92
+ children: [authorName, ": ", t7]
93
+ });
94
+ $[14] = authorName;
95
+ $[15] = previewNumberOfLines;
96
+ $[16] = t7;
97
+ $[17] = t8;
98
+ } else {
99
+ t8 = $[17];
100
+ }
101
+ let t9;
102
+ if ($[18] !== t6 || $[19] !== t8) {
103
+ t9 = /*#__PURE__*/_jsxs(View, {
104
+ style: styles.body,
105
+ children: [t6, t8]
106
+ });
107
+ $[18] = t6;
108
+ $[19] = t8;
109
+ $[20] = t9;
110
+ } else {
111
+ t9 = $[20];
112
+ }
113
+ let t10;
114
+ if ($[21] !== date) {
115
+ t10 = /*#__PURE__*/_jsx(Text, {
116
+ variant: "footnote",
117
+ children: date
118
+ });
119
+ $[21] = date;
120
+ $[22] = t10;
121
+ } else {
122
+ t10 = $[22];
123
+ }
124
+ let t11;
125
+ if ($[23] !== accessibilityLabel || $[24] !== t10 || $[25] !== t4 || $[26] !== t5 || $[27] !== t9) {
126
+ t11 = /*#__PURE__*/_jsxs(ResultRow, {
127
+ accessibilityLabel: accessibilityLabel,
128
+ onPress: t4,
129
+ children: [t5, t9, t10]
130
+ });
131
+ $[23] = accessibilityLabel;
132
+ $[24] = t10;
133
+ $[25] = t4;
134
+ $[26] = t5;
135
+ $[27] = t9;
136
+ $[28] = t11;
137
+ } else {
138
+ t11 = $[28];
139
+ }
140
+ return t11;
141
+ }
142
+ const styles = StyleSheet.create({
143
+ body: {
144
+ flex: 1,
145
+ rowGap: 2
146
+ },
147
+ title: {
148
+ fontSize: 16,
149
+ fontWeight: platformFontWeightMedium
150
+ }
151
+ });
152
+ //# sourceMappingURL=message_result_row.js.map