PageSourceSearch

https://launchmind.io/_next/static/chunks/44874.4cc1dbe33e95d8f9.js

js launchmind.io collected 2026-09-24 20:03:14 UTC 39,435 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[44874],{5728:(e,a,t)=>{t.d(a,{U_:()=>n,ay:()=>s});let s=25;function n(e){return Math.round(s*("yearly"===e?12:"semi_annual"===e?6:1)*("yearly"===e?.8:"semi_annual"===e?.92:1))}},11052:(e,a,t)=>{t.d(a,{$S:()=>r,Mv:()=>l,N5:()=>n,vY:()=>i});let s=["en","nl","de","fr","es","it","hi","pl","da"],n={en:{name:"English",englishName:"English",flag:"\uD83C\uDDEC\uD83C\uDDE7"},nl:{name:"Nederlands",englishName:"Dutch",flag:"\uD83C\uDDF3\uD83C\uDDF1"},de:{name:"Deutsch",englishName:"German",flag:"\uD83C\uDDE9\uD83C\uDDEA"},fr:{name:"Fran\xe7ais",englishName:"French",flag:"\uD83C\uDDEB\uD83C\uDDF7"},es:{name:"Espa\xf1ol",englishName:"Spanish",flag:"\uD83C\uDDEA\uD83C\uDDF8"},it:{name:"Italiano",englishName:"Italian",flag:"\uD83C\uDDEE\uD83C\uDDF9"},hi:{name:"हिन्दी",englishName:"Hindi",flag:"\uD83C\uDDEE\uD83C\uDDF3"},pl:{name:"Polski",englishName:"Polish",flag:"\uD83C\uDDF5\uD83C\uDDF1"},da:{name:"Dansk",englishName:"Danish",flag:"\uD83C\uDDE9\uD83C\uDDF0"}},l=s.map(e=>({code:e,name:n[e].name,flag:n[e].flag})),r=["en","nl","de","fr","es","it","hi","pl"].map(e=>({code:e,name:n[e].name,flag:n[e].flag}));function i(e){let a=(e||"").toLowerCase().split("-")[0];return s.includes(a)?a:"en"}},21510:(e,a,t)=>{t.d(a,{A:()=>s});let s=(0,t(96417).A)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]])},44874:(e,a,t)=>{t.r(a),t.d(a,{default:()=>C});var s=t(34324),n=t(78712),l=t(22201),r=t(63899),i=t(77660),d=t(77016),o=t(74750),c=t(96087),x=t(39870),h=t(68993),g=t(59285),m=t(22580),b=t(6488),p=t(3147),u=t(10549),v=t(3677),f=t(85768),j=t(77991),N=t(99325),y=t(18284),w=t(21510),k=t(73067),_=t(11052),A=t(5728);function S(e){let{title:a,subtitle:t,badge:l,defaultOpen:r=!1,sectionId:d,activeSectionId:o,forceOpenKey:c,icon:x,children:h}=e,[g,m]=(0,n.useState)(r||null!=d&&d===o),b=(0,n.useRef)(null);return(0,n.useEffect)(()=>{d&&o===d&&(m(!0),setTimeout(()=>{var e;null==(e=b.current)||e.scrollIntoView({behavior:"smooth",block:"start"})},100))},[o,d]),(0,n.useEffect)(()=>{c&&c>0&&(m(!0),setTimeout(()=>{var e;null==(e=b.current)||e.scrollIntoView({behavior:"smooth",block:"start"})},100))},[c]),(0,s.jsxs)("div",{ref:b,id:d,className:"hard-sm overflow-hidden scroll-mt-4",children:[(0,s.jsxs)("button",{onClick:()=>m(!g),className:"w-full flex items-center justify-between p-5 bg-white hover:bg-[rgba(23,20,15,0.04)] transition-colors text-left",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 min-w-0",children:[x&&(0,s.jsx)("div",{className:"w-9 h-9 rounded-lg bg-[rgba(23,20,15,0.06)] flex items-center justify-center flex-shrink-0",children:(0,s.jsx)(x,{className:"w-[18px] h-[18px] text-[var(--soft)]"})}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("h3",{className:"text-base font-semibold text-[var(--ink)] truncate",children:a}),t&&(0,s.jsx)("p",{className:"text-xs text-[var(--soft2)] mt-0.5 truncate",children:t})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-3 flex-shrink-0",children:[l&&(0,s.jsx)("div",{children:l}),(0,s.jsx)(i.A,{className:"h-4 w-4 text-[var(--soft2)] transition-transform duration-200 ".concat(g?"rotate-180":"")})]})]}),g&&(0,s.jsx)("div",{className:"border-t border-[var(--line)] p-5",children:h})]})}function C(e){let{subscription:a,initialSection:t}=e,{t:i}=(0,r.Bd)("dashboard"),[C,P]=(0,n.useState)(!1),[I,E]=(0,n.useState)(!1),[L,M]=(0,n.useState)(null),[D,T]=(0,n.use
1State)([]),[F,O]=(0,n.useState)(!0),[B,V]=(0,n.useState)(null),[R,U]=(0,n.useState)(!1),[J,H]=(0,n.useState)(!1),[z,G]=(0,n.useState)({name:"",line1:"",line2:"",city:"",postal_code:"",country:"",email:"",tax_id:""});(0,n.useEffect)(()=>{(async()=>{try{let e=await fetch("/api/backlinks/invoices");if(e.ok){let a=await e.json();T(a.invoices||[]),a.billingAddress&&(V(a.billingAddress),G(a.billingAddress))}}catch(e){console.error("Error fetching invoices:",e)}finally{O(!1)}})()},[]),(0,n.useEffect)(()=>{if(t){let e=document.getElementById(t);e&&setTimeout(()=>e.scrollIntoView({behavior:"smooth",block:"start"}),100)}},[t]);let Y=async()=>{H(!0);try{let e=new AbortController,a=setTimeout(()=>e.abort(),15e3),t=await fetch("/api/backlinks/invoices",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(z),signal:e.signal});if(clearTimeout(a),t.ok)await t.json(),V(z),U(!1),M({type:"success",text:i("dashboard:billing.addressSaved","Billing address updated successfully")});else{let e=await t.json();M({type:"error",text:e.error||"Failed to update address"})}}catch(e){console.error("Save address error:",e),"AbortError"===e.name?M({type:"error",text:i("dashboard:billing.requestTimeout","Request timed out. Please try again.")}):M({type:"error",text:e.message||"Failed to update address"})}finally{H(!1)}},W=async()=>{E(!0),M(null);try{let e=window.location.pathname.split("/")[1]||"en",a=await fetch("/api/backlinks/portal",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({lang:e})}),t=await a.json();if(!a.ok||!t.url)throw Error(t.error||"Failed to open billing portal");window.location.href=t.url}catch(e){M({type:"error",text:e.message||"Failed to open billing portal"}),E(!1)}},q=Object.entries(k.hm).map(e=>{let[a,t]=e;return{id:a,name:t.displayName,monthlyPrice:t.price,yearlyPrice:Math.round(12*t.price*.8),mentions:t.articlesPerMonth,features:["".concat(t.articlesPerMonth," articles/month"),"SEO Intelligence & Ranking Tracker","GEO + SEO optimized","Own subdomain","Advanced analytics",..."scaleup"===a?["**Opportunity Scan report**"]:[],..."pro"===a?["Priority placement in articles","Dedicated partner page","**Monthly reports**","2 campaigns"]:[],..."enterprise"===a?["SEO & GEO Rich Content Strategy","Dedicated account manager","Priority in all 9 languages","**Monthly reports**","**Customer Success Manager**","5 campaigns, each with its own approval"]:[],..."max"===a?["SEO & GEO Rich Content Strategy","Dedicated account manager","Priority in all 9 languages","**Monthly reports**","**Customer Success Manager**","**Unlimited campaigns**","**Monthly strategy check-in**"]:[]],popular:t.isRecommended,badge:"scaleup"===a?"For Startups":"pro"===a?"Recommended":"max"===a?"Maximum Scale":"Compound Building"}}),K=q.find(e=>e.id===a.plan_type)||q[0],$=a.billing_cycle||"monthly",Q=!!a.contract_duration&&!!a.payment_term,Z=Q?a.contract_duration:(0,k.co)($).duration,X=Q?a.payment_term:(0,k.co)($).term,ee=!a.stripe_subscription_id,[ea,et]=(0,n.useState)("1_year"),es=ee?ea:Z,en=async e=>{P(!0),M(null);try{let a=await fetch("/api/backlinks/subscription",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({new_plan:e,billing_cycle:$,...ee?{contract_duration:ea}:{}})}),t=await a.json();if(!a.ok)throw Error(t.error||"Failed to upgrade plan");if(t.checkout_url)window.location.href=t.checkout_url;else if(t.scheduled_change){let e=new Date(t.scheduled_change.effective_date).toLocaleDateString();M({type:"success",text:i("dashboard:billing.downgradeScheduled",{plan:t.scheduled_change.new_plan,date:e,defaultValue:"Your downgrade to ".concat(t.scheduled_change.new_plan," has been scheduled. It will take effect on ").concat(e,".")})})}else M({type:"success",text:i("dashboard:billing.planUpdatedSuccess","Plan updated successfully! Reloading...")}),setTimeout(()=>window.location.reload(),2e3)}catch(e){console.error("Upgrade error:",e),M({type:"error",text:e.message||"Failed to upgrade plan"})}finally{P(!1)}},el=_.$S,er=a.article_languages||["en"],[ei,ed]=(0,n.useState)(er),[eo,ec]=(0,n.use
1State)(!1),ex=(0,l.useSearchParams)(),eh=(0,l.useRouter)(),eg=(null==ex?void 0:ex.get("checkout"))==="success",[em,eb]=(0,n.useState)(eg);(0,n.useEffect)(()=>{if(!eg)return;let e=document.getElementById("languages");e&&setTimeout(()=>e.scrollIntoView({behavior:"smooth",block:"start"}),200);let a=new URL(window.location.href);a.searchParams.delete("checkout"),eh.replace(a.pathname+a.search,{scroll:!1})},[eg]);let ep=A.ay,eu=(0,A.U_)($),ev=Math.max(0,ei.length-1),ef=ev*eu,ej=Math.max(0,er.length-1),[eN,ey]=(0,n.useState)(0);if(a.onboarded_by_agency)return(0,s.jsx)("div",{className:"space-y-6",children:(0,s.jsx)("div",{className:"hard-sm p-6",children:(0,s.jsxs)("div",{className:"flex items-start gap-4",children:[(0,s.jsx)("div",{className:"w-10 h-10 rounded-lg bg-[var(--gold-soft)] flex items-center justify-center flex-shrink-0",children:(0,s.jsx)(d.A,{className:"w-5 h-5 text-[var(--orange)]"})}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,s.jsx)("h2",{className:"text-lg fd font-extrabold text-[var(--ink)]",children:i("dashboard:billing.agencyManagedTitle","SEO Subscription")}),(0,s.jsx)("span",{className:"text-xs font-semibold capitalize ".concat("active"===a.status?"text-green-600":"text-[var(--soft)]"),children:a.status})]}),(0,s.jsx)("p",{className:"text-sm text-[var(--soft2)] mt-1",children:i("dashboard:billing.agencyManagedBody","Your subscription is managed by your agency. They handle plan changes, invoicing and payments on your behalf.")}),(0,s.jsxs)("div",{className:"mt-4 grid grid-cols-2 gap-4 text-sm",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[var(--soft2)] text-xs uppercase tracking-wider",children:i("dashboard:billing.articlesPerMonth","Articles / month")}),(0,s.jsx)("div",{className:"text-[var(--ink)] font-medium mt-0.5",children:a.mentions_per_month})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("div",{className:"text-[var(--soft2)] text-xs uppercase tracking-wider",children:i("dashboard:billing.usedThisMonth","Used this month")}),(0,s.jsx)("div",{className:"text-[var(--ink)] font-medium mt-0.5",children:a.mentions_used_this_month})]})]})]})]})})});let ew=!a.stripe_subscription_id,ek=!!a.cancel_at_period_end,e_=!!a.scheduled_plan_change,eA=a.current_period_end?new Date(a.current_period_end).toLocaleDateString():null,eS=(0,k.pN)(K.monthlyPrice,es,X);return(0,s.jsxs)("div",{className:"space-y-6",children:[em&&(0,s.jsx)("div",{className:"rounded-xl bg-green-50 border-2 border-green-600 p-4",children:(0,s.jsxs)("div",{className:"flex items-start gap-3",children:[(0,s.jsx)(o.A,{className:"w-5 h-5 text-green-600 mt-0.5 flex-shrink-0"}),(0,s.jsxs)("div",{className:"flex-1",children:[(0,s.jsx)("p",{className:"text-sm text-green-900 font-medium",children:i("dashboard:billing.activationSuccessTitle","Betalingsopzet voltooid")}),(0,s.jsx)("p",{className:"text-sm text-green-800 mt-1",children:i("dashboard:billing.activationSuccessBody","Je abonnement loopt — artikelen blijven draaien. Wil je meteen nog extra talen erbij? Dan worden toekomstige artikelen ook vertaald.")}),(0,s.jsxs)("div",{className:"mt-3 flex items-center gap-2",children:[(0,s.jsxs)("button",{type:"button",onClick:()=>{var e;null==(e=document.getElementById("languages"))||e.scrollIntoView({behavior:"smooth",block:"start"})},className:"inline-flex items-center gap-1.5 px-3 py-1.5 text-xs fd font-bold bg-green-600 text-white rounded-full hover:bg-green-700",children:[(0,s.jsx)(c.A,{className:"w-3.5 h-3.5"}),i("dashboard:billing.activationAddLanguagesCta","Talen toevoegen")]}),(0,s.jsx)("button",{type:"button",onClick:()=>eb(!1),className:"text-xs text-green-700 hover:text-green-900 px-2 py-1.5",children:i("dashboard:billing.activationLater","Later")})]})]}),(0,s.jsx)("button",{type:"button",onClick:()=>eb(!1),className:"text-green-600 hover:text-green-800","aria-label":"Close",children:(0,s.jsx)(x.A,{className:"w-4 h-4"})})]})}),L&&(0,s.jsx)("div",{className:"p-4 rounded-xl border-2 ".concat("success"===L.type?"bg-green-50 border-green-600 text-green-700":"bg-red-50 border-red-600 text-red-700"),children:L.text}),(0,s.jsx)("div",{id:"current-plan",className:"scroll-mt-4",children:ew?(0,s.jsx)("div",{className:"hard rounded-2xl p-6 bg-[var(--gold-soft)]",children:(0,s.jsxs)("div",{className:"flex items-start gap-4 flex-wrap",children:[(0,s.jsx)("div",{className:"flex-shrink-0 w-12 h-12 rounded-xl bg-[var(--gold)] flex items-center justify-center",children:(0,s.jsx)(h.A,{className:"w-6 h-6 text-[var(--ink)]"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-[260px]",children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-[var(--orange)] mb-1",children:i("dashboard:billing.heroActivateLabel","Setup nodig")}),(0,s.jsx)("h2",{className:"text-xl fd font-extrabold text-[var(--ink)]",children:i("dashboard:billing.heroActivateTitle","Activeer je betaalabonnement")}),(0,s.jsx)("p",{className:"text-sm text-[var(--soft)] mt-1 max-w-xl",children:i("dashboard:billing.heroActivateBody","Je account staat klaar — kies hieronder een plan om automatisch te betalen en je abonnement te activeren.")}),(0,s.jsxs)("div",{className:"mt-3 flex items-center gap-2 text-xs text-[var(--soft)] flex-wrap",children:[(0,s.jsx)("span",{className:"px-2 py-0.5 rounded-full bg-white border-2 border-[var(--ink)]",children:K.name}),(0,s.jsxs)("span",{className:"px-2 py-0.5 rounded-full bg-white border-2 border-[var(--ink)]",children:["€",eS,"/mo"]}),(0,s.jsx)("span",{className:"px-2 py-0.5 rounded-full bg-white border-2 border-[var(--ink)]",children:k.jf[es].label})]})]}),(0,s.jsxs)("button",{onClick:()=>ey(e=>e+1),className:"inline-flex items-center gap-2 px-5 py-2.5 fd pop bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white rounded-full font-bold transition-all whitespace-nowrap",children:[(0,s.jsx)(d.A,{className:"w-4 h-4"}),i("dashboard:billing.heroActivateCta","Kies plan")]})]})}):ek?(0,s.jsx)("div",{className:"hard-sm rounded-2xl bg-red-50 border-2 border-red-600 p-6",children:(0,s.jsxs)("div",{className:"flex items-start gap-4 flex-wrap",children:[(0,s.jsx)("div",{className:"flex-shrink-0 w-12 h-12 rounded-xl bg-red-100 flex items-center justify-center",children:(0,s.jsx)(g.A,{className:"w-6 h-6 text-red-600"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-[260px]",children:[(0,s.jsx)("div",{className:"text-[11px] font-semibold uppercase tracking-wider text-red-700 mb-1",children:i("dashboard:billing.heroCancelLabel","Wordt opgezegd")}),(0,s.jsxs)("h2",{className:"text-xl fd font-extrabold text-[var(--ink)]",children:[K.name," \xb7 €",eS,"/mo"]}),(0,s.jsx)("p",{className:"text-sm text-[var(--soft)] mt-1",children:eA?i("dashboard:billing.heroCancelBody",{date:eA,defaultValue:"Je abonnement loopt af op ".concat(eA,". Tot die datum blijven alle features actief.")}):i("dashboard:billing.heroCancelBodyNoDate","Je abonnement wordt aan het einde van de huidige periode be\xebindigd.")})]}),(0,s.jsxs)("button",{onClick:W,disabled:I,className:"inline-flex items-center gap-2 px-4 py-2 bg-white border-2 border-red-600 text-red-700 rounded-full fd font-bold hover:bg-red-50 transition-colors whitespace-nowrap disabled:opacity-50",children:[I?(0,s.jsx)(m.A,{className:"w-4 h-4 animate-spin"}):(0,s.jsx)(b.A,{className:"w-4 h-4"}),i("dashboard:billing.openPortal","Manage billing")]})]})}):(0,s.jsx)("div",{className:"hard-sm rounded-2xl p-6",children:(0,s.jsxs)("div",{className:"flex items-start gap-4 flex-wrap",children:[(0,s.jsx)("div",{className:"flex-shrink-0 w-12 h-12 rounded-xl bg-[var(--gold-soft)] flex items-center justify-center",children:(0,s.jsx)(p.A,{className:"w-6 h-6 text-[var(--orange)]"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-[260px]",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,s.jsx)("span",{className:"text-[11px] font-semibold uppercase tracking-wider text-[var(--soft2)]",children:i("dashboard:billing.currentPlan","Current Plan")}),(0,s.jsx)("span",{className:"text-[11px] font-semibold capitalize px-2 py-0.5 rounded-full border-2 ".concat("active"===a.status?"bg-green-100 text-green-700 border-green-600":"trialing"===a.status?"bg-blue-100 text-blue-700 border-blue-600":"cancelled"===a.status?"bg-red-100 text-red-700 border-red-600":"bg-[rgba(23,20,15,0.04)] text-[var(--soft)] border-[var(--line)]"),children:a.status})]}),(0,s.jsxs)("h2",{className:"text-2xl fd font-extrabold text-[var(--ink)]",children:[K.name,(0,s.jsxs)("span",{className:"text-[var(--soft2)] font-normal text-lg ml-2",children:["\xb7 €",eS,"/mo"]})]}),(0,s.jsxs)("div",{className:"mt-2 flex items-center gap-x-4 gap-y-1 text-xs text-[var(--soft2)] flex-wrap",children:[(0,s.jsxs)("span",{children:[k.jf[es].label," \xb7 ",k.FQ[X].label]}),(0,s.jsx)("span",{children:"\xb7"}),(0,s.jsx)("span",{children:i("dashboard:billing.heroArticles",{value:a.mentions_per_month,defaultValue:"".concat(a.mentions_per_month," articles/mo")})}),ej>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{children:"\xb7"}),(0,s.jsx)("span",{children:i("dashboard:billing.heroLanguages",{value:er.length,defaultValue:"".concat(er.length," talen")})})]})]}),e_&&(0,s.jsxs)("div",{className:"mt-3 inline-flex items-center gap-2 px-3 py-1.5 rounded-lg bg-blue-50 border-2 border-blue-600 text-xs text-blue-800",children:[(0,s.jsx)(u.A,{className:"w-3.5 h-3.5"}),(0,s.jsx)("span",{children:i("dashboard:billing.pendingDowngradeInfo",{plan:a.scheduled_plan_change.charAt(0).toUpperCase()+a.scheduled_plan_change.slice(1),date:a.scheduled_change_date?new Date(a.scheduled_change_date).toLocaleDateString():"at period end",defaultValue:"Plan wijzigt naar ".concat(a.scheduled_plan_change.charAt(0).toUpperCase()+a.scheduled_plan_change.slice(1)," op ").concat(a.scheduled_change_date?new Date(a.scheduled_change_date).toLocaleDateString():"period end",".")})})]})]}),a.stripe_customer_id&&(0,s.jsxs)("button",{onClick:W,disabled:I,className:"inline-flex items-center gap-2 px-4 py-2 fd pop bg-[var(--ink)] text-[var(--gold)] rounded-full font-bold hover:opacity-90 transition-colors whitespace-nowrap disabled:opacity-50",children:[I?(0,s.jsx)(m.A,{className:"w-4 h-4 animate-spin"}):(0,s.jsx)(b.A,{className:"w-4 h-4"}),I?i("dashboard:billing.opening","Opening..."):i("dashboard:billing.openPortal","Manage billing")]})]})})}),(0,s.jsx)(S,{sectionId:"plans",activeSectionId:t,forceOpenKey:eN,defaultOpen:ew,title:i("dashboard:billing.availablePlans","Available Plans"),subtitle:i("dashboard:billing.plansSubtitle","Vergelijk plannen en upgrade of downgrade wanneer je wilt"),icon:v.A,badge:ee?(0,s.jsx)("span",{className:"chip text-[10px] font-semibold uppercase tracking-wider bg-[var(--gold)] text-[var(--ink)] border-2 border-[var(--ink)] px-2 py-1 rounded-full",children:i("dashboard:billing.heroActivateLabel","Setup nodig")}):null,children:(0,s.jsxs)("div",{children:[ee&&(0,s.jsxs)("div",{className:"mb-5",children:[(0,s.jsxs)("div",{className:"inline-flex items-center bg-white rounded-full p-1 border-2 border-[var(--ink)]",children:[(0,s.jsx)("button",{type:"button",onClick:()=>et("1_year"),className:"px-3 py-1.5 rounded-full text-xs font-medium transition-colors ".concat("1_year"===ea?"bg-[var(--ink)] text-[var(--gold)]":"text-[var(--soft2)] hover:text-[var(--soft)]"),children:i("dashboard:billing.chooseYearly","Yearly")}),(0,s.jsxs)("button",{type:"button",onClick:()=>et("monthly"),className:"px-3 py-1.5 rounded-full text-xs font-medium transition-colors ".concat("monthly"===ea?"bg-[var(--ink)] text-[var(--gold)]":"text-[var(--soft2)] hover:text-[var(--soft)]"),children:[i("dashboard:billing.chooseMonthly","Monthly")," ",(0,s.jsx)("span",{className:"monthly"===ea?"text-[var(--gold)]":"text-[var(--soft2)]",children:"+7%"})]})]}),(0,s.jsx)("p",{className:"text-xs text-[var(--soft2)] mt-2",children:"1_year"===ea?i("dashboard:billing.yearlyContractNote","1-year contract — standard price, cancel at end of term."):i("dashboard:billing.monthlyContractNote","No commitment — cancel anytime. 7% surcharge vs yearly.")})]}),(0,s.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-
15",children:q.filter(e=>"starter"!==e.id).map(e=>{let t=e.id===a.plan_type,n={starter:1,scaleup:2,pro:3,enterprise:4,max:5},l=n[a.plan_type]||0,r=n[e.id]||0,c=r<l,x=r>l;return(0,s.jsxs)("div",{className:"relative flex flex-col p-5 ".concat(t?"hard !bg-[var(--gold)]":e.popular?"hard":"hard-sm hover:border-[var(--orange)] transition-colors"),children:[e.popular&&(0,s.jsx)("span",{className:"absolute -top-3 left-1/2 transform -translate-x-1/2 chip bg-[var(--gold)] text-[var(--ink)] border-2 border-[var(--ink)] text-[9px] font-bold uppercase tracking-wider px-3 py-1 rounded-full",children:i("dashboard:billing.mostPopular","Most Popular")}),t&&(0,s.jsx)("span",{className:"absolute -top-3 right-4 chip px-3 py-1 bg-[var(--ink)] text-[var(--gold)] text-[9px] font-bold uppercase tracking-wider rounded-full",children:i("dashboard:billing.current","Current")}),t&&!a.stripe_subscription_id&&(0,s.jsxs)("button",{onClick:()=>en(e.id),disabled:C,className:"absolute -bottom-3 left-1/2 transform -translate-x-1/2 inline-flex items-center gap-1.5 px-4 py-1.5 fd pop bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white text-xs font-bold rounded-full transition-colors disabled:opacity-50",children:[C?(0,s.jsx)(m.A,{className:"w-3.5 h-3.5 animate-spin"}):(0,s.jsx)(d.A,{className:"w-3.5 h-3.5"}),i("dashboard:billing.activateBilling","Activate Billing")]}),(0,s.jsx)("h4",{className:"text-xl fd font-extrabold text-[var(--ink)] mb-2",children:e.name}),(0,s.jsxs)("div",{className:"mb-4",children:[(0,s.jsxs)("span",{className:"text-3xl fd font-extrabold text-[var(--ink)]",children:["€",(0,k.pN)(e.monthlyPrice,es,X)]}),(0,s.jsx)("span",{className:"text-[var(--soft)]",children:"/mo"})]}),(0,s.jsx)("ul",{className:"space-y-1.5 mb-6 flex-grow",children:e.features.map((a,t)=>{let n=a.startsWith("**")&&a.endsWith("**"),l=n?a.slice(2,-2):a;return(0,s.jsxs)("li",{className:"flex items-start gap-2 text-xs ".concat(n?"text-[var(--ink)] font-semibold":"text-[var(--soft)]"),children:[(0,s.jsx)(o.A,{className:"w-3.5 h-3.5 mt-0.5 flex-shrink-0 ".concat(e.popular?"text-[var(--orange)]":"text-green-600")}),(0,s.jsx)("span",{children:l})]},t)})}),!t&&(a.scheduled_plan_change===e.id?(0,s.jsxs)("div",{className:"w-full px-4 py-2 rounded-full fd font-bold bg-blue-100 text-blue-700 border-2 border-blue-600 text-center",children:[(0,s.jsx)(o.A,{className:"w-4 h-4 inline mr-2"}),i("dashboard:billing.scheduledChange","Scheduled")]}):a.stripe_subscription_id?(0,s.jsx)("button",{onClick:()=>en(e.id),disabled:C||!!a.scheduled_plan_change,className:"w-full px-4 py-2 rounded-full fd font-bold transition-colors ".concat(x?"pop bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white":c?"pop bg-[var(--ink)] text-[var(--gold)] hover:opacity-90":"border-2 border-[var(--ink)] text-[var(--ink)] hover:bg-[var(--cream)]"," disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2"),children:C?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.A,{className:"w-4 h-4 animate-spin"}),i("dashboard:billing.processing","Processing...")]}):x?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(v.A,{className:"w-4 h-4"}),i("dashboard:billing.upgradeNow","Upgrade Now")]}):c?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(f.A,{className:"w-4 h-4"}),i("dashboard:billing.downgrade","Downgrade")]}):i("dashboard:billing.selectPlan","Select Plan")}):(0,s.jsx)("button",{onClick:()=>en(e.id),disabled:C,className:"w-full px-4 py-2 rounded-full fd font-bold transition-colors flex items-center justify-center gap-2 pop bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white disabled:opacity-50 disabled:cursor-not-allowed",children:C?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.A,{className:"w-4 h-4 animate-spin"}),i("dashboard:billing.processing","Processing...")]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(d.A,{className:"w-4 h-4"}),i("dashboard:billing.startPlan","Start Plan")]})}))]},e.id)})})]})}),(0,s.jsxs)(S,{sectionId:"languages",activeSectionId:t,defaultOpen:!1,title:i("dashboard:billing.languageAddons","Article Languages"),subtitle:i("dashboard:billing.languageAddonsDesc","Select in 
1which languages your articles should be written"),icon:c.A,badge:(0,s.jsxs)("span",{className:"text-xs font-semibold bg-[var(--gold-soft)] text-[var(--ink)] border-2 border-[var(--ink)] px-2.5 py-1 rounded-full",children:[er.length," ",1===er.length?i("dashboard:billing.languageSingular","taal"):i("dashboard:billing.languagePlural","talen"),ej>0&&(0,s.jsxs)("span",{className:"text-[var(--orange)] ml-1",children:["\xb7 +€",ej*ep,"/mo"]})]}),children:[(0,s.jsxs)("div",{className:"mb-4 p-3 rounded-lg hard-flat bg-[rgba(23,20,15,0.04)]",children:[(0,s.jsxs)("p",{className:"text-sm text-[var(--ink)]",children:[(0,s.jsxs)("span",{className:"font-medium",children:[i("dashboard:billing.currentLanguages","Current languages"),":"]})," ",er.map(e=>{var a;return(null==(a=el.find(a=>a.code===e))?void 0:a.name)||e}).join(", ")]}),a.language_surcharge&&a.language_surcharge>0&&(0,s.jsxs)("p",{className:"text-xs text-[var(--soft2)] mt-1",children:[i("dashboard:billing.currentLanguageCost","Current add-on cost"),": €",a.language_surcharge,"/","yearly"===$?"yr":"mo"]})]}),(0,s.jsx)("div",{className:"mb-4 p-2.5 bg-[rgba(23,20,15,0.04)] rounded-lg border border-[var(--line)]",children:(0,s.jsxs)("p",{className:"text-xs text-[var(--soft2)] flex items-start gap-2",children:[(0,s.jsx)(u.A,{className:"w-3.5 h-3.5 mt-0.5 flex-shrink-0"}),(0,s.jsxs)("span",{children:[(0,s.jsxs)("strong",{children:[i("dashboard:billing.languageInstructions","How it works"),":"]})," ",i("dashboard:billing.languageInstructionsText","First select your main language (AI will write in this language), then select additional languages for translations. Each additional language costs €25/month.")]})]})}),(0,s.jsx)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-3 mb-4",children:el.map(e=>{let a=ei.includes(e.code),t=ei[0]===e.code;return(0,s.jsxs)("button",{type:"button",onClick:()=>{a?ei.length>1&&ed(ei.filter(a=>a!==e.code)):ed([...ei,e.code])},className:"relative flex items-center gap-2 px-4 py-3 rounded-lg border-2 transition-all ".concat(a?t?"border-[var(--ink)] bg-[var(--gold)] text-[var(--ink)]":"border-[var(--ink)] bg-[var(--gold-soft)] text-[var(--ink)]":"border-[var(--line)] bg-white text-[var(--soft)] hover:border-[var(--ink)]"),children:[(0,s.jsx)("span",{className:"text-xl",children:e.flag}),(0,s.jsx)("span",{className:"font-medium text-sm",children:e.name}),t&&(0,s.jsx)("span",{className:"absolute -top-2 -right-2 chip bg-[var(--ink)] text-[var(--gold)] text-[10px] px-2 py-0.5 rounded-full font-bold",children:i("dashboard:billing.mainLang","Main")}),a&&!t&&(0,s.jsx)(o.A,{className:"h-4 w-4 text-[var(--orange)] ml-auto"})]},e.code)})}),(0,s.jsxs)("div",{className:"p-4 hard-flat bg-[rgba(23,20,15,0.04)] mb-4",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between text-sm mb-2",children:[(0,s.jsx)("span",{className:"text-[var(--soft)]",children:i("dashboard:billing.mainLanguageIncluded","Main language (1st)")}),(0,s.jsx)("span",{className:"font-semibold text-green-600",children:i("dashboard:billing.included","Included")})]}),ev>0&&(0,s.jsxs)("div",{className:"flex items-center justify-between text-sm pt-2 border-t border-[var(--line)]",children:[(0,s.jsxs)("span",{className:"text-[var(--soft)]",children:[i("dashboard:billing.additionalLanguages","Additional languages")," (",ev,"x €",ep,")"]}),(0,s.jsxs)("span",{className:"font-semibold text-[var(--orange)]",children:["+€","monthly"===$?ev*ep:ef,"/","yearly"===$?"yr":"semi_annual"===$?"6mo":"mo"]})]})]}),JSON.stringify(ei.sort())!==JSON.stringify(er.sort())&&(()=>{let e=ei.filter(e=>!er.includes(e)),t=er.filter(e=>!ei.includes(e)),n=e.length>0;return(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[n&&(0,s.jsxs)("div",{className:"p-3 bg-[var(--gold-soft)] rounded-lg border-2 border-[var(--ink)]",children:[(0,s.jsxs)("p",{className:"text-sm text-[var(--ink)]",children:[(0,s.jsxs)("strong",{children:[i("dashboard:billing.addingLanguages","Adding"),":"]})," ",e.map(e=>{var a;return null==(a=el.find(a=>a.code===e))?void 0:a.name}).join(", ")]}),(0,s.jsx)("p",{className:"text-xs text-[var(--soft)] mt-1",children:i("dashboard:billing.languageProrationNote","Added to your existing subscription at €{{price}} per language per billing period, settled pro rata on your next invoice.",{price:eu})})]}),!n&&t.length>0&&(0,s.jsxs)("div",{className:"p-3 rounded-lg hard-flat bg-[rgba(23,20,15,0.04)]",children:[(0,s.jsxs)("p",{className:"text-sm text-[var(--ink)]",children:[(0,s.jsxs)("strong",{children:[i("dashboard:billing.removingLanguages","Removing"),":"]})," ",t.map(e=>{var a;return(null==(a=el.find(a=>a.code===e))?void 0:a.name)||e}
1).join(", ")]}),(0,s.jsx)("p",{className:"text-xs text-[var(--soft)] mt-1",children:i("dashboard:billing.languageRemovalNote","Your subscription drops by €{{price}} per language per billing period, credited pro rata on your next invoice.",{price:eu})})]}),(0,s.jsxs)("div",{className:"flex items-center gap-3",children:[(0,s.jsx)("button",{onClick:async()=>{ec(!0);try{let e=await fetch("/api/backlinks/language-addon",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({languages:ei})}),a=await e.json();e.ok&&a.ok?(M({type:"success",text:i("dashboard:billing.languagesUpdated","Languages updated! Changes apply to new articles.")}),setTimeout(()=>window.location.reload(),2e3)):(M({type:"error",text:a.error||"Failed to update languages"}),ec(!1))}catch(e){M({type:"error",text:i("dashboard:billing.languageUpdateFailed","Failed to update languages")}),ec(!1)}},disabled:eo||!a.stripe_customer_id,className:"px-4 py-2 fd font-bold rounded-full transition-colors disabled:opacity-50 flex items-center gap-2 pop ".concat(n?"bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white":"bg-[var(--ink)] text-[var(--gold)] hover:opacity-90"),children:eo?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.A,{className:"w-4 h-4 animate-spin"}),i("dashboard:billing.processing","Processing...")]}):n?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(d.A,{className:"w-4 h-4"}),i("dashboard:billing.addLanguagesCheckout","Add Languages (€{{total}}/{{cycle}})",{total:eu*e.length,cycle:"yearly"===$?"yr":"semi_annual"===$?"6mo":"mo"})]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(j.A,{className:"w-4 h-4"}),i("dashboard:billing.removeLanguages","Remove Languages")]})}),(0,s.jsx)("button",{onClick:()=>ed(er),className:"px-4 py-2 text-[var(--soft)] hover:text-[var(--ink)] transition-colors",children:i("dashboard:billing.cancel","Cancel")})]}
1),!a.stripe_customer_id&&(0,s.jsx)("p",{className:"text-xs text-[var(--orange)]",children:i("dashboard:billing.stripeRequiredForLanguages","Complete your billing setup to add languages.")})]})})()]}),a.stripe_customer_id&&(0,s.jsx)(S,{sectionId:"billing-info",activeSectionId:t,defaultOpen:!1,title:i("dashboard:billing.billingInfoTitle","Billing details"),subtitle:i("dashboard:billing.billingInfoSubtitle","Factuur-email, BTW-nummer en betaalmethode"),icon:N.A,badge:(null==B?void 0:B.email)?(0,s.jsx)("span",{className:"text-xs text-[var(--soft2)] truncate max-w-[200px]",children:B.email}):null,children:(0,s.jsxs)("div",{className:"space-y-5",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("h4",{className:"text-sm font-semibold text-[var(--ink)] mb-2 flex items-center gap-2",children:[(0,s.jsx)(N.A,{className:"w-4 h-4 text-[var(--soft2)]"}),i("dashboard:billing.invoiceEmail","Invoice Email")]}),R?(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-xs font-medium text-[var(--soft)] mb-1",children:i("dashboard:billing.invoiceEmailLabel","Email address for invoices")}),(0,s.jsx)("input",{type:"email",value:z.email,onChange:e=>G({...z,email:e.target.value}),className:"w-full px-3 py-2 border-2 border-[var(--ink)] rounded-xl bg-white text-[var(--ink)] focus:outline-none focus:ring-2 focus:ring-[var(--orange)] text-sm",placeholder:"[email protected]"})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("label",{className:"block text-xs font-medium text-[var(--soft)] mb-1",children:[i("dashboard:billing.companyName","Company / Name")," ",(0,s.jsxs)("span",{className:"text-[var(--soft2)]",children:["(",i("dashboard:billing.onInvoice","on invoice"),")"]})]}),(0,s.jsx)("input",{type:"text",value:z.name,onChange:e=>G({...z,name:e.target.value}),className:"w-full px-3 py-2 border-2 border-[var(--ink)] rounded-xl bg-white text-[var(--ink)] focus:outline-none focus:ring-2 focus:ring-[var(--orange)] text-sm",placeholder:"Company name"})]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)("label",{className:"block text-xs font-medium text-[var(--soft)] mb-1",children:[i("dashboard:billing.vatNumber","VAT Number")," ",(0,s.jsx)("span",{className:"text-[var(--soft2)]",children:"(optional)"})]}),(0,s.jsx)("input",{type:"text",value:z.tax_id,onChange:e=>G({...z,tax_id:e.target.value}),className:"w-full px-3 py-2 border-2 border-[var(--ink)] rounded-xl bg-white text-[var(--ink)] focus:outline-none focus:ring-2 focus:ring-[var(--orange)] text-sm",placeholder:"NL123456789B01"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 pt-1",children:[(0,s.jsx)("button",{onClick:Y,disabled:J,className:"px-3 py-1.5 fd pop bg-[var(--orange)] hover:bg-[var(--orange-deep)] text-white rounded-full font-bold transition-colors disabled:opacity-50 flex items-center gap-2 text-sm",children:J?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(m.A,{className:"w-3.5 h-3.5 animate-spin"}),i("dashboard:billing.saving","Saving...")]}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(j.A,{className:"w-3.5 h-3.5"}),i("dashboard:billing.save","Save")]})}),(0,s.jsx)("button",{onClick:()=>{U(!1),B&&G(B)},className:"px-3 py-1.5 text-[var(--soft)] hover:text-[var(--ink)] transition-colors text-sm",children:i("dashboard:billing.cancel","Cancel")})]})]}):(null==B?void 0:B.email)?(0,s.jsxs)("div",{className:"flex items-center justify-between p-3 rounded-lg hard-flat bg-[rgba(23,20,15,0.04)]",children:[(0,s.jsxs)("div",{className:"text-[var(--soft)] text-sm min-w-0 flex-1",children:[(0,s.jsx)("p",{className:"font-medium text-[var(--ink)] truncate",children:B.email}),B.name&&(0,s.jsx)("p",{className:"text-xs text-[var(--soft2)] truncate",children:B.name}),B.tax_id&&(0,s.jsxs)("p",{className:"text-xs text-[var(--soft2)]",children:[i("dashboard:billing.vat","VAT"),": ",B.tax_id]})]}),(0,s.jsx)("button",{onClick:()=>U(!0),className:"text-xs text-[var(--orange)] hover:text-[var(--orange-deep)] font-bold ml-3 flex-shrink-0",children:i("dashboard:billing.edit","Edit")})]}):(0,s.jsxs)("div",{className:"flex items-center justify-between p-3 rounded-lg hard-flat bg-[rgba(23,20,15,0.04)]",children:[(0,s.jsx)("p",{className:"text-sm text-[var(--soft2)]",children:i("dashboard:billing.noInvoiceEmail","No invoice email set")}),(0,s.jsx)("button",{onClick:()=>U(!0),className:"text-xs text-[var(--orange)] hover:text-[var(--orange-deep)] font-bold",children:i("dashboard:billing.setup","Setup")})]})]}),a.stripe_customer_id&&(0,s.jsxs)("div",{className:"pt-3 border-t border-[var(--line)]",children:[(0,s.jsxs)("h4",{className:"text-sm font-semibold text-[var(--ink)] mb-1 flex items-center gap-2",children:[(0,s.jsx)(d.A,{className:"w-4 h-4 text-[var(--soft2)]"}),i("dashboard:billing.paymentMethodTitle","Payment method & billing history")]}),(0,s.jsx)("p",{className:"text-xs text-[var(--soft2)] mb-3",children:i("dashboard:billing.paymentMethodDesc","Update your card, view invoices, and manage billing info via Stripe.")}),(0,s.jsxs)("button",{onClick:W,disabled:I,className:"px-3 py-1.5 fd pop bg-[var(--ink)] text-[var(--gold)] rounded-full font-bold hover:opacity-90 transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center gap-2 text-sm",children:[I?(0,s.jsx)(m.A,{className:"w-3.5 h-3.5 animate-spin"}):(0,s.jsx)(b.A,{className:"w-3.5 h-3.5"}),I?i("dashboard:billing.opening","Opening..."):i("dashboard:billing.openPortal","Manage billing")]})]})]})}),a.stripe_customer_id&&(0,s.jsx)(S,{sectionId:"invoices",activeSectionId:t,defaultOpen:!1,title:i("dashboard:billing.invoiceHistory","Invoice History"),subtitle:i("dashboard:billing.invoiceHistorySubtitle","Download facturen of bekijk ze in Stripe"),icon:y.A,badge:D.length>0?(0,s.jsx)("span",{className:"text-xs font-semibold bg-[var(--gold-soft)] text-[var(--ink)] border-2 border-[var(--ink)] px-2.5 py-1 rounded-full",children:D.length}):null,children:(0,s.jsxs)("div",{className:"hard-flat overflow-hidden",children:[F&&(0,s.jsx)("p",{className:"p-4 text-sm text-[var(--soft2)]",children:i("dashboard:billing.invoicesLoading","Facturen laden...")}),!F&&0===D.length&&(0,s.jsx)("p",{className:"p-4 text-sm text-[var(--soft2)]",children:i("dashboard:billing.noInvoices","Er staan nog geen facturen klaar. Zodra je eerste factuur is aangemaakt, vind je hem hier.")}),(0,s.jsx)("div",{className:"divide-y divide-[var(--line)]",children:D.map(e=>(0,s.jsxs)("div",{className:"flex items-center justify-between p-3 hover:bg-[var(--gold-soft)] transition-colors",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 min-w-0",children:[(0,s.jsx)("div",{className:"p-2 bg-white rounded-lg border border-[var(--line)] flex-shrink-0",children:(0,s.jsx)(y.A,{className:"w-4 h-4 text-[var(--soft)]"})}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("p",{className:"font-medium text-[var(--ink)] text-sm truncate",children:e.number||"Invoice ".concat(e.id.slice(-8))}),(0,s.jsxs)("p",{className:"text-xs text-[var(--soft2)]",children:[new Date(e.date).toLocaleDateString("en-GB",{day:"numeric",month:"short",year:"numeric"}),e.period_start&&e.period_end&&(0,s.jsxs)("span",{className:"text-[var(--soft2)] ml-2",children:["• ",new Date(e.period_start).toLocaleDateString("en-GB",{day:"numeric",month:"short"})," - ",new Date(e.period_end).toLocaleDateString("en-GB",{day:"numeric",month:"short"})]})]})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-3 flex-shrink-0",children:[(0,s.jsx)("span",{className:"px-2 py-0.5 rounded-full text-[10px] font-medium border-2 ".concat("paid"===e.status?"bg-green-100 text-green-700 border-green-600":"open"===e.status?"bg-yellow-100 text-yellow-700 border-yellow-600":(e.status,"bg-[rgba(23,20,15,0.04)] text-[var(--soft)] border-[var(--line)]")),children:"paid"===e.status?i("dashboard:billing.paid","Paid"):"open"===e.status?i("dashboard:billing.open","Open"):e.status}),(0,s.jsxs)("span",{className:"fd font-extrabold text-[var(--ink)] text-sm",children:["€",e.amount.toFixed(2)]}),e.pdf_url&&(0,s.jsx)("a",{href:e.pdf_url,target:"_blank",rel:"noopener noreferrer",className:"p-1.5 hover:bg-[rgba(23,20,15,0.08)] rounded-lg transition-colors",title:i("dashboard:billing.downloadPdf","Download PDF"),children:(0,s.jsx)(w.A,{className:"w-3.5 h-3.5 text-[var(--soft)]"})}),e.hosted_url&&(0,s.jsx)("a",{href:e.hosted_url,target:"_blank",rel:"noopener noreferrer",className:"p-1.5 hover:bg-[rgba(23,20,15,0.08)] rounded-lg transition-colors",title:i("dashboard:billing.viewInvoice","View Invoice"),children:(0,s.jsx)(b.A,{className:"w-3.5 h-3.5 text-[var(--soft)]"})})]})]},e.id))})]})})]})}}
1,77991:(e,a,t)=>{t.d(a,{A:()=>s});let s=(0,t(96417).A)("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]])}}]);

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.