Create codemod for addressing ESLint warnings (#10032)

This commit is contained in:
DS Boyce
2026-03-11 15:51:31 -07:00
committed by GitHub
parent 80429ec902
commit 1db01a09a8
240 changed files with 1560 additions and 1347 deletions
-1
View File
@@ -5,7 +5,6 @@ import {msg} from '@lingui/core/macro'
import {useLingui} from '@lingui/react'
import {Trans} from '@lingui/react/macro'
import {StackActions, useNavigation} from '@react-navigation/native'
import type React from 'react'
import {type NavigationProp} from '#/lib/routes/types'
import {useProfileShadow} from '#/state/cache/profile-shadow'
+3 -6
View File
@@ -1,4 +1,4 @@
import React from 'react'
import {Fragment} from 'react'
import {View} from 'react-native'
import {type ModerationCause} from '@atproto/api'
import {msg} from '@lingui/core/macro'
@@ -25,7 +25,6 @@ export function BlockedByListDialog({
return (
<Prompt.Outer control={control} testID="blockedByListDialog">
<Prompt.TitleText>{_(msg`User blocked by list`)}</Prompt.TitleText>
<View style={[a.gap_sm, a.pb_lg]}>
<Text
selectable
@@ -39,7 +38,7 @@ export function BlockedByListDialog({
{_(msg`Lists blocking this user:`)}{' '}
{listBlocks.map((block, i) =>
block.source.type === 'list' ? (
<React.Fragment key={block.source.list.uri}>
<Fragment key={block.source.list.uri}>
{i === 0 ? null : ', '}
<InlineLinkText
label={block.source.list.name}
@@ -47,16 +46,14 @@ export function BlockedByListDialog({
style={[a.text_md, a.leading_snug]}>
{block.source.list.name}
</InlineLinkText>
</React.Fragment>
</Fragment>
) : null,
)}
</Text>
</View>
<Prompt.Actions>
<Prompt.Action cta={_(msg`I understand`)} onPress={() => {}} />
</Prompt.Actions>
<Dialog.Close />
</Prompt.Outer>
)
+6 -6
View File
@@ -1,4 +1,4 @@
import React from 'react'
import {useCallback, useMemo, useState} from 'react'
import {Pressable, View} from 'react-native'
import Animated, {
runOnJS,
@@ -24,11 +24,11 @@ export function ChatEmptyPill() {
const t = useTheme()
const {_} = useLingui()
const playHaptic = useHaptics()
const [promptIndex, setPromptIndex] = React.useState(lastIndex)
const [promptIndex, setPromptIndex] = useState(lastIndex)
const scale = useSharedValue(1)
const prompts = React.useMemo(() => {
const prompts = useMemo(() => {
return [
_(msg`Say hello!`),
_(msg`Share your favorite feed!`),
@@ -40,17 +40,17 @@ export function ChatEmptyPill() {
]
}, [_])
const onPressIn = React.useCallback(() => {
const onPressIn = useCallback(() => {
if (IS_WEB) return
scale.set(() => withTiming(1.075, {duration: 100}))
}, [scale])
const onPressOut = React.useCallback(() => {
const onPressOut = useCallback(() => {
if (IS_WEB) return
scale.set(() => withTiming(1, {duration: 100}))
}, [scale])
const onPress = React.useCallback(() => {
const onPress = useCallback(() => {
runOnJS(playHaptic)()
let randomPromptIndex = Math.floor(Math.random() * prompts.length)
while (randomPromptIndex === lastIndex) {
+3 -3
View File
@@ -1,4 +1,4 @@
import React, {useCallback} from 'react'
import {memo, useCallback} from 'react'
import {Keyboard, View} from 'react-native'
import {type ChatBskyConvoDefs, type ModerationCause} from '@atproto/api'
import {msg} from '@lingui/core/macro'
@@ -159,7 +159,7 @@ let ConvoMenu = ({
</>
)
}
ConvoMenu = React.memo(ConvoMenu)
ConvoMenu = memo(ConvoMenu)
function MenuContent({
convo: initialConvo,
@@ -211,7 +211,7 @@ function MenuContent({
const [queueBlock, queueUnblock] = useProfileBlockMutationQueue(profile)
const toggleBlock = React.useCallback(() => {
const toggleBlock = useCallback(() => {
if (listBlocks.length) {
blockedByListControl.open()
return
+2 -2
View File
@@ -1,4 +1,4 @@
import React from 'react'
import {memo} from 'react'
import {View} from 'react-native'
import {msg} from '@lingui/core/macro'
import {useLingui} from '@lingui/react'
@@ -78,5 +78,5 @@ let DateDivider = ({date: dateStr}: {date: string}): React.ReactNode => {
</View>
)
}
DateDivider = React.memo(DateDivider)
DateDivider = memo(DateDivider)
export {DateDivider}
+3 -3
View File
@@ -1,6 +1,6 @@
import React from 'react'
import {createContext, useContext} from 'react'
const MessageContext = React.createContext(false)
const MessageContext = createContext(false)
MessageContext.displayName = 'MessageContext'
export function MessageContextProvider({
@@ -14,5 +14,5 @@ export function MessageContextProvider({
}
export function useIsWithinMessage() {
return React.useContext(MessageContext)
return useContext(MessageContext)
}
+3 -3
View File
@@ -1,4 +1,4 @@
import React, {useCallback, useMemo} from 'react'
import {memo, useCallback, useMemo} from 'react'
import {
type GestureResponderEvent,
type StyleProp,
@@ -233,7 +233,7 @@ let MessageItem = ({
</>
)
}
MessageItem = React.memo(MessageItem)
MessageItem = memo(MessageItem)
export {MessageItem}
let MessageItemMetadata = ({
@@ -328,5 +328,5 @@ let MessageItemMetadata = ({
</Text>
)
}
MessageItemMetadata = React.memo(MessageItemMetadata)
MessageItemMetadata = memo(MessageItemMetadata)
export {MessageItemMetadata}
+3 -4
View File
@@ -1,10 +1,9 @@
import React from 'react'
import {memo} from 'react'
import {useWindowDimensions, View} from 'react-native'
import {type $Typed, type AppBskyEmbedRecord} from '@atproto/api'
import {atoms as a, native, tokens, useTheme, web} from '#/alf'
import {PostEmbedViewContext} from '#/components/Post/Embed'
import {Embed} from '#/components/Post/Embed'
import {Embed, PostEmbedViewContext} from '#/components/Post/Embed'
import {MessageContextProvider} from './MessageContext'
let MessageItemEmbed = ({
@@ -43,5 +42,5 @@ let MessageItemEmbed = ({
</MessageContextProvider>
)
}
MessageItemEmbed = React.memo(MessageItemEmbed)
MessageItemEmbed = memo(MessageItemEmbed)
export {MessageItemEmbed}
+2 -2
View File
@@ -1,4 +1,4 @@
import React from 'react'
import {useCallback} from 'react'
import {View} from 'react-native'
import {type AppBskyActorDefs} from '@atproto/api'
import {msg} from '@lingui/core/macro'
@@ -39,7 +39,7 @@ export function MessageProfileButton({
},
})
const onPress = React.useCallback(() => {
const onPress = useCallback(() => {
if (!convoAvailability?.canChat) {
return
}
@@ -1,4 +1,4 @@
import React from 'react'
import {useCallback, useMemo} from 'react'
import {View} from 'react-native'
import {type ModerationDecision} from '@atproto/api'
import {msg} from '@lingui/core/macro'
@@ -38,7 +38,7 @@ export function MessagesListBlockedFooter({
const reportControl = useDialogControl()
const blockedByListControl = useDialogControl()
const {listBlocks, userBlock} = React.useMemo(() => {
const {listBlocks, userBlock} = useMemo(() => {
const modui = moderation.ui('profileView')
const blocks = modui.alerts.filter(alert => alert.type === 'blocking')
const listBlocks = blocks.filter(alert => alert.source.type === 'list')
@@ -51,7 +51,7 @@ export function MessagesListBlockedFooter({
const isBlocking = !!userBlock || !!listBlocks.length
const onUnblockPress = React.useCallback(() => {
const onUnblockPress = useCallback(() => {
if (listBlocks.length) {
blockedByListControl.open()
} else {
+4 -4
View File
@@ -1,4 +1,4 @@
import React from 'react'
import {useCallback} from 'react'
import {Pressable, View} from 'react-native'
import Animated, {
runOnJS,
@@ -33,17 +33,17 @@ export function NewMessagesPill({
const scale = useSharedValue(1)
const onPressIn = React.useCallback(() => {
const onPressIn = useCallback(() => {
if (IS_WEB) return
scale.set(() => withTiming(1.075, {duration: 100}))
}, [scale])
const onPressOut = React.useCallback(() => {
const onPressOut = useCallback(() => {
if (IS_WEB) return
scale.set(() => withTiming(1, {duration: 100}))
}, [scale])
const onPress = React.useCallback(() => {
const onPress = useCallback(() => {
runOnJS(playHaptic)()
onPressInner?.()
}, [onPressInner, playHaptic])