@walkeros/web-destination-gtag 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- var t=Object.defineProperty,e=(e,a)=>{for(var n in a)t(e,n,{get:a[n],enumerable:!0})},a=new Set;function n(t,e="https://www.googletagmanager.com/gtag/js?id=",n=globalThis.document){if(a.has(t))return;const o=n.createElement("script");o.src=e+t,n.head.appendChild(o),a.add(t)}function o(t){const e=t;return e.dataLayer=e.dataLayer||[],e.gtag||(e.gtag=function(){e.dataLayer.push(arguments)}),e.gtag}import{getEnv as r}from"@walkeros/web-core";var i={merge:!0,shallow:!0,extend:!0};function c(t,e={},a={}){a={...i,...a};const n=Object.entries(e).reduce((e,[n,o])=>{const r=t[n];return a.merge&&Array.isArray(r)&&Array.isArray(o)?e[n]=o.reduce((t,e)=>t.includes(e)?t:[...t,e],[...r]):(a.extend||n in t)&&(e[n]=o),e},{});return a.shallow?{...t,...n}:(Object.assign(t,n),t)}function s(t){return Array.isArray(t)}function d(t){return void 0!==t}function u(t){return"object"==typeof t&&null!==t&&!s(t)&&"[object Object]"===Object.prototype.toString.call(t)}function l(t){return"string"==typeof t}function g(t,e="",a){const n=e.split(".");let o=t;for(let t=0;t<n.length;t++){const e=n[t];if("*"===e&&s(o)){const e=n.slice(t+1).join("."),r=[];for(const t of o){const n=g(t,e,a);r.push(n)}return r}if(o=o instanceof Object?o[e]:void 0,!o)break}return d(o)?o:a}function p(t="entity action",e={}){const a=e.timestamp||(new Date).setHours(0,13,37,0),n={data:{id:"ers",name:"Everyday Ruck Snack",color:"black",size:"l",price:420}},o={data:{id:"cc",name:"Cool Cap",size:"one size",price:42}};return function(t={}){var e;const a=t.timestamp||(new Date).setHours(0,13,37,0),n=t.group||"gr0up",o=t.count||1,r=c({name:"entity action",data:{string:"foo",number:1,boolean:!0,array:[0,"text",!1],not:void 0},context:{dev:["test",1]},globals:{lang:"elb"},custom:{completely:"random"},user:{id:"us3r",device:"c00k13",session:"s3ss10n"},nested:[{entity:"child",data:{is:"subordinated"},nested:[],context:{element:["child",0]}}],consent:{functional:!0},id:`${a}-${n}-${o}`,trigger:"test",entity:"entity",action:"action",timestamp:a,timing:3.14,group:n,count:o,version:{source:"0.2.0",tagging:1},source:{type:"web",id:"https://localhost:80",previous_id:"http://remotehost:9001"}},t,{merge:!1});if(t.name){const[a,n]=null!=(e=t.name.split(" "))?e:[];a&&n&&(r.entity=a,r.action=n)}return r}({...{"cart view":{data:{currency:"EUR",value:2*n.data.price},context:{shopping:["cart",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",data:{...n.data,quantity:2},context:{shopping:["cart",0]},nested:[]}],trigger:"load"},"checkout view":{data:{step:"payment",currency:"EUR",value:n.data.price+o.data.price},context:{shopping:["checkout",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",...n,context:{shopping:["checkout",0]},nested:[]},{entity:"product",...o,context:{shopping:["checkout",0]},nested:[]}],trigger:"load"},"order complete":{data:{id:"0rd3r1d",currency:"EUR",shipping:5.22,taxes:73.76,total:555},context:{shopping:["complete",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",...n,context:{shopping:["complete",0]},nested:[]},{entity:"product",...o,context:{shopping:["complete",0]},nested:[]},{entity:"gift",data:{name:"Surprise"},context:{shopping:["complete",0]},nested:[]}],trigger:"load"},"page view":{data:{domain:"www.example.com",title:"walkerOS documentation",referrer:"https://www.elbwalker.com/",search:"?foo=bar",hash:"#hash",id:"/docs/"},globals:{pagegroup:"docs"},trigger:"load"},"product add":{...n,context:{shopping:["intent",0]},globals:{pagegroup:"shop"},nested:[],trigger:"click"},"product view":{...n,context:{shopping:["detail",0]},globals:{pagegroup:"shop"},nested:[],trigger:"load"},"product visible":{data:{...n.data,position:3,promo:!0},context:{shopping:["discover",0]},globals:{pagegroup:"shop"},nested:[],trigger:"load"},"promotion visible":{data:{name:"Setting up tracking easily",position:"hero"},context:{ab_test:["engagement",0]},globals:{pagegroup:"homepage"},trigger:"visible"},"session start":{data:{id:"s3ss10n",start:a,isNew:!0,count:1,runs:1,isStart:!0,storage:!0,referrer:"",device:"c00k13"},user:{id:"us3r",device:"c00k13",session:"s3ss10n",hash:"h4sh",address:"street number",email:"user@example.com",phone:"+49 123 456 789",userAgent:"Mozilla...",browser:"Chrome",browserVersion:"90",deviceType:"desktop",language:"de-DE",country:"DE",region:"HH",city:"Hamburg",zip:"20354",timezone:"Berlin",os:"walkerOS",osVersion:"1.0",screenSize:"1337x420",ip:"127.0.0.0",internal:!0,custom:"value"}}}[t],...e,name:t})}function m(t){return function(t){return"boolean"==typeof t}(t)||l(t)||function(t){return"number"==typeof t&&!Number.isNaN(t)}(t)||!d(t)||s(t)&&t.every(m)||u(t)&&Object.values(t).every(m)}function v(t){return m(t)?t:void 0}function y(t,e,a){return async function(...n){try{return await t(...n)}catch(t){if(!e)return;return await e(t)}finally{await(null==a?void 0:a())}}}async function f(t,e={},a={}){var n;if(!d(t))return;const o=u(t)&&t.consent||a.consent||(null==(n=a.collector)?void 0:n.consent),r=s(e)?e:[e];for(const e of r){const n=await y(w)(t,e,{...a,consent:o});if(d(n))return n}}async function w(t,e,a={}){const{collector:n,consent:o}=a;return(s(e)?e:[e]).reduce(async(e,r)=>{const i=await e;if(i)return i;const c=l(r)?{key:r}:r;if(!Object.keys(c).length)return;const{condition:u,consent:p,fn:m,key:h,loop:b,map:_,set:E,validate:k,value:x}=c;if(u&&!await y(u)(t,r,n))return;if(p&&!function(t,e={},a={}){const n={...e,...a},o={};let r=void 0===t;return Object.keys(n).forEach(e=>{n[e]&&(o[e]=!0,t&&t[e]&&(r=!0))}),!!r&&o}(p,o))return x;let j=d(x)?x:t;if(m&&(j=await y(m)(t,r,a)),h&&(j=g(t,h,x)),b){const[e,n]=b,o="this"===e?[t]:await f(t,e,a);s(o)&&(j=(await Promise.all(o.map(t=>f(t,n,a)))).filter(d))}else _?j=await Object.entries(_).reduce(async(e,[n,o])=>{const r=await e,i=await f(t,o,a);return d(i)&&(r[n]=i),r},Promise.resolve({})):E&&(j=await Promise.all(E.map(e=>w(t,e,a))));k&&!await y(k)(j)&&(j=void 0);const O=v(j);return d(O)?O:v(x)},Promise.resolve(void 0))}async function h(t,e,a,n,o){const r=u(e)?e:{},i=a.data?await f(t,a.data,{collector:o}):{},s=(null==n?void 0:n.data)?await f(t,n.data,{collector:o}):{},d=u(i)?i:{},l=u(s)?s:{};return c(c(r,d),l)}import{getEnv as b}from"@walkeros/web-core";function _(t,e,a={},n,o){const{window:r}=b(o);if(!e.measurementId)return;const i=u(n)?n:{},c=function(t,e){const a={};return e.includes("all")&&(e=["context","data","event","globals","source","user","version"]),e.forEach(e=>{let n=t[e]||{};"event"==e&&(n={id:t.id,timing:t.timing,trigger:t.trigger,entity:t.entity,action:t.action,group:t.group,count:t.count}),Object.entries(n).forEach(([t,n])=>{"context"==e&&(n=n[0]),a[`${e}_${t}`]=n})}),a}(t,a.include||e.include||["data"]),s={...c,...i};let d=t.name;!1!==e.snakeCase&&(d=function(t,e=!0){return e?t.replace(/\s+/g,"_").toLowerCase():t}(d)),s.send_to=e.measurementId,e.debug&&(s.debug_mode=!0);(0,r.gtag)("event",d,s)}import{getEnv as E}from"@walkeros/web-core";import{getEnv as k}from"@walkeros/web-core";import{getEnv as x}from"@walkeros/web-core";var j="dataLayer";function O(t,e,a){const{window:n,document:o}=x(a),{containerId:r,dataLayer:i,domain:c}=t,s=i||j;s===j?n.dataLayer=n.dataLayer||[]:n[s]=n[s]||[];n[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"}),e&&r&&function(t,e,a,n=globalThis.document){const o=a!=j?"&l="+a:"",r=n.createElement("script");r.src=e+t+o,n.head.appendChild(r)}(r,c||"https://www.googletagmanager.com/gtm.js?id=",s,o)}import{getEnv as X}from"@walkeros/web-core";import{getEnv as A}from"@walkeros/web-core";var I={},R={};e(R,{env:()=>C,events:()=>q,mapping:()=>$});var C={};e(C,{init:()=>L,push:()=>U,simulation:()=>S});var L={window:{gtag:void 0,dataLayer:[]},document:{createElement:()=>({src:"",setAttribute:()=>{},removeAttribute:()=>{}}),head:{appendChild:()=>{}}}},U={window:{gtag:Object.assign(()=>{},{}),dataLayer:[]},document:{createElement:()=>({src:"",setAttribute:()=>{},removeAttribute:()=>{}}),head:{appendChild:()=>{}}}},S=["call:window.gtag"],q={};function z(){const t=p("order complete");return["event","purchase",{transaction_id:t.data.id,value:t.data.total,tax:t.data.taxes,shipping:t.data.shipping,currency:"EUR",items:t.nested.filter(t=>"product"===t.entity).map(t=>({item_id:t.data.id,item_name:t.data.name,quantity:1})),send_to:"G-XXXXXX-1"}]}function P(){const t=p("product add");return["event","add_to_cart",{currency:"EUR",value:t.data.price,items:[{item_id:t.data.id,item_variant:t.data.color,quantity:1}],send_to:"G-XXXXXX-1"}]}function D(){const t=p("order complete");return["event","conversion",{send_to:"AW-XXXXXXXXX/CONVERSION_LABEL",currency:"EUR",value:t.data.total,transaction_id:t.data.id}]}function N(){const t=p("product view");return{event:"product_view",product_id:t.data.id,product_name:t.data.name,product_category:t.data.category,value:t.data.price,currency:"EUR"}}e(q,{adsConversion:()=>D,ga4AddToCart:()=>P,ga4Purchase:()=>z,gtmEvent:()=>N});var $={};e($,{adsConversion:()=>V,combinedPurchase:()=>G,config:()=>M,ga4AddToCart:()=>H,ga4Purchase:()=>T,gtmProductView:()=>B});var T={name:"purchase",settings:{ga4:{include:["data","context"]}},data:{map:{transaction_id:"data.id",value:"data.total",tax:"data.taxes",shipping:"data.shipping",currency:{key:"data.currency",value:"EUR"},items:{loop:["nested",{condition:t=>u(t)&&"product"===t.entity,map:{item_id:"data.id",item_name:"data.name",quantity:{key:"data.quantity",value:1}}}]}}}},H={name:"add_to_cart",settings:{ga4:{include:["data"]}},data:{map:{currency:{value:"EUR",key:"data.currency"},value:"data.price",items:{loop:["this",{map:{item_id:"data.id",item_variant:"data.color",quantity:{value:1,key:"data.quantity"}}}]}}}},V={name:"CONVERSION_LABEL",settings:{ads:{}},data:{map:{value:"data.total",currency:{value:"EUR",key:"data.currency"},transaction_id:"data.id"}}},B={name:"product_view",settings:{gtm:{}},data:{map:{product_id:"data.id",product_name:"data.name",product_category:"data.category",value:"data.price",currency:{value:"EUR",key:"data.currency"}}}},G={name:"purchase",settings:{ga4:{include:["data"]},ads:{},gtm:{}},data:{map:{transaction_id:"data.id",value:"data.total",currency:{value:"EUR",key:"data.currency"},items:{loop:["nested",{condition:t=>u(t)&&"product"===t.entity,map:{item_id:"data.id",item_name:"data.name",quantity:{value:1,key:"data.quantity"}}}]}}}},M={order:{complete:G},product:{add:H,view:B}},W=!1;function F(){W=!1}var J={marketing:["ad_storage","ad_user_data","ad_personalization"],functional:["analytics_storage"]},K={type:"google-gtag",config:{settings:{}},init({config:t,env:e}){const{settings:a={},loadScript:i}=t,{ga4:c,ads:s,gtm:d}=a;return(null==c?void 0:c.measurementId)&&function(t,e,a){const{window:i,document:c}=r(a),{measurementId:s,transport_url:d,server_container_url:u,pageview:l}=t;if(!s)return;e&&n(s,void 0,c),o(i);const g={};d&&(g.transport_url=d),u&&(g.server_container_url=u),!1===l&&(g.send_page_view=!1);const p=i.gtag;p("js",new Date),p("config",s,g)}(c,i,e),(null==s?void 0:s.conversionId)&&function(t,e,a){const{window:r,document:i}=E(a),{conversionId:c}=t;if(!c)return;t.currency||(t.currency="EUR"),e&&n(c,void 0,i),o(r);const s=r.gtag;s("js",new Date),s("config",c)}(s,i,e),(null==d?void 0:d.containerId)&&O(d,i,e),!!((null==c?void 0:c.measurementId)||(null==s?void 0:s.conversionId)||(null==d?void 0:d.containerId))&&t},async push(t,{config:e,mapping:a={},data:n,env:o,collector:r}){const{settings:i={}}=e,{ga4:c,ads:s,gtm:d}=i,l=a.settings||{},g=await h(t,n,e,c,r),p=await h(t,n,e,s,r),m=await h(t,n,e,d,r);(null==c?void 0:c.measurementId)&&_(t,c,l.ga4,g,o),(null==s?void 0:s.conversionId)&&a.name&&function(t,e,a={},n,o,r){const{conversionId:i,currency:c}=e,s=u(n)?n:{},d=a.label||o;if(!d)return;const l={send_to:`${i}/${d}`,currency:c||"EUR",...s},{window:g}=k(r);(0,g.gtag)("event","conversion",l)}(0,s,l.ads,p,a.name,o),(null==d?void 0:d.containerId)&&function(t,e,a={},n,o){const{window:r}=X(o),i={event:t.name};r.dataLayer.push({...i,...u(n)?n:t})}(t,0,l.gtm,m,o)},on(t,e){var a;if("consent"!==t||!e)return;const n=e,r=(null==(a=this.config)?void 0:a.settings)||{},{como:i=!0}=r;if(!i)return;const{window:c}=A(this.env),s=o(c);if(!s)return;const d=!0===i?J:i;if(!W){const t=new Set;if(Object.values(d).forEach(e=>{(Array.isArray(e)?e:[e]).forEach(e=>t.add(e))}),t.size>0){const e={};t.forEach(t=>{e[t]="denied"}),s("consent","default",e)}W=!0}const u={};Object.entries(n).forEach(([t,e])=>{const a=d[t];if(!a)return;const n=Array.isArray(a)?a:[a],o=e?"granted":"denied";n.forEach(t=>{u[t]=o})}),0!==Object.keys(u).length&&s("consent","update",u)}},Q=K;export{I as DestinationGtag,Q as default,K as destinationGtag,R as examples,F as resetConsentState};//# sourceMappingURL=index.mjs.map
1
+ var e=Object.defineProperty,t=(t,a)=>{for(var n in a)e(t,n,{get:a[n],enumerable:!0})},a=new Set;function n(e,t="https://www.googletagmanager.com/gtag/js?id=",n=globalThis.document){if(a.has(e))return;const r=n.createElement("script");r.src=t+e,n.head.appendChild(r),a.add(e)}function r(e){const t=e;return t.dataLayer=t.dataLayer||[],t.gtag||(t.gtag=function(){t.dataLayer.push(arguments)}),t.gtag}import{getEnv as s}from"@walkeros/web-core";var i,o,d,c={};t(c,{BRAND:()=>Ve,DIRTY:()=>O,EMPTY_PATH:()=>b,INVALID:()=>A,NEVER:()=>Mt,OK:()=>T,ParseStatus:()=>Z,Schema:()=>R,ZodAny:()=>he,ZodArray:()=>ve,ZodBigInt:()=>de,ZodBoolean:()=>ce,ZodBranded:()=>Be,ZodCatch:()=>De,ZodDate:()=>ue,ZodDefault:()=>Fe,ZodDiscriminatedUnion:()=>we,ZodEffects:()=>Me,ZodEnum:()=>Ie,ZodError:()=>h,ZodFirstPartyTypeKind:()=>He,ZodFunction:()=>je,ZodIntersection:()=>Ae,ZodIssueCode:()=>p,ZodLazy:()=>Ne,ZodLiteral:()=>Ee,ZodMap:()=>Se,ZodNaN:()=>Ue,ZodNativeEnum:()=>$e,ZodNever:()=>ge,ZodNull:()=>me,ZodNullable:()=>ze,ZodNumber:()=>oe,ZodObject:()=>be,ZodOptional:()=>Le,ZodParsedType:()=>u,ZodPipeline:()=>qe,ZodPromise:()=>Re,ZodReadonly:()=>Ke,ZodRecord:()=>Te,ZodSchema:()=>R,ZodSet:()=>Pe,ZodString:()=>se,ZodSymbol:()=>le,ZodTransformer:()=>Me,ZodTuple:()=>Oe,ZodType:()=>R,ZodUndefined:()=>pe,ZodUnion:()=>ke,ZodUnknown:()=>fe,ZodVoid:()=>ye,addIssueToContext:()=>k,any:()=>dt,array:()=>pt,bigint:()=>at,boolean:()=>nt,coerce:()=>Rt,custom:()=>Xe,date:()=>rt,datetimeRegex:()=>te,defaultErrorMap:()=>f,discriminatedUnion:()=>gt,effect:()=>St,enum:()=>At,function:()=>xt,getErrorMap:()=>v,getParsedType:()=>l,instanceof:()=>Ye,intersection:()=>yt,isAborted:()=>S,isAsync:()=>N,isDirty:()=>P,isValid:()=>j,late:()=>Ge,lazy:()=>wt,literal:()=>Zt,makeIssue:()=>_,map:()=>bt,nan:()=>tt,nativeEnum:()=>Ot,never:()=>ut,null:()=>ot,nullable:()=>jt,number:()=>et,object:()=>mt,objectUtil:()=>d,oboolean:()=>$t,onumber:()=>It,optional:()=>Pt,ostring:()=>Ct,pipeline:()=>Et,preprocess:()=>Nt,promise:()=>Tt,quotelessJson:()=>m,record:()=>_t,set:()=>kt,setErrorMap:()=>y,strictObject:()=>ht,string:()=>Qe,symbol:()=>st,transformer:()=>St,tuple:()=>vt,undefined:()=>it,union:()=>ft,unknown:()=>ct,util:()=>i,void:()=>lt}),(o=i||(i={})).assertEqual=e=>{},o.assertIs=function(e){},o.assertNever=function(e){throw new Error},o.arrayToEnum=e=>{const t={};for(const a of e)t[a]=a;return t},o.getValidEnumValues=e=>{const t=o.objectKeys(e).filter(t=>"number"!=typeof e[e[t]]),a={};for(const n of t)a[n]=e[n];return o.objectValues(a)},o.objectValues=e=>o.objectKeys(e).map(function(t){return e[t]}),o.objectKeys="function"==typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.push(a);return t},o.find=(e,t)=>{for(const a of e)if(t(a))return a},o.isInteger="function"==typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"==typeof e&&Number.isFinite(e)&&Math.floor(e)===e,o.joinValues=function(e,t=" | "){return e.map(e=>"string"==typeof e?`'${e}'`:e).join(t)},o.jsonStringifyReplacer=(e,t)=>"bigint"==typeof t?t.toString():t,(d||(d={})).mergeShapes=(e,t)=>({...e,...t});var u=i.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),l=e=>{switch(typeof e){case"undefined":return u.undefined;case"string":return u.string;case"number":return Number.isNaN(e)?u.nan:u.number;case"boolean":return u.boolean;case"function":return u.function;case"bigint":return u.bigint;case"symbol":return u.symbol;case"object":return Array.isArray(e)?u.array:null===e?u.null:e.then&&"function"==typeof e.then&&e.catch&&"function"==typeof e.catch?u.promise:"undefined"!=typeof Map&&e instanceof Map?u.map:"undefined"!=typeof Set&&e instanceof Set?u.set:"undefined"!=typeof Date&&e instanceof Date?u.date:u.object;default:return u.unknown}},p=i.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"]),m=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),h=class e extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){const t=e||function(e){return e.message},a={_errors:[]},n=e=>{for(const r of e.issues)if("invalid_union"===r.code)r.unionErrors.map(n);else if("invalid_return_type"===r.code)n(r.returnTypeError);else if("invalid_arguments"===r.code)n(r.argumentsError);else if(0===r.path.length)a._errors.push(t(r));else{let e=a,n=0;for(;n<r.path.length;){const a=r.path[n];n===r.path.length-1?(e[a]=e[a]||{_errors:[]},e[a]._errors.push(t(r))):e[a]=e[a]||{_errors:[]},e=e[a],n++}}};return n(this),a}static assert(t){if(!(t instanceof e))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,i.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(e=e=>e.message){const t={},a=[];for(const n of this.issues)if(n.path.length>0){const a=n.path[0];t[a]=t[a]||[],t[a].push(e(n))}else a.push(e(n));return{formErrors:a,fieldErrors:t}}get formErrors(){return this.flatten()}};h.create=e=>new h(e);var f=(e,t)=>{let a;switch(e.code){case p.invalid_type:a=e.received===u.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case p.invalid_literal:a=`Invalid literal value, expected ${JSON.stringify(e.expected,i.jsonStringifyReplacer)}`;break;case p.unrecognized_keys:a=`Unrecognized key(s) in object: ${i.joinValues(e.keys,", ")}`;break;case p.invalid_union:a="Invalid input";break;case p.invalid_union_discriminator:a=`Invalid discriminator value. Expected ${i.joinValues(e.options)}`;break;case p.invalid_enum_value:a=`Invalid enum value. Expected ${i.joinValues(e.options)}, received '${e.received}'`;break;case p.invalid_arguments:a="Invalid function arguments";break;case p.invalid_return_type:a="Invalid function return type";break;case p.invalid_date:a="Invalid date";break;case p.invalid_string:"object"==typeof e.validation?"includes"in e.validation?(a=`Invalid input: must include "${e.validation.includes}"`,"number"==typeof e.validation.position&&(a=`${a} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?a=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?a=`Invalid input: must end with "${e.validation.endsWith}"`:i.assertNever(e.validation):a="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case p.too_small:a="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type||"bigint"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case p.too_big:a="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case p.custom:a="Invalid input";break;case p.invalid_intersection_types:a="Intersection results could not be merged";break;case p.not_multiple_of:a=`Number must be a multiple of ${e.multipleOf}`;break;case p.not_finite:a="Number must be finite";break;default:a=t.defaultError,i.assertNever(e)}return{message:a}},g=f;function y(e){g=e}function v(){return g}var _=e=>{const{data:t,path:a,errorMaps:n,issueData:r}=e,s=[...a,...r.path||[]],i={...r,path:s};if(void 0!==r.message)return{...r,path:s,message:r.message};let o="";const d=n.filter(e=>!!e).slice().reverse();for(const e of d)o=e(i,{data:t,defaultError:o}).message;return{...r,path:s,message:o}},b=[];function k(e,t){const a=v(),n=_({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,a,a===f?void 0:f].filter(e=>!!e)});e.common.issues.push(n)}var x,w,Z=class e{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const a=[];for(const n of t){if("aborted"===n.status)return A;"dirty"===n.status&&e.dirty(),a.push(n.value)}return{status:e.value,value:a}}static async mergeObjectAsync(t,a){const n=[];for(const e of a){const t=await e.key,a=await e.value;n.push({key:t,value:a})}return e.mergeObjectSync(t,n)}static mergeObjectSync(e,t){const a={};for(const n of t){const{key:t,value:r}=n;if("aborted"===t.status)return A;if("aborted"===r.status)return A;"dirty"===t.status&&e.dirty(),"dirty"===r.status&&e.dirty(),"__proto__"===t.value||void 0===r.value&&!n.alwaysSet||(a[t.value]=r.value)}return{status:e.value,value:a}}},A=Object.freeze({status:"aborted"}),O=e=>({status:"dirty",value:e}),T=e=>({status:"valid",value:e}),S=e=>"aborted"===e.status,P=e=>"dirty"===e.status,j=e=>"valid"===e.status,N=e=>"undefined"!=typeof Promise&&e instanceof Promise;(w=x||(x={})).errToObj=e=>"string"==typeof e?{message:e}:e||{},w.toString=e=>"string"==typeof e?e:null==e?void 0:e.message;var E=class{constructor(e,t,a,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=a,this._key=n}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}},C=(e,t)=>{if(j(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new h(e.common.issues);return this._error=t,this._error}}};function I(e){if(!e)return{};const{errorMap:t,invalid_type_error:a,required_error:n,description:r}=e;if(t&&(a||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:r};return{errorMap:(t,r)=>{var s,i;const{message:o}=e;return"invalid_enum_value"===t.code?{message:null!=o?o:r.defaultError}:void 0===r.data?{message:null!=(s=null!=o?o:n)?s:r.defaultError}:"invalid_type"!==t.code?{message:r.defaultError}:{message:null!=(i=null!=o?o:a)?i:r.defaultError}},description:r}}var $,R=class{get description(){return this._def.description}_getType(e){return l(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:l(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Z,ctx:{common:e.parent.common,data:e.data,parsedType:l(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(N(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const a=this.safeParse(e,t);if(a.success)return a.data;throw a.error}safeParse(e,t){var a;const n={common:{issues:[],async:null!=(a=null==t?void 0:t.async)&&a,contextualErrorMap:null==t?void 0:t.errorMap},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:l(e)},r=this._parseSync({data:e,path:n.path,parent:n});return C(n,r)}"~validate"(e){var t,a;const n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:l(e)};if(!this["~standard"].async)try{const t=this._parseSync({data:e,path:[],parent:n});return j(t)?{value:t.value}:{issues:n.common.issues}}catch(e){(null==(a=null==(t=null==e?void 0:e.message)?void 0:t.toLowerCase())?void 0:a.includes("encountered"))&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(e=>j(e)?{value:e.value}:{issues:n.common.issues})}async parseAsync(e,t){const a=await this.safeParseAsync(e,t);if(a.success)return a.data;throw a.error}async safeParseAsync(e,t){const a={common:{issues:[],contextualErrorMap:null==t?void 0:t.errorMap,async:!0},path:(null==t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:l(e)},n=this._parse({data:e,path:a.path,parent:a}),r=await(N(n)?n:Promise.resolve(n));return C(a,r)}refine(e,t){const a=e=>"string"==typeof t||void 0===t?{message:t}:"function"==typeof t?t(e):t;return this._refinement((t,n)=>{const r=e(t),s=()=>n.addIssue({code:p.custom,...a(t)});return"undefined"!=typeof Promise&&r instanceof Promise?r.then(e=>!!e||(s(),!1)):!!r||(s(),!1)})}refinement(e,t){return this._refinement((a,n)=>!!e(a)||(n.addIssue("function"==typeof t?t(a,n):t),!1))}_refinement(e){return new Me({schema:this,typeName:He.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:e=>this["~validate"](e)}}optional(){return Le.create(this,this._def)}nullable(){return ze.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ve.create(this)}promise(){return Re.create(this,this._def)}or(e){return ke.create([this,e],this._def)}and(e){return Ae.create(this,e,this._def)}transform(e){return new Me({...I(this._def),schema:this,typeName:He.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"==typeof e?e:()=>e;return new Fe({...I(this._def),innerType:this,defaultValue:t,typeName:He.ZodDefault})}brand(){return new Be({typeName:He.ZodBranded,type:this,...I(this._def)})}catch(e){const t="function"==typeof e?e:()=>e;return new De({...I(this._def),innerType:this,catchValue:t,typeName:He.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return qe.create(this,e)}readonly(){return Ke.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},M=/^c[^\s-]{8,}$/i,L=/^[0-9a-z]+$/,z=/^[0-9A-HJKMNP-TV-Z]{26}$/i,F=/^[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,D=/^[a-z0-9_-]{21}$/i,U=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,V=/^[-+]?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)?)??$/,B=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,q=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,K=/^(?:(?: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])$/,W=/^(([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]))$/,X=/^(([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])$/,H=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,J=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,G="((\\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])))",Y=new RegExp(`^${G}$`);function Q(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:null==e.precision&&(t=`${t}(\\.\\d+)?`);return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${e.precision?"+":"?"}`}function ee(e){return new RegExp(`^${Q(e)}$`)}function te(e){let t=`${G}T${Q(e)}`;const a=[];return a.push(e.local?"Z?":"Z"),e.offset&&a.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${a.join("|")})`,new RegExp(`^${t}$`)}function ae(e,t){return!("v4"!==t&&t||!q.test(e))||!("v6"!==t&&t||!W.test(e))}function ne(e,t){if(!U.test(e))return!1;try{const[a]=e.split(".");if(!a)return!1;const n=a.replace(/-/g,"+").replace(/_/g,"/").padEnd(a.length+(4-a.length%4)%4,"="),r=JSON.parse(atob(n));return"object"==typeof r&&null!==r&&((!("typ"in r)||"JWT"===(null==r?void 0:r.typ))&&(!!r.alg&&(!t||r.alg===t)))}catch(e){return!1}}function re(e,t){return!("v4"!==t&&t||!K.test(e))||!("v6"!==t&&t||!X.test(e))}var se=class e extends R{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==u.string){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.string,received:t.parsedType}),A}const t=new Z;let a;for(const n of this._def.checks)if("min"===n.kind)e.data.length<n.value&&(a=this._getOrReturnCtx(e,a),k(a,{code:p.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if("max"===n.kind)e.data.length>n.value&&(a=this._getOrReturnCtx(e,a),k(a,{code:p.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!1,message:n.message}),t.dirty());else if("length"===n.kind){const r=e.data.length>n.value,s=e.data.length<n.value;(r||s)&&(a=this._getOrReturnCtx(e,a),r?k(a,{code:p.too_big,maximum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}):s&&k(a,{code:p.too_small,minimum:n.value,type:"string",inclusive:!0,exact:!0,message:n.message}),t.dirty())}else if("email"===n.kind)B.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"email",code:p.invalid_string,message:n.message}),t.dirty());else if("emoji"===n.kind)$||($=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),$.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"emoji",code:p.invalid_string,message:n.message}),t.dirty());else if("uuid"===n.kind)F.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"uuid",code:p.invalid_string,message:n.message}),t.dirty());else if("nanoid"===n.kind)D.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"nanoid",code:p.invalid_string,message:n.message}),t.dirty());else if("cuid"===n.kind)M.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"cuid",code:p.invalid_string,message:n.message}),t.dirty());else if("cuid2"===n.kind)L.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"cuid2",code:p.invalid_string,message:n.message}),t.dirty());else if("ulid"===n.kind)z.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"ulid",code:p.invalid_string,message:n.message}),t.dirty());else if("url"===n.kind)try{new URL(e.data)}catch(r){a=this._getOrReturnCtx(e,a),k(a,{validation:"url",code:p.invalid_string,message:n.message}),t.dirty()}else if("regex"===n.kind){n.regex.lastIndex=0;n.regex.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"regex",code:p.invalid_string,message:n.message}),t.dirty())}else if("trim"===n.kind)e.data=e.data.trim();else if("includes"===n.kind)e.data.includes(n.value,n.position)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:{includes:n.value,position:n.position},message:n.message}),t.dirty());else if("toLowerCase"===n.kind)e.data=e.data.toLowerCase();else if("toUpperCase"===n.kind)e.data=e.data.toUpperCase();else if("startsWith"===n.kind)e.data.startsWith(n.value)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:{startsWith:n.value},message:n.message}),t.dirty());else if("endsWith"===n.kind)e.data.endsWith(n.value)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:{endsWith:n.value},message:n.message}),t.dirty());else if("datetime"===n.kind){te(n).test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:"datetime",message:n.message}),t.dirty())}else if("date"===n.kind){Y.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:"date",message:n.message}),t.dirty())}else if("time"===n.kind){ee(n).test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{code:p.invalid_string,validation:"time",message:n.message}),t.dirty())}else"duration"===n.kind?V.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"duration",code:p.invalid_string,message:n.message}),t.dirty()):"ip"===n.kind?ae(e.data,n.version)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"ip",code:p.invalid_string,message:n.message}),t.dirty()):"jwt"===n.kind?ne(e.data,n.alg)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"jwt",code:p.invalid_string,message:n.message}),t.dirty()):"cidr"===n.kind?re(e.data,n.version)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"cidr",code:p.invalid_string,message:n.message}),t.dirty()):"base64"===n.kind?H.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"base64",code:p.invalid_string,message:n.message}),t.dirty()):"base64url"===n.kind?J.test(e.data)||(a=this._getOrReturnCtx(e,a),k(a,{validation:"base64url",code:p.invalid_string,message:n.message}),t.dirty()):i.assertNever(n);return{status:t.value,value:e.data}}_regex(e,t,a){return this.refinement(t=>e.test(t),{validation:t,code:p.invalid_string,...x.errToObj(a)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:"email",...x.errToObj(e)})}url(e){return this._addCheck({kind:"url",...x.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...x.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...x.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...x.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...x.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...x.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...x.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...x.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...x.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...x.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...x.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...x.errToObj(e)})}datetime(e){var t,a;return"string"==typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision,offset:null!=(t=null==e?void 0:e.offset)&&t,local:null!=(a=null==e?void 0:e.local)&&a,...x.errToObj(null==e?void 0:e.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return"string"==typeof e?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:void 0===(null==e?void 0:e.precision)?null:null==e?void 0:e.precision,...x.errToObj(null==e?void 0:e.message)})}duration(e){return this._addCheck({kind:"duration",...x.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...x.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null==t?void 0:t.position,...x.errToObj(null==t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...x.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...x.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...x.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...x.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...x.errToObj(t)})}nonempty(e){return this.min(1,x.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>"datetime"===e.kind)}get isDate(){return!!this._def.checks.find(e=>"date"===e.kind)}get isTime(){return!!this._def.checks.find(e=>"time"===e.kind)}get isDuration(){return!!this._def.checks.find(e=>"duration"===e.kind)}get isEmail(){return!!this._def.checks.find(e=>"email"===e.kind)}get isURL(){return!!this._def.checks.find(e=>"url"===e.kind)}get isEmoji(){return!!this._def.checks.find(e=>"emoji"===e.kind)}get isUUID(){return!!this._def.checks.find(e=>"uuid"===e.kind)}get isNANOID(){return!!this._def.checks.find(e=>"nanoid"===e.kind)}get isCUID(){return!!this._def.checks.find(e=>"cuid"===e.kind)}get isCUID2(){return!!this._def.checks.find(e=>"cuid2"===e.kind)}get isULID(){return!!this._def.checks.find(e=>"ulid"===e.kind)}get isIP(){return!!this._def.checks.find(e=>"ip"===e.kind)}get isCIDR(){return!!this._def.checks.find(e=>"cidr"===e.kind)}get isBase64(){return!!this._def.checks.find(e=>"base64"===e.kind)}get isBase64url(){return!!this._def.checks.find(e=>"base64url"===e.kind)}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}};function ie(e,t){const a=(e.toString().split(".")[1]||"").length,n=(t.toString().split(".")[1]||"").length,r=a>n?a:n;return Number.parseInt(e.toFixed(r).replace(".",""))%Number.parseInt(t.toFixed(r).replace(".",""))/10**r}se.create=e=>{var t;return new se({checks:[],typeName:He.ZodString,coerce:null!=(t=null==e?void 0:e.coerce)&&t,...I(e)})};var oe=class e extends R{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==u.number){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.number,received:t.parsedType}),A}let t;const a=new Z;for(const n of this._def.checks)if("int"===n.kind)i.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),k(t,{code:p.invalid_type,expected:"integer",received:"float",message:n.message}),a.dirty());else if("min"===n.kind){(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.too_small,minimum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty())}else if("max"===n.kind){(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),a.dirty())}else"multipleOf"===n.kind?0!==ie(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),k(t,{code:p.not_finite,message:n.message}),a.dirty()):i.assertNever(n);return{status:a.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(t,a,n,r){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:a,inclusive:n,message:x.toString(r)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:"int",message:x.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:x.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:x.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:x.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>"int"===e.kind||"multipleOf"===e.kind&&i.isInteger(e.value))}get isFinite(){let e=null,t=null;for(const a of this._def.checks){if("finite"===a.kind||"int"===a.kind||"multipleOf"===a.kind)return!0;"min"===a.kind?(null===t||a.value>t)&&(t=a.value):"max"===a.kind&&(null===e||a.value<e)&&(e=a.value)}return Number.isFinite(t)&&Number.isFinite(e)}};oe.create=e=>new oe({checks:[],typeName:He.ZodNumber,coerce:(null==e?void 0:e.coerce)||!1,...I(e)});var de=class e extends R{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch(t){return this._getInvalidInput(e)}if(this._getType(e)!==u.bigint)return this._getInvalidInput(e);let t;const a=new Z;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.data<n.value:e.data<=n.value)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.too_small,type:"bigint",minimum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty())}else if("max"===n.kind){(n.inclusive?e.data>n.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),a.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),k(t,{code:p.not_multiple_of,multipleOf:n.value,message:n.message}),a.dirty()):i.assertNever(n);return{status:a.value,value:e.data}}_getInvalidInput(e){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.bigint,received:t.parsedType}),A}gte(e,t){return this.setLimit("min",e,!0,x.toString(t))}gt(e,t){return this.setLimit("min",e,!1,x.toString(t))}lte(e,t){return this.setLimit("max",e,!0,x.toString(t))}lt(e,t){return this.setLimit("max",e,!1,x.toString(t))}setLimit(t,a,n,r){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:a,inclusive:n,message:x.toString(r)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:x.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:x.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:x.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:x.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:x.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return e}};de.create=e=>{var t;return new de({checks:[],typeName:He.ZodBigInt,coerce:null!=(t=null==e?void 0:e.coerce)&&t,...I(e)})};var ce=class extends R{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==u.boolean){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.boolean,received:t.parsedType}),A}return T(e.data)}};ce.create=e=>new ce({typeName:He.ZodBoolean,coerce:(null==e?void 0:e.coerce)||!1,...I(e)});var ue=class e extends R{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==u.date){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.date,received:t.parsedType}),A}if(Number.isNaN(e.data.getTime())){return k(this._getOrReturnCtx(e),{code:p.invalid_date}),A}const t=new Z;let a;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()<n.value&&(a=this._getOrReturnCtx(e,a),k(a,{code:p.too_small,message:n.message,inclusive:!0,exact:!1,minimum:n.value,type:"date"}),t.dirty()):"max"===n.kind?e.data.getTime()>n.value&&(a=this._getOrReturnCtx(e,a),k(a,{code:p.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):i.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:x.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:x.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value<e)&&(e=t.value);return null!=e?new Date(e):null}};ue.create=e=>new ue({checks:[],coerce:(null==e?void 0:e.coerce)||!1,typeName:He.ZodDate,...I(e)});var le=class extends R{_parse(e){if(this._getType(e)!==u.symbol){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.symbol,received:t.parsedType}),A}return T(e.data)}};le.create=e=>new le({typeName:He.ZodSymbol,...I(e)});var pe=class extends R{_parse(e){if(this._getType(e)!==u.undefined){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.undefined,received:t.parsedType}),A}return T(e.data)}};pe.create=e=>new pe({typeName:He.ZodUndefined,...I(e)});var me=class extends R{_parse(e){if(this._getType(e)!==u.null){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.null,received:t.parsedType}),A}return T(e.data)}};me.create=e=>new me({typeName:He.ZodNull,...I(e)});var he=class extends R{constructor(){super(...arguments),this._any=!0}_parse(e){return T(e.data)}};he.create=e=>new he({typeName:He.ZodAny,...I(e)});var fe=class extends R{constructor(){super(...arguments),this._unknown=!0}_parse(e){return T(e.data)}};fe.create=e=>new fe({typeName:He.ZodUnknown,...I(e)});var ge=class extends R{_parse(e){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.never,received:t.parsedType}),A}};ge.create=e=>new ge({typeName:He.ZodNever,...I(e)});var ye=class extends R{_parse(e){if(this._getType(e)!==u.undefined){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.void,received:t.parsedType}),A}return T(e.data)}};ye.create=e=>new ye({typeName:He.ZodVoid,...I(e)});var ve=class e extends R{_parse(e){const{ctx:t,status:a}=this._processInputParams(e),n=this._def;if(t.parsedType!==u.array)return k(t,{code:p.invalid_type,expected:u.array,received:t.parsedType}),A;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,r=t.data.length<n.exactLength.value;(e||r)&&(k(t,{code:e?p.too_big:p.too_small,minimum:r?n.exactLength.value:void 0,maximum:e?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),a.dirty())}if(null!==n.minLength&&t.data.length<n.minLength.value&&(k(t,{code:p.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),a.dirty()),null!==n.maxLength&&t.data.length>n.maxLength.value&&(k(t,{code:p.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),a.dirty()),t.common.async)return Promise.all([...t.data].map((e,a)=>n.type._parseAsync(new E(t,e,t.path,a)))).then(e=>Z.mergeArray(a,e));const r=[...t.data].map((e,a)=>n.type._parseSync(new E(t,e,t.path,a)));return Z.mergeArray(a,r)}get element(){return this._def.type}min(t,a){return new e({...this._def,minLength:{value:t,message:x.toString(a)}})}max(t,a){return new e({...this._def,maxLength:{value:t,message:x.toString(a)}})}length(t,a){return new e({...this._def,exactLength:{value:t,message:x.toString(a)}})}nonempty(e){return this.min(1,e)}};function _e(e){if(e instanceof be){const t={};for(const a in e.shape){const n=e.shape[a];t[a]=Le.create(_e(n))}return new be({...e._def,shape:()=>t})}return e instanceof ve?new ve({...e._def,type:_e(e.element)}):e instanceof Le?Le.create(_e(e.unwrap())):e instanceof ze?ze.create(_e(e.unwrap())):e instanceof Oe?Oe.create(e.items.map(e=>_e(e))):e}ve.create=(e,t)=>new ve({type:e,minLength:null,maxLength:null,exactLength:null,typeName:He.ZodArray,...I(t)});var be=class e extends R{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=i.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==u.object){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.object,received:t.parsedType}),A}const{status:t,ctx:a}=this._processInputParams(e),{shape:n,keys:r}=this._getCached(),s=[];if(!(this._def.catchall instanceof ge&&"strip"===this._def.unknownKeys))for(const e in a.data)r.includes(e)||s.push(e);const i=[];for(const e of r){const t=n[e],r=a.data[e];i.push({key:{status:"valid",value:e},value:t._parse(new E(a,r,a.path,e)),alwaysSet:e in a.data})}if(this._def.catchall instanceof ge){const e=this._def.unknownKeys;if("passthrough"===e)for(const e of s)i.push({key:{status:"valid",value:e},value:{status:"valid",value:a.data[e]}});else if("strict"===e)s.length>0&&(k(a,{code:p.unrecognized_keys,keys:s}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of s){const n=a.data[t];i.push({key:{status:"valid",value:t},value:e._parse(new E(a,n,a.path,t)),alwaysSet:t in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const e=[];for(const t of i){const a=await t.key,n=await t.value;e.push({key:a,value:n,alwaysSet:t.alwaysSet})}return e}).then(e=>Z.mergeObjectSync(t,e)):Z.mergeObjectSync(t,i)}get shape(){return this._def.shape()}strict(t){return x.errToObj,new e({...this._def,unknownKeys:"strict",...void 0!==t?{errorMap:(e,a)=>{var n,r,s,i;const o=null!=(s=null==(r=(n=this._def).errorMap)?void 0:r.call(n,e,a).message)?s:a.defaultError;return"unrecognized_keys"===e.code?{message:null!=(i=x.errToObj(t).message)?i:o}:{message:o}}}:{}})}strip(){return new e({...this._def,unknownKeys:"strip"})}passthrough(){return new e({...this._def,unknownKeys:"passthrough"})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:He.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){const a={};for(const e of i.objectKeys(t))t[e]&&this.shape[e]&&(a[e]=this.shape[e]);return new e({...this._def,shape:()=>a})}omit(t){const a={};for(const e of i.objectKeys(this.shape))t[e]||(a[e]=this.shape[e]);return new e({...this._def,shape:()=>a})}deepPartial(){return _e(this)}partial(t){const a={};for(const e of i.objectKeys(this.shape)){const n=this.shape[e];t&&!t[e]?a[e]=n:a[e]=n.optional()}return new e({...this._def,shape:()=>a})}required(t){const a={};for(const e of i.objectKeys(this.shape))if(t&&!t[e])a[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof Le;)t=t._def.innerType;a[e]=t}return new e({...this._def,shape:()=>a})}keyof(){return Ce(i.objectKeys(this.shape))}};be.create=(e,t)=>new be({shape:()=>e,unknownKeys:"strip",catchall:ge.create(),typeName:He.ZodObject,...I(t)}),be.strictCreate=(e,t)=>new be({shape:()=>e,unknownKeys:"strict",catchall:ge.create(),typeName:He.ZodObject,...I(t)}),be.lazycreate=(e,t)=>new be({shape:e,unknownKeys:"strip",catchall:ge.create(),typeName:He.ZodObject,...I(t)});var ke=class extends R{_parse(e){const{ctx:t}=this._processInputParams(e),a=this._def.options;if(t.common.async)return Promise.all(a.map(async e=>{const a={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:a}),ctx:a}})).then(function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const a of e)if("dirty"===a.result.status)return t.common.issues.push(...a.ctx.common.issues),a.result;const a=e.map(e=>new h(e.ctx.common.issues));return k(t,{code:p.invalid_union,unionErrors:a}),A});{let e;const n=[];for(const r of a){const a={...t,common:{...t.common,issues:[]},parent:null},s=r._parseSync({data:t.data,path:t.path,parent:a});if("valid"===s.status)return s;"dirty"!==s.status||e||(e={result:s,ctx:a}),a.common.issues.length&&n.push(a.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const r=n.map(e=>new h(e));return k(t,{code:p.invalid_union,unionErrors:r}),A}}get options(){return this._def.options}};ke.create=(e,t)=>new ke({options:e,typeName:He.ZodUnion,...I(t)});var xe=e=>e instanceof Ne?xe(e.schema):e instanceof Me?xe(e.innerType()):e instanceof Ee?[e.value]:e instanceof Ie?e.options:e instanceof $e?i.objectValues(e.enum):e instanceof Fe?xe(e._def.innerType):e instanceof pe?[void 0]:e instanceof me?[null]:e instanceof Le?[void 0,...xe(e.unwrap())]:e instanceof ze?[null,...xe(e.unwrap())]:e instanceof Be||e instanceof Ke?xe(e.unwrap()):e instanceof De?xe(e._def.innerType):[],we=class e extends R{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==u.object)return k(t,{code:p.invalid_type,expected:u.object,received:t.parsedType}),A;const a=this.discriminator,n=t.data[a],r=this.optionsMap.get(n);return r?t.common.async?r._parseAsync({data:t.data,path:t.path,parent:t}):r._parseSync({data:t.data,path:t.path,parent:t}):(k(t,{code:p.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[a]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,a,n){const r=new Map;for(const e of a){const a=xe(e.shape[t]);if(!a.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const n of a){if(r.has(n))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(n)}`);r.set(n,e)}}return new e({typeName:He.ZodDiscriminatedUnion,discriminator:t,options:a,optionsMap:r,...I(n)})}};function Ze(e,t){const a=l(e),n=l(t);if(e===t)return{valid:!0,data:e};if(a===u.object&&n===u.object){const a=i.objectKeys(t),n=i.objectKeys(e).filter(e=>-1!==a.indexOf(e)),r={...e,...t};for(const a of n){const n=Ze(e[a],t[a]);if(!n.valid)return{valid:!1};r[a]=n.data}return{valid:!0,data:r}}if(a===u.array&&n===u.array){if(e.length!==t.length)return{valid:!1};const a=[];for(let n=0;n<e.length;n++){const r=Ze(e[n],t[n]);if(!r.valid)return{valid:!1};a.push(r.data)}return{valid:!0,data:a}}return a===u.date&&n===u.date&&+e===+t?{valid:!0,data:e}:{valid:!1}}var Ae=class extends R{_parse(e){const{status:t,ctx:a}=this._processInputParams(e),n=(e,n)=>{if(S(e)||S(n))return A;const r=Ze(e.value,n.value);return r.valid?((P(e)||P(n))&&t.dirty(),{status:t.value,value:r.data}):(k(a,{code:p.invalid_intersection_types}),A)};return a.common.async?Promise.all([this._def.left._parseAsync({data:a.data,path:a.path,parent:a}),this._def.right._parseAsync({data:a.data,path:a.path,parent:a})]).then(([e,t])=>n(e,t)):n(this._def.left._parseSync({data:a.data,path:a.path,parent:a}),this._def.right._parseSync({data:a.data,path:a.path,parent:a}))}};Ae.create=(e,t,a)=>new Ae({left:e,right:t,typeName:He.ZodIntersection,...I(a)});var Oe=class e extends R{_parse(e){const{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.array)return k(a,{code:p.invalid_type,expected:u.array,received:a.parsedType}),A;if(a.data.length<this._def.items.length)return k(a,{code:p.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&a.data.length>this._def.items.length&&(k(a,{code:p.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...a.data].map((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new E(a,e,a.path,t)):null}).filter(e=>!!e);return a.common.async?Promise.all(n).then(e=>Z.mergeArray(t,e)):Z.mergeArray(t,n)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Oe.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Oe({items:e,typeName:He.ZodTuple,rest:null,...I(t)})};var Te=class e extends R{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.object)return k(a,{code:p.invalid_type,expected:u.object,received:a.parsedType}),A;const n=[],r=this._def.keyType,s=this._def.valueType;for(const e in a.data)n.push({key:r._parse(new E(a,e,a.path,e)),value:s._parse(new E(a,a.data[e],a.path,e)),alwaysSet:e in a.data});return a.common.async?Z.mergeObjectAsync(t,n):Z.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(t,a,n){return new e(a instanceof R?{keyType:t,valueType:a,typeName:He.ZodRecord,...I(n)}:{keyType:se.create(),valueType:t,typeName:He.ZodRecord,...I(a)})}},Se=class extends R{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.map)return k(a,{code:p.invalid_type,expected:u.map,received:a.parsedType}),A;const n=this._def.keyType,r=this._def.valueType,s=[...a.data.entries()].map(([e,t],s)=>({key:n._parse(new E(a,e,a.path,[s,"key"])),value:r._parse(new E(a,t,a.path,[s,"value"]))}));if(a.common.async){const e=new Map;return Promise.resolve().then(async()=>{for(const a of s){const n=await a.key,r=await a.value;if("aborted"===n.status||"aborted"===r.status)return A;"dirty"!==n.status&&"dirty"!==r.status||t.dirty(),e.set(n.value,r.value)}return{status:t.value,value:e}})}{const e=new Map;for(const a of s){const n=a.key,r=a.value;if("aborted"===n.status||"aborted"===r.status)return A;"dirty"!==n.status&&"dirty"!==r.status||t.dirty(),e.set(n.value,r.value)}return{status:t.value,value:e}}}};Se.create=(e,t,a)=>new Se({valueType:t,keyType:e,typeName:He.ZodMap,...I(a)});var Pe=class e extends R{_parse(e){const{status:t,ctx:a}=this._processInputParams(e);if(a.parsedType!==u.set)return k(a,{code:p.invalid_type,expected:u.set,received:a.parsedType}),A;const n=this._def;null!==n.minSize&&a.data.size<n.minSize.value&&(k(a,{code:p.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),t.dirty()),null!==n.maxSize&&a.data.size>n.maxSize.value&&(k(a,{code:p.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const r=this._def.valueType;function s(e){const a=new Set;for(const n of e){if("aborted"===n.status)return A;"dirty"===n.status&&t.dirty(),a.add(n.value)}return{status:t.value,value:a}}const i=[...a.data.values()].map((e,t)=>r._parse(new E(a,e,a.path,t)));return a.common.async?Promise.all(i).then(e=>s(e)):s(i)}min(t,a){return new e({...this._def,minSize:{value:t,message:x.toString(a)}})}max(t,a){return new e({...this._def,maxSize:{value:t,message:x.toString(a)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Pe.create=(e,t)=>new Pe({valueType:e,minSize:null,maxSize:null,typeName:He.ZodSet,...I(t)});var je=class e extends R{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==u.function)return k(t,{code:p.invalid_type,expected:u.function,received:t.parsedType}),A;function a(e,a){return _({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,v(),f].filter(e=>!!e),issueData:{code:p.invalid_arguments,argumentsError:a}})}function n(e,a){return _({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,v(),f].filter(e=>!!e),issueData:{code:p.invalid_return_type,returnTypeError:a}})}const r={errorMap:t.common.contextualErrorMap},s=t.data;if(this._def.returns instanceof Re){const e=this;return T(async function(...t){const i=new h([]),o=await e._def.args.parseAsync(t,r).catch(e=>{throw i.addIssue(a(t,e)),i}),d=await Reflect.apply(s,this,o);return await e._def.returns._def.type.parseAsync(d,r).catch(e=>{throw i.addIssue(n(d,e)),i})})}{const e=this;return T(function(...t){const i=e._def.args.safeParse(t,r);if(!i.success)throw new h([a(t,i.error)]);const o=Reflect.apply(s,this,i.data),d=e._def.returns.safeParse(o,r);if(!d.success)throw new h([n(o,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Oe.create(t).rest(fe.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,a,n){return new e({args:t||Oe.create([]).rest(fe.create()),returns:a||fe.create(),typeName:He.ZodFunction,...I(n)})}},Ne=class extends R{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ne.create=(e,t)=>new Ne({getter:e,typeName:He.ZodLazy,...I(t)});var Ee=class extends R{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return k(t,{received:t.data,code:p.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};function Ce(e,t){return new Ie({values:e,typeName:He.ZodEnum,...I(t)})}Ee.create=(e,t)=>new Ee({value:e,typeName:He.ZodLiteral,...I(t)});var Ie=class e extends R{_parse(e){if("string"!=typeof e.data){const t=this._getOrReturnCtx(e),a=this._def.values;return k(t,{expected:i.joinValues(a),received:t.parsedType,code:p.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){const t=this._getOrReturnCtx(e),a=this._def.values;return k(t,{received:t.data,code:p.invalid_enum_value,options:a}),A}return T(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(t,a=this._def){return e.create(t,{...this._def,...a})}exclude(t,a=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...a})}};Ie.create=Ce;var $e=class extends R{_parse(e){const t=i.getValidEnumValues(this._def.values),a=this._getOrReturnCtx(e);if(a.parsedType!==u.string&&a.parsedType!==u.number){const e=i.objectValues(t);return k(a,{expected:i.joinValues(e),received:a.parsedType,code:p.invalid_type}),A}if(this._cache||(this._cache=new Set(i.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){const e=i.objectValues(t);return k(a,{received:a.data,code:p.invalid_enum_value,options:e}),A}return T(e.data)}get enum(){return this._def.values}};$e.create=(e,t)=>new $e({values:e,typeName:He.ZodNativeEnum,...I(t)});var Re=class extends R{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==u.promise&&!1===t.common.async)return k(t,{code:p.invalid_type,expected:u.promise,received:t.parsedType}),A;const a=t.parsedType===u.promise?t.data:Promise.resolve(t.data);return T(a.then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Re.create=(e,t)=>new Re({type:e,typeName:He.ZodPromise,...I(t)});var Me=class extends R{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===He.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:a}=this._processInputParams(e),n=this._def.effect||null,r={addIssue:e=>{k(a,e),e.fatal?t.abort():t.dirty()},get path(){return a.path}};if(r.addIssue=r.addIssue.bind(r),"preprocess"===n.type){const e=n.transform(a.data,r);if(a.common.async)return Promise.resolve(e).then(async e=>{if("aborted"===t.value)return A;const n=await this._def.schema._parseAsync({data:e,path:a.path,parent:a});return"aborted"===n.status?A:"dirty"===n.status||"dirty"===t.value?O(n.value):n});{if("aborted"===t.value)return A;const n=this._def.schema._parseSync({data:e,path:a.path,parent:a});return"aborted"===n.status?A:"dirty"===n.status||"dirty"===t.value?O(n.value):n}}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,r);if(a.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===a.common.async){const n=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===n.status?A:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(a=>"aborted"===a.status?A:("dirty"===a.status&&t.dirty(),e(a.value).then(()=>({status:t.value,value:a.value}))))}if("transform"===n.type){if(!1===a.common.async){const e=this._def.schema._parseSync({data:a.data,path:a.path,parent:a});if(!j(e))return A;const s=n.transform(e.value,r);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:s}}return this._def.schema._parseAsync({data:a.data,path:a.path,parent:a}).then(e=>j(e)?Promise.resolve(n.transform(e.value,r)).then(e=>({status:t.value,value:e})):A)}i.assertNever(n)}};Me.create=(e,t,a)=>new Me({schema:e,typeName:He.ZodEffects,effect:t,...I(a)}),Me.createWithPreprocess=(e,t,a)=>new Me({schema:t,effect:{type:"preprocess",transform:e},typeName:He.ZodEffects,...I(a)});var Le=class extends R{_parse(e){return this._getType(e)===u.undefined?T(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Le.create=(e,t)=>new Le({innerType:e,typeName:He.ZodOptional,...I(t)});var ze=class extends R{_parse(e){return this._getType(e)===u.null?T(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ze.create=(e,t)=>new ze({innerType:e,typeName:He.ZodNullable,...I(t)});var Fe=class extends R{_parse(e){const{ctx:t}=this._processInputParams(e);let a=t.data;return t.parsedType===u.undefined&&(a=this._def.defaultValue()),this._def.innerType._parse({data:a,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Fe.create=(e,t)=>new Fe({innerType:e,typeName:He.ZodDefault,defaultValue:"function"==typeof t.default?t.default:()=>t.default,...I(t)});var De=class extends R{_parse(e){const{ctx:t}=this._processInputParams(e),a={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:a.data,path:a.path,parent:{...a}});return N(n)?n.then(e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new h(a.common.issues)},input:a.data})})):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new h(a.common.issues)},input:a.data})}}removeCatch(){return this._def.innerType}};De.create=(e,t)=>new De({innerType:e,typeName:He.ZodCatch,catchValue:"function"==typeof t.catch?t.catch:()=>t.catch,...I(t)});var Ue=class extends R{_parse(e){if(this._getType(e)!==u.nan){const t=this._getOrReturnCtx(e);return k(t,{code:p.invalid_type,expected:u.nan,received:t.parsedType}),A}return{status:"valid",value:e.data}}};Ue.create=e=>new Ue({typeName:He.ZodNaN,...I(e)});var Ve=Symbol("zod_brand"),Be=class extends R{_parse(e){const{ctx:t}=this._processInputParams(e),a=t.data;return this._def.type._parse({data:a,path:t.path,parent:t})}unwrap(){return this._def.type}},qe=class e extends R{_parse(e){const{status:t,ctx:a}=this._processInputParams(e);if(a.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?A:"dirty"===e.status?(t.dirty(),O(e.value)):this._def.out._parseAsync({data:e.value,path:a.path,parent:a})})()}{const e=this._def.in._parseSync({data:a.data,path:a.path,parent:a});return"aborted"===e.status?A:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:a.path,parent:a})}}static create(t,a){return new e({in:t,out:a,typeName:He.ZodPipeline})}},Ke=class extends R{_parse(e){const t=this._def.innerType._parse(e),a=e=>(j(e)&&(e.value=Object.freeze(e.value)),e);return N(t)?t.then(e=>a(e)):a(t)}unwrap(){return this._def.innerType}};function We(e,t){const a="function"==typeof e?e(t):"string"==typeof e?{message:e}:e;return"string"==typeof a?{message:a}:a}function Xe(e,t={},a){return e?he.create().superRefine((n,r)=>{var s,i;const o=e(n);if(o instanceof Promise)return o.then(e=>{var s,i;if(!e){const e=We(t,n),o=null==(i=null!=(s=e.fatal)?s:a)||i;r.addIssue({code:"custom",...e,fatal:o})}});if(!o){const e=We(t,n),o=null==(i=null!=(s=e.fatal)?s:a)||i;r.addIssue({code:"custom",...e,fatal:o})}}):he.create()}Ke.create=(e,t)=>new Ke({innerType:e,typeName:He.ZodReadonly,...I(t)});var He,Je,Ge={object:be.lazycreate};(Je=He||(He={})).ZodString="ZodString",Je.ZodNumber="ZodNumber",Je.ZodNaN="ZodNaN",Je.ZodBigInt="ZodBigInt",Je.ZodBoolean="ZodBoolean",Je.ZodDate="ZodDate",Je.ZodSymbol="ZodSymbol",Je.ZodUndefined="ZodUndefined",Je.ZodNull="ZodNull",Je.ZodAny="ZodAny",Je.ZodUnknown="ZodUnknown",Je.ZodNever="ZodNever",Je.ZodVoid="ZodVoid",Je.ZodArray="ZodArray",Je.ZodObject="ZodObject",Je.ZodUnion="ZodUnion",Je.ZodDiscriminatedUnion="ZodDiscriminatedUnion",Je.ZodIntersection="ZodIntersection",Je.ZodTuple="ZodTuple",Je.ZodRecord="ZodRecord",Je.ZodMap="ZodMap",Je.ZodSet="ZodSet",Je.ZodFunction="ZodFunction",Je.ZodLazy="ZodLazy",Je.ZodLiteral="ZodLiteral",Je.ZodEnum="ZodEnum",Je.ZodEffects="ZodEffects",Je.ZodNativeEnum="ZodNativeEnum",Je.ZodOptional="ZodOptional",Je.ZodNullable="ZodNullable",Je.ZodDefault="ZodDefault",Je.ZodCatch="ZodCatch",Je.ZodPromise="ZodPromise",Je.ZodBranded="ZodBranded",Je.ZodPipeline="ZodPipeline",Je.ZodReadonly="ZodReadonly";var Ye=(e,t={message:`Input not instance of ${e.name}`})=>Xe(t=>t instanceof e,t),Qe=se.create,et=oe.create,tt=Ue.create,at=de.create,nt=ce.create,rt=ue.create,st=le.create,it=pe.create,ot=me.create,dt=he.create,ct=fe.create,ut=ge.create,lt=ye.create,pt=ve.create,mt=be.create,ht=be.strictCreate,ft=ke.create,gt=we.create,yt=Ae.create,vt=Oe.create,_t=Te.create,bt=Se.create,kt=Pe.create,xt=je.create,wt=Ne.create,Zt=Ee.create,At=Ie.create,Ot=$e.create,Tt=Re.create,St=Me.create,Pt=Le.create,jt=ze.create,Nt=Me.createWithPreprocess,Et=qe.create,Ct=()=>Qe().optional(),It=()=>et().optional(),$t=()=>nt().optional(),Rt={string:e=>se.create({...e,coerce:!0}),number:e=>oe.create({...e,coerce:!0}),boolean:e=>ce.create({...e,coerce:!0}),bigint:e=>de.create({...e,coerce:!0}),date:e=>ue.create({...e,coerce:!0})},Mt=A,Lt=Symbol("Let zodToJsonSchema decide on which parser to use"),zt={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Ft=e=>{const t=(e=>"string"==typeof e?{...zt,name:e}:{...zt,...e})(e),a=void 0!==t.name?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:a,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([e,a])=>[a._def,{def:a._def,path:[...t.basePath,t.definitionPath,e],jsonSchema:void 0}]))}};function Dt(e,t,a,n){(null==n?void 0:n.errorMessages)&&a&&(e.errorMessage={...e.errorMessage,[t]:a})}function Ut(e,t,a,n,r){e[t]=a,Dt(e,t,n,r)}var Vt=(e,t)=>{let a=0;for(;a<e.length&&a<t.length&&e[a]===t[a];a++);return[(e.length-a).toString(),...t.slice(a)].join("/")};function Bt(e){if("openAi"!==e.target)return{};const t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:"relative"===e.$refStrategy?Vt(t,e.currentPath):t.join("/")}}function qt(e,t){return va(e.type._def,t)}function Kt(e,t,a){const n=null!=a?a:t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((a,n)=>Kt(e,t,a))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Wt(e,t)}}var Wt=(e,t)=>{const a={type:"integer",format:"unix-time"};if("openApi3"===t.target)return a;for(const n of e.checks)switch(n.kind){case"min":Ut(a,"minimum",n.value,n.message,t);break;case"max":Ut(a,"maximum",n.value,n.message,t)}return a};var Xt=void 0,Ht=/^[cC][^\s-]{8,}$/,Jt=/^[0-9a-z]+$/,Gt=/^[0-9A-HJKMNP-TV-Z]{26}$/,Yt=/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,Qt=()=>(void 0===Xt&&(Xt=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Xt),ea=/^(?:(?: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])$/,ta=/^(([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])$/,aa=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,na=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,ra=/^[a-zA-Z0-9_-]{21}$/,sa=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/;function ia(e,t){const a={type:"string"};if(e.checks)for(const n of e.checks)switch(n.kind){case"min":Ut(a,"minLength","number"==typeof a.minLength?Math.max(a.minLength,n.value):n.value,n.message,t);break;case"max":Ut(a,"maxLength","number"==typeof a.maxLength?Math.min(a.maxLength,n.value):n.value,n.message,t);break;case"email":switch(t.emailStrategy){case"format:email":ca(a,"email",n.message,t);break;case"format:idn-email":ca(a,"idn-email",n.message,t);break;case"pattern:zod":ua(a,Yt,n.message,t)}break;case"url":ca(a,"uri",n.message,t);break;case"uuid":ca(a,"uuid",n.message,t);break;case"regex":ua(a,n.regex,n.message,t);break;case"cuid":ua(a,Ht,n.message,t);break;case"cuid2":ua(a,Jt,n.message,t);break;case"startsWith":ua(a,RegExp(`^${oa(n.value,t)}`),n.message,t);break;case"endsWith":ua(a,RegExp(`${oa(n.value,t)}$`),n.message,t);break;case"datetime":ca(a,"date-time",n.message,t);break;case"date":ca(a,"date",n.message,t);break;case"time":ca(a,"time",n.message,t);break;case"duration":ca(a,"duration",n.message,t);break;case"length":Ut(a,"minLength","number"==typeof a.minLength?Math.max(a.minLength,n.value):n.value,n.message,t),Ut(a,"maxLength","number"==typeof a.maxLength?Math.min(a.maxLength,n.value):n.value,n.message,t);break;case"includes":ua(a,RegExp(oa(n.value,t)),n.message,t);break;case"ip":"v6"!==n.version&&ca(a,"ipv4",n.message,t),"v4"!==n.version&&ca(a,"ipv6",n.message,t);break;case"base64url":ua(a,na,n.message,t);break;case"jwt":ua(a,sa,n.message,t);break;case"cidr":"v6"!==n.version&&ua(a,ea,n.message,t),"v4"!==n.version&&ua(a,ta,n.message,t);break;case"emoji":ua(a,Qt(),n.message,t);break;case"ulid":ua(a,Gt,n.message,t);break;case"base64":switch(t.base64Strategy){case"format:binary":ca(a,"binary",n.message,t);break;case"contentEncoding:base64":Ut(a,"contentEncoding","base64",n.message,t);break;case"pattern:zod":ua(a,aa,n.message,t)}break;case"nanoid":ua(a,ra,n.message,t)}return a}function oa(e,t){return"escape"===t.patternStrategy?function(e){let t="";for(let a=0;a<e.length;a++)da.has(e[a])||(t+="\\"),t+=e[a];return t}(e):e}var da=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ca(e,t,a,n){var r;e.format||(null==(r=e.anyOf)?void 0:r.some(e=>e.format))?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&n.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,0===Object.keys(e.errorMessage).length&&delete e.errorMessage)),e.anyOf.push({format:t,...a&&n.errorMessages&&{errorMessage:{format:a}}})):Ut(e,"format",t,a,n)}function ua(e,t,a,n){var r;e.pattern||(null==(r=e.allOf)?void 0:r.some(e=>e.pattern))?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,0===Object.keys(e.errorMessage).length&&delete e.errorMessage)),e.allOf.push({pattern:la(t,n),...a&&n.errorMessages&&{errorMessage:{pattern:a}}})):Ut(e,"pattern",la(t,n),a,n)}function la(e,t){var a;if(!t.applyRegexFlags||!e.flags)return e.source;const n=e.flags.includes("i"),r=e.flags.includes("m"),s=e.flags.includes("s"),i=n?e.source.toLowerCase():e.source;let o="",d=!1,c=!1,u=!1;for(let e=0;e<i.length;e++)if(d)o+=i[e],d=!1;else{if(n)if(c){if(i[e].match(/[a-z]/)){u?(o+=i[e],o+=`${i[e-2]}-${i[e]}`.toUpperCase(),u=!1):"-"===i[e+1]&&(null==(a=i[e+2])?void 0:a.match(/[a-z]/))?(o+=i[e],u=!0):o+=`${i[e]}${i[e].toUpperCase()}`;continue}}else if(i[e].match(/[a-z]/)){o+=`[${i[e]}${i[e].toUpperCase()}]`;continue}if(r){if("^"===i[e]){o+="(^|(?<=[\r\n]))";continue}if("$"===i[e]){o+="($|(?=[\r\n]))";continue}}s&&"."===i[e]?o+=c?`${i[e]}\r\n`:`[${i[e]}\r\n]`:(o+=i[e],"\\"===i[e]?d=!0:c&&"]"===i[e]?c=!1:c||"["!==i[e]||(c=!0))}try{new RegExp(o)}catch(a){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return o}function pa(e,t){var a,n,r,s,i,o,d;if("openAi"===t.target&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),"openApi3"===t.target&&(null==(a=e.keyType)?void 0:a._def.typeName)===He.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((a,n)=>{var r;return{...a,[n]:null!=(r=va(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",n]}))?r:Bt(t)}},{}),additionalProperties:t.rejectedAdditionalProperties};const c={type:"object",additionalProperties:null!=(n=va(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))?n:t.allowedAdditionalProperties};if("openApi3"===t.target)return c;if((null==(r=e.keyType)?void 0:r._def.typeName)===He.ZodString&&(null==(s=e.keyType._def.checks)?void 0:s.length)){const{type:a,...n}=ia(e.keyType._def,t);return{...c,propertyNames:n}}if((null==(i=e.keyType)?void 0:i._def.typeName)===He.ZodEnum)return{...c,propertyNames:{enum:e.keyType._def.values}};if((null==(o=e.keyType)?void 0:o._def.typeName)===He.ZodBranded&&e.keyType._def.type._def.typeName===He.ZodString&&(null==(d=e.keyType._def.type._def.checks)?void 0:d.length)){const{type:a,...n}=qt(e.keyType._def,t);return{...c,propertyNames:n}}return c}var ma={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};var ha=(e,t)=>{const a=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((e,a)=>va(e._def,{...t,currentPath:[...t.currentPath,"anyOf",`${a}`]})).filter(e=>!!e&&(!t.strictUnions||"object"==typeof e&&Object.keys(e).length>0));return a.length?{anyOf:a}:void 0};function fa(e,t){const a="openAi"===t.target,n={type:"object",properties:{}},r=[],s=e.shape();for(const e in s){let i=s[e];if(void 0===i||void 0===i._def)continue;let o=ga(i);o&&a&&("ZodOptional"===i._def.typeName&&(i=i._def.innerType),i.isNullable()||(i=i.nullable()),o=!1);const d=va(i._def,{...t,currentPath:[...t.currentPath,"properties",e],propertyPath:[...t.currentPath,"properties",e]});void 0!==d&&(n.properties[e]=d,o||r.push(e))}r.length&&(n.required=r);const i=function(e,t){if("ZodNever"!==e.catchall._def.typeName)return va(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return"strict"===t.removeAdditionalStrategy?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}(e,t);return void 0!==i&&(n.additionalProperties=i),n}function ga(e){try{return e.isOptional()}catch(e){return!0}}var ya=(e,t,a)=>{switch(t){case He.ZodString:return ia(e,a);case He.ZodNumber:return function(e,t){const a={type:"number"};if(!e.checks)return a;for(const n of e.checks)switch(n.kind){case"int":a.type="integer",Dt(a,"type",n.message,t);break;case"min":"jsonSchema7"===t.target?n.inclusive?Ut(a,"minimum",n.value,n.message,t):Ut(a,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(a.exclusiveMinimum=!0),Ut(a,"minimum",n.value,n.message,t));break;case"max":"jsonSchema7"===t.target?n.inclusive?Ut(a,"maximum",n.value,n.message,t):Ut(a,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(a.exclusiveMaximum=!0),Ut(a,"maximum",n.value,n.message,t));break;case"multipleOf":Ut(a,"multipleOf",n.value,n.message,t)}return a}(e,a);case He.ZodObject:return fa(e,a);case He.ZodBigInt:return function(e,t){const a={type:"integer",format:"int64"};if(!e.checks)return a;for(const n of e.checks)switch(n.kind){case"min":"jsonSchema7"===t.target?n.inclusive?Ut(a,"minimum",n.value,n.message,t):Ut(a,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(a.exclusiveMinimum=!0),Ut(a,"minimum",n.value,n.message,t));break;case"max":"jsonSchema7"===t.target?n.inclusive?Ut(a,"maximum",n.value,n.message,t):Ut(a,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(a.exclusiveMaximum=!0),Ut(a,"maximum",n.value,n.message,t));break;case"multipleOf":Ut(a,"multipleOf",n.value,n.message,t)}return a}(e,a);case He.ZodBoolean:return{type:"boolean"};case He.ZodDate:return Kt(e,a);case He.ZodUndefined:return function(e){return{not:Bt(e)}}(a);case He.ZodNull:return function(e){return"openApi3"===e.target?{enum:["null"],nullable:!0}:{type:"null"}}(a);case He.ZodArray:return function(e,t){var a,n,r;const s={type:"array"};return(null==(a=e.type)?void 0:a._def)&&(null==(r=null==(n=e.type)?void 0:n._def)?void 0:r.typeName)!==He.ZodAny&&(s.items=va(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&Ut(s,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&Ut(s,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(Ut(s,"minItems",e.exactLength.value,e.exactLength.message,t),Ut(s,"maxItems",e.exactLength.value,e.exactLength.message,t)),s}(e,a);case He.ZodUnion:case He.ZodDiscriminatedUnion:return function(e,t){if("openApi3"===t.target)return ha(e,t);const a=e.options instanceof Map?Array.from(e.options.values()):e.options;if(a.every(e=>e._def.typeName in ma&&(!e._def.checks||!e._def.checks.length))){const e=a.reduce((e,t)=>{const a=ma[t._def.typeName];return a&&!e.includes(a)?[...e,a]:e},[]);return{type:e.length>1?e:e[0]}}if(a.every(e=>"ZodLiteral"===e._def.typeName&&!e.description)){const e=a.reduce((e,t)=>{const a=typeof t._def.value;switch(a){case"string":case"number":case"boolean":return[...e,a];case"bigint":return[...e,"integer"];case"object":if(null===t._def.value)return[...e,"null"];default:return e}},[]);if(e.length===a.length){const t=e.filter((e,t,a)=>a.indexOf(e)===t);return{type:t.length>1?t:t[0],enum:a.reduce((e,t)=>e.includes(t._def.value)?e:[...e,t._def.value],[])}}}else if(a.every(e=>"ZodEnum"===e._def.typeName))return{type:"string",enum:a.reduce((e,t)=>[...e,...t._def.values.filter(t=>!e.includes(t))],[])};return ha(e,t)}(e,a);case He.ZodIntersection:return function(e,t){const a=[va(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),va(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(e=>!!e);let n="jsonSchema2019-09"===t.target?{unevaluatedProperties:!1}:void 0;const r=[];return a.forEach(e=>{if("type"in(t=e)&&"string"===t.type||!("allOf"in t)){let t=e;if("additionalProperties"in e&&!1===e.additionalProperties){const{additionalProperties:a,...n}=e;t=n}else n=void 0;r.push(t)}else r.push(...e.allOf),void 0===e.unevaluatedProperties&&(n=void 0);var t}),r.length?{allOf:r,...n}:void 0}(e,a);case He.ZodTuple:return function(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((e,a)=>va(e._def,{...t,currentPath:[...t.currentPath,"items",`${a}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[]),additionalItems:va(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((e,a)=>va(e._def,{...t,currentPath:[...t.currentPath,"items",`${a}`]})).reduce((e,t)=>void 0===t?e:[...e,t],[])}}(e,a);case He.ZodRecord:return pa(e,a);case He.ZodLiteral:return function(e,t){const a=typeof e.value;return"bigint"!==a&&"number"!==a&&"boolean"!==a&&"string"!==a?{type:Array.isArray(e.value)?"array":"object"}:"openApi3"===t.target?{type:"bigint"===a?"integer":a,enum:[e.value]}:{type:"bigint"===a?"integer":a,const:e.value}}(e,a);case He.ZodEnum:return function(e){return{type:"string",enum:Array.from(e.values)}}(e);case He.ZodNativeEnum:return function(e){const t=e.values,a=Object.keys(e.values).filter(e=>"number"!=typeof t[t[e]]).map(e=>t[e]),n=Array.from(new Set(a.map(e=>typeof e)));return{type:1===n.length?"string"===n[0]?"string":"number":["string","number"],enum:a}}(e);case He.ZodNullable:return function(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return"openApi3"===t.target?{type:ma[e.innerType._def.typeName],nullable:!0}:{type:[ma[e.innerType._def.typeName],"null"]};if("openApi3"===t.target){const a=va(e.innerType._def,{...t,currentPath:[...t.currentPath]});return a&&"$ref"in a?{allOf:[a],nullable:!0}:a&&{...a,nullable:!0}}const a=va(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return a&&{anyOf:[a,{type:"null"}]}}(e,a);case He.ZodOptional:return((e,t)=>{var a;if(t.currentPath.toString()===(null==(a=t.propertyPath)?void 0:a.toString()))return va(e.innerType._def,t);const n=va(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:Bt(t)},n]}:Bt(t)})(e,a);case He.ZodMap:return function(e,t){return"record"===t.mapStrategy?pa(e,t):{type:"array",maxItems:125,items:{type:"array",items:[va(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||Bt(t),va(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||Bt(t)],minItems:2,maxItems:2}}}(e,a);case He.ZodSet:return function(e,t){const a={type:"array",uniqueItems:!0,items:va(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&Ut(a,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&Ut(a,"maxItems",e.maxSize.value,e.maxSize.message,t),a}(e,a);case He.ZodLazy:return()=>e.getter()._def;case He.ZodPromise:return function(e,t){return va(e.type._def,t)}(e,a);case He.ZodNaN:case He.ZodNever:return function(e){return"openAi"===e.target?void 0:{not:Bt({...e,currentPath:[...e.currentPath,"not"]})}}(a);case He.ZodEffects:return function(e,t){return"input"===t.effectStrategy?va(e.schema._def,t):Bt(t)}(e,a);case He.ZodAny:return Bt(a);case He.ZodUnknown:return function(e){return Bt(e)}(a);case He.ZodDefault:return function(e,t){return{...va(e.innerType._def,t),default:e.defaultValue()}}(e,a);case He.ZodBranded:return qt(e,a);case He.ZodReadonly:case He.ZodCatch:return((e,t)=>va(e.innerType._def,t))(e,a);case He.ZodPipeline:return((e,t)=>{if("input"===t.pipeStrategy)return va(e.in._def,t);if("output"===t.pipeStrategy)return va(e.out._def,t);const a=va(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]});return{allOf:[a,va(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",a?"1":"0"]})].filter(e=>void 0!==e)}})(e,a);case He.ZodFunction:case He.ZodVoid:case He.ZodSymbol:default:return}};function va(e,t,a=!1){var n;const r=t.seen.get(e);if(t.override){const s=null==(n=t.override)?void 0:n.call(t,e,t,r,a);if(s!==Lt)return s}if(r&&!a){const e=_a(r,t);if(void 0!==e)return e}const s={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,s);const i=ya(e,e.typeName,t),o="function"==typeof i?va(i(),t):i;if(o&&ba(e,t,o),t.postProcess){const a=t.postProcess(o,e,t);return s.jsonSchema=o,a}return s.jsonSchema=o,o}var _a=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Vt(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((e,a)=>t.currentPath[a]===e)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),Bt(t)):"seen"===t.$refStrategy?Bt(t):void 0}},ba=(e,t,a)=>(e.description&&(a.description=e.description,t.markdownDescription&&(a.markdownDescription=e.description)),a),ka=(e,t)=>{var a;const n=Ft(t);let r="object"==typeof t&&t.definitions?Object.entries(t.definitions).reduce((e,[t,a])=>{var r;return{...e,[t]:null!=(r=va(a._def,{...n,currentPath:[...n.basePath,n.definitionPath,t]},!0))?r:Bt(n)}},{}):void 0;const s="string"==typeof t?t:"title"===(null==t?void 0:t.nameStrategy)||null==t?void 0:t.name,i=null!=(a=va(e._def,void 0===s?n:{...n,currentPath:[...n.basePath,n.definitionPath,s]},!1))?a:Bt(n),o="object"==typeof t&&void 0!==t.name&&"title"===t.nameStrategy?t.name:void 0;void 0!==o&&(i.title=o),n.flags.hasReferencedOpenAiAnyType&&(r||(r={}),r[n.openAiAnyTypeName]||(r[n.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:"relative"===n.$refStrategy?"1":[...n.basePath,n.definitionPath,n.openAiAnyTypeName].join("/")}}));const d=void 0===s?r?{...i,[n.definitionPath]:r}:i:{$ref:[..."relative"===n.$refStrategy?[]:n.basePath,n.definitionPath,s].join("/"),[n.definitionPath]:{...r,[s]:i}};return"jsonSchema7"===n.target?d.$schema="http://json-schema.org/draft-07/schema#":"jsonSchema2019-09"!==n.target&&"openAi"!==n.target||(d.$schema="https://json-schema.org/draft/2019-09/schema#"),"openAi"===n.target&&("anyOf"in d||"oneOf"in d||"allOf"in d||"type"in d&&Array.isArray(d.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),d},xa=c.record(c.string(),c.boolean()).describe("Consent requirement mapping"),wa=c.lazy(()=>c.union([c.string(),c.number(),c.boolean(),Ta,c.array(wa)])),Za=c.tuple([wa,wa]).describe("Loop: [source, transform] tuple for array transformations"),Aa=c.array(wa).describe("Set: Array of values"),Oa=c.record(c.string(),wa).describe("Map: Object mapping keys to values"),Ta=c.object({key:c.string().optional().describe('Property path (e.g., "data.id")'),value:c.union([c.string(),c.number(),c.boolean()]).optional().describe("Static primitive value"),fn:c.string().optional().describe("Function string for custom transformation"),map:Oa.optional().describe("Object with key-value mappings"),loop:Za.optional().describe("Tuple [source, transform]"),set:Aa.optional().describe("Array of values"),consent:xa.optional().describe("Required consent states"),condition:c.string().optional().describe("Condition function string"),validate:c.string().optional().describe("Validation function string")}).refine(e=>Object.keys(e).length>0,{message:"ValueConfig must have at least one property"}).describe("Value configuration for transformations"),Sa=Za,Pa=Aa,ja=Oa,Na=(ka(Ta,{target:"jsonSchema7",$refStrategy:"relative",name:"ValueConfig"}),ka(Sa,{target:"jsonSchema7",$refStrategy:"relative",name:"Loop"}),ka(Pa,{target:"jsonSchema7",$refStrategy:"relative",name:"Set"}),ka(ja,{target:"jsonSchema7",$refStrategy:"relative",name:"Map"}),{merge:!0,shallow:!0,extend:!0});function Ea(e,t={},a={}){a={...Na,...a};const n=Object.entries(t).reduce((t,[n,r])=>{const s=e[n];return a.merge&&Array.isArray(s)&&Array.isArray(r)?t[n]=r.reduce((e,t)=>e.includes(t)?e:[...e,t],[...s]):(a.extend||n in e)&&(t[n]=r),t},{});return a.shallow?{...e,...n}:(Object.assign(e,n),e)}function Ca(e){return Array.isArray(e)}function Ia(e){return void 0!==e}function $a(e){return"object"==typeof e&&null!==e&&!Ca(e)&&"[object Object]"===Object.prototype.toString.call(e)}function Ra(e){return"string"==typeof e}function Ma(e,t="",a){const n=t.split(".");let r=e;for(let e=0;e<n.length;e++){const t=n[e];if("*"===t&&Ca(r)){const t=n.slice(e+1).join("."),s=[];for(const e of r){const n=Ma(e,t,a);s.push(n)}return s}if(r=r instanceof Object?r[t]:void 0,!r)break}return Ia(r)?r:a}function La(e="entity action",t={}){const a=t.timestamp||(new Date).setHours(0,13,37,0),n={data:{id:"ers",name:"Everyday Ruck Snack",color:"black",size:"l",price:420}},r={data:{id:"cc",name:"Cool Cap",size:"one size",price:42}};return function(e={}){var t;const a=e.timestamp||(new Date).setHours(0,13,37,0),n=e.group||"gr0up",r=e.count||1,s=Ea({name:"entity action",data:{string:"foo",number:1,boolean:!0,array:[0,"text",!1],not:void 0},context:{dev:["test",1]},globals:{lang:"elb"},custom:{completely:"random"},user:{id:"us3r",device:"c00k13",session:"s3ss10n"},nested:[{entity:"child",data:{is:"subordinated"},nested:[],context:{element:["child",0]}}],consent:{functional:!0},id:`${a}-${n}-${r}`,trigger:"test",entity:"entity",action:"action",timestamp:a,timing:3.14,group:n,count:r,version:{source:"0.2.1",tagging:1},source:{type:"web",id:"https://localhost:80",previous_id:"http://remotehost:9001"}},e,{merge:!1});if(e.name){const[a,n]=null!=(t=e.name.split(" "))?t:[];a&&n&&(s.entity=a,s.action=n)}return s}({...{"cart view":{data:{currency:"EUR",value:2*n.data.price},context:{shopping:["cart",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",data:{...n.data,quantity:2},context:{shopping:["cart",0]},nested:[]}],trigger:"load"},"checkout view":{data:{step:"payment",currency:"EUR",value:n.data.price+r.data.price},context:{shopping:["checkout",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",...n,context:{shopping:["checkout",0]},nested:[]},{entity:"product",...r,context:{shopping:["checkout",0]},nested:[]}],trigger:"load"},"order complete":{data:{id:"0rd3r1d",currency:"EUR",shipping:5.22,taxes:73.76,total:555},context:{shopping:["complete",0]},globals:{pagegroup:"shop"},nested:[{entity:"product",...n,context:{shopping:["complete",0]},nested:[]},{entity:"product",...r,context:{shopping:["complete",0]},nested:[]},{entity:"gift",data:{name:"Surprise"},context:{shopping:["complete",0]},nested:[]}],trigger:"load"},"page view":{data:{domain:"www.example.com",title:"walkerOS documentation",referrer:"https://www.elbwalker.com/",search:"?foo=bar",hash:"#hash",id:"/docs/"},globals:{pagegroup:"docs"},trigger:"load"},"product add":{...n,context:{shopping:["intent",0]},globals:{pagegroup:"shop"},nested:[],trigger:"click"},"product view":{...n,context:{shopping:["detail",0]},globals:{pagegroup:"shop"},nested:[],trigger:"load"},"product visible":{data:{...n.data,position:3,promo:!0},context:{shopping:["discover",0]},globals:{pagegroup:"shop"},nested:[],trigger:"load"},"promotion visible":{data:{name:"Setting up tracking easily",position:"hero"},context:{ab_test:["engagement",0]},globals:{pagegroup:"homepage"},trigger:"visible"},"session start":{data:{id:"s3ss10n",start:a,isNew:!0,count:1,runs:1,isStart:!0,storage:!0,referrer:"",device:"c00k13"},user:{id:"us3r",device:"c00k13",session:"s3ss10n",hash:"h4sh",address:"street number",email:"user@example.com",phone:"+49 123 456 789",userAgent:"Mozilla...",browser:"Chrome",browserVersion:"90",deviceType:"desktop",language:"de-DE",country:"DE",region:"HH",city:"Hamburg",zip:"20354",timezone:"Berlin",os:"walkerOS",osVersion:"1.0",screenSize:"1337x420",ip:"127.0.0.0",internal:!0,custom:"value"}}}[e],...t,name:e})}function za(e){return function(e){return"boolean"==typeof e}(e)||Ra(e)||function(e){return"number"==typeof e&&!Number.isNaN(e)}(e)||!Ia(e)||Ca(e)&&e.every(za)||$a(e)&&Object.values(e).every(za)}function Fa(e){return za(e)?e:void 0}function Da(e,t,a){return async function(...n){try{return await e(...n)}catch(e){if(!t)return;return await t(e)}finally{await(null==a?void 0:a())}}}async function Ua(e,t={},a={}){var n;if(!Ia(e))return;const r=$a(e)&&e.consent||a.consent||(null==(n=a.collector)?void 0:n.consent),s=Ca(t)?t:[t];for(const t of s){const n=await Da(Va)(e,t,{...a,consent:r});if(Ia(n))return n}}async function Va(e,t,a={}){const{collector:n,consent:r}=a;return(Ca(t)?t:[t]).reduce(async(t,s)=>{const i=await t;if(i)return i;const o=Ra(s)?{key:s}:s;if(!Object.keys(o).length)return;const{condition:d,consent:c,fn:u,key:l,loop:p,map:m,set:h,validate:f,value:g}=o;if(d&&!await Da(d)(e,s,n))return;if(c&&!function(e,t={},a={}){const n={...t,...a},r={};let s=void 0===e;return Object.keys(n).forEach(t=>{n[t]&&(r[t]=!0,e&&e[t]&&(s=!0))}),!!s&&r}(c,r))return g;let y=Ia(g)?g:e;if(u&&(y=await Da(u)(e,s,a)),l&&(y=Ma(e,l,g)),p){const[t,n]=p,r="this"===t?[e]:await Ua(e,t,a);Ca(r)&&(y=(await Promise.all(r.map(e=>Ua(e,n,a)))).filter(Ia))}else m?y=await Object.entries(m).reduce(async(t,[n,r])=>{const s=await t,i=await Ua(e,r,a);return Ia(i)&&(s[n]=i),s},Promise.resolve({})):h&&(y=await Promise.all(h.map(t=>Va(e,t,a))));f&&!await Da(f)(y)&&(y=void 0);const v=Fa(y);return Ia(v)?v:Fa(g)},Promise.resolve(void 0))}async function Ba(e,t,a,n,r){const s=$a(t)?t:{},i=a.data?await Ua(e,a.data,{collector:r}):{},o=(null==n?void 0:n.data)?await Ua(e,n.data,{collector:r}):{},d=$a(i)?i:{},c=$a(o)?o:{};return Ea(Ea(s,d),c)}import{getEnv as qa}from"@walkeros/web-core";function Ka(e,t,a={},n,r){const{window:s}=qa(r);if(!t.measurementId)return;const i=$a(n)?n:{},o=function(e,t){const a={};return t.includes("all")&&(t=["context","data","event","globals","source","user","version"]),t.forEach(t=>{let n=e[t]||{};"event"==t&&(n={id:e.id,timing:e.timing,trigger:e.trigger,entity:e.entity,action:e.action,group:e.group,count:e.count}),Object.entries(n).forEach(([e,n])=>{"context"==t&&(n=n[0]),a[`${t}_${e}`]=n})}),a}(e,a.include||t.include||["data"]),d={...o,...i};let c=e.name;!1!==t.snakeCase&&(c=function(e,t=!0){return t?e.replace(/\s+/g,"_").toLowerCase():e}(c)),d.send_to=t.measurementId,t.debug&&(d.debug_mode=!0);(0,s.gtag)("event",c,d)}import{getEnv as Wa}from"@walkeros/web-core";import{getEnv as Xa}from"@walkeros/web-core";import{getEnv as Ha}from"@walkeros/web-core";var Ja="dataLayer";function Ga(e,t,a){const{window:n,document:r}=Ha(a),{containerId:s,dataLayer:i,domain:o}=e,d=i||Ja;d===Ja?n.dataLayer=n.dataLayer||[]:n[d]=n[d]||[];n[d].push({"gtm.start":(new Date).getTime(),event:"gtm.js"}),t&&s&&function(e,t,a,n=globalThis.document){const r=a!=Ja?"&l="+a:"",s=n.createElement("script");s.src=t+e+r,n.head.appendChild(s)}(s,o||"https://www.googletagmanager.com/gtm.js?id=",d,r)}import{getEnv as Ya}from"@walkeros/web-core";import{getEnv as Qa}from"@walkeros/web-core";var en={},tn={};t(tn,{env:()=>an,events:()=>on,mapping:()=>pn});var an={};t(an,{init:()=>nn,push:()=>rn,simulation:()=>sn});var nn={window:{gtag:void 0,dataLayer:[]},document:{createElement:()=>({src:"",setAttribute:()=>{},removeAttribute:()=>{}}),head:{appendChild:()=>{}}}},rn={window:{gtag:Object.assign(()=>{},{}),dataLayer:[]},document:{createElement:()=>({src:"",setAttribute:()=>{},removeAttribute:()=>{}}),head:{appendChild:()=>{}}}},sn=["call:window.gtag"],on={};function dn(){const e=La("order complete");return["event","purchase",{transaction_id:e.data.id,value:e.data.total,tax:e.data.taxes,shipping:e.data.shipping,currency:"EUR",items:e.nested.filter(e=>"product"===e.entity).map(e=>({item_id:e.data.id,item_name:e.data.name,quantity:1})),send_to:"G-XXXXXX-1"}]}function cn(){const e=La("product add");return["event","add_to_cart",{currency:"EUR",value:e.data.price,items:[{item_id:e.data.id,item_variant:e.data.color,quantity:1}],send_to:"G-XXXXXX-1"}]}function un(){const e=La("order complete");return["event","conversion",{send_to:"AW-XXXXXXXXX/CONVERSION_LABEL",currency:"EUR",value:e.data.total,transaction_id:e.data.id}]}function ln(){const e=La("product view");return{event:"product_view",product_id:e.data.id,product_name:e.data.name,product_category:e.data.category,value:e.data.price,currency:"EUR"}}t(on,{adsConversion:()=>un,ga4AddToCart:()=>cn,ga4Purchase:()=>dn,gtmEvent:()=>ln});var pn={};t(pn,{adsConversion:()=>fn,combinedPurchase:()=>yn,config:()=>vn,ga4AddToCart:()=>hn,ga4Purchase:()=>mn,gtmProductView:()=>gn});var mn={name:"purchase",settings:{ga4:{include:["data","context"]}},data:{map:{transaction_id:"data.id",value:"data.total",tax:"data.taxes",shipping:"data.shipping",currency:{key:"data.currency",value:"EUR"},items:{loop:["nested",{condition:e=>$a(e)&&"product"===e.entity,map:{item_id:"data.id",item_name:"data.name",quantity:{key:"data.quantity",value:1}}}]}}}},hn={name:"add_to_cart",settings:{ga4:{include:["data"]}},data:{map:{currency:{value:"EUR",key:"data.currency"},value:"data.price",items:{loop:["this",{map:{item_id:"data.id",item_variant:"data.color",quantity:{value:1,key:"data.quantity"}}}]}}}},fn={name:"CONVERSION_LABEL",settings:{ads:{}},data:{map:{value:"data.total",currency:{value:"EUR",key:"data.currency"},transaction_id:"data.id"}}},gn={name:"product_view",settings:{gtm:{}},data:{map:{product_id:"data.id",product_name:"data.name",product_category:"data.category",value:"data.price",currency:{value:"EUR",key:"data.currency"}}}},yn={name:"purchase",settings:{ga4:{include:["data"]},ads:{},gtm:{}},data:{map:{transaction_id:"data.id",value:"data.total",currency:{value:"EUR",key:"data.currency"},items:{loop:["nested",{condition:e=>$a(e)&&"product"===e.entity,map:{item_id:"data.id",item_name:"data.name",quantity:{value:1,key:"data.quantity"}}}]}}}},vn={order:{complete:yn},product:{add:hn,view:gn}},_n=!1;function bn(){_n=!1}var kn={marketing:["ad_storage","ad_user_data","ad_personalization"],functional:["analytics_storage"]},xn={type:"google-gtag",config:{settings:{}},init({config:e,env:t}){const{settings:a={},loadScript:i}=e,{ga4:o,ads:d,gtm:c}=a;return(null==o?void 0:o.measurementId)&&function(e,t,a){const{window:i,document:o}=s(a),{measurementId:d,transport_url:c,server_container_url:u,pageview:l}=e;if(!d)return;t&&n(d,void 0,o),r(i);const p={};c&&(p.transport_url=c),u&&(p.server_container_url=u),!1===l&&(p.send_page_view=!1);const m=i.gtag;m("js",new Date),m("config",d,p)}(o,i,t),(null==d?void 0:d.conversionId)&&function(e,t,a){const{window:s,document:i}=Wa(a),{conversionId:o}=e;if(!o)return;e.currency||(e.currency="EUR"),t&&n(o,void 0,i),r(s);const d=s.gtag;d("js",new Date),d("config",o)}(d,i,t),(null==c?void 0:c.containerId)&&Ga(c,i,t),!!((null==o?void 0:o.measurementId)||(null==d?void 0:d.conversionId)||(null==c?void 0:c.containerId))&&e},async push(e,{config:t,mapping:a={},data:n,env:r,collector:s}){const{settings:i={}}=t,{ga4:o,ads:d,gtm:c}=i,u=a.settings||{},l=await Ba(e,n,t,o,s),p=await Ba(e,n,t,d,s),m=await Ba(e,n,t,c,s);(null==o?void 0:o.measurementId)&&Ka(e,o,u.ga4,l,r),(null==d?void 0:d.conversionId)&&a.name&&function(e,t,a={},n,r,s){const{conversionId:i,currency:o}=t,d=$a(n)?n:{},c=a.label||r;if(!c)return;const u={send_to:`${i}/${c}`,currency:o||"EUR",...d},{window:l}=Xa(s);(0,l.gtag)("event","conversion",u)}(0,d,u.ads,p,a.name,r),(null==c?void 0:c.containerId)&&function(e,t,a={},n,r){const{window:s}=Ya(r),i={event:e.name};s.dataLayer.push({...i,...$a(n)?n:e})}(e,0,u.gtm,m,r)},on(e,t){var a;if("consent"!==e||!t)return;const n=t,s=(null==(a=this.config)?void 0:a.settings)||{},{como:i=!0}=s;if(!i)return;const{window:o}=Qa(this.env),d=r(o);if(!d)return;const c=!0===i?kn:i;if(!_n){const e=new Set;if(Object.values(c).forEach(t=>{(Array.isArray(t)?t:[t]).forEach(t=>e.add(t))}),e.size>0){const t={};e.forEach(e=>{t[e]="denied"}),d("consent","default",t)}_n=!0}const u={};Object.entries(n).forEach(([e,t])=>{const a=c[e];if(!a)return;const n=Array.isArray(a)?a:[a],r=t?"granted":"denied";n.forEach(e=>{u[e]=r})}),0!==Object.keys(u).length&&d("consent","update",u)}},wn=xn;export{en as DestinationGtag,wn as default,xn as destinationGtag,tn as examples,bn as resetConsentState};//# sourceMappingURL=index.mjs.map