1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="0137674e-a033-40cf-b954-a000b4f5969f",e._sentryDebugIdIdentifier="sentry-dbid-0137674e-a033-40cf-b954-a000b4f5969f")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3275],{38846:function(e,t,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/user/[uid]/billing/[billingAccountId]/manage-credit",function(){return a(7508)}])},44965:function(e,t,a){"use strict";a.d(t,{Z:function(){return C}});var r=a(94184),n=a.n(r),i=a(67294),l=a(75647),s=a(85893);let c=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i="div",...c}=e;return r=(0,l.vE)(r,"card-body"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});c.displayName="CardBody";let o=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i="div",...c}=e;return r=(0,l.vE)(r,"card-footer"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});o.displayName="CardFooter";var d=a(80595);let u=i.forwardRef((e,t)=>{let{bsPrefix:a,className:r,as:c="div",...o}=e,u=(0,l.vE)(a,"card-header"),f=(0,i.useMemo)(()=>({cardHeaderBsPrefix:u}),[u]);return(0,s.jsx)(d.Z.Provider,{value:f,children:(0,s.jsx)(c,{ref:t,...o,className:n()(r,u)})})});u.displayName="CardHeader";let f=i.forwardRef((e,t)=>{let{bsPrefix:a,className:r,variant:i,as:c="img",...o}=e,d=(0,l.vE)(a,"card-img");return(0,s.jsx)(c,{ref:t,className:n()(i?"".concat(d,"-").concat(i):d,r),...o})});f.displayName="CardImg";let g=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i="div",...c}=e;return r=(0,l.vE)(r,"card-img-overlay"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});g.displayName="CardImgOverlay";let m=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i="a",...c}=e;return r=(0,l.vE)(r,"card-link"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});m.displayName="CardLink";var v=a(12);let h=(0,v.Z)("h6"),p=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i=h,...c}=e;return r=(0,l.vE)(r,"card-subtitle"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});p.displayName="CardSubtitle";let y=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i="p",...c}=e;return r=(0,l.vE)(r,"card-text"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});y.displayName="CardText";let b=(0,v.Z)("h5"),x=i.forwardRef((e,t)=>{let{className:a,bsPrefix:r,as:i=b,...c}=e;return r=(0,l.vE)(r,"card-title"),(0,s.jsx)(i,{ref:t,className:n()(a,r),...c})});x.displayName="CardTitle";let w=i.forwardRef((e,t)=>{let{bsPrefix:a,className:r,bg:i,text:o,border:d,body:u=!1,children:f,as:g="div",...m}=e,v=(0,l.vE)(a,"card");return(0,s.jsx)(g,{ref:t,...m,className:n()(r,v,i&&"bg-".concat(i),o&&"text-".concat(o),d&&"border-".concat(d)),children:u?(0,s.jsx)(c,{children:f}):f})});w.displayName="Card";var C=Object.assign(w,{Img:f,Title:x,Subtitle:p,Body:c,Link:m,Text:y,Header:u,Footer:o,ImgOverlay:g})},80595:function(e,t,a){"use strict";let r=a(67294).createContext(null);r.displayName="CardHeaderContext",t.Z=r},30435:function(e,t,a){"use strict";var r=a(94184),n=a.n(r),i=a(67294),l=a(75647),s=a(85893);let c=i.forwardRef((e,t)=>{let{bsPrefix:a,fluid:r=!1,as:i="div",className:c,...o}=e,d=(0,l.vE)(a,"container");return(0,s.jsx)(i,{ref:t,...o,className:n()(c,r?"".concat(d).concat("string"==typeof r?"-".concat(r):"-fluid"):d)})});c.displayName="Container",t.Z=c},35289:function(e,t,a){"use strict";var r=a(94184),n=a.n(r),i=a(67294),l=a(75647),s=a(39989),c=a(85893);function o(e,t){let{min:a,now:r,max:i,label:l,visuallyHidden:s,striped:o,animated:d,className:u,style:f,variant:g,bsPrefix:m,...v}=e;return(0,c.jsx)("div",{ref:t,...v,role:"progressbar",className:n()(u,"".concat(m,"-bar"),{["bg-".concat(g)]:g,["".concat(m,"-bar-animated")]:d,["".concat(m,"-bar-striped")]:d||o}),style:{width:"".concat(Math.round((r-a)/(i-a)*1e5)/1e3,"%"),...f},"aria-valuenow":r,"aria-valuemin":a,"aria-valuemax":i,children:s?(0,c.jsx)("span",{className:"visually-hidden",children:l}):l})}let d=i.forwardRef((e,t)=>{let{isChild:a=!1,...r}=e,d={min:0,max:100,animated:!1,visuallyHidden:!1,striped:!1,...r};if(d.bsPrefix=(0,l.vE)(d.bsPrefix,"progress"),a)return o(d,t);let{min:u,now:f,max:g,label:m,visuallyHidden:v,striped:h,animated:p,bsPrefix:y,variant:b,className:x,children:w,...C}=d;return(0,c.jsx)("div",{ref:t,...C,className:n()(x,y),children:w?(0,s.UI)(w,e=>(0,i.cloneElement)(e,{isChild:!0})):o({min:u,now:f,max:g,label:m,visuallyHidden:v,striped:h,animated:p,bsPrefix:y,variant:b},t)})});d.displayName="ProgressBar",t.Z=d},73723:function(e,t,a){"use strict";a.d(t,{Z:function(){return o}});var r=a(94184),n=a.n(r),i=a(67294),l=a(75647),s=a(85893);let c=i.forwardRef((e,t)=>
1{let{as:a="div",bsPrefix:r,className:i,direction:c,gap:o,...d}=e;r=(0,l.vE)(r,"horizontal"===c?"hstack":"vstack");let u=(0,l.pi)(),f=(0,l.zG)();return(0,s.jsx)(a,{...d,ref:t,className:n()(i,r,...function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.Hz,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:l.cs,r=[];return Object.entries(e).forEach(e=>{let[n,i]=e;null!=i&&("object"==typeof i?t.forEach(e=>{let t=i[e];null!=t&&r.push("".concat(n).concat(e!==a?"-".concat(e):"","-").concat(t))}):r.push("".concat(n,"-").concat(i)))}),r}({gap:o},u,f))})});c.displayName="Stack";var o=c},7508:function(e,t,a){"use strict";a.r(t);var r=a(85893),n=a(67294),i=a(11163),l=a(30435),s=a(77063),c=a(91400),o=a(6574),d=a(71318),u=a(54492),f=a(5292);t.default=()=>{let e=(0,i.useRouter)(),{uid:t,billingAccountId:a}=e.query,[g,m]=(0,n.useState)(""),[v,h]=(0,n.useState)(""),[p,y]=(0,n.useState)(null),[b,x]=(0,n.useState)(null),{user:w,permissions:C,refreshBillingState:E}=(0,f.Eu)();(0,n.useEffect)(()=>{null===w&&e.push("/login"),void 0===C||(null==C?void 0:C.admin)||e.push("/")},[null==w?void 0:w.uid,null==C?void 0:C.admin]);let N=async r=>{r.preventDefault(),y(null),x(null);let n=parseFloat(g);if(isNaN(n)||!a||!t){y("Please enter a valid amount and make sure the account details are correct.");return}try{if(await (0,u.DU)({billingAccountId:a,value:n,description:v}),localStorage.setItem("usageBillingUpdatedAt",Date.now().toString()),"undefined"!=typeof BroadcastChannel){let e=new BroadcastChannel("billing-updates");e.postMessage({type:"billing-updated"}),e.close()}await E({force:!0,silent:!0}),x("Credit successfully added."),setTimeout(()=>{e.push("/admin/user/".concat(t,"/billing/").concat(a,"/transactions"))},1e3)}catch(e){y("Failed to add credit. Please try again.")}};return(0,r.jsxs)(d.Z,{"data-sentry-element":"AppLayout","data-sentry-component":"ManageCreditPage","data-sentry-source-file":"manage-credit.tsx",children:[(0,r.jsx)(d.Z.Header,{title:"Manage Billing Account Credit","data-sentry-element":"unknown","data-sentry-source-file":"manage-credit.tsx"}),(0,r.jsx)(d.Z.Body,{"data-sentry-element":"unknown","data-sentry-source-file":"manage-credit.tsx",children:(0,r.jsxs)(l.Z,{className:"my-4","data-sentry-element":"Container","data-sentry-source-file":"manage-credit.tsx",children:[(0,r.jsx)("h1",{className:"me-md-1",children:"Manage Credit for Billing Account"}),t&&"string"==typeof t&&(0,r.jsxs)(s.Z,{onSubmit:N,children:[(0,r.jsxs)(s.Z.Group,{controlId:"amount",className:"mb-3",children:[(0,r.jsx)(s.Z.Label,{children:"Amount (Positive to add, Negative to subtract)"}),(0,r.jsx)(s.Z.Control,{type:"number",placeholder:"Enter amount",value:g,onChange:e=>m(e.target.value),required:!0})]}),(0,r.jsxs)(s.Z.Group,{controlId:"description",className:"mb-3",children:[(0,r.jsx)(s.Z.Label,{children:"Description"}),(0,r.jsx)(s.Z.Control,{type:"text",placeholder:"Enter description",value:v,onChange:e=>h(e.target.value)})]}),(0,r.jsx)(c.Z,{variant:"primary",type:"submit",children:"Submit"})]}),p&&(0,r.jsx)(o.Z,{variant:"danger",className:"mt-3",children:p}),b&&(0,r.jsx)(o.Z,{variant:"success",className:"mt-3",children:b})]})})]})}},54492:function(e,t,a){"use strict";a.d(t,{DG:function(){return m},DU:function(){return v},Qu:function(){return g},UC:function(){return f},getTotalCredits:function(){return u}});var r=a(39424),n=a(37895),i=a(67561),l=a(39828),s=a(51010);function c(e,t,a){let r=Error((null==t?void 0:t.message)||a);return r.name="FirebaseCallableClientError",Object.assign(r,{code:null==t?void 0:t.code,callableName:e,cause:t}),r}function o(e){let t=String((null==e?void 0:e.code)||"").toLowerCase(),a=String((null==e?void 0:e.message)||"").toLowerCase();return t.includes("unauthenticated")||a.includes("must be authenticated")}function d(e,t,a){var n;if(o(t))return;let i=String((null==t?void 0:t.code)||(null==t?void 0:null===(n=t.cause)||void 0===n?void 0:n.code)||"");r.Tb(t,{tags:{callable_name:e,failure_code:i},extra:{workspace_id:a||"",error_message:String((null==t?void 0:t.message)||"")}})}function u(e){let t="billing-getTotalCredits",a=(0,i.httpsCallable)(i.functions,t,{timeout:i.FIREBASE_CALLABLE_LONG_TIMEOUT_MS});return(0,s.q)(()=>a(e?{workspaceId:e}:{}).then(e=>{let t=e.data;
1return{credits:t.credits,overageAmount:t.overageAmount}})).catch(a=>{throw n.n({category:"auth.callable",message:"Billing callable failed",level:"warning",data:{callable_name:t,error_code:String((null==a?void 0:a.code)||""),error_message:String((null==a?void 0:a.message)||"")}}),o(a)?console.warn("Billing credits callable skipped until auth is ready",a):(console.error("Error getting total credits",a),d(t,a,e)),c(t,a,"Error getting total credits")})}function f(e){return Math.ceil(e/60)}let g=async e=>{try{let t=(0,l.hJ)(i.firestore,"BillingAccountUsers"),a=(0,l.IO)(t,(0,l.ar)("uid","==",e)),r=(await (0,l.PL)(a)).docs.map(e=>e.data().billingAccountId);if(0===r.length)return[];let n=(0,l.hJ)(i.firestore,"BillingAccounts"),s=r.map(async e=>{let t=(0,l.JU)(n,e),a=await (0,l.QT)(t);if(a.exists())return{id:a.id,...a.data()}});return(await Promise.all(s)).filter(e=>void 0!==e)}catch(e){throw console.error("Error fetching billing accounts:",e),e}};function m(){let e="billing-adminGetOverageSummary";return(0,i.httpsCallable)(i.functions,e,{timeout:i.FIREBASE_CALLABLE_LONG_TIMEOUT_MS})({}).then(e=>e.data).catch(t=>{throw d(e,t),c(e,t,"Error fetching overage summary")})}async function v(e){try{return await (0,l.i3)(i.firestore,async t=>{let a=(0,l.JU)((0,l.hJ)(i.firestore,"BillingTransactions")),r={billingAccountId:e.billingAccountId,value:Math.ceil(e.value),description:e.description,dateCreated:(0,l.Bt)()};t.set(a,r);let n=(0,l.JU)(i.firestore,"BillingAccounts",e.billingAccountId);return t.update(n,{balance:(0,l.nP)(e.value),lastUpdated:(0,l.Bt)()}),{...r,id:a.id,dateCreated:new Date}})}catch(e){throw console.error("Error in creating billing transaction",e),Error("Error in creating billing transaction")}}},99318:function(e,t,a){"use strict";var r=a(67294);function n(){return(n=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e}).apply(this,arguments)}var i=["cdnSuffix","cdnUrl","countryCode","style","svg"];t.Z=function(e){var t=e.cdnSuffix,a=e.cdnUrl,l=e.countryCode,s=e.style,c=e.svg,o=function(e,t){if(null==e)return{};var a,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)>=0||(n[a]=e[a]);return n}(e,i);if("string"!=typeof l)return null;if(void 0!==c&&c){var d=""+(void 0===a?"https://cdn.jsdelivr.net/gh/lipis/flag-icons/flags/4x3/":a)+l.toLowerCase()+"."+(void 0===t?"svg":t);return(0,r.createElement)("img",Object.assign({},o,{src:d,style:n({display:"inline-block",width:"1em",height:"1em",verticalAlign:"middle"},s)}))}var u=l.toUpperCase().replace(/./g,function(e){return String.fromCodePoint(e.charCodeAt(0)+127397)});return(0,r.createElement)("span",Object.assign({role:"img"},o,{style:n({display:"inline-block",fontSize:"1em",lineHeight:"1em",verticalAlign:"middle"},s)}),u)}}},function(e){e.O(0,[3996,622,5675,8646,4770,7303,698,6650,6174,2203,8350,4830,4416,9199,2295,1792,6269,1045,7909,8995,9318,454,2888,9774,179],function(){return e(e.s=38846)}),_N_E=e.O()}]); 2//# sourceMappingURL=manage-credit-9f68b5eaf5234f13.js.map
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.