@marimo-team/frontend 0.25.3-dev52 → 0.25.3-dev57
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/assets/{CellStatus-RQxLjC9P.js → CellStatus-cD3S0wEA.js} +1 -1
- package/dist/assets/{ErrorBoundary-DzEMMFh0.js → ErrorBoundary-DJhsFCsX.js} +2 -2
- package/dist/assets/JsonOutput-Pm6OCP3J.js +11 -0
- package/dist/assets/{MarimoErrorOutput-BT8Qy5wh.js → MarimoErrorOutput-DlEjLCZ-.js} +1 -1
- package/dist/assets/{RenderHTML-PyMU3fBB.js → RenderHTML-CfQ6i3QV.js} +1 -1
- package/dist/assets/RunButton-DvuvkgrG.js +1 -0
- package/dist/assets/{add-cell-with-ai-CEQ8jvcR.js → add-cell-with-ai-BhmuohAY.js} +1 -1
- package/dist/assets/{add-connection-dialog-D9fnw-j0.js → add-connection-dialog-D7EYSraq.js} +1 -1
- package/dist/assets/{agent-panel-DkTYXm6j.js → agent-panel-GFhlWVub.js} +1 -1
- package/dist/assets/ai-model-dropdown-YT1HiXiK.js +13 -0
- package/dist/assets/{app-config-button-BZzwY1BU.js → app-config-button-C_whRVO8.js} +1 -1
- package/dist/assets/{blob-DmUUV8Xf.js → blob-e6VlOmQP.js} +1 -1
- package/dist/assets/{cell-editor-C6xeN3x0.js → cell-editor-3cVIcyHK.js} +2 -2
- package/dist/assets/{cell-link-BNDZZ97N.js → cell-link-DFqfW-Ym.js} +1 -1
- package/dist/assets/{cells-0e2dpq3z.js → cells-T9_Y4Jlv.js} +1 -1
- package/dist/assets/{chat-display-D6TNcsmz.js → chat-display-BtaARI-N.js} +1 -1
- package/dist/assets/{chat-panel-CN45Q9wF.js → chat-panel-eT2lfQrB.js} +1 -1
- package/dist/assets/chat-ui-nNFa2LdU.js +4 -0
- package/dist/assets/{column-preview-D7sTOokc.js → column-preview-C6uXRJry.js} +1 -1
- package/dist/assets/{command-palette-CP5KmR-S.js → command-palette-OZPTmtR-.js} +1 -1
- package/dist/assets/{common-GvwCMUGF.js → common-DeeLgjWQ.js} +1 -1
- package/dist/assets/{components-nnFZuekV.js → components-DyAF3_Nf.js} +1 -1
- package/dist/assets/{datasource-BpMPWJoj.js → datasource-gqFgG9Qd.js} +1 -1
- package/dist/assets/{dependency-graph-panel-lyJ3aygI.js → dependency-graph-panel-BFFxLgR6.js} +1 -1
- package/dist/assets/{documentation-panel-CTUWNQQy.js → documentation-panel-BBpGbT-f.js} +1 -1
- package/dist/assets/{download-Csw35OD4.js → download-C8Gw-D0Y.js} +1 -1
- package/dist/assets/{edit-page-Dwf3-IB6.js → edit-page-B0lN_Rib.js} +6 -6
- package/dist/assets/{error-entries-D3H6JH3A.js → error-entries-uyqOG5tg.js} +1 -1
- package/dist/assets/{error-panel-CgpCPUEO.js → error-panel-Cli5zPWi.js} +1 -1
- package/dist/assets/{feedback-button-BEBY1q2a.js → feedback-button-CvrwBGr7.js} +1 -1
- package/dist/assets/feedback-button-DknbRCN_.js +1 -0
- package/dist/assets/file-explorer-panel-BSU5ultY.js +1 -0
- package/dist/assets/{file-name-input-DrtIQ1VP.js → file-name-input-CDrRlIiX.js} +1 -1
- package/dist/assets/{floating-outline-Dtc8YhnE.js → floating-outline-GQD9km0W.js} +1 -1
- package/dist/assets/{gallery-page-DL4SSfun.js → gallery-page-CxmV1JLF.js} +1 -1
- package/dist/assets/{glide-data-editor-BTlU9F_s.js → glide-data-editor-B1kpoetH.js} +1 -1
- package/dist/assets/{home-page-BOmrrw3X.js → home-page-KnJyha6O.js} +1 -1
- package/dist/assets/{hooks-DRNEKPFW.js → hooks-w6zKs3CJ.js} +1 -1
- package/dist/assets/index-Bu8_lPMx.js +30 -0
- package/dist/assets/{input-ByHt6aoV.js → input-BZdRe7pb.js} +1 -1
- package/dist/assets/{layout-DY2TXsTM.js → layout-sYdHI-lW.js} +5 -5
- package/dist/assets/{logs-panel-9f0amGf0.js → logs-panel-CdUc5vtA.js} +1 -1
- package/dist/assets/{markdown-renderer-BRDCZeXA.js → markdown-renderer-pKc_bFac.js} +1 -1
- package/dist/assets/{name-cell-input-13mN6CiO.js → name-cell-input-csH3Cy54.js} +1 -1
- package/dist/assets/{outline-panel-DxC82nfD.js → outline-panel-DhsHYTuo.js} +1 -1
- package/dist/assets/packages-panel-lkNX6Oov.js +1 -0
- package/dist/assets/{panel-accordion-state-D_2i5aDC.js → panel-accordion-state-Bco6nsUI.js} +1 -1
- package/dist/assets/panels-B2UqDbHy.js +107 -0
- package/dist/assets/{process-output-DlZH3EId.js → process-output-B2-bT4cq.js} +1 -1
- package/dist/assets/{readonly-code-display-C8kpTYRT.js → readonly-code-display-Dsp6vWPh.js} +1 -1
- package/dist/assets/{readonly-python-code-XeDpkiXX.js → readonly-python-code-B81AjzXM.js} +1 -1
- package/dist/assets/{reveal-component-DgYlZOla.js → reveal-component-CrQRQhW4.js} +1 -1
- package/dist/assets/{run-page-C_A8W1eR.js → run-page-BGzpa3D9.js} +1 -1
- package/dist/assets/{runtime-details-state-BeyT-Z-4.js → runtime-details-state-CznIe40L.js} +1 -1
- package/dist/assets/{scratchpad-panel-Fb-8g4-S.js → scratchpad-panel-ClLxdqdK.js} +1 -1
- package/dist/assets/{secrets-panel-CmLZsNfp.js → secrets-panel-Dh3v7XPE.js} +1 -1
- package/dist/assets/{session-panel-Cl85FUT5.js → session-panel-C7-wmZhc.js} +1 -1
- package/dist/assets/{snippets-panel-1hl_ey1w.js → snippets-panel-BARpOPyS.js} +1 -1
- package/dist/assets/{state-CbjD81T1.js → state-BRYi026f.js} +1 -1
- package/dist/assets/{state-ClkxCKxQ.js → state-Bye6rCo4.js} +1 -1
- package/dist/assets/{switch-1h011wlH.js → switch-IoWE8PbW.js} +1 -1
- package/dist/assets/{terminal-D__Z_QZ0.js → terminal-Bhcn_y1N.js} +1 -1
- package/dist/assets/{tracing-DcFczEy0.js → tracing-BW2ZVnXs.js} +1 -1
- package/dist/assets/{tracing-panel-EWvfWPFQ.js → tracing-panel-UKdh_YXC.js} +2 -2
- package/dist/assets/{tree-actions-Dof5VISm.js → tree-actions-Cb-nUK1F.js} +1 -1
- package/dist/assets/{useAddCell-CqnFgwhm.js → useAddCell-Bielffe0.js} +1 -1
- package/dist/assets/{useCellActionButton--Sq8PDBs.js → useCellActionButton-Cu34Zs6x.js} +1 -1
- package/dist/assets/useDebounce-k9QTpQ9-.js +1 -0
- package/dist/assets/useDelayElapsed-BlsDT4TV.js +1 -0
- package/dist/assets/{useDeleteCell-DNTqIwU8.js → useDeleteCell-BV4VemCv.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-C4_EiuVH.js → useDependencyPanelTab-BEGqRiWi.js} +1 -1
- package/dist/assets/{useInstallPackage-DDjpV5RE.js → useInstallPackage-C7neMPwh.js} +1 -1
- package/dist/assets/{useNotebookActions-C00MOhyT.js → useNotebookActions-OLol05t9.js} +1 -1
- package/dist/assets/{useRunCells-DqLsZnRn.js → useRunCells-BFeZMi7f.js} +1 -1
- package/dist/assets/{useSplitCell-Daxc689Z.js → useSplitCell-DllkNFke.js} +1 -1
- package/dist/assets/useStateForKey-CGMJQT8x.js +1 -0
- package/dist/assets/{write-secret-modal-usRSi1bb.js → write-secret-modal-7DzehGyr.js} +1 -1
- package/dist/index.html +27 -25
- package/package.json +1 -1
- package/src/components/app-config/ai-config.tsx +1 -1
- package/src/components/data-table/__tests__/export-actions.test.tsx +17 -0
- package/src/components/data-table/charts/charts.tsx +14 -19
- package/src/components/data-table/export-actions.tsx +5 -3
- package/src/components/editor/actions/__tests__/pair-with-agent-modal.test.tsx +24 -0
- package/src/components/editor/actions/pair-with-agent-modal.tsx +18 -15
- package/src/components/editor/cell/__tests__/useShouldShowInterrupt.test.ts +39 -0
- package/src/components/editor/cell/useShouldShowInterrupt.ts +2 -12
- package/src/components/editor/chrome/panels/__tests__/packages-panel.test.tsx +30 -1
- package/src/components/editor/chrome/panels/packages-panel.tsx +4 -7
- package/src/components/editor/file-tree/__tests__/file-explorer-interactions.test.tsx +6 -0
- package/src/components/editor/file-tree/__tests__/use-file-search.test.tsx +91 -0
- package/src/components/editor/file-tree/file-explorer.tsx +10 -5
- package/src/components/editor/file-tree/use-file-search.ts +35 -21
- package/src/components/icons/__tests__/large-spinner.test.tsx +39 -0
- package/src/components/icons/large-spinner.tsx +3 -14
- package/src/core/network/useConnectionNotice.ts +8 -2
- package/src/hooks/__tests__/useDebounce.test.tsx +51 -0
- package/src/hooks/__tests__/useDeepCompareMemoize.test.tsx +39 -0
- package/src/hooks/__tests__/useDelayElapsed.test.tsx +28 -0
- package/src/hooks/__tests__/useInternalStateWithSync.test.tsx +20 -0
- package/src/hooks/__tests__/useScript.test.tsx +77 -0
- package/src/hooks/__tests__/useStateForKey.test.tsx +257 -0
- package/src/hooks/useDebounce.ts +5 -8
- package/src/hooks/useDeepCompareMemoize.ts +1 -1
- package/src/hooks/useDelayElapsed.ts +14 -10
- package/src/hooks/useInternalStateWithSync.ts +6 -6
- package/src/hooks/useScript.ts +67 -70
- package/src/hooks/useStateForKey.ts +93 -0
- package/src/plugins/impl/DataTablePlugin.tsx +14 -15
- package/src/plugins/impl/FileBrowserPlugin.tsx +4 -16
- package/src/plugins/impl/SliderPlugin.tsx +6 -8
- package/src/plugins/impl/__tests__/DataTablePlugin.test.tsx +117 -1
- package/src/plugins/impl/__tests__/FileBrowserPlugin.test.tsx +45 -0
- package/src/plugins/impl/__tests__/SliderPlugin.test.tsx +24 -3
- package/src/plugins/impl/chat/__tests__/chat-prompts.test.tsx +93 -0
- package/src/plugins/impl/chat/chat-ui.tsx +10 -9
- package/dist/assets/JsonOutput-9IONH7hu.js +0 -11
- package/dist/assets/RunButton-2p2uCp9U.js +0 -1
- package/dist/assets/ai-model-dropdown-Cv9fEAp9.js +0 -13
- package/dist/assets/chat-ui-BGl1jPPe.js +0 -4
- package/dist/assets/feedback-button-B8idT199.js +0 -1
- package/dist/assets/file-explorer-panel-MnNgzxxE.js +0 -1
- package/dist/assets/index-BdCbOYjS.js +0 -30
- package/dist/assets/packages-panel-Bi_mcFbl.js +0 -1
- package/dist/assets/panels-C-ygF1Rv.js +0 -107
- package/dist/assets/useDebounce-B_ccBZTp.js +0 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{r as e}from"./useEvent-Dfcbgjhg.js";import{$n as t,La as n,Pa as r,Qn as i,_o as a,oi as o,vo as s,x as c,za as l}from"./cells-
|
|
1
|
+
import{r as e}from"./useEvent-Dfcbgjhg.js";import{$n as t,La as n,Pa as r,Qn as i,_o as a,oi as o,vo as s,x as c,za as l}from"./cells-T9_Y4Jlv.js";import{t as u}from"./get-DjNf4SIX.js";import{t as d}from"./debounce-aFmHgJZY.js";import{E as f}from"./config-DGX7JYor.js";import{t as p}from"./_baseSet-Bpdo9AvU.js";import{g as m,v as h}from"./useEventListener-CjDeLqFC.js";import{t as g}from"./invariant-Ci2dTZ72.js";import{s as _}from"./config-CjQ4WJnJ.js";import{d as v,v as y}from"./session-B8Y-GJnS.js";import{N as ee,O as b,c as x,l as S,n as te}from"./config-DzdxZb17.js";import{c as ne,o as C}from"./state-DaWgt-rn.js";import{c as w,o as re}from"./markdown-renderer-pKc_bFac.js";import{w as ie}from"./write-secret-modal-7DzehGyr.js";import{t as ae}from"./use-toast-Wu434mLr.js";import{t as oe}from"./preload-helper-uBIymjUX.js";import{r as se}from"./strings-C25fhMR_.js";import{t as T}from"./requests-lt0JK8Jt.js";import{t as ce}from"./Deferred-CrTnjj37.js";import{t as le}from"./uuid-k9DpjH68.js";import{n as ue}from"./RenderHTML-CfQ6i3QV.js";import{t as de}from"./useRunCells-BFeZMi7f.js";import{r as fe,t as pe}from"./blob-e6VlOmQP.js";import{f as me}from"./useInstallPackage-C7neMPwh.js";import{n as he,t as ge}from"./share-BZW3tzEX.js";import{i as E,r as _e,t as ve}from"./events-CbeVJ6OD.js";function D(e,t,n){return e==null?e:p(e,t,n)}function O(e,t){if(e.origin===globalThis.origin)return new Worker(e.href,{...t,type:`module`});let n=`import ${JSON.stringify(e.href)}`,r=globalThis.origin===`null`?`data:application/javascript,${encodeURIComponent(n)}`:URL.createObjectURL(new Blob([n],{type:`application/javascript`}));try{return new Worker(r,{...t,type:`module`})}finally{r.startsWith(`blob:`)&&URL.revokeObjectURL(r)}}function k(e){return e.assetUrl,e}var A=class{subscriptions=new Map;addSubscription(e,t){this.subscriptions.has(e)||this.subscriptions.set(e,new Set),this.subscriptions.get(e)?.add(t)}removeSubscription(e,t){this.subscriptions.get(e)?.delete(t)}notify(e,t){for(let n of this.subscriptions.get(e)??[])n(t)}},j=class e{subscriptions=new A;producer;static withProducerCallback(t){return new e(t)}static empty(){return new e}constructor(e){this.producer=e}startProducer(){this.producer&&this.producer(e=>{this.subscriptions.notify(`message`,e)})}connect(){return new Promise(e=>setTimeout(e,0)).then(()=>{this.subscriptions.notify(`open`,new Event(`open`))})}get readyState(){return WebSocket.OPEN}reconnect(e,t){this.close(),this.connect()}close(){this.subscriptions.notify(`close`,new Event(`close`))}send(e){return this.subscriptions.notify(`message`,new MessageEvent(`message`,{data:e})),Promise.resolve()}addEventListener(e,t){this.subscriptions.addSubscription(e,t),e===`open`&&t(new Event(`open`)),e===`message`&&this.startProducer()}removeEventListener(e,t){this.subscriptions.removeSubscription(e,t)}},ye=1e10,be=1e3;function M(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 xe(e={}){let t={};function n(e){t=e}let r={};function i(e){r.unregisterHandler&&r.unregisterHandler(),r=e,r.registerHandler?.(x)}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=be}=e;e.transport&&i(e.transport),e.requestHandler&&o(e.requestHandler),e._debugHooks&&n(e._debugHooks);let c=0;function l(){return c<=ye?++c:c=0}let u=new Map,d=new Map;function f(e,...n){let i=n[0];return new Promise((n,a)=>{if(!r.send)throw M([`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 p=new Proxy(f,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>f(t,e)}),m=p;function h(e,...n){let i=n[0];if(!r.send)throw M([`send`],`send messages`);let a={type:`message`,id:e,payload:i};t.onSend?.(a),r.send(a)}let g=new Proxy(h,{get:(e,t,n)=>t in e?Reflect.get(e,t,n):e=>h(t,e)}),_=g,v=new Map,y=new Set;function ee(e,t){if(!r.registerHandler)throw M([`registerHandler`],`register message listeners`);if(e===`*`){y.add(t);return}v.has(e)||v.set(e,new Set),v.get(e)?.add(t)}function b(e,t){if(e===`*`){y.delete(t);return}v.get(e)?.delete(t),v.get(e)?.size===0&&v.delete(e)}async function x(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 M([`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 y)t(e.id,e.payload);let t=v.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:p,requestProxy:m,send:g,sendProxy:_,addMessageListener:ee,removeMessageListener:b,proxy:{send:_,request:m},_setDebugHooks:n}}function Se(e){return xe(e)}var N=`[transport-id]`;function Ce(e,t){let{transportId:n}=t;return n==null?e:{[N]:n,data:e}}function we(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[N]!==n)return[!0];a=e.data}return i===!1?[!0]:[!1,a]}function Te(e,t={}){let{transportId:n,filter:r,remotePort:i}=t,a=e,o=i??e,s;return{send(e){o.postMessage(Ce(e,{transportId:n}))},registerHandler(e){s=t=>{let i=t.data,[a,o]=we(i,{transportId:n,filter:()=>r?.(t)});a||e(o)},a.addEventListener(`message`,s)},unregisterHandler(){s&&a.removeEventListener(`message`,s)}}}function Ee(e,t){return Te(e,t)}var De=`::controller`,Oe=`marimo-transport`;function P(e){return Se({transport:Ee(e,{transportId:Oe}),maxRequestTime:2e4,_debugHooks:{onSend:e=>{m.debug(`[rpc] Parent -> Worker`,e)},onReceive:e=>{m.debug(`[rpc] Worker -> Parent`,e)}}})}function F(){let e=document.querySelector(`marimo-wasm`),t=e=>{try{return e?new URL(e,document.baseURI).href:void 0}catch{return}};return{version:ne(),pyodideIndexUrl:t(e?.dataset.pyodideIndexUrl),pyodideLockfileUrl:t(e?.dataset.pyodideLockfileUrl),pypiIndexUrl:t(e?.dataset.pypiIndexUrl)?.replaceAll(`%7Bpackage_name%7D`,`{package_name}`)}}var I=he(),L=`marimo:file`,R=new r(null),ke={saveFile(e){R.set(L,e)},readFile(){return R.get(L)}},Ae={saveFile(e){s.setCodeForHash((0,I.compressToEncodedURIComponent)(e))},readFile(){let e=s.getCodeFromHash()||s.getCodeFromSearchParam();return e?(0,I.decompressFromEncodedURIComponent)(e):null}},je={saveFile(e){},readFile(){let e=document.querySelector(`marimo-code`);return e?decodeURIComponent(e.textContent||``).trim():null}},Me={saveFile(e){},readFile(){if(window.location.hostname!==`marimo.app`)return null;let e=new URL(`export_demos/wasm-intro.py`,document.baseURI);return fetch(e.toString()).then(e=>e.ok?e.text():null).catch(()=>null)}},Ne={saveFile(e){},readFile(){return e.get(n)??null}},Pe={saveFile(e){},readFile(){return[`import marimo`,`app = marimo.App()`,``,`@app.cell`,`def __():`,` return`,``,`if __name__ == "__main__":`,` app.run()`].join(`
|
|
2
2
|
`)}},z=class{stores;constructor(e){this.stores=e}insert(e,t){this.stores.splice(e,0,t)}saveFile(e){this.stores.forEach(t=>t.saveFile(e))}readFile(){for(let e of this.stores){let t=e.readFile();if(t)return t}return null}},B=new z([Ne,je,Ae]),V=new z([ke,Me,Pe]),Fe=new URL(`save-worker-BbUSwZRG.js`,import.meta.url).href,Ie=new URL(`worker-DTQ7oH2A.js`,import.meta.url).href,H=class t{static get INSTANCE(){let e=`_marimo_private_PyodideBridge`;return window[e]||(window[e]=new t),window[e]}rpc;saveRpc;pendingSessionSave=Promise.resolve();interruptBuffer;messageConsumer;initialized=new ce;getSaveWorker(){if(v()===`read`)return m.debug(`Using partially disabled SaveWorker in read-mode`),{readFile:h,readNotebook:async()=>await B.readFile()??``,saveNotebook:h};let e=F(),t=P(O(new URL(Fe,import.meta.url),{name:Re()}));return t.send.bootstrap(e),t.proxy.request}constructor(){if(!ee())return;let t=F(),n=O(new URL(Ie,import.meta.url),{name:Re()});this.rpc=P(n),this.rpc.send.bootstrap(t),this.rpc.addMessageListener(`ready`,()=>{this.startSession()}),this.rpc.addMessageListener(`initialized`,()=>{this.saveRpc=this.getSaveWorker(),this.setInterruptBuffer(),e.set(C,{kind:`ready`}),this.initialized.resolve()}),this.rpc.addMessageListener(`initializingMessage`,({message:t})=>{e.get(C).kind===`loading`&&e.set(C,{kind:`loading`,message:t})}),this.rpc.addMessageListener(`initializedError`,({error:t})=>{if(this.initialized.status===`resolved`){m.error(t),ae({title:`Error initializing`,description:t,variant:`danger`});return}e.set(C,{kind:`error`,message:t}),this.initialized.reject(Error(t))}),this.rpc.addMessageListener(`kernelMessage`,({message:e})=>{this.messageConsumer?.(new MessageEvent(`message`,{data:e}))})}async startSession(){let t=await B.readFile(),n=await V.readFile(),r=e.get(l)??s.getFilename(),i=e.get(f),a={},o=new URLSearchParams(window.location.search);for(let e of o.keys()){let t=o.getAll(e);a[e]=t.length===1?t[0]:t}await this.rpc.proxy.request.startSession({queryParameters:a,code:t||n||``,filename:r,userConfig:{...i,runtime:{...i.runtime,auto_instantiate:v()===`read`||i.runtime.auto_instantiate}}})}setInterruptBuffer(){crossOriginIsolated?(this.interruptBuffer=new Uint8Array(new SharedArrayBuffer(1)),this.rpc.proxy.request.setInterruptBuffer(this.interruptBuffer)):m.warn(`Not running in a secure context; interrupts are not available.`)}attachMessageConsumer(e){this.messageConsumer=e,this.rpc.proxy.send.consumerReady({})}sendRename=async({filename:e})=>e===null?null:(s.setFilename(e),await this.rpc.proxy.request.bridge({functionName:`rename_file`,payload:e}),null);sendSave=async e=>{if(!this.saveRpc)return m.warn(`Save RPC not initialized`),null;let t=this.saveRpc.saveNotebook(e);this.pendingSessionSave=this.pendingSessionSave.catch(()=>void 0).then(async()=>{await t,await this.rpc.proxy.request.saveNotebook(e)}),this.pendingSessionSave.catch(e=>{m.error(e)}),await t;let n=await this.readCode();return n.contents&&(B.saveFile(n.contents),V.saveFile(n.contents)),null};sendCopy=async()=>{h()};sendStdin=async e=>(await this.rpc.proxy.request.bridge({functionName:`put_input`,payload:e.text}),null);sendPdb=async()=>{h()};sendSetBreakpoints=async()=>{h()};sendRun=async e=>(await this.rpc.proxy.request.loadPackages(e.codes.join(`
|
|
3
3
|
`)),await this.putControlRequest({type:`execute-cells`,...e}),null);sendRunScratchpad=async e=>(await this.rpc.proxy.request.loadPackages(e.code),await this.putControlRequest({type:`execute-scratchpad`,...e}),null);sendInterrupt=async()=>(this.interruptBuffer!==void 0&&(this.interruptBuffer[0]=2),null);sendShutdown=async()=>(window.close(),null);sendFormat=async e=>await this.rpc.proxy.request.bridge({functionName:`format`,payload:e});sendDeleteCell=async e=>(await this.putControlRequest({type:`delete-cell`,...e}),null);sendInstallMissingPackages=async e=>(this.putControlRequest({type:`install-packages`,...e}),null);sendCodeCompletionRequest=async t=>(e.get(c)||await this.rpc.proxy.request.bridge({functionName:`code_complete`,payload:t}),null);saveUserConfig=async e=>(await this.rpc.proxy.request.bridge({functionName:`save_user_config`,payload:e}),_.post(`/kernel/save_user_config`,e,{baseUrl:`/`}).catch(e=>(m.error(e),null)));saveAppConfig=async e=>(await this.rpc.proxy.request.bridge({functionName:`save_app_config`,payload:e}),null);saveCellConfig=async e=>(await this.putControlRequest({type:`update-cell-config`,...e}),null);sendRestart=async()=>{let e=await this.readCode();return e.contents&&(B.saveFile(e.contents),V.saveFile(e.contents)),me(),null};readCode=async()=>this.saveRpc?{contents:await this.saveRpc.readNotebook()}:(m.warn(`Save RPC not initialized`),{contents:``});readSnippets=async()=>await this.rpc.proxy.request.bridge({functionName:`read_snippets`,payload:void 0});openFile=async({path:e})=>{let t=ge({code:null,baseUrl:window.location.origin});return window.open(t,`_blank`),null};sendListFiles=async e=>await this.rpc.proxy.request.bridge({functionName:`list_files`,payload:e});getFileRoots=async()=>await this.rpc.proxy.request.bridge({functionName:`file_roots`,payload:void 0});sendSearchFiles=async e=>await this.rpc.proxy.request.bridge({functionName:`search_files`,payload:e});sendComponentValues=async e=>(await this.putControlRequest({type:`update-ui-element`,...e,token:le()}),null);sendInstantiate=async e=>null;sendFunctionRequest=async e=>(await this.putControlRequest({type:`invoke-function`,...e}),null);sendCreateFileOrFolder=async e=>{let t=null;return e.file&&(t=(await fe(e.file)).split(`,`)[1]??``),await this.rpc.proxy.request.bridge({functionName:`create_file_or_directory`,payload:{path:e.path,type:e.type,name:e.name,contents:t}})};sendDeleteFileOrFolder=async e=>await this.rpc.proxy.request.bridge({functionName:`delete_file_or_directory`,payload:e});sendCopyFileOrFolder=async e=>await this.rpc.proxy.request.bridge({functionName:`copy_file_or_directory`,payload:e});sendRenameFileOrFolder=async e=>await this.rpc.proxy.request.bridge({functionName:`move_file_or_directory`,payload:e});sendUpdateFile=async e=>await this.rpc.proxy.request.bridge({functionName:`update_file`,payload:e});sendFileDetails=async e=>await this.rpc.proxy.request.bridge({functionName:`file_details`,payload:e});exportAsHTML=async e=>(await this.pendingSessionSave,await this.rpc.proxy.request.bridge({functionName:`export_html`,payload:k(e)}));exportAsMarkdown=async e=>(await this.pendingSessionSave,await this.rpc.proxy.request.bridge({functionName:`export_markdown`,payload:e}));exportAsScript=async e=>(await this.pendingSessionSave,await this.rpc.proxy.request.bridge({functionName:`export_script`,payload:e}));previewDatasetColumn=async e=>(await this.putControlRequest({type:`preview-dataset-column`,...e}),null);previewSQLTable=async e=>(await this.putControlRequest({type:`preview-sql-table`,...e}),null);previewSQLTableList=async e=>(await this.putControlRequest({type:`list-sql-tables`,...e}),null);previewSQLSchemaList=async e=>(await this.putControlRequest({type:`list-sql-schemas`,...e}),null);previewDataSourceConnection=async e=>(await this.putControlRequest({type:`list-data-source-connection`,...e}),null);validateSQL=async e=>(await this.putControlRequest({type:`validate-sql`,...e}),null);sendModelValue=async e=>(await this.putControlRequest({type:`model`,...e}),null);sendDocumentTransaction=()=>Promise.resolve(null);addPackage=async e=>this.rpc.proxy.request.addPackage(e);removePackage=async e=>this.rpc.proxy.request.removePackage(e);getPackageList=async()=>await this.rpc.proxy.request.listPackages();getSandbox=async()=>({backend:null,manifest:null,filename:null});updateManifest=async()=>{throw Error(`Sandboxes are not supported in WebAssembly`)};syncSandbox=async()=>{throw Error(`Sandboxes are not supported in WebAssembly`)};getDependencyTree=async()=>({tree:{dependencies:[],name:``,tags:[],version:null},context:{kind:`package-manager`,name:`micropip`}});listSecretKeys=async e=>(await this.putControlRequest({type:`list-secret-keys`,...e}),null);discoverDataSources=async e=>(await this.putControlRequest({type:`discover-data-sources`,...e}),null);getUsageStats=h;getEnvironmentInfo=async()=>await this.rpc.proxy.request.bridge({functionName:`get_environment_info`,payload:void 0});openTutorial=h;getRecentFiles=h;getWorkspaceFiles=h;getRunningNotebooks=h;shutdownSession=h;getExportAvailability=h;installExportRequirements=h;exportAsIPYNB=h;exportAsPDF=h;autoExportAsHTML=h;autoExportAsMarkdown=h;autoExportAsIPYNB=h;updateCellOutputs=h;writeSecret=h;invokeAiTool=h;clearCache=h;getCacheInfo=h;listStorageEntries=h;downloadStorage=h;async putControlRequest(e){await this.rpc.proxy.request.bridge({functionName:`put_control_request`,payload:e})}};function Le(){return j.withProducerCallback(e=>{H.INSTANCE.attachMessageConsumer(e)})}function Re(){return`marimo${typeof window<`u`&&window.__MARIMO_HAS_WASM_CONTROLLER__===!0?De:``}`}function ze(e=x()){let t=window.fetch;return window.fetch=async(n,r)=>{let i=n instanceof Request?n.url:n.toString();if(i.startsWith(`data:`))return t(n,r);try{let a=W(i,e);if(a){let e=await(await t(a)).arrayBuffer();return new Response(e,{headers:{"Content-Type":Be(i)}})}return t(n,r)}catch(e){return m.error(`Error parsing URL`,e),t(n,r)}},()=>{window.fetch=t}}function Be(e){return e.endsWith(`.csv`)?`text/csv`:e.endsWith(`.json`)?`application/json`:e.endsWith(`.txt`)?`text/plain`:`application/octet-stream`}function Ve(e,t=x()){let n=e.http.bind(e),r=e.load.bind(e);return e.http=async e=>{let r=W(e,t);if(r)return await window.fetch(r).then(e=>e.text());try{return await n(e)}catch(t){if(e.startsWith(`data:`))return await window.fetch(e).then(e=>e.text());throw t}},e.load=async e=>{let n=W(e,t);if(n)return await window.fetch(n).then(e=>e.text());try{return await r(e)}catch(t){if(e.startsWith(`data:`))return await window.fetch(e).then(e=>e.text());throw t}},()=>{e.http=n,e.load=r}}function U(e){return e.startsWith(`.`)?e.slice(1):e}function He(e,t=x()){let n=W(e,t);if(!n)return e;let r=pe(n);return URL.createObjectURL(r)}function W(e,t){let n=document.baseURI;n.startsWith(`blob:`)&&(n=n.replace(`blob:`,``));let r=new URL(e,n).pathname,i=Ue(e),a=Ue(r);return t[e]||t[U(e)]||t[r]||t[U(r)]||i&&t[i]||a&&t[a]}function Ue(e){let t=e.indexOf(`/@file/`);return t===-1?null:e.slice(t)}function G(e,t){return{get(t){return e.get(t)},set(t,n){e.set(t,n)},save_changes(){e.save_changes()},send:e.send.bind(e),on(n,r){t.aborted||(e.on(n,r),t.addEventListener(`abort`,()=>e.off(n,r),{once:!0}))},off(t,n){e.off(t??null,n??null)},widget_manager:{async get_model(n){return G(await e.widget_manager.get_model(n),t)}}}}function K(e){return typeof e==`string`&&e.length>0}function We(e){if(typeof e==`string`&&e.startsWith(`anywidget:`)){let t=e.slice(10);if(K(t))return t}throw Error(`[anywidget] Invalid widget reference: ${JSON.stringify(e)}`)}function Ge(e,t){return{async getModel(n){let r=We(n);return G(await e.getModel(r),t)},async getWidget(n){let r=We(n),i=await e.getWidget(r);return{exports:i.exports,async render({el:e,signal:n}){await i.render({el:e,signal:n??t})}}}}}var Ke=Symbol(`marimo`);function q(e){return e[Ke]}var qe=class e{#e=`change`;#t;#n;#r;#i={};static _modelManager;constructor(e,t,n){this.#n=e,this.#r=t,this.#t=new Set,n&&n.addEventListener(`abort`,()=>{m.debug(`[Model] Signal aborted, clearing all listeners`),this.#i={}})}[Ke]={updateAndEmitDiffs:e=>this.#o(e),emitCustomMessage:(e,t)=>this.#s(e,t)};off(e,t){if(!e){this.#i={};return}if(!t){this.#i[e]=new Set;return}this.#i[e]?.delete(t)}send(e,t,n){let r=(n??[]).map(e=>e instanceof ArrayBuffer?new DataView(e):new DataView(e.buffer,e.byteOffset,e.byteLength));return this.#r.sendCustomMessage(e,r).then(()=>t?.())}widget_manager={async get_model(t){let n=await e._modelManager.getModel(t);if(!n)throw Error(`Model not found with id: ${t}. This is likely because the model was not registered.`);return n}};get(e){return this.#n[e]}set(e,t){this.#n={...this.#n,[e]:t},this.#t.add(e),this.#a(`change:${e}`,t),this.#c()}save_changes(){if(this.#t.size===0)return;let e=Object.fromEntries([...this.#t].map(e=>[e,this.#n[e]]));this.#t.clear(),this.#r.sendUpdate(e)}on(e,t,n){let r=n?.signal;r?.aborted||(this.#i[e]||(this.#i[e]=new Set),this.#i[e].add(t),r?.addEventListener(`abort`,()=>this.off(e,t),{once:!0}))}#a(e,t){let n=this.#i[e];if(n)for(let e of[...n])try{e(t)}catch(e){m.error(`Error emitting event`,e)}}#o(e){e!=null&&Object.keys(e).forEach(t=>{let n=t;this.#t.delete(n),this.#n[n]!==e[n]&&(this.#n={...this.#n,[n]:e[n]},this.#a(`change:${n}`,e[n]),this.#c())})}#s(e,t=[]){let n=this.#i[`msg:custom`];if(n)for(let r of[...n])try{r(e.content,t)}catch(e){m.error(`Error emitting event`,e)}}#c=d(()=>{let e=this.#i[this.#e];if(e)for(let t of[...e])try{t()}catch(e){m.error(`Error emitting event`,e)}},0)};function Je(e){return typeof e==`function`}function Ye(e){return typeof e==`function`}function Xe(e){return t(e)&&(Je(e.render)||Ye(e.initialize))}function Ze(e){return typeof e==`function`||Xe(e)}function Qe(e){return t(e)&&Ze(e.default)}var $e=new Set,et=new WeakMap;function tt(e,n){if(Qe(e))return e.default;if(!t(e)||e.default!==void 0)return null;let r=Je(e.render)?e.render:void 0,i=Ye(e.initialize)?e.initialize:void 0;if(r===void 0&&i===void 0)return null;let a=et.get(e);if(a)return a;$e.has(n)||($e.add(n),m.warn(`Anywidget module at ${n} uses deprecated top-level named exports (\`render\`/\`initialize\`). Per the AFM spec, use a default export instead: \`export default { render }\`. See https://anywidget.dev/en/afm/`));let o={render:r,initialize:i};return et.set(e,o),o}function nt(e,n){let r=`https://anywidget.dev/en/afm/`,a=t(e)&&i(e,`render`),o=t(e)&&i(e,`initialize`);if(t(e)&&e.default!==void 0)return Error(`Anywidget module at ${n} has an invalid default export. Expected a factory function or an object with \`render\` or \`initialize\`. See ${r}`);if(a||o){let e=[a?"`render`":null,o?"`initialize`":null].filter(Boolean).join(` and `),t=[a?`render`:null,o?`initialize`:null].filter(e=>e!==null),i=`export default { ${t.join(`, `)} }`,s=t.length===1?`export function ${t[0]}`:`named export function ...`;return Error(`Anywidget module at ${n} uses named exports (${e}). Per the AFM spec, use a default export instead: \`${i}\` (not \`${s}\`). See ${r}`)}return Error(`Anywidget module at ${n} is missing a default export. Per the AFM spec, use \`export default { render }\` or \`export default async () => ({ render })\`. See ${r}`)}function rt(e){return typeof e!=`string`||e.length===0?!1:!!(/^(\.?\/)?@file\/[^?#]+$/.test(e)||at(e))}function it(){return e.get(de)||ue()}function at(e){return e.startsWith(`data:text/javascript;base64,`)||e.startsWith(`data:application/javascript;base64,`)||e.startsWith(`data:text/css;base64,`)?it():!1}var ot={invoke:async()=>{let e=`anywidget.invoke not supported in marimo. Please file an issue at https://github.com/marimo-team/marimo/issues`;throw m.warn(e),Error(e)}};function st(e){if(typeof AbortSignal.any==`function`)return AbortSignal.any(e);let t=new AbortController;for(let n of e){if(n.aborted)return t.abort(n.reason),t.signal;n.addEventListener(`abort`,()=>t.abort(n.reason),{once:!0})}return t.signal}var ct=class{#e=new Map;getModule(e){let{jsUrl:t,jsHash:n,kernelAuthored:r=!1,lifetime:i}=e,a=this.#e.get(n);if(!a){let e={references:0,dispose:()=>void 0,promise:this.#t(t,{kernelAuthored:r}).then(({module:t,dispose:n})=>(e.dispose=n,t),t=>{throw this.#e.get(n)===e&&this.#e.delete(n),t})};this.#e.set(n,e),a=e}let o=a;o.references+=1;let s=()=>{--o.references,o.references===0&&o.promise.then(()=>{o.dispose(),o.dispose=()=>void 0},()=>void 0)};return i?.aborted?s():i?.addEventListener(`abort`,s,{once:!0}),o.promise}invalidate(e){this.#e.delete(e)}async#t(e,t={}){if(!(rt(e)||t.kernelAuthored===!0&&/^(https?:|data:)/.test(e)))throw Error(`Refusing to load anywidget module from untrusted URL: ${String(e)}`);let n=te(e).toString(),r=S()?He(n):n,i=()=>{r!==n&&URL.revokeObjectURL(r)};try{return{module:await oe(()=>import(r),[],import.meta.url),dispose:i}}catch(e){throw i(),e}}};function J(e){return typeof e==`function`}async function Y(e,t){try{await e()}catch(e){m.warn(`[WidgetBinding] ${t} cleanup failed`,e)}}var lt=class e{#e;#t;#n;#r;#i;#a=new Set;#o=new Set;#s;constructor(e){this.#t=e.widget,this.#n=e.model,this.#r=e.exports,this.#e=e.controller,this.#i=e.createHost,this.#s=e.onDestroy}static async create({widgetDef:t,model:n,createHost:r,controller:i=new AbortController,onDestroy:a}){let o=i.signal,s;try{let c=typeof t==`function`?await t():t;if(o.aborted)throw Error(`[anywidget] binding destroyed`);let l=Promise.resolve(c.initialize?.({model:G(n,o),experimental:ot,signal:o}));s=l.then(async e=>{o.aborted&&J(e)&&await Y(e,`late initialize`)}).catch(()=>void 0);let u=await Promise.race([l,new Promise((e,t)=>{let n=()=>t(Error(`[anywidget] binding destroyed`));if(o.aborted){n();return}o.addEventListener(`abort`,n,{once:!0})})]);if(o.aborted)throw Error(`[anywidget] binding destroyed`);let d,f;J(u)?(f=u,d=void 0):d=typeof u==`object`&&u?u:void 0;let p=new e({widget:c,model:n,exports:d,controller:i,createHost:r,onDestroy:a});return f&&o.addEventListener(`abort`,()=>void p.#l(f,`initialize`),{once:!0}),p}catch(e){throw s?s.then(()=>a?.()):a?.(),e}}get exports(){return this.#r}async createView(e,t){let n=this.#c(e,t);this.#o.add(n);try{await n}finally{this.#o.delete(n)}}async#c(e,t){let n=this.#t;if(!n.render)return;let r=st([t.signal,this.#e.signal]);if(r.aborted)return;e.el.innerHTML=``;let i=this.#i(r),a=await n.render({model:G(this.#n,r),el:e.el,experimental:ot,signal:r,host:i});if(J(a)){let e=()=>{let e=t.signal.aborted?`view unmount`:`binding destroyed`;return m.debug(`[WidgetBinding] Render cleanup triggered (reason: ${e})`),this.#l(a,`render`)};if(r.aborted){await e();return}r.addEventListener(`abort`,()=>void e(),{once:!0})}}#l(e,t){let n=Y(e,t);return this.#a.add(n),n.finally(()=>this.#a.delete(n)),n}async destroy(){for(m.debug(`[WidgetBinding] Destroying binding generation`),this.#e.abort(),await Promise.allSettled(this.#o);this.#a.size>0;)await Promise.all(this.#a);this.#s?.(),this.#s=void 0}},ut=new ct,dt=class{#e;#t;#n;#r;#i;#a=new AbortController;#o=new ce;#s=new Set;#c=new Map;#l;#u;#d;#f=Promise.resolve();#p=``;constructor(e,t){this.#e=e,this.#t=t.timeout,this.#n=t.isEditMode,this.#r=t.createHost,this.#i=t.onModelTimeout}getModel(){return this.#o.status===`pending`&&!this.#l&&(this.#l=setTimeout(()=>{this.#o.status===`pending`&&(this.#l=void 0,this.#o.reject(Error(`Model not found for key: ${this.#e}`)),this.#i())},this.#t)),this.#o.promise}getModelSync(){return this.#o.status===`resolved`?this.#o.value:void 0}createModel(e){this.#o.status===`pending`&&this.#m(e(this.#a.signal))}setModel(e){this.#o.status===`pending`&&this.#m(e)}#m(e){this.#l&&=(clearTimeout(this.#l),void 0),this.#o.resolve(e);let t=e.get(`_css`);this.#p=typeof t==`string`?t:``,e.on(`change:_css`,e=>{this.#p=typeof e==`string`?e:``;for(let e of this.#c.values())e.update(this.#p)},{signal:this.#a.signal})}setSpec(e){if(!this.#u){this.#u=e;return}this.#n()&&(this.#u=e,this.#d&&this.#d.hash!==e.hash&&this.#v(e))}async getWidget(){return{exports:(await this.#h()).exports,render:async({el:e,signal:t})=>{await this.createView({el:e,signal:t??this.#a.signal})}}}async createView(e){if(e.signal.aborted||this.#a.signal.aborted)return;let t={el:e.el,signal:e.signal};this.#s.add(t),this.#x(t),e.signal.addEventListener(`abort`,()=>this.#s.delete(t),{once:!0}),await this.#b(t)}async#h(){for(;!this.#a.signal.aborted;){let e=await this.getModel(),t=this.#d;if(!t){let n=this.#u;if(!n)throw Error(`[anywidget] No ESM spec for model ${this.#e}: nothing ever provided this widget's code`);t=this.#_(n,e)}try{let e=await t.promise;if(t===this.#d)return e}catch(e){if(!this.#d||t===this.#d)throw e}}throw Error(`[anywidget] widget runtime destroyed`)}async#g(e){let{spec:t,model:n,controller:r}=e,i=new AbortController,a;try{let e=await ut.getModule({jsUrl:t.url,jsHash:t.hash,kernelAuthored:!0,lifetime:i.signal}),n=tt(e,t.url);if(!n)throw ut.invalidate(t.hash),nt(e,t.url);a=n}catch(e){throw i.abort(),e}return lt.create({widgetDef:a,model:n,createHost:this.#r,controller:r,onDestroy:()=>i.abort()})}#_(e,t){let n=new AbortController,r={hash:e.hash,controller:n,promise:this.#g({spec:e,model:t,controller:n})};return r.promise.catch(()=>{this.#d===r&&(this.#d=void 0)}),this.#d=r,r}#v(e){let t=this.#d;if(!t)return;m.debug(`[WidgetRuntime] Hot-swapping generation for model=${this.#e}`);let n=this.#y(t),r=this.getModelSync();if(!r)return;let i=this.#_(e,r);for(let e of this.#s)e.generation=void 0,n.then(()=>this.#b(e,i)).catch(e=>{m.error(`[WidgetRuntime] Error replacing widget view`,e)})}#y(e){e.controller.abort();let t=this.#f.then(async()=>{try{await(await e.promise).destroy()}catch{}});return this.#f=t,t}async#b(e,t){if(e.signal.aborted||this.#a.signal.aborted)return;let n=t??this.#d,r=n?await n.promise:await this.#h(),i=this.#d;if(!(!i||i!==(n??i))&&e.generation!==i){e.generation=i;try{await r.createView({el:e.el},{signal:e.signal})}catch(t){if(i!==this.#d){e.generation=void 0;return}throw t}}}#x(e){let t=e.el.getRootNode();if(!X(t)&&!ft(t))return;let n=this.#c.get(t);n||(n=pt(t,this.#p),this.#c.set(t,n)),n.references+=1;let r=!1;e.signal.addEventListener(`abort`,()=>{if(r)return;r=!0;let e=this.#c.get(t);e&&(--e.references,e.references===0&&(e.dispose(),this.#c.delete(t)))},{once:!0})}dispose(){if(!this.#a.signal.aborted){m.debug(`[WidgetRuntime] Disposing model=${this.#e}`),this.#l&&=(clearTimeout(this.#l),void 0),this.#o.status===`pending`&&(this.#o.promise.catch(()=>void 0),this.#o.reject(Error(`[anywidget] widget runtime destroyed`))),this.#d&&this.#y(this.#d),this.#a.abort(),this.#s.clear();for(let e of this.#c.values())e.dispose();this.#c.clear()}}};function X(e){return e.nodeType===Node.DOCUMENT_NODE}function ft(e){return e.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&`host`in e}function pt(e,t){let n=X(e)?e:e.ownerDocument??document,r=n.defaultView??window;if(`adoptedStyleSheets`in e&&r.CSSStyleSheet!==void 0&&typeof r.CSSStyleSheet.prototype.replaceSync==`function`)try{let n=new r.CSSStyleSheet;return n.replaceSync(t),e.adoptedStyleSheets=[...e.adoptedStyleSheets,n],{references:0,update(e){n.replaceSync(e)},dispose(){e.adoptedStyleSheets=e.adoptedStyleSheets.filter(e=>e!==n)}}}catch{}let i=n.createElement(`style`);return i.textContent=t,X(e)?n.head.append(i):e.append(i),{references:0,update(e){i.textContent=e},dispose(){i.remove()}}}function Z(e,t=[]){let n=[];if(e instanceof DataView)n.push(t);else if(Array.isArray(e))for(let[r,i]of e.entries())n.push(...Z(i,[...t,r]));else if(typeof e==`object`&&e)for(let[r,i]of Object.entries(e))n.push(...Z(i,[...t,r]));return n}function mt(e){let t=Z(e);if(t.length===0)return{state:e,buffers:[],bufferPaths:[]};let n=structuredClone(e),r=[],i=[];for(let a of t){let t=u(e,a);if(t instanceof DataView){let e=w(t);r.push(e),i.push(a),D(n,a,e)}}return{state:n,buffers:r,bufferPaths:i}}function ht(e){let{state:t,bufferPaths:n,buffers:r}=e;if(!n||n.length===0)return t;r&&g(r.length===n.length,`Buffers and buffer paths not the same length`);let i=t;for(let[e,t]of n.entries()){let n=r?.[e];if(n==null){m.warn(`[anywidget] Could not find buffer at path`,t);continue}typeof n==`string`?D(i,t,re(n)):D(i,t,n)}return i}function gt(){let t=e.get(y).mode;return t===`edit`||t===`present`}var Q=new class{#e=new Map;#t;#n;constructor(e=1e4,t=gt){this.#t=e,this.#n=t}#r(e){let t=this.#e.get(e);if(!t){let n=new dt(e,{timeout:this.#t,isEditMode:this.#n,createHost:e=>Ge(this,e),onModelTimeout:()=>{this.#e.get(e)===n&&(n.dispose(),this.#e.delete(e))}});t=n,this.#e.set(e,t)}return t}getModel(e){return this.#r(e).getModel()}getModelSync(e){return this.#e.get(e)?.getModelSync()}createModel(e,t){this.#r(e).createModel(t)}setModel(e,t){this.#r(e).setModel(t)}setSpec(e,t){this.#r(e).setSpec(t)}getWidget(e){return this.#r(e).getWidget()}createView(e){return this.#r(e.modelId).createView(e)}delete(e){let t=this.#e.get(e);t&&(t.dispose(),this.#e.delete(e))}};qe._modelManager=Q;async function _t(e,t){let n=t.model_id;if(!K(n))throw Error(`[anywidget] Invalid model id: ${String(n)}`);let r=t.message,i=(`buffers`in r?r.buffers:[]).map(re);switch(r.method){case`open`:{let{state:t,buffer_paths:a=[]}=r;r.esm_spec&&e.setSpec(n,r.esm_spec);let o=ht({state:t,bufferPaths:a,buffers:i}),s=e.getModelSync(n);if(s){q(s).updateAndEmitDiffs(o);return}e.createModel(n,e=>{let t=S()?{sendUpdate:async()=>void 0,sendCustomMessage:async()=>void 0}:{async sendUpdate(t){if(e.aborted){m.debug(`[Model] sendUpdate suppressed for model=${n} (signal aborted)`);return}let{state:r,buffers:i,bufferPaths:a}=mt(t);await T().sendModelValue({modelId:n,message:{method:`update`,state:r,bufferPaths:a},buffers:i})},async sendCustomMessage(t,r){if(e.aborted){m.debug(`[Model] sendCustomMessage suppressed for model=${n} (signal aborted)`);return}await T().sendModelValue({modelId:n,message:{method:`custom`,content:t},buffers:r.map(w)})}};return new qe(o,t,e)});return}case`custom`:q(await e.getModel(n)).emitCustomMessage({method:`custom`,content:r.content},i);return;case`close`:e.delete(n);return;case`update`:{let{state:t,buffer_paths:a=[]}=r;r.esm_spec&&e.setSpec(n,r.esm_spec);let o=ht({state:t,bufferPaths:a,buffers:i});q(await e.getModel(n)).updateAndEmitDiffs(o);return}default:se(r)}}o(Q,`WIDGET_REGISTRY`);function vt(e){return typeof e!=`object`||!e?!1:`type`in e&&e.type===`marimo-ui-value-update`}var $=class e{entries;static get INSTANCE(){let t=`_marimo_private_UIElementRegistry`;return window[t]||(window[t]=new e),window[t]}constructor(){this.entries=new Map}has(e){return this.entries.has(e)}set(e,t){this.entries.has(e)&&m.debug(`UIElementRegistry overwriting entry for objectId.`,e),this.entries.set(e,{objectId:e,value:t,elements:new Set})}registerInstance(e,t){let n=this.entries.get(e);n===void 0?this.entries.set(e,{objectId:e,value:a(t,this),elements:new Set([t])}):n.elements.add(t)}removeInstance(e,t){let n=this.entries.get(e);n?.elements.has(t)&&n.elements.delete(t)}removeElementsByCell(e){[...this.entries.keys()].filter(t=>t.startsWith(`${e}-`)).forEach(e=>{this.entries.delete(e)})}lookupValue(e){let t=this.entries.get(e);return t===void 0?void 0:t.value}broadcastMessage(e,t,n){let r=this.entries.get(e);if(r===void 0){m.warn(`UIElementRegistry missing entry`,e);return}if(vt(t)){r.value=t.value,r.elements.forEach(e=>{e.dispatchEvent(E.create({bubbles:!1,composed:!0,detail:{value:t.value,element:e}}))});return}r.elements.forEach(r=>{r.dispatchEvent(ve.create({bubbles:!1,composed:!0,detail:{objectId:e,message:t,buffers:n}}))})}broadcastValueUpdate(e,t,n){let r=this.entries.get(t);r===void 0?m.warn(`UIElementRegistry missing entry`,t):(r.value=n,r.elements.forEach(t=>{t!==e&&t.dispatchEvent(E.create({bubbles:!1,composed:!0,detail:{value:n,element:t}}))}),document.dispatchEvent(_e.create({bubbles:!0,composed:!0,detail:{objectId:t}})))}},yt=$.INSTANCE,bt=new ie(`function-call-result`,async(e,t)=>{await T().sendFunctionRequest({functionCallId:e,...t})}),xt=`68px`,St=`288px`,Ct=e=>e?/^\d+$/.test(e)?`${e}px`:e:St,wt=b({isOpen:!0},(e,t)=>{if(!t)return e;switch(t.type){case`toggle`:return{...e,isOpen:t.isOpen??e.isOpen};case`setWidth`:return{...e,width:t.width};default:return e}});export{A as _,$ as a,_t as c,ze as d,Ve as f,j as g,B as h,bt as i,rt as l,Le as m,Ct as n,yt as o,H as p,wt as r,Q as s,xt as t,K as u,k as v,D as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as e}from"./useEvent-Dfcbgjhg.js";import{Qr as t,Zr as n}from"./cells-
|
|
1
|
+
import{f as e}from"./useEvent-Dfcbgjhg.js";import{Qr as t,Zr as n}from"./cells-T9_Y4Jlv.js";import{g as r}from"./useEventListener-CjDeLqFC.js";import{k as i}from"./config-DzdxZb17.js";import{t as a}from"./use-toast-Wu434mLr.js";import{d as o}from"./arrays-0R2reF2y.js";var s=`marimo:ai:chatState:v5`,c=e(null),l=e(null),u=i(`marimo:ai:chatOptions`,{webSearch:!1},t),d=i(`marimo:ai:includeOtherCells`,!0,t);function f(e){let t=new Map;for(let[n,r]of e.entries()){if(r.messages.length===0)continue;let e=o(r.messages,e=>e.id);t.set(n,{...r,messages:e})}return t}var p=n({toSerializable:e=>({chats:[...f(e.chats).entries()],activeChatId:e.activeChatId}),fromSerializable:e=>({chats:new Map(e.chats),activeChatId:e.activeChatId})}),m=i(s,{chats:new Map,activeChatId:null},{...p,setItem:(e,t)=>{try{f(t.chats).size===0?p.removeItem(e):p.setItem(e,t)}catch(e){r.warn(`Could not save chat history`,e),a({id:`chat-storage-error`,once:!0,title:`Chat history couldn't be saved`,description:`Try deleting old chats. New messages may be lost when you reload.`,variant:`danger`})}}}),h=e(e=>{let t=e(m);return t.activeChatId?t.chats.get(t.activeChatId):null},(e,t,n)=>{t(m,e=>({...e,activeChatId:n}))});export{d as a,m as i,c as n,l as o,u as r,h as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{o as r}from"./useEventListener-CjDeLqFC.js";import{n as i,t as a}from"./cn-ldLVeaqm.js";import{t as o}from"./jsx-runtime-B74pBk57.js";import{C as s,T as c,w as l,x as u}from"./fullscreen-BWTs8pYZ.js";import{a as d}from"./dist-jlhMTKo_.js";import{At as f,Dt as p,Et as m,I as h,Kt as g,St as _,Ut as v,bt as y,ft as b,gt as x,ht as S,jt as C,nt as w,pt as ee,q as T,tt as E,vt as te,wt as D,yt as ne}from"./input-ByHt6aoV.js";import{t as O}from"./I18nProvider-Cg2I_s1_.js";var k=e(t(),1),A=o(),j=Object.defineProperty,M=(e,t)=>j(e,`name`,{value:t,configurable:!0}),N=`Switch`,[re,ie]=l(N),[P,F]=re(N);function I(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:d=`on`,internal_do_not_use_render:f}=e,[p,m]=u({prop:n,defaultProp:i??!1,onChange:c,caller:N}),[h,g]=k.useState(null),[_,v]=k.useState(null),y=k.useRef(!1),[b,x]=k.useReducer(e=>e+1,0),S={checked:p,setChecked:m,disabled:a,control:h,setControl:g,name:s,form:o,value:d,hasConsumerStoppedPropagationRef:y,userInteractionCount:b,onUserInteraction:x,required:l,defaultChecked:i,isFormControl:!h||!!o||!!h.closest(`form`),bubbleInput:_,setBubbleInput:v};return(0,A.jsx)(P,{scope:t,...S,children:le(f)?f(S):r})}M(I,`SwitchProvider`);var L=`SwitchTrigger`,R=k.forwardRef(M(function({__scopeSwitch:e,onClick:t,...n},i){let{control:a,form:o,value:l,disabled:u,checked:d,required:f,setControl:p,setChecked:m,hasConsumerStoppedPropagationRef:h,onUserInteraction:g,isFormControl:_,bubbleInput:v}=F(L,e),y=r(i,p),b=k.useRef(d);return k.useEffect(()=>{let e=o?a?.ownerDocument.getElementById(o):a?.form;if(e instanceof HTMLFormElement){let t=M(()=>m(b.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,o,m]),(0,A.jsx)(c.button,{type:`button`,role:`switch`,"aria-checked":d,"aria-required":f,"data-state":B(d),"data-disabled":u?``:void 0,disabled:u,value:l,...n,ref:y,onClick:s(t,e=>{g(),m(e=>!e),v&&_&&(h.current=e.isPropagationStopped(),h.current||e.stopPropagation())})})},`SwitchTrigger`)),z=k.forwardRef(M(function(e,t){let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,A.jsx)(I,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(R,{...d,ref:t,__scopeSwitch:n}),e&&(0,A.jsx)(ce,{__scopeSwitch:n})]})})},`Switch`)),ae=`SwitchThumb`,oe=k.forwardRef(M(function(e,t){let{__scopeSwitch:n,...r}=e,i=F(ae,n);return(0,A.jsx)(c.span,{"data-state":B(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})},`SwitchThumb`)),se=`SwitchBubbleInput`,ce=k.forwardRef(M(function({__scopeSwitch:e,onClick:t,...n},i){let{control:a,hasConsumerStoppedPropagationRef:o,userInteractionCount:l,checked:u,defaultChecked:f,required:p,disabled:m,name:h,value:g,form:_,bubbleInput:v,setBubbleInput:y}=F(se,e),b=r(i,y),x=d(a),S=k.useRef(!1),C=k.useRef(u),w=k.useRef(l);k.useEffect(()=>{let e=v;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=l!==w.current;w.current=l;let i=C.current!==u;C.current=u;let a=!(r&&o.current);if(i&&n){S.current=!r;let t=new Event(`click`,{bubbles:a});n.call(e,u),e.dispatchEvent(t),S.current=!1}},[v,u,o,l]);let ee=k.useRef(u);return(0,A.jsx)(c.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:f??ee.current,required:p,disabled:m,name:h,value:g,form:_,...n,tabIndex:-1,ref:b,onClick:s(t,e=>{S.current&&e.stopPropagation()}),style:{...n.style,...x,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`SwitchBubbleInput`));function le(e){return typeof e==`function`}M(le,`isFunction`);function B(e){return e?`checked`:`unchecked`}M(B,`getState`);function ue(e){return S()?e.metaKey:e.ctrlKey}var de=new Set([`checkbox`,`radio`,`range`,`color`,`file`,`image`,`button`,`submit`,`reset`]);function fe(e){return e instanceof HTMLInputElement&&!de.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function pe(e,t){let n=(0,k.useRef)(!0),r=(0,k.useRef)(null),i=E(e);(0,k.useEffect)(()=>(n.current=!0,()=>{n.current=!1}),[]),(0,k.useEffect)(()=>{let e=r.current;n.current?n.current=!1:(!e||t.some((t,n)=>!Object.is(t,e[n])))&&i(),r.current=t},t)}function V(e,t){if(!e)return!1;let n=window.getComputedStyle(e),r=document.scrollingElement||document.documentElement,i=/(auto|scroll)/.test(n.overflow+n.overflowX+n.overflowY);return e===r&&n.overflow!==`hidden`&&(i=!0),i&&t&&(i=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),i}function me(e,t){let n=e;for(V(n,t)&&(n=n.parentElement);n&&!V(n,t);)n=n.parentElement;return n||document.scrollingElement||document.documentElement}function H(e,t){let n=[],r=document.scrollingElement||document.documentElement;for(;e&&(V(e,t)&&n.push(e),e!==r);)e=e.parentElement;return n}function U(e,t,n={}){e!==t&&he(e,t,t.getBoundingClientRect(),n)}function he(e,t,n,r={}){let{block:i=`nearest`,inline:a=`nearest`}=r,o=e.scrollTop,s=e.scrollLeft,c=e.getBoundingClientRect(),l=window.getComputedStyle(t),u=window.getComputedStyle(e),d=document.scrollingElement||document.documentElement,f=e===d,p=e===d?0:c.top,m=e===d?e.clientHeight:c.bottom,h=e===d?0:c.left,g=e===d?e.clientWidth:c.right,_=parseFloat(l.scrollMarginTop)||0,v=parseFloat(l.scrollMarginBottom)||0,y=parseFloat(l.scrollMarginLeft)||0,b=parseFloat(l.scrollMarginRight)||0,x=parseFloat(u.scrollPaddingTop)||0,S=parseFloat(u.scrollPaddingBottom)||0,C=parseFloat(u.scrollPaddingLeft)||0,w=parseFloat(u.scrollPaddingRight)||0,T=parseFloat(u.borderTopWidth)||0,E=parseFloat(u.borderBottomWidth)||0,D=parseFloat(u.borderLeftWidth)||0,ne=parseFloat(u.borderRightWidth)||0,O=n.top-_,k=n.bottom+v,A=n.left-y,j=n.right+b,M=e===d?0:D+ne,N=e===d?0:T+E,re=e===d?0:e.offsetWidth-e.clientWidth-M,ie=e===d?0:e.offsetHeight-e.clientHeight-N,P=p+(f?0:T)+x,F=m-(f?0:E)-S-ie,I=h+(f?0:D)+C,L=g-(f?0:ne)-w;te()&&ee()||u.direction===`ltr`?L-=re:u.direction===`rtl`&&(I+=re);let R=O<P||k>F,z=A<I||j>L;if(R&&i===`start`)o+=O-P;else if(R&&i===`center`)o+=(O+k)/2-(P+F)/2;else if(R&&i===`end`)o+=k-F;else if(R&&i===`nearest`){let e=O-P,t=k-F;o+=Math.abs(e)<=Math.abs(t)?e:t}if(z&&a===`start`)s+=A-I;else if(z&&a===`center`)s+=(A+j)/2-(I+L)/2;else if(z&&a===`end`)s+=j-L;else if(z&&a===`nearest`){let e=A-I,t=j-L;s+=Math.abs(e)<=Math.abs(t)?e:t}e.scrollTo({left:s,top:o})}function ge(e,t={}){let{containingElement:n}=t;if(e&&e.isConnected){let t=document.scrollingElement||document.documentElement;if(window.getComputedStyle(t).overflow!==`hidden`){let{left:t,top:r}=e.getBoundingClientRect();e?.scrollIntoView?.({block:`nearest`});let{left:i,top:a}=e.getBoundingClientRect();(Math.abs(t-i)>1||Math.abs(r-a)>1)&&(n?.scrollIntoView?.({block:`center`,inline:`center`}),e.scrollIntoView?.({block:`nearest`}))}else{let{left:t,top:r}=e.getBoundingClientRect(),i=H(e,!0);for(let t of i)U(t,e);let{left:a,top:o}=e.getBoundingClientRect();if(Math.abs(t-a)>1||Math.abs(r-o)>1){i=n?H(n,!0):[];for(let e of i)U(e,n,{block:`center`,inline:`center`});for(let t of H(e,!0))U(t,e)}}}}var _e=0,W=new Map;function ve(e){let[t,n]=(0,k.useState)();return g(()=>{if(!e)return;let t=W.get(e);if(t)n(t.element.id);else{let r=`react-aria-description-${_e++}`;n(r);let i=document.createElement(`div`);i.id=r,i.style.display=`none`,i.textContent=e,document.body.appendChild(i),t={refCount:0,element:i},W.set(e,t)}return t.refCount++,()=>{t&&--t.refCount===0&&(t.element.remove(),W.delete(e))}},[e]),{"aria-describedby":e?t:void 0}}var ye={border:0,clip:`rect(0 0 0 0)`,clipPath:`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`};function be(e={}){let{style:t,isFocusable:n}=e,[r,i]=(0,k.useState)(!1),{focusWithinProps:a}=h({isDisabled:!n,onFocusWithinChange:e=>i(e)}),o=(0,k.useMemo)(()=>r?t:t?{...ye,...t}:ye,[r]);return{visuallyHiddenProps:{...a,style:o}}}function xe(e){let{children:t,elementType:n=`div`,isFocusable:r,style:i,...a}=e,{visuallyHiddenProps:o}=be(e);return k.createElement(n,v(a,o),t)}var Se=class{constructor(e,t,n,r){this._walkerStack=[],this._currentSetFor=new Set,this._acceptNode=e=>{if(e.nodeType===Node.ELEMENT_NODE){let t=e.shadowRoot;if(t){let e=this._doc.createTreeWalker(t,this.whatToShow,{acceptNode:this._acceptNode});return this._walkerStack.unshift(e),NodeFilter.FILTER_ACCEPT}if(typeof this.filter==`function`)return this.filter(e);if(this.filter?.acceptNode)return this.filter.acceptNode(e);if(this.filter===null)return NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_SKIP},this._doc=e,this.root=t,this.filter=r??null,this.whatToShow=n??NodeFilter.SHOW_ALL,this._currentNode=t,this._walkerStack.unshift(e.createTreeWalker(t,n,this._acceptNode));let i=t.shadowRoot;if(i){let e=this._doc.createTreeWalker(i,this.whatToShow,{acceptNode:this._acceptNode});this._walkerStack.unshift(e)}}get currentNode(){return this._currentNode}set currentNode(e){if(!_(this.root,e))throw Error(`Cannot set currentNode to a node that is not contained by the root node.`);let t=[],n=e,r=e;for(this._currentNode=e;n&&n!==this.root;)if(n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let e=n,i=this._doc.createTreeWalker(e,this.whatToShow,{acceptNode:this._acceptNode});t.push(i),i.currentNode=r,this._currentSetFor.add(i),n=r=e.host}else n=n.parentNode;let i=this._doc.createTreeWalker(this.root,this.whatToShow,{acceptNode:this._acceptNode});t.push(i),i.currentNode=r,this._currentSetFor.add(i),this._walkerStack=t}get doc(){return this._doc}firstChild(){let e=this.currentNode,t=this.nextNode();return _(e,t)?(t&&(this.currentNode=t),t):(this.currentNode=e,null)}lastChild(){let e=this._walkerStack[0].lastChild();return e&&(this.currentNode=e),e}nextNode(){let e=this._walkerStack[0].nextNode();if(e){if(e.shadowRoot){let t;if(typeof this.filter==`function`?t=this.filter(e):this.filter?.acceptNode&&(t=this.filter.acceptNode(e)),t===NodeFilter.FILTER_ACCEPT)return this.currentNode=e,e;let n=this.nextNode();return n&&(this.currentNode=n),n}return e&&(this.currentNode=e),e}if(this._walkerStack.length>1){this._walkerStack.shift();let e=this.nextNode();return e&&(this.currentNode=e),e}return null}previousNode(){let e=this._walkerStack[0];if(e.currentNode===e.root){if(this._currentSetFor.has(e)){if(this._currentSetFor.delete(e),this._walkerStack.length>1){this._walkerStack.shift();let e=this.previousNode();return e&&(this.currentNode=e),e}return null}return null}let t=e.previousNode();if(t){if(t.shadowRoot){let e;if(typeof this.filter==`function`?e=this.filter(t):this.filter?.acceptNode&&(e=this.filter.acceptNode(t)),e===NodeFilter.FILTER_ACCEPT)return t&&(this.currentNode=t),t;let n=this.lastChild();return n&&(this.currentNode=n),n}return t&&(this.currentNode=t),t}if(this._walkerStack.length>1){this._walkerStack.shift();let e=this.previousNode();return e&&(this.currentNode=e),e}return null}nextSibling(){return null}previousSibling(){return null}parentNode(){return null}};function Ce(e,t,n,r){return p()?new Se(e,t,n,r):e.createTreeWalker(t,n,r)}var we=k.createContext(null),Te=`react-aria-focus-scope-restore`,G=null;function Ee(e){let{children:t,contain:n,restoreFocus:r,autoFocus:i}=e,a=(0,k.useRef)(null),o=(0,k.useRef)(null),s=(0,k.useRef)([]),{parentNode:c}=(0,k.useContext)(we)||{},l=(0,k.useMemo)(()=>new Ue({scopeRef:s}),[s]);g(()=>{let e=c||$.root;if($.getTreeNode(e.scopeRef)&&G&&!X(G,e.scopeRef)){let t=$.getTreeNode(G);t&&(e=t)}e.addChild(l),$.addNode(l)},[l,c]),g(()=>{let e=$.getTreeNode(s);e&&(e.contain=!!n)},[n]),g(()=>{let e=a.current?.nextSibling,t=[],n=e=>e.stopPropagation();for(;e&&e!==o.current;)t.push(e),e.addEventListener(Te,n),e=e.nextSibling;return s.current=t,()=>{for(let e of t)e.removeEventListener(Te,n)}},[t]),Ie(s,r,n),Ae(s,n),Re(s,r,n),Fe(s,i),(0,k.useEffect)(()=>{let e=D(f(s.current?s.current[0]:void 0)),t=null;if(J(e,s.current)){for(let n of $.traverse())n.scopeRef&&J(e,n.scopeRef.current)&&(t=n);t===$.getTreeNode(s)&&(G=t.scopeRef)}},[s]),g(()=>()=>{let e=$.getTreeNode(s)?.parent?.scopeRef??null;(s===G||X(s,G))&&(!e||$.getTreeNode(e))&&(G=e),$.removeTreeNode(s)},[s]);let u=(0,k.useMemo)(()=>De(s),[]),d=(0,k.useMemo)(()=>({focusManager:u,parentNode:l}),[l,u]);return k.createElement(we.Provider,{value:d},k.createElement(`span`,{"data-focus-scope-start":!0,hidden:!0,ref:a}),t,k.createElement(`span`,{"data-focus-scope-end":!0,hidden:!0,ref:o}))}function De(e){return{focusNext(t={}){let n=e.current,{from:r,tabbable:i,wrap:a,accept:o}=t,s=r||D(f(n[0]??void 0)),c=n[0].previousElementSibling,l=Q(K(n),{tabbable:i,accept:o},n);l.currentNode=J(s,n)?s:c;let u=l.nextNode();return!u&&a&&(l.currentNode=c,u=l.nextNode()),u&&Z(u,!0),u},focusPrevious(t={}){let n=e.current,{from:r,tabbable:i,wrap:a,accept:o}=t,s=r||D(f(n[0]??void 0)),c=n[n.length-1].nextElementSibling,l=Q(K(n),{tabbable:i,accept:o},n);l.currentNode=J(s,n)?s:c;let u=l.previousNode();return!u&&a&&(l.currentNode=c,u=l.previousNode()),u&&Z(u,!0),u},focusFirst(t={}){let n=e.current,{tabbable:r,accept:i}=t,a=Q(K(n),{tabbable:r,accept:i},n);a.currentNode=n[0].previousElementSibling;let o=a.nextNode();return o&&Z(o,!0),o},focusLast(t={}){let n=e.current,{tabbable:r,accept:i}=t,a=Q(K(n),{tabbable:r,accept:i},n);a.currentNode=n[n.length-1].nextElementSibling;let o=a.previousNode();return o&&Z(o,!0),o}}}function K(e){return e[0].parentElement}function q(e){let t=$.getTreeNode(G);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function Oe(e){if(!e.form)return Array.from(f(e).querySelectorAll(`input[type="radio"][name="${CSS.escape(e.name)}"]`)).filter(e=>!e.form);let t=e.form.elements.namedItem(e.name),n=C(e);return t instanceof n.RadioNodeList?Array.from(t).filter(e=>e instanceof n.HTMLInputElement):t instanceof n.HTMLInputElement?[t]:[]}function ke(e){if(e.checked)return!0;let t=Oe(e);return t.length>0&&!t.some(e=>e.checked)}function Ae(e,t){let n=(0,k.useRef)(void 0),r=(0,k.useRef)(void 0);g(()=>{let i=e.current;if(!t){r.current&&=(cancelAnimationFrame(r.current),void 0);return}let a=f(i?i[0]:void 0),o=t=>{if(t.key!==`Tab`||t.altKey||t.ctrlKey||t.metaKey||!q(e)||t.isComposing)return;let n=D(a),r=e.current;if(!r||!J(n,r))return;let i=Q(K(r),{tabbable:!0},r);if(!n)return;i.currentNode=n;let o=t.shiftKey?i.previousNode():i.nextNode();o||=(i.currentNode=t.shiftKey?r[r.length-1].nextElementSibling:r[0].previousElementSibling,t.shiftKey?i.previousNode():i.nextNode()),t.preventDefault(),o&&(Z(o,!0),o instanceof C(o).HTMLInputElement&&o.select())},s=t=>{(!G||X(G,e))&&J(m(t),e.current)?(G=e,n.current=m(t)):q(e)&&!Y(m(t),e)?n.current?Z(n.current):G&&G.current&&Pe(G.current):q(e)&&(n.current=m(t))},c=t=>{r.current&&cancelAnimationFrame(r.current),r.current=requestAnimationFrame(()=>{let r=w(),i=(r===`virtual`||r===null)&&x()&&b(),o=D(a);if(!i&&o&&q(e)&&!Y(o,e)){G=e;let r=m(t);r&&r.isConnected?(n.current=r,Z(n.current)):G.current&&Pe(G.current)}})};return a.addEventListener(`keydown`,o,!1),a.addEventListener(`focusin`,s,!1),i?.forEach(e=>e.addEventListener(`focusin`,s,!1)),i?.forEach(e=>e.addEventListener(`focusout`,c,!1)),()=>{a.removeEventListener(`keydown`,o,!1),a.removeEventListener(`focusin`,s,!1),i?.forEach(e=>e.removeEventListener(`focusin`,s,!1)),i?.forEach(e=>e.removeEventListener(`focusout`,c,!1))}},[e,t]),g(()=>()=>{r.current&&cancelAnimationFrame(r.current)},[r])}function je(e){return Y(e)}function J(e,t){return!e||!t?!1:t.some(t=>_(t,e))}function Y(e,t=null){if(e instanceof Element&&e.closest(`[data-react-aria-top-layer]`))return!0;for(let{scopeRef:n}of $.traverse($.getTreeNode(t)))if(n&&J(e,n.current))return!0;return!1}function Me(e){return Y(e,G)}function X(e,t){let n=$.getTreeNode(t)?.parent;for(;n;){if(n.scopeRef===e)return!0;n=n.parent}return!1}function Z(e,t=!1){if(e!=null&&!t)try{T(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function Ne(e,t=!0){let n=e[0].previousElementSibling,r=K(e),i=Q(r,{tabbable:t},e);i.currentNode=n;let a=i.nextNode();return t&&!a&&(r=K(e),i=Q(r,{tabbable:!1},e),i.currentNode=n,a=i.nextNode()),a}function Pe(e,t=!0){Z(Ne(e,t))}function Fe(e,t){let n=k.useRef(t);(0,k.useEffect)(()=>{if(n.current){G=e;let t=f(e.current?e.current[0]:void 0);!J(D(t),G.current)&&e.current&&Pe(e.current)}n.current=!1},[e])}function Ie(e,t,n){g(()=>{if(t||n)return;let r=e.current,i=f(r?r[0]:void 0),a=t=>{let n=m(t);J(n,e.current)?G=e:je(n)||(G=null)};return i.addEventListener(`focusin`,a,!1),r?.forEach(e=>e.addEventListener(`focusin`,a,!1)),()=>{i.removeEventListener(`focusin`,a,!1),r?.forEach(e=>e.removeEventListener(`focusin`,a,!1))}},[e,t,n])}function Le(e){let t=$.getTreeNode(G);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return t?.scopeRef===e}function Re(e,t,n){let r=(0,k.useRef)(typeof document<`u`?D(f(e.current?e.current[0]:void 0)):null);g(()=>{let r=e.current,i=f(r?r[0]:void 0);if(!t||n)return;let a=()=>{(!G||X(G,e))&&J(D(i),e.current)&&(G=e)};return i.addEventListener(`focusin`,a,!1),r?.forEach(e=>e.addEventListener(`focusin`,a,!1)),()=>{i.removeEventListener(`focusin`,a,!1),r?.forEach(e=>e.removeEventListener(`focusin`,a,!1))}},[e,n]),g(()=>{let r=f(e.current?e.current[0]:void 0);if(!t)return;let i=t=>{if(t.key!==`Tab`||t.altKey||t.ctrlKey||t.metaKey||!q(e)||t.isComposing)return;let n=r.activeElement;if(!Y(n,e)||!Le(e))return;let i=$.getTreeNode(e);if(!i)return;let a=i.nodeToRestore,o=Q(r.body,{tabbable:!0});o.currentNode=n;let s=t.shiftKey?o.previousNode():o.nextNode();if((!a||!a.isConnected||a===r.body)&&(a=void 0,i.nodeToRestore=void 0),(!s||!Y(s,e))&&a){o.currentNode=a;do s=t.shiftKey?o.previousNode():o.nextNode();while(Y(s,e));t.preventDefault(),t.stopPropagation(),s?Z(s,!0):je(a)?Z(a,!0):n.blur()}};return n||r.addEventListener(`keydown`,i,!0),()=>{n||r.removeEventListener(`keydown`,i,!0)}},[e,t,n]),g(()=>{let n=f(e.current?e.current[0]:void 0);if(!t)return;let i=$.getTreeNode(e);if(i)return i.nodeToRestore=r.current??void 0,()=>{let r=$.getTreeNode(e);if(!r)return;let i=r.nodeToRestore,a=D(n);if(t&&i&&(a&&Y(a,e)||a===n.body&&Le(e))){let t=$.clone();requestAnimationFrame(()=>{if(n.activeElement===n.body){let n=t.getTreeNode(e);for(;n;){if(n.nodeToRestore&&n.nodeToRestore.isConnected){ze(n.nodeToRestore);return}n=n.parent}for(n=t.getTreeNode(e);n;){if(n.scopeRef&&n.scopeRef.current&&$.getTreeNode(n.scopeRef)){let e=Ne(n.scopeRef.current,!0);if(e){ze(e);return}}n=n.parent}}})}}},[e,t])}function ze(e){e.dispatchEvent(new CustomEvent(Te,{bubbles:!0,cancelable:!0}))&&Z(e)}function Q(e,t,n){let r=t?.tabbable?y:ne,i=e?.nodeType===Node.ELEMENT_NODE?e:null,a=f(i),o=Ce(a,e||a,NodeFilter.SHOW_ELEMENT,{acceptNode(e){return _(t?.from,e)||t?.tabbable&&e.tagName===`INPUT`&&e.getAttribute(`type`)===`radio`&&(!ke(e)||o.currentNode.tagName===`INPUT`&&o.currentNode.type===`radio`&&o.currentNode.name===e.name)?NodeFilter.FILTER_REJECT:r(e)&&(!n||J(e,n))&&(!t?.accept||t.accept(e))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t?.from&&(o.currentNode=t.from),o}function Be(e,t={}){return{focusNext(n={}){let r=e.current;if(!r)return null;let{from:i,tabbable:a=t.tabbable,wrap:o=t.wrap,accept:s=t.accept}=n,c=i||D(f(r)),l=Q(r,{tabbable:a,accept:s});_(r,c)&&(l.currentNode=c);let u=l.nextNode();return!u&&o&&(l.currentNode=r,u=l.nextNode()),u&&Z(u,!0),u},focusPrevious(n=t){let r=e.current;if(!r)return null;let{from:i,tabbable:a=t.tabbable,wrap:o=t.wrap,accept:s=t.accept}=n,c=i||D(f(r)),l=Q(r,{tabbable:a,accept:s});if(_(r,c))l.currentNode=c;else{let e=Ve(l);return e&&Z(e,!0),e??null}let u=l.previousNode();if(!u&&o){l.currentNode=r;let e=Ve(l);if(!e)return null;u=e}return u&&Z(u,!0),u??null},focusFirst(n=t){let r=e.current;if(!r)return null;let{tabbable:i=t.tabbable,accept:a=t.accept}=n,o=Q(r,{tabbable:i,accept:a}).nextNode();return o&&Z(o,!0),o},focusLast(n=t){let r=e.current;if(!r)return null;let{tabbable:i=t.tabbable,accept:a=t.accept}=n,o=Ve(Q(r,{tabbable:i,accept:a}));return o&&Z(o,!0),o??null}}}function Ve(e){let t,n;do n=e.lastChild(),n&&(t=n);while(n);return t}var He=class e{constructor(){this.fastMap=new Map,this.root=new Ue({scopeRef:null}),this.fastMap.set(null,this.root)}get size(){return this.fastMap.size}getTreeNode(e){return this.fastMap.get(e)}addTreeNode(e,t,n){let r=this.fastMap.get(t??null);if(!r)return;let i=new Ue({scopeRef:e});r.addChild(i),i.parent=r,this.fastMap.set(e,i),n&&(i.nodeToRestore=n)}addNode(e){this.fastMap.set(e.scopeRef,e)}removeTreeNode(e){if(e===null)return;let t=this.fastMap.get(e);if(!t)return;let n=t.parent;for(let e of this.traverse())e!==t&&t.nodeToRestore&&e.nodeToRestore&&t.scopeRef&&t.scopeRef.current&&J(e.nodeToRestore,t.scopeRef.current)&&(e.nodeToRestore=t.nodeToRestore);let r=t.children;n&&(n.removeChild(t),r.size>0&&r.forEach(e=>n&&n.addChild(e))),this.fastMap.delete(t.scopeRef)}*traverse(e=this.root){if(e.scopeRef!=null&&(yield e),e.children.size>0)for(let t of e.children)yield*this.traverse(t)}clone(){let t=new e;for(let e of this.traverse())t.addTreeNode(e.scopeRef,e.parent?.scopeRef??null,e.nodeToRestore);return t}},Ue=class{constructor(e){this.children=new Set,this.contain=!1,this.scopeRef=e.scopeRef}addChild(e){this.children.add(e),e.parent=this}removeChild(e){this.children.delete(e),e.parent=void 0}},$=new He,We=new Map;function Ge(e){let{locale:t}=O(),n=t+(e?Object.entries(e).sort((e,t)=>e[0]<t[0]?-1:1).join():``);if(We.has(n))return We.get(n);let r=new Intl.Collator(t,e);return We.set(n,r),r}var Ke=n(),qe=i(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,{variants:{size:{default:`h-6 w-11 mb-1`,sm:`h-4.5 w-8.5`,xs:`h-4 w-7`}},defaultVariants:{size:`default`}}),Je=i(`pointer-events-none block rounded-full bg-background shadow-xs ring-0 transition-transform`,{variants:{size:{default:`h-5 w-5 data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0`,sm:`h-3.5 w-3.5 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`,xs:`h-3 w-3 data-[state=checked]:translate-x-3 data-[state=unchecked]:translate-x-0`}},defaultVariants:{size:`default`}}),Ye=k.forwardRef((e,t)=>{let n=(0,Ke.c)(16),r,i,o;n[0]===e?(r=n[1],i=n[2],o=n[3]):({className:r,size:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=o);let s;n[4]!==r||n[5]!==o?(s=a(qe({size:o}),r),n[4]=r,n[5]=o,n[6]=s):s=n[6];let c;n[7]===o?c=n[8]:(c=a(Je({size:o})),n[7]=o,n[8]=c);let l;n[9]===c?l=n[10]:(l=(0,A.jsx)(oe,{className:c}),n[9]=c,n[10]=l);let u;return n[11]!==i||n[12]!==t||n[13]!==s||n[14]!==l?(u=(0,A.jsx)(z,{className:s,...i,ref:t,children:l}),n[11]=i,n[12]=t,n[13]=s,n[14]=l,n[15]=u):u=n[15],u});Ye.displayName=z.displayName;export{fe as _,Q as a,xe as c,U as d,ge as f,ue as g,pe as h,Ee as i,be as l,V as m,Ge as n,Be as o,me as p,Me as r,Ce as s,Ye as t,ve as u};
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./react-DVplv7_D.js";import{t as n}from"./compiler-runtime-BrajqUja.js";import{o as r}from"./useEventListener-CjDeLqFC.js";import{n as i,t as a}from"./cn-ldLVeaqm.js";import{t as o}from"./jsx-runtime-B74pBk57.js";import{C as s,T as c,w as l,x as u}from"./fullscreen-BWTs8pYZ.js";import{a as d}from"./dist-jlhMTKo_.js";import{At as f,Dt as p,Et as m,I as h,Kt as g,St as _,Ut as v,bt as y,ft as b,gt as x,ht as S,jt as C,nt as w,pt as ee,q as T,tt as E,vt as te,wt as D,yt as ne}from"./input-BZdRe7pb.js";import{t as O}from"./I18nProvider-Cg2I_s1_.js";var k=e(t(),1),A=o(),j=Object.defineProperty,M=(e,t)=>j(e,`name`,{value:t,configurable:!0}),N=`Switch`,[re,ie]=l(N),[P,F]=re(N);function I(e){let{__scopeSwitch:t,checked:n,children:r,defaultChecked:i,disabled:a,form:o,name:s,onCheckedChange:c,required:l,value:d=`on`,internal_do_not_use_render:f}=e,[p,m]=u({prop:n,defaultProp:i??!1,onChange:c,caller:N}),[h,g]=k.useState(null),[_,v]=k.useState(null),y=k.useRef(!1),[b,x]=k.useReducer(e=>e+1,0),S={checked:p,setChecked:m,disabled:a,control:h,setControl:g,name:s,form:o,value:d,hasConsumerStoppedPropagationRef:y,userInteractionCount:b,onUserInteraction:x,required:l,defaultChecked:i,isFormControl:!h||!!o||!!h.closest(`form`),bubbleInput:_,setBubbleInput:v};return(0,A.jsx)(P,{scope:t,...S,children:le(f)?f(S):r})}M(I,`SwitchProvider`);var L=`SwitchTrigger`,R=k.forwardRef(M(function({__scopeSwitch:e,onClick:t,...n},i){let{control:a,form:o,value:l,disabled:u,checked:d,required:f,setControl:p,setChecked:m,hasConsumerStoppedPropagationRef:h,onUserInteraction:g,isFormControl:_,bubbleInput:v}=F(L,e),y=r(i,p),b=k.useRef(d);return k.useEffect(()=>{let e=o?a?.ownerDocument.getElementById(o):a?.form;if(e instanceof HTMLFormElement){let t=M(()=>m(b.current),`reset`);return e.addEventListener(`reset`,t),()=>e.removeEventListener(`reset`,t)}},[a,o,m]),(0,A.jsx)(c.button,{type:`button`,role:`switch`,"aria-checked":d,"aria-required":f,"data-state":B(d),"data-disabled":u?``:void 0,disabled:u,value:l,...n,ref:y,onClick:s(t,e=>{g(),m(e=>!e),v&&_&&(h.current=e.isPropagationStopped(),h.current||e.stopPropagation())})})},`SwitchTrigger`)),z=k.forwardRef(M(function(e,t){let{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:c,onCheckedChange:l,form:u,...d}=e;return(0,A.jsx)(I,{__scopeSwitch:n,checked:i,defaultChecked:a,disabled:s,required:o,onCheckedChange:l,name:r,form:u,value:c,internal_do_not_use_render:({isFormControl:e})=>(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(R,{...d,ref:t,__scopeSwitch:n}),e&&(0,A.jsx)(ce,{__scopeSwitch:n})]})})},`Switch`)),ae=`SwitchThumb`,oe=k.forwardRef(M(function(e,t){let{__scopeSwitch:n,...r}=e,i=F(ae,n);return(0,A.jsx)(c.span,{"data-state":B(i.checked),"data-disabled":i.disabled?``:void 0,...r,ref:t})},`SwitchThumb`)),se=`SwitchBubbleInput`,ce=k.forwardRef(M(function({__scopeSwitch:e,onClick:t,...n},i){let{control:a,hasConsumerStoppedPropagationRef:o,userInteractionCount:l,checked:u,defaultChecked:f,required:p,disabled:m,name:h,value:g,form:_,bubbleInput:v,setBubbleInput:y}=F(se,e),b=r(i,y),x=d(a),S=k.useRef(!1),C=k.useRef(u),w=k.useRef(l);k.useEffect(()=>{let e=v;if(!e)return;let t=window.HTMLInputElement.prototype,n=Object.getOwnPropertyDescriptor(t,`checked`).set,r=l!==w.current;w.current=l;let i=C.current!==u;C.current=u;let a=!(r&&o.current);if(i&&n){S.current=!r;let t=new Event(`click`,{bubbles:a});n.call(e,u),e.dispatchEvent(t),S.current=!1}},[v,u,o,l]);let ee=k.useRef(u);return(0,A.jsx)(c.input,{type:`checkbox`,"aria-hidden":!0,defaultChecked:f??ee.current,required:p,disabled:m,name:h,value:g,form:_,...n,tabIndex:-1,ref:b,onClick:s(t,e=>{S.current&&e.stopPropagation()}),style:{...n.style,...x,position:`absolute`,pointerEvents:`none`,opacity:0,margin:0,transform:`translateX(-100%)`}})},`SwitchBubbleInput`));function le(e){return typeof e==`function`}M(le,`isFunction`);function B(e){return e?`checked`:`unchecked`}M(B,`getState`);function ue(e){return S()?e.metaKey:e.ctrlKey}var de=new Set([`checkbox`,`radio`,`range`,`color`,`file`,`image`,`button`,`submit`,`reset`]);function fe(e){return e instanceof HTMLInputElement&&!de.has(e.type)||e instanceof HTMLTextAreaElement||e instanceof HTMLElement&&e.isContentEditable}function pe(e,t){let n=(0,k.useRef)(!0),r=(0,k.useRef)(null),i=E(e);(0,k.useEffect)(()=>(n.current=!0,()=>{n.current=!1}),[]),(0,k.useEffect)(()=>{let e=r.current;n.current?n.current=!1:(!e||t.some((t,n)=>!Object.is(t,e[n])))&&i(),r.current=t},t)}function V(e,t){if(!e)return!1;let n=window.getComputedStyle(e),r=document.scrollingElement||document.documentElement,i=/(auto|scroll)/.test(n.overflow+n.overflowX+n.overflowY);return e===r&&n.overflow!==`hidden`&&(i=!0),i&&t&&(i=e.scrollHeight!==e.clientHeight||e.scrollWidth!==e.clientWidth),i}function me(e,t){let n=e;for(V(n,t)&&(n=n.parentElement);n&&!V(n,t);)n=n.parentElement;return n||document.scrollingElement||document.documentElement}function H(e,t){let n=[],r=document.scrollingElement||document.documentElement;for(;e&&(V(e,t)&&n.push(e),e!==r);)e=e.parentElement;return n}function U(e,t,n={}){e!==t&&he(e,t,t.getBoundingClientRect(),n)}function he(e,t,n,r={}){let{block:i=`nearest`,inline:a=`nearest`}=r,o=e.scrollTop,s=e.scrollLeft,c=e.getBoundingClientRect(),l=window.getComputedStyle(t),u=window.getComputedStyle(e),d=document.scrollingElement||document.documentElement,f=e===d,p=e===d?0:c.top,m=e===d?e.clientHeight:c.bottom,h=e===d?0:c.left,g=e===d?e.clientWidth:c.right,_=parseFloat(l.scrollMarginTop)||0,v=parseFloat(l.scrollMarginBottom)||0,y=parseFloat(l.scrollMarginLeft)||0,b=parseFloat(l.scrollMarginRight)||0,x=parseFloat(u.scrollPaddingTop)||0,S=parseFloat(u.scrollPaddingBottom)||0,C=parseFloat(u.scrollPaddingLeft)||0,w=parseFloat(u.scrollPaddingRight)||0,T=parseFloat(u.borderTopWidth)||0,E=parseFloat(u.borderBottomWidth)||0,D=parseFloat(u.borderLeftWidth)||0,ne=parseFloat(u.borderRightWidth)||0,O=n.top-_,k=n.bottom+v,A=n.left-y,j=n.right+b,M=e===d?0:D+ne,N=e===d?0:T+E,re=e===d?0:e.offsetWidth-e.clientWidth-M,ie=e===d?0:e.offsetHeight-e.clientHeight-N,P=p+(f?0:T)+x,F=m-(f?0:E)-S-ie,I=h+(f?0:D)+C,L=g-(f?0:ne)-w;te()&&ee()||u.direction===`ltr`?L-=re:u.direction===`rtl`&&(I+=re);let R=O<P||k>F,z=A<I||j>L;if(R&&i===`start`)o+=O-P;else if(R&&i===`center`)o+=(O+k)/2-(P+F)/2;else if(R&&i===`end`)o+=k-F;else if(R&&i===`nearest`){let e=O-P,t=k-F;o+=Math.abs(e)<=Math.abs(t)?e:t}if(z&&a===`start`)s+=A-I;else if(z&&a===`center`)s+=(A+j)/2-(I+L)/2;else if(z&&a===`end`)s+=j-L;else if(z&&a===`nearest`){let e=A-I,t=j-L;s+=Math.abs(e)<=Math.abs(t)?e:t}e.scrollTo({left:s,top:o})}function ge(e,t={}){let{containingElement:n}=t;if(e&&e.isConnected){let t=document.scrollingElement||document.documentElement;if(window.getComputedStyle(t).overflow!==`hidden`){let{left:t,top:r}=e.getBoundingClientRect();e?.scrollIntoView?.({block:`nearest`});let{left:i,top:a}=e.getBoundingClientRect();(Math.abs(t-i)>1||Math.abs(r-a)>1)&&(n?.scrollIntoView?.({block:`center`,inline:`center`}),e.scrollIntoView?.({block:`nearest`}))}else{let{left:t,top:r}=e.getBoundingClientRect(),i=H(e,!0);for(let t of i)U(t,e);let{left:a,top:o}=e.getBoundingClientRect();if(Math.abs(t-a)>1||Math.abs(r-o)>1){i=n?H(n,!0):[];for(let e of i)U(e,n,{block:`center`,inline:`center`});for(let t of H(e,!0))U(t,e)}}}}var _e=0,W=new Map;function ve(e){let[t,n]=(0,k.useState)();return g(()=>{if(!e)return;let t=W.get(e);if(t)n(t.element.id);else{let r=`react-aria-description-${_e++}`;n(r);let i=document.createElement(`div`);i.id=r,i.style.display=`none`,i.textContent=e,document.body.appendChild(i),t={refCount:0,element:i},W.set(e,t)}return t.refCount++,()=>{t&&--t.refCount===0&&(t.element.remove(),W.delete(e))}},[e]),{"aria-describedby":e?t:void 0}}var ye={border:0,clip:`rect(0 0 0 0)`,clipPath:`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:0,position:`absolute`,width:`1px`,whiteSpace:`nowrap`};function be(e={}){let{style:t,isFocusable:n}=e,[r,i]=(0,k.useState)(!1),{focusWithinProps:a}=h({isDisabled:!n,onFocusWithinChange:e=>i(e)}),o=(0,k.useMemo)(()=>r?t:t?{...ye,...t}:ye,[r]);return{visuallyHiddenProps:{...a,style:o}}}function xe(e){let{children:t,elementType:n=`div`,isFocusable:r,style:i,...a}=e,{visuallyHiddenProps:o}=be(e);return k.createElement(n,v(a,o),t)}var Se=class{constructor(e,t,n,r){this._walkerStack=[],this._currentSetFor=new Set,this._acceptNode=e=>{if(e.nodeType===Node.ELEMENT_NODE){let t=e.shadowRoot;if(t){let e=this._doc.createTreeWalker(t,this.whatToShow,{acceptNode:this._acceptNode});return this._walkerStack.unshift(e),NodeFilter.FILTER_ACCEPT}if(typeof this.filter==`function`)return this.filter(e);if(this.filter?.acceptNode)return this.filter.acceptNode(e);if(this.filter===null)return NodeFilter.FILTER_ACCEPT}return NodeFilter.FILTER_SKIP},this._doc=e,this.root=t,this.filter=r??null,this.whatToShow=n??NodeFilter.SHOW_ALL,this._currentNode=t,this._walkerStack.unshift(e.createTreeWalker(t,n,this._acceptNode));let i=t.shadowRoot;if(i){let e=this._doc.createTreeWalker(i,this.whatToShow,{acceptNode:this._acceptNode});this._walkerStack.unshift(e)}}get currentNode(){return this._currentNode}set currentNode(e){if(!_(this.root,e))throw Error(`Cannot set currentNode to a node that is not contained by the root node.`);let t=[],n=e,r=e;for(this._currentNode=e;n&&n!==this.root;)if(n.nodeType===Node.DOCUMENT_FRAGMENT_NODE){let e=n,i=this._doc.createTreeWalker(e,this.whatToShow,{acceptNode:this._acceptNode});t.push(i),i.currentNode=r,this._currentSetFor.add(i),n=r=e.host}else n=n.parentNode;let i=this._doc.createTreeWalker(this.root,this.whatToShow,{acceptNode:this._acceptNode});t.push(i),i.currentNode=r,this._currentSetFor.add(i),this._walkerStack=t}get doc(){return this._doc}firstChild(){let e=this.currentNode,t=this.nextNode();return _(e,t)?(t&&(this.currentNode=t),t):(this.currentNode=e,null)}lastChild(){let e=this._walkerStack[0].lastChild();return e&&(this.currentNode=e),e}nextNode(){let e=this._walkerStack[0].nextNode();if(e){if(e.shadowRoot){let t;if(typeof this.filter==`function`?t=this.filter(e):this.filter?.acceptNode&&(t=this.filter.acceptNode(e)),t===NodeFilter.FILTER_ACCEPT)return this.currentNode=e,e;let n=this.nextNode();return n&&(this.currentNode=n),n}return e&&(this.currentNode=e),e}if(this._walkerStack.length>1){this._walkerStack.shift();let e=this.nextNode();return e&&(this.currentNode=e),e}return null}previousNode(){let e=this._walkerStack[0];if(e.currentNode===e.root){if(this._currentSetFor.has(e)){if(this._currentSetFor.delete(e),this._walkerStack.length>1){this._walkerStack.shift();let e=this.previousNode();return e&&(this.currentNode=e),e}return null}return null}let t=e.previousNode();if(t){if(t.shadowRoot){let e;if(typeof this.filter==`function`?e=this.filter(t):this.filter?.acceptNode&&(e=this.filter.acceptNode(t)),e===NodeFilter.FILTER_ACCEPT)return t&&(this.currentNode=t),t;let n=this.lastChild();return n&&(this.currentNode=n),n}return t&&(this.currentNode=t),t}if(this._walkerStack.length>1){this._walkerStack.shift();let e=this.previousNode();return e&&(this.currentNode=e),e}return null}nextSibling(){return null}previousSibling(){return null}parentNode(){return null}};function Ce(e,t,n,r){return p()?new Se(e,t,n,r):e.createTreeWalker(t,n,r)}var we=k.createContext(null),Te=`react-aria-focus-scope-restore`,G=null;function Ee(e){let{children:t,contain:n,restoreFocus:r,autoFocus:i}=e,a=(0,k.useRef)(null),o=(0,k.useRef)(null),s=(0,k.useRef)([]),{parentNode:c}=(0,k.useContext)(we)||{},l=(0,k.useMemo)(()=>new Ue({scopeRef:s}),[s]);g(()=>{let e=c||$.root;if($.getTreeNode(e.scopeRef)&&G&&!X(G,e.scopeRef)){let t=$.getTreeNode(G);t&&(e=t)}e.addChild(l),$.addNode(l)},[l,c]),g(()=>{let e=$.getTreeNode(s);e&&(e.contain=!!n)},[n]),g(()=>{let e=a.current?.nextSibling,t=[],n=e=>e.stopPropagation();for(;e&&e!==o.current;)t.push(e),e.addEventListener(Te,n),e=e.nextSibling;return s.current=t,()=>{for(let e of t)e.removeEventListener(Te,n)}},[t]),Ie(s,r,n),Ae(s,n),Re(s,r,n),Fe(s,i),(0,k.useEffect)(()=>{let e=D(f(s.current?s.current[0]:void 0)),t=null;if(J(e,s.current)){for(let n of $.traverse())n.scopeRef&&J(e,n.scopeRef.current)&&(t=n);t===$.getTreeNode(s)&&(G=t.scopeRef)}},[s]),g(()=>()=>{let e=$.getTreeNode(s)?.parent?.scopeRef??null;(s===G||X(s,G))&&(!e||$.getTreeNode(e))&&(G=e),$.removeTreeNode(s)},[s]);let u=(0,k.useMemo)(()=>De(s),[]),d=(0,k.useMemo)(()=>({focusManager:u,parentNode:l}),[l,u]);return k.createElement(we.Provider,{value:d},k.createElement(`span`,{"data-focus-scope-start":!0,hidden:!0,ref:a}),t,k.createElement(`span`,{"data-focus-scope-end":!0,hidden:!0,ref:o}))}function De(e){return{focusNext(t={}){let n=e.current,{from:r,tabbable:i,wrap:a,accept:o}=t,s=r||D(f(n[0]??void 0)),c=n[0].previousElementSibling,l=Q(K(n),{tabbable:i,accept:o},n);l.currentNode=J(s,n)?s:c;let u=l.nextNode();return!u&&a&&(l.currentNode=c,u=l.nextNode()),u&&Z(u,!0),u},focusPrevious(t={}){let n=e.current,{from:r,tabbable:i,wrap:a,accept:o}=t,s=r||D(f(n[0]??void 0)),c=n[n.length-1].nextElementSibling,l=Q(K(n),{tabbable:i,accept:o},n);l.currentNode=J(s,n)?s:c;let u=l.previousNode();return!u&&a&&(l.currentNode=c,u=l.previousNode()),u&&Z(u,!0),u},focusFirst(t={}){let n=e.current,{tabbable:r,accept:i}=t,a=Q(K(n),{tabbable:r,accept:i},n);a.currentNode=n[0].previousElementSibling;let o=a.nextNode();return o&&Z(o,!0),o},focusLast(t={}){let n=e.current,{tabbable:r,accept:i}=t,a=Q(K(n),{tabbable:r,accept:i},n);a.currentNode=n[n.length-1].nextElementSibling;let o=a.previousNode();return o&&Z(o,!0),o}}}function K(e){return e[0].parentElement}function q(e){let t=$.getTreeNode(G);for(;t&&t.scopeRef!==e;){if(t.contain)return!1;t=t.parent}return!0}function Oe(e){if(!e.form)return Array.from(f(e).querySelectorAll(`input[type="radio"][name="${CSS.escape(e.name)}"]`)).filter(e=>!e.form);let t=e.form.elements.namedItem(e.name),n=C(e);return t instanceof n.RadioNodeList?Array.from(t).filter(e=>e instanceof n.HTMLInputElement):t instanceof n.HTMLInputElement?[t]:[]}function ke(e){if(e.checked)return!0;let t=Oe(e);return t.length>0&&!t.some(e=>e.checked)}function Ae(e,t){let n=(0,k.useRef)(void 0),r=(0,k.useRef)(void 0);g(()=>{let i=e.current;if(!t){r.current&&=(cancelAnimationFrame(r.current),void 0);return}let a=f(i?i[0]:void 0),o=t=>{if(t.key!==`Tab`||t.altKey||t.ctrlKey||t.metaKey||!q(e)||t.isComposing)return;let n=D(a),r=e.current;if(!r||!J(n,r))return;let i=Q(K(r),{tabbable:!0},r);if(!n)return;i.currentNode=n;let o=t.shiftKey?i.previousNode():i.nextNode();o||=(i.currentNode=t.shiftKey?r[r.length-1].nextElementSibling:r[0].previousElementSibling,t.shiftKey?i.previousNode():i.nextNode()),t.preventDefault(),o&&(Z(o,!0),o instanceof C(o).HTMLInputElement&&o.select())},s=t=>{(!G||X(G,e))&&J(m(t),e.current)?(G=e,n.current=m(t)):q(e)&&!Y(m(t),e)?n.current?Z(n.current):G&&G.current&&Pe(G.current):q(e)&&(n.current=m(t))},c=t=>{r.current&&cancelAnimationFrame(r.current),r.current=requestAnimationFrame(()=>{let r=w(),i=(r===`virtual`||r===null)&&x()&&b(),o=D(a);if(!i&&o&&q(e)&&!Y(o,e)){G=e;let r=m(t);r&&r.isConnected?(n.current=r,Z(n.current)):G.current&&Pe(G.current)}})};return a.addEventListener(`keydown`,o,!1),a.addEventListener(`focusin`,s,!1),i?.forEach(e=>e.addEventListener(`focusin`,s,!1)),i?.forEach(e=>e.addEventListener(`focusout`,c,!1)),()=>{a.removeEventListener(`keydown`,o,!1),a.removeEventListener(`focusin`,s,!1),i?.forEach(e=>e.removeEventListener(`focusin`,s,!1)),i?.forEach(e=>e.removeEventListener(`focusout`,c,!1))}},[e,t]),g(()=>()=>{r.current&&cancelAnimationFrame(r.current)},[r])}function je(e){return Y(e)}function J(e,t){return!e||!t?!1:t.some(t=>_(t,e))}function Y(e,t=null){if(e instanceof Element&&e.closest(`[data-react-aria-top-layer]`))return!0;for(let{scopeRef:n}of $.traverse($.getTreeNode(t)))if(n&&J(e,n.current))return!0;return!1}function Me(e){return Y(e,G)}function X(e,t){let n=$.getTreeNode(t)?.parent;for(;n;){if(n.scopeRef===e)return!0;n=n.parent}return!1}function Z(e,t=!1){if(e!=null&&!t)try{T(e)}catch{}else if(e!=null)try{e.focus()}catch{}}function Ne(e,t=!0){let n=e[0].previousElementSibling,r=K(e),i=Q(r,{tabbable:t},e);i.currentNode=n;let a=i.nextNode();return t&&!a&&(r=K(e),i=Q(r,{tabbable:!1},e),i.currentNode=n,a=i.nextNode()),a}function Pe(e,t=!0){Z(Ne(e,t))}function Fe(e,t){let n=k.useRef(t);(0,k.useEffect)(()=>{if(n.current){G=e;let t=f(e.current?e.current[0]:void 0);!J(D(t),G.current)&&e.current&&Pe(e.current)}n.current=!1},[e])}function Ie(e,t,n){g(()=>{if(t||n)return;let r=e.current,i=f(r?r[0]:void 0),a=t=>{let n=m(t);J(n,e.current)?G=e:je(n)||(G=null)};return i.addEventListener(`focusin`,a,!1),r?.forEach(e=>e.addEventListener(`focusin`,a,!1)),()=>{i.removeEventListener(`focusin`,a,!1),r?.forEach(e=>e.removeEventListener(`focusin`,a,!1))}},[e,t,n])}function Le(e){let t=$.getTreeNode(G);for(;t&&t.scopeRef!==e;){if(t.nodeToRestore)return!1;t=t.parent}return t?.scopeRef===e}function Re(e,t,n){let r=(0,k.useRef)(typeof document<`u`?D(f(e.current?e.current[0]:void 0)):null);g(()=>{let r=e.current,i=f(r?r[0]:void 0);if(!t||n)return;let a=()=>{(!G||X(G,e))&&J(D(i),e.current)&&(G=e)};return i.addEventListener(`focusin`,a,!1),r?.forEach(e=>e.addEventListener(`focusin`,a,!1)),()=>{i.removeEventListener(`focusin`,a,!1),r?.forEach(e=>e.removeEventListener(`focusin`,a,!1))}},[e,n]),g(()=>{let r=f(e.current?e.current[0]:void 0);if(!t)return;let i=t=>{if(t.key!==`Tab`||t.altKey||t.ctrlKey||t.metaKey||!q(e)||t.isComposing)return;let n=r.activeElement;if(!Y(n,e)||!Le(e))return;let i=$.getTreeNode(e);if(!i)return;let a=i.nodeToRestore,o=Q(r.body,{tabbable:!0});o.currentNode=n;let s=t.shiftKey?o.previousNode():o.nextNode();if((!a||!a.isConnected||a===r.body)&&(a=void 0,i.nodeToRestore=void 0),(!s||!Y(s,e))&&a){o.currentNode=a;do s=t.shiftKey?o.previousNode():o.nextNode();while(Y(s,e));t.preventDefault(),t.stopPropagation(),s?Z(s,!0):je(a)?Z(a,!0):n.blur()}};return n||r.addEventListener(`keydown`,i,!0),()=>{n||r.removeEventListener(`keydown`,i,!0)}},[e,t,n]),g(()=>{let n=f(e.current?e.current[0]:void 0);if(!t)return;let i=$.getTreeNode(e);if(i)return i.nodeToRestore=r.current??void 0,()=>{let r=$.getTreeNode(e);if(!r)return;let i=r.nodeToRestore,a=D(n);if(t&&i&&(a&&Y(a,e)||a===n.body&&Le(e))){let t=$.clone();requestAnimationFrame(()=>{if(n.activeElement===n.body){let n=t.getTreeNode(e);for(;n;){if(n.nodeToRestore&&n.nodeToRestore.isConnected){ze(n.nodeToRestore);return}n=n.parent}for(n=t.getTreeNode(e);n;){if(n.scopeRef&&n.scopeRef.current&&$.getTreeNode(n.scopeRef)){let e=Ne(n.scopeRef.current,!0);if(e){ze(e);return}}n=n.parent}}})}}},[e,t])}function ze(e){e.dispatchEvent(new CustomEvent(Te,{bubbles:!0,cancelable:!0}))&&Z(e)}function Q(e,t,n){let r=t?.tabbable?y:ne,i=e?.nodeType===Node.ELEMENT_NODE?e:null,a=f(i),o=Ce(a,e||a,NodeFilter.SHOW_ELEMENT,{acceptNode(e){return _(t?.from,e)||t?.tabbable&&e.tagName===`INPUT`&&e.getAttribute(`type`)===`radio`&&(!ke(e)||o.currentNode.tagName===`INPUT`&&o.currentNode.type===`radio`&&o.currentNode.name===e.name)?NodeFilter.FILTER_REJECT:r(e)&&(!n||J(e,n))&&(!t?.accept||t.accept(e))?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});return t?.from&&(o.currentNode=t.from),o}function Be(e,t={}){return{focusNext(n={}){let r=e.current;if(!r)return null;let{from:i,tabbable:a=t.tabbable,wrap:o=t.wrap,accept:s=t.accept}=n,c=i||D(f(r)),l=Q(r,{tabbable:a,accept:s});_(r,c)&&(l.currentNode=c);let u=l.nextNode();return!u&&o&&(l.currentNode=r,u=l.nextNode()),u&&Z(u,!0),u},focusPrevious(n=t){let r=e.current;if(!r)return null;let{from:i,tabbable:a=t.tabbable,wrap:o=t.wrap,accept:s=t.accept}=n,c=i||D(f(r)),l=Q(r,{tabbable:a,accept:s});if(_(r,c))l.currentNode=c;else{let e=Ve(l);return e&&Z(e,!0),e??null}let u=l.previousNode();if(!u&&o){l.currentNode=r;let e=Ve(l);if(!e)return null;u=e}return u&&Z(u,!0),u??null},focusFirst(n=t){let r=e.current;if(!r)return null;let{tabbable:i=t.tabbable,accept:a=t.accept}=n,o=Q(r,{tabbable:i,accept:a}).nextNode();return o&&Z(o,!0),o},focusLast(n=t){let r=e.current;if(!r)return null;let{tabbable:i=t.tabbable,accept:a=t.accept}=n,o=Ve(Q(r,{tabbable:i,accept:a}));return o&&Z(o,!0),o??null}}}function Ve(e){let t,n;do n=e.lastChild(),n&&(t=n);while(n);return t}var He=class e{constructor(){this.fastMap=new Map,this.root=new Ue({scopeRef:null}),this.fastMap.set(null,this.root)}get size(){return this.fastMap.size}getTreeNode(e){return this.fastMap.get(e)}addTreeNode(e,t,n){let r=this.fastMap.get(t??null);if(!r)return;let i=new Ue({scopeRef:e});r.addChild(i),i.parent=r,this.fastMap.set(e,i),n&&(i.nodeToRestore=n)}addNode(e){this.fastMap.set(e.scopeRef,e)}removeTreeNode(e){if(e===null)return;let t=this.fastMap.get(e);if(!t)return;let n=t.parent;for(let e of this.traverse())e!==t&&t.nodeToRestore&&e.nodeToRestore&&t.scopeRef&&t.scopeRef.current&&J(e.nodeToRestore,t.scopeRef.current)&&(e.nodeToRestore=t.nodeToRestore);let r=t.children;n&&(n.removeChild(t),r.size>0&&r.forEach(e=>n&&n.addChild(e))),this.fastMap.delete(t.scopeRef)}*traverse(e=this.root){if(e.scopeRef!=null&&(yield e),e.children.size>0)for(let t of e.children)yield*this.traverse(t)}clone(){let t=new e;for(let e of this.traverse())t.addTreeNode(e.scopeRef,e.parent?.scopeRef??null,e.nodeToRestore);return t}},Ue=class{constructor(e){this.children=new Set,this.contain=!1,this.scopeRef=e.scopeRef}addChild(e){this.children.add(e),e.parent=this}removeChild(e){this.children.delete(e),e.parent=void 0}},$=new He,We=new Map;function Ge(e){let{locale:t}=O(),n=t+(e?Object.entries(e).sort((e,t)=>e[0]<t[0]?-1:1).join():``);if(We.has(n))return We.get(n);let r=new Intl.Collator(t,e);return We.set(n,r),r}var Ke=n(),qe=i(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,{variants:{size:{default:`h-6 w-11 mb-1`,sm:`h-4.5 w-8.5`,xs:`h-4 w-7`}},defaultVariants:{size:`default`}}),Je=i(`pointer-events-none block rounded-full bg-background shadow-xs ring-0 transition-transform`,{variants:{size:{default:`h-5 w-5 data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0`,sm:`h-3.5 w-3.5 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0`,xs:`h-3 w-3 data-[state=checked]:translate-x-3 data-[state=unchecked]:translate-x-0`}},defaultVariants:{size:`default`}}),Ye=k.forwardRef((e,t)=>{let n=(0,Ke.c)(16),r,i,o;n[0]===e?(r=n[1],i=n[2],o=n[3]):({className:r,size:o,...i}=e,n[0]=e,n[1]=r,n[2]=i,n[3]=o);let s;n[4]!==r||n[5]!==o?(s=a(qe({size:o}),r),n[4]=r,n[5]=o,n[6]=s):s=n[6];let c;n[7]===o?c=n[8]:(c=a(Je({size:o})),n[7]=o,n[8]=c);let l;n[9]===c?l=n[10]:(l=(0,A.jsx)(oe,{className:c}),n[9]=c,n[10]=l);let u;return n[11]!==i||n[12]!==t||n[13]!==s||n[14]!==l?(u=(0,A.jsx)(z,{className:s,...i,ref:t,children:l}),n[11]=i,n[12]=t,n[13]=s,n[14]=l,n[15]=u):u=n[15],u});Ye.displayName=z.displayName;export{fe as _,Q as a,xe as c,U as d,ge as f,ue as g,pe as h,Ee as i,be as l,V as m,Ge as n,Be as o,me as p,Me as r,Ce as s,Ye as t,ve as u};
|