Files
discord-decomp/modules/collectibles/hooks/useTrackPdpClick.tsx
T
2026-11-01 12:12:55 +02:00

32 lines
1.3 KiB
TypeScript

// Metro module 8736 (f8737).
import { useCallback } from "react";
import { AnalyticEvents } from "../../../Constants";
import { useCollectiblesAnalyticsContext } from "../CollectiblesAnalyticsContext";
import { useCurrentUserIfAvailable } from "./useCurrentUser";
import { getShopDiscountSource, getAnalyticsShopDiscountSource } from "../CollectiblesUtils";
import AnalyticsUtils from "../../../utils/AnalyticsUtils";
export function useTrackPdpClick({ skuId, productSkuIds, analyticsLocations }) {
let r15 = useCollectiblesAnalyticsContext();
if (r15 == null) {
r15 = {};
}
const { cardId, sessionId } = r15;
const shopDiscountSource = getShopDiscountSource(useCurrentUserIfAvailable());
return useCallback((a0, a1) => {
let sku_id = a1;
const SHOP_PRODUCT_DETAIL_PAGE_CLICKED = AnalyticEvents.SHOP_PRODUCT_DETAIL_PAGE_CLICKED;
if (a1 == null) {
sku_id = skuId;
}
AnalyticsUtils.track(SHOP_PRODUCT_DETAIL_PAGE_CLICKED, {
sku_id,
cta: a0,
shop_session_id: sessionId,
card_id: cardId,
product_sku_ids: productSkuIds,
location_stack: analyticsLocations,
discount_source: getAnalyticsShopDiscountSource(shopDiscountSource)
});
}, [skuId, analyticsLocations, cardId, productSkuIds, sessionId, shopDiscountSource]);
}