Module 816733

5,770 characters · in no known chunk
Dependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>O}),n(205816);var r=n(311907),i=n(73153),s=n(851746),a=n(694080),o=n(31413),l=n(287809),u=n(469778),c=n(927578),d=n(166403),_=n(788868);let f=6e5,p={userOffersLastFetchedAtDate:void 0,userTrialOffers:{},userDiscountOffers:{},userDiscounts:void 0,isFetching:!1,lastFetchSuccessful:!1},h=p;function m(){h.isFetching=!0}function E(e){let{userTrialOffer:t}=e;null!=t?h.userTrialOffers[t.trial_id]=t:S(),h.userOffersLastFetchedAtDate=Date.now(),h.isFetching=!1}function g(e){let{userTrialOffer:t,userDiscount:n,userDiscountOffer:r}=e;null==t&&null==n&&null==r&&S(),null!=t?(h.userTrialOffers[t.trial_id]=t,h.userDiscountOffers={}):null!=n?(h.userDiscountOffers[n.discount_id]=n,h.userTrialOffers={}):null!=r&&(h.userDiscountOffers[r.discount_id]=r,h.userTrialOffers={}),h.userOffersLastFetchedAtDate=Date.now(),h.isFetching=!1,h.lastFetchSuccessful=!0}function A(){S(),h.userOffersLastFetchedAtDate=Date.now(),h.isFetching=!1,h.lastFetchSuccessful=!1}function I(e){let{userTrialOffer:t}=e;null!=t?h.userTrialOffers[t.trial_id]=t:h.userTrialOffers={},h.userOffersLastFetchedAtDate=Date.now()}function T(e){let{userTrialOffer:t,userDiscount:n,userDiscountOffer:r}=e;null!=t?h.userTrialOffers[t.trial_id]=t:h.userTrialOffers={},null!=n?h.userDiscountOffers[n.discount_id]=n:null!=r?h.userDiscountOffers[r.discount_id]=r:h.userDiscountOffers={},h.userOffersLastFetchedAtDate=Date.now()}function S(){h.userTrialOffers={},h.userDiscountOffers={},h.userOffersLastFetchedAtDate=void 0,h.isFetching=!1}let y=()=>!0;function v(){return null!=d.A.getPremiumTypeSubscription()&&(null!=h.userDiscountOffers[_.q]?h.userDiscountOffers={[_.q]:h.userDiscountOffers[_.q]}:null!=h.userDiscountOffers[_.EG]?h.userDiscountOffers={[_.EG]:h.userDiscountOffers[_.EG]}:h.userDiscountOffers={},h.userTrialOffers={},!0)}function N(){let e=l.default.getCurrentUser();!(0,c.TW)(e)&&Object.keys(h.userDiscountOffers).length>0&&(0,a._D)("UserOfferStore",!0)}function C(){let e=l.default.getCurrentUser()?.id;if(null==e)return!1;let t=s.A.getAllRelevantReferralTrialOffers().filter(t=>t.user_id===e);if(t.length>0){let e=t[0];return h.userTrialOffers[e.trial_id]=e,!0}return!1}class R extends r.Ay.PersistedStore{static displayName="UserOfferStore";static persistKey="UserOfferStore";static migrations=[e=>{let t=e?.userDiscounts;if(null!=t)return{...e,userDiscountOffers:t}},e=>{if(null!=e)return Object.hasOwn(e,"userAnnualOfferLastFetchedAtDate")&&delete e.userAnnualOfferLastFetchedAtDate,e},e=>{if(null!=e)return e?.isFetching==null?{...e,isFetching:!1}:e}];initialize(e){h=e??p,this.waitFor(u.A,s.A,d.A,l.default),this.syncWith([l.default],y),this.syncWith([d.A],v),this.syncWith([s.A],C)}getUserTrialOffer(e){if(null!==e)return h.userTrialOffers[e]}getUserDiscountOffer(e){if(null!==e)return h.userDiscountOffers[e]}getAnyOfUserTrialOfferId(e){for(let t of e)if(null!=h.userTrialOffers[t])return t;return null}isFetchingOffer(){return h.isFetching??!1}hasFetchedOffer(){return null!=h.userOffersLastFetchedAtDate}shouldFetchReferralOffer(e){let t=h.userOffersLastFetchedAtDate,n=h.isFetching??!1;if(null==t)return!n;let r=Date.now()-f>t,i=(e??0)>t;return!n&&(r||i)}shouldShowTrialOfferReminder(e){return!_.Pn.includes(e.trial_id)||(0,o.G)({location:"user_offer_store"})}getAlmostExpiringTrialOffersForReminder(e){let t=Object.values(_.TP).map(e=>e.id),n=l.default.getCurrentUser();return(0,c.TW)(n)&&!this.canFractionalPremiumUserUseOffer()?[]:Object.values(h.userTrialOffers).filter(n=>t.includes(n.trial_id)&&null!=n.expires_at&&null!=n.subscription_trial&&e.includes(n.subscription_trial.sku_id)&&Date.parse(n.expires_at)<Date.now()+(0,c.e1)(n)&&this.shouldShowTrialOfferReminder(n))}shouldShowDiscountOfferReminder(e){return!_.ON.includes(e.discount_id)||(0,o.G)({location:"user_offer_store"})}getAlmostExpiringDiscountOffersForReminder(e){let t=l.default.getCurrentUser();return(0,c.TW)(t)&&!this.canFractionalPremiumUserUseOffer()?[]:Object.values(h.userDiscountOffers).filter(t=>null!=t.expires_at&&null!=t.discount&&t.discount.plan_ids.some(t=>e.includes(_.hd[t].skuId))&&Date.parse(t.expires_at)<Date.now()+(0,c.e1)(t)&&this.shouldShowDiscountOfferReminder(t))}getAcknowledgedOffers(e){let t=l.default.getCurrentUser();return(0,c.TW)(t)&&!this.canFractionalPremiumUserUseOffer()?[]:Object.values(h.userTrialOffers).filter(t=>e.includes(t.trial_id)&&null!=t.expires_at)}getUnacknowledgedDiscountOffers(){let e=l.default.getCurrentUser();return(0,c.TW)(e)&&!this.canFractionalPremiumUserUseOffer()?[]:Object.values(h.userDiscountOffers??{}).filter(e=>null==e.expires_at&&!_.ly.includes(e.discount_id))}getUnacknowledgedOffers(e){let t=l.default.getCurrentUser();return(0,c.TW)(t)&&!this.canFractionalPremiumUserUseOffer()?[]:Object.values(h.userTrialOffers).filter(t=>e.includes(t.trial_id)&&null==t.expires_at)}hasAnyUnexpiredOffer(){return Object.values(h.userTrialOffers).some(e=>null==e.expires_at||Date.parse(e.expires_at)>Date.now())}hasAnyUnexpiredDiscountOffer(){return Object.values(h.userDiscountOffers).some(e=>null==e.expires_at||Date.parse(e.expires_at)>Date.now())}canFractionalPremiumUserUseOffer(){return u.A.isFractionalPremiumActive({excludeReverseTrial:!0})&&null==d.A.getPremiumTypeSubscription()}getReferrer(e){return null==e?null:h.userTrialOffers[e]?.referrer}getState(){return h}forceReset(){S()}lastFetchSuccessful(){return h.lastFetchSuccessful}}let O=new R(i.h,{BILLING_USER_OFFER_FETCH_START:m,BILLING_USER_TRIAL_OFFER_FETCH_SUCCESS:E,BILLING_USER_TRIAL_OFFER_ACKNOWLEDGED_SUCCESS:I,BILLING_USER_OFFER_FETCH_SUCCESS:g,BILLING_USER_OFFER_ACKNOWLEDGED_SUCCESS:T,BILLING_USER_OFFER_FETCH_FAIL:A,BILLING_PAYMENT_SOURCE_CREATE_SUCCESS:N,BILLING_PAYMENT_SOURCE_UPDATE_SUCCESS:N,BILLING_PAYMENT_SOURCE_REMOVE_SUCCESS:N,LOGOUT:S})}