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

51 lines
2.7 KiB
TypeScript

// Metro module 14608 (f14609).
import { useMemo } from "react";
import CollectiblesCategoryStore from "../CollectiblesCategoryStore";
import CollectiblesShopStore from "../CollectiblesShopStore";
import { useStateFromStoresObject } from "../../../_bundle/Module589";
import { getIsVariantProduct } from "../utils/CollectiblesProductUtils";
let c10299_5 = {};
export function useCollectiblesShopDeepLinkProps({ categories, products }) {
let initialCategorySkuId, initialBaseProductSkuId, initialVariantIndex;
initialCategorySkuId = void 0;
initialBaseProductSkuId = void 0;
initialVariantIndex = void 0;
const stateFromStoresObject = useStateFromStoresObject([CollectiblesCategoryStore, CollectiblesShopStore], () => {
const initialProductSkuId = CollectiblesShopStore.initialProductSkuId;
const product = CollectiblesCategoryStore.getProduct(initialProductSkuId);
const r2 = product != null;
let initialVariantIndex2 = 0;
let initialBaseProductSkuId2 = initialProductSkuId;
if (r2) {
const r15 = product.variantGroupStoreListingId != null;
initialVariantIndex2 = 0;
initialBaseProductSkuId2 = initialProductSkuId;
if (r15) {
const productByStoreListingId = CollectiblesCategoryStore.getProductByStoreListingId(product.variantGroupStoreListingId);
const r18 = productByStoreListingId != null && getIsVariantProduct(productByStoreListingId);
initialVariantIndex2 = 0;
initialBaseProductSkuId2 = initialProductSkuId;
if (r18) {
initialBaseProductSkuId2 = productByStoreListingId.skuId;
initialVariantIndex2 = Math.max(0, productByStoreListingId.variants.findIndex((variant) => variant.skuId === initialProductSkuId));
}
}
}
return {
initialCategorySkuId: CollectiblesCategoryStore.getCategoryForProduct(initialProductSkuId)?.skuId,
initialBaseProductSkuId: initialBaseProductSkuId2,
initialVariantIndex: initialVariantIndex2
};
});
initialCategorySkuId = stateFromStoresObject.initialCategorySkuId;
initialBaseProductSkuId = stateFromStoresObject.initialBaseProductSkuId;
initialVariantIndex = stateFromStoresObject.initialVariantIndex;
return useMemo(() => initialBaseProductSkuId != null && initialCategorySkuId != null ? {
initialProductSkuId: initialBaseProductSkuId,
initialVariantIndex,
initialCategorySkuId,
productIndex: products != null ? Math.max(0, products.findIndex((product) => product.skuId === initialBaseProductSkuId)) : void 0,
categoryIndex: categories != null ? Math.max(0, categories.findIndex((category) => category.skuId === initialCategorySkuId)) : void 0
} : c10299_5, [initialBaseProductSkuId, initialVariantIndex, initialCategorySkuId, products, categories]);
}