25 lines
1.6 KiB
TypeScript
25 lines
1.6 KiB
TypeScript
// Metro module 7840 (f7841).
|
|
import UserStore from "../../stores/UserStore";
|
|
import SubscriptionStore from "../../stores/billing/SubscriptionStore";
|
|
import UserOfferStore from "../../stores/billing/UserOfferStore";
|
|
import { PREMIUM_TIER_2_3P_ONE_MONTH_TRIAL_ID, PREMIUM_TIER_2_LIKELIHOOD_TRIAL_ID, PREMIUM_TIER_2_REACTIVATION_TRIAL_ID, PREMIUM_TIER_2_REFERRAL_TRIAL_ID, PREMIUM_TRIAL_IDS_ALL } from "./PremiumConstants";
|
|
import { useStateFromStores } from "../../_bundle/Module589";
|
|
import { hasUserTrialOfferExpired } from "./useTrialOffer";
|
|
export function useHasActiveTrial() {
|
|
return !!useStateFromStores([SubscriptionStore], () => SubscriptionStore.getPremiumTypeSubscription())?.hasActiveTrial;
|
|
}
|
|
export function hasActiveTrial() {
|
|
return SubscriptionStore.getPremiumTypeSubscription()?.trialId != null;
|
|
}
|
|
export function isEligibleTrialSub(a0) {
|
|
return a0?.trialId != null && (a0.trialId === PREMIUM_TIER_2_LIKELIHOOD_TRIAL_ID || a0.trialId === PREMIUM_TIER_2_REACTIVATION_TRIAL_ID || a0.trialId === PREMIUM_TIER_2_3P_ONE_MONTH_TRIAL_ID || a0.trialId === PREMIUM_TIER_2_REFERRAL_TRIAL_ID);
|
|
}
|
|
export function useCurrentPremiumTrialTier() {
|
|
const stateFromStores = useStateFromStores([SubscriptionStore], () => SubscriptionStore.getPremiumTypeSubscription());
|
|
const stateFromStores2 = useStateFromStores([UserStore], () => UserStore.getCurrentUser());
|
|
return stateFromStores?.hasActiveTrial ? stateFromStores2?.premiumType : null;
|
|
}
|
|
export function getPremiumTrialOffer() {
|
|
return PREMIUM_TRIAL_IDS_ALL.map((item) => UserOfferStore.getUserTrialOffer(item)).filter((item) => item != null && !hasUserTrialOfferExpired(item)).shift();
|
|
}
|