UNPKG

@convex-dev/agent-playground

Version:

A dashboard for the Convex Agent component.

2 lines (1 loc) 2.68 kB
const w=typeof self=="object"?self:globalThis,O=(c,o)=>{const n=(r,f)=>(c.set(f,r),r),u=r=>{if(c.has(r))return c.get(r);const[f,t]=o[r];switch(f){case 0:case-1:return n(t,r);case 1:{const e=n([],r);for(const s of t)e.push(u(s));return e}case 2:{const e=n({},r);for(const[s,I]of t)e[u(s)]=u(I);return e}case 3:return n(new Date(t),r);case 4:{const{source:e,flags:s}=t;return n(new RegExp(e,s),r)}case 5:{const e=n(new Map,r);for(const[s,I]of t)e.set(u(s),u(I));return e}case 6:{const e=n(new Set,r);for(const s of t)e.add(u(s));return e}case 7:{const{name:e,message:s}=t;return n(new w[e](s),r)}case 8:return n(BigInt(t),r);case"BigInt":return n(Object(BigInt(t)),r);case"ArrayBuffer":return n(new Uint8Array(t).buffer,t);case"DataView":{const{buffer:e}=new Uint8Array(t);return n(new DataView(e),t)}}return n(new w[f](t),r)};return u},p=c=>O(new Map,c)(0),R="",{toString:b}={},{keys:h}=Object,A=c=>{const o=typeof c;if(o!=="object"||!c)return[0,o];const n=b.call(c).slice(8,-1);switch(n){case"Array":return[1,R];case"Object":return[2,R];case"Date":return[3,R];case"RegExp":return[4,R];case"Map":return[5,R];case"Set":return[6,R];case"DataView":return[1,n]}return n.includes("Array")?[1,n]:n.includes("Error")?[7,n]:[2,n]},y=([c,o])=>c===0&&(o==="function"||o==="symbol"),S=(c,o,n,u)=>{const r=(t,e)=>{const s=u.push(t)-1;return n.set(e,s),s},f=t=>{if(n.has(t))return n.get(t);let[e,s]=A(t);switch(e){case 0:{let i=t;switch(s){case"bigint":e=8,i=t.toString();break;case"function":case"symbol":if(c)throw new TypeError("unable to serialize "+s);i=null;break;case"undefined":return r([-1],t)}return r([e,i],t)}case 1:{if(s){let a=t;return s==="DataView"?a=new Uint8Array(t.buffer):s==="ArrayBuffer"&&(a=new Uint8Array(t)),r([s,[...a]],t)}const i=[],E=r([e,i],t);for(const a of t)i.push(f(a));return E}case 2:{if(s)switch(s){case"BigInt":return r([s,t.toString()],t);case"Boolean":case"Number":case"String":return r([s,t.valueOf()],t)}if(o&&"toJSON"in t)return f(t.toJSON());const i=[],E=r([e,i],t);for(const a of h(t))(c||!y(A(t[a])))&&i.push([f(a),f(t[a])]);return E}case 3:return r([e,t.toISOString()],t);case 4:{const{source:i,flags:E}=t;return r([e,{source:i,flags:E}],t)}case 5:{const i=[],E=r([e,i],t);for(const[a,T]of t)(c||!(y(A(a))||y(A(T))))&&i.push([f(a),f(T)]);return E}case 6:{const i=[],E=r([e,i],t);for(const a of t)(c||!y(A(a)))&&i.push(f(a));return E}}const{message:I}=t;return r([e,{name:s,message:I}],t)};return f},g=(c,{json:o,lossy:n}={})=>{const u=[];return S(!(o||n),!!o,new Map,u)(c),u},B=typeof structuredClone=="function"?(c,o)=>o&&("json"in o||"lossy"in o)?p(g(c,o)):structuredClone(c):(c,o)=>p(g(c,o));export{B as default,p as deserialize,g as serialize};