PageSourceSearch

https://console.thundercompute.com/_next/static/chunks/1534.428a9ca786da210a.js

js thundercompute.com collected 2026-10-03 21:45:33 UTC 13,094 bytes, 1 lines download raw bytes

1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{};e._sentryModuleMetadata=e._sentryModuleMetadata||{},e._sentryModuleMetadata[(new e.Error).stack]=function(e){for(var a=1;a<arguments.length;a++){var t=arguments[a];if(null!=t)for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])}return e}({},e._sentryModuleMetadata[(new e.Error).stack],{"_sentryBundlerPluginAppKey:thunder-console":!0});var a=(new e.Error).stack;a&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[a]="24a509e9-9ecf-430e-af61-858d5227b95b",e._sentryDebugIdIdentifier="sentry-dbid-24a509e9-9ecf-430e-af61-858d5227b95b")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1534],{61534:(e,a,t)=>{t.r(a),t.d(a,{BillingDetailsDialog:()=>T});var n=t(95155),l=t(12115),i=t(12890),s=t(3065),r=t(99157),o=t(36141),d=t(87564),c=t(52753),u=t(33385),p=t(9327),m=t(74940),x=t(67108),f=t(58117),_=t(22454),v=t(99776),h=t(80549),b=t(34202),g=t(66987),y=t(20808);let N=Object.entries({ad_nrt:"Andorra - NRT",ae_trn:"United Arab Emirates - TRN",al_tin:"Albania - TIN",am_tin:"Armenia - TIN",ao_tin:"Angola - TIN",ar_cuit:"Argentina - CUIT",au_abn:"Australia - ABN",au_arn:"Australia - ARN",ba_tin:"Bosnia and Herzegovina - TIN",bb_tin:"Barbados - TIN",bg_uic:"Bulgaria - UIC",bh_vat:"Bahrain - VAT",bo_tin:"Bolivia - TIN",br_cnpj:"Brazil - CNPJ",br_cpf:"Brazil - CPF",bs_tin:"Bahamas - TIN",by_tin:"Belarus - TIN",ca_bn:"Canada - BN",ca_gst_hst:"Canada - GST/HST",ca_pst_bc:"Canada - PST (BC)",ca_pst_mb:"Canada - PST (MB)",ca_pst_sk:"Canada - PST (SK)",ca_qst:"Canada - QST",cd_nif:"DR Congo - NIF",ch_uid:"Switzerland - UID",ch_vat:"Switzerland - VAT",cl_tin:"Chile - TIN",cn_tin:"China - TIN",co_nit:"Colombia - NIT",cr_tin:"Costa Rica - TIN",de_stn:"Germany - StN",do_rcn:"Dominican Republic - RCN",ec_ruc:"Ecuador - RUC",eg_tin:"Egypt - TIN",es_cif:"Spain - CIF",eu_oss_vat:"EU - OSS VAT",eu_vat:"EU - VAT",gb_vat:"United Kingdom - VAT",ge_vat:"Georgia - VAT",gn_nif:"Guinea - NIF",hk_br:"Hong Kong - BR",hr_oib:"Croatia - OIB",hu_tin:"Hungary - TIN",id_npwp:"Indonesia - NPWP",il_vat:"Israel - VAT",in_gst:"India - GST",is_vat:"Iceland - VAT",jp_cn:"Japan - CN",jp_rn:"Japan - RN",jp_trn:"Japan - TRN",ke_pin:"Kenya - PIN",kh_tin:"Cambodia - TIN",kr_brn:"South Korea - BRN",kz_bin:"Kazakhstan - BIN",li_uid:"Liechtenstein - UID",li_vat:"Liechtenstein - VAT",ma_vat:"Morocco - VAT",md_vat:"Moldova - VAT",me_pib:"Montenegro - PIB",mk_vat:"North Macedonia - VAT",mr_nif:"Mauritania - NIF",mx_rfc:"Mexico - RFC",my_frp:"Malaysia - FRP",my_itn:"Malaysia - ITN",my_sst:"Malaysia - SST",ng_tin:"Nigeria - TIN",no_vat:"Norway - VAT",no_voec:"Norway - VOEC",np_pan:"Nepal - PAN",nz_gst:"New Zealand - GST",om_vat:"Oman - VAT",pe_ruc:"Peru - RUC",ph_tin:"Philippines - TIN",ro_tin:"Romania - TIN",rs_pib:"Serbia - PIB",ru_inn:"Russia - INN",ru_kpp:"Russia - KPP",sa_vat:"Saudi Arabia - VAT",sg_gst:"Singapore - GST",sg_uen:"Singapore - UEN",si_tin:"Slovenia - TIN",sn_ninea:"Senegal - NINEA",sr_fin:"Suriname - FIN",sv_nit:"El Salvador - NIT",th_vat:"Thailand - VAT",tj_tin:"Tajikistan - TIN",tr_tin:"Turkey - TIN",tw_vat:"Taiwan - VAT",tz_vat:"Tanzania - VAT",ua_vat:"Ukraine - VAT",ug_tin:"Uganda - TIN",us_ein:"United States - EIN",uy_ruc:"Uruguay - RUC",uz_tin:"Uzbekistan - TIN",uz_vat:"Uzbekistan - VAT",ve_rif:"Venezuela - RIF",vn_tin:"Vietnam - TIN",za_vat:"South Africa - VAT",zm_tin:"Zambia - TIN",zw_tin:"Zimbabwe - TIN"}).map(e=>{let[a,t]=e;return{type:a,label:t}}).sort((e,a)=>e.label.localeCompare(a.label));function T(e){let{open:a,onOpenChange:t}=e,{resolvedTheme:s}=(0,x.D)(),{stripePromise:o,stripeFailed:d,retryStripe:c}=(0,p.zV)(),[u,f]=(0,l.useState)(!1),_=(0,l.useMemo)(()=>({mode:"setup",currency:"usd",appearance:(0,p.CK)("light"===s?"light":"dark")}),[s]);return(0,n.jsx)(r.Dialog,{open:a,onOpenChange:u?void 0:t,children:(0,n.jsx)(r.Dialog.Content,{className:"!gap-0 !items-stretch p-0 overflow-hidden flex flex-col min-h-[200px] max-h-[calc(100vh-4rem)] w-full max-w-[520px] min-w-[min(calc(100vw-1rem),520px)]",children:d?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(r.Dialog.Title,{className:"sr-only",children:"Billing details"}),(0,n.jsx)(m.a,{onRetry:c,className:"p-6"})]}):(0,n.jsx)(i.S8,{stripe:o,options:_,children:(0,n.jsx)(I,{onClose:()=>t(!1),onSavingChange:f})})})})}function I(e){var a,t,p;let{onClose:m,onSavingChange:x}=e,{data:T,isLoading:I,error:j}=function(e){let a=(0,f.Y)();return(0,_.I)({queryKey:y.l.billing.detailsFull(),queryFn:async()=>
1(0,g.yS)(a).get("/v1/billing/saved-details",b.b6),enabled:e,staleTime:6e4,retry:!1,refetchOnWindowFocus:!1})}(!0),C=function(){let e=(0,f.Y)(),a=(0,v.jE)();return(0,h.n)({mutationFn:async a=>(0,g.yS)(e).put("/v1/billing/details",a,b.hz),onSuccess:async e=>{let{partial_errors:t,...n}=e;a.setQueryData(y.l.billing.detailsFull(),n),await a.invalidateQueries({queryKey:y.l.billing.savedDetails()})}})}(),w=(0,i.HH)();(0,l.useEffect)(function(){null==x||x(C.isPending)},[C.isPending,x]);let[S,A]=(0,l.useState)(null),[k,D]=(0,l.useState)([]),[B,V]=(0,l.useState)([]),[R,M]=(0,l.useState)(null!=(t=null==(a=N[0])?void 0:a.type)?t:""),[P,F]=(0,l.useState)(""),U=(0,l.useMemo)(()=>{var e;return[...(null!=(e=null==T?void 0:T.tax_ids)?e:[]).filter(e=>e.id&&!B.includes(e.id)),...k.map(e=>({id:e.tempId,type:e.type,value:e.value}))]},[null==T?void 0:T.tax_ids,k,B]),z=(0,l.useMemo)(()=>{var e,a,t,n,l,i,s,r,o,d,c,u,p;if(T)return{name:null!=(s=T.name)?s:"",address:{line1:null!=(r=null==(e=T.address)?void 0:e.line1)?r:"",line2:null!=(o=null==(a=T.address)?void 0:a.line2)?o:"",city:null!=(d=null==(t=T.address)?void 0:t.city)?d:"",state:null!=(c=null==(n=T.address)?void 0:n.state)?c:"",postal_code:null!=(u=null==(l=T.address)?void 0:l.postal_code)?u:"",country:null!=(p=null==(i=T.address)?void 0:i.country)?p:"US"}}},[T]),E=(0,l.useCallback)(e=>{var a,t,n,l,i,s,r;A({name:null!=(a=e.value.name)?a:"",address:{line1:null!=(t=e.value.address.line1)?t:"",line2:null!=(n=e.value.address.line2)?n:"",city:null!=(l=e.value.address.city)?l:"",state:null!=(i=e.value.address.state)?i:"",postal_code:null!=(s=e.value.address.postal_code)?s:"",country:null!=(r=e.value.address.country)?r:""},complete:e.complete})},[]),K=(null!=(p=null==T?void 0:T.tax_ids)?p:[]).filter(e=>e.id&&!B.includes(e.id)).length+k.length>=5,W=(0,l.useCallback)(()=>{var e;let a=P.trim();if(!R||!a)return;if(K)return void(0,u.cW)({variant:"neutral",icon:"FeatherInfo",title:"Tax ID limit reached",description:"Stripe allows up to ".concat(5," tax IDs per customer. Remove one to add another.")});let t=a.toUpperCase(),n=(e,a)=>e===R&&(null!=a?a:"").trim().toUpperCase()===t,l=(null!=(e=null==T?void 0:T.tax_ids)?e:[]).filter(e=>e.id&&!B.includes(e.id)).some(e=>n(e.type,e.value)),i=k.some(e=>n(e.type,e.value));if(l||i)return void(0,u.cW)({variant:"neutral",icon:"FeatherInfo",title:"Tax ID already added",description:"That tax ID is already on file or staged."});D(e=>[...e,{tempId:"pending_".concat(Date.now()),type:R,value:a}]),F("")},[K,R,P,null==T?void 0:T.tax_ids,B,k]),O=(0,l.useCallback)(e=>{if(!e.id)return;let a=e.id;if(a.startsWith("pending_"))return void D(e=>e.filter(e=>e.tempId!==a));V(e=>[...e,a])},[]),G=(0,l.useMemo)(()=>{if(!S||!z)return!1;if(S.name!==z.name)return!0;let e=S.address,a=z.address;return e.line1!==a.line1||e.line2!==a.line2||e.city!==a.city||e.state!==a.state||e.postal_code!==a.postal_code||e.country!==a.country},[S,z]),H=k.length>0||B.length>0,J=G&&null!==S&&S.complete||H,q=async()=>{if(!w)return;if(G){let{error:e}=await w.submit();if(e)return}let e={};G&&S&&(e.name=S.name,e.address=S.address),k.length>0&&(e.tax_ids_add=k.map(e=>({type:e.type,value:e.value}))),B.length>0&&(e.tax_ids_remove=B);try{var a,t,n,l,i;let s=null!=(a=(await C.mutateAsync(e)).partial_errors)?a:[];if(0===s.length){(0,u.cW)({variant:"success",icon:"FeatherCheckCircle",title:"Billing details updated"}),m();return}let r=new Set(s.filter(e=>"add"===e.op).map(e=>{var a,t;return"".concat(null!=(a=e.type)?a:"","|").concat(null!=(t=e.value)?t:"")}));D(e=>e.filter(e=>r.has("".concat(e.type,"|").concat(e.value))));let o=new Set(s.filter(e=>"remove"===e.op).map(e=>{var a;return null!=(a=e.id)?a:""}));for(let e of(V(e=>e.filter(e=>o.has(e))),s)){let a="add"===e.op&&null!=(l=null!=(n=null==(t=N.find(a=>a.type===e.type))?void 0:t.label)?n:e.type)?l:"tax ID",s="add"===e.op?"".concat(a," (").concat(null!=(i=e.value)?i:"",")"):a;(0,u.cW)({variant:"error",icon:"FeatherAlertTriangle",title:"Could not ".concat(e.op," ").concat(s),description:e.message})}}catch(e){(0,u.JA)("Could not save",e,"Check tax ID formats and try again.")}};return j?(0,n.jsxs)("div",{className:"flex flex-1 flex-col gap-3 p-6",children:[(0,n.jsx)(r.Dialog.Title,{className:"sr-only",children:"Billing details"}),(0,n.jsx)("span",{className:"text-body font-body text-error-600",children:"Could not load your billing details."}),(0,n.jsx)(o.Button,{variant:"neutral-tertiary",onClick:m,children:"Close"})]}):(0,n.jsxs)("form",{onSubmit:e=>{e.preventDefault(),q()},className:"flex flex-1 flex-col overflow-hidden",children:[(0,n.jsxs)("div",{className:"flex-1 overflow-y-auto p-6 flex flex-col gap-5",children:[(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsx)(r.Dialog.Title,{className:"text-heading-3 font-heading-3 text-default-font",children:"Billing details"}),(0,n.jsx)("span",{className:"text-caption font-caption text-subtext-color",children:"Name, address, and tax IDs used on your invoices."})]}),(0,n.jsxs)("section",{className:"flex flex-col gap-2",children:[(0,n.jsx)("span",{className:"text-body-bold font-body-bold text-default-font",children:"Name and address"}),I?(0,n.jsxs)("div",{className:"flex flex-col gap-4 animate-pulse",children:[[{labelW:"w-14"},{labelW:"w-20"},{labelW:"w-24"},{labelW:"w-24"}].map((e,a)=>{let{labelW:t}=e;return(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsx)("div",{className:"h-3 ".concat(t," rounded bg-neutral-200")}),(0,n.jsx)("div",{className:"h-8 w-full rounded-2xl bg-neutral-200"})]},a)}),(0,n.jsx)("div",{className:"grid grid-cols-3 gap-3",children:["w-10","w-12","w-14"].map((e,a)=>(0,n.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,n.jsx)("div",{className:"h-3 ".concat(e," rounded bg-neutral-200")}),(0,n.jsx)("div",{className:"h-8 w-full rounded-2xl bg-neutral-200"})]},a))})]}):(0,n.jsx)(i.H1,{options:{mode:"billing",defaultValues:z,fields:{ph
1one:"never"},autocomplete:{mode:"automatic"}},onChange:E})]}),(0,n.jsxs)("section",{className:"flex flex-col gap-3",children:[(0,n.jsx)("div",{className:"flex items-center justify-between",children:(0,n.jsx)("span",{className:"text-body-bold font-body-bold text-default-font",children:"Tax IDs"})}),U.length>0&&(0,n.jsx)("ul",{className:"flex flex-col gap-2",children:U.map(e=>{var a,t;let l=null!=(t=null==(a=N.find(a=>a.type===e.type))?void 0:a.label)?t:e.type;return(0,n.jsxs)("li",{className:"flex items-center justify-between gap-3 rounded-md border border-neutral-border px-3 py-2",children:[(0,n.jsxs)("div",{className:"flex min-w-0 flex-col",children:[(0,n.jsx)("span",{className:"text-caption-bold font-caption-bold text-default-font",children:l}),(0,n.jsx)("span",{className:"text-caption font-caption text-subtext-color truncate",children:e.value})]}),(0,n.jsxs)("button",{type:"button",onClick:()=>O(e),className:"inline-flex shrink-0 items-center gap-1 rounded-md px-2 py-1 text-caption font-caption text-error-600 hover:bg-error-50","aria-label":"Remove ".concat(l),children:[(0,n.jsx)(s.In,{name:"FeatherTrash2",className:"h-3.5 w-3.5"}),"Remove"]})]},e.id)})}),(0,n.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,n.jsx)("span",{className:"text-caption-bold font-caption-bold text-subtext-color",children:"Add tax ID"}),(0,n.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row",children:[(0,n.jsx)(c.Select,{value:R,onValueChange:M,placeholder:"Select type",className:"sm:w-44 shrink-0",disabled:K,children:N.map(e=>(0,n.jsx)(c.Select.Item,{value:e.type,children:e.label},e.type))}),(0,n.jsx)("input",{type:"text",value:P,onChange:e=>F(e.target.value),placeholder:"e.g. DE123456789",disabled:K,className:"min-w-0 flex-1 h-8 rounded-md border border-neutral-border bg-default-background px-3 text-body font-body text-default-font outline-none focus:border-brand-600 disabled:opacity-60 disabled:cursor-not-allowed"}),(0,n.jsx)(o.Button,{type:"button",variant:"neutral-secondary",onClick:W,disabled:!P.trim()||K,children:"Add"})]}),K&&(0,n.jsxs)("span",{className:"text-caption font-caption text-subtext-color",children:["Maximum of ",5," tax IDs reached. Remove one to add another."]})]})]})]}),(0,n.jsxs)("div",{className:"shrink-0 px-6 py-4 border-t border-neutral-border flex justify-end gap-2",children:[!C.isPending&&(0,n.jsx)(o.Button,{type:"button",variant:"neutral-tertiary",onClick:m,children:"Cancel"}),(0,n.jsx)(d.ButtonCustom,{variant:"brand-primary",type:"submit",icon:"FeatherCheck",loading:C.isPending,disabled:!J||C.isPending,children:"Save changes"})]})]})}}}]);

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.