51 lines
2.7 KiB
TypeScript
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]);
|
|
}
|