Repository URL to install this package:
|
Version:
2.0.0 ▾
|
import { businessPremiumPlans, notCancelledPlans, hadPremiumPlans } from '../constants/segments';
import { modalTypes } from '../constants/paywall';
export default ({ segments, isForeignMandator }) => {
const isBusinessPlan = segments.some(segment =>
businessPremiumPlans.some(businessPremiumPlan => businessPremiumPlan === segment)
);
const isCancelled = !segments.some(segment =>
notCancelledPlans.some(notCancelledPlan => notCancelledPlan === segment)
);
const isHadPremiumPlans = segments.some(segment =>
hadPremiumPlans.some(hadPremiumPlan => hadPremiumPlan === segment)
);
switch (true) {
case isBusinessPlan: {
return { shouldOpenModal: false };
}
case !isBusinessPlan && isForeignMandator: {
return {
shouldOpenModal: true,
modalType: modalTypes.foreignSubscriptionUnavailable,
};
}
case isCancelled: {
return {
shouldOpenModal: true,
modalType: modalTypes.getPremiumPC,
};
}
case !segments.length: {
return {
shouldOpenModal: true,
modalType: modalTypes.getTrialPC,
};
}
case isHadPremiumPlans: {
return {
shouldOpenModal: true,
modalType: modalTypes.getPremiumPC,
};
}
default: {
return {
shouldOpenModal: true,
modalType: modalTypes.getTrialPC,
};
}
}
};