66 lines
2.3 KiB
TypeScript
66 lines
2.3 KiB
TypeScript
// Metro module 6244 (f6245).
|
|
import _slicedToArray from "../../_bundle/_slicedToArray";
|
|
import { useState, useEffect } from "react";
|
|
import UserStore from "../../stores/UserStore";
|
|
import UserOfferStore from "../../stores/billing/UserOfferStore";
|
|
import { useStateFromStores } from "../../_bundle/Module589";
|
|
import { isPremium } from "../../utils/PremiumUtils";
|
|
import { Timeout } from "../../_bundle/Timeout";
|
|
function $mk114917($env) {
|
|
return () => {
|
|
L12: {
|
|
const r2 = $env.$parent;
|
|
if (!r2[2]) {
|
|
const r7 = r2[1];
|
|
if (r7 != null && r7.expires_at != null && Date.now() > Date.parse(r7.expires_at)) {
|
|
(0, r2[3])(true);
|
|
break L12;
|
|
}
|
|
}
|
|
const r18 = r2[1];
|
|
if (r18 != null) {
|
|
const r22 = r18.expires_at != null ? Date.parse(r18.expires_at) - Date.now() : 0;
|
|
const r31 = $env;
|
|
const r32 = r31[0];
|
|
if (r32 != null) {
|
|
r32.start(r22, $mk114917(r31));
|
|
}
|
|
}
|
|
}
|
|
};
|
|
}
|
|
let env3965 = {};
|
|
export function hasUserTrialOfferExpired(a0) {
|
|
return a0 != null && a0.expires_at != null && Date.now() > Date.parse(a0.expires_at);
|
|
}
|
|
export function useTrialOffer(a0) {
|
|
let env15611 = {
|
|
$parent: env3965
|
|
};
|
|
env15611[0] = a0;
|
|
const stateFromStores = useStateFromStores([UserOfferStore], () => UserOfferStore.getUserTrialOffer(env15611[0]));
|
|
env15611[1] = stateFromStores;
|
|
const r30 = _slicedToArray(useState(stateFromStores != null && stateFromStores.expires_at != null && Date.now() > Date.parse(stateFromStores.expires_at)), 2);
|
|
const r31 = r30[0];
|
|
env15611[2] = r31;
|
|
env15611[3] = r30[1];
|
|
const stateFromStores2 = useStateFromStores([UserStore], () => isPremium(UserStore.getCurrentUser()));
|
|
const r40 = stateFromStores2 ? UserOfferStore.canFractionalPremiumUserUseOffer() : !stateFromStores2;
|
|
useEffect(() => {
|
|
const r4 = env15611[1];
|
|
if (r4 != null && r4.expires_at != null) {
|
|
let env25764;
|
|
const r13 = env25764 = {
|
|
$parent: env15611
|
|
};
|
|
const timeout = new Timeout();
|
|
env25764[0] = timeout;
|
|
if (r4 != null) {
|
|
timeout.start(r4.expires_at != null ? Date.parse(r4.expires_at) - Date.now() : 0, $mk114917(r13));
|
|
}
|
|
return () => env25764[0].stop();
|
|
}
|
|
}, [r31, stateFromStores]);
|
|
return r31 ? null : r40 ? stateFromStores : null;
|
|
}
|