PageSourceSearch

https://devhunt.io/_nuxt/DAlexu2V.js

js devhunt.io collected 2026-09-29 11:59:25 UTC 2,655 bytes, 1 lines download raw bytes

1import{M as z,u as H,a as j,d as q,b as G,l as S,N as J,c as e,O as Q}from"./BbUASWUm.js";import{t as y}from"./CVoNzTfn.js";const g={available:0,used:0,total:0,validUntil:null},W={isTrial:!1,trialEndsAt:null,daysLeft:null,underlyingTier:null,effectiveTier:null,isPermanent:!1,trialStartedAt:null},X=3e4,Z=()=>{const{client:P}=H(),{userData:T,isRecruiterProfile:D}=j(),{t:l}=q(),A=e(()=>!!T.value?.recruiterProfile?.companyMembership),n=S(null);function E(a){n.value=a,a!==null&&Q(()=>{n.value===a&&(n.value=null)})}const i=e(()=>n.value?!1:D.value===!0&&A.value);let c=0;const{data:B,refresh:o}=G("subscription-status",async()=>{if(!i.value)return null;try{const a=await P.billing.getSubscriptionStatus();return c=Date.now(),a}catch{return null}},{lazy:!0,immediate:!0,watch:[i],default:()=>null}),t=e(()=>n.value??B.value),s=e(()=>t.value?.trial??W),u=e(()=>t.value?.effectiveTier??null),v=e(()=>s.value.underlyingTier),p=e(()=>s.value.isTrial),d=e(()=>s.value.daysLeft),L=e(()=>s.value.trialEndsAt),f=e(()=>t.value?.grant??null),m=e(()=>s.value.isPermanent===!0),I=e(()=>f.value?.source??null),V=e(()=>s.value.trialStartedAt??null),C=e(()=>t.value?.hasActiveSubscription??!1),_=e(()=>t.value?.maxPublishedVacancies??null),N=e(()=>t.value?.canUseKanban??!1),b=e(()=>t.value?.publishedVacancies??0),U=e(()=>t.value?.planPublishedVacancies??b.value),w=e(()=>t.value?.purchasedBoostCredits??0),O=e(()=>t.value?.purchasedPostSlots??0),R=e(()=>t.value?.boostBalance??g),x=e(()=>t.value?.postBalance??g),M=e(()=>t.value?.atPublishLimit??!1),F=e(()=>l(`pricingPage.plans.${u.value??"free"}.name`)),$=e(()=>t.value?.subscriptionStatus??null),K=e(()=>{if(m.value)return"permanent";if(!p.value)return null;const a=d.value;return a===0?"last-day":a!==null&&a<=3?"expiring-soon":"fresh"}),Y=e(()=>l(`pricingPage.plans.${v.value??"starter"}.name`)),k=e(()=>l(`pricingPage.plans.${u.value??"enterprise"}.name`)),r=S(y(new Date));{const a=()=>{if(document.visibilityState!=="visible")return;const h=y(new Date);r.value!==h&&(r.value=h),i.value&&(Date.now()-c<X||o())};document.addEventListener("visibilitychange",a),J(()=>{document.removeEventListener("visibilitychange",a)})}return{trial:s,effectiveTier:u,underlyingTier:v,isTrial:p,daysLeft:d,trialEndsAt:L,trialUiVariant:K,tierDisplayName:Y,effectiveTierDisplayName:k,todayISO:r,grant:f,isPermanent:m,grantSource:I,trialStartedAt:V,hasActiveSubscription:C,subscriptionStatus:$,maxPublishedVacancies:_,canUseKanban:N,publishedVacancies:b,planPublishedVacancies:U,atPublishLimit:M,purchasedBoostCredits:w,purchasedPostSlots:O,boostBalance:R,postBalance:x,planDisplayName:F,refresh:o,prime:E}},ae=z(Z);export{ae as u};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.