26 lines
1.1 KiB
TypeScript
26 lines
1.1 KiB
TypeScript
// Metro module 14249 (f14250).
|
|
import { useMemo } from "react";
|
|
import { TIER_TRIAL_INTERVALS } from "./GuildRoleSubscriptionsConstants";
|
|
import { SubscriptionIntervalTypes } from "../premium/PremiumConstants";
|
|
import { intl, t } from "../../intl/index.native";
|
|
import { formatPlanIntervalDuration } from "./GuildRoleSubscriptionTypeUtils";
|
|
export default function useTrialIntervalOptions(a0) {
|
|
return useMemo(() => {
|
|
const options = TIER_TRIAL_INTERVALS.map((item) => ({
|
|
value: item,
|
|
label: item.interval === SubscriptionIntervalTypes.DAY && item.interval_count === 7 ? intl.formatToPlainString(t.XfSsr1, {
|
|
defaultLimit: formatPlanIntervalDuration(item)
|
|
}) : formatPlanIntervalDuration(item),
|
|
isDefault: item.interval === SubscriptionIntervalTypes.DAY && item.interval_count === 7
|
|
}));
|
|
let selectedOption = a0;
|
|
if (selectedOption != null) {
|
|
selectedOption = options.find((option) => option.value != null && option.value.interval === a0.interval && option.value.interval_count === a0.interval_count)?.value;
|
|
}
|
|
return {
|
|
options,
|
|
selectedOption
|
|
};
|
|
}, [a0]);
|
|
};
|