@marimo-team/islands 0.23.6-dev20 → 0.23.6-dev23

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.
Files changed (30) hide show
  1. package/dist/{ConnectedDataExplorerComponent-CWU3Az6F.js → ConnectedDataExplorerComponent-PmilQqXR.js} +4 -4
  2. package/dist/assets/__vite-browser-external-rrUYDKRl.js +1 -0
  3. package/dist/assets/{worker-D-EdLKct.js → worker-Bfy15ViQ.js} +2 -2
  4. package/dist/{chat-ui-CtIeZD6j.js → chat-ui-CVfL3lSs.js} +6 -6
  5. package/dist/{code-visibility-BnjWivjU.js → code-visibility-DLtrQQPk.js} +8 -8
  6. package/dist/{formats-Dh5M1ZRs.js → formats-DJvu12E_.js} +1 -1
  7. package/dist/{glide-data-editor-DXti2axL.js → glide-data-editor-CvlvtPWJ.js} +2 -2
  8. package/dist/{html-to-image-uzALXlch.js → html-to-image-Ctyt_1RZ.js} +5 -5
  9. package/dist/{input-Drx1pguW.js → input-BAOe64zx.js} +1 -1
  10. package/dist/main.js +18 -18
  11. package/dist/{mermaid-BagLPXm9.js → mermaid-DJ1NyBGw.js} +2 -2
  12. package/dist/{process-output-CD5QiwBb.js → process-output-V4Xi7mGt.js} +1 -1
  13. package/dist/{reveal-component-CBs-ycE-.js → reveal-component-B_NMN2rm.js} +5 -5
  14. package/dist/{spec-BKWq0wn2.js → spec-DSIuqd3f.js} +1 -1
  15. package/dist/{toDate-yqOcZ_tY.js → toDate-0ZO2rMtR.js} +1 -1
  16. package/dist/{useAsyncData-CKYzhCis.js → useAsyncData-B6hCGywC.js} +1 -1
  17. package/dist/{useDeepCompareMemoize-je76AJS_.js → useDeepCompareMemoize-CmwDuYUH.js} +1 -1
  18. package/dist/{useLifecycle-smVfjLNI.js → useLifecycle-CjMjllqy.js} +1 -1
  19. package/dist/{useTheme-CX9pPLUH.js → useTheme-CByZUW0p.js} +1 -0
  20. package/dist/{vega-component-BnCQmtxw.js → vega-component-D3zDd-Uu.js} +5 -5
  21. package/package.json +1 -1
  22. package/src/components/ai/ai-provider-icon.tsx +1 -0
  23. package/src/components/ai/ai-utils.ts +1 -0
  24. package/src/components/app-config/ai-config.tsx +30 -0
  25. package/src/components/editor/renderers/cell-array.tsx +14 -7
  26. package/src/components/ui/links.tsx +2 -1
  27. package/src/core/ai/ids/ids.ts +1 -0
  28. package/src/core/config/config-schema.ts +1 -0
  29. package/src/core/edit-app.tsx +1 -0
  30. package/dist/assets/__vite-browser-external-C4JkHbyY.js +0 -1
@@ -3,8 +3,8 @@ import { _ as Logger, c as Objects, g as cn, t as Button } from "./button-CA5pI2
3
3
  import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
5
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
6
- import { A as SquareFunction, t as augmentSpecWithData } from "./spec-BKWq0wn2.js";
7
- import { a as Type, c as Calendar, i as createReducerAndAtoms, o as ToggleLeft, r as Badge, s as Hash, t as useOnMount } from "./useLifecycle-smVfjLNI.js";
6
+ import { A as SquareFunction, t as augmentSpecWithData } from "./spec-DSIuqd3f.js";
7
+ import { a as Type, c as Calendar, i as createReducerAndAtoms, o as ToggleLeft, r as Badge, s as Hash, t as useOnMount } from "./useLifecycle-CjMjllqy.js";
8
8
  import { a as ListFilter, t as $896ba0a80a8f4d36$export$85fd5fdf27bacc79 } from "./useDateFormatter-B3mCQMP3.js";
9
9
  import { C as $a916eb452884faea$export$b7a616150fdb9f44, a as SelectGroup, c as SelectSeparator, i as SelectContent, l as SelectTrigger, o as SelectItem, r as Select, s as SelectLabel, t as Strings, u as SelectValue } from "./strings-B_FOH6eV.js";
10
10
  import "./react-dom-BWRJ_g_k.js";
@@ -13,11 +13,11 @@ import "./zod-BxdsqRPd.js";
13
13
  import { n as ErrorBanner } from "./error-banner-DnBPzEWg.js";
14
14
  import { t as Label } from "./label-BCWi-Oqu.js";
15
15
  import { t as Tooltip } from "./tooltip-B0mtKTXm.js";
16
- import { b as createStore, g as useAtomValue, m as Provider, n as useTheme, y as atom } from "./useTheme-CX9pPLUH.js";
16
+ import { b as createStore, g as useAtomValue, m as Provider, n as useTheme, y as atom } from "./useTheme-CByZUW0p.js";
17
17
  import { t as invariant } from "./invariant-UcGKQEhF.js";
18
18
  import "./vega-loader.browser-3_z8GoFC.js";
19
19
  import { a as getContainerWidth, n as vegaLoadData, s as tooltipHandler } from "./loader-BvW0-YWZ.js";
20
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
20
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
21
21
  import { n as q, r as contains } from "./react-vega-k9ODWPlI.js";
22
22
  import "./defaultLocale-BpsHxBd7.js";
23
23
  import "./defaultLocale-DoeErsX2.js";
@@ -0,0 +1 @@
1
+ import{t as e}from"./worker-Bfy15ViQ.js";var t=e(((e,t)=>{t.exports={}}));export default t();
@@ -1,6 +1,6 @@
1
1
  var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n)),l=e=>t=>c(t.default,e),u=(e=>typeof require<`u`?require:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof require<`u`?require:e)[t]}):e)(function(e){if(typeof require<`u`)return require.apply(this,arguments);throw Error('Calling `require` for "'+e+"\" in an environment that doesn't expose the `require` function.")});function d(e){return e}function f(e,t){let n=e.map(e=>`"${e}"`).join(`, `);return Error(`This RPC instance cannot ${t} because the transport did not provide one or more of these methods: ${n}`)}function p(e={}){let t={};function n(e){t=e}let r={};function i(e){r.unregisterHandler&&r.unregisterHandler(),r=e,r.registerHandler?.(se)}let a;function o(e){if(typeof e==`function`){a=e;return}a=(t,n)=>{let r=e[t];if(r)return r(n);let i=e._;if(!i)throw Error(`The requested method has no handler: ${t}`);return i(t,n)}}let{maxRequestTime:s=1e3}=e;e.transport&&i(e.transport),e.requestHandler&&o(e.requestHandler),e._debugHooks&&n(e._debugHooks);let c=0;function l(){return c<=1e10?++c:c=0}let u=new Map,d=new Map;function p(e,...n){let i=n[0];return new Promise((n,a)=>{if(!r.send)throw f([`send`],`make requests`);let o=l(),c={type:`request`,id:o,method:e,params:i};u.set(o,{resolve:n,reject:a}),s!==1/0&&d.set(o,setTimeout(()=>{d.delete(o),a(Error(`RPC request timed out.`))},s)),t.onSend?.(c),r.send(c)})}let ee=new Proxy(p,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>p(t,e)}),te=ee;function ne(e,...n){let i=n[0];if(!r.send)throw f([`send`],`send messages`);let a={type:`message`,id:e,payload:i};t.onSend?.(a),r.send(a)}let re=new Proxy(ne,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>ne(t,e)}),ie=re,m=new Map,ae=new Set;function h(e,t){if(!r.registerHandler)throw f([`registerHandler`],`register message listeners`);if(e===`*`){ae.add(t);return}m.has(e)||m.set(e,new Set),m.get(e)?.add(t)}function oe(e,t){if(e===`*`){ae.delete(t);return}m.get(e)?.delete(t),m.get(e)?.size===0&&m.delete(e)}async function se(e){if(t.onReceive?.(e),!(`type`in e))throw Error(`Message does not contain a type.`);if(e.type===`request`){if(!r.send||!a)throw f([`send`,`requestHandler`],`handle requests`);let{id:n,method:i,params:o}=e,s;try{s={type:`response`,id:n,success:!0,payload:await a(i,o)}}catch(e){if(!(e instanceof Error))throw e;s={type:`response`,id:n,success:!1,error:e.message}}t.onSend?.(s),r.send(s);return}if(e.type===`response`){let t=d.get(e.id);t!=null&&clearTimeout(t);let{resolve:n,reject:r}=u.get(e.id)??{};e.success?n?.(e.payload):r?.(Error(e.error));return}if(e.type===`message`){for(let t of ae)t(e.id,e.payload);let t=m.get(e.id);if(!t)return;for(let n of t)n(e.payload);return}throw Error(`Unexpected RPC message type: ${e.type}`)}return{setTransport:i,setRequestHandler:o,request:ee,requestProxy:te,send:re,sendProxy:ie,addMessageListener:h,removeMessageListener:oe,proxy:{send:ie,request:te},_setDebugHooks:n}}function ee(e){return p(e)}const te=`[transport-id]`;function ne(e,t){let{transportId:n}=t;return n==null?e:{[te]:n,data:e}}function re(e,t){let{transportId:n,filter:r}=t,i=r?.();if(n!=null&&i!=null)throw Error("Cannot use both `transportId` and `filter` at the same time");let a=e;if(n){if(e[te]!==n)return[!0];a=e.data}return i===!1?[!0]:[!1,a]}function ie(e,t={}){let{transportId:n,filter:r,remotePort:i}=t,a=e,o=i??e,s;return{send(e){o.postMessage(ne(e,{transportId:n}))},registerHandler(e){s=t=>{let i=t.data,[a,o]=re(i,{transportId:n,filter:()=>r?.(t)});a||e(o)},a.addEventListener(`message`,s)},unregisterHandler(){s&&a.removeEventListener(`message`,s)}}}function m(e){return ie(self,e)}var ae=Object.defineProperty,h=(e,t)=>ae(e,`name`,{value:t,configurable:!0}),oe=(e=>typeof u<`u`?u:typeof Proxy<`u`?new Proxy(e,{get:(e,t)=>(typeof u<`u`?u:e)[t]}):e)(function(e){if(typeof u<`u`)return u.apply(this,arguments);throw Error(`Dynamic require of "`+e+`" is not supported`)});function se(e){return!isNaN(parseFloat(e))&&isFinite(e)}h(se,`_isNumber`);function g(e){return e.charAt(0).toUpperCase()+e.substring(1)}h(g,`_capitalize`);function ce(e){return function(){return this[e]}}h(ce,`_getter`);var _=[`isConstructor`,`isEval`,`isNative`,`isToplevel`],v=[`columnNumber`,`lineNumber`],y=[`fileName`,`functionName`,`source`],le=_.concat(v,y,[`args`],[`evalOrigin`]);function b(e){if(e)for(var t=0;t<le.length;t++)e[le[t]]!==void 0&&this[`set`+g(le[t])](e[le[t]])}for(h(b,`StackFrame`),b.prototype={getArgs:function(){return this.args},setArgs:function(e){if(Object.prototype.toString.call(e)!==`[object Array]`)throw TypeError(`Args must be an Array`);this.args=e},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(e){if(e instanceof b)this.evalOrigin=e;else if(e instanceof Object)this.evalOrigin=new b(e);else throw TypeError(`Eval Origin must be an Object or StackFrame`)},toString:function(){var e=this.getFileName()||``,t=this.getLineNumber()||``,n=this.getColumnNumber()||``,r=this.getFunctionName()||``;return this.getIsEval()?e?`[eval] (`+e+`:`+t+`:`+n+`)`:`[eval]:`+t+`:`+n:r?r+` (`+e+`:`+t+`:`+n+`)`:e+`:`+t+`:`+n}},b.fromString=h(function(e){var t=e.indexOf(`(`),n=e.lastIndexOf(`)`),r=e.substring(0,t),i=e.substring(t+1,n).split(`,`),a=e.substring(n+1);if(a.indexOf(`@`)===0)var o=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(a,``),s=o[1],c=o[2],l=o[3];return new b({functionName:r,args:i||void 0,fileName:s,lineNumber:c||void 0,columnNumber:l||void 0})},`StackFrame$$fromString`),x=0;x<_.length;x++)b.prototype[`get`+g(_[x])]=ce(_[x]),b.prototype[`set`+g(_[x])]=function(e){return function(t){this[e]=!!t}}(_[x]);var x;for(S=0;S<v.length;S++)b.prototype[`get`+g(v[S])]=ce(v[S]),b.prototype[`set`+g(v[S])]=function(e){return function(t){if(!se(t))throw TypeError(e+` must be a Number`);this[e]=Number(t)}}(v[S]);var S;for(C=0;C<y.length;C++)b.prototype[`get`+g(y[C])]=ce(y[C]),b.prototype[`set`+g(y[C])]=function(e){return function(t){this[e]=String(t)}}(y[C]);var C,ue=b;function de(){var e=/^\s*at .*(\S+:\d+|\(native\))/m,t=/^(eval@)?(\[native code])?$/;return{parse:h(function(t){if(t.stack&&t.stack.match(e))return this.parseV8OrIE(t);if(t.stack)return this.parseFFOrSafari(t);throw Error(`Cannot parse given Error object`)},`ErrorStackParser$$parse`),extractLocation:h(function(e){if(e.indexOf(`:`)===-1)return[e];var t=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/[()]/g,``));return[t[1],t[2]||void 0,t[3]||void 0]},`ErrorStackParser$$extractLocation`),parseV8OrIE:h(function(t){return t.stack.split(`
2
2
  `).filter(function(t){return!!t.match(e)},this).map(function(e){e.indexOf(`(eval `)>-1&&(e=e.replace(/eval code/g,`eval`).replace(/(\(eval at [^()]*)|(,.*$)/g,``));var t=e.replace(/^\s+/,``).replace(/\(eval code/g,`(`).replace(/^.*?\s+/,``),n=t.match(/ (\(.+\)$)/);t=n?t.replace(n[0],``):t;var r=this.extractLocation(n?n[1]:t);return new ue({functionName:n&&t||void 0,fileName:[`eval`,`<anonymous>`].indexOf(r[0])>-1?void 0:r[0],lineNumber:r[1],columnNumber:r[2],source:e})},this)},`ErrorStackParser$$parseV8OrIE`),parseFFOrSafari:h(function(e){return e.stack.split(`
3
- `).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new ue({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new ue({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}h(de,`ErrorStackParser`);var fe=new de,w=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,pe=w&&typeof module<`u`&&typeof module.exports<`u`&&typeof oe<`u`&&typeof __dirname<`u`,me=w&&!pe;globalThis.Bun;var he=!w&&!(typeof Deno<`u`),ge=he&&typeof window==`object`&&typeof document==`object`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof importScripts!=`function`,_e=he&&typeof importScripts==`function`&&typeof self==`object`;typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)==-1&&navigator.userAgent.indexOf(`Safari`);var ve,ye,be,xe,Se;async function Ce(){if(!w||(ve=(await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1))).default,xe=await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1)),Se=await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1)),be=(await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1))).default,ye=await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1)),De=ye.sep,typeof oe<`u`))return;let e={fs:xe,crypto:await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1)),ws:await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1)),child_process:await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1))};globalThis.require=function(t){return e[t]}}h(Ce,`initNodeModules`);function we(e,t){return ye.resolve(t||`.`,e)}h(we,`node_resolvePath`);function Te(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}h(Te,`browser_resolvePath`);var Ee=w?we:Te,De;w||(De=`/`);function Oe(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:Se.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}h(Oe,`node_getBinaryResponse`);function ke(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}h(ke,`browser_getBinaryResponse`);var Ae=w?Oe:ke;async function je(e,t){let{response:n,binary:r}=Ae(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}h(je,`loadBinaryFile`);var Me;if(ge)Me=h(async e=>await import(e),`loadScript`);else if(_e)Me=h(async e=>{try{globalThis.importScripts(e)}catch(t){if(t instanceof TypeError)await import(e);else throw t}},`loadScript`);else if(w)Me=Ne;else throw Error(`Cannot determine runtime environment`);async function Ne(e){e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?be.runInThisContext(await(await fetch(e)).text()):await import(ve.pathToFileURL(e).href)}h(Ne,`nodeLoadScript`);async function Pe(e){if(w){await Ce();let t=await Se.readFile(e,{encoding:`utf8`});return JSON.parse(t)}else return await(await fetch(e)).json()}h(Pe,`loadLockFile`);async function Fe(){if(pe)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=fe.parse(e)[0].fileName;if(w&&!t.startsWith(`file://`)&&(t=`file://${t}`),me){let e=await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1));return(await import(`./__vite-browser-external-C4JkHbyY.js`).then(l(1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(De);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location`);return t.slice(0,n)}h(Fe,`calculateDirname`);function Ie(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},syncfs:async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},getLocalSet:e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}h(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}h(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},getRemoteSet:async e=>{let t=Object.create(null),n=await Le(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},loadLocalEntry:e=>{let r=t.lookupPath(e).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},storeLocalEntry:(e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},removeLocalEntry:e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},loadRemoteEntry:async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}else{if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)}},storeRemoteEntry:async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},removeRemoteEntry:async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},reconcile:async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}}};e.FS.filesystems.NATIVEFS_ASYNC=i}h(Ie,`initializeNativeFS`);var Le=h(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}h(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`);function Re(e){let t={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Ue(e),quit(e,n){throw t.exited={status:e,toThrow:n},n},print:e.stdout,printErr:e.stderr,thisProgram:e._sysExecutable,arguments:e.args,API:{config:e},locateFile:t=>e.indexURL+t,instantiateWasm:We(e.indexURL)};return t}h(Re,`createSettings`);function ze(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}h(ze,`createHomeDirectory`);function Be(e){return function(t){Object.assign(t.ENV,e)}}h(Be,`setEnvironment`);function Ve(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}h(Ve,`callFsInitHook`);function He(e){let t=je(e);return async e=>{let n=e._py_version_major(),r=e._py_version_minor();e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}h(He,`installStdlib`);function Ue(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[...Ve(e.fsInit),He(t),ze(e.env.HOME),Be(e.env),Ie]}h(Ue,`getFileSystemInitializationFuncs`);function We(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=Ae(e+`pyodide.asm.wasm`);return function(e,r){return async function(){try{let i;i=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=i;r(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}h(We,`getInstantiateWasmFunc`);var Ge=`0.27.7`;async function Ke(e={}){var t,n;await Ce();let r=e.indexURL||await Fe();r=Ee(r),r.endsWith(`/`)||(r+=`/`),e.indexURL=r;let i={fullStdLib:!1,jsglobals:globalThis,stdin:globalThis.prompt?globalThis.prompt:void 0,lockFileURL:r+`pyodide-lock.json`,args:[],env:{},packageCacheDir:r,packages:[],enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`e94377f5ce7dcf67e0417b69a0016733c2cfb6b4622ee8c490a6f17eb58e863b`},a=Object.assign(i,e);(t=a.env).HOME??(t.HOME=`/home/pyodide`),(n=a.env).PYTHONINSPECT??(n.PYTHONINSPECT=`1`);let o=Re(a),s=o.API;if(s.lockFilePromise=Pe(a.lockFileURL),typeof _createPyodideModule!=`function`){let e=`${a.indexURL}pyodide.asm.js`;await Me(e)}let c;if(e._loadSnapshot){let t=await e._loadSnapshot;c=ArrayBuffer.isView(t)?t:new Uint8Array(t),o.noInitialRun=!0,o.INITIAL_MEMORY=c.length}let l=await _createPyodideModule(o);if(o.exited)throw o.exited.toThrow;if(e.pyproxyToStringRepr&&s.setPyProxyToStringMethod(!0),s.version!==Ge&&a.checkAPIVersion)throw Error(`Pyodide version does not match: '${Ge}' <==> '${s.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);l.locateFile=e=>{throw Error(`Didn't expect to load any more file_packager files!`)};let u;c&&(u=s.restoreSnapshot(c));let d=s.finalizeBootstrap(u,e._snapshotDeserializer);return s.sys.path.insert(0,``),d.version.includes(`dev`)||s.setCdnUrl(`https://cdn.jsdelivr.net/pyodide/v${d.version}/full/`),s._pyodide.set_excepthook(),await s.packageIndexReady,s.initializeStreams(a.stdin,a.stdout,a.stderr),d}h(Ke,`loadPyodide`);function qe(e){return e.includes(`dev`),`v${Ge}`}var Je=class{buffer;started=!1;onMessage;constructor(e){this.onMessage=e,this.buffer=[]}push=e=>{this.started?this.onMessage(e):this.buffer.push(e)};start=()=>{this.started=!0,this.buffer.forEach(e=>this.onMessage(e)),this.buffer=[]}};const Ye={NOOP:()=>{},ASYNC_NOOP:async()=>{},THROW:()=>{throw Error(`Should not be called`)},asUpdater:e=>typeof e==`function`?e:()=>e,identity:e=>e},Xe=(e,t)=>{let n=`[${e}]`;return{debug:(...e)=>console.debug(n,...e),log:(...e)=>t.log(n,...e),warn:(...e)=>t.warn(n,...e),error:(...e)=>t.error(n,...e),trace:(...e)=>t.trace(n,...e),get:n=>Xe(`${e}:${n}`,t),disabled:(e=!0)=>e?Qe:t}},Ze={debug:(...e)=>{console.debug(...e)},log:(...e)=>{console.log(...e)},warn:(...e)=>{console.warn(...e)},error:(...e)=>{console.error(...e)},trace:(...e)=>{console.trace(...e)},get:e=>Xe(`marimo:${e}`,Ze),disabled:(e=!0)=>e?Qe:Ze},Qe={debug:()=>Ye.NOOP,log:()=>Ye.NOOP,warn:()=>Ye.NOOP,error:()=>Ye.NOOP,trace:()=>Ye.NOOP,get:()=>Qe,disabled:()=>Qe};function $e(){return typeof window<`u`&&window.Logger||Ze}const T=$e();var et=class{promise;resolve;reject;status=`pending`;value=void 0;constructor(){this.promise=new Promise((e,t)=>{this.reject=e=>{this.status=`rejected`,t(e)},this.resolve=t=>{this.status=`resolved`,tt(t)||(this.value=t),e(t)}})}};function tt(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}Object.freeze({status:`aborted`});function E(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var nt=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},rt=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};const it={};function D(e){return e&&Object.assign(it,e),it}function at(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function ot(e,t){return typeof t==`bigint`?t.toString():t}function st(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function ct(e){return e==null}function lt(e){let t=e.startsWith(`^`)?1:0,n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function ut(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}const dt=Symbol(`evaluating`);function O(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==dt)return r===void 0&&(r=dt,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function k(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function A(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function ft(e){return JSON.stringify(e)}function pt(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}const mt=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ht(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const gt=st(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function j(e){if(ht(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ht(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function _t(e){return j(e)?{...e}:Array.isArray(e)?[...e]:e}const vt=new Set([`string`,`number`,`symbol`]);function yt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function M(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function N(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function bt(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}const xt={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function St(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return M(e,A(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return k(this,`shape`,e),e},checks:[]}))}function Ct(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return M(e,A(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return k(this,`shape`,r),r},checks:[]}))}function wt(e,t){if(!j(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return k(this,`shape`,n),n}}))}function Tt(e,t){if(!j(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return k(this,`shape`,n),n}}))}function Et(e,t){return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return k(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function Dt(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return M(t,A(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return k(this,`shape`,i),i},checks:[]}))}function Ot(e,t,n){return M(t,A(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return k(this,`shape`,i),i}}))}function P(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function F(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function kt(e){return typeof e==`string`?e:e?.message}function I(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=kt(e.inst?._zod.def?.error?.(e))??kt(t?.error?.(e))??kt(n.customError?.(e))??kt(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function At(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function jt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}const Mt=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,ot,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Nt=E(`$ZodError`,Mt),Pt=E(`$ZodError`,Mt,{Parent:Error});function Ft(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function It(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}const Lt=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new nt;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>I(e,a,D())));throw mt(t,i?.callee),t}return o.value},Rt=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>I(e,a,D())));throw mt(t,i?.callee),t}return o.value},zt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new nt;return a.issues.length?{success:!1,error:new(e??Nt)(a.issues.map(e=>I(e,i,D())))}:{success:!0,data:a.value}},Bt=zt(Pt),Vt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>I(e,i,D())))}:{success:!0,data:a.value}},Ht=Vt(Pt),Ut=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Lt(e)(t,n,i)},Wt=e=>(t,n,r)=>Lt(e)(t,n,r),Gt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Rt(e)(t,n,i)},Kt=e=>async(t,n,r)=>Rt(e)(t,n,r),qt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return zt(e)(t,n,i)},Jt=e=>(t,n,r)=>zt(e)(t,n,r),Yt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Vt(e)(t,n,i)},Xt=e=>async(t,n,r)=>Vt(e)(t,n,r),Zt=/^[cC][^\s-]{8,}$/,Qt=/^[0-9a-z]+$/,$t=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,en=/^[0-9a-vA-V]{20}$/,tn=/^[A-Za-z0-9]{27}$/,nn=/^[a-zA-Z0-9_-]{21}$/,rn=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,an=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,on=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,sn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function cn(){return RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)}const ln=/^(?:(?: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])$/,un=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,dn=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,fn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,pn=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,mn=/^[A-Za-z0-9_-]*$/,hn=/^\+[1-9]\d{6,14}$/,gn=`(?:(?:\\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])))`,_n=RegExp(`^${gn}$`);function vn(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function yn(e){return RegExp(`^${vn(e)}$`)}function bn(e){let t=vn({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${gn}T(?:${r})$`)}const xn=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Sn=/^-?\d+$/,Cn=/^-?\d+(?:\.\d+)?$/,wn=/^(?:true|false)$/i,Tn=/^[^A-Z]*$/,En=/^[^a-z]*$/,L=E(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Dn={number:`number`,bigint:`bigint`,object:`date`},On=E(`$ZodCheckLessThan`,(e,t)=>{L.init(e,t);let n=Dn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),kn=E(`$ZodCheckGreaterThan`,(e,t)=>{L.init(e,t);let n=Dn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),An=E(`$ZodCheckMultipleOf`,(e,t)=>{L.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):ut(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),jn=E(`$ZodCheckNumberFormat`,(e,t)=>{L.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=xt[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Sn)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Mn=E(`$ZodCheckMaxLength`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=At(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Nn=E(`$ZodCheckMinLength`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=At(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Pn=E(`$ZodCheckLengthEquals`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=At(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Fn=E(`$ZodCheckStringFormat`,(e,t)=>{var n,r;L.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),In=E(`$ZodCheckRegex`,(e,t)=>{Fn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ln=E(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Tn,Fn.init(e,t)}),Rn=E(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=En,Fn.init(e,t)}),zn=E(`$ZodCheckIncludes`,(e,t)=>{L.init(e,t);let n=yt(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Bn=E(`$ZodCheckStartsWith`,(e,t)=>{L.init(e,t);let n=RegExp(`^${yt(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Vn=E(`$ZodCheckEndsWith`,(e,t)=>{L.init(e,t);let n=RegExp(`.*${yt(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Hn=E(`$ZodCheckOverwrite`,(e,t)=>{L.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var Un=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
3
+ `).filter(function(e){return!e.match(t)},this).map(function(e){if(e.indexOf(` > eval`)>-1&&(e=e.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),e.indexOf(`@`)===-1&&e.indexOf(`:`)===-1)return new ue({functionName:e});var t=/((.*".+"[^@]*)?[^@]*)(?:@)/,n=e.match(t),r=n&&n[1]?n[1]:void 0,i=this.extractLocation(e.replace(t,``));return new ue({functionName:r,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:e})},this)},`ErrorStackParser$$parseFFOrSafari`)}}h(de,`ErrorStackParser`);var fe=new de,w=typeof process==`object`&&typeof process.versions==`object`&&typeof process.versions.node==`string`&&!process.browser,pe=w&&typeof module<`u`&&typeof module.exports<`u`&&typeof oe<`u`&&typeof __dirname<`u`,me=w&&!pe;globalThis.Bun;var he=!w&&!(typeof Deno<`u`),ge=he&&typeof window==`object`&&typeof document==`object`&&typeof document.createElement==`function`&&`sessionStorage`in window&&typeof importScripts!=`function`,_e=he&&typeof importScripts==`function`&&typeof self==`object`;typeof navigator==`object`&&typeof navigator.userAgent==`string`&&navigator.userAgent.indexOf(`Chrome`)==-1&&navigator.userAgent.indexOf(`Safari`);var ve,ye,be,xe,Se;async function Ce(){if(!w||(ve=(await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1))).default,xe=await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1)),Se=await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1)),be=(await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1))).default,ye=await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1)),De=ye.sep,typeof oe<`u`))return;let e={fs:xe,crypto:await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1)),ws:await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1)),child_process:await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1))};globalThis.require=function(t){return e[t]}}h(Ce,`initNodeModules`);function we(e,t){return ye.resolve(t||`.`,e)}h(we,`node_resolvePath`);function Te(e,t){return t===void 0&&(t=location),new URL(e,t).toString()}h(Te,`browser_resolvePath`);var Ee=w?we:Te,De;w||(De=`/`);function Oe(e,t){return e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?{response:fetch(e)}:{binary:Se.readFile(e).then(e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}}h(Oe,`node_getBinaryResponse`);function ke(e,t){let n=new URL(e,location);return{response:fetch(n,t?{integrity:t}:{})}}h(ke,`browser_getBinaryResponse`);var Ae=w?Oe:ke;async function je(e,t){let{response:n,binary:r}=Ae(e,t);if(r)return r;let i=await n;if(!i.ok)throw Error(`Failed to load '${e}': request failed.`);return new Uint8Array(await i.arrayBuffer())}h(je,`loadBinaryFile`);var Me;if(ge)Me=h(async e=>await import(e),`loadScript`);else if(_e)Me=h(async e=>{try{globalThis.importScripts(e)}catch(t){if(t instanceof TypeError)await import(e);else throw t}},`loadScript`);else if(w)Me=Ne;else throw Error(`Cannot determine runtime environment`);async function Ne(e){e.startsWith(`file://`)&&(e=e.slice(7)),e.includes(`://`)?be.runInThisContext(await(await fetch(e)).text()):await import(ve.pathToFileURL(e).href)}h(Ne,`nodeLoadScript`);async function Pe(e){if(w){await Ce();let t=await Se.readFile(e,{encoding:`utf8`});return JSON.parse(t)}else return await(await fetch(e)).json()}h(Pe,`loadLockFile`);async function Fe(){if(pe)return __dirname;let e;try{throw Error()}catch(t){e=t}let t=fe.parse(e)[0].fileName;if(w&&!t.startsWith(`file://`)&&(t=`file://${t}`),me){let e=await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1));return(await import(`./__vite-browser-external-rrUYDKRl.js`).then(l(1))).fileURLToPath(e.dirname(t))}let n=t.lastIndexOf(De);if(n===-1)throw Error(`Could not extract indexURL path from pyodide module location`);return t.slice(0,n)}h(Fe,`calculateDirname`);function Ie(e){let t=e.FS,n=e.FS.filesystems.MEMFS,r=e.PATH,i={DIR_MODE:16895,FILE_MODE:33279,mount:function(e){if(!e.opts.fileSystemHandle)throw Error(`opts.fileSystemHandle is required`);return n.mount.apply(null,arguments)},syncfs:async(e,t,n)=>{try{let r=i.getLocalSet(e),a=await i.getRemoteSet(e),o=t?a:r,s=t?r:a;await i.reconcile(e,o,s),n(null)}catch(e){n(e)}},getLocalSet:e=>{let n=Object.create(null);function i(e){return e!==`.`&&e!==`..`}h(i,`isRealDir`);function a(e){return t=>r.join2(e,t)}h(a,`toAbsolute`);let o=t.readdir(e.mountpoint).filter(i).map(a(e.mountpoint));for(;o.length;){let e=o.pop(),r=t.stat(e);t.isDir(r.mode)&&o.push.apply(o,t.readdir(e).filter(i).map(a(e))),n[e]={timestamp:r.mtime,mode:r.mode}}return{type:`local`,entries:n}},getRemoteSet:async e=>{let t=Object.create(null),n=await Le(e.opts.fileSystemHandle);for(let[a,o]of n)a!==`.`&&(t[r.join2(e.mountpoint,a)]={timestamp:o.kind===`file`?new Date((await o.getFile()).lastModified):new Date,mode:o.kind===`file`?i.FILE_MODE:i.DIR_MODE});return{type:`remote`,entries:t,handles:n}},loadLocalEntry:e=>{let r=t.lookupPath(e).node,i=t.stat(e);if(t.isDir(i.mode))return{timestamp:i.mtime,mode:i.mode};if(t.isFile(i.mode))return r.contents=n.getFileDataAsTypedArray(r),{timestamp:i.mtime,mode:i.mode,contents:r.contents};throw Error(`node type not supported`)},storeLocalEntry:(e,n)=>{if(t.isDir(n.mode))t.mkdirTree(e,n.mode);else if(t.isFile(n.mode))t.writeFile(e,n.contents,{canOwn:!0});else throw Error(`node type not supported`);t.chmod(e,n.mode),t.utime(e,n.timestamp,n.timestamp)},removeLocalEntry:e=>{var n=t.stat(e);t.isDir(n.mode)?t.rmdir(e):t.isFile(n.mode)&&t.unlink(e)},loadRemoteEntry:async e=>{if(e.kind===`file`){let t=await e.getFile();return{contents:new Uint8Array(await t.arrayBuffer()),mode:i.FILE_MODE,timestamp:new Date(t.lastModified)}}else{if(e.kind===`directory`)return{mode:i.DIR_MODE,timestamp:new Date};throw Error(`unknown kind: `+e.kind)}},storeRemoteEntry:async(e,n,i)=>{let a=e.get(r.dirname(n)),o=t.isFile(i.mode)?await a.getFileHandle(r.basename(n),{create:!0}):await a.getDirectoryHandle(r.basename(n),{create:!0});if(o.kind===`file`){let e=await o.createWritable();await e.write(i.contents),await e.close()}e.set(n,o)},removeRemoteEntry:async(e,t)=>{await e.get(r.dirname(t)).removeEntry(r.basename(t)),e.delete(t)},reconcile:async(e,n,a)=>{let o=0,s=[];Object.keys(n.entries).forEach(function(e){let r=n.entries[e],i=a.entries[e];(!i||t.isFile(r.mode)&&r.timestamp.getTime()>i.timestamp.getTime())&&(s.push(e),o++)}),s.sort();let c=[];if(Object.keys(a.entries).forEach(function(e){n.entries[e]||(c.push(e),o++)}),c.sort().reverse(),!o)return;let l=n.type===`remote`?n.handles:a.handles;for(let t of s){let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);if(a.type===`local`){let e=l.get(n),r=await i.loadRemoteEntry(e);i.storeLocalEntry(t,r)}else{let e=i.loadLocalEntry(t);await i.storeRemoteEntry(l,n,e)}}for(let t of c)if(a.type===`local`)i.removeLocalEntry(t);else{let n=r.normalize(t.replace(e.mountpoint,`/`)).substring(1);await i.removeRemoteEntry(l,n)}}};e.FS.filesystems.NATIVEFS_ASYNC=i}h(Ie,`initializeNativeFS`);var Le=h(async e=>{let t=[];async function n(e){for await(let r of e.values())t.push(r),r.kind===`directory`&&await n(r)}h(n,`collect`),await n(e);let r=new Map;r.set(`.`,e);for(let n of t){let t=(await e.resolve(n)).join(`/`);r.set(t,n)}return r},`getFsHandles`);function Re(e){let t={noImageDecoding:!0,noAudioDecoding:!0,noWasmDecoding:!1,preRun:Ue(e),quit(e,n){throw t.exited={status:e,toThrow:n},n},print:e.stdout,printErr:e.stderr,thisProgram:e._sysExecutable,arguments:e.args,API:{config:e},locateFile:t=>e.indexURL+t,instantiateWasm:We(e.indexURL)};return t}h(Re,`createSettings`);function ze(e){return function(t){try{t.FS.mkdirTree(e)}catch(t){console.error(`Error occurred while making a home directory '${e}':`),console.error(t),console.error(`Using '/' for a home directory instead`),e=`/`}t.FS.chdir(e)}}h(ze,`createHomeDirectory`);function Be(e){return function(t){Object.assign(t.ENV,e)}}h(Be,`setEnvironment`);function Ve(e){return e?[async t=>{t.addRunDependency(`fsInitHook`);try{await e(t.FS,{sitePackages:t.API.sitePackages})}finally{t.removeRunDependency(`fsInitHook`)}}]:[]}h(Ve,`callFsInitHook`);function He(e){let t=je(e);return async e=>{let n=e._py_version_major(),r=e._py_version_minor();e.FS.mkdirTree(`/lib`),e.API.sitePackages=`/lib/python${n}.${r}/site-packages`,e.FS.mkdirTree(e.API.sitePackages),e.addRunDependency(`install-stdlib`);try{let i=await t;e.FS.writeFile(`/lib/python${n}${r}.zip`,i)}catch(e){console.error(`Error occurred while installing the standard library:`),console.error(e)}finally{e.removeRunDependency(`install-stdlib`)}}}h(He,`installStdlib`);function Ue(e){let t;return t=e.stdLibURL==null?e.indexURL+`python_stdlib.zip`:e.stdLibURL,[...Ve(e.fsInit),He(t),ze(e.env.HOME),Be(e.env),Ie]}h(Ue,`getFileSystemInitializationFuncs`);function We(e){if(typeof WasmOffsetConverter<`u`)return;let{binary:t,response:n}=Ae(e+`pyodide.asm.wasm`);return function(e,r){return async function(){try{let i;i=n?await WebAssembly.instantiateStreaming(n,e):await WebAssembly.instantiate(await t,e);let{instance:a,module:o}=i;r(a,o)}catch(e){console.warn(`wasm instantiation failed!`),console.warn(e)}}(),{}}}h(We,`getInstantiateWasmFunc`);var Ge=`0.27.7`;async function Ke(e={}){var t,n;await Ce();let r=e.indexURL||await Fe();r=Ee(r),r.endsWith(`/`)||(r+=`/`),e.indexURL=r;let i={fullStdLib:!1,jsglobals:globalThis,stdin:globalThis.prompt?globalThis.prompt:void 0,lockFileURL:r+`pyodide-lock.json`,args:[],env:{},packageCacheDir:r,packages:[],enableRunUntilComplete:!0,checkAPIVersion:!0,BUILD_ID:`e94377f5ce7dcf67e0417b69a0016733c2cfb6b4622ee8c490a6f17eb58e863b`},a=Object.assign(i,e);(t=a.env).HOME??(t.HOME=`/home/pyodide`),(n=a.env).PYTHONINSPECT??(n.PYTHONINSPECT=`1`);let o=Re(a),s=o.API;if(s.lockFilePromise=Pe(a.lockFileURL),typeof _createPyodideModule!=`function`){let e=`${a.indexURL}pyodide.asm.js`;await Me(e)}let c;if(e._loadSnapshot){let t=await e._loadSnapshot;c=ArrayBuffer.isView(t)?t:new Uint8Array(t),o.noInitialRun=!0,o.INITIAL_MEMORY=c.length}let l=await _createPyodideModule(o);if(o.exited)throw o.exited.toThrow;if(e.pyproxyToStringRepr&&s.setPyProxyToStringMethod(!0),s.version!==Ge&&a.checkAPIVersion)throw Error(`Pyodide version does not match: '${Ge}' <==> '${s.version}'. If you updated the Pyodide version, make sure you also updated the 'indexURL' parameter passed to loadPyodide.`);l.locateFile=e=>{throw Error(`Didn't expect to load any more file_packager files!`)};let u;c&&(u=s.restoreSnapshot(c));let d=s.finalizeBootstrap(u,e._snapshotDeserializer);return s.sys.path.insert(0,``),d.version.includes(`dev`)||s.setCdnUrl(`https://cdn.jsdelivr.net/pyodide/v${d.version}/full/`),s._pyodide.set_excepthook(),await s.packageIndexReady,s.initializeStreams(a.stdin,a.stdout,a.stderr),d}h(Ke,`loadPyodide`);function qe(e){return e.includes(`dev`),`v${Ge}`}var Je=class{buffer;started=!1;onMessage;constructor(e){this.onMessage=e,this.buffer=[]}push=e=>{this.started?this.onMessage(e):this.buffer.push(e)};start=()=>{this.started=!0,this.buffer.forEach(e=>this.onMessage(e)),this.buffer=[]}};const Ye={NOOP:()=>{},ASYNC_NOOP:async()=>{},THROW:()=>{throw Error(`Should not be called`)},asUpdater:e=>typeof e==`function`?e:()=>e,identity:e=>e},Xe=(e,t)=>{let n=`[${e}]`;return{debug:(...e)=>console.debug(n,...e),log:(...e)=>t.log(n,...e),warn:(...e)=>t.warn(n,...e),error:(...e)=>t.error(n,...e),trace:(...e)=>t.trace(n,...e),get:n=>Xe(`${e}:${n}`,t),disabled:(e=!0)=>e?Qe:t}},Ze={debug:(...e)=>{console.debug(...e)},log:(...e)=>{console.log(...e)},warn:(...e)=>{console.warn(...e)},error:(...e)=>{console.error(...e)},trace:(...e)=>{console.trace(...e)},get:e=>Xe(`marimo:${e}`,Ze),disabled:(e=!0)=>e?Qe:Ze},Qe={debug:()=>Ye.NOOP,log:()=>Ye.NOOP,warn:()=>Ye.NOOP,error:()=>Ye.NOOP,trace:()=>Ye.NOOP,get:()=>Qe,disabled:()=>Qe};function $e(){return typeof window<`u`&&window.Logger||Ze}const T=$e();var et=class{promise;resolve;reject;status=`pending`;value=void 0;constructor(){this.promise=new Promise((e,t)=>{this.reject=e=>{this.status=`rejected`,t(e)},this.resolve=t=>{this.status=`resolved`,tt(t)||(this.value=t),e(t)}})}};function tt(e){return typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`}Object.freeze({status:`aborted`});function E(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var nt=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},rt=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};const it={};function D(e){return e&&Object.assign(it,e),it}function at(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function ot(e,t){return typeof t==`bigint`?t.toString():t}function st(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function ct(e){return e==null}function lt(e){let t=e.startsWith(`^`)?1:0,n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function ut(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}const dt=Symbol(`evaluating`);function O(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==dt)return r===void 0&&(r=dt,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function k(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function A(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function ft(e){return JSON.stringify(e)}function pt(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}const mt=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ht(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const gt=st(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function j(e){if(ht(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ht(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function _t(e){return j(e)?{...e}:Array.isArray(e)?[...e]:e}const vt=new Set([`string`,`number`,`symbol`]);function yt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function M(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function N(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function bt(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}const xt={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function St(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return M(e,A(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return k(this,`shape`,e),e},checks:[]}))}function Ct(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return M(e,A(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return k(this,`shape`,r),r},checks:[]}))}function wt(e,t){if(!j(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return k(this,`shape`,n),n}}))}function Tt(e,t){if(!j(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return k(this,`shape`,n),n}}))}function Et(e,t){return M(e,A(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return k(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function Dt(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return M(t,A(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return k(this,`shape`,i),i},checks:[]}))}function Ot(e,t,n){return M(t,A(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return k(this,`shape`,i),i}}))}function P(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function F(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function kt(e){return typeof e==`string`?e:e?.message}function I(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=kt(e.inst?._zod.def?.error?.(e))??kt(t?.error?.(e))??kt(n.customError?.(e))??kt(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function At(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function jt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}const Mt=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,ot,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Nt=E(`$ZodError`,Mt),Pt=E(`$ZodError`,Mt,{Parent:Error});function Ft(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function It(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}const Lt=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new nt;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>I(e,a,D())));throw mt(t,i?.callee),t}return o.value},Rt=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>I(e,a,D())));throw mt(t,i?.callee),t}return o.value},zt=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new nt;return a.issues.length?{success:!1,error:new(e??Nt)(a.issues.map(e=>I(e,i,D())))}:{success:!0,data:a.value}},Bt=zt(Pt),Vt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>I(e,i,D())))}:{success:!0,data:a.value}},Ht=Vt(Pt),Ut=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Lt(e)(t,n,i)},Wt=e=>(t,n,r)=>Lt(e)(t,n,r),Gt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Rt(e)(t,n,i)},Kt=e=>async(t,n,r)=>Rt(e)(t,n,r),qt=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return zt(e)(t,n,i)},Jt=e=>(t,n,r)=>zt(e)(t,n,r),Yt=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return Vt(e)(t,n,i)},Xt=e=>async(t,n,r)=>Vt(e)(t,n,r),Zt=/^[cC][^\s-]{8,}$/,Qt=/^[0-9a-z]+$/,$t=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,en=/^[0-9a-vA-V]{20}$/,tn=/^[A-Za-z0-9]{27}$/,nn=/^[a-zA-Z0-9_-]{21}$/,rn=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,an=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,on=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,sn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function cn(){return RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)}const ln=/^(?:(?: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])$/,un=/^(([0-9a-fA-F]{1,4}:){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}|:))$/,dn=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,fn=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,pn=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,mn=/^[A-Za-z0-9_-]*$/,hn=/^\+[1-9]\d{6,14}$/,gn=`(?:(?:\\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])))`,_n=RegExp(`^${gn}$`);function vn(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function yn(e){return RegExp(`^${vn(e)}$`)}function bn(e){let t=vn({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${gn}T(?:${r})$`)}const xn=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},Sn=/^-?\d+$/,Cn=/^-?\d+(?:\.\d+)?$/,wn=/^(?:true|false)$/i,Tn=/^[^A-Z]*$/,En=/^[^a-z]*$/,L=E(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Dn={number:`number`,bigint:`bigint`,object:`date`},On=E(`$ZodCheckLessThan`,(e,t)=>{L.init(e,t);let n=Dn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),kn=E(`$ZodCheckGreaterThan`,(e,t)=>{L.init(e,t);let n=Dn[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),An=E(`$ZodCheckMultipleOf`,(e,t)=>{L.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):ut(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),jn=E(`$ZodCheckNumberFormat`,(e,t)=>{L.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=xt[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=Sn)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Mn=E(`$ZodCheckMaxLength`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=At(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Nn=E(`$ZodCheckMinLength`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=At(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Pn=E(`$ZodCheckLengthEquals`,(e,t)=>{var n;L.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ct(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=At(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Fn=E(`$ZodCheckStringFormat`,(e,t)=>{var n,r;L.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),In=E(`$ZodCheckRegex`,(e,t)=>{Fn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ln=E(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Tn,Fn.init(e,t)}),Rn=E(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=En,Fn.init(e,t)}),zn=E(`$ZodCheckIncludes`,(e,t)=>{L.init(e,t);let n=yt(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Bn=E(`$ZodCheckStartsWith`,(e,t)=>{L.init(e,t);let n=RegExp(`^${yt(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Vn=E(`$ZodCheckEndsWith`,(e,t)=>{L.init(e,t);let n=RegExp(`.*${yt(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),Hn=E(`$ZodCheckOverwrite`,(e,t)=>{L.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var Un=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
4
4
  `).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
5
5
  `))}};const Wn={major:4,minor:3,patch:6},R=E(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Wn;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=P(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new nt;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=P(e,t))});else{if(e.issues.length===t)continue;r||=P(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(P(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new nt;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new nt;return o.then(e=>t(e,r,a))}return t(o,r,a)}}O(e,`~standard`,()=>({validate:t=>{try{let n=Bt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Ht(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Gn=E(`$ZodString`,(e,t)=>{R.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??xn(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),z=E(`$ZodStringFormat`,(e,t)=>{Fn.init(e,t),Gn.init(e,t)}),Kn=E(`$ZodGUID`,(e,t)=>{t.pattern??=an,z.init(e,t)}),qn=E(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=on(e)}else t.pattern??=on();z.init(e,t)}),Jn=E(`$ZodEmail`,(e,t)=>{t.pattern??=sn,z.init(e,t)}),Yn=E(`$ZodURL`,(e,t)=>{z.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),Xn=E(`$ZodEmoji`,(e,t)=>{t.pattern??=cn(),z.init(e,t)}),Zn=E(`$ZodNanoID`,(e,t)=>{t.pattern??=nn,z.init(e,t)}),Qn=E(`$ZodCUID`,(e,t)=>{t.pattern??=Zt,z.init(e,t)}),$n=E(`$ZodCUID2`,(e,t)=>{t.pattern??=Qt,z.init(e,t)}),er=E(`$ZodULID`,(e,t)=>{t.pattern??=$t,z.init(e,t)}),tr=E(`$ZodXID`,(e,t)=>{t.pattern??=en,z.init(e,t)}),nr=E(`$ZodKSUID`,(e,t)=>{t.pattern??=tn,z.init(e,t)}),rr=E(`$ZodISODateTime`,(e,t)=>{t.pattern??=bn(t),z.init(e,t)}),ir=E(`$ZodISODate`,(e,t)=>{t.pattern??=_n,z.init(e,t)}),ar=E(`$ZodISOTime`,(e,t)=>{t.pattern??=yn(t),z.init(e,t)}),or=E(`$ZodISODuration`,(e,t)=>{t.pattern??=rn,z.init(e,t)}),sr=E(`$ZodIPv4`,(e,t)=>{t.pattern??=ln,z.init(e,t),e._zod.bag.format=`ipv4`}),cr=E(`$ZodIPv6`,(e,t)=>{t.pattern??=un,z.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),lr=E(`$ZodCIDRv4`,(e,t)=>{t.pattern??=dn,z.init(e,t)}),ur=E(`$ZodCIDRv6`,(e,t)=>{t.pattern??=fn,z.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function dr(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const fr=E(`$ZodBase64`,(e,t)=>{t.pattern??=pn,z.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{dr(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function pr(e){if(!mn.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return dr(t.padEnd(Math.ceil(t.length/4)*4,`=`))}const mr=E(`$ZodBase64URL`,(e,t)=>{t.pattern??=mn,z.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{pr(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),hr=E(`$ZodE164`,(e,t)=>{t.pattern??=hn,z.init(e,t)});function gr(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}const _r=E(`$ZodJWT`,(e,t)=>{z.init(e,t),e._zod.check=n=>{gr(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),vr=E(`$ZodNumber`,(e,t)=>{R.init(e,t),e._zod.pattern=e._zod.bag.pattern??Cn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),yr=E(`$ZodNumberFormat`,(e,t)=>{jn.init(e,t),vr.init(e,t)}),br=E(`$ZodBoolean`,(e,t)=>{R.init(e,t),e._zod.pattern=wn,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),xr=E(`$ZodUnknown`,(e,t)=>{R.init(e,t),e._zod.parse=e=>e}),Sr=E(`$ZodNever`,(e,t)=>{R.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Cr(e,t,n){e.issues.length&&t.issues.push(...F(n,e.issues)),t.value[n]=e.value}const wr=E(`$ZodArray`,(e,t)=>{R.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Cr(t,n,e))):Cr(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Tr(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...F(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Er(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=bt(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Dr(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Tr(e,n,i,t,u))):Tr(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}const Or=E(`$ZodObject`,(e,t)=>{if(R.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=st(()=>Er(t));O(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=ht,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>Tr(n,t,e,s,r))):Tr(i,t,e,s,r)}return i?Dr(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),kr=E(`$ZodObjectJIT`,(e,t)=>{Or.init(e,t);let n=e._zod.parse,r=st(()=>Er(t)),i=e=>{let t=new Un([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=ft(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=ft(r),s=e[r]?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),s?t.write(`
6
6
  if (${n}.issues.length) {
@@ -38,7 +38,7 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
38
38
 
39
39
  `)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=ht,s=!it.jitless,c=s&&gt.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?Dr([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function Ar(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=>!P(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=>I(e,r,D())))}),t)}const jr=E(`$ZodUnion`,(e,t)=>{R.init(e,t),O(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),O(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),O(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),O(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=>lt(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=>Ar(t,i,e,a)):Ar(s,i,e,a)}}),Mr=E(`$ZodIntersection`,(e,t)=>{R.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])=>Pr(e,t,n)):Pr(e,i,a)}});function Nr(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(j(e)&&j(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=Nr(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=Nr(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 Pr(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}),P(e))return e;let o=Nr(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}const Fr=E(`$ZodRecord`,(e,t)=>{R.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!j(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(...F(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...F(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`&&Cn.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=>I(e,r,D())),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(...F(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...F(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),Ir=E(`$ZodEnum`,(e,t)=>{R.init(e,t);let n=at(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>vt.has(typeof e)).map(e=>typeof e==`string`?yt(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}}),Lr=E(`$ZodTransform`,(e,t)=>{R.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rt(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 nt;return n.value=i,n}});function Rr(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const zr=E(`$ZodOptional`,(e,t)=>{R.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,O(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),O(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${lt(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=>Rr(t,e.value)):Rr(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),Br=E(`$ZodExactOptional`,(e,t)=>{zr.init(e,t),O(e._zod,`values`,()=>t.innerType._zod.values),O(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Vr=E(`$ZodNullable`,(e,t)=>{R.init(e,t),O(e._zod,`optin`,()=>t.innerType._zod.optin),O(e._zod,`optout`,()=>t.innerType._zod.optout),O(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${lt(e.source)}|null)$`):void 0}),O(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)}),Hr=E(`$ZodDefault`,(e,t)=>{R.init(e,t),e._zod.optin=`optional`,O(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}const Wr=E(`$ZodPrefault`,(e,t)=>{R.init(e,t),e._zod.optin=`optional`,O(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))}),Gr=E(`$ZodNonOptional`,(e,t)=>{R.init(e,t),O(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=>Kr(t,e)):Kr(i,e)}});function Kr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}const qr=E(`$ZodCatch`,(e,t)=>{R.init(e,t),O(e._zod,`optin`,()=>t.innerType._zod.optin),O(e._zod,`optout`,()=>t.innerType._zod.optout),O(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=>I(e,n,D()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>I(e,n,D()))},input:e.value}),e.issues=[]),e)}}),Jr=E(`$ZodPipe`,(e,t)=>{R.init(e,t),O(e._zod,`values`,()=>t.in._zod.values),O(e._zod,`optin`,()=>t.in._zod.optin),O(e._zod,`optout`,()=>t.out._zod.optout),O(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=>Yr(e,t.in,n)):Yr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Yr(e,t.out,n)):Yr(r,t.out,n)}});function Yr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Xr=E(`$ZodReadonly`,(e,t)=>{R.init(e,t),O(e._zod,`propValues`,()=>t.innerType._zod.propValues),O(e._zod,`values`,()=>t.innerType._zod.values),O(e._zod,`optin`,()=>t.innerType?._zod?.optin),O(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(Zr):Zr(r)}});function Zr(e){return e.value=Object.freeze(e.value),e}const Qr=E(`$ZodCustom`,(e,t)=>{L.init(e,t),R.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=>$r(t,n,r,e));$r(i,n,r,e)}});function $r(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(jt(e))}}var ei,ti=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 ni(){return new ti}(ei=globalThis).__zod_globalRegistry??(ei.__zod_globalRegistry=ni());const ri=globalThis.__zod_globalRegistry;function ii(e,t){return new e({type:`string`,...N(t)})}function ai(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...N(t)})}function oi(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...N(t)})}function si(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...N(t)})}function ci(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...N(t)})}function li(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...N(t)})}function ui(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...N(t)})}function di(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...N(t)})}function fi(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...N(t)})}function pi(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...N(t)})}function mi(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...N(t)})}function hi(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...N(t)})}function gi(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...N(t)})}function _i(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...N(t)})}function vi(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...N(t)})}function yi(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...N(t)})}function bi(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...N(t)})}function xi(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...N(t)})}function Si(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...N(t)})}function Ci(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...N(t)})}function wi(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...N(t)})}function Ti(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...N(t)})}function Ei(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...N(t)})}function Di(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...N(t)})}function Oi(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...N(t)})}function ki(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...N(t)})}function Ai(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...N(t)})}function ji(e,t){return new e({type:`number`,checks:[],...N(t)})}function Mi(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...N(t)})}function Ni(e,t){return new e({type:`boolean`,...N(t)})}function Pi(e){return new e({type:`unknown`})}function Fi(e,t){return new e({type:`never`,...N(t)})}function Ii(e,t){return new On({check:`less_than`,...N(t),value:e,inclusive:!1})}function Li(e,t){return new On({check:`less_than`,...N(t),value:e,inclusive:!0})}function Ri(e,t){return new kn({check:`greater_than`,...N(t),value:e,inclusive:!1})}function zi(e,t){return new kn({check:`greater_than`,...N(t),value:e,inclusive:!0})}function Bi(e,t){return new An({check:`multiple_of`,...N(t),value:e})}function Vi(e,t){return new Mn({check:`max_length`,...N(t),maximum:e})}function Hi(e,t){return new Nn({check:`min_length`,...N(t),minimum:e})}function Ui(e,t){return new Pn({check:`length_equals`,...N(t),length:e})}function Wi(e,t){return new In({check:`string_format`,format:`regex`,...N(t),pattern:e})}function Gi(e){return new Ln({check:`string_format`,format:`lowercase`,...N(e)})}function Ki(e){return new Rn({check:`string_format`,format:`uppercase`,...N(e)})}function qi(e,t){return new zn({check:`string_format`,format:`includes`,...N(t),includes:e})}function Ji(e,t){return new Bn({check:`string_format`,format:`starts_with`,...N(t),prefix:e})}function Yi(e,t){return new Vn({check:`string_format`,format:`ends_with`,...N(t),suffix:e})}function B(e){return new Hn({check:`overwrite`,tx:e})}function Xi(e){return B(t=>t.normalize(e))}function Zi(){return B(e=>e.trim())}function Qi(){return B(e=>e.toLowerCase())}function $i(){return B(e=>e.toUpperCase())}function ea(){return B(e=>pt(e))}function ta(e,t,n){return new e({type:`array`,element:t,...N(n)})}function na(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...N(n)})}function ra(e){let t=ia(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(jt(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(jt(r))}},e(n.value,n)));return t}function ia(e,t){let n=new L({check:`custom`,...N(t)});return n._zod.check=e,n}function aa(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??ri,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 V(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,V(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`&&H(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 oa(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>
40
40
 
41
- 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 sa(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:la(t,`input`,e.processors),output:la(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function H(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 H(r.element,n);if(r.type===`set`)return H(r.valueType,n);if(r.type===`lazy`)return H(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 H(r.innerType,n);if(r.type===`intersection`)return H(r.left,n)||H(r.right,n);if(r.type===`record`||r.type===`map`)return H(r.keyType,n)||H(r.valueType,n);if(r.type===`pipe`)return H(r.in,n)||H(r.out,n);if(r.type===`object`){for(let e in r.shape)if(H(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(H(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(H(e,n))return!0;return!!(r.rest&&H(r.rest,n))}return!1}const ca=(e,t={})=>n=>{let r=aa({...n,processors:t});return V(e,r),oa(r,e),sa(r,e)},la=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=aa({...i??{},target:a,io:t,processors:n});return V(e,o),oa(o,e),sa(o,e)},ua={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},da=(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=ua[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}))])}},fa=(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)},pa=(e,t,n,r)=>{n.type=`boolean`},ma=(e,t,n,r)=>{n.not={}},ha=(e,t,n,r)=>{let i=e._zod.def,a=at(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},ga=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},_a=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},va=(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=V(a.element,t,{...r,path:[...r.path,`items`]})},ya=(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]=V(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=V(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},ba=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>V(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},xa=(e,t,n,r)=>{let i=e._zod.def,a=V(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=V(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]]},Sa=(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=V(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=V(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=V(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)}},Ca=(e,t,n,r)=>{let i=e._zod.def,a=V(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`}]},wa=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ta=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ea=(e,t,n,r)=>{let i=e._zod.def;V(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)))},Da=(e,t,n,r)=>{let i=e._zod.def;V(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},Oa=(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;V(a,t,r);let o=t.seen.get(e);o.ref=a},ka=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Aa=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ja=E(`ZodISODateTime`,(e,t)=>{rr.init(e,t),K.init(e,t)});function Ma(e){return Di(ja,e)}const Na=E(`ZodISODate`,(e,t)=>{ir.init(e,t),K.init(e,t)});function Pa(e){return Oi(Na,e)}const Fa=E(`ZodISOTime`,(e,t)=>{ar.init(e,t),K.init(e,t)});function Ia(e){return ki(Fa,e)}const La=E(`ZodISODuration`,(e,t)=>{or.init(e,t),K.init(e,t)});function Ra(e){return Ai(La,e)}const za=(e,t)=>{Nt.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>It(e,t)},flatten:{value:t=>Ft(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ot,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ot,2)}},isEmpty:{get(){return e.issues.length===0}}})};E(`ZodError`,za);const U=E(`ZodError`,za,{Parent:Error}),Ba=Lt(U),Va=Rt(U),Ha=zt(U),Ua=Vt(U),Wa=Ut(U),Ga=Wt(U),Ka=Gt(U),qa=Kt(U),Ja=qt(U),Ya=Jt(U),Xa=Yt(U),Za=Xt(U),W=E(`ZodType`,(e,t)=>(R.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:la(e,`input`),output:la(e,`output`)}}),e.toJSONSchema=ca(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(A(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)=>M(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>Ba(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Ha(e,t,n),e.parseAsync=async(t,n)=>Va(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ua(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Wa(e,t,n),e.decode=(t,n)=>Ga(e,t,n),e.encodeAsync=async(t,n)=>Ka(e,t,n),e.decodeAsync=async(t,n)=>qa(e,t,n),e.safeEncode=(t,n)=>Ja(e,t,n),e.safeDecode=(t,n)=>Ya(e,t,n),e.safeEncodeAsync=async(t,n)=>Xa(e,t,n),e.safeDecodeAsync=async(t,n)=>Za(e,t,n),e.refine=(t,n)=>e.check(as(t,n)),e.superRefine=t=>e.check(os(t)),e.overwrite=t=>e.check(B(t)),e.optional=()=>Vo(e),e.exactOptional=()=>Uo(e),e.nullable=()=>Go(e),e.nullish=()=>Vo(Go(e)),e.nonoptional=t=>Zo(e,t),e.array=()=>J(e),e.or=t=>Mo([e,t]),e.and=t=>Po(e,t),e.transform=t=>ts(e,zo(t)),e.default=t=>qo(e,t),e.prefault=t=>Yo(e,t),e.catch=t=>$o(e,t),e.pipe=t=>ts(e,t),e.readonly=()=>rs(e),e.describe=t=>{let n=e.clone();return ri.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return ri.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return ri.get(e);let n=e.clone();return ri.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),Qa=E(`_ZodString`,(e,t)=>{Gn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>da(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(Wi(...t)),e.includes=(...t)=>e.check(qi(...t)),e.startsWith=(...t)=>e.check(Ji(...t)),e.endsWith=(...t)=>e.check(Yi(...t)),e.min=(...t)=>e.check(Hi(...t)),e.max=(...t)=>e.check(Vi(...t)),e.length=(...t)=>e.check(Ui(...t)),e.nonempty=(...t)=>e.check(Hi(1,...t)),e.lowercase=t=>e.check(Gi(t)),e.uppercase=t=>e.check(Ki(t)),e.trim=()=>e.check(Zi()),e.normalize=(...t)=>e.check(Xi(...t)),e.toLowerCase=()=>e.check(Qi()),e.toUpperCase=()=>e.check($i()),e.slugify=()=>e.check(ea())}),$a=E(`ZodString`,(e,t)=>{Gn.init(e,t),Qa.init(e,t),e.email=t=>e.check(ai(eo,t)),e.url=t=>e.check(di(ro,t)),e.jwt=t=>e.check(Ei(yo,t)),e.emoji=t=>e.check(fi(io,t)),e.guid=t=>e.check(oi(to,t)),e.uuid=t=>e.check(si(no,t)),e.uuidv4=t=>e.check(ci(no,t)),e.uuidv6=t=>e.check(li(no,t)),e.uuidv7=t=>e.check(ui(no,t)),e.nanoid=t=>e.check(pi(ao,t)),e.guid=t=>e.check(oi(to,t)),e.cuid=t=>e.check(mi(oo,t)),e.cuid2=t=>e.check(hi(so,t)),e.ulid=t=>e.check(gi(co,t)),e.base64=t=>e.check(Ci(go,t)),e.base64url=t=>e.check(wi(_o,t)),e.xid=t=>e.check(_i(lo,t)),e.ksuid=t=>e.check(vi(uo,t)),e.ipv4=t=>e.check(yi(fo,t)),e.ipv6=t=>e.check(bi(po,t)),e.cidrv4=t=>e.check(xi(mo,t)),e.cidrv6=t=>e.check(Si(ho,t)),e.e164=t=>e.check(Ti(vo,t)),e.datetime=t=>e.check(Ma(t)),e.date=t=>e.check(Pa(t)),e.time=t=>e.check(Ia(t)),e.duration=t=>e.check(Ra(t))});function G(e){return ii($a,e)}const K=E(`ZodStringFormat`,(e,t)=>{z.init(e,t),Qa.init(e,t)}),eo=E(`ZodEmail`,(e,t)=>{Jn.init(e,t),K.init(e,t)}),to=E(`ZodGUID`,(e,t)=>{Kn.init(e,t),K.init(e,t)}),no=E(`ZodUUID`,(e,t)=>{qn.init(e,t),K.init(e,t)}),ro=E(`ZodURL`,(e,t)=>{Yn.init(e,t),K.init(e,t)}),io=E(`ZodEmoji`,(e,t)=>{Xn.init(e,t),K.init(e,t)}),ao=E(`ZodNanoID`,(e,t)=>{Zn.init(e,t),K.init(e,t)}),oo=E(`ZodCUID`,(e,t)=>{Qn.init(e,t),K.init(e,t)}),so=E(`ZodCUID2`,(e,t)=>{$n.init(e,t),K.init(e,t)}),co=E(`ZodULID`,(e,t)=>{er.init(e,t),K.init(e,t)}),lo=E(`ZodXID`,(e,t)=>{tr.init(e,t),K.init(e,t)}),uo=E(`ZodKSUID`,(e,t)=>{nr.init(e,t),K.init(e,t)}),fo=E(`ZodIPv4`,(e,t)=>{sr.init(e,t),K.init(e,t)}),po=E(`ZodIPv6`,(e,t)=>{cr.init(e,t),K.init(e,t)}),mo=E(`ZodCIDRv4`,(e,t)=>{lr.init(e,t),K.init(e,t)}),ho=E(`ZodCIDRv6`,(e,t)=>{ur.init(e,t),K.init(e,t)}),go=E(`ZodBase64`,(e,t)=>{fr.init(e,t),K.init(e,t)}),_o=E(`ZodBase64URL`,(e,t)=>{mr.init(e,t),K.init(e,t)}),vo=E(`ZodE164`,(e,t)=>{hr.init(e,t),K.init(e,t)}),yo=E(`ZodJWT`,(e,t)=>{_r.init(e,t),K.init(e,t)}),bo=E(`ZodNumber`,(e,t)=>{vr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fa(e,t,n,r),e.gt=(t,n)=>e.check(Ri(t,n)),e.gte=(t,n)=>e.check(zi(t,n)),e.min=(t,n)=>e.check(zi(t,n)),e.lt=(t,n)=>e.check(Ii(t,n)),e.lte=(t,n)=>e.check(Li(t,n)),e.max=(t,n)=>e.check(Li(t,n)),e.int=t=>e.check(Co(t)),e.safe=t=>e.check(Co(t)),e.positive=t=>e.check(Ri(0,t)),e.nonnegative=t=>e.check(zi(0,t)),e.negative=t=>e.check(Ii(0,t)),e.nonpositive=t=>e.check(Li(0,t)),e.multipleOf=(t,n)=>e.check(Bi(t,n)),e.step=(t,n)=>e.check(Bi(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 xo(e){return ji(bo,e)}const So=E(`ZodNumberFormat`,(e,t)=>{yr.init(e,t),bo.init(e,t)});function Co(e){return Mi(So,e)}const wo=E(`ZodBoolean`,(e,t)=>{br.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>pa(e,t,n,r)});function q(e){return Ni(wo,e)}const To=E(`ZodUnknown`,(e,t)=>{xr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Eo(){return Pi(To)}const Do=E(`ZodNever`,(e,t)=>{Sr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ma(e,t,n,r)});function Oo(e){return Fi(Do,e)}const ko=E(`ZodArray`,(e,t)=>{wr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>va(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(Hi(t,n)),e.nonempty=t=>e.check(Hi(1,t)),e.max=(t,n)=>e.check(Vi(t,n)),e.length=(t,n)=>e.check(Ui(t,n)),e.unwrap=()=>e.element});function J(e,t){return ta(ko,e,t)}const Ao=E(`ZodObject`,(e,t)=>{kr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ya(e,t,n,r),O(e,`shape`,()=>t.shape),e.keyof=()=>Z(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Eo()}),e.loose=()=>e.clone({...e._zod.def,catchall:Eo()}),e.strict=()=>e.clone({...e._zod.def,catchall:Oo()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>wt(e,t),e.safeExtend=t=>Tt(e,t),e.merge=t=>Et(e,t),e.pick=t=>St(e,t),e.omit=t=>Ct(e,t),e.partial=(...t)=>Dt(Bo,e,t[0]),e.required=(...t)=>Ot(Xo,e,t[0])});function Y(e,t){return new Ao({type:`object`,shape:e??{},...N(t)})}function X(e,t){return new Ao({type:`object`,shape:e,catchall:Eo(),...N(t)})}const jo=E(`ZodUnion`,(e,t)=>{jr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ba(e,t,n,r),e.options=t.options});function Mo(e,t){return new jo({type:`union`,options:e,...N(t)})}const No=E(`ZodIntersection`,(e,t)=>{Mr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xa(e,t,n,r)});function Po(e,t){return new No({type:`intersection`,left:e,right:t})}const Fo=E(`ZodRecord`,(e,t)=>{Fr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Sa(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function Io(e,t,n){return new Fo({type:`record`,keyType:e,valueType:t,...N(n)})}const Lo=E(`ZodEnum`,(e,t)=>{Ir.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ha(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 Lo({...t,checks:[],...N(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 Lo({...t,checks:[],...N(r),entries:i})}});function Z(e,t){return new Lo({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...N(t)})}const Ro=E(`ZodTransform`,(e,t)=>{Lr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_a(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rt(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(jt(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(jt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function zo(e){return new Ro({type:`transform`,transform:e})}const Bo=E(`ZodOptional`,(e,t)=>{zr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Aa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Vo(e){return new Bo({type:`optional`,innerType:e})}const Ho=E(`ZodExactOptional`,(e,t)=>{Br.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Aa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Uo(e){return new Ho({type:`optional`,innerType:e})}const Wo=E(`ZodNullable`,(e,t)=>{Vr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ca(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Go(e){return new Wo({type:`nullable`,innerType:e})}const Ko=E(`ZodDefault`,(e,t)=>{Hr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ta(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function qo(e,t){return new Ko({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():_t(t)}})}const Jo=E(`ZodPrefault`,(e,t)=>{Wr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ea(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Yo(e,t){return new Jo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():_t(t)}})}const Xo=E(`ZodNonOptional`,(e,t)=>{Gr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Zo(e,t){return new Xo({type:`nonoptional`,innerType:e,...N(t)})}const Qo=E(`ZodCatch`,(e,t)=>{qr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Da(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function $o(e,t){return new Qo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const es=E(`ZodPipe`,(e,t)=>{Jr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oa(e,t,n,r),e.in=t.in,e.out=t.out});function ts(e,t){return new es({type:`pipe`,in:e,out:t})}const ns=E(`ZodReadonly`,(e,t)=>{Xr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ka(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function rs(e){return new ns({type:`readonly`,innerType:e})}const is=E(`ZodCustom`,(e,t)=>{Qr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ga(e,t,n,r)});function as(e,t={}){return na(is,e,t)}function os(e){return ra(e)}const ss=Y({detail:G()}),cs=Y({error:G()});function ls(e){if(!e)return`Unknown error`;if(e instanceof Error){let t=ss.safeParse(e.cause);return t.success?t.data.detail:us(e.message)}if(typeof e==`object`){let t=ss.safeParse(e);if(t.success)return t.data.detail;let n=cs.safeParse(e);if(n.success)return n.data.error}try{return JSON.stringify(e)}catch{return String(e)}}function us(e){let t=ds(e);if(!t)return e;let n=ss.safeParse(t);if(n.success)return n.data.detail;let r=cs.safeParse(t);return r.success?r.data.error:e}function ds(e){try{return JSON.parse(e)}catch{return e}}function fs(e,t){if(!e)throw Error(t)}const ps=[`pip`,`uv`,`rye`,`poetry`,`pixi`],ms=[`normal`,`compact`,`medium`,`full`,`columns`],hs=[`auto`,`native`,`polars`,`lazy-polars`,`pandas`],gs=[`html`,`markdown`,`ipynb`],_s=[`manual`,`ask`,`agent`],Q=Y({api_key:G().optional(),base_url:G().optional(),project:G().optional()}).loose(),vs=Y({chat_model:G().nullish(),edit_model:G().nullish(),autocomplete_model:G().nullish(),displayed_models:J(G()).default([]),custom_models:J(G()).default([])}),ys=X({completion:Y({activate_on_typing:q().prefault(!0),signature_hint_on_typing:q().prefault(!1),copilot:Mo([q(),Z([`github`,`codeium`,`custom`])]).prefault(!1).transform(e=>e===!0?`github`:e),codeium_api_key:G().nullish()}).prefault({}),save:X({autosave:Z([`off`,`after_delay`]).prefault(`after_delay`),autosave_delay:xo().nonnegative().transform(e=>Math.max(e,1e3)).prefault(1e3),format_on_save:q().prefault(!1)}).prefault({}),formatting:X({line_length:xo().nonnegative().prefault(79).transform(e=>Math.min(e,1e3))}).prefault({}),keymap:X({preset:Z([`default`,`vim`]).prefault(`default`),overrides:Io(G(),G()).prefault({}),destructive_delete:q().prefault(!0)}).prefault({}),runtime:X({auto_instantiate:q().prefault(!0),on_cell_change:Z([`lazy`,`autorun`]).prefault(`autorun`),auto_reload:Z([`off`,`lazy`,`autorun`]).prefault(`off`),reactive_tests:q().prefault(!0),watcher_on_save:Z([`lazy`,`autorun`]).prefault(`lazy`),default_sql_output:Z(hs).prefault(`auto`),default_auto_download:J(Z(gs)).prefault([]),show_tracebacks:q().prefault(!1)}).prefault({}),display:X({theme:Z([`light`,`dark`,`system`]).prefault(`light`),code_editor_font_size:xo().nonnegative().prefault(14),cell_output:Z([`above`,`below`]).prefault(`below`),dataframes:Z([`rich`,`plain`]).prefault(`rich`),default_table_page_size:xo().prefault(10),default_table_max_columns:xo().prefault(50),default_width:Z(ms).prefault(`medium`).transform(e=>e===`normal`?`compact`:e),locale:G().nullable().optional(),reference_highlighting:q().prefault(!0)}).prefault({}),package_management:X({manager:Z(ps).prefault(`pip`)}).prefault({}),ai:X({rules:G().prefault(``),mode:Z(_s).prefault(`manual`),inline_tooltip:q().prefault(!1),open_ai:Q.optional(),anthropic:Q.optional(),google:Q.optional(),ollama:Q.optional(),openrouter:Q.optional(),wandb:Q.optional(),open_ai_compatible:Q.optional(),azure:Q.optional(),bedrock:X({region_name:G().optional(),profile_name:G().optional(),aws_access_key_id:G().optional(),aws_secret_access_key:G().optional()}).optional(),custom_providers:Io(G(),Q).prefault({}),models:vs.prefault({displayed_models:[],custom_models:[]})}).prefault({}),experimental:X({markdown:q().optional(),rtc:q().optional()}).prefault(()=>({})),server:X({disable_file_downloads:q().optional()}).prefault(()=>({})),diagnostics:X({enabled:q().optional(),sql_linter:q().optional()}).prefault(()=>({})),sharing:X({html:q().optional(),wasm:q().optional()}).optional(),mcp:X({presets:J(Z([`marimo`,`context7`])).optional()}).optional().prefault({})}).partial().prefault(()=>({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})),bs=G(),xs=Z(hs).prefault(`auto`);Y({width:Z(ms).prefault(`medium`).transform(e=>e===`normal`?`compact`:e),app_title:bs.nullish(),css_file:G().nullish(),html_head_file:G().nullish(),auto_download:J(Z(gs)).prefault([]),sql_output:xs}).prefault(()=>({width:`medium`,auto_download:[],sql_output:`auto`}));function Ss(){return ys.parse({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})}const Cs=e=>new TextDecoder().decode(e);function ws(e){return e.FS}const Ts=`notebook.py`,Es=`/marimo`,$={NOTEBOOK_FILENAME:Ts,HOME_DIR:Es,createHomeDir:e=>{let t=ws(e);try{t.mkdirTree(Es)}catch{}t.chdir(Es)},mountFS:e=>{ws(e).mount(e.FS.filesystems.IDBFS,{root:`.`},Es)},populateFilesToMemory:async e=>{await Ds(e,!0)},persistFilesToRemote:async e=>{await Ds(e,!1)},readNotebook:e=>{let t=ws(e),n=`${Es}/${Ts}`;return Cs(t.readFile(n))},initNotebookCode:e=>{let{pyodide:t,filename:n,code:r}=e,i=ws(t),a=e=>{try{return Cs(i.readFile(e))}catch{return null}};if(n&&n!==Ts){let e=a(n);if(e)return{code:e,filename:n}}return i.writeFile(Ts,r),{code:r,filename:Ts}}};function Ds(e,t){return new Promise((n,r)=>{ws(e).syncfs(t,e=>{if(e instanceof Error){r(e);return}n()})})}function Os(e){return`marimo-base`}const ks=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=ks;var As=class{pyodide=null;get requirePyodide(){return fs(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Ke)throw Error(`loadPyodide is not defined`);let t=ks.startSpan(`loadPyodide`);try{let n=await Ke({packages:[`micropip`,`msgspec`,Os(e.version),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`});return this.pyodide=n,t.end(`ok`),n}catch(e){throw T.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=ks.startSpan(`mountFilesystem`);return $.createHomeDir(this.requirePyodide),$.mountFS(this.requirePyodide),await $.populateFilesToMemory(this.requirePyodide),t.end(`ok`),$.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let{code:t,filename:n,onMessage:r,queryParameters:i,userConfig:a}=e;self.messenger={callback:r},self.query_params=i,self.user_config=a;let o=ks.startSpan(`startSession.runPython`),s=n||$.NOTEBOOK_FILENAME,[c,l,u]=this.requirePyodide.runPython(`
41
+ 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 sa(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:la(t,`input`,e.processors),output:la(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function H(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 H(r.element,n);if(r.type===`set`)return H(r.valueType,n);if(r.type===`lazy`)return H(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 H(r.innerType,n);if(r.type===`intersection`)return H(r.left,n)||H(r.right,n);if(r.type===`record`||r.type===`map`)return H(r.keyType,n)||H(r.valueType,n);if(r.type===`pipe`)return H(r.in,n)||H(r.out,n);if(r.type===`object`){for(let e in r.shape)if(H(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(H(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(H(e,n))return!0;return!!(r.rest&&H(r.rest,n))}return!1}const ca=(e,t={})=>n=>{let r=aa({...n,processors:t});return V(e,r),oa(r,e),sa(r,e)},la=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=aa({...i??{},target:a,io:t,processors:n});return V(e,o),oa(o,e),sa(o,e)},ua={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},da=(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=ua[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}))])}},fa=(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)},pa=(e,t,n,r)=>{n.type=`boolean`},ma=(e,t,n,r)=>{n.not={}},ha=(e,t,n,r)=>{let i=e._zod.def,a=at(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},ga=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},_a=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},va=(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=V(a.element,t,{...r,path:[...r.path,`items`]})},ya=(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]=V(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=V(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},ba=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>V(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},xa=(e,t,n,r)=>{let i=e._zod.def,a=V(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=V(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]]},Sa=(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=V(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=V(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=V(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)}},Ca=(e,t,n,r)=>{let i=e._zod.def,a=V(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`}]},wa=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ta=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Ea=(e,t,n,r)=>{let i=e._zod.def;V(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)))},Da=(e,t,n,r)=>{let i=e._zod.def;V(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},Oa=(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;V(a,t,r);let o=t.seen.get(e);o.ref=a},ka=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Aa=(e,t,n,r)=>{let i=e._zod.def;V(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},ja=E(`ZodISODateTime`,(e,t)=>{rr.init(e,t),K.init(e,t)});function Ma(e){return Di(ja,e)}const Na=E(`ZodISODate`,(e,t)=>{ir.init(e,t),K.init(e,t)});function Pa(e){return Oi(Na,e)}const Fa=E(`ZodISOTime`,(e,t)=>{ar.init(e,t),K.init(e,t)});function Ia(e){return ki(Fa,e)}const La=E(`ZodISODuration`,(e,t)=>{or.init(e,t),K.init(e,t)});function Ra(e){return Ai(La,e)}const za=(e,t)=>{Nt.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>It(e,t)},flatten:{value:t=>Ft(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,ot,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,ot,2)}},isEmpty:{get(){return e.issues.length===0}}})};E(`ZodError`,za);const U=E(`ZodError`,za,{Parent:Error}),Ba=Lt(U),Va=Rt(U),Ha=zt(U),Ua=Vt(U),Wa=Ut(U),Ga=Wt(U),Ka=Gt(U),qa=Kt(U),Ja=qt(U),Ya=Jt(U),Xa=Yt(U),Za=Xt(U),W=E(`ZodType`,(e,t)=>(R.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:la(e,`input`),output:la(e,`output`)}}),e.toJSONSchema=ca(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(A(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)=>M(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>Ba(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Ha(e,t,n),e.parseAsync=async(t,n)=>Va(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ua(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Wa(e,t,n),e.decode=(t,n)=>Ga(e,t,n),e.encodeAsync=async(t,n)=>Ka(e,t,n),e.decodeAsync=async(t,n)=>qa(e,t,n),e.safeEncode=(t,n)=>Ja(e,t,n),e.safeDecode=(t,n)=>Ya(e,t,n),e.safeEncodeAsync=async(t,n)=>Xa(e,t,n),e.safeDecodeAsync=async(t,n)=>Za(e,t,n),e.refine=(t,n)=>e.check(as(t,n)),e.superRefine=t=>e.check(os(t)),e.overwrite=t=>e.check(B(t)),e.optional=()=>Vo(e),e.exactOptional=()=>Uo(e),e.nullable=()=>Go(e),e.nullish=()=>Vo(Go(e)),e.nonoptional=t=>Zo(e,t),e.array=()=>J(e),e.or=t=>Mo([e,t]),e.and=t=>Po(e,t),e.transform=t=>ts(e,zo(t)),e.default=t=>qo(e,t),e.prefault=t=>Yo(e,t),e.catch=t=>$o(e,t),e.pipe=t=>ts(e,t),e.readonly=()=>rs(e),e.describe=t=>{let n=e.clone();return ri.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return ri.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return ri.get(e);let n=e.clone();return ri.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),Qa=E(`_ZodString`,(e,t)=>{Gn.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>da(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(Wi(...t)),e.includes=(...t)=>e.check(qi(...t)),e.startsWith=(...t)=>e.check(Ji(...t)),e.endsWith=(...t)=>e.check(Yi(...t)),e.min=(...t)=>e.check(Hi(...t)),e.max=(...t)=>e.check(Vi(...t)),e.length=(...t)=>e.check(Ui(...t)),e.nonempty=(...t)=>e.check(Hi(1,...t)),e.lowercase=t=>e.check(Gi(t)),e.uppercase=t=>e.check(Ki(t)),e.trim=()=>e.check(Zi()),e.normalize=(...t)=>e.check(Xi(...t)),e.toLowerCase=()=>e.check(Qi()),e.toUpperCase=()=>e.check($i()),e.slugify=()=>e.check(ea())}),$a=E(`ZodString`,(e,t)=>{Gn.init(e,t),Qa.init(e,t),e.email=t=>e.check(ai(eo,t)),e.url=t=>e.check(di(ro,t)),e.jwt=t=>e.check(Ei(yo,t)),e.emoji=t=>e.check(fi(io,t)),e.guid=t=>e.check(oi(to,t)),e.uuid=t=>e.check(si(no,t)),e.uuidv4=t=>e.check(ci(no,t)),e.uuidv6=t=>e.check(li(no,t)),e.uuidv7=t=>e.check(ui(no,t)),e.nanoid=t=>e.check(pi(ao,t)),e.guid=t=>e.check(oi(to,t)),e.cuid=t=>e.check(mi(oo,t)),e.cuid2=t=>e.check(hi(so,t)),e.ulid=t=>e.check(gi(co,t)),e.base64=t=>e.check(Ci(go,t)),e.base64url=t=>e.check(wi(_o,t)),e.xid=t=>e.check(_i(lo,t)),e.ksuid=t=>e.check(vi(uo,t)),e.ipv4=t=>e.check(yi(fo,t)),e.ipv6=t=>e.check(bi(po,t)),e.cidrv4=t=>e.check(xi(mo,t)),e.cidrv6=t=>e.check(Si(ho,t)),e.e164=t=>e.check(Ti(vo,t)),e.datetime=t=>e.check(Ma(t)),e.date=t=>e.check(Pa(t)),e.time=t=>e.check(Ia(t)),e.duration=t=>e.check(Ra(t))});function G(e){return ii($a,e)}const K=E(`ZodStringFormat`,(e,t)=>{z.init(e,t),Qa.init(e,t)}),eo=E(`ZodEmail`,(e,t)=>{Jn.init(e,t),K.init(e,t)}),to=E(`ZodGUID`,(e,t)=>{Kn.init(e,t),K.init(e,t)}),no=E(`ZodUUID`,(e,t)=>{qn.init(e,t),K.init(e,t)}),ro=E(`ZodURL`,(e,t)=>{Yn.init(e,t),K.init(e,t)}),io=E(`ZodEmoji`,(e,t)=>{Xn.init(e,t),K.init(e,t)}),ao=E(`ZodNanoID`,(e,t)=>{Zn.init(e,t),K.init(e,t)}),oo=E(`ZodCUID`,(e,t)=>{Qn.init(e,t),K.init(e,t)}),so=E(`ZodCUID2`,(e,t)=>{$n.init(e,t),K.init(e,t)}),co=E(`ZodULID`,(e,t)=>{er.init(e,t),K.init(e,t)}),lo=E(`ZodXID`,(e,t)=>{tr.init(e,t),K.init(e,t)}),uo=E(`ZodKSUID`,(e,t)=>{nr.init(e,t),K.init(e,t)}),fo=E(`ZodIPv4`,(e,t)=>{sr.init(e,t),K.init(e,t)}),po=E(`ZodIPv6`,(e,t)=>{cr.init(e,t),K.init(e,t)}),mo=E(`ZodCIDRv4`,(e,t)=>{lr.init(e,t),K.init(e,t)}),ho=E(`ZodCIDRv6`,(e,t)=>{ur.init(e,t),K.init(e,t)}),go=E(`ZodBase64`,(e,t)=>{fr.init(e,t),K.init(e,t)}),_o=E(`ZodBase64URL`,(e,t)=>{mr.init(e,t),K.init(e,t)}),vo=E(`ZodE164`,(e,t)=>{hr.init(e,t),K.init(e,t)}),yo=E(`ZodJWT`,(e,t)=>{_r.init(e,t),K.init(e,t)}),bo=E(`ZodNumber`,(e,t)=>{vr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fa(e,t,n,r),e.gt=(t,n)=>e.check(Ri(t,n)),e.gte=(t,n)=>e.check(zi(t,n)),e.min=(t,n)=>e.check(zi(t,n)),e.lt=(t,n)=>e.check(Ii(t,n)),e.lte=(t,n)=>e.check(Li(t,n)),e.max=(t,n)=>e.check(Li(t,n)),e.int=t=>e.check(Co(t)),e.safe=t=>e.check(Co(t)),e.positive=t=>e.check(Ri(0,t)),e.nonnegative=t=>e.check(zi(0,t)),e.negative=t=>e.check(Ii(0,t)),e.nonpositive=t=>e.check(Li(0,t)),e.multipleOf=(t,n)=>e.check(Bi(t,n)),e.step=(t,n)=>e.check(Bi(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 xo(e){return ji(bo,e)}const So=E(`ZodNumberFormat`,(e,t)=>{yr.init(e,t),bo.init(e,t)});function Co(e){return Mi(So,e)}const wo=E(`ZodBoolean`,(e,t)=>{br.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>pa(e,t,n,r)});function q(e){return Ni(wo,e)}const To=E(`ZodUnknown`,(e,t)=>{xr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Eo(){return Pi(To)}const Do=E(`ZodNever`,(e,t)=>{Sr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ma(e,t,n,r)});function Oo(e){return Fi(Do,e)}const ko=E(`ZodArray`,(e,t)=>{wr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>va(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(Hi(t,n)),e.nonempty=t=>e.check(Hi(1,t)),e.max=(t,n)=>e.check(Vi(t,n)),e.length=(t,n)=>e.check(Ui(t,n)),e.unwrap=()=>e.element});function J(e,t){return ta(ko,e,t)}const Ao=E(`ZodObject`,(e,t)=>{kr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ya(e,t,n,r),O(e,`shape`,()=>t.shape),e.keyof=()=>Z(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Eo()}),e.loose=()=>e.clone({...e._zod.def,catchall:Eo()}),e.strict=()=>e.clone({...e._zod.def,catchall:Oo()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>wt(e,t),e.safeExtend=t=>Tt(e,t),e.merge=t=>Et(e,t),e.pick=t=>St(e,t),e.omit=t=>Ct(e,t),e.partial=(...t)=>Dt(Bo,e,t[0]),e.required=(...t)=>Ot(Xo,e,t[0])});function Y(e,t){return new Ao({type:`object`,shape:e??{},...N(t)})}function X(e,t){return new Ao({type:`object`,shape:e,catchall:Eo(),...N(t)})}const jo=E(`ZodUnion`,(e,t)=>{jr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ba(e,t,n,r),e.options=t.options});function Mo(e,t){return new jo({type:`union`,options:e,...N(t)})}const No=E(`ZodIntersection`,(e,t)=>{Mr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xa(e,t,n,r)});function Po(e,t){return new No({type:`intersection`,left:e,right:t})}const Fo=E(`ZodRecord`,(e,t)=>{Fr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Sa(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function Io(e,t,n){return new Fo({type:`record`,keyType:e,valueType:t,...N(n)})}const Lo=E(`ZodEnum`,(e,t)=>{Ir.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ha(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 Lo({...t,checks:[],...N(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 Lo({...t,checks:[],...N(r),entries:i})}});function Z(e,t){return new Lo({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...N(t)})}const Ro=E(`ZodTransform`,(e,t)=>{Lr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_a(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new rt(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(jt(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(jt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function zo(e){return new Ro({type:`transform`,transform:e})}const Bo=E(`ZodOptional`,(e,t)=>{zr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Aa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Vo(e){return new Bo({type:`optional`,innerType:e})}const Ho=E(`ZodExactOptional`,(e,t)=>{Br.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Aa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Uo(e){return new Ho({type:`optional`,innerType:e})}const Wo=E(`ZodNullable`,(e,t)=>{Vr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ca(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Go(e){return new Wo({type:`nullable`,innerType:e})}const Ko=E(`ZodDefault`,(e,t)=>{Hr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ta(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function qo(e,t){return new Ko({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():_t(t)}})}const Jo=E(`ZodPrefault`,(e,t)=>{Wr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ea(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Yo(e,t){return new Jo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():_t(t)}})}const Xo=E(`ZodNonOptional`,(e,t)=>{Gr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>wa(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Zo(e,t){return new Xo({type:`nonoptional`,innerType:e,...N(t)})}const Qo=E(`ZodCatch`,(e,t)=>{qr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Da(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function $o(e,t){return new Qo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const es=E(`ZodPipe`,(e,t)=>{Jr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Oa(e,t,n,r),e.in=t.in,e.out=t.out});function ts(e,t){return new es({type:`pipe`,in:e,out:t})}const ns=E(`ZodReadonly`,(e,t)=>{Xr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ka(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function rs(e){return new ns({type:`readonly`,innerType:e})}const is=E(`ZodCustom`,(e,t)=>{Qr.init(e,t),W.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ga(e,t,n,r)});function as(e,t={}){return na(is,e,t)}function os(e){return ra(e)}const ss=Y({detail:G()}),cs=Y({error:G()});function ls(e){if(!e)return`Unknown error`;if(e instanceof Error){let t=ss.safeParse(e.cause);return t.success?t.data.detail:us(e.message)}if(typeof e==`object`){let t=ss.safeParse(e);if(t.success)return t.data.detail;let n=cs.safeParse(e);if(n.success)return n.data.error}try{return JSON.stringify(e)}catch{return String(e)}}function us(e){let t=ds(e);if(!t)return e;let n=ss.safeParse(t);if(n.success)return n.data.detail;let r=cs.safeParse(t);return r.success?r.data.error:e}function ds(e){try{return JSON.parse(e)}catch{return e}}function fs(e,t){if(!e)throw Error(t)}const ps=[`pip`,`uv`,`rye`,`poetry`,`pixi`],ms=[`normal`,`compact`,`medium`,`full`,`columns`],hs=[`auto`,`native`,`polars`,`lazy-polars`,`pandas`],gs=[`html`,`markdown`,`ipynb`],_s=[`manual`,`ask`,`agent`],Q=Y({api_key:G().optional(),base_url:G().optional(),project:G().optional()}).loose(),vs=Y({chat_model:G().nullish(),edit_model:G().nullish(),autocomplete_model:G().nullish(),displayed_models:J(G()).default([]),custom_models:J(G()).default([])}),ys=X({completion:Y({activate_on_typing:q().prefault(!0),signature_hint_on_typing:q().prefault(!1),copilot:Mo([q(),Z([`github`,`codeium`,`custom`])]).prefault(!1).transform(e=>e===!0?`github`:e),codeium_api_key:G().nullish()}).prefault({}),save:X({autosave:Z([`off`,`after_delay`]).prefault(`after_delay`),autosave_delay:xo().nonnegative().transform(e=>Math.max(e,1e3)).prefault(1e3),format_on_save:q().prefault(!1)}).prefault({}),formatting:X({line_length:xo().nonnegative().prefault(79).transform(e=>Math.min(e,1e3))}).prefault({}),keymap:X({preset:Z([`default`,`vim`]).prefault(`default`),overrides:Io(G(),G()).prefault({}),destructive_delete:q().prefault(!0)}).prefault({}),runtime:X({auto_instantiate:q().prefault(!0),on_cell_change:Z([`lazy`,`autorun`]).prefault(`autorun`),auto_reload:Z([`off`,`lazy`,`autorun`]).prefault(`off`),reactive_tests:q().prefault(!0),watcher_on_save:Z([`lazy`,`autorun`]).prefault(`lazy`),default_sql_output:Z(hs).prefault(`auto`),default_auto_download:J(Z(gs)).prefault([]),show_tracebacks:q().prefault(!1)}).prefault({}),display:X({theme:Z([`light`,`dark`,`system`]).prefault(`light`),code_editor_font_size:xo().nonnegative().prefault(14),cell_output:Z([`above`,`below`]).prefault(`below`),dataframes:Z([`rich`,`plain`]).prefault(`rich`),default_table_page_size:xo().prefault(10),default_table_max_columns:xo().prefault(50),default_width:Z(ms).prefault(`medium`).transform(e=>e===`normal`?`compact`:e),locale:G().nullable().optional(),reference_highlighting:q().prefault(!0)}).prefault({}),package_management:X({manager:Z(ps).prefault(`pip`)}).prefault({}),ai:X({rules:G().prefault(``),mode:Z(_s).prefault(`manual`),inline_tooltip:q().prefault(!1),open_ai:Q.optional(),anthropic:Q.optional(),google:Q.optional(),ollama:Q.optional(),openrouter:Q.optional(),wandb:Q.optional(),opencode_go:Q.optional(),open_ai_compatible:Q.optional(),azure:Q.optional(),bedrock:X({region_name:G().optional(),profile_name:G().optional(),aws_access_key_id:G().optional(),aws_secret_access_key:G().optional()}).optional(),custom_providers:Io(G(),Q).prefault({}),models:vs.prefault({displayed_models:[],custom_models:[]})}).prefault({}),experimental:X({markdown:q().optional(),rtc:q().optional()}).prefault(()=>({})),server:X({disable_file_downloads:q().optional()}).prefault(()=>({})),diagnostics:X({enabled:q().optional(),sql_linter:q().optional()}).prefault(()=>({})),sharing:X({html:q().optional(),wasm:q().optional()}).optional(),mcp:X({presets:J(Z([`marimo`,`context7`])).optional()}).optional().prefault({})}).partial().prefault(()=>({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})),bs=G(),xs=Z(hs).prefault(`auto`);Y({width:Z(ms).prefault(`medium`).transform(e=>e===`normal`?`compact`:e),app_title:bs.nullish(),css_file:G().nullish(),html_head_file:G().nullish(),auto_download:J(Z(gs)).prefault([]),sql_output:xs}).prefault(()=>({width:`medium`,auto_download:[],sql_output:`auto`}));function Ss(){return ys.parse({completion:{},save:{},formatting:{},keymap:{},runtime:{},display:{},diagnostics:{},experimental:{},server:{},ai:{},package_management:{},mcp:{}})}const Cs=e=>new TextDecoder().decode(e);function ws(e){return e.FS}const Ts=`notebook.py`,Es=`/marimo`,$={NOTEBOOK_FILENAME:Ts,HOME_DIR:Es,createHomeDir:e=>{let t=ws(e);try{t.mkdirTree(Es)}catch{}t.chdir(Es)},mountFS:e=>{ws(e).mount(e.FS.filesystems.IDBFS,{root:`.`},Es)},populateFilesToMemory:async e=>{await Ds(e,!0)},persistFilesToRemote:async e=>{await Ds(e,!1)},readNotebook:e=>{let t=ws(e),n=`${Es}/${Ts}`;return Cs(t.readFile(n))},initNotebookCode:e=>{let{pyodide:t,filename:n,code:r}=e,i=ws(t),a=e=>{try{return Cs(i.readFile(e))}catch{return null}};if(n&&n!==Ts){let e=a(n);if(e)return{code:e,filename:n}}return i.writeFile(Ts,r),{code:r,filename:Ts}}};function Ds(e,t){return new Promise((n,r)=>{ws(e).syncfs(t,e=>{if(e instanceof Error){r(e);return}n()})})}function Os(e){return`marimo-base`}const ks=new class{spans=[];startSpan(e,t={}){let n={name:e,startTime:Date.now(),attributes:t,end:(e=`ok`)=>this.endSpan(n,e)};return this.spans.push(n),n}endSpan(e,t=`ok`){e.endTime=Date.now(),e.status=t}getSpans(){return this.spans}wrap(e,t,n={}){let r=this.startSpan(t||e.name,n);try{let t=e();return this.endSpan(r),t}catch(e){throw this.endSpan(r,`error`),e}}wrapAsync(e,t,n={}){return(async(...r)=>{let i=this.startSpan(t||e.name,n);try{let t=await e(...r);return this.endSpan(i),t}catch(e){throw this.endSpan(i,`error`),e}})}logSpans(){}};globalThis.t=ks;var As=class{pyodide=null;get requirePyodide(){return fs(this.pyodide,`Pyodide not loaded`),this.pyodide}async bootstrap(e){return await this.loadPyodideAndPackages(e)}async loadPyodideAndPackages(e){if(!Ke)throw Error(`loadPyodide is not defined`);let t=ks.startSpan(`loadPyodide`);try{let n=await Ke({packages:[`micropip`,`msgspec`,Os(e.version),`Markdown`,`pymdown-extensions`,`narwhals`,`packaging`],_makeSnapshot:!1,lockFileURL:`https://wasm.marimo.app/pyodide-lock.json?v=${e.version}&pyodide=${e.pyodideVersion}`,indexURL:`https://cdn.jsdelivr.net/pyodide/${e.pyodideVersion}/full/`});return this.pyodide=n,t.end(`ok`),n}catch(e){throw T.error(`Failed to load Pyodide`,e),e}}async mountFilesystem(e){let t=ks.startSpan(`mountFilesystem`);return $.createHomeDir(this.requirePyodide),$.mountFS(this.requirePyodide),await $.populateFilesToMemory(this.requirePyodide),t.end(`ok`),$.initNotebookCode({pyodide:this.requirePyodide,code:e.code,filename:e.filename})}async startSession(e){let{code:t,filename:n,onMessage:r,queryParameters:i,userConfig:a}=e;self.messenger={callback:r},self.query_params=i,self.user_config=a;let o=ks.startSpan(`startSession.runPython`),s=n||$.NOTEBOOK_FILENAME,[c,l,u]=this.requirePyodide.runPython(`
42
42
  print("[py] Starting marimo...")
43
43
  import asyncio
44
44
  import js
@@ -6,13 +6,13 @@ import { _ as Logger, c as Objects, g as cn, l as useEventListener, t as Button
6
6
  import { t as require_react } from "./react-DA-nE2FX.js";
7
7
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
8
8
  import { r as toast } from "./copy-TGGAUEWp.js";
9
- import { C as AccordionContent, D as ChatBubbleIcon, En as Trash2, Ft as jotaiJsonStorage, G as cellErrorsAtom, Ht as allTablesAtom, It as variablesAtom, Kt as getRequestClient, Lt as PluralWord, Nn as Info, Ot as moveToEndOfEditor, P as base64ToDataURL, Rn as CircleX, S as Accordion, T as AccordionTrigger, Tn as Wrench, Tt as createVariableInfoElement, Ut as dataSourceConnectionsAtom, V as renderHTML, Wt as getTableType, Xt as singleFacet, Y as notebookAtom, _ as Boosts, _n as atomWithStorage, b as AIContextProvider, c as Popover, d as PopoverTrigger, f as isOutputEmpty, h as DatasourceContextProvider, jn as LoaderCircle, n as MarkdownRenderer, on as CellOutputId, s as Spinner, t as toPng, tn as ZodLocalStorage, u as PopoverContent, v as Sections, vt as displayCellName, w as AccordionItem, x as AIContextRegistry, y as contextToXml, yn as Anchor2 } from "./html-to-image-uzALXlch.js";
9
+ import { C as AccordionContent, D as ChatBubbleIcon, En as Trash2, Ft as jotaiJsonStorage, G as cellErrorsAtom, Ht as allTablesAtom, It as variablesAtom, Kt as getRequestClient, Lt as PluralWord, Nn as Info, Ot as moveToEndOfEditor, P as base64ToDataURL, Rn as CircleX, S as Accordion, T as AccordionTrigger, Tn as Wrench, Tt as createVariableInfoElement, Ut as dataSourceConnectionsAtom, V as renderHTML, Wt as getTableType, Xt as singleFacet, Y as notebookAtom, _ as Boosts, _n as atomWithStorage, b as AIContextProvider, c as Popover, d as PopoverTrigger, f as isOutputEmpty, h as DatasourceContextProvider, jn as LoaderCircle, n as MarkdownRenderer, on as CellOutputId, s as Spinner, t as toPng, tn as ZodLocalStorage, u as PopoverContent, v as Sections, vt as displayCellName, w as AccordionItem, x as AIContextRegistry, y as contextToXml, yn as Anchor2 } from "./html-to-image-Ctyt_1RZ.js";
10
10
  import "./chunk-5FQGJX7Z-CO1e63h_.js";
11
11
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
12
12
  import { F as X, S as logNever, t as Strings } from "./strings-B_FOH6eV.js";
13
- import { a as NumberField, b as DropdownMenuTrigger, d as DropdownMenuContent, p as DropdownMenuItem, r as Input, u as DropdownMenu } from "./input-Drx1pguW.js";
14
- import { g as CircleQuestionMark } from "./toDate-yqOcZ_tY.js";
15
- import { a as MarimoIncomingMessageEvent, d as File$1, n as blobToString, t as processOutput, u as deserializeBlob } from "./process-output-CD5QiwBb.js";
13
+ import { a as NumberField, b as DropdownMenuTrigger, d as DropdownMenuContent, p as DropdownMenuItem, r as Input, u as DropdownMenu } from "./input-BAOe64zx.js";
14
+ import { g as CircleQuestionMark } from "./toDate-0ZO2rMtR.js";
15
+ import { a as MarimoIncomingMessageEvent, d as File$1, n as blobToString, t as processOutput, u as deserializeBlob } from "./process-output-V4Xi7mGt.js";
16
16
  import "./react-dom-BWRJ_g_k.js";
17
17
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
18
18
  import { B as union, C as any, D as discriminatedUnion, E as custom, H as safeParseAsync, I as record, L as strictObject, M as never, N as number, O as lazy, P as object$1, R as string, S as _null, T as boolean, V as unknown, W as toJSONSchema, b as _enum, k as literal, w as array$1, x as _instanceof } from "./zod-BxdsqRPd.js";
@@ -21,7 +21,7 @@ import { t as Label } from "./label-BCWi-Oqu.js";
21
21
  import { t as Tooltip } from "./tooltip-B0mtKTXm.js";
22
22
  import { f as CopyClipboardIcon } from "./extends-CzJgxo2J.js";
23
23
  import { t as isEmpty_default } from "./isEmpty-Dd8mx_WL.js";
24
- import { n as useTheme, v as useStore, w as useEvent_default } from "./useTheme-CX9pPLUH.js";
24
+ import { n as useTheme, v as useStore, w as useEvent_default } from "./useTheme-CByZUW0p.js";
25
25
  import { $ as ViewPlugin, At as Prec, Dt as EditorState, Ft as StateField, Lt as Transaction, Ot as Facet, Pt as StateEffect, Y as Decoration, Z as EditorView, dt as keymap, et as WidgetType, ut as hoverTooltip } from "./dist-CCADb07R.js";
26
26
  import { n as acceptCompletion, o as closeCompletion, r as autocompletion } from "./dist-JEhxD_cn.js";
27
27
  import "./main-CThhXnXU.js";
@@ -32,7 +32,7 @@ import "./dist-DGAfI2rB.js";
32
32
  import "./dist-nuW5EDYT.js";
33
33
  import { n as minimalSetup, t as esm_default } from "./esm-Dd1z1auZ.js";
34
34
  import "./purify.es-DT70lfR0.js";
35
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
35
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
36
36
  var BotMessageSquare = createLucideIcon("bot-message-square", [
37
37
  ["path", {
38
38
  d: "M12 6V2H8",
@@ -6,14 +6,14 @@ import { _ as Logger, c as Objects, g as cn, h as Events, m as useComposedRefs,
6
6
  import { t as require_react } from "./react-DA-nE2FX.js";
7
7
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
8
8
  import { n as Copy, r as toast, t as copyToClipboard } from "./copy-TGGAUEWp.js";
9
- import { $ as useCellActions, $t as getTracebackInfo, A as ChevronRightIcon, An as Minus, Bn as Braces, C as AccordionContent, En as Trash2, Ft as jotaiJsonStorage, Hn as import_lib, I as base64ToUint8Array, Jt as useRequestClient, Kt as getRequestClient, Lt as PluralWord, M as PinLeftIcon, Mt as useChromeActions, N as PinRightIcon, O as CheckIcon, Pn as FileText, Pt as adaptForLocalStorage, Qt as extractAllTracebackInfo, R as extractBase64FromDataURL, Rn as CircleX, S as Accordion, St as Checkbox, T as AccordionTrigger, Tn as Wrench, V as renderHTML, Vn as esm_default, Y as notebookAtom, Zt as elementContainsMarimoCellFile, _n as atomWithStorage, _t as getCellDomProps, at as AnsiUp, bn as Close$1, c as Popover, cn as SCRATCH_CELL_ID, ct as kioskModeAtom, d as PopoverTrigger, dt as outputIsLoading, et as useCellIds, g as getDatasourceContext, gt as DATA_CELL_ID, hn as jsonToTSV, ht as sanitizeHtml, j as DotFilledIcon, jn as LoaderCircle, kn as NotebookPen, kt as goToCellLine, l as PopoverClose$1, lt as useInstallAllowed, m as useExpandedOutput, mn as jsonToMarkdown, n as MarkdownRenderer, nn as filenameAtom, on as CellOutputId, pn as jsonParseWithSpecialChar, q as getCellEditorView, s as Spinner, sn as HTMLCellId, t as toPng, tt as useCellNames, u as PopoverContent, ut as viewStateAtom, vt as displayCellName, w as AccordionItem, z as isDataURLString, zt as DATA_TYPE_ICON, __tla as __tla_0 } from "./html-to-image-uzALXlch.js";
9
+ import { $ as useCellActions, $t as getTracebackInfo, A as ChevronRightIcon, An as Minus, Bn as Braces, C as AccordionContent, En as Trash2, Ft as jotaiJsonStorage, Hn as import_lib, I as base64ToUint8Array, Jt as useRequestClient, Kt as getRequestClient, Lt as PluralWord, M as PinLeftIcon, Mt as useChromeActions, N as PinRightIcon, O as CheckIcon, Pn as FileText, Pt as adaptForLocalStorage, Qt as extractAllTracebackInfo, R as extractBase64FromDataURL, Rn as CircleX, S as Accordion, St as Checkbox, T as AccordionTrigger, Tn as Wrench, V as renderHTML, Vn as esm_default, Y as notebookAtom, Zt as elementContainsMarimoCellFile, _n as atomWithStorage, _t as getCellDomProps, at as AnsiUp, bn as Close$1, c as Popover, cn as SCRATCH_CELL_ID, ct as kioskModeAtom, d as PopoverTrigger, dt as outputIsLoading, et as useCellIds, g as getDatasourceContext, gt as DATA_CELL_ID, hn as jsonToTSV, ht as sanitizeHtml, j as DotFilledIcon, jn as LoaderCircle, kn as NotebookPen, kt as goToCellLine, l as PopoverClose$1, lt as useInstallAllowed, m as useExpandedOutput, mn as jsonToMarkdown, n as MarkdownRenderer, nn as filenameAtom, on as CellOutputId, pn as jsonParseWithSpecialChar, q as getCellEditorView, s as Spinner, sn as HTMLCellId, t as toPng, tt as useCellNames, u as PopoverContent, ut as viewStateAtom, vt as displayCellName, w as AccordionItem, z as isDataURLString, zt as DATA_TYPE_ICON, __tla as __tla_0 } from "./html-to-image-Ctyt_1RZ.js";
10
10
  import { o as useSize, u as createLucideIcon } from "./dist-ESg7xyoD.js";
11
- import { i as createReducerAndAtoms, r as Badge } from "./useLifecycle-smVfjLNI.js";
11
+ import { i as createReducerAndAtoms, r as Badge } from "./useLifecycle-CjMjllqy.js";
12
12
  import { a as ListFilter, i as Table$1, o as ChartPie, t as $896ba0a80a8f4d36$export$85fd5fdf27bacc79 } from "./useDateFormatter-B3mCQMP3.js";
13
13
  import { t as Check } from "./check-CFM2mVDr.js";
14
14
  import { C as $a916eb452884faea$export$b7a616150fdb9f44, F as X, L as ChevronDown, M as usePrevious$1, N as useDirection, S as logNever, T as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7, _ as menuItemVariants, b as menuSubTriggerVariants, c as SelectSeparator, g as menuControlVariants, h as menuControlCheckVariants, i as SelectContent, l as SelectTrigger, m as menuContentCommon, n as capitalize, o as SelectItem, p as MENU_ITEM_DISABLED, r as Select, t as Strings, u as SelectValue, v as menuLabelVariants, x as assertNever, y as menuSeparatorVariants } from "./strings-B_FOH6eV.js";
15
- import { $t as Portal, G as marked, Gt as Anchor2, Jt as Content2$1, Kt as Arrow2, Qt as Label, Xt as Item2$2, Yt as Group, Zt as ItemIndicator, _ as DropdownMenuSub, a as NumberField, an as SubContent, b as DropdownMenuTrigger, c as prettyNumber, cn as Item, d as DropdownMenuContent, dn as Search, en as RadioGroup$2, fn as Circle, g as DropdownMenuSeparator, h as DropdownMenuPortal, in as Sub, l as prettyScientificNumber, ln as Root$1, m as DropdownMenuLabel, nn as Root3, o as maxFractionalDigits, on as SubTrigger, p as DropdownMenuItem, pn as ChevronRight, qt as CheckboxItem, r as Input, rn as Separator$1, s as prettyEngineeringNumber, sn as createMenuScope, tn as RadioItem, u as DropdownMenu, un as createRovingFocusGroupScope, v as DropdownMenuSubContent, y as DropdownMenuSubTrigger } from "./input-Drx1pguW.js";
16
- import { a as millisecondsInMinute, c as asRemoteURL, d as isUrl, h as isWasm, i as millisecondsInHour, n as constructFrom, o as millisecondsInSecond, r as millisecondsInDay, s as millisecondsInWeek, t as toDate } from "./toDate-yqOcZ_tY.js";
15
+ import { $t as Portal, G as marked, Gt as Anchor2, Jt as Content2$1, Kt as Arrow2, Qt as Label, Xt as Item2$2, Yt as Group, Zt as ItemIndicator, _ as DropdownMenuSub, a as NumberField, an as SubContent, b as DropdownMenuTrigger, c as prettyNumber, cn as Item, d as DropdownMenuContent, dn as Search, en as RadioGroup$2, fn as Circle, g as DropdownMenuSeparator, h as DropdownMenuPortal, in as Sub, l as prettyScientificNumber, ln as Root$1, m as DropdownMenuLabel, nn as Root3, o as maxFractionalDigits, on as SubTrigger, p as DropdownMenuItem, pn as ChevronRight, qt as CheckboxItem, r as Input, rn as Separator$1, s as prettyEngineeringNumber, sn as createMenuScope, tn as RadioItem, u as DropdownMenu, un as createRovingFocusGroupScope, v as DropdownMenuSubContent, y as DropdownMenuSubTrigger } from "./input-BAOe64zx.js";
16
+ import { a as millisecondsInMinute, c as asRemoteURL, d as isUrl, h as isWasm, i as millisecondsInHour, n as constructFrom, o as millisecondsInSecond, r as millisecondsInDay, s as millisecondsInWeek, t as toDate } from "./toDate-0ZO2rMtR.js";
17
17
  import { n as clsx_default } from "./clsx-CyyyQ8Ue.js";
18
18
  import { t as require_react_dom } from "./react-dom-BWRJ_g_k.js";
19
19
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
@@ -22,19 +22,19 @@ import { a as Content$1, c as Root$2, i as prettyError, n as ErrorBanner, o as O
22
22
  import { t as Tooltip } from "./tooltip-B0mtKTXm.js";
23
23
  import { f as CopyClipboardIcon, t as _extends } from "./extends-CzJgxo2J.js";
24
24
  import { r as KnownQueryParams } from "./constants-D0gkYoE2.js";
25
- import { C as dequal, S as getBuildingBlocks, _ as useSetAtom, d as useJotaiEffect, g as useAtomValue, h as useAtom, m as Provider, n as useTheme, r as aiEnabledAtom, v as useStore, w as useEvent_default, x as buildStore, y as atom } from "./useTheme-CX9pPLUH.js";
25
+ import { C as dequal, S as getBuildingBlocks, _ as useSetAtom, d as useJotaiEffect, g as useAtomValue, h as useAtom, m as Provider, n as useTheme, r as aiEnabledAtom, v as useStore, w as useEvent_default, x as buildStore, y as atom } from "./useTheme-CByZUW0p.js";
26
26
  import { Z as EditorView } from "./dist-CCADb07R.js";
27
27
  import { t as invariant } from "./invariant-UcGKQEhF.js";
28
28
  import { c as uniqueBy, t as Arrays } from "./arrays-CldYf7p7.js";
29
29
  import { n as once, t as memoizeLastValue } from "./once-rJImu7SE.js";
30
30
  import { a as parser } from "./dist-nuW5EDYT.js";
31
- import { a as isValid, i as AlertTitle, n as Alert, t as arrow } from "./formats-Dh5M1ZRs.js";
31
+ import { a as isValid, i as AlertTitle, n as Alert, t as arrow } from "./formats-DJvu12E_.js";
32
32
  import { n as memoize$1, t as isPropValid } from "./emotion-is-prop-valid.esm-DtW2o230.js";
33
33
  import { t as ErrorBoundary } from "./ErrorBoundary-Da4UeYxT.js";
34
34
  import { n as formats } from "./vega-loader.browser-3_z8GoFC.js";
35
35
  import { a as getContainerWidth, n as vegaLoadData, r as createBatchedLoader, s as tooltipHandler, t as parseCsvData } from "./loader-BvW0-YWZ.js";
36
36
  import { t as useIframeCapabilities } from "./useIframeCapabilities-DbdLoEDm.js";
37
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
37
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
38
38
  let getPageIndexForRow, contextAwarePanelType, GripHorizontal, TableHead, ChevronsDownUp, useInternalStateWithSync, RenderTextWithLinks, PANEL_TYPES, getStaticVirtualFiles, ContextAwarePanelItem, EmotionCacheProvider, Fill, Download, inferFieldTypes, TableRow, ArrowDownWideNarrow, Provider$1, Code, ColumnChartSpecModel, renderCellValue, Table, ChevronsUpDown, SlotNames, EyeOff, slotsController, Expand, contextAwarePanelOpen, isStaticNotebook, Toggle, Ellipsis, filtersToFilterGroup, TableBody, ChevronsRight, prettifyRowCount, useOverflowDetection, ComboboxItem, HtmlOutput, NAMELESS_COLUMN_PREFIX, TableHeader, ChevronLeft, generateColumns, useIntersectionObserver, DelayMount, usePrevious, downloadBlob, TabsTrigger, DEFAULT_SLIDE_TYPE, toFieldTypes, Filenames, ChartLoadingState, Slide, CommandEmpty, JsonOutput, CommandList, loadTableAndRawData, OutputArea, CommandSeparator, ADD_PRINTING_CLASS, TabsList, InstallPackageButton, TabsContent, DEFAULT_DECK_TRANSITION, TOO_MANY_ROWS, isCellAwareAtom, Funnel, contextAwarePanelOwner, TextWrap, RadioGroup, CommandInput, DataTable, Tabs, marimoVersionAtom, INDEX_COLUMN_NAME, SLIDE_TYPE_OPTIONS_BY_VALUE, getMimeValues, OutputRenderer, Maps, ColumnChartContext, showCodeInRunModeAtom, SELECT_COLUMN_ID, SlideSidebar, Command, useNotebookCodeAvailable, loadTableData, RadioGroupItem, CommandItem, downloadByURL, ChartErrorState, Combobox, Kbd, prettifyRowColumnCount, LazyVegaEmbed, downloadHTMLAsImage, ChartInfoState, TableCell, ChevronsLeft;
39
39
  let __tla = Promise.all([
40
40
  (() => {
@@ -25528,7 +25528,7 @@ ${_}`,
25528
25528
  return Logger.warn("Failed to get version from mount config"), null;
25529
25529
  }
25530
25530
  }
25531
- marimoVersionAtom = atom(getVersionFromMountConfig() || "0.23.6-dev20");
25531
+ marimoVersionAtom = atom(getVersionFromMountConfig() || "0.23.6-dev23");
25532
25532
  showCodeInRunModeAtom = atom(true);
25533
25533
  atom(null);
25534
25534
  var import_compiler_runtime = require_compiler_runtime();
@@ -2,7 +2,7 @@ import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { g as cn, r as cva } from "./button-CA5pI2YF.js";
3
3
  import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
- import { t as toDate } from "./toDate-yqOcZ_tY.js";
5
+ import { t as toDate } from "./toDate-0ZO2rMtR.js";
6
6
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
7
7
  import { i as tableFromIPC } from "./loader-BvW0-YWZ.js";
8
8
  function isDate(e) {
@@ -7,13 +7,13 @@ import { t as require_react } from "./react-DA-nE2FX.js";
7
7
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
8
8
  import { n as Copy, r as toast, t as copyToClipboard } from "./copy-TGGAUEWp.js";
9
9
  import { S as logNever, i as SelectContent, l as SelectTrigger, n as capitalize, o as SelectItem, r as Select, u as SelectValue } from "./strings-B_FOH6eV.js";
10
- import { G as marked, W as useNonce, _ as DropdownMenuSub, d as DropdownMenuContent, g as DropdownMenuSeparator, h as DropdownMenuPortal, p as DropdownMenuItem, r as Input, u as DropdownMenu, v as DropdownMenuSubContent, y as DropdownMenuSubTrigger } from "./input-Drx1pguW.js";
10
+ import { G as marked, W as useNonce, _ as DropdownMenuSub, d as DropdownMenuContent, g as DropdownMenuSeparator, h as DropdownMenuPortal, p as DropdownMenuItem, r as Input, u as DropdownMenu, v as DropdownMenuSubContent, y as DropdownMenuSubTrigger } from "./input-BAOe64zx.js";
11
11
  import { i as Pencil, n as Trash, r as Plus, t as BulkEdit } from "./types-DBtDeUKD.js";
12
12
  import "./react-dom-BWRJ_g_k.js";
13
13
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
14
14
  import "./zod-BxdsqRPd.js";
15
15
  import { t as Label } from "./label-BCWi-Oqu.js";
16
- import { n as useTheme, w as useEvent_default } from "./useTheme-CX9pPLUH.js";
16
+ import { n as useTheme, w as useEvent_default } from "./useTheme-CByZUW0p.js";
17
17
  import { n as require_prop_types, t as ErrorBoundary } from "./ErrorBoundary-Da4UeYxT.js";
18
18
  import { A as require__Map, B as require__baseGetTag, C as require__hasPath, D as require_isArguments, E as require__isIndex, F as require_isFunction, G as assert, H as require__root, I as require_isObject, J as maybe, K as assertNever, L as require__isKey, M as require_eq, N as require__getNative, O as require__castPath, P as require__toSource, R as require_isSymbol, S as resolveCellsThunk, T as require_isLength, U as require__freeGlobal, V as require__Symbol, W as require_isArray, _ as isEditableGridCell, a as mergeAndRealizeTheme, b as isReadWriteCell, c as withAlpha, d as CompactSelection, f as GridCellKind, g as booleanCellIsEditable, h as InnerGridCellKind, i as makeCSSStyle, j as require__ListCache, k as require__MapCache, l as BooleanEmpty, m as GridColumnMenuIcon, n as ThemeContext, o as blend, p as GridColumnIcon, q as deepEqual, r as getDataEditorTheme, s as blendCache, t as ClickOutsideContainer, u as BooleanIndeterminate, v as isInnerOnlyCell, w as require__toKey, x as isSizedGridColumn, y as isObjectEditorCallbackResult, z as require_isObjectLike } from "./click-outside-container-BZgN7xS_.js";
19
19
  import { t as styled_default } from "./dist-CyFFzJTb.js";
@@ -8,18 +8,18 @@ import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
8
8
  import { r as toast, t as copyToClipboard } from "./copy-TGGAUEWp.js";
9
9
  import { o as xn, s as require_cjs, __tla as __tla_0 } from "./chunk-5FQGJX7Z-CO1e63h_.js";
10
10
  import { a as createPopperScope, i as Root2$3, l as VisuallyHidden, n as Arrow, o as useSize, r as Content$1, t as Anchor, u as createLucideIcon } from "./dist-ESg7xyoD.js";
11
- import { a as Type, c as Calendar, i as createReducerAndAtoms, o as ToggleLeft, r as Badge, s as Hash, t as useOnMount } from "./useLifecycle-smVfjLNI.js";
11
+ import { a as Type, c as Calendar, i as createReducerAndAtoms, o as ToggleLeft, r as Badge, s as Hash, t as useOnMount } from "./useLifecycle-CjMjllqy.js";
12
12
  import { t as Check } from "./check-CFM2mVDr.js";
13
13
  import { F as X, L as ChevronDown, M as usePrevious, N as useDirection, P as createCollection, S as logNever, a as SelectGroup, c as SelectSeparator, i as SelectContent, l as SelectTrigger, o as SelectItem, r as Select, s as SelectLabel, t as Strings, u as SelectValue, x as assertNever } from "./strings-B_FOH6eV.js";
14
- import { G as marked, W as useNonce, mt as $f6c31cce2adf654f$export$45712eceda6fad21, q as useDebouncedCallback } from "./input-Drx1pguW.js";
15
- import { g as CircleQuestionMark, h as isWasm, l as getRuntimeManager, m as Deferred, p as waitForConnectionOpen, t as toDate } from "./toDate-yqOcZ_tY.js";
14
+ import { G as marked, W as useNonce, mt as $f6c31cce2adf654f$export$45712eceda6fad21, q as useDebouncedCallback } from "./input-BAOe64zx.js";
15
+ import { g as CircleQuestionMark, h as isWasm, l as getRuntimeManager, m as Deferred, p as waitForConnectionOpen, t as toDate } from "./toDate-0ZO2rMtR.js";
16
16
  import { t as require_react_dom } from "./react-dom-BWRJ_g_k.js";
17
17
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
18
18
  import { $ as StyleNamespace, B as union, N as number, P as object, R as string, T as boolean, X as withFullScreenAsRoot, Y as MAX_HEIGHT_OFFSET, Z as withSmartCollisionBoundary, _t as Primitive, at as FocusScope, ct as Root$1, dt as Presence, et as hideOthers, ft as useControllableState, gt as createContextScope, it as Portal, k as literal, lt as useCallbackRef, mt as composeEventHandlers, ot as Branch, pt as useLayoutEffect2, rt as useFocusGuards, st as DismissableLayer, tt as Combination_default, ut as useId, vt as dispatchDiscreteCustomEvent, w as array } from "./zod-BxdsqRPd.js";
19
19
  import { i as TooltipProvider, t as Tooltip } from "./tooltip-B0mtKTXm.js";
20
20
  import { a as setDiagnostics, c as historyField, d as insertTab, f as CopyClipboardIcon, i as linter, n as forEachDiagnostic, s as history } from "./extends-CzJgxo2J.js";
21
21
  import { i as debounce_default } from "./constants-D0gkYoE2.js";
22
- import { C as dequal, a as getResolvedMarimoConfig, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, l as createDeepEqualAtom, m as Provider, n as useTheme, p as isIslands, t as resolvedThemeAtom, u as store, y as atom } from "./useTheme-CX9pPLUH.js";
22
+ import { C as dequal, a as getResolvedMarimoConfig, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, l as createDeepEqualAtom, m as Provider, n as useTheme, p as isIslands, t as resolvedThemeAtom, u as store, y as atom } from "./useTheme-CByZUW0p.js";
23
23
  import { $ as ViewPlugin, At as Prec, B as tags, Dt as EditorState, E as getIndentUnit, Et as EditorSelection, Ft as StateField, I as syntaxTree, It as Text, J as parseMixed, L as unfoldAll, Lt as Transaction, Ot as Facet, Pt as StateEffect, Q as GutterMarker, S as foldInside, Tt as Compartment, Y as Decoration, Z as EditorView, b as foldAll, dt as keymap, f as StreamLanguage, jt as RangeSet, l as LanguageDescription, mt as placeholder, ot as gutter, u as LanguageSupport, ut as hoverTooltip, vt as showPanel, w as foldNodeProp, xt as Annotation, yt as showTooltip } from "./dist-CCADb07R.js";
24
24
  import { t as invariant } from "./invariant-UcGKQEhF.js";
25
25
  import { a as arrayMove, i as arrayInsertMany, l as clamp, n as arrayDelete, r as arrayInsert } from "./arrays-CldYf7p7.js";
@@ -32,7 +32,7 @@ import { a as markdown, s as markdownLanguage } from "./dist-Yrfc6L0I.js";
32
32
  import { a as parser, i as pythonLanguage, n as localCompletionSource, r as python, t as globalCompletion } from "./dist-nuW5EDYT.js";
33
33
  import { n as stexMath } from "./stex-DrxP7bb3.js";
34
34
  import { t as purify } from "./purify.es-DT70lfR0.js";
35
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
35
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
36
36
  let useCellActions, getTracebackInfo, ChevronRightIcon, Minus, DeferredRequestRegistry, safeExtractSetUIElementMessageBuffers, Braces, getDataTypeColor, AccordionContent, Root2$2, customPythonLanguageSupport, ChatBubbleIcon, Table2, Paths, BorderAllIcon, Trash2, PathBuilder, base64ToDataView, Eye, jotaiJsonStorage, cellErrorsAtom, convertStatsName, getMarimoExportContext, import_lib$1, allTablesAtom, base64ToUint8Array, Database, variablesAtom, getCellNames, useRequestClient, createActions$1, getRequestClient, dataViewToBase64, Columns2, PluralWord, PinLeftIcon, Layers, useChromeActions, PinRightIcon, Info, repl, CheckIcon, PaintRoller, moveToEndOfEditor, base64ToDataURL, FileText, adaptForLocalStorage, reducer$1, extractAllTracebackInfo, extractBase64FromDataURL, CircleX, PluralWords, Accordion, Item, Checkbox, AccordionTrigger, Wrench, createVariableInfoElement, hasTrustedExportContext, dataSourceConnectionsAtom, renderHTML, esm_default, require_client, hasRunAnyCellAtom, getTableType, notebookOutline, singleFacet, notebookAtom, isUninstantiated, numColumnsAtom, elementContainsMarimoCellFile, Boosts, atomWithStorage, getCellDomProps, useLastFocusedCellId, parseInitialValue, AnsiUp, AIContextProvider, Close$1, isInternalCellName, Popover, SCRATCH_CELL_ID, kioskModeAtom, PopoverTrigger, OBJECT_ID_ATTR, outputIsLoading, NotebookScopedLocalStorage, useCellIds, isOutputEmpty, RANDOM_ID_ATTR, outputIsStale, getDatasourceContext, atomWithReducer, DATA_CELL_ID, DatasourceContextProvider, jsonToTSV, sanitizeHtml, useCellFocusActions, parseDataset, parseHtmlContent, DotFilledIcon, LoaderCircle, generateUUID, ChevronDownIcon, NotebookPen, goToCellLine, PopoverClose, UIElementId, useInstallAllowed, useExpandedOutput, jsonToMarkdown, headingToIdentifier, MarkdownRenderer, filenameAtom, createCell, maybeAddAltairImport, CellOutputId, getInitialAppMode, useExpandedConsoleOutput, jsonParseWithSpecialChar, isErrorMime, getCellEditorView, requestClientAtom, LazyAnyLanguageCodeMirror, parseAttrValue, ansiToPlainText, Spinner, HTMLCellId, initialModeAtom, toPng$1, ZodLocalStorage, useCellNames, PopoverContent, findCellId, viewStateAtom, Sections, selectAtom, displayCellName, AccordionItem, Trigger2, MarkdownLanguageAdapter, AIContextRegistry, Content2$1, normalizeName, contextToXml, Anchor2, getValidName, isDataURLString, CircleAlert, DATA_TYPE_ICON;
37
37
  let __tla = Promise.all([
38
38
  (() => {
@@ -14,7 +14,7 @@ import { t as require_react_dom } from "./react-dom-BWRJ_g_k.js";
14
14
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
15
15
  import { $ as StyleNamespace, X as withFullScreenAsRoot, Y as MAX_HEIGHT_OFFSET, Z as withSmartCollisionBoundary, _t as Primitive, at as FocusScope, dt as Presence, et as hideOthers, ft as useControllableState, gt as createContextScope, it as Portal, lt as useCallbackRef, mt as composeEventHandlers, rt as useFocusGuards, st as DismissableLayer, tt as Combination_default, ut as useId, vt as dispatchDiscreteCustomEvent } from "./zod-BxdsqRPd.js";
16
16
  import { i as debounce_default } from "./constants-D0gkYoE2.js";
17
- import { w as useEvent_default } from "./useTheme-CX9pPLUH.js";
17
+ import { w as useEvent_default } from "./useTheme-CByZUW0p.js";
18
18
  import { t as memoizeLastValue } from "./once-rJImu7SE.js";
19
19
  var ChevronRight = createLucideIcon("chevron-right", [["path", {
20
20
  d: "m9 18 6-6-6-6",
package/dist/main.js CHANGED
@@ -22,18 +22,18 @@ import { _ as Logger, c as Objects, g as cn, h as Events, i as NOT_SET, l as use
22
22
  import { t as require_react } from "./react-DA-nE2FX.js";
23
23
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
24
24
  import { n as Copy, r as toast, t as copyToClipboard } from "./copy-TGGAUEWp.js";
25
- import { $ as useCellActions, At as DeferredRequestRegistry, B as safeExtractSetUIElementMessageBuffers, Bn as Braces, Bt as getDataTypeColor, C as AccordionContent, Cn as Root2$1, Ct as customPythonLanguageSupport, Dn as Table2, Dt as Paths, E as BorderAllIcon, En as Trash2, Et as PathBuilder, F as base64ToDataView, Fn as Eye, Ft as jotaiJsonStorage, Gt as convertStatsName, H as getMarimoExportContext, In as Database, J as getCellNames, Jt as useRequestClient, K as createActions, Kt as getRequestClient, L as dataViewToBase64, Ln as Columns2, Mn as Layers, Nn as Info, Nt as repl, On as PaintRoller, Pn as FileText, Q as reducer, Rt as PluralWords, S as Accordion, Sn as Item$1, St as Checkbox, T as AccordionTrigger, U as hasTrustedExportContext, V as renderHTML, Vt as require_client, W as hasRunAnyCellAtom, X as notebookOutline, Y as notebookAtom, Yt as isUninstantiated, Z as numColumnsAtom, _n as atomWithStorage, a as useLastFocusedCellId, an as parseInitialValue, bt as isInternalCellName, ct as kioskModeAtom, dn as OBJECT_ID_ATTR, dt as outputIsLoading, en as NotebookScopedLocalStorage, et as useCellIds, f as isOutputEmpty, fn as RANDOM_ID_ATTR, ft as outputIsStale, gn as atomWithReducer, i as useCellFocusActions, in as parseDataset, jn as LoaderCircle, jt as generateUUID, k as ChevronDownIcon, ln as UIElementId, mt as headingToIdentifier, nt as createCell, o as maybeAddAltairImport, ot as getInitialAppMode, p as useExpandedConsoleOutput, pn as jsonParseWithSpecialChar, pt as isErrorMime, qt as requestClientAtom, r as LazyAnyLanguageCodeMirror, rn as parseAttrValue, s as Spinner, sn as HTMLCellId, st as initialModeAtom, un as findCellId, vn as selectAtom, w as AccordionItem, wn as Trigger2, wt as MarkdownLanguageAdapter, xn as Content2, xt as normalizeName, yt as getValidName, zn as CircleAlert, zt as DATA_TYPE_ICON, __tla as __tla_0 } from "./html-to-image-uzALXlch.js";
25
+ import { $ as useCellActions, At as DeferredRequestRegistry, B as safeExtractSetUIElementMessageBuffers, Bn as Braces, Bt as getDataTypeColor, C as AccordionContent, Cn as Root2$1, Ct as customPythonLanguageSupport, Dn as Table2, Dt as Paths, E as BorderAllIcon, En as Trash2, Et as PathBuilder, F as base64ToDataView, Fn as Eye, Ft as jotaiJsonStorage, Gt as convertStatsName, H as getMarimoExportContext, In as Database, J as getCellNames, Jt as useRequestClient, K as createActions, Kt as getRequestClient, L as dataViewToBase64, Ln as Columns2, Mn as Layers, Nn as Info, Nt as repl, On as PaintRoller, Pn as FileText, Q as reducer, Rt as PluralWords, S as Accordion, Sn as Item$1, St as Checkbox, T as AccordionTrigger, U as hasTrustedExportContext, V as renderHTML, Vt as require_client, W as hasRunAnyCellAtom, X as notebookOutline, Y as notebookAtom, Yt as isUninstantiated, Z as numColumnsAtom, _n as atomWithStorage, a as useLastFocusedCellId, an as parseInitialValue, bt as isInternalCellName, ct as kioskModeAtom, dn as OBJECT_ID_ATTR, dt as outputIsLoading, en as NotebookScopedLocalStorage, et as useCellIds, f as isOutputEmpty, fn as RANDOM_ID_ATTR, ft as outputIsStale, gn as atomWithReducer, i as useCellFocusActions, in as parseDataset, jn as LoaderCircle, jt as generateUUID, k as ChevronDownIcon, ln as UIElementId, mt as headingToIdentifier, nt as createCell, o as maybeAddAltairImport, ot as getInitialAppMode, p as useExpandedConsoleOutput, pn as jsonParseWithSpecialChar, pt as isErrorMime, qt as requestClientAtom, r as LazyAnyLanguageCodeMirror, rn as parseAttrValue, s as Spinner, sn as HTMLCellId, st as initialModeAtom, un as findCellId, vn as selectAtom, w as AccordionItem, wn as Trigger2, wt as MarkdownLanguageAdapter, xn as Content2, xt as normalizeName, yt as getValidName, zn as CircleAlert, zt as DATA_TYPE_ICON, __tla as __tla_0 } from "./html-to-image-Ctyt_1RZ.js";
26
26
  import { __tla as __tla_1 } from "./chunk-5FQGJX7Z-CO1e63h_.js";
27
27
  import { o as useSize, s as Root$3, u as createLucideIcon } from "./dist-ESg7xyoD.js";
28
- import { A as SquareFunction, C as DEFAULT_COLOR_SCHEME, D as SCALE_TYPE_DESCRIPTIONS, E as EMPTY_VALUE$1, O as TIME_UNIT_DESCRIPTIONS, S as DEFAULT_AGGREGATION, T as DEFAULT_TIME_UNIT, _ as AGGREGATION_TYPE_DESCRIPTIONS, a as AGGREGATION_FNS$1, b as COLOR_SCHEMES, c as COLOR_BY_FIELDS, d as NONE_VALUE, f as SELECTABLE_DATA_TYPES, g as TIME_UNITS, h as STRING_AGGREGATION_FNS, i as convertDataTypeToSelectable, j as ChartColumn, k as escapeFieldName, l as COMBINED_TIME_UNITS, m as SORT_TYPES, n as createSpecWithoutData, o as BIN_AGGREGATION, p as SINGLE_TIME_UNITS, r as isFieldSet, s as CHART_TYPES, t as augmentSpecWithData, u as ChartType, v as AGGREGATION_TYPE_ICON, w as DEFAULT_MAX_BINS_FACET, x as COUNT_FIELD, y as CHART_TYPE_ICON } from "./spec-BKWq0wn2.js";
29
- import { $ as getPageIndexForRow, A as contextAwarePanelType, At as GripHorizontal, B as TableHead, Bt as ChevronsDownUp, C as useInternalStateWithSync, Ct as RenderTextWithLinks, D as PANEL_TYPES, Dt as getStaticVirtualFiles, E as ContextAwarePanelItem, Et as EmotionCacheProvider, F as Fill, Ft as Download, G as inferFieldTypes, H as TableRow, Ht as ArrowDownWideNarrow, I as Provider$1, It as Code, J as ColumnChartSpecModel, K as renderCellValue, L as Table, Lt as ChevronsUpDown, M as SlotNames, Mt as EyeOff, N as slotsController, O as contextAwarePanelOpen, Ot as isStaticNotebook, P as Toggle, Pt as Ellipsis, Q as filtersToFilterGroup, R as TableBody, Rt as ChevronsRight, S as prettifyRowCount, St as useOverflowDetection, T as ComboboxItem, Tt as HtmlOutput, U as NAMELESS_COLUMN_PREFIX, V as TableHeader, Vt as ChevronLeft, W as generateColumns, X as useIntersectionObserver, Y as DelayMount, Z as usePrevious$1, _ as downloadBlob, _t as TabsTrigger, at as toFieldTypes, b as Filenames, bt as ChartLoadingState, c as Slide, ct as CommandEmpty, d as JsonOutput, dt as CommandList, et as loadTableAndRawData, f as OutputArea, ft as CommandSeparator, g as ADD_PRINTING_CLASS, gt as TabsList, h as InstallPackageButton, ht as TabsContent, it as TOO_MANY_ROWS, j as isCellAwareAtom, jt as Funnel, k as contextAwarePanelOwner, kt as TextWrap, l as RadioGroup, lt as CommandInput, m as DataTable, mt as Tabs, n as marimoVersionAtom, nt as INDEX_COLUMN_NAME, o as SLIDE_TYPE_OPTIONS_BY_VALUE, ot as getMimeValues, p as OutputRenderer, pt as Maps, q as ColumnChartContext, r as showCodeInRunModeAtom, rt as SELECT_COLUMN_ID, st as Command, t as useNotebookCodeAvailable, tt as loadTableData, u as RadioGroupItem, ut as CommandItem, v as downloadByURL, vt as ChartErrorState, w as Combobox, wt as Kbd, x as prettifyRowColumnCount, xt as LazyVegaEmbed, y as downloadHTMLAsImage, yt as ChartInfoState, z as TableCell, zt as ChevronsLeft, __tla as __tla_2 } from "./code-visibility-BnjWivjU.js";
30
- import { c as Calendar, i as createReducerAndAtoms, n as useOnUnmount, o as ToggleLeft, t as useOnMount } from "./useLifecycle-smVfjLNI.js";
28
+ import { A as SquareFunction, C as DEFAULT_COLOR_SCHEME, D as SCALE_TYPE_DESCRIPTIONS, E as EMPTY_VALUE$1, O as TIME_UNIT_DESCRIPTIONS, S as DEFAULT_AGGREGATION, T as DEFAULT_TIME_UNIT, _ as AGGREGATION_TYPE_DESCRIPTIONS, a as AGGREGATION_FNS$1, b as COLOR_SCHEMES, c as COLOR_BY_FIELDS, d as NONE_VALUE, f as SELECTABLE_DATA_TYPES, g as TIME_UNITS, h as STRING_AGGREGATION_FNS, i as convertDataTypeToSelectable, j as ChartColumn, k as escapeFieldName, l as COMBINED_TIME_UNITS, m as SORT_TYPES, n as createSpecWithoutData, o as BIN_AGGREGATION, p as SINGLE_TIME_UNITS, r as isFieldSet, s as CHART_TYPES, t as augmentSpecWithData, u as ChartType, v as AGGREGATION_TYPE_ICON, w as DEFAULT_MAX_BINS_FACET, x as COUNT_FIELD, y as CHART_TYPE_ICON } from "./spec-DSIuqd3f.js";
29
+ import { $ as getPageIndexForRow, A as contextAwarePanelType, At as GripHorizontal, B as TableHead, Bt as ChevronsDownUp, C as useInternalStateWithSync, Ct as RenderTextWithLinks, D as PANEL_TYPES, Dt as getStaticVirtualFiles, E as ContextAwarePanelItem, Et as EmotionCacheProvider, F as Fill, Ft as Download, G as inferFieldTypes, H as TableRow, Ht as ArrowDownWideNarrow, I as Provider$1, It as Code, J as ColumnChartSpecModel, K as renderCellValue, L as Table, Lt as ChevronsUpDown, M as SlotNames, Mt as EyeOff, N as slotsController, O as contextAwarePanelOpen, Ot as isStaticNotebook, P as Toggle, Pt as Ellipsis, Q as filtersToFilterGroup, R as TableBody, Rt as ChevronsRight, S as prettifyRowCount, St as useOverflowDetection, T as ComboboxItem, Tt as HtmlOutput, U as NAMELESS_COLUMN_PREFIX, V as TableHeader, Vt as ChevronLeft, W as generateColumns, X as useIntersectionObserver, Y as DelayMount, Z as usePrevious$1, _ as downloadBlob, _t as TabsTrigger, at as toFieldTypes, b as Filenames, bt as ChartLoadingState, c as Slide, ct as CommandEmpty, d as JsonOutput, dt as CommandList, et as loadTableAndRawData, f as OutputArea, ft as CommandSeparator, g as ADD_PRINTING_CLASS, gt as TabsList, h as InstallPackageButton, ht as TabsContent, it as TOO_MANY_ROWS, j as isCellAwareAtom, jt as Funnel, k as contextAwarePanelOwner, kt as TextWrap, l as RadioGroup, lt as CommandInput, m as DataTable, mt as Tabs, n as marimoVersionAtom, nt as INDEX_COLUMN_NAME, o as SLIDE_TYPE_OPTIONS_BY_VALUE, ot as getMimeValues, p as OutputRenderer, pt as Maps, q as ColumnChartContext, r as showCodeInRunModeAtom, rt as SELECT_COLUMN_ID, st as Command, t as useNotebookCodeAvailable, tt as loadTableData, u as RadioGroupItem, ut as CommandItem, v as downloadByURL, vt as ChartErrorState, w as Combobox, wt as Kbd, x as prettifyRowColumnCount, xt as LazyVegaEmbed, y as downloadHTMLAsImage, yt as ChartInfoState, z as TableCell, zt as ChevronsLeft, __tla as __tla_2 } from "./code-visibility-DLtrQQPk.js";
30
+ import { c as Calendar, i as createReducerAndAtoms, n as useOnUnmount, o as ToggleLeft, t as useOnMount } from "./useLifecycle-CjMjllqy.js";
31
31
  import { n as $fb18d541ea1ad717$export$ad991b66133851cf, r as $5a387cc49350e6db$export$722debc0e56fea39, t as $896ba0a80a8f4d36$export$85fd5fdf27bacc79 } from "./useDateFormatter-B3mCQMP3.js";
32
32
  import { t as Check } from "./check-CFM2mVDr.js";
33
33
  import { A as Trigger$1, C as $a916eb452884faea$export$b7a616150fdb9f44, D as $b5e257d569688ac6$export$535bd6ca7f90a273, E as $18f2051aff69b9bf$export$a54013f0d02a8f82, F as X, L as ChevronDown, M as usePrevious$2, N as useDirection, P as createCollection, S as logNever, T as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7, a as SelectGroup, c as SelectSeparator, d as NativeSelect, f as selectStyles, i as SelectContent, j as clamp$2, k as Icon, l as SelectTrigger, n as capitalize, o as SelectItem, r as Select, s as SelectLabel, t as Strings, u as SelectValue, w as $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5, x as assertNever } from "./strings-B_FOH6eV.js";
34
- import { $ as $e5be200c675c3b3a$export$aca958c65c314e6c, A as $d2b4bc8c273e7be6$export$24d547caef80ccd1, At as $c87311424ea30a05$export$fedb369cb70207f1, B as $64fa3d84918910a7$export$c62b8e45d58ddad9, Bt as $431fbd86ca7dc216$export$f21a1ffae260145a, C as $a049562f99e7db0e$export$eb2fcfdbd7ba97d4, Ct as $8ae05eaa5c114e9c$export$7f54fc3180508a52, D as $ee014567cb39d3f0$export$ff05c3ac10437e03, Dt as $c87311424ea30a05$export$78551043582a6a98, E as $ee014567cb39d3f0$export$f551688fc98f2e09, Et as $c87311424ea30a05$export$6446a186d09e379e, F as $64fa3d84918910a7$export$2881499e37b75b9a, Ft as $d4ee10de306f2510$export$b4f377a2b6254582, H as $64fa3d84918910a7$export$ef03459518577ad4, Ht as $bdb11010cef70236$export$b4cc09c592e8fdb8, I as $64fa3d84918910a7$export$29f1550f4b0d4415, It as $d4ee10de306f2510$export$cd4e5573fbe2b576, J as $d2e8511e6f209edf$export$e908e06f4b8e3402, K as useDebounceControlledState, L as $64fa3d84918910a7$export$4d86445c2cf5e3, Lt as $d4ee10de306f2510$export$e58f029f0fbfdb29, M as $01b77f81d0f07f68$export$75b6ee27786ba447, Mt as $65484d02dcb7eb3e$export$457c3d6518dd4c6f, N as $01b77f81d0f07f68$export$b04be29aa201d4f5, Nt as $3ef42575df84b30b$export$9d1611c77c2fe928, O as $514c0188e459b4c0$export$5f1af8db9871e1d6, Ot as $c87311424ea30a05$export$9ac100e40613ea10, P as $f39a9eba43920ace$export$b5d7cc18bb8d2b59, Pt as $d4ee10de306f2510$export$4282f70798064fe0, Q as $e5be200c675c3b3a$export$a763b9476acd3eb, R as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8, Rt as $f4e2df6bd15f8569$export$98658e8c59125e6a, S as $3985021b0ad6602f$export$f5b8910cec6cf069, St as $e9faafb641e167db$export$90fc3a17d93f704c, T as $d3e0e05bdfcf66bd$export$c24727297075ec6a, Tt as $313b98861ee5dd6c$export$d6875122194c7b44, U as $64fa3d84918910a7$export$fabf2dc03a41866e, Ut as $bdb11010cef70236$export$f680877a34711e37, V as $64fa3d84918910a7$export$df3a06d6289f983e, Vt as $ff5963eb1fccf552$export$e08e3b67e392101e, Wt as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, X as $e93e671b31057976$export$b8473d3665f3a75a, Y as $2baaea4c71418dea$export$294aa081a6c6f55d, Z as $e5be200c675c3b3a$export$75ee7c75d68f5b0e, _t as $9446cca9a3875146$export$7d15b64cf5a3a4c4, a as NumberField, at as $6c7bd7858deea686$export$cd11ab140839f11d, b as DropdownMenuTrigger, bt as $b4b717babfbb907b$export$bebd5a1431fec25d, c as prettyNumber, ct as $6db58dc88e78b024$export$2f817fcdc4b89ae0, d as DropdownMenuContent, dt as $9ab94262bd0047c7$export$420e68273165f4ec, et as $e5be200c675c3b3a$export$dad6ae84456c676a, f as DropdownMenuGroup, fn as Circle, ft as $3ad3f6e1647bc98d$export$80f3e147d781571c, g as DropdownMenuSeparator, gt as $ae1eeba8b9eafd08$export$5165eccb35aaadb5, ht as _class_private_field_init, i as OnBlurredInput, it as $701a24aa0da5b062$export$ea18c227d4417cc3, j as $d2b4bc8c273e7be6$export$353f5b6fc5456de1, jt as $7215afc6de606d6b$export$de79e2c695e052f3, k as $514c0188e459b4c0$export$9afb8bc826b033ea, kt as $c87311424ea30a05$export$a11b0059900ceec8, l as prettyScientificNumber, lt as $5b160d28a433310d$export$c17fa47878dc55b6, m as DropdownMenuLabel, mt as $f6c31cce2adf654f$export$45712eceda6fad21, n as DebouncedNumberInput, nt as $319e236875307eab$export$a9b970dcc4ae71a9, ot as $fca6afa0e843324b$export$87b761675e8eaa10, p as DropdownMenuItem, pn as ChevronRight, pt as $507fabe10e71c6fb$export$630ff653c5ada6a9, q as useDebouncedCallback, r as Input, rt as $f7dceffc5ad7768b$export$4e328f61c538687f, st as $fca6afa0e843324b$export$f12b703ca79dfbb1, t as DebouncedInput, tt as $e5be200c675c3b3a$export$fc1a364ae1f3ff10, u as DropdownMenu, ut as $6179b936705e76d3$export$ae780daf29e6d456, vt as $458b0a5536c1a7cf$export$40bfa8c7b0832715, w as $a049562f99e7db0e$export$f9c6924e160136d1, wt as $df56164dff5785e2$export$4338b53315abf666, x as $3985021b0ad6602f$export$37fb8590cf2c088c, xt as $99facab73266f662$export$5add1d006293d136, yt as $b4b717babfbb907b$export$4c063cf1350e6fed, z as $64fa3d84918910a7$export$c245e6201fed2f75, zt as $431fbd86ca7dc216$export$b204af158042fbac } from "./input-Drx1pguW.js";
35
- import { c as asRemoteURL, f as require_cuid2, g as CircleQuestionMark, h as isWasm, m as Deferred, u as appendQueryParams } from "./toDate-yqOcZ_tY.js";
36
- import { a as MarimoIncomingMessageEvent, c as MarimoValueUpdateEvent, d as File, i as PythonIcon, l as createInputEvent, n as blobToString, o as MarimoValueInputEvent, r as filesToBase64, s as MarimoValueReadyEvent, t as processOutput, u as deserializeBlob } from "./process-output-CD5QiwBb.js";
34
+ import { $ as $e5be200c675c3b3a$export$aca958c65c314e6c, A as $d2b4bc8c273e7be6$export$24d547caef80ccd1, At as $c87311424ea30a05$export$fedb369cb70207f1, B as $64fa3d84918910a7$export$c62b8e45d58ddad9, Bt as $431fbd86ca7dc216$export$f21a1ffae260145a, C as $a049562f99e7db0e$export$eb2fcfdbd7ba97d4, Ct as $8ae05eaa5c114e9c$export$7f54fc3180508a52, D as $ee014567cb39d3f0$export$ff05c3ac10437e03, Dt as $c87311424ea30a05$export$78551043582a6a98, E as $ee014567cb39d3f0$export$f551688fc98f2e09, Et as $c87311424ea30a05$export$6446a186d09e379e, F as $64fa3d84918910a7$export$2881499e37b75b9a, Ft as $d4ee10de306f2510$export$b4f377a2b6254582, H as $64fa3d84918910a7$export$ef03459518577ad4, Ht as $bdb11010cef70236$export$b4cc09c592e8fdb8, I as $64fa3d84918910a7$export$29f1550f4b0d4415, It as $d4ee10de306f2510$export$cd4e5573fbe2b576, J as $d2e8511e6f209edf$export$e908e06f4b8e3402, K as useDebounceControlledState, L as $64fa3d84918910a7$export$4d86445c2cf5e3, Lt as $d4ee10de306f2510$export$e58f029f0fbfdb29, M as $01b77f81d0f07f68$export$75b6ee27786ba447, Mt as $65484d02dcb7eb3e$export$457c3d6518dd4c6f, N as $01b77f81d0f07f68$export$b04be29aa201d4f5, Nt as $3ef42575df84b30b$export$9d1611c77c2fe928, O as $514c0188e459b4c0$export$5f1af8db9871e1d6, Ot as $c87311424ea30a05$export$9ac100e40613ea10, P as $f39a9eba43920ace$export$b5d7cc18bb8d2b59, Pt as $d4ee10de306f2510$export$4282f70798064fe0, Q as $e5be200c675c3b3a$export$a763b9476acd3eb, R as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8, Rt as $f4e2df6bd15f8569$export$98658e8c59125e6a, S as $3985021b0ad6602f$export$f5b8910cec6cf069, St as $e9faafb641e167db$export$90fc3a17d93f704c, T as $d3e0e05bdfcf66bd$export$c24727297075ec6a, Tt as $313b98861ee5dd6c$export$d6875122194c7b44, U as $64fa3d84918910a7$export$fabf2dc03a41866e, Ut as $bdb11010cef70236$export$f680877a34711e37, V as $64fa3d84918910a7$export$df3a06d6289f983e, Vt as $ff5963eb1fccf552$export$e08e3b67e392101e, Wt as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, X as $e93e671b31057976$export$b8473d3665f3a75a, Y as $2baaea4c71418dea$export$294aa081a6c6f55d, Z as $e5be200c675c3b3a$export$75ee7c75d68f5b0e, _t as $9446cca9a3875146$export$7d15b64cf5a3a4c4, a as NumberField, at as $6c7bd7858deea686$export$cd11ab140839f11d, b as DropdownMenuTrigger, bt as $b4b717babfbb907b$export$bebd5a1431fec25d, c as prettyNumber, ct as $6db58dc88e78b024$export$2f817fcdc4b89ae0, d as DropdownMenuContent, dt as $9ab94262bd0047c7$export$420e68273165f4ec, et as $e5be200c675c3b3a$export$dad6ae84456c676a, f as DropdownMenuGroup, fn as Circle, ft as $3ad3f6e1647bc98d$export$80f3e147d781571c, g as DropdownMenuSeparator, gt as $ae1eeba8b9eafd08$export$5165eccb35aaadb5, ht as _class_private_field_init, i as OnBlurredInput, it as $701a24aa0da5b062$export$ea18c227d4417cc3, j as $d2b4bc8c273e7be6$export$353f5b6fc5456de1, jt as $7215afc6de606d6b$export$de79e2c695e052f3, k as $514c0188e459b4c0$export$9afb8bc826b033ea, kt as $c87311424ea30a05$export$a11b0059900ceec8, l as prettyScientificNumber, lt as $5b160d28a433310d$export$c17fa47878dc55b6, m as DropdownMenuLabel, mt as $f6c31cce2adf654f$export$45712eceda6fad21, n as DebouncedNumberInput, nt as $319e236875307eab$export$a9b970dcc4ae71a9, ot as $fca6afa0e843324b$export$87b761675e8eaa10, p as DropdownMenuItem, pn as ChevronRight, pt as $507fabe10e71c6fb$export$630ff653c5ada6a9, q as useDebouncedCallback, r as Input, rt as $f7dceffc5ad7768b$export$4e328f61c538687f, st as $fca6afa0e843324b$export$f12b703ca79dfbb1, t as DebouncedInput, tt as $e5be200c675c3b3a$export$fc1a364ae1f3ff10, u as DropdownMenu, ut as $6179b936705e76d3$export$ae780daf29e6d456, vt as $458b0a5536c1a7cf$export$40bfa8c7b0832715, w as $a049562f99e7db0e$export$f9c6924e160136d1, wt as $df56164dff5785e2$export$4338b53315abf666, x as $3985021b0ad6602f$export$37fb8590cf2c088c, xt as $99facab73266f662$export$5add1d006293d136, yt as $b4b717babfbb907b$export$4c063cf1350e6fed, z as $64fa3d84918910a7$export$c245e6201fed2f75, zt as $431fbd86ca7dc216$export$b204af158042fbac } from "./input-BAOe64zx.js";
35
+ import { c as asRemoteURL, f as require_cuid2, g as CircleQuestionMark, h as isWasm, m as Deferred, u as appendQueryParams } from "./toDate-0ZO2rMtR.js";
36
+ import { a as MarimoIncomingMessageEvent, c as MarimoValueUpdateEvent, d as File, i as PythonIcon, l as createInputEvent, n as blobToString, o as MarimoValueInputEvent, r as filesToBase64, s as MarimoValueReadyEvent, t as processOutput, u as deserializeBlob } from "./process-output-V4Xi7mGt.js";
37
37
  import { i as Pencil, n as Trash, r as Plus, t as BulkEdit } from "./types-DBtDeUKD.js";
38
38
  import { t as require_react_dom } from "./react-dom-BWRJ_g_k.js";
39
39
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
@@ -45,7 +45,7 @@ import { f as CopyClipboardIcon } from "./extends-CzJgxo2J.js";
45
45
  import { a as get_default } from "./hasIn-COs6vImh.js";
46
46
  import { n as _baseSet_default, t as pick_default } from "./pick-CRAXxDYn.js";
47
47
  import { i as debounce_default, r as KnownQueryParams, t as CSSClasses } from "./constants-D0gkYoE2.js";
48
- import { C as dequal, c as AppConfigSchema, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, m as Provider, n as useTheme, o as localeAtom, p as isIslands, s as useResolvedMarimoConfig, u as store, w as useEvent_default, y as atom } from "./useTheme-CX9pPLUH.js";
48
+ import { C as dequal, c as AppConfigSchema, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, m as Provider, n as useTheme, o as localeAtom, p as isIslands, s as useResolvedMarimoConfig, u as store, w as useEvent_default, y as atom } from "./useTheme-CByZUW0p.js";
49
49
  import { Z as EditorView } from "./dist-CCADb07R.js";
50
50
  import { t as invariant } from "./invariant-UcGKQEhF.js";
51
51
  import { l as clamp, o as arrayShallowEquals, t as Arrays } from "./arrays-CldYf7p7.js";
@@ -59,14 +59,14 @@ import "./dist-DGAfI2rB.js";
59
59
  import { r as python } from "./dist-nuW5EDYT.js";
60
60
  import { n as minimalSetup, t as esm_default } from "./esm-Dd1z1auZ.js";
61
61
  import "./purify.es-DT70lfR0.js";
62
- import { i as AlertTitle, n as Alert, r as AlertDescription } from "./formats-Dh5M1ZRs.js";
62
+ import { i as AlertTitle, n as Alert, r as AlertDescription } from "./formats-DJvu12E_.js";
63
63
  import { n as require_prop_types, t as ErrorBoundary } from "./ErrorBoundary-Da4UeYxT.js";
64
64
  import "./vega-loader.browser-3_z8GoFC.js";
65
65
  import { a as getContainerWidth, n as vegaLoadData, o as getVegaFieldTypes, s as tooltipHandler } from "./loader-BvW0-YWZ.js";
66
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
66
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
67
67
  import "./defaultLocale-BpsHxBd7.js";
68
68
  import "./defaultLocale-DoeErsX2.js";
69
- import { t as useDeepCompareMemoize } from "./useDeepCompareMemoize-je76AJS_.js";
69
+ import { t as useDeepCompareMemoize } from "./useDeepCompareMemoize-CmwDuYUH.js";
70
70
  import "./dist-HVuryI1a.js";
71
71
  import "./dist-CxdUraQr.js";
72
72
  import "./dist-C-J0pt5p.js";
@@ -13655,7 +13655,7 @@ Defaulting to \`null\`.`;
13655
13655
  };
13656
13656
  }
13657
13657
  };
13658
- var LazyChatbot = import_react.lazy(() => import("./chat-ui-CtIeZD6j.js").then((e) => ({
13658
+ var LazyChatbot = import_react.lazy(() => import("./chat-ui-CVfL3lSs.js").then((e) => ({
13659
13659
  default: e.Chatbot
13660
13660
  }))), messageSchema = array(object({
13661
13661
  id: string(),
@@ -13799,7 +13799,7 @@ Defaulting to \`null\`.`;
13799
13799
  "time",
13800
13800
  "unknown"
13801
13801
  ];
13802
- var import_compiler_runtime$85 = require_compiler_runtime(), LazyDataEditor = import_react.lazy(() => import("./glide-data-editor-DXti2axL.js").then(async (m) => {
13802
+ var import_compiler_runtime$85 = require_compiler_runtime(), LazyDataEditor = import_react.lazy(() => import("./glide-data-editor-CvlvtPWJ.js").then(async (m) => {
13803
13803
  await m.__tla;
13804
13804
  return m;
13805
13805
  }));
@@ -23756,7 +23756,7 @@ ${c}
23756
23756
  fullWidth: m,
23757
23757
  children: w
23758
23758
  }), r[19] = m, r[20] = h, r[21] = c, r[22] = w, r[23] = T) : T = r[23], T;
23759
- }, LazyDataExplorerComponent = import_react.lazy(() => import("./ConnectedDataExplorerComponent-CWU3Az6F.js"));
23759
+ }, LazyDataExplorerComponent = import_react.lazy(() => import("./ConnectedDataExplorerComponent-PmilQqXR.js"));
23760
23760
  const DataExplorerPlugin = createPlugin("marimo-data-explorer").withData(object({
23761
23761
  label: string().nullish(),
23762
23762
  data: string()
@@ -35083,7 +35083,7 @@ ${c}
35083
35083
  return true;
35084
35084
  }
35085
35085
  }
35086
- var LazyVegaComponent = import_react.lazy(() => import("./vega-component-BnCQmtxw.js")), VegaPlugin = class {
35086
+ var LazyVegaComponent = import_react.lazy(() => import("./vega-component-D3zDd-Uu.js")), VegaPlugin = class {
35087
35087
  constructor() {
35088
35088
  __publicField(this, "tagName", "marimo-vega");
35089
35089
  __publicField(this, "validator", object({
@@ -35405,7 +35405,7 @@ ${c}
35405
35405
  diagram: e.data.diagram
35406
35406
  });
35407
35407
  }
35408
- }, LazyMermaid = (0, import_react.lazy)(() => import("./mermaid-BagLPXm9.js").then(async (m) => {
35408
+ }, LazyMermaid = (0, import_react.lazy)(() => import("./mermaid-DJ1NyBGw.js").then(async (m) => {
35409
35409
  await m.__tla;
35410
35410
  return m;
35411
35411
  })), import_compiler_runtime$20 = require_compiler_runtime();
@@ -44649,7 +44649,7 @@ ${c}
44649
44649
  if (l && l !== "slide") return l;
44650
44650
  if (c == null ? void 0 : c.has(e)) return "skip";
44651
44651
  }
44652
- var LazySlidesComponent = import_react.lazy(() => import("./reveal-component-CBs-ycE-.js"));
44652
+ var LazySlidesComponent = import_react.lazy(() => import("./reveal-component-B_NMN2rm.js"));
44653
44653
  const SlidesLayoutPlugin = {
44654
44654
  type: "slides",
44655
44655
  name: "Slides",
@@ -46515,7 +46515,7 @@ ${r}
46515
46515
  });
46516
46516
  }
46517
46517
  const getMarimoVersion = () => store.get(marimoVersionAtom);
46518
- var worker_default = "/assets/worker-D-EdLKct.js", DefaultWorkerFactory = class {
46518
+ var worker_default = "/assets/worker-Bfy15ViQ.js", DefaultWorkerFactory = class {
46519
46519
  constructor(e = {}) {
46520
46520
  this.url = e.workerUrl || this.getDefaultWorkerUrl(), this.name = e.workerName || getMarimoVersion();
46521
46521
  }
@@ -7,9 +7,9 @@ import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
7
7
  import "./zod-BxdsqRPd.js";
8
8
  import { n as ErrorBanner } from "./error-banner-DnBPzEWg.js";
9
9
  import { t as isEmpty_default } from "./isEmpty-Dd8mx_WL.js";
10
- import { n as useTheme } from "./useTheme-CX9pPLUH.js";
10
+ import { n as useTheme } from "./useTheme-CByZUW0p.js";
11
11
  import { t as purify } from "./purify.es-DT70lfR0.js";
12
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
12
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
13
13
  import { a as decodeEntities, f as isDetailedError, g as utils_default, h as removeDirectives, i as cleanAndMerge, o as encodeEntities } from "./chunk-S3R3BYOJ-DphMP0FA.js";
14
14
  import { a as setLogLevel, i as log, r as __name, t as select_default } from "./src-BY0BGg6V.js";
15
15
  import { t as package_default } from "./chunk-DR5Q36YT-CP69aZS_.js";
@@ -1,6 +1,6 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
3
- import { it as parseHtmlContent, rt as ansiToPlainText } from "./html-to-image-uzALXlch.js";
3
+ import { it as parseHtmlContent, rt as ansiToPlainText } from "./html-to-image-Ctyt_1RZ.js";
4
4
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
5
5
  import { t as Strings } from "./strings-B_FOH6eV.js";
6
6
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
@@ -6,16 +6,16 @@ import { s as __toESM } from "./chunk-BNovOVIE.js";
6
6
  import { _ as Logger, g as cn, h as Events, l as useEventListener, t as Button } from "./button-CA5pI2YF.js";
7
7
  import { t as require_react } from "./react-DA-nE2FX.js";
8
8
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
9
- import "./html-to-image-uzALXlch.js";
9
+ import "./html-to-image-Ctyt_1RZ.js";
10
10
  import "./chunk-5FQGJX7Z-CO1e63h_.js";
11
- import { It as Code, Mt as EyeOff, Nt as Expand, a as DEFAULT_SLIDE_TYPE, c as Slide, i as DEFAULT_DECK_TRANSITION, s as SlideSidebar, t as useNotebookCodeAvailable } from "./code-visibility-BnjWivjU.js";
12
- import "./input-Drx1pguW.js";
13
- import "./toDate-yqOcZ_tY.js";
11
+ import { It as Code, Mt as EyeOff, Nt as Expand, a as DEFAULT_SLIDE_TYPE, c as Slide, i as DEFAULT_DECK_TRANSITION, s as SlideSidebar, t as useNotebookCodeAvailable } from "./code-visibility-DLtrQQPk.js";
12
+ import "./input-BAOe64zx.js";
13
+ import "./toDate-0ZO2rMtR.js";
14
14
  import "./react-dom-BWRJ_g_k.js";
15
15
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
16
16
  import "./zod-BxdsqRPd.js";
17
17
  import { t as Tooltip } from "./tooltip-B0mtKTXm.js";
18
- import { p as isIslands, w as useEvent_default } from "./useTheme-CX9pPLUH.js";
18
+ import { p as isIslands, w as useEvent_default } from "./useTheme-CByZUW0p.js";
19
19
  import "./dist-CCADb07R.js";
20
20
  import "./main-CThhXnXU.js";
21
21
  import "./dist-Yrfc6L0I.js";
@@ -1,5 +1,5 @@
1
1
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
2
- import { s as Hash } from "./useLifecycle-smVfjLNI.js";
2
+ import { s as Hash } from "./useLifecycle-CjMjllqy.js";
3
3
  import { i as Table, o as ChartPie } from "./useDateFormatter-B3mCQMP3.js";
4
4
  import { S as logNever } from "./strings-B_FOH6eV.js";
5
5
  var AlignCenterVertical = createLucideIcon("align-center-vertical", [
@@ -6,7 +6,7 @@ import { _ as Logger } from "./button-CA5pI2YF.js";
6
6
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
7
7
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
8
8
  import { r as KnownQueryParams } from "./constants-D0gkYoE2.js";
9
- import { f as waitFor, p as isIslands, u as store, y as atom } from "./useTheme-CX9pPLUH.js";
9
+ import { f as waitFor, p as isIslands, u as store, y as atom } from "./useTheme-CByZUW0p.js";
10
10
  var CircleQuestionMark = createLucideIcon("circle-question-mark", [
11
11
  ["circle", {
12
12
  cx: "12",
@@ -1,7 +1,7 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { t as require_react } from "./react-DA-nE2FX.js";
3
3
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
4
- import { w as useEvent_default } from "./useTheme-CX9pPLUH.js";
4
+ import { w as useEvent_default } from "./useTheme-CByZUW0p.js";
5
5
  import { t as invariant } from "./invariant-UcGKQEhF.js";
6
6
  var import_compiler_runtime = require_compiler_runtime(), import_react = /* @__PURE__ */ __toESM(require_react(), 1), Result = {
7
7
  error(e, s) {
@@ -1,6 +1,6 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { t as require_react } from "./react-DA-nE2FX.js";
3
- import { C as dequal } from "./useTheme-CX9pPLUH.js";
3
+ import { C as dequal } from "./useTheme-CByZUW0p.js";
4
4
  var import_react = /* @__PURE__ */ __toESM(require_react(), 1);
5
5
  function useDeepCompareMemoize(e) {
6
6
  let i = import_react.useRef(e);
@@ -4,7 +4,7 @@ import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
5
  import { u as createLucideIcon } from "./dist-ESg7xyoD.js";
6
6
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
7
- import { _ as useSetAtom, y as atom } from "./useTheme-CX9pPLUH.js";
7
+ import { _ as useSetAtom, y as atom } from "./useTheme-CByZUW0p.js";
8
8
  var Calendar = createLucideIcon("calendar", [
9
9
  ["path", {
10
10
  d: "M8 2v4",
@@ -614,6 +614,7 @@ const UserConfigSchema = looseObject({
614
614
  ollama: AiConfigSchema.optional(),
615
615
  openrouter: AiConfigSchema.optional(),
616
616
  wandb: AiConfigSchema.optional(),
617
+ opencode_go: AiConfigSchema.optional(),
617
618
  open_ai_compatible: AiConfigSchema.optional(),
618
619
  azure: AiConfigSchema.optional(),
619
620
  bedrock: looseObject({
@@ -2,23 +2,23 @@ import { s as __toESM } from "./chunk-BNovOVIE.js";
2
2
  import { _ as Logger, c as Objects, g as cn, h as Events } from "./button-CA5pI2YF.js";
3
3
  import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
- import { c as asRemoteURL, g as CircleQuestionMark } from "./toDate-yqOcZ_tY.js";
5
+ import { c as asRemoteURL, g as CircleQuestionMark } from "./toDate-0ZO2rMtR.js";
6
6
  import "./react-dom-BWRJ_g_k.js";
7
7
  import { t as require_jsx_runtime } from "./jsx-runtime-COBk7ree.js";
8
8
  import "./zod-BxdsqRPd.js";
9
9
  import { n as ErrorBanner } from "./error-banner-DnBPzEWg.js";
10
10
  import { t as Tooltip } from "./tooltip-B0mtKTXm.js";
11
11
  import { i as debounce_default } from "./constants-D0gkYoE2.js";
12
- import { n as useTheme, w as useEvent_default } from "./useTheme-CX9pPLUH.js";
12
+ import { n as useTheme, w as useEvent_default } from "./useTheme-CByZUW0p.js";
13
13
  import { s as uniq } from "./arrays-CldYf7p7.js";
14
- import { a as isValid, i as AlertTitle, n as Alert, t as arrow } from "./formats-Dh5M1ZRs.js";
14
+ import { a as isValid, i as AlertTitle, n as Alert, t as arrow } from "./formats-DJvu12E_.js";
15
15
  import { n as formats } from "./vega-loader.browser-3_z8GoFC.js";
16
16
  import { a as getContainerWidth, n as vegaLoadData, s as tooltipHandler } from "./loader-BvW0-YWZ.js";
17
- import { t as useAsyncData } from "./useAsyncData-CKYzhCis.js";
17
+ import { t as useAsyncData } from "./useAsyncData-B6hCGywC.js";
18
18
  import { t as j } from "./react-vega-k9ODWPlI.js";
19
19
  import "./defaultLocale-BpsHxBd7.js";
20
20
  import "./defaultLocale-DoeErsX2.js";
21
- import { t as useDeepCompareMemoize } from "./useDeepCompareMemoize-je76AJS_.js";
21
+ import { t as useDeepCompareMemoize } from "./useDeepCompareMemoize-CmwDuYUH.js";
22
22
  var import_compiler_runtime = require_compiler_runtime(), import_react = /* @__PURE__ */ __toESM(require_react(), 1);
23
23
  function fixRelativeUrl(e) {
24
24
  return e.data && "url" in e.data && (e.data.url = asRemoteURL(e.data.url).href), e;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marimo-team/islands",
3
- "version": "0.23.6-dev20",
3
+ "version": "0.23.6-dev23",
4
4
  "main": "dist/main.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
@@ -33,6 +33,7 @@ const icons: Record<ProviderId | ExternalAgentId, string> = {
33
33
  github: GitHubIcon,
34
34
  openrouter: OpenRouterIcon,
35
35
  wandb: WandbIcon,
36
+ "opencode-go": OpencodeIcon,
36
37
  marimo: marimoIcon,
37
38
  opencode: OpencodeIcon,
38
39
  cursor: CursorIcon,
@@ -21,6 +21,7 @@ const CREDENTIAL_CHECKERS: Record<KnownProviderId, CredentialChecker> = {
21
21
  openrouter: (ai) => Boolean(ai?.openrouter?.api_key),
22
22
  azure: (ai) => Boolean(ai?.azure?.api_key && ai?.azure?.base_url),
23
23
  wandb: (ai) => Boolean(ai?.wandb?.api_key),
24
+ "opencode-go": (ai) => Boolean(ai?.opencode_go?.api_key),
24
25
  bedrock: (ai) => Boolean(ai?.bedrock?.region_name),
25
26
  ollama: (ai) => Boolean(ai?.ollama?.base_url),
26
27
  // These providers don't have user-configurable credentials in the UI
@@ -1058,6 +1058,36 @@ export const AiProvidersConfig: React.FC<AiConfigProps> = ({
1058
1058
  />
1059
1059
  </AccordionFormItem>
1060
1060
 
1061
+ <AccordionFormItem
1062
+ title="OpenCode Go"
1063
+ provider="opencode-go"
1064
+ isConfigured={hasValue("ai.opencode_go.api_key")}
1065
+ >
1066
+ <ApiKey
1067
+ form={form}
1068
+ config={config}
1069
+ name="ai.opencode_go.api_key"
1070
+ placeholder="your-opencode-api-key"
1071
+ testId="ai-opencode-go-api-key-input"
1072
+ description={
1073
+ <>
1074
+ Your OpenCode API key from{" "}
1075
+ <ExternalLink href="https://opencode.ai/auth">
1076
+ opencode.ai
1077
+ </ExternalLink>
1078
+ . OpenCode Go is a low-cost subscription for open coding models.
1079
+ </>
1080
+ }
1081
+ />
1082
+ <BaseUrl
1083
+ form={form}
1084
+ config={config}
1085
+ name="ai.opencode_go.base_url"
1086
+ placeholder="https://opencode.ai/zen/go/v1/"
1087
+ testId="ai-opencode-go-base-url-input"
1088
+ />
1089
+ </AccordionFormItem>
1090
+
1061
1091
  <AccordionFormItem
1062
1092
  title="Azure"
1063
1093
  provider="azure"
@@ -59,6 +59,7 @@ interface CellArrayProps {
59
59
  mode: AppMode;
60
60
  userConfig: UserConfig;
61
61
  appConfig: AppConfig;
62
+ hideControls?: boolean;
62
63
  }
63
64
 
64
65
  export const CellArray: React.FC<CellArrayProps> = (props) => {
@@ -82,6 +83,7 @@ const CellArrayInternal: React.FC<CellArrayProps> = ({
82
83
  mode,
83
84
  userConfig,
84
85
  appConfig,
86
+ hideControls = false,
85
87
  }) => {
86
88
  const actions = useCellActions();
87
89
  const { theme } = useTheme();
@@ -147,6 +149,7 @@ const CellArrayInternal: React.FC<CellArrayProps> = ({
147
149
  mode={mode}
148
150
  userConfig={userConfig}
149
151
  theme={theme}
152
+ hideControls={hideControls}
150
153
  />
151
154
  ))}
152
155
  </div>
@@ -166,6 +169,7 @@ const CellColumn: React.FC<{
166
169
  mode: AppMode;
167
170
  userConfig: UserConfig;
168
171
  theme: Theme;
172
+ hideControls: boolean;
169
173
  }> = ({
170
174
  columnId,
171
175
  index,
@@ -174,6 +178,7 @@ const CellColumn: React.FC<{
174
178
  mode,
175
179
  userConfig,
176
180
  theme,
181
+ hideControls,
177
182
  }) => {
178
183
  const cellIds = useCellIds();
179
184
  const column = cellIds.get(columnId);
@@ -191,13 +196,15 @@ const CellColumn: React.FC<{
191
196
  width={appConfig.width}
192
197
  canDelete={columnsLength > 1}
193
198
  footer={
194
- <AddCellButtons
195
- columnId={columnId}
196
- className={cn(
197
- appConfig.width === "columns" &&
198
- "opacity-0 group-hover/column:opacity-100",
199
- )}
200
- />
199
+ hideControls ? null : (
200
+ <AddCellButtons
201
+ columnId={columnId}
202
+ className={cn(
203
+ appConfig.width === "columns" &&
204
+ "opacity-0 group-hover/column:opacity-100",
205
+ )}
206
+ />
207
+ )
201
208
  }
202
209
  >
203
210
  <SortableContext
@@ -15,7 +15,8 @@ export const ExternalLink = ({
15
15
  | `https://marimo.io/${string}`
16
16
  | `https://links.marimo.app/${string}`
17
17
  | `https://wandb.ai/${string}`
18
- | `https://portal.azure.com/${string}`;
18
+ | `https://portal.azure.com/${string}`
19
+ | `https://opencode.ai/${string}`;
19
20
  children: React.ReactNode;
20
21
  }) => {
21
22
  return (
@@ -13,6 +13,7 @@ export const KNOWN_PROVIDERS = [
13
13
  "github",
14
14
  "openrouter",
15
15
  "wandb",
16
+ "opencode-go",
16
17
  "marimo",
17
18
  ] as const;
18
19
  export type KnownProviderId = (typeof KNOWN_PROVIDERS)[number];
@@ -166,6 +166,7 @@ export const UserConfigSchema = z
166
166
  ollama: AiConfigSchema.optional(),
167
167
  openrouter: AiConfigSchema.optional(),
168
168
  wandb: AiConfigSchema.optional(),
169
+ opencode_go: AiConfigSchema.optional(),
169
170
  open_ai_compatible: AiConfigSchema.optional(),
170
171
  azure: AiConfigSchema.optional(),
171
172
  bedrock: z
@@ -137,6 +137,7 @@ export const EditApp: React.FC<AppProps> = ({
137
137
  mode={viewState.mode}
138
138
  userConfig={userConfig}
139
139
  appConfig={appConfig}
140
+ hideControls={hideControls}
140
141
  />
141
142
  );
142
143
 
@@ -1 +0,0 @@
1
- import{t as e}from"./worker-D-EdLKct.js";var t=e(((e,t)=>{t.exports={}}));export default t();