fc45a779aa
Re-enable 17 ESLint rules that were disabled during the ESLint v9 migration, and fix all violations across the codebase. ## Rules re-enabled: - prefer-const (91 auto-fixed) - no-var (4 auto-fixed) - no-empty (13 fixed) - no-irregular-whitespace (7 fixed) - no-unsafe-optional-chaining (25 fixed) - no-prototype-builtins (5 fixed) - @typescript-eslint/no-unused-expressions (6 fixed) - @typescript-eslint/no-non-null-asserted-optional-chain (3 fixed) - @typescript-eslint/no-wrapper-object-types (1 fixed) - @typescript-eslint/no-unsafe-function-type (1 fixed) - no-async-promise-executor (3 fixed) - prefer-rest-params (3 fixed) - no-case-declarations (3 fixed) - no-useless-escape (2 fixed) - no-sparse-arrays (1 fixed) - no-fallthrough (1 fixed) - no-control-regex (1 disabled - intentional) ## Rules kept disabled (too many violations): - @typescript-eslint/no-explicit-any (276) - @typescript-eslint/ban-ts-comment (126) - @typescript-eslint/no-empty-object-type (150) - no-empty-pattern (56 - many intentional)
17 lines
537 B
TypeScript
17 lines
537 B
TypeScript
import {useNavigationState} from '@react-navigation/native'
|
|
|
|
import {getCurrentRoute} from '#/lib/routes/helpers'
|
|
|
|
export function useNavigationTabState() {
|
|
return useNavigationState(state => {
|
|
const currentRoute = state ? getCurrentRoute(state).name : 'Home'
|
|
return {
|
|
isAtHome: currentRoute === 'Home',
|
|
isAtSearch: currentRoute === 'Search',
|
|
isAtNotifications: currentRoute === 'Notifications',
|
|
isAtMyProfile: currentRoute === 'MyProfile',
|
|
isAtMessages: currentRoute === 'Messages',
|
|
}
|
|
})
|
|
}
|