Skip to content

Commit

Permalink
Rename ForceUpdateBanner to RemoteBanner
Browse files Browse the repository at this point in the history
  • Loading branch information
cgerrard-pass committed Jan 30, 2025
1 parent 9769451 commit cb8bd40
Show file tree
Hide file tree
Showing 38 changed files with 879 additions and 49 deletions.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { CheatcodesSubscreensButtonList } from 'cheatcodes/components/Cheatcodes
import { CheatcodesTemplateScreen } from 'cheatcodes/components/CheatcodesTemplateScreen'
import { LinkToScreen } from 'cheatcodes/components/LinkToScreen'
import { CheatcodesButtonsWithSubscreensProps } from 'cheatcodes/types'
import { ForceUpdateWithResetErrorBoundary } from 'features/forceUpdate/pages/ForceUpdateWithResetErrorBoundary'
import { ForceUpdateWithResetErrorBoundary } from 'features/remoteBanner/pages/ForceUpdateWithResetErrorBoundary'
import { useLogTypeFromRemoteConfig } from 'libs/hooks/useLogTypeFromRemoteConfig'
import { ScreenError } from 'libs/monitoring'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ import React, { FunctionComponent } from 'react'
import { View } from 'react-native'
import styled from 'styled-components/native'

import { useShowForceUpdateWhenDisableActivation } from 'features/forceUpdate/helpers/useShowForceUpdateWhenDisableActivation'
import { navigateToHomeConfig } from 'features/navigation/helpers/navigateToHome'
import { StepperOrigin } from 'features/navigation/RootNavigator/types'
import { useShowForceUpdateWhenDisableActivation } from 'features/remoteBanner/helpers/useShowForceUpdateWhenDisableActivation'
import { ButtonPrimary } from 'ui/components/buttons/ButtonPrimary'
import { ButtonTertiaryBlack } from 'ui/components/buttons/ButtonTertiaryBlack'
import { InternalTouchableLink } from 'ui/components/touchableLink/InternalTouchableLink'
Expand Down
4 changes: 2 additions & 2 deletions src/features/errors/pages/ScreenErrorProvider.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import React from 'react'

import { useMustUpdateApp } from 'features/forceUpdate/helpers/useMustUpdateApp'
import { ForceUpdateWithResetErrorBoundary } from 'features/forceUpdate/pages/ForceUpdateWithResetErrorBoundary'
import { useMaintenance } from 'features/maintenance/helpers/useMaintenance/useMaintenance'
import { MaintenanceErrorPage } from 'features/maintenance/pages/MaintenanceErrorPage'
import { useMustUpdateApp } from 'features/remoteBanner/helpers/useMustUpdateApp'
import { ForceUpdateWithResetErrorBoundary } from 'features/remoteBanner/pages/ForceUpdateWithResetErrorBoundary'
import { MAINTENANCE } from 'libs/firebase/firestore/types'
import { useLogTypeFromRemoteConfig } from 'libs/hooks/useLogTypeFromRemoteConfig'
import { ScreenError } from 'libs/monitoring/errors'
Expand Down
5 changes: 0 additions & 5 deletions src/features/forceUpdate/pages/ForceUpdate.tsx

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import React from 'react'

import { BannerName, BannerResponse, SubscriptionStepperResponseV2 } from 'api/gen'
import { useRemoteBanner } from 'features/forceUpdate/helpers/useRemoteBanner'
import { HomeBanner } from 'features/home/components/modules/banners/HomeBanner'
import { subscriptionStepperFixture } from 'features/identityCheck/fixtures/subscriptionStepperFixture'
import * as NavigationHelpers from 'features/navigation/helpers/openUrl'
import { useRemoteBanner } from 'features/remoteBanner/helpers/useRemoteBanner'
import { setFeatureFlags } from 'libs/firebase/firestore/featureFlags/__tests__/setFeatureFlags'
import { RemoteStoreFeatureFlags } from 'libs/firebase/firestore/types'
import { ILocationContext, useLocation } from 'libs/location'
Expand All @@ -31,7 +31,7 @@ const mockDepositAmounts = jest.mocked(useGetDepositAmountsByAge)
jest.mock('@react-native-firebase/firestore')
const openUrl = jest.spyOn(NavigationHelpers, 'openUrl')

jest.mock('features/forceUpdate/helpers/useRemoteBanner')
jest.mock('features/remoteBanner/helpers/useRemoteBanner')
const mockUseRemoteBanner = useRemoteBanner as jest.Mock
const bannerData = {
title: 'title 1',
Expand Down
4 changes: 2 additions & 2 deletions src/features/home/components/modules/banners/HomeBanner.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ import React, { ComponentType, FunctionComponent, useCallback, useMemo } from 'r
import styled from 'styled-components/native'

import { BannerName } from 'api/gen'
import { ForceUpdateBanner } from 'features/forceUpdate/components/ForceUpdateBanner'
import { useActivationBanner } from 'features/home/api/useActivationBanner'
import { ActivationBanner } from 'features/home/components/banners/ActivationBanner'
import { SignupBanner } from 'features/home/components/banners/SignupBanner'
import { StepperOrigin, UseNavigationType } from 'features/navigation/RootNavigator/types'
import { RemoteBanner } from 'features/remoteBanner/components/RemoteBanner'
import { useFeatureFlag } from 'libs/firebase/firestore/featureFlags/useFeatureFlag'
import { RemoteStoreFeatureFlags } from 'libs/firebase/firestore/types'
import { SystemBanner as GenericSystemBanner } from 'ui/components/ModuleBanner/SystemBanner'
Expand Down Expand Up @@ -141,7 +141,7 @@ export const HomeBanner = ({ isLoggedIn }: HomeBannerProps) => {
if (showForceUpdateBanner) {
return (
<BannerContainer>
<ForceUpdateBanner />
<RemoteBanner />
</BannerContainer>
)
}
Expand Down
2 changes: 1 addition & 1 deletion src/features/identityCheck/pages/Stepper.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ import styled, { useTheme } from 'styled-components/native'
import { extractApiErrorMessage } from 'api/apiHelpers'
import { MaintenancePageType, SubscriptionStep } from 'api/gen'
import { useAuthContext } from 'features/auth/context/AuthContext'
import { useShowForceUpdateWhenDisableActivation } from 'features/forceUpdate/helpers/useShowForceUpdateWhenDisableActivation'
import { QuitIdentityCheckModal } from 'features/identityCheck/components/modals/QuitIdentityCheckModal'
import { useRehydrateProfile } from 'features/identityCheck/pages/helpers/useRehydrateProfile'
import { useSetSubscriptionStepAndMethod } from 'features/identityCheck/pages/helpers/useSetCurrentSubscriptionStep'
import { useStepperInfo } from 'features/identityCheck/pages/helpers/useStepperInfo'
import { UseNavigationType, UseRouteType } from 'features/navigation/RootNavigator/types'
import { useShowForceUpdateWhenDisableActivation } from 'features/remoteBanner/helpers/useShowForceUpdateWhenDisableActivation'
import { analytics } from 'libs/analytics'
import { hasOngoingCredit } from 'shared/user/useAvailableCredit'
import { ErrorBanner } from 'ui/components/banners/ErrorBanner'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { NavigationContainer } from '@react-navigation/native'
import React from 'react'

import { useMustUpdateApp } from 'features/forceUpdate/helpers/useMustUpdateApp'
import { useMustUpdateApp } from 'features/remoteBanner/helpers/useMustUpdateApp'
import { setFeatureFlags } from 'libs/firebase/firestore/featureFlags/__tests__/setFeatureFlags'
import { useSplashScreenContext } from 'libs/splashscreen'
import { storage } from 'libs/storage'
Expand All @@ -14,7 +14,7 @@ const mockUseSplashScreenContext = jest.mocked(useSplashScreenContext)
const mockedUseMustUpdateApp = jest.mocked(useMustUpdateApp)

jest.mock('features/navigation/navigationRef')
jest.mock('features/forceUpdate/helpers/useMustUpdateApp')
jest.mock('features/remoteBanner/helpers/useMustUpdateApp')
jest.unmock('@react-navigation/native')

const mockUseAuthContext = jest.fn().mockReturnValue({ isLoggedIn: true })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ const mockUseCurrentRoute = jest.mocked(useCurrentRoute)
jest
.spyOn(CookiesUpToDate, 'useIsCookiesListUpToDate')
.mockReturnValue({ isCookiesListUpToDate: true, cookiesLastUpdate: undefined, isLoading: false })
jest.mock('features/forceUpdate/helpers/useMustUpdateApp')
jest.mock('features/remoteBanner/helpers/useMustUpdateApp')
jest.unmock('@react-navigation/native')
jest.mock('features/auth/context/AuthContext')
jest.mock('react-error-boundary', () => ({
Expand Down
2 changes: 1 addition & 1 deletion src/features/navigation/RootNavigator/routes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ import { Chronicles } from 'features/chronicle/pages/Chronicles/Chronicles'
import { withAsyncErrorBoundary } from 'features/errors/hocs/withAsyncErrorBoundary'
import { BannedCountryError } from 'features/errors/pages/BannedCountryError'
import { FavoritesSorts } from 'features/favorites/pages/FavoritesSorts'
import { ForceUpdate } from 'features/forceUpdate/pages/ForceUpdate'
import { ThematicHome } from 'features/home/pages/ThematicHome'
import { DeeplinksGenerator } from 'features/internal/pages/DeeplinksGenerator'
import { UTMParameters } from 'features/internal/pages/UTMParameters'
Expand Down Expand Up @@ -66,6 +65,7 @@ import { PersonalData } from 'features/profile/pages/PersonalData/PersonalData'
import { SuspendAccountConfirmation } from 'features/profile/pages/SuspendAccountConfirmation/SuspendAccountConfirmation'
import { TrackEmailChange } from 'features/profile/pages/TrackEmailChange/TrackEmailChange'
import { ValidateEmailChange } from 'features/profile/pages/ValidateEmailChange/ValidateEmailChange'
import { ForceUpdate } from 'features/remoteBanner/pages/ForceUpdate'
import { SearchFilter } from 'features/search/pages/SearchFilter/SearchFilter'
import { OnboardingSubscription } from 'features/subscription/page/OnboardingSubscription'
import { ProfileTutorialAgeInformation } from 'features/tutorial/pages/profileTutorial/ProfileTutorialAgeInformation'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ import { openInbox } from 'react-native-email-link'

import { SubscriptionMessage } from 'api/gen'
import { useIsMailAppAvailable } from 'features/auth/helpers/useIsMailAppAvailable'
import { ForceUpdateBanner } from 'features/forceUpdate/components/ForceUpdateBanner'
import { Subtitle } from 'features/profile/components/Subtitle/Subtitle'
import { formatDateToLastUpdatedAtMessage } from 'features/profile/helpers/formatDateToLastUpdatedAtMessage'
import { matchSubscriptionMessageIconToSvg } from 'features/profile/helpers/matchSubscriptionMessageIconToSvg'
import { shouldOpenInbox as checkShouldOpenInbox } from 'features/profile/helpers/shouldOpenInbox'
import { RemoteBanner } from 'features/remoteBanner/components/RemoteBanner'
import { InfoBanner } from 'ui/components/banners/InfoBanner'
import { BaseButtonProps } from 'ui/components/buttons/AppButton/types'
import { ButtonQuaternarySecondary } from 'ui/components/buttons/ButtonQuaternarySecondary'
Expand Down Expand Up @@ -88,7 +88,7 @@ export const SubscriptionMessageBadge = ({
<Spacer.Column numberOfSpaces={2} />
{disableActivation ? (
<React.Fragment>
<ForceUpdateBanner />
<RemoteBanner />
<Spacer.Column numberOfSpaces={6} />
</React.Fragment>
) : null}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import React, { FunctionComponent, ReactNode } from 'react'
import styled from 'styled-components/native'

import { ForceUpdateBanner } from 'features/forceUpdate/components/ForceUpdateBanner'
import { RemoteBanner } from 'features/remoteBanner/components/RemoteBanner'
import { InfoBanner } from 'ui/components/banners/InfoBanner'
import { PageHeader } from 'ui/components/headers/PageHeader'
import { Info } from 'ui/svg/icons/Info'
Expand Down Expand Up @@ -37,7 +37,7 @@ export const HeaderWithGreyContainer: FunctionComponent<PropsWithChildren> = ({
)}
{showForceUpdateBanner ? (
<BannerContainer>
<ForceUpdateBanner />
<RemoteBanner />
<Spacer.Column numberOfSpaces={6} />
</BannerContainer>
) : null}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import React, { FunctionComponent, memo, PropsWithChildren } from 'react'
import styled from 'styled-components/native'

import { Banner, BannerName } from 'api/gen'
import { ForceUpdateBanner } from 'features/forceUpdate/components/ForceUpdateBanner'
import { useActivationBanner } from 'features/home/api/useActivationBanner'
import { ActivationBanner } from 'features/home/components/banners/ActivationBanner'
import { useGetStepperInfo } from 'features/identityCheck/api/useGetStepperInfo'
Expand All @@ -12,6 +11,7 @@ import { IdentityCheckPendingBadge } from 'features/profile/components/Badges/Id
import { SubscriptionMessageBadge } from 'features/profile/components/Badges/SubscriptionMessageBadge'
import { YoungerBadge } from 'features/profile/components/Badges/YoungerBadge'
import { EligibilityMessage } from 'features/profile/components/Header/NonBeneficiaryHeader/EligibilityMessage'
import { RemoteBanner } from 'features/remoteBanner/components/RemoteBanner'
import { formatToSlashedFrenchDate } from 'libs/dates'
import { PageHeader } from 'ui/components/headers/PageHeader'
import { SystemBanner as GenericSystemBanner } from 'ui/components/ModuleBanner/SystemBanner'
Expand Down Expand Up @@ -163,7 +163,7 @@ function NonBeneficiaryBanner({
return (
<BannerContainer>
<Spacer.Column numberOfSpaces={2} />
<ForceUpdateBanner />
<RemoteBanner />
</BannerContainer>
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ const build = 10010005
jest.spyOn(PackageJson, 'getAppBuildVersion').mockReturnValue(build)

jest.mock('libs/firebase/analytics/analytics')
jest.mock('features/forceUpdate/helpers/useMinimalBuildNumber')
jest.mock('features/remoteBanner/helpers/useMinimalBuildNumber')
jest.mock('react-native/Libraries/Animated/createAnimatedComponent', () => {
return function createAnimatedComponent(Component: unknown) {
return Component
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import { Helmet } from 'react-helmet'
import { Platform } from 'react-native'
import styled from 'styled-components/native'

import { BUTTON_TEXT_SCREEN, DESCRIPTION, TITLE } from 'features/forceUpdate/constants'
import { onPressStoreLink } from 'features/forceUpdate/helpers/onPressStoreLink'
import { BUTTON_TEXT_SCREEN, DESCRIPTION, TITLE } from 'features/remoteBanner/constants'
import { onPressStoreLink } from 'features/remoteBanner/helpers/onPressStoreLink'
import { WEBAPP_V2_URL } from 'libs/environment'
import { ButtonPrimaryWhite } from 'ui/components/buttons/ButtonPrimaryWhite'
import { ButtonTertiaryWhite } from 'ui/components/buttons/ButtonTertiaryWhite'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { ForceUpdateInfos } from './ForceUpdateInfos'

jest.mock('libs/firebase/analytics/analytics')
jest.mock('libs/firebase/remoteConfig/remoteConfig.services')
jest.mock('features/forceUpdate/helpers/useMinimalBuildNumber')
jest.mock('features/remoteBanner/helpers/useMinimalBuildNumber')

describe('<ForceUpdateInfos/>', () => {
it('should not display the web app button', () => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
import React from 'react'
import styled from 'styled-components/native'

import { TITLE, BUTTON_TEXT_BANNER } from 'features/forceUpdate/constants'
import { onPressStoreLink } from 'features/forceUpdate/helpers/onPressStoreLink'
import { useRemoteBanner } from 'features/forceUpdate/helpers/useRemoteBanner'
import { openUrl } from 'features/navigation/helpers/openUrl'
import { TITLE, BUTTON_TEXT_BANNER } from 'features/remoteBanner/constants'
import { onPressStoreLink } from 'features/remoteBanner/helpers/onPressStoreLink'
import { useRemoteBanner } from 'features/remoteBanner/helpers/useRemoteBanner'
import { accessibilityAndTestId } from 'libs/accessibilityAndTestId'
import { RemoteStoreBannerRedirectionType } from 'libs/firebase/firestore/types'
import { BannerWithBackground } from 'ui/components/ModuleBanner/BannerWithBackground'
import { ArrowAgain } from 'ui/svg/icons/ArrowAgain'
import { TypoDS } from 'ui/theme'

export const ForceUpdateBanner = () => {
export const RemoteBanner = () => {
const { title, subtitle, redirectionUrl, redirectionType } = useRemoteBanner()
const accessibilityLabel =
redirectionUrl && redirectionType === RemoteStoreBannerRedirectionType.EXTERNAL
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { STORE_LINK } from 'features/forceUpdate/constants'
import { openUrl } from 'features/navigation/helpers/openUrl'
import { STORE_LINK } from 'features/remoteBanner/constants'
import { analytics } from 'libs/analytics'
import * as PackageJson from 'libs/packageJson'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Platform } from 'react-native'

import { STORE_LINK } from 'features/forceUpdate/constants'
import { openUrl } from 'features/navigation/helpers/openUrl'
import { STORE_LINK } from 'features/remoteBanner/constants'
import { analytics } from 'libs/analytics'
import { getAppBuildVersion } from 'libs/packageJson'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { onlineManager } from 'react-query'

import { useMinimalBuildNumber } from 'features/forceUpdate/helpers/useMinimalBuildNumber'
import { useMinimalBuildNumber } from 'features/remoteBanner/helpers/useMinimalBuildNumber'
import { getMinimalBuildNumber } from 'libs/firebase/firestore/getMinimalBuildNumber/getMinimalBuildNumber'
import { reactQueryProviderHOC } from 'tests/reactQueryProviderHOC'
import { renderHook, waitFor } from 'tests/utils'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useEffect, useRef } from 'react'

import { useMinimalBuildNumber } from 'features/forceUpdate/helpers/useMinimalBuildNumber'
import { useMinimalBuildNumber } from 'features/remoteBanner/helpers/useMinimalBuildNumber'
import { eventMonitoring } from 'libs/monitoring'
import { getAppBuildVersion } from 'libs/packageJson'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
import { useRemoteBanner } from 'features/forceUpdate/helpers/useRemoteBanner'
import { useRemoteBanner } from 'features/remoteBanner/helpers/useRemoteBanner'
import { getRemoteBanner } from 'libs/firebase/firestore/getRemoteBanner/getRemoteBanner'
import { reactQueryProviderHOC } from 'tests/reactQueryProviderHOC'
import { renderHook, waitFor } from 'tests/utils'

jest.mock('@react-native-firebase/firestore')
jest.mock('libs/firebase/firestore/getRemoteBanner/getBanner')
const mockGetBanner = getRemoteBanner as jest.Mock
jest.mock('libs/firebase/firestore/getRemoteBanner/getRemoteBanner')
const mockGetRemoteBanner = getRemoteBanner as jest.Mock

describe('useRemoteBanner', () => {
it('should return banner data', async () => {
mockGetBanner.mockReturnValueOnce({
mockGetRemoteBanner.mockReturnValueOnce({
title: 'title 1',
subtitle: 'subtitle 1',
redirectionUrl: 'www.test.fr',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import * as useMinimalBuildNumberModule from 'features/forceUpdate/helpers/useMinimalBuildNumber'
import * as useMinimalBuildNumberModule from 'features/remoteBanner/helpers/useMinimalBuildNumber'
import * as packageJson from 'libs/packageJson'
import { reactQueryProviderHOC } from 'tests/reactQueryProviderHOC'
import { renderHook } from 'tests/utils'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useEffect } from 'react'

import { useMinimalBuildNumber } from 'features/forceUpdate/helpers/useMinimalBuildNumber'
import { useMinimalBuildNumber } from 'features/remoteBanner/helpers/useMinimalBuildNumber'
import { getAppBuildVersion } from 'libs/packageJson'

export function useResetOnMinimalBuild(resetErrorBoundary: () => void) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useShowForceUpdateWhenDisableActivation } from 'features/forceUpdate/helpers/useShowForceUpdateWhenDisableActivation'
import { useShowForceUpdateWhenDisableActivation } from 'features/remoteBanner/helpers/useShowForceUpdateWhenDisableActivation'
import { setFeatureFlags } from 'libs/firebase/firestore/featureFlags/__tests__/setFeatureFlags'
import { RemoteStoreFeatureFlags } from 'libs/firebase/firestore/types'
import { renderHook } from 'tests/utils'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ForceUpdateWithResetErrorBoundary } from 'features/forceUpdate/pages/ForceUpdateWithResetErrorBoundary'
import { ForceUpdateWithResetErrorBoundary } from 'features/remoteBanner/pages/ForceUpdateWithResetErrorBoundary'
import { useFeatureFlag } from 'libs/firebase/firestore/featureFlags/useFeatureFlag'
import { RemoteStoreFeatureFlags } from 'libs/firebase/firestore/types'
import { ScreenError } from 'libs/monitoring'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { render, screen } from 'tests/utils'
import { ForceUpdate } from './ForceUpdate'

jest.mock('libs/firebase/analytics/analytics')
jest.mock('features/forceUpdate/helpers/useMinimalBuildNumber')
jest.mock('features/remoteBanner/helpers/useMinimalBuildNumber')
jest.mock('react-native/Libraries/Animated/createAnimatedComponent', () => {
return function createAnimatedComponent(Component: unknown) {
return Component
Expand Down
5 changes: 5 additions & 0 deletions src/features/remoteBanner/pages/ForceUpdate.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import React from 'react'

import { ForceUpdateInfos } from 'features/remoteBanner/components/ForceUpdateInfos'

export const ForceUpdate = () => <ForceUpdateInfos />
Loading

0 comments on commit cb8bd40

Please sign in to comment.