@marimo-team/islands 0.20.5-dev70 → 0.20.5-dev75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ConnectedDataExplorerComponent-DzTQ52Zs.js → ConnectedDataExplorerComponent-pQ4sWAoT.js} +3 -3
- package/dist/assets/__vite-browser-external-Us1ds95c.js +1 -0
- package/dist/assets/{worker-DUYMdbtA.js → worker-D10K3OOz.js} +2 -2
- package/dist/{glide-data-editor-DAqhWGKz.js → glide-data-editor-DqxJOnJk.js} +2 -2
- package/dist/main.js +46 -25
- package/dist/{mermaid-m5QS9ELR.js → mermaid-DkdSmFY8.js} +2 -2
- package/dist/{spec-DOGtAWuU.js → spec-CbYkiXG3.js} +1 -1
- package/dist/{types-Dzga1074.js → types-0FB-N7AA.js} +1 -1
- package/dist/{useAsyncData-BlSPOmJU.js → useAsyncData-D7-oahg5.js} +1 -1
- package/dist/{useDeepCompareMemoize-CpGehmfj.js → useDeepCompareMemoize-DLS-bHHT.js} +1 -1
- package/dist/{useTheme-BAtPEkUJ.js → useTheme-D0rdoMBF.js} +2 -1
- package/dist/{vega-component-0KINBNtd.js → vega-component-D2knjGgv.js} +3 -3
- package/package.json +1 -1
- package/src/components/editor/connections/storage/as-code.ts +1 -1
- package/src/components/storage/storage-inspector.tsx +1 -1
- package/src/core/cells/ids.ts +2 -1
- package/src/core/config/__tests__/config-schema.test.ts +6 -2
- package/src/core/config/config-schema.ts +1 -0
- package/src/core/config/feature-flag.tsx +1 -1
- package/src/core/dom/ui-element-constants.ts +15 -0
- package/src/core/dom/ui-element.ts +3 -2
- package/src/core/islands/components/web-components.tsx +2 -1
- package/src/plugins/impl/DataTablePlugin.tsx +53 -3
- package/src/plugins/impl/FileBrowserPlugin.tsx +4 -1
- package/src/plugins/impl/anywidget/AnyWidgetPlugin.tsx +4 -1
- package/dist/assets/__vite-browser-external-WSlCcXn_.js +0 -1
|
@@ -2,7 +2,7 @@ import { a as __toCommonJS, n as __esmMin, r as __export, s as __toESM, t as __c
|
|
|
2
2
|
import { t as require_react } from "./react-Bs6Z0kvn.js";
|
|
3
3
|
import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
4
4
|
import { l as createLucideIcon } from "./dist-WIWVvdBh.js";
|
|
5
|
-
import { A as useOnMount, F as $896ba0a80a8f4d36$export$85fd5fdf27bacc79, H as ListFilter, K as Calendar, M as Badge, N as createReducerAndAtoms, P as startCase_default, R as Type, U as Hash, V as SquareFunction, t as augmentSpecWithData, z as ToggleLeft } from "./spec-
|
|
5
|
+
import { A as useOnMount, F as $896ba0a80a8f4d36$export$85fd5fdf27bacc79, H as ListFilter, K as Calendar, M as Badge, N as createReducerAndAtoms, P as startCase_default, R as Type, U as Hash, V as SquareFunction, t as augmentSpecWithData, z as ToggleLeft } from "./spec-CbYkiXG3.js";
|
|
6
6
|
import { A 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 Label, u as SelectValue } from "./label-BLDcDYdI.js";
|
|
7
7
|
import { d as Objects, g as Logger, t as Button, y as cn } from "./button-DQpBib29.js";
|
|
8
8
|
import "./Combination-Dk6JxauT.js";
|
|
@@ -10,12 +10,12 @@ import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
|
10
10
|
import "./react-dom-CqtLRVZP.js";
|
|
11
11
|
import { t as Tooltip } from "./tooltip-SPkubVH3.js";
|
|
12
12
|
import { t as isString_default } from "./isString-D-vNYDBA.js";
|
|
13
|
-
import { b as createStore, g as useAtomValue, m as Provider, n as useTheme, y as atom } from "./useTheme-
|
|
13
|
+
import { b as createStore, g as useAtomValue, m as Provider, n as useTheme, y as atom } from "./useTheme-D0rdoMBF.js";
|
|
14
14
|
import { a as tooltipHandler, n as vegaLoadData } from "./loader-DsE3MiYo.js";
|
|
15
15
|
import { t as invariant } from "./invariant-D9QLJ4SZ.js";
|
|
16
16
|
import { n as ErrorBanner } from "./error-banner-BctofTCP.js";
|
|
17
17
|
import "./vega-loader.browser-CQ-lnUkI.js";
|
|
18
|
-
import { t as useAsyncData } from "./useAsyncData-
|
|
18
|
+
import { t as useAsyncData } from "./useAsyncData-D7-oahg5.js";
|
|
19
19
|
import { n as q, r as contains } from "./react-vega-C6kwcd86.js";
|
|
20
20
|
import "./defaultLocale-Bklbu-Tp.js";
|
|
21
21
|
import "./defaultLocale-CfQ4kBaV.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./worker-D10K3OOz.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-WSlCcXn_.js`).then(l(1))).default,xe=await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1)),Se=await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1)),be=(await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1))).default,ye=await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1)),De=ye.sep,typeof oe<`u`))return;let e={fs:xe,crypto:await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1)),ws:await import(`./__vite-browser-external-WSlCcXn_.js`).then(l(1)),child_process:await import(`./__vite-browser-external-WSlCcXn_.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-WSlCcXn_.js`).then(l(1));return(await import(`./__vite-browser-external-WSlCcXn_.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-Us1ds95c.js`).then(l(1))).default,xe=await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1)),Se=await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1)),be=(await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1))).default,ye=await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1)),De=ye.sep,typeof oe<`u`))return;let e={fs:xe,crypto:await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1)),ws:await import(`./__vite-browser-external-Us1ds95c.js`).then(l(1)),child_process:await import(`./__vite-browser-external-Us1ds95c.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-Us1ds95c.js`).then(l(1));return(await import(`./__vite-browser-external-Us1ds95c.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&>.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([])}).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([])}).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(),storage_inspector:q().prefault(!0)}).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,12 +6,12 @@ import { t as require_react } from "./react-Bs6Z0kvn.js";
|
|
|
6
6
|
import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
7
7
|
import { n as Copy, r as toast, t as copyToClipboard } from "./copy-BkBF0Xgk.js";
|
|
8
8
|
import { O as logNever, i as SelectContent, l as SelectTrigger, o as SelectItem, r as Select, t as Label, u as SelectValue } from "./label-BLDcDYdI.js";
|
|
9
|
-
import { H as ErrorBoundary, U as require_prop_types, _ as DropdownMenuSeparator, _n as Plus, _t as capitalize_default, b as DropdownMenuSubTrigger, d as DropdownMenu, f as DropdownMenuContent, g as DropdownMenuPortal, hn as Trash, i as Input, m as DropdownMenuItem, mt as marked, pt as useNonce, t as BulkEdit, v as DropdownMenuSub, vn as Pencil, y as DropdownMenuSubContent } from "./types-
|
|
9
|
+
import { H as ErrorBoundary, U as require_prop_types, _ as DropdownMenuSeparator, _n as Plus, _t as capitalize_default, b as DropdownMenuSubTrigger, d as DropdownMenu, f as DropdownMenuContent, g as DropdownMenuPortal, hn as Trash, i as Input, m as DropdownMenuItem, mt as marked, pt as useNonce, t as BulkEdit, v as DropdownMenuSub, vn as Pencil, y as DropdownMenuSubContent } from "./types-0FB-N7AA.js";
|
|
10
10
|
import { g as Logger, h as Events, t as Button } from "./button-DQpBib29.js";
|
|
11
11
|
import "./Combination-Dk6JxauT.js";
|
|
12
12
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
13
13
|
import "./react-dom-CqtLRVZP.js";
|
|
14
|
-
import { C as useEvent_default, n as useTheme } from "./useTheme-
|
|
14
|
+
import { C as useEvent_default, n as useTheme } from "./useTheme-D0rdoMBF.js";
|
|
15
15
|
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-CKfwEZqH.js";
|
|
16
16
|
import { t as styled_default } from "./dist-COpDrwi-.js";
|
|
17
17
|
let GlideDataEditor, glide_data_editor_default;
|
package/dist/main.js
CHANGED
|
@@ -23,11 +23,11 @@ import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
|
23
23
|
import { n as Copy, r as toast, t as copyToClipboard } from "./copy-BkBF0Xgk.js";
|
|
24
24
|
import { _ as require_cjs$1, c as markdownLineEnding, d as SKIP, f as visitParents, g as s$2, h as h$1, l as longestStreak, m as webNamespaces, o as xn$1, p as convert$1, s as factorySpace, u as ok, __tla as __tla_0 } from "./chunk-5FQGJX7Z-BkzUmppO.js";
|
|
25
25
|
import { a as Content$3, c as useSize, i as Arrow, l as createLucideIcon, o as Root2$6, r as Anchor, s as createPopperScope, t as Root$5 } from "./dist-WIWVvdBh.js";
|
|
26
|
-
import { A as useOnMount, B as Table$1, C as DEFAULT_COLOR_SCHEME, D as SCALE_TYPE_DESCRIPTIONS, E as EMPTY_VALUE$1, F as $896ba0a80a8f4d36$export$85fd5fdf27bacc79, G as ChartColumn, H as ListFilter, I as $fb18d541ea1ad717$export$ad991b66133851cf, K as Calendar, L as $5a387cc49350e6db$export$722debc0e56fea39, M as Badge, N as createReducerAndAtoms, O as TIME_UNIT_DESCRIPTIONS, P as startCase_default, R as Type, S as DEFAULT_AGGREGATION, T as DEFAULT_TIME_UNIT, U as Hash, V as SquareFunction, W as ChartPie, _ 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 useOnUnmount, 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, z as ToggleLeft } from "./spec-
|
|
26
|
+
import { A as useOnMount, B as Table$1, C as DEFAULT_COLOR_SCHEME, D as SCALE_TYPE_DESCRIPTIONS, E as EMPTY_VALUE$1, F as $896ba0a80a8f4d36$export$85fd5fdf27bacc79, G as ChartColumn, H as ListFilter, I as $fb18d541ea1ad717$export$ad991b66133851cf, K as Calendar, L as $5a387cc49350e6db$export$722debc0e56fea39, M as Badge, N as createReducerAndAtoms, O as TIME_UNIT_DESCRIPTIONS, P as startCase_default, R as Type, S as DEFAULT_AGGREGATION, T as DEFAULT_TIME_UNIT, U as Hash, V as SquareFunction, W as ChartPie, _ 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 useOnUnmount, 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, z as ToggleLeft } from "./spec-CbYkiXG3.js";
|
|
27
27
|
import { t as Check } from "./check-DpqPQmzz.js";
|
|
28
28
|
import { A as $a916eb452884faea$export$b7a616150fdb9f44, C as useDirection, D as assertNever, E as usePrevious$1, I as X, M as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7, N as $18f2051aff69b9bf$export$a54013f0d02a8f82, O as logNever, P as $b5e257d569688ac6$export$535bd6ca7f90a273, R as ChevronDown, S as Trigger$5, T as clamp$2, _ as menuItemVariants, a as SelectGroup, b as menuSubTriggerVariants, c as SelectSeparator, d as NativeSelect, f as selectStyles, g as menuControlVariants, h as menuControlCheckVariants, i as SelectContent, j as $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5, l as SelectTrigger, m as menuContentCommon, n as Primitive$1, o as SelectItem, p as MENU_ITEM_DISABLED, r as Select, s as SelectLabel, t as Label, u as SelectValue, v as menuLabelVariants, w as createCollection, x as Icon, y as menuSeparatorVariants } from "./label-BLDcDYdI.js";
|
|
29
|
-
import { $ as $d2b4bc8c273e7be6$export$24d547caef80ccd1, $t as $c87311424ea30a05$export$a11b0059900ceec8, A as Portal$2, At as $fca6afa0e843324b$export$87b761675e8eaa10, B as Root$6, Bt as $ae1eeba8b9eafd08$export$5165eccb35aaadb5, C as Arrow2, Ct as $e5be200c675c3b3a$export$aca958c65c314e6c, D as Item2$2, Dt as $f7dceffc5ad7768b$export$4e328f61c538687f, E as Group$1, Et as $319e236875307eab$export$a9b970dcc4ae71a9, F as Sub, Ft as $9ab94262bd0047c7$export$420e68273165f4ec, G as $3985021b0ad6602f$export$f5b8910cec6cf069, Gt as $99facab73266f662$export$5add1d006293d136, H as ErrorBoundary, Ht as $458b0a5536c1a7cf$export$40bfa8c7b0832715, I as SubContent, It as $3ad3f6e1647bc98d$export$80f3e147d781571c, J as $d3e0e05bdfcf66bd$export$c24727297075ec6a, Jt as $df56164dff5785e2$export$4338b53315abf666, K as $a049562f99e7db0e$export$eb2fcfdbd7ba97d4, Kt as $e9faafb641e167db$export$90fc3a17d93f704c, L as SubTrigger, Lt as $507fabe10e71c6fb$export$630ff653c5ada6a9, M as RadioItem, Mt as $6db58dc88e78b024$export$2f817fcdc4b89ae0, N as Root3, Nt as $5b160d28a433310d$export$c17fa47878dc55b6, O as ItemIndicator, Ot as $701a24aa0da5b062$export$ea18c227d4417cc3, P as Separator, Pt as $6179b936705e76d3$export$ae780daf29e6d456, Q as $514c0188e459b4c0$export$9afb8bc826b033ea, Qt as $c87311424ea30a05$export$9ac100e40613ea10, R as createMenuScope, Rt as $f6c31cce2adf654f$export$45712eceda6fad21, S as Anchor2, St as $e5be200c675c3b3a$export$a763b9476acd3eb, T as Content2$3, Tt as $e5be200c675c3b3a$export$fc1a364ae1f3ff10, U as require_prop_types, Ut as $b4b717babfbb907b$export$4c063cf1350e6fed, V as createRovingFocusGroupScope, Vt as $9446cca9a3875146$export$7d15b64cf5a3a4c4, W as $3985021b0ad6602f$export$37fb8590cf2c088c, Wt as $b4b717babfbb907b$export$bebd5a1431fec25d, X as $ee014567cb39d3f0$export$ff05c3ac10437e03, Xt as $c87311424ea30a05$export$6446a186d09e379e, Y as $ee014567cb39d3f0$export$f551688fc98f2e09, Yt as $313b98861ee5dd6c$export$d6875122194c7b44, Z as $514c0188e459b4c0$export$5f1af8db9871e1d6, Zt as $c87311424ea30a05$export$78551043582a6a98, _ as DropdownMenuSeparator, _n as Plus, _t as capitalize_default, a as OnBlurredInput, an as $d4ee10de306f2510$export$b4f377a2b6254582, at as $64fa3d84918910a7$export$29f1550f4b0d4415, b as DropdownMenuSubTrigger, bn as ChevronRight, bt as $e93e671b31057976$export$b8473d3665f3a75a, c as prettyEngineeringNumber, cn as $f4e2df6bd15f8569$export$98658e8c59125e6a, ct as $64fa3d84918910a7$export$c245e6201fed2f75, d as DropdownMenu, dn as $ff5963eb1fccf552$export$e08e3b67e392101e, dt as $64fa3d84918910a7$export$ef03459518577ad4, en as $c87311424ea30a05$export$fedb369cb70207f1, et as $d2b4bc8c273e7be6$export$353f5b6fc5456de1, f as DropdownMenuContent, fn as $bdb11010cef70236$export$b4cc09c592e8fdb8, ft as $64fa3d84918910a7$export$fabf2dc03a41866e, g as DropdownMenuPortal, gn as Search, gt as useDebouncedCallback, h as DropdownMenuLabel, hn as Trash, ht as useDebounceControlledState, i as Input, in as $d4ee10de306f2510$export$4282f70798064fe0, it as $64fa3d84918910a7$export$2881499e37b75b9a, j as RadioGroup$2, jt as $fca6afa0e843324b$export$f12b703ca79dfbb1, k as Label$2, kt as $6c7bd7858deea686$export$cd11ab140839f11d, l as prettyNumber, ln as $431fbd86ca7dc216$export$b204af158042fbac, lt as $64fa3d84918910a7$export$c62b8e45d58ddad9, m as DropdownMenuItem, mn as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, mt as marked, n as DebouncedInput, nn as $65484d02dcb7eb3e$export$457c3d6518dd4c6f, nt as $01b77f81d0f07f68$export$b04be29aa201d4f5, o as NumberField, on as $d4ee10de306f2510$export$cd4e5573fbe2b576, ot as $64fa3d84918910a7$export$4d86445c2cf5e3, p as DropdownMenuGroup, pn as $bdb11010cef70236$export$f680877a34711e37, pt as useNonce, q as $a049562f99e7db0e$export$f9c6924e160136d1, qt as $8ae05eaa5c114e9c$export$7f54fc3180508a52, r as DebouncedNumberInput, rn as $3ef42575df84b30b$export$9d1611c77c2fe928, rt as $f39a9eba43920ace$export$b5d7cc18bb8d2b59, s as maxFractionalDigits, sn as $d4ee10de306f2510$export$e58f029f0fbfdb29, st as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8, t as BulkEdit, tn as $7215afc6de606d6b$export$de79e2c695e052f3, tt as $01b77f81d0f07f68$export$75b6ee27786ba447, u as prettyScientificNumber, un as $431fbd86ca7dc216$export$f21a1ffae260145a, ut as $64fa3d84918910a7$export$df3a06d6289f983e, v as DropdownMenuSub, vn as Pencil, vt as $d2e8511e6f209edf$export$e908e06f4b8e3402, w as CheckboxItem, wt as $e5be200c675c3b3a$export$dad6ae84456c676a, x as DropdownMenuTrigger, xt as $e5be200c675c3b3a$export$75ee7c75d68f5b0e, y as DropdownMenuSubContent, yn as Circle, yt as $2baaea4c71418dea$export$294aa081a6c6f55d, z as Item$2, zt as _class_private_field_init } from "./types-
|
|
30
|
-
import { S as CircleQuestionMark, _ as isUrl, a as AlertTitle, b as Deferred, c as constructFrom, d as millisecondsInMinute, f as millisecondsInSecond, g as appendQueryParams, h as getRuntimeManager, i as AlertDescription, l as millisecondsInDay, m as asRemoteURL, n as arrow, o as isValid$1, p as millisecondsInWeek, r as Alert, s as toDate, t as useDeepCompareMemoize, u as millisecondsInHour, v as require_cuid2, x as isWasm, y as waitForConnectionOpen } from "./useDeepCompareMemoize-
|
|
29
|
+
import { $ as $d2b4bc8c273e7be6$export$24d547caef80ccd1, $t as $c87311424ea30a05$export$a11b0059900ceec8, A as Portal$2, At as $fca6afa0e843324b$export$87b761675e8eaa10, B as Root$6, Bt as $ae1eeba8b9eafd08$export$5165eccb35aaadb5, C as Arrow2, Ct as $e5be200c675c3b3a$export$aca958c65c314e6c, D as Item2$2, Dt as $f7dceffc5ad7768b$export$4e328f61c538687f, E as Group$1, Et as $319e236875307eab$export$a9b970dcc4ae71a9, F as Sub, Ft as $9ab94262bd0047c7$export$420e68273165f4ec, G as $3985021b0ad6602f$export$f5b8910cec6cf069, Gt as $99facab73266f662$export$5add1d006293d136, H as ErrorBoundary, Ht as $458b0a5536c1a7cf$export$40bfa8c7b0832715, I as SubContent, It as $3ad3f6e1647bc98d$export$80f3e147d781571c, J as $d3e0e05bdfcf66bd$export$c24727297075ec6a, Jt as $df56164dff5785e2$export$4338b53315abf666, K as $a049562f99e7db0e$export$eb2fcfdbd7ba97d4, Kt as $e9faafb641e167db$export$90fc3a17d93f704c, L as SubTrigger, Lt as $507fabe10e71c6fb$export$630ff653c5ada6a9, M as RadioItem, Mt as $6db58dc88e78b024$export$2f817fcdc4b89ae0, N as Root3, Nt as $5b160d28a433310d$export$c17fa47878dc55b6, O as ItemIndicator, Ot as $701a24aa0da5b062$export$ea18c227d4417cc3, P as Separator, Pt as $6179b936705e76d3$export$ae780daf29e6d456, Q as $514c0188e459b4c0$export$9afb8bc826b033ea, Qt as $c87311424ea30a05$export$9ac100e40613ea10, R as createMenuScope, Rt as $f6c31cce2adf654f$export$45712eceda6fad21, S as Anchor2, St as $e5be200c675c3b3a$export$a763b9476acd3eb, T as Content2$3, Tt as $e5be200c675c3b3a$export$fc1a364ae1f3ff10, U as require_prop_types, Ut as $b4b717babfbb907b$export$4c063cf1350e6fed, V as createRovingFocusGroupScope, Vt as $9446cca9a3875146$export$7d15b64cf5a3a4c4, W as $3985021b0ad6602f$export$37fb8590cf2c088c, Wt as $b4b717babfbb907b$export$bebd5a1431fec25d, X as $ee014567cb39d3f0$export$ff05c3ac10437e03, Xt as $c87311424ea30a05$export$6446a186d09e379e, Y as $ee014567cb39d3f0$export$f551688fc98f2e09, Yt as $313b98861ee5dd6c$export$d6875122194c7b44, Z as $514c0188e459b4c0$export$5f1af8db9871e1d6, Zt as $c87311424ea30a05$export$78551043582a6a98, _ as DropdownMenuSeparator, _n as Plus, _t as capitalize_default, a as OnBlurredInput, an as $d4ee10de306f2510$export$b4f377a2b6254582, at as $64fa3d84918910a7$export$29f1550f4b0d4415, b as DropdownMenuSubTrigger, bn as ChevronRight, bt as $e93e671b31057976$export$b8473d3665f3a75a, c as prettyEngineeringNumber, cn as $f4e2df6bd15f8569$export$98658e8c59125e6a, ct as $64fa3d84918910a7$export$c245e6201fed2f75, d as DropdownMenu, dn as $ff5963eb1fccf552$export$e08e3b67e392101e, dt as $64fa3d84918910a7$export$ef03459518577ad4, en as $c87311424ea30a05$export$fedb369cb70207f1, et as $d2b4bc8c273e7be6$export$353f5b6fc5456de1, f as DropdownMenuContent, fn as $bdb11010cef70236$export$b4cc09c592e8fdb8, ft as $64fa3d84918910a7$export$fabf2dc03a41866e, g as DropdownMenuPortal, gn as Search, gt as useDebouncedCallback, h as DropdownMenuLabel, hn as Trash, ht as useDebounceControlledState, i as Input, in as $d4ee10de306f2510$export$4282f70798064fe0, it as $64fa3d84918910a7$export$2881499e37b75b9a, j as RadioGroup$2, jt as $fca6afa0e843324b$export$f12b703ca79dfbb1, k as Label$2, kt as $6c7bd7858deea686$export$cd11ab140839f11d, l as prettyNumber, ln as $431fbd86ca7dc216$export$b204af158042fbac, lt as $64fa3d84918910a7$export$c62b8e45d58ddad9, m as DropdownMenuItem, mn as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c, mt as marked, n as DebouncedInput, nn as $65484d02dcb7eb3e$export$457c3d6518dd4c6f, nt as $01b77f81d0f07f68$export$b04be29aa201d4f5, o as NumberField, on as $d4ee10de306f2510$export$cd4e5573fbe2b576, ot as $64fa3d84918910a7$export$4d86445c2cf5e3, p as DropdownMenuGroup, pn as $bdb11010cef70236$export$f680877a34711e37, pt as useNonce, q as $a049562f99e7db0e$export$f9c6924e160136d1, qt as $8ae05eaa5c114e9c$export$7f54fc3180508a52, r as DebouncedNumberInput, rn as $3ef42575df84b30b$export$9d1611c77c2fe928, rt as $f39a9eba43920ace$export$b5d7cc18bb8d2b59, s as maxFractionalDigits, sn as $d4ee10de306f2510$export$e58f029f0fbfdb29, st as $64fa3d84918910a7$export$9d4c57ee4c6ffdd8, t as BulkEdit, tn as $7215afc6de606d6b$export$de79e2c695e052f3, tt as $01b77f81d0f07f68$export$75b6ee27786ba447, u as prettyScientificNumber, un as $431fbd86ca7dc216$export$f21a1ffae260145a, ut as $64fa3d84918910a7$export$df3a06d6289f983e, v as DropdownMenuSub, vn as Pencil, vt as $d2e8511e6f209edf$export$e908e06f4b8e3402, w as CheckboxItem, wt as $e5be200c675c3b3a$export$dad6ae84456c676a, x as DropdownMenuTrigger, xt as $e5be200c675c3b3a$export$75ee7c75d68f5b0e, y as DropdownMenuSubContent, yn as Circle, yt as $2baaea4c71418dea$export$294aa081a6c6f55d, z as Item$2, zt as _class_private_field_init } from "./types-0FB-N7AA.js";
|
|
30
|
+
import { S as CircleQuestionMark, _ as isUrl, a as AlertTitle, b as Deferred, c as constructFrom, d as millisecondsInMinute, f as millisecondsInSecond, g as appendQueryParams, h as getRuntimeManager, i as AlertDescription, l as millisecondsInDay, m as asRemoteURL, n as arrow, o as isValid$1, p as millisecondsInWeek, r as Alert, s as toDate, t as useDeepCompareMemoize, u as millisecondsInHour, v as require_cuid2, x as isWasm, y as waitForConnectionOpen } from "./useDeepCompareMemoize-DLS-bHHT.js";
|
|
31
31
|
import { n as clsx_default } from "./clsx-D2KVTYnW.js";
|
|
32
32
|
import { _ as Functions, a as cva, c as isPlatformMac, d as Objects, f as useEventListener, g as Logger, h as Events, l as parseShortcut, m as useComposedRefs, n as buttonVariants, o as NOT_SET, p as composeRefs, r as Slot$1, t as Button, v as throwNotImplemented, y as cn } from "./button-DQpBib29.js";
|
|
33
33
|
import { $ as __awaiter, A as custom, B as record, C as ZodUnion$1, D as any, E as _null, F as nan, G as unknown, H as string, I as never, J as toJSONSchema, K as safeParseAsync, L as number, M as lazy$4, N as literal, O as array, P as looseObject, Q as prettifyError, R as object$1, S as ZodType$1, T as _instanceof, U as tuple, V as strictObject, W as union, X as parseAsync, Y as parse$3, Z as $ZodError, _ as ZodLiteral$1, _t as createContextScope, a as zod_default, at as useControllableState, b as ZodOptional$1, c as string$1, ct as useId$12, d as ZodArray$1, dt as useCallbackRef, et as MAX_HEIGHT_OFFSET, f as ZodBoolean$1, ft as Primitive, g as ZodEnum$1, h as ZodDiscriminatedUnion$1, i as useFocusGuards, it as StyleNamespace, j as discriminatedUnion, k as boolean, l as ZodIssueCode$1, lt as useLayoutEffect2, m as ZodDefault$1, mt as createSlot, n as hideOthers, nt as withSmartCollisionBoundary, o as date, ot as Presence, p as ZodDate$1, pt as dispatchDiscreteCustomEvent, q as ZodError$1, r as FocusScope, rt as isInVscodeExtension, s as number$1, st as Portal, t as Combination_default, tt as withFullScreenAsRoot, u as ZodAny$1, ut as DismissableLayer, v as ZodNumber$1, vt as composeEventHandlers$1, w as _enum, x as ZodString$1, y as ZodObject$1, z as optional } from "./Combination-Dk6JxauT.js";
|
|
@@ -40,7 +40,7 @@ import { i as get_default } from "./hasIn-B9AbGLj3.js";
|
|
|
40
40
|
import { n as pick_default, t as range_default } from "./range-BKaWvVUE.js";
|
|
41
41
|
import { i as debounce_default, r as KnownQueryParams, t as CSSClasses } from "./constants-CytQ_3LM.js";
|
|
42
42
|
import { t as isEmpty_default } from "./isEmpty-C-xMag79.js";
|
|
43
|
-
import { C as useEvent_default, S as getBuildingBlocks, _ as useSetAtom, a as getResolvedMarimoConfig, c as AppConfigSchema, d as useJotaiEffect, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, l as createDeepEqualAtom, m as Provider, n as useTheme, o as localeAtom, p as isIslands, r as aiEnabledAtom, s as useResolvedMarimoConfig, t as resolvedThemeAtom, u as store, v as useStore, w as isEqual_default, x as buildStore, y as atom } from "./useTheme-
|
|
43
|
+
import { C as useEvent_default, S as getBuildingBlocks, _ as useSetAtom, a as getResolvedMarimoConfig, c as AppConfigSchema, d as useJotaiEffect, g as useAtomValue, h as useAtom, i as autoInstantiateAtom, l as createDeepEqualAtom, m as Provider, n as useTheme, o as localeAtom, p as isIslands, r as aiEnabledAtom, s as useResolvedMarimoConfig, t as resolvedThemeAtom, u as store, v as useStore, w as isEqual_default, x as buildStore, y as atom } from "./useTheme-D0rdoMBF.js";
|
|
44
44
|
import { a as tooltipHandler, n as vegaLoadData, r as createBatchedLoader, t as parseCsvData } from "./loader-DsE3MiYo.js";
|
|
45
45
|
import { $ as ViewPlugin, At as Prec, B as tags$1, Dt as EditorState, E as getIndentUnit, Et as EditorSelection, Ft as StateField, I as syntaxTree, It as Text$2, J as parseMixed, L as unfoldAll, Lt as Transaction, Ot as Facet$1, Pt as StateEffect, Q as GutterMarker, S as foldInside, Tt as Compartment, Y as Decoration, Z as EditorView, b as foldAll, dt as keymap, et as WidgetType, 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-DOoqn-VL.js";
|
|
46
46
|
import { t as invariant } from "./invariant-D9QLJ4SZ.js";
|
|
@@ -59,7 +59,7 @@ import { t as purify } from "./purify.es-DGenX2XH.js";
|
|
|
59
59
|
import { a as Portal$3, c as prettyError, i as Overlay, n as ErrorBanner, o as Root$7, r as Content$4, s as CellNotInitializedError, t as Banner } from "./error-banner-BctofTCP.js";
|
|
60
60
|
import { n as memoize$1, t as isPropValid } from "./emotion-is-prop-valid.esm-DtW2o230.js";
|
|
61
61
|
import { n as formats } from "./vega-loader.browser-CQ-lnUkI.js";
|
|
62
|
-
import { t as useAsyncData } from "./useAsyncData-
|
|
62
|
+
import { t as useAsyncData } from "./useAsyncData-D7-oahg5.js";
|
|
63
63
|
import "./defaultLocale-Bklbu-Tp.js";
|
|
64
64
|
import "./defaultLocale-CfQ4kBaV.js";
|
|
65
65
|
import { c as katex } from "./katex-Bk_FvVSR.js";
|
|
@@ -11701,6 +11701,7 @@ ${d.join("\n")}`;
|
|
|
11701
11701
|
function sanitizeBigInt(e) {
|
|
11702
11702
|
return typeof e == "object" && e && "$bigint" in e && typeof e.$bigint == "string" ? BigInt(e.$bigint) : e;
|
|
11703
11703
|
}
|
|
11704
|
+
const OBJECT_ID_ATTR = "object-id", RANDOM_ID_ATTR = "random-id";
|
|
11704
11705
|
var lowercase = "abcdefghijklmnopqrstuvwxyz", alphabet = lowercase + lowercase.toUpperCase(), seen = /* @__PURE__ */ new Set();
|
|
11705
11706
|
const SCRATCH_CELL_ID = "__scratch__", SETUP_CELL_ID = "setup", CellId = {
|
|
11706
11707
|
create() {
|
|
@@ -11740,7 +11741,7 @@ ${d.join("\n")}`;
|
|
|
11740
11741
|
}
|
|
11741
11742
|
const UIElementId = {
|
|
11742
11743
|
parse(e) {
|
|
11743
|
-
return e.getAttribute(
|
|
11744
|
+
return e.getAttribute(OBJECT_ID_ATTR);
|
|
11744
11745
|
},
|
|
11745
11746
|
parseOrThrow(e) {
|
|
11746
11747
|
let r = UIElementId.parse(e);
|
|
@@ -27084,7 +27085,7 @@ ${c.sqlString}
|
|
|
27084
27085
|
rtc_v2: false,
|
|
27085
27086
|
cache_panel: false,
|
|
27086
27087
|
external_agents: false,
|
|
27087
|
-
storage_inspector:
|
|
27088
|
+
storage_inspector: true
|
|
27088
27089
|
};
|
|
27089
27090
|
function getFeatureFlag(e) {
|
|
27090
27091
|
var _a3, _b5;
|
|
@@ -61588,7 +61589,7 @@ ${O}`,
|
|
|
61588
61589
|
}
|
|
61589
61590
|
static get observedAttributes() {
|
|
61590
61591
|
return [
|
|
61591
|
-
|
|
61592
|
+
RANDOM_ID_ATTR
|
|
61592
61593
|
];
|
|
61593
61594
|
}
|
|
61594
61595
|
attributeChangedCallback(e2, r, c) {
|
|
@@ -61969,7 +61970,7 @@ ${O}`,
|
|
|
61969
61970
|
}), r[7] = f2, r[8] = _2), _2;
|
|
61970
61971
|
}
|
|
61971
61972
|
let w;
|
|
61972
|
-
r[9] === e.host ? w = r[10] : (w = (_a3 = e.host.closest(
|
|
61973
|
+
r[9] === e.host ? w = r[10] : (w = (_a3 = e.host.closest(`[${RANDOM_ID_ATTR}]`)) == null ? void 0 : _a3.getAttribute(RANDOM_ID_ATTR), r[9] = e.host, r[10] = w);
|
|
61973
61974
|
let E = w ?? c, O;
|
|
61974
61975
|
return r[11] !== _ || r[12] !== y.default || r[13] !== E || r[14] !== f ? (O = (0, import_jsx_runtime.jsx)(LoadedSlot, {
|
|
61975
61976
|
widget: y.default,
|
|
@@ -70719,7 +70720,7 @@ Image URL: ${r.imageUrl}`)), contextToXml({
|
|
|
70719
70720
|
return Logger.warn("Failed to get version from mount config"), null;
|
|
70720
70721
|
}
|
|
70721
70722
|
}
|
|
70722
|
-
const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.20.5-
|
|
70723
|
+
const marimoVersionAtom = atom(getVersionFromMountConfig() || "0.20.5-dev75"), showCodeInRunModeAtom = atom(true);
|
|
70723
70724
|
atom(null);
|
|
70724
70725
|
var import_compiler_runtime$89 = require_compiler_runtime();
|
|
70725
70726
|
function useKeydownOnElement(e, r) {
|
|
@@ -72281,7 +72282,7 @@ Image URL: ${r.imageUrl}`)), contextToXml({
|
|
|
72281
72282
|
function getVegaFieldTypes(e) {
|
|
72282
72283
|
return !e || Object.keys(e).length === 0 ? "auto" : Objects.mapValues(e, (e2) => e2 === "date" || e2 === "time" ? "string" : e2 === "datetime" ? "date" : e2);
|
|
72283
72284
|
}
|
|
72284
|
-
var import_compiler_runtime$82 = require_compiler_runtime(), LazyDataEditor = import_react.lazy(() => import("./glide-data-editor-
|
|
72285
|
+
var import_compiler_runtime$82 = require_compiler_runtime(), LazyDataEditor = import_react.lazy(() => import("./glide-data-editor-DqxJOnJk.js").then(async (m2) => {
|
|
72285
72286
|
await m2.__tla;
|
|
72286
72287
|
return m2;
|
|
72287
72288
|
}));
|
|
@@ -81049,6 +81050,7 @@ ${c}
|
|
|
81049
81050
|
children: (0, import_jsx_runtime.jsx)(LazyDataTableComponent, {
|
|
81050
81051
|
isLazy: e.data.lazy,
|
|
81051
81052
|
preload: e.data.preload,
|
|
81053
|
+
host: e.host,
|
|
81052
81054
|
children: (0, import_jsx_runtime.jsx)(LoadingDataTableComponent, {
|
|
81053
81055
|
...e.data,
|
|
81054
81056
|
...e.functions,
|
|
@@ -81061,24 +81063,43 @@ ${c}
|
|
|
81061
81063
|
})
|
|
81062
81064
|
})
|
|
81063
81065
|
}));
|
|
81066
|
+
var previewedTables = /* @__PURE__ */ new Map();
|
|
81067
|
+
function wasTablePreviewed(e, r) {
|
|
81068
|
+
return e != null && r != null && previewedTables.get(e) === r;
|
|
81069
|
+
}
|
|
81070
|
+
function markTablePreviewed(e, r) {
|
|
81071
|
+
e != null && r != null && previewedTables.set(e, r);
|
|
81072
|
+
}
|
|
81064
81073
|
var LazyDataTableComponent = (e) => {
|
|
81065
|
-
|
|
81066
|
-
|
|
81074
|
+
var _a3;
|
|
81075
|
+
let r = (0, import_compiler_runtime$58.c)(13), { isLazy: c, children: d, preload: f, host: _ } = e, v, y, S, w;
|
|
81076
|
+
if (r[0] !== _ || r[1] !== c || r[2] !== f) {
|
|
81077
|
+
let e2 = _.closest(`[${OBJECT_ID_ATTR}]`);
|
|
81078
|
+
w = e2 ? UIElementId.parse(e2) : null, v = (_a3 = _.closest(`[${RANDOM_ID_ATTR}]`)) == null ? void 0 : _a3.getAttribute(RANDOM_ID_ATTR), y = import_react.useState, S = c && !f && !wasTablePreviewed(w, v), r[0] = _, r[1] = c, r[2] = f, r[3] = v, r[4] = y, r[5] = S, r[6] = w;
|
|
81079
|
+
} else v = r[3], y = r[4], S = r[5], w = r[6];
|
|
81080
|
+
let [E, O] = y(S);
|
|
81081
|
+
if (E) {
|
|
81067
81082
|
let e2;
|
|
81068
|
-
|
|
81083
|
+
r[7] !== v || r[8] !== w ? (e2 = () => {
|
|
81084
|
+
markTablePreviewed(w, v), O(false);
|
|
81085
|
+
}, r[7] = v, r[8] = w, r[9] = e2) : e2 = r[9];
|
|
81086
|
+
let c2;
|
|
81087
|
+
r[10] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (c2 = (0, import_jsx_runtime.jsx)(Table2, {
|
|
81088
|
+
className: "mr-2 h-4 w-4"
|
|
81089
|
+
}), r[10] = c2) : c2 = r[10];
|
|
81090
|
+
let d2;
|
|
81091
|
+
return r[11] === e2 ? d2 = r[12] : (d2 = (0, import_jsx_runtime.jsx)("div", {
|
|
81069
81092
|
className: "flex h-20 items-center justify-center",
|
|
81070
81093
|
children: (0, import_jsx_runtime.jsxs)(Button, {
|
|
81071
81094
|
variant: "outline",
|
|
81072
81095
|
size: "xs",
|
|
81073
|
-
onClick:
|
|
81096
|
+
onClick: e2,
|
|
81074
81097
|
children: [
|
|
81075
|
-
|
|
81076
|
-
className: "mr-2 h-4 w-4"
|
|
81077
|
-
}),
|
|
81098
|
+
c2,
|
|
81078
81099
|
"Preview data"
|
|
81079
81100
|
]
|
|
81080
81101
|
})
|
|
81081
|
-
}), r[
|
|
81102
|
+
}), r[11] = e2, r[12] = d2), d2;
|
|
81082
81103
|
}
|
|
81083
81104
|
return d;
|
|
81084
81105
|
};
|
|
@@ -82354,7 +82375,7 @@ ${c}
|
|
|
82354
82375
|
fullWidth: y,
|
|
82355
82376
|
children: G
|
|
82356
82377
|
}), r[19] = y, r[20] = S, r[21] = c, r[22] = G, r[23] = q) : q = r[23], q;
|
|
82357
|
-
}, LazyDataExplorerComponent = import_react.lazy(() => import("./ConnectedDataExplorerComponent-
|
|
82378
|
+
}, LazyDataExplorerComponent = import_react.lazy(() => import("./ConnectedDataExplorerComponent-pQ4sWAoT.js"));
|
|
82358
82379
|
const DataExplorerPlugin = createPlugin("marimo-data-explorer").withData(object$1({
|
|
82359
82380
|
label: string().nullish(),
|
|
82360
82381
|
data: string()
|
|
@@ -84467,7 +84488,7 @@ ${c}
|
|
|
84467
84488
|
var PARENT_DIRECTORY = "..";
|
|
84468
84489
|
const FileBrowser = ({ value: e, setValue: r, initialPath: c, selectionMode: d, multiple: f, label: _, restrictNavigation: v, list_directory: y, host: S }) => {
|
|
84469
84490
|
var _a3;
|
|
84470
|
-
let [E, O] = useInternalStateWithSync(c), [M, I] = (0, import_react.useState)("Select all"), [z, G] = (0, import_react.useState)(false), [q, IY] = (0, import_react.useState)(false), LY = (_a3 = S.closest(
|
|
84491
|
+
let [E, O] = useInternalStateWithSync(c), [M, I] = (0, import_react.useState)("Select all"), [z, G] = (0, import_react.useState)(false), [q, IY] = (0, import_react.useState)(false), LY = (_a3 = S.closest(`[${RANDOM_ID_ATTR}]`)) == null ? void 0 : _a3.getAttribute(RANDOM_ID_ATTR), { data: RY, error: zY, isPending: BY } = useAsyncData(() => y({
|
|
84471
84492
|
path: E
|
|
84472
84493
|
}), [
|
|
84473
84494
|
E,
|
|
@@ -93441,7 +93462,7 @@ ${c}
|
|
|
93441
93462
|
return true;
|
|
93442
93463
|
}
|
|
93443
93464
|
}
|
|
93444
|
-
var LazyVegaComponent = import_react.lazy(() => import("./vega-component-
|
|
93465
|
+
var LazyVegaComponent = import_react.lazy(() => import("./vega-component-D2knjGgv.js")), VegaPlugin = class {
|
|
93445
93466
|
constructor() {
|
|
93446
93467
|
__publicField(this, "tagName", "marimo-vega");
|
|
93447
93468
|
__publicField(this, "validator", object$1({
|
|
@@ -93764,7 +93785,7 @@ ${c}
|
|
|
93764
93785
|
diagram: e.data.diagram
|
|
93765
93786
|
});
|
|
93766
93787
|
}
|
|
93767
|
-
}, LazyMermaid = (0, import_react.lazy)(() => import("./mermaid-
|
|
93788
|
+
}, LazyMermaid = (0, import_react.lazy)(() => import("./mermaid-DkdSmFY8.js").then(async (m2) => {
|
|
93768
93789
|
await m2.__tla;
|
|
93769
93790
|
return m2;
|
|
93770
93791
|
})), import_compiler_runtime$18 = require_compiler_runtime();
|
|
@@ -101391,7 +101412,7 @@ ${c}
|
|
|
101391
101412
|
return extractIslandCodeFromEmbed(this);
|
|
101392
101413
|
}
|
|
101393
101414
|
connectedCallback() {
|
|
101394
|
-
let r = this.querySelectorOrThrow(_l2.outputTagName).innerHTML, c = this.getOptionalEditor(), d = this.code, f = c ? () => `${UI_ELEMENT_REGISTRY.lookupValue(c.props[
|
|
101415
|
+
let r = this.querySelectorOrThrow(_l2.outputTagName).innerHTML, c = this.getOptionalEditor(), d = this.code, f = c ? () => `${UI_ELEMENT_REGISTRY.lookupValue(c.props[OBJECT_ID_ATTR])}` : () => d;
|
|
101395
101416
|
this.root = import_client.createRoot(this), this.render(r, f, c);
|
|
101396
101417
|
}
|
|
101397
101418
|
render(e, r, c) {
|
|
@@ -101497,7 +101518,7 @@ ${r}
|
|
|
101497
101518
|
return c ? parseIslandEditor(c.dataset.initialValue) : "";
|
|
101498
101519
|
}
|
|
101499
101520
|
const islandsInitializedAtom = atom(false), userTriedToInteractWithIslandsAtom = atom(false), shouldShowIslandsWarningIndicatorAtom = atom((e) => e(userTriedToInteractWithIslandsAtom) && e(islandsInitializedAtom) === false);
|
|
101500
|
-
var worker_default = "/assets/worker-
|
|
101521
|
+
var worker_default = "/assets/worker-D10K3OOz.js", IslandsPyodideBridge = class e {
|
|
101501
101522
|
constructor() {
|
|
101502
101523
|
__publicField(this, "initialized", new Deferred());
|
|
101503
101524
|
__publicField(this, "sendComponentValues", async (e2) => (await this.putControlRequest({
|
|
@@ -6,10 +6,10 @@ import "./Combination-Dk6JxauT.js";
|
|
|
6
6
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
7
7
|
import "./react-dom-CqtLRVZP.js";
|
|
8
8
|
import { t as isEmpty_default } from "./isEmpty-C-xMag79.js";
|
|
9
|
-
import { n as useTheme } from "./useTheme-
|
|
9
|
+
import { n as useTheme } from "./useTheme-D0rdoMBF.js";
|
|
10
10
|
import { t as purify } from "./purify.es-DGenX2XH.js";
|
|
11
11
|
import { n as ErrorBanner } from "./error-banner-BctofTCP.js";
|
|
12
|
-
import { t as useAsyncData } from "./useAsyncData-
|
|
12
|
+
import { t as useAsyncData } from "./useAsyncData-D7-oahg5.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-BRT9vd1R.js";
|
|
14
14
|
import { a as setLogLevel, i as log, r as __name, t as select_default } from "./src-CHUphWwL.js";
|
|
15
15
|
import { t as package_default } from "./chunk-DR5Q36YT-D4q96vNV.js";
|
|
@@ -7,7 +7,7 @@ import { a as cva, g as Logger, y as cn } from "./button-DQpBib29.js";
|
|
|
7
7
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
8
8
|
import { t as toString_default } from "./toString-DbIAWQpF.js";
|
|
9
9
|
import { t as _arrayReduce_default } from "./_arrayReduce-BfFy684W.js";
|
|
10
|
-
import { _ as useSetAtom, y as atom } from "./useTheme-
|
|
10
|
+
import { _ as useSetAtom, y as atom } from "./useTheme-D0rdoMBF.js";
|
|
11
11
|
var AlignCenterVertical = createLucideIcon("align-center-vertical", [
|
|
12
12
|
["path", {
|
|
13
13
|
d: "M12 2v20",
|
|
@@ -15,7 +15,7 @@ import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
|
15
15
|
import { t as require_react_dom } from "./react-dom-CqtLRVZP.js";
|
|
16
16
|
import { t as toString_default } from "./toString-DbIAWQpF.js";
|
|
17
17
|
import { i as debounce_default, n as Constants } from "./constants-CytQ_3LM.js";
|
|
18
|
-
import { C as useEvent_default } from "./useTheme-
|
|
18
|
+
import { C as useEvent_default } from "./useTheme-D0rdoMBF.js";
|
|
19
19
|
import { t as memoizeLastValue } from "./once-BqS42WgZ.js";
|
|
20
20
|
var ChevronRight = createLucideIcon("chevron-right", [["path", {
|
|
21
21
|
d: "m9 18 6-6-6-6",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { s as __toESM } from "./chunk-BNovOVIE.js";
|
|
2
2
|
import { t as require_react } from "./react-Bs6Z0kvn.js";
|
|
3
3
|
import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
4
|
-
import { C as useEvent_default } from "./useTheme-
|
|
4
|
+
import { C as useEvent_default } from "./useTheme-D0rdoMBF.js";
|
|
5
5
|
import { t as invariant } from "./invariant-D9QLJ4SZ.js";
|
|
6
6
|
var import_compiler_runtime = require_compiler_runtime(), import_react = /* @__PURE__ */ __toESM(require_react(), 1), Result = {
|
|
7
7
|
error(e, s) {
|
|
@@ -8,7 +8,7 @@ import { l as createLucideIcon } from "./dist-WIWVvdBh.js";
|
|
|
8
8
|
import { a as cva, g as Logger, y as cn } from "./button-DQpBib29.js";
|
|
9
9
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
10
10
|
import { r as KnownQueryParams } from "./constants-CytQ_3LM.js";
|
|
11
|
-
import { f as waitFor, p as isIslands, u as store, y as atom } from "./useTheme-
|
|
11
|
+
import { f as waitFor, p as isIslands, u as store, y as atom } from "./useTheme-D0rdoMBF.js";
|
|
12
12
|
import { i as tableFromIPC } from "./loader-DsE3MiYo.js";
|
|
13
13
|
var CircleQuestionMark = createLucideIcon("circle-question-mark", [
|
|
14
14
|
["circle", {
|
|
@@ -594,7 +594,8 @@ const UserConfigSchema = looseObject({
|
|
|
594
594
|
}).prefault({}),
|
|
595
595
|
experimental: looseObject({
|
|
596
596
|
markdown: boolean().optional(),
|
|
597
|
-
rtc: boolean().optional()
|
|
597
|
+
rtc: boolean().optional(),
|
|
598
|
+
storage_inspector: boolean().prefault(true)
|
|
598
599
|
}).prefault(() => ({})),
|
|
599
600
|
server: looseObject({ disable_file_downloads: boolean().optional() }).prefault(() => ({})),
|
|
600
601
|
diagnostics: looseObject({
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { s as __toESM } from "./chunk-BNovOVIE.js";
|
|
2
2
|
import { t as require_react } from "./react-Bs6Z0kvn.js";
|
|
3
3
|
import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
4
|
-
import { S as CircleQuestionMark, a as AlertTitle, m as asRemoteURL, n as arrow, o as isValid, r as Alert, t as useDeepCompareMemoize } from "./useDeepCompareMemoize-
|
|
4
|
+
import { S as CircleQuestionMark, a as AlertTitle, m as asRemoteURL, n as arrow, o as isValid, r as Alert, t as useDeepCompareMemoize } from "./useDeepCompareMemoize-DLS-bHHT.js";
|
|
5
5
|
import { d as Objects, g as Logger, h as Events } from "./button-DQpBib29.js";
|
|
6
6
|
import "./Combination-Dk6JxauT.js";
|
|
7
7
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
8
8
|
import "./react-dom-CqtLRVZP.js";
|
|
9
9
|
import { t as Tooltip } from "./tooltip-SPkubVH3.js";
|
|
10
10
|
import { i as debounce_default } from "./constants-CytQ_3LM.js";
|
|
11
|
-
import { C as useEvent_default, n as useTheme } from "./useTheme-
|
|
11
|
+
import { C as useEvent_default, n as useTheme } from "./useTheme-D0rdoMBF.js";
|
|
12
12
|
import { a as tooltipHandler, n as vegaLoadData } from "./loader-DsE3MiYo.js";
|
|
13
13
|
import { t as uniq_default } from "./uniq-H2E5nMLq.js";
|
|
14
14
|
import { n as ErrorBanner } from "./error-banner-BctofTCP.js";
|
|
15
15
|
import { n as formats } from "./vega-loader.browser-CQ-lnUkI.js";
|
|
16
|
-
import { t as useAsyncData } from "./useAsyncData-
|
|
16
|
+
import { t as useAsyncData } from "./useAsyncData-D7-oahg5.js";
|
|
17
17
|
import { t as j } from "./react-vega-C6kwcd86.js";
|
|
18
18
|
import "./defaultLocale-Bklbu-Tp.js";
|
|
19
19
|
import "./defaultLocale-CfQ4kBaV.js";
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@ import { type StorageConnection, StorageConnectionSchema } from "./schemas";
|
|
|
8
8
|
export type StorageLibrary = "obstore" | "fsspec";
|
|
9
9
|
|
|
10
10
|
export const StorageLibraryDisplayNames: Record<StorageLibrary, string> = {
|
|
11
|
-
obstore: "
|
|
11
|
+
obstore: "obstore",
|
|
12
12
|
fsspec: "fsspec",
|
|
13
13
|
};
|
|
14
14
|
|
|
@@ -555,7 +555,7 @@ export const StorageInspector: React.FC = () => {
|
|
|
555
555
|
title="No storage connected"
|
|
556
556
|
description={
|
|
557
557
|
<span>
|
|
558
|
-
Create an
|
|
558
|
+
Create an obstore or fsspec connection in your notebook. See the{" "}
|
|
559
559
|
<a
|
|
560
560
|
className="text-link"
|
|
561
561
|
href="https://docs.marimo.io/guides/working_with_data/remote_storage/#quick-start"
|
package/src/core/cells/ids.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/* Copyright 2026 Marimo. All rights reserved. */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-redeclare */
|
|
3
3
|
|
|
4
|
+
import { OBJECT_ID_ATTR } from "@/core/dom/ui-element-constants";
|
|
4
5
|
import { invariant } from "@/utils/invariant";
|
|
5
6
|
import type { TypedString } from "../../utils/typed";
|
|
6
7
|
|
|
@@ -110,7 +111,7 @@ export function findCellId(element: HTMLElement): CellId | null {
|
|
|
110
111
|
export type UIElementId = `${CellId}-${string}`;
|
|
111
112
|
export const UIElementId = {
|
|
112
113
|
parse(element: Element): UIElementId | null {
|
|
113
|
-
return element.getAttribute(
|
|
114
|
+
return element.getAttribute(OBJECT_ID_ATTR) as UIElementId | null;
|
|
114
115
|
},
|
|
115
116
|
parseOrThrow(element: Element): UIElementId {
|
|
116
117
|
const id = UIElementId.parse(element);
|
|
@@ -70,7 +70,9 @@ test("default UserConfig - empty", () => {
|
|
|
70
70
|
"reference_highlighting": true,
|
|
71
71
|
"theme": "light",
|
|
72
72
|
},
|
|
73
|
-
"experimental": {
|
|
73
|
+
"experimental": {
|
|
74
|
+
"storage_inspector": true,
|
|
75
|
+
},
|
|
74
76
|
"formatting": {
|
|
75
77
|
"line_length": 79,
|
|
76
78
|
},
|
|
@@ -140,7 +142,9 @@ test("default UserConfig - one level", () => {
|
|
|
140
142
|
"reference_highlighting": true,
|
|
141
143
|
"theme": "light",
|
|
142
144
|
},
|
|
143
|
-
"experimental": {
|
|
145
|
+
"experimental": {
|
|
146
|
+
"storage_inspector": true,
|
|
147
|
+
},
|
|
144
148
|
"formatting": {
|
|
145
149
|
"line_length": 79,
|
|
146
150
|
},
|
|
@@ -186,6 +186,7 @@ export const UserConfigSchema = z
|
|
|
186
186
|
.looseObject({
|
|
187
187
|
markdown: z.boolean().optional(),
|
|
188
188
|
rtc: z.boolean().optional(),
|
|
189
|
+
storage_inspector: z.boolean().prefault(true),
|
|
189
190
|
// Add new experimental features here
|
|
190
191
|
})
|
|
191
192
|
// Pass through so that we don't remove any extra keys that the user has added.
|
|
@@ -21,7 +21,7 @@ const defaultValues: ExperimentalFeatures = {
|
|
|
21
21
|
rtc_v2: false,
|
|
22
22
|
cache_panel: false,
|
|
23
23
|
external_agents: import.meta.env.DEV,
|
|
24
|
-
storage_inspector:
|
|
24
|
+
storage_inspector: true,
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export function getFeatureFlag<T extends keyof ExperimentalFeatures>(
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/* Copyright 2026 Marimo. All rights reserved. */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Stable identifier for a UI element, deterministic across re-executions
|
|
5
|
+
* of the same cell (based on cell ID + creation order).
|
|
6
|
+
* Used to synchronize multiple instances and kernel state.
|
|
7
|
+
*/
|
|
8
|
+
export const OBJECT_ID_ATTR = "object-id";
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Random token that changes every time a UI element is constructed
|
|
12
|
+
* (i.e., every cell execution). Used to detect stale elements and
|
|
13
|
+
* force re-renders when a cell re-runs.
|
|
14
|
+
*/
|
|
15
|
+
export const RANDOM_ID_ATTR = "random-id";
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
MarimoValueInputEvent,
|
|
9
9
|
type MarimoValueInputEventType,
|
|
10
10
|
} from "./events";
|
|
11
|
+
import { RANDOM_ID_ATTR } from "./ui-element-constants";
|
|
11
12
|
import { UI_ELEMENT_REGISTRY } from "./uiregistry";
|
|
12
13
|
|
|
13
14
|
import "./ui-element.css";
|
|
@@ -189,7 +190,7 @@ export function initializeUIElement() {
|
|
|
189
190
|
// used like a React key. If the random-id changes, we need to unmount and
|
|
190
191
|
// remount its child.
|
|
191
192
|
static get observedAttributes() {
|
|
192
|
-
return [
|
|
193
|
+
return [RANDOM_ID_ATTR];
|
|
193
194
|
}
|
|
194
195
|
|
|
195
196
|
attributeChangedCallback(
|
|
@@ -199,7 +200,7 @@ export function initializeUIElement() {
|
|
|
199
200
|
) {
|
|
200
201
|
if (this.initialized) {
|
|
201
202
|
const hasChanged = oldValue !== newValue;
|
|
202
|
-
if (name ===
|
|
203
|
+
if (name === RANDOM_ID_ATTR && hasChanged) {
|
|
203
204
|
// deregister/clean-up this instance
|
|
204
205
|
this.disconnectedCallback();
|
|
205
206
|
// remove and re-add its child to force it to re-render; note that
|
|
@@ -6,6 +6,7 @@ import ReactDOM, { type Root } from "react-dom/client";
|
|
|
6
6
|
import { ErrorBoundary } from "@/components/editor/boundary/ErrorBoundary";
|
|
7
7
|
import { TooltipProvider } from "@/components/ui/tooltip";
|
|
8
8
|
import { notebookAtom } from "@/core/cells/cells";
|
|
9
|
+
import { OBJECT_ID_ATTR } from "@/core/dom/ui-element-constants";
|
|
9
10
|
import { UI_ELEMENT_REGISTRY } from "@/core/dom/uiregistry";
|
|
10
11
|
import { LocaleProvider } from "@/core/i18n/locale-provider";
|
|
11
12
|
import { renderHTML } from "@/plugins/core/RenderHTML";
|
|
@@ -60,7 +61,7 @@ export class MarimoIslandElement extends HTMLElement {
|
|
|
60
61
|
const codeCallback: () => string = optionalEditor
|
|
61
62
|
? () =>
|
|
62
63
|
`${UI_ELEMENT_REGISTRY.lookupValue(
|
|
63
|
-
optionalEditor.props[
|
|
64
|
+
optionalEditor.props[OBJECT_ID_ATTR],
|
|
64
65
|
)}`
|
|
65
66
|
: () => code;
|
|
66
67
|
|
|
@@ -60,7 +60,11 @@ import { ContextAwarePanelItem } from "@/components/editor/chrome/panels/context
|
|
|
60
60
|
import { Alert, AlertTitle } from "@/components/ui/alert";
|
|
61
61
|
import { Button } from "@/components/ui/button";
|
|
62
62
|
import { DelayMount } from "@/components/utils/delay-mount";
|
|
63
|
-
import { type CellId, findCellId } from "@/core/cells/ids";
|
|
63
|
+
import { type CellId, findCellId, UIElementId } from "@/core/cells/ids";
|
|
64
|
+
import {
|
|
65
|
+
OBJECT_ID_ATTR,
|
|
66
|
+
RANDOM_ID_ATTR,
|
|
67
|
+
} from "@/core/dom/ui-element-constants";
|
|
64
68
|
import { slotsController } from "@/core/slots/slots";
|
|
65
69
|
import { store } from "@/core/state/jotai";
|
|
66
70
|
import { isStaticNotebook } from "@/core/static/static-state";
|
|
@@ -361,6 +365,7 @@ export const DataTablePlugin = createPlugin<S>("marimo-table")
|
|
|
361
365
|
<LazyDataTableComponent
|
|
362
366
|
isLazy={props.data.lazy}
|
|
363
367
|
preload={props.data.preload}
|
|
368
|
+
host={props.host}
|
|
364
369
|
>
|
|
365
370
|
<LoadingDataTableComponent
|
|
366
371
|
{...props.data}
|
|
@@ -377,21 +382,66 @@ export const DataTablePlugin = createPlugin<S>("marimo-table")
|
|
|
377
382
|
);
|
|
378
383
|
});
|
|
379
384
|
|
|
385
|
+
/**
|
|
386
|
+
* Tracks which lazy tables have been previewed across remounts (e.g. tab switches).
|
|
387
|
+
* Keyed by uiElementId (stable across remounts) with randomId as value
|
|
388
|
+
* (changes on cell re-execution, so stale entries are naturally invalidated).
|
|
389
|
+
*/
|
|
390
|
+
const previewedTables = new Map<UIElementId, string>();
|
|
391
|
+
|
|
392
|
+
function wasTablePreviewed(
|
|
393
|
+
uiElementId: UIElementId | null | undefined,
|
|
394
|
+
randomId: string | null | undefined,
|
|
395
|
+
): boolean {
|
|
396
|
+
return (
|
|
397
|
+
uiElementId != null &&
|
|
398
|
+
randomId != null &&
|
|
399
|
+
previewedTables.get(uiElementId) === randomId
|
|
400
|
+
);
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
function markTablePreviewed(
|
|
404
|
+
uiElementId: UIElementId | null | undefined,
|
|
405
|
+
randomId: string | null | undefined,
|
|
406
|
+
): void {
|
|
407
|
+
if (uiElementId != null && randomId != null) {
|
|
408
|
+
previewedTables.set(uiElementId, randomId);
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
|
|
380
412
|
const LazyDataTableComponent = ({
|
|
381
413
|
isLazy: initialIsLazy,
|
|
382
414
|
children,
|
|
383
415
|
preload,
|
|
416
|
+
host,
|
|
384
417
|
}: {
|
|
385
418
|
isLazy: boolean;
|
|
386
419
|
children: React.ReactNode;
|
|
387
420
|
preload: boolean;
|
|
421
|
+
host: HTMLElement;
|
|
388
422
|
}) => {
|
|
389
|
-
const
|
|
423
|
+
const parentElement = host.closest(`[${OBJECT_ID_ATTR}]`);
|
|
424
|
+
const uiElementId = parentElement ? UIElementId.parse(parentElement) : null;
|
|
425
|
+
|
|
426
|
+
const randomId = host
|
|
427
|
+
.closest(`[${RANDOM_ID_ATTR}]`)
|
|
428
|
+
?.getAttribute(RANDOM_ID_ATTR);
|
|
429
|
+
|
|
430
|
+
const [isLazy, setIsLazy] = useState(
|
|
431
|
+
initialIsLazy && !preload && !wasTablePreviewed(uiElementId, randomId),
|
|
432
|
+
);
|
|
390
433
|
|
|
391
434
|
if (isLazy) {
|
|
392
435
|
return (
|
|
393
436
|
<div className="flex h-20 items-center justify-center">
|
|
394
|
-
<Button
|
|
437
|
+
<Button
|
|
438
|
+
variant="outline"
|
|
439
|
+
size="xs"
|
|
440
|
+
onClick={() => {
|
|
441
|
+
markTablePreviewed(uiElementId, randomId);
|
|
442
|
+
setIsLazy(false);
|
|
443
|
+
}}
|
|
444
|
+
>
|
|
395
445
|
<Table2Icon className="mr-2 h-4 w-4" />
|
|
396
446
|
Preview data
|
|
397
447
|
</Button>
|
|
@@ -15,6 +15,7 @@ import { Label } from "@/components/ui/label";
|
|
|
15
15
|
import { NativeSelect } from "@/components/ui/native-select";
|
|
16
16
|
import { Table, TableBody, TableCell, TableRow } from "@/components/ui/table";
|
|
17
17
|
import { toast } from "@/components/ui/use-toast";
|
|
18
|
+
import { RANDOM_ID_ATTR } from "@/core/dom/ui-element-constants";
|
|
18
19
|
import { useAsyncData } from "@/hooks/useAsyncData";
|
|
19
20
|
import { useInternalStateWithSync } from "@/hooks/useInternalStateWithSync";
|
|
20
21
|
import { cn } from "@/utils/cn";
|
|
@@ -150,7 +151,9 @@ export const FileBrowser = ({
|
|
|
150
151
|
|
|
151
152
|
// HACK: use the random-id of the host element to force a re-render
|
|
152
153
|
// when the random-id changes, this means the cell was re-rendered
|
|
153
|
-
const randomId = host
|
|
154
|
+
const randomId = host
|
|
155
|
+
.closest(`[${RANDOM_ID_ATTR}]`)
|
|
156
|
+
?.getAttribute(RANDOM_ID_ATTR);
|
|
154
157
|
|
|
155
158
|
const { data, error, isPending } = useAsyncData(() => {
|
|
156
159
|
return list_directory({ path: path });
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import type { AnyWidget } from "@anywidget/types";
|
|
5
5
|
import { useEffect, useRef } from "react";
|
|
6
6
|
import { z } from "zod";
|
|
7
|
+
import { RANDOM_ID_ATTR } from "@/core/dom/ui-element-constants";
|
|
7
8
|
import { useAsyncData } from "@/hooks/useAsyncData";
|
|
8
9
|
import type { HTMLElementNotDerivedFromRef } from "@/hooks/useEventListener";
|
|
9
10
|
import { createPlugin } from "@/plugins/core/builder";
|
|
@@ -145,7 +146,9 @@ const AnyWidgetSlot = (props: IPluginProps<ModelIdRef, Data>) => {
|
|
|
145
146
|
}
|
|
146
147
|
|
|
147
148
|
// Find the closest parent element with an attribute of `random-id`
|
|
148
|
-
const randomId = props.host
|
|
149
|
+
const randomId = props.host
|
|
150
|
+
.closest(`[${RANDOM_ID_ATTR}]`)
|
|
151
|
+
?.getAttribute(RANDOM_ID_ATTR);
|
|
149
152
|
const key = randomId ?? jsUrl;
|
|
150
153
|
|
|
151
154
|
return (
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./worker-DUYMdbtA.js";var t=e(((e,t)=>{t.exports={}}));export default t();
|