@planningcenter/chat-react-native 4.4.1-qa-staging.18 → 4.4.1-qa-staging.20
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.
- package/build/components/conversations/conversation_preview.d.ts.map +1 -1
- package/build/components/conversations/conversation_preview.js +1 -0
- package/build/components/conversations/conversation_preview.js.map +1 -1
- package/build/components/conversations/conversations.js +1 -1
- package/build/components/conversations/conversations.js.map +1 -1
- package/build/components/display/icon_tile.d.ts +2 -1
- package/build/components/display/icon_tile.d.ts.map +1 -1
- package/build/components/display/icon_tile.js +85 -45
- package/build/components/display/icon_tile.js.map +1 -1
- package/build/screens/conversation_filters/components/rows.js +1 -0
- package/build/screens/conversation_filters/components/rows.js.map +1 -1
- package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts.map +1 -1
- package/build/screens/conversations/components/filter_dropdown_list_header_component.js +23 -30
- package/build/screens/conversations/components/filter_dropdown_list_header_component.js.map +1 -1
- package/package.json +3 -3
- package/src/components/conversations/__tests__/conversations.test.tsx +11 -0
- package/src/components/conversations/conversation_preview.tsx +6 -1
- package/src/components/conversations/conversations.tsx +1 -1
- package/src/components/display/__tests__/icon_tile.test.tsx +16 -0
- package/src/components/display/icon_tile.tsx +20 -7
- package/src/screens/conversation_filters/components/rows.tsx +1 -1
- package/src/screens/conversations/components/__tests__/filter_dropdown_list_header_component.test.tsx +11 -0
- package/src/screens/conversations/components/filter_dropdown_list_header_component.tsx +13 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_preview.d.ts","sourceRoot":"","sources":["../../../src/components/conversations/conversation_preview.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAA;AAO1D,OAAO,EAA2B,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAoB3E,UAAU,wBAAwB;IAChC,YAAY,EAAE,oBAAoB,CAAA;IAClC,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,eAAO,MAAM,mBAAmB,GAAI,+CAKjC,wBAAwB,
|
|
1
|
+
{"version":3,"file":"conversation_preview.d.ts","sourceRoot":"","sources":["../../../src/components/conversations/conversation_preview.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoB,SAAS,EAAE,MAAM,cAAc,CAAA;AAO1D,OAAO,EAA2B,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAoB3E,UAAU,wBAAwB;IAChC,YAAY,EAAE,oBAAoB,CAAA;IAClC,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB;AAED,eAAO,MAAM,mBAAmB,GAAI,+CAKjC,wBAAwB,4CAoF1B,CAAA;AAqCD,eAAO,MAAM,2BAA2B,+CAqBvC,CAAA"}
|
|
@@ -68,6 +68,7 @@ export const ConversationPreview = t0 => {
|
|
|
68
68
|
if ($[6] !== archived || $[7] !== conversation || $[8] !== fallbackIconName) {
|
|
69
69
|
t5 = archived ? /*#__PURE__*/_jsx(IconTile, {
|
|
70
70
|
icon: faBoxArchive,
|
|
71
|
+
shape: "circle",
|
|
71
72
|
size: "lg",
|
|
72
73
|
testID: "conversation-archived-icon"
|
|
73
74
|
}) : /*#__PURE__*/_jsx(ConversationAvatar, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_preview.js","names":["React","StyleSheet","View","useTheme","useAtFontScaleBreakpoint","useFontScale","useScalableNumberOfLines","REACTION_EMOJIS","isArchivedConversation","platformFontWeightBold","formatDatePreview","faBoxArchive","tokens","AvatarGroup","ConversationAvatar","Heading","IconTile","Text","Badge","ConversationActions","MuteIndicator","UnreadCountBadge","jsx","_jsx","jsxs","_jsxs","EMPTY_CONVERSATION_PREVIEW_TEXT","ConversationPreview","t0","$","_c","conversation","onPress","showBadges","t1","style","undefined","styles","useStyles","conversationPreview","lastMessageCreatedAt","title","unreadCount","badges","muted","disabled","unreadReaction","archived","emptyConversation","fallbackIconName","hasMetaContent","isUnread","numberOfLinesScaledTitle","numberOfLinesScaledPreviewText","t2","formatConversationPreviewText","conversationPreviewText","conversationAccessibilityLabel","getConversationAccessibilityLabel","t3","t4","previewRow","t5","size","testID","t6","archivedTitle","t7","unreadTitle","t8","t9","variant","children","t10","emptyConversationPreviewText","t11","unreadText","t12","t13","t14","ConversationBadges","t15","conversationBody","t16","createdAt","metaContainer","statusContainer","t17","visible","numberOfLinesScaled","length","badge","productLogoName","appName","label","pcoResourceType","metaLabel","text","map","skeletonBadges","ConversationPreviewSkeleton","Symbol","for","sourceUris","showFallback","titleLoading","subtitleLoading","dateLoading","reactionEmoji","value","preview","kind","emoji","authorName","formatConversationPreviewAccessibilityLabel","date","hasBadges","hasUnreadMessages","readStatus","lastMessage","filter","Boolean","join","colors","atFontScaleBreakpoint","fontScale","borderColorDefaultDark","borderColorDefaultDim","fillColorNeutral080","fillColorNeutral090","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flexDirection","gap","borderBottomWidth","borderBottomColor","paddingTop","paddingBottom","paddingHorizontal","opacity","fontSize","color","fontWeight","fontWeightBold","width","height","backgroundColor","borderRadius","flex","rowGap","alignItems","justifyContent","marginTop"],"sources":["../../../src/components/conversations/conversation_preview.tsx"],"sourcesContent":["import React from 'react'\nimport { StyleSheet, View, ViewStyle } from 'react-native'\nimport {\n useTheme,\n useAtFontScaleBreakpoint,\n useFontScale,\n useScalableNumberOfLines,\n} from '../../hooks'\nimport { ConversationPreviewData, ConversationResource } from '../../types'\nimport { REACTION_EMOJIS, isArchivedConversation, platformFontWeightBold } from '../../utils'\nimport { formatDatePreview } from '../../utils/date'\nimport { faBoxArchive } from '../../vendor/font_awesome_pro_solid_icons'\nimport { tokens } from '../../vendor/tapestry/tokens'\nimport {\n AvatarGroup,\n ConversationAvatar,\n Heading,\n IconTile,\n Text,\n Badge,\n type BadgeProps,\n} from '../display'\nimport { ConversationActions } from './conversation_actions'\nimport { MuteIndicator } from './mute_indicator'\nimport { UnreadCountBadge } from './unread_count_badge'\n\nconst EMPTY_CONVERSATION_PREVIEW_TEXT = 'Send your first message'\n\ninterface ConversationPreviewProps {\n conversation: ConversationResource\n onPress: () => void\n showBadges?: boolean\n style?: ViewStyle\n}\n\nexport const ConversationPreview = ({\n conversation,\n onPress,\n showBadges = true,\n style,\n}: ConversationPreviewProps) => {\n const styles = useStyles()\n const {\n conversationPreview,\n lastMessageCreatedAt,\n title,\n unreadCount,\n badges,\n muted,\n disabled,\n unreadReaction,\n } = conversation\n\n const archived = isArchivedConversation(conversation)\n const emptyConversation = !lastMessageCreatedAt\n const fallbackIconName = emptyConversation ? 'people.noTextMessage' : 'general.person'\n const hasMetaContent = lastMessageCreatedAt || unreadCount > 0 || muted\n const isUnread = unreadCount > 0 || unreadReaction\n\n const numberOfLinesScaledTitle = useScalableNumberOfLines(1)\n const numberOfLinesScaledPreviewText = useScalableNumberOfLines(2)\n\n const conversationPreviewText = conversationPreview\n ? formatConversationPreviewText(conversationPreview)\n : EMPTY_CONVERSATION_PREVIEW_TEXT\n\n const conversationAccessibilityLabel = getConversationAccessibilityLabel({\n conversation,\n showBadges,\n archived,\n })\n\n return (\n <ConversationActions\n conversation={conversation}\n style={[styles.previewRow, disabled && !archived && styles.disabled, style]}\n onPress={onPress}\n accessibilityLabel={conversationAccessibilityLabel}\n >\n {archived ? (\n <IconTile icon={faBoxArchive} size=\"lg\" testID=\"conversation-archived-icon\" />\n ) : (\n <ConversationAvatar\n conversation={conversation}\n size=\"lg\"\n fallbackIconName={fallbackIconName}\n />\n )}\n <View style={styles.conversationBody}>\n <Heading\n numberOfLines={numberOfLinesScaledTitle}\n variant=\"h3\"\n style={[styles.title, archived && styles.archivedTitle, isUnread && styles.unreadTitle]}\n >\n {title}\n </Heading>\n <Text\n variant=\"tertiary\"\n numberOfLines={numberOfLinesScaledPreviewText}\n style={[\n emptyConversation && styles.emptyConversationPreviewText,\n isUnread && styles.unreadText,\n ]}\n >\n {conversationPreviewText}\n </Text>\n <ConversationBadges visible={showBadges} badges={badges} />\n </View>\n {hasMetaContent && (\n <View style={styles.metaContainer}>\n <Text variant=\"tertiary\">{formatDatePreview(conversationPreview?.createdAt)}</Text>\n <View style={styles.statusContainer}>\n <UnreadCountBadge count={unreadCount} unreadReaction={unreadReaction} showDot={muted} />\n <MuteIndicator muted={muted} />\n </View>\n </View>\n )}\n </ConversationActions>\n )\n}\n\ninterface BadgeShape {\n appName?: BadgeProps['productLogoName']\n pcoResourceType: string\n text: string | null\n}\nconst ConversationBadges = ({ visible, badges }: { visible: boolean; badges?: BadgeShape[] }) => {\n const styles = useStyles()\n const numberOfLinesScaled = useScalableNumberOfLines(1)\n\n if (!visible || !badges || badges.length === 0) {\n return null\n }\n\n return (\n <View style={styles.badges}>\n {badges.map(badge => (\n <Badge\n key={badge.text}\n variant=\"meta\"\n productLogoName={badge.appName}\n label={badge.pcoResourceType}\n metaLabel={badge.text || ''}\n numberOfLinesMetaLabel={numberOfLinesScaled}\n />\n ))}\n </View>\n )\n}\n\nconst skeletonBadges: BadgeShape[] = [\n {\n pcoResourceType: ' ',\n text: ' ',\n },\n]\nexport const ConversationPreviewSkeleton = () => {\n const styles = useStyles()\n\n return (\n <View style={styles.previewRow}>\n <AvatarGroup\n size=\"lg\"\n sourceUris={[]}\n showFallback={true}\n fallbackIconName={'general.person'}\n />\n <View style={styles.conversationBody}>\n <View style={styles.titleLoading} />\n <View style={styles.subtitleLoading} />\n <ConversationBadges visible={true} badges={skeletonBadges} />\n </View>\n <View style={styles.metaContainer}>\n <View style={styles.dateLoading} />\n </View>\n </View>\n )\n}\n\nfunction reactionEmoji(value: ConversationPreviewData['value']): string | null {\n if (!value) return null\n return REACTION_EMOJIS[value] ?? null\n}\n\nfunction formatConversationPreviewText(preview: ConversationPreviewData) {\n if (preview.kind === 'system') return preview.text\n\n if (preview.kind === 'reaction') {\n const emoji = reactionEmoji(preview.value)\n return `${preview.authorName}${emoji ? ` ${emoji}` : ' reacted'} to: \"${preview.text}\"`\n }\n\n return `${preview.authorName}: ${preview.text}`\n}\n\nfunction formatConversationPreviewAccessibilityLabel(preview: ConversationPreviewData) {\n const date = formatDatePreview(preview.createdAt)\n\n if (preview.kind === 'system') return `Latest activity: ${preview.text} at ${date}`\n\n if (preview.kind === 'reaction') {\n return `${preview.authorName} reacted to your message sent ${date} and says ${preview.text}`\n }\n\n return `Last message sent ${date} from ${preview.authorName} and says ${preview.text}`\n}\n\ninterface GetConversationAccessibilityLabelProps {\n conversation: ConversationResource\n showBadges: boolean\n archived: boolean\n}\nconst getConversationAccessibilityLabel = ({\n conversation,\n showBadges,\n archived,\n}: GetConversationAccessibilityLabelProps) => {\n const { badges, title, conversationPreview, muted, disabled, unreadCount, unreadReaction } =\n conversation\n\n const hasBadges = badges && showBadges\n const hasUnreadMessages = unreadCount > 0\n\n const label = {\n title,\n badge: hasBadges ? `for ${badges[0]?.pcoResourceType} ${badges[0]?.text || ''}` : '',\n disabled: archived ? 'Archived' : disabled ? 'Disabled' : '',\n muted: muted ? 'Muted' : '',\n readStatus: hasUnreadMessages\n ? `${unreadCount} unread messages`\n : unreadReaction\n ? 'unread reaction'\n : '',\n lastMessage: conversationPreview\n ? formatConversationPreviewAccessibilityLabel(conversationPreview)\n : EMPTY_CONVERSATION_PREVIEW_TEXT,\n }\n\n return [\n `Select ${label.title}`,\n label.badge,\n label.disabled,\n label.muted,\n label.readStatus,\n label.lastMessage,\n ]\n .filter(Boolean)\n .join(', ')\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n const fontScale = useFontScale()\n\n return StyleSheet.create({\n previewRow: {\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n gap: 8,\n borderBottomWidth: 1,\n borderBottomColor: atFontScaleBreakpoint\n ? colors.borderColorDefaultDark\n : colors.borderColorDefaultDim,\n paddingTop: 12,\n paddingBottom: 12,\n paddingHorizontal: 16,\n },\n disabled: {\n opacity: 0.4,\n },\n title: {\n fontSize: 16,\n color: colors.textColorDefaultPrimary,\n },\n archivedTitle: {\n color: colors.textColorDefaultSecondary,\n },\n unreadTitle: {\n fontWeight: tokens.fontWeightBold,\n },\n unreadText: {\n fontWeight: platformFontWeightBold,\n },\n titleLoading: {\n width: 120,\n height: 20,\n backgroundColor: colors.fillColorNeutral080,\n borderRadius: 4,\n },\n conversationBody: {\n flex: 1,\n rowGap: 2,\n },\n emptyConversationPreviewText: {\n color: colors.interaction,\n },\n subtitleLoading: {\n width: 80,\n height: 16,\n backgroundColor: colors.fillColorNeutral090,\n borderRadius: 4,\n },\n metaContainer: {\n gap: 4,\n alignItems: atFontScaleBreakpoint ? 'center' : 'flex-end',\n justifyContent: atFontScaleBreakpoint ? 'space-between' : 'flex-start',\n flexDirection: atFontScaleBreakpoint ? 'row' : 'column',\n },\n dateLoading: {\n width: 60,\n height: 16,\n backgroundColor: colors.fillColorNeutral090,\n borderRadius: 4,\n },\n badges: {\n marginTop: 4,\n alignItems: 'flex-start',\n },\n statusContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4 * fontScale,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"conversation_preview.js","names":["React","StyleSheet","View","useTheme","useAtFontScaleBreakpoint","useFontScale","useScalableNumberOfLines","REACTION_EMOJIS","isArchivedConversation","platformFontWeightBold","formatDatePreview","faBoxArchive","tokens","AvatarGroup","ConversationAvatar","Heading","IconTile","Text","Badge","ConversationActions","MuteIndicator","UnreadCountBadge","jsx","_jsx","jsxs","_jsxs","EMPTY_CONVERSATION_PREVIEW_TEXT","ConversationPreview","t0","$","_c","conversation","onPress","showBadges","t1","style","undefined","styles","useStyles","conversationPreview","lastMessageCreatedAt","title","unreadCount","badges","muted","disabled","unreadReaction","archived","emptyConversation","fallbackIconName","hasMetaContent","isUnread","numberOfLinesScaledTitle","numberOfLinesScaledPreviewText","t2","formatConversationPreviewText","conversationPreviewText","conversationAccessibilityLabel","getConversationAccessibilityLabel","t3","t4","previewRow","t5","shape","size","testID","t6","archivedTitle","t7","unreadTitle","t8","t9","variant","children","t10","emptyConversationPreviewText","t11","unreadText","t12","t13","t14","ConversationBadges","t15","conversationBody","t16","createdAt","metaContainer","statusContainer","t17","visible","numberOfLinesScaled","length","badge","productLogoName","appName","label","pcoResourceType","metaLabel","text","map","skeletonBadges","ConversationPreviewSkeleton","Symbol","for","sourceUris","showFallback","titleLoading","subtitleLoading","dateLoading","reactionEmoji","value","preview","kind","emoji","authorName","formatConversationPreviewAccessibilityLabel","date","hasBadges","hasUnreadMessages","readStatus","lastMessage","filter","Boolean","join","colors","atFontScaleBreakpoint","fontScale","borderColorDefaultDark","borderColorDefaultDim","fillColorNeutral080","fillColorNeutral090","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flexDirection","gap","borderBottomWidth","borderBottomColor","paddingTop","paddingBottom","paddingHorizontal","opacity","fontSize","color","fontWeight","fontWeightBold","width","height","backgroundColor","borderRadius","flex","rowGap","alignItems","justifyContent","marginTop"],"sources":["../../../src/components/conversations/conversation_preview.tsx"],"sourcesContent":["import React from 'react'\nimport { StyleSheet, View, ViewStyle } from 'react-native'\nimport {\n useTheme,\n useAtFontScaleBreakpoint,\n useFontScale,\n useScalableNumberOfLines,\n} from '../../hooks'\nimport { ConversationPreviewData, ConversationResource } from '../../types'\nimport { REACTION_EMOJIS, isArchivedConversation, platformFontWeightBold } from '../../utils'\nimport { formatDatePreview } from '../../utils/date'\nimport { faBoxArchive } from '../../vendor/font_awesome_pro_solid_icons'\nimport { tokens } from '../../vendor/tapestry/tokens'\nimport {\n AvatarGroup,\n ConversationAvatar,\n Heading,\n IconTile,\n Text,\n Badge,\n type BadgeProps,\n} from '../display'\nimport { ConversationActions } from './conversation_actions'\nimport { MuteIndicator } from './mute_indicator'\nimport { UnreadCountBadge } from './unread_count_badge'\n\nconst EMPTY_CONVERSATION_PREVIEW_TEXT = 'Send your first message'\n\ninterface ConversationPreviewProps {\n conversation: ConversationResource\n onPress: () => void\n showBadges?: boolean\n style?: ViewStyle\n}\n\nexport const ConversationPreview = ({\n conversation,\n onPress,\n showBadges = true,\n style,\n}: ConversationPreviewProps) => {\n const styles = useStyles()\n const {\n conversationPreview,\n lastMessageCreatedAt,\n title,\n unreadCount,\n badges,\n muted,\n disabled,\n unreadReaction,\n } = conversation\n\n const archived = isArchivedConversation(conversation)\n const emptyConversation = !lastMessageCreatedAt\n const fallbackIconName = emptyConversation ? 'people.noTextMessage' : 'general.person'\n const hasMetaContent = lastMessageCreatedAt || unreadCount > 0 || muted\n const isUnread = unreadCount > 0 || unreadReaction\n\n const numberOfLinesScaledTitle = useScalableNumberOfLines(1)\n const numberOfLinesScaledPreviewText = useScalableNumberOfLines(2)\n\n const conversationPreviewText = conversationPreview\n ? formatConversationPreviewText(conversationPreview)\n : EMPTY_CONVERSATION_PREVIEW_TEXT\n\n const conversationAccessibilityLabel = getConversationAccessibilityLabel({\n conversation,\n showBadges,\n archived,\n })\n\n return (\n <ConversationActions\n conversation={conversation}\n style={[styles.previewRow, disabled && !archived && styles.disabled, style]}\n onPress={onPress}\n accessibilityLabel={conversationAccessibilityLabel}\n >\n {archived ? (\n <IconTile\n icon={faBoxArchive}\n shape=\"circle\"\n size=\"lg\"\n testID=\"conversation-archived-icon\"\n />\n ) : (\n <ConversationAvatar\n conversation={conversation}\n size=\"lg\"\n fallbackIconName={fallbackIconName}\n />\n )}\n <View style={styles.conversationBody}>\n <Heading\n numberOfLines={numberOfLinesScaledTitle}\n variant=\"h3\"\n style={[styles.title, archived && styles.archivedTitle, isUnread && styles.unreadTitle]}\n >\n {title}\n </Heading>\n <Text\n variant=\"tertiary\"\n numberOfLines={numberOfLinesScaledPreviewText}\n style={[\n emptyConversation && styles.emptyConversationPreviewText,\n isUnread && styles.unreadText,\n ]}\n >\n {conversationPreviewText}\n </Text>\n <ConversationBadges visible={showBadges} badges={badges} />\n </View>\n {hasMetaContent && (\n <View style={styles.metaContainer}>\n <Text variant=\"tertiary\">{formatDatePreview(conversationPreview?.createdAt)}</Text>\n <View style={styles.statusContainer}>\n <UnreadCountBadge count={unreadCount} unreadReaction={unreadReaction} showDot={muted} />\n <MuteIndicator muted={muted} />\n </View>\n </View>\n )}\n </ConversationActions>\n )\n}\n\ninterface BadgeShape {\n appName?: BadgeProps['productLogoName']\n pcoResourceType: string\n text: string | null\n}\nconst ConversationBadges = ({ visible, badges }: { visible: boolean; badges?: BadgeShape[] }) => {\n const styles = useStyles()\n const numberOfLinesScaled = useScalableNumberOfLines(1)\n\n if (!visible || !badges || badges.length === 0) {\n return null\n }\n\n return (\n <View style={styles.badges}>\n {badges.map(badge => (\n <Badge\n key={badge.text}\n variant=\"meta\"\n productLogoName={badge.appName}\n label={badge.pcoResourceType}\n metaLabel={badge.text || ''}\n numberOfLinesMetaLabel={numberOfLinesScaled}\n />\n ))}\n </View>\n )\n}\n\nconst skeletonBadges: BadgeShape[] = [\n {\n pcoResourceType: ' ',\n text: ' ',\n },\n]\nexport const ConversationPreviewSkeleton = () => {\n const styles = useStyles()\n\n return (\n <View style={styles.previewRow}>\n <AvatarGroup\n size=\"lg\"\n sourceUris={[]}\n showFallback={true}\n fallbackIconName={'general.person'}\n />\n <View style={styles.conversationBody}>\n <View style={styles.titleLoading} />\n <View style={styles.subtitleLoading} />\n <ConversationBadges visible={true} badges={skeletonBadges} />\n </View>\n <View style={styles.metaContainer}>\n <View style={styles.dateLoading} />\n </View>\n </View>\n )\n}\n\nfunction reactionEmoji(value: ConversationPreviewData['value']): string | null {\n if (!value) return null\n return REACTION_EMOJIS[value] ?? null\n}\n\nfunction formatConversationPreviewText(preview: ConversationPreviewData) {\n if (preview.kind === 'system') return preview.text\n\n if (preview.kind === 'reaction') {\n const emoji = reactionEmoji(preview.value)\n return `${preview.authorName}${emoji ? ` ${emoji}` : ' reacted'} to: \"${preview.text}\"`\n }\n\n return `${preview.authorName}: ${preview.text}`\n}\n\nfunction formatConversationPreviewAccessibilityLabel(preview: ConversationPreviewData) {\n const date = formatDatePreview(preview.createdAt)\n\n if (preview.kind === 'system') return `Latest activity: ${preview.text} at ${date}`\n\n if (preview.kind === 'reaction') {\n return `${preview.authorName} reacted to your message sent ${date} and says ${preview.text}`\n }\n\n return `Last message sent ${date} from ${preview.authorName} and says ${preview.text}`\n}\n\ninterface GetConversationAccessibilityLabelProps {\n conversation: ConversationResource\n showBadges: boolean\n archived: boolean\n}\nconst getConversationAccessibilityLabel = ({\n conversation,\n showBadges,\n archived,\n}: GetConversationAccessibilityLabelProps) => {\n const { badges, title, conversationPreview, muted, disabled, unreadCount, unreadReaction } =\n conversation\n\n const hasBadges = badges && showBadges\n const hasUnreadMessages = unreadCount > 0\n\n const label = {\n title,\n badge: hasBadges ? `for ${badges[0]?.pcoResourceType} ${badges[0]?.text || ''}` : '',\n disabled: archived ? 'Archived' : disabled ? 'Disabled' : '',\n muted: muted ? 'Muted' : '',\n readStatus: hasUnreadMessages\n ? `${unreadCount} unread messages`\n : unreadReaction\n ? 'unread reaction'\n : '',\n lastMessage: conversationPreview\n ? formatConversationPreviewAccessibilityLabel(conversationPreview)\n : EMPTY_CONVERSATION_PREVIEW_TEXT,\n }\n\n return [\n `Select ${label.title}`,\n label.badge,\n label.disabled,\n label.muted,\n label.readStatus,\n label.lastMessage,\n ]\n .filter(Boolean)\n .join(', ')\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n const fontScale = useFontScale()\n\n return StyleSheet.create({\n previewRow: {\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n gap: 8,\n borderBottomWidth: 1,\n borderBottomColor: atFontScaleBreakpoint\n ? colors.borderColorDefaultDark\n : colors.borderColorDefaultDim,\n paddingTop: 12,\n paddingBottom: 12,\n paddingHorizontal: 16,\n },\n disabled: {\n opacity: 0.4,\n },\n title: {\n fontSize: 16,\n color: colors.textColorDefaultPrimary,\n },\n archivedTitle: {\n color: colors.textColorDefaultSecondary,\n },\n unreadTitle: {\n fontWeight: tokens.fontWeightBold,\n },\n unreadText: {\n fontWeight: platformFontWeightBold,\n },\n titleLoading: {\n width: 120,\n height: 20,\n backgroundColor: colors.fillColorNeutral080,\n borderRadius: 4,\n },\n conversationBody: {\n flex: 1,\n rowGap: 2,\n },\n emptyConversationPreviewText: {\n color: colors.interaction,\n },\n subtitleLoading: {\n width: 80,\n height: 16,\n backgroundColor: colors.fillColorNeutral090,\n borderRadius: 4,\n },\n metaContainer: {\n gap: 4,\n alignItems: atFontScaleBreakpoint ? 'center' : 'flex-end',\n justifyContent: atFontScaleBreakpoint ? 'space-between' : 'flex-start',\n flexDirection: atFontScaleBreakpoint ? 'row' : 'column',\n },\n dateLoading: {\n width: 60,\n height: 16,\n backgroundColor: colors.fillColorNeutral090,\n borderRadius: 4,\n },\n badges: {\n marginTop: 4,\n alignItems: 'flex-start',\n },\n statusContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4 * fontScale,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -40,7 +40,7 @@ export const Conversations = t0 => {
|
|
|
40
40
|
const clearFilters = useClearConversationFilters();
|
|
41
41
|
const filterDropdownEnabled = useFilterDropdownEnabled();
|
|
42
42
|
const isFilterApplied = !!chat_group_graph_id || !!group_source_app_name || !!show_direct_messages || !!show_archived;
|
|
43
|
-
const showArchivedResultsFooter = !!show_archived && !isLoading;
|
|
43
|
+
const showArchivedResultsFooter = !!show_archived && !isLoading && !hasNextPage;
|
|
44
44
|
const showFilteredResultsFooter = filterDropdownEnabled && isFilterApplied && !show_archived && !hasNextPage && !isLoading && conversations.length > 0;
|
|
45
45
|
const showBadges = !chat_group_graph_id;
|
|
46
46
|
let t2;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversations.js","names":["useNavigation","React","useMemo","FlatList","StyleSheet","View","useConversationsContext","useTheme","useCanCreateConversations","useClearConversationFilters","useConversationsJoltEvents","useFilterDropdownEnabled","ArchivedResultsFooter","ConversationPreview","ConversationPreviewSkeleton","ConversationsBlankState","FilteredResultsFooter","jsx","_jsx","Conversations","t0","$","_c","ListHeaderComponent","styles","useStyles","conversations","isLoading","fetchNextPage","refetch","isRefetching","isFetched","hasNextPage","args","t1","chat_group_graph_id","group_source_app_name","show_direct_messages","show_archived","navigation","canCreateConversations","clearFilters","filterDropdownEnabled","isFilterApplied","showArchivedResultsFooter","showFilteredResultsFooter","length","showBadges","t2","bb0","loadingPlaceholder","t3","map","_temp","data","t4","t5","t6","t7","item","item_0","type","conversation","resource","onPress","navigate","conversation_id","id","title","badge","badges","deleted","muted","t8","contentContainer","keyExtractor","_temp2","contentContainerStyle","refreshing","ListEmptyComponent","ListFooterComponent","renderItem","onEndReached","t9","container","style","children","colors","fillColorNeutral020","create","flex","paddingVertical","listItem","color","Array","from","_","i","toString"],"sources":["../../../src/components/conversations/conversations.tsx"],"sourcesContent":["import { useNavigation } from '@react-navigation/native'\nimport React, { useMemo } from 'react'\nimport { FlatList, StyleSheet, View } from 'react-native'\nimport { useConversationsContext } from '../../contexts/conversations_context'\nimport { useTheme } from '../../hooks'\nimport { useCanCreateConversations } from '../../hooks/use_chat_permissions'\nimport { useClearConversationFilters } from '../../hooks/use_clear_conversation_filters'\nimport { useConversationsJoltEvents } from '../../hooks/use_conversations_jolt_events'\nimport { useFilterDropdownEnabled } from '../../hooks/use_filter_dropdown_enabled'\nimport { ConversationResource } from '../../types'\nimport { ArchivedResultsFooter } from './archived_results_footer'\nimport { ConversationPreview, ConversationPreviewSkeleton } from './conversation_preview'\nimport { ConversationsBlankState } from './conversations_blank_state'\nimport { FilteredResultsFooter } from './filtered_results_footer'\n\ninterface ConversationsProps {\n ListHeaderComponent?:\n | React.ComponentType<any>\n | React.ReactElement<any, string | React.JSXElementConstructor<any>>\n | null\n | undefined\n}\n\nexport const Conversations = ({ ListHeaderComponent }: ConversationsProps) => {\n const styles = useStyles()\n const {\n conversations,\n isLoading,\n fetchNextPage,\n refetch,\n isRefetching,\n isFetched,\n hasNextPage,\n args: { chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived },\n } = useConversationsContext()\n const navigation = useNavigation()\n const canCreateConversations = useCanCreateConversations()\n const clearFilters = useClearConversationFilters()\n const filterDropdownEnabled = useFilterDropdownEnabled()\n const isFilterApplied =\n !!chat_group_graph_id || !!group_source_app_name || !!show_direct_messages || !!show_archived\n const showArchivedResultsFooter = !!show_archived && !isLoading\n const showFilteredResultsFooter =\n filterDropdownEnabled &&\n isFilterApplied &&\n !show_archived &&\n !hasNextPage &&\n !isLoading &&\n conversations.length > 0\n\n const showBadges = !chat_group_graph_id\n\n const data: FlatListItem[] = useMemo(() => {\n if (isLoading) {\n return loadingPlaceholder\n }\n return conversations.map(conversation => ({\n type: 'conversation' as const,\n id: conversation.id,\n resource: conversation,\n }))\n }, [conversations, isLoading])\n\n useConversationsJoltEvents()\n\n return (\n <View style={styles.container}>\n <FlatList\n data={data}\n keyExtractor={item => item.id.toString()}\n contentContainerStyle={styles.contentContainer}\n onRefresh={refetch}\n refreshing={!isFetched && isRefetching}\n ListHeaderComponent={ListHeaderComponent}\n ListEmptyComponent={\n <ConversationsBlankState\n isFilterApplied={isFilterApplied}\n canCreateConversations={canCreateConversations}\n />\n }\n ListFooterComponent={\n showArchivedResultsFooter ? (\n <ArchivedResultsFooter onViewActiveConversations={clearFilters} />\n ) : showFilteredResultsFooter ? (\n <FilteredResultsFooter />\n ) : null\n }\n renderItem={({ item }) => {\n if (item.type === 'loading') {\n return <ConversationPreviewSkeleton />\n } else {\n return (\n <ConversationPreview\n conversation={item.resource}\n onPress={() =>\n navigation.navigate('Conversation', {\n conversation_id: item.resource.id,\n title: item.resource.title,\n badge: item.resource.badges?.[0],\n deleted: item.resource.deleted,\n muted: item.resource.muted,\n })\n }\n showBadges={showBadges}\n />\n )\n }\n }}\n onEndReached={() => fetchNextPage()}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: { flex: 1 },\n contentContainer: { paddingVertical: 16 },\n listItem: { color: colors.fillColorNeutral020 },\n })\n}\n\ninterface FlatListLoadingItem {\n type: 'loading'\n id: string\n}\ninterface FlatListConversationItem {\n type: 'conversation'\n resource: ConversationResource\n id: number\n}\ntype FlatListItem = FlatListLoadingItem | FlatListConversationItem\n\nconst loadingPlaceholder: FlatListItem[] = Array.from({ length: 5 }, (_, i) => ({\n type: 'loading',\n id: `loading${i}`,\n}))\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"conversations.js","names":["useNavigation","React","useMemo","FlatList","StyleSheet","View","useConversationsContext","useTheme","useCanCreateConversations","useClearConversationFilters","useConversationsJoltEvents","useFilterDropdownEnabled","ArchivedResultsFooter","ConversationPreview","ConversationPreviewSkeleton","ConversationsBlankState","FilteredResultsFooter","jsx","_jsx","Conversations","t0","$","_c","ListHeaderComponent","styles","useStyles","conversations","isLoading","fetchNextPage","refetch","isRefetching","isFetched","hasNextPage","args","t1","chat_group_graph_id","group_source_app_name","show_direct_messages","show_archived","navigation","canCreateConversations","clearFilters","filterDropdownEnabled","isFilterApplied","showArchivedResultsFooter","showFilteredResultsFooter","length","showBadges","t2","bb0","loadingPlaceholder","t3","map","_temp","data","t4","t5","t6","t7","item","item_0","type","conversation","resource","onPress","navigate","conversation_id","id","title","badge","badges","deleted","muted","t8","contentContainer","keyExtractor","_temp2","contentContainerStyle","refreshing","ListEmptyComponent","ListFooterComponent","renderItem","onEndReached","t9","container","style","children","colors","fillColorNeutral020","create","flex","paddingVertical","listItem","color","Array","from","_","i","toString"],"sources":["../../../src/components/conversations/conversations.tsx"],"sourcesContent":["import { useNavigation } from '@react-navigation/native'\nimport React, { useMemo } from 'react'\nimport { FlatList, StyleSheet, View } from 'react-native'\nimport { useConversationsContext } from '../../contexts/conversations_context'\nimport { useTheme } from '../../hooks'\nimport { useCanCreateConversations } from '../../hooks/use_chat_permissions'\nimport { useClearConversationFilters } from '../../hooks/use_clear_conversation_filters'\nimport { useConversationsJoltEvents } from '../../hooks/use_conversations_jolt_events'\nimport { useFilterDropdownEnabled } from '../../hooks/use_filter_dropdown_enabled'\nimport { ConversationResource } from '../../types'\nimport { ArchivedResultsFooter } from './archived_results_footer'\nimport { ConversationPreview, ConversationPreviewSkeleton } from './conversation_preview'\nimport { ConversationsBlankState } from './conversations_blank_state'\nimport { FilteredResultsFooter } from './filtered_results_footer'\n\ninterface ConversationsProps {\n ListHeaderComponent?:\n | React.ComponentType<any>\n | React.ReactElement<any, string | React.JSXElementConstructor<any>>\n | null\n | undefined\n}\n\nexport const Conversations = ({ ListHeaderComponent }: ConversationsProps) => {\n const styles = useStyles()\n const {\n conversations,\n isLoading,\n fetchNextPage,\n refetch,\n isRefetching,\n isFetched,\n hasNextPage,\n args: { chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived },\n } = useConversationsContext()\n const navigation = useNavigation()\n const canCreateConversations = useCanCreateConversations()\n const clearFilters = useClearConversationFilters()\n const filterDropdownEnabled = useFilterDropdownEnabled()\n const isFilterApplied =\n !!chat_group_graph_id || !!group_source_app_name || !!show_direct_messages || !!show_archived\n const showArchivedResultsFooter = !!show_archived && !isLoading && !hasNextPage\n const showFilteredResultsFooter =\n filterDropdownEnabled &&\n isFilterApplied &&\n !show_archived &&\n !hasNextPage &&\n !isLoading &&\n conversations.length > 0\n\n const showBadges = !chat_group_graph_id\n\n const data: FlatListItem[] = useMemo(() => {\n if (isLoading) {\n return loadingPlaceholder\n }\n return conversations.map(conversation => ({\n type: 'conversation' as const,\n id: conversation.id,\n resource: conversation,\n }))\n }, [conversations, isLoading])\n\n useConversationsJoltEvents()\n\n return (\n <View style={styles.container}>\n <FlatList\n data={data}\n keyExtractor={item => item.id.toString()}\n contentContainerStyle={styles.contentContainer}\n onRefresh={refetch}\n refreshing={!isFetched && isRefetching}\n ListHeaderComponent={ListHeaderComponent}\n ListEmptyComponent={\n <ConversationsBlankState\n isFilterApplied={isFilterApplied}\n canCreateConversations={canCreateConversations}\n />\n }\n ListFooterComponent={\n showArchivedResultsFooter ? (\n <ArchivedResultsFooter onViewActiveConversations={clearFilters} />\n ) : showFilteredResultsFooter ? (\n <FilteredResultsFooter />\n ) : null\n }\n renderItem={({ item }) => {\n if (item.type === 'loading') {\n return <ConversationPreviewSkeleton />\n } else {\n return (\n <ConversationPreview\n conversation={item.resource}\n onPress={() =>\n navigation.navigate('Conversation', {\n conversation_id: item.resource.id,\n title: item.resource.title,\n badge: item.resource.badges?.[0],\n deleted: item.resource.deleted,\n muted: item.resource.muted,\n })\n }\n showBadges={showBadges}\n />\n )\n }\n }}\n onEndReached={() => fetchNextPage()}\n />\n </View>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n container: { flex: 1 },\n contentContainer: { paddingVertical: 16 },\n listItem: { color: colors.fillColorNeutral020 },\n })\n}\n\ninterface FlatListLoadingItem {\n type: 'loading'\n id: string\n}\ninterface FlatListConversationItem {\n type: 'conversation'\n resource: ConversationResource\n id: number\n}\ntype FlatListItem = FlatListLoadingItem | FlatListConversationItem\n\nconst loadingPlaceholder: FlatListItem[] = Array.from({ length: 5 }, (_, i) => ({\n type: 'loading',\n id: `loading${i}`,\n}))\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,11 +2,12 @@ import type { IconDefinition } from '@fortawesome/fontawesome-svg-core';
|
|
|
2
2
|
import { type AvatarRootProps } from '../primitive/avatar_primitive';
|
|
3
3
|
interface IconTileProps {
|
|
4
4
|
icon: IconDefinition;
|
|
5
|
+
shape: 'circle' | 'square';
|
|
5
6
|
size?: AvatarRootProps['size'];
|
|
6
7
|
maxFontSizeMultiplier?: AvatarRootProps['maxFontSizeMultiplier'];
|
|
7
8
|
style?: AvatarRootProps['style'];
|
|
8
9
|
testID?: string;
|
|
9
10
|
}
|
|
10
|
-
export declare function IconTile({ icon, size, maxFontSizeMultiplier, style, testID, }: IconTileProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function IconTile({ icon, shape, size, maxFontSizeMultiplier, style, testID, }: IconTileProps): import("react/jsx-runtime").JSX.Element;
|
|
11
12
|
export {};
|
|
12
13
|
//# sourceMappingURL=icon_tile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon_tile.d.ts","sourceRoot":"","sources":["../../../src/components/display/icon_tile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAMvE,OAAwB,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"icon_tile.d.ts","sourceRoot":"","sources":["../../../src/components/display/icon_tile.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAMvE,OAAwB,EAAE,KAAK,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAKrF,UAAU,aAAa;IACrB,IAAI,EAAE,cAAc,CAAA;IACpB,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;IAC9B,qBAAqB,CAAC,EAAE,eAAe,CAAC,uBAAuB,CAAC,CAAA;IAChE,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,KAAK,EACL,IAAW,EACX,qBAAgD,EAChD,KAAK,EACL,MAAM,GACP,EAAE,aAAa,2CAmBf"}
|
|
@@ -7,10 +7,12 @@ import { MAX_FONT_SIZE_MULTIPLIER } from '../../utils';
|
|
|
7
7
|
import AvatarPrimitive from '../primitive/avatar_primitive';
|
|
8
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
const ICON_SIZE_PX = 16;
|
|
10
|
+
const SQUARE_BORDER_RADIUS_PX = 4;
|
|
10
11
|
export function IconTile(t0) {
|
|
11
|
-
const $ = _c(
|
|
12
|
+
const $ = _c(23);
|
|
12
13
|
const {
|
|
13
14
|
icon,
|
|
15
|
+
shape,
|
|
14
16
|
size: t1,
|
|
15
17
|
maxFontSizeMultiplier: t2,
|
|
16
18
|
style,
|
|
@@ -18,7 +20,6 @@ export function IconTile(t0) {
|
|
|
18
20
|
} = t0;
|
|
19
21
|
const size = t1 === undefined ? "lg" : t1;
|
|
20
22
|
const maxFontSizeMultiplier = t2 === undefined ? MAX_FONT_SIZE_MULTIPLIER : t2;
|
|
21
|
-
const styles = useStyles();
|
|
22
23
|
let t3;
|
|
23
24
|
if ($[0] !== maxFontSizeMultiplier) {
|
|
24
25
|
t3 = {
|
|
@@ -30,80 +31,119 @@ export function IconTile(t0) {
|
|
|
30
31
|
t3 = $[1];
|
|
31
32
|
}
|
|
32
33
|
const fontScale = useFontScale(t3);
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
let t4;
|
|
35
|
+
if ($[2] !== fontScale) {
|
|
36
|
+
t4 = {
|
|
37
|
+
fontScale
|
|
38
|
+
};
|
|
39
|
+
$[2] = fontScale;
|
|
40
|
+
$[3] = t4;
|
|
41
|
+
} else {
|
|
42
|
+
t4 = $[3];
|
|
43
|
+
}
|
|
44
|
+
const styles = useStyles(t4);
|
|
45
|
+
const t5 = shape === "square" && styles.square;
|
|
46
|
+
let t6;
|
|
47
|
+
if ($[4] !== styles.tile || $[5] !== t5) {
|
|
48
|
+
t6 = [styles.tile, t5];
|
|
49
|
+
$[4] = styles.tile;
|
|
50
|
+
$[5] = t5;
|
|
51
|
+
$[6] = t6;
|
|
52
|
+
} else {
|
|
53
|
+
t6 = $[6];
|
|
54
|
+
}
|
|
55
|
+
const t7 = ICON_SIZE_PX * fontScale;
|
|
56
|
+
let t8;
|
|
57
|
+
if ($[7] !== icon || $[8] !== styles.icon.color || $[9] !== t7) {
|
|
58
|
+
t8 = /*#__PURE__*/_jsx(FontAwesomeIcon, {
|
|
37
59
|
icon: icon,
|
|
38
|
-
size:
|
|
60
|
+
size: t7,
|
|
39
61
|
color: styles.icon.color
|
|
40
62
|
});
|
|
41
|
-
$[
|
|
42
|
-
$[
|
|
43
|
-
$[
|
|
44
|
-
$[
|
|
63
|
+
$[7] = icon;
|
|
64
|
+
$[8] = styles.icon.color;
|
|
65
|
+
$[9] = t7;
|
|
66
|
+
$[10] = t8;
|
|
45
67
|
} else {
|
|
46
|
-
|
|
68
|
+
t8 = $[10];
|
|
47
69
|
}
|
|
48
|
-
let
|
|
49
|
-
if ($[
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
children: t5
|
|
56
|
-
})
|
|
70
|
+
let t9;
|
|
71
|
+
if ($[11] !== t6 || $[12] !== t8 || $[13] !== testID) {
|
|
72
|
+
t9 = /*#__PURE__*/_jsx(View, {
|
|
73
|
+
style: t6,
|
|
74
|
+
testID: testID,
|
|
75
|
+
accessibilityElementsHidden: true,
|
|
76
|
+
children: t8
|
|
57
77
|
});
|
|
58
|
-
$[
|
|
59
|
-
$[
|
|
60
|
-
$[
|
|
61
|
-
$[
|
|
78
|
+
$[11] = t6;
|
|
79
|
+
$[12] = t8;
|
|
80
|
+
$[13] = testID;
|
|
81
|
+
$[14] = t9;
|
|
82
|
+
} else {
|
|
83
|
+
t9 = $[14];
|
|
84
|
+
}
|
|
85
|
+
const tile = t9;
|
|
86
|
+
let t10;
|
|
87
|
+
if ($[15] !== shape || $[16] !== tile) {
|
|
88
|
+
t10 = shape === "circle" ? /*#__PURE__*/_jsx(AvatarPrimitive.Mask, {
|
|
89
|
+
children: tile
|
|
90
|
+
}) : tile;
|
|
91
|
+
$[15] = shape;
|
|
92
|
+
$[16] = tile;
|
|
93
|
+
$[17] = t10;
|
|
62
94
|
} else {
|
|
63
|
-
|
|
95
|
+
t10 = $[17];
|
|
64
96
|
}
|
|
65
|
-
let
|
|
66
|
-
if ($[
|
|
67
|
-
|
|
97
|
+
let t11;
|
|
98
|
+
if ($[18] !== maxFontSizeMultiplier || $[19] !== size || $[20] !== style || $[21] !== t10) {
|
|
99
|
+
t11 = /*#__PURE__*/_jsx(AvatarPrimitive.Root, {
|
|
68
100
|
size: size,
|
|
69
101
|
maxFontSizeMultiplier: maxFontSizeMultiplier,
|
|
70
102
|
style: style,
|
|
71
|
-
children:
|
|
103
|
+
children: t10
|
|
72
104
|
});
|
|
73
|
-
$[
|
|
74
|
-
$[
|
|
75
|
-
$[
|
|
76
|
-
$[
|
|
77
|
-
$[
|
|
105
|
+
$[18] = maxFontSizeMultiplier;
|
|
106
|
+
$[19] = size;
|
|
107
|
+
$[20] = style;
|
|
108
|
+
$[21] = t10;
|
|
109
|
+
$[22] = t11;
|
|
78
110
|
} else {
|
|
79
|
-
|
|
111
|
+
t11 = $[22];
|
|
80
112
|
}
|
|
81
|
-
return
|
|
113
|
+
return t11;
|
|
82
114
|
}
|
|
83
|
-
const useStyles =
|
|
84
|
-
const $ = _c(
|
|
115
|
+
const useStyles = t0 => {
|
|
116
|
+
const $ = _c(4);
|
|
117
|
+
const {
|
|
118
|
+
fontScale
|
|
119
|
+
} = t0;
|
|
85
120
|
const {
|
|
86
121
|
colors
|
|
87
122
|
} = useTheme();
|
|
88
|
-
let
|
|
89
|
-
if ($[0] !== colors.fillColorNeutral070 || $[1] !== colors.iconColorDefaultPrimary) {
|
|
90
|
-
|
|
123
|
+
let t1;
|
|
124
|
+
if ($[0] !== colors.fillColorNeutral070 || $[1] !== colors.iconColorDefaultPrimary || $[2] !== fontScale) {
|
|
125
|
+
t1 = StyleSheet.create({
|
|
91
126
|
tile: {
|
|
92
127
|
flex: 1,
|
|
93
128
|
alignItems: "center",
|
|
94
129
|
justifyContent: "center",
|
|
95
130
|
backgroundColor: colors.fillColorNeutral070
|
|
96
131
|
},
|
|
132
|
+
square: {
|
|
133
|
+
borderRadius: SQUARE_BORDER_RADIUS_PX * fontScale,
|
|
134
|
+
overflow: "hidden"
|
|
135
|
+
},
|
|
97
136
|
icon: {
|
|
98
137
|
color: colors.iconColorDefaultPrimary
|
|
99
138
|
}
|
|
100
139
|
});
|
|
101
140
|
$[0] = colors.fillColorNeutral070;
|
|
102
141
|
$[1] = colors.iconColorDefaultPrimary;
|
|
103
|
-
$[2] =
|
|
142
|
+
$[2] = fontScale;
|
|
143
|
+
$[3] = t1;
|
|
104
144
|
} else {
|
|
105
|
-
|
|
145
|
+
t1 = $[3];
|
|
106
146
|
}
|
|
107
|
-
return
|
|
147
|
+
return t1;
|
|
108
148
|
};
|
|
109
149
|
//# sourceMappingURL=icon_tile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icon_tile.js","names":["FontAwesomeIcon","React","StyleSheet","View","useFontScale","useTheme","MAX_FONT_SIZE_MULTIPLIER","AvatarPrimitive","jsx","_jsx","ICON_SIZE_PX","IconTile","t0","$","_c","icon","size","t1","maxFontSizeMultiplier","t2","style","testID","undefined","
|
|
1
|
+
{"version":3,"file":"icon_tile.js","names":["FontAwesomeIcon","React","StyleSheet","View","useFontScale","useTheme","MAX_FONT_SIZE_MULTIPLIER","AvatarPrimitive","jsx","_jsx","ICON_SIZE_PX","SQUARE_BORDER_RADIUS_PX","IconTile","t0","$","_c","icon","shape","size","t1","maxFontSizeMultiplier","t2","style","testID","undefined","t3","fontScale","t4","styles","useStyles","t5","square","t6","tile","t7","t8","color","t9","accessibilityElementsHidden","children","t10","Mask","t11","Root","colors","fillColorNeutral070","iconColorDefaultPrimary","create","flex","alignItems","justifyContent","backgroundColor","borderRadius","overflow"],"sources":["../../../src/components/display/icon_tile.tsx"],"sourcesContent":["import type { IconDefinition } from '@fortawesome/fontawesome-svg-core'\nimport { FontAwesomeIcon } from '@fortawesome/react-native-fontawesome'\nimport React from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { useFontScale, useTheme } from '../../hooks'\nimport { MAX_FONT_SIZE_MULTIPLIER } from '../../utils'\nimport AvatarPrimitive, { type AvatarRootProps } from '../primitive/avatar_primitive'\n\nconst ICON_SIZE_PX = 16\nconst SQUARE_BORDER_RADIUS_PX = 4\n\ninterface IconTileProps {\n icon: IconDefinition\n shape: 'circle' | 'square'\n size?: AvatarRootProps['size']\n maxFontSizeMultiplier?: AvatarRootProps['maxFontSizeMultiplier']\n style?: AvatarRootProps['style']\n testID?: string\n}\n\nexport function IconTile({\n icon,\n shape,\n size = 'lg',\n maxFontSizeMultiplier = MAX_FONT_SIZE_MULTIPLIER,\n style,\n testID,\n}: IconTileProps) {\n const fontScale = useFontScale({ maxFontSizeMultiplier })\n const styles = useStyles({ fontScale })\n\n const tile = (\n <View\n style={[styles.tile, shape === 'square' && styles.square]}\n testID={testID}\n accessibilityElementsHidden\n >\n <FontAwesomeIcon icon={icon} size={ICON_SIZE_PX * fontScale} color={styles.icon.color} />\n </View>\n )\n\n return (\n <AvatarPrimitive.Root size={size} maxFontSizeMultiplier={maxFontSizeMultiplier} style={style}>\n {shape === 'circle' ? <AvatarPrimitive.Mask>{tile}</AvatarPrimitive.Mask> : tile}\n </AvatarPrimitive.Root>\n )\n}\n\nconst useStyles = ({ fontScale }: { fontScale: number }) => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n tile: {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: colors.fillColorNeutral070,\n },\n square: {\n borderRadius: SQUARE_BORDER_RADIUS_PX * fontScale,\n overflow: 'hidden',\n },\n icon: {\n color: colors.iconColorDefaultPrimary,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rows.js","names":["PlatformPressable","useNavigation","React","useContext","StyleSheet","View","Heading","Icon","IconTile","Image","Text","TextButton","useAtFontScaleBreakpoint","useFontScale","useScalableNumberOfLines","useTheme","useServicesTeamsMap","MAX_FONT_SIZE_MULTIPLIER","platformFontWeightBold","FilterContext","jsx","_jsx","jsxs","_jsxs","FilterRow","t0","$","_c","group_source_app_name","show_direct_messages","isActive","filter","setAppFilter","t1","t2","children","t3","PressableRow","onPress","GroupRow","group","styles","useRowStyles","setGroupFilter","id","chat_group_graph_id","handleFilterByGroup","headerImage","membershipsCount","medium","rowImage","source","uri","resizeMode","style","alt","name","rowTitle","variant","t4","rowSubtitle","t5","rowTextContainer","t6","TeamRow","team","servicesTeams","params","toString","scalableNumberOfLines","servicesTeam","serviceTypeNames","join","concatedServiceTypeNames","serviceTypeName","t7","OtherRow","show_archived","description","icon","size","ViewMore","routeName","navigation","rowWithoutBorder","navigate","viewMoreButton","selected","rowInner","rowIconRight","accessibilityElementsHidden","maxFontSizeMultiplier","row","pressable","accessibilityRole","accessibilityState","ASPECT_RATIO","THUMBNAIL_WIDTH","THUMBNAIL_HEIGHT","undefined","theme","Symbol","for","fontScale","atFontScaleBreakpoint","colors","borderColorDefaultBase","borderColorDefaultDark","statusSuccessIcon","textColorDefaultPrimary","textColorDefaultSecondary","create","paddingLeft","flexDirection","alignItems","justifyContent","gap","borderBottomWidth","borderBottomColor","paddingVertical","paddingRight","flexShrink","flex","width","height","borderRadius","fontSize","color","opacity","fontWeight"],"sources":["../../../../src/screens/conversation_filters/components/rows.tsx"],"sourcesContent":["import type { IconDefinition } from '@fortawesome/fontawesome-svg-core'\nimport { PlatformPressable } from '@react-navigation/elements'\nimport { NavigationProp, useNavigation } from '@react-navigation/native'\nimport React, { PropsWithChildren, useContext } from 'react'\nimport { StyleSheet, View, ViewStyle } from 'react-native'\nimport { Heading, Icon, IconTile, Image, Text, TextButton } from '../../../components'\nimport {\n useAtFontScaleBreakpoint,\n useFontScale,\n useScalableNumberOfLines,\n useTheme,\n} from '../../../hooks'\nimport { useServicesTeamsMap } from '../../../hooks/services/use_services_team'\nimport { GroupResource } from '../../../types/resources/group_resource'\nimport { MAX_FONT_SIZE_MULTIPLIER, platformFontWeightBold } from '../../../utils/styles'\nimport { FilterContext } from '../context/conversation_filter_context'\nimport { FilterTypes } from '../filter_types'\nimport { FilteredGroup } from '../hooks/filters'\nimport { ConversationFilterStackParamList } from '../screen_props'\n\nexport type FilterProps = {\n group_source_app_name?: string\n show_direct_messages?: boolean\n isActive: boolean\n filter: FilterTypes\n}\n\nexport const FilterRow = ({\n group_source_app_name,\n show_direct_messages,\n isActive,\n filter,\n}: FilterProps) => {\n const { setAppFilter } = useContext(FilterContext)\n\n return (\n <PressableRow\n onPress={() => setAppFilter({ group_source_app_name, show_direct_messages })}\n isActive={isActive}\n >\n <Text>{filter}</Text>\n </PressableRow>\n )\n}\n\nexport type GroupRowProps = {\n group: FilteredGroup\n isActive: boolean\n}\n\nexport const GroupRow = ({ group, isActive }: GroupRowProps) => {\n const styles = useRowStyles()\n const { setGroupFilter } = useContext(FilterContext)\n\n const handleFilterByGroup = () => {\n setGroupFilter({ chat_group_graph_id: group.id })\n }\n\n const { headerImage, membershipsCount } = group\n\n return (\n <PressableRow onPress={handleFilterByGroup} isActive={isActive}>\n {headerImage?.medium && (\n <Image\n source={{ uri: headerImage?.medium }}\n resizeMode=\"cover\"\n style={styles.rowImage}\n alt=\"\"\n />\n )}\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {group.name}\n </Heading>\n {membershipsCount && (\n <Text style={styles.rowSubtitle}>{group.membershipsCount} members</Text>\n )}\n </View>\n </PressableRow>\n )\n}\n\nexport type TeamRowProps = {\n team: GroupResource\n isActive: boolean\n}\n\nexport const TeamRow = ({ team }: TeamRowProps) => {\n const { setGroupFilter } = useContext(FilterContext)\n const servicesTeams = useServicesTeamsMap()\n const { params } = useContext(FilterContext)\n const { chat_group_graph_id } = params\n const isActive = chat_group_graph_id === team.id.toString()\n const styles = useRowStyles()\n const scalableNumberOfLines = useScalableNumberOfLines()\n\n const handleFilterByGroup = () => {\n setGroupFilter({ chat_group_graph_id: team.id })\n }\n\n const servicesTeam = servicesTeams[team.id]\n const concatedServiceTypeNames = servicesTeam?.serviceTypeNames.join(', ')\n const serviceTypeName = concatedServiceTypeNames || servicesTeam?.group\n\n return (\n <PressableRow onPress={handleFilterByGroup} isActive={isActive}>\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {team.name}\n </Heading>\n <Text numberOfLines={scalableNumberOfLines} style={styles.rowSubtitle}>\n {serviceTypeName}\n </Text>\n </View>\n </PressableRow>\n )\n}\n\nexport type OtherRowProps = {\n show_archived?: boolean\n isActive: boolean\n filter: FilterTypes\n description: string\n icon: IconDefinition\n}\n\nexport const OtherRow = ({ show_archived, isActive, filter, description, icon }: OtherRowProps) => {\n const styles = useRowStyles()\n const { setAppFilter } = useContext(FilterContext)\n\n return (\n <PressableRow onPress={() => setAppFilter({ show_archived })} isActive={isActive}>\n <IconTile icon={icon} size=\"lg\" />\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {filter}\n </Heading>\n <Text variant=\"footnote\" style={styles.rowSubtitle}>\n {description}\n </Text>\n </View>\n </PressableRow>\n )\n}\n\nexport type ViewMoreRowProps = { routeName: keyof ConversationFilterStackParamList }\n\nexport const ViewMore = ({ routeName }: ViewMoreRowProps) => {\n const styles = useRowStyles()\n const navigation = useNavigation<NavigationProp<ConversationFilterStackParamList, 'Filters'>>()\n\n return (\n <View style={[styles.rowWithoutBorder]}>\n <TextButton onPress={() => navigation.navigate(routeName, {})} style={styles.viewMoreButton}>\n View more\n </TextButton>\n </View>\n )\n}\n\nexport const PressableRow = ({\n children,\n isActive,\n onPress,\n style,\n}: PropsWithChildren<{ isActive: boolean; onPress: () => void; style?: ViewStyle }>) => {\n const styles = useRowStyles({ isActive })\n return (\n <PlatformPressable\n style={styles.pressable}\n onPress={onPress}\n accessibilityRole=\"radio\"\n accessibilityState={{ selected: isActive }}\n >\n <View style={styles.row}>\n <View style={[styles.rowInner, style]}>{children}</View>\n <Icon\n name=\"general.check\"\n style={styles.rowIconRight}\n accessibilityElementsHidden\n maxFontSizeMultiplier={2.5}\n />\n </View>\n </PlatformPressable>\n )\n}\n\nconst ASPECT_RATIO = 16 / 9\nconst THUMBNAIL_WIDTH = 80\nconst THUMBNAIL_HEIGHT = THUMBNAIL_WIDTH / ASPECT_RATIO\n\nconst useRowStyles = ({ isActive = false }: { isActive?: boolean } = {}) => {\n const theme = useTheme()\n const fontScale = useFontScale({ maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n\n return StyleSheet.create({\n pressable: {\n paddingLeft: 16,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 12,\n borderBottomWidth: 1,\n borderBottomColor: atFontScaleBreakpoint\n ? theme.colors.borderColorDefaultDark\n : theme.colors.borderColorDefaultBase,\n paddingVertical: 12,\n paddingRight: 16,\n },\n rowInner: {\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n alignItems: atFontScaleBreakpoint ? 'flex-start' : 'center',\n gap: 12,\n flexShrink: 1,\n },\n rowTextContainer: {\n flexShrink: 1,\n },\n rowWithoutBorder: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingVertical: 12,\n paddingRight: 16,\n paddingLeft: 16,\n },\n viewMoreButton: {\n flex: 1,\n },\n rowImage: {\n width: THUMBNAIL_WIDTH * fontScale,\n height: THUMBNAIL_HEIGHT * fontScale,\n borderRadius: 4 * fontScale,\n },\n rowIconRight: {\n fontSize: 16,\n color: theme.colors.statusSuccessIcon,\n opacity: isActive ? 1 : 0,\n },\n rowTitle: {\n fontSize: 16,\n flexShrink: 1,\n fontWeight: atFontScaleBreakpoint ? 400 : platformFontWeightBold,\n },\n rowSubtitle: {\n color: atFontScaleBreakpoint\n ? theme.colors.textColorDefaultSecondary\n : theme.colors.textColorDefaultPrimary,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"rows.js","names":["PlatformPressable","useNavigation","React","useContext","StyleSheet","View","Heading","Icon","IconTile","Image","Text","TextButton","useAtFontScaleBreakpoint","useFontScale","useScalableNumberOfLines","useTheme","useServicesTeamsMap","MAX_FONT_SIZE_MULTIPLIER","platformFontWeightBold","FilterContext","jsx","_jsx","jsxs","_jsxs","FilterRow","t0","$","_c","group_source_app_name","show_direct_messages","isActive","filter","setAppFilter","t1","t2","children","t3","PressableRow","onPress","GroupRow","group","styles","useRowStyles","setGroupFilter","id","chat_group_graph_id","handleFilterByGroup","headerImage","membershipsCount","medium","rowImage","source","uri","resizeMode","style","alt","name","rowTitle","variant","t4","rowSubtitle","t5","rowTextContainer","t6","TeamRow","team","servicesTeams","params","toString","scalableNumberOfLines","servicesTeam","serviceTypeNames","join","concatedServiceTypeNames","serviceTypeName","t7","OtherRow","show_archived","description","icon","shape","size","ViewMore","routeName","navigation","rowWithoutBorder","navigate","viewMoreButton","selected","rowInner","rowIconRight","accessibilityElementsHidden","maxFontSizeMultiplier","row","pressable","accessibilityRole","accessibilityState","ASPECT_RATIO","THUMBNAIL_WIDTH","THUMBNAIL_HEIGHT","undefined","theme","Symbol","for","fontScale","atFontScaleBreakpoint","colors","borderColorDefaultBase","borderColorDefaultDark","statusSuccessIcon","textColorDefaultPrimary","textColorDefaultSecondary","create","paddingLeft","flexDirection","alignItems","justifyContent","gap","borderBottomWidth","borderBottomColor","paddingVertical","paddingRight","flexShrink","flex","width","height","borderRadius","fontSize","color","opacity","fontWeight"],"sources":["../../../../src/screens/conversation_filters/components/rows.tsx"],"sourcesContent":["import type { IconDefinition } from '@fortawesome/fontawesome-svg-core'\nimport { PlatformPressable } from '@react-navigation/elements'\nimport { NavigationProp, useNavigation } from '@react-navigation/native'\nimport React, { PropsWithChildren, useContext } from 'react'\nimport { StyleSheet, View, ViewStyle } from 'react-native'\nimport { Heading, Icon, IconTile, Image, Text, TextButton } from '../../../components'\nimport {\n useAtFontScaleBreakpoint,\n useFontScale,\n useScalableNumberOfLines,\n useTheme,\n} from '../../../hooks'\nimport { useServicesTeamsMap } from '../../../hooks/services/use_services_team'\nimport { GroupResource } from '../../../types/resources/group_resource'\nimport { MAX_FONT_SIZE_MULTIPLIER, platformFontWeightBold } from '../../../utils/styles'\nimport { FilterContext } from '../context/conversation_filter_context'\nimport { FilterTypes } from '../filter_types'\nimport { FilteredGroup } from '../hooks/filters'\nimport { ConversationFilterStackParamList } from '../screen_props'\n\nexport type FilterProps = {\n group_source_app_name?: string\n show_direct_messages?: boolean\n isActive: boolean\n filter: FilterTypes\n}\n\nexport const FilterRow = ({\n group_source_app_name,\n show_direct_messages,\n isActive,\n filter,\n}: FilterProps) => {\n const { setAppFilter } = useContext(FilterContext)\n\n return (\n <PressableRow\n onPress={() => setAppFilter({ group_source_app_name, show_direct_messages })}\n isActive={isActive}\n >\n <Text>{filter}</Text>\n </PressableRow>\n )\n}\n\nexport type GroupRowProps = {\n group: FilteredGroup\n isActive: boolean\n}\n\nexport const GroupRow = ({ group, isActive }: GroupRowProps) => {\n const styles = useRowStyles()\n const { setGroupFilter } = useContext(FilterContext)\n\n const handleFilterByGroup = () => {\n setGroupFilter({ chat_group_graph_id: group.id })\n }\n\n const { headerImage, membershipsCount } = group\n\n return (\n <PressableRow onPress={handleFilterByGroup} isActive={isActive}>\n {headerImage?.medium && (\n <Image\n source={{ uri: headerImage?.medium }}\n resizeMode=\"cover\"\n style={styles.rowImage}\n alt=\"\"\n />\n )}\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {group.name}\n </Heading>\n {membershipsCount && (\n <Text style={styles.rowSubtitle}>{group.membershipsCount} members</Text>\n )}\n </View>\n </PressableRow>\n )\n}\n\nexport type TeamRowProps = {\n team: GroupResource\n isActive: boolean\n}\n\nexport const TeamRow = ({ team }: TeamRowProps) => {\n const { setGroupFilter } = useContext(FilterContext)\n const servicesTeams = useServicesTeamsMap()\n const { params } = useContext(FilterContext)\n const { chat_group_graph_id } = params\n const isActive = chat_group_graph_id === team.id.toString()\n const styles = useRowStyles()\n const scalableNumberOfLines = useScalableNumberOfLines()\n\n const handleFilterByGroup = () => {\n setGroupFilter({ chat_group_graph_id: team.id })\n }\n\n const servicesTeam = servicesTeams[team.id]\n const concatedServiceTypeNames = servicesTeam?.serviceTypeNames.join(', ')\n const serviceTypeName = concatedServiceTypeNames || servicesTeam?.group\n\n return (\n <PressableRow onPress={handleFilterByGroup} isActive={isActive}>\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {team.name}\n </Heading>\n <Text numberOfLines={scalableNumberOfLines} style={styles.rowSubtitle}>\n {serviceTypeName}\n </Text>\n </View>\n </PressableRow>\n )\n}\n\nexport type OtherRowProps = {\n show_archived?: boolean\n isActive: boolean\n filter: FilterTypes\n description: string\n icon: IconDefinition\n}\n\nexport const OtherRow = ({ show_archived, isActive, filter, description, icon }: OtherRowProps) => {\n const styles = useRowStyles()\n const { setAppFilter } = useContext(FilterContext)\n\n return (\n <PressableRow onPress={() => setAppFilter({ show_archived })} isActive={isActive}>\n <IconTile icon={icon} shape=\"square\" size=\"lg\" />\n <View style={styles.rowTextContainer}>\n <Heading variant=\"h3\" style={styles.rowTitle}>\n {filter}\n </Heading>\n <Text variant=\"footnote\" style={styles.rowSubtitle}>\n {description}\n </Text>\n </View>\n </PressableRow>\n )\n}\n\nexport type ViewMoreRowProps = { routeName: keyof ConversationFilterStackParamList }\n\nexport const ViewMore = ({ routeName }: ViewMoreRowProps) => {\n const styles = useRowStyles()\n const navigation = useNavigation<NavigationProp<ConversationFilterStackParamList, 'Filters'>>()\n\n return (\n <View style={[styles.rowWithoutBorder]}>\n <TextButton onPress={() => navigation.navigate(routeName, {})} style={styles.viewMoreButton}>\n View more\n </TextButton>\n </View>\n )\n}\n\nexport const PressableRow = ({\n children,\n isActive,\n onPress,\n style,\n}: PropsWithChildren<{ isActive: boolean; onPress: () => void; style?: ViewStyle }>) => {\n const styles = useRowStyles({ isActive })\n return (\n <PlatformPressable\n style={styles.pressable}\n onPress={onPress}\n accessibilityRole=\"radio\"\n accessibilityState={{ selected: isActive }}\n >\n <View style={styles.row}>\n <View style={[styles.rowInner, style]}>{children}</View>\n <Icon\n name=\"general.check\"\n style={styles.rowIconRight}\n accessibilityElementsHidden\n maxFontSizeMultiplier={2.5}\n />\n </View>\n </PlatformPressable>\n )\n}\n\nconst ASPECT_RATIO = 16 / 9\nconst THUMBNAIL_WIDTH = 80\nconst THUMBNAIL_HEIGHT = THUMBNAIL_WIDTH / ASPECT_RATIO\n\nconst useRowStyles = ({ isActive = false }: { isActive?: boolean } = {}) => {\n const theme = useTheme()\n const fontScale = useFontScale({ maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER })\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n\n return StyleSheet.create({\n pressable: {\n paddingLeft: 16,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 12,\n borderBottomWidth: 1,\n borderBottomColor: atFontScaleBreakpoint\n ? theme.colors.borderColorDefaultDark\n : theme.colors.borderColorDefaultBase,\n paddingVertical: 12,\n paddingRight: 16,\n },\n rowInner: {\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n alignItems: atFontScaleBreakpoint ? 'flex-start' : 'center',\n gap: 12,\n flexShrink: 1,\n },\n rowTextContainer: {\n flexShrink: 1,\n },\n rowWithoutBorder: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingVertical: 12,\n paddingRight: 16,\n paddingLeft: 16,\n },\n viewMoreButton: {\n flex: 1,\n },\n rowImage: {\n width: THUMBNAIL_WIDTH * fontScale,\n height: THUMBNAIL_HEIGHT * fontScale,\n borderRadius: 4 * fontScale,\n },\n rowIconRight: {\n fontSize: 16,\n color: theme.colors.statusSuccessIcon,\n opacity: isActive ? 1 : 0,\n },\n rowTitle: {\n fontSize: 16,\n flexShrink: 1,\n fontWeight: atFontScaleBreakpoint ? 400 : platformFontWeightBold,\n },\n rowSubtitle: {\n color: atFontScaleBreakpoint\n ? theme.colors.textColorDefaultSecondary\n : theme.colors.textColorDefaultPrimary,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
package/build/screens/conversations/components/filter_dropdown_list_header_component.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter_dropdown_list_header_component.d.ts","sourceRoot":"","sources":["../../../../src/screens/conversations/components/filter_dropdown_list_header_component.tsx"],"names":[],"mappings":"AA6CA,eAAO,MAAM,iCAAiC,+
|
|
1
|
+
{"version":3,"file":"filter_dropdown_list_header_component.d.ts","sourceRoot":"","sources":["../../../../src/screens/conversations/components/filter_dropdown_list_header_component.tsx"],"names":[],"mappings":"AA6CA,eAAO,MAAM,iCAAiC,+CA6M7C,CAAA"}
|
|
@@ -37,7 +37,7 @@ const FILTER_PARAMS = {
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
export const FilterDropdownListHeaderComponent = () => {
|
|
40
|
-
const $ = _c(
|
|
40
|
+
const $ = _c(89);
|
|
41
41
|
const navigation = useNavigation();
|
|
42
42
|
let t0;
|
|
43
43
|
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
@@ -499,47 +499,40 @@ export const FilterDropdownListHeaderComponent = () => {
|
|
|
499
499
|
t31 = $[79];
|
|
500
500
|
}
|
|
501
501
|
let t32;
|
|
502
|
-
if ($[80] !== alertMarkAllRead || $[81] !== isPending) {
|
|
503
|
-
t32 = /*#__PURE__*/_jsx(
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
502
|
+
if ($[80] !== alertMarkAllRead || $[81] !== isPending || $[82] !== show_archived || $[83] !== styles.markAllReadRow) {
|
|
503
|
+
t32 = !show_archived && /*#__PURE__*/_jsx(View, {
|
|
504
|
+
style: styles.markAllReadRow,
|
|
505
|
+
children: /*#__PURE__*/_jsx(TextButton, {
|
|
506
|
+
onPress: alertMarkAllRead,
|
|
507
|
+
disabled: isPending,
|
|
508
|
+
maxFontSizeMultiplier: MAX_FONT_SIZE_MULTIPLIER_LANDMARK,
|
|
509
|
+
accessibilityShowsLargeContentViewer: true,
|
|
510
|
+
accessibilityLargeContentTitle: "Mark all read",
|
|
511
|
+
children: "Mark all read"
|
|
512
|
+
})
|
|
510
513
|
});
|
|
511
514
|
$[80] = alertMarkAllRead;
|
|
512
515
|
$[81] = isPending;
|
|
513
|
-
$[82] =
|
|
514
|
-
} else {
|
|
515
|
-
t32 = $[82];
|
|
516
|
-
}
|
|
517
|
-
let t33;
|
|
518
|
-
if ($[83] !== styles.markAllReadRow || $[84] !== t32) {
|
|
519
|
-
t33 = /*#__PURE__*/_jsx(View, {
|
|
520
|
-
style: styles.markAllReadRow,
|
|
521
|
-
children: t32
|
|
522
|
-
});
|
|
516
|
+
$[82] = show_archived;
|
|
523
517
|
$[83] = styles.markAllReadRow;
|
|
524
518
|
$[84] = t32;
|
|
525
|
-
$[85] = t33;
|
|
526
519
|
} else {
|
|
527
|
-
|
|
520
|
+
t32 = $[84];
|
|
528
521
|
}
|
|
529
|
-
let
|
|
530
|
-
if ($[
|
|
531
|
-
|
|
522
|
+
let t33;
|
|
523
|
+
if ($[85] !== styles.listHeader || $[86] !== t31 || $[87] !== t32) {
|
|
524
|
+
t33 = /*#__PURE__*/_jsxs(View, {
|
|
532
525
|
style: styles.listHeader,
|
|
533
|
-
children: [t31,
|
|
526
|
+
children: [t31, t32]
|
|
534
527
|
});
|
|
535
|
-
$[
|
|
536
|
-
$[
|
|
528
|
+
$[85] = styles.listHeader;
|
|
529
|
+
$[86] = t31;
|
|
530
|
+
$[87] = t32;
|
|
537
531
|
$[88] = t33;
|
|
538
|
-
$[89] = t34;
|
|
539
532
|
} else {
|
|
540
|
-
|
|
533
|
+
t33 = $[88];
|
|
541
534
|
}
|
|
542
|
-
return
|
|
535
|
+
return t33;
|
|
543
536
|
};
|
|
544
537
|
const useStyles = () => {
|
|
545
538
|
const $ = _c(3);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter_dropdown_list_header_component.js","names":["useNavigation","useRoute","React","useCallback","useMemo","Alert","StyleSheet","View","FilterDropdown","TextButton","useAtFontScaleBreakpoint","useCanBrowseArchivedConversations","useCanCreateConversations","useCurrentPersonCache","useDirectMessagesEligible","useHasDirectMessages","useNewConversationEntry","useTheme","useApiGet","useMarkAllRead","useCanDisplayGroups","useNewConversationFromFilter","useSearchEnabled","MAX_FONT_SIZE_MULTIPLIER_LANDMARK","Haptic","ListHeaderActionButton","jsx","_jsx","jsxs","_jsxs","ROW_PADDING_HORIZONTAL","ALL_CONVERSATIONS_LABEL","ARCHIVED_LABEL","FilterTypes","FILTER_PARAMS","All","Groups","group_source_app_name","Teams","DMs","show_direct_messages","FilterDropdownListHeaderComponent","$","_c","navigation","t0","Symbol","for","source_app_name","source_type","canFilterByTeams","t1","canFilterByGroups","directMessagesEligible","hasDirectMessages","canFilterByDMs","canBrowseArchived","searchEnabled","route","t2","params","title","chat_group_graph_id","t3","show_archived","undefined","currentPersonCache","markAllRead","isPending","canCreateConversations","entryMode","newConversationFromFilter","t4","t5","fields","Group","t6","url","data","app","t7","t8","enabled","group","t9","bb0","More","test","active","t10","id","label","t11","t12","t13","t14","options","t15","name","t16","triggerLabel","t17","navigate","screen","handleNewConversationNavigation","t18","setParams","handleSetFilter","t19","params_0","handleSelectFilter","t20","handleSearch","t21","handleChatSettings","t22","handleOpenConversationFilters","t23","update","unreadCount","notificationSuccess","handleMarkAllRead","t24","alert","text","onPress","alertMarkAllRead","showMoreFilters","styles","useStyles","t25","t26","titleContainer","style","children","t27","accessibilityLabel","testID","t28","t29","t30","actionsContainer","t31","headingRow","t32","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","t33","markAllReadRow","t34","listHeader","theme","atFontScaleBreakpoint","colors","fillColorNeutral050Base","create","borderBottomWidth","borderBottomColor","paddingBottom","gap","flexDirection","alignItems","justifyContent","paddingHorizontal","flexShrink","minWidth"],"sources":["../../../../src/screens/conversations/components/filter_dropdown_list_header_component.tsx"],"sourcesContent":["import { RouteProp, useNavigation, useRoute } from '@react-navigation/native'\nimport React, { useCallback, useMemo } from 'react'\nimport { Alert, StyleSheet, View } from 'react-native'\nimport { FilterDropdown, FilterDropdownOption, TextButton } from '../../../components'\nimport {\n useAtFontScaleBreakpoint,\n useCanBrowseArchivedConversations,\n useCanCreateConversations,\n useCurrentPersonCache,\n useDirectMessagesEligible,\n useHasDirectMessages,\n useNewConversationEntry,\n useTheme,\n} from '../../../hooks'\nimport { useApiGet } from '../../../hooks/use_api'\nimport { useMarkAllRead } from '../../../hooks/use_conversations_actions'\nimport { useCanDisplayGroups } from '../../../hooks/use_groups'\nimport { useNewConversationFromFilter } from '../../../hooks/use_new_conversation_from_filter'\nimport { useSearchEnabled } from '../../../hooks/use_search_enabled'\nimport { GraphId, GroupResource } from '../../../types/resources/group_resource'\nimport { MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../../utils'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { ConversationFiltersParams } from '../../conversation_filters/screen_props'\nimport { ConversationsScreenProps } from '../conversations_screen'\nimport { ListHeaderActionButton } from './list_header_action_button'\n\nconst ROW_PADDING_HORIZONTAL = 16\nconst ALL_CONVERSATIONS_LABEL = 'All conversations'\nconst ARCHIVED_LABEL = 'Archived'\n\nenum FilterTypes {\n All = 'All',\n Groups = 'Groups',\n Teams = 'Teams',\n DMs = 'DMs',\n More = 'More',\n}\n\nconst FILTER_PARAMS: Record<Exclude<FilterTypes, FilterTypes.More>, ConversationFiltersParams> = {\n [FilterTypes.All]: {},\n [FilterTypes.Groups]: { group_source_app_name: 'Groups' },\n [FilterTypes.Teams]: { group_source_app_name: 'Services' },\n [FilterTypes.DMs]: { show_direct_messages: true },\n}\n\nexport const FilterDropdownListHeaderComponent = () => {\n const navigation = useNavigation()\n const canFilterByTeams = useCanDisplayGroups({ source_app_name: 'Services', source_type: 'Team' })\n const canFilterByGroups = useCanDisplayGroups({ source_app_name: 'Groups', source_type: 'Group' })\n const directMessagesEligible = useDirectMessagesEligible()\n const hasDirectMessages = useHasDirectMessages()\n const canFilterByDMs = directMessagesEligible && hasDirectMessages\n const canBrowseArchived = useCanBrowseArchivedConversations()\n const searchEnabled = useSearchEnabled()\n const route = useRoute<RouteProp<ConversationsScreenProps['route']>>()\n const {\n title,\n chat_group_graph_id,\n group_source_app_name = '',\n show_direct_messages,\n show_archived,\n } = route.params || {}\n const currentPersonCache = useCurrentPersonCache()\n const { markAllRead, isPending } = useMarkAllRead()\n const canCreateConversations = useCanCreateConversations()\n const entryMode = useNewConversationEntry()\n const newConversationFromFilter = useNewConversationFromFilter(\n chat_group_graph_id as GraphId | undefined\n )\n const { data: group } = useApiGet<GroupResource>(\n { url: `/me/groups/${chat_group_graph_id}`, data: { fields: { Group: [] } }, app: 'chat' },\n { enabled: !!chat_group_graph_id }\n )\n\n const active: FilterTypes = useMemo(() => {\n if (chat_group_graph_id || show_archived) {\n return FilterTypes.More\n } else if (/groups/i.test(group_source_app_name)) {\n return FilterTypes.Groups\n } else if (/services/i.test(group_source_app_name)) {\n return FilterTypes.Teams\n } else if (show_direct_messages) {\n return FilterTypes.DMs\n }\n\n return FilterTypes.All\n }, [chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived])\n\n const options: FilterDropdownOption[] = useMemo(\n () => [\n { id: FilterTypes.All, label: FilterTypes.All },\n ...(canFilterByGroups ? [{ id: FilterTypes.Groups, label: FilterTypes.Groups }] : []),\n ...(canFilterByTeams ? [{ id: FilterTypes.Teams, label: FilterTypes.Teams }] : []),\n ...(canFilterByDMs ? [{ id: FilterTypes.DMs, label: FilterTypes.DMs }] : []),\n ],\n [canFilterByGroups, canFilterByTeams, canFilterByDMs]\n )\n\n const triggerLabel = useMemo(() => {\n if (chat_group_graph_id) return group?.name || title || ALL_CONVERSATIONS_LABEL\n if (show_archived) return ARCHIVED_LABEL\n if (active === FilterTypes.All) return ALL_CONVERSATIONS_LABEL\n\n return active\n }, [chat_group_graph_id, group?.name, title, show_archived, active])\n\n const handleNewConversationNavigation = useCallback(() => {\n if (newConversationFromFilter || entryMode === 'select_type') {\n return navigation.navigate('ConversationSelectType', {\n ...route.params,\n newConversationFromFilter,\n })\n }\n\n if (entryMode === 'groups') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectGroupRecipients',\n params: { ...route.params },\n })\n }\n\n if (entryMode === 'teams') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectTeamsILeadRecipients',\n params: { ...route.params },\n })\n }\n\n if (entryMode === 'direct_message') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectDirectMessageRecipients',\n params: { ...route.params },\n })\n }\n }, [navigation, route.params, entryMode, newConversationFromFilter])\n\n const handleSetFilter = useCallback(\n (params: ConversationFiltersParams) => {\n navigation.setParams({\n title: undefined,\n chat_group_graph_id: undefined,\n group_source_app_name: undefined,\n show_direct_messages: undefined,\n show_archived: undefined,\n ...params,\n })\n },\n [navigation]\n )\n\n const handleSelectFilter = useCallback(\n (id: string) => {\n const params = FILTER_PARAMS[id as keyof typeof FILTER_PARAMS]\n if (params) handleSetFilter(params)\n },\n [handleSetFilter]\n )\n\n const handleSearch = useCallback(() => {\n navigation.navigate('Search')\n }, [navigation])\n\n const handleChatSettings = useCallback(() => {\n navigation.navigate('ChatSettings', {})\n }, [navigation])\n\n const handleOpenConversationFilters = useCallback(() => {\n navigation.navigate('ConversationFilters', {\n chat_group_graph_id,\n group_source_app_name,\n show_direct_messages,\n show_archived,\n })\n }, [navigation, chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived])\n\n const handleMarkAllRead = useCallback(() => {\n currentPersonCache.update({ unreadCount: 0 })\n Haptic.notificationSuccess()\n markAllRead()\n }, [currentPersonCache, markAllRead])\n\n const alertMarkAllRead = useCallback(() => {\n if (active === FilterTypes.All) return handleMarkAllRead()\n\n Alert.alert('Mark all read', 'This includes conversations not shown by the current filter.', [\n { text: 'Cancel' },\n { text: 'OK', onPress: () => handleMarkAllRead() },\n ])\n }, [active, handleMarkAllRead])\n\n const showMoreFilters = canFilterByGroups || canFilterByTeams || canBrowseArchived\n\n const styles = useStyles()\n\n return (\n <View style={styles.listHeader}>\n <View style={styles.headingRow}>\n <View style={styles.titleContainer}>\n <FilterDropdown\n options={options}\n selectedId={active}\n onSelect={handleSelectFilter}\n onMoreFilters={handleOpenConversationFilters}\n showMoreFilters={showMoreFilters}\n triggerLabel={triggerLabel}\n />\n </View>\n <View style={styles.actionsContainer}>\n <ListHeaderActionButton\n name=\"general.cog\"\n onPress={handleChatSettings}\n accessibilityLabel=\"Chat settings\"\n testID=\"conversations-chat-settings-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n {canCreateConversations && (\n <ListHeaderActionButton\n name=\"churchCenter.signups\"\n onPress={handleNewConversationNavigation}\n accessibilityLabel=\"New conversation\"\n testID=\"conversations-new-conversation-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n )}\n {searchEnabled && (\n <ListHeaderActionButton\n name=\"general.search\"\n onPress={handleSearch}\n accessibilityLabel=\"Search\"\n testID=\"conversations-search-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n )}\n </View>\n </View>\n <View style={styles.markAllReadRow}>\n <TextButton\n onPress={alertMarkAllRead}\n disabled={isPending}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle=\"Mark all read\"\n >\n Mark all read\n </TextButton>\n </View>\n </View>\n )\n}\n\nconst useStyles = () => {\n const theme = useTheme()\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n\n return StyleSheet.create({\n listHeader: {\n borderBottomWidth: 1,\n borderBottomColor: theme.colors.fillColorNeutral050Base,\n paddingBottom: 16,\n gap: 8,\n },\n headingRow: {\n gap: 12,\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n alignItems: atFontScaleBreakpoint ? 'flex-start' : 'center',\n justifyContent: 'space-between',\n paddingBottom: atFontScaleBreakpoint ? 4 : 0,\n paddingHorizontal: ROW_PADDING_HORIZONTAL,\n },\n titleContainer: {\n flexShrink: 1,\n minWidth: 0,\n },\n actionsContainer: {\n flexDirection: 'row',\n gap: 8,\n alignItems: 'center',\n },\n markAllReadRow: {\n alignItems: 'flex-start',\n paddingHorizontal: ROW_PADDING_HORIZONTAL,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"filter_dropdown_list_header_component.js","names":["useNavigation","useRoute","React","useCallback","useMemo","Alert","StyleSheet","View","FilterDropdown","TextButton","useAtFontScaleBreakpoint","useCanBrowseArchivedConversations","useCanCreateConversations","useCurrentPersonCache","useDirectMessagesEligible","useHasDirectMessages","useNewConversationEntry","useTheme","useApiGet","useMarkAllRead","useCanDisplayGroups","useNewConversationFromFilter","useSearchEnabled","MAX_FONT_SIZE_MULTIPLIER_LANDMARK","Haptic","ListHeaderActionButton","jsx","_jsx","jsxs","_jsxs","ROW_PADDING_HORIZONTAL","ALL_CONVERSATIONS_LABEL","ARCHIVED_LABEL","FilterTypes","FILTER_PARAMS","All","Groups","group_source_app_name","Teams","DMs","show_direct_messages","FilterDropdownListHeaderComponent","$","_c","navigation","t0","Symbol","for","source_app_name","source_type","canFilterByTeams","t1","canFilterByGroups","directMessagesEligible","hasDirectMessages","canFilterByDMs","canBrowseArchived","searchEnabled","route","t2","params","title","chat_group_graph_id","t3","show_archived","undefined","currentPersonCache","markAllRead","isPending","canCreateConversations","entryMode","newConversationFromFilter","t4","t5","fields","Group","t6","url","data","app","t7","t8","enabled","group","t9","bb0","More","test","active","t10","id","label","t11","t12","t13","t14","options","t15","name","t16","triggerLabel","t17","navigate","screen","handleNewConversationNavigation","t18","setParams","handleSetFilter","t19","params_0","handleSelectFilter","t20","handleSearch","t21","handleChatSettings","t22","handleOpenConversationFilters","t23","update","unreadCount","notificationSuccess","handleMarkAllRead","t24","alert","text","onPress","alertMarkAllRead","showMoreFilters","styles","useStyles","t25","t26","titleContainer","style","children","t27","accessibilityLabel","testID","t28","t29","t30","actionsContainer","t31","headingRow","t32","markAllReadRow","accessibilityShowsLargeContentViewer","accessibilityLargeContentTitle","t33","listHeader","theme","atFontScaleBreakpoint","colors","fillColorNeutral050Base","create","borderBottomWidth","borderBottomColor","paddingBottom","gap","flexDirection","alignItems","justifyContent","paddingHorizontal","flexShrink","minWidth"],"sources":["../../../../src/screens/conversations/components/filter_dropdown_list_header_component.tsx"],"sourcesContent":["import { RouteProp, useNavigation, useRoute } from '@react-navigation/native'\nimport React, { useCallback, useMemo } from 'react'\nimport { Alert, StyleSheet, View } from 'react-native'\nimport { FilterDropdown, FilterDropdownOption, TextButton } from '../../../components'\nimport {\n useAtFontScaleBreakpoint,\n useCanBrowseArchivedConversations,\n useCanCreateConversations,\n useCurrentPersonCache,\n useDirectMessagesEligible,\n useHasDirectMessages,\n useNewConversationEntry,\n useTheme,\n} from '../../../hooks'\nimport { useApiGet } from '../../../hooks/use_api'\nimport { useMarkAllRead } from '../../../hooks/use_conversations_actions'\nimport { useCanDisplayGroups } from '../../../hooks/use_groups'\nimport { useNewConversationFromFilter } from '../../../hooks/use_new_conversation_from_filter'\nimport { useSearchEnabled } from '../../../hooks/use_search_enabled'\nimport { GraphId, GroupResource } from '../../../types/resources/group_resource'\nimport { MAX_FONT_SIZE_MULTIPLIER_LANDMARK } from '../../../utils'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { ConversationFiltersParams } from '../../conversation_filters/screen_props'\nimport { ConversationsScreenProps } from '../conversations_screen'\nimport { ListHeaderActionButton } from './list_header_action_button'\n\nconst ROW_PADDING_HORIZONTAL = 16\nconst ALL_CONVERSATIONS_LABEL = 'All conversations'\nconst ARCHIVED_LABEL = 'Archived'\n\nenum FilterTypes {\n All = 'All',\n Groups = 'Groups',\n Teams = 'Teams',\n DMs = 'DMs',\n More = 'More',\n}\n\nconst FILTER_PARAMS: Record<Exclude<FilterTypes, FilterTypes.More>, ConversationFiltersParams> = {\n [FilterTypes.All]: {},\n [FilterTypes.Groups]: { group_source_app_name: 'Groups' },\n [FilterTypes.Teams]: { group_source_app_name: 'Services' },\n [FilterTypes.DMs]: { show_direct_messages: true },\n}\n\nexport const FilterDropdownListHeaderComponent = () => {\n const navigation = useNavigation()\n const canFilterByTeams = useCanDisplayGroups({ source_app_name: 'Services', source_type: 'Team' })\n const canFilterByGroups = useCanDisplayGroups({ source_app_name: 'Groups', source_type: 'Group' })\n const directMessagesEligible = useDirectMessagesEligible()\n const hasDirectMessages = useHasDirectMessages()\n const canFilterByDMs = directMessagesEligible && hasDirectMessages\n const canBrowseArchived = useCanBrowseArchivedConversations()\n const searchEnabled = useSearchEnabled()\n const route = useRoute<RouteProp<ConversationsScreenProps['route']>>()\n const {\n title,\n chat_group_graph_id,\n group_source_app_name = '',\n show_direct_messages,\n show_archived,\n } = route.params || {}\n const currentPersonCache = useCurrentPersonCache()\n const { markAllRead, isPending } = useMarkAllRead()\n const canCreateConversations = useCanCreateConversations()\n const entryMode = useNewConversationEntry()\n const newConversationFromFilter = useNewConversationFromFilter(\n chat_group_graph_id as GraphId | undefined\n )\n const { data: group } = useApiGet<GroupResource>(\n { url: `/me/groups/${chat_group_graph_id}`, data: { fields: { Group: [] } }, app: 'chat' },\n { enabled: !!chat_group_graph_id }\n )\n\n const active: FilterTypes = useMemo(() => {\n if (chat_group_graph_id || show_archived) {\n return FilterTypes.More\n } else if (/groups/i.test(group_source_app_name)) {\n return FilterTypes.Groups\n } else if (/services/i.test(group_source_app_name)) {\n return FilterTypes.Teams\n } else if (show_direct_messages) {\n return FilterTypes.DMs\n }\n\n return FilterTypes.All\n }, [chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived])\n\n const options: FilterDropdownOption[] = useMemo(\n () => [\n { id: FilterTypes.All, label: FilterTypes.All },\n ...(canFilterByGroups ? [{ id: FilterTypes.Groups, label: FilterTypes.Groups }] : []),\n ...(canFilterByTeams ? [{ id: FilterTypes.Teams, label: FilterTypes.Teams }] : []),\n ...(canFilterByDMs ? [{ id: FilterTypes.DMs, label: FilterTypes.DMs }] : []),\n ],\n [canFilterByGroups, canFilterByTeams, canFilterByDMs]\n )\n\n const triggerLabel = useMemo(() => {\n if (chat_group_graph_id) return group?.name || title || ALL_CONVERSATIONS_LABEL\n if (show_archived) return ARCHIVED_LABEL\n if (active === FilterTypes.All) return ALL_CONVERSATIONS_LABEL\n\n return active\n }, [chat_group_graph_id, group?.name, title, show_archived, active])\n\n const handleNewConversationNavigation = useCallback(() => {\n if (newConversationFromFilter || entryMode === 'select_type') {\n return navigation.navigate('ConversationSelectType', {\n ...route.params,\n newConversationFromFilter,\n })\n }\n\n if (entryMode === 'groups') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectGroupRecipients',\n params: { ...route.params },\n })\n }\n\n if (entryMode === 'teams') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectTeamsILeadRecipients',\n params: { ...route.params },\n })\n }\n\n if (entryMode === 'direct_message') {\n return navigation.navigate('New', {\n screen: 'ConversationSelectDirectMessageRecipients',\n params: { ...route.params },\n })\n }\n }, [navigation, route.params, entryMode, newConversationFromFilter])\n\n const handleSetFilter = useCallback(\n (params: ConversationFiltersParams) => {\n navigation.setParams({\n title: undefined,\n chat_group_graph_id: undefined,\n group_source_app_name: undefined,\n show_direct_messages: undefined,\n show_archived: undefined,\n ...params,\n })\n },\n [navigation]\n )\n\n const handleSelectFilter = useCallback(\n (id: string) => {\n const params = FILTER_PARAMS[id as keyof typeof FILTER_PARAMS]\n if (params) handleSetFilter(params)\n },\n [handleSetFilter]\n )\n\n const handleSearch = useCallback(() => {\n navigation.navigate('Search')\n }, [navigation])\n\n const handleChatSettings = useCallback(() => {\n navigation.navigate('ChatSettings', {})\n }, [navigation])\n\n const handleOpenConversationFilters = useCallback(() => {\n navigation.navigate('ConversationFilters', {\n chat_group_graph_id,\n group_source_app_name,\n show_direct_messages,\n show_archived,\n })\n }, [navigation, chat_group_graph_id, group_source_app_name, show_direct_messages, show_archived])\n\n const handleMarkAllRead = useCallback(() => {\n currentPersonCache.update({ unreadCount: 0 })\n Haptic.notificationSuccess()\n markAllRead()\n }, [currentPersonCache, markAllRead])\n\n const alertMarkAllRead = useCallback(() => {\n if (active === FilterTypes.All) return handleMarkAllRead()\n\n Alert.alert('Mark all read', 'This includes conversations not shown by the current filter.', [\n { text: 'Cancel' },\n { text: 'OK', onPress: () => handleMarkAllRead() },\n ])\n }, [active, handleMarkAllRead])\n\n const showMoreFilters = canFilterByGroups || canFilterByTeams || canBrowseArchived\n\n const styles = useStyles()\n\n return (\n <View style={styles.listHeader}>\n <View style={styles.headingRow}>\n <View style={styles.titleContainer}>\n <FilterDropdown\n options={options}\n selectedId={active}\n onSelect={handleSelectFilter}\n onMoreFilters={handleOpenConversationFilters}\n showMoreFilters={showMoreFilters}\n triggerLabel={triggerLabel}\n />\n </View>\n <View style={styles.actionsContainer}>\n <ListHeaderActionButton\n name=\"general.cog\"\n onPress={handleChatSettings}\n accessibilityLabel=\"Chat settings\"\n testID=\"conversations-chat-settings-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n {canCreateConversations && (\n <ListHeaderActionButton\n name=\"churchCenter.signups\"\n onPress={handleNewConversationNavigation}\n accessibilityLabel=\"New conversation\"\n testID=\"conversations-new-conversation-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n )}\n {searchEnabled && (\n <ListHeaderActionButton\n name=\"general.search\"\n onPress={handleSearch}\n accessibilityLabel=\"Search\"\n testID=\"conversations-search-button\"\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n />\n )}\n </View>\n </View>\n {!show_archived && (\n <View style={styles.markAllReadRow}>\n <TextButton\n onPress={alertMarkAllRead}\n disabled={isPending}\n maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}\n accessibilityShowsLargeContentViewer\n accessibilityLargeContentTitle=\"Mark all read\"\n >\n Mark all read\n </TextButton>\n </View>\n )}\n </View>\n )\n}\n\nconst useStyles = () => {\n const theme = useTheme()\n const atFontScaleBreakpoint = useAtFontScaleBreakpoint()\n\n return StyleSheet.create({\n listHeader: {\n borderBottomWidth: 1,\n borderBottomColor: theme.colors.fillColorNeutral050Base,\n paddingBottom: 16,\n gap: 8,\n },\n headingRow: {\n gap: 12,\n flexDirection: atFontScaleBreakpoint ? 'column' : 'row',\n alignItems: atFontScaleBreakpoint ? 'flex-start' : 'center',\n justifyContent: 'space-between',\n paddingBottom: atFontScaleBreakpoint ? 4 : 0,\n paddingHorizontal: ROW_PADDING_HORIZONTAL,\n },\n titleContainer: {\n flexShrink: 1,\n minWidth: 0,\n },\n actionsContainer: {\n flexDirection: 'row',\n gap: 8,\n alignItems: 'center',\n },\n markAllReadRow: {\n alignItems: 'flex-start',\n paddingHorizontal: ROW_PADDING_HORIZONTAL,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planningcenter/chat-react-native",
|
|
3
|
-
"version": "4.4.1-qa-staging.
|
|
3
|
+
"version": "4.4.1-qa-staging.20",
|
|
4
4
|
"description": "",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@fortawesome/fontawesome-svg-core": "^7.2.0",
|
|
35
35
|
"@fortawesome/react-native-fontawesome": "^0.3.2",
|
|
36
|
-
"@planningcenter/emoji-keyboard": "4.4.1-qa-staging.
|
|
36
|
+
"@planningcenter/emoji-keyboard": "4.4.1-qa-staging.20",
|
|
37
37
|
"lodash-inflection": "^1.5.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"sf-symbols-typescript": "^2.2.0",
|
|
85
85
|
"typescript": "~6.0.3"
|
|
86
86
|
},
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "22a2ebfd71df156a82f46b4b94fc7e8b360d951b"
|
|
88
88
|
}
|
|
@@ -6,6 +6,7 @@ import { Conversations } from '../conversations'
|
|
|
6
6
|
const mockSetParams = jest.fn()
|
|
7
7
|
let mockArgs: ConversationFiltersParams = {}
|
|
8
8
|
let mockFilterDropdownEnabled = false
|
|
9
|
+
let mockHasNextPage = false
|
|
9
10
|
|
|
10
11
|
jest.mock('@react-navigation/native', () => ({
|
|
11
12
|
...jest.requireActual('@react-navigation/native'),
|
|
@@ -19,6 +20,7 @@ jest.mock('../../../contexts/conversations_context', () => ({
|
|
|
19
20
|
isRefetching: false,
|
|
20
21
|
isError: false,
|
|
21
22
|
error: null,
|
|
23
|
+
hasNextPage: mockHasNextPage,
|
|
22
24
|
fetchNextPage: jest.fn(),
|
|
23
25
|
refetch: jest.fn(),
|
|
24
26
|
args: mockArgs,
|
|
@@ -45,6 +47,7 @@ describe('Conversations archived footer', () => {
|
|
|
45
47
|
beforeEach(() => {
|
|
46
48
|
mockSetParams.mockClear()
|
|
47
49
|
mockFilterDropdownEnabled = false
|
|
50
|
+
mockHasNextPage = false
|
|
48
51
|
})
|
|
49
52
|
|
|
50
53
|
it('ends the archived list with a way back to active conversations', () => {
|
|
@@ -73,6 +76,14 @@ describe('Conversations archived footer', () => {
|
|
|
73
76
|
expect(view.queryByText('You’re viewing filtered results')).toBeNull()
|
|
74
77
|
})
|
|
75
78
|
|
|
79
|
+
it('waits for the last page before showing the archived footer', () => {
|
|
80
|
+
mockArgs = { show_archived: true }
|
|
81
|
+
mockHasNextPage = true
|
|
82
|
+
const view = render(<Conversations />)
|
|
83
|
+
|
|
84
|
+
expect(view.queryByLabelText('View active conversations')).toBeNull()
|
|
85
|
+
})
|
|
86
|
+
|
|
76
87
|
it('leaves the active list without the archived footer', () => {
|
|
77
88
|
mockArgs = {}
|
|
78
89
|
const view = render(<Conversations />)
|
|
@@ -78,7 +78,12 @@ export const ConversationPreview = ({
|
|
|
78
78
|
accessibilityLabel={conversationAccessibilityLabel}
|
|
79
79
|
>
|
|
80
80
|
{archived ? (
|
|
81
|
-
<IconTile
|
|
81
|
+
<IconTile
|
|
82
|
+
icon={faBoxArchive}
|
|
83
|
+
shape="circle"
|
|
84
|
+
size="lg"
|
|
85
|
+
testID="conversation-archived-icon"
|
|
86
|
+
/>
|
|
82
87
|
) : (
|
|
83
88
|
<ConversationAvatar
|
|
84
89
|
conversation={conversation}
|
|
@@ -39,7 +39,7 @@ export const Conversations = ({ ListHeaderComponent }: ConversationsProps) => {
|
|
|
39
39
|
const filterDropdownEnabled = useFilterDropdownEnabled()
|
|
40
40
|
const isFilterApplied =
|
|
41
41
|
!!chat_group_graph_id || !!group_source_app_name || !!show_direct_messages || !!show_archived
|
|
42
|
-
const showArchivedResultsFooter = !!show_archived && !isLoading
|
|
42
|
+
const showArchivedResultsFooter = !!show_archived && !isLoading && !hasNextPage
|
|
43
43
|
const showFilteredResultsFooter =
|
|
44
44
|
filterDropdownEnabled &&
|
|
45
45
|
isFilterApplied &&
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { render } from '@testing-library/react-native'
|
|
2
|
+
import React from 'react'
|
|
3
|
+
import { faBoxArchive } from '../../../vendor/font_awesome_pro_solid_icons'
|
|
4
|
+
import { IconTile } from '../icon_tile'
|
|
5
|
+
|
|
6
|
+
describe('IconTile', () => {
|
|
7
|
+
it('rounds the corners of a square tile instead of masking it to a circle', () => {
|
|
8
|
+
const view = render(
|
|
9
|
+
<IconTile icon={faBoxArchive} shape="square" maxFontSizeMultiplier={1} testID="tile" />
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
expect(view.getByTestId('tile', { includeHiddenElements: true })).toHaveStyle({
|
|
13
|
+
borderRadius: 4,
|
|
14
|
+
})
|
|
15
|
+
})
|
|
16
|
+
})
|
|
@@ -7,9 +7,11 @@ import { MAX_FONT_SIZE_MULTIPLIER } from '../../utils'
|
|
|
7
7
|
import AvatarPrimitive, { type AvatarRootProps } from '../primitive/avatar_primitive'
|
|
8
8
|
|
|
9
9
|
const ICON_SIZE_PX = 16
|
|
10
|
+
const SQUARE_BORDER_RADIUS_PX = 4
|
|
10
11
|
|
|
11
12
|
interface IconTileProps {
|
|
12
13
|
icon: IconDefinition
|
|
14
|
+
shape: 'circle' | 'square'
|
|
13
15
|
size?: AvatarRootProps['size']
|
|
14
16
|
maxFontSizeMultiplier?: AvatarRootProps['maxFontSizeMultiplier']
|
|
15
17
|
style?: AvatarRootProps['style']
|
|
@@ -18,26 +20,33 @@ interface IconTileProps {
|
|
|
18
20
|
|
|
19
21
|
export function IconTile({
|
|
20
22
|
icon,
|
|
23
|
+
shape,
|
|
21
24
|
size = 'lg',
|
|
22
25
|
maxFontSizeMultiplier = MAX_FONT_SIZE_MULTIPLIER,
|
|
23
26
|
style,
|
|
24
27
|
testID,
|
|
25
28
|
}: IconTileProps) {
|
|
26
|
-
const styles = useStyles()
|
|
27
29
|
const fontScale = useFontScale({ maxFontSizeMultiplier })
|
|
30
|
+
const styles = useStyles({ fontScale })
|
|
31
|
+
|
|
32
|
+
const tile = (
|
|
33
|
+
<View
|
|
34
|
+
style={[styles.tile, shape === 'square' && styles.square]}
|
|
35
|
+
testID={testID}
|
|
36
|
+
accessibilityElementsHidden
|
|
37
|
+
>
|
|
38
|
+
<FontAwesomeIcon icon={icon} size={ICON_SIZE_PX * fontScale} color={styles.icon.color} />
|
|
39
|
+
</View>
|
|
40
|
+
)
|
|
28
41
|
|
|
29
42
|
return (
|
|
30
43
|
<AvatarPrimitive.Root size={size} maxFontSizeMultiplier={maxFontSizeMultiplier} style={style}>
|
|
31
|
-
<AvatarPrimitive.Mask>
|
|
32
|
-
<View style={styles.tile} testID={testID} accessibilityElementsHidden>
|
|
33
|
-
<FontAwesomeIcon icon={icon} size={ICON_SIZE_PX * fontScale} color={styles.icon.color} />
|
|
34
|
-
</View>
|
|
35
|
-
</AvatarPrimitive.Mask>
|
|
44
|
+
{shape === 'circle' ? <AvatarPrimitive.Mask>{tile}</AvatarPrimitive.Mask> : tile}
|
|
36
45
|
</AvatarPrimitive.Root>
|
|
37
46
|
)
|
|
38
47
|
}
|
|
39
48
|
|
|
40
|
-
const useStyles = () => {
|
|
49
|
+
const useStyles = ({ fontScale }: { fontScale: number }) => {
|
|
41
50
|
const { colors } = useTheme()
|
|
42
51
|
|
|
43
52
|
return StyleSheet.create({
|
|
@@ -47,6 +56,10 @@ const useStyles = () => {
|
|
|
47
56
|
justifyContent: 'center',
|
|
48
57
|
backgroundColor: colors.fillColorNeutral070,
|
|
49
58
|
},
|
|
59
|
+
square: {
|
|
60
|
+
borderRadius: SQUARE_BORDER_RADIUS_PX * fontScale,
|
|
61
|
+
overflow: 'hidden',
|
|
62
|
+
},
|
|
50
63
|
icon: {
|
|
51
64
|
color: colors.iconColorDefaultPrimary,
|
|
52
65
|
},
|
|
@@ -130,7 +130,7 @@ export const OtherRow = ({ show_archived, isActive, filter, description, icon }:
|
|
|
130
130
|
|
|
131
131
|
return (
|
|
132
132
|
<PressableRow onPress={() => setAppFilter({ show_archived })} isActive={isActive}>
|
|
133
|
-
<IconTile icon={icon} size="lg" />
|
|
133
|
+
<IconTile icon={icon} shape="square" size="lg" />
|
|
134
134
|
<View style={styles.rowTextContainer}>
|
|
135
135
|
<Heading variant="h3" style={styles.rowTitle}>
|
|
136
136
|
{filter}
|
|
@@ -203,6 +203,17 @@ describe('FilterDropdownListHeaderComponent', () => {
|
|
|
203
203
|
)
|
|
204
204
|
})
|
|
205
205
|
|
|
206
|
+
it('hides Mark all read on the archived list', () => {
|
|
207
|
+
const view = render(<FilterDropdownListHeaderComponent />)
|
|
208
|
+
|
|
209
|
+
expect(view.getByText('Mark all read')).toBeTruthy()
|
|
210
|
+
|
|
211
|
+
setRouteParams({ show_archived: true })
|
|
212
|
+
view.rerender(<FilterDropdownListHeaderComponent />)
|
|
213
|
+
|
|
214
|
+
expect(view.queryByText('Mark all read')).toBeNull()
|
|
215
|
+
})
|
|
216
|
+
|
|
206
217
|
it('leaves the archived list when another filter is picked', () => {
|
|
207
218
|
setRouteParams({ show_archived: true })
|
|
208
219
|
|
|
@@ -233,17 +233,19 @@ export const FilterDropdownListHeaderComponent = () => {
|
|
|
233
233
|
)}
|
|
234
234
|
</View>
|
|
235
235
|
</View>
|
|
236
|
-
|
|
237
|
-
<
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
236
|
+
{!show_archived && (
|
|
237
|
+
<View style={styles.markAllReadRow}>
|
|
238
|
+
<TextButton
|
|
239
|
+
onPress={alertMarkAllRead}
|
|
240
|
+
disabled={isPending}
|
|
241
|
+
maxFontSizeMultiplier={MAX_FONT_SIZE_MULTIPLIER_LANDMARK}
|
|
242
|
+
accessibilityShowsLargeContentViewer
|
|
243
|
+
accessibilityLargeContentTitle="Mark all read"
|
|
244
|
+
>
|
|
245
|
+
Mark all read
|
|
246
|
+
</TextButton>
|
|
247
|
+
</View>
|
|
248
|
+
)}
|
|
247
249
|
</View>
|
|
248
250
|
)
|
|
249
251
|
}
|