fix(LOY-192): fix toasts for surprises in webviews
This commit is contained in:
@@ -7,6 +7,7 @@ import Script from "next/script"
|
|||||||
|
|
||||||
import TrpcProvider from "@/lib/trpc/Provider"
|
import TrpcProvider from "@/lib/trpc/Provider"
|
||||||
|
|
||||||
|
import { ToastHandler } from "@/components/TempDesignSystem/Toasts"
|
||||||
import AdobeSDKScript from "@/components/TrackingSDK/AdobeSDKScript"
|
import AdobeSDKScript from "@/components/TrackingSDK/AdobeSDKScript"
|
||||||
import GTMScript from "@/components/TrackingSDK/GTMScript"
|
import GTMScript from "@/components/TrackingSDK/GTMScript"
|
||||||
import RouterTracking from "@/components/TrackingSDK/RouterTracking"
|
import RouterTracking from "@/components/TrackingSDK/RouterTracking"
|
||||||
@@ -43,6 +44,7 @@ export default async function RootLayout({
|
|||||||
<TrpcProvider>
|
<TrpcProvider>
|
||||||
<RouterTracking />
|
<RouterTracking />
|
||||||
{children}
|
{children}
|
||||||
|
<ToastHandler />
|
||||||
</TrpcProvider>
|
</TrpcProvider>
|
||||||
</ServerIntlProvider>
|
</ServerIntlProvider>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@@ -8,6 +8,10 @@ import { useIntl } from "react-intl"
|
|||||||
|
|
||||||
import { customerService } from "@/constants/currentWebHrefs"
|
import { customerService } from "@/constants/currentWebHrefs"
|
||||||
import { benefits } from "@/constants/routes/myPages"
|
import { benefits } from "@/constants/routes/myPages"
|
||||||
|
import {
|
||||||
|
benefits as webviewBenefits,
|
||||||
|
myPagesWebviews,
|
||||||
|
} from "@/constants/routes/webviews"
|
||||||
import { trpc } from "@/lib/trpc/client"
|
import { trpc } from "@/lib/trpc/client"
|
||||||
|
|
||||||
import Link from "@/components/TempDesignSystem/Link"
|
import Link from "@/components/TempDesignSystem/Link"
|
||||||
@@ -56,22 +60,32 @@ export default function SurprisesNotification({
|
|||||||
onSuccess: () => {
|
onSuccess: () => {
|
||||||
utils.contentstack.rewards.current.invalidate({ lang })
|
utils.contentstack.rewards.current.invalidate({ lang })
|
||||||
|
|
||||||
if (pathname.indexOf(benefits[lang]) !== 0) {
|
const onBenefitsPage = pathname.indexOf(benefits[lang]) === 0
|
||||||
toast.success(
|
const onWebviewBenefitsPage =
|
||||||
<>
|
pathname.indexOf(webviewBenefits[lang]) === 0
|
||||||
{intl.formatMessage(
|
|
||||||
{
|
if (onBenefitsPage || onWebviewBenefitsPage) {
|
||||||
id: "{amount, plural, one {Gift} other {Gifts}} added to your benefits",
|
return
|
||||||
},
|
|
||||||
{ amount: surprises.length }
|
|
||||||
)}
|
|
||||||
<br />
|
|
||||||
<Link href={benefits[lang]} variant="underscored" color="burgundy">
|
|
||||||
{intl.formatMessage({ id: "Go to My Benefits" })}
|
|
||||||
</Link>
|
|
||||||
</>
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const benefitPageUrl = myPagesWebviews.includes(pathname)
|
||||||
|
? webviewBenefits[lang]
|
||||||
|
: benefits[lang]
|
||||||
|
|
||||||
|
toast.success(
|
||||||
|
<>
|
||||||
|
{intl.formatMessage(
|
||||||
|
{
|
||||||
|
id: "{amount, plural, one {Gift} other {Gifts}} added to your benefits",
|
||||||
|
},
|
||||||
|
{ amount: surprises.length }
|
||||||
|
)}
|
||||||
|
<br />
|
||||||
|
<Link href={benefitPageUrl} variant="underscored" color="burgundy">
|
||||||
|
{intl.formatMessage({ id: "Go to My Benefits" })}
|
||||||
|
</Link>
|
||||||
|
</>
|
||||||
|
)
|
||||||
},
|
},
|
||||||
onError: (error) => {
|
onError: (error) => {
|
||||||
console.error("Failed to unwrap surprise", error)
|
console.error("Failed to unwrap surprise", error)
|
||||||
|
|||||||
Reference in New Issue
Block a user