diff --git a/src/components/contacts/FindContactsBannerNUX.tsx b/src/components/contacts/FindContactsBannerNUX.tsx index d2b2d1d3dd..e08cf2edd1 100644 --- a/src/components/contacts/FindContactsBannerNUX.tsx +++ b/src/components/contacts/FindContactsBannerNUX.tsx @@ -6,6 +6,7 @@ import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {HITSLOP_10} from '#/lib/constants' +import {useGate} from '#/lib/statsig/statsig' import {logger} from '#/logger' import {isWeb} from '#/platform/detection' import {Nux, useNux, useSaveNux} from '#/state/queries/nuxs' @@ -20,9 +21,8 @@ export function FindContactsBannerNUX() { const t = useTheme() const {_} = useLingui() const {visible, close} = useInternalState() - const isFeatureEnabled = useIsFindContactsFeatureEnabledBasedOnGeolocation() - if (!visible || !isFeatureEnabled) return null + if (!visible) return null return ( @@ -88,13 +88,17 @@ function useInternalState() { const {nux} = useNux(Nux.FindContactsDismissibleBanner) const {mutate: save, variables} = useSaveNux() const hidden = !!variables + const isFeatureEnabled = useIsFindContactsFeatureEnabledBasedOnGeolocation() + const gate = useGate() const visible = useMemo(() => { if (isWeb) return false if (hidden) return false if (nux && nux.completed) return false + if (!isFeatureEnabled) return false + if (gate('disable_settings_find_contacts')) return false return true - }, [hidden, nux]) + }, [hidden, nux, isFeatureEnabled, gate]) const close = () => { save({ diff --git a/src/lib/statsig/gates.ts b/src/lib/statsig/gates.ts index 8c757a0160..ea67ac01bb 100644 --- a/src/lib/statsig/gates.ts +++ b/src/lib/statsig/gates.ts @@ -4,6 +4,7 @@ export type Gate = | 'debug_show_feedcontext' | 'debug_subscriptions' | 'disable_onboarding_find_contacts' + | 'disable_settings_find_contacts' | 'explore_show_suggested_feeds' | 'feed_reply_button_open_thread' | 'old_postonboarding'