@alexkroman1/aai-ui 1.4.3 → 1.4.4
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/audio.js
CHANGED
|
@@ -20,10 +20,11 @@ async function createVoiceIO(opts) {
|
|
|
20
20
|
});
|
|
21
21
|
await ctx.resume();
|
|
22
22
|
const stream = await navigator.mediaDevices.getUserMedia({ audio: {
|
|
23
|
-
|
|
23
|
+
deviceId: { ideal: "default" },
|
|
24
24
|
echoCancellation: true,
|
|
25
25
|
noiseSuppression: true,
|
|
26
|
-
autoGainControl: true
|
|
26
|
+
autoGainControl: true,
|
|
27
|
+
voiceIsolation: true
|
|
27
28
|
} });
|
|
28
29
|
try {
|
|
29
30
|
await Promise.all([ctx.audioWorklet.addModule(captureWorkletSrc), ctx.audioWorklet.addModule(playbackWorkletSrc)]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=.1;async function t(t){let{sttSampleRate:n,ttsSampleRate:r,captureWorkletSrc:i,playbackWorkletSrc:a,onMicData:o}=t,s=r,c=new AudioContext({sampleRate:s,latencyHint:`playback`});await c.resume();let l=await navigator.mediaDevices.getUserMedia({audio:{deviceId:{ideal:`default`},echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,voiceIsolation:!0}});try{await Promise.all([c.audioWorklet.addModule(i),c.audioWorklet.addModule(a)])}catch(e){for(let e of l.getTracks())e.stop();throw await c.close().catch(e=>{console.warn(`AudioContext close failed:`,e)}),e}let u=c.createMediaStreamSource(l),d=new AudioWorkletNode(c,`capture-processor`,{channelCount:1,channelCountMode:`explicit`,processorOptions:{contextRate:s,sttSampleRate:n}});u.connect(d);let f=Math.floor(n*e)*2,p=f*2,m=new Uint8Array(p),h=new Uint8Array(p),g=m,_=0;d.port.postMessage({event:`start`}),d.port.onmessage=e=>{if(e.data.event!==`chunk`)return;let t=new Uint8Array(e.data.buffer);g.set(t,_),_+=t.byteLength,_>=f&&(o(g.buffer.slice(0,_)),g=g===m?h:m,_=0)};let v=null,y=null,b=new AbortController,{onPlaybackProgress:x}=t;function S(){if(v)return v;let e=new AudioWorkletNode(c,`playback-processor`,{processorOptions:{sampleRate:s}});return e.connect(c.destination),e.port.onmessage=t=>{t.data.event===`stop`?(e.disconnect(),v===e&&(v=null),y?.(),y=null):t.data.event===`progress`&&x?.(t.data.readPos)},v=e,e}let C={enqueue(e){b.signal.aborted||e.byteLength!==0&&S().port.postMessage({event:`write`,buffer:new Uint8Array(e)},[e])},done(){return v?new Promise(e=>{y=e,v?.port.postMessage({event:`done`})}):Promise.resolve()},flush(){v&&v.port.postMessage({event:`interrupt`})},async close(){if(!b.signal.aborted){b.abort(),d.port.postMessage({event:`stop`}),u.disconnect(),d.disconnect(),v&&v.disconnect();for(let e of l.getTracks())e.stop();await c.close().catch(()=>{})}},async[Symbol.asyncDispose](){await C.close()}};return C}export{t as createVoiceIO};
|
|
@@ -46,4 +46,4 @@ Error generating stack: `+e.message+`
|
|
|
46
46
|
|
|
47
47
|
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=ke,s=!he.jitless,c=s&&Ae.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Kn([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Yn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Ge(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Je(e,r,ge())))}),t)}var Xn=E(`$ZodUnion`,(e,t)=>{j.init(e,t),k(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),k(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),k(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),k(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>xe(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>Yn(t,i,e,a)):Yn(s,i,e,a)}}),Zn=E(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Xn.init(e,t);let n=e._zod.parse;k(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=ye(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!ke(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),Qn=E(`$ZodIntersection`,(e,t)=>{j.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>er(e,t,n)):er(e,i,a)}});function $n(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(je(e)&&je(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=$n(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=$n(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function er(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),Ge(e))return e;let o=$n(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var tr=E(`$ZodRecord`,(e,t)=>{j.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!je(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Ke(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Ke(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Ht.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Je(e,r,ge())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Ke(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Ke(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),nr=E(`$ZodEnum`,(e,t)=>{j.init(e,t);let n=_e(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ne.has(typeof e)).map(e=>typeof e==`string`?Pe(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),rr=E(`$ZodLiteral`,(e,t)=>{if(j.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Pe(e):e?Pe(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),ir=E(`$ZodTransform`,(e,t)=>{j.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new O(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new D;return n.value=i,n}});function ar(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}var or=E(`$ZodOptional`,(e,t)=>{j.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,k(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),k(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${xe(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>ar(t,e.value)):ar(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),sr=E(`$ZodExactOptional`,(e,t)=>{or.init(e,t),k(e._zod,`values`,()=>t.innerType._zod.values),k(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),cr=E(`$ZodNullable`,(e,t)=>{j.init(e,t),k(e._zod,`optin`,()=>t.innerType._zod.optin),k(e._zod,`optout`,()=>t.innerType._zod.optout),k(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${xe(e.source)}|null)$`):void 0}),k(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),lr=E(`$ZodDefault`,(e,t)=>{j.init(e,t),e._zod.optin=`optional`,k(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>ur(e,t)):ur(r,t)}});function ur(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var dr=E(`$ZodPrefault`,(e,t)=>{j.init(e,t),e._zod.optin=`optional`,k(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),fr=E(`$ZodNonOptional`,(e,t)=>{j.init(e,t),k(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>pr(t,e)):pr(i,e)}});function pr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var mr=E(`$ZodCatch`,(e,t)=>{j.init(e,t),k(e._zod,`optin`,()=>t.innerType._zod.optin),k(e._zod,`optout`,()=>t.innerType._zod.optout),k(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Je(e,n,ge()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Je(e,n,ge()))},input:e.value}),e.issues=[]),e)}}),hr=E(`$ZodPipe`,(e,t)=>{j.init(e,t),k(e._zod,`values`,()=>t.in._zod.values),k(e._zod,`optin`,()=>t.in._zod.optin),k(e._zod,`optout`,()=>t.out._zod.optout),k(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>gr(e,t.in,n)):gr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>gr(e,t.out,n)):gr(r,t.out,n)}});function gr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}var _r=E(`$ZodReadonly`,(e,t)=>{j.init(e,t),k(e._zod,`propValues`,()=>t.innerType._zod.propValues),k(e._zod,`values`,()=>t.innerType._zod.values),k(e._zod,`optin`,()=>t.innerType?._zod?.optin),k(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(vr):vr(r)}});function vr(e){return e.value=Object.freeze(e.value),e}var yr=E(`$ZodCustom`,(e,t)=>{Gt.init(e,t),j.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>br(t,n,r,e));br(i,n,r,e)}});function br(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Xe(e))}}var xr,Sr=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Cr(){return new Sr}(xr=globalThis).__zod_globalRegistry??(xr.__zod_globalRegistry=Cr());var wr=globalThis.__zod_globalRegistry;function Tr(e,t){return new e({type:`string`,...A(t)})}function Er(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...A(t)})}function Dr(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...A(t)})}function Or(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...A(t)})}function kr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...A(t)})}function Ar(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...A(t)})}function jr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...A(t)})}function Mr(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...A(t)})}function Nr(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...A(t)})}function Pr(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...A(t)})}function Fr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...A(t)})}function Ir(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...A(t)})}function Lr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...A(t)})}function Rr(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...A(t)})}function zr(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...A(t)})}function Br(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...A(t)})}function Vr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...A(t)})}function Hr(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...A(t)})}function Ur(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...A(t)})}function Wr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...A(t)})}function Gr(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...A(t)})}function Kr(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...A(t)})}function qr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...A(t)})}function Jr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...A(t)})}function Yr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...A(t)})}function Xr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...A(t)})}function Zr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...A(t)})}function Qr(e,t){return new e({type:`number`,checks:[],...A(t)})}function $r(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...A(t)})}function ei(e){return new e({type:`unknown`})}function ti(e,t){return new e({type:`never`,...A(t)})}function ni(e,t){return new qt({check:`less_than`,...A(t),value:e,inclusive:!1})}function ri(e,t){return new qt({check:`less_than`,...A(t),value:e,inclusive:!0})}function ii(e,t){return new Jt({check:`greater_than`,...A(t),value:e,inclusive:!1})}function ai(e,t){return new Jt({check:`greater_than`,...A(t),value:e,inclusive:!0})}function oi(e,t){return new Yt({check:`multiple_of`,...A(t),value:e})}function si(e,t){return new Zt({check:`max_length`,...A(t),maximum:e})}function ci(e,t){return new Qt({check:`min_length`,...A(t),minimum:e})}function li(e,t){return new $t({check:`length_equals`,...A(t),length:e})}function ui(e,t){return new tn({check:`string_format`,format:`regex`,...A(t),pattern:e})}function di(e){return new nn({check:`string_format`,format:`lowercase`,...A(e)})}function fi(e){return new rn({check:`string_format`,format:`uppercase`,...A(e)})}function pi(e,t){return new an({check:`string_format`,format:`includes`,...A(t),includes:e})}function mi(e,t){return new on({check:`string_format`,format:`starts_with`,...A(t),prefix:e})}function hi(e,t){return new sn({check:`string_format`,format:`ends_with`,...A(t),suffix:e})}function gi(e){return new cn({check:`overwrite`,tx:e})}function _i(e){return gi(t=>t.normalize(e))}function vi(){return gi(e=>e.trim())}function yi(){return gi(e=>e.toLowerCase())}function bi(){return gi(e=>e.toUpperCase())}function xi(){return gi(e=>De(e))}function Si(e,t,n){return new e({type:`array`,element:t,...A(n)})}function Ci(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...A(n)})}function wi(e){let t=Ti(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(Xe(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(Xe(r))}},e(n.value,n)));return t}function Ti(e,t){let n=new Gt({check:`custom`,...A(t)});return n._zod.check=e,n}function Ei(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??wr,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function N(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,N(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&P(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&o.schema._prefault&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function Di(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
48
48
|
|
|
49
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Oi(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:Ai(t,`input`,e.processors),output:Ai(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function P(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return P(r.element,n);if(r.type===`set`)return P(r.valueType,n);if(r.type===`lazy`)return P(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return P(r.innerType,n);if(r.type===`intersection`)return P(r.left,n)||P(r.right,n);if(r.type===`record`||r.type===`map`)return P(r.keyType,n)||P(r.valueType,n);if(r.type===`pipe`)return P(r.in,n)||P(r.out,n);if(r.type===`object`){for(let e in r.shape)if(P(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(P(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(P(e,n))return!0;return!!(r.rest&&P(r.rest,n))}return!1}var ki=(e,t={})=>n=>{let r=Ei({...n,processors:t});return N(e,r),Di(r,e),Oi(r,e)},Ai=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Ei({...i??{},target:a,io:t,processors:n});return N(e,o),Di(o,e),Oi(o,e)},ji={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Mi=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ji[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Ni=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},Pi=(e,t,n,r)=>{n.not={}},Fi=(e,t,n,r)=>{let i=e._zod.def,a=_e(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ii=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},Li=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},F=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},I=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=N(a.element,t,{...r,path:[...r.path,`items`]})},Ri=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=N(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=N(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},zi=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>N(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Bi=(e,t,n,r)=>{let i=e._zod.def,a=N(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=N(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Vi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=N(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=N(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=N(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Hi=(e,t,n,r)=>{let i=e._zod.def,a=N(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Ui=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Wi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Gi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ki=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},qi=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;N(a,t,r);let o=t.seen.get(e);o.ref=a},Ji=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Yi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Xi=E(`ZodISODateTime`,(e,t)=>{Cn.init(e,t),z.init(e,t)});function Zi(e){return Jr(Xi,e)}var Qi=E(`ZodISODate`,(e,t)=>{wn.init(e,t),z.init(e,t)});function $i(e){return Yr(Qi,e)}var ea=E(`ZodISOTime`,(e,t)=>{Tn.init(e,t),z.init(e,t)});function ta(e){return Xr(ea,e)}var na=E(`ZodISODuration`,(e,t)=>{En.init(e,t),z.init(e,t)});function ra(e){return Zr(na,e)}var ia=(e,t)=>{Qe.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>tt(e,t)},flatten:{value:t=>et(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ve,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ve,2)}},isEmpty:{get(){return e.issues.length===0}}})};E(`ZodError`,ia);var aa=E(`ZodError`,ia,{Parent:Error}),oa=nt(aa),sa=rt(aa),ca=it(aa),la=ot(aa),ua=ct(aa),da=lt(aa),fa=ut(aa),pa=dt(aa),ma=ft(aa),ha=pt(aa),ga=mt(aa),_a=ht(aa),L=E(`ZodType`,(e,t)=>(j.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Ai(e,`input`),output:Ai(e,`output`)}}),e.toJSONSchema=ki(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(Te(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>Fe(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>oa(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ca(e,t,n),e.parseAsync=async(t,n)=>sa(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>la(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ua(e,t,n),e.decode=(t,n)=>da(e,t,n),e.encodeAsync=async(t,n)=>fa(e,t,n),e.decodeAsync=async(t,n)=>pa(e,t,n),e.safeEncode=(t,n)=>ma(e,t,n),e.safeDecode=(t,n)=>ha(e,t,n),e.safeEncodeAsync=async(t,n)=>ga(e,t,n),e.safeDecodeAsync=async(t,n)=>_a(e,t,n),e.refine=(t,n)=>e.check(Oo(t,n)),e.superRefine=t=>e.check(ko(t)),e.overwrite=t=>e.check(gi(t)),e.optional=()=>po(e),e.exactOptional=()=>V(e),e.nullable=()=>ho(e),e.nullish=()=>po(ho(e)),e.nonoptional=t=>xo(e,t),e.array=()=>Ja(e),e.or=t=>Qa([e,t]),e.and=t=>no(e,t),e.transform=t=>wo(e,uo(t)),e.default=t=>_o(e,t),e.prefault=t=>yo(e,t),e.catch=t=>So(e,t),e.pipe=t=>wo(e,t),e.readonly=()=>Eo(e),e.describe=t=>{let n=e.clone();return wr.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return wr.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return wr.get(e);let n=e.clone();return wr.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),va=E(`_ZodString`,(e,t)=>{dn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mi(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(ui(...t)),e.includes=(...t)=>e.check(pi(...t)),e.startsWith=(...t)=>e.check(mi(...t)),e.endsWith=(...t)=>e.check(hi(...t)),e.min=(...t)=>e.check(ci(...t)),e.max=(...t)=>e.check(si(...t)),e.length=(...t)=>e.check(li(...t)),e.nonempty=(...t)=>e.check(ci(1,...t)),e.lowercase=t=>e.check(di(t)),e.uppercase=t=>e.check(fi(t)),e.trim=()=>e.check(vi()),e.normalize=(...t)=>e.check(_i(...t)),e.toLowerCase=()=>e.check(yi()),e.toUpperCase=()=>e.check(bi()),e.slugify=()=>e.check(xi())}),ya=E(`ZodString`,(e,t)=>{dn.init(e,t),va.init(e,t),e.email=t=>e.check(Er(ba,t)),e.url=t=>e.check(Mr(Ca,t)),e.jwt=t=>e.check(qr(Ra,t)),e.emoji=t=>e.check(Nr(wa,t)),e.guid=t=>e.check(Dr(xa,t)),e.uuid=t=>e.check(Or(Sa,t)),e.uuidv4=t=>e.check(kr(Sa,t)),e.uuidv6=t=>e.check(Ar(Sa,t)),e.uuidv7=t=>e.check(jr(Sa,t)),e.nanoid=t=>e.check(Pr(Ta,t)),e.guid=t=>e.check(Dr(xa,t)),e.cuid=t=>e.check(Fr(Ea,t)),e.cuid2=t=>e.check(Ir(Da,t)),e.ulid=t=>e.check(Lr(Oa,t)),e.base64=t=>e.check(Wr(Fa,t)),e.base64url=t=>e.check(Gr(Ia,t)),e.xid=t=>e.check(Rr(ka,t)),e.ksuid=t=>e.check(zr(Aa,t)),e.ipv4=t=>e.check(Br(ja,t)),e.ipv6=t=>e.check(Vr(Ma,t)),e.cidrv4=t=>e.check(Hr(Na,t)),e.cidrv6=t=>e.check(Ur(Pa,t)),e.e164=t=>e.check(Kr(La,t)),e.datetime=t=>e.check(Zi(t)),e.date=t=>e.check($i(t)),e.time=t=>e.check(ta(t)),e.duration=t=>e.check(ra(t))});function R(e){return Tr(ya,e)}var z=E(`ZodStringFormat`,(e,t)=>{M.init(e,t),va.init(e,t)}),ba=E(`ZodEmail`,(e,t)=>{mn.init(e,t),z.init(e,t)}),xa=E(`ZodGUID`,(e,t)=>{fn.init(e,t),z.init(e,t)}),Sa=E(`ZodUUID`,(e,t)=>{pn.init(e,t),z.init(e,t)}),Ca=E(`ZodURL`,(e,t)=>{hn.init(e,t),z.init(e,t)}),wa=E(`ZodEmoji`,(e,t)=>{gn.init(e,t),z.init(e,t)}),Ta=E(`ZodNanoID`,(e,t)=>{_n.init(e,t),z.init(e,t)}),Ea=E(`ZodCUID`,(e,t)=>{vn.init(e,t),z.init(e,t)}),Da=E(`ZodCUID2`,(e,t)=>{yn.init(e,t),z.init(e,t)}),Oa=E(`ZodULID`,(e,t)=>{bn.init(e,t),z.init(e,t)}),ka=E(`ZodXID`,(e,t)=>{xn.init(e,t),z.init(e,t)}),Aa=E(`ZodKSUID`,(e,t)=>{Sn.init(e,t),z.init(e,t)}),ja=E(`ZodIPv4`,(e,t)=>{Dn.init(e,t),z.init(e,t)}),Ma=E(`ZodIPv6`,(e,t)=>{On.init(e,t),z.init(e,t)}),Na=E(`ZodCIDRv4`,(e,t)=>{kn.init(e,t),z.init(e,t)}),Pa=E(`ZodCIDRv6`,(e,t)=>{An.init(e,t),z.init(e,t)}),Fa=E(`ZodBase64`,(e,t)=>{Mn.init(e,t),z.init(e,t)}),Ia=E(`ZodBase64URL`,(e,t)=>{Pn.init(e,t),z.init(e,t)}),La=E(`ZodE164`,(e,t)=>{Fn.init(e,t),z.init(e,t)}),Ra=E(`ZodJWT`,(e,t)=>{Ln.init(e,t),z.init(e,t)}),za=E(`ZodNumber`,(e,t)=>{Rn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ni(e,t,n,r),e.gt=(t,n)=>e.check(ii(t,n)),e.gte=(t,n)=>e.check(ai(t,n)),e.min=(t,n)=>e.check(ai(t,n)),e.lt=(t,n)=>e.check(ni(t,n)),e.lte=(t,n)=>e.check(ri(t,n)),e.max=(t,n)=>e.check(ri(t,n)),e.int=t=>e.check(Ha(t)),e.safe=t=>e.check(Ha(t)),e.positive=t=>e.check(ii(0,t)),e.nonnegative=t=>e.check(ai(0,t)),e.negative=t=>e.check(ni(0,t)),e.nonpositive=t=>e.check(ri(0,t)),e.multipleOf=(t,n)=>e.check(oi(t,n)),e.step=(t,n)=>e.check(oi(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Ba(e){return Qr(za,e)}var Va=E(`ZodNumberFormat`,(e,t)=>{zn.init(e,t),za.init(e,t)});function Ha(e){return $r(Va,e)}var Ua=E(`ZodUnknown`,(e,t)=>{Bn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Wa(){return ei(Ua)}var Ga=E(`ZodNever`,(e,t)=>{Vn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r)});function Ka(e){return ti(Ga,e)}var qa=E(`ZodArray`,(e,t)=>{Un.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>I(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(ci(t,n)),e.nonempty=t=>e.check(ci(1,t)),e.max=(t,n)=>e.check(si(t,n)),e.length=(t,n)=>e.check(li(t,n)),e.unwrap=()=>e.element});function Ja(e,t){return Si(qa,e,t)}var Ya=E(`ZodObject`,(e,t)=>{Jn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r),k(e,`shape`,()=>t.shape),e.keyof=()=>oo(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Wa()}),e.loose=()=>e.clone({...e._zod.def,catchall:Wa()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ka()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Be(e,t),e.safeExtend=t=>Ve(e,t),e.merge=t=>He(e,t),e.pick=t=>Re(e,t),e.omit=t=>ze(e,t),e.partial=(...t)=>Ue(fo,e,t[0]),e.required=(...t)=>We(bo,e,t[0])});function Xa(e,t){return new Ya({type:`object`,shape:e??{},...A(t)})}var Za=E(`ZodUnion`,(e,t)=>{Xn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),e.options=t.options});function Qa(e,t){return new Za({type:`union`,options:e,...A(t)})}var $a=E(`ZodDiscriminatedUnion`,(e,t)=>{Za.init(e,t),Zn.init(e,t)});function eo(e,t,n){return new $a({type:`union`,options:t,discriminator:e,...A(n)})}var to=E(`ZodIntersection`,(e,t)=>{Qn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r)});function no(e,t){return new to({type:`intersection`,left:e,right:t})}var ro=E(`ZodRecord`,(e,t)=>{tr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function io(e,t,n){return new ro({type:`record`,keyType:e,valueType:t,...A(n)})}var ao=E(`ZodEnum`,(e,t)=>{nr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new ao({...t,checks:[],...A(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new ao({...t,checks:[],...A(r),entries:i})}});function oo(e,t){return new ao({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...A(t)})}var so=E(`ZodLiteral`,(e,t)=>{rr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function co(e,t){return new so({type:`literal`,values:Array.isArray(e)?e:[e],...A(t)})}var lo=E(`ZodTransform`,(e,t)=>{ir.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>F(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new O(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Xe(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Xe(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function uo(e){return new lo({type:`transform`,transform:e})}var fo=E(`ZodOptional`,(e,t)=>{or.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function po(e){return new fo({type:`optional`,innerType:e})}var B=E(`ZodExactOptional`,(e,t)=>{sr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function V(e){return new B({type:`optional`,innerType:e})}var mo=E(`ZodNullable`,(e,t)=>{cr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ho(e){return new mo({type:`nullable`,innerType:e})}var go=E(`ZodDefault`,(e,t)=>{lr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function _o(e,t){return new go({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Me(t)}})}var vo=E(`ZodPrefault`,(e,t)=>{dr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yo(e,t){return new vo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Me(t)}})}var bo=E(`ZodNonOptional`,(e,t)=>{fr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xo(e,t){return new bo({type:`nonoptional`,innerType:e,...A(t)})}var H=E(`ZodCatch`,(e,t)=>{mr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function So(e,t){return new H({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Co=E(`ZodPipe`,(e,t)=>{hr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r),e.in=t.in,e.out=t.out});function wo(e,t){return new Co({type:`pipe`,in:e,out:t})}var To=E(`ZodReadonly`,(e,t)=>{_r.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Eo(e){return new To({type:`readonly`,innerType:e})}var Do=E(`ZodCustom`,(e,t)=>{yr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r)});function Oo(e,t={}){return Ci(Do,e,t)}function ko(e){return wi(e)}oo([`web_search`,`visit_webpage`,`fetch_json`,`run_code`]),oo([`auto`,`required`]);function Ao(e){return e instanceof Error?e.message:String(e)}var jo=Xa({type:R()}).passthrough();function Mo(e,t){let n=e.safeParse(t);return n.success?{ok:!0,data:n.data}:{ok:!1,malformed:!jo.safeParse(t).success,error:n.error.message}}eo(`op`,[Xa({op:co(`get`),key:R().min(1)}),Xa({op:co(`set`),key:R().min(1),value:Wa(),expireIn:Ba().int().positive().optional()}),Xa({op:co(`del`),key:R().min(1)})]);var No=oo([`stt`,`llm`,`tts`,`tool`,`protocol`,`connection`,`audio`,`internal`]),Po=e=>Xa({type:co(e)}),Fo=Ba().int().nonnegative().optional(),Io=eo(`type`,[Po(`speech_started`),Po(`speech_stopped`),Xa({type:co(`user_transcript`),text:R(),turnOrder:Fo}),Xa({type:co(`agent_transcript`),text:R()}),Xa({type:co(`tool_call`),toolCallId:R(),toolName:R(),args:io(R(),Wa())}),Xa({type:co(`tool_call_done`),toolCallId:R(),result:R().max(me)}),Po(`reply_done`),Po(`cancelled`),Po(`reset`),Po(`idle_timeout`),Xa({type:co(`error`),code:No,message:R()}),Xa({type:co(`custom_event`),event:R().min(1),data:Wa()})]),Lo=Xa({audioFormat:oo([`pcm16`]),sampleRate:Ba().int().positive(),ttsSampleRate:Ba().int().positive()}),Ro=eo(`type`,[Xa({type:co(`config`),audioFormat:R(),sampleRate:Ba(),ttsSampleRate:Ba(),sessionId:R().optional()}),Po(`audio_done`),...Io.options]);eo(`type`,[Po(`audio_ready`),Po(`cancel`),Po(`reset`),Xa({type:co(`history`),messages:Ja(Xa({role:oo([`user`,`assistant`]),content:R().max(1e5)})).max(200)})]);var zo=`modulepreload`,Bo=function(e,t){return new URL(e,t).href},Vo={},Ho=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=Bo(t,n),t in Vo)return;Vo[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:zo,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};async function Uo(e,t,n){if(e.audioSetupInFlight)return;e.audioSetupInFlight=!0;let r=e.generation;try{let[{createVoiceIO:i},a,o]=await Promise.all([Ho(()=>import(`./audio-DH9LpexG.js`),[],import.meta.url),Ho(()=>import(`./capture-processor-C26lSiVr.js`).then(e=>e.default),[],import.meta.url),Ho(()=>import(`./playback-processor-dSA8Im99.js`).then(e=>e.default),[],import.meta.url)]),s=await i({sttSampleRate:t.sampleRate,ttsSampleRate:t.ttsSampleRate,captureWorkletSrc:a,playbackWorkletSrc:o,onMicData:e=>{try{n.sendBinary(e)}catch{console.debug(`[aai-ui] sendBinary dropped: connection closed`)}}});if(e.generation!==r||!e.ws||e.ws.readyState!==1){s.close();return}e.voiceIO=s,n.send({type:`audio_ready`}),n.updateState({state:`listening`})}catch(t){if(e.generation!==r||!e.ws||e.ws.readyState!==1)return;n.updateState({state:`error`,error:{code:`audio`,message:`Microphone access failed: ${Ao(t)}`},running:!1})}finally{e.audioSetupInFlight=!1}}function Wo(e,t,n){let r=new URL(`websocket`,e.endsWith(`/`)?e:`${e}/`);return r.protocol=r.protocol===`https:`?`wss:`:`ws:`,n?r.searchParams.set(`sessionId`,n):t&&r.searchParams.set(`resume`,`1`),r}function Go(e){let t=e.WebSocket??WebSocket,n={state:`disconnected`,messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null,started:!1,running:!1},r=new Set;function i(){for(let e of r)e()}function a(e){n={...n,...e},i()}function o(){return n}function s(e){return r.add(e),()=>{r.delete(e)}}let c={ws:null,voiceIO:null,audioSetupInFlight:!1,generation:0},l=null,u=!1;function d(){c.audioSetupInFlight=!1,c.voiceIO?.close(),c.voiceIO=null}function f(){a({messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null})}function p(e){c.ws&&c.ws.readyState===1&&c.ws.send(JSON.stringify(e))}function m(e){c.ws&&c.ws.readyState===1&&c.ws.send(e)}let h={send:p,sendBinary:m,updateState:a},g=0,_=0;function v(e){g++,a({userTranscript:null,messages:[...n.messages,{role:`user`,content:e}],state:`thinking`})}function y(e){a({agentTranscript:null,messages:[...n.messages,{role:`assistant`,content:e}]})}function b(e){switch(n.state===`error`&&e.type!==`error`&&a({state:`disconnected`,error:null}),e.type){case`speech_started`:a({userTranscript:``});break;case`speech_stopped`:break;case`user_transcript`:v(e.text);break;case`agent_transcript`:y(e.text);break;case`tool_call`:a({toolCalls:[...n.toolCalls,{callId:e.toolCallId,name:e.toolName,args:e.args,status:`pending`,afterMessageIndex:n.messages.length-1}]});break;case`tool_call_done`:{let t=n.toolCalls,r=t.findIndex(t=>t.callId===e.toolCallId);if(r!==-1){let n=[...t],i=n[r];i&&(n[r]={...i,status:`done`,result:e.result}),a({toolCalls:n})}break}case`reply_done`:a({state:`listening`});break;case`cancelled`:g++,c.voiceIO?.flush(),a({userTranscript:null,agentTranscript:null,state:`listening`});break;case`reset`:g++,c.voiceIO?.flush(),a({messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null,state:`listening`});break;case`custom_event`:a({customEvents:[...n.customEvents,{id:++_,event:e.event,data:e.data}]});break;case`error`:console.error(`Agent error:`,e.message),a({state:`error`,error:{code:e.code,message:e.message},running:!1});break;default:break}}function x(e){n.state===`disconnected`&&n.error!==null||(n.state!==`speaking`&&a({state:`speaking`}),e.buffer instanceof ArrayBuffer&&c.voiceIO?.enqueue(e.buffer))}function S(){let e=g,t=c.voiceIO;t?t.done().then(()=>{g===e&&a({state:`listening`})}).catch(e=>{console.warn(`Audio playback done failed:`,e)}):a({state:`listening`})}function ee(e){try{let t=Mo(Ro,JSON.parse(e));return t.ok?t.data:(t.malformed&&console.warn(`Ignoring invalid server message:`,t.error),null)}catch{return null}}function C(e){let{type:t,sessionId:n,...r}=e,i=Lo.safeParse(r);return i.success?n?{...i.data,sessionId:n}:i.data:(console.warn(`Unsupported server config:`,i.error.message),null)}function te(e){if(e instanceof ArrayBuffer)return x(new Uint8Array(e)),null;let t=ee(e);return t?t.type===`config`?C(t):t.type===`audio_done`?(S(),null):(b(t),null):null}function ne(r){a({state:`connecting`,error:null}),l?.abort(),d(),c.ws?.close(),c.ws=null,c.generation++;let i=new AbortController;l=i;let{signal:o}=i;r?.signal&&r.signal.addEventListener(`abort`,()=>ae(),{signal:o});let s=u?void 0:e.resumeSessionId,f=new t(Wo(e.platformUrl,u,s).toString());f.binaryType=`arraybuffer`,c.ws=f,f.addEventListener(`open`,()=>{a({state:`ready`})},{signal:o}),f.addEventListener(`message`,t=>{let r=te(t.data);if(r){r.sessionId&&e.onSessionId?.(r.sessionId);let t=u;u=!0,Uo(c,r,h).catch(e=>{h.updateState({state:`error`,error:{code:`audio`,message:`Audio capture failed: ${Ao(e)}`},running:!1})}),t&&n.messages.length>0&&p({type:`history`,messages:n.messages.map(e=>({role:e.role,content:e.content}))})}},{signal:o}),f.addEventListener(`close`,()=>{o.aborted||(i.abort(),d(),a({state:`disconnected`,running:!1}))},{signal:o})}function re(){c.voiceIO?.flush(),a({state:`listening`}),p({type:`cancel`})}function ie(){if(c.voiceIO?.flush(),c.ws&&c.ws.readyState===1){p({type:`reset`});return}f(),ae(),ne()}function ae(){l?.abort(),l=null,d(),c.ws?.close(),c.ws=null,a({state:`disconnected`,running:!1})}function oe(){a({started:!0,running:!0}),ne()}function se(){n.running?ae():(a({running:!0}),ne())}return{getSnapshot:o,subscribe:s,connect:ne,cancel:re,resetState:f,reset:ie,disconnect:ae,start:oe,toggle:se,[Symbol.dispose](){ae()}}}function Ko(e=`#app`){if(typeof e!=`string`)return e;let t=document.querySelector(e);if(!t)throw Error(`Element not found: ${e}`);return t}function qo({name:e,Sidebar:t,sidebarWidth:n}){let r=(0,S.jsx)(T,{...e===void 0?{}:{title:e}}),i=t?(0,S.jsx)(fe,{sidebar:(0,S.jsx)(t,{}),...n===void 0?{}:{sidebarWidth:n},children:r}):r;return(0,S.jsx)(pe,{...e===void 0?{}:{title:e},children:i})}function Jo(e){let t=Ko(e.target),n=Go({platformUrl:e.platformUrl??globalThis.location.origin+globalThis.location.pathname,onSessionId:e.onSessionId,resumeSessionId:e.resumeSessionId,...e.WebSocket?{WebSocket:e.WebSocket}:{}}),r;if(`component`in e&&e.component)r=e.component;else{let{name:t,sidebar:n,sidebarWidth:i}=e;r=()=>(0,l.createElement)(qo,{...t===void 0?{}:{name:t},...n===void 0?{}:{Sidebar:n},...i===void 0?{}:{sidebarWidth:i}})}let i=`tools`in e&&e.tools?e.tools:{},a=(0,d.createRoot)(t);(0,u.flushSync)(()=>{a.render((0,l.createElement)(re.Provider,{value:i},(0,l.createElement)(y,e.theme===void 0?{}:{value:e.theme},(0,l.createElement)(g,{value:n},(0,l.createElement)(r)))))});let o={session:n,dispose(){a.unmount(),n[Symbol.dispose]()},[Symbol.dispose](){o.dispose()}};return o}Jo({});
|
|
49
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Oi(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:Ai(t,`input`,e.processors),output:Ai(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function P(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return P(r.element,n);if(r.type===`set`)return P(r.valueType,n);if(r.type===`lazy`)return P(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return P(r.innerType,n);if(r.type===`intersection`)return P(r.left,n)||P(r.right,n);if(r.type===`record`||r.type===`map`)return P(r.keyType,n)||P(r.valueType,n);if(r.type===`pipe`)return P(r.in,n)||P(r.out,n);if(r.type===`object`){for(let e in r.shape)if(P(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(P(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(P(e,n))return!0;return!!(r.rest&&P(r.rest,n))}return!1}var ki=(e,t={})=>n=>{let r=Ei({...n,processors:t});return N(e,r),Di(r,e),Oi(r,e)},Ai=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Ei({...i??{},target:a,io:t,processors:n});return N(e,o),Di(o,e),Oi(o,e)},ji={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Mi=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ji[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},Ni=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},Pi=(e,t,n,r)=>{n.not={}},Fi=(e,t,n,r)=>{let i=e._zod.def,a=_e(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ii=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},Li=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},F=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},I=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=N(a.element,t,{...r,path:[...r.path,`items`]})},Ri=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=N(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=N(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},zi=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>N(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Bi=(e,t,n,r)=>{let i=e._zod.def,a=N(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=N(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Vi=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=N(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=N(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=N(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Hi=(e,t,n,r)=>{let i=e._zod.def,a=N(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Ui=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Wi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Gi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ki=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},qi=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;N(a,t,r);let o=t.seen.get(e);o.ref=a},Ji=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Yi=(e,t,n,r)=>{let i=e._zod.def;N(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Xi=E(`ZodISODateTime`,(e,t)=>{Cn.init(e,t),z.init(e,t)});function Zi(e){return Jr(Xi,e)}var Qi=E(`ZodISODate`,(e,t)=>{wn.init(e,t),z.init(e,t)});function $i(e){return Yr(Qi,e)}var ea=E(`ZodISOTime`,(e,t)=>{Tn.init(e,t),z.init(e,t)});function ta(e){return Xr(ea,e)}var na=E(`ZodISODuration`,(e,t)=>{En.init(e,t),z.init(e,t)});function ra(e){return Zr(na,e)}var ia=(e,t)=>{Qe.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>tt(e,t)},flatten:{value:t=>et(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ve,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ve,2)}},isEmpty:{get(){return e.issues.length===0}}})};E(`ZodError`,ia);var aa=E(`ZodError`,ia,{Parent:Error}),oa=nt(aa),sa=rt(aa),ca=it(aa),la=ot(aa),ua=ct(aa),da=lt(aa),fa=ut(aa),pa=dt(aa),ma=ft(aa),ha=pt(aa),ga=mt(aa),_a=ht(aa),L=E(`ZodType`,(e,t)=>(j.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Ai(e,`input`),output:Ai(e,`output`)}}),e.toJSONSchema=ki(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(Te(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>Fe(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>oa(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ca(e,t,n),e.parseAsync=async(t,n)=>sa(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>la(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>ua(e,t,n),e.decode=(t,n)=>da(e,t,n),e.encodeAsync=async(t,n)=>fa(e,t,n),e.decodeAsync=async(t,n)=>pa(e,t,n),e.safeEncode=(t,n)=>ma(e,t,n),e.safeDecode=(t,n)=>ha(e,t,n),e.safeEncodeAsync=async(t,n)=>ga(e,t,n),e.safeDecodeAsync=async(t,n)=>_a(e,t,n),e.refine=(t,n)=>e.check(Oo(t,n)),e.superRefine=t=>e.check(ko(t)),e.overwrite=t=>e.check(gi(t)),e.optional=()=>po(e),e.exactOptional=()=>V(e),e.nullable=()=>ho(e),e.nullish=()=>po(ho(e)),e.nonoptional=t=>xo(e,t),e.array=()=>Ja(e),e.or=t=>Qa([e,t]),e.and=t=>no(e,t),e.transform=t=>wo(e,uo(t)),e.default=t=>_o(e,t),e.prefault=t=>yo(e,t),e.catch=t=>So(e,t),e.pipe=t=>wo(e,t),e.readonly=()=>Eo(e),e.describe=t=>{let n=e.clone();return wr.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return wr.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return wr.get(e);let n=e.clone();return wr.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),va=E(`_ZodString`,(e,t)=>{dn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mi(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(ui(...t)),e.includes=(...t)=>e.check(pi(...t)),e.startsWith=(...t)=>e.check(mi(...t)),e.endsWith=(...t)=>e.check(hi(...t)),e.min=(...t)=>e.check(ci(...t)),e.max=(...t)=>e.check(si(...t)),e.length=(...t)=>e.check(li(...t)),e.nonempty=(...t)=>e.check(ci(1,...t)),e.lowercase=t=>e.check(di(t)),e.uppercase=t=>e.check(fi(t)),e.trim=()=>e.check(vi()),e.normalize=(...t)=>e.check(_i(...t)),e.toLowerCase=()=>e.check(yi()),e.toUpperCase=()=>e.check(bi()),e.slugify=()=>e.check(xi())}),ya=E(`ZodString`,(e,t)=>{dn.init(e,t),va.init(e,t),e.email=t=>e.check(Er(ba,t)),e.url=t=>e.check(Mr(Ca,t)),e.jwt=t=>e.check(qr(Ra,t)),e.emoji=t=>e.check(Nr(wa,t)),e.guid=t=>e.check(Dr(xa,t)),e.uuid=t=>e.check(Or(Sa,t)),e.uuidv4=t=>e.check(kr(Sa,t)),e.uuidv6=t=>e.check(Ar(Sa,t)),e.uuidv7=t=>e.check(jr(Sa,t)),e.nanoid=t=>e.check(Pr(Ta,t)),e.guid=t=>e.check(Dr(xa,t)),e.cuid=t=>e.check(Fr(Ea,t)),e.cuid2=t=>e.check(Ir(Da,t)),e.ulid=t=>e.check(Lr(Oa,t)),e.base64=t=>e.check(Wr(Fa,t)),e.base64url=t=>e.check(Gr(Ia,t)),e.xid=t=>e.check(Rr(ka,t)),e.ksuid=t=>e.check(zr(Aa,t)),e.ipv4=t=>e.check(Br(ja,t)),e.ipv6=t=>e.check(Vr(Ma,t)),e.cidrv4=t=>e.check(Hr(Na,t)),e.cidrv6=t=>e.check(Ur(Pa,t)),e.e164=t=>e.check(Kr(La,t)),e.datetime=t=>e.check(Zi(t)),e.date=t=>e.check($i(t)),e.time=t=>e.check(ta(t)),e.duration=t=>e.check(ra(t))});function R(e){return Tr(ya,e)}var z=E(`ZodStringFormat`,(e,t)=>{M.init(e,t),va.init(e,t)}),ba=E(`ZodEmail`,(e,t)=>{mn.init(e,t),z.init(e,t)}),xa=E(`ZodGUID`,(e,t)=>{fn.init(e,t),z.init(e,t)}),Sa=E(`ZodUUID`,(e,t)=>{pn.init(e,t),z.init(e,t)}),Ca=E(`ZodURL`,(e,t)=>{hn.init(e,t),z.init(e,t)}),wa=E(`ZodEmoji`,(e,t)=>{gn.init(e,t),z.init(e,t)}),Ta=E(`ZodNanoID`,(e,t)=>{_n.init(e,t),z.init(e,t)}),Ea=E(`ZodCUID`,(e,t)=>{vn.init(e,t),z.init(e,t)}),Da=E(`ZodCUID2`,(e,t)=>{yn.init(e,t),z.init(e,t)}),Oa=E(`ZodULID`,(e,t)=>{bn.init(e,t),z.init(e,t)}),ka=E(`ZodXID`,(e,t)=>{xn.init(e,t),z.init(e,t)}),Aa=E(`ZodKSUID`,(e,t)=>{Sn.init(e,t),z.init(e,t)}),ja=E(`ZodIPv4`,(e,t)=>{Dn.init(e,t),z.init(e,t)}),Ma=E(`ZodIPv6`,(e,t)=>{On.init(e,t),z.init(e,t)}),Na=E(`ZodCIDRv4`,(e,t)=>{kn.init(e,t),z.init(e,t)}),Pa=E(`ZodCIDRv6`,(e,t)=>{An.init(e,t),z.init(e,t)}),Fa=E(`ZodBase64`,(e,t)=>{Mn.init(e,t),z.init(e,t)}),Ia=E(`ZodBase64URL`,(e,t)=>{Pn.init(e,t),z.init(e,t)}),La=E(`ZodE164`,(e,t)=>{Fn.init(e,t),z.init(e,t)}),Ra=E(`ZodJWT`,(e,t)=>{Ln.init(e,t),z.init(e,t)}),za=E(`ZodNumber`,(e,t)=>{Rn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ni(e,t,n,r),e.gt=(t,n)=>e.check(ii(t,n)),e.gte=(t,n)=>e.check(ai(t,n)),e.min=(t,n)=>e.check(ai(t,n)),e.lt=(t,n)=>e.check(ni(t,n)),e.lte=(t,n)=>e.check(ri(t,n)),e.max=(t,n)=>e.check(ri(t,n)),e.int=t=>e.check(Ha(t)),e.safe=t=>e.check(Ha(t)),e.positive=t=>e.check(ii(0,t)),e.nonnegative=t=>e.check(ai(0,t)),e.negative=t=>e.check(ni(0,t)),e.nonpositive=t=>e.check(ri(0,t)),e.multipleOf=(t,n)=>e.check(oi(t,n)),e.step=(t,n)=>e.check(oi(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Ba(e){return Qr(za,e)}var Va=E(`ZodNumberFormat`,(e,t)=>{zn.init(e,t),za.init(e,t)});function Ha(e){return $r(Va,e)}var Ua=E(`ZodUnknown`,(e,t)=>{Bn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Wa(){return ei(Ua)}var Ga=E(`ZodNever`,(e,t)=>{Vn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r)});function Ka(e){return ti(Ga,e)}var qa=E(`ZodArray`,(e,t)=>{Un.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>I(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(ci(t,n)),e.nonempty=t=>e.check(ci(1,t)),e.max=(t,n)=>e.check(si(t,n)),e.length=(t,n)=>e.check(li(t,n)),e.unwrap=()=>e.element});function Ja(e,t){return Si(qa,e,t)}var Ya=E(`ZodObject`,(e,t)=>{Jn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r),k(e,`shape`,()=>t.shape),e.keyof=()=>oo(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Wa()}),e.loose=()=>e.clone({...e._zod.def,catchall:Wa()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ka()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Be(e,t),e.safeExtend=t=>Ve(e,t),e.merge=t=>He(e,t),e.pick=t=>Re(e,t),e.omit=t=>ze(e,t),e.partial=(...t)=>Ue(fo,e,t[0]),e.required=(...t)=>We(bo,e,t[0])});function Xa(e,t){return new Ya({type:`object`,shape:e??{},...A(t)})}var Za=E(`ZodUnion`,(e,t)=>{Xn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),e.options=t.options});function Qa(e,t){return new Za({type:`union`,options:e,...A(t)})}var $a=E(`ZodDiscriminatedUnion`,(e,t)=>{Za.init(e,t),Zn.init(e,t)});function eo(e,t,n){return new $a({type:`union`,options:t,discriminator:e,...A(n)})}var to=E(`ZodIntersection`,(e,t)=>{Qn.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r)});function no(e,t){return new to({type:`intersection`,left:e,right:t})}var ro=E(`ZodRecord`,(e,t)=>{tr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function io(e,t,n){return new ro({type:`record`,keyType:e,valueType:t,...A(n)})}var ao=E(`ZodEnum`,(e,t)=>{nr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new ao({...t,checks:[],...A(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new ao({...t,checks:[],...A(r),entries:i})}});function oo(e,t){return new ao({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...A(t)})}var so=E(`ZodLiteral`,(e,t)=>{rr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function co(e,t){return new so({type:`literal`,values:Array.isArray(e)?e:[e],...A(t)})}var lo=E(`ZodTransform`,(e,t)=>{ir.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>F(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new O(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(Xe(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(Xe(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function uo(e){return new lo({type:`transform`,transform:e})}var fo=E(`ZodOptional`,(e,t)=>{or.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function po(e){return new fo({type:`optional`,innerType:e})}var B=E(`ZodExactOptional`,(e,t)=>{sr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function V(e){return new B({type:`optional`,innerType:e})}var mo=E(`ZodNullable`,(e,t)=>{cr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function ho(e){return new mo({type:`nullable`,innerType:e})}var go=E(`ZodDefault`,(e,t)=>{lr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function _o(e,t){return new go({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Me(t)}})}var vo=E(`ZodPrefault`,(e,t)=>{dr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yo(e,t){return new vo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Me(t)}})}var bo=E(`ZodNonOptional`,(e,t)=>{fr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function xo(e,t){return new bo({type:`nonoptional`,innerType:e,...A(t)})}var H=E(`ZodCatch`,(e,t)=>{mr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function So(e,t){return new H({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var Co=E(`ZodPipe`,(e,t)=>{hr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qi(e,t,n,r),e.in=t.in,e.out=t.out});function wo(e,t){return new Co({type:`pipe`,in:e,out:t})}var To=E(`ZodReadonly`,(e,t)=>{_r.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ji(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Eo(e){return new To({type:`readonly`,innerType:e})}var Do=E(`ZodCustom`,(e,t)=>{yr.init(e,t),L.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r)});function Oo(e,t={}){return Ci(Do,e,t)}function ko(e){return wi(e)}oo([`web_search`,`visit_webpage`,`fetch_json`,`run_code`]),oo([`auto`,`required`]);function Ao(e){return e instanceof Error?e.message:String(e)}var jo=Xa({type:R()}).passthrough();function Mo(e,t){let n=e.safeParse(t);return n.success?{ok:!0,data:n.data}:{ok:!1,malformed:!jo.safeParse(t).success,error:n.error.message}}eo(`op`,[Xa({op:co(`get`),key:R().min(1)}),Xa({op:co(`set`),key:R().min(1),value:Wa(),expireIn:Ba().int().positive().optional()}),Xa({op:co(`del`),key:R().min(1)})]);var No=oo([`stt`,`llm`,`tts`,`tool`,`protocol`,`connection`,`audio`,`internal`]),Po=e=>Xa({type:co(e)}),Fo=Ba().int().nonnegative().optional(),Io=eo(`type`,[Po(`speech_started`),Po(`speech_stopped`),Xa({type:co(`user_transcript`),text:R(),turnOrder:Fo}),Xa({type:co(`agent_transcript`),text:R()}),Xa({type:co(`tool_call`),toolCallId:R(),toolName:R(),args:io(R(),Wa())}),Xa({type:co(`tool_call_done`),toolCallId:R(),result:R().max(me)}),Po(`reply_done`),Po(`cancelled`),Po(`reset`),Po(`idle_timeout`),Xa({type:co(`error`),code:No,message:R()}),Xa({type:co(`custom_event`),event:R().min(1),data:Wa()})]),Lo=Xa({audioFormat:oo([`pcm16`]),sampleRate:Ba().int().positive(),ttsSampleRate:Ba().int().positive()}),Ro=eo(`type`,[Xa({type:co(`config`),audioFormat:R(),sampleRate:Ba(),ttsSampleRate:Ba(),sessionId:R().optional()}),Po(`audio_done`),...Io.options]);eo(`type`,[Po(`audio_ready`),Po(`cancel`),Po(`reset`),Xa({type:co(`history`),messages:Ja(Xa({role:oo([`user`,`assistant`]),content:R().max(1e5)})).max(200)})]);var zo=`modulepreload`,Bo=function(e,t){return new URL(e,t).href},Vo={},Ho=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=Bo(t,n),t in Vo)return;Vo[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:zo,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})};async function Uo(e,t,n){if(e.audioSetupInFlight)return;e.audioSetupInFlight=!0;let r=e.generation;try{let[{createVoiceIO:i},a,o]=await Promise.all([Ho(()=>import(`./audio-UowwhmYo.js`),[],import.meta.url),Ho(()=>import(`./capture-processor-C26lSiVr.js`).then(e=>e.default),[],import.meta.url),Ho(()=>import(`./playback-processor-dSA8Im99.js`).then(e=>e.default),[],import.meta.url)]),s=await i({sttSampleRate:t.sampleRate,ttsSampleRate:t.ttsSampleRate,captureWorkletSrc:a,playbackWorkletSrc:o,onMicData:e=>{try{n.sendBinary(e)}catch{console.debug(`[aai-ui] sendBinary dropped: connection closed`)}}});if(e.generation!==r||!e.ws||e.ws.readyState!==1){s.close();return}e.voiceIO=s,n.send({type:`audio_ready`}),n.updateState({state:`listening`})}catch(t){if(e.generation!==r||!e.ws||e.ws.readyState!==1)return;n.updateState({state:`error`,error:{code:`audio`,message:`Microphone access failed: ${Ao(t)}`},running:!1})}finally{e.audioSetupInFlight=!1}}function Wo(e,t,n){let r=new URL(`websocket`,e.endsWith(`/`)?e:`${e}/`);return r.protocol=r.protocol===`https:`?`wss:`:`ws:`,n?r.searchParams.set(`sessionId`,n):t&&r.searchParams.set(`resume`,`1`),r}function Go(e){let t=e.WebSocket??WebSocket,n={state:`disconnected`,messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null,started:!1,running:!1},r=new Set;function i(){for(let e of r)e()}function a(e){n={...n,...e},i()}function o(){return n}function s(e){return r.add(e),()=>{r.delete(e)}}let c={ws:null,voiceIO:null,audioSetupInFlight:!1,generation:0},l=null,u=!1;function d(){c.audioSetupInFlight=!1,c.voiceIO?.close(),c.voiceIO=null}function f(){a({messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null})}function p(e){c.ws&&c.ws.readyState===1&&c.ws.send(JSON.stringify(e))}function m(e){c.ws&&c.ws.readyState===1&&c.ws.send(e)}let h={send:p,sendBinary:m,updateState:a},g=0,_=0;function v(e){g++,a({userTranscript:null,messages:[...n.messages,{role:`user`,content:e}],state:`thinking`})}function y(e){a({agentTranscript:null,messages:[...n.messages,{role:`assistant`,content:e}]})}function b(e){switch(n.state===`error`&&e.type!==`error`&&a({state:`disconnected`,error:null}),e.type){case`speech_started`:a({userTranscript:``});break;case`speech_stopped`:break;case`user_transcript`:v(e.text);break;case`agent_transcript`:y(e.text);break;case`tool_call`:a({toolCalls:[...n.toolCalls,{callId:e.toolCallId,name:e.toolName,args:e.args,status:`pending`,afterMessageIndex:n.messages.length-1}]});break;case`tool_call_done`:{let t=n.toolCalls,r=t.findIndex(t=>t.callId===e.toolCallId);if(r!==-1){let n=[...t],i=n[r];i&&(n[r]={...i,status:`done`,result:e.result}),a({toolCalls:n})}break}case`reply_done`:a({state:`listening`});break;case`cancelled`:g++,c.voiceIO?.flush(),a({userTranscript:null,agentTranscript:null,state:`listening`});break;case`reset`:g++,c.voiceIO?.flush(),a({messages:[],toolCalls:[],customEvents:[],userTranscript:null,agentTranscript:null,error:null,state:`listening`});break;case`custom_event`:a({customEvents:[...n.customEvents,{id:++_,event:e.event,data:e.data}]});break;case`error`:console.error(`Agent error:`,e.message),a({state:`error`,error:{code:e.code,message:e.message},running:!1});break;default:break}}function x(e){n.state===`disconnected`&&n.error!==null||(n.state!==`speaking`&&a({state:`speaking`}),e.buffer instanceof ArrayBuffer&&c.voiceIO?.enqueue(e.buffer))}function S(){let e=g,t=c.voiceIO;t?t.done().then(()=>{g===e&&a({state:`listening`})}).catch(e=>{console.warn(`Audio playback done failed:`,e)}):a({state:`listening`})}function ee(e){try{let t=Mo(Ro,JSON.parse(e));return t.ok?t.data:(t.malformed&&console.warn(`Ignoring invalid server message:`,t.error),null)}catch{return null}}function C(e){let{type:t,sessionId:n,...r}=e,i=Lo.safeParse(r);return i.success?n?{...i.data,sessionId:n}:i.data:(console.warn(`Unsupported server config:`,i.error.message),null)}function te(e){if(e instanceof ArrayBuffer)return x(new Uint8Array(e)),null;let t=ee(e);return t?t.type===`config`?C(t):t.type===`audio_done`?(S(),null):(b(t),null):null}function ne(r){a({state:`connecting`,error:null}),l?.abort(),d(),c.ws?.close(),c.ws=null,c.generation++;let i=new AbortController;l=i;let{signal:o}=i;r?.signal&&r.signal.addEventListener(`abort`,()=>ae(),{signal:o});let s=u?void 0:e.resumeSessionId,f=new t(Wo(e.platformUrl,u,s).toString());f.binaryType=`arraybuffer`,c.ws=f,f.addEventListener(`open`,()=>{a({state:`ready`})},{signal:o}),f.addEventListener(`message`,t=>{let r=te(t.data);if(r){r.sessionId&&e.onSessionId?.(r.sessionId);let t=u;u=!0,Uo(c,r,h).catch(e=>{h.updateState({state:`error`,error:{code:`audio`,message:`Audio capture failed: ${Ao(e)}`},running:!1})}),t&&n.messages.length>0&&p({type:`history`,messages:n.messages.map(e=>({role:e.role,content:e.content}))})}},{signal:o}),f.addEventListener(`close`,()=>{o.aborted||(i.abort(),d(),a({state:`disconnected`,running:!1}))},{signal:o})}function re(){c.voiceIO?.flush(),a({state:`listening`}),p({type:`cancel`})}function ie(){if(c.voiceIO?.flush(),c.ws&&c.ws.readyState===1){p({type:`reset`});return}f(),ae(),ne()}function ae(){l?.abort(),l=null,d(),c.ws?.close(),c.ws=null,a({state:`disconnected`,running:!1})}function oe(){a({started:!0,running:!0}),ne()}function se(){n.running?ae():(a({running:!0}),ne())}return{getSnapshot:o,subscribe:s,connect:ne,cancel:re,resetState:f,reset:ie,disconnect:ae,start:oe,toggle:se,[Symbol.dispose](){ae()}}}function Ko(e=`#app`){if(typeof e!=`string`)return e;let t=document.querySelector(e);if(!t)throw Error(`Element not found: ${e}`);return t}function qo({name:e,Sidebar:t,sidebarWidth:n}){let r=(0,S.jsx)(T,{...e===void 0?{}:{title:e}}),i=t?(0,S.jsx)(fe,{sidebar:(0,S.jsx)(t,{}),...n===void 0?{}:{sidebarWidth:n},children:r}):r;return(0,S.jsx)(pe,{...e===void 0?{}:{title:e},children:i})}function Jo(e){let t=Ko(e.target),n=Go({platformUrl:e.platformUrl??globalThis.location.origin+globalThis.location.pathname,onSessionId:e.onSessionId,resumeSessionId:e.resumeSessionId,...e.WebSocket?{WebSocket:e.WebSocket}:{}}),r;if(`component`in e&&e.component)r=e.component;else{let{name:t,sidebar:n,sidebarWidth:i}=e;r=()=>(0,l.createElement)(qo,{...t===void 0?{}:{name:t},...n===void 0?{}:{Sidebar:n},...i===void 0?{}:{sidebarWidth:i}})}let i=`tools`in e&&e.tools?e.tools:{},a=(0,d.createRoot)(t);(0,u.flushSync)(()=>{a.render((0,l.createElement)(re.Provider,{value:i},(0,l.createElement)(y,e.theme===void 0?{}:{value:e.theme},(0,l.createElement)(g,{value:n},(0,l.createElement)(r)))))});let o={session:n,dispose(){a.unmount(),n[Symbol.dispose]()},[Symbol.dispose](){o.dispose()}};return o}Jo({});
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<title>aai</title>
|
|
7
7
|
<link rel="icon" href="data:," />
|
|
8
8
|
<style>html, body { background: #101010; margin: 0; }</style>
|
|
9
|
-
<script type="module" crossorigin src="./assets/index-
|
|
9
|
+
<script type="module" crossorigin src="./assets/index-Cx2YvEpb.js"></script>
|
|
10
10
|
<link rel="stylesheet" crossorigin href="./assets/index-BZqVGR2o.css">
|
|
11
11
|
</head>
|
|
12
12
|
<body>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alexkroman1/aai-ui",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"clsx": "^2.1.1",
|
|
21
|
-
"@alexkroman1/aai": "1.4.
|
|
21
|
+
"@alexkroman1/aai": "1.4.4"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
24
|
"react": "^19.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var e=.1;async function t(t){let{sttSampleRate:n,ttsSampleRate:r,captureWorkletSrc:i,playbackWorkletSrc:a,onMicData:o}=t,s=r,c=new AudioContext({sampleRate:s,latencyHint:`playback`});await c.resume();let l=await navigator.mediaDevices.getUserMedia({audio:{sampleRate:s,echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0}});try{await Promise.all([c.audioWorklet.addModule(i),c.audioWorklet.addModule(a)])}catch(e){for(let e of l.getTracks())e.stop();throw await c.close().catch(e=>{console.warn(`AudioContext close failed:`,e)}),e}let u=c.createMediaStreamSource(l),d=new AudioWorkletNode(c,`capture-processor`,{channelCount:1,channelCountMode:`explicit`,processorOptions:{contextRate:s,sttSampleRate:n}});u.connect(d);let f=Math.floor(n*e)*2,p=f*2,m=new Uint8Array(p),h=new Uint8Array(p),g=m,_=0;d.port.postMessage({event:`start`}),d.port.onmessage=e=>{if(e.data.event!==`chunk`)return;let t=new Uint8Array(e.data.buffer);g.set(t,_),_+=t.byteLength,_>=f&&(o(g.buffer.slice(0,_)),g=g===m?h:m,_=0)};let v=null,y=null,b=new AbortController,{onPlaybackProgress:x}=t;function S(){if(v)return v;let e=new AudioWorkletNode(c,`playback-processor`,{processorOptions:{sampleRate:s}});return e.connect(c.destination),e.port.onmessage=t=>{t.data.event===`stop`?(e.disconnect(),v===e&&(v=null),y?.(),y=null):t.data.event===`progress`&&x?.(t.data.readPos)},v=e,e}let C={enqueue(e){b.signal.aborted||e.byteLength!==0&&S().port.postMessage({event:`write`,buffer:new Uint8Array(e)},[e])},done(){return v?new Promise(e=>{y=e,v?.port.postMessage({event:`done`})}):Promise.resolve()},flush(){v&&v.port.postMessage({event:`interrupt`})},async close(){if(!b.signal.aborted){b.abort(),d.port.postMessage({event:`stop`}),u.disconnect(),d.disconnect(),v&&v.disconnect();for(let e of l.getTracks())e.stop();await c.close().catch(()=>{})}},async[Symbol.asyncDispose](){await C.close()}};return C}export{t as createVoiceIO};
|