@roomstay/core 0.1.75-0 → 0.1.75-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/node.js CHANGED
@@ -1 +1 @@
1
- (()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};let n,i,o,r,a;e.r(t),e.d(t,{ADDON_PER_NIGHT_TYPES:()=>jo,AddGiftCardSchema:()=>_o,AdyenEventCode:()=>Oo,AdyenResultCode:()=>Co,BaseGiftCardSchema:()=>yo,CancelGiftCardTransactionSchema:()=>Fo,CompleteGiftCardTransactionSchema:()=>xo,CreatePaymentSessionSchema:()=>bo,DATE_FORMAT:()=>R,EAddonPricingType:()=>Uo,EAdminCompanyUserRole:()=>p,EBookingFlow:()=>i,EBookingPaymentMethod:()=>o,EBookingStatus:()=>n,ECompanyProvider:()=>l,EDistanceUnitType:()=>y,EFeeType:()=>O,EGiftCardPaymentProvider:()=>Io,EGiftCardPaymentStatus:()=>Ro,EGiftCardPaymentType:()=>zo,EGiftCardTransactionType:()=>So,EGuaranteePolicyDepositMode:()=>w,EGuarantyPolicyPrepaymentType:()=>E,EHotelCardProcessor:()=>r,EHotelPriceModel:()=>f,EHotelStateFieldConfiguration:()=>h,EHotelWeekdayStartsOn:()=>m,EIntegration:()=>g,ELogCategory:()=>Mo,ELogSeverity:()=>Lo,ELogType:()=>Go,EPlanpayBookingStatus:()=>a,EPromoCodeDiscountType:()=>A,ERMSAuthSyncHistoryStatus:()=>z,ERMSDiscountType:()=>_,ERMSSyncStrategy:()=>P,ERoomstayEventSource:()=>T,ERoomstayImageSize:()=>b,ETransactionStatus:()=>$o,EditGiftCardSchema:()=>Po,GuestProfile:()=>d,HttpMethod:()=>C,IAuxiliaryFilterType:()=>v,IMaintenanceStatusService:()=>k,InternationalAddressSchema:()=>vo,ItineraryResponse:()=>c,PCIBookingCardProcessorTypes:()=>s,Package:()=>N,PassthroughPaymentDataSchema:()=>wo,PaymentProcessorDataSchema:()=>ko,PurchaseGiftCardSchema:()=>Eo,RedeemGiftCardSchema:()=>No,RefreshGiftCardTokenSchema:()=>Zo,RefundGiftCardSchema:()=>Ao,RegisterGiftCardAdminSchema:()=>Do,Reservation:()=>u,ReservedPackage:()=>I,RoundingType:()=>Qo,TotalCalculator:()=>sr,ValidateGiftCardSchema:()=>To,calculateFeeAmount:()=>Yo,calculateTotalForMemberBooking:()=>Ho,getFeeOptionValidity:()=>ir,getFilteredBookingAddonFees:()=>nr,getFilteredBookingFees:()=>er,getFilteredBookingRateFees:()=>tr,maxString:()=>go,nameof:()=>or,preprocessDate:()=>lo,preprocessNumber:()=>uo,requireEmail:()=>fo,requireFutureDate:()=>mo,requirePositiveAmount:()=>ho,requireString:()=>po,resizeRoomstayImageUrl:()=>ar,roundMoney:()=>qo,subset:()=>rr,uppercaseString:()=>cr,validateFormWithZod:()=>co}),function(e){e.Pending="Pending",e.Processing="Processing",e.Committed="Committed",e.Cancelled="Cancelled",e.Reverted="Reverted"}(n||(n={})),function(e){e.Default="Default",e.PreCheckoutPencil="PreCheckoutPencil",e.PostCheckoutPencil="PostCheckoutPencil"}(i||(i={})),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard",e.TrueRewards="TrueRewards"}(o||(o={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave",e.Mastercard="Mastercard",e.Stripe="Stripe",e.PayPal="PayPal"}(r||(r={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(a||(a={}));const s=[];class c{constructor(){this.roomstayId=void 0,this.itineraryNumber=void 0,this.total=void 0,this.hotelFrontendId=void 0,this.reservations=[],this.payment=void 0,this.feesSummary=void 0,this.itemisedFees=void 0,this.warnings=void 0}}class u{constructor(){this.reservationNumber=void 0,this.roomType=void 0,this.roomCode=void 0,this.rate=void 0,this.rateCode=void 0,this.images=void 0,this.guaranteePolicy=void 0,this.cancellationPolicy=void 0,this.checkInDate=void 0,this.checkOutDate=void 0,this.nights={},this.guestCounts={adults:1,children:0},this.guest=new d,this.paymentCard=void 0,this.paymentMethod=void 0,this.total=void 0,this.status=void 0,this.isCancelable=void 0,this.addons=void 0,this.comments=void 0,this.specialRequests=void 0,this.promoCode=void 0,this.guaranteePolicyLongDescription=void 0,this.cancellationPolicyLongDescription=void 0,this.itemisedFees=void 0}}class d{constructor(){this.title=void 0,this.firstName=void 0,this.middleName=void 0,this.lastName=void 0,this.nameSuffix=void 0,this.phone=void 0,this.email=void 0,this.address={},this.marketingOptIn=void 0,this.country=void 0}}let l,p,f,h,m,g,v,y,_,P,z,b,k,w,E,A,T;!function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay",e.OHIP="OHIP"}(l||(l={})),function(e){e.SuperAdmin="SuperAdmin",e.Admin="Admin",e.Limited="Limited"}(p||(p={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(f||(f={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(h||(h={})),function(e){e.Monday="monday",e.Sunday="sunday"}(m||(m={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce",e.RAC="RAC"}(g||(g={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(v||(v={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(_||(_={})),function(e){e.Hotel="hotel",e.HotelImages="hotelImages",e.Cancellation="cancellation",e.Room="room",e.Rates="rates",e.OneGuaranteePolicy="oneGuaranteePolicy",e.RoomRates="roomRates",e.RoomImages="roomImages",e.BookingSources="booking-sources",e.Areas="areas",e.Dwellings="dwellings",e.AreaDwellings="areaDwellings",e.ConvertDwellingConfigToAuxInput="convertDwellingConfigToAuxInput",e.Discounts="discounts",e.PropertyDiscounts="propertyDiscounts",e.RoomDiscounts="roomDiscounts",e.PropertySundries="propertySundries",e.PropertyFees="propertyFees",e.PropertyCards="property-cards",e.Countries="countries",e.Addons="addons",e.Requirements="requirements",e.RoomAddons="room-addons",e.ClientFacingPromoSync="clientFacingPromoSync",e.ClientFacingRoomSync="clientFacingRoomSync",e.ClientFacingRateSync="clientFacingRateSync",e.NewRateFetch="newRateFetch"}(P||(P={})),function(e){e.Success="success",e.Failure="failure",e.New="new",e.Queued="queued",e.InProgress="in_progress",e.RequireResume="require_resume"}(z||(z={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(b||(b={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(k||(k={}));class N{constructor(){this.ratePlanCode=void 0,this.name=void 0,this.description=void 0,this.inclusive=void 0,this.image=void 0,this.url=void 0,this.pricingType=void 0,this.quantity=void 0,this.category=void 0,this.cancelPenalty=void 0,this.guaranteeDescription=void 0,this.availability={}}}class I extends N{constructor(...e){super(...e),this.code=void 0,this.price=void 0,this.fees=void 0,this.itemisedFees=void 0,this.adultQuantity=void 0,this.childQuantity=void 0,this.adultPrice=void 0,this.childPrice=void 0,this.startDate=void 0,this.startTime=void 0,this.hideDatePicker=!1,this.hideQuantity=!1,this.order=void 0,this.discount=void 0,this.total=void 0}}!function(e){e.Full="Full",e.Percentage="Percentage",e.FirstNight="FirstNight",e.None="None"}(w||(w={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(E||(E={})),function(e){e.FlatPercent="flatPercent",e.FlatQuantity="flatQuantity",e.FlatQuantityPerStay="flatQuantityPerStay"}(A||(A={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(T||(T={}));const R="DD/MM/YYYY";let C,O;function S(e,t,n){function i(n,i){var o;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(o=n._zod).traits??(o.traits=new Set),n._zod.traits.add(e),t(n,i);for(const e in a.prototype)e in n||Object.defineProperty(n,e,{value:a.prototype[e].bind(n)});n._zod.constr=a,n._zod.def=i}const o=n?.Parent??Object;class r extends o{}function a(e){var t;const o=n?.Parent?new r:this;i(o,e),(t=o._zod).deferred??(t.deferred=[]);for(const e of o._zod.deferred)e();return o}return Object.defineProperty(r,"name",{value:e}),Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}!function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(C||(C={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(O||(O={})),Object.freeze({status:"aborted"}),Symbol("zod_brand");class $ extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class x extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const F={};function Z(e){return e&&Object.assign(F,e),F}const D=/^[cC][^\s-]{8,}$/,U=/^[0-9a-z]+$/,j=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,L=/^[0-9a-vA-V]{20}$/,M=/^[A-Za-z0-9]{27}$/,G=/^[a-zA-Z0-9_-]{21}$/,H=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,B=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,V=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Q=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,q=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Y=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,W=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,J=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,K=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,X=/^[A-Za-z0-9_-]*$/,ee=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,te=/^\+(?:[0-9]){6,14}[0-9]$/,ne="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ie=new RegExp(`^${ne}$`);function oe(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const re=/^\d+$/,ae=/^-?\d+(?:\.\d+)?/i,se=/true|false/i,ce=/^[^A-Z]*$/,ue=/^[^a-z]*$/;function de(e,t){return"bigint"==typeof t?t.toString():t}function le(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function pe(e){return null==e}function fe(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const he=Symbol("evaluating");function me(e,t,n){let i;Object.defineProperty(e,t,{get(){if(i!==he)return void 0===i&&(i=he,i=n()),i},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ge(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ve(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function ye(e){return JSON.stringify(e)}const _e="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Pe(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const ze=le((()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}}));function be(e){if(!1===Pe(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==Pe(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function ke(e){return be(e)?{...e}:e}const we=new Set(["string","number","symbol"]);function Ee(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ae(e,t,n){const i=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(i._zod.parent=e),i}function Te(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}new Set(["string","number","bigint","boolean","symbol","undefined"]);const Ne={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Ie(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function Re(e,t){return t.map((t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t}))}function Ce(e){return"string"==typeof e?e:e?.message}function Oe(e,t,n){const i={...e,path:e.path??[]};if(!e.message){const o=Ce(e.inst?._zod.def?.error?.(e))??Ce(t?.error?.(e))??Ce(n.customError?.(e))??Ce(n.localeError?.(e))??"Invalid input";i.message=o}return delete i.inst,delete i.continue,t?.reportInput||delete i.input,i}function Se(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function $e(...e){const[t,n,i]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:i}:{...t}}const xe=S("$ZodCheck",((e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])})),Fe={number:"number",bigint:"bigint",object:"date"},Ze=S("$ZodCheckLessThan",((e,t)=>{xe.init(e,t);const n=Fe[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value<=t.value:i.value<t.value)||i.issues.push({origin:n,code:"too_big",maximum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),De=S("$ZodCheckGreaterThan",((e,t)=>{xe.init(e,t);const n=Fe[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value>=t.value:i.value>t.value)||i.issues.push({origin:n,code:"too_small",minimum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),Ue=S("$ZodCheckMultipleOf",((e,t)=>{xe.init(e,t),e._zod.onattach.push((e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)})),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,i=t.toString();let o=(i.split(".")[1]||"").length;if(0===o&&/\d?e-\d?/.test(i)){const e=i.match(/\d?e-(\d?)/);e?.[1]&&(o=Number.parseInt(e[1]))}const r=n>o?n:o;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}})),je=S("$ZodCheckNumberFormat",((e,t)=>{xe.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),i=n?"int":"number",[o,r]=Ne[t.format];e._zod.onattach.push((e=>{const i=e._zod.bag;i.format=t.format,i.minimum=o,i.maximum=r,n&&(i.pattern=re)})),e._zod.check=a=>{const s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:i,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}))}s<o&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),s>r&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inst:e})}})),Le=S("$ZodCheckMaxLength",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)})),e._zod.check=n=>{const i=n.value;if(i.length<=t.maximum)return;const o=Se(i);n.issues.push({origin:o,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Me=S("$ZodCheckMinLength",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)})),e._zod.check=n=>{const i=n.value;if(i.length>=t.minimum)return;const o=Se(i);n.issues.push({origin:o,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Ge=S("$ZodCheckLengthEquals",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length})),e._zod.check=n=>{const i=n.value,o=i.length;if(o===t.length)return;const r=Se(i),a=o>t.length;n.issues.push({origin:r,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}})),He=S("$ZodCheckStringFormat",((e,t)=>{var n,i;xe.init(e,t),e._zod.onattach.push((e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))})),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(i=e._zod).check??(i.check=()=>{})})),Be=S("$ZodCheckRegex",((e,t)=>{He.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}})),Ve=S("$ZodCheckLowerCase",((e,t)=>{t.pattern??(t.pattern=ce),He.init(e,t)})),Qe=S("$ZodCheckUpperCase",((e,t)=>{t.pattern??(t.pattern=ue),He.init(e,t)})),qe=S("$ZodCheckIncludes",((e,t)=>{xe.init(e,t);const n=Ee(t.includes),i=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=i,e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(i)})),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}})),Ye=S("$ZodCheckStartsWith",((e,t)=>{xe.init(e,t);const n=new RegExp(`^${Ee(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}})),We=S("$ZodCheckEndsWith",((e,t)=>{xe.init(e,t);const n=new RegExp(`.*${Ee(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}})),Je=S("$ZodCheckOverwrite",((e,t)=>{xe.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}));class Ke{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter((e=>e)),n=Math.min(...t.map((e=>e.length-e.trimStart().length))),i=t.map((e=>e.slice(n))).map((e=>" ".repeat(2*this.indent)+e));for(const e of i)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map((e=>` ${e}`))].join("\n"))}}const Xe=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,de,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},et=S("$ZodError",Xe),tt=S("$ZodError",Xe,{Parent:Error}),nt=e=>(t,n,i,o)=>{const r=i?Object.assign(i,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise)throw new $;if(a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Oe(e,r,Z()))));throw _e(t,o?.callee),t}return a.value},it=e=>async(t,n,i,o)=>{const r=i?Object.assign(i,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise&&(a=await a),a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Oe(e,r,Z()))));throw _e(t,o?.callee),t}return a.value},ot=e=>(t,n,i)=>{const o=i?{...i,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},o);if(r instanceof Promise)throw new $;return r.issues.length?{success:!1,error:new(e??et)(r.issues.map((e=>Oe(e,o,Z()))))}:{success:!0,data:r.value}},rt=ot(tt),at=e=>async(t,n,i)=>{const o=i?Object.assign(i,{async:!0}):{async:!0};let r=t._zod.run({value:n,issues:[]},o);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map((e=>Oe(e,o,Z()))))}:{success:!0,data:r.value}},st=at(tt),ct=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return nt(e)(t,n,o)},ut=e=>(t,n,i)=>nt(e)(t,n,i),dt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return it(e)(t,n,o)},lt=e=>async(t,n,i)=>it(e)(t,n,i),pt=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ot(e)(t,n,o)},ft=e=>(t,n,i)=>ot(e)(t,n,i),ht=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return at(e)(t,n,o)},mt=e=>async(t,n,i)=>at(e)(t,n,i),gt={major:4,minor:1,patch:5},vt=S("$ZodType",((e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=gt;const i=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&i.unshift(e);for(const t of i)for(const n of t._zod.onattach)n(e);if(0===i.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push((()=>{e._zod.run=e._zod.parse}));else{const t=(e,t,n)=>{let i,o=Ie(e);for(const r of t){if(r._zod.def.when){if(!r._zod.def.when(e))continue}else if(o)continue;const t=e.issues.length,a=r._zod.check(e);if(a instanceof Promise&&!1===n?.async)throw new $;if(i||a instanceof Promise)i=(i??Promise.resolve()).then((async()=>{await a,e.issues.length!==t&&(o||(o=Ie(e,t)))}));else{if(e.issues.length===t)continue;o||(o=Ie(e,t))}}return i?i.then((()=>e)):e},n=(n,o,r)=>{if(Ie(n))return n.aborted=!0,n;const a=t(o,i,r);if(a instanceof Promise){if(!1===r.async)throw new $;return a.then((t=>e._zod.parse(t,r)))}return e._zod.parse(a,r)};e._zod.run=(o,r)=>{if(r.skipChecks)return e._zod.parse(o,r);if("backward"===r.direction){const t=e._zod.parse({value:o.value,issues:[]},{...r,skipChecks:!0});return t instanceof Promise?t.then((e=>n(e,o,r))):n(t,o,r)}const a=e._zod.parse(o,r);if(a instanceof Promise){if(!1===r.async)throw new $;return a.then((e=>t(e,i,r)))}return t(a,i,r)}}e["~standard"]={validate:t=>{try{const n=rt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return st(e,t).then((e=>e.success?{value:e.data}:{issues:e.error?.issues}))}},vendor:"zod",version:1}})),yt=S("$ZodString",((e,t)=>{var n;vt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}})),_t=S("$ZodStringFormat",((e,t)=>{He.init(e,t),yt.init(e,t)})),Pt=S("$ZodGUID",((e,t)=>{t.pattern??(t.pattern=B),_t.init(e,t)})),zt=S("$ZodUUID",((e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=V(e))}else t.pattern??(t.pattern=V());_t.init(e,t)})),bt=S("$ZodEmail",((e,t)=>{t.pattern??(t.pattern=Q),_t.init(e,t)})),kt=S("$ZodURL",((e,t)=>{_t.init(e,t),e._zod.check=n=>{try{const i=n.value.trim(),o=new URL(i);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:ee.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=o.href:n.value=i)}catch(i){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}})),wt=S("$ZodEmoji",((e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),_t.init(e,t)})),Et=S("$ZodNanoID",((e,t)=>{t.pattern??(t.pattern=G),_t.init(e,t)})),At=S("$ZodCUID",((e,t)=>{t.pattern??(t.pattern=D),_t.init(e,t)})),Tt=S("$ZodCUID2",((e,t)=>{t.pattern??(t.pattern=U),_t.init(e,t)})),Nt=S("$ZodULID",((e,t)=>{t.pattern??(t.pattern=j),_t.init(e,t)})),It=S("$ZodXID",((e,t)=>{t.pattern??(t.pattern=L),_t.init(e,t)})),Rt=S("$ZodKSUID",((e,t)=>{t.pattern??(t.pattern=M),_t.init(e,t)})),Ct=S("$ZodISODateTime",((e,t)=>{t.pattern??(t.pattern=function(e){const t=oe({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const i=`${t}(?:${n.join("|")})`;return new RegExp(`^${ne}T(?:${i})$`)}(t)),_t.init(e,t)})),Ot=S("$ZodISODate",((e,t)=>{t.pattern??(t.pattern=ie),_t.init(e,t)})),St=S("$ZodISOTime",((e,t)=>{t.pattern??(t.pattern=new RegExp(`^${oe(t)}$`)),_t.init(e,t)})),$t=S("$ZodISODuration",((e,t)=>{t.pattern??(t.pattern=H),_t.init(e,t)})),xt=S("$ZodIPv4",((e,t)=>{t.pattern??(t.pattern=q),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv4"}))})),Ft=S("$ZodIPv6",((e,t)=>{t.pattern??(t.pattern=Y),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv6"})),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}})),Zt=S("$ZodCIDRv4",((e,t)=>{t.pattern??(t.pattern=W),_t.init(e,t)})),Dt=S("$ZodCIDRv6",((e,t)=>{t.pattern??(t.pattern=J),_t.init(e,t),e._zod.check=n=>{const[i,o]=n.value.split("/");try{if(!o)throw new Error;const e=Number(o);if(`${e}`!==o)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}}));function Ut(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const jt=S("$ZodBase64",((e,t)=>{t.pattern??(t.pattern=K),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64"})),e._zod.check=n=>{Ut(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}})),Lt=S("$ZodBase64URL",((e,t)=>{t.pattern??(t.pattern=X),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64url"})),e._zod.check=n=>{(function(e){if(!X.test(e))return!1;const t=e.replace(/[-_]/g,(e=>"-"===e?"+":"/"));return Ut(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}})),Mt=S("$ZodE164",((e,t)=>{t.pattern??(t.pattern=te),_t.init(e,t)})),Gt=S("$ZodJWT",((e,t)=>{_t.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[i]=n;if(!i)return!1;const o=JSON.parse(atob(i));return!("typ"in o&&"JWT"!==o?.typ||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}})),Ht=S("$ZodNumber",((e,t)=>{vt.init(e,t),e._zod.pattern=e._zod.bag.pattern??ae,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const o=n.value;if("number"==typeof o&&!Number.isNaN(o)&&Number.isFinite(o))return n;const r="number"==typeof o?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...r?{received:r}:{}}),n}})),Bt=S("$ZodNumber",((e,t)=>{je.init(e,t),Ht.init(e,t)})),Vt=S("$ZodBoolean",((e,t)=>{vt.init(e,t),e._zod.pattern=se,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const o=n.value;return"boolean"==typeof o||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}})),Qt=S("$ZodUnknown",((e,t)=>{vt.init(e,t),e._zod.parse=e=>e})),qt=S("$ZodNever",((e,t)=>{vt.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)})),Yt=S("$ZodDate",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const o=n.value,r=o instanceof Date;return r&&!Number.isNaN(o.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:o,...r?{received:"Invalid Date"}:{},inst:e}),n}}));function Wt(e,t,n){e.issues.length&&t.issues.push(...Re(n,e.issues)),t.value[n]=e.value}const Jt=S("$ZodArray",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const r=[];for(let e=0;e<o.length;e++){const a=o[e],s=t.element._zod.run({value:a,issues:[]},i);s instanceof Promise?r.push(s.then((t=>Wt(t,n,e)))):Wt(s,n,e)}return r.length?Promise.all(r).then((()=>n)):n}}));function Kt(e,t,n,i){e.issues.length&&t.issues.push(...Re(n,e.issues)),void 0===e.value?n in i&&(t.value[n]=void 0):t.value[n]=e.value}function Xt(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape[n]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(i=e.shape,Object.keys(i).filter((e=>"optional"===i[e]._zod.optin&&"optional"===i[e]._zod.optout)));var i;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function en(e,t,n,i,o,r){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type;for(const o of Object.keys(t)){if(s.has(o))continue;if("never"===u){a.push(o);continue}const r=c.run({value:t[o],issues:[]},i);r instanceof Promise?e.push(r.then((e=>Kt(e,n,o,t)))):Kt(r,n,o,t)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:r}),e.length?Promise.all(e).then((()=>n)):n}const tn=S("$ZodObject",((e,t)=>{vt.init(e,t);const n=le((()=>Xt(t)));me(e._zod,"propValues",(()=>{const e=t.shape,n={};for(const t in e){const i=e[t]._zod;if(i.values){n[t]??(n[t]=new Set);for(const e of i.values)n[t].add(e)}}return n}));const i=Pe,o=t.catchall;let r;e._zod.parse=(t,a)=>{r??(r=n.value);const s=t.value;if(!i(s))return t.issues.push({expected:"object",code:"invalid_type",input:s,inst:e}),t;t.value={};const c=[],u=r.shape;for(const e of r.keys){const n=u[e]._zod.run({value:s[e],issues:[]},a);n instanceof Promise?c.push(n.then((n=>Kt(n,t,e,s)))):Kt(n,t,e,s)}return o?en(c,s,t,a,n.value,e):c.length?Promise.all(c).then((()=>t)):t}})),nn=S("$ZodObjectJIT",((e,t)=>{tn.init(e,t);const n=e._zod.parse,i=le((()=>Xt(t)));let o;const r=Pe,a=!F.jitless,s=a&&ze.value,c=t.catchall;let u;e._zod.parse=(d,l)=>{u??(u=i.value);const p=d.value;return r(p)?a&&s&&!1===l?.async&&!0!==l.jitless?(o||(o=(e=>{const t=new Ke(["shape","payload","ctx"]),n=i.value,o=e=>{const t=ye(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const r=Object.create(null);let a=0;for(const e of n.keys)r[e]="key_"+a++;t.write("const newResult = {}");for(const e of n.keys){const n=r[e],i=ye(e);t.write(`const ${n} = ${o(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${i}, ...iss.path] : [${i}]\n })));\n }\n \n if (${n}.value === undefined) {\n if (${i} in input) {\n newResult[${i}] = undefined;\n }\n } else {\n newResult[${i}] = ${n}.value;\n }\n `)}t.write("payload.value = newResult;"),t.write("return payload;");const s=t.compile();return(t,n)=>s(e,t,n)})(t.shape)),d=o(d,l),c?en([],p,d,l,u,e):d):n(d,l):(d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d)}}));function on(e,t,n,i){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const o=e.filter((e=>!Ie(e)));return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((e=>e.issues.map((e=>Oe(e,i,Z())))))}),t)}const rn=S("$ZodUnion",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.options.some((e=>"optional"===e._zod.optin))?"optional":void 0)),me(e._zod,"optout",(()=>t.options.some((e=>"optional"===e._zod.optout))?"optional":void 0)),me(e._zod,"values",(()=>{if(t.options.every((e=>e._zod.values)))return new Set(t.options.flatMap((e=>Array.from(e._zod.values))))})),me(e._zod,"pattern",(()=>{if(t.options.every((e=>e._zod.pattern))){const e=t.options.map((e=>e._zod.pattern));return new RegExp(`^(${e.map((e=>fe(e.source))).join("|")})$`)}}));const n=1===t.options.length,i=t.options[0]._zod.run;e._zod.parse=(o,r)=>{if(n)return i(o,r);let a=!1;const s=[];for(const e of t.options){const t=e._zod.run({value:o.value,issues:[]},r);if(t instanceof Promise)s.push(t),a=!0;else{if(0===t.issues.length)return t;s.push(t)}}return a?Promise.all(s).then((t=>on(t,o,e,r))):on(s,o,e,r)}})),an=S("$ZodIntersection",((e,t)=>{vt.init(e,t),e._zod.parse=(e,n)=>{const i=e.value,o=t.left._zod.run({value:i,issues:[]},n),r=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||r instanceof Promise?Promise.all([o,r]).then((([t,n])=>cn(e,t,n))):cn(e,o,r)}}));function sn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(be(e)&&be(t)){const n=Object.keys(t),i=Object.keys(e).filter((e=>-1!==n.indexOf(e))),o={...e,...t};for(const n of i){const i=sn(e[n],t[n]);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};o[n]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let i=0;i<e.length;i++){const o=sn(e[i],t[i]);if(!o.valid)return{valid:!1,mergeErrorPath:[i,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function cn(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Ie(e))return e;const i=sn(t.value,n.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return e.value=i.data,e}const un=S("$ZodEnum",((e,t)=>{vt.init(e,t);const n=function(e){const t=Object.values(e).filter((e=>"number"==typeof e));return Object.entries(e).filter((([e,n])=>-1===t.indexOf(+e))).map((([e,t])=>t))}(t.entries),i=new Set(n);e._zod.values=i,e._zod.pattern=new RegExp(`^(${n.filter((e=>we.has(typeof e))).map((e=>"string"==typeof e?Ee(e):e.toString())).join("|")})$`),e._zod.parse=(t,o)=>{const r=t.value;return i.has(r)||t.issues.push({code:"invalid_value",values:n,input:r,inst:e}),t}})),dn=S("$ZodTransform",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new x(e.constructor.name);const o=t.transform(n.value,n);if(i.async)return(o instanceof Promise?o:Promise.resolve(o)).then((e=>(n.value=e,n)));if(o instanceof Promise)throw new $;return n.value=o,n}}));function ln(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const pn=S("$ZodOptional",((e,t)=>{vt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",me(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0)),me(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${fe(e.source)})?$`):void 0})),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((t=>ln(t,e.value))):ln(i,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}})),fn=S("$ZodNullable",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),me(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${fe(e.source)}|null)$`):void 0})),me(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0)),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)})),hn=S("$ZodDefault",((e,t)=>{vt.init(e,t),e._zod.optin="optional",me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((e=>mn(e,t))):mn(i,t)}}));function mn(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const gn=S("$ZodPrefault",((e,t)=>{vt.init(e,t),e._zod.optin="optional",me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))})),vn=S("$ZodNonOptional",((e,t)=>{vt.init(e,t),me(e._zod,"values",(()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter((e=>void 0!==e))):void 0})),e._zod.parse=(n,i)=>{const o=t.innerType._zod.run(n,i);return o instanceof Promise?o.then((t=>yn(t,e))):yn(o,e)}}));function yn(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const _n=S("$ZodCatch",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((i=>(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Oe(e,n,Z())))},input:e.value}),e.issues=[]),e))):(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Oe(e,n,Z())))},input:e.value}),e.issues=[]),e)}})),Pn=S("$ZodPipe",((e,t)=>{vt.init(e,t),me(e._zod,"values",(()=>t.in._zod.values)),me(e._zod,"optin",(()=>t.in._zod.optin)),me(e._zod,"optout",(()=>t.out._zod.optout)),me(e._zod,"propValues",(()=>t.in._zod.propValues)),e._zod.parse=(e,n)=>{if("backward"===n.direction){const i=t.out._zod.run(e,n);return i instanceof Promise?i.then((e=>zn(e,t.in,n))):zn(i,t.in,n)}const i=t.in._zod.run(e,n);return i instanceof Promise?i.then((e=>zn(e,t.out,n))):zn(i,t.out,n)}}));function zn(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const bn=S("$ZodReadonly",((e,t)=>{vt.init(e,t),me(e._zod,"propValues",(()=>t.innerType._zod.propValues)),me(e._zod,"values",(()=>t.innerType._zod.values)),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(kn):kn(i)}}));function kn(e){return e.value=Object.freeze(e.value),e}const wn=S("$ZodCustom",((e,t)=>{xe.init(e,t),vt.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const i=n.value,o=t.fn(i);if(o instanceof Promise)return o.then((t=>En(t,n,i,e)));En(o,n,i,e)}}));function En(e,t,n,i){if(!e){const e={code:"custom",input:n,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(e.params=i._zod.def.params),t.issues.push($e(e))}}Symbol("ZodOutput"),Symbol("ZodInput");class An{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Tn(){return new An}const Nn=Tn();function In(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Te(t)})}function Rn(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Te(t)})}function Cn(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Te(t)})}function On(e,t){return new Ze({check:"less_than",...Te(t),value:e,inclusive:!1})}function Sn(e,t){return new Ze({check:"less_than",...Te(t),value:e,inclusive:!0})}function $n(e,t){return new De({check:"greater_than",...Te(t),value:e,inclusive:!1})}function xn(e,t){return new De({check:"greater_than",...Te(t),value:e,inclusive:!0})}function Fn(e,t){return new Ue({check:"multiple_of",...Te(t),value:e})}function Zn(e,t){return new Le({check:"max_length",...Te(t),maximum:e})}function Dn(e,t){return new Me({check:"min_length",...Te(t),minimum:e})}function Un(e,t){return new Ge({check:"length_equals",...Te(t),length:e})}function jn(e){return new Je({check:"overwrite",tx:e})}const Ln=S("ZodISODateTime",((e,t)=>{Ct.init(e,t),ui.init(e,t)}));const Mn=S("ZodISODate",((e,t)=>{Ot.init(e,t),ui.init(e,t)}));const Gn=S("ZodISOTime",((e,t)=>{St.init(e,t),ui.init(e,t)}));const Hn=S("ZodISODuration",((e,t)=>{$t.init(e,t),ui.init(e,t)}));const Bn=(e,t)=>{et.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},i={_errors:[]},o=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map((e=>o({issues:e})));else if("invalid_key"===t.code)o({issues:t.issues});else if("invalid_element"===t.code)o({issues:t.issues});else if(0===t.path.length)i._errors.push(n(t));else{let e=i,o=0;for(;o<t.path.length;){const i=t.path[o];o===t.path.length-1?(e[i]=e[i]||{_errors:[]},e[i]._errors.push(n(t))):e[i]=e[i]||{_errors:[]},e=e[i],o++}}};return o(e),i}(e,t)},flatten:{value:t=>function(e,t=(e=>e.message)){const n={},i=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):i.push(t(o));return{formErrors:i,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,de,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,de,2)}},isEmpty:{get:()=>0===e.issues.length}})},Vn=(S("ZodError",Bn),S("ZodError",Bn,{Parent:Error})),Qn=nt(Vn),qn=it(Vn),Yn=ot(Vn),Wn=at(Vn),Jn=ct(Vn),Kn=ut(Vn),Xn=dt(Vn),ei=lt(Vn),ti=pt(Vn),ni=ft(Vn),ii=ht(Vn),oi=mt(Vn),ri=S("ZodType",((e,t)=>(vt.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map((e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e))]}),e.clone=(t,n)=>Ae(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>Qn(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Yn(e,t,n),e.parseAsync=async(t,n)=>qn(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Wn(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Jn(e,t,n),e.decode=(t,n)=>Kn(e,t,n),e.encodeAsync=async(t,n)=>Xn(e,t,n),e.decodeAsync=async(t,n)=>ei(e,t,n),e.safeEncode=(t,n)=>ti(e,t,n),e.safeDecode=(t,n)=>ni(e,t,n),e.safeEncodeAsync=async(t,n)=>ii(e,t,n),e.safeDecodeAsync=async(t,n)=>oi(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Te(n)})}(ao,e,t)}(t,n)),e.superRefine=t=>e.check(function(e){const t=function(e,t){const n=new xe({check:"custom",...Te(void 0)});return n._zod.check=e,n}((n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push($e(e,n.value,t._zod.def));else{const i=e;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),n.issues.push($e(i))}},e(n.value,n))));return t}(t)),e.overwrite=t=>e.check(jn(t)),e.optional=()=>Wi(e),e.nullable=()=>Ki(e),e.nullish=()=>Wi(Ki(e)),e.nonoptional=t=>function(e,t){return new to({type:"nonoptional",innerType:e,...Te(t)})}(e,t),e.array=()=>Li(e),e.or=t=>function(e,t){return new Hi({type:"union",options:e,...Te(t)})}([e,t]),e.and=t=>new Bi({type:"intersection",left:e,right:t}),e.transform=t=>oo(e,qi(t)),e.default=t=>{return n=t,new Xi({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():ke(n)}});var n},e.prefault=t=>{return n=t,new eo({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():ke(n)}});var n},e.catch=t=>{return new no({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>oo(e,t),e.readonly=()=>new ro({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return Nn.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>Nn.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return Nn.get(e);const n=e.clone();return Nn.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e))),ai=S("_ZodString",((e,t)=>{yt.init(e,t),ri.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new Be({check:"string_format",format:"regex",...Te(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new qe({check:"string_format",format:"includes",...Te(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new Ye({check:"string_format",format:"starts_with",...Te(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new We({check:"string_format",format:"ends_with",...Te(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Dn(...t)),e.max=(...t)=>e.check(Zn(...t)),e.length=(...t)=>e.check(Un(...t)),e.nonempty=(...t)=>e.check(Dn(1,...t)),e.lowercase=t=>e.check(function(e){return new Ve({check:"string_format",format:"lowercase",...Te(e)})}(t)),e.uppercase=t=>e.check(function(e){return new Qe({check:"string_format",format:"uppercase",...Te(e)})}(t)),e.trim=()=>e.check(jn((e=>e.trim()))),e.normalize=(...t)=>e.check(function(e){return jn((t=>t.normalize(e)))}(...t)),e.toLowerCase=()=>e.check(jn((e=>e.toLowerCase()))),e.toUpperCase=()=>e.check(jn((e=>e.toUpperCase())))})),si=S("ZodString",((e,t)=>{yt.init(e,t),ai.init(e,t),e.email=t=>e.check(In(di,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Te(t)})}(hi,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Te(t)})}(Ii,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Te(t)})}(mi,t)),e.guid=t=>e.check(Rn(pi,t)),e.uuid=t=>e.check(Cn(fi,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Te(t)})}(fi,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Te(t)})}(fi,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Te(t)})}(fi,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Te(t)})}(gi,t)),e.guid=t=>e.check(Rn(pi,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Te(t)})}(vi,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Te(t)})}(yi,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Te(t)})}(_i,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Te(t)})}(Ai,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Te(t)})}(Ti,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Te(t)})}(Pi,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Te(t)})}(zi,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Te(t)})}(bi,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Te(t)})}(ki,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Te(t)})}(wi,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Te(t)})}(Ei,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Te(t)})}(Ni,t)),e.datetime=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Te(t)})}(Ln,e)}(t)),e.date=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Te(t)})}(Mn,e)}(t)),e.time=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Te(t)})}(Gn,e)}(t)),e.duration=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Te(t)})}(Hn,e)}(t))}));function ci(e){return function(e,t){return new e({type:"string",...Te(t)})}(si,e)}const ui=S("ZodStringFormat",((e,t)=>{_t.init(e,t),ai.init(e,t)})),di=S("ZodEmail",((e,t)=>{bt.init(e,t),ui.init(e,t)}));function li(e){return In(di,e)}const pi=S("ZodGUID",((e,t)=>{Pt.init(e,t),ui.init(e,t)})),fi=S("ZodUUID",((e,t)=>{zt.init(e,t),ui.init(e,t)})),hi=S("ZodURL",((e,t)=>{kt.init(e,t),ui.init(e,t)})),mi=S("ZodEmoji",((e,t)=>{wt.init(e,t),ui.init(e,t)})),gi=S("ZodNanoID",((e,t)=>{Et.init(e,t),ui.init(e,t)})),vi=S("ZodCUID",((e,t)=>{At.init(e,t),ui.init(e,t)})),yi=S("ZodCUID2",((e,t)=>{Tt.init(e,t),ui.init(e,t)})),_i=S("ZodULID",((e,t)=>{Nt.init(e,t),ui.init(e,t)})),Pi=S("ZodXID",((e,t)=>{It.init(e,t),ui.init(e,t)})),zi=S("ZodKSUID",((e,t)=>{Rt.init(e,t),ui.init(e,t)})),bi=S("ZodIPv4",((e,t)=>{xt.init(e,t),ui.init(e,t)})),ki=S("ZodIPv6",((e,t)=>{Ft.init(e,t),ui.init(e,t)})),wi=S("ZodCIDRv4",((e,t)=>{Zt.init(e,t),ui.init(e,t)})),Ei=S("ZodCIDRv6",((e,t)=>{Dt.init(e,t),ui.init(e,t)})),Ai=S("ZodBase64",((e,t)=>{jt.init(e,t),ui.init(e,t)})),Ti=S("ZodBase64URL",((e,t)=>{Lt.init(e,t),ui.init(e,t)})),Ni=S("ZodE164",((e,t)=>{Mt.init(e,t),ui.init(e,t)})),Ii=S("ZodJWT",((e,t)=>{Gt.init(e,t),ui.init(e,t)})),Ri=S("ZodNumber",((e,t)=>{Ht.init(e,t),ri.init(e,t),e.gt=(t,n)=>e.check($n(t,n)),e.gte=(t,n)=>e.check(xn(t,n)),e.min=(t,n)=>e.check(xn(t,n)),e.lt=(t,n)=>e.check(On(t,n)),e.lte=(t,n)=>e.check(Sn(t,n)),e.max=(t,n)=>e.check(Sn(t,n)),e.int=t=>e.check(Si(t)),e.safe=t=>e.check(Si(t)),e.positive=t=>e.check($n(0,t)),e.nonnegative=t=>e.check(xn(0,t)),e.negative=t=>e.check(On(0,t)),e.nonpositive=t=>e.check(Sn(0,t)),e.multipleOf=(t,n)=>e.check(Fn(t,n)),e.step=(t,n)=>e.check(Fn(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null}));function Ci(e){return function(e,t){return new e({type:"number",checks:[],...Te(t)})}(Ri,e)}const Oi=S("ZodNumberFormat",((e,t)=>{Bt.init(e,t),Ri.init(e,t)}));function Si(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Te(t)})}(Oi,e)}const $i=S("ZodBoolean",((e,t)=>{Vt.init(e,t),ri.init(e,t)}));const xi=S("ZodUnknown",((e,t)=>{Qt.init(e,t),ri.init(e,t)}));function Fi(){return new xi({type:"unknown"})}const Zi=S("ZodNever",((e,t)=>{qt.init(e,t),ri.init(e,t)}));function Di(e){return function(e,t){return new e({type:"never",...Te(t)})}(Zi,e)}const Ui=S("ZodDate",((e,t)=>{Yt.init(e,t),ri.init(e,t),e.min=(t,n)=>e.check(xn(t,n)),e.max=(t,n)=>e.check(Sn(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null}));const ji=S("ZodArray",((e,t)=>{Jt.init(e,t),ri.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Dn(t,n)),e.nonempty=t=>e.check(Dn(1,t)),e.max=(t,n)=>e.check(Zn(t,n)),e.length=(t,n)=>e.check(Un(t,n)),e.unwrap=()=>e.element}));function Li(e,t){return function(e,t,n){return new e({type:"array",element:t,...Te(n)})}(ji,e,t)}const Mi=S("ZodObject",((e,t)=>{nn.init(e,t),ri.init(e,t),me(e,"shape",(()=>t.shape)),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map((e=>[e,e]))):e;return new Vi({type:"enum",entries:n,...Te(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Fi()}),e.loose=()=>e.clone({...e._zod.def,catchall:Fi()}),e.strict=()=>e.clone({...e._zod.def,catchall:Di()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!be(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const i=ve(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return ge(this,"shape",n),n},checks:[]});return Ae(e,i)}(e,t),e.safeExtend=t=>function(e,t){if(!be(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return ge(this,"shape",n),n},checks:e._zod.def.checks};return Ae(e,n)}(e,t),e.merge=t=>function(e,t){const n=ve(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return ge(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Ae(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return Ae(e,ve(e._zod.def,{get shape(){const e={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(e[i]=n.shape[i])}return ge(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,i=ve(e._zod.def,{get shape(){const i={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete i[e]}return ge(this,"shape",i),i},checks:[]});return Ae(e,i)}(e,t),e.partial=(...t)=>function(e,t,n){const i=ve(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=e?new e({type:"optional",innerType:i[t]}):i[t])}else for(const t in i)o[t]=e?new e({type:"optional",innerType:i[t]}):i[t];return ge(this,"shape",o),o},checks:[]});return Ae(t,i)}(Yi,e,t[0]),e.required=(...t)=>function(e,t,n){const i=ve(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in o))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=new e({type:"nonoptional",innerType:i[t]}))}else for(const t in i)o[t]=new e({type:"nonoptional",innerType:i[t]});return ge(this,"shape",o),o},checks:[]});return Ae(t,i)}(to,e,t[0])}));function Gi(e,t){const n={type:"object",get shape(){var t;return ge(this,"shape",e?(t=e,Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))):{}),this.shape},...Te(t)};return new Mi(n)}const Hi=S("ZodUnion",((e,t)=>{rn.init(e,t),ri.init(e,t),e.options=t.options}));const Bi=S("ZodIntersection",((e,t)=>{an.init(e,t),ri.init(e,t)})),Vi=S("ZodEnum",((e,t)=>{un.init(e,t),ri.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,i)=>{const o={};for(const i of e){if(!n.has(i))throw new Error(`Key ${i} not found in enum`);o[i]=t.entries[i]}return new Vi({...t,checks:[],...Te(i),entries:o})},e.exclude=(e,i)=>{const o={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete o[t]}return new Vi({...t,checks:[],...Te(i),entries:o})}}));const Qi=S("ZodTransform",((e,t)=>{dn.init(e,t),ri.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new x(e.constructor.name);n.addIssue=i=>{if("string"==typeof i)n.issues.push($e(i,n.value,t));else{const t=i;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push($e(t))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then((e=>(n.value=e,n))):(n.value=o,n)}}));function qi(e){return new Qi({type:"transform",transform:e})}const Yi=S("ZodOptional",((e,t)=>{pn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function Wi(e){return new Yi({type:"optional",innerType:e})}const Ji=S("ZodNullable",((e,t)=>{fn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function Ki(e){return new Ji({type:"nullable",innerType:e})}const Xi=S("ZodDefault",((e,t)=>{hn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap})),eo=S("ZodPrefault",((e,t)=>{gn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),to=S("ZodNonOptional",((e,t)=>{vn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),no=S("ZodCatch",((e,t)=>{_n.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap})),io=S("ZodPipe",((e,t)=>{Pn.init(e,t),ri.init(e,t),e.in=t.in,e.out=t.out}));function oo(e,t){return new io({type:"pipe",in:e,out:t})}const ro=S("ZodReadonly",((e,t)=>{bn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),ao=S("ZodCustom",((e,t)=>{wn.init(e,t),ri.init(e,t)}));function so(e,t){return oo(qi(e),t)}function co(e,t,n){const i=t.safeParse(n);return i.success?i.data:(i.error.issues.forEach((t=>{const n=t.path.join(".");e.getFieldState(n)?e.setError(n,{type:"manual",message:t.message}):e.setError("root",{type:"manual",message:t.message})})),null)}const uo=e=>so((e=>{if(e){if("string"==typeof e){const t=Number(e);return isNaN(t)?e:t}return e}}),e),lo=e=>so((e=>{if(!e)return;let t;return"string"==typeof e&&(t=new Date(e)),e instanceof Date&&(t=e),t?(t.setUTCHours(0,0,0,0),t):e}),e),po=e=>ci().min(1,{error:"Required"}).max(e,`Maximum length is ${e} characters`),fo=()=>li("Invalid email address").min(1,"Required"),ho=()=>uo(Ci("Valid amount required").positive("Positive amount required")),mo=()=>lo(function(e){return function(e,t){return new e({type:"date",...Te(t)})}(Ui,e)}("Valid date required").min(new Date,"Date must be in the future")),go=e=>ci().max(e,`Maximum length is ${e} characters`),vo=Gi({address1:po(100),address2:go(100).optional(),city:po(50),state:go(50).optional(),postcode:go(20).optional(),country:po(50)}),yo=Gi({amount:ho(),message:go(500).nullish(),giverFirstName:po(50),giverLastName:po(50),giverEmail:fo(),giverPhone:po(31),giverAddress:vo,cardHolder:po(101),recipientFirstName:go(50).nullish(),recipientLastName:go(50).nullish(),recipientEmail:li("Invalid email address").nullish(),recipientPhone:go(31).nullish()}),_o=yo.extend({expiry:mo(),notes:go(500).nullish()}),Po=Gi({balance:ho(),expiry:mo(),message:go(500).nullish(),notes:go(500).nullish(),giverFirstName:po(50),giverLastName:po(50),giverEmail:fo(),giverPhone:po(31),cardHolder:po(101),recipientEmail:li("Invalid email address").nullish(),recipientPhone:go(31).nullish()});let zo;!function(e){e.Passthrough="Passthrough",e.PaymentProcessor="PaymentProcessor"}(zo||(zo={}));const bo=Gi({companyId:Ci().int().positive(),amount:ho(),currency:po(3).default("AUD")}),ko=Gi({sessionId:po(100),resultCode:po(50),pspReference:go(100).optional()}),wo=Gi({cardHolder:po(100),cardNumberToken:go(200),cardCvcToken:go(200),cardExpiry:go(5)}),Eo=yo.extend({companyId:Ci().int().positive(),sendViaEmail:function(e){return function(e,t){return new e({type:"boolean",...Te(t)})}($i,e)}().default(!0),payment:ko.optional(),passthroughPayment:wo.optional()}),Ao=Gi({giftCardId:Ci().int().positive(),reason:go(500).optional()}),To=Gi({companyId:Ci().int().positive().nullish(),code:po(10),password:po(10)}),No=To.extend({amount:ho(),description:po(200)});let Io,Ro,Co,Oo,So,$o;!function(e){e.Adyen="Adyen"}(Io||(Io={})),function(e){e.Pending="Pending",e.Authorized="Authorized",e.Captured="Captured",e.Failed="Failed",e.Refunded="Refunded"}(Ro||(Ro={})),function(e){e.Authorised="Authorised",e.Refused="Refused",e.Cancelled="Cancelled",e.Pending="Pending",e.Received="Received",e.Error="Error",e.IdentifyShopper="IdentifyShopper",e.ChallengeShopper="ChallengeShopper"}(Co||(Co={})),function(e){e.AUTHORISATION="AUTHORISATION",e.CAPTURE="CAPTURE",e.REFUND="REFUND",e.CANCELLATION="CANCELLATION",e.REFUND_FAILED="REFUND_FAILED",e.CAPTURE_FAILED="CAPTURE_FAILED"}(Oo||(Oo={})),function(e){e.Purchase="Purchase",e.Redemption="Redemption",e.Adjustment="Adjustment"}(So||(So={})),function(e){e.Pending="Pending",e.Complete="Complete",e.Cancelled="Cancelled",e.Expired="Expired"}($o||($o={}));const xo=Gi({code:po(10),token:po(128)}),Fo=Gi({companyId:Ci().int().positive(),code:po(10),token:po(128)}),Zo=Gi({grant_type:ci().readonly().default("refresh_token"),client_id:Cn(fi,undefined),client_secret:ci(),refresh_token:ci(),scope:ci().optional()});const Do=Gi({email:li(),firstName:ci().max(100).optional(),lastName:ci().max(100).optional(),phone:ci().max(20).optional(),scopes:Li(ci()).optional()});let Uo;!function(e){e.PER_STAY="Per stay",e.PER_NIGHT="Per night",e.PER_PERSON="Per person",e.PER_PERSON_PER_NIGHT="Per person per night",e.PER_ALL_PERSONS="Per all persons",e.PER_ALL_PERSONS_PER_NIGHT="Per all persons per night",e.PER_QUANTITY_NAME_PER_NIGHT="Per Quantity Name Per Night",e.PER_ROOM_QUANTITY_PER_NIGHT="Per Room Quantity Per Night",e.PER_PERSON_OCCUPANCY_PER_NIGHT="Per Person Occupancy Per Night",e.PER_ADULT_OCCUPANCY_PER_NIGHT="Per Adult Occupancy Per Night",e.PER_CHILD_OCCUPANCY_PER_NIGHT="Per Child Occupancy Per Night"}(Uo||(Uo={}));const jo=[Uo.PER_NIGHT,Uo.PER_PERSON_PER_NIGHT,Uo.PER_QUANTITY_NAME_PER_NIGHT,Uo.PER_ROOM_QUANTITY_PER_NIGHT,Uo.PER_PERSON_OCCUPANCY_PER_NIGHT,Uo.PER_ADULT_OCCUPANCY_PER_NIGHT,Uo.PER_CHILD_OCCUPANCY_PER_NIGHT,Uo.PER_ALL_PERSONS_PER_NIGHT];let Lo,Mo,Go;!function(e){e.Critical="Critical",e.Error="Error",e.Warn="Warn",e.Info="Info"}(Lo||(Lo={})),function(e){e.Debug="Diagnostics",e.Security="Security",e.Audit="Audit"}(Mo||(Mo={})),function(e){e.General="General",e.Authenticated="Token Authenticated",e.Unauthorized="Unauthorized Access",e.RefreshToken="Refresh Token Created",e.AccessToken="Access Token Created",e.Revoked="Token Revoked",e.UserCreated="User Created",e.UserLinked="User Linked to Company",e.Purchase="Gift Card Purchased",e.Payment="Payment",e.Email="Email Delivery",e.Transaction="Gift Card Transaction"}(Go||(Go={}));const Ho=e=>{let t=0;const n=Object.values(e.itinerary);for(const e of n){const n=Object.keys(e.nights);for(const i of n)t+=e.nights[i].total}return t},Bo=require("decimal.js");var Vo=e.n(Bo);const Qo={UP:Vo().ROUND_UP,DOWN:Vo().ROUND_DOWN,CEIL:Vo().ROUND_CEIL,FLOOR:Vo().ROUND_FLOOR,HALF_UP:Vo().ROUND_HALF_UP,HALF_DOWN:Vo().ROUND_HALF_DOWN,HALF_EVEN:Vo().ROUND_HALF_EVEN,HALF_CEIL:Vo().ROUND_HALF_CEIL,HALF_FLOOR:Vo().ROUND_HALF_FLOOR},qo=(e,t)=>{const{precision:n=2,rounding:i=Qo.HALF_UP}=t||{};return new(Vo())(e).toDecimalPlaces(n,i).toNumber()};function Yo(e,t={}){const{baseAmount:n=0,numberOfNights:i=1,feeIncludedInBaseAmount:o=!1,extractedFromRates:r=!1,removedPercentages:a=[]}=t,s=qo(n);switch(e.feeType){case O.PercentageOfBooking:if(o)return qo(s*e.amount/(100+e.amount));if(r){const t=a.reduce(((e,t)=>e+t/(100+t)),0);return qo(s/(1-t)*e.amount/(100+e.amount))}return qo(s*(e.amount/100));case O.FixedChargePerRoom:case O.FixedChargePerBooking:return e.amount;case O.NightlyChargePerRoom:return qo(e.amount*i);default:return 0}}const Wo=[O.FixedChargePerBooking],Jo=[O.PercentageOfBooking,O.FixedChargePerRoom,O.NightlyChargePerRoom],Ko=[O.PercentageOfBooking];function Xo(e,t){return e.filter((e=>t.includes(e.feeType)))}function er(e){return Xo(e,Wo)}function tr(e){return Xo(e,Jo)}function nr(e){return Xo(e,Ko)}function ir(e){return{includeInRates:[O.PercentageOfBooking,O.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===O.PercentageOfBooking,appliesToAddons:e===O.PercentageOfBooking,includePreviousFeesInCalculation:e===O.PercentageOfBooking}}const or=e=>e,rr=(e,t)=>{const n={};return t.forEach((t=>{t in e&&(n[t]=e[t])})),n},ar=(e,t)=>e.includes("cdn.app.roomstay.io")?e+"?w="+t:e;class sr{}function cr(e){return e.toUpperCase()}sr.calculateBaseAddonTotal=(e,t)=>{let n=0,i=0,o=0;e.price&&e.quantity&&(n=e.quantity*Number(e.price)),e.pricingType===Uo.PER_ADULT_OCCUPANCY_PER_NIGHT&&e.adultQuantity?n*=e.adultQuantity:e.pricingType===Uo.PER_CHILD_OCCUPANCY_PER_NIGHT&&e.childQuantity&&(n*=e.childQuantity),e.adultPrice&&e.adultQuantity&&(i=e.adultQuantity*Number(e.adultPrice)),e.childPrice&&e.childQuantity&&(o=e.childQuantity*Number(e.childPrice));let r=n+i+o;return jo.includes(e.pricingType)&&e.nights&&!t&&(r*=e.nights),{indPrice:n,indAdultPrice:i,indChildPrice:o,addonTotal:r}},sr.calculateBasketAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=sr.calculateBaseAddonTotal(n,t);let o=0;return(n.fee||n.fees?.length)&&n.quantity?n.fees?.length?n.fees.forEach((e=>{o+=n.quantity*e.amount})):o=n.quantity*Number(n.fee):((n.adultFee||n.adultFees?.length)&&n.adultQuantity&&(n.adultFees?.length?n.adultFees.forEach((e=>{o+=n.adultQuantity*e.amount})):o+=n.adultQuantity??1*Number(n.adultFee)),(n.childFee||n.childFees?.length)&&n.childQuantity&&(n.childFees?.length?n.childFees.forEach((e=>{o+=n.childQuantity??1*e.amount})):o+=n.childQuantity*Number(n.childFee))),jo.includes(n.pricingType)&&n.nights&&!t&&(o*=n.nights),{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+o,total:e.total+i.addonTotal+o}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0})),sr.calculateReservationAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=sr.calculateBaseAddonTotal(n,t);let o,r=n.discount||0;o=void 0!==n.total&&null!==n.total?n.total:i.addonTotal-r;let a=n.fees||0;n.itemisedFees?.length&&(a=n.itemisedFees.reduce(((e,t)=>e+t.amount),0));const s=n.itemisedFees?.length?o:o+a;return{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+a,total:e.total+o+a,displayPrice:e.displayPrice+s}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0,displayPrice:0})),sr.calculateTotalForReservation=(e,t=!1)=>{let n=0;return e.itemisedFees?.forEach((e=>{n+=e.amount})),e.reservations.forEach((e=>{n+=e.total.afterTax;const i=Object.keys(e.nights)?.length??0;if(n+=e.fees??0,e.addons?.length){const o=(e.addons??[]).map((e=>({...e,nights:i})));n+=sr.calculateReservationAddonTotal(o,t)?.total}})),qo(n)},module.exports=t})();
1
+ (()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};let n,i,o,r,a;e.r(t),e.d(t,{ADDON_PER_NIGHT_TYPES:()=>Bo,AddGiftCardSchema:()=>wo,AdyenEventCode:()=>Zo,AdyenResultCode:()=>Fo,BaseGiftCardSchema:()=>bo,CancelGiftCardTransactionSchema:()=>Lo,CompleteGiftCardTransactionSchema:()=>jo,CreatePaymentSessionSchema:()=>To,DATE_FORMAT:()=>I,EAddonPricingType:()=>Ho,EAdminCompanyUserRole:()=>p,EBookingFlow:()=>i,EBookingPaymentMethod:()=>o,EBookingStatus:()=>n,ECompanyProvider:()=>l,EDistanceUnitType:()=>y,EFeeType:()=>O,EGiftCardPaymentProvider:()=>$o,EGiftCardPaymentStatus:()=>xo,EGiftCardPaymentType:()=>Ao,EGiftCardTransactionType:()=>Do,EGuaranteePolicyDepositMode:()=>w,EGuarantyPolicyPrepaymentType:()=>E,EHotelCardProcessor:()=>r,EHotelPriceModel:()=>f,EHotelStateFieldConfiguration:()=>h,EHotelWeekdayStartsOn:()=>m,EIntegration:()=>g,ELogCategory:()=>qo,ELogSeverity:()=>Vo,ELogType:()=>Qo,EPlanpayBookingStatus:()=>a,EPromoCodeDiscountType:()=>A,ERMSAuthSyncHistoryStatus:()=>z,ERMSDiscountType:()=>_,ERMSSyncStrategy:()=>P,ERoomstayEventName:()=>S,ERoomstayEventSource:()=>T,ERoomstayImageSize:()=>k,ETransactionStatus:()=>Uo,EditGiftCardSchema:()=>Eo,GuestProfile:()=>d,HttpMethod:()=>R,IAuxiliaryFilterType:()=>v,IMaintenanceStatusService:()=>b,InternationalAddressSchema:()=>ko,ItineraryResponse:()=>c,PCIBookingCardProcessorTypes:()=>s,Package:()=>N,PassthroughPaymentDataSchema:()=>Co,PaymentProcessorDataSchema:()=>No,PurchaseGiftCardSchema:()=>Io,RedeemGiftCardSchema:()=>So,RefreshGiftCardTokenSchema:()=>Mo,RefundGiftCardSchema:()=>Ro,RegisterGiftCardAdminSchema:()=>Go,Reservation:()=>u,ReservedPackage:()=>C,RoundingType:()=>Ko,TotalCalculator:()=>pr,ValidateGiftCardSchema:()=>Oo,calculateFeeAmount:()=>er,calculateTotalForMemberBooking:()=>Yo,getFeeOptionValidity:()=>cr,getFilteredBookingAddonFees:()=>sr,getFilteredBookingFees:()=>rr,getFilteredBookingRateFees:()=>ar,maxString:()=>zo,nameof:()=>ur,preprocessDate:()=>go,preprocessNumber:()=>mo,requireEmail:()=>yo,requireFutureDate:()=>Po,requirePositiveAmount:()=>_o,requireString:()=>vo,resizeRoomstayImageUrl:()=>lr,roundMoney:()=>Xo,subset:()=>dr,toMetaEventName:()=>$,transformToMetaEventData:()=>F,transformToMetaUserData:()=>Z,uppercaseString:()=>fr,validateFormWithZod:()=>ho}),function(e){e.Pending="Pending",e.Processing="Processing",e.Committed="Committed",e.Cancelled="Cancelled",e.Reverted="Reverted"}(n||(n={})),function(e){e.Default="Default",e.PreCheckoutPencil="PreCheckoutPencil",e.PostCheckoutPencil="PostCheckoutPencil"}(i||(i={})),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard",e.TrueRewards="TrueRewards"}(o||(o={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave",e.Mastercard="Mastercard",e.Stripe="Stripe",e.PayPal="PayPal"}(r||(r={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(a||(a={}));const s=[];class c{constructor(){this.roomstayId=void 0,this.itineraryNumber=void 0,this.total=void 0,this.hotelFrontendId=void 0,this.reservations=[],this.payment=void 0,this.feesSummary=void 0,this.itemisedFees=void 0,this.warnings=void 0}}class u{constructor(){this.reservationNumber=void 0,this.roomType=void 0,this.roomCode=void 0,this.rate=void 0,this.rateCode=void 0,this.images=void 0,this.guaranteePolicy=void 0,this.cancellationPolicy=void 0,this.checkInDate=void 0,this.checkOutDate=void 0,this.nights={},this.guestCounts={adults:1,children:0},this.guest=new d,this.paymentCard=void 0,this.paymentMethod=void 0,this.total=void 0,this.status=void 0,this.isCancelable=void 0,this.addons=void 0,this.comments=void 0,this.specialRequests=void 0,this.promoCode=void 0,this.guaranteePolicyLongDescription=void 0,this.cancellationPolicyLongDescription=void 0,this.itemisedFees=void 0}}class d{constructor(){this.title=void 0,this.firstName=void 0,this.middleName=void 0,this.lastName=void 0,this.nameSuffix=void 0,this.phone=void 0,this.email=void 0,this.address={},this.marketingOptIn=void 0,this.country=void 0}}let l,p,f,h,m,g,v,y,_,P,z,k,b,w,E,A,T;!function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay",e.OHIP="OHIP"}(l||(l={})),function(e){e.SuperAdmin="SuperAdmin",e.Admin="Admin",e.Limited="Limited"}(p||(p={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(f||(f={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(h||(h={})),function(e){e.Monday="monday",e.Sunday="sunday"}(m||(m={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce",e.RAC="RAC",e.AnalyticsEvents="AnalyticsEvents"}(g||(g={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(v||(v={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(_||(_={})),function(e){e.Hotel="hotel",e.HotelImages="hotelImages",e.Cancellation="cancellation",e.Room="room",e.Rates="rates",e.OneGuaranteePolicy="oneGuaranteePolicy",e.RoomRates="roomRates",e.RoomImages="roomImages",e.BookingSources="booking-sources",e.Areas="areas",e.Dwellings="dwellings",e.AreaDwellings="areaDwellings",e.ConvertDwellingConfigToAuxInput="convertDwellingConfigToAuxInput",e.Discounts="discounts",e.PropertyDiscounts="propertyDiscounts",e.RoomDiscounts="roomDiscounts",e.PropertySundries="propertySundries",e.PropertyFees="propertyFees",e.PropertyCards="property-cards",e.Countries="countries",e.Addons="addons",e.Requirements="requirements",e.RoomAddons="room-addons",e.ClientFacingPromoSync="clientFacingPromoSync",e.ClientFacingRoomSync="clientFacingRoomSync",e.ClientFacingRateSync="clientFacingRateSync",e.NewRateFetch="newRateFetch"}(P||(P={})),function(e){e.Success="success",e.Failure="failure",e.New="new",e.Queued="queued",e.InProgress="in_progress",e.RequireResume="require_resume"}(z||(z={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(k||(k={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(b||(b={}));class N{constructor(){this.ratePlanCode=void 0,this.name=void 0,this.description=void 0,this.inclusive=void 0,this.image=void 0,this.url=void 0,this.pricingType=void 0,this.quantity=void 0,this.category=void 0,this.cancelPenalty=void 0,this.guaranteeDescription=void 0,this.availability={}}}class C extends N{constructor(...e){super(...e),this.code=void 0,this.price=void 0,this.fees=void 0,this.itemisedFees=void 0,this.adultQuantity=void 0,this.childQuantity=void 0,this.adultPrice=void 0,this.childPrice=void 0,this.startDate=void 0,this.startTime=void 0,this.hideDatePicker=!1,this.hideQuantity=!1,this.order=void 0,this.discount=void 0,this.total=void 0}}!function(e){e.Full="Full",e.Percentage="Percentage",e.FirstNight="FirstNight",e.None="None"}(w||(w={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(E||(E={})),function(e){e.FlatPercent="flatPercent",e.FlatQuantity="flatQuantity",e.FlatQuantityPerStay="flatQuantityPerStay"}(A||(A={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(T||(T={}));const I="DD/MM/YYYY";let R,O,S;function $(e){return{[S.ViewBookingEngine]:"ViewContent",[S.BasketAdd]:"AddToCart",[S.ViewCheckout]:"InitiateCheckout",[S.BookingCommitted]:"Purchase"}[e]}function x(e,t){let n=0;const i=[],o=[];for(const t of e)n+=t.totalPrice,t.roomCode&&(i.push(t.roomCode),o.push({id:t.roomCode,quantity:1,item_price:t.totalPrice}));return{currency:t,value:n,content_ids:i,content_type:"hotel",contents:o,num_items:e.length}}function F(e){if("item"in e)return x([e.item],e.currency);if("items"in e)return x(e.items,e.currency);throw new Error("Invalid event data")}function Z(e){return{em:e.email,ph:e.phone,fn:e.firstName,ln:e.lastName,ct:e.city,st:e.state,zp:e.postalCode,country:e.country,external_id:e.externalId}}function D(e,t,n){function i(n,i){var o;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(o=n._zod).traits??(o.traits=new Set),n._zod.traits.add(e),t(n,i);for(const e in a.prototype)e in n||Object.defineProperty(n,e,{value:a.prototype[e].bind(n)});n._zod.constr=a,n._zod.def=i}const o=n?.Parent??Object;class r extends o{}function a(e){var t;const o=n?.Parent?new r:this;i(o,e),(t=o._zod).deferred??(t.deferred=[]);for(const e of o._zod.deferred)e();return o}return Object.defineProperty(r,"name",{value:e}),Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}!function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(R||(R={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(O||(O={})),function(e){e.ViewBookingEngine="View/BookingEngine",e.BasketAdd="Basket/Add",e.ViewCheckout="View/Checkout",e.BookingCommitted="Booking/Committed"}(S||(S={})),Object.freeze({status:"aborted"}),Symbol("zod_brand");class U extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class j extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const L={};function M(e){return e&&Object.assign(L,e),L}const G=/^[cC][^\s-]{8,}$/,H=/^[0-9a-z]+$/,B=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,V=/^[0-9a-vA-V]{20}$/,q=/^[A-Za-z0-9]{27}$/,Q=/^[a-zA-Z0-9_-]{21}$/,Y=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,W=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,J=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,K=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,X=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ee=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,te=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,ne=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ie=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,oe=/^[A-Za-z0-9_-]*$/,re=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,ae=/^\+(?:[0-9]){6,14}[0-9]$/,se="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ce=new RegExp(`^${se}$`);function ue(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const de=/^\d+$/,le=/^-?\d+(?:\.\d+)?/i,pe=/true|false/i,fe=/^[^A-Z]*$/,he=/^[^a-z]*$/;function me(e,t){return"bigint"==typeof t?t.toString():t}function ge(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function ve(e){return null==e}function ye(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const _e=Symbol("evaluating");function Pe(e,t,n){let i;Object.defineProperty(e,t,{get(){if(i!==_e)return void 0===i&&(i=_e,i=n()),i},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ze(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ke(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function be(e){return JSON.stringify(e)}const we="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Ee(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const Ae=ge((()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}}));function Te(e){if(!1===Ee(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==Ee(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function Ne(e){return Te(e)?{...e}:e}const Ce=new Set(["string","number","symbol"]);function Ie(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Re(e,t,n){const i=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(i._zod.parent=e),i}function Oe(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}new Set(["string","number","bigint","boolean","symbol","undefined"]);const Se={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function $e(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function xe(e,t){return t.map((t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t}))}function Fe(e){return"string"==typeof e?e:e?.message}function Ze(e,t,n){const i={...e,path:e.path??[]};if(!e.message){const o=Fe(e.inst?._zod.def?.error?.(e))??Fe(t?.error?.(e))??Fe(n.customError?.(e))??Fe(n.localeError?.(e))??"Invalid input";i.message=o}return delete i.inst,delete i.continue,t?.reportInput||delete i.input,i}function De(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function Ue(...e){const[t,n,i]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:i}:{...t}}const je=D("$ZodCheck",((e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])})),Le={number:"number",bigint:"bigint",object:"date"},Me=D("$ZodCheckLessThan",((e,t)=>{je.init(e,t);const n=Le[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value<=t.value:i.value<t.value)||i.issues.push({origin:n,code:"too_big",maximum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),Ge=D("$ZodCheckGreaterThan",((e,t)=>{je.init(e,t);const n=Le[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value>=t.value:i.value>t.value)||i.issues.push({origin:n,code:"too_small",minimum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),He=D("$ZodCheckMultipleOf",((e,t)=>{je.init(e,t),e._zod.onattach.push((e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)})),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,i=t.toString();let o=(i.split(".")[1]||"").length;if(0===o&&/\d?e-\d?/.test(i)){const e=i.match(/\d?e-(\d?)/);e?.[1]&&(o=Number.parseInt(e[1]))}const r=n>o?n:o;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}})),Be=D("$ZodCheckNumberFormat",((e,t)=>{je.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),i=n?"int":"number",[o,r]=Se[t.format];e._zod.onattach.push((e=>{const i=e._zod.bag;i.format=t.format,i.minimum=o,i.maximum=r,n&&(i.pattern=de)})),e._zod.check=a=>{const s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:i,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}))}s<o&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),s>r&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inst:e})}})),Ve=D("$ZodCheckMaxLength",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)})),e._zod.check=n=>{const i=n.value;if(i.length<=t.maximum)return;const o=De(i);n.issues.push({origin:o,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),qe=D("$ZodCheckMinLength",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)})),e._zod.check=n=>{const i=n.value;if(i.length>=t.minimum)return;const o=De(i);n.issues.push({origin:o,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Qe=D("$ZodCheckLengthEquals",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length})),e._zod.check=n=>{const i=n.value,o=i.length;if(o===t.length)return;const r=De(i),a=o>t.length;n.issues.push({origin:r,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}})),Ye=D("$ZodCheckStringFormat",((e,t)=>{var n,i;je.init(e,t),e._zod.onattach.push((e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))})),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(i=e._zod).check??(i.check=()=>{})})),We=D("$ZodCheckRegex",((e,t)=>{Ye.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}})),Je=D("$ZodCheckLowerCase",((e,t)=>{t.pattern??(t.pattern=fe),Ye.init(e,t)})),Ke=D("$ZodCheckUpperCase",((e,t)=>{t.pattern??(t.pattern=he),Ye.init(e,t)})),Xe=D("$ZodCheckIncludes",((e,t)=>{je.init(e,t);const n=Ie(t.includes),i=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=i,e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(i)})),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}})),et=D("$ZodCheckStartsWith",((e,t)=>{je.init(e,t);const n=new RegExp(`^${Ie(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}})),tt=D("$ZodCheckEndsWith",((e,t)=>{je.init(e,t);const n=new RegExp(`.*${Ie(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}})),nt=D("$ZodCheckOverwrite",((e,t)=>{je.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}));class it{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter((e=>e)),n=Math.min(...t.map((e=>e.length-e.trimStart().length))),i=t.map((e=>e.slice(n))).map((e=>" ".repeat(2*this.indent)+e));for(const e of i)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map((e=>` ${e}`))].join("\n"))}}const ot=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,me,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},rt=D("$ZodError",ot),at=D("$ZodError",ot,{Parent:Error}),st=e=>(t,n,i,o)=>{const r=i?Object.assign(i,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise)throw new U;if(a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Ze(e,r,M()))));throw we(t,o?.callee),t}return a.value},ct=e=>async(t,n,i,o)=>{const r=i?Object.assign(i,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise&&(a=await a),a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Ze(e,r,M()))));throw we(t,o?.callee),t}return a.value},ut=e=>(t,n,i)=>{const o=i?{...i,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},o);if(r instanceof Promise)throw new U;return r.issues.length?{success:!1,error:new(e??rt)(r.issues.map((e=>Ze(e,o,M()))))}:{success:!0,data:r.value}},dt=ut(at),lt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{async:!0}):{async:!0};let r=t._zod.run({value:n,issues:[]},o);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map((e=>Ze(e,o,M()))))}:{success:!0,data:r.value}},pt=lt(at),ft=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return st(e)(t,n,o)},ht=e=>(t,n,i)=>st(e)(t,n,i),mt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ct(e)(t,n,o)},gt=e=>async(t,n,i)=>ct(e)(t,n,i),vt=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ut(e)(t,n,o)},yt=e=>(t,n,i)=>ut(e)(t,n,i),_t=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return lt(e)(t,n,o)},Pt=e=>async(t,n,i)=>lt(e)(t,n,i),zt={major:4,minor:1,patch:5},kt=D("$ZodType",((e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=zt;const i=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&i.unshift(e);for(const t of i)for(const n of t._zod.onattach)n(e);if(0===i.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push((()=>{e._zod.run=e._zod.parse}));else{const t=(e,t,n)=>{let i,o=$e(e);for(const r of t){if(r._zod.def.when){if(!r._zod.def.when(e))continue}else if(o)continue;const t=e.issues.length,a=r._zod.check(e);if(a instanceof Promise&&!1===n?.async)throw new U;if(i||a instanceof Promise)i=(i??Promise.resolve()).then((async()=>{await a,e.issues.length!==t&&(o||(o=$e(e,t)))}));else{if(e.issues.length===t)continue;o||(o=$e(e,t))}}return i?i.then((()=>e)):e},n=(n,o,r)=>{if($e(n))return n.aborted=!0,n;const a=t(o,i,r);if(a instanceof Promise){if(!1===r.async)throw new U;return a.then((t=>e._zod.parse(t,r)))}return e._zod.parse(a,r)};e._zod.run=(o,r)=>{if(r.skipChecks)return e._zod.parse(o,r);if("backward"===r.direction){const t=e._zod.parse({value:o.value,issues:[]},{...r,skipChecks:!0});return t instanceof Promise?t.then((e=>n(e,o,r))):n(t,o,r)}const a=e._zod.parse(o,r);if(a instanceof Promise){if(!1===r.async)throw new U;return a.then((e=>t(e,i,r)))}return t(a,i,r)}}e["~standard"]={validate:t=>{try{const n=dt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return pt(e,t).then((e=>e.success?{value:e.data}:{issues:e.error?.issues}))}},vendor:"zod",version:1}})),bt=D("$ZodString",((e,t)=>{var n;kt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}})),wt=D("$ZodStringFormat",((e,t)=>{Ye.init(e,t),bt.init(e,t)})),Et=D("$ZodGUID",((e,t)=>{t.pattern??(t.pattern=W),wt.init(e,t)})),At=D("$ZodUUID",((e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=J(e))}else t.pattern??(t.pattern=J());wt.init(e,t)})),Tt=D("$ZodEmail",((e,t)=>{t.pattern??(t.pattern=K),wt.init(e,t)})),Nt=D("$ZodURL",((e,t)=>{wt.init(e,t),e._zod.check=n=>{try{const i=n.value.trim(),o=new URL(i);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:re.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=o.href:n.value=i)}catch(i){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}})),Ct=D("$ZodEmoji",((e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),wt.init(e,t)})),It=D("$ZodNanoID",((e,t)=>{t.pattern??(t.pattern=Q),wt.init(e,t)})),Rt=D("$ZodCUID",((e,t)=>{t.pattern??(t.pattern=G),wt.init(e,t)})),Ot=D("$ZodCUID2",((e,t)=>{t.pattern??(t.pattern=H),wt.init(e,t)})),St=D("$ZodULID",((e,t)=>{t.pattern??(t.pattern=B),wt.init(e,t)})),$t=D("$ZodXID",((e,t)=>{t.pattern??(t.pattern=V),wt.init(e,t)})),xt=D("$ZodKSUID",((e,t)=>{t.pattern??(t.pattern=q),wt.init(e,t)})),Ft=D("$ZodISODateTime",((e,t)=>{t.pattern??(t.pattern=function(e){const t=ue({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const i=`${t}(?:${n.join("|")})`;return new RegExp(`^${se}T(?:${i})$`)}(t)),wt.init(e,t)})),Zt=D("$ZodISODate",((e,t)=>{t.pattern??(t.pattern=ce),wt.init(e,t)})),Dt=D("$ZodISOTime",((e,t)=>{t.pattern??(t.pattern=new RegExp(`^${ue(t)}$`)),wt.init(e,t)})),Ut=D("$ZodISODuration",((e,t)=>{t.pattern??(t.pattern=Y),wt.init(e,t)})),jt=D("$ZodIPv4",((e,t)=>{t.pattern??(t.pattern=X),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv4"}))})),Lt=D("$ZodIPv6",((e,t)=>{t.pattern??(t.pattern=ee),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv6"})),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}})),Mt=D("$ZodCIDRv4",((e,t)=>{t.pattern??(t.pattern=te),wt.init(e,t)})),Gt=D("$ZodCIDRv6",((e,t)=>{t.pattern??(t.pattern=ne),wt.init(e,t),e._zod.check=n=>{const[i,o]=n.value.split("/");try{if(!o)throw new Error;const e=Number(o);if(`${e}`!==o)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}}));function Ht(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Bt=D("$ZodBase64",((e,t)=>{t.pattern??(t.pattern=ie),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64"})),e._zod.check=n=>{Ht(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}})),Vt=D("$ZodBase64URL",((e,t)=>{t.pattern??(t.pattern=oe),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64url"})),e._zod.check=n=>{(function(e){if(!oe.test(e))return!1;const t=e.replace(/[-_]/g,(e=>"-"===e?"+":"/"));return Ht(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}})),qt=D("$ZodE164",((e,t)=>{t.pattern??(t.pattern=ae),wt.init(e,t)})),Qt=D("$ZodJWT",((e,t)=>{wt.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[i]=n;if(!i)return!1;const o=JSON.parse(atob(i));return!("typ"in o&&"JWT"!==o?.typ||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}})),Yt=D("$ZodNumber",((e,t)=>{kt.init(e,t),e._zod.pattern=e._zod.bag.pattern??le,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const o=n.value;if("number"==typeof o&&!Number.isNaN(o)&&Number.isFinite(o))return n;const r="number"==typeof o?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...r?{received:r}:{}}),n}})),Wt=D("$ZodNumber",((e,t)=>{Be.init(e,t),Yt.init(e,t)})),Jt=D("$ZodBoolean",((e,t)=>{kt.init(e,t),e._zod.pattern=pe,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const o=n.value;return"boolean"==typeof o||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}})),Kt=D("$ZodUnknown",((e,t)=>{kt.init(e,t),e._zod.parse=e=>e})),Xt=D("$ZodNever",((e,t)=>{kt.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)})),en=D("$ZodDate",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const o=n.value,r=o instanceof Date;return r&&!Number.isNaN(o.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:o,...r?{received:"Invalid Date"}:{},inst:e}),n}}));function tn(e,t,n){e.issues.length&&t.issues.push(...xe(n,e.issues)),t.value[n]=e.value}const nn=D("$ZodArray",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const r=[];for(let e=0;e<o.length;e++){const a=o[e],s=t.element._zod.run({value:a,issues:[]},i);s instanceof Promise?r.push(s.then((t=>tn(t,n,e)))):tn(s,n,e)}return r.length?Promise.all(r).then((()=>n)):n}}));function on(e,t,n,i){e.issues.length&&t.issues.push(...xe(n,e.issues)),void 0===e.value?n in i&&(t.value[n]=void 0):t.value[n]=e.value}function rn(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape[n]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(i=e.shape,Object.keys(i).filter((e=>"optional"===i[e]._zod.optin&&"optional"===i[e]._zod.optout)));var i;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function an(e,t,n,i,o,r){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type;for(const o of Object.keys(t)){if(s.has(o))continue;if("never"===u){a.push(o);continue}const r=c.run({value:t[o],issues:[]},i);r instanceof Promise?e.push(r.then((e=>on(e,n,o,t)))):on(r,n,o,t)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:r}),e.length?Promise.all(e).then((()=>n)):n}const sn=D("$ZodObject",((e,t)=>{kt.init(e,t);const n=ge((()=>rn(t)));Pe(e._zod,"propValues",(()=>{const e=t.shape,n={};for(const t in e){const i=e[t]._zod;if(i.values){n[t]??(n[t]=new Set);for(const e of i.values)n[t].add(e)}}return n}));const i=Ee,o=t.catchall;let r;e._zod.parse=(t,a)=>{r??(r=n.value);const s=t.value;if(!i(s))return t.issues.push({expected:"object",code:"invalid_type",input:s,inst:e}),t;t.value={};const c=[],u=r.shape;for(const e of r.keys){const n=u[e]._zod.run({value:s[e],issues:[]},a);n instanceof Promise?c.push(n.then((n=>on(n,t,e,s)))):on(n,t,e,s)}return o?an(c,s,t,a,n.value,e):c.length?Promise.all(c).then((()=>t)):t}})),cn=D("$ZodObjectJIT",((e,t)=>{sn.init(e,t);const n=e._zod.parse,i=ge((()=>rn(t)));let o;const r=Ee,a=!L.jitless,s=a&&Ae.value,c=t.catchall;let u;e._zod.parse=(d,l)=>{u??(u=i.value);const p=d.value;return r(p)?a&&s&&!1===l?.async&&!0!==l.jitless?(o||(o=(e=>{const t=new it(["shape","payload","ctx"]),n=i.value,o=e=>{const t=be(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const r=Object.create(null);let a=0;for(const e of n.keys)r[e]="key_"+a++;t.write("const newResult = {}");for(const e of n.keys){const n=r[e],i=be(e);t.write(`const ${n} = ${o(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${i}, ...iss.path] : [${i}]\n })));\n }\n \n if (${n}.value === undefined) {\n if (${i} in input) {\n newResult[${i}] = undefined;\n }\n } else {\n newResult[${i}] = ${n}.value;\n }\n `)}t.write("payload.value = newResult;"),t.write("return payload;");const s=t.compile();return(t,n)=>s(e,t,n)})(t.shape)),d=o(d,l),c?an([],p,d,l,u,e):d):n(d,l):(d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d)}}));function un(e,t,n,i){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const o=e.filter((e=>!$e(e)));return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((e=>e.issues.map((e=>Ze(e,i,M())))))}),t)}const dn=D("$ZodUnion",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.options.some((e=>"optional"===e._zod.optin))?"optional":void 0)),Pe(e._zod,"optout",(()=>t.options.some((e=>"optional"===e._zod.optout))?"optional":void 0)),Pe(e._zod,"values",(()=>{if(t.options.every((e=>e._zod.values)))return new Set(t.options.flatMap((e=>Array.from(e._zod.values))))})),Pe(e._zod,"pattern",(()=>{if(t.options.every((e=>e._zod.pattern))){const e=t.options.map((e=>e._zod.pattern));return new RegExp(`^(${e.map((e=>ye(e.source))).join("|")})$`)}}));const n=1===t.options.length,i=t.options[0]._zod.run;e._zod.parse=(o,r)=>{if(n)return i(o,r);let a=!1;const s=[];for(const e of t.options){const t=e._zod.run({value:o.value,issues:[]},r);if(t instanceof Promise)s.push(t),a=!0;else{if(0===t.issues.length)return t;s.push(t)}}return a?Promise.all(s).then((t=>un(t,o,e,r))):un(s,o,e,r)}})),ln=D("$ZodIntersection",((e,t)=>{kt.init(e,t),e._zod.parse=(e,n)=>{const i=e.value,o=t.left._zod.run({value:i,issues:[]},n),r=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||r instanceof Promise?Promise.all([o,r]).then((([t,n])=>fn(e,t,n))):fn(e,o,r)}}));function pn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Te(e)&&Te(t)){const n=Object.keys(t),i=Object.keys(e).filter((e=>-1!==n.indexOf(e))),o={...e,...t};for(const n of i){const i=pn(e[n],t[n]);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};o[n]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let i=0;i<e.length;i++){const o=pn(e[i],t[i]);if(!o.valid)return{valid:!1,mergeErrorPath:[i,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function fn(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),$e(e))return e;const i=pn(t.value,n.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return e.value=i.data,e}const hn=D("$ZodEnum",((e,t)=>{kt.init(e,t);const n=function(e){const t=Object.values(e).filter((e=>"number"==typeof e));return Object.entries(e).filter((([e,n])=>-1===t.indexOf(+e))).map((([e,t])=>t))}(t.entries),i=new Set(n);e._zod.values=i,e._zod.pattern=new RegExp(`^(${n.filter((e=>Ce.has(typeof e))).map((e=>"string"==typeof e?Ie(e):e.toString())).join("|")})$`),e._zod.parse=(t,o)=>{const r=t.value;return i.has(r)||t.issues.push({code:"invalid_value",values:n,input:r,inst:e}),t}})),mn=D("$ZodTransform",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new j(e.constructor.name);const o=t.transform(n.value,n);if(i.async)return(o instanceof Promise?o:Promise.resolve(o)).then((e=>(n.value=e,n)));if(o instanceof Promise)throw new U;return n.value=o,n}}));function gn(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const vn=D("$ZodOptional",((e,t)=>{kt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0)),Pe(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${ye(e.source)})?$`):void 0})),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((t=>gn(t,e.value))):gn(i,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}})),yn=D("$ZodNullable",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),Pe(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${ye(e.source)}|null)$`):void 0})),Pe(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0)),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)})),_n=D("$ZodDefault",((e,t)=>{kt.init(e,t),e._zod.optin="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((e=>Pn(e,t))):Pn(i,t)}}));function Pn(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const zn=D("$ZodPrefault",((e,t)=>{kt.init(e,t),e._zod.optin="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))})),kn=D("$ZodNonOptional",((e,t)=>{kt.init(e,t),Pe(e._zod,"values",(()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter((e=>void 0!==e))):void 0})),e._zod.parse=(n,i)=>{const o=t.innerType._zod.run(n,i);return o instanceof Promise?o.then((t=>bn(t,e))):bn(o,e)}}));function bn(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const wn=D("$ZodCatch",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((i=>(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Ze(e,n,M())))},input:e.value}),e.issues=[]),e))):(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Ze(e,n,M())))},input:e.value}),e.issues=[]),e)}})),En=D("$ZodPipe",((e,t)=>{kt.init(e,t),Pe(e._zod,"values",(()=>t.in._zod.values)),Pe(e._zod,"optin",(()=>t.in._zod.optin)),Pe(e._zod,"optout",(()=>t.out._zod.optout)),Pe(e._zod,"propValues",(()=>t.in._zod.propValues)),e._zod.parse=(e,n)=>{if("backward"===n.direction){const i=t.out._zod.run(e,n);return i instanceof Promise?i.then((e=>An(e,t.in,n))):An(i,t.in,n)}const i=t.in._zod.run(e,n);return i instanceof Promise?i.then((e=>An(e,t.out,n))):An(i,t.out,n)}}));function An(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Tn=D("$ZodReadonly",((e,t)=>{kt.init(e,t),Pe(e._zod,"propValues",(()=>t.innerType._zod.propValues)),Pe(e._zod,"values",(()=>t.innerType._zod.values)),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(Nn):Nn(i)}}));function Nn(e){return e.value=Object.freeze(e.value),e}const Cn=D("$ZodCustom",((e,t)=>{je.init(e,t),kt.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const i=n.value,o=t.fn(i);if(o instanceof Promise)return o.then((t=>In(t,n,i,e)));In(o,n,i,e)}}));function In(e,t,n,i){if(!e){const e={code:"custom",input:n,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(e.params=i._zod.def.params),t.issues.push(Ue(e))}}Symbol("ZodOutput"),Symbol("ZodInput");class Rn{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function On(){return new Rn}const Sn=On();function $n(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Oe(t)})}function xn(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Oe(t)})}function Fn(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Oe(t)})}function Zn(e,t){return new Me({check:"less_than",...Oe(t),value:e,inclusive:!1})}function Dn(e,t){return new Me({check:"less_than",...Oe(t),value:e,inclusive:!0})}function Un(e,t){return new Ge({check:"greater_than",...Oe(t),value:e,inclusive:!1})}function jn(e,t){return new Ge({check:"greater_than",...Oe(t),value:e,inclusive:!0})}function Ln(e,t){return new He({check:"multiple_of",...Oe(t),value:e})}function Mn(e,t){return new Ve({check:"max_length",...Oe(t),maximum:e})}function Gn(e,t){return new qe({check:"min_length",...Oe(t),minimum:e})}function Hn(e,t){return new Qe({check:"length_equals",...Oe(t),length:e})}function Bn(e){return new nt({check:"overwrite",tx:e})}const Vn=D("ZodISODateTime",((e,t)=>{Ft.init(e,t),hi.init(e,t)}));const qn=D("ZodISODate",((e,t)=>{Zt.init(e,t),hi.init(e,t)}));const Qn=D("ZodISOTime",((e,t)=>{Dt.init(e,t),hi.init(e,t)}));const Yn=D("ZodISODuration",((e,t)=>{Ut.init(e,t),hi.init(e,t)}));const Wn=(e,t)=>{rt.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},i={_errors:[]},o=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map((e=>o({issues:e})));else if("invalid_key"===t.code)o({issues:t.issues});else if("invalid_element"===t.code)o({issues:t.issues});else if(0===t.path.length)i._errors.push(n(t));else{let e=i,o=0;for(;o<t.path.length;){const i=t.path[o];o===t.path.length-1?(e[i]=e[i]||{_errors:[]},e[i]._errors.push(n(t))):e[i]=e[i]||{_errors:[]},e=e[i],o++}}};return o(e),i}(e,t)},flatten:{value:t=>function(e,t=(e=>e.message)){const n={},i=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):i.push(t(o));return{formErrors:i,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,me,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,me,2)}},isEmpty:{get:()=>0===e.issues.length}})},Jn=(D("ZodError",Wn),D("ZodError",Wn,{Parent:Error})),Kn=st(Jn),Xn=ct(Jn),ei=ut(Jn),ti=lt(Jn),ni=ft(Jn),ii=ht(Jn),oi=mt(Jn),ri=gt(Jn),ai=vt(Jn),si=yt(Jn),ci=_t(Jn),ui=Pt(Jn),di=D("ZodType",((e,t)=>(kt.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map((e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e))]}),e.clone=(t,n)=>Re(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>Kn(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ei(e,t,n),e.parseAsync=async(t,n)=>Xn(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>ti(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ni(e,t,n),e.decode=(t,n)=>ii(e,t,n),e.encodeAsync=async(t,n)=>oi(e,t,n),e.decodeAsync=async(t,n)=>ri(e,t,n),e.safeEncode=(t,n)=>ai(e,t,n),e.safeDecode=(t,n)=>si(e,t,n),e.safeEncodeAsync=async(t,n)=>ci(e,t,n),e.safeDecodeAsync=async(t,n)=>ui(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Oe(n)})}(po,e,t)}(t,n)),e.superRefine=t=>e.check(function(e){const t=function(e,t){const n=new je({check:"custom",...Oe(void 0)});return n._zod.check=e,n}((n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push(Ue(e,n.value,t._zod.def));else{const i=e;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),n.issues.push(Ue(i))}},e(n.value,n))));return t}(t)),e.overwrite=t=>e.check(Bn(t)),e.optional=()=>to(e),e.nullable=()=>io(e),e.nullish=()=>to(io(e)),e.nonoptional=t=>function(e,t){return new ao({type:"nonoptional",innerType:e,...Oe(t)})}(e,t),e.array=()=>Vi(e),e.or=t=>function(e,t){return new Yi({type:"union",options:e,...Oe(t)})}([e,t]),e.and=t=>new Wi({type:"intersection",left:e,right:t}),e.transform=t=>uo(e,Xi(t)),e.default=t=>{return n=t,new oo({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():Ne(n)}});var n},e.prefault=t=>{return n=t,new ro({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():Ne(n)}});var n},e.catch=t=>{return new so({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>uo(e,t),e.readonly=()=>new lo({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return Sn.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>Sn.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return Sn.get(e);const n=e.clone();return Sn.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e))),li=D("_ZodString",((e,t)=>{bt.init(e,t),di.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new We({check:"string_format",format:"regex",...Oe(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new Xe({check:"string_format",format:"includes",...Oe(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new et({check:"string_format",format:"starts_with",...Oe(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new tt({check:"string_format",format:"ends_with",...Oe(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Gn(...t)),e.max=(...t)=>e.check(Mn(...t)),e.length=(...t)=>e.check(Hn(...t)),e.nonempty=(...t)=>e.check(Gn(1,...t)),e.lowercase=t=>e.check(function(e){return new Je({check:"string_format",format:"lowercase",...Oe(e)})}(t)),e.uppercase=t=>e.check(function(e){return new Ke({check:"string_format",format:"uppercase",...Oe(e)})}(t)),e.trim=()=>e.check(Bn((e=>e.trim()))),e.normalize=(...t)=>e.check(function(e){return Bn((t=>t.normalize(e)))}(...t)),e.toLowerCase=()=>e.check(Bn((e=>e.toLowerCase()))),e.toUpperCase=()=>e.check(Bn((e=>e.toUpperCase())))})),pi=D("ZodString",((e,t)=>{bt.init(e,t),li.init(e,t),e.email=t=>e.check($n(mi,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Oe(t)})}(_i,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Oe(t)})}($i,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Oe(t)})}(Pi,t)),e.guid=t=>e.check(xn(vi,t)),e.uuid=t=>e.check(Fn(yi,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Oe(t)})}(yi,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Oe(t)})}(yi,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Oe(t)})}(yi,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Oe(t)})}(zi,t)),e.guid=t=>e.check(xn(vi,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Oe(t)})}(ki,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Oe(t)})}(bi,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Oe(t)})}(wi,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Oe(t)})}(Ri,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Oe(t)})}(Oi,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Oe(t)})}(Ei,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Oe(t)})}(Ai,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Oe(t)})}(Ti,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Oe(t)})}(Ni,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Oe(t)})}(Ci,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Oe(t)})}(Ii,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Oe(t)})}(Si,t)),e.datetime=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Oe(t)})}(Vn,e)}(t)),e.date=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Oe(t)})}(qn,e)}(t)),e.time=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Oe(t)})}(Qn,e)}(t)),e.duration=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Oe(t)})}(Yn,e)}(t))}));function fi(e){return function(e,t){return new e({type:"string",...Oe(t)})}(pi,e)}const hi=D("ZodStringFormat",((e,t)=>{wt.init(e,t),li.init(e,t)})),mi=D("ZodEmail",((e,t)=>{Tt.init(e,t),hi.init(e,t)}));function gi(e){return $n(mi,e)}const vi=D("ZodGUID",((e,t)=>{Et.init(e,t),hi.init(e,t)})),yi=D("ZodUUID",((e,t)=>{At.init(e,t),hi.init(e,t)})),_i=D("ZodURL",((e,t)=>{Nt.init(e,t),hi.init(e,t)})),Pi=D("ZodEmoji",((e,t)=>{Ct.init(e,t),hi.init(e,t)})),zi=D("ZodNanoID",((e,t)=>{It.init(e,t),hi.init(e,t)})),ki=D("ZodCUID",((e,t)=>{Rt.init(e,t),hi.init(e,t)})),bi=D("ZodCUID2",((e,t)=>{Ot.init(e,t),hi.init(e,t)})),wi=D("ZodULID",((e,t)=>{St.init(e,t),hi.init(e,t)})),Ei=D("ZodXID",((e,t)=>{$t.init(e,t),hi.init(e,t)})),Ai=D("ZodKSUID",((e,t)=>{xt.init(e,t),hi.init(e,t)})),Ti=D("ZodIPv4",((e,t)=>{jt.init(e,t),hi.init(e,t)})),Ni=D("ZodIPv6",((e,t)=>{Lt.init(e,t),hi.init(e,t)})),Ci=D("ZodCIDRv4",((e,t)=>{Mt.init(e,t),hi.init(e,t)})),Ii=D("ZodCIDRv6",((e,t)=>{Gt.init(e,t),hi.init(e,t)})),Ri=D("ZodBase64",((e,t)=>{Bt.init(e,t),hi.init(e,t)})),Oi=D("ZodBase64URL",((e,t)=>{Vt.init(e,t),hi.init(e,t)})),Si=D("ZodE164",((e,t)=>{qt.init(e,t),hi.init(e,t)})),$i=D("ZodJWT",((e,t)=>{Qt.init(e,t),hi.init(e,t)})),xi=D("ZodNumber",((e,t)=>{Yt.init(e,t),di.init(e,t),e.gt=(t,n)=>e.check(Un(t,n)),e.gte=(t,n)=>e.check(jn(t,n)),e.min=(t,n)=>e.check(jn(t,n)),e.lt=(t,n)=>e.check(Zn(t,n)),e.lte=(t,n)=>e.check(Dn(t,n)),e.max=(t,n)=>e.check(Dn(t,n)),e.int=t=>e.check(Di(t)),e.safe=t=>e.check(Di(t)),e.positive=t=>e.check(Un(0,t)),e.nonnegative=t=>e.check(jn(0,t)),e.negative=t=>e.check(Zn(0,t)),e.nonpositive=t=>e.check(Dn(0,t)),e.multipleOf=(t,n)=>e.check(Ln(t,n)),e.step=(t,n)=>e.check(Ln(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null}));function Fi(e){return function(e,t){return new e({type:"number",checks:[],...Oe(t)})}(xi,e)}const Zi=D("ZodNumberFormat",((e,t)=>{Wt.init(e,t),xi.init(e,t)}));function Di(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Oe(t)})}(Zi,e)}const Ui=D("ZodBoolean",((e,t)=>{Jt.init(e,t),di.init(e,t)}));const ji=D("ZodUnknown",((e,t)=>{Kt.init(e,t),di.init(e,t)}));function Li(){return new ji({type:"unknown"})}const Mi=D("ZodNever",((e,t)=>{Xt.init(e,t),di.init(e,t)}));function Gi(e){return function(e,t){return new e({type:"never",...Oe(t)})}(Mi,e)}const Hi=D("ZodDate",((e,t)=>{en.init(e,t),di.init(e,t),e.min=(t,n)=>e.check(jn(t,n)),e.max=(t,n)=>e.check(Dn(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null}));const Bi=D("ZodArray",((e,t)=>{nn.init(e,t),di.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Gn(t,n)),e.nonempty=t=>e.check(Gn(1,t)),e.max=(t,n)=>e.check(Mn(t,n)),e.length=(t,n)=>e.check(Hn(t,n)),e.unwrap=()=>e.element}));function Vi(e,t){return function(e,t,n){return new e({type:"array",element:t,...Oe(n)})}(Bi,e,t)}const qi=D("ZodObject",((e,t)=>{cn.init(e,t),di.init(e,t),Pe(e,"shape",(()=>t.shape)),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map((e=>[e,e]))):e;return new Ji({type:"enum",entries:n,...Oe(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Li()}),e.loose=()=>e.clone({...e._zod.def,catchall:Li()}),e.strict=()=>e.clone({...e._zod.def,catchall:Gi()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!Te(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const i=ke(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return ze(this,"shape",n),n},checks:[]});return Re(e,i)}(e,t),e.safeExtend=t=>function(e,t){if(!Te(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return ze(this,"shape",n),n},checks:e._zod.def.checks};return Re(e,n)}(e,t),e.merge=t=>function(e,t){const n=ke(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return ze(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Re(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return Re(e,ke(e._zod.def,{get shape(){const e={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(e[i]=n.shape[i])}return ze(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,i=ke(e._zod.def,{get shape(){const i={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete i[e]}return ze(this,"shape",i),i},checks:[]});return Re(e,i)}(e,t),e.partial=(...t)=>function(e,t,n){const i=ke(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=e?new e({type:"optional",innerType:i[t]}):i[t])}else for(const t in i)o[t]=e?new e({type:"optional",innerType:i[t]}):i[t];return ze(this,"shape",o),o},checks:[]});return Re(t,i)}(eo,e,t[0]),e.required=(...t)=>function(e,t,n){const i=ke(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in o))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=new e({type:"nonoptional",innerType:i[t]}))}else for(const t in i)o[t]=new e({type:"nonoptional",innerType:i[t]});return ze(this,"shape",o),o},checks:[]});return Re(t,i)}(ao,e,t[0])}));function Qi(e,t){const n={type:"object",get shape(){var t;return ze(this,"shape",e?(t=e,Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))):{}),this.shape},...Oe(t)};return new qi(n)}const Yi=D("ZodUnion",((e,t)=>{dn.init(e,t),di.init(e,t),e.options=t.options}));const Wi=D("ZodIntersection",((e,t)=>{ln.init(e,t),di.init(e,t)})),Ji=D("ZodEnum",((e,t)=>{hn.init(e,t),di.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,i)=>{const o={};for(const i of e){if(!n.has(i))throw new Error(`Key ${i} not found in enum`);o[i]=t.entries[i]}return new Ji({...t,checks:[],...Oe(i),entries:o})},e.exclude=(e,i)=>{const o={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete o[t]}return new Ji({...t,checks:[],...Oe(i),entries:o})}}));const Ki=D("ZodTransform",((e,t)=>{mn.init(e,t),di.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new j(e.constructor.name);n.addIssue=i=>{if("string"==typeof i)n.issues.push(Ue(i,n.value,t));else{const t=i;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push(Ue(t))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then((e=>(n.value=e,n))):(n.value=o,n)}}));function Xi(e){return new Ki({type:"transform",transform:e})}const eo=D("ZodOptional",((e,t)=>{vn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function to(e){return new eo({type:"optional",innerType:e})}const no=D("ZodNullable",((e,t)=>{yn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function io(e){return new no({type:"nullable",innerType:e})}const oo=D("ZodDefault",((e,t)=>{_n.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap})),ro=D("ZodPrefault",((e,t)=>{zn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),ao=D("ZodNonOptional",((e,t)=>{kn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),so=D("ZodCatch",((e,t)=>{wn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap})),co=D("ZodPipe",((e,t)=>{En.init(e,t),di.init(e,t),e.in=t.in,e.out=t.out}));function uo(e,t){return new co({type:"pipe",in:e,out:t})}const lo=D("ZodReadonly",((e,t)=>{Tn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),po=D("ZodCustom",((e,t)=>{Cn.init(e,t),di.init(e,t)}));function fo(e,t){return uo(Xi(e),t)}function ho(e,t,n){const i=t.safeParse(n);return i.success?i.data:(i.error.issues.forEach((t=>{const n=t.path.join(".");e.getFieldState(n)?e.setError(n,{type:"manual",message:t.message}):e.setError("root",{type:"manual",message:t.message})})),null)}const mo=e=>fo((e=>{if(e){if("string"==typeof e){const t=Number(e);return isNaN(t)?e:t}return e}}),e),go=e=>fo((e=>{if(!e)return;let t;return"string"==typeof e&&(t=new Date(e)),e instanceof Date&&(t=e),t?(t.setUTCHours(0,0,0,0),t):e}),e),vo=e=>fi().min(1,{error:"Required"}).max(e,`Maximum length is ${e} characters`),yo=()=>gi("Invalid email address").min(1,"Required"),_o=()=>mo(Fi("Valid amount required").positive("Positive amount required")),Po=()=>go(function(e){return function(e,t){return new e({type:"date",...Oe(t)})}(Hi,e)}("Valid date required").min(new Date,"Date must be in the future")),zo=e=>fi().max(e,`Maximum length is ${e} characters`),ko=Qi({address1:vo(100),address2:zo(100).optional(),city:vo(50),state:zo(50).optional(),postcode:zo(20).optional(),country:vo(50)}),bo=Qi({amount:_o(),message:zo(500).nullish(),giverFirstName:vo(50),giverLastName:vo(50),giverEmail:yo(),giverPhone:vo(31),giverAddress:ko,cardHolder:vo(101),recipientFirstName:zo(50).nullish(),recipientLastName:zo(50).nullish(),recipientEmail:gi("Invalid email address").nullish(),recipientPhone:zo(31).nullish()}),wo=bo.extend({expiry:Po(),notes:zo(500).nullish()}),Eo=Qi({balance:_o(),expiry:Po(),message:zo(500).nullish(),notes:zo(500).nullish(),giverFirstName:vo(50),giverLastName:vo(50),giverEmail:yo(),giverPhone:vo(31),cardHolder:vo(101),recipientEmail:gi("Invalid email address").nullish(),recipientPhone:zo(31).nullish()});let Ao;!function(e){e.Passthrough="Passthrough",e.PaymentProcessor="PaymentProcessor"}(Ao||(Ao={}));const To=Qi({companyId:Fi().int().positive(),amount:_o(),currency:vo(3).default("AUD")}),No=Qi({sessionId:vo(100),resultCode:vo(50),pspReference:zo(100).optional()}),Co=Qi({cardHolder:vo(100),cardNumberToken:zo(200),cardCvcToken:zo(200),cardExpiry:zo(5)}),Io=bo.extend({companyId:Fi().int().positive(),sendViaEmail:function(e){return function(e,t){return new e({type:"boolean",...Oe(t)})}(Ui,e)}().default(!0),payment:No.optional(),passthroughPayment:Co.optional()}),Ro=Qi({giftCardId:Fi().int().positive(),reason:zo(500).optional()}),Oo=Qi({companyId:Fi().int().positive().nullish(),code:vo(10),password:vo(10)}),So=Oo.extend({amount:_o(),description:vo(200)});let $o,xo,Fo,Zo,Do,Uo;!function(e){e.Adyen="Adyen"}($o||($o={})),function(e){e.Pending="Pending",e.Authorized="Authorized",e.Captured="Captured",e.Failed="Failed",e.Refunded="Refunded"}(xo||(xo={})),function(e){e.Authorised="Authorised",e.Refused="Refused",e.Cancelled="Cancelled",e.Pending="Pending",e.Received="Received",e.Error="Error",e.IdentifyShopper="IdentifyShopper",e.ChallengeShopper="ChallengeShopper"}(Fo||(Fo={})),function(e){e.AUTHORISATION="AUTHORISATION",e.CAPTURE="CAPTURE",e.REFUND="REFUND",e.CANCELLATION="CANCELLATION",e.REFUND_FAILED="REFUND_FAILED",e.CAPTURE_FAILED="CAPTURE_FAILED"}(Zo||(Zo={})),function(e){e.Purchase="Purchase",e.Redemption="Redemption",e.Adjustment="Adjustment"}(Do||(Do={})),function(e){e.Pending="Pending",e.Complete="Complete",e.Cancelled="Cancelled",e.Expired="Expired"}(Uo||(Uo={}));const jo=Qi({code:vo(10),token:vo(128)}),Lo=Qi({companyId:Fi().int().positive(),code:vo(10),token:vo(128)}),Mo=Qi({grant_type:fi().readonly().default("refresh_token"),client_id:Fn(yi,undefined),client_secret:fi(),refresh_token:fi(),scope:fi().optional()});const Go=Qi({email:gi(),firstName:fi().max(100).optional(),lastName:fi().max(100).optional(),phone:fi().max(20).optional(),scopes:Vi(fi()).optional()});let Ho;!function(e){e.PER_STAY="Per stay",e.PER_NIGHT="Per night",e.PER_PERSON="Per person",e.PER_PERSON_PER_NIGHT="Per person per night",e.PER_ALL_PERSONS="Per all persons",e.PER_ALL_PERSONS_PER_NIGHT="Per all persons per night",e.PER_QUANTITY_NAME_PER_NIGHT="Per Quantity Name Per Night",e.PER_ROOM_QUANTITY_PER_NIGHT="Per Room Quantity Per Night",e.PER_PERSON_OCCUPANCY_PER_NIGHT="Per Person Occupancy Per Night",e.PER_ADULT_OCCUPANCY_PER_NIGHT="Per Adult Occupancy Per Night",e.PER_CHILD_OCCUPANCY_PER_NIGHT="Per Child Occupancy Per Night"}(Ho||(Ho={}));const Bo=[Ho.PER_NIGHT,Ho.PER_PERSON_PER_NIGHT,Ho.PER_QUANTITY_NAME_PER_NIGHT,Ho.PER_ROOM_QUANTITY_PER_NIGHT,Ho.PER_PERSON_OCCUPANCY_PER_NIGHT,Ho.PER_ADULT_OCCUPANCY_PER_NIGHT,Ho.PER_CHILD_OCCUPANCY_PER_NIGHT,Ho.PER_ALL_PERSONS_PER_NIGHT];let Vo,qo,Qo;!function(e){e.Critical="Critical",e.Error="Error",e.Warn="Warn",e.Info="Info"}(Vo||(Vo={})),function(e){e.Debug="Diagnostics",e.Security="Security",e.Audit="Audit"}(qo||(qo={})),function(e){e.General="General",e.Authenticated="Token Authenticated",e.Unauthorized="Unauthorized Access",e.RefreshToken="Refresh Token Created",e.AccessToken="Access Token Created",e.Revoked="Token Revoked",e.UserCreated="User Created",e.UserLinked="User Linked to Company",e.Purchase="Gift Card Purchased",e.Payment="Payment",e.Email="Email Delivery",e.Transaction="Gift Card Transaction"}(Qo||(Qo={}));const Yo=e=>{let t=0;const n=Object.values(e.itinerary);for(const e of n){const n=Object.keys(e.nights);for(const i of n)t+=e.nights[i].total}return t},Wo=require("decimal.js");var Jo=e.n(Wo);const Ko={UP:Jo().ROUND_UP,DOWN:Jo().ROUND_DOWN,CEIL:Jo().ROUND_CEIL,FLOOR:Jo().ROUND_FLOOR,HALF_UP:Jo().ROUND_HALF_UP,HALF_DOWN:Jo().ROUND_HALF_DOWN,HALF_EVEN:Jo().ROUND_HALF_EVEN,HALF_CEIL:Jo().ROUND_HALF_CEIL,HALF_FLOOR:Jo().ROUND_HALF_FLOOR},Xo=(e,t)=>{const{precision:n=2,rounding:i=Ko.HALF_UP}=t||{};return new(Jo())(e).toDecimalPlaces(n,i).toNumber()};function er(e,t={}){const{baseAmount:n=0,numberOfNights:i=1,feeIncludedInBaseAmount:o=!1,extractedFromRates:r=!1,removedPercentages:a=[]}=t,s=Xo(n);switch(e.feeType){case O.PercentageOfBooking:if(o)return Xo(s*e.amount/(100+e.amount));if(r){const t=a.reduce(((e,t)=>e+t/(100+t)),0);return Xo(s/(1-t)*e.amount/(100+e.amount))}return Xo(s*(e.amount/100));case O.FixedChargePerRoom:case O.FixedChargePerBooking:return e.amount;case O.NightlyChargePerRoom:return Xo(e.amount*i);default:return 0}}const tr=[O.FixedChargePerBooking],nr=[O.PercentageOfBooking,O.FixedChargePerRoom,O.NightlyChargePerRoom],ir=[O.PercentageOfBooking];function or(e,t){return e.filter((e=>t.includes(e.feeType)))}function rr(e){return or(e,tr)}function ar(e){return or(e,nr)}function sr(e){return or(e,ir)}function cr(e){return{includeInRates:[O.PercentageOfBooking,O.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===O.PercentageOfBooking,appliesToAddons:e===O.PercentageOfBooking,includePreviousFeesInCalculation:e===O.PercentageOfBooking}}const ur=e=>e,dr=(e,t)=>{const n={};return t.forEach((t=>{t in e&&(n[t]=e[t])})),n},lr=(e,t)=>e.includes("cdn.app.roomstay.io")?e+"?w="+t:e;class pr{}function fr(e){return e.toUpperCase()}pr.calculateBaseAddonTotal=(e,t)=>{let n=0,i=0,o=0;e.price&&e.quantity&&(n=e.quantity*Number(e.price)),e.pricingType===Ho.PER_ADULT_OCCUPANCY_PER_NIGHT&&e.adultQuantity?n*=e.adultQuantity:e.pricingType===Ho.PER_CHILD_OCCUPANCY_PER_NIGHT&&e.childQuantity&&(n*=e.childQuantity),e.adultPrice&&e.adultQuantity&&(i=e.adultQuantity*Number(e.adultPrice)),e.childPrice&&e.childQuantity&&(o=e.childQuantity*Number(e.childPrice));let r=n+i+o;return Bo.includes(e.pricingType)&&e.nights&&!t&&(r*=e.nights),{indPrice:n,indAdultPrice:i,indChildPrice:o,addonTotal:r}},pr.calculateBasketAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=pr.calculateBaseAddonTotal(n,t);let o=0;return(n.fee||n.fees?.length)&&n.quantity?n.fees?.length?n.fees.forEach((e=>{o+=n.quantity*e.amount})):o=n.quantity*Number(n.fee):((n.adultFee||n.adultFees?.length)&&n.adultQuantity&&(n.adultFees?.length?n.adultFees.forEach((e=>{o+=n.adultQuantity*e.amount})):o+=n.adultQuantity??1*Number(n.adultFee)),(n.childFee||n.childFees?.length)&&n.childQuantity&&(n.childFees?.length?n.childFees.forEach((e=>{o+=n.childQuantity??1*e.amount})):o+=n.childQuantity*Number(n.childFee))),Bo.includes(n.pricingType)&&n.nights&&!t&&(o*=n.nights),{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+o,total:e.total+i.addonTotal+o}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0})),pr.calculateReservationAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=pr.calculateBaseAddonTotal(n,t);let o,r=n.discount||0;o=void 0!==n.total&&null!==n.total?n.total:i.addonTotal-r;let a=n.fees||0;n.itemisedFees?.length&&(a=n.itemisedFees.reduce(((e,t)=>e+t.amount),0));const s=n.itemisedFees?.length?o:o+a;return{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+a,total:e.total+o+a,displayPrice:e.displayPrice+s}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0,displayPrice:0})),pr.calculateTotalForReservation=(e,t=!1)=>{let n=0;return e.itemisedFees?.forEach((e=>{n+=e.amount})),e.reservations.forEach((e=>{n+=e.total.afterTax;const i=Object.keys(e.nights)?.length??0;if(n+=e.fees??0,e.addons?.length){const o=(e.addons??[]).map((e=>({...e,nights:i})));n+=pr.calculateReservationAddonTotal(o,t)?.total}})),Xo(n)},module.exports=t})();
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * decimal.js v10.4.3
3
+ * An arbitrary-precision Decimal type for JavaScript.
4
+ * https://github.com/MikeMcl/decimal.js
5
+ * Copyright (c) 2022 Michael Mclaughlin <M8ch88l@gmail.com>
6
+ * MIT Licence
7
+ */
@@ -0,0 +1,35 @@
1
+ export type AnalyticsEventName = 'AddToCart' | 'InitiateCheckout' | 'Purchase';
2
+ export interface IAnalyticsEventData {
3
+ currency: string;
4
+ value: number;
5
+ contentIds?: string[];
6
+ contentType?: string;
7
+ contents?: Array<{
8
+ id: string;
9
+ quantity: number;
10
+ itemPrice: number;
11
+ }>;
12
+ numItems?: number;
13
+ }
14
+ export interface IAnalyticsUserData {
15
+ email?: string;
16
+ phone?: string;
17
+ firstName?: string;
18
+ lastName?: string;
19
+ city?: string;
20
+ state?: string;
21
+ zipCode?: string;
22
+ country?: string;
23
+ externalId?: string;
24
+ }
25
+ export interface IAnalyticsEvent {
26
+ eventId: string;
27
+ sessionId: string;
28
+ hotelId: string;
29
+ eventName: AnalyticsEventName;
30
+ eventTime: number;
31
+ eventData: IAnalyticsEventData;
32
+ userData?: IAnalyticsUserData;
33
+ createdAt: number;
34
+ ttl: number;
35
+ }
@@ -0,0 +1,11 @@
1
+ export interface IAnalyticsSession {
2
+ sessionId: string;
3
+ hotelId: string;
4
+ fbc?: string;
5
+ fbp?: string;
6
+ externalId?: string;
7
+ userAgent?: string;
8
+ ipAddress?: string;
9
+ createdAt: number;
10
+ ttl: number;
11
+ }
@@ -0,0 +1,24 @@
1
+ export type IDailyRevenue = {
2
+ date: string;
3
+ revenue: number;
4
+ };
5
+ export type IDailyRoomBreakdown = {
6
+ date: string;
7
+ roomName: string;
8
+ purchases: number;
9
+ };
10
+ export type IRegionBreakdown = {
11
+ country: string;
12
+ region: string;
13
+ purchases: number;
14
+ revenue: number;
15
+ };
16
+ export type IBigQueryResponse = {
17
+ purchases: number;
18
+ cancellations: number;
19
+ revenue: number;
20
+ conversionRate: number;
21
+ dailyRevenue: IDailyRevenue[];
22
+ dailyRoomsBreakdown: IDailyRoomBreakdown[];
23
+ regionBreakdown: IRegionBreakdown[];
24
+ };
@@ -0,0 +1,65 @@
1
+ import { IRoomstayEventData } from './IRoomstayEventData.type';
2
+ /**
3
+ * Roomstay event names
4
+ */
5
+ export declare enum ERoomstayEventName {
6
+ ViewBookingEngine = "View/BookingEngine",
7
+ BasketAdd = "Basket/Add",
8
+ ViewCheckout = "View/Checkout",
9
+ BookingCommitted = "Booking/Committed"
10
+ }
11
+ /**
12
+ * Meta custom_data format
13
+ */
14
+ export interface IMetaEventData {
15
+ currency: string;
16
+ value: number;
17
+ content_ids?: string[];
18
+ content_type?: string;
19
+ contents?: Array<{
20
+ id: string;
21
+ quantity: number;
22
+ item_price: number;
23
+ }>;
24
+ num_items?: number;
25
+ }
26
+ /**
27
+ * Meta user data format
28
+ */
29
+ export interface IMetaUserData {
30
+ em?: string;
31
+ ph?: string;
32
+ fn?: string;
33
+ ln?: string;
34
+ ct?: string;
35
+ st?: string;
36
+ zp?: string;
37
+ country?: string;
38
+ external_id?: string;
39
+ }
40
+ /**
41
+ * Analytics event request payload
42
+ */
43
+ export interface IAnalyticsEventRequest {
44
+ eventId: string;
45
+ sessionId: string;
46
+ eventName: ERoomstayEventName;
47
+ eventTime: number;
48
+ hotelId: string;
49
+ fbc?: string;
50
+ fbp?: string;
51
+ eventData: IRoomstayEventData;
52
+ }
53
+ /**
54
+ * Analytics event stored in DynamoDB
55
+ */
56
+ export interface IAnalyticsEvent {
57
+ eventId: string;
58
+ sessionId: string;
59
+ hotelId: string;
60
+ eventName: ERoomstayEventName;
61
+ eventTime: number;
62
+ eventData: IRoomstayEventData;
63
+ createdAt: number;
64
+ ttl: number;
65
+ }
@@ -0,0 +1,20 @@
1
+ export interface IAnalyticsSession {
2
+ sessionId: string;
3
+ hotelId: string;
4
+ fbc?: string;
5
+ fbp?: string;
6
+ externalId?: string;
7
+ userAgent?: string;
8
+ ipAddress?: string;
9
+ createdAt: number;
10
+ ttl: number;
11
+ }
12
+ /**
13
+ * Request payload for creating a new analytics session
14
+ */
15
+ export interface IAnalyticsSessionRequest {
16
+ sessionId: string;
17
+ hotelId: string | number;
18
+ fbc?: string;
19
+ fbp?: string;
20
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Roomstay Analytics Event Data Types
3
+ */
4
+ /**
5
+ * Serialized representation of a BasketRow for analytics events.
6
+ */
7
+ export interface IRoomstayBasketItem {
8
+ roomCode: string;
9
+ roomId?: number;
10
+ roomName?: string;
11
+ rateCode: string;
12
+ rateName?: string;
13
+ startDate: string;
14
+ endDate: string;
15
+ numberOfNights: number;
16
+ adults: number;
17
+ children: number;
18
+ infants: number;
19
+ totalPrice: number;
20
+ averageNightlyRate: number;
21
+ promoCode?: string;
22
+ }
23
+ /**
24
+ * Guest/user information for analytics events.
25
+ * Used for Booking/Committed events where we have guest details.
26
+ */
27
+ export interface IRoomstayGuestData {
28
+ email?: string;
29
+ phone?: string;
30
+ firstName?: string;
31
+ lastName?: string;
32
+ city?: string;
33
+ state?: string;
34
+ postalCode?: string;
35
+ country?: string;
36
+ externalId?: string;
37
+ }
38
+ /**
39
+ * Event data for View/BookingEngine event.
40
+ */
41
+ export interface IRoomstayViewBookingEngineEventData {
42
+ _brand?: 'ViewBookingEngine';
43
+ }
44
+ /**
45
+ * Event data for Basket/Add event
46
+ */
47
+ export interface IRoomstayBasketAddEventData {
48
+ item: IRoomstayBasketItem;
49
+ currency: string;
50
+ }
51
+ /**
52
+ * Event data for View/Checkout event
53
+ */
54
+ export interface IRoomstayCheckoutViewEventData {
55
+ items: IRoomstayBasketItem[];
56
+ currency: string;
57
+ totalValue: number;
58
+ }
59
+ /**
60
+ * Event data for Booking/Committed event
61
+ */
62
+ export interface IRoomstayBookingCommittedEventData {
63
+ items: IRoomstayBasketItem[];
64
+ currency: string;
65
+ totalValue: number;
66
+ roomstayId: string;
67
+ itineraryNumber: string;
68
+ reservationNumbers: string[];
69
+ guest: IRoomstayGuestData;
70
+ }
71
+ export type IRoomstayEventData = IRoomstayViewBookingEngineEventData | IRoomstayBasketAddEventData | IRoomstayCheckoutViewEventData | IRoomstayBookingCommittedEventData;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Meta CAPI Transformer
3
+ *
4
+ * Transforms Roomstay event data to Meta CAPI format.
5
+ * Used both client-side (for Meta Pixel) and server-side (for Meta CAPI).
6
+ */
7
+ import { ERoomstayEventName, IMetaEventData, IMetaUserData } from './IAnalyticsEvent.type';
8
+ import { IRoomstayEventData, IRoomstayGuestData } from './IRoomstayEventData.type';
9
+ /**
10
+ * Maps Roomstay event names to Meta CAPI event names
11
+ */
12
+ export declare function toMetaEventName(eventName: ERoomstayEventName): string;
13
+ /**
14
+ * Transform roomstay event to Meta pixel/CAPI event.
15
+ * Note: ViewBookingEngine events should not be transformed - they are for session init only.
16
+ */
17
+ export declare function transformToMetaEventData(eventData: IRoomstayEventData): IMetaEventData;
18
+ /**
19
+ * Transform guest data to Meta user_data format.
20
+ */
21
+ export declare function transformToMetaUserData(guest: IRoomstayGuestData): IMetaUserData;
@@ -47,6 +47,7 @@ export type ReservationDTO = {
47
47
  city: string;
48
48
  postalCode: string;
49
49
  state?: string;
50
+ country?: string;
50
51
  };
51
52
  firstName: string;
52
53
  lastName: string;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This is the response body that comes down if a booking fails anywhere in the booking flow.
3
+ *
4
+ * Object will contain a public message only, with partial reservation data to be able to attempt to "resume" the booking
5
+ */
6
+ export type IBookingCreateErrorResponse = {
7
+ canRetryPayment: boolean;
8
+ isPaymentTaken: boolean;
9
+ publicMessage: string;
10
+ roomstayId: string;
11
+ };
@@ -0,0 +1,5 @@
1
+ export declare enum IBookingStatus {
2
+ Pending = "Pending",
3
+ Committed = "Committed",
4
+ Cancelled = "Cancelled"
5
+ }
@@ -0,0 +1,7 @@
1
+ export type IPrice = {
2
+ cost: number;
3
+ discount: number;
4
+ tax: number;
5
+ fee: number;
6
+ total: number;
7
+ };
@@ -0,0 +1,89 @@
1
+ import { EHotelCardProcessor } from './IBookingPayment.type';
2
+ export declare enum ESplitPaymentState {
3
+ INITIATED = "initiated",
4
+ GIFTCARD_AUTHORIZED = "giftcard_authorized",
5
+ CC_AUTHORIZED = "cc_authorized",
6
+ CAPTURED = "captured",
7
+ FAILED = "failed",
8
+ ROLLED_BACK = "rolled_back"
9
+ }
10
+ export declare enum ESplitPaymentStatus {
11
+ PENDING = "pending",
12
+ AUTHORIZED = "authorized",
13
+ CAPTURED = "captured",
14
+ FAILED = "failed"
15
+ }
16
+ export interface IGiftCardPaymentDetails {
17
+ amount: number;
18
+ cardCode: string;
19
+ authorizationId?: string;
20
+ status: ESplitPaymentStatus;
21
+ expiresAt?: Date;
22
+ }
23
+ export interface ICreditCardPaymentDetails {
24
+ amount: number;
25
+ processor: EHotelCardProcessor;
26
+ authorizationId?: string;
27
+ status: ESplitPaymentStatus;
28
+ expiresAt?: Date;
29
+ }
30
+ export interface ISplitPayment {
31
+ splitPaymentId: string;
32
+ totalAmount: number;
33
+ giftCard: IGiftCardPaymentDetails;
34
+ creditCard: ICreditCardPaymentDetails;
35
+ sessionState: ESplitPaymentState;
36
+ createdAt: Date;
37
+ updatedAt: Date;
38
+ expiresAt: Date;
39
+ }
40
+ export interface ISplitPaymentSession {
41
+ id: string;
42
+ bookingId: number;
43
+ companyId: number;
44
+ hotelId: string;
45
+ splitPayment: ISplitPayment;
46
+ }
47
+ export interface IInitiateSplitPaymentRequest {
48
+ bookingId: number;
49
+ giftCardCode: string;
50
+ giftCardAmount: number;
51
+ creditCardAmount: number;
52
+ }
53
+ export interface IInitiateSplitPaymentResponse {
54
+ sessionId: string;
55
+ giftCardAmount: number;
56
+ creditCardAmount: number;
57
+ expiresAt: Date;
58
+ }
59
+ export interface IAuthorizationResult {
60
+ success: boolean;
61
+ authorizationId?: string;
62
+ expiresAt?: Date;
63
+ error?: string;
64
+ }
65
+ export interface ICaptureResult {
66
+ success: boolean;
67
+ giftCardCaptured: boolean;
68
+ creditCardCaptured: boolean;
69
+ error?: string;
70
+ }
71
+ export interface ISplitPaymentCheckoutDetails {
72
+ sessionId: string;
73
+ currentStep: 'giftcard' | 'creditcard' | 'capture';
74
+ giftCard: {
75
+ amount: number;
76
+ status: ESplitPaymentStatus;
77
+ authorizationId?: string;
78
+ expiresAt?: Date;
79
+ };
80
+ creditCard: {
81
+ amount: number;
82
+ status: ESplitPaymentStatus;
83
+ processor?: EHotelCardProcessor;
84
+ redirectUrl?: string;
85
+ authorizationId?: string;
86
+ expiresAt?: Date;
87
+ };
88
+ expiresAt: Date;
89
+ }
@@ -0,0 +1,6 @@
1
+ export interface IFeeOptions {
2
+ includeInRates: boolean;
3
+ alreadyIncludedInRates: boolean;
4
+ appliesToAddons: boolean;
5
+ includePreviousFeesInCalculation: boolean;
6
+ }
@@ -4,5 +4,6 @@ export declare enum EIntegration {
4
4
  Top10 = "NewTop10",
5
5
  Gday = "Gday",
6
6
  Salesforce = "Salesforce",
7
- RAC = "RAC"
7
+ RAC = "RAC",
8
+ AnalyticsEvents = "AnalyticsEvents"
8
9
  }
@@ -115,6 +115,13 @@ export * from './Api/RoomNightRate.type';
115
115
  * Analytics
116
116
  */
117
117
  export * from './Analytics/IBigQueryResults.type';
118
+ /**
119
+ * Analytics Events
120
+ */
121
+ export * from './AnalyticsEvents/IAnalyticsSession.type';
122
+ export * from './AnalyticsEvents/IAnalyticsEvent.type';
123
+ export * from './AnalyticsEvents/IRoomstayEventData.type';
124
+ export * from './AnalyticsEvents/MetaCapiTransformer';
118
125
  /**
119
126
  * Gift Cards
120
127
  */
File without changes
package/dist/web.js CHANGED
@@ -1 +1 @@
1
- define("@roomstay/core",["decimal.js"],(e=>(()=>{"use strict";var t={60:t=>{t.exports=e}},n={};function i(e){var o=n[e];if(void 0!==o)return o.exports;var r=n[e]={exports:{}};return t[e](r,r.exports,i),r.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};return(()=>{let e,t,n,r,a;i.r(o),i.d(o,{ADDON_PER_NIGHT_TYPES:()=>jo,AddGiftCardSchema:()=>_o,AdyenEventCode:()=>Oo,AdyenResultCode:()=>Co,BaseGiftCardSchema:()=>yo,CancelGiftCardTransactionSchema:()=>Fo,CompleteGiftCardTransactionSchema:()=>xo,CreatePaymentSessionSchema:()=>bo,DATE_FORMAT:()=>R,EAddonPricingType:()=>Uo,EAdminCompanyUserRole:()=>p,EBookingFlow:()=>t,EBookingPaymentMethod:()=>n,EBookingStatus:()=>e,ECompanyProvider:()=>l,EDistanceUnitType:()=>y,EFeeType:()=>O,EGiftCardPaymentProvider:()=>Io,EGiftCardPaymentStatus:()=>Ro,EGiftCardPaymentType:()=>zo,EGiftCardTransactionType:()=>So,EGuaranteePolicyDepositMode:()=>w,EGuarantyPolicyPrepaymentType:()=>E,EHotelCardProcessor:()=>r,EHotelPriceModel:()=>f,EHotelStateFieldConfiguration:()=>h,EHotelWeekdayStartsOn:()=>m,EIntegration:()=>g,ELogCategory:()=>Mo,ELogSeverity:()=>Lo,ELogType:()=>Go,EPlanpayBookingStatus:()=>a,EPromoCodeDiscountType:()=>A,ERMSAuthSyncHistoryStatus:()=>z,ERMSDiscountType:()=>_,ERMSSyncStrategy:()=>P,ERoomstayEventSource:()=>T,ERoomstayImageSize:()=>b,ETransactionStatus:()=>$o,EditGiftCardSchema:()=>Po,GuestProfile:()=>d,HttpMethod:()=>C,IAuxiliaryFilterType:()=>v,IMaintenanceStatusService:()=>k,InternationalAddressSchema:()=>vo,ItineraryResponse:()=>c,PCIBookingCardProcessorTypes:()=>s,Package:()=>N,PassthroughPaymentDataSchema:()=>wo,PaymentProcessorDataSchema:()=>ko,PurchaseGiftCardSchema:()=>Eo,RedeemGiftCardSchema:()=>No,RefreshGiftCardTokenSchema:()=>Zo,RefundGiftCardSchema:()=>Ao,RegisterGiftCardAdminSchema:()=>Do,Reservation:()=>u,ReservedPackage:()=>I,RoundingType:()=>Qo,TotalCalculator:()=>sr,ValidateGiftCardSchema:()=>To,calculateFeeAmount:()=>qo,calculateTotalForMemberBooking:()=>Ho,getFeeOptionValidity:()=>ir,getFilteredBookingAddonFees:()=>nr,getFilteredBookingFees:()=>er,getFilteredBookingRateFees:()=>tr,maxString:()=>go,nameof:()=>or,preprocessDate:()=>lo,preprocessNumber:()=>uo,requireEmail:()=>fo,requireFutureDate:()=>mo,requirePositiveAmount:()=>ho,requireString:()=>po,resizeRoomstayImageUrl:()=>ar,roundMoney:()=>Yo,subset:()=>rr,uppercaseString:()=>cr,validateFormWithZod:()=>co}),function(e){e.Pending="Pending",e.Processing="Processing",e.Committed="Committed",e.Cancelled="Cancelled",e.Reverted="Reverted"}(e||(e={})),function(e){e.Default="Default",e.PreCheckoutPencil="PreCheckoutPencil",e.PostCheckoutPencil="PostCheckoutPencil"}(t||(t={})),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard",e.TrueRewards="TrueRewards"}(n||(n={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave",e.Mastercard="Mastercard",e.Stripe="Stripe",e.PayPal="PayPal"}(r||(r={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(a||(a={}));const s=[];class c{constructor(){this.roomstayId=void 0,this.itineraryNumber=void 0,this.total=void 0,this.hotelFrontendId=void 0,this.reservations=[],this.payment=void 0,this.feesSummary=void 0,this.itemisedFees=void 0,this.warnings=void 0}}class u{constructor(){this.reservationNumber=void 0,this.roomType=void 0,this.roomCode=void 0,this.rate=void 0,this.rateCode=void 0,this.images=void 0,this.guaranteePolicy=void 0,this.cancellationPolicy=void 0,this.checkInDate=void 0,this.checkOutDate=void 0,this.nights={},this.guestCounts={adults:1,children:0},this.guest=new d,this.paymentCard=void 0,this.paymentMethod=void 0,this.total=void 0,this.status=void 0,this.isCancelable=void 0,this.addons=void 0,this.comments=void 0,this.specialRequests=void 0,this.promoCode=void 0,this.guaranteePolicyLongDescription=void 0,this.cancellationPolicyLongDescription=void 0,this.itemisedFees=void 0}}class d{constructor(){this.title=void 0,this.firstName=void 0,this.middleName=void 0,this.lastName=void 0,this.nameSuffix=void 0,this.phone=void 0,this.email=void 0,this.address={},this.marketingOptIn=void 0,this.country=void 0}}let l,p,f,h,m,g,v,y,_,P,z,b,k,w,E,A,T;!function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay",e.OHIP="OHIP"}(l||(l={})),function(e){e.SuperAdmin="SuperAdmin",e.Admin="Admin",e.Limited="Limited"}(p||(p={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(f||(f={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(h||(h={})),function(e){e.Monday="monday",e.Sunday="sunday"}(m||(m={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce",e.RAC="RAC"}(g||(g={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(v||(v={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(_||(_={})),function(e){e.Hotel="hotel",e.HotelImages="hotelImages",e.Cancellation="cancellation",e.Room="room",e.Rates="rates",e.OneGuaranteePolicy="oneGuaranteePolicy",e.RoomRates="roomRates",e.RoomImages="roomImages",e.BookingSources="booking-sources",e.Areas="areas",e.Dwellings="dwellings",e.AreaDwellings="areaDwellings",e.ConvertDwellingConfigToAuxInput="convertDwellingConfigToAuxInput",e.Discounts="discounts",e.PropertyDiscounts="propertyDiscounts",e.RoomDiscounts="roomDiscounts",e.PropertySundries="propertySundries",e.PropertyFees="propertyFees",e.PropertyCards="property-cards",e.Countries="countries",e.Addons="addons",e.Requirements="requirements",e.RoomAddons="room-addons",e.ClientFacingPromoSync="clientFacingPromoSync",e.ClientFacingRoomSync="clientFacingRoomSync",e.ClientFacingRateSync="clientFacingRateSync",e.NewRateFetch="newRateFetch"}(P||(P={})),function(e){e.Success="success",e.Failure="failure",e.New="new",e.Queued="queued",e.InProgress="in_progress",e.RequireResume="require_resume"}(z||(z={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(b||(b={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(k||(k={}));class N{constructor(){this.ratePlanCode=void 0,this.name=void 0,this.description=void 0,this.inclusive=void 0,this.image=void 0,this.url=void 0,this.pricingType=void 0,this.quantity=void 0,this.category=void 0,this.cancelPenalty=void 0,this.guaranteeDescription=void 0,this.availability={}}}class I extends N{constructor(...e){super(...e),this.code=void 0,this.price=void 0,this.fees=void 0,this.itemisedFees=void 0,this.adultQuantity=void 0,this.childQuantity=void 0,this.adultPrice=void 0,this.childPrice=void 0,this.startDate=void 0,this.startTime=void 0,this.hideDatePicker=!1,this.hideQuantity=!1,this.order=void 0,this.discount=void 0,this.total=void 0}}!function(e){e.Full="Full",e.Percentage="Percentage",e.FirstNight="FirstNight",e.None="None"}(w||(w={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(E||(E={})),function(e){e.FlatPercent="flatPercent",e.FlatQuantity="flatQuantity",e.FlatQuantityPerStay="flatQuantityPerStay"}(A||(A={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(T||(T={}));const R="DD/MM/YYYY";let C,O;function S(e,t,n){function i(n,i){var o;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(o=n._zod).traits??(o.traits=new Set),n._zod.traits.add(e),t(n,i);for(const e in a.prototype)e in n||Object.defineProperty(n,e,{value:a.prototype[e].bind(n)});n._zod.constr=a,n._zod.def=i}const o=n?.Parent??Object;class r extends o{}function a(e){var t;const o=n?.Parent?new r:this;i(o,e),(t=o._zod).deferred??(t.deferred=[]);for(const e of o._zod.deferred)e();return o}return Object.defineProperty(r,"name",{value:e}),Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}!function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(C||(C={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(O||(O={})),Object.freeze({status:"aborted"}),Symbol("zod_brand");class $ extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class x extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const F={};function Z(e){return e&&Object.assign(F,e),F}const D=/^[cC][^\s-]{8,}$/,U=/^[0-9a-z]+$/,j=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,L=/^[0-9a-vA-V]{20}$/,M=/^[A-Za-z0-9]{27}$/,G=/^[a-zA-Z0-9_-]{21}$/,H=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,B=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,V=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Q=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Y=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,q=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,W=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,J=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,K=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,X=/^[A-Za-z0-9_-]*$/,ee=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,te=/^\+(?:[0-9]){6,14}[0-9]$/,ne="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ie=new RegExp(`^${ne}$`);function oe(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const re=/^\d+$/,ae=/^-?\d+(?:\.\d+)?/i,se=/true|false/i,ce=/^[^A-Z]*$/,ue=/^[^a-z]*$/;function de(e,t){return"bigint"==typeof t?t.toString():t}function le(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function pe(e){return null==e}function fe(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const he=Symbol("evaluating");function me(e,t,n){let i;Object.defineProperty(e,t,{get(){if(i!==he)return void 0===i&&(i=he,i=n()),i},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ge(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ve(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function ye(e){return JSON.stringify(e)}const _e="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Pe(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const ze=le((()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}}));function be(e){if(!1===Pe(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==Pe(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function ke(e){return be(e)?{...e}:e}const we=new Set(["string","number","symbol"]);function Ee(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ae(e,t,n){const i=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(i._zod.parent=e),i}function Te(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}new Set(["string","number","bigint","boolean","symbol","undefined"]);const Ne={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Ie(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function Re(e,t){return t.map((t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t}))}function Ce(e){return"string"==typeof e?e:e?.message}function Oe(e,t,n){const i={...e,path:e.path??[]};if(!e.message){const o=Ce(e.inst?._zod.def?.error?.(e))??Ce(t?.error?.(e))??Ce(n.customError?.(e))??Ce(n.localeError?.(e))??"Invalid input";i.message=o}return delete i.inst,delete i.continue,t?.reportInput||delete i.input,i}function Se(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function $e(...e){const[t,n,i]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:i}:{...t}}const xe=S("$ZodCheck",((e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])})),Fe={number:"number",bigint:"bigint",object:"date"},Ze=S("$ZodCheckLessThan",((e,t)=>{xe.init(e,t);const n=Fe[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value<=t.value:i.value<t.value)||i.issues.push({origin:n,code:"too_big",maximum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),De=S("$ZodCheckGreaterThan",((e,t)=>{xe.init(e,t);const n=Fe[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value>=t.value:i.value>t.value)||i.issues.push({origin:n,code:"too_small",minimum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),Ue=S("$ZodCheckMultipleOf",((e,t)=>{xe.init(e,t),e._zod.onattach.push((e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)})),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,i=t.toString();let o=(i.split(".")[1]||"").length;if(0===o&&/\d?e-\d?/.test(i)){const e=i.match(/\d?e-(\d?)/);e?.[1]&&(o=Number.parseInt(e[1]))}const r=n>o?n:o;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}})),je=S("$ZodCheckNumberFormat",((e,t)=>{xe.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),i=n?"int":"number",[o,r]=Ne[t.format];e._zod.onattach.push((e=>{const i=e._zod.bag;i.format=t.format,i.minimum=o,i.maximum=r,n&&(i.pattern=re)})),e._zod.check=a=>{const s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:i,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}))}s<o&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),s>r&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inst:e})}})),Le=S("$ZodCheckMaxLength",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)})),e._zod.check=n=>{const i=n.value;if(i.length<=t.maximum)return;const o=Se(i);n.issues.push({origin:o,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Me=S("$ZodCheckMinLength",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)})),e._zod.check=n=>{const i=n.value;if(i.length>=t.minimum)return;const o=Se(i);n.issues.push({origin:o,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Ge=S("$ZodCheckLengthEquals",((e,t)=>{var n;xe.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!pe(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length})),e._zod.check=n=>{const i=n.value,o=i.length;if(o===t.length)return;const r=Se(i),a=o>t.length;n.issues.push({origin:r,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}})),He=S("$ZodCheckStringFormat",((e,t)=>{var n,i;xe.init(e,t),e._zod.onattach.push((e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))})),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(i=e._zod).check??(i.check=()=>{})})),Be=S("$ZodCheckRegex",((e,t)=>{He.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}})),Ve=S("$ZodCheckLowerCase",((e,t)=>{t.pattern??(t.pattern=ce),He.init(e,t)})),Qe=S("$ZodCheckUpperCase",((e,t)=>{t.pattern??(t.pattern=ue),He.init(e,t)})),Ye=S("$ZodCheckIncludes",((e,t)=>{xe.init(e,t);const n=Ee(t.includes),i=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=i,e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(i)})),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}})),qe=S("$ZodCheckStartsWith",((e,t)=>{xe.init(e,t);const n=new RegExp(`^${Ee(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}})),We=S("$ZodCheckEndsWith",((e,t)=>{xe.init(e,t);const n=new RegExp(`.*${Ee(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}})),Je=S("$ZodCheckOverwrite",((e,t)=>{xe.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}));class Ke{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter((e=>e)),n=Math.min(...t.map((e=>e.length-e.trimStart().length))),i=t.map((e=>e.slice(n))).map((e=>" ".repeat(2*this.indent)+e));for(const e of i)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map((e=>` ${e}`))].join("\n"))}}const Xe=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,de,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},et=S("$ZodError",Xe),tt=S("$ZodError",Xe,{Parent:Error}),nt=e=>(t,n,i,o)=>{const r=i?Object.assign(i,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise)throw new $;if(a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Oe(e,r,Z()))));throw _e(t,o?.callee),t}return a.value},it=e=>async(t,n,i,o)=>{const r=i?Object.assign(i,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise&&(a=await a),a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Oe(e,r,Z()))));throw _e(t,o?.callee),t}return a.value},ot=e=>(t,n,i)=>{const o=i?{...i,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},o);if(r instanceof Promise)throw new $;return r.issues.length?{success:!1,error:new(e??et)(r.issues.map((e=>Oe(e,o,Z()))))}:{success:!0,data:r.value}},rt=ot(tt),at=e=>async(t,n,i)=>{const o=i?Object.assign(i,{async:!0}):{async:!0};let r=t._zod.run({value:n,issues:[]},o);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map((e=>Oe(e,o,Z()))))}:{success:!0,data:r.value}},st=at(tt),ct=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return nt(e)(t,n,o)},ut=e=>(t,n,i)=>nt(e)(t,n,i),dt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return it(e)(t,n,o)},lt=e=>async(t,n,i)=>it(e)(t,n,i),pt=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ot(e)(t,n,o)},ft=e=>(t,n,i)=>ot(e)(t,n,i),ht=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return at(e)(t,n,o)},mt=e=>async(t,n,i)=>at(e)(t,n,i),gt={major:4,minor:1,patch:5},vt=S("$ZodType",((e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=gt;const i=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&i.unshift(e);for(const t of i)for(const n of t._zod.onattach)n(e);if(0===i.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push((()=>{e._zod.run=e._zod.parse}));else{const t=(e,t,n)=>{let i,o=Ie(e);for(const r of t){if(r._zod.def.when){if(!r._zod.def.when(e))continue}else if(o)continue;const t=e.issues.length,a=r._zod.check(e);if(a instanceof Promise&&!1===n?.async)throw new $;if(i||a instanceof Promise)i=(i??Promise.resolve()).then((async()=>{await a,e.issues.length!==t&&(o||(o=Ie(e,t)))}));else{if(e.issues.length===t)continue;o||(o=Ie(e,t))}}return i?i.then((()=>e)):e},n=(n,o,r)=>{if(Ie(n))return n.aborted=!0,n;const a=t(o,i,r);if(a instanceof Promise){if(!1===r.async)throw new $;return a.then((t=>e._zod.parse(t,r)))}return e._zod.parse(a,r)};e._zod.run=(o,r)=>{if(r.skipChecks)return e._zod.parse(o,r);if("backward"===r.direction){const t=e._zod.parse({value:o.value,issues:[]},{...r,skipChecks:!0});return t instanceof Promise?t.then((e=>n(e,o,r))):n(t,o,r)}const a=e._zod.parse(o,r);if(a instanceof Promise){if(!1===r.async)throw new $;return a.then((e=>t(e,i,r)))}return t(a,i,r)}}e["~standard"]={validate:t=>{try{const n=rt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return st(e,t).then((e=>e.success?{value:e.data}:{issues:e.error?.issues}))}},vendor:"zod",version:1}})),yt=S("$ZodString",((e,t)=>{var n;vt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}})),_t=S("$ZodStringFormat",((e,t)=>{He.init(e,t),yt.init(e,t)})),Pt=S("$ZodGUID",((e,t)=>{t.pattern??(t.pattern=B),_t.init(e,t)})),zt=S("$ZodUUID",((e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=V(e))}else t.pattern??(t.pattern=V());_t.init(e,t)})),bt=S("$ZodEmail",((e,t)=>{t.pattern??(t.pattern=Q),_t.init(e,t)})),kt=S("$ZodURL",((e,t)=>{_t.init(e,t),e._zod.check=n=>{try{const i=n.value.trim(),o=new URL(i);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:ee.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=o.href:n.value=i)}catch(i){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}})),wt=S("$ZodEmoji",((e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),_t.init(e,t)})),Et=S("$ZodNanoID",((e,t)=>{t.pattern??(t.pattern=G),_t.init(e,t)})),At=S("$ZodCUID",((e,t)=>{t.pattern??(t.pattern=D),_t.init(e,t)})),Tt=S("$ZodCUID2",((e,t)=>{t.pattern??(t.pattern=U),_t.init(e,t)})),Nt=S("$ZodULID",((e,t)=>{t.pattern??(t.pattern=j),_t.init(e,t)})),It=S("$ZodXID",((e,t)=>{t.pattern??(t.pattern=L),_t.init(e,t)})),Rt=S("$ZodKSUID",((e,t)=>{t.pattern??(t.pattern=M),_t.init(e,t)})),Ct=S("$ZodISODateTime",((e,t)=>{t.pattern??(t.pattern=function(e){const t=oe({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const i=`${t}(?:${n.join("|")})`;return new RegExp(`^${ne}T(?:${i})$`)}(t)),_t.init(e,t)})),Ot=S("$ZodISODate",((e,t)=>{t.pattern??(t.pattern=ie),_t.init(e,t)})),St=S("$ZodISOTime",((e,t)=>{t.pattern??(t.pattern=new RegExp(`^${oe(t)}$`)),_t.init(e,t)})),$t=S("$ZodISODuration",((e,t)=>{t.pattern??(t.pattern=H),_t.init(e,t)})),xt=S("$ZodIPv4",((e,t)=>{t.pattern??(t.pattern=Y),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv4"}))})),Ft=S("$ZodIPv6",((e,t)=>{t.pattern??(t.pattern=q),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv6"})),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}})),Zt=S("$ZodCIDRv4",((e,t)=>{t.pattern??(t.pattern=W),_t.init(e,t)})),Dt=S("$ZodCIDRv6",((e,t)=>{t.pattern??(t.pattern=J),_t.init(e,t),e._zod.check=n=>{const[i,o]=n.value.split("/");try{if(!o)throw new Error;const e=Number(o);if(`${e}`!==o)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}}));function Ut(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const jt=S("$ZodBase64",((e,t)=>{t.pattern??(t.pattern=K),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64"})),e._zod.check=n=>{Ut(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}})),Lt=S("$ZodBase64URL",((e,t)=>{t.pattern??(t.pattern=X),_t.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64url"})),e._zod.check=n=>{(function(e){if(!X.test(e))return!1;const t=e.replace(/[-_]/g,(e=>"-"===e?"+":"/"));return Ut(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}})),Mt=S("$ZodE164",((e,t)=>{t.pattern??(t.pattern=te),_t.init(e,t)})),Gt=S("$ZodJWT",((e,t)=>{_t.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[i]=n;if(!i)return!1;const o=JSON.parse(atob(i));return!("typ"in o&&"JWT"!==o?.typ||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}})),Ht=S("$ZodNumber",((e,t)=>{vt.init(e,t),e._zod.pattern=e._zod.bag.pattern??ae,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const o=n.value;if("number"==typeof o&&!Number.isNaN(o)&&Number.isFinite(o))return n;const r="number"==typeof o?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...r?{received:r}:{}}),n}})),Bt=S("$ZodNumber",((e,t)=>{je.init(e,t),Ht.init(e,t)})),Vt=S("$ZodBoolean",((e,t)=>{vt.init(e,t),e._zod.pattern=se,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const o=n.value;return"boolean"==typeof o||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}})),Qt=S("$ZodUnknown",((e,t)=>{vt.init(e,t),e._zod.parse=e=>e})),Yt=S("$ZodNever",((e,t)=>{vt.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)})),qt=S("$ZodDate",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const o=n.value,r=o instanceof Date;return r&&!Number.isNaN(o.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:o,...r?{received:"Invalid Date"}:{},inst:e}),n}}));function Wt(e,t,n){e.issues.length&&t.issues.push(...Re(n,e.issues)),t.value[n]=e.value}const Jt=S("$ZodArray",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const r=[];for(let e=0;e<o.length;e++){const a=o[e],s=t.element._zod.run({value:a,issues:[]},i);s instanceof Promise?r.push(s.then((t=>Wt(t,n,e)))):Wt(s,n,e)}return r.length?Promise.all(r).then((()=>n)):n}}));function Kt(e,t,n,i){e.issues.length&&t.issues.push(...Re(n,e.issues)),void 0===e.value?n in i&&(t.value[n]=void 0):t.value[n]=e.value}function Xt(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape[n]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(i=e.shape,Object.keys(i).filter((e=>"optional"===i[e]._zod.optin&&"optional"===i[e]._zod.optout)));var i;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function en(e,t,n,i,o,r){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type;for(const o of Object.keys(t)){if(s.has(o))continue;if("never"===u){a.push(o);continue}const r=c.run({value:t[o],issues:[]},i);r instanceof Promise?e.push(r.then((e=>Kt(e,n,o,t)))):Kt(r,n,o,t)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:r}),e.length?Promise.all(e).then((()=>n)):n}const tn=S("$ZodObject",((e,t)=>{vt.init(e,t);const n=le((()=>Xt(t)));me(e._zod,"propValues",(()=>{const e=t.shape,n={};for(const t in e){const i=e[t]._zod;if(i.values){n[t]??(n[t]=new Set);for(const e of i.values)n[t].add(e)}}return n}));const i=Pe,o=t.catchall;let r;e._zod.parse=(t,a)=>{r??(r=n.value);const s=t.value;if(!i(s))return t.issues.push({expected:"object",code:"invalid_type",input:s,inst:e}),t;t.value={};const c=[],u=r.shape;for(const e of r.keys){const n=u[e]._zod.run({value:s[e],issues:[]},a);n instanceof Promise?c.push(n.then((n=>Kt(n,t,e,s)))):Kt(n,t,e,s)}return o?en(c,s,t,a,n.value,e):c.length?Promise.all(c).then((()=>t)):t}})),nn=S("$ZodObjectJIT",((e,t)=>{tn.init(e,t);const n=e._zod.parse,i=le((()=>Xt(t)));let o;const r=Pe,a=!F.jitless,s=a&&ze.value,c=t.catchall;let u;e._zod.parse=(d,l)=>{u??(u=i.value);const p=d.value;return r(p)?a&&s&&!1===l?.async&&!0!==l.jitless?(o||(o=(e=>{const t=new Ke(["shape","payload","ctx"]),n=i.value,o=e=>{const t=ye(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const r=Object.create(null);let a=0;for(const e of n.keys)r[e]="key_"+a++;t.write("const newResult = {}");for(const e of n.keys){const n=r[e],i=ye(e);t.write(`const ${n} = ${o(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${i}, ...iss.path] : [${i}]\n })));\n }\n \n if (${n}.value === undefined) {\n if (${i} in input) {\n newResult[${i}] = undefined;\n }\n } else {\n newResult[${i}] = ${n}.value;\n }\n `)}t.write("payload.value = newResult;"),t.write("return payload;");const s=t.compile();return(t,n)=>s(e,t,n)})(t.shape)),d=o(d,l),c?en([],p,d,l,u,e):d):n(d,l):(d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d)}}));function on(e,t,n,i){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const o=e.filter((e=>!Ie(e)));return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((e=>e.issues.map((e=>Oe(e,i,Z())))))}),t)}const rn=S("$ZodUnion",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.options.some((e=>"optional"===e._zod.optin))?"optional":void 0)),me(e._zod,"optout",(()=>t.options.some((e=>"optional"===e._zod.optout))?"optional":void 0)),me(e._zod,"values",(()=>{if(t.options.every((e=>e._zod.values)))return new Set(t.options.flatMap((e=>Array.from(e._zod.values))))})),me(e._zod,"pattern",(()=>{if(t.options.every((e=>e._zod.pattern))){const e=t.options.map((e=>e._zod.pattern));return new RegExp(`^(${e.map((e=>fe(e.source))).join("|")})$`)}}));const n=1===t.options.length,i=t.options[0]._zod.run;e._zod.parse=(o,r)=>{if(n)return i(o,r);let a=!1;const s=[];for(const e of t.options){const t=e._zod.run({value:o.value,issues:[]},r);if(t instanceof Promise)s.push(t),a=!0;else{if(0===t.issues.length)return t;s.push(t)}}return a?Promise.all(s).then((t=>on(t,o,e,r))):on(s,o,e,r)}})),an=S("$ZodIntersection",((e,t)=>{vt.init(e,t),e._zod.parse=(e,n)=>{const i=e.value,o=t.left._zod.run({value:i,issues:[]},n),r=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||r instanceof Promise?Promise.all([o,r]).then((([t,n])=>cn(e,t,n))):cn(e,o,r)}}));function sn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(be(e)&&be(t)){const n=Object.keys(t),i=Object.keys(e).filter((e=>-1!==n.indexOf(e))),o={...e,...t};for(const n of i){const i=sn(e[n],t[n]);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};o[n]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let i=0;i<e.length;i++){const o=sn(e[i],t[i]);if(!o.valid)return{valid:!1,mergeErrorPath:[i,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function cn(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),Ie(e))return e;const i=sn(t.value,n.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return e.value=i.data,e}const un=S("$ZodEnum",((e,t)=>{vt.init(e,t);const n=function(e){const t=Object.values(e).filter((e=>"number"==typeof e));return Object.entries(e).filter((([e,n])=>-1===t.indexOf(+e))).map((([e,t])=>t))}(t.entries),i=new Set(n);e._zod.values=i,e._zod.pattern=new RegExp(`^(${n.filter((e=>we.has(typeof e))).map((e=>"string"==typeof e?Ee(e):e.toString())).join("|")})$`),e._zod.parse=(t,o)=>{const r=t.value;return i.has(r)||t.issues.push({code:"invalid_value",values:n,input:r,inst:e}),t}})),dn=S("$ZodTransform",((e,t)=>{vt.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new x(e.constructor.name);const o=t.transform(n.value,n);if(i.async)return(o instanceof Promise?o:Promise.resolve(o)).then((e=>(n.value=e,n)));if(o instanceof Promise)throw new $;return n.value=o,n}}));function ln(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const pn=S("$ZodOptional",((e,t)=>{vt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",me(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0)),me(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${fe(e.source)})?$`):void 0})),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((t=>ln(t,e.value))):ln(i,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}})),fn=S("$ZodNullable",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),me(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${fe(e.source)}|null)$`):void 0})),me(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0)),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)})),hn=S("$ZodDefault",((e,t)=>{vt.init(e,t),e._zod.optin="optional",me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((e=>mn(e,t))):mn(i,t)}}));function mn(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const gn=S("$ZodPrefault",((e,t)=>{vt.init(e,t),e._zod.optin="optional",me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))})),vn=S("$ZodNonOptional",((e,t)=>{vt.init(e,t),me(e._zod,"values",(()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter((e=>void 0!==e))):void 0})),e._zod.parse=(n,i)=>{const o=t.innerType._zod.run(n,i);return o instanceof Promise?o.then((t=>yn(t,e))):yn(o,e)}}));function yn(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const _n=S("$ZodCatch",((e,t)=>{vt.init(e,t),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),me(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((i=>(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Oe(e,n,Z())))},input:e.value}),e.issues=[]),e))):(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Oe(e,n,Z())))},input:e.value}),e.issues=[]),e)}})),Pn=S("$ZodPipe",((e,t)=>{vt.init(e,t),me(e._zod,"values",(()=>t.in._zod.values)),me(e._zod,"optin",(()=>t.in._zod.optin)),me(e._zod,"optout",(()=>t.out._zod.optout)),me(e._zod,"propValues",(()=>t.in._zod.propValues)),e._zod.parse=(e,n)=>{if("backward"===n.direction){const i=t.out._zod.run(e,n);return i instanceof Promise?i.then((e=>zn(e,t.in,n))):zn(i,t.in,n)}const i=t.in._zod.run(e,n);return i instanceof Promise?i.then((e=>zn(e,t.out,n))):zn(i,t.out,n)}}));function zn(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const bn=S("$ZodReadonly",((e,t)=>{vt.init(e,t),me(e._zod,"propValues",(()=>t.innerType._zod.propValues)),me(e._zod,"values",(()=>t.innerType._zod.values)),me(e._zod,"optin",(()=>t.innerType._zod.optin)),me(e._zod,"optout",(()=>t.innerType._zod.optout)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(kn):kn(i)}}));function kn(e){return e.value=Object.freeze(e.value),e}const wn=S("$ZodCustom",((e,t)=>{xe.init(e,t),vt.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const i=n.value,o=t.fn(i);if(o instanceof Promise)return o.then((t=>En(t,n,i,e)));En(o,n,i,e)}}));function En(e,t,n,i){if(!e){const e={code:"custom",input:n,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(e.params=i._zod.def.params),t.issues.push($e(e))}}Symbol("ZodOutput"),Symbol("ZodInput");class An{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Tn(){return new An}const Nn=Tn();function In(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Te(t)})}function Rn(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Te(t)})}function Cn(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Te(t)})}function On(e,t){return new Ze({check:"less_than",...Te(t),value:e,inclusive:!1})}function Sn(e,t){return new Ze({check:"less_than",...Te(t),value:e,inclusive:!0})}function $n(e,t){return new De({check:"greater_than",...Te(t),value:e,inclusive:!1})}function xn(e,t){return new De({check:"greater_than",...Te(t),value:e,inclusive:!0})}function Fn(e,t){return new Ue({check:"multiple_of",...Te(t),value:e})}function Zn(e,t){return new Le({check:"max_length",...Te(t),maximum:e})}function Dn(e,t){return new Me({check:"min_length",...Te(t),minimum:e})}function Un(e,t){return new Ge({check:"length_equals",...Te(t),length:e})}function jn(e){return new Je({check:"overwrite",tx:e})}const Ln=S("ZodISODateTime",((e,t)=>{Ct.init(e,t),ui.init(e,t)}));const Mn=S("ZodISODate",((e,t)=>{Ot.init(e,t),ui.init(e,t)}));const Gn=S("ZodISOTime",((e,t)=>{St.init(e,t),ui.init(e,t)}));const Hn=S("ZodISODuration",((e,t)=>{$t.init(e,t),ui.init(e,t)}));const Bn=(e,t)=>{et.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},i={_errors:[]},o=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map((e=>o({issues:e})));else if("invalid_key"===t.code)o({issues:t.issues});else if("invalid_element"===t.code)o({issues:t.issues});else if(0===t.path.length)i._errors.push(n(t));else{let e=i,o=0;for(;o<t.path.length;){const i=t.path[o];o===t.path.length-1?(e[i]=e[i]||{_errors:[]},e[i]._errors.push(n(t))):e[i]=e[i]||{_errors:[]},e=e[i],o++}}};return o(e),i}(e,t)},flatten:{value:t=>function(e,t=(e=>e.message)){const n={},i=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):i.push(t(o));return{formErrors:i,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,de,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,de,2)}},isEmpty:{get:()=>0===e.issues.length}})},Vn=(S("ZodError",Bn),S("ZodError",Bn,{Parent:Error})),Qn=nt(Vn),Yn=it(Vn),qn=ot(Vn),Wn=at(Vn),Jn=ct(Vn),Kn=ut(Vn),Xn=dt(Vn),ei=lt(Vn),ti=pt(Vn),ni=ft(Vn),ii=ht(Vn),oi=mt(Vn),ri=S("ZodType",((e,t)=>(vt.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map((e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e))]}),e.clone=(t,n)=>Ae(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>Qn(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>qn(e,t,n),e.parseAsync=async(t,n)=>Yn(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Wn(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Jn(e,t,n),e.decode=(t,n)=>Kn(e,t,n),e.encodeAsync=async(t,n)=>Xn(e,t,n),e.decodeAsync=async(t,n)=>ei(e,t,n),e.safeEncode=(t,n)=>ti(e,t,n),e.safeDecode=(t,n)=>ni(e,t,n),e.safeEncodeAsync=async(t,n)=>ii(e,t,n),e.safeDecodeAsync=async(t,n)=>oi(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Te(n)})}(ao,e,t)}(t,n)),e.superRefine=t=>e.check(function(e){const t=function(e,t){const n=new xe({check:"custom",...Te(void 0)});return n._zod.check=e,n}((n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push($e(e,n.value,t._zod.def));else{const i=e;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),n.issues.push($e(i))}},e(n.value,n))));return t}(t)),e.overwrite=t=>e.check(jn(t)),e.optional=()=>Wi(e),e.nullable=()=>Ki(e),e.nullish=()=>Wi(Ki(e)),e.nonoptional=t=>function(e,t){return new to({type:"nonoptional",innerType:e,...Te(t)})}(e,t),e.array=()=>Li(e),e.or=t=>function(e,t){return new Hi({type:"union",options:e,...Te(t)})}([e,t]),e.and=t=>new Bi({type:"intersection",left:e,right:t}),e.transform=t=>oo(e,Yi(t)),e.default=t=>{return n=t,new Xi({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():ke(n)}});var n},e.prefault=t=>{return n=t,new eo({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():ke(n)}});var n},e.catch=t=>{return new no({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>oo(e,t),e.readonly=()=>new ro({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return Nn.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>Nn.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return Nn.get(e);const n=e.clone();return Nn.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e))),ai=S("_ZodString",((e,t)=>{yt.init(e,t),ri.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new Be({check:"string_format",format:"regex",...Te(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new Ye({check:"string_format",format:"includes",...Te(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new qe({check:"string_format",format:"starts_with",...Te(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new We({check:"string_format",format:"ends_with",...Te(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Dn(...t)),e.max=(...t)=>e.check(Zn(...t)),e.length=(...t)=>e.check(Un(...t)),e.nonempty=(...t)=>e.check(Dn(1,...t)),e.lowercase=t=>e.check(function(e){return new Ve({check:"string_format",format:"lowercase",...Te(e)})}(t)),e.uppercase=t=>e.check(function(e){return new Qe({check:"string_format",format:"uppercase",...Te(e)})}(t)),e.trim=()=>e.check(jn((e=>e.trim()))),e.normalize=(...t)=>e.check(function(e){return jn((t=>t.normalize(e)))}(...t)),e.toLowerCase=()=>e.check(jn((e=>e.toLowerCase()))),e.toUpperCase=()=>e.check(jn((e=>e.toUpperCase())))})),si=S("ZodString",((e,t)=>{yt.init(e,t),ai.init(e,t),e.email=t=>e.check(In(di,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Te(t)})}(hi,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Te(t)})}(Ii,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Te(t)})}(mi,t)),e.guid=t=>e.check(Rn(pi,t)),e.uuid=t=>e.check(Cn(fi,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Te(t)})}(fi,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Te(t)})}(fi,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Te(t)})}(fi,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Te(t)})}(gi,t)),e.guid=t=>e.check(Rn(pi,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Te(t)})}(vi,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Te(t)})}(yi,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Te(t)})}(_i,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Te(t)})}(Ai,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Te(t)})}(Ti,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Te(t)})}(Pi,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Te(t)})}(zi,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Te(t)})}(bi,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Te(t)})}(ki,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Te(t)})}(wi,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Te(t)})}(Ei,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Te(t)})}(Ni,t)),e.datetime=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Te(t)})}(Ln,e)}(t)),e.date=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Te(t)})}(Mn,e)}(t)),e.time=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Te(t)})}(Gn,e)}(t)),e.duration=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Te(t)})}(Hn,e)}(t))}));function ci(e){return function(e,t){return new e({type:"string",...Te(t)})}(si,e)}const ui=S("ZodStringFormat",((e,t)=>{_t.init(e,t),ai.init(e,t)})),di=S("ZodEmail",((e,t)=>{bt.init(e,t),ui.init(e,t)}));function li(e){return In(di,e)}const pi=S("ZodGUID",((e,t)=>{Pt.init(e,t),ui.init(e,t)})),fi=S("ZodUUID",((e,t)=>{zt.init(e,t),ui.init(e,t)})),hi=S("ZodURL",((e,t)=>{kt.init(e,t),ui.init(e,t)})),mi=S("ZodEmoji",((e,t)=>{wt.init(e,t),ui.init(e,t)})),gi=S("ZodNanoID",((e,t)=>{Et.init(e,t),ui.init(e,t)})),vi=S("ZodCUID",((e,t)=>{At.init(e,t),ui.init(e,t)})),yi=S("ZodCUID2",((e,t)=>{Tt.init(e,t),ui.init(e,t)})),_i=S("ZodULID",((e,t)=>{Nt.init(e,t),ui.init(e,t)})),Pi=S("ZodXID",((e,t)=>{It.init(e,t),ui.init(e,t)})),zi=S("ZodKSUID",((e,t)=>{Rt.init(e,t),ui.init(e,t)})),bi=S("ZodIPv4",((e,t)=>{xt.init(e,t),ui.init(e,t)})),ki=S("ZodIPv6",((e,t)=>{Ft.init(e,t),ui.init(e,t)})),wi=S("ZodCIDRv4",((e,t)=>{Zt.init(e,t),ui.init(e,t)})),Ei=S("ZodCIDRv6",((e,t)=>{Dt.init(e,t),ui.init(e,t)})),Ai=S("ZodBase64",((e,t)=>{jt.init(e,t),ui.init(e,t)})),Ti=S("ZodBase64URL",((e,t)=>{Lt.init(e,t),ui.init(e,t)})),Ni=S("ZodE164",((e,t)=>{Mt.init(e,t),ui.init(e,t)})),Ii=S("ZodJWT",((e,t)=>{Gt.init(e,t),ui.init(e,t)})),Ri=S("ZodNumber",((e,t)=>{Ht.init(e,t),ri.init(e,t),e.gt=(t,n)=>e.check($n(t,n)),e.gte=(t,n)=>e.check(xn(t,n)),e.min=(t,n)=>e.check(xn(t,n)),e.lt=(t,n)=>e.check(On(t,n)),e.lte=(t,n)=>e.check(Sn(t,n)),e.max=(t,n)=>e.check(Sn(t,n)),e.int=t=>e.check(Si(t)),e.safe=t=>e.check(Si(t)),e.positive=t=>e.check($n(0,t)),e.nonnegative=t=>e.check(xn(0,t)),e.negative=t=>e.check(On(0,t)),e.nonpositive=t=>e.check(Sn(0,t)),e.multipleOf=(t,n)=>e.check(Fn(t,n)),e.step=(t,n)=>e.check(Fn(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null}));function Ci(e){return function(e,t){return new e({type:"number",checks:[],...Te(t)})}(Ri,e)}const Oi=S("ZodNumberFormat",((e,t)=>{Bt.init(e,t),Ri.init(e,t)}));function Si(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Te(t)})}(Oi,e)}const $i=S("ZodBoolean",((e,t)=>{Vt.init(e,t),ri.init(e,t)}));const xi=S("ZodUnknown",((e,t)=>{Qt.init(e,t),ri.init(e,t)}));function Fi(){return new xi({type:"unknown"})}const Zi=S("ZodNever",((e,t)=>{Yt.init(e,t),ri.init(e,t)}));function Di(e){return function(e,t){return new e({type:"never",...Te(t)})}(Zi,e)}const Ui=S("ZodDate",((e,t)=>{qt.init(e,t),ri.init(e,t),e.min=(t,n)=>e.check(xn(t,n)),e.max=(t,n)=>e.check(Sn(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null}));const ji=S("ZodArray",((e,t)=>{Jt.init(e,t),ri.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Dn(t,n)),e.nonempty=t=>e.check(Dn(1,t)),e.max=(t,n)=>e.check(Zn(t,n)),e.length=(t,n)=>e.check(Un(t,n)),e.unwrap=()=>e.element}));function Li(e,t){return function(e,t,n){return new e({type:"array",element:t,...Te(n)})}(ji,e,t)}const Mi=S("ZodObject",((e,t)=>{nn.init(e,t),ri.init(e,t),me(e,"shape",(()=>t.shape)),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map((e=>[e,e]))):e;return new Vi({type:"enum",entries:n,...Te(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Fi()}),e.loose=()=>e.clone({...e._zod.def,catchall:Fi()}),e.strict=()=>e.clone({...e._zod.def,catchall:Di()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!be(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const i=ve(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return ge(this,"shape",n),n},checks:[]});return Ae(e,i)}(e,t),e.safeExtend=t=>function(e,t){if(!be(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return ge(this,"shape",n),n},checks:e._zod.def.checks};return Ae(e,n)}(e,t),e.merge=t=>function(e,t){const n=ve(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return ge(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Ae(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return Ae(e,ve(e._zod.def,{get shape(){const e={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(e[i]=n.shape[i])}return ge(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,i=ve(e._zod.def,{get shape(){const i={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete i[e]}return ge(this,"shape",i),i},checks:[]});return Ae(e,i)}(e,t),e.partial=(...t)=>function(e,t,n){const i=ve(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=e?new e({type:"optional",innerType:i[t]}):i[t])}else for(const t in i)o[t]=e?new e({type:"optional",innerType:i[t]}):i[t];return ge(this,"shape",o),o},checks:[]});return Ae(t,i)}(qi,e,t[0]),e.required=(...t)=>function(e,t,n){const i=ve(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in o))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=new e({type:"nonoptional",innerType:i[t]}))}else for(const t in i)o[t]=new e({type:"nonoptional",innerType:i[t]});return ge(this,"shape",o),o},checks:[]});return Ae(t,i)}(to,e,t[0])}));function Gi(e,t){const n={type:"object",get shape(){var t;return ge(this,"shape",e?(t=e,Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))):{}),this.shape},...Te(t)};return new Mi(n)}const Hi=S("ZodUnion",((e,t)=>{rn.init(e,t),ri.init(e,t),e.options=t.options}));const Bi=S("ZodIntersection",((e,t)=>{an.init(e,t),ri.init(e,t)})),Vi=S("ZodEnum",((e,t)=>{un.init(e,t),ri.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,i)=>{const o={};for(const i of e){if(!n.has(i))throw new Error(`Key ${i} not found in enum`);o[i]=t.entries[i]}return new Vi({...t,checks:[],...Te(i),entries:o})},e.exclude=(e,i)=>{const o={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete o[t]}return new Vi({...t,checks:[],...Te(i),entries:o})}}));const Qi=S("ZodTransform",((e,t)=>{dn.init(e,t),ri.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new x(e.constructor.name);n.addIssue=i=>{if("string"==typeof i)n.issues.push($e(i,n.value,t));else{const t=i;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push($e(t))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then((e=>(n.value=e,n))):(n.value=o,n)}}));function Yi(e){return new Qi({type:"transform",transform:e})}const qi=S("ZodOptional",((e,t)=>{pn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function Wi(e){return new qi({type:"optional",innerType:e})}const Ji=S("ZodNullable",((e,t)=>{fn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function Ki(e){return new Ji({type:"nullable",innerType:e})}const Xi=S("ZodDefault",((e,t)=>{hn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap})),eo=S("ZodPrefault",((e,t)=>{gn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),to=S("ZodNonOptional",((e,t)=>{vn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),no=S("ZodCatch",((e,t)=>{_n.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap})),io=S("ZodPipe",((e,t)=>{Pn.init(e,t),ri.init(e,t),e.in=t.in,e.out=t.out}));function oo(e,t){return new io({type:"pipe",in:e,out:t})}const ro=S("ZodReadonly",((e,t)=>{bn.init(e,t),ri.init(e,t),e.unwrap=()=>e._zod.def.innerType})),ao=S("ZodCustom",((e,t)=>{wn.init(e,t),ri.init(e,t)}));function so(e,t){return oo(Yi(e),t)}function co(e,t,n){const i=t.safeParse(n);return i.success?i.data:(i.error.issues.forEach((t=>{const n=t.path.join(".");e.getFieldState(n)?e.setError(n,{type:"manual",message:t.message}):e.setError("root",{type:"manual",message:t.message})})),null)}const uo=e=>so((e=>{if(e){if("string"==typeof e){const t=Number(e);return isNaN(t)?e:t}return e}}),e),lo=e=>so((e=>{if(!e)return;let t;return"string"==typeof e&&(t=new Date(e)),e instanceof Date&&(t=e),t?(t.setUTCHours(0,0,0,0),t):e}),e),po=e=>ci().min(1,{error:"Required"}).max(e,`Maximum length is ${e} characters`),fo=()=>li("Invalid email address").min(1,"Required"),ho=()=>uo(Ci("Valid amount required").positive("Positive amount required")),mo=()=>lo(function(e){return function(e,t){return new e({type:"date",...Te(t)})}(Ui,e)}("Valid date required").min(new Date,"Date must be in the future")),go=e=>ci().max(e,`Maximum length is ${e} characters`),vo=Gi({address1:po(100),address2:go(100).optional(),city:po(50),state:go(50).optional(),postcode:go(20).optional(),country:po(50)}),yo=Gi({amount:ho(),message:go(500).nullish(),giverFirstName:po(50),giverLastName:po(50),giverEmail:fo(),giverPhone:po(31),giverAddress:vo,cardHolder:po(101),recipientFirstName:go(50).nullish(),recipientLastName:go(50).nullish(),recipientEmail:li("Invalid email address").nullish(),recipientPhone:go(31).nullish()}),_o=yo.extend({expiry:mo(),notes:go(500).nullish()}),Po=Gi({balance:ho(),expiry:mo(),message:go(500).nullish(),notes:go(500).nullish(),giverFirstName:po(50),giverLastName:po(50),giverEmail:fo(),giverPhone:po(31),cardHolder:po(101),recipientEmail:li("Invalid email address").nullish(),recipientPhone:go(31).nullish()});let zo;!function(e){e.Passthrough="Passthrough",e.PaymentProcessor="PaymentProcessor"}(zo||(zo={}));const bo=Gi({companyId:Ci().int().positive(),amount:ho(),currency:po(3).default("AUD")}),ko=Gi({sessionId:po(100),resultCode:po(50),pspReference:go(100).optional()}),wo=Gi({cardHolder:po(100),cardNumberToken:go(200),cardCvcToken:go(200),cardExpiry:go(5)}),Eo=yo.extend({companyId:Ci().int().positive(),sendViaEmail:function(e){return function(e,t){return new e({type:"boolean",...Te(t)})}($i,e)}().default(!0),payment:ko.optional(),passthroughPayment:wo.optional()}),Ao=Gi({giftCardId:Ci().int().positive(),reason:go(500).optional()}),To=Gi({companyId:Ci().int().positive().nullish(),code:po(10),password:po(10)}),No=To.extend({amount:ho(),description:po(200)});let Io,Ro,Co,Oo,So,$o;!function(e){e.Adyen="Adyen"}(Io||(Io={})),function(e){e.Pending="Pending",e.Authorized="Authorized",e.Captured="Captured",e.Failed="Failed",e.Refunded="Refunded"}(Ro||(Ro={})),function(e){e.Authorised="Authorised",e.Refused="Refused",e.Cancelled="Cancelled",e.Pending="Pending",e.Received="Received",e.Error="Error",e.IdentifyShopper="IdentifyShopper",e.ChallengeShopper="ChallengeShopper"}(Co||(Co={})),function(e){e.AUTHORISATION="AUTHORISATION",e.CAPTURE="CAPTURE",e.REFUND="REFUND",e.CANCELLATION="CANCELLATION",e.REFUND_FAILED="REFUND_FAILED",e.CAPTURE_FAILED="CAPTURE_FAILED"}(Oo||(Oo={})),function(e){e.Purchase="Purchase",e.Redemption="Redemption",e.Adjustment="Adjustment"}(So||(So={})),function(e){e.Pending="Pending",e.Complete="Complete",e.Cancelled="Cancelled",e.Expired="Expired"}($o||($o={}));const xo=Gi({code:po(10),token:po(128)}),Fo=Gi({companyId:Ci().int().positive(),code:po(10),token:po(128)}),Zo=Gi({grant_type:ci().readonly().default("refresh_token"),client_id:Cn(fi,undefined),client_secret:ci(),refresh_token:ci(),scope:ci().optional()});const Do=Gi({email:li(),firstName:ci().max(100).optional(),lastName:ci().max(100).optional(),phone:ci().max(20).optional(),scopes:Li(ci()).optional()});let Uo;!function(e){e.PER_STAY="Per stay",e.PER_NIGHT="Per night",e.PER_PERSON="Per person",e.PER_PERSON_PER_NIGHT="Per person per night",e.PER_ALL_PERSONS="Per all persons",e.PER_ALL_PERSONS_PER_NIGHT="Per all persons per night",e.PER_QUANTITY_NAME_PER_NIGHT="Per Quantity Name Per Night",e.PER_ROOM_QUANTITY_PER_NIGHT="Per Room Quantity Per Night",e.PER_PERSON_OCCUPANCY_PER_NIGHT="Per Person Occupancy Per Night",e.PER_ADULT_OCCUPANCY_PER_NIGHT="Per Adult Occupancy Per Night",e.PER_CHILD_OCCUPANCY_PER_NIGHT="Per Child Occupancy Per Night"}(Uo||(Uo={}));const jo=[Uo.PER_NIGHT,Uo.PER_PERSON_PER_NIGHT,Uo.PER_QUANTITY_NAME_PER_NIGHT,Uo.PER_ROOM_QUANTITY_PER_NIGHT,Uo.PER_PERSON_OCCUPANCY_PER_NIGHT,Uo.PER_ADULT_OCCUPANCY_PER_NIGHT,Uo.PER_CHILD_OCCUPANCY_PER_NIGHT,Uo.PER_ALL_PERSONS_PER_NIGHT];let Lo,Mo,Go;!function(e){e.Critical="Critical",e.Error="Error",e.Warn="Warn",e.Info="Info"}(Lo||(Lo={})),function(e){e.Debug="Diagnostics",e.Security="Security",e.Audit="Audit"}(Mo||(Mo={})),function(e){e.General="General",e.Authenticated="Token Authenticated",e.Unauthorized="Unauthorized Access",e.RefreshToken="Refresh Token Created",e.AccessToken="Access Token Created",e.Revoked="Token Revoked",e.UserCreated="User Created",e.UserLinked="User Linked to Company",e.Purchase="Gift Card Purchased",e.Payment="Payment",e.Email="Email Delivery",e.Transaction="Gift Card Transaction"}(Go||(Go={}));const Ho=e=>{let t=0;const n=Object.values(e.itinerary);for(const e of n){const n=Object.keys(e.nights);for(const i of n)t+=e.nights[i].total}return t};var Bo=i(60),Vo=i.n(Bo);const Qo={UP:Vo().ROUND_UP,DOWN:Vo().ROUND_DOWN,CEIL:Vo().ROUND_CEIL,FLOOR:Vo().ROUND_FLOOR,HALF_UP:Vo().ROUND_HALF_UP,HALF_DOWN:Vo().ROUND_HALF_DOWN,HALF_EVEN:Vo().ROUND_HALF_EVEN,HALF_CEIL:Vo().ROUND_HALF_CEIL,HALF_FLOOR:Vo().ROUND_HALF_FLOOR},Yo=(e,t)=>{const{precision:n=2,rounding:i=Qo.HALF_UP}=t||{};return new(Vo())(e).toDecimalPlaces(n,i).toNumber()};function qo(e,t={}){const{baseAmount:n=0,numberOfNights:i=1,feeIncludedInBaseAmount:o=!1,extractedFromRates:r=!1,removedPercentages:a=[]}=t,s=Yo(n);switch(e.feeType){case O.PercentageOfBooking:if(o)return Yo(s*e.amount/(100+e.amount));if(r){const t=a.reduce(((e,t)=>e+t/(100+t)),0);return Yo(s/(1-t)*e.amount/(100+e.amount))}return Yo(s*(e.amount/100));case O.FixedChargePerRoom:case O.FixedChargePerBooking:return e.amount;case O.NightlyChargePerRoom:return Yo(e.amount*i);default:return 0}}const Wo=[O.FixedChargePerBooking],Jo=[O.PercentageOfBooking,O.FixedChargePerRoom,O.NightlyChargePerRoom],Ko=[O.PercentageOfBooking];function Xo(e,t){return e.filter((e=>t.includes(e.feeType)))}function er(e){return Xo(e,Wo)}function tr(e){return Xo(e,Jo)}function nr(e){return Xo(e,Ko)}function ir(e){return{includeInRates:[O.PercentageOfBooking,O.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===O.PercentageOfBooking,appliesToAddons:e===O.PercentageOfBooking,includePreviousFeesInCalculation:e===O.PercentageOfBooking}}const or=e=>e,rr=(e,t)=>{const n={};return t.forEach((t=>{t in e&&(n[t]=e[t])})),n},ar=(e,t)=>e.includes("cdn.app.roomstay.io")?e+"?w="+t:e;class sr{}function cr(e){return e.toUpperCase()}sr.calculateBaseAddonTotal=(e,t)=>{let n=0,i=0,o=0;e.price&&e.quantity&&(n=e.quantity*Number(e.price)),e.pricingType===Uo.PER_ADULT_OCCUPANCY_PER_NIGHT&&e.adultQuantity?n*=e.adultQuantity:e.pricingType===Uo.PER_CHILD_OCCUPANCY_PER_NIGHT&&e.childQuantity&&(n*=e.childQuantity),e.adultPrice&&e.adultQuantity&&(i=e.adultQuantity*Number(e.adultPrice)),e.childPrice&&e.childQuantity&&(o=e.childQuantity*Number(e.childPrice));let r=n+i+o;return jo.includes(e.pricingType)&&e.nights&&!t&&(r*=e.nights),{indPrice:n,indAdultPrice:i,indChildPrice:o,addonTotal:r}},sr.calculateBasketAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=sr.calculateBaseAddonTotal(n,t);let o=0;return(n.fee||n.fees?.length)&&n.quantity?n.fees?.length?n.fees.forEach((e=>{o+=n.quantity*e.amount})):o=n.quantity*Number(n.fee):((n.adultFee||n.adultFees?.length)&&n.adultQuantity&&(n.adultFees?.length?n.adultFees.forEach((e=>{o+=n.adultQuantity*e.amount})):o+=n.adultQuantity??1*Number(n.adultFee)),(n.childFee||n.childFees?.length)&&n.childQuantity&&(n.childFees?.length?n.childFees.forEach((e=>{o+=n.childQuantity??1*e.amount})):o+=n.childQuantity*Number(n.childFee))),jo.includes(n.pricingType)&&n.nights&&!t&&(o*=n.nights),{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+o,total:e.total+i.addonTotal+o}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0})),sr.calculateReservationAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=sr.calculateBaseAddonTotal(n,t);let o,r=n.discount||0;o=void 0!==n.total&&null!==n.total?n.total:i.addonTotal-r;let a=n.fees||0;n.itemisedFees?.length&&(a=n.itemisedFees.reduce(((e,t)=>e+t.amount),0));const s=n.itemisedFees?.length?o:o+a;return{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+a,total:e.total+o+a,displayPrice:e.displayPrice+s}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0,displayPrice:0})),sr.calculateTotalForReservation=(e,t=!1)=>{let n=0;return e.itemisedFees?.forEach((e=>{n+=e.amount})),e.reservations.forEach((e=>{n+=e.total.afterTax;const i=Object.keys(e.nights)?.length??0;if(n+=e.fees??0,e.addons?.length){const o=(e.addons??[]).map((e=>({...e,nights:i})));n+=sr.calculateReservationAddonTotal(o,t)?.total}})),Yo(n)}})(),o})()));
1
+ define("@roomstay/core",["decimal.js"],(e=>(()=>{"use strict";var t={60:t=>{t.exports=e}},n={};function i(e){var o=n[e];if(void 0!==o)return o.exports;var r=n[e]={exports:{}};return t[e](r,r.exports,i),r.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o={};return(()=>{let e,t,n,r,a;i.r(o),i.d(o,{ADDON_PER_NIGHT_TYPES:()=>Bo,AddGiftCardSchema:()=>wo,AdyenEventCode:()=>Zo,AdyenResultCode:()=>Fo,BaseGiftCardSchema:()=>bo,CancelGiftCardTransactionSchema:()=>Lo,CompleteGiftCardTransactionSchema:()=>jo,CreatePaymentSessionSchema:()=>To,DATE_FORMAT:()=>I,EAddonPricingType:()=>Ho,EAdminCompanyUserRole:()=>p,EBookingFlow:()=>t,EBookingPaymentMethod:()=>n,EBookingStatus:()=>e,ECompanyProvider:()=>l,EDistanceUnitType:()=>y,EFeeType:()=>O,EGiftCardPaymentProvider:()=>$o,EGiftCardPaymentStatus:()=>xo,EGiftCardPaymentType:()=>Ao,EGiftCardTransactionType:()=>Do,EGuaranteePolicyDepositMode:()=>w,EGuarantyPolicyPrepaymentType:()=>E,EHotelCardProcessor:()=>r,EHotelPriceModel:()=>f,EHotelStateFieldConfiguration:()=>h,EHotelWeekdayStartsOn:()=>m,EIntegration:()=>g,ELogCategory:()=>Qo,ELogSeverity:()=>Vo,ELogType:()=>qo,EPlanpayBookingStatus:()=>a,EPromoCodeDiscountType:()=>A,ERMSAuthSyncHistoryStatus:()=>z,ERMSDiscountType:()=>_,ERMSSyncStrategy:()=>P,ERoomstayEventName:()=>S,ERoomstayEventSource:()=>T,ERoomstayImageSize:()=>k,ETransactionStatus:()=>Uo,EditGiftCardSchema:()=>Eo,GuestProfile:()=>d,HttpMethod:()=>R,IAuxiliaryFilterType:()=>v,IMaintenanceStatusService:()=>b,InternationalAddressSchema:()=>ko,ItineraryResponse:()=>c,PCIBookingCardProcessorTypes:()=>s,Package:()=>N,PassthroughPaymentDataSchema:()=>Co,PaymentProcessorDataSchema:()=>No,PurchaseGiftCardSchema:()=>Io,RedeemGiftCardSchema:()=>So,RefreshGiftCardTokenSchema:()=>Mo,RefundGiftCardSchema:()=>Ro,RegisterGiftCardAdminSchema:()=>Go,Reservation:()=>u,ReservedPackage:()=>C,RoundingType:()=>Ko,TotalCalculator:()=>pr,ValidateGiftCardSchema:()=>Oo,calculateFeeAmount:()=>er,calculateTotalForMemberBooking:()=>Yo,getFeeOptionValidity:()=>cr,getFilteredBookingAddonFees:()=>sr,getFilteredBookingFees:()=>rr,getFilteredBookingRateFees:()=>ar,maxString:()=>zo,nameof:()=>ur,preprocessDate:()=>go,preprocessNumber:()=>mo,requireEmail:()=>yo,requireFutureDate:()=>Po,requirePositiveAmount:()=>_o,requireString:()=>vo,resizeRoomstayImageUrl:()=>lr,roundMoney:()=>Xo,subset:()=>dr,toMetaEventName:()=>$,transformToMetaEventData:()=>F,transformToMetaUserData:()=>Z,uppercaseString:()=>fr,validateFormWithZod:()=>ho}),function(e){e.Pending="Pending",e.Processing="Processing",e.Committed="Committed",e.Cancelled="Cancelled",e.Reverted="Reverted"}(e||(e={})),function(e){e.Default="Default",e.PreCheckoutPencil="PreCheckoutPencil",e.PostCheckoutPencil="PostCheckoutPencil"}(t||(t={})),function(e){e.Card="Card",e.SavedCard="SavedCard",e.Planpay="Planpay",e.Adyen="Adyen",e.Afterpay="Afterpay",e.PCIBookingCard="PCIBookingCard",e.TrueRewards="TrueRewards"}(n||(n={})),function(e){e.Passthrough="Passthrough",e.Adyen="Adyen",e.Till="Till",e.RMSPay="RMSPay",e.Windcave="Windcave",e.Mastercard="Mastercard",e.Stripe="Stripe",e.PayPal="PayPal"}(r||(r={})),function(e){e.Unknown="unknown",e.Unpaid="unpaid",e.Accepted="accepted",e.Cancelled="cancelled",e.Refunded="refunded",e.Rejected="rejected"}(a||(a={}));const s=[];class c{constructor(){this.roomstayId=void 0,this.itineraryNumber=void 0,this.total=void 0,this.hotelFrontendId=void 0,this.reservations=[],this.payment=void 0,this.feesSummary=void 0,this.itemisedFees=void 0,this.warnings=void 0}}class u{constructor(){this.reservationNumber=void 0,this.roomType=void 0,this.roomCode=void 0,this.rate=void 0,this.rateCode=void 0,this.images=void 0,this.guaranteePolicy=void 0,this.cancellationPolicy=void 0,this.checkInDate=void 0,this.checkOutDate=void 0,this.nights={},this.guestCounts={adults:1,children:0},this.guest=new d,this.paymentCard=void 0,this.paymentMethod=void 0,this.total=void 0,this.status=void 0,this.isCancelable=void 0,this.addons=void 0,this.comments=void 0,this.specialRequests=void 0,this.promoCode=void 0,this.guaranteePolicyLongDescription=void 0,this.cancellationPolicyLongDescription=void 0,this.itemisedFees=void 0}}class d{constructor(){this.title=void 0,this.firstName=void 0,this.middleName=void 0,this.lastName=void 0,this.nameSuffix=void 0,this.phone=void 0,this.email=void 0,this.address={},this.marketingOptIn=void 0,this.country=void 0}}let l,p,f,h,m,g,v,y,_,P,z,k,b,w,E,A,T;!function(e){e.Synxis="Synxis",e.Availpro="Availpro",e.RMS="RMS",e.Siteminder="Siteminder",e.Roomstay="Roomstay",e.OHIP="OHIP"}(l||(l={})),function(e){e.SuperAdmin="SuperAdmin",e.Admin="Admin",e.Limited="Limited"}(p||(p={})),function(e){e.PerPerson="PerPerson",e.PerDay="PerDay",e.PerOccupancy="PerOccupancy"}(f||(f={})),function(e){e.NotIncluded="NotIncluded",e.Optional="Optional",e.Required="Required"}(h||(h={})),function(e){e.Monday="monday",e.Sunday="sunday"}(m||(m={})),function(e){e.Big4="Big4",e.RmsTop10="Top10",e.Top10="NewTop10",e.Gday="Gday",e.Salesforce="Salesforce",e.RAC="RAC",e.AnalyticsEvents="AnalyticsEvents"}(g||(g={})),function(e){e.AreaDwellingLength="AreaDwellingLength",e.AreaDwellingType="AreaDwellingType"}(v||(v={})),function(e){e.Metric="metric",e.Imperial="imperial"}(y||(y={})),function(e){e.Percentage="Percentage",e.Amount="Amount",e.Bogo="BOGO",e.NightlyRateOverride="NightlyRateOverride"}(_||(_={})),function(e){e.Hotel="hotel",e.HotelImages="hotelImages",e.Cancellation="cancellation",e.Room="room",e.Rates="rates",e.OneGuaranteePolicy="oneGuaranteePolicy",e.RoomRates="roomRates",e.RoomImages="roomImages",e.BookingSources="booking-sources",e.Areas="areas",e.Dwellings="dwellings",e.AreaDwellings="areaDwellings",e.ConvertDwellingConfigToAuxInput="convertDwellingConfigToAuxInput",e.Discounts="discounts",e.PropertyDiscounts="propertyDiscounts",e.RoomDiscounts="roomDiscounts",e.PropertySundries="propertySundries",e.PropertyFees="propertyFees",e.PropertyCards="property-cards",e.Countries="countries",e.Addons="addons",e.Requirements="requirements",e.RoomAddons="room-addons",e.ClientFacingPromoSync="clientFacingPromoSync",e.ClientFacingRoomSync="clientFacingRoomSync",e.ClientFacingRateSync="clientFacingRateSync",e.NewRateFetch="newRateFetch"}(P||(P={})),function(e){e.Success="success",e.Failure="failure",e.New="new",e.Queued="queued",e.InProgress="in_progress",e.RequireResume="require_resume"}(z||(z={})),function(e){e[e.Icon=128]="Icon",e[e.Tiny=256]="Tiny",e[e.Small=512]="Small",e[e.Medium=768]="Medium",e[e.Large=1024]="Large",e[e.ExtraLarge=1600]="ExtraLarge"}(k||(k={})),function(e){e.Frontend="frontend",e.Hotel="hotel",e.Events="events"}(b||(b={}));class N{constructor(){this.ratePlanCode=void 0,this.name=void 0,this.description=void 0,this.inclusive=void 0,this.image=void 0,this.url=void 0,this.pricingType=void 0,this.quantity=void 0,this.category=void 0,this.cancelPenalty=void 0,this.guaranteeDescription=void 0,this.availability={}}}class C extends N{constructor(...e){super(...e),this.code=void 0,this.price=void 0,this.fees=void 0,this.itemisedFees=void 0,this.adultQuantity=void 0,this.childQuantity=void 0,this.adultPrice=void 0,this.childPrice=void 0,this.startDate=void 0,this.startTime=void 0,this.hideDatePicker=!1,this.hideQuantity=!1,this.order=void 0,this.discount=void 0,this.total=void 0}}!function(e){e.Full="Full",e.Percentage="Percentage",e.FirstNight="FirstNight",e.None="None"}(w||(w={})),function(e){e.FixedAmount="fixed",e.Percentage="percentage",e.Nights="nights"}(E||(E={})),function(e){e.FlatPercent="flatPercent",e.FlatQuantity="flatQuantity",e.FlatQuantityPerStay="flatQuantityPerStay"}(A||(A={})),function(e){e.Eventbrite="eventbrite",e.ATDW="atdw"}(T||(T={}));const I="DD/MM/YYYY";let R,O,S;function $(e){return{[S.ViewBookingEngine]:"ViewContent",[S.BasketAdd]:"AddToCart",[S.ViewCheckout]:"InitiateCheckout",[S.BookingCommitted]:"Purchase"}[e]}function x(e,t){let n=0;const i=[],o=[];for(const t of e)n+=t.totalPrice,t.roomCode&&(i.push(t.roomCode),o.push({id:t.roomCode,quantity:1,item_price:t.totalPrice}));return{currency:t,value:n,content_ids:i,content_type:"hotel",contents:o,num_items:e.length}}function F(e){if("item"in e)return x([e.item],e.currency);if("items"in e)return x(e.items,e.currency);throw new Error("Invalid event data")}function Z(e){return{em:e.email,ph:e.phone,fn:e.firstName,ln:e.lastName,ct:e.city,st:e.state,zp:e.postalCode,country:e.country,external_id:e.externalId}}function D(e,t,n){function i(n,i){var o;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(o=n._zod).traits??(o.traits=new Set),n._zod.traits.add(e),t(n,i);for(const e in a.prototype)e in n||Object.defineProperty(n,e,{value:a.prototype[e].bind(n)});n._zod.constr=a,n._zod.def=i}const o=n?.Parent??Object;class r extends o{}function a(e){var t;const o=n?.Parent?new r:this;i(o,e),(t=o._zod).deferred??(t.deferred=[]);for(const e of o._zod.deferred)e();return o}return Object.defineProperty(r,"name",{value:e}),Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}!function(e){e.GET="GET",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.PATCH="PATCH",e.OPTIONS="OPTIONS",e.HEAD="HEAD"}(R||(R={})),function(e){e.PercentageOfBooking="PercentageOfBooking",e.FixedChargePerRoom="FixedChargePerRoom",e.NightlyChargePerRoom="NightlyChargePerRoom",e.FixedChargePerBooking="FixedChargePerBooking",e.DepositSurcharge="DepositSurcharge"}(O||(O={})),function(e){e.ViewBookingEngine="View/BookingEngine",e.BasketAdd="Basket/Add",e.ViewCheckout="View/Checkout",e.BookingCommitted="Booking/Committed"}(S||(S={})),Object.freeze({status:"aborted"}),Symbol("zod_brand");class U extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class j extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const L={};function M(e){return e&&Object.assign(L,e),L}const G=/^[cC][^\s-]{8,}$/,H=/^[0-9a-z]+$/,B=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,V=/^[0-9a-vA-V]{20}$/,Q=/^[A-Za-z0-9]{27}$/,q=/^[a-zA-Z0-9_-]{21}$/,Y=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,W=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,J=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,K=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,X=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ee=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,te=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,ne=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ie=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,oe=/^[A-Za-z0-9_-]*$/,re=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,ae=/^\+(?:[0-9]){6,14}[0-9]$/,se="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",ce=new RegExp(`^${se}$`);function ue(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const de=/^\d+$/,le=/^-?\d+(?:\.\d+)?/i,pe=/true|false/i,fe=/^[^A-Z]*$/,he=/^[^a-z]*$/;function me(e,t){return"bigint"==typeof t?t.toString():t}function ge(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function ve(e){return null==e}function ye(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const _e=Symbol("evaluating");function Pe(e,t,n){let i;Object.defineProperty(e,t,{get(){if(i!==_e)return void 0===i&&(i=_e,i=n()),i},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ze(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ke(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function be(e){return JSON.stringify(e)}const we="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Ee(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const Ae=ge((()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}}));function Te(e){if(!1===Ee(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==Ee(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function Ne(e){return Te(e)?{...e}:e}const Ce=new Set(["string","number","symbol"]);function Ie(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Re(e,t,n){const i=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(i._zod.parent=e),i}function Oe(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}new Set(["string","number","bigint","boolean","symbol","undefined"]);const Se={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function $e(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function xe(e,t){return t.map((t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t}))}function Fe(e){return"string"==typeof e?e:e?.message}function Ze(e,t,n){const i={...e,path:e.path??[]};if(!e.message){const o=Fe(e.inst?._zod.def?.error?.(e))??Fe(t?.error?.(e))??Fe(n.customError?.(e))??Fe(n.localeError?.(e))??"Invalid input";i.message=o}return delete i.inst,delete i.continue,t?.reportInput||delete i.input,i}function De(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function Ue(...e){const[t,n,i]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:i}:{...t}}const je=D("$ZodCheck",((e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])})),Le={number:"number",bigint:"bigint",object:"date"},Me=D("$ZodCheckLessThan",((e,t)=>{je.init(e,t);const n=Le[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;t.value<i&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value<=t.value:i.value<t.value)||i.issues.push({origin:n,code:"too_big",maximum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),Ge=D("$ZodCheckGreaterThan",((e,t)=>{je.init(e,t);const n=Le[typeof t.value];e._zod.onattach.push((e=>{const n=e._zod.bag,i=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;t.value>i&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)})),e._zod.check=i=>{(t.inclusive?i.value>=t.value:i.value>t.value)||i.issues.push({origin:n,code:"too_small",minimum:t.value,input:i.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}})),He=D("$ZodCheckMultipleOf",((e,t)=>{je.init(e,t),e._zod.onattach.push((e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)})),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw new Error("Cannot mix number and bigint in multiple_of check.");("bigint"==typeof n.value?n.value%t.value===BigInt(0):0===function(e,t){const n=(e.toString().split(".")[1]||"").length,i=t.toString();let o=(i.split(".")[1]||"").length;if(0===o&&/\d?e-\d?/.test(i)){const e=i.match(/\d?e-(\d?)/);e?.[1]&&(o=Number.parseInt(e[1]))}const r=n>o?n:o;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}(n.value,t.value))||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}})),Be=D("$ZodCheckNumberFormat",((e,t)=>{je.init(e,t),t.format=t.format||"float64";const n=t.format?.includes("int"),i=n?"int":"number",[o,r]=Se[t.format];e._zod.onattach.push((e=>{const i=e._zod.bag;i.format=t.format,i.minimum=o,i.maximum=r,n&&(i.pattern=de)})),e._zod.check=a=>{const s=a.value;if(n){if(!Number.isInteger(s))return void a.issues.push({expected:i,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});if(!Number.isSafeInteger(s))return void(s>0?a.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}):a.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:i,continue:!t.abort}))}s<o&&a.issues.push({origin:"number",input:s,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort}),s>r&&a.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inst:e})}})),Ve=D("$ZodCheckMaxLength",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)})),e._zod.check=n=>{const i=n.value;if(i.length<=t.maximum)return;const o=De(i);n.issues.push({origin:o,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),Qe=D("$ZodCheckMinLength",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)})),e._zod.check=n=>{const i=n.value;if(i.length>=t.minimum)return;const o=De(i);n.issues.push({origin:o,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}})),qe=D("$ZodCheckLengthEquals",((e,t)=>{var n;je.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!ve(t)&&void 0!==t.length}),e._zod.onattach.push((e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length})),e._zod.check=n=>{const i=n.value,o=i.length;if(o===t.length)return;const r=De(i),a=o>t.length;n.issues.push({origin:r,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}})),Ye=D("$ZodCheckStringFormat",((e,t)=>{var n,i;je.init(e,t),e._zod.onattach.push((e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))})),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(i=e._zod).check??(i.check=()=>{})})),We=D("$ZodCheckRegex",((e,t)=>{Ye.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}})),Je=D("$ZodCheckLowerCase",((e,t)=>{t.pattern??(t.pattern=fe),Ye.init(e,t)})),Ke=D("$ZodCheckUpperCase",((e,t)=>{t.pattern??(t.pattern=he),Ye.init(e,t)})),Xe=D("$ZodCheckIncludes",((e,t)=>{je.init(e,t);const n=Ie(t.includes),i=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=i,e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(i)})),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}})),et=D("$ZodCheckStartsWith",((e,t)=>{je.init(e,t);const n=new RegExp(`^${Ie(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}})),tt=D("$ZodCheckEndsWith",((e,t)=>{je.init(e,t);const n=new RegExp(`.*${Ie(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)})),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}})),nt=D("$ZodCheckOverwrite",((e,t)=>{je.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}));class it{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter((e=>e)),n=Math.min(...t.map((e=>e.length-e.trimStart().length))),i=t.map((e=>e.slice(n))).map((e=>" ".repeat(2*this.indent)+e));for(const e of i)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map((e=>` ${e}`))].join("\n"))}}const ot=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,me,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},rt=D("$ZodError",ot),at=D("$ZodError",ot,{Parent:Error}),st=e=>(t,n,i,o)=>{const r=i?Object.assign(i,{async:!1}):{async:!1},a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise)throw new U;if(a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Ze(e,r,M()))));throw we(t,o?.callee),t}return a.value},ct=e=>async(t,n,i,o)=>{const r=i?Object.assign(i,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},r);if(a instanceof Promise&&(a=await a),a.issues.length){const t=new(o?.Err??e)(a.issues.map((e=>Ze(e,r,M()))));throw we(t,o?.callee),t}return a.value},ut=e=>(t,n,i)=>{const o=i?{...i,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},o);if(r instanceof Promise)throw new U;return r.issues.length?{success:!1,error:new(e??rt)(r.issues.map((e=>Ze(e,o,M()))))}:{success:!0,data:r.value}},dt=ut(at),lt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{async:!0}):{async:!0};let r=t._zod.run({value:n,issues:[]},o);return r instanceof Promise&&(r=await r),r.issues.length?{success:!1,error:new e(r.issues.map((e=>Ze(e,o,M()))))}:{success:!0,data:r.value}},pt=lt(at),ft=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return st(e)(t,n,o)},ht=e=>(t,n,i)=>st(e)(t,n,i),mt=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ct(e)(t,n,o)},gt=e=>async(t,n,i)=>ct(e)(t,n,i),vt=e=>(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return ut(e)(t,n,o)},yt=e=>(t,n,i)=>ut(e)(t,n,i),_t=e=>async(t,n,i)=>{const o=i?Object.assign(i,{direction:"backward"}):{direction:"backward"};return lt(e)(t,n,o)},Pt=e=>async(t,n,i)=>lt(e)(t,n,i),zt={major:4,minor:1,patch:5},kt=D("$ZodType",((e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=zt;const i=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&i.unshift(e);for(const t of i)for(const n of t._zod.onattach)n(e);if(0===i.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push((()=>{e._zod.run=e._zod.parse}));else{const t=(e,t,n)=>{let i,o=$e(e);for(const r of t){if(r._zod.def.when){if(!r._zod.def.when(e))continue}else if(o)continue;const t=e.issues.length,a=r._zod.check(e);if(a instanceof Promise&&!1===n?.async)throw new U;if(i||a instanceof Promise)i=(i??Promise.resolve()).then((async()=>{await a,e.issues.length!==t&&(o||(o=$e(e,t)))}));else{if(e.issues.length===t)continue;o||(o=$e(e,t))}}return i?i.then((()=>e)):e},n=(n,o,r)=>{if($e(n))return n.aborted=!0,n;const a=t(o,i,r);if(a instanceof Promise){if(!1===r.async)throw new U;return a.then((t=>e._zod.parse(t,r)))}return e._zod.parse(a,r)};e._zod.run=(o,r)=>{if(r.skipChecks)return e._zod.parse(o,r);if("backward"===r.direction){const t=e._zod.parse({value:o.value,issues:[]},{...r,skipChecks:!0});return t instanceof Promise?t.then((e=>n(e,o,r))):n(t,o,r)}const a=e._zod.parse(o,r);if(a instanceof Promise){if(!1===r.async)throw new U;return a.then((e=>t(e,i,r)))}return t(a,i,r)}}e["~standard"]={validate:t=>{try{const n=dt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return pt(e,t).then((e=>e.success?{value:e.data}:{issues:e.error?.issues}))}},vendor:"zod",version:1}})),bt=D("$ZodString",((e,t)=>{var n;kt.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}})),wt=D("$ZodStringFormat",((e,t)=>{Ye.init(e,t),bt.init(e,t)})),Et=D("$ZodGUID",((e,t)=>{t.pattern??(t.pattern=W),wt.init(e,t)})),At=D("$ZodUUID",((e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=J(e))}else t.pattern??(t.pattern=J());wt.init(e,t)})),Tt=D("$ZodEmail",((e,t)=>{t.pattern??(t.pattern=K),wt.init(e,t)})),Nt=D("$ZodURL",((e,t)=>{wt.init(e,t),e._zod.check=n=>{try{const i=n.value.trim(),o=new URL(i);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:re.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=o.href:n.value=i)}catch(i){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}})),Ct=D("$ZodEmoji",((e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),wt.init(e,t)})),It=D("$ZodNanoID",((e,t)=>{t.pattern??(t.pattern=q),wt.init(e,t)})),Rt=D("$ZodCUID",((e,t)=>{t.pattern??(t.pattern=G),wt.init(e,t)})),Ot=D("$ZodCUID2",((e,t)=>{t.pattern??(t.pattern=H),wt.init(e,t)})),St=D("$ZodULID",((e,t)=>{t.pattern??(t.pattern=B),wt.init(e,t)})),$t=D("$ZodXID",((e,t)=>{t.pattern??(t.pattern=V),wt.init(e,t)})),xt=D("$ZodKSUID",((e,t)=>{t.pattern??(t.pattern=Q),wt.init(e,t)})),Ft=D("$ZodISODateTime",((e,t)=>{t.pattern??(t.pattern=function(e){const t=ue({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const i=`${t}(?:${n.join("|")})`;return new RegExp(`^${se}T(?:${i})$`)}(t)),wt.init(e,t)})),Zt=D("$ZodISODate",((e,t)=>{t.pattern??(t.pattern=ce),wt.init(e,t)})),Dt=D("$ZodISOTime",((e,t)=>{t.pattern??(t.pattern=new RegExp(`^${ue(t)}$`)),wt.init(e,t)})),Ut=D("$ZodISODuration",((e,t)=>{t.pattern??(t.pattern=Y),wt.init(e,t)})),jt=D("$ZodIPv4",((e,t)=>{t.pattern??(t.pattern=X),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv4"}))})),Lt=D("$ZodIPv6",((e,t)=>{t.pattern??(t.pattern=ee),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.format="ipv6"})),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}})),Mt=D("$ZodCIDRv4",((e,t)=>{t.pattern??(t.pattern=te),wt.init(e,t)})),Gt=D("$ZodCIDRv6",((e,t)=>{t.pattern??(t.pattern=ne),wt.init(e,t),e._zod.check=n=>{const[i,o]=n.value.split("/");try{if(!o)throw new Error;const e=Number(o);if(`${e}`!==o)throw new Error;if(e<0||e>128)throw new Error;new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}}));function Ht(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Bt=D("$ZodBase64",((e,t)=>{t.pattern??(t.pattern=ie),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64"})),e._zod.check=n=>{Ht(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}})),Vt=D("$ZodBase64URL",((e,t)=>{t.pattern??(t.pattern=oe),wt.init(e,t),e._zod.onattach.push((e=>{e._zod.bag.contentEncoding="base64url"})),e._zod.check=n=>{(function(e){if(!oe.test(e))return!1;const t=e.replace(/[-_]/g,(e=>"-"===e?"+":"/"));return Ht(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}})),Qt=D("$ZodE164",((e,t)=>{t.pattern??(t.pattern=ae),wt.init(e,t)})),qt=D("$ZodJWT",((e,t)=>{wt.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[i]=n;if(!i)return!1;const o=JSON.parse(atob(i));return!("typ"in o&&"JWT"!==o?.typ||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}})),Yt=D("$ZodNumber",((e,t)=>{kt.init(e,t),e._zod.pattern=e._zod.bag.pattern??le,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Number(n.value)}catch(e){}const o=n.value;if("number"==typeof o&&!Number.isNaN(o)&&Number.isFinite(o))return n;const r="number"==typeof o?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...r?{received:r}:{}}),n}})),Wt=D("$ZodNumber",((e,t)=>{Be.init(e,t),Yt.init(e,t)})),Jt=D("$ZodBoolean",((e,t)=>{kt.init(e,t),e._zod.pattern=pe,e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const o=n.value;return"boolean"==typeof o||n.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),n}})),Kt=D("$ZodUnknown",((e,t)=>{kt.init(e,t),e._zod.parse=e=>e})),Xt=D("$ZodNever",((e,t)=>{kt.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)})),en=D("$ZodDate",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(e){}const o=n.value,r=o instanceof Date;return r&&!Number.isNaN(o.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:o,...r?{received:"Invalid Date"}:{},inst:e}),n}}));function tn(e,t,n){e.issues.length&&t.issues.push(...xe(n,e.issues)),t.value[n]=e.value}const nn=D("$ZodArray",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{const o=n.value;if(!Array.isArray(o))return n.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),n;n.value=Array(o.length);const r=[];for(let e=0;e<o.length;e++){const a=o[e],s=t.element._zod.run({value:a,issues:[]},i);s instanceof Promise?r.push(s.then((t=>tn(t,n,e)))):tn(s,n,e)}return r.length?Promise.all(r).then((()=>n)):n}}));function on(e,t,n,i){e.issues.length&&t.issues.push(...xe(n,e.issues)),void 0===e.value?n in i&&(t.value[n]=void 0):t.value[n]=e.value}function rn(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape[n]._zod.traits.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(i=e.shape,Object.keys(i).filter((e=>"optional"===i[e]._zod.optin&&"optional"===i[e]._zod.optout)));var i;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function an(e,t,n,i,o,r){const a=[],s=o.keySet,c=o.catchall._zod,u=c.def.type;for(const o of Object.keys(t)){if(s.has(o))continue;if("never"===u){a.push(o);continue}const r=c.run({value:t[o],issues:[]},i);r instanceof Promise?e.push(r.then((e=>on(e,n,o,t)))):on(r,n,o,t)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:r}),e.length?Promise.all(e).then((()=>n)):n}const sn=D("$ZodObject",((e,t)=>{kt.init(e,t);const n=ge((()=>rn(t)));Pe(e._zod,"propValues",(()=>{const e=t.shape,n={};for(const t in e){const i=e[t]._zod;if(i.values){n[t]??(n[t]=new Set);for(const e of i.values)n[t].add(e)}}return n}));const i=Ee,o=t.catchall;let r;e._zod.parse=(t,a)=>{r??(r=n.value);const s=t.value;if(!i(s))return t.issues.push({expected:"object",code:"invalid_type",input:s,inst:e}),t;t.value={};const c=[],u=r.shape;for(const e of r.keys){const n=u[e]._zod.run({value:s[e],issues:[]},a);n instanceof Promise?c.push(n.then((n=>on(n,t,e,s)))):on(n,t,e,s)}return o?an(c,s,t,a,n.value,e):c.length?Promise.all(c).then((()=>t)):t}})),cn=D("$ZodObjectJIT",((e,t)=>{sn.init(e,t);const n=e._zod.parse,i=ge((()=>rn(t)));let o;const r=Ee,a=!L.jitless,s=a&&Ae.value,c=t.catchall;let u;e._zod.parse=(d,l)=>{u??(u=i.value);const p=d.value;return r(p)?a&&s&&!1===l?.async&&!0!==l.jitless?(o||(o=(e=>{const t=new it(["shape","payload","ctx"]),n=i.value,o=e=>{const t=be(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const r=Object.create(null);let a=0;for(const e of n.keys)r[e]="key_"+a++;t.write("const newResult = {}");for(const e of n.keys){const n=r[e],i=be(e);t.write(`const ${n} = ${o(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${i}, ...iss.path] : [${i}]\n })));\n }\n \n if (${n}.value === undefined) {\n if (${i} in input) {\n newResult[${i}] = undefined;\n }\n } else {\n newResult[${i}] = ${n}.value;\n }\n `)}t.write("payload.value = newResult;"),t.write("return payload;");const s=t.compile();return(t,n)=>s(e,t,n)})(t.shape)),d=o(d,l),c?an([],p,d,l,u,e):d):n(d,l):(d.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),d)}}));function un(e,t,n,i){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const o=e.filter((e=>!$e(e)));return 1===o.length?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((e=>e.issues.map((e=>Ze(e,i,M())))))}),t)}const dn=D("$ZodUnion",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.options.some((e=>"optional"===e._zod.optin))?"optional":void 0)),Pe(e._zod,"optout",(()=>t.options.some((e=>"optional"===e._zod.optout))?"optional":void 0)),Pe(e._zod,"values",(()=>{if(t.options.every((e=>e._zod.values)))return new Set(t.options.flatMap((e=>Array.from(e._zod.values))))})),Pe(e._zod,"pattern",(()=>{if(t.options.every((e=>e._zod.pattern))){const e=t.options.map((e=>e._zod.pattern));return new RegExp(`^(${e.map((e=>ye(e.source))).join("|")})$`)}}));const n=1===t.options.length,i=t.options[0]._zod.run;e._zod.parse=(o,r)=>{if(n)return i(o,r);let a=!1;const s=[];for(const e of t.options){const t=e._zod.run({value:o.value,issues:[]},r);if(t instanceof Promise)s.push(t),a=!0;else{if(0===t.issues.length)return t;s.push(t)}}return a?Promise.all(s).then((t=>un(t,o,e,r))):un(s,o,e,r)}})),ln=D("$ZodIntersection",((e,t)=>{kt.init(e,t),e._zod.parse=(e,n)=>{const i=e.value,o=t.left._zod.run({value:i,issues:[]},n),r=t.right._zod.run({value:i,issues:[]},n);return o instanceof Promise||r instanceof Promise?Promise.all([o,r]).then((([t,n])=>fn(e,t,n))):fn(e,o,r)}}));function pn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Te(e)&&Te(t)){const n=Object.keys(t),i=Object.keys(e).filter((e=>-1!==n.indexOf(e))),o={...e,...t};for(const n of i){const i=pn(e[n],t[n]);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};o[n]=i.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let i=0;i<e.length;i++){const o=pn(e[i],t[i]);if(!o.valid)return{valid:!1,mergeErrorPath:[i,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function fn(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),$e(e))return e;const i=pn(t.value,n.value);if(!i.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(i.mergeErrorPath)}`);return e.value=i.data,e}const hn=D("$ZodEnum",((e,t)=>{kt.init(e,t);const n=function(e){const t=Object.values(e).filter((e=>"number"==typeof e));return Object.entries(e).filter((([e,n])=>-1===t.indexOf(+e))).map((([e,t])=>t))}(t.entries),i=new Set(n);e._zod.values=i,e._zod.pattern=new RegExp(`^(${n.filter((e=>Ce.has(typeof e))).map((e=>"string"==typeof e?Ie(e):e.toString())).join("|")})$`),e._zod.parse=(t,o)=>{const r=t.value;return i.has(r)||t.issues.push({code:"invalid_value",values:n,input:r,inst:e}),t}})),mn=D("$ZodTransform",((e,t)=>{kt.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new j(e.constructor.name);const o=t.transform(n.value,n);if(i.async)return(o instanceof Promise?o:Promise.resolve(o)).then((e=>(n.value=e,n)));if(o instanceof Promise)throw new U;return n.value=o,n}}));function gn(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const vn=D("$ZodOptional",((e,t)=>{kt.init(e,t),e._zod.optin="optional",e._zod.optout="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0)),Pe(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${ye(e.source)})?$`):void 0})),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((t=>gn(t,e.value))):gn(i,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}})),yn=D("$ZodNullable",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),Pe(e._zod,"pattern",(()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${ye(e.source)}|null)$`):void 0})),Pe(e._zod,"values",(()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0)),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)})),_n=D("$ZodDefault",((e,t)=>{kt.init(e,t),e._zod.optin="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((e=>Pn(e,t))):Pn(i,t)}}));function Pn(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const zn=D("$ZodPrefault",((e,t)=>{kt.init(e,t),e._zod.optin="optional",Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))})),kn=D("$ZodNonOptional",((e,t)=>{kt.init(e,t),Pe(e._zod,"values",(()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter((e=>void 0!==e))):void 0})),e._zod.parse=(n,i)=>{const o=t.innerType._zod.run(n,i);return o instanceof Promise?o.then((t=>bn(t,e))):bn(o,e)}}));function bn(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const wn=D("$ZodCatch",((e,t)=>{kt.init(e,t),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),Pe(e._zod,"values",(()=>t.innerType._zod.values)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then((i=>(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Ze(e,n,M())))},input:e.value}),e.issues=[]),e))):(e.value=i.value,i.issues.length&&(e.value=t.catchValue({...e,error:{issues:i.issues.map((e=>Ze(e,n,M())))},input:e.value}),e.issues=[]),e)}})),En=D("$ZodPipe",((e,t)=>{kt.init(e,t),Pe(e._zod,"values",(()=>t.in._zod.values)),Pe(e._zod,"optin",(()=>t.in._zod.optin)),Pe(e._zod,"optout",(()=>t.out._zod.optout)),Pe(e._zod,"propValues",(()=>t.in._zod.propValues)),e._zod.parse=(e,n)=>{if("backward"===n.direction){const i=t.out._zod.run(e,n);return i instanceof Promise?i.then((e=>An(e,t.in,n))):An(i,t.in,n)}const i=t.in._zod.run(e,n);return i instanceof Promise?i.then((e=>An(e,t.out,n))):An(i,t.out,n)}}));function An(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Tn=D("$ZodReadonly",((e,t)=>{kt.init(e,t),Pe(e._zod,"propValues",(()=>t.innerType._zod.propValues)),Pe(e._zod,"values",(()=>t.innerType._zod.values)),Pe(e._zod,"optin",(()=>t.innerType._zod.optin)),Pe(e._zod,"optout",(()=>t.innerType._zod.optout)),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(Nn):Nn(i)}}));function Nn(e){return e.value=Object.freeze(e.value),e}const Cn=D("$ZodCustom",((e,t)=>{je.init(e,t),kt.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const i=n.value,o=t.fn(i);if(o instanceof Promise)return o.then((t=>In(t,n,i,e)));In(o,n,i,e)}}));function In(e,t,n,i){if(!e){const e={code:"custom",input:n,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(e.params=i._zod.def.params),t.issues.push(Ue(e))}}Symbol("ZodOutput"),Symbol("ZodInput");class Rn{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const i={...n,...this._map.get(e)};return Object.keys(i).length?i:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function On(){return new Rn}const Sn=On();function $n(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Oe(t)})}function xn(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Oe(t)})}function Fn(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Oe(t)})}function Zn(e,t){return new Me({check:"less_than",...Oe(t),value:e,inclusive:!1})}function Dn(e,t){return new Me({check:"less_than",...Oe(t),value:e,inclusive:!0})}function Un(e,t){return new Ge({check:"greater_than",...Oe(t),value:e,inclusive:!1})}function jn(e,t){return new Ge({check:"greater_than",...Oe(t),value:e,inclusive:!0})}function Ln(e,t){return new He({check:"multiple_of",...Oe(t),value:e})}function Mn(e,t){return new Ve({check:"max_length",...Oe(t),maximum:e})}function Gn(e,t){return new Qe({check:"min_length",...Oe(t),minimum:e})}function Hn(e,t){return new qe({check:"length_equals",...Oe(t),length:e})}function Bn(e){return new nt({check:"overwrite",tx:e})}const Vn=D("ZodISODateTime",((e,t)=>{Ft.init(e,t),hi.init(e,t)}));const Qn=D("ZodISODate",((e,t)=>{Zt.init(e,t),hi.init(e,t)}));const qn=D("ZodISOTime",((e,t)=>{Dt.init(e,t),hi.init(e,t)}));const Yn=D("ZodISODuration",((e,t)=>{Ut.init(e,t),hi.init(e,t)}));const Wn=(e,t)=>{rt.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t){const n=t||function(e){return e.message},i={_errors:[]},o=e=>{for(const t of e.issues)if("invalid_union"===t.code&&t.errors.length)t.errors.map((e=>o({issues:e})));else if("invalid_key"===t.code)o({issues:t.issues});else if("invalid_element"===t.code)o({issues:t.issues});else if(0===t.path.length)i._errors.push(n(t));else{let e=i,o=0;for(;o<t.path.length;){const i=t.path[o];o===t.path.length-1?(e[i]=e[i]||{_errors:[]},e[i]._errors.push(n(t))):e[i]=e[i]||{_errors:[]},e=e[i],o++}}};return o(e),i}(e,t)},flatten:{value:t=>function(e,t=(e=>e.message)){const n={},i=[];for(const o of e.issues)o.path.length>0?(n[o.path[0]]=n[o.path[0]]||[],n[o.path[0]].push(t(o))):i.push(t(o));return{formErrors:i,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,me,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,me,2)}},isEmpty:{get:()=>0===e.issues.length}})},Jn=(D("ZodError",Wn),D("ZodError",Wn,{Parent:Error})),Kn=st(Jn),Xn=ct(Jn),ei=ut(Jn),ti=lt(Jn),ni=ft(Jn),ii=ht(Jn),oi=mt(Jn),ri=gt(Jn),ai=vt(Jn),si=yt(Jn),ci=_t(Jn),ui=Pt(Jn),di=D("ZodType",((e,t)=>(kt.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map((e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e))]}),e.clone=(t,n)=>Re(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>Kn(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ei(e,t,n),e.parseAsync=async(t,n)=>Xn(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>ti(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ni(e,t,n),e.decode=(t,n)=>ii(e,t,n),e.encodeAsync=async(t,n)=>oi(e,t,n),e.decodeAsync=async(t,n)=>ri(e,t,n),e.safeEncode=(t,n)=>ai(e,t,n),e.safeDecode=(t,n)=>si(e,t,n),e.safeEncodeAsync=async(t,n)=>ci(e,t,n),e.safeDecodeAsync=async(t,n)=>ui(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Oe(n)})}(po,e,t)}(t,n)),e.superRefine=t=>e.check(function(e){const t=function(e,t){const n=new je({check:"custom",...Oe(void 0)});return n._zod.check=e,n}((n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push(Ue(e,n.value,t._zod.def));else{const i=e;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=n.value),i.inst??(i.inst=t),i.continue??(i.continue=!t._zod.def.abort),n.issues.push(Ue(i))}},e(n.value,n))));return t}(t)),e.overwrite=t=>e.check(Bn(t)),e.optional=()=>to(e),e.nullable=()=>io(e),e.nullish=()=>to(io(e)),e.nonoptional=t=>function(e,t){return new ao({type:"nonoptional",innerType:e,...Oe(t)})}(e,t),e.array=()=>Vi(e),e.or=t=>function(e,t){return new Yi({type:"union",options:e,...Oe(t)})}([e,t]),e.and=t=>new Wi({type:"intersection",left:e,right:t}),e.transform=t=>uo(e,Xi(t)),e.default=t=>{return n=t,new oo({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():Ne(n)}});var n},e.prefault=t=>{return n=t,new ro({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():Ne(n)}});var n},e.catch=t=>{return new so({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>uo(e,t),e.readonly=()=>new lo({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return Sn.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>Sn.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return Sn.get(e);const n=e.clone();return Sn.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e))),li=D("_ZodString",((e,t)=>{bt.init(e,t),di.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new We({check:"string_format",format:"regex",...Oe(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new Xe({check:"string_format",format:"includes",...Oe(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new et({check:"string_format",format:"starts_with",...Oe(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new tt({check:"string_format",format:"ends_with",...Oe(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Gn(...t)),e.max=(...t)=>e.check(Mn(...t)),e.length=(...t)=>e.check(Hn(...t)),e.nonempty=(...t)=>e.check(Gn(1,...t)),e.lowercase=t=>e.check(function(e){return new Je({check:"string_format",format:"lowercase",...Oe(e)})}(t)),e.uppercase=t=>e.check(function(e){return new Ke({check:"string_format",format:"uppercase",...Oe(e)})}(t)),e.trim=()=>e.check(Bn((e=>e.trim()))),e.normalize=(...t)=>e.check(function(e){return Bn((t=>t.normalize(e)))}(...t)),e.toLowerCase=()=>e.check(Bn((e=>e.toLowerCase()))),e.toUpperCase=()=>e.check(Bn((e=>e.toUpperCase())))})),pi=D("ZodString",((e,t)=>{bt.init(e,t),li.init(e,t),e.email=t=>e.check($n(mi,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Oe(t)})}(_i,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Oe(t)})}($i,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Oe(t)})}(Pi,t)),e.guid=t=>e.check(xn(vi,t)),e.uuid=t=>e.check(Fn(yi,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Oe(t)})}(yi,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Oe(t)})}(yi,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Oe(t)})}(yi,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Oe(t)})}(zi,t)),e.guid=t=>e.check(xn(vi,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Oe(t)})}(ki,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Oe(t)})}(bi,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Oe(t)})}(wi,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Oe(t)})}(Ri,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Oe(t)})}(Oi,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Oe(t)})}(Ei,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Oe(t)})}(Ai,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Oe(t)})}(Ti,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Oe(t)})}(Ni,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Oe(t)})}(Ci,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Oe(t)})}(Ii,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Oe(t)})}(Si,t)),e.datetime=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Oe(t)})}(Vn,e)}(t)),e.date=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Oe(t)})}(Qn,e)}(t)),e.time=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Oe(t)})}(qn,e)}(t)),e.duration=t=>e.check(function(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Oe(t)})}(Yn,e)}(t))}));function fi(e){return function(e,t){return new e({type:"string",...Oe(t)})}(pi,e)}const hi=D("ZodStringFormat",((e,t)=>{wt.init(e,t),li.init(e,t)})),mi=D("ZodEmail",((e,t)=>{Tt.init(e,t),hi.init(e,t)}));function gi(e){return $n(mi,e)}const vi=D("ZodGUID",((e,t)=>{Et.init(e,t),hi.init(e,t)})),yi=D("ZodUUID",((e,t)=>{At.init(e,t),hi.init(e,t)})),_i=D("ZodURL",((e,t)=>{Nt.init(e,t),hi.init(e,t)})),Pi=D("ZodEmoji",((e,t)=>{Ct.init(e,t),hi.init(e,t)})),zi=D("ZodNanoID",((e,t)=>{It.init(e,t),hi.init(e,t)})),ki=D("ZodCUID",((e,t)=>{Rt.init(e,t),hi.init(e,t)})),bi=D("ZodCUID2",((e,t)=>{Ot.init(e,t),hi.init(e,t)})),wi=D("ZodULID",((e,t)=>{St.init(e,t),hi.init(e,t)})),Ei=D("ZodXID",((e,t)=>{$t.init(e,t),hi.init(e,t)})),Ai=D("ZodKSUID",((e,t)=>{xt.init(e,t),hi.init(e,t)})),Ti=D("ZodIPv4",((e,t)=>{jt.init(e,t),hi.init(e,t)})),Ni=D("ZodIPv6",((e,t)=>{Lt.init(e,t),hi.init(e,t)})),Ci=D("ZodCIDRv4",((e,t)=>{Mt.init(e,t),hi.init(e,t)})),Ii=D("ZodCIDRv6",((e,t)=>{Gt.init(e,t),hi.init(e,t)})),Ri=D("ZodBase64",((e,t)=>{Bt.init(e,t),hi.init(e,t)})),Oi=D("ZodBase64URL",((e,t)=>{Vt.init(e,t),hi.init(e,t)})),Si=D("ZodE164",((e,t)=>{Qt.init(e,t),hi.init(e,t)})),$i=D("ZodJWT",((e,t)=>{qt.init(e,t),hi.init(e,t)})),xi=D("ZodNumber",((e,t)=>{Yt.init(e,t),di.init(e,t),e.gt=(t,n)=>e.check(Un(t,n)),e.gte=(t,n)=>e.check(jn(t,n)),e.min=(t,n)=>e.check(jn(t,n)),e.lt=(t,n)=>e.check(Zn(t,n)),e.lte=(t,n)=>e.check(Dn(t,n)),e.max=(t,n)=>e.check(Dn(t,n)),e.int=t=>e.check(Di(t)),e.safe=t=>e.check(Di(t)),e.positive=t=>e.check(Un(0,t)),e.nonnegative=t=>e.check(jn(0,t)),e.negative=t=>e.check(Zn(0,t)),e.nonpositive=t=>e.check(Dn(0,t)),e.multipleOf=(t,n)=>e.check(Ln(t,n)),e.step=(t,n)=>e.check(Ln(t,n)),e.finite=()=>e;const n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null}));function Fi(e){return function(e,t){return new e({type:"number",checks:[],...Oe(t)})}(xi,e)}const Zi=D("ZodNumberFormat",((e,t)=>{Wt.init(e,t),xi.init(e,t)}));function Di(e){return function(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...Oe(t)})}(Zi,e)}const Ui=D("ZodBoolean",((e,t)=>{Jt.init(e,t),di.init(e,t)}));const ji=D("ZodUnknown",((e,t)=>{Kt.init(e,t),di.init(e,t)}));function Li(){return new ji({type:"unknown"})}const Mi=D("ZodNever",((e,t)=>{Xt.init(e,t),di.init(e,t)}));function Gi(e){return function(e,t){return new e({type:"never",...Oe(t)})}(Mi,e)}const Hi=D("ZodDate",((e,t)=>{en.init(e,t),di.init(e,t),e.min=(t,n)=>e.check(jn(t,n)),e.max=(t,n)=>e.check(Dn(t,n));const n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null}));const Bi=D("ZodArray",((e,t)=>{nn.init(e,t),di.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Gn(t,n)),e.nonempty=t=>e.check(Gn(1,t)),e.max=(t,n)=>e.check(Mn(t,n)),e.length=(t,n)=>e.check(Hn(t,n)),e.unwrap=()=>e.element}));function Vi(e,t){return function(e,t,n){return new e({type:"array",element:t,...Oe(n)})}(Bi,e,t)}const Qi=D("ZodObject",((e,t)=>{cn.init(e,t),di.init(e,t),Pe(e,"shape",(()=>t.shape)),e.keyof=()=>function(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map((e=>[e,e]))):e;return new Ji({type:"enum",entries:n,...Oe(t)})}(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Li()}),e.loose=()=>e.clone({...e._zod.def,catchall:Li()}),e.strict=()=>e.clone({...e._zod.def,catchall:Gi()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!Te(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const i=ke(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return ze(this,"shape",n),n},checks:[]});return Re(e,i)}(e,t),e.safeExtend=t=>function(e,t){if(!Te(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return ze(this,"shape",n),n},checks:e._zod.def.checks};return Re(e,n)}(e,t),e.merge=t=>function(e,t){const n=ke(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return ze(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return Re(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return Re(e,ke(e._zod.def,{get shape(){const e={};for(const i in t){if(!(i in n.shape))throw new Error(`Unrecognized key: "${i}"`);t[i]&&(e[i]=n.shape[i])}return ze(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,i=ke(e._zod.def,{get shape(){const i={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete i[e]}return ze(this,"shape",i),i},checks:[]});return Re(e,i)}(e,t),e.partial=(...t)=>function(e,t,n){const i=ke(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in i))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=e?new e({type:"optional",innerType:i[t]}):i[t])}else for(const t in i)o[t]=e?new e({type:"optional",innerType:i[t]}):i[t];return ze(this,"shape",o),o},checks:[]});return Re(t,i)}(eo,e,t[0]),e.required=(...t)=>function(e,t,n){const i=ke(t._zod.def,{get shape(){const i=t._zod.def.shape,o={...i};if(n)for(const t in n){if(!(t in o))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(o[t]=new e({type:"nonoptional",innerType:i[t]}))}else for(const t in i)o[t]=new e({type:"nonoptional",innerType:i[t]});return ze(this,"shape",o),o},checks:[]});return Re(t,i)}(ao,e,t[0])}));function qi(e,t){const n={type:"object",get shape(){var t;return ze(this,"shape",e?(t=e,Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))):{}),this.shape},...Oe(t)};return new Qi(n)}const Yi=D("ZodUnion",((e,t)=>{dn.init(e,t),di.init(e,t),e.options=t.options}));const Wi=D("ZodIntersection",((e,t)=>{ln.init(e,t),di.init(e,t)})),Ji=D("ZodEnum",((e,t)=>{hn.init(e,t),di.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,i)=>{const o={};for(const i of e){if(!n.has(i))throw new Error(`Key ${i} not found in enum`);o[i]=t.entries[i]}return new Ji({...t,checks:[],...Oe(i),entries:o})},e.exclude=(e,i)=>{const o={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete o[t]}return new Ji({...t,checks:[],...Oe(i),entries:o})}}));const Ki=D("ZodTransform",((e,t)=>{mn.init(e,t),di.init(e,t),e._zod.parse=(n,i)=>{if("backward"===i.direction)throw new j(e.constructor.name);n.addIssue=i=>{if("string"==typeof i)n.issues.push(Ue(i,n.value,t));else{const t=i;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push(Ue(t))}};const o=t.transform(n.value,n);return o instanceof Promise?o.then((e=>(n.value=e,n))):(n.value=o,n)}}));function Xi(e){return new Ki({type:"transform",transform:e})}const eo=D("ZodOptional",((e,t)=>{vn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function to(e){return new eo({type:"optional",innerType:e})}const no=D("ZodNullable",((e,t)=>{yn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType}));function io(e){return new no({type:"nullable",innerType:e})}const oo=D("ZodDefault",((e,t)=>{_n.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap})),ro=D("ZodPrefault",((e,t)=>{zn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),ao=D("ZodNonOptional",((e,t)=>{kn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),so=D("ZodCatch",((e,t)=>{wn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap})),co=D("ZodPipe",((e,t)=>{En.init(e,t),di.init(e,t),e.in=t.in,e.out=t.out}));function uo(e,t){return new co({type:"pipe",in:e,out:t})}const lo=D("ZodReadonly",((e,t)=>{Tn.init(e,t),di.init(e,t),e.unwrap=()=>e._zod.def.innerType})),po=D("ZodCustom",((e,t)=>{Cn.init(e,t),di.init(e,t)}));function fo(e,t){return uo(Xi(e),t)}function ho(e,t,n){const i=t.safeParse(n);return i.success?i.data:(i.error.issues.forEach((t=>{const n=t.path.join(".");e.getFieldState(n)?e.setError(n,{type:"manual",message:t.message}):e.setError("root",{type:"manual",message:t.message})})),null)}const mo=e=>fo((e=>{if(e){if("string"==typeof e){const t=Number(e);return isNaN(t)?e:t}return e}}),e),go=e=>fo((e=>{if(!e)return;let t;return"string"==typeof e&&(t=new Date(e)),e instanceof Date&&(t=e),t?(t.setUTCHours(0,0,0,0),t):e}),e),vo=e=>fi().min(1,{error:"Required"}).max(e,`Maximum length is ${e} characters`),yo=()=>gi("Invalid email address").min(1,"Required"),_o=()=>mo(Fi("Valid amount required").positive("Positive amount required")),Po=()=>go(function(e){return function(e,t){return new e({type:"date",...Oe(t)})}(Hi,e)}("Valid date required").min(new Date,"Date must be in the future")),zo=e=>fi().max(e,`Maximum length is ${e} characters`),ko=qi({address1:vo(100),address2:zo(100).optional(),city:vo(50),state:zo(50).optional(),postcode:zo(20).optional(),country:vo(50)}),bo=qi({amount:_o(),message:zo(500).nullish(),giverFirstName:vo(50),giverLastName:vo(50),giverEmail:yo(),giverPhone:vo(31),giverAddress:ko,cardHolder:vo(101),recipientFirstName:zo(50).nullish(),recipientLastName:zo(50).nullish(),recipientEmail:gi("Invalid email address").nullish(),recipientPhone:zo(31).nullish()}),wo=bo.extend({expiry:Po(),notes:zo(500).nullish()}),Eo=qi({balance:_o(),expiry:Po(),message:zo(500).nullish(),notes:zo(500).nullish(),giverFirstName:vo(50),giverLastName:vo(50),giverEmail:yo(),giverPhone:vo(31),cardHolder:vo(101),recipientEmail:gi("Invalid email address").nullish(),recipientPhone:zo(31).nullish()});let Ao;!function(e){e.Passthrough="Passthrough",e.PaymentProcessor="PaymentProcessor"}(Ao||(Ao={}));const To=qi({companyId:Fi().int().positive(),amount:_o(),currency:vo(3).default("AUD")}),No=qi({sessionId:vo(100),resultCode:vo(50),pspReference:zo(100).optional()}),Co=qi({cardHolder:vo(100),cardNumberToken:zo(200),cardCvcToken:zo(200),cardExpiry:zo(5)}),Io=bo.extend({companyId:Fi().int().positive(),sendViaEmail:function(e){return function(e,t){return new e({type:"boolean",...Oe(t)})}(Ui,e)}().default(!0),payment:No.optional(),passthroughPayment:Co.optional()}),Ro=qi({giftCardId:Fi().int().positive(),reason:zo(500).optional()}),Oo=qi({companyId:Fi().int().positive().nullish(),code:vo(10),password:vo(10)}),So=Oo.extend({amount:_o(),description:vo(200)});let $o,xo,Fo,Zo,Do,Uo;!function(e){e.Adyen="Adyen"}($o||($o={})),function(e){e.Pending="Pending",e.Authorized="Authorized",e.Captured="Captured",e.Failed="Failed",e.Refunded="Refunded"}(xo||(xo={})),function(e){e.Authorised="Authorised",e.Refused="Refused",e.Cancelled="Cancelled",e.Pending="Pending",e.Received="Received",e.Error="Error",e.IdentifyShopper="IdentifyShopper",e.ChallengeShopper="ChallengeShopper"}(Fo||(Fo={})),function(e){e.AUTHORISATION="AUTHORISATION",e.CAPTURE="CAPTURE",e.REFUND="REFUND",e.CANCELLATION="CANCELLATION",e.REFUND_FAILED="REFUND_FAILED",e.CAPTURE_FAILED="CAPTURE_FAILED"}(Zo||(Zo={})),function(e){e.Purchase="Purchase",e.Redemption="Redemption",e.Adjustment="Adjustment"}(Do||(Do={})),function(e){e.Pending="Pending",e.Complete="Complete",e.Cancelled="Cancelled",e.Expired="Expired"}(Uo||(Uo={}));const jo=qi({code:vo(10),token:vo(128)}),Lo=qi({companyId:Fi().int().positive(),code:vo(10),token:vo(128)}),Mo=qi({grant_type:fi().readonly().default("refresh_token"),client_id:Fn(yi,undefined),client_secret:fi(),refresh_token:fi(),scope:fi().optional()});const Go=qi({email:gi(),firstName:fi().max(100).optional(),lastName:fi().max(100).optional(),phone:fi().max(20).optional(),scopes:Vi(fi()).optional()});let Ho;!function(e){e.PER_STAY="Per stay",e.PER_NIGHT="Per night",e.PER_PERSON="Per person",e.PER_PERSON_PER_NIGHT="Per person per night",e.PER_ALL_PERSONS="Per all persons",e.PER_ALL_PERSONS_PER_NIGHT="Per all persons per night",e.PER_QUANTITY_NAME_PER_NIGHT="Per Quantity Name Per Night",e.PER_ROOM_QUANTITY_PER_NIGHT="Per Room Quantity Per Night",e.PER_PERSON_OCCUPANCY_PER_NIGHT="Per Person Occupancy Per Night",e.PER_ADULT_OCCUPANCY_PER_NIGHT="Per Adult Occupancy Per Night",e.PER_CHILD_OCCUPANCY_PER_NIGHT="Per Child Occupancy Per Night"}(Ho||(Ho={}));const Bo=[Ho.PER_NIGHT,Ho.PER_PERSON_PER_NIGHT,Ho.PER_QUANTITY_NAME_PER_NIGHT,Ho.PER_ROOM_QUANTITY_PER_NIGHT,Ho.PER_PERSON_OCCUPANCY_PER_NIGHT,Ho.PER_ADULT_OCCUPANCY_PER_NIGHT,Ho.PER_CHILD_OCCUPANCY_PER_NIGHT,Ho.PER_ALL_PERSONS_PER_NIGHT];let Vo,Qo,qo;!function(e){e.Critical="Critical",e.Error="Error",e.Warn="Warn",e.Info="Info"}(Vo||(Vo={})),function(e){e.Debug="Diagnostics",e.Security="Security",e.Audit="Audit"}(Qo||(Qo={})),function(e){e.General="General",e.Authenticated="Token Authenticated",e.Unauthorized="Unauthorized Access",e.RefreshToken="Refresh Token Created",e.AccessToken="Access Token Created",e.Revoked="Token Revoked",e.UserCreated="User Created",e.UserLinked="User Linked to Company",e.Purchase="Gift Card Purchased",e.Payment="Payment",e.Email="Email Delivery",e.Transaction="Gift Card Transaction"}(qo||(qo={}));const Yo=e=>{let t=0;const n=Object.values(e.itinerary);for(const e of n){const n=Object.keys(e.nights);for(const i of n)t+=e.nights[i].total}return t};var Wo=i(60),Jo=i.n(Wo);const Ko={UP:Jo().ROUND_UP,DOWN:Jo().ROUND_DOWN,CEIL:Jo().ROUND_CEIL,FLOOR:Jo().ROUND_FLOOR,HALF_UP:Jo().ROUND_HALF_UP,HALF_DOWN:Jo().ROUND_HALF_DOWN,HALF_EVEN:Jo().ROUND_HALF_EVEN,HALF_CEIL:Jo().ROUND_HALF_CEIL,HALF_FLOOR:Jo().ROUND_HALF_FLOOR},Xo=(e,t)=>{const{precision:n=2,rounding:i=Ko.HALF_UP}=t||{};return new(Jo())(e).toDecimalPlaces(n,i).toNumber()};function er(e,t={}){const{baseAmount:n=0,numberOfNights:i=1,feeIncludedInBaseAmount:o=!1,extractedFromRates:r=!1,removedPercentages:a=[]}=t,s=Xo(n);switch(e.feeType){case O.PercentageOfBooking:if(o)return Xo(s*e.amount/(100+e.amount));if(r){const t=a.reduce(((e,t)=>e+t/(100+t)),0);return Xo(s/(1-t)*e.amount/(100+e.amount))}return Xo(s*(e.amount/100));case O.FixedChargePerRoom:case O.FixedChargePerBooking:return e.amount;case O.NightlyChargePerRoom:return Xo(e.amount*i);default:return 0}}const tr=[O.FixedChargePerBooking],nr=[O.PercentageOfBooking,O.FixedChargePerRoom,O.NightlyChargePerRoom],ir=[O.PercentageOfBooking];function or(e,t){return e.filter((e=>t.includes(e.feeType)))}function rr(e){return or(e,tr)}function ar(e){return or(e,nr)}function sr(e){return or(e,ir)}function cr(e){return{includeInRates:[O.PercentageOfBooking,O.NightlyChargePerRoom].includes(e),extractFeeFromRates:e===O.PercentageOfBooking,appliesToAddons:e===O.PercentageOfBooking,includePreviousFeesInCalculation:e===O.PercentageOfBooking}}const ur=e=>e,dr=(e,t)=>{const n={};return t.forEach((t=>{t in e&&(n[t]=e[t])})),n},lr=(e,t)=>e.includes("cdn.app.roomstay.io")?e+"?w="+t:e;class pr{}function fr(e){return e.toUpperCase()}pr.calculateBaseAddonTotal=(e,t)=>{let n=0,i=0,o=0;e.price&&e.quantity&&(n=e.quantity*Number(e.price)),e.pricingType===Ho.PER_ADULT_OCCUPANCY_PER_NIGHT&&e.adultQuantity?n*=e.adultQuantity:e.pricingType===Ho.PER_CHILD_OCCUPANCY_PER_NIGHT&&e.childQuantity&&(n*=e.childQuantity),e.adultPrice&&e.adultQuantity&&(i=e.adultQuantity*Number(e.adultPrice)),e.childPrice&&e.childQuantity&&(o=e.childQuantity*Number(e.childPrice));let r=n+i+o;return Bo.includes(e.pricingType)&&e.nights&&!t&&(r*=e.nights),{indPrice:n,indAdultPrice:i,indChildPrice:o,addonTotal:r}},pr.calculateBasketAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=pr.calculateBaseAddonTotal(n,t);let o=0;return(n.fee||n.fees?.length)&&n.quantity?n.fees?.length?n.fees.forEach((e=>{o+=n.quantity*e.amount})):o=n.quantity*Number(n.fee):((n.adultFee||n.adultFees?.length)&&n.adultQuantity&&(n.adultFees?.length?n.adultFees.forEach((e=>{o+=n.adultQuantity*e.amount})):o+=n.adultQuantity??1*Number(n.adultFee)),(n.childFee||n.childFees?.length)&&n.childQuantity&&(n.childFees?.length?n.childFees.forEach((e=>{o+=n.childQuantity??1*e.amount})):o+=n.childQuantity*Number(n.childFee))),Bo.includes(n.pricingType)&&n.nights&&!t&&(o*=n.nights),{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+o,total:e.total+i.addonTotal+o}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0})),pr.calculateReservationAddonTotal=(e,t=!1)=>(Array.isArray(e)||(e=[e]),e.reduce(((e,n)=>{const i=pr.calculateBaseAddonTotal(n,t);let o,r=n.discount||0;o=void 0!==n.total&&null!==n.total?n.total:i.addonTotal-r;let a=n.fees||0;n.itemisedFees?.length&&(a=n.itemisedFees.reduce(((e,t)=>e+t.amount),0));const s=n.itemisedFees?.length?o:o+a;return{price:e.price+i.indPrice,adultPrice:e.adultPrice+i.indAdultPrice,childPrice:e.childPrice+i.indChildPrice,totalFees:e.totalFees+a,total:e.total+o+a,displayPrice:e.displayPrice+s}}),{price:0,adultPrice:0,childPrice:0,totalFees:0,total:0,displayPrice:0})),pr.calculateTotalForReservation=(e,t=!1)=>{let n=0;return e.itemisedFees?.forEach((e=>{n+=e.amount})),e.reservations.forEach((e=>{n+=e.total.afterTax;const i=Object.keys(e.nights)?.length??0;if(n+=e.fees??0,e.addons?.length){const o=(e.addons??[]).map((e=>({...e,nights:i})));n+=pr.calculateReservationAddonTotal(o,t)?.total}})),Xo(n)}})(),o})()));
@@ -0,0 +1,7 @@
1
+ /*!
2
+ * decimal.js v10.4.3
3
+ * An arbitrary-precision Decimal type for JavaScript.
4
+ * https://github.com/MikeMcl/decimal.js
5
+ * Copyright (c) 2022 Michael Mclaughlin <M8ch88l@gmail.com>
6
+ * MIT Licence
7
+ */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@roomstay/core",
3
- "version": "0.1.75-0",
3
+ "version": "0.1.75-1",
4
4
  "description": "Details shared between Roomstay libraries. Anything from Currency, to Generic types",
5
5
  "types": "./dist/index.d.ts",
6
6
  "files": [