@aranova/tracking-browser 0.12.0 → 0.12.2
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/README.md
CHANGED
|
@@ -12,18 +12,16 @@ Place the script in the document `<head>` before the rest of the page can run.
|
|
|
12
12
|
<script src="https://cdn.jsdelivr.net/npm/@aranova/tracking-browser@0/dist/browser/aranova-tracking.global.js"></script>
|
|
13
13
|
<script>
|
|
14
14
|
window.AranovaTracking.init({
|
|
15
|
-
apiKey:
|
|
16
|
-
endpoint:
|
|
17
|
-
gtagId:
|
|
15
|
+
apiKey: "aranv_pk_...",
|
|
16
|
+
endpoint: "https://aranovainternal-production.up.railway.app/tracking",
|
|
17
|
+
gtagId: "AW-XXXXXXXXXX",
|
|
18
18
|
renderConsentBanner: true,
|
|
19
19
|
triggers: {
|
|
20
20
|
automatic: {
|
|
21
21
|
page_view: {},
|
|
22
22
|
time_on_site: { thresholdSeconds: 60 },
|
|
23
23
|
specific_page_visit: {
|
|
24
|
-
pages: [
|
|
25
|
-
{ name: 'contact_page', pathPattern: /^\/(contact|book|get-started)/ },
|
|
26
|
-
],
|
|
24
|
+
pages: [{ name: "contact_page", pathPattern: /^\/(contact|book|get-started)/ }],
|
|
27
25
|
},
|
|
28
26
|
},
|
|
29
27
|
manual: {
|
|
@@ -47,10 +45,10 @@ dashboard's SDK table. `environment` lets the dashboard filter test traffic out
|
|
|
47
45
|
```html
|
|
48
46
|
<script>
|
|
49
47
|
window.AranovaTracking.init({
|
|
50
|
-
apiKey:
|
|
51
|
-
endpoint:
|
|
52
|
-
environment:
|
|
53
|
-
gtagIds: { production:
|
|
48
|
+
apiKey: "aranv_pk_...",
|
|
49
|
+
endpoint: "https://aranovainternal-production.up.railway.app/tracking",
|
|
50
|
+
environment: "production",
|
|
51
|
+
gtagIds: { production: "AW-111111111", test: "AW-222222222" },
|
|
54
52
|
triggers: { automatic: { page_view: {} } },
|
|
55
53
|
});
|
|
56
54
|
</script>
|
|
@@ -74,26 +72,26 @@ The browser package validates manual events at runtime. If an event is not regis
|
|
|
74
72
|
</form>
|
|
75
73
|
|
|
76
74
|
<script>
|
|
77
|
-
document.getElementById(
|
|
75
|
+
document.getElementById("lead-form").addEventListener("submit", function (event) {
|
|
78
76
|
var form = event.currentTarget;
|
|
79
77
|
var data = new FormData(form);
|
|
80
78
|
|
|
81
|
-
window.AranovaTracking.trackEvent(
|
|
79
|
+
window.AranovaTracking.trackEvent("form_submit", {
|
|
82
80
|
form: {
|
|
83
81
|
id: form.id,
|
|
84
|
-
action: form.getAttribute(
|
|
82
|
+
action: form.getAttribute("action"),
|
|
85
83
|
fields: [
|
|
86
84
|
{
|
|
87
|
-
name:
|
|
88
|
-
type:
|
|
89
|
-
label:
|
|
90
|
-
value: String(data.get(
|
|
85
|
+
name: "service_interest",
|
|
86
|
+
type: "select",
|
|
87
|
+
label: "Service interest",
|
|
88
|
+
value: String(data.get("service_interest") || ""),
|
|
91
89
|
},
|
|
92
90
|
{
|
|
93
|
-
name:
|
|
94
|
-
type:
|
|
95
|
-
label:
|
|
96
|
-
value: data.get(
|
|
91
|
+
name: "is_existing_patient",
|
|
92
|
+
type: "checkbox",
|
|
93
|
+
label: "Existing patient",
|
|
94
|
+
value: data.get("is_existing_patient") === "on",
|
|
97
95
|
},
|
|
98
96
|
],
|
|
99
97
|
},
|
|
@@ -106,11 +104,14 @@ The browser package validates manual events at runtime. If an event is not regis
|
|
|
106
104
|
`fields[].value` can be any JSON value: string, number, boolean, null, array, or object. Only send reviewed, allowlisted, non-sensitive values; do not send names, emails, phone numbers entered by the visitor, addresses, payment data, medical details, passwords, file contents, or free-text messages.
|
|
107
105
|
|
|
108
106
|
```html
|
|
109
|
-
<a
|
|
107
|
+
<a
|
|
108
|
+
href="tel:+14165550199"
|
|
109
|
+
onclick="window.AranovaTracking.trackEvent('phone_click', {
|
|
110
110
|
phone_number: '+14165550199',
|
|
111
111
|
page: { path: window.location.pathname },
|
|
112
112
|
section: 'header'
|
|
113
|
-
})"
|
|
113
|
+
})"
|
|
114
|
+
>
|
|
114
115
|
(416) 555-0199
|
|
115
116
|
</a>
|
|
116
117
|
```
|
|
@@ -145,4 +146,3 @@ Configured automatic events are fired by the SDK:
|
|
|
145
146
|
- `scroll_depth`
|
|
146
147
|
- `multi_page_session`
|
|
147
148
|
- `form_start`
|
|
148
|
-
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var AranovaTracking=(()=>{var nt=Object.defineProperty;var $n=Object.getOwnPropertyDescriptor;var Fn=Object.getOwnPropertyNames;var zn=Object.prototype.hasOwnProperty;var zt=(t,e)=>{for(var n in e)nt(t,n,{get:e[n],enumerable:!0})},Un=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Fn(e))!zn.call(t,a)&&a!==n&&nt(t,a,{get:()=>e[a],enumerable:!(r=$n(e,a))||r.enumerable});return t};var Kn=t=>Un(nt({},"__esModule",{value:!0}),t);var wa={};zt(wa,{default:()=>xa,init:()=>jn});var Ut="0.12.0";var rt="consent_state",Kt="consent_timestamp";function at(t){return{ad_storage:t,ad_user_data:t,ad_personalization:t,analytics_storage:t}}function B(){if(typeof window>"u")return"pending";let t=window.localStorage.getItem(rt);return t==="granted"||t==="denied"?t:"pending"}function me(t){typeof window>"u"||(window.localStorage.setItem(rt,t),window.localStorage.setItem(Kt,new Date().toISOString()),typeof window.gtag=="function"&&window.gtag("consent","update",at(t)))}function Ve(){let t=B();return(t==="granted"||t==="denied")&&me(t),t}var Ht="https://www.googletagmanager.com/gtag/js",it="data-aranova-tracking";function Gn(t){return`aranova-${t}`}var Zn=/^[A-Z]{1,3}-[A-Za-z0-9_-]+$/;function st(t){return Zn.test(t)}function je(){return window.dataLayer=window.dataLayer||[],typeof window.gtag=="function"||(window.gtag=(...t)=>{window.dataLayer?.push(t)}),window.gtag}function ot(){je()("consent","default",{ad_storage:"denied",ad_user_data:"denied",ad_personalization:"denied",analytics_storage:"denied",wait_for_update:500})}function ct(t){if(typeof document>"u")return;let e=Gn("gtag-loader");if(document.querySelector(`script[${it}="${e}"]`))return;let r=document.createElement("script");r.async=!0,r.src=`${Ht}?id=${encodeURIComponent(t)}`,r.setAttribute(it,e),document.head.appendChild(r)}function Gt(t){let e=je();e("js",new Date),e("config",t)}function dt(t){typeof window>"u"||typeof document>"u"||st(t)&&(ot(),ct(t),Gt(t),Ve())}function ut(t){if(typeof window>"u"||typeof document>"u")return;let e=Object.values(t).filter(st);if(e.length===0)return;ot(),ct(e[0]);let n=je();n("js",new Date);for(let r of e)n("config",r);Ve()}var lt=["gclid","fbclid","utm_source","utm_medium","utm_campaign","utm_term","utm_content"];function De(){return{gclid:null,fbclid:null,utm_source:null,utm_medium:null,utm_campaign:null,utm_term:null,utm_content:null}}function ft(t){return typeof t=="string"&&t.length>0?t:null}function ge(t){return lt.reduce((e,n)=>(e[n]=ft(t(n)),e),De())}function Zt(t){return lt.reduce((e,n)=>{let r=t.get(n);return typeof r=="string"&&r.trim().length>0&&(e[n]=r),e},{})}function he(t){if(typeof document>"u")return null;let n=(document.cookie?document.cookie.split("; "):[]).find(a=>a.startsWith(`${t}=`));if(!n)return null;let[,r=""]=n.split("=");return ft(decodeURIComponent(r))}function Bt(t,e,n=7776e3){if(typeof document>"u")return;let r=encodeURIComponent(e);document.cookie=`${t}=${r}; Max-Age=${n}; Path=/; SameSite=Lax`}function qt(t,e=7776e3){let n=Zt(t);return Object.entries(n).forEach(([r,a])=>{Bt(r,a,e)}),n}function ye(t=typeof window>"u"?"":window.location.href,e=7776e3){let n=typeof window>"u"?new URL(t||"https://example.invalid"):new URL(t,window.location.origin);return qt(n.searchParams,e),ge(he)}var pt="aranova_tracking_visitor",Le="aranova_tracking_session";function $e(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`${Date.now().toString(16)}-${Math.random().toString(16).slice(2)}-${Math.random().toString(16).slice(2)}`}function Yt(t){try{return window.localStorage.getItem(t)}catch{return null}}function mt(t,e){try{window.localStorage.setItem(t,e)}catch{}}function gt(){if(typeof window>"u")return $e();let t=Yt(pt);if(t&&t.length>0)return t;let e=$e();return mt(pt,e),e}function _e(t=Date.now()){if(typeof window>"u")return{id:$e(),isNew:!0};let e=Yt(Le);if(e)try{let r=JSON.parse(e);if(typeof r.id=="string"&&typeof r.last_event_at=="number"&&t-r.last_event_at<=18e5){let a={id:r.id,last_event_at:t};return mt(Le,JSON.stringify(a)),{id:r.id,isNew:!1}}}catch{}let n={id:$e(),last_event_at:t};return mt(Le,JSON.stringify(n)),{id:n.id,isNew:!0}}var d={};zt(d,{BRAND:()=>_r,DIRTY:()=>Q,EMPTY_PATH:()=>Wn,INVALID:()=>h,NEVER:()=>na,OK:()=>R,ParseStatus:()=>E,Schema:()=>k,ZodAny:()=>W,ZodArray:()=>Z,ZodBigInt:()=>ee,ZodBoolean:()=>te,ZodBranded:()=>Ae,ZodCatch:()=>fe,ZodDate:()=>ne,ZodDefault:()=>le,ZodDiscriminatedUnion:()=>Ue,ZodEffects:()=>V,ZodEnum:()=>de,ZodError:()=>P,ZodFirstPartyTypeKind:()=>y,ZodFunction:()=>He,ZodIntersection:()=>se,ZodIssueCode:()=>l,ZodLazy:()=>oe,ZodLiteral:()=>ce,ZodMap:()=>Ce,ZodNaN:()=>be,ZodNativeEnum:()=>ue,ZodNever:()=>D,ZodNull:()=>ae,ZodNullable:()=>z,ZodNumber:()=>X,ZodObject:()=>A,ZodOptional:()=>N,ZodParsedType:()=>m,ZodPipeline:()=>Ie,ZodPromise:()=>J,ZodReadonly:()=>pe,ZodRecord:()=>Ke,ZodSchema:()=>k,ZodSet:()=>Te,ZodString:()=>Y,ZodSymbol:()=>xe,ZodTransformer:()=>V,ZodTuple:()=>F,ZodType:()=>k,ZodUndefined:()=>re,ZodUnion:()=>ie,ZodUnknown:()=>G,ZodVoid:()=>we,addIssueToContext:()=>p,any:()=>Er,array:()=>Ir,bigint:()=>xr,boolean:()=>on,coerce:()=>ta,custom:()=>rn,date:()=>wr,datetimeRegex:()=>tn,defaultErrorMap:()=>K,discriminatedUnion:()=>Vr,effect:()=>Br,enum:()=>Hr,function:()=>zr,getErrorMap:()=>ve,getParsedType:()=>$,instanceof:()=>Sr,intersection:()=>jr,isAborted:()=>Fe,isAsync:()=>Se,isDirty:()=>ze,isValid:()=>q,late:()=>vr,lazy:()=>Ur,literal:()=>Kr,makeIssue:()=>Pe,map:()=>$r,nan:()=>kr,nativeEnum:()=>Gr,never:()=>Pr,null:()=>br,nullable:()=>Yr,number:()=>sn,object:()=>Or,objectUtil:()=>ht,oboolean:()=>ea,onumber:()=>Xr,optional:()=>qr,ostring:()=>Qr,pipeline:()=>Jr,preprocess:()=>Wr,promise:()=>Zr,quotelessJson:()=>Bn,record:()=>Lr,set:()=>Fr,setErrorMap:()=>Yn,strictObject:()=>Nr,string:()=>an,symbol:()=>Cr,transformer:()=>Br,tuple:()=>Dr,undefined:()=>Tr,union:()=>Mr,unknown:()=>Rr,util:()=>x,void:()=>Ar});var x;(function(t){t.assertEqual=a=>{};function e(a){}t.assertIs=e;function n(a){throw new Error}t.assertNever=n,t.arrayToEnum=a=>{let i={};for(let s of a)i[s]=s;return i},t.getValidEnumValues=a=>{let i=t.objectKeys(a).filter(o=>typeof a[a[o]]!="number"),s={};for(let o of i)s[o]=a[o];return t.objectValues(s)},t.objectValues=a=>t.objectKeys(a).map(function(i){return a[i]}),t.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let i=[];for(let s in a)Object.prototype.hasOwnProperty.call(a,s)&&i.push(s);return i},t.find=(a,i)=>{for(let s of a)if(i(s))return s},t.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function r(a,i=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(i)}t.joinValues=r,t.jsonStringifyReplacer=(a,i)=>typeof i=="bigint"?i.toString():i})(x||(x={}));var ht;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(ht||(ht={}));var m=x.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),$=t=>{switch(typeof t){case"undefined":return m.undefined;case"string":return m.string;case"number":return Number.isNaN(t)?m.nan:m.number;case"boolean":return m.boolean;case"function":return m.function;case"bigint":return m.bigint;case"symbol":return m.symbol;case"object":return Array.isArray(t)?m.array:t===null?m.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?m.promise:typeof Map<"u"&&t instanceof Map?m.map:typeof Set<"u"&&t instanceof Set?m.set:typeof Date<"u"&&t instanceof Date?m.date:m.object;default:return m.unknown}};var l=x.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Bn=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),P=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(i){return i.message},r={_errors:[]},a=i=>{for(let s of i.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)r._errors.push(n(s));else{let o=r,u=0;for(;u<s.path.length;){let c=s.path[u];u===s.path.length-1?(o[c]=o[c]||{_errors:[]},o[c]._errors.push(n(s))):o[c]=o[c]||{_errors:[]},o=o[c],u++}}};return a(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,x.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let a of this.issues)if(a.path.length>0){let i=a.path[0];n[i]=n[i]||[],n[i].push(e(a))}else r.push(e(a));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};P.create=t=>new P(t);var qn=(t,e)=>{let n;switch(t.code){case l.invalid_type:t.received===m.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case l.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,x.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:n=`Unrecognized key(s) in object: ${x.joinValues(t.keys,", ")}`;break;case l.invalid_union:n="Invalid input";break;case l.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${x.joinValues(t.options)}`;break;case l.invalid_enum_value:n=`Invalid enum value. Expected ${x.joinValues(t.options)}, received '${t.received}'`;break;case l.invalid_arguments:n="Invalid function arguments";break;case l.invalid_return_type:n="Invalid function return type";break;case l.invalid_date:n="Invalid date";break;case l.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:x.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case l.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case l.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case l.custom:n="Invalid input";break;case l.invalid_intersection_types:n="Intersection results could not be merged";break;case l.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case l.not_finite:n="Number must be finite";break;default:n=e.defaultError,x.assertNever(t)}return{message:n}},K=qn;var Wt=K;function Yn(t){Wt=t}function ve(){return Wt}var Pe=t=>{let{data:e,path:n,errorMaps:r,issueData:a}=t,i=[...n,...a.path||[]],s={...a,path:i};if(a.message!==void 0)return{...a,path:i,message:a.message};let o="",u=r.filter(c=>!!c).slice().reverse();for(let c of u)o=c(s,{data:e,defaultError:o}).message;return{...a,path:i,message:o}},Wn=[];function p(t,e){let n=ve(),r=Pe({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===K?void 0:K].filter(a=>!!a)});t.common.issues.push(r)}var E=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let a of n){if(a.status==="aborted")return h;a.status==="dirty"&&e.dirty(),r.push(a.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let a of n){let i=await a.key,s=await a.value;r.push({key:i,value:s})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let a of n){let{key:i,value:s}=a;if(i.status==="aborted"||s.status==="aborted")return h;i.status==="dirty"&&e.dirty(),s.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(r[i.value]=s.value)}return{status:e.value,value:r}}},h=Object.freeze({status:"aborted"}),Q=t=>({status:"dirty",value:t}),R=t=>({status:"valid",value:t}),Fe=t=>t.status==="aborted",ze=t=>t.status==="dirty",q=t=>t.status==="valid",Se=t=>typeof Promise<"u"&&t instanceof Promise;var g;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(g||(g={}));var M=class{constructor(e,n,r,a){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Jt=(t,e)=>{if(q(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new P(t.common.issues);return this._error=n,this._error}}};function v(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:a}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(s,o)=>{let{message:u}=t;return s.code==="invalid_enum_value"?{message:u??o.defaultError}:typeof o.data>"u"?{message:u??r??o.defaultError}:s.code!=="invalid_type"?{message:o.defaultError}:{message:u??n??o.defaultError}},description:a}}var k=class{get description(){return this._def.description}_getType(e){return $(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:$(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new E,ctx:{common:e.parent.common,data:e.data,parsedType:$(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(Se(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)},a=this._parseSync({data:e,path:r.path,parent:r});return Jt(r,a)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return q(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>q(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)},a=this._parse({data:e,path:r.path,parent:r}),i=await(Se(a)?a:Promise.resolve(a));return Jt(r,i)}refine(e,n){let r=a=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(a):n;return this._refinement((a,i)=>{let s=e(a),o=()=>i.addIssue({code:l.custom,...r(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(u=>u?!0:(o(),!1)):s?!0:(o(),!1)})}refinement(e,n){return this._refinement((r,a)=>e(r)?!0:(a.addIssue(typeof n=="function"?n(r,a):n),!1))}_refinement(e){return new V({schema:this,typeName:y.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return N.create(this,this._def)}nullable(){return z.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Z.create(this)}promise(){return J.create(this,this._def)}or(e){return ie.create([this,e],this._def)}and(e){return se.create(this,e,this._def)}transform(e){return new V({...v(this._def),schema:this,typeName:y.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new le({...v(this._def),innerType:this,defaultValue:n,typeName:y.ZodDefault})}brand(){return new Ae({typeName:y.ZodBranded,type:this,...v(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new fe({...v(this._def),innerType:this,catchValue:n,typeName:y.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Ie.create(this,e)}readonly(){return pe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Jn=/^c[^\s-]{8,}$/i,Qn=/^[0-9a-z]+$/,Xn=/^[0-9A-HJKMNP-TV-Z]{26}$/i,er=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,tr=/^[a-z0-9_-]{21}$/i,nr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,rr=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,ar=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,ir="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",yt,sr=/^(?:(?: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])$/,or=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,cr=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,dr=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ur=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,lr=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Xt="((\\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])))",fr=new RegExp(`^${Xt}$`);function en(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function pr(t){return new RegExp(`^${en(t)}$`)}function tn(t){let e=`${Xt}T${en(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function mr(t,e){return!!((e==="v4"||!e)&&sr.test(t)||(e==="v6"||!e)&&cr.test(t))}function gr(t,e){if(!nr.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),a=JSON.parse(atob(r));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function hr(t,e){return!!((e==="v4"||!e)&&or.test(t)||(e==="v6"||!e)&&dr.test(t))}var Y=class t extends k{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==m.string){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.string,received:i.parsedType}),h}let r=new E,a;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(a=this._getOrReturnCtx(e,a),p(a,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")e.data.length>i.value&&(a=this._getOrReturnCtx(e,a),p(a,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){let s=e.data.length>i.value,o=e.data.length<i.value;(s||o)&&(a=this._getOrReturnCtx(e,a),s?p(a,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&p(a,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")ar.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"email",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")yt||(yt=new RegExp(ir,"u")),yt.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"emoji",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")er.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"uuid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="nanoid")tr.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"nanoid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")Jn.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"cuid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")Qn.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"cuid2",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")Xn.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"ulid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),p(a,{validation:"url",code:l.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"regex",code:l.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?tn(i).test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?fr.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?pr(i).test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{code:l.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?rr.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"duration",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?mr(e.data,i.version)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"ip",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="jwt"?gr(e.data,i.alg)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"jwt",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="cidr"?hr(e.data,i.version)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"cidr",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?ur.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"base64",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="base64url"?lr.test(e.data)||(a=this._getOrReturnCtx(e,a),p(a,{validation:"base64url",code:l.invalid_string,message:i.message}),r.dirty()):x.assertNever(i);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(a=>e.test(a),{validation:n,code:l.invalid_string,...g.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...g.errToObj(e)})}url(e){return this._addCheck({kind:"url",...g.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...g.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...g.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...g.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...g.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...g.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...g.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...g.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...g.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...g.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...g.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...g.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...g.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...g.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...g.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...g.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...g.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...g.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...g.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...g.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...g.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...g.errToObj(n)})}nonempty(e){return this.min(1,g.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Y.create=t=>new Y({checks:[],typeName:y.ZodString,coerce:t?.coerce??!1,...v(t)});function yr(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,a=n>r?n:r,i=Number.parseInt(t.toFixed(a).replace(".","")),s=Number.parseInt(e.toFixed(a).replace(".",""));return i%s/10**a}var X=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==m.number){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.number,received:i.parsedType}),h}let r,a=new E;for(let i of this._def.checks)i.kind==="int"?x.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),p(r,{code:l.invalid_type,expected:"integer",received:"float",message:i.message}),a.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),a.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),a.dirty()):i.kind==="multipleOf"?yr(e.data,i.value)!==0&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),p(r,{code:l.not_finite,message:i.message}),a.dirty()):x.assertNever(i);return{status:a.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,g.toString(n))}gt(e,n){return this.setLimit("min",e,!1,g.toString(n))}lte(e,n){return this.setLimit("max",e,!0,g.toString(n))}lt(e,n){return this.setLimit("max",e,!1,g.toString(n))}setLimit(e,n,r,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:g.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:g.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:g.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:g.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:g.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:g.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&x.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};X.create=t=>new X({checks:[],typeName:y.ZodNumber,coerce:t?.coerce||!1,...v(t)});var ee=class t extends k{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==m.bigint)return this._getInvalidInput(e);let r,a=new E;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),a.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),a.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),p(r,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):x.assertNever(i);return{status:a.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.bigint,received:n.parsedType}),h}gte(e,n){return this.setLimit("min",e,!0,g.toString(n))}gt(e,n){return this.setLimit("min",e,!1,g.toString(n))}lte(e,n){return this.setLimit("max",e,!0,g.toString(n))}lt(e,n){return this.setLimit("max",e,!1,g.toString(n))}setLimit(e,n,r,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:g.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:g.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};ee.create=t=>new ee({checks:[],typeName:y.ZodBigInt,coerce:t?.coerce??!1,...v(t)});var te=class extends k{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==m.boolean){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.boolean,received:r.parsedType}),h}return R(e.data)}};te.create=t=>new te({typeName:y.ZodBoolean,coerce:t?.coerce||!1,...v(t)});var ne=class t extends k{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==m.date){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_type,expected:m.date,received:i.parsedType}),h}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return p(i,{code:l.invalid_date}),h}let r=new E,a;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(a=this._getOrReturnCtx(e,a),p(a,{code:l.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(a=this._getOrReturnCtx(e,a),p(a,{code:l.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):x.assertNever(i);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:g.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:g.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};ne.create=t=>new ne({checks:[],coerce:t?.coerce||!1,typeName:y.ZodDate,...v(t)});var xe=class extends k{_parse(e){if(this._getType(e)!==m.symbol){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.symbol,received:r.parsedType}),h}return R(e.data)}};xe.create=t=>new xe({typeName:y.ZodSymbol,...v(t)});var re=class extends k{_parse(e){if(this._getType(e)!==m.undefined){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.undefined,received:r.parsedType}),h}return R(e.data)}};re.create=t=>new re({typeName:y.ZodUndefined,...v(t)});var ae=class extends k{_parse(e){if(this._getType(e)!==m.null){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.null,received:r.parsedType}),h}return R(e.data)}};ae.create=t=>new ae({typeName:y.ZodNull,...v(t)});var W=class extends k{constructor(){super(...arguments),this._any=!0}_parse(e){return R(e.data)}};W.create=t=>new W({typeName:y.ZodAny,...v(t)});var G=class extends k{constructor(){super(...arguments),this._unknown=!0}_parse(e){return R(e.data)}};G.create=t=>new G({typeName:y.ZodUnknown,...v(t)});var D=class extends k{_parse(e){let n=this._getOrReturnCtx(e);return p(n,{code:l.invalid_type,expected:m.never,received:n.parsedType}),h}};D.create=t=>new D({typeName:y.ZodNever,...v(t)});var we=class extends k{_parse(e){if(this._getType(e)!==m.undefined){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.void,received:r.parsedType}),h}return R(e.data)}};we.create=t=>new we({typeName:y.ZodVoid,...v(t)});var Z=class t extends k{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),a=this._def;if(n.parsedType!==m.array)return p(n,{code:l.invalid_type,expected:m.array,received:n.parsedType}),h;if(a.exactLength!==null){let s=n.data.length>a.exactLength.value,o=n.data.length<a.exactLength.value;(s||o)&&(p(n,{code:s?l.too_big:l.too_small,minimum:o?a.exactLength.value:void 0,maximum:s?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),r.dirty())}if(a.minLength!==null&&n.data.length<a.minLength.value&&(p(n,{code:l.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),r.dirty()),a.maxLength!==null&&n.data.length>a.maxLength.value&&(p(n,{code:l.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((s,o)=>a.type._parseAsync(new M(n,s,n.path,o)))).then(s=>E.mergeArray(r,s));let i=[...n.data].map((s,o)=>a.type._parseSync(new M(n,s,n.path,o)));return E.mergeArray(r,i)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:g.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:g.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:g.toString(n)}})}nonempty(e){return this.min(1,e)}};Z.create=(t,e)=>new Z({type:t,minLength:null,maxLength:null,exactLength:null,typeName:y.ZodArray,...v(e)});function ke(t){if(t instanceof A){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=N.create(ke(r))}return new A({...t._def,shape:()=>e})}else return t instanceof Z?new Z({...t._def,type:ke(t.element)}):t instanceof N?N.create(ke(t.unwrap())):t instanceof z?z.create(ke(t.unwrap())):t instanceof F?F.create(t.items.map(e=>ke(e))):t}var A=class t extends k{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=x.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==m.object){let c=this._getOrReturnCtx(e);return p(c,{code:l.invalid_type,expected:m.object,received:c.parsedType}),h}let{status:r,ctx:a}=this._processInputParams(e),{shape:i,keys:s}=this._getCached(),o=[];if(!(this._def.catchall instanceof D&&this._def.unknownKeys==="strip"))for(let c in a.data)s.includes(c)||o.push(c);let u=[];for(let c of s){let f=i[c],_=a.data[c];u.push({key:{status:"valid",value:c},value:f._parse(new M(a,_,a.path,c)),alwaysSet:c in a.data})}if(this._def.catchall instanceof D){let c=this._def.unknownKeys;if(c==="passthrough")for(let f of o)u.push({key:{status:"valid",value:f},value:{status:"valid",value:a.data[f]}});else if(c==="strict")o.length>0&&(p(a,{code:l.unrecognized_keys,keys:o}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let f of o){let _=a.data[f];u.push({key:{status:"valid",value:f},value:c._parse(new M(a,_,a.path,f)),alwaysSet:f in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let c=[];for(let f of u){let _=await f.key,w=await f.value;c.push({key:_,value:w,alwaysSet:f.alwaysSet})}return c}).then(c=>E.mergeObjectSync(r,c)):E.mergeObjectSync(r,u)}get shape(){return this._def.shape()}strict(e){return g.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{let a=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:g.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:y.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of x.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of x.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return ke(this)}partial(e){let n={};for(let r of x.objectKeys(this.shape)){let a=this.shape[r];e&&!e[r]?n[r]=a:n[r]=a.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of x.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof N;)i=i._def.innerType;n[r]=i}return new t({...this._def,shape:()=>n})}keyof(){return nn(x.objectKeys(this.shape))}};A.create=(t,e)=>new A({shape:()=>t,unknownKeys:"strip",catchall:D.create(),typeName:y.ZodObject,...v(e)});A.strictCreate=(t,e)=>new A({shape:()=>t,unknownKeys:"strict",catchall:D.create(),typeName:y.ZodObject,...v(e)});A.lazycreate=(t,e)=>new A({shape:t,unknownKeys:"strip",catchall:D.create(),typeName:y.ZodObject,...v(e)});var ie=class extends k{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function a(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return n.common.issues.push(...o.ctx.common.issues),o.result;let s=i.map(o=>new P(o.ctx.common.issues));return p(n,{code:l.invalid_union,unionErrors:s}),h}if(n.common.async)return Promise.all(r.map(async i=>{let s={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:s}),ctx:s}})).then(a);{let i,s=[];for(let u of r){let c={...n,common:{...n.common,issues:[]},parent:null},f=u._parseSync({data:n.data,path:n.path,parent:c});if(f.status==="valid")return f;f.status==="dirty"&&!i&&(i={result:f,ctx:c}),c.common.issues.length&&s.push(c.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;let o=s.map(u=>new P(u));return p(n,{code:l.invalid_union,unionErrors:o}),h}}get options(){return this._def.options}};ie.create=(t,e)=>new ie({options:t,typeName:y.ZodUnion,...v(e)});var H=t=>t instanceof oe?H(t.schema):t instanceof V?H(t.innerType()):t instanceof ce?[t.value]:t instanceof de?t.options:t instanceof ue?x.objectValues(t.enum):t instanceof le?H(t._def.innerType):t instanceof re?[void 0]:t instanceof ae?[null]:t instanceof N?[void 0,...H(t.unwrap())]:t instanceof z?[null,...H(t.unwrap())]:t instanceof Ae||t instanceof pe?H(t.unwrap()):t instanceof fe?H(t._def.innerType):[],Ue=class t extends k{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==m.object)return p(n,{code:l.invalid_type,expected:m.object,received:n.parsedType}),h;let r=this.discriminator,a=n.data[r],i=this.optionsMap.get(a);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(p(n,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),h)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let a=new Map;for(let i of n){let s=H(i.shape[e]);if(!s.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of s){if(a.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);a.set(o,i)}}return new t({typeName:y.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:a,...v(r)})}};function _t(t,e){let n=$(t),r=$(e);if(t===e)return{valid:!0,data:t};if(n===m.object&&r===m.object){let a=x.objectKeys(e),i=x.objectKeys(t).filter(o=>a.indexOf(o)!==-1),s={...t,...e};for(let o of i){let u=_t(t[o],e[o]);if(!u.valid)return{valid:!1};s[o]=u.data}return{valid:!0,data:s}}else if(n===m.array&&r===m.array){if(t.length!==e.length)return{valid:!1};let a=[];for(let i=0;i<t.length;i++){let s=t[i],o=e[i],u=_t(s,o);if(!u.valid)return{valid:!1};a.push(u.data)}return{valid:!0,data:a}}else return n===m.date&&r===m.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var se=class extends k{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),a=(i,s)=>{if(Fe(i)||Fe(s))return h;let o=_t(i.value,s.value);return o.valid?((ze(i)||ze(s))&&n.dirty(),{status:n.value,value:o.data}):(p(r,{code:l.invalid_intersection_types}),h)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,s])=>a(i,s)):a(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};se.create=(t,e,n)=>new se({left:t,right:e,typeName:y.ZodIntersection,...v(n)});var F=class t extends k{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==m.array)return p(r,{code:l.invalid_type,expected:m.array,received:r.parsedType}),h;if(r.data.length<this._def.items.length)return p(r,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),h;!this._def.rest&&r.data.length>this._def.items.length&&(p(r,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let i=[...r.data].map((s,o)=>{let u=this._def.items[o]||this._def.rest;return u?u._parse(new M(r,s,r.path,o)):null}).filter(s=>!!s);return r.common.async?Promise.all(i).then(s=>E.mergeArray(n,s)):E.mergeArray(n,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};F.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new F({items:t,typeName:y.ZodTuple,rest:null,...v(e)})};var Ke=class t extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==m.object)return p(r,{code:l.invalid_type,expected:m.object,received:r.parsedType}),h;let a=[],i=this._def.keyType,s=this._def.valueType;for(let o in r.data)a.push({key:i._parse(new M(r,o,r.path,o)),value:s._parse(new M(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?E.mergeObjectAsync(n,a):E.mergeObjectSync(n,a)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof k?new t({keyType:e,valueType:n,typeName:y.ZodRecord,...v(r)}):new t({keyType:Y.create(),valueType:e,typeName:y.ZodRecord,...v(n)})}},Ce=class extends k{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==m.map)return p(r,{code:l.invalid_type,expected:m.map,received:r.parsedType}),h;let a=this._def.keyType,i=this._def.valueType,s=[...r.data.entries()].map(([o,u],c)=>({key:a._parse(new M(r,o,r.path,[c,"key"])),value:i._parse(new M(r,u,r.path,[c,"value"]))}));if(r.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let u of s){let c=await u.key,f=await u.value;if(c.status==="aborted"||f.status==="aborted")return h;(c.status==="dirty"||f.status==="dirty")&&n.dirty(),o.set(c.value,f.value)}return{status:n.value,value:o}})}else{let o=new Map;for(let u of s){let c=u.key,f=u.value;if(c.status==="aborted"||f.status==="aborted")return h;(c.status==="dirty"||f.status==="dirty")&&n.dirty(),o.set(c.value,f.value)}return{status:n.value,value:o}}}};Ce.create=(t,e,n)=>new Ce({valueType:e,keyType:t,typeName:y.ZodMap,...v(n)});var Te=class t extends k{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==m.set)return p(r,{code:l.invalid_type,expected:m.set,received:r.parsedType}),h;let a=this._def;a.minSize!==null&&r.data.size<a.minSize.value&&(p(r,{code:l.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),n.dirty()),a.maxSize!==null&&r.data.size>a.maxSize.value&&(p(r,{code:l.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),n.dirty());let i=this._def.valueType;function s(u){let c=new Set;for(let f of u){if(f.status==="aborted")return h;f.status==="dirty"&&n.dirty(),c.add(f.value)}return{status:n.value,value:c}}let o=[...r.data.values()].map((u,c)=>i._parse(new M(r,u,r.path,c)));return r.common.async?Promise.all(o).then(u=>s(u)):s(o)}min(e,n){return new t({...this._def,minSize:{value:e,message:g.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:g.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};Te.create=(t,e)=>new Te({valueType:t,minSize:null,maxSize:null,typeName:y.ZodSet,...v(e)});var He=class t extends k{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==m.function)return p(n,{code:l.invalid_type,expected:m.function,received:n.parsedType}),h;function r(o,u){return Pe({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ve(),K].filter(c=>!!c),issueData:{code:l.invalid_arguments,argumentsError:u}})}function a(o,u){return Pe({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,ve(),K].filter(c=>!!c),issueData:{code:l.invalid_return_type,returnTypeError:u}})}let i={errorMap:n.common.contextualErrorMap},s=n.data;if(this._def.returns instanceof J){let o=this;return R(async function(...u){let c=new P([]),f=await o._def.args.parseAsync(u,i).catch(b=>{throw c.addIssue(r(u,b)),c}),_=await Reflect.apply(s,this,f);return await o._def.returns._def.type.parseAsync(_,i).catch(b=>{throw c.addIssue(a(_,b)),c})})}else{let o=this;return R(function(...u){let c=o._def.args.safeParse(u,i);if(!c.success)throw new P([r(u,c.error)]);let f=Reflect.apply(s,this,c.data),_=o._def.returns.safeParse(f,i);if(!_.success)throw new P([a(f,_.error)]);return _.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:F.create(e).rest(G.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||F.create([]).rest(G.create()),returns:n||G.create(),typeName:y.ZodFunction,...v(r)})}},oe=class extends k{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};oe.create=(t,e)=>new oe({getter:t,typeName:y.ZodLazy,...v(e)});var ce=class extends k{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return p(n,{received:n.data,code:l.invalid_literal,expected:this._def.value}),h}return{status:"valid",value:e.data}}get value(){return this._def.value}};ce.create=(t,e)=>new ce({value:t,typeName:y.ZodLiteral,...v(e)});function nn(t,e){return new de({values:t,typeName:y.ZodEnum,...v(e)})}var de=class t extends k{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return p(n,{expected:x.joinValues(r),received:n.parsedType,code:l.invalid_type}),h}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return p(n,{received:n.data,code:l.invalid_enum_value,options:r}),h}return R(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};de.create=nn;var ue=class extends k{_parse(e){let n=x.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==m.string&&r.parsedType!==m.number){let a=x.objectValues(n);return p(r,{expected:x.joinValues(a),received:r.parsedType,code:l.invalid_type}),h}if(this._cache||(this._cache=new Set(x.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=x.objectValues(n);return p(r,{received:r.data,code:l.invalid_enum_value,options:a}),h}return R(e.data)}get enum(){return this._def.values}};ue.create=(t,e)=>new ue({values:t,typeName:y.ZodNativeEnum,...v(e)});var J=class extends k{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==m.promise&&n.common.async===!1)return p(n,{code:l.invalid_type,expected:m.promise,received:n.parsedType}),h;let r=n.parsedType===m.promise?n.data:Promise.resolve(n.data);return R(r.then(a=>this._def.type.parseAsync(a,{path:n.path,errorMap:n.common.contextualErrorMap})))}};J.create=(t,e)=>new J({type:t,typeName:y.ZodPromise,...v(e)});var V=class extends k{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===y.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),a=this._def.effect||null,i={addIssue:s=>{p(r,s),s.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),a.type==="preprocess"){let s=a.transform(r.data,i);if(r.common.async)return Promise.resolve(s).then(async o=>{if(n.value==="aborted")return h;let u=await this._def.schema._parseAsync({data:o,path:r.path,parent:r});return u.status==="aborted"?h:u.status==="dirty"?Q(u.value):n.value==="dirty"?Q(u.value):u});{if(n.value==="aborted")return h;let o=this._def.schema._parseSync({data:s,path:r.path,parent:r});return o.status==="aborted"?h:o.status==="dirty"?Q(o.value):n.value==="dirty"?Q(o.value):o}}if(a.type==="refinement"){let s=o=>{let u=a.refinement(o,i);if(r.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(r.common.async===!1){let o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?h:(o.status==="dirty"&&n.dirty(),s(o.value),{status:n.value,value:o.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>o.status==="aborted"?h:(o.status==="dirty"&&n.dirty(),s(o.value).then(()=>({status:n.value,value:o.value}))))}if(a.type==="transform")if(r.common.async===!1){let s=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!q(s))return h;let o=a.transform(s.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:o}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(s=>q(s)?Promise.resolve(a.transform(s.value,i)).then(o=>({status:n.value,value:o})):h);x.assertNever(a)}};V.create=(t,e,n)=>new V({schema:t,typeName:y.ZodEffects,effect:e,...v(n)});V.createWithPreprocess=(t,e,n)=>new V({schema:e,effect:{type:"preprocess",transform:t},typeName:y.ZodEffects,...v(n)});var N=class extends k{_parse(e){return this._getType(e)===m.undefined?R(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};N.create=(t,e)=>new N({innerType:t,typeName:y.ZodOptional,...v(e)});var z=class extends k{_parse(e){return this._getType(e)===m.null?R(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};z.create=(t,e)=>new z({innerType:t,typeName:y.ZodNullable,...v(e)});var le=class extends k{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===m.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};le.create=(t,e)=>new le({innerType:t,typeName:y.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...v(e)});var fe=class extends k{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},a=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return Se(a)?a.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new P(r.common.issues)},input:r.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new P(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};fe.create=(t,e)=>new fe({innerType:t,typeName:y.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...v(e)});var be=class extends k{_parse(e){if(this._getType(e)!==m.nan){let r=this._getOrReturnCtx(e);return p(r,{code:l.invalid_type,expected:m.nan,received:r.parsedType}),h}return{status:"valid",value:e.data}}};be.create=t=>new be({typeName:y.ZodNaN,...v(t)});var _r=Symbol("zod_brand"),Ae=class extends k{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Ie=class t extends k{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?h:i.status==="dirty"?(n.dirty(),Q(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{let a=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?h:a.status==="dirty"?(n.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:y.ZodPipeline})}},pe=class extends k{_parse(e){let n=this._def.innerType._parse(e),r=a=>(q(a)&&(a.value=Object.freeze(a.value)),a);return Se(n)?n.then(a=>r(a)):r(n)}unwrap(){return this._def.innerType}};pe.create=(t,e)=>new pe({innerType:t,typeName:y.ZodReadonly,...v(e)});function Qt(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function rn(t,e={},n){return t?W.create().superRefine((r,a)=>{let i=t(r);if(i instanceof Promise)return i.then(s=>{if(!s){let o=Qt(e,r),u=o.fatal??n??!0;a.addIssue({code:"custom",...o,fatal:u})}});if(!i){let s=Qt(e,r),o=s.fatal??n??!0;a.addIssue({code:"custom",...s,fatal:o})}}):W.create()}var vr={object:A.lazycreate},y;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(y||(y={}));var Sr=(t,e={message:`Input not instance of ${t.name}`})=>rn(n=>n instanceof t,e),an=Y.create,sn=X.create,kr=be.create,xr=ee.create,on=te.create,wr=ne.create,Cr=xe.create,Tr=re.create,br=ae.create,Er=W.create,Rr=G.create,Pr=D.create,Ar=we.create,Ir=Z.create,Or=A.create,Nr=A.strictCreate,Mr=ie.create,Vr=Ue.create,jr=se.create,Dr=F.create,Lr=Ke.create,$r=Ce.create,Fr=Te.create,zr=He.create,Ur=oe.create,Kr=ce.create,Hr=de.create,Gr=ue.create,Zr=J.create,Br=V.create,qr=N.create,Yr=z.create,Wr=V.createWithPreprocess,Jr=Ie.create,Qr=()=>an().optional(),Xr=()=>sn().optional(),ea=()=>on().optional(),ta={string:(t=>Y.create({...t,coerce:!0})),number:(t=>X.create({...t,coerce:!0})),boolean:(t=>te.create({...t,coerce:!0})),bigint:(t=>ee.create({...t,coerce:!0})),date:(t=>ne.create({...t,coerce:!0}))};var na=h;var Ge=d.object({page:d.object({title:d.string().nullable(),path:d.string(),search:d.string(),hash:d.string()}).strict(),referrer:d.string().nullable(),viewport:d.object({w:d.number(),h:d.number()}).strict().nullable().optional()}).strict(),cn=d.object({}).strict();var kt="aranova_tracking_last_fired_url",vt=null,St=!1;function ra(t){try{return typeof window>"u"?null:window.sessionStorage.getItem(t)}catch{return null}}function aa(t,e){try{if(typeof window>"u")return;window.sessionStorage.setItem(t,e)}catch{}}function ia(){if(!St){St=!0;let t=ra(kt);t!==null&&(vt=t)}return vt}function sa(t){vt=t,St=!0,aa(kt,t)}function dn(t){return typeof window>"u"||typeof document>"u"?null:Ge.parse({page:{title:document.title||null,path:window.location.pathname,search:window.location.search,hash:window.location.hash},referrer:t!==void 0?t:document.referrer||null,viewport:{w:window.innerWidth,h:window.innerHeight}})}function Oe(t){if(typeof window>"u")return;let e=window.location.href,n=ia(),r=n!==null&&n!==e?n:null,a=typeof document<"u"&&document.referrer||null,s=dn(r??a);t.trackEvent({eventType:"page_view",pageUrl:e,metadata:s}),e!==n&&sa(e)}function xt(t){if(typeof window>"u")return()=>{};function e(n){n.persisted&&Oe(t)}return window.addEventListener("pageshow",e),()=>{window.removeEventListener("pageshow",e)}}function wt(t,e={}){if(typeof window>"u"||typeof history>"u")return()=>{};let n=window.location.pathname+window.location.search;function r(){let c=window.location.pathname+window.location.search;c!==n&&(n=c,Oe(t))}let a=history.pushState.bind(history),i=history.replaceState.bind(history);function s(...c){a(...c),setTimeout(r,0)}function o(...c){i(...c),setTimeout(r,0)}function u(c){c.persisted&&Oe(t)}return history.pushState=s,history.replaceState=o,window.addEventListener("popstate",r),window.addEventListener("pageshow",u),e.skipInitial||Oe(t),()=>{history.pushState=a,history.replaceState=i,window.removeEventListener("popstate",r),window.removeEventListener("pageshow",u)}}function Ze(t){if(t instanceof RegExp)return t.source;if(Array.isArray(t))return t.map(Ze);if(t!==null&&typeof t=="object"){let e={};for(let[n,r]of Object.entries(t))e[n]=Ze(r);return e}return t}function Ct(t,e,n,r,a=null){let i=r?Object.keys(r.automatic):[],s=r?.manual?Object.keys(r.manual):[],o=null;if(r){let u={};for(let[c,f]of Object.entries(r.automatic)){let _=Ze(f);Object.keys(_).length>0&&(u[c]=_)}if(r.manual)for(let[c,f]of Object.entries(r.manual)){if(f===void 0)continue;let _=Ze(f);Object.keys(_).length>0&&(u[c]=_)}Object.keys(u).length>0&&(o=u)}return{sdk_version:e??"unknown",package_name:n,surface:t,triggers:{automatic:i,manual:s},trigger_config:o,configured_gtag_ids:a}}var ln=2e3,fn=10,Be=50,qe="X-Aranova-Api-Key",Ye="X-Aranova-Sdk-Version",We="X-Aranova-Sdk-Package",Je="X-Aranova-Sdk-Surface",Qe="X-Aranova-Sdk-Environment";function ca(t,e,n,r,a){return{surface:t,sdk_version:e,package_name:n,site_origin:typeof window>"u"?null:window.location.origin,page_title:typeof document>"u"?null:document.title||null,referrer:typeof document>"u"?null:document.referrer||null,environment:r,active_gtag_ids:a}}function da(){if(typeof window>"u")return De();try{ye()}catch{}return ge(he)}function ua(){try{return{state:B()}}catch{return null}}async function un(t,e,n,r,a){if(typeof fetch=="function")try{await fetch(t,{method:"POST",headers:{"Content-Type":"application/json",[qe]:n,[Ye]:r.sdkVersion,[We]:r.packageName,[Je]:r.surface,[Qe]:r.environment},body:e,keepalive:a,credentials:"omit",mode:"cors"})}catch{}}function Tt(t){let e=t.flushIntervalMs??ln,n=Math.min(t.maxQueueSize??fn,Be),r=t.sdkVersion??null,a=t.packageName??null,i=t.environment??"production",s=t.activeGtagIds??null,u=`${t.endpoint.replace(/\/$/,"")}/events`,c={sdkVersion:r??"",packageName:a??"",surface:t.surface,environment:i},f=[],_=null,w=null,b=!1,S=gt(),T=_e(),L=T.id;typeof window<"u"&&(w=window.location.href);function Ee(){let C=Ct(t.surface,r,a,t.triggers??null,s);f.push({event_type:"sdk_heartbeat",page_url:typeof window>"u"?null:window.location.href,metadata:C,occurred_at:new Date().toISOString()})}T.isNew&&Ee();function Ft(){let C=_e();C.isNew&&C.id!==L&&Ee(),L=C.id;let I=da(),Re=ca(t.surface,r,a,i,s);return{session_id:L,visitor_id:S,gclid:I.gclid,fbclid:I.fbclid,utm_source:I.utm_source,utm_medium:I.utm_medium,utm_campaign:I.utm_campaign,utm_term:I.utm_term,utm_content:I.utm_content,first_page:w,consent_state:ua(),context:Re}}function Dn(){_!==null||b||(_=setTimeout(()=>{_=null,tt()},e))}function et(){_!==null&&(clearTimeout(_),_=null)}async function tt(){if(f.length===0)return;let C=f.slice(0,Be);f=f.slice(C.length),et();let I={session:Ft(),events:C},Re=JSON.stringify(I);await un(u,Re,t.apiKey,c,!1)}function Ln(C){if(b||!C||typeof C.eventType!="string"||C.eventType.length===0)return;let I=C.occurredAt instanceof Date?C.occurredAt.toISOString():typeof C.occurredAt=="string"?C.occurredAt:new Date().toISOString();f.push({event_type:C.eventType,page_url:C.pageUrl??(typeof window>"u"?null:window.location.href),metadata:C.metadata??null,occurred_at:I}),f.length>=n?tt():Dn()}function Me(){if(f.length===0)return;let C=f.slice(0,Be);f=f.slice(C.length),et();let I={session:Ft(),events:C},Re=JSON.stringify(I);un(u,Re,t.apiKey,c,!0)}return typeof window<"u"&&(window.addEventListener("pagehide",Me),window.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Me()})),{trackEvent:Ln,flush:tt,getSessionId:()=>L,getVisitorId:()=>S,destroy:()=>{b=!0,f.length>0&&Me(),et(),f=[],typeof window<"u"&&window.removeEventListener("pagehide",Me)}}}var pn=d.object({cta_name:d.string(),page:d.object({path:d.string()}).strict(),section:d.string().nullable().optional(),destination_url:d.string().nullable().optional()}).strict(),mn=d.object({}).strict();var la=d.object({automatic:d.array(d.string()),manual:d.array(d.string())}).strict(),gn=d.object({sdk_version:d.string(),package_name:d.string().nullable(),surface:d.enum(["next","react","script"]),triggers:la,trigger_config:d.record(d.string(),d.record(d.string(),d.unknown())).nullable().optional(),configured_gtag_ids:d.record(d.string(),d.string()).nullable().optional()}).strict(),hn=d.object({}).strict();var yn=d.object({form:d.object({id:d.string(),action:d.string().nullable()}).strict(),page:d.object({path:d.string()}).strict()}).strict(),_n=d.object({selector:d.string().optional()}).strict();var bt=d.lazy(()=>d.union([d.string(),d.number().finite(),d.boolean(),d.null(),d.array(bt),d.record(bt)])),vn=d.object({form:d.object({id:d.string(),action:d.string().nullable(),fields:d.array(d.object({name:d.string(),type:d.string(),label:d.string().nullable(),value:bt}).strict()).optional()}).strict(),page:d.object({path:d.string()}).strict()}).strict(),Sn=d.object({}).strict();var kn=d.object({page_count:d.number().int().min(2),page:d.object({path:d.string()}).strict()}).strict(),xn=d.object({pageThreshold:d.number().int().min(2)}).strict();var wn=d.object({phone_number:d.string(),page:d.object({path:d.string()}).strict(),section:d.string().nullable().optional()}).strict(),Cn=d.object({}).strict();var Tn=d.object({depth_percent:d.number().int().min(1).max(100),page:d.object({path:d.string()}).strict()}).strict(),bn=d.object({thresholds:d.array(d.number().int().min(1).max(100)).min(1)}).strict();var fa=["contact_page","about_page","services_page","booking_page","location_page","pricing_page","faq_page","testimonials_page"],En=d.enum(fa),Rn=d.object({page_name:En,page:d.object({path:d.string()}).strict()}).strict(),Pn=d.object({pages:d.array(d.object({name:En,pathPattern:d.custom(t=>t instanceof RegExp,{message:"pathPattern must be a RegExp"})}).strict()).min(1)}).strict();var An=d.object({duration_ms:d.number().int().nonnegative(),page:d.object({path:d.string()}).strict()}).strict(),In=d.object({thresholdSeconds:d.number().int().positive()}).strict();var Et={page_view:{kind:"automatic",metadataSchema:Ge,configSchema:cn},time_on_site:{kind:"automatic",metadataSchema:An,configSchema:In},specific_page_visit:{kind:"automatic",metadataSchema:Rn,configSchema:Pn},scroll_depth:{kind:"automatic",metadataSchema:Tn,configSchema:bn},multi_page_session:{kind:"automatic",metadataSchema:kn,configSchema:xn},form_start:{kind:"automatic",metadataSchema:yn,configSchema:_n},sdk_heartbeat:{kind:"automatic",metadataSchema:gn,configSchema:hn},form_submit:{kind:"manual",metadataSchema:vn,configSchema:Sn},phone_click:{kind:"manual",metadataSchema:wn,configSchema:Cn},cta_click:{kind:"manual",metadataSchema:pn,configSchema:mn}},Ki=Object.entries(Et).filter(([,t])=>t.kind==="automatic").map(([t])=>t),Hi=Object.entries(Et).filter(([,t])=>t.kind==="manual").map(([t])=>t);function Rt(t){return Et[t]}function Pt(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=e.thresholdSeconds*1e3,r=0,a=document.visibilityState==="visible"?Date.now():null,i=null,s=!1;function o(){s||(s=!0,t.trackEvent({eventType:"time_on_site",metadata:{duration_ms:n,page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}function u(){if(s||a===null)return;let _=n-r;if(_<=0){o();return}i=setTimeout(o,_)}function c(){i!==null&&(clearTimeout(i),i=null)}function f(){s||(document.visibilityState==="hidden"?(a!==null&&(r+=Date.now()-a,a=null),c()):(a=Date.now(),u()))}return document.addEventListener("visibilitychange",f),u(),()=>{c(),document.removeEventListener("visibilitychange",f)}}function At(t,e){if(typeof window>"u"||typeof history>"u")return()=>{};let{pages:n}=e,r=new Set;function a(){let c=window.location.pathname;for(let{name:f,pathPattern:_}of n){if(_.lastIndex=0,!_.test(c))continue;let w=`${f}:${c}`;r.has(w)||(r.add(w),t.trackEvent({eventType:"specific_page_visit",metadata:{page_name:f,page:{path:c}},pageUrl:window.location.href,occurredAt:null}))}}let i=history.pushState.bind(history),s=history.replaceState.bind(history);function o(...c){i(...c),setTimeout(a,0)}function u(...c){s(...c),setTimeout(a,0)}return history.pushState=o,history.replaceState=u,window.addEventListener("popstate",a),a(),()=>{history.pushState=i,history.replaceState=s,window.removeEventListener("popstate",a)}}function It(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=new Set(e.thresholds),r=new Set,a=window.location.pathname,i=null;function s(){let S=document.documentElement,T=window.scrollY||S.scrollTop,L=S.scrollHeight,Ee=S.clientHeight;return L<=Ee?100:Math.round((T+Ee)/L*100)}function o(){let S=s();for(let T of n)S>=T&&!r.has(T)&&(r.add(T),t.trackEvent({eventType:"scroll_depth",metadata:{depth_percent:T,page:{path:a}},pageUrl:window.location.href,occurredAt:null}))}function u(){i===null&&(i=requestAnimationFrame(()=>{i=null,o()}))}function c(){let S=window.location.pathname;S!==a&&(a=S,r=new Set,setTimeout(o,0))}let f=history.pushState.bind(history),_=history.replaceState.bind(history);function w(...S){f(...S),setTimeout(c,0)}function b(...S){_(...S),setTimeout(c,0)}return history.pushState=w,history.replaceState=b,window.addEventListener("popstate",c),window.addEventListener("scroll",u,{passive:!0}),setTimeout(o,0),()=>{i!==null&&cancelAnimationFrame(i),history.pushState=f,history.replaceState=_,window.removeEventListener("popstate",c),window.removeEventListener("scroll",u)}}var Ot="aranova_tracking_mps_paths",On="aranova_tracking_mps_session",Nt="aranova_tracking_mps_fired";function pa(){try{return typeof window<"u"?window.sessionStorage:null}catch{return null}}function Mt(t,e){if(typeof window>"u"||typeof history>"u")return()=>{};let n=pa();if(!n)return()=>{};let{pageThreshold:r}=e,a="";function i(){try{let S=n.getItem(Ot);return S?new Set(JSON.parse(S)):new Set}catch{return new Set}}function s(S){try{n.setItem(Ot,JSON.stringify([...S]))}catch{}}function o(){let S=_e().id;n.getItem(On)!==S&&(n.setItem(On,S),n.removeItem(Ot),n.removeItem(Nt))}function u(){return n.getItem(Nt)==="1"}function c(){let S=window.location.pathname;if(S===a||(a=S,o(),u()))return;let T=i();T.add(S),s(T),T.size>=r&&(n.setItem(Nt,"1"),t.trackEvent({eventType:"multi_page_session",metadata:{page_count:T.size,page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}let f=history.pushState.bind(history),_=history.replaceState.bind(history);function w(...S){f(...S),setTimeout(c,0)}function b(...S){_(...S),setTimeout(c,0)}return history.pushState=w,history.replaceState=b,window.addEventListener("popstate",c),c(),()=>{history.pushState=f,history.replaceState=_,window.removeEventListener("popstate",c)}}function Vt(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=e.selector??"form",r=new Set,a=window.location.pathname;function i(w){if(w.id)return`id:${w.id}`;let b=w.getAttribute("action");return b?`action:${b}`:`index:${Array.from(document.querySelectorAll(n)).indexOf(w)}`}function s(w){let b=w.target;if(!(b instanceof HTMLElement))return;let S=b.closest(n);if(!S||S.tagName!=="FORM")return;let T=i(S);r.has(T)||(r.add(T),t.trackEvent({eventType:"form_start",metadata:{form:{id:S.id||"",action:S.getAttribute("action")??null},page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}function o(){let w=window.location.pathname;w!==a&&(a=w,r=new Set)}let u=history.pushState.bind(history),c=history.replaceState.bind(history);function f(...w){u(...w),setTimeout(o,0)}function _(...w){c(...w),setTimeout(o,0)}return history.pushState=f,history.replaceState=_,window.addEventListener("popstate",o),document.addEventListener("focusin",s),()=>{history.pushState=u,history.replaceState=c,window.removeEventListener("popstate",o),document.removeEventListener("focusin",s)}}var Ne=class extends Error{constructor(e,n){super(e),this.name="AranovaApiError",this.status=n.status,this.code=n.code,this.requestId=n.requestId}};function ma(t){let e={[qe]:t.apiKey};return t.sdkVersion&&(e[Ye]=t.sdkVersion),t.packageName&&(e[We]=t.packageName),t.surface&&(e[Je]=t.surface),t.environment&&(e[Qe]=t.environment),e}function ga(t,e){return`${t.replace(/\/$/,"")}${e}`}async function j(t,e,n,r){let a=ma(t);r!==void 0&&(a["Content-Type"]="application/json");let i=await fetch(ga(t.endpoint,n),{method:e,headers:a,body:r===void 0?void 0:JSON.stringify(r)});if(!i.ok){let s,o;try{let u=await i.json();if(u&&typeof u=="object"){let c=u;typeof c.detail=="string"&&(s=c.detail),typeof c.code=="string"&&(o=c.code)}}catch{}throw new Ne(s??i.statusText??"Request failed",{status:i.status,code:o,requestId:i.headers.get("x-request-id")??void 0})}if(i.status!==204)return await i.json()}function jt(t){return{async record(e){let n=e.currency??t.defaultCurrency;if(!n)throw new Error("record: `currency` is required (pass it on the sale or set config.defaultCurrency)");let r={...e,currency:n,occurred_at:e.occurred_at??new Date().toISOString()};return j(t,"POST","/sales",r)},async list(e){let{cursor:n,limit:r,sort:a,order:i,want_total:s,...o}=e??{};return j(t,"POST","/sales/query",{filters:o,...r!==void 0?{limit:r}:{},...n!==void 0?{cursor:n}:{},...a!==void 0?{sort:a}:{},...i!==void 0?{order:i}:{},...s!==void 0?{want_total:s}:{}})},async summary(e){let{range:n,include_categories:r,include_deleted_services:a,top_n:i,since:s,until:o,timezone:u,granularity:c,compare_to:f,..._}=e;return j(t,"POST","/sales/summary",{filters:_,...n!==void 0?{range:n}:{},...r!==void 0?{include_categories:r}:{},...a!==void 0?{include_deleted_services:a}:{},...i!==void 0?{top_n:i}:{},...s!==void 0?{since:s}:{},...o!==void 0?{until:o}:{},...u!==void 0?{timezone:u}:{},...c!==void 0?{granularity:c}:{},...f!==void 0?{compare_to:f}:{}})},async get(e){return j(t,"GET",`/sales/${e}`)},async update(e,n){return j(t,"PATCH",`/sales/${e}`,n)},async delete(e){await j(t,"DELETE",`/sales/${e}`)},customers:{async list(e){let{segment:n,sort:r,order:a,cursor:i,limit:s,want_total:o,...u}=e??{};return j(t,"POST","/customers/query",{filters:u,...n!==void 0?{segment:n}:{},...r!==void 0?{sort:r}:{},...a!==void 0?{order:a}:{},...i!==void 0?{cursor:i}:{},...s!==void 0?{limit:s}:{},...o!==void 0?{want_total:o}:{}})},async get(e,n){let r=new URLSearchParams;n?.include_sales!==void 0&&r.set("include_sales",String(n.include_sales)),n?.limit!==void 0&&r.set("limit",String(n.limit)),n?.cursor!=null&&r.set("cursor",n.cursor);let a=r.toString();return j(t,"GET",`/customers/${encodeURIComponent(e)}${a?`?${a}`:""}`)},async summary(e){let{range:n,since:r,until:a,timezone:i,compare_to:s,...o}=e??{};return j(t,"POST","/customers/summary",{filters:o,...n!==void 0?{range:n}:{},...r!==void 0?{since:r}:{},...a!==void 0?{until:a}:{},...i!==void 0?{timezone:i}:{},...s!==void 0?{compare_to:s}:{}})}},business:{async config(){return j(t,"GET","/business/config")}}}}var Dt="aranova-tracking-consent-banner";function ya(){return ge(he)}function Mn(){document.getElementById(Dt)?.remove()}function Vn(t,e,n){let r=document.createElement("button");return r.type="button",r.textContent=t,Object.assign(r.style,{borderRadius:"6px",padding:"10px 16px",fontSize:"14px",fontWeight:"600",cursor:"pointer",border:"1px solid #d1d5db",background:"#ffffff",color:"#374151"},n),r.addEventListener("click",e),r}function _a(){if(typeof document>"u"||B()!=="pending"||document.getElementById(Dt))return;let t=document.createElement("div");t.id=Dt,Object.assign(t.style,{position:"fixed",left:"0",right:"0",bottom:"0",zIndex:"2147483647",background:"#ffffff",borderTop:"1px solid #e5e7eb",boxShadow:"0 -4px 20px rgba(0, 0, 0, 0.12)",padding:"16px",fontFamily:"Inter, system-ui, sans-serif"});let e=document.createElement("div");Object.assign(e.style,{maxWidth:"960px",margin:"0 auto",display:"flex",flexDirection:"column",gap:"12px"});let n=document.createElement("p");n.textContent="We use cookies to understand ad performance and improve how our marketing works across visits. You can accept or decline this tracking.",Object.assign(n.style,{margin:"0",color:"#374151",fontSize:"14px",lineHeight:"1.5"});let r=document.createElement("div");Object.assign(r.style,{display:"flex",gap:"8px",flexWrap:"wrap"});let a=Vn("Decline",()=>{me("denied"),Mn()},{}),i=Vn("Accept",()=>{me("granted"),Mn()},{background:"#111827",color:"#ffffff",border:"1px solid #111827"});r.appendChild(a),r.appendChild(i),e.appendChild(n),e.appendChild(r),t.appendChild(e),document.body.appendChild(t)}var O=null,Lt=null,U=[],Xe=null;function va(){for(let t=U.length-1;t>=0;t--)U[t]();U=[],O!==null&&(O.destroy(),O=null),Lt=null,Xe=null}function jn(t={}){if(typeof window>"u")return;window.AranovaTracking=$t;let{apiKey:e,endpoint:n,autoCaptureTrackingParams:r=!0,cookieMaxAgeSeconds:a=7776e3,gtagId:i,gtagIds:s,environment:o,renderConsentBanner:u=!0,triggers:c}=t;if(r&&ye(window.location.href,a),s&&Object.keys(s).length>0?ut(s):i&&dt(i),u&&_a(),va(),!e||!n){(e||n)&&console.warn("[AranovaTracking] init() requires both `apiKey` and `endpoint` to enable first-party event ingest. Page-view events will not be sent.");return}Xe=jt({apiKey:e,endpoint:n});let f=c??{automatic:{page_view:{}},manual:{}};Lt=f,O=Tt({apiKey:e,endpoint:n,surface:"script",packageName:"@aranova/tracking-browser",sdkVersion:Ut,triggers:f,environment:o,activeGtagIds:s??(i?{default:i}:void 0)}),U.push(wt(O)),U.push(xt(O));let w=f.automatic.time_on_site;w&&U.push(Pt(O,w));let b=f.automatic.specific_page_visit;b&&U.push(At(O,b));let S=f.automatic.scroll_depth;S&&U.push(It(O,S));let T=f.automatic.multi_page_session;T&&U.push(Mt(O,T));let L=f.automatic.form_start;L&&U.push(Vt(O,L))}function Sa(t,e){if(O===null){console.warn("[AranovaTracking] trackEvent called before init({ apiKey, endpoint })");return}let n=Lt;if(n===null){console.warn("[AranovaTracking] trackEvent called but no trigger registry was passed to init()");return}let r=n.manual??{};if(!(t in r)){console.warn(`[AranovaTracking] trackEvent: event "${t}" is not registered as a manual trigger. Register it under \`triggers.manual\` in init().`);return}try{Rt(t).metadataSchema.parse(e)}catch(a){console.warn(`[AranovaTracking] trackEvent: metadata for "${t}" failed schema validation`,a);return}O.trackEvent({eventType:t,metadata:e,pageUrl:null,occurredAt:null})}function ka(){if(Xe===null)throw new Error("[AranovaTracking] sales() called before init({ apiKey, endpoint })");return Xe}var $t={init:jn,captureTrackingParams:()=>ye(),getTrackingParams:ya,getConsentState:B,setConsentState:me,trackEvent:Sa,sales:ka};typeof window<"u"&&(window.AranovaTracking=$t);var xa=$t;return Kn(wa);})();
|
|
1
|
+
"use strict";var AranovaTracking=(()=>{var rt=Object.defineProperty;var qn=Object.getOwnPropertyDescriptor;var Yn=Object.getOwnPropertyNames;var Wn=Object.prototype.hasOwnProperty;var Ft=(t,e)=>{for(var n in e)rt(t,n,{get:e[n],enumerable:!0})},Jn=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Yn(e))!Wn.call(t,a)&&a!==n&&rt(t,a,{get:()=>e[a],enumerable:!(r=qn(e,a))||r.enumerable});return t};var Qn=t=>Jn(rt({},"__esModule",{value:!0}),t);var Va={};Ft(Va,{default:()=>Ma,init:()=>Hn});var Ut="0.12.2";var at="consent_state",Kt="consent_timestamp";function it(t){return{ad_storage:t,ad_user_data:t,ad_personalization:t,analytics_storage:t}}function B(){if(typeof window>"u")return"pending";let t=window.localStorage.getItem(at);return t==="granted"||t==="denied"?t:"pending"}function ge(t){typeof window>"u"||(window.localStorage.setItem(at,t),window.localStorage.setItem(Kt,new Date().toISOString()),typeof window.gtag=="function"&&window.gtag("consent","update",it(t)))}function Ve(){let t=B();return(t==="granted"||t==="denied")&&ge(t),t}var Gt="https://www.googletagmanager.com/gtag/js",st="data-aranova-tracking";function er(t){return`aranova-${t}`}var tr=/^[A-Z]{1,3}-[A-Za-z0-9_-]+$/;function ot(t){return tr.test(t)}function je(){return window.dataLayer=window.dataLayer||[],typeof window.gtag=="function"||(window.gtag=(...t)=>{window.dataLayer?.push(t)}),window.gtag}function ct(){je()("consent","default",{ad_storage:"denied",ad_user_data:"denied",ad_personalization:"denied",analytics_storage:"denied",wait_for_update:500})}function ut(t){if(typeof document>"u")return;let e=er("gtag-loader");if(document.querySelector(`script[${st}="${e}"]`))return;let r=document.createElement("script");r.async=!0,r.src=`${Gt}?id=${encodeURIComponent(t)}`,r.setAttribute(st,e),document.head.append(r)}function Ht(t){let e=je();e("js",new Date),e("config",t)}function dt(t){typeof window>"u"||typeof document>"u"||ot(t)&&(ct(),ut(t),Ht(t),Ve())}function lt(t){if(typeof window>"u"||typeof document>"u")return;let e=Object.values(t).filter(r=>typeof r=="string"&&ot(r));if(e.length===0)return;ct(),ut(e[0]);let n=je();n("js",new Date);for(let r of e)n("config",r);Ve()}var pt=["gclid","fbclid","utm_source","utm_medium","utm_campaign","utm_term","utm_content"];function De(){return{gclid:null,fbclid:null,utm_source:null,utm_medium:null,utm_campaign:null,utm_term:null,utm_content:null}}function mt(t){return typeof t=="string"&&t.length>0?t:null}function he(t){return pt.reduce((e,n)=>(e[n]=mt(t(n)),e),De())}function Zt(t){return pt.reduce((e,n)=>{let r=t.get(n);return typeof r=="string"&&r.trim().length>0&&(e[n]=r),e},{})}function ye(t){if(typeof document>"u")return null;let n=(document.cookie?document.cookie.split("; "):[]).find(a=>a.startsWith(`${t}=`));if(!n)return null;let[,r=""]=n.split("=");return mt(decodeURIComponent(r))}function Bt(t,e,n=7776e3){if(typeof document>"u")return;let r=encodeURIComponent(e);document.cookie=`${t}=${r}; Max-Age=${n}; Path=/; SameSite=Lax`}function qt(t,e=7776e3){let n=Zt(t);return Object.entries(n).forEach(([r,a])=>{Bt(r,a,e)}),n}function _e(t=typeof window>"u"?"":window.location.href,e=7776e3){let n=typeof window>"u"?new URL(t||"https://example.invalid"):new URL(t,window.location.origin);return qt(n.searchParams,e),he(ye)}var ft="aranova_tracking_visitor",Le="aranova_tracking_session";function $e(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`${Date.now().toString(16)}-${Math.random().toString(16).slice(2)}-${Math.random().toString(16).slice(2)}`}function Yt(t){try{return window.localStorage.getItem(t)}catch{return null}}function gt(t,e){try{window.localStorage.setItem(t,e)}catch{}}function ht(){if(typeof window>"u")return $e();let t=Yt(ft);if(t&&t.length>0)return t;let e=$e();return gt(ft,e),e}function ve(t=Date.now()){if(typeof window>"u")return{id:$e(),isNew:!0};let e=Yt(Le);if(e)try{let r=JSON.parse(e);if(typeof r.id=="string"&&typeof r.last_event_at=="number"&&t-r.last_event_at<=18e5){let a={id:r.id,last_event_at:t};return gt(Le,JSON.stringify(a)),{id:r.id,isNew:!1}}}catch{}let n={id:$e(),last_event_at:t};return gt(Le,JSON.stringify(n)),{id:n.id,isNew:!0}}var c={};Ft(c,{BRAND:()=>Er,DIRTY:()=>X,EMPTY_PATH:()=>ir,INVALID:()=>h,NEVER:()=>la,OK:()=>R,ParseStatus:()=>E,Schema:()=>x,ZodAny:()=>W,ZodArray:()=>Z,ZodBigInt:()=>te,ZodBoolean:()=>ne,ZodBranded:()=>Ae,ZodCatch:()=>me,ZodDate:()=>re,ZodDefault:()=>pe,ZodDiscriminatedUnion:()=>Ue,ZodEffects:()=>V,ZodEnum:()=>de,ZodError:()=>I,ZodFirstPartyTypeKind:()=>y,ZodFunction:()=>Ge,ZodIntersection:()=>oe,ZodIssueCode:()=>l,ZodLazy:()=>ce,ZodLiteral:()=>ue,ZodMap:()=>Ce,ZodNaN:()=>Ee,ZodNativeEnum:()=>le,ZodNever:()=>D,ZodNull:()=>ie,ZodNullable:()=>F,ZodNumber:()=>ee,ZodObject:()=>A,ZodOptional:()=>N,ZodParsedType:()=>f,ZodPipeline:()=>Pe,ZodPromise:()=>J,ZodReadonly:()=>fe,ZodRecord:()=>Ke,ZodSchema:()=>x,ZodSet:()=>Te,ZodString:()=>Y,ZodSymbol:()=>be,ZodTransformer:()=>V,ZodTuple:()=>z,ZodType:()=>x,ZodUndefined:()=>ae,ZodUnion:()=>se,ZodUnknown:()=>H,ZodVoid:()=>we,addIssueToContext:()=>m,any:()=>jr,array:()=>zr,bigint:()=>Pr,boolean:()=>on,coerce:()=>da,custom:()=>rn,date:()=>Or,datetimeRegex:()=>tn,defaultErrorMap:()=>K,discriminatedUnion:()=>Gr,effect:()=>na,enum:()=>Xr,function:()=>Wr,getErrorMap:()=>Se,getParsedType:()=>$,instanceof:()=>Ir,intersection:()=>Hr,isAborted:()=>ze,isAsync:()=>xe,isDirty:()=>Fe,isValid:()=>q,late:()=>Rr,lazy:()=>Jr,literal:()=>Qr,makeIssue:()=>Ie,map:()=>qr,nan:()=>Ar,nativeEnum:()=>ea,never:()=>Lr,null:()=>Vr,nullable:()=>aa,number:()=>sn,object:()=>Fr,objectUtil:()=>yt,oboolean:()=>ua,onumber:()=>ca,optional:()=>ra,ostring:()=>oa,pipeline:()=>sa,preprocess:()=>ia,promise:()=>ta,quotelessJson:()=>nr,record:()=>Br,set:()=>Yr,setErrorMap:()=>ar,strictObject:()=>Ur,string:()=>an,symbol:()=>Nr,transformer:()=>na,tuple:()=>Zr,undefined:()=>Mr,union:()=>Kr,unknown:()=>Dr,util:()=>k,void:()=>$r});var k;(function(t){t.assertEqual=a=>{};function e(a){}t.assertIs=e;function n(a){throw new Error}t.assertNever=n,t.arrayToEnum=a=>{let i={};for(let s of a)i[s]=s;return i},t.getValidEnumValues=a=>{let i=t.objectKeys(a).filter(o=>typeof a[a[o]]!="number"),s={};for(let o of i)s[o]=a[o];return t.objectValues(s)},t.objectValues=a=>t.objectKeys(a).map(function(i){return a[i]}),t.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{let i=[];for(let s in a)Object.prototype.hasOwnProperty.call(a,s)&&i.push(s);return i},t.find=(a,i)=>{for(let s of a)if(i(s))return s},t.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function r(a,i=" | "){return a.map(s=>typeof s=="string"?`'${s}'`:s).join(i)}t.joinValues=r,t.jsonStringifyReplacer=(a,i)=>typeof i=="bigint"?i.toString():i})(k||(k={}));var yt;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(yt||(yt={}));var f=k.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),$=t=>{switch(typeof t){case"undefined":return f.undefined;case"string":return f.string;case"number":return Number.isNaN(t)?f.nan:f.number;case"boolean":return f.boolean;case"function":return f.function;case"bigint":return f.bigint;case"symbol":return f.symbol;case"object":return Array.isArray(t)?f.array:t===null?f.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?f.promise:typeof Map<"u"&&t instanceof Map?f.map:typeof Set<"u"&&t instanceof Set?f.set:typeof Date<"u"&&t instanceof Date?f.date:f.object;default:return f.unknown}};var l=k.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),nr=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),I=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(i){return i.message},r={_errors:[]},a=i=>{for(let s of i.issues)if(s.code==="invalid_union")s.unionErrors.map(a);else if(s.code==="invalid_return_type")a(s.returnTypeError);else if(s.code==="invalid_arguments")a(s.argumentsError);else if(s.path.length===0)r._errors.push(n(s));else{let o=r,d=0;for(;d<s.path.length;){let u=s.path[d];d===s.path.length-1?(o[u]=o[u]||{_errors:[]},o[u]._errors.push(n(s))):o[u]=o[u]||{_errors:[]},o=o[u],d++}}};return a(this),r}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,k.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n={},r=[];for(let a of this.issues)if(a.path.length>0){let i=a.path[0];n[i]=n[i]||[],n[i].push(e(a))}else r.push(e(a));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}};I.create=t=>new I(t);var rr=(t,e)=>{let n;switch(t.code){case l.invalid_type:t.received===f.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case l.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,k.jsonStringifyReplacer)}`;break;case l.unrecognized_keys:n=`Unrecognized key(s) in object: ${k.joinValues(t.keys,", ")}`;break;case l.invalid_union:n="Invalid input";break;case l.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${k.joinValues(t.options)}`;break;case l.invalid_enum_value:n=`Invalid enum value. Expected ${k.joinValues(t.options)}, received '${t.received}'`;break;case l.invalid_arguments:n="Invalid function arguments";break;case l.invalid_return_type:n="Invalid function return type";break;case l.invalid_date:n="Invalid date";break;case l.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:k.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case l.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case l.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case l.custom:n="Invalid input";break;case l.invalid_intersection_types:n="Intersection results could not be merged";break;case l.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case l.not_finite:n="Number must be finite";break;default:n=e.defaultError,k.assertNever(t)}return{message:n}},K=rr;var Wt=K;function ar(t){Wt=t}function Se(){return Wt}var Ie=t=>{let{data:e,path:n,errorMaps:r,issueData:a}=t,i=[...n,...a.path||[]],s={...a,path:i};if(a.message!==void 0)return{...a,path:i,message:a.message};let o="",d=r.filter(u=>!!u).slice().reverse();for(let u of d)o=u(s,{data:e,defaultError:o}).message;return{...a,path:i,message:o}},ir=[];function m(t,e){let n=Se(),r=Ie({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===K?void 0:K].filter(a=>!!a)});t.common.issues.push(r)}var E=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let r=[];for(let a of n){if(a.status==="aborted")return h;a.status==="dirty"&&e.dirty(),r.push(a.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,n){let r=[];for(let a of n){let i=await a.key,s=await a.value;r.push({key:i,value:s})}return t.mergeObjectSync(e,r)}static mergeObjectSync(e,n){let r={};for(let a of n){let{key:i,value:s}=a;if(i.status==="aborted"||s.status==="aborted")return h;i.status==="dirty"&&e.dirty(),s.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof s.value<"u"||a.alwaysSet)&&(r[i.value]=s.value)}return{status:e.value,value:r}}},h=Object.freeze({status:"aborted"}),X=t=>({status:"dirty",value:t}),R=t=>({status:"valid",value:t}),ze=t=>t.status==="aborted",Fe=t=>t.status==="dirty",q=t=>t.status==="valid",xe=t=>typeof Promise<"u"&&t instanceof Promise;var g;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(g||(g={}));var M=class{constructor(e,n,r,a){this._cachedPath=[],this.parent=e,this.data=n,this._path=r,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Jt=(t,e)=>{if(q(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new I(t.common.issues);return this._error=n,this._error}}};function v(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:r,description:a}=t;if(e&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:a}:{errorMap:(s,o)=>{let{message:d}=t;return s.code==="invalid_enum_value"?{message:d??o.defaultError}:typeof o.data>"u"?{message:d??r??o.defaultError}:s.code!=="invalid_type"?{message:o.defaultError}:{message:d??n??o.defaultError}},description:a}}var x=class{get description(){return this._def.description}_getType(e){return $(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:$(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new E,ctx:{common:e.parent.common,data:e.data,parsedType:$(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(xe(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let r=this.safeParse(e,n);if(r.success)return r.data;throw r.error}safeParse(e,n){let r={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)},a=this._parseSync({data:e,path:r.path,parent:r});return Jt(r,a)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)};if(!this["~standard"].async)try{let r=this._parseSync({data:e,path:[],parent:n});return q(r)?{value:r.value}:{issues:n.common.issues}}catch(r){r?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(r=>q(r)?{value:r.value}:{issues:n.common.issues})}async parseAsync(e,n){let r=await this.safeParseAsync(e,n);if(r.success)return r.data;throw r.error}async safeParseAsync(e,n){let r={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:$(e)},a=this._parse({data:e,path:r.path,parent:r}),i=await(xe(a)?a:Promise.resolve(a));return Jt(r,i)}refine(e,n){let r=a=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(a):n;return this._refinement((a,i)=>{let s=e(a),o=()=>i.addIssue({code:l.custom,...r(a)});return typeof Promise<"u"&&s instanceof Promise?s.then(d=>d?!0:(o(),!1)):s?!0:(o(),!1)})}refinement(e,n){return this._refinement((r,a)=>e(r)?!0:(a.addIssue(typeof n=="function"?n(r,a):n),!1))}_refinement(e){return new V({schema:this,typeName:y.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return N.create(this,this._def)}nullable(){return F.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Z.create(this)}promise(){return J.create(this,this._def)}or(e){return se.create([this,e],this._def)}and(e){return oe.create(this,e,this._def)}transform(e){return new V({...v(this._def),schema:this,typeName:y.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new pe({...v(this._def),innerType:this,defaultValue:n,typeName:y.ZodDefault})}brand(){return new Ae({typeName:y.ZodBranded,type:this,...v(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new me({...v(this._def),innerType:this,catchValue:n,typeName:y.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Pe.create(this,e)}readonly(){return fe.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},sr=/^c[^\s-]{8,}$/i,or=/^[0-9a-z]+$/,cr=/^[0-9A-HJKMNP-TV-Z]{26}$/i,ur=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,dr=/^[a-z0-9_-]{21}$/i,lr=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,pr=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,mr=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,fr="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",_t,gr=/^(?:(?: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])$/,hr=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,yr=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,_r=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,vr=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Sr=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Xt="((\\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])))",xr=new RegExp(`^${Xt}$`);function en(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function kr(t){return new RegExp(`^${en(t)}$`)}function tn(t){let e=`${Xt}T${en(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function br(t,e){return!!((e==="v4"||!e)&&gr.test(t)||(e==="v6"||!e)&&yr.test(t))}function wr(t,e){if(!lr.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),a=JSON.parse(atob(r));return!(typeof a!="object"||a===null||"typ"in a&&a?.typ!=="JWT"||!a.alg||e&&a.alg!==e)}catch{return!1}}function Cr(t,e){return!!((e==="v4"||!e)&&hr.test(t)||(e==="v6"||!e)&&_r.test(t))}var Y=class t extends x{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==f.string){let i=this._getOrReturnCtx(e);return m(i,{code:l.invalid_type,expected:f.string,received:i.parsedType}),h}let r=new E,a;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(a=this._getOrReturnCtx(e,a),m(a,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="max")e.data.length>i.value&&(a=this._getOrReturnCtx(e,a),m(a,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),r.dirty());else if(i.kind==="length"){let s=e.data.length>i.value,o=e.data.length<i.value;(s||o)&&(a=this._getOrReturnCtx(e,a),s?m(a,{code:l.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&m(a,{code:l.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),r.dirty())}else if(i.kind==="email")mr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"email",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="emoji")_t||(_t=new RegExp(fr,"u")),_t.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"emoji",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="uuid")ur.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"uuid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="nanoid")dr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"nanoid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid")sr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"cuid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="cuid2")or.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"cuid2",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="ulid")cr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"ulid",code:l.invalid_string,message:i.message}),r.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{a=this._getOrReturnCtx(e,a),m(a,{validation:"url",code:l.invalid_string,message:i.message}),r.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"regex",code:l.invalid_string,message:i.message}),r.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),r.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:{startsWith:i.value},message:i.message}),r.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:{endsWith:i.value},message:i.message}),r.dirty()):i.kind==="datetime"?tn(i).test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:"datetime",message:i.message}),r.dirty()):i.kind==="date"?xr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:"date",message:i.message}),r.dirty()):i.kind==="time"?kr(i).test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{code:l.invalid_string,validation:"time",message:i.message}),r.dirty()):i.kind==="duration"?pr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"duration",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="ip"?br(e.data,i.version)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"ip",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="jwt"?wr(e.data,i.alg)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"jwt",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="cidr"?Cr(e.data,i.version)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"cidr",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="base64"?vr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"base64",code:l.invalid_string,message:i.message}),r.dirty()):i.kind==="base64url"?Sr.test(e.data)||(a=this._getOrReturnCtx(e,a),m(a,{validation:"base64url",code:l.invalid_string,message:i.message}),r.dirty()):k.assertNever(i);return{status:r.value,value:e.data}}_regex(e,n,r){return this.refinement(a=>e.test(a),{validation:n,code:l.invalid_string,...g.errToObj(r)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...g.errToObj(e)})}url(e){return this._addCheck({kind:"url",...g.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...g.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...g.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...g.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...g.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...g.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...g.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...g.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...g.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...g.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...g.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...g.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...g.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...g.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...g.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...g.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...g.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...g.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...g.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...g.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...g.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...g.errToObj(n)})}nonempty(e){return this.min(1,g.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Y.create=t=>new Y({checks:[],typeName:y.ZodString,coerce:t?.coerce??!1,...v(t)});function Tr(t,e){let n=(t.toString().split(".")[1]||"").length,r=(e.toString().split(".")[1]||"").length,a=n>r?n:r,i=Number.parseInt(t.toFixed(a).replace(".","")),s=Number.parseInt(e.toFixed(a).replace(".",""));return i%s/10**a}var ee=class t extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==f.number){let i=this._getOrReturnCtx(e);return m(i,{code:l.invalid_type,expected:f.number,received:i.parsedType}),h}let r,a=new E;for(let i of this._def.checks)i.kind==="int"?k.isInteger(e.data)||(r=this._getOrReturnCtx(e,r),m(r,{code:l.invalid_type,expected:"integer",received:"float",message:i.message}),a.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),a.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),a.dirty()):i.kind==="multipleOf"?Tr(e.data,i.value)!==0&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(r=this._getOrReturnCtx(e,r),m(r,{code:l.not_finite,message:i.message}),a.dirty()):k.assertNever(i);return{status:a.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,g.toString(n))}gt(e,n){return this.setLimit("min",e,!1,g.toString(n))}lte(e,n){return this.setLimit("max",e,!0,g.toString(n))}lt(e,n){return this.setLimit("max",e,!1,g.toString(n))}setLimit(e,n,r,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:g.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:g.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:g.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:g.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:g.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:g.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&k.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(e===null||r.value<e)&&(e=r.value)}return Number.isFinite(n)&&Number.isFinite(e)}};ee.create=t=>new ee({checks:[],typeName:y.ZodNumber,coerce:t?.coerce||!1,...v(t)});var te=class t extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==f.bigint)return this._getInvalidInput(e);let r,a=new E;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),a.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),a.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(r=this._getOrReturnCtx(e,r),m(r,{code:l.not_multiple_of,multipleOf:i.value,message:i.message}),a.dirty()):k.assertNever(i);return{status:a.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return m(n,{code:l.invalid_type,expected:f.bigint,received:n.parsedType}),h}gte(e,n){return this.setLimit("min",e,!0,g.toString(n))}gt(e,n){return this.setLimit("min",e,!1,g.toString(n))}lte(e,n){return this.setLimit("max",e,!0,g.toString(n))}lt(e,n){return this.setLimit("max",e,!1,g.toString(n))}setLimit(e,n,r,a){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:r,message:g.toString(a)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:g.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:g.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:g.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:g.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:g.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};te.create=t=>new te({checks:[],typeName:y.ZodBigInt,coerce:t?.coerce??!1,...v(t)});var ne=class extends x{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==f.boolean){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.boolean,received:r.parsedType}),h}return R(e.data)}};ne.create=t=>new ne({typeName:y.ZodBoolean,coerce:t?.coerce||!1,...v(t)});var re=class t extends x{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==f.date){let i=this._getOrReturnCtx(e);return m(i,{code:l.invalid_type,expected:f.date,received:i.parsedType}),h}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return m(i,{code:l.invalid_date}),h}let r=new E,a;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(a=this._getOrReturnCtx(e,a),m(a,{code:l.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),r.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(a=this._getOrReturnCtx(e,a),m(a,{code:l.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),r.dirty()):k.assertNever(i);return{status:r.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:g.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:g.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};re.create=t=>new re({checks:[],coerce:t?.coerce||!1,typeName:y.ZodDate,...v(t)});var be=class extends x{_parse(e){if(this._getType(e)!==f.symbol){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.symbol,received:r.parsedType}),h}return R(e.data)}};be.create=t=>new be({typeName:y.ZodSymbol,...v(t)});var ae=class extends x{_parse(e){if(this._getType(e)!==f.undefined){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.undefined,received:r.parsedType}),h}return R(e.data)}};ae.create=t=>new ae({typeName:y.ZodUndefined,...v(t)});var ie=class extends x{_parse(e){if(this._getType(e)!==f.null){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.null,received:r.parsedType}),h}return R(e.data)}};ie.create=t=>new ie({typeName:y.ZodNull,...v(t)});var W=class extends x{constructor(){super(...arguments),this._any=!0}_parse(e){return R(e.data)}};W.create=t=>new W({typeName:y.ZodAny,...v(t)});var H=class extends x{constructor(){super(...arguments),this._unknown=!0}_parse(e){return R(e.data)}};H.create=t=>new H({typeName:y.ZodUnknown,...v(t)});var D=class extends x{_parse(e){let n=this._getOrReturnCtx(e);return m(n,{code:l.invalid_type,expected:f.never,received:n.parsedType}),h}};D.create=t=>new D({typeName:y.ZodNever,...v(t)});var we=class extends x{_parse(e){if(this._getType(e)!==f.undefined){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.void,received:r.parsedType}),h}return R(e.data)}};we.create=t=>new we({typeName:y.ZodVoid,...v(t)});var Z=class t extends x{_parse(e){let{ctx:n,status:r}=this._processInputParams(e),a=this._def;if(n.parsedType!==f.array)return m(n,{code:l.invalid_type,expected:f.array,received:n.parsedType}),h;if(a.exactLength!==null){let s=n.data.length>a.exactLength.value,o=n.data.length<a.exactLength.value;(s||o)&&(m(n,{code:s?l.too_big:l.too_small,minimum:o?a.exactLength.value:void 0,maximum:s?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),r.dirty())}if(a.minLength!==null&&n.data.length<a.minLength.value&&(m(n,{code:l.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),r.dirty()),a.maxLength!==null&&n.data.length>a.maxLength.value&&(m(n,{code:l.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((s,o)=>a.type._parseAsync(new M(n,s,n.path,o)))).then(s=>E.mergeArray(r,s));let i=[...n.data].map((s,o)=>a.type._parseSync(new M(n,s,n.path,o)));return E.mergeArray(r,i)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:g.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:g.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:g.toString(n)}})}nonempty(e){return this.min(1,e)}};Z.create=(t,e)=>new Z({type:t,minLength:null,maxLength:null,exactLength:null,typeName:y.ZodArray,...v(e)});function ke(t){if(t instanceof A){let e={};for(let n in t.shape){let r=t.shape[n];e[n]=N.create(ke(r))}return new A({...t._def,shape:()=>e})}else return t instanceof Z?new Z({...t._def,type:ke(t.element)}):t instanceof N?N.create(ke(t.unwrap())):t instanceof F?F.create(ke(t.unwrap())):t instanceof z?z.create(t.items.map(e=>ke(e))):t}var A=class t extends x{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=k.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==f.object){let u=this._getOrReturnCtx(e);return m(u,{code:l.invalid_type,expected:f.object,received:u.parsedType}),h}let{status:r,ctx:a}=this._processInputParams(e),{shape:i,keys:s}=this._getCached(),o=[];if(!(this._def.catchall instanceof D&&this._def.unknownKeys==="strip"))for(let u in a.data)s.includes(u)||o.push(u);let d=[];for(let u of s){let p=i[u],_=a.data[u];d.push({key:{status:"valid",value:u},value:p._parse(new M(a,_,a.path,u)),alwaysSet:u in a.data})}if(this._def.catchall instanceof D){let u=this._def.unknownKeys;if(u==="passthrough")for(let p of o)d.push({key:{status:"valid",value:p},value:{status:"valid",value:a.data[p]}});else if(u==="strict")o.length>0&&(m(a,{code:l.unrecognized_keys,keys:o}),r.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let p of o){let _=a.data[p];d.push({key:{status:"valid",value:p},value:u._parse(new M(a,_,a.path,p)),alwaysSet:p in a.data})}}return a.common.async?Promise.resolve().then(async()=>{let u=[];for(let p of d){let _=await p.key,b=await p.value;u.push({key:_,value:b,alwaysSet:p.alwaysSet})}return u}).then(u=>E.mergeObjectSync(r,u)):E.mergeObjectSync(r,d)}get shape(){return this._def.shape()}strict(e){return g.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,r)=>{let a=this._def.errorMap?.(n,r).message??r.defaultError;return n.code==="unrecognized_keys"?{message:g.errToObj(e).message??a}:{message:a}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:y.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let r of k.objectKeys(e))e[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let r of k.objectKeys(this.shape))e[r]||(n[r]=this.shape[r]);return new t({...this._def,shape:()=>n})}deepPartial(){return ke(this)}partial(e){let n={};for(let r of k.objectKeys(this.shape)){let a=this.shape[r];e&&!e[r]?n[r]=a:n[r]=a.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let r of k.objectKeys(this.shape))if(e&&!e[r])n[r]=this.shape[r];else{let i=this.shape[r];for(;i instanceof N;)i=i._def.innerType;n[r]=i}return new t({...this._def,shape:()=>n})}keyof(){return nn(k.objectKeys(this.shape))}};A.create=(t,e)=>new A({shape:()=>t,unknownKeys:"strip",catchall:D.create(),typeName:y.ZodObject,...v(e)});A.strictCreate=(t,e)=>new A({shape:()=>t,unknownKeys:"strict",catchall:D.create(),typeName:y.ZodObject,...v(e)});A.lazycreate=(t,e)=>new A({shape:t,unknownKeys:"strip",catchall:D.create(),typeName:y.ZodObject,...v(e)});var se=class extends x{_parse(e){let{ctx:n}=this._processInputParams(e),r=this._def.options;function a(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return n.common.issues.push(...o.ctx.common.issues),o.result;let s=i.map(o=>new I(o.ctx.common.issues));return m(n,{code:l.invalid_union,unionErrors:s}),h}if(n.common.async)return Promise.all(r.map(async i=>{let s={...n,common:{...n.common,issues:[]},parent:null};return{result:await i._parseAsync({data:n.data,path:n.path,parent:s}),ctx:s}})).then(a);{let i,s=[];for(let d of r){let u={...n,common:{...n.common,issues:[]},parent:null},p=d._parseSync({data:n.data,path:n.path,parent:u});if(p.status==="valid")return p;p.status==="dirty"&&!i&&(i={result:p,ctx:u}),u.common.issues.length&&s.push(u.common.issues)}if(i)return n.common.issues.push(...i.ctx.common.issues),i.result;let o=s.map(d=>new I(d));return m(n,{code:l.invalid_union,unionErrors:o}),h}}get options(){return this._def.options}};se.create=(t,e)=>new se({options:t,typeName:y.ZodUnion,...v(e)});var G=t=>t instanceof ce?G(t.schema):t instanceof V?G(t.innerType()):t instanceof ue?[t.value]:t instanceof de?t.options:t instanceof le?k.objectValues(t.enum):t instanceof pe?G(t._def.innerType):t instanceof ae?[void 0]:t instanceof ie?[null]:t instanceof N?[void 0,...G(t.unwrap())]:t instanceof F?[null,...G(t.unwrap())]:t instanceof Ae||t instanceof fe?G(t.unwrap()):t instanceof me?G(t._def.innerType):[],Ue=class t extends x{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==f.object)return m(n,{code:l.invalid_type,expected:f.object,received:n.parsedType}),h;let r=this.discriminator,a=n.data[r],i=this.optionsMap.get(a);return i?n.common.async?i._parseAsync({data:n.data,path:n.path,parent:n}):i._parseSync({data:n.data,path:n.path,parent:n}):(m(n,{code:l.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),h)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,r){let a=new Map;for(let i of n){let s=G(i.shape[e]);if(!s.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of s){if(a.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);a.set(o,i)}}return new t({typeName:y.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:a,...v(r)})}};function vt(t,e){let n=$(t),r=$(e);if(t===e)return{valid:!0,data:t};if(n===f.object&&r===f.object){let a=k.objectKeys(e),i=k.objectKeys(t).filter(o=>a.indexOf(o)!==-1),s={...t,...e};for(let o of i){let d=vt(t[o],e[o]);if(!d.valid)return{valid:!1};s[o]=d.data}return{valid:!0,data:s}}else if(n===f.array&&r===f.array){if(t.length!==e.length)return{valid:!1};let a=[];for(let i=0;i<t.length;i++){let s=t[i],o=e[i],d=vt(s,o);if(!d.valid)return{valid:!1};a.push(d.data)}return{valid:!0,data:a}}else return n===f.date&&r===f.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var oe=class extends x{_parse(e){let{status:n,ctx:r}=this._processInputParams(e),a=(i,s)=>{if(ze(i)||ze(s))return h;let o=vt(i.value,s.value);return o.valid?((Fe(i)||Fe(s))&&n.dirty(),{status:n.value,value:o.data}):(m(r,{code:l.invalid_intersection_types}),h)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([i,s])=>a(i,s)):a(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}};oe.create=(t,e,n)=>new oe({left:t,right:e,typeName:y.ZodIntersection,...v(n)});var z=class t extends x{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==f.array)return m(r,{code:l.invalid_type,expected:f.array,received:r.parsedType}),h;if(r.data.length<this._def.items.length)return m(r,{code:l.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),h;!this._def.rest&&r.data.length>this._def.items.length&&(m(r,{code:l.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let i=[...r.data].map((s,o)=>{let d=this._def.items[o]||this._def.rest;return d?d._parse(new M(r,s,r.path,o)):null}).filter(s=>!!s);return r.common.async?Promise.all(i).then(s=>E.mergeArray(n,s)):E.mergeArray(n,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};z.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new z({items:t,typeName:y.ZodTuple,rest:null,...v(e)})};var Ke=class t extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==f.object)return m(r,{code:l.invalid_type,expected:f.object,received:r.parsedType}),h;let a=[],i=this._def.keyType,s=this._def.valueType;for(let o in r.data)a.push({key:i._parse(new M(r,o,r.path,o)),value:s._parse(new M(r,r.data[o],r.path,o)),alwaysSet:o in r.data});return r.common.async?E.mergeObjectAsync(n,a):E.mergeObjectSync(n,a)}get element(){return this._def.valueType}static create(e,n,r){return n instanceof x?new t({keyType:e,valueType:n,typeName:y.ZodRecord,...v(r)}):new t({keyType:Y.create(),valueType:e,typeName:y.ZodRecord,...v(n)})}},Ce=class extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==f.map)return m(r,{code:l.invalid_type,expected:f.map,received:r.parsedType}),h;let a=this._def.keyType,i=this._def.valueType,s=[...r.data.entries()].map(([o,d],u)=>({key:a._parse(new M(r,o,r.path,[u,"key"])),value:i._parse(new M(r,d,r.path,[u,"value"]))}));if(r.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let d of s){let u=await d.key,p=await d.value;if(u.status==="aborted"||p.status==="aborted")return h;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),o.set(u.value,p.value)}return{status:n.value,value:o}})}else{let o=new Map;for(let d of s){let u=d.key,p=d.value;if(u.status==="aborted"||p.status==="aborted")return h;(u.status==="dirty"||p.status==="dirty")&&n.dirty(),o.set(u.value,p.value)}return{status:n.value,value:o}}}};Ce.create=(t,e,n)=>new Ce({valueType:e,keyType:t,typeName:y.ZodMap,...v(n)});var Te=class t extends x{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.parsedType!==f.set)return m(r,{code:l.invalid_type,expected:f.set,received:r.parsedType}),h;let a=this._def;a.minSize!==null&&r.data.size<a.minSize.value&&(m(r,{code:l.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),n.dirty()),a.maxSize!==null&&r.data.size>a.maxSize.value&&(m(r,{code:l.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),n.dirty());let i=this._def.valueType;function s(d){let u=new Set;for(let p of d){if(p.status==="aborted")return h;p.status==="dirty"&&n.dirty(),u.add(p.value)}return{status:n.value,value:u}}let o=[...r.data.values()].map((d,u)=>i._parse(new M(r,d,r.path,u)));return r.common.async?Promise.all(o).then(d=>s(d)):s(o)}min(e,n){return new t({...this._def,minSize:{value:e,message:g.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:g.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};Te.create=(t,e)=>new Te({valueType:t,minSize:null,maxSize:null,typeName:y.ZodSet,...v(e)});var Ge=class t extends x{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==f.function)return m(n,{code:l.invalid_type,expected:f.function,received:n.parsedType}),h;function r(o,d){return Ie({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Se(),K].filter(u=>!!u),issueData:{code:l.invalid_arguments,argumentsError:d}})}function a(o,d){return Ie({data:o,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Se(),K].filter(u=>!!u),issueData:{code:l.invalid_return_type,returnTypeError:d}})}let i={errorMap:n.common.contextualErrorMap},s=n.data;if(this._def.returns instanceof J){let o=this;return R(async function(...d){let u=new I([]),p=await o._def.args.parseAsync(d,i).catch(T=>{throw u.addIssue(r(d,T)),u}),_=await Reflect.apply(s,this,p);return await o._def.returns._def.type.parseAsync(_,i).catch(T=>{throw u.addIssue(a(_,T)),u})})}else{let o=this;return R(function(...d){let u=o._def.args.safeParse(d,i);if(!u.success)throw new I([r(d,u.error)]);let p=Reflect.apply(s,this,u.data),_=o._def.returns.safeParse(p,i);if(!_.success)throw new I([a(p,_.error)]);return _.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:z.create(e).rest(H.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,r){return new t({args:e||z.create([]).rest(H.create()),returns:n||H.create(),typeName:y.ZodFunction,...v(r)})}},ce=class extends x{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};ce.create=(t,e)=>new ce({getter:t,typeName:y.ZodLazy,...v(e)});var ue=class extends x{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return m(n,{received:n.data,code:l.invalid_literal,expected:this._def.value}),h}return{status:"valid",value:e.data}}get value(){return this._def.value}};ue.create=(t,e)=>new ue({value:t,typeName:y.ZodLiteral,...v(e)});function nn(t,e){return new de({values:t,typeName:y.ZodEnum,...v(e)})}var de=class t extends x{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),r=this._def.values;return m(n,{expected:k.joinValues(r),received:n.parsedType,code:l.invalid_type}),h}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),r=this._def.values;return m(n,{received:n.data,code:l.invalid_enum_value,options:r}),h}return R(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(r=>!e.includes(r)),{...this._def,...n})}};de.create=nn;var le=class extends x{_parse(e){let n=k.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==f.string&&r.parsedType!==f.number){let a=k.objectValues(n);return m(r,{expected:k.joinValues(a),received:r.parsedType,code:l.invalid_type}),h}if(this._cache||(this._cache=new Set(k.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let a=k.objectValues(n);return m(r,{received:r.data,code:l.invalid_enum_value,options:a}),h}return R(e.data)}get enum(){return this._def.values}};le.create=(t,e)=>new le({values:t,typeName:y.ZodNativeEnum,...v(e)});var J=class extends x{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==f.promise&&n.common.async===!1)return m(n,{code:l.invalid_type,expected:f.promise,received:n.parsedType}),h;let r=n.parsedType===f.promise?n.data:Promise.resolve(n.data);return R(r.then(a=>this._def.type.parseAsync(a,{path:n.path,errorMap:n.common.contextualErrorMap})))}};J.create=(t,e)=>new J({type:t,typeName:y.ZodPromise,...v(e)});var V=class extends x{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===y.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:r}=this._processInputParams(e),a=this._def.effect||null,i={addIssue:s=>{m(r,s),s.fatal?n.abort():n.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),a.type==="preprocess"){let s=a.transform(r.data,i);if(r.common.async)return Promise.resolve(s).then(async o=>{if(n.value==="aborted")return h;let d=await this._def.schema._parseAsync({data:o,path:r.path,parent:r});return d.status==="aborted"?h:d.status==="dirty"?X(d.value):n.value==="dirty"?X(d.value):d});{if(n.value==="aborted")return h;let o=this._def.schema._parseSync({data:s,path:r.path,parent:r});return o.status==="aborted"?h:o.status==="dirty"?X(o.value):n.value==="dirty"?X(o.value):o}}if(a.type==="refinement"){let s=o=>{let d=a.refinement(o,i);if(r.common.async)return Promise.resolve(d);if(d instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(r.common.async===!1){let o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return o.status==="aborted"?h:(o.status==="dirty"&&n.dirty(),s(o.value),{status:n.value,value:o.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>o.status==="aborted"?h:(o.status==="dirty"&&n.dirty(),s(o.value).then(()=>({status:n.value,value:o.value}))))}if(a.type==="transform")if(r.common.async===!1){let s=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!q(s))return h;let o=a.transform(s.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:o}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(s=>q(s)?Promise.resolve(a.transform(s.value,i)).then(o=>({status:n.value,value:o})):h);k.assertNever(a)}};V.create=(t,e,n)=>new V({schema:t,typeName:y.ZodEffects,effect:e,...v(n)});V.createWithPreprocess=(t,e,n)=>new V({schema:e,effect:{type:"preprocess",transform:t},typeName:y.ZodEffects,...v(n)});var N=class extends x{_parse(e){return this._getType(e)===f.undefined?R(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};N.create=(t,e)=>new N({innerType:t,typeName:y.ZodOptional,...v(e)});var F=class extends x{_parse(e){return this._getType(e)===f.null?R(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};F.create=(t,e)=>new F({innerType:t,typeName:y.ZodNullable,...v(e)});var pe=class extends x{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return n.parsedType===f.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};pe.create=(t,e)=>new pe({innerType:t,typeName:y.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...v(e)});var me=class extends x{_parse(e){let{ctx:n}=this._processInputParams(e),r={...n,common:{...n.common,issues:[]}},a=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return xe(a)?a.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new I(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}};me.create=(t,e)=>new me({innerType:t,typeName:y.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...v(e)});var Ee=class extends x{_parse(e){if(this._getType(e)!==f.nan){let r=this._getOrReturnCtx(e);return m(r,{code:l.invalid_type,expected:f.nan,received:r.parsedType}),h}return{status:"valid",value:e.data}}};Ee.create=t=>new Ee({typeName:y.ZodNaN,...v(t)});var Er=Symbol("zod_brand"),Ae=class extends x{_parse(e){let{ctx:n}=this._processInputParams(e),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}},Pe=class t extends x{_parse(e){let{status:n,ctx:r}=this._processInputParams(e);if(r.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?h:i.status==="dirty"?(n.dirty(),X(i.value)):this._def.out._parseAsync({data:i.value,path:r.path,parent:r})})();{let a=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?h:a.status==="dirty"?(n.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:r.path,parent:r})}}static create(e,n){return new t({in:e,out:n,typeName:y.ZodPipeline})}},fe=class extends x{_parse(e){let n=this._def.innerType._parse(e),r=a=>(q(a)&&(a.value=Object.freeze(a.value)),a);return xe(n)?n.then(a=>r(a)):r(n)}unwrap(){return this._def.innerType}};fe.create=(t,e)=>new fe({innerType:t,typeName:y.ZodReadonly,...v(e)});function Qt(t,e){let n=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof n=="string"?{message:n}:n}function rn(t,e={},n){return t?W.create().superRefine((r,a)=>{let i=t(r);if(i instanceof Promise)return i.then(s=>{if(!s){let o=Qt(e,r),d=o.fatal??n??!0;a.addIssue({code:"custom",...o,fatal:d})}});if(!i){let s=Qt(e,r),o=s.fatal??n??!0;a.addIssue({code:"custom",...s,fatal:o})}}):W.create()}var Rr={object:A.lazycreate},y;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(y||(y={}));var Ir=(t,e={message:`Input not instance of ${t.name}`})=>rn(n=>n instanceof t,e),an=Y.create,sn=ee.create,Ar=Ee.create,Pr=te.create,on=ne.create,Or=re.create,Nr=be.create,Mr=ae.create,Vr=ie.create,jr=W.create,Dr=H.create,Lr=D.create,$r=we.create,zr=Z.create,Fr=A.create,Ur=A.strictCreate,Kr=se.create,Gr=Ue.create,Hr=oe.create,Zr=z.create,Br=Ke.create,qr=Ce.create,Yr=Te.create,Wr=Ge.create,Jr=ce.create,Qr=ue.create,Xr=de.create,ea=le.create,ta=J.create,na=V.create,ra=N.create,aa=F.create,ia=V.createWithPreprocess,sa=Pe.create,oa=()=>an().optional(),ca=()=>sn().optional(),ua=()=>on().optional(),da={string:(t=>Y.create({...t,coerce:!0})),number:(t=>ee.create({...t,coerce:!0})),boolean:(t=>ne.create({...t,coerce:!0})),bigint:(t=>te.create({...t,coerce:!0})),date:(t=>re.create({...t,coerce:!0}))};var la=h;var He=c.object({page:c.object({title:c.string().nullable(),path:c.string(),search:c.string(),hash:c.string()}).strict(),referrer:c.string().nullable(),viewport:c.object({w:c.number(),h:c.number()}).strict().nullable().optional()}).strict(),cn=c.object({}).strict();var kt="aranova_tracking_last_fired_url",St=null,xt=!1;function pa(t){try{return typeof window>"u"?null:window.sessionStorage.getItem(t)}catch{return null}}function ma(t,e){try{if(typeof window>"u")return;window.sessionStorage.setItem(t,e)}catch{}}function fa(){if(!xt){xt=!0;let t=pa(kt);t!==null&&(St=t)}return St}function ga(t){St=t,xt=!0,ma(kt,t)}function un(t){return typeof window>"u"||typeof document>"u"?null:He.parse({page:{title:document.title||null,path:window.location.pathname,search:window.location.search,hash:window.location.hash},referrer:t!==void 0?t:document.referrer||null,viewport:{w:window.innerWidth,h:window.innerHeight}})}function Oe(t){if(typeof window>"u")return;let e=window.location.href,n=fa(),r=n!==null&&n!==e?n:null,a=typeof document<"u"&&document.referrer||null,s=un(r??a);t.trackEvent({eventType:"page_view",pageUrl:e,metadata:s}),e!==n&&ga(e)}function bt(t){if(typeof window>"u")return()=>{};function e(n){n.persisted&&Oe(t)}return window.addEventListener("pageshow",e),()=>{window.removeEventListener("pageshow",e)}}function wt(t,e={}){if(typeof window>"u"||typeof history>"u")return()=>{};let n=window.location.pathname+window.location.search;function r(){let u=window.location.pathname+window.location.search;u!==n&&(n=u,Oe(t))}let a=history.pushState.bind(history),i=history.replaceState.bind(history);function s(...u){a(...u),setTimeout(r,0)}function o(...u){i(...u),setTimeout(r,0)}function d(u){u.persisted&&Oe(t)}return history.pushState=s,history.replaceState=o,window.addEventListener("popstate",r),window.addEventListener("pageshow",d),e.skipInitial||Oe(t),()=>{history.pushState=a,history.replaceState=i,window.removeEventListener("popstate",r),window.removeEventListener("pageshow",d)}}function Ze(t){if(t instanceof RegExp)return t.source;if(Array.isArray(t))return t.map(Ze);if(t!==null&&typeof t=="object"){let e={};for(let[n,r]of Object.entries(t))e[n]=Ze(r);return e}return t}function Ct(t,e,n,r,a=null){let i=r?Object.keys(r.automatic):[],s=r?.manual?Object.keys(r.manual):[],o=null;if(r){let d={};for(let[u,p]of Object.entries(r.automatic)){let _=Ze(p);Object.keys(_).length>0&&(d[u]=_)}if(r.manual)for(let[u,p]of Object.entries(r.manual)){if(p===void 0)continue;let _=Ze(p);Object.keys(_).length>0&&(d[u]=_)}Object.keys(d).length>0&&(o=d)}return{sdk_version:e??"unknown",package_name:n,surface:t,triggers:{automatic:i,manual:s},trigger_config:o,configured_gtag_ids:a}}var ln=2e3,pn=10,Be=50,qe="X-Aranova-Api-Key",Ye="X-Aranova-Sdk-Version",We="X-Aranova-Sdk-Package",Je="X-Aranova-Sdk-Surface",Qe="X-Aranova-Sdk-Environment";function ya(t,e,n,r,a){return{surface:t,sdk_version:e,package_name:n,site_origin:typeof window>"u"?null:window.location.origin,page_title:typeof document>"u"?null:document.title||null,referrer:typeof document>"u"?null:document.referrer||null,environment:r,active_gtag_ids:a}}function _a(){if(typeof window>"u")return De();try{_e()}catch{}return he(ye)}function va(){try{return{state:B()}}catch{return null}}async function dn(t,e,n,r,a){if(typeof fetch=="function")try{await fetch(t,{method:"POST",headers:{"Content-Type":"application/json",[qe]:n,[Ye]:r.sdkVersion,[We]:r.packageName,[Je]:r.surface,[Qe]:r.environment},body:e,keepalive:a,credentials:"omit",mode:"cors"})}catch{}}function Tt(t){let e=t.flushIntervalMs??ln,n=Math.min(t.maxQueueSize??pn,Be),r=t.sdkVersion??null,a=t.packageName??null,i=t.environment??"production",s=t.activeGtagIds??null,d=`${t.endpoint.replace(/\/$/,"")}/events`,u={sdkVersion:r??"",packageName:a??"",surface:t.surface,environment:i},p=[],_=null,b=null,T=!1,S=ht(),C=ve(),L=C.id;typeof window<"u"&&(b=window.location.href);function Q(){let w=Ct(t.surface,r,a,t.triggers??null,s);p.push({event_type:"sdk_heartbeat",page_url:typeof window>"u"?null:window.location.href,metadata:w,occurred_at:new Date().toISOString()})}C.isNew&&Q();function zt(){let w=ve();w.isNew&&w.id!==L&&Q(),L=w.id;let P=_a(),Re=ya(t.surface,r,a,i,s);return{session_id:L,visitor_id:S,gclid:P.gclid,fbclid:P.fbclid,utm_source:P.utm_source,utm_medium:P.utm_medium,utm_campaign:P.utm_campaign,utm_term:P.utm_term,utm_content:P.utm_content,first_page:b,consent_state:va(),context:Re}}function Zn(){_!==null||T||(_=setTimeout(()=>{_=null,nt()},e))}function tt(){_!==null&&(clearTimeout(_),_=null)}async function nt(){if(p.length===0)return;let w=p.slice(0,Be);p=p.slice(w.length),tt();let P={session:zt(),events:w},Re=JSON.stringify(P);await dn(d,Re,t.apiKey,u,!1)}function Bn(w){if(T||!w||typeof w.eventType!="string"||w.eventType.length===0)return;let P=w.occurredAt instanceof Date?w.occurredAt.toISOString():typeof w.occurredAt=="string"?w.occurredAt:new Date().toISOString();p.push({event_type:w.eventType,page_url:w.pageUrl??(typeof window>"u"?null:window.location.href),metadata:w.metadata??null,occurred_at:P}),p.length>=n?nt():Zn()}function Me(){if(p.length===0)return;let w=p.slice(0,Be);p=p.slice(w.length),tt();let P={session:zt(),events:w},Re=JSON.stringify(P);dn(d,Re,t.apiKey,u,!0)}return typeof window<"u"&&(window.addEventListener("pagehide",Me),window.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Me()})),{trackEvent:Bn,flush:nt,getSessionId:()=>L,getVisitorId:()=>S,destroy:()=>{T=!0,p.length>0&&Me(),tt(),p=[],typeof window<"u"&&window.removeEventListener("pagehide",Me)}}}var mn=c.object({cta_name:c.string(),page:c.object({path:c.string()}).strict(),section:c.string().nullable().optional(),destination_url:c.string().nullable().optional()}).strict(),fn=c.object({}).strict();var Sa=c.object({automatic:c.array(c.string()),manual:c.array(c.string())}).strict(),gn=c.object({sdk_version:c.string(),package_name:c.string().nullable(),surface:c.enum(["next","react","script"]),triggers:Sa,trigger_config:c.record(c.string(),c.record(c.string(),c.unknown())).nullable().optional(),configured_gtag_ids:c.record(c.string(),c.string()).nullable().optional()}).strict(),hn=c.object({}).strict();var yn=c.object({form:c.object({id:c.string(),action:c.string().nullable()}).strict(),page:c.object({path:c.string()}).strict()}).strict(),_n=c.object({selector:c.string().optional()}).strict();var Et=c.lazy(()=>c.union([c.string(),c.number().finite(),c.boolean(),c.null(),c.array(Et),c.record(Et)])),vn=c.object({form:c.object({id:c.string(),action:c.string().nullable(),fields:c.array(c.object({name:c.string(),type:c.string(),label:c.string().nullable(),value:Et}).strict()).optional()}).strict(),page:c.object({path:c.string()}).strict()}).strict(),Sn=c.object({}).strict();var xn=c.object({page_count:c.number().int().min(2),page:c.object({path:c.string()}).strict()}).strict(),kn=c.object({pageThreshold:c.number().int().min(2)}).strict();var bn=c.object({phone_number:c.string(),page:c.object({path:c.string()}).strict(),section:c.string().nullable().optional()}).strict(),wn=c.object({}).strict();var Cn=c.object({depth_percent:c.number().int().min(1).max(100),page:c.object({path:c.string()}).strict()}).strict(),Tn=c.object({thresholds:c.array(c.number().int().min(1).max(100)).min(1)}).strict();var xa=["contact_page","about_page","services_page","booking_page","location_page","pricing_page","faq_page","testimonials_page"],En=c.enum(xa),Rn=c.object({page_name:En,page:c.object({path:c.string()}).strict()}).strict(),In=c.object({pages:c.array(c.object({name:En,pathPattern:c.custom(t=>t instanceof RegExp,{message:"pathPattern must be a RegExp"})}).strict()).min(1)}).strict();var An=c.object({duration_ms:c.number().int().nonnegative(),page:c.object({path:c.string()}).strict()}).strict(),Pn=c.object({thresholdSeconds:c.number().int().positive()}).strict();var Rt={page_view:{kind:"automatic",metadataSchema:He,configSchema:cn},time_on_site:{kind:"automatic",metadataSchema:An,configSchema:Pn},specific_page_visit:{kind:"automatic",metadataSchema:Rn,configSchema:In},scroll_depth:{kind:"automatic",metadataSchema:Cn,configSchema:Tn},multi_page_session:{kind:"automatic",metadataSchema:xn,configSchema:kn},form_start:{kind:"automatic",metadataSchema:yn,configSchema:_n},sdk_heartbeat:{kind:"automatic",metadataSchema:gn,configSchema:hn},form_submit:{kind:"manual",metadataSchema:vn,configSchema:Sn},phone_click:{kind:"manual",metadataSchema:bn,configSchema:wn},cta_click:{kind:"manual",metadataSchema:mn,configSchema:fn}},ts=Object.entries(Rt).filter(([,t])=>t.kind==="automatic").map(([t])=>t),ns=Object.entries(Rt).filter(([,t])=>t.kind==="manual").map(([t])=>t);function It(t){return Rt[t]}function At(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=e.thresholdSeconds*1e3,r=0,a=document.visibilityState==="visible"?Date.now():null,i=null,s=!1;function o(){s||(s=!0,t.trackEvent({eventType:"time_on_site",metadata:{duration_ms:n,page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}function d(){if(s||a===null)return;let _=n-r;if(_<=0){o();return}i=setTimeout(o,_)}function u(){i!==null&&(clearTimeout(i),i=null)}function p(){s||(document.visibilityState==="hidden"?(a!==null&&(r+=Date.now()-a,a=null),u()):(a=Date.now(),d()))}return document.addEventListener("visibilitychange",p),d(),()=>{u(),document.removeEventListener("visibilitychange",p)}}function Pt(t,e){if(typeof window>"u"||typeof history>"u")return()=>{};let{pages:n}=e,r=new Set;function a(){let u=window.location.pathname;for(let{name:p,pathPattern:_}of n){if(_.lastIndex=0,!_.test(u))continue;let b=`${p}:${u}`;r.has(b)||(r.add(b),t.trackEvent({eventType:"specific_page_visit",metadata:{page_name:p,page:{path:u}},pageUrl:window.location.href,occurredAt:null}))}}let i=history.pushState.bind(history),s=history.replaceState.bind(history);function o(...u){i(...u),setTimeout(a,0)}function d(...u){s(...u),setTimeout(a,0)}return history.pushState=o,history.replaceState=d,window.addEventListener("popstate",a),a(),()=>{history.pushState=i,history.replaceState=s,window.removeEventListener("popstate",a)}}function Ot(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=new Set(e.thresholds),r=new Set,a=window.location.pathname,i=null;function s(){let S=document.documentElement,C=window.scrollY||S.scrollTop,L=S.scrollHeight,Q=S.clientHeight;return L<=Q?100:Math.round((C+Q)/L*100)}function o(){let S=s();for(let C of n)S>=C&&!r.has(C)&&(r.add(C),t.trackEvent({eventType:"scroll_depth",metadata:{depth_percent:C,page:{path:a}},pageUrl:window.location.href,occurredAt:null}))}function d(){i===null&&(i=requestAnimationFrame(()=>{i=null,o()}))}function u(){let S=window.location.pathname;S!==a&&(a=S,r=new Set,setTimeout(o,0))}let p=history.pushState.bind(history),_=history.replaceState.bind(history);function b(...S){p(...S),setTimeout(u,0)}function T(...S){_(...S),setTimeout(u,0)}return history.pushState=b,history.replaceState=T,window.addEventListener("popstate",u),window.addEventListener("scroll",d,{passive:!0}),setTimeout(o,0),()=>{i!==null&&cancelAnimationFrame(i),history.pushState=p,history.replaceState=_,window.removeEventListener("popstate",u),window.removeEventListener("scroll",d)}}var Nt="aranova_tracking_mps_paths",On="aranova_tracking_mps_session",Mt="aranova_tracking_mps_fired";function ka(){try{return typeof window<"u"?window.sessionStorage:null}catch{return null}}function Vt(t,e){if(typeof window>"u"||typeof history>"u")return()=>{};let n=ka();if(!n)return()=>{};let{pageThreshold:r}=e,a="";function i(){try{let S=n.getItem(Nt);return S?new Set(JSON.parse(S)):new Set}catch{return new Set}}function s(S){try{n.setItem(Nt,JSON.stringify([...S]))}catch{}}function o(){let S=ve().id;n.getItem(On)!==S&&(n.setItem(On,S),n.removeItem(Nt),n.removeItem(Mt))}function d(){return n.getItem(Mt)==="1"}function u(){let S=window.location.pathname;if(S===a||(a=S,o(),d()))return;let C=i();C.add(S),s(C),C.size>=r&&(n.setItem(Mt,"1"),t.trackEvent({eventType:"multi_page_session",metadata:{page_count:C.size,page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}let p=history.pushState.bind(history),_=history.replaceState.bind(history);function b(...S){p(...S),setTimeout(u,0)}function T(...S){_(...S),setTimeout(u,0)}return history.pushState=b,history.replaceState=T,window.addEventListener("popstate",u),u(),()=>{history.pushState=p,history.replaceState=_,window.removeEventListener("popstate",u)}}function jt(t,e){if(typeof window>"u"||typeof document>"u")return()=>{};let n=e.selector??"form",r=new Set,a=window.location.pathname;function i(b){if(b.id)return`id:${b.id}`;let T=b.getAttribute("action");return T?`action:${T}`:`index:${Array.from(document.querySelectorAll(n)).indexOf(b)}`}function s(b){let T=b.target;if(!(T instanceof HTMLElement))return;let S=T.closest(n);if(!S||S.tagName!=="FORM")return;let C=i(S);r.has(C)||(r.add(C),t.trackEvent({eventType:"form_start",metadata:{form:{id:S.id||"",action:S.getAttribute("action")??null},page:{path:window.location.pathname}},pageUrl:window.location.href,occurredAt:null}))}function o(){let b=window.location.pathname;b!==a&&(a=b,r=new Set)}let d=history.pushState.bind(history),u=history.replaceState.bind(history);function p(...b){d(...b),setTimeout(o,0)}function _(...b){u(...b),setTimeout(o,0)}return history.pushState=p,history.replaceState=_,window.addEventListener("popstate",o),document.addEventListener("focusin",s),()=>{history.pushState=d,history.replaceState=u,window.removeEventListener("popstate",o),document.removeEventListener("focusin",s)}}var Xe=class extends Error{constructor(e,n){super(e),this.name="AranovaApiError",this.status=n.status,this.code=n.code,this.requestId=n.requestId}};function ba(t){let e={[qe]:t.apiKey};return t.sdkVersion&&(e[Ye]=t.sdkVersion),t.packageName&&(e[We]=t.packageName),t.surface&&(e[Je]=t.surface),t.environment&&(e[Qe]=t.environment),e}function wa(t,e){return`${t.replace(/\/$/,"")}${e}`}async function j(t,e,n,r){let a=ba(t);r!==void 0&&(a["Content-Type"]="application/json");let i=await fetch(wa(t.endpoint,n),{method:e,headers:a,body:r===void 0?void 0:JSON.stringify(r)});if(!i.ok){let s,o;try{let d=await i.json();if(d&&typeof d=="object"){let u=d;typeof u.detail=="string"&&(s=u.detail),typeof u.code=="string"&&(o=u.code)}}catch{}throw new Xe(s??i.statusText??"Request failed",{status:i.status,code:o,requestId:i.headers.get("x-request-id")??void 0})}if(i.status!==204)return await i.json()}function Nn(t){return{async record(e){let n=e.currency??t.defaultCurrency;if(!n)throw new Error("record: `currency` is required (pass it on the sale or set config.defaultCurrency)");let r={...e,currency:n,occurred_at:e.occurred_at??new Date().toISOString()};return j(t,"POST","/sales",r)},async list(e){let{cursor:n,limit:r,sort:a,order:i,want_total:s,...o}=e??{};return j(t,"POST","/sales/query",{filters:o,...r!==void 0?{limit:r}:{},...n!==void 0?{cursor:n}:{},...a!==void 0?{sort:a}:{},...i!==void 0?{order:i}:{},...s!==void 0?{want_total:s}:{}})},async summary(e){let{range:n,include_categories:r,include_deleted_services:a,top_n:i,since:s,until:o,timezone:d,granularity:u,compare_to:p,..._}=e;return j(t,"POST","/sales/summary",{filters:_,...n!==void 0?{range:n}:{},...r!==void 0?{include_categories:r}:{},...a!==void 0?{include_deleted_services:a}:{},...i!==void 0?{top_n:i}:{},...s!==void 0?{since:s}:{},...o!==void 0?{until:o}:{},...d!==void 0?{timezone:d}:{},...u!==void 0?{granularity:u}:{},...p!==void 0?{compare_to:p}:{}})},async get(e){return j(t,"GET",`/sales/${e}`)},async update(e,n){return j(t,"PATCH",`/sales/${e}`,n)},async delete(e){await j(t,"DELETE",`/sales/${e}`)},customers:{async list(e){let{segment:n,sort:r,order:a,cursor:i,limit:s,want_total:o,...d}=e??{};return j(t,"POST","/customers/query",{filters:d,...n!==void 0?{segment:n}:{},...r!==void 0?{sort:r}:{},...a!==void 0?{order:a}:{},...i!==void 0?{cursor:i}:{},...s!==void 0?{limit:s}:{},...o!==void 0?{want_total:o}:{}})},async get(e,n){let r=new URLSearchParams;n?.include_sales!==void 0&&r.set("include_sales",String(n.include_sales)),n?.limit!==void 0&&r.set("limit",String(n.limit)),n?.cursor!=null&&r.set("cursor",n.cursor);let a=r.toString();return j(t,"GET",`/customers/${encodeURIComponent(e)}${a?`?${a}`:""}`)},async summary(e){let{range:n,since:r,until:a,timezone:i,compare_to:s,...o}=e??{};return j(t,"POST","/customers/summary",{filters:o,...n!==void 0?{range:n}:{},...r!==void 0?{since:r}:{},...a!==void 0?{until:a}:{},...i!==void 0?{timezone:i}:{},...s!==void 0?{compare_to:s}:{}})}},business:{async config(){return j(t,"GET","/business/config")}}}}var Ca=["USD","CAD"],Ta=["production","development"],Mn=c.enum(Ca),Ne=c.number().int().nonnegative(),Ea=c.string().regex(/^\d+(\.\d{1,3})?$/),Vn=c.record(c.unknown()),jn=c.object({external_item_id:c.string().nullable().optional(),name:c.string().nullable().optional(),category:c.string().nullable().optional(),quantity:Ea,unit_price_cents:Ne,unit_cost_cents:Ne.nullable().optional()}).strict(),Dn=c.object({service:c.string(),amount_cents:Ne}).strict(),Ln=c.string().max(200),$n=c.string().max(64),zn=c.string().max(320).email();function Fn(t,e,{requireAmount:n}){if(t.services!=null){t.service!=null&&e.addIssue({code:c.ZodIssueCode.custom,message:"pass either `service` or `services`, not both",path:["services"]}),t.services.length===0&&e.addIssue({code:c.ZodIssueCode.custom,message:"`services` must not be empty",path:["services"]});let r=t.services.map(a=>a.service);if(new Set(r).size!==r.length&&e.addIssue({code:c.ZodIssueCode.custom,message:"`services` must not list the same service more than once",path:["services"]}),t.amount_total_cents!=null){let a=t.services.reduce((i,s)=>i+s.amount_cents,0);t.amount_total_cents!==a&&e.addIssue({code:c.ZodIssueCode.custom,message:"amount_total_cents must equal the sum of the services amounts (omit it to derive it automatically)",path:["amount_total_cents"]})}}else n&&t.amount_total_cents==null&&e.addIssue({code:c.ZodIssueCode.custom,message:"amount_total_cents is required unless `services` is provided",path:["amount_total_cents"]})}var Ss=c.object({external_id:c.string().nullable().optional(),description:c.string().nullable().optional(),service:c.string().nullable().optional(),services:c.array(Dn).nullable().optional(),currency:Mn,amount_total_cents:Ne.nullable().optional(),occurred_at:c.string().datetime(),environment:c.enum(Ta).default("production"),items:c.array(jn).default([]),metadata:Vn.nullable().optional(),customer_name:Ln.nullable().optional(),customer_phone:$n.nullable().optional(),customer_email:zn.nullable().optional()}).strict().superRefine((t,e)=>Fn(t,e,{requireAmount:!0})),xs=c.object({description:c.string().nullable().optional(),service:c.string().nullable().optional(),services:c.array(Dn).nullable().optional(),currency:Mn.optional(),amount_total_cents:Ne.optional(),occurred_at:c.string().datetime().optional(),items:c.array(jn).optional(),metadata:Vn.nullable().optional(),customer_name:Ln.nullable().optional(),customer_phone:$n.nullable().optional(),customer_email:zn.nullable().optional()}).strict().superRefine((t,e)=>Fn(t,e,{requireAmount:!1}));var Dt="aranova-tracking-consent-banner";function Ia(){return he(ye)}function Kn(){document.querySelector(`#${Dt}`)?.remove()}function Gn(t,e,n){let r=document.createElement("button");return r.type="button",r.textContent=t,Object.assign(r.style,{borderRadius:"6px",padding:"10px 16px",fontSize:"14px",fontWeight:"600",cursor:"pointer",border:"1px solid #d1d5db",background:"#ffffff",color:"#374151"},n),r.addEventListener("click",e),r}function Aa(){if(typeof document>"u"||B()!=="pending"||document.querySelector(`#${Dt}`))return;let t=document.createElement("div");t.id=Dt,Object.assign(t.style,{position:"fixed",left:"0",right:"0",bottom:"0",zIndex:"2147483647",background:"#ffffff",borderTop:"1px solid #e5e7eb",boxShadow:"0 -4px 20px rgba(0, 0, 0, 0.12)",padding:"16px",fontFamily:"Inter, system-ui, sans-serif"});let e=document.createElement("div");Object.assign(e.style,{maxWidth:"960px",margin:"0 auto",display:"flex",flexDirection:"column",gap:"12px"});let n=document.createElement("p");n.textContent="We use cookies to understand ad performance and improve how our marketing works across visits. You can accept or decline this tracking.",Object.assign(n.style,{margin:"0",color:"#374151",fontSize:"14px",lineHeight:"1.5"});let r=document.createElement("div");Object.assign(r.style,{display:"flex",gap:"8px",flexWrap:"wrap"});let a=Gn("Decline",()=>{ge("denied"),Kn()},{}),i=Gn("Accept",()=>{ge("granted"),Kn()},{background:"#111827",color:"#ffffff",border:"1px solid #111827"});r.append(a),r.append(i),e.append(n),e.append(r),t.append(e),document.body.append(t)}var O=null,Lt=null,U=[],et=null;function Pa(){for(let t=U.length-1;t>=0;t--)U[t]();U=[],O!==null&&(O.destroy(),O=null),Lt=null,et=null}function Hn(t={}){if(typeof window>"u")return;window.AranovaTracking=$t;let{apiKey:e,endpoint:n,autoCaptureTrackingParams:r=!0,cookieMaxAgeSeconds:a=7776e3,gtagId:i,gtagIds:s,environment:o,renderConsentBanner:d=!0,triggers:u}=t;if(r&&_e(window.location.href,a),s&&Object.keys(s).length>0?lt(s):i&&dt(i),d&&Aa(),Pa(),!e||!n){(e||n)&&console.warn("[AranovaTracking] init() requires both `apiKey` and `endpoint` to enable first-party event ingest. Page-view events will not be sent.");return}et=Nn({apiKey:e,endpoint:n});let p=u??{automatic:{page_view:{}},manual:{}};Lt=p;let _=s?Object.fromEntries(Object.entries(s).filter(Q=>Q[1]!=null)):i?{default:i}:void 0;O=Tt({apiKey:e,endpoint:n,surface:"script",packageName:"@aranova/tracking-browser",sdkVersion:Ut,triggers:p,environment:o,activeGtagIds:_}),U.push(wt(O)),U.push(bt(O));let b=p.automatic.time_on_site;b&&U.push(At(O,b));let T=p.automatic.specific_page_visit;T&&U.push(Pt(O,T));let S=p.automatic.scroll_depth;S&&U.push(Ot(O,S));let C=p.automatic.multi_page_session;C&&U.push(Vt(O,C));let L=p.automatic.form_start;L&&U.push(jt(O,L))}function Oa(t,e){if(O===null){console.warn("[AranovaTracking] trackEvent called before init({ apiKey, endpoint })");return}let n=Lt;if(n===null){console.warn("[AranovaTracking] trackEvent called but no trigger registry was passed to init()");return}let r=n.manual??{};if(!(t in r)){console.warn(`[AranovaTracking] trackEvent: event "${t}" is not registered as a manual trigger. Register it under \`triggers.manual\` in init().`);return}try{It(t).metadataSchema.parse(e)}catch(a){console.warn(`[AranovaTracking] trackEvent: metadata for "${t}" failed schema validation`,a);return}O.trackEvent({eventType:t,metadata:e,pageUrl:null,occurredAt:null})}function Na(){if(et===null)throw new Error("[AranovaTracking] sales() called before init({ apiKey, endpoint })");return et}var $t={init:Hn,captureTrackingParams:()=>_e(),getTrackingParams:Ia,getConsentState:B,setConsentState:ge,trackEvent:Oa,sales:Na};typeof window<"u"&&(window.AranovaTracking=$t);var Ma=$t;return Qn(Va);})();
|
|
2
2
|
//# sourceMappingURL=aranova-tracking.global.js.map
|