1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1311,8119],{334:(e,t,n)=>{n.d(t,{fH:()=>r,m8:()=>i});let r=.05;function i(e){let{subtotal:t,platformFeePercent:n,absorbFees:r,platformFeeIsOverride:i=!1}=e;if(t<=0)return{ticketPrice:Math.max(0,t),platformFee:0,processingFee:0,salesTax:0,total:Math.max(0,t)};if(r)return{ticketPrice:t,platformFee:0,processingFee:0,salesTax:0,total:t};let s=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=Math.round(e*t);return n?r:Math.min(e,Math.max(r,100))}(t,n,i),a=Math.round((t+s+50+30)/.966);return{ticketPrice:t,platformFee:s,processingFee:Math.round(.034*a)+30+50,salesTax:0,total:a}}},31311:(e,t,n)=>{n.d(t,{KI:()=>o,gv:()=>u,inviteRegistrationService:()=>c});var r=n(42423),i=n(12353);let s={guest:"Guest",vip:"VIP",staff:"Staff",talent:"Talent",talentGuest:"Talent Guest",press:"Press",influencer:"Influencer",industry:"Industry",sponsor:"Sponsor",vendor:"Vendor",friendsFamily:"Friends & Family"},a={doorPerson:"Check-in Attendant",guestList:"Guest Services",manager:"Event Manager",host:"Host",custom:"Custom Role"};function o(e){return s[e]||"Guest"}function u(e){return a[e]||e}class l{static getInstance(){return l.instance||(l.instance=new l),l.instance}async checkForPendingInvite(e,t){try{let{db:n,collection:i,query:s,where:a,getDocs:o,limit:u}=await (0,r.g)(),l=s(i(n,"event_invites"),a("eventID","==",e),a("toUserID","==",t),a("status","==","pending"),u(1)),c=await o(l);if(c.empty)return null;let d=c.docs[0],f=this.parseInviteDocument(d);if(!f)return null;return f.staffRole,f}catch(t){return(0,i.V9)("check-pending-invite",t,{stage:"check-pending-invite",eventId:e}),null}}async consumeInvite(e,t,n){let{db:i,doc:s,writeBatch:a,serverTimestamp:o}=await (0,r.g)(),u=a(i),l=s(i,"event_invites",e);u.update(l,{status:"accepted",acceptedAt:o(),resultingTicketId:n});let c=s(i,"users",t,"pendingInvites",e);u.delete(c),await u.commit()}async prepareForRegistration(e,t){let n=await this.checkForPendingInvite(e,t);return n&&n.staffRole,n}reportMalformedInviteDocument(e,t,n){let r=e.join("+"),s={stage:"parse-invite-document",missing:r};"string"==typeof t&&t&&(s.inviteId=t),"string"==typeof n&&n&&(s.eventId=n),(0,i.V9)("check-pending-invite-malformed",Error("Invite document is missing required fields: ".concat(r)),s)}parseInviteDocument(e){var t,n,r,i,s,a,o,u;let l,c=e.data();if(!c)return this.reportMalformedInviteDocument(["data"],null==e?void 0:e.id,void 0),null;let d=e.id,f=c.eventID,m=c.fromUserID;if(!f||!m){console.warn("â ï¸ Invalid invite document: missing required fields");let e=[];return f||e.push("eventID"),m||e.push("fromUserID"),this.reportMalformedInviteDocument(e,d,f),null}let v=c.senderName||"Unknown",g=c.eventName,p="function"==typeof(null==(t=c.eventDate)?void 0:t.toDate)?c.eventDate.toDate():void 0,I=c.category||"guest",h=c.staffRole;if(c.staffPermissions&&"object"==typeof c.staffPermissions){let e=c.staffPermissions;l={scanner:null!=(n=e.scanner)&&n,guestListCheckIn:null!=(r=e.guestListCheckIn)&&r,guestListEdit:null!=(i=e.guestListEdit)&&i,staffManagement:null!=(s=e.staffManagement)&&s,networkController:null!=(a=e.networkController)&&a,refunds:null!=(o=e.refunds)&&o,analytics:null!=(u=e.analytics)&&u}}return{inviteId:d,eventId:f,fromUserId:m,senderName:v,category:I,staffRole:h,staffPermissions:l,eventName:g,eventDate:p}}constructor(){}}let c=l.getInstance()},96010:(e,t,n)=>{n.d(t,{$g:()=>s,Ov:()=>r});var r=function(e){return e.FIXED="fixed",e.PWYW="pay_what_you_want",e.TIERED="tiered",e.DYNAMIC="dynamic",e}({});let i=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});function s(e){return i.format(e/100)}}}]);
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.