From 89a4d8e9bd8f5da1d775be04c06c64d7172cad26 Mon Sep 17 00:00:00 2001 From: KJ21-ENG Date: Thu, 13 Aug 2026 12:12:54 +0530 Subject: [PATCH 1/3] Add August product marketing window --- assets/images/august2026-promo-admins.png | Bin 0 -> 50146 bytes assets/images/august2026-promo-employees.png | Bin 0 -> 59701 bytes assets/images/july26-promo.png | Bin 49697 -> 0 bytes .../ProductMarketingWindow.tsx | 6 +- .../ProductMarketingWindowManager.tsx | 24 +++- src/languages/de.ts | 9 +- src/languages/el.ts | 9 +- src/languages/en.ts | 9 +- src/languages/es.ts | 9 +- src/languages/fr.ts | 9 +- src/languages/it.ts | 9 +- src/languages/ja.ts | 9 +- src/languages/nl.ts | 9 +- src/languages/pl.ts | 11 +- src/languages/pt-BR.ts | 9 +- src/languages/zh-hans.ts | 11 +- src/libs/ProductMarketingWindowUtils.ts | 39 +++++- tests/unit/ProductMarketingWindowTest.tsx | 121 ++++++++++++++++-- tests/unit/ProductMarketingWindowUtilsTest.ts | 4 +- 19 files changed, 252 insertions(+), 45 deletions(-) create mode 100644 assets/images/august2026-promo-admins.png create mode 100644 assets/images/august2026-promo-employees.png delete mode 100644 assets/images/july26-promo.png diff --git a/assets/images/august2026-promo-admins.png b/assets/images/august2026-promo-admins.png new file mode 100644 index 0000000000000000000000000000000000000000..eaf6fe7f54379782f4c26782292ebe39101f628e GIT binary patch literal 50146 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 HZbkkNU>$AH literal 0 HcmV?d00001 diff --git a/assets/images/august2026-promo-employees.png b/assets/images/august2026-promo-employees.png new file mode 100644 index 0000000000000000000000000000000000000000..bf3c7518db38743cc0cc90ee455dba1882c7e395 GIT binary patch literal 59701 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≤8*SzC#?~4ucUH5C2unV?8Og)6=yo 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 literal 0 HcmV?d00001 diff --git a/assets/images/july26-promo.png b/assets/images/july26-promo.png deleted file mode 100644 index 6a873fd5c24472b211c4168c969e078b8ae9c9cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49697 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 diff --git a/src/components/ProductMarketingWindow/ProductMarketingWindow.tsx b/src/components/ProductMarketingWindow/ProductMarketingWindow.tsx index bc6048a5d166..c19e67bc5625 100644 --- a/src/components/ProductMarketingWindow/ProductMarketingWindow.tsx +++ b/src/components/ProductMarketingWindow/ProductMarketingWindow.tsx @@ -26,6 +26,9 @@ type ProductMarketingWindowProps = { /** Resolved illustration asset for illustration-backed variants. Typed optional to match ImageSVG's src. */ illustration: IconAsset | undefined; + /** Whether the CTA must wait for its destination data to settle. */ + isCtaDisabled?: boolean; + /** Called when the primary CTA is pressed. */ onCtaPress: () => void; @@ -33,7 +36,7 @@ type ProductMarketingWindowProps = { onDismiss: () => void; }; -function ProductMarketingWindow({variant, illustration, onCtaPress, onDismiss}: ProductMarketingWindowProps) { +function ProductMarketingWindow({variant, illustration, isCtaDisabled = false, onCtaPress, onDismiss}: ProductMarketingWindowProps) { const styles = useThemeStyles(); const {translate} = useLocalize(); const {shouldUseNarrowLayout, isExtraSmallScreenHeight, isInLandscapeMode} = useResponsiveLayout(); @@ -116,6 +119,7 @@ function ProductMarketingWindow({variant, illustration, onCtaPress, onDismiss}: variant={CONST.BUTTON_VARIANT.SUCCESS} size={buttonSize} style={styles.flex1} + isDisabled={isCtaDisabled} onPress={onCtaPress} sentryLabel={CONST.SENTRY_LABEL.PRODUCT_MARKETING_WINDOW.CTA} testID="ProductMarketingWindowCTA" diff --git a/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx b/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx index b4393abd3d98..2a67ed17849f 100644 --- a/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx +++ b/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx @@ -1,6 +1,8 @@ import useCurrentUserPersonalDetails from '@hooks/useCurrentUserPersonalDetails'; import {useMemoizedLazyIllustrations} from '@hooks/useLazyAsset'; import useOnyx from '@hooks/useOnyx'; +import usePermissions from '@hooks/usePermissions'; +import usePolicyConnectionsPrefetch from '@hooks/usePolicyConnectionsPrefetch'; import {setNameValuePair} from '@libs/actions/User'; import Navigation from '@libs/Navigation/Navigation'; @@ -46,6 +48,7 @@ type ProductMarketingWindowManagerProps = { */ function ProductMarketingWindowManager({topmostRouteName}: ProductMarketingWindowManagerProps) { const {login: currentUserLogin = ''} = useCurrentUserPersonalDetails(); + const {isBetaEnabled} = usePermissions(); const [activeAdminPolicies, activeAdminPoliciesMetadata] = useOnyx(ONYXKEYS.COLLECTION.POLICY, { selector: (policies: OnyxCollection) => activeAdminPoliciesSelector(policies, currentUserLogin), }); @@ -64,8 +67,13 @@ function ProductMarketingWindowManager({topmostRouteName}: ProductMarketingWindo // assets when the requested names change after mount (e.g. when the audience flips after policies arrive). const illustrationNames = announcement ? [announcement.admin.visual, announcement.member?.visual].flatMap((visual) => (visual?.type === 'illustration' ? [visual.name] : [])) : []; const illustrations = useMemoizedLazyIllustrations(illustrationNames); - const targetAdminPolicyID = activeAdminPolicies?.find((policy) => policy.id === activePolicyID)?.id ?? activeAdminPolicies?.at(0)?.id; - const variant = getProductMarketingAnnouncementVariant(announcement, !!targetAdminPolicyID, lastDismissedMarketingWindow); + const targetAdminPolicy = activeAdminPolicies?.find((policy) => policy.id === activePolicyID) ?? activeAdminPolicies?.at(0); + const variant = getProductMarketingAnnouncementVariant(announcement, !!targetAdminPolicy, lastDismissedMarketingWindow); + const shouldPrefetchTargetPolicyConnections = !!targetAdminPolicy && targetAdminPolicy.id !== activePolicyID; + const {isFetchNeeded, isLoadingFetchedFlag, hasBeenFetched} = usePolicyConnectionsPrefetch(targetAdminPolicy, shouldPrefetchTargetPolicyConnections); + const isAdminCtaPending = shouldPrefetchTargetPolicyConnections && (isLoadingFetchedFlag || (isFetchNeeded && hasBeenFetched === undefined)); + const isAdminPolicyConnectionDataAvailable = !shouldPrefetchTargetPolicyConnections || hasBeenFetched === true; + const isVendorMatchingBetaEnabled = isBetaEnabled(CONST.BETAS.VENDOR_MATCHING); const isCoveredByCenteredModalScreen = !!topmostRouteName && CENTERED_MODAL_SCREEN_NAVIGATORS.has(topmostRouteName); const isLoading = isLoadingOnyxValue(lastDismissedMarketingWindowMetadata, activeAdminPoliciesMetadata, activePolicyIDMetadata, isLoadingAppMetadata, accountMetadata) || isLoadingApp; @@ -82,15 +90,25 @@ function ProductMarketingWindowManager({topmostRouteName}: ProductMarketingWindo }; const completeCta = () => { + if (isAdminCtaPending) { + return; + } // Record the dismissal before navigating so the window doesn't flash again during navigation. persistDismissal(); - Navigation.navigate(variant.getCtaRoute(targetAdminPolicyID)); + Navigation.navigate( + variant.getCtaRoute({ + adminPolicy: targetAdminPolicy, + isVendorMatchingBetaEnabled, + isAdminPolicyConnectionDataAvailable, + }), + ); }; return ( diff --git a/src/languages/de.ts b/src/languages/de.ts index c64424dd194a..c7b650fa162e 100644 --- a/src/languages/de.ts +++ b/src/languages/de.ts @@ -10346,8 +10346,13 @@ Fügen Sie weitere Ausgabelimits hinzu, um den Cashflow Ihres Unternehmens zu sc productMarketingWindow: { roleTypes: { admin: { - heading: 'Neue Rollentypen für Admins', - body: 'Geben Sie Ihrem Team detailliertere Berechtigungen mit neuen Administratorrollen für Karten, Personen und Zahlungen.', + heading: 'Verbesserte Lieferantenzuordnung', + body: 'Erstelle Lieferanten und benutzerdefinierte Regeln, um sie einfach den wichtigsten Buchhaltungssystemen zuzuordnen.', + cta: 'Ausprobieren', + }, + member: { + heading: 'Vorgefertigte Agenten für dich', + body: 'Verwende vorgefertigte oder benutzerdefinierte Agenten, um Ausgaben in deinem Namen automatisch zu kontieren, aufzuteilen und einzureichen.', cta: 'Ausprobieren', }, }, diff --git a/src/languages/el.ts b/src/languages/el.ts index c62fc97c532e..8cf821ad5b2d 100644 --- a/src/languages/el.ts +++ b/src/languages/el.ts @@ -10902,8 +10902,13 @@ ${reportName}`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Νέοι τύποι ρόλων για διαχειριστές', - body: 'Δώστε στην ομάδα σας πιο λεπτομερή δικαιώματα με νέους ρόλους διαχειριστή καρτών, ατόμων και πληρωμών.', + heading: 'Βελτιωμένη αντιστοίχιση προμηθευτών', + body: 'Δημιουργήστε προμηθευτές και προσαρμοσμένους κανόνες για εύκολη αντιστοίχιση με τα κυριότερα λογιστικά συστήματα.', + cta: 'Δοκιμάστε το', + }, + member: { + heading: 'Προκατασκευασμένοι πράκτορες για εσάς', + body: 'Χρησιμοποιήστε προκατασκευασμένους ή προσαρμοσμένους πράκτορες για να κωδικοποιούν, να διαχωρίζουν και να υποβάλλουν αυτόματα έξοδα εκ μέρους σας.', cta: 'Δοκιμάστε το', }, }, diff --git a/src/languages/en.ts b/src/languages/en.ts index a4f1693c031f..079038f6a6f7 100644 --- a/src/languages/en.ts +++ b/src/languages/en.ts @@ -10499,8 +10499,13 @@ const translations = { productMarketingWindow: { roleTypes: { admin: { - heading: 'New role types for admins', - body: 'Give your team more granular permissions with new card, people, and payments admin roles.', + heading: 'Enhanced vendor mapping', + body: 'Create vendors and custom rules for easy mapping to major accounting packages.', + cta: 'Try it out', + }, + member: { + heading: 'Pre-built agents for you', + body: 'Use pre-built or custom agents to code, split, and submit expenses automatically on your behalf.', cta: 'Try it out', }, }, diff --git a/src/languages/es.ts b/src/languages/es.ts index cfcf88139363..d1856fc30967 100644 --- a/src/languages/es.ts +++ b/src/languages/es.ts @@ -10543,8 +10543,13 @@ El plan Controlar empieza en 9 $ por miembro activo al mes.`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Nuevos tipos de roles para admins', - body: 'Ofrece a tu equipo permisos más granulares con los nuevos roles de administrador de tarjetas, personas y pagos.', + heading: 'Mapeo de proveedores mejorado', + body: 'Crea proveedores y reglas personalizadas para asignarlos fácilmente a los principales sistemas de contabilidad.', + cta: 'Pruébalo', + }, + member: { + heading: 'Agentes prediseñados para ti', + body: 'Usa agentes prediseñados o personalizados para codificar, dividir y enviar gastos automáticamente en tu nombre.', cta: 'Pruébalo', }, }, diff --git a/src/languages/fr.ts b/src/languages/fr.ts index e0fa67bf130a..28ca25ae5eec 100644 --- a/src/languages/fr.ts +++ b/src/languages/fr.ts @@ -10379,8 +10379,13 @@ Ajoutez davantage de règles de dépenses pour protéger la trésorerie de l’e productMarketingWindow: { roleTypes: { admin: { - heading: 'Nouveaux types de rôles pour les administrateurs', - body: 'Offrez à votre équipe des autorisations plus granulaires avec de nouveaux rôles d’administrateur pour les cartes, les personnes et les paiements.', + heading: 'Mise en correspondance améliorée des fournisseurs', + body: 'Créez des fournisseurs et des règles personnalisées pour les associer facilement aux principaux logiciels de comptabilité.', + cta: 'Essayer', + }, + member: { + heading: 'Agents préconfigurés pour vous', + body: 'Utilisez des agents préconfigurés ou personnalisés pour coder, fractionner et soumettre automatiquement des dépenses en votre nom.', cta: 'Essayer', }, }, diff --git a/src/languages/it.ts b/src/languages/it.ts index 95503c56e96a..c7f68b9d5674 100644 --- a/src/languages/it.ts +++ b/src/languages/it.ts @@ -10317,8 +10317,13 @@ Aggiungi altre regole di spesa per proteggere il flusso di cassa aziendale.`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Nuovi tipi di ruolo per gli amministratori', - body: 'Offri al tuo team autorizzazioni più granulari con i nuovi ruoli di amministratore per carte, persone e pagamenti.', + heading: 'Mappatura avanzata dei fornitori', + body: 'Crea fornitori e regole personalizzate per associarli facilmente ai principali software di contabilità.', + cta: 'Provalo', + }, + member: { + heading: 'Agenti predefiniti per te', + body: 'Usa agenti predefiniti o personalizzati per codificare, suddividere e inviare automaticamente le spese per tuo conto.', cta: 'Provalo', }, }, diff --git a/src/languages/ja.ts b/src/languages/ja.ts index 3fc9ee5479f1..0b87d7c8dc54 100644 --- a/src/languages/ja.ts +++ b/src/languages/ja.ts @@ -10180,8 +10180,13 @@ ${reportName}`, productMarketingWindow: { roleTypes: { admin: { - heading: '管理者向けの新しいロールタイプ', - body: '新しいカード、メンバー、支払いの各管理者ロールで、チームにより細かな権限を付与できます。', + heading: 'ベンダーマッピングの強化', + body: '主要な会計システムに簡単にマッピングできるよう、ベンダーとカスタムルールを作成します。', + cta: '試してみる', + }, + member: { + heading: 'あなたのための構築済みエージェント', + body: '構築済みまたはカスタムのエージェントを使用して、経費のコード付け、分割、提出をあなたに代わって自動化します。', cta: '試してみる', }, }, diff --git a/src/languages/nl.ts b/src/languages/nl.ts index e815262604fe..e8c67ebc7039 100644 --- a/src/languages/nl.ts +++ b/src/languages/nl.ts @@ -10287,8 +10287,13 @@ er bestedingsregels toe om de kasstroom van het bedrijf te beschermen.`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Nieuwe roltypen voor beheerders', - body: 'Geef je team meer gedetailleerde toegangsrechten met nieuwe kaart-, personen- en betalingsbeheerrollen.', + heading: 'Verbeterde leverancierskoppeling', + body: 'Maak leveranciers en aangepaste regels aan om ze eenvoudig aan belangrijke boekhoudpakketten te koppelen.', + cta: 'Probeer het uit', + }, + member: { + heading: 'Vooraf gebouwde agents voor jou', + body: 'Gebruik vooraf gebouwde of aangepaste agents om uitgaven automatisch namens jou te coderen, splitsen en indienen.', cta: 'Probeer het uit', }, }, diff --git a/src/languages/pl.ts b/src/languages/pl.ts index 6c82b253e130..b55fd18132a7 100644 --- a/src/languages/pl.ts +++ b/src/languages/pl.ts @@ -10256,9 +10256,14 @@ Dodaj więcej zasad wydatków, żeby chronić płynność finansową firmy.`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Nowe typy ról dla administratorów', - body: 'Daj swojemu zespołowi bardziej szczegółowe uprawnienia dzięki nowym rolom administratora kart, osób i płatności.', - cta: 'Wypróbuj to', + heading: 'Ulepszone mapowanie dostawców', + body: 'Twórz dostawców i niestandardowe reguły, aby łatwo mapować ich do najpopularniejszych systemów księgowych.', + cta: 'Wypróbuj', + }, + member: { + heading: 'Gotowi agenci dla Ciebie', + body: 'Używaj gotowych lub niestandardowych agentów, aby automatycznie kodować, dzielić i przesyłać wydatki w Twoim imieniu.', + cta: 'Wypróbuj', }, }, }, diff --git a/src/languages/pt-BR.ts b/src/languages/pt-BR.ts index a6bb47d9c6f4..fb8a9b58bfaf 100644 --- a/src/languages/pt-BR.ts +++ b/src/languages/pt-BR.ts @@ -10280,8 +10280,13 @@ Adicione mais regras de gasto para proteger o fluxo de caixa da empresa.`, productMarketingWindow: { roleTypes: { admin: { - heading: 'Novos tipos de função para administradores', - body: 'Dê à sua equipe permissões mais granulares com novos papéis de administrador para cartões, pessoas e pagamentos.', + heading: 'Mapeamento aprimorado de fornecedores', + body: 'Crie fornecedores e regras personalizadas para mapeá-los facilmente nos principais sistemas de contabilidade.', + cta: 'Experimente', + }, + member: { + heading: 'Agentes prontos para você', + body: 'Use agentes prontos ou personalizados para codificar, dividir e enviar despesas automaticamente em seu nome.', cta: 'Experimente', }, }, diff --git a/src/languages/zh-hans.ts b/src/languages/zh-hans.ts index 2953716756b2..7e6661cbdc29 100644 --- a/src/languages/zh-hans.ts +++ b/src/languages/zh-hans.ts @@ -9932,9 +9932,14 @@ ${reportName}`, productMarketingWindow: { roleTypes: { admin: { - heading: '新的管理员角色类型', - body: '通过新增卡片、成员和付款管理员角色,为你的团队提供更精细的权限控制。', - cta: '试用一下', + heading: '增强的供应商映射', + body: '创建供应商和自定义规则,以便轻松映射到主流会计软件。', + cta: '试用', + }, + member: { + heading: '为你预构建的智能代理', + body: '使用预构建或自定义智能代理,代表你自动对费用进行编码、拆分和提交。', + cta: '试用', }, }, }, diff --git a/src/libs/ProductMarketingWindowUtils.ts b/src/libs/ProductMarketingWindowUtils.ts index 08aafcc48640..91e45482f6c0 100644 --- a/src/libs/ProductMarketingWindowUtils.ts +++ b/src/libs/ProductMarketingWindowUtils.ts @@ -1,14 +1,18 @@ -import July26PromoImage from '@assets/images/july26-promo.png'; +import August2026PromoAdminsImage from '@assets/images/august2026-promo-admins.png'; +import August2026PromoEmployeesImage from '@assets/images/august2026-promo-employees.png'; import type {IllustrationName} from '@components/Icon/IllustrationLoader'; import type {TranslationPaths} from '@src/languages/types'; import ROUTES from '@src/ROUTES'; import type {Route} from '@src/ROUTES'; +import type {Policy} from '@src/types/onyx'; import type {ImageSourcePropType} from 'react-native'; import type {OnyxEntry} from 'react-native-onyx'; +import {hasVendorFeature} from './PolicyUtils'; + type ProductMarketingAnnouncementVisual = | { type: 'image'; @@ -19,6 +23,17 @@ type ProductMarketingAnnouncementVisual = name: IllustrationName; }; +type ProductMarketingCtaContext = { + /** Admin workspace selected for the announcement. Undefined for member variants. */ + adminPolicy?: Policy; + + /** Whether the vendor-matching beta is enabled for the current account. */ + isVendorMatchingBetaEnabled: boolean; + + /** Whether connection hydration completed for the selected admin workspace. */ + isAdminPolicyConnectionDataAvailable: boolean; +}; + /** One audience-specific content variant of a product marketing announcement. All content is authored by marketing per release. */ type ProductMarketingAnnouncementVariant = { /** Marketing-supplied product screenshot or fallback illustration shown at the top of the window. */ @@ -33,8 +48,8 @@ type ProductMarketingAnnouncementVariant = { /** Label of the primary CTA button. */ ctaLabel: TranslationPaths; - /** Builds the route the primary CTA navigates to. Admin announcements receive the target workspace ID. */ - getCtaRoute: (adminPolicyID?: string) => Route; + /** Builds the route the primary CTA navigates to using the selected audience and workspace context. */ + getCtaRoute: (context: ProductMarketingCtaContext) => Route; }; /** A single product marketing announcement with audience-targeted content variants. */ @@ -55,13 +70,25 @@ type ProductMarketingAnnouncement = { * announcement is dismissed, nothing is shown until a later release replaces it with a new update key. */ const ACTIVE_PRODUCT_MARKETING_ANNOUNCEMENT: ProductMarketingAnnouncement | null = { - updateKey: 'productUpdateJuly2026', + updateKey: 'productUpdateAugust2026', admin: { - visual: {type: 'image', source: July26PromoImage}, + visual: {type: 'image', source: August2026PromoAdminsImage}, heading: 'productMarketingWindow.roleTypes.admin.heading', body: 'productMarketingWindow.roleTypes.admin.body', ctaLabel: 'productMarketingWindow.roleTypes.admin.cta', - getCtaRoute: (adminPolicyID) => ROUTES.WORKSPACE_MEMBERS.getRoute(adminPolicyID), + getCtaRoute: ({adminPolicy, isVendorMatchingBetaEnabled, isAdminPolicyConnectionDataAvailable}) => { + if (isAdminPolicyConnectionDataAvailable && hasVendorFeature(adminPolicy, isVendorMatchingBetaEnabled)) { + return ROUTES.WORKSPACE_VENDORS.getRoute(adminPolicy?.id); + } + return ROUTES.WORKSPACE_MORE_FEATURES.getRoute(adminPolicy?.id); + }, + }, + member: { + visual: {type: 'image', source: August2026PromoEmployeesImage}, + heading: 'productMarketingWindow.roleTypes.member.heading', + body: 'productMarketingWindow.roleTypes.member.body', + ctaLabel: 'productMarketingWindow.roleTypes.member.cta', + getCtaRoute: () => ROUTES.SETTINGS_AGENTS_NEW.getRoute(), }, }; diff --git a/tests/unit/ProductMarketingWindowTest.tsx b/tests/unit/ProductMarketingWindowTest.tsx index 5bdd5a587a84..c4a4cea25b55 100644 --- a/tests/unit/ProductMarketingWindowTest.tsx +++ b/tests/unit/ProductMarketingWindowTest.tsx @@ -1,6 +1,7 @@ import {act, fireEvent, render, screen} from '@testing-library/react-native'; -import July26PromoImage from '@assets/images/july26-promo.png'; +import August2026PromoAdminsImage from '@assets/images/august2026-promo-admins.png'; +import August2026PromoEmployeesImage from '@assets/images/august2026-promo-employees.png'; import ComposeProviders from '@components/ComposeProviders'; import {CurrentUserPersonalDetailsProvider} from '@components/CurrentUserPersonalDetailsProvider'; @@ -11,9 +12,11 @@ import ProductMarketingWindowManager from '@components/ProductMarketingWindow/Pr import ThemeProvider from '@components/ThemeProvider'; import ThemeStylesProvider from '@components/ThemeStylesContextProvider'; +import useNetwork from '@hooks/useNetwork'; import useResponsiveLayout from '@hooks/useResponsiveLayout'; import useSafeAreaPaddings from '@hooks/useSafeAreaPaddings'; +import {openPolicyAccountingPage} from '@libs/actions/PolicyConnections'; import {setNameValuePair} from '@libs/actions/User'; import Navigation from '@libs/Navigation/Navigation'; import {ACTIVE_PRODUCT_MARKETING_ANNOUNCEMENT} from '@libs/ProductMarketingWindowUtils'; @@ -26,6 +29,7 @@ import CONST from '@src/CONST'; import en from '@src/languages/en'; import NAVIGATORS from '@src/NAVIGATORS'; import ONYXKEYS from '@src/ONYXKEYS'; +import ROUTES from '@src/ROUTES'; import SCREENS from '@src/SCREENS'; import type {Policy} from '@src/types/onyx'; @@ -39,10 +43,15 @@ const POLICY_ID = 'product-marketing-policy'; const SECOND_POLICY_ID = 'second-product-marketing-policy'; const USER_EMAIL = 'user@example.com'; const USER_ACCOUNT_ID = 7; -const OLDER_UPDATE_KEY = 'productUpdateJune2026'; +const OLDER_UPDATE_KEY = 'productUpdateJuly2026'; jest.mock('@hooks/useResponsiveLayout', () => jest.fn()); jest.mock('@hooks/useSafeAreaPaddings', () => jest.fn()); +jest.mock('@hooks/useNetwork', () => jest.fn()); + +jest.mock('@libs/actions/PolicyConnections', () => ({ + openPolicyAccountingPage: jest.fn(), +})); jest.mock('@libs/Navigation/Navigation', () => ({ navigate: jest.fn(), @@ -67,12 +76,17 @@ if (!announcement) { } const mockSetNameValuePair = jest.mocked(setNameValuePair); const mockNavigate = jest.mocked(Navigation.navigate); +const mockOpenPolicyAccountingPage = jest.mocked(openPolicyAccountingPage); +const mockUseNetwork = jest.mocked(useNetwork); const mockUseResponsiveLayout = jest.mocked(useResponsiveLayout); const mockUseSafeAreaPaddings = jest.mocked(useSafeAreaPaddings); const adminHeading = en.productMarketingWindow.roleTypes.admin.heading; const adminBody = en.productMarketingWindow.roleTypes.admin.body; const adminCtaLabel = en.productMarketingWindow.roleTypes.admin.cta; +const memberHeading = en.productMarketingWindow.roleTypes.member.heading; +const memberBody = en.productMarketingWindow.roleTypes.member.body; +const memberCtaLabel = en.productMarketingWindow.roleTypes.member.cta; function buildAdminPolicy(policyID = POLICY_ID): Policy { return { @@ -92,6 +106,20 @@ function buildAdminPolicy(policyID = POLICY_ID): Policy { } as Policy; } +function buildVendorEnabledAdminPolicy(policyID = POLICY_ID): Policy { + return { + ...buildAdminPolicy(policyID), + areConnectionsEnabled: true, + connections: { + [CONST.POLICY.CONNECTIONS.NAME.QBO]: { + config: { + nonReimbursableExpensesExportDestination: CONST.QUICKBOOKS_NON_REIMBURSABLE_EXPORT_ACCOUNT_TYPE.CREDIT_CARD, + }, + }, + }, + } as Policy; +} + const renderManager = (topmostRouteName?: string, theme: ThemePreferenceWithoutSystem = CONST.THEME.LIGHT) => render( @@ -110,6 +138,7 @@ async function setupOnyxBaseline({isAdmin, activePolicyID = POLICY_ID}: {isAdmin [USER_ACCOUNT_ID]: buildPersonalDetails(USER_EMAIL, USER_ACCOUNT_ID, 'User'), }); await Onyx.merge(ONYXKEYS.SESSION, {email: USER_EMAIL, accountID: USER_ACCOUNT_ID}); + await Onyx.set(ONYXKEYS.BETAS, []); if (isAdmin) { await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildAdminPolicy()); await Onyx.set(ONYXKEYS.NVP_ACTIVE_POLICY_ID, activePolicyID); @@ -122,6 +151,7 @@ describe('ProductMarketingWindowManager', () => { }); beforeEach(() => { + mockUseNetwork.mockReturnValue({isOffline: false}); mockUseResponsiveLayout.mockReturnValue({...CONST.NAVIGATION_TESTS.DEFAULT_USE_RESPONSIVE_LAYOUT_VALUE}); mockUseSafeAreaPaddings.mockReturnValue({ paddingTop: 0, @@ -140,7 +170,7 @@ describe('ProductMarketingWindowManager', () => { }); }); - it('renders nothing for a user without an admin role on any workspace', async () => { + it('shows the member variant for a user without an admin role on any workspace', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: false}); await waitForBatchedUpdatesWithAct(); @@ -149,7 +179,9 @@ describe('ProductMarketingWindowManager', () => { renderManager(); await waitForBatchedUpdatesWithAct(); - expect(screen.queryByTestId('ProductMarketingWindow')).toBeNull(); + expect(screen.getByText(memberHeading)).toBeTruthy(); + expect(screen.getByText(memberBody)).toBeTruthy(); + expect(screen.UNSAFE_getByType(Image).props.source).toBe(August2026PromoEmployeesImage); }); it('shows the admin variant when the user administers at least one active workspace', async () => { @@ -163,7 +195,7 @@ describe('ProductMarketingWindowManager', () => { expect(screen.getByText(adminHeading)).toBeTruthy(); expect(screen.getByText(adminBody)).toBeTruthy(); - expect(screen.UNSAFE_getByType(Image).props.source).toBe(July26PromoImage); + expect(screen.UNSAFE_getByType(Image).props.source).toBe(August2026PromoAdminsImage); }); it('renders nothing on startup when the active update key was already dismissed', async () => { @@ -497,7 +529,7 @@ describe('ProductMarketingWindowManager', () => { expect(mockSetNameValuePair).toHaveBeenCalledTimes(1); expect(mockSetNameValuePair).toHaveBeenCalledWith(ONYXKEYS.NVP_LAST_DISMISSED_MARKETING_WINDOW, announcement.updateKey, OLDER_UPDATE_KEY); expect(mockNavigate).toHaveBeenCalledTimes(1); - expect(mockNavigate).toHaveBeenCalledWith(announcement.admin.getCtaRoute(POLICY_ID)); + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_MORE_FEATURES.getRoute(POLICY_ID)); const dismissCallOrder = mockSetNameValuePair.mock.invocationCallOrder.at(0) ?? Number.NaN; const navigateCallOrder = mockNavigate.mock.invocationCallOrder.at(0) ?? Number.NaN; @@ -506,6 +538,23 @@ describe('ProductMarketingWindowManager', () => { expect(screen.queryByText(adminHeading)).toBeNull(); }); + it('routes an enabled Vendors CTA to the active admin workspace', async () => { + await act(async () => { + await setupOnyxBaseline({isAdmin: true}); + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.VENDOR_MATCHING]); + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildVendorEnabledAdminPolicy()); + await waitForBatchedUpdatesWithAct(); + }); + + renderManager(); + await waitForBatchedUpdatesWithAct(); + + fireEvent.press(screen.getByText(adminCtaLabel)); + await waitForBatchedUpdatesWithAct(); + + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_VENDORS.getRoute(POLICY_ID)); + }); + it('routes the CTA to the active admin workspace when the user administers multiple workspaces', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: true, activePolicyID: SECOND_POLICY_ID}); @@ -519,22 +568,76 @@ describe('ProductMarketingWindowManager', () => { fireEvent.press(screen.getByText(adminCtaLabel)); await waitForBatchedUpdatesWithAct(); - expect(mockNavigate).toHaveBeenCalledWith(announcement.admin.getCtaRoute(SECOND_POLICY_ID)); + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_MORE_FEATURES.getRoute(SECOND_POLICY_ID)); }); - it('falls back to the first eligible admin workspace when the active workspace is not administered by the user', async () => { + it('waits for fallback workspace connections, then uses the hydrated Vendors route', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: true, activePolicyID: 'non-admin-policy'}); + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.VENDOR_MATCHING]); + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildVendorEnabledAdminPolicy()); await waitForBatchedUpdatesWithAct(); }); renderManager(); await waitForBatchedUpdatesWithAct(); + expect(mockOpenPolicyAccountingPage).toHaveBeenCalledWith(POLICY_ID); + expect(screen.getByText(adminCtaLabel)).toBeDisabled(); fireEvent.press(screen.getByText(adminCtaLabel)); await waitForBatchedUpdatesWithAct(); + expect(mockNavigate).not.toHaveBeenCalled(); + + await act(async () => { + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY_HAS_CONNECTIONS_DATA_BEEN_FETCHED}${POLICY_ID}`, true); + await waitForBatchedUpdatesWithAct(); + }); + + expect(screen.getByText(adminCtaLabel)).not.toBeDisabled(); + fireEvent.press(screen.getByText(adminCtaLabel)); + await waitForBatchedUpdatesWithAct(); + + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_VENDORS.getRoute(POLICY_ID)); + }); + + it.each([ + ['offline', true, undefined], + ['failed', false, false], + ] as const)('uses More Features for a fallback workspace when connection hydration is %s', async (_state, isOffline, hasBeenFetched) => { + mockUseNetwork.mockReturnValue({isOffline}); + await act(async () => { + await setupOnyxBaseline({isAdmin: true, activePolicyID: 'non-admin-policy'}); + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.VENDOR_MATCHING]); + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildVendorEnabledAdminPolicy()); + if (hasBeenFetched !== undefined) { + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY_HAS_CONNECTIONS_DATA_BEEN_FETCHED}${POLICY_ID}`, hasBeenFetched); + } + await waitForBatchedUpdatesWithAct(); + }); + + renderManager(); + await waitForBatchedUpdatesWithAct(); + + expect(screen.getByText(adminCtaLabel)).not.toBeDisabled(); + fireEvent.press(screen.getByText(adminCtaLabel)); + await waitForBatchedUpdatesWithAct(); + + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_MORE_FEATURES.getRoute(POLICY_ID)); + }); + + it('routes the member CTA to the new Agents page', async () => { + await act(async () => { + await setupOnyxBaseline({isAdmin: false}); + await waitForBatchedUpdatesWithAct(); + }); + + renderManager(); + await waitForBatchedUpdatesWithAct(); + + fireEvent.press(screen.getByText(memberCtaLabel)); + await waitForBatchedUpdatesWithAct(); - expect(mockNavigate).toHaveBeenCalledWith(announcement.admin.getCtaRoute(POLICY_ID)); + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.SETTINGS_AGENTS_NEW.getRoute()); }); it('shows the window again when a failed persistence request rolls the NVP back to its previous update key', async () => { diff --git a/tests/unit/ProductMarketingWindowUtilsTest.ts b/tests/unit/ProductMarketingWindowUtilsTest.ts index 13523ce5f5bc..b2accadb974c 100644 --- a/tests/unit/ProductMarketingWindowUtilsTest.ts +++ b/tests/unit/ProductMarketingWindowUtilsTest.ts @@ -4,7 +4,7 @@ import type {ProductMarketingAnnouncement} from '@libs/ProductMarketingWindowUti import ROUTES from '@src/ROUTES'; const activeAnnouncement: ProductMarketingAnnouncement = { - updateKey: 'productUpdateJuly2026', + updateKey: 'productUpdateAugust2026', admin: { visual: {type: 'illustration', name: 'Rules'}, heading: 'productMarketingWindow.roleTypes.admin.heading', @@ -25,7 +25,7 @@ const adminOnlyAnnouncement: ProductMarketingAnnouncement = { admin: activeAnnouncement.admin, }; -const OLDER_UPDATE_KEY = 'productUpdateJune2026'; +const OLDER_UPDATE_KEY = 'productUpdateJuly2026'; describe('ProductMarketingWindowUtils', () => { describe('isProductMarketingAnnouncementDismissed', () => { From d2770d8c7617e8245cb8c111f62ff4c1f92e5cfc Mon Sep 17 00:00:00 2001 From: KJ21-ENG Date: Thu, 13 Aug 2026 12:23:07 +0530 Subject: [PATCH 2/3] Fix product marketing test fixture --- tests/unit/ProductMarketingWindowTest.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/tests/unit/ProductMarketingWindowTest.tsx b/tests/unit/ProductMarketingWindowTest.tsx index c4a4cea25b55..26df19be4bd7 100644 --- a/tests/unit/ProductMarketingWindowTest.tsx +++ b/tests/unit/ProductMarketingWindowTest.tsx @@ -32,10 +32,12 @@ import ONYXKEYS from '@src/ONYXKEYS'; import ROUTES from '@src/ROUTES'; import SCREENS from '@src/SCREENS'; import type {Policy} from '@src/types/onyx'; +import type {Connections} from '@src/types/onyx/Policy'; import React from 'react'; import Onyx from 'react-native-onyx'; +import createMock from '../utils/createMock'; import {buildPersonalDetails} from '../utils/TestHelper'; import waitForBatchedUpdatesWithAct from '../utils/waitForBatchedUpdatesWithAct'; @@ -110,14 +112,14 @@ function buildVendorEnabledAdminPolicy(policyID = POLICY_ID): Policy { return { ...buildAdminPolicy(policyID), areConnectionsEnabled: true, - connections: { + connections: createMock({ [CONST.POLICY.CONNECTIONS.NAME.QBO]: { config: { nonReimbursableExpensesExportDestination: CONST.QUICKBOOKS_NON_REIMBURSABLE_EXPORT_ACCOUNT_TYPE.CREDIT_CARD, }, }, - }, - } as Policy; + }), + }; } const renderManager = (topmostRouteName?: string, theme: ThemePreferenceWithoutSystem = CONST.THEME.LIGHT) => From 6169edf1d3b6b43e6c343cea9b792372e4ff4e5c Mon Sep 17 00:00:00 2001 From: KJ21-ENG Date: Thu, 13 Aug 2026 16:01:31 +0530 Subject: [PATCH 3/3] Harden product marketing targeting --- .../ProductMarketingWindowManager.tsx | 16 +++++-- tests/unit/ProductMarketingWindowTest.tsx | 48 +++++++++++++++++-- 2 files changed, 58 insertions(+), 6 deletions(-) diff --git a/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx b/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx index 2a67ed17849f..820fcb677a10 100644 --- a/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx +++ b/src/components/ProductMarketingWindow/ProductMarketingWindowManager.tsx @@ -69,15 +69,25 @@ function ProductMarketingWindowManager({topmostRouteName}: ProductMarketingWindo const illustrations = useMemoizedLazyIllustrations(illustrationNames); const targetAdminPolicy = activeAdminPolicies?.find((policy) => policy.id === activePolicyID) ?? activeAdminPolicies?.at(0); const variant = getProductMarketingAnnouncementVariant(announcement, !!targetAdminPolicy, lastDismissedMarketingWindow); - const shouldPrefetchTargetPolicyConnections = !!targetAdminPolicy && targetAdminPolicy.id !== activePolicyID; + const isMemberVariantUnavailable = variant === announcement?.member && !isBetaEnabled(CONST.BETAS.CUSTOM_AGENT); + const isVendorMatchingBetaEnabled = isBetaEnabled(CONST.BETAS.VENDOR_MATCHING); + const shouldPrefetchTargetPolicyConnections = isVendorMatchingBetaEnabled && !!targetAdminPolicy && targetAdminPolicy.id !== activePolicyID; const {isFetchNeeded, isLoadingFetchedFlag, hasBeenFetched} = usePolicyConnectionsPrefetch(targetAdminPolicy, shouldPrefetchTargetPolicyConnections); const isAdminCtaPending = shouldPrefetchTargetPolicyConnections && (isLoadingFetchedFlag || (isFetchNeeded && hasBeenFetched === undefined)); const isAdminPolicyConnectionDataAvailable = !shouldPrefetchTargetPolicyConnections || hasBeenFetched === true; - const isVendorMatchingBetaEnabled = isBetaEnabled(CONST.BETAS.VENDOR_MATCHING); const isCoveredByCenteredModalScreen = !!topmostRouteName && CENTERED_MODAL_SCREEN_NAVIGATORS.has(topmostRouteName); const isLoading = isLoadingOnyxValue(lastDismissedMarketingWindowMetadata, activeAdminPoliciesMetadata, activePolicyIDMetadata, isLoadingAppMetadata, accountMetadata) || isLoadingApp; - if (!announcement || !variant || isLoading || isProductMarketingWindowCovered || isAnonymousSession || isActingAsDelegate || isCoveredByCenteredModalScreen) { + if ( + !announcement || + !variant || + isMemberVariantUnavailable || + isLoading || + isProductMarketingWindowCovered || + isAnonymousSession || + isActingAsDelegate || + isCoveredByCenteredModalScreen + ) { return null; } diff --git a/tests/unit/ProductMarketingWindowTest.tsx b/tests/unit/ProductMarketingWindowTest.tsx index 26df19be4bd7..efe4471c9a16 100644 --- a/tests/unit/ProductMarketingWindowTest.tsx +++ b/tests/unit/ProductMarketingWindowTest.tsx @@ -133,14 +133,16 @@ const renderManager = (topmostRouteName?: string, theme: ThemePreferenceWithoutS , ); -async function setupOnyxBaseline({isAdmin, activePolicyID = POLICY_ID}: {isAdmin: boolean; activePolicyID?: string}) { +async function setupOnyxBaseline({isAdmin, activePolicyID = POLICY_ID, initializeBetas = true}: {isAdmin: boolean; activePolicyID?: string; initializeBetas?: boolean}) { await Onyx.clear(); await Onyx.set(ONYXKEYS.IS_LOADING_APP, false); await Onyx.set(ONYXKEYS.PERSONAL_DETAILS_LIST, { [USER_ACCOUNT_ID]: buildPersonalDetails(USER_EMAIL, USER_ACCOUNT_ID, 'User'), }); await Onyx.merge(ONYXKEYS.SESSION, {email: USER_EMAIL, accountID: USER_ACCOUNT_ID}); - await Onyx.set(ONYXKEYS.BETAS, []); + if (initializeBetas) { + await Onyx.set(ONYXKEYS.BETAS, []); + } if (isAdmin) { await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildAdminPolicy()); await Onyx.set(ONYXKEYS.NVP_ACTIVE_POLICY_ID, activePolicyID); @@ -175,6 +177,7 @@ describe('ProductMarketingWindowManager', () => { it('shows the member variant for a user without an admin role on any workspace', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: false}); + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.CUSTOM_AGENT]); await waitForBatchedUpdatesWithAct(); }); @@ -186,6 +189,25 @@ describe('ProductMarketingWindowManager', () => { expect(screen.UNSAFE_getByType(Image).props.source).toBe(August2026PromoEmployeesImage); }); + it('does not show the member variant until the Custom Agent beta is available', async () => { + await act(async () => { + await setupOnyxBaseline({isAdmin: false, initializeBetas: false}); + await waitForBatchedUpdatesWithAct(); + }); + + renderManager(); + await waitForBatchedUpdatesWithAct(); + + expect(screen.queryByText(memberHeading)).toBeNull(); + + await act(async () => { + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.CUSTOM_AGENT]); + await waitForBatchedUpdatesWithAct(); + }); + + expect(screen.getByText(memberHeading)).toBeTruthy(); + }); + it('shows the admin variant when the user administers at least one active workspace', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: true}); @@ -577,7 +599,7 @@ describe('ProductMarketingWindowManager', () => { await act(async () => { await setupOnyxBaseline({isAdmin: true, activePolicyID: 'non-admin-policy'}); await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.VENDOR_MATCHING]); - await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildVendorEnabledAdminPolicy()); + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, {...buildAdminPolicy(), areConnectionsEnabled: true}); await waitForBatchedUpdatesWithAct(); }); @@ -591,6 +613,7 @@ describe('ProductMarketingWindowManager', () => { expect(mockNavigate).not.toHaveBeenCalled(); await act(async () => { + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, buildVendorEnabledAdminPolicy()); await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY_HAS_CONNECTIONS_DATA_BEEN_FETCHED}${POLICY_ID}`, true); await waitForBatchedUpdatesWithAct(); }); @@ -602,6 +625,24 @@ describe('ProductMarketingWindowManager', () => { expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_VENDORS.getRoute(POLICY_ID)); }); + it('uses More Features without fetching fallback workspace connections when Vendor Matching beta is disabled', async () => { + await act(async () => { + await setupOnyxBaseline({isAdmin: true, activePolicyID: 'non-admin-policy'}); + await Onyx.set(`${ONYXKEYS.COLLECTION.POLICY}${POLICY_ID}`, {...buildAdminPolicy(), areConnectionsEnabled: true}); + await waitForBatchedUpdatesWithAct(); + }); + + renderManager(); + await waitForBatchedUpdatesWithAct(); + + expect(mockOpenPolicyAccountingPage).not.toHaveBeenCalled(); + expect(screen.getByText(adminCtaLabel)).not.toBeDisabled(); + fireEvent.press(screen.getByText(adminCtaLabel)); + await waitForBatchedUpdatesWithAct(); + + expect(mockNavigate).toHaveBeenCalledWith(ROUTES.WORKSPACE_MORE_FEATURES.getRoute(POLICY_ID)); + }); + it.each([ ['offline', true, undefined], ['failed', false, false], @@ -630,6 +671,7 @@ describe('ProductMarketingWindowManager', () => { it('routes the member CTA to the new Agents page', async () => { await act(async () => { await setupOnyxBaseline({isAdmin: false}); + await Onyx.set(ONYXKEYS.BETAS, [CONST.BETAS.CUSTOM_AGENT]); await waitForBatchedUpdatesWithAct(); });