Module 982240

1,830 characters · in 932601989c827e51.js
Dependencies
Lazily required by (0)none
Requires (3)
Lazily requires (0)none
Source Raw
function(e,t,r){r.d(t,{Ay:()=>_,H5:()=>u,rL:()=>l});var n=r(17928),i=r(228366),a=r(287809);function l(e){return e?.requirements[0]?.threshold??0}function u(e){if(null!=e)return(null!=e.current_tier?e.tier_obtained_at?.[e.current_tier]:void 0)??e.obtained_at}let d=new Map,s=new Set,g=new Set;class o extends n.Ay.Store{initialize(){this.waitFor(a.default)}static displayName="BadgeDirectoryStore";getBadges(e){let t=e??a.default.getCurrentUser()?.id;if(null==t)return[];let r=d.get(t);return null!=r?Array.from(r.values()):[]}hasCatalogFor(e){return s.has(e)}hasCatalogFetchErrorFor(e){let t=e??a.default.getCurrentUser()?.id;return null!=t&&g.has(t)}getBadgeById(e,t){let r=t??a.default.getCurrentUser()?.id;return null!=r?d.get(r)?.get(e):void 0}getSingleRequirementProgress(e,t){let r=this.getBadgeById(e,t)?.progress;if(null!=r&&0!==r.length)return r[0]}getCurrentTier(e,t){let r=this.getBadgeById(e,t);if(r?.current_tier!=null)return r.tiers.find(e=>e.key===r.current_tier)}getObtainedAt(e,t){return u(this.getBadgeById(e,t))}getNextTier(e,t){let r=this.getBadgeById(e,t);if(r?.next_tier!=null)return r.tiers.find(e=>e.key===r.next_tier)}getRemainingToNextTier(e,t){let r=this.getNextTier(e,t),n=this.getSingleRequirementProgress(e,t);return null==r||null==n?0:Math.max(0,l(r)-n.current)}}let _=new o(i.h,{BADGE_DIRECTORY_FETCH_START:function(e){let{userId:t}=e;(g=new Set(g)).delete(t)},BADGE_DIRECTORY_FETCH_SUCCESS:function(e){let{userId:t,badges:r}=e,n=new Map(d);n.set(t,new Map(r.map(e=>[e.badge_id,e]))),d=n,s=new Set(s).add(t),(g=new Set(g)).delete(t)},BADGE_DIRECTORY_FETCH_FAILURE:function(e){let{userId:t}=e;g=new Set(g).add(t)},BADGE_FETCH_SUCCESS:function(e){let{userId:t,badge:r}=e,n=new Map(d),i=new Map(n.get(t)??new Map);i.set(r.badge_id,r),n.set(t,i),d=n},LOGOUT:function(){d=new Map,s=new Set,g=new Set}})}