@marimo-team/frontend 0.24.1-dev2 → 0.24.1-dev21
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-DqJypoFY.js → CellStatus-DsvXjUsv.js} +1 -1
- package/dist/assets/{ConnectedDataExplorerComponent-DLvmqIcV.js → ConnectedDataExplorerComponent-WU7zjB7Z.js} +1 -1
- package/dist/assets/{JsonOutput-DnrBQBRT.js → JsonOutput-D62UH4Ip.js} +7 -7
- package/dist/assets/{MarimoErrorOutput-BVdFtnJz.js → MarimoErrorOutput-B_IfCm1k.js} +7 -7
- package/dist/assets/{RenderHTML-X9kskQZ0.js → RenderHTML-DY5kbf6q.js} +1 -1
- package/dist/assets/{RunButton-D83R2wvd.js → RunButton-BfHw11b3.js} +1 -1
- package/dist/assets/{add-cell-with-ai-HD16K3PB.js → add-cell-with-ai-B25FLoLF.js} +12 -12
- package/dist/assets/{add-connection-dialog-V86wrXca.js → add-connection-dialog-B05rbnef.js} +6 -6
- package/dist/assets/{agent-panel-XdLSrKjl.js → agent-panel-CQobsqAS.js} +6 -6
- package/dist/assets/{ai-model-dropdown-BJp70TST.js → ai-model-dropdown-CmDWOIkZ.js} +4 -4
- package/dist/assets/app-config-button-BkwiW00-.js +1 -0
- package/dist/assets/{blob-BKW9TqBu.js → blob-BqDSSN5X.js} +1 -1
- package/dist/assets/{cell-editor-DQSrfeL3.js → cell-editor-CefMlZnX.js} +14 -14
- package/dist/assets/cell-link-CP4zF1rO.js +1 -0
- package/dist/assets/{cells-DTFqEQb0.js → cells-DD-zwhxi.js} +72 -72
- package/dist/assets/{chat-display-CclXFQQP.js → chat-display-59QZ49m7.js} +1 -1
- package/dist/assets/{chat-panel-ft0VIKS8.js → chat-panel-CDZbG1OG.js} +2 -2
- package/dist/assets/{chat-ui-DUYenr6D.js → chat-ui-DoBTbTFY.js} +1 -1
- package/dist/assets/{column-preview-BLap3eAk.js → column-preview-BNg0hwmL.js} +1 -1
- package/dist/assets/{command-palette-C7nz0zHt.js → command-palette-gEcd355-.js} +1 -1
- package/dist/assets/{common-DKQZgzC9.js → common-CcYiDLMe.js} +1 -1
- package/dist/assets/{components-Bf_hykBb.js → components-B4D3PZ3j.js} +1 -1
- package/dist/assets/config-DFK5eCC3.js +1 -0
- package/dist/assets/{datasource-DZgUyqAK.js → datasource-DAM_bXu_.js} +2 -2
- package/dist/assets/dependency-graph-panel-01bZMvwS.js +5 -0
- package/dist/assets/{documentation-panel-BQYA8gCW.js → documentation-panel-BhruLk_O.js} +1 -1
- package/dist/assets/{download-_oAlkvj6.js → download-DT1x-ePG.js} +1 -1
- package/dist/assets/{edit-page-DnXTBsfC.js → edit-page-C8uQVdbi.js} +6 -6
- package/dist/assets/{error-entries-uxjSsTal.js → error-entries-Dg9m5P8l.js} +3 -3
- package/dist/assets/{error-panel-Bq0TKquh.js → error-panel-By_xNe1V.js} +1 -1
- package/dist/assets/{file-explorer-panel-uhg7VNMd.js → file-explorer-panel-BzTVzCS7.js} +3 -3
- package/dist/assets/{file-icons-V3puz20c.js → file-icons-Dop5RazI.js} +1 -1
- package/dist/assets/{file-name-input-DWf6YZwM.js → file-name-input-C5_fsJ6t.js} +1 -1
- package/dist/assets/{floating-outline-Vqr5D17R.js → floating-outline-Bt2aLttK.js} +1 -1
- package/dist/assets/{focus-BTlyH5K_.js → focus-DCZbWsqm.js} +1 -1
- package/dist/assets/{form-Bb1JVuzT.js → form-Cj3PfSUI.js} +1 -1
- package/dist/assets/{form-CRSnWxLR.js → form-DHy5wB3F.js} +1 -1
- package/dist/assets/{glide-data-editor-BNZxtmKn.js → glide-data-editor-BPPCsS2s.js} +2 -2
- package/dist/assets/{home-page-RduyhdYP.js → home-page-EsENjhWM.js} +2 -2
- package/dist/assets/{html-to-image-BsXiWo0v.js → html-to-image-CajdmeRM.js} +1 -1
- package/dist/assets/index-BZ-HxYIU.js +38 -0
- package/dist/assets/index-CxZ6uZaz.css +2 -0
- package/dist/assets/{kiosk-mode-BH15-Gn-.js → kiosk-mode-B8UhlOLw.js} +1 -1
- package/dist/assets/{layout-1X5SpE18.js → layout-B73d8K81.js} +5 -5
- package/dist/assets/{logs-panel-CVxksxou.js → logs-panel-CYMHvjs-.js} +1 -1
- package/dist/assets/{markdown-renderer-BjuEVUOa.js → markdown-renderer-DM-Whfio.js} +1 -1
- package/dist/assets/{name-cell-input-CtYGGTR5.js → name-cell-input-DF8MnZDV.js} +1 -1
- package/dist/assets/{outline-panel-BhxoKAbS.js → outline-panel-Q7h5hFfo.js} +1 -1
- package/dist/assets/{packages-panel-BWP3YWNW.js → packages-panel-BW4xGU0r.js} +1 -1
- package/dist/assets/{pair-with-agent-modal-BCMZbqSR.js → pair-with-agent-modal-DiDLAjxV.js} +1 -1
- package/dist/assets/panel-accordion-state-iff6EfKa.js +1 -0
- package/dist/assets/{panels-D40pa9F1.js → panels-BqKyRqOy.js} +2 -2
- package/dist/assets/{process-output-WaMx3G7b.js → process-output-B9grqmZC.js} +1 -1
- package/dist/assets/{radio-group-5KDs5aO1.js → radio-group-B8t5cIdU.js} +1 -1
- package/dist/assets/{readonly-code-display-DnHcjfFl.js → readonly-code-display-CY-jDwQL.js} +1 -1
- package/dist/assets/{readonly-python-code-BV8otm7e.js → readonly-python-code-DFjpK9Hc.js} +1 -1
- package/dist/assets/{reveal-component-yVci-fc9.js → reveal-component-DWjuDjk-.js} +2 -2
- package/dist/assets/{run-page-aQycuCjn.js → run-page-DNJz4YBq.js} +1 -1
- package/dist/assets/{scratchpad-panel-lsqN24Au.js → scratchpad-panel-BOQN7LjT.js} +1 -1
- package/dist/assets/{session-panel-C4JUkPt7.js → session-panel-C9zMMa1x.js} +1 -1
- package/dist/assets/{skeleton-DOZFvsSE.js → skeleton-mj_3hAv8.js} +1 -1
- package/dist/assets/{snippets-panel-QNY_Dl2J.js → snippets-panel-C-VlGXwd.js} +1 -1
- package/dist/assets/spec-C_psFYbu.js +1 -0
- package/dist/assets/state-BSVx1akM.js +3 -0
- package/dist/assets/{state-ByxLiTvP.js → state-C1e6in0R.js} +1 -1
- package/dist/assets/{switch-CDT2KH2g.js → switch-ulnbZFaI.js} +1 -1
- package/dist/assets/{terminal-UyHT9ie2.js → terminal-Bo6pnmSU.js} +1 -1
- package/dist/assets/{tracing-BiBPyXVg.js → tracing-D-L-9q2d.js} +1 -1
- package/dist/assets/{tracing-panel-D8LtcU_g.js → tracing-panel-DQzhu-hj.js} +2 -2
- package/dist/assets/{tree-actions-DUAdNn1i.js → tree-actions-BBmIijvt.js} +1 -1
- package/dist/assets/{useBoolean-CgN_4RAl.js → useBoolean-C_UV6tQ7.js} +1 -1
- package/dist/assets/{useCellActionButton-Bp2eEIzO.js → useCellActionButton-COoOWq__.js} +1 -1
- package/dist/assets/{useDeleteCell-DO-9USfB.js → useDeleteCell-C802AuEJ.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-Bi8pUBnn.js → useDependencyPanelTab-DR6NOy5O.js} +1 -1
- package/dist/assets/useNotebookActions-BXVkcfqk.js +12 -0
- package/dist/assets/{useRunCells-BpZ_0Xuz.js → useRunCells-DuxMdaXo.js} +1 -1
- package/dist/assets/{useSplitCell-C2fjcfID.js → useSplitCell-B1EAP5Nv.js} +1 -1
- package/dist/assets/{utils-Y4n-X10o.js → utils-Bp3MLwWq.js} +1 -1
- package/dist/assets/{vega-component-3G_aA1Wa.js → vega-component-dzk5T-cc.js} +1 -1
- package/dist/assets/{vega-embed-container-CH1lX0V6.js → vega-embed-container-D0V0wn9T.js} +1 -1
- package/dist/index.html +29 -29
- package/package.json +1 -1
- package/src/__mocks__/requests.ts +4 -0
- package/src/components/app-config/optional-features.test.ts +78 -0
- package/src/components/app-config/optional-features.tsx +33 -6
- package/src/components/data-table/__tests__/column_formatting.test.ts +7 -0
- package/src/components/data-table/charts/__tests__/schemas.test.ts +17 -2
- package/src/components/data-table/charts/chart-spec/types.ts +2 -0
- package/src/components/data-table/column-formatting/feature.ts +1 -0
- package/src/components/data-table/column-formatting/types.ts +1 -0
- package/src/components/data-table/column-summary/chart-spec-model.tsx +1 -0
- package/src/components/data-table/column-summary/column-summary.tsx +1 -0
- package/src/components/data-table/columns.tsx +4 -3
- package/src/components/datasets/__tests__/icons.test.ts +10 -2
- package/src/components/datasets/icons.tsx +4 -0
- package/src/components/datasources/__tests__/components.test.tsx +14 -1
- package/src/components/editor/actions/export-dialog/__tests__/export-dialog.test.tsx +206 -34
- package/src/components/editor/actions/export-dialog/export-dialog.tsx +9 -3
- package/src/components/editor/actions/export-dialog/format-notice.tsx +69 -24
- package/src/components/editor/actions/export-dialog/use-export-dialog.ts +27 -2
- package/src/components/ui/toaster.tsx +14 -1
- package/src/core/codemirror/code-lens/__tests__/popover.test.ts +13 -0
- package/src/core/codemirror/code-lens/popover.tsx +11 -5
- package/src/core/codemirror/language/languages/sql/__tests__/renderers.test.tsx +15 -4
- package/src/core/codemirror/language/languages/sql/renderers.tsx +1 -0
- package/src/core/islands/bridge.ts +1 -0
- package/src/core/kernel/messages.ts +1 -0
- package/src/core/mode.ts +6 -1
- package/src/core/network/__tests__/requests-lazy.test.ts +40 -0
- package/src/core/network/__tests__/requests-network.test.ts +13 -0
- package/src/core/network/requests-lazy.ts +11 -4
- package/src/core/network/requests-network.ts +8 -0
- package/src/core/network/requests-static.ts +1 -0
- package/src/core/network/requests-toasting.tsx +1 -0
- package/src/core/network/types.ts +5 -0
- package/src/core/wasm/bridge.ts +1 -0
- package/src/plugins/impl/MatrixPlugin.tsx +256 -35
- package/src/plugins/impl/__tests__/DataEditorPlugin.test.ts +13 -1
- package/src/plugins/impl/__tests__/MatrixPlugin.test.tsx +540 -3
- package/src/plugins/impl/data-editor/glide-data-editor.tsx +1 -0
- package/src/plugins/impl/data-editor/glide-utils.ts +1 -0
- package/src/plugins/impl/data-frames/__tests__/schema.test.ts +9 -1
- package/src/plugins/impl/data-frames/utils/__tests__/operators.test.ts +8 -0
- package/src/plugins/impl/data-frames/utils/operators.ts +1 -1
- package/src/plugins/impl/vega/__tests__/vega.test.ts +22 -4
- package/src/plugins/impl/vega/utils.ts +3 -0
- package/dist/assets/app-config-button-C2zJXSrK.js +0 -1
- package/dist/assets/cell-link-D26WjdN1.js +0 -1
- package/dist/assets/config-EoJoeZuK.js +0 -1
- package/dist/assets/dependency-graph-panel-CH6kIoat.js +0 -5
- package/dist/assets/index-C5WESBbZ.js +0 -38
- package/dist/assets/index-WoaGtlKd.css +0 -2
- package/dist/assets/panel-accordion-state-0CKLFeAf.js +0 -1
- package/dist/assets/spec-NeCHOv2Z.js +0 -1
- package/dist/assets/state-Ci7n55A9.js +0 -3
- package/dist/assets/useNotebookActions-Bm9VzJ_M.js +0 -12
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{o as H}from"./chunk-C4rtOYze.js";import{t as fe}from"./react-C60yClUi.js";import{Nt as xe}from"./cells-
|
|
1
|
+
import{o as H}from"./chunk-C4rtOYze.js";import{t as fe}from"./react-C60yClUi.js";import{Nt as xe}from"./cells-DD-zwhxi.js";import{_ as Q,c as ue,d as F,f as I,g as je,h as q,l as ve,m as ge,o as be,p as T,s as Ne,t as B,u as R,y as K}from"./zod-BIDX-mZr.js";import{t as X}from"./compiler-runtime-DnimoHo0.js";import{g as we}from"./useEventListener-DpNnLPuE.js";import{t as Ce}from"./objects-CrbstYTV.js";import{t as J}from"./cn-DCUzRj2J.js";import{t as ye}from"./jsx-runtime-3wZU7vFS.js";import{c as Se,i as Y,l as Oe,n as ke,r as Ve,s as $e,t as Ae}from"./select-CPo-KTTe.js";import{N as ee,P as re,W as Le}from"./JsonOutput-D62UH4Ip.js";import{t as Pe}from"./label-BOFHwHn7.js";import{n as Ee,t as Te}from"./radio-group-B8t5cIdU.js";import{t as _e}from"./tooltip-C9LWGQ7Y.js";import{r as ze,t as ne}from"./button-W__YVea9.js";import{t as se}from"./strings-DmKKoXrM.js";import{t as De}from"./plus-r1QITpsJ.js";import{t as Je}from"./refresh-ccw-neWzNbg7.js";import{n as Me,t as U}from"./input-BN98e517.js";import{a as w,c as O,d as Ze,f as Fe,g as Ie,n as k,o as V,r as S,s as N}from"./form-Cj3PfSUI.js";import{t as qe}from"./trash-2-BLxp8uxj.js";import{r as te}from"./textarea-Bn1AMfsk.js";const A={of(n){return JSON.stringify(n)},parse(n){if(!n)return{};try{return JSON.parse(n)}catch{return{label:n}}}};function ae(){return Math.floor(Math.random()*1e5)}function Be(n){return n instanceof B.ZodArray}function le(n){return n instanceof B.ZodPipe}function Ke(n){return n instanceof B.ZodTuple}function ie(n){return"unwrap"in n?n.unwrap():n}function M(n){let e=t=>{if(t instanceof T){let a=[...t.values];return t.values.size===1?a[0]:a}if(t instanceof R){let a=t.def.defaultValue;return typeof a=="function"?a():a}if(le(t))return e(t.in);if(Ke(t))return t.def.items.map(a=>e(a));if("unwrap"in t)return e(ie(t))};return n instanceof K||n instanceof F?e(n.options[0]):Be(n)?Ue(n)?[M(n.element)]:[]:n instanceof Q?"":n instanceof I?n.options[0]:n instanceof q?Object.fromEntries(Object.entries(n.shape).map(([t,a])=>[t,e(a)])):e(n)}function P(n){if(n instanceof T)return n;if(n instanceof q){let e=n.shape.type;if(e instanceof T)return e;throw Error("Invalid schema")}if(n instanceof K||n instanceof F)return P(n.options[0]);throw we.warn(n),Error("Invalid schema")}function Ue(n){return!n.safeParse([]).success}var oe=X(),ce=H(fe(),1),r=H(ye(),1),de=`
|
|
2
2
|
`;const me=n=>{let e=(0,oe.c)(24),{value:t,options:a,onChange:l,className:c,placeholder:o,textAreaClassName:f,comboBoxClassName:h}=n,[s,i]=(0,ce.useState)(!1),m;e[0]===t?m=e[1]:(m=Z(t),e[0]=t,e[1]=m);let p=m,x;e[2]!==h||e[3]!==l||e[4]!==a||e[5]!==o||e[6]!==s||e[7]!==f||e[8]!==p?(x=()=>s?(0,r.jsx)(W,{value:p,className:f,onChange:l,placeholder:o?`${o}: one per line`:"One value per line"}):(0,r.jsx)(ee,{placeholder:o,displayValue:We,className:J("w-full max-w-[400px]",h),multiple:!0,value:p,onValueChange:l,keepPopoverOpenOnSelect:!0,chips:!0,chipsClassName:"flex-row flex-wrap min-w-[210px]",children:a.map(Ge)}),e[2]=h,e[3]=l,e[4]=a,e[5]=o,e[6]=s,e[7]=f,e[8]=p,e[9]=x):x=e[9];let d=x,v;e[10]===c?v=e[11]:(v=J("flex gap-1",c),e[10]=c,e[11]=v);let u;e[12]===d?u=e[13]:(u=d(),e[12]=d,e[13]=u);let g=s?"Switch to multi-select":"Switch to textarea",j;e[14]===Symbol.for("react.memo_cache_sentinel")?(j=(0,r.jsx)(Ie,{className:"w-3 h-3"}),e[14]=j):j=e[14];let b;e[15]===s?b=e[16]:(b=(0,r.jsx)(Le,{size:"xs",onPressedChange:i,pressed:s,children:j}),e[15]=s,e[16]=b);let C;e[17]!==g||e[18]!==b?(C=(0,r.jsx)(_e,{content:g,children:b}),e[17]=g,e[18]=b,e[19]=C):C=e[19];let y;return e[20]!==v||e[21]!==u||e[22]!==C?(y=(0,r.jsxs)("div",{className:v,children:[u,C]}),e[20]=v,e[21]=u,e[22]=C,e[23]=y):y=e[23],y},W=n=>{let e=(0,oe.c)(11),{className:t,value:a,onChange:l,placeholder:c}=n,o,f;if(e[0]!==a){let m=Z(a);o=te,f=m.join(de),e[0]=a,e[1]=o,e[2]=f}else o=e[1],f=e[2];let h;e[3]===l?h=e[4]:(h=m=>{if(m.target.value===""){l([]);return}l(m.target.value.split(de))},e[3]=l,e[4]=h);let s=c?`${c}: one per line`:"One value per line",i;return e[5]!==o||e[6]!==t||e[7]!==f||e[8]!==h||e[9]!==s?(i=(0,r.jsx)(o,{value:f,className:t,rows:4,onChange:h,placeholder:s}),e[5]=o,e[6]=t,e[7]=f,e[8]=h,e[9]=s,e[10]=i):i=e[10],i};function Z(n){return n==null?[]:Array.isArray(n)?n:[n].filter(e=>e!=null||e!=="")}function We(n){return n}function Ge(n){return(0,r.jsx)(re,{value:n,children:n},n)}var E=X();const He=n=>{let e=(0,E.c)(14),{schema:t,form:a,path:l,renderers:c,children:o}=n,f=l===void 0?"":l,h,s,i,m;if(e[0]!==o||e[1]!==a||e[2]!==f||e[3]!==t||e[4]!==c){let x=c===void 0?[]:c;h=Ze,s=a,i=o,m=$({schema:t,form:a,path:f,renderers:x}),e[0]=o,e[1]=a,e[2]=f,e[3]=t,e[4]=c,e[5]=h,e[6]=s,e[7]=i,e[8]=m}else h=e[5],s=e[6],i=e[7],m=e[8];let p;return e[9]!==h||e[10]!==s||e[11]!==i||e[12]!==m?(p=(0,r.jsxs)(h,{...s,children:[i,m]}),e[9]=h,e[10]=s,e[11]=i,e[12]=m,e[13]=p):p=e[13],p};function $({schema:n,form:e,path:t,renderers:a}){for(let s of a){let{isMatch:i,Component:m}=s;if(i(n))return(0,r.jsx)(m,{schema:n,form:e,path:t})}let{label:l,description:c,special:o,direction:f="column",minLength:h}=A.parse(n.description||"");if(n instanceof R){let s=n.unwrap();return s=!s.description&&n.description?s.describe(n.description):s,$({schema:s,form:e,path:t,renderers:a})}if(n instanceof je){let s=n.unwrap();return s=!s.description&&n.description?s.describe(n.description):s,$({schema:s,form:e,path:t,renderers:a})}if(n instanceof q)return(0,r.jsxs)("div",{className:J("flex",f==="row"?"flex-row gap-6 items-start":f==="two-columns"?"grid grid-cols-2 gap-y-6":"flex-col gap-6"),children:[(0,r.jsx)(N,{children:l}),Ce.entries(n.shape).map(([s,i])=>{let m=i instanceof T,p=$({schema:i,form:e,path:er(t,s),renderers:a});return m?(0,r.jsx)(ce.Fragment,{children:p},s):(0,r.jsx)("div",{className:"flex flex-row align-start",children:p},s)})]});if(n instanceof Q)return o==="time"?(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:l}),(0,r.jsx)(S,{children:c}),(0,r.jsx)(k,{children:(0,r.jsx)(U,{...s,onValueChange:s.onChange,type:"time",className:"my-0"})}),(0,r.jsx)(O,{})]})}):(0,r.jsx)(he,{schema:n,form:e,path:t});if(n instanceof ue)return(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>(0,r.jsxs)(V,{children:[(0,r.jsxs)("div",{className:J("flex flex-row gap-2",c?"items-start":"items-center"),children:[(0,r.jsx)(k,{children:(0,r.jsx)(xe,{"data-testid":"marimo-plugin-data-frames-boolean-checkbox",checked:s.value,onCheckedChange:s.onChange,className:c?"mt-0.5":void 0})}),(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)(N,{children:l}),(0,r.jsx)(S,{children:c})]})]}),(0,r.jsx)(O,{})]})});if(n instanceof ge)return o==="random_number_button"?(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>(0,r.jsxs)(ne,{size:"xs","data-testid":"marimo-plugin-data-frames-random-number-button",variant:"secondary",onClick:()=>{s.onChange(ae())},children:[(0,r.jsx)(Je,{className:"w-3.5 h-3.5 mr-1"}),l]})}):(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:l}),(0,r.jsx)(S,{children:c}),(0,r.jsx)(k,{children:(0,r.jsx)(Me,{...s,className:"my-0",onValueChange:s.onChange})}),(0,r.jsx)(O,{})]})});if(n instanceof ve){let s=o==="datetime"?"datetime-local":o==="time"?"time":"date";return(0,r.jsx)(w,{control:e.control,name:t,render:({field:i})=>(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:l}),(0,r.jsx)(S,{children:c}),(0,r.jsx)(k,{children:(0,r.jsx)(U,{...i,onValueChange:i.onChange,type:s,className:"my-0"})}),(0,r.jsx)(O,{})]})})}if(n instanceof be)return(0,r.jsx)(he,{schema:n,form:e,path:t});if(n instanceof I)return(0,r.jsx)(Xe,{schema:n,form:e,path:t,options:n.options.map(s=>s.toString())});if(n instanceof Ne){if(o==="text_area_multiline")return(0,r.jsx)(Re,{schema:n,form:e,path:t});let s=n.element;return s instanceof I?(0,r.jsx)(Ye,{schema:n,form:e,path:t,itemLabel:l,options:s.options.map(i=>i.toString())}):(0,r.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,r.jsx)(Pe,{children:l}),(0,r.jsx)(Qe,{schema:n.element,form:e,path:t,minLength:h,renderers:a},t)]})}if(n instanceof F){let s=n.def,i=s.options,m=s.discriminator,p=x=>i.find(d=>P(d).value===x);return(0,r.jsx)(w,{control:e.control,name:t,render:({field:x})=>{let d=x.value,v=i.map(j=>P(j).value),u=d&&typeof d=="object"&&m in d?d[m]:v[0],g=p(u);return(0,r.jsxs)("div",{className:"flex flex-col",children:[(0,r.jsx)(N,{className:"mb-2",children:l}),(0,r.jsx)("div",{className:"flex border-b mb-4",children:v.map(j=>(0,r.jsx)("button",{type:"button",className:`px-4 py-2 text-sm ${u===j?"border-b-2 border-primary font-medium":"text-muted-foreground"}`,onClick:()=>{let b=p(j);b?x.onChange(M(b)):x.onChange({[m]:j})},children:j},j))}),(0,r.jsx)("div",{className:"flex flex-col",children:g&&$({schema:g,form:e,path:t,renderers:a})},u)]})}})}return n instanceof K?(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>{let i=n.options,m=s.value,p=i.map(d=>P(d).value);m||(m=p[0]);let x=i.find(d=>P(d).value===m);return(0,r.jsxs)("div",{className:"flex flex-col mb-4 gap-1",children:[(0,r.jsx)(N,{children:l}),(0,r.jsx)(Oe,{"data-testid":"marimo-plugin-data-frames-union-select",...s,children:p.map(d=>(0,r.jsx)("option",{value:d,children:d},d))}),x&&$({schema:x,form:e,path:t,renderers:a})]})}}):n instanceof T?(0,r.jsx)(w,{control:e.control,name:t,render:({field:s})=>(0,r.jsx)("input",{...s,type:"hidden",value:String([...n.values][0]??"")})}):"unwrap"in n?$({schema:ie(n),form:e,path:t,renderers:a}):le(n)?$({schema:n.in,form:e,path:t,renderers:a}):(0,r.jsxs)("div",{children:["Unknown schema type"," ",n==null?t:JSON.stringify(n.type??n)]})}var Qe=n=>{let e=(0,E.c)(39),{schema:t,form:a,path:l,minLength:c,renderers:o}=n,f;e[0]===t.description?f=e[1]:(f=A.parse(t.description||""),e[0]=t.description,e[1]=f);let{label:h,description:s}=f,i=a.control,m;e[2]!==i||e[3]!==l?(m={control:i,name:l},e[2]=i,e[3]=l,e[4]=m):m=e[4];let{fields:p,append:x,remove:d}=Fe(m),v=c!=null&&p.length<c,u=c==null||p.length>c,g;e[5]===h?g=e[6]:(g=(0,r.jsx)(N,{children:h}),e[5]=h,e[6]=g);let j;e[7]===s?j=e[8]:(j=(0,r.jsx)(S,{children:s}),e[7]=s,e[8]=j);let b;if(e[9]!==u||e[10]!==p||e[11]!==a||e[12]!==l||e[13]!==d||e[14]!==o||e[15]!==t){let D;e[17]!==u||e[18]!==a||e[19]!==l||e[20]!==d||e[21]!==o||e[22]!==t?(D=(pe,G)=>(0,r.jsxs)("div",{className:"flex flex-row pl-2 ml-2 border-l-2 border-disabled hover-actions-parent relative pr-5 pt-1 items-center w-fit",onKeyDown:ze.onEnter(rr),children:[$({schema:t,form:a,path:`${l}[${G}]`,renderers:o}),u&&(0,r.jsx)(qe,{className:"w-4 h-4 ml-2 my-1 text-muted-foreground hover:text-destructive cursor-pointer absolute right-0 top-5",onClick:()=>{d(G)}})]},pe.id),e[17]=u,e[18]=a,e[19]=l,e[20]=d,e[21]=o,e[22]=t,e[23]=D):D=e[23],b=p.map(D),e[9]=u,e[10]=p,e[11]=a,e[12]=l,e[13]=d,e[14]=o,e[15]=t,e[16]=b}else b=e[16];let C;e[24]!==v||e[25]!==c?(C=v&&(0,r.jsx)("div",{className:"text-destructive text-xs font-semibold",children:(0,r.jsxs)("div",{children:["At least ",c," required."]})}),e[24]=v,e[25]=c,e[26]=C):C=e[26];let y;e[27]!==x||e[28]!==t?(y=()=>{x(M(t))},e[27]=x,e[28]=t,e[29]=y):y=e[29];let _;e[30]===Symbol.for("react.memo_cache_sentinel")?(_=(0,r.jsx)(De,{className:"w-3.5 h-3.5 mr-1"}),e[30]=_):_=e[30];let L;e[31]===y?L=e[32]:(L=(0,r.jsx)("div",{children:(0,r.jsxs)(ne,{size:"xs","data-testid":"marimo-plugin-data-frames-add-array-item",variant:"text",className:"hover:text-accent-foreground",onClick:y,children:[_,"Add"]})}),e[31]=y,e[32]=L);let z;return e[33]!==g||e[34]!==j||e[35]!==b||e[36]!==C||e[37]!==L?(z=(0,r.jsxs)("div",{className:"flex flex-col gap-2 min-w-[220px]",children:[g,j,b,C,L]}),e[33]=g,e[34]=j,e[35]=b,e[36]=C,e[37]=L,e[38]=z):z=e[38],z},he=n=>{let e=(0,E.c)(21),{schema:t,form:a,path:l}=n,c;e[0]===t.description?c=e[1]:(c=A.parse(t.description),e[0]=t.description,e[1]=c);let{label:o,description:f,placeholder:h,disabled:s,inputType:i}=c;if(i==="textarea"){let x;e[2]!==f||e[3]!==s||e[4]!==o||e[5]!==h?(x=v=>{let{field:u}=v;return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:o}),(0,r.jsx)(S,{children:f}),(0,r.jsx)(k,{children:(0,r.jsx)(te,{...u,value:u.value,onChange:u.onChange,className:"my-0",placeholder:h,disabled:s})}),(0,r.jsx)(O,{})]})},e[2]=f,e[3]=s,e[4]=o,e[5]=h,e[6]=x):x=e[6];let d;return e[7]!==a.control||e[8]!==l||e[9]!==x?(d=(0,r.jsx)(w,{control:a.control,name:l,render:x}),e[7]=a.control,e[8]=l,e[9]=x,e[10]=d):d=e[10],d}let m;e[11]!==f||e[12]!==s||e[13]!==i||e[14]!==o||e[15]!==h?(m=x=>{let{field:d}=x;return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:o}),(0,r.jsx)(S,{children:f}),(0,r.jsx)(k,{children:(0,r.jsx)(U,{...d,type:i,value:d.value,onValueChange:d.onChange,className:"my-0",placeholder:h,disabled:s})}),(0,r.jsx)(O,{})]})},e[11]=f,e[12]=s,e[13]=i,e[14]=o,e[15]=h,e[16]=m):m=e[16];let p;return e[17]!==a.control||e[18]!==l||e[19]!==m?(p=(0,r.jsx)(w,{control:a.control,name:l,render:m}),e[17]=a.control,e[18]=l,e[19]=m,e[20]=p):p=e[20],p},Re=n=>{let e=(0,E.c)(10),{schema:t,form:a,path:l}=n,c;e[0]===t.description?c=e[1]:(c=A.parse(t.description),e[0]=t.description,e[1]=c);let{label:o,description:f,placeholder:h}=c,s;e[2]!==f||e[3]!==o||e[4]!==h?(s=m=>{let{field:p}=m;return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:o}),(0,r.jsx)(S,{children:f}),(0,r.jsx)(k,{children:(0,r.jsx)(W,{...p,placeholder:h})}),(0,r.jsx)(O,{})]})},e[2]=f,e[3]=o,e[4]=h,e[5]=s):s=e[5];let i;return e[6]!==a.control||e[7]!==l||e[8]!==s?(i=(0,r.jsx)(w,{control:a.control,name:l,render:s}),e[6]=a.control,e[7]=l,e[8]=s,e[9]=i):i=e[9],i},Xe=n=>{let e=(0,E.c)(22),{schema:t,form:a,path:l,options:c,textTransform:o}=n,f;e[0]===t.description?f=e[1]:(f=A.parse(t.description),e[0]=t.description,e[1]=f);let{label:h,description:s,disabled:i,special:m}=f;if(m==="radio_group"){let d;e[2]!==s||e[3]!==h||e[4]!==c||e[5]!==l?(d=u=>{let{field:g}=u;return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{children:h}),(0,r.jsx)(S,{children:s}),(0,r.jsx)(k,{children:(0,r.jsx)(Te,{className:"flex flex-row gap-2 pt-1 items-center",value:g.value,onValueChange:g.onChange,children:c.map(j=>(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsx)(Ee,{value:j,id:`${l}-${j}`},j),(0,r.jsx)(N,{className:"whitespace-pre",htmlFor:`${l}-${j}`,children:se.startCase(j)})]},j))})}),(0,r.jsx)(O,{})]})},e[2]=s,e[3]=h,e[4]=c,e[5]=l,e[6]=d):d=e[6];let v;return e[7]!==i||e[8]!==a.control||e[9]!==l||e[10]!==d?(v=(0,r.jsx)(w,{control:a.control,name:l,disabled:i,render:d}),e[7]=i,e[8]=a.control,e[9]=l,e[10]=d,e[11]=v):v=e[11],v}let p;e[12]!==s||e[13]!==h||e[14]!==c||e[15]!==o?(p=d=>{let{field:v}=d;return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{className:"whitespace-pre",children:h}),(0,r.jsx)(S,{children:s}),(0,r.jsx)(k,{children:(0,r.jsxs)(Ae,{"data-testid":"marimo-plugin-data-frames-select",value:v.value,onValueChange:v.onChange,children:[(0,r.jsx)($e,{className:"min-w-[180px]",children:(0,r.jsx)(Se,{placeholder:"--"})}),(0,r.jsx)(ke,{children:(0,r.jsxs)(Ve,{children:[c.map(u=>(0,r.jsx)(Y,{value:u,children:(o==null?void 0:o(u))??u},u)),c.length===0&&(0,r.jsx)(Y,{disabled:!0,value:"--",children:"No options"})]})})]})}),(0,r.jsx)(O,{})]})},e[12]=s,e[13]=h,e[14]=c,e[15]=o,e[16]=p):p=e[16];let x;return e[17]!==i||e[18]!==a.control||e[19]!==l||e[20]!==p?(x=(0,r.jsx)(w,{control:a.control,name:l,disabled:i,render:p}),e[17]=i,e[18]=a.control,e[19]=l,e[20]=p,e[21]=x):x=e[21],x},Ye=n=>{let e=(0,E.c)(15),{schema:t,form:a,path:l,options:c,itemLabel:o,showSwitchable:f}=n,h;e[0]===t.description?h=e[1]:(h=A.parse(t.description),e[0]=t.description,e[1]=h);let{label:s,description:i,placeholder:m}=h,p;e[2]!==o||e[3]!==m?(p=m??(o?`Select ${o==null?void 0:o.toLowerCase()}`:void 0),e[2]=o,e[3]=m,e[4]=p):p=e[4];let x=p,d;e[5]!==i||e[6]!==s||e[7]!==c||e[8]!==x||e[9]!==f?(d=u=>{let{field:g}=u,j=Z(g.value);return(0,r.jsxs)(V,{children:[(0,r.jsx)(N,{className:"whitespace-pre",children:s}),(0,r.jsx)(S,{children:i}),(0,r.jsx)(k,{children:f?(0,r.jsx)(me,{...g,value:j,options:c,placeholder:x}):(0,r.jsx)(ee,{className:"min-w-[180px]",placeholder:x,displayValue:nr,multiple:!0,chips:!0,keepPopoverOpenOnSelect:!0,value:j,onValueChange:g.onChange,children:c.map(sr)})}),(0,r.jsx)(O,{})]})},e[5]=i,e[6]=s,e[7]=c,e[8]=x,e[9]=f,e[10]=d):d=e[10];let v;return e[11]!==a.control||e[12]!==l||e[13]!==d?(v=(0,r.jsx)(w,{control:a.control,name:l,render:d}),e[11]=a.control,e[12]=l,e[13]=d,e[14]=v):v=e[14],v};function er(...n){return n.filter(e=>e!=="").join(".")}function rr(n){return n.preventDefault()}function nr(n){return se.startCase(n)}function sr(n){return(0,r.jsx)(re,{value:n,children:n},n)}export{Z as a,A as c,W as i,ae as l,$ as n,M as o,me as r,P as s,He as t};
|
|
@@ -128,5 +128,5 @@ var F0=Object.defineProperty;var B0=(Yr,Cr,Vr)=>Cr in Yr?F0(Yr,Cr,{enumerable:!0
|
|
|
128
128
|
`))??"":(ge==null?void 0:ge.toString())??"";if(!Bn(Z)&&Fn(Z)&&Z.readonly!==!0){let Pe=_==null?void 0:_(Ee,Z);if(Pe!==void 0&&mo(Pe))return{location:pe,value:Pe};let He=$t(Z);if(He===void 0)return;if(He.kind===ve.Custom){rr(Z.kind===ve.Custom);let rt=(Ke=He.onPaste)==null?void 0:Ke.call(He,Ee,Z.data);return rt===void 0?void 0:{location:pe,value:{...Z,data:rt}}}else{let rt=($e=He.onPaste)==null?void 0:$e.call(He,Ee,Z,{formatted:te,formattedString:typeof te=="string"?te:te==null?void 0:te.join(`
|
|
129
129
|
`),rawValue:ge});return rt===void 0?void 0:(rr(rt.kind===Z.kind),{location:pe,value:rt})}}}let D=N.columns,L=N.rows,W=(($=It.current)==null?void 0:$.contains(document.activeElement))===!0||((X=l.current)==null?void 0:X.contains(document.activeElement))===!0,G;if(N.current===void 0?D.length===1?G=[D.first()??0,0]:L.length===1&&(G=[z,L.first()??0]):G=[N.current.range.x,N.current.range.y],W&&G!==void 0){let Z,pe,ge="text/plain",te="text/html";if(navigator.clipboard.read!==void 0){let Pe=await navigator.clipboard.read();for(let He of Pe){if(He.types.includes(te)){let rt=ua(await(await He.getType(te)).text());if(rt!==void 0){Z=rt;break}}He.types.includes(ge)&&(pe=await(await He.getType(ge)).text())}}else if(navigator.clipboard.readText!==void 0)pe=await navigator.clipboard.readText();else if(f!==void 0&&(f==null?void 0:f.clipboardData)!==null)f.clipboardData.types.includes(te)&&(Z=ua(f.clipboardData.getData(te))),Z===void 0&&f.clipboardData.types.includes(ge)&&(pe=f.clipboardData.getData(ge));else return;let[Ee,Ke]=G,$e=[];do{if(ue===void 0){let Pe=er(G),He=pe??(Z==null?void 0:Z.map(tr=>tr.map(Bt=>Bt.rawValue).join(" ")).join(" "))??"",rt=O(Pe,G,He,void 0);rt!==void 0&&$e.push(rt);break}if(Z===void 0){if(pe===void 0)return;Z=Nd(pe)}if(ue===!1||typeof ue=="function"&&(ue==null?void 0:ue([G[0]-z,G[1]],Z.map(Pe=>Pe.map(He=>{var rt;return((rt=He.rawValue)==null?void 0:rt.toString())??""}))))!==!0)return;for(let[Pe,He]of Z.entries()){if(Pe+Ke>=Re)break;for(let[rt,tr]of He.entries()){let Bt=[rt+Ee,Pe+Ke],[gr,xr]=Bt;if(gr>=ot.length||xr>=Xt)continue;let cr=O(er(Bt),Bt,tr.rawValue,tr.formatted);cr!==void 0&&$e.push(cr)}}}while(!1);ar($e),(V=Wt.current)==null||V.damage($e.map(Pe=>({cell:Pe.location})))}},[_,$t,er,N,vr.paste,It,ot.length,ar,Xt,ue,z,Re]);Kt("paste",Yi,h,!1,!0);let fo=d.useCallback(async(f,O)=>{var $,X;if(!vr.copy)return;let D=O===!0||(($=It.current)==null?void 0:$.contains(document.activeElement))===!0||((X=l.current)==null?void 0:X.contains(document.activeElement))===!0,L=N.columns,W=N.rows,G=(V,Z)=>{Wd(Ce?[Z.map(pe=>({kind:ve.Text,data:x[pe].title,displayData:x[pe].title,allowOverlay:!1})),...V]:V,Z,f)};if(D&&We!==void 0){if(N.current!==void 0){let V=We(N.current.range,fe.current.signal);typeof V!="object"&&(V=await V()),G(V,(0,mn.default)(N.current.range.x-z,N.current.range.x+N.current.range.width-z))}else if(W!==void 0&&W.length>0){let V=[...W].map(Z=>{let pe=We({x:z,y:Z,width:x.length,height:1},fe.current.signal);return typeof pe=="object"?pe[0]:pe().then(ge=>ge[0])});V.some(Z=>Z instanceof Promise)?G(await Promise.all(V),(0,mn.default)(x.length)):G(V,(0,mn.default)(x.length))}else if(L.length>0){let V=[],Z=[];for(let pe of L){let ge=We({x:pe,y:0,width:1,height:Re},fe.current.signal);typeof ge!="object"&&(ge=await ge()),V.push(ge),Z.push(pe-z)}V.length===1?G(V[0],Z):G(V.reduce((pe,ge)=>pe.map((te,Ee)=>[...te,...ge[Ee]])),Z)}}},[x,We,N,vr.copy,z,It,Re,Ce]);Kt("copy",fo,h,!1,!1),Kt("cut",d.useCallback(async f=>{var O,D;if(vr.cut&&(((O=It.current)==null?void 0:O.contains(document.activeElement))===!0||((D=l.current)==null?void 0:D.contains(document.activeElement))===!0)&&(await fo(f),N.current!==void 0)){let L={current:{cell:N.current.cell,range:N.current.range,rangeStack:[]},rows:dt.empty(),columns:dt.empty()},W=Ft==null?void 0:Ft(L);if(W===!1||(L=W===!0?L:W,L.current===void 0))return;sn(L.current.range)}},[sn,N,vr.cut,fo,It,Ft]),h,!1,!1);let R0=d.useCallback((f,O)=>{if(Ie!==void 0){z!==0&&(f=f.map(W=>[W[0]-z,W[1]])),Ie(f,O);return}if(f.length===0||O===-1)return;let[D,L]=f[O];u.current!==void 0&&u.current[0]===D&&u.current[1]===L||(u.current=[D,L],$r(D,L,!1,!1))},[Ie,z,$r]),[Xo,Ko]=((Ua=Lt==null?void 0:Lt.current)==null?void 0:Ua.cell)??[],Yo=d.useRef(Dt);Yo.current=Dt,d.useLayoutEffect(()=>{var f,O,D,L;Ki.current&&!Ao.current&&Xo!==void 0&&Ko!==void 0&&(Xo!==((O=(f=ut.current)==null?void 0:f.current)==null?void 0:O.cell[0])||Ko!==((L=(D=ut.current)==null?void 0:D.current)==null?void 0:L.cell[1]))&&Yo.current(Xo,Ko),Ao.current=!1},[Xo,Ko]);let $a=N.current!==void 0&&(N.current.cell[0]>=ot.length||N.current.cell[1]>=Xt);d.useLayoutEffect(()=>{$a&&Ot(Ro,!1)},[$a,Ot]);let E0=d.useMemo(()=>oe===!0&&(xe==null?void 0:xe.tint)===!0?dt.fromSingleSelection(Xt-1):dt.empty(),[Xt,oe,xe==null?void 0:xe.tint]),I0=d.useCallback(f=>typeof St=="boolean"?St:(St==null?void 0:St(f-z))??!0,[z,St]),T0=d.useMemo(()=>{if(Fi===void 0||l.current===null)return null;let{bounds:f,group:O}=Fi,D=l.current.getBoundingClientRect();return d.createElement(Pd,{bounds:f,group:O,canvasBounds:D,onClose:()=>Bi(void 0),onFinish:L=>{Bi(void 0),ae==null||ae(O,L)}})},[ae,Fi]),P0=Math.min(ot.length,Ne+(Q?1:0));d.useImperativeHandle(t,()=>({appendRow:(f,O)=>Nr(f+z,O),appendColumn:(f,O)=>No(f,O),updateCells:f=>{var O;return z!==0&&(f=f.map(D=>({cell:[D.cell[0]+z,D.cell[1]]}))),(O=Wt.current)==null?void 0:O.damage(f)},getBounds:(f,O)=>{var D;if(!((l==null?void 0:l.current)===null||(It==null?void 0:It.current)===null)){if(f===void 0&&O===void 0){let L=l.current.getBoundingClientRect(),W=L.width/It.current.clientWidth;return{x:L.x-It.current.scrollLeft*W,y:L.y-It.current.scrollTop*W,width:It.current.scrollWidth*W,height:It.current.scrollHeight*W}}return(D=Wt.current)==null?void 0:D.getBounds((f??0)+z,O)}},focus:()=>{var f;return(f=Wt.current)==null?void 0:f.focus()},emit:async f=>{switch(f){case"delete":ho({bounds:void 0,cancel:()=>{},stopPropagation:()=>{},preventDefault:()=>{},ctrlKey:!1,key:"Delete",keyCode:46,metaKey:!1,shiftKey:!1,altKey:!1,rawEvent:void 0,location:void 0});break;case"fill-right":ho({bounds:void 0,cancel:()=>{},stopPropagation:()=>{},preventDefault:()=>{},ctrlKey:!0,key:"r",keyCode:82,metaKey:!1,shiftKey:!1,altKey:!1,rawEvent:void 0,location:void 0});break;case"fill-down":ho({bounds:void 0,cancel:()=>{},stopPropagation:()=>{},preventDefault:()=>{},ctrlKey:!0,key:"d",keyCode:68,metaKey:!1,shiftKey:!1,altKey:!1,rawEvent:void 0,location:void 0});break;case"copy":await fo(void 0,!0);break;case"paste":await Yi();break}},scrollTo:Dt,remeasureColumns:f=>{for(let O of f)Wo(O+z)},getMouseArgsForPosition:(f,O,D)=>{if((Wt==null?void 0:Wt.current)===null)return;let L=Wt.current.getMouseArgsForPosition(f,O,D);if(L!==void 0)return{...L,location:[L.location[0]-z,L.location[1]]}}}),[Nr,No,Wo,It,fo,ho,Yi,z,Dt]);let[Xa,Ka]=br??[],H0=d.useCallback(f=>{let[O,D]=f;if(D===-1){ne!=="none"&&(Et(dt.fromSingleSelection(O),void 0,!1),Gt());return}Xa===O&&Ka===D||(xt({cell:f,range:{x:O,y:D,width:1,height:1}},!0,!1,"keyboard-nav"),Dt(O,D))},[ne,Gt,Dt,Xa,Ka,xt,Et]),[O0,D0]=d.useState(!1),Ya=d.useRef((0,oh.default)(f=>{D0(f)},5)),z0=d.useCallback(()=>{Ya.current(!0),N.current===void 0&&N.columns.length===0&&N.rows.length===0&&s===void 0&&xt({cell:[z,Lo],range:{x:z,y:Lo,width:1,height:1}},!0,!1,"keyboard-select")},[Lo,N,s,z,xt]),A0=d.useCallback(()=>{Ya.current(!1)},[]),[L0,_0]=d.useMemo(()=>{let f,O=(Qe==null?void 0:Qe.scrollbarWidthOverride)??ii(),D=Re+(oe?1:0);if(typeof ir=="number")f=lo+D*ir;else{let W=0,G=Math.min(D,10);for(let $=0;$<G;$++)W+=ir($);W=Math.floor(W/G),f=lo+D*W}f+=O;let L=ot.reduce((W,G)=>G.width+W,0)+O;return[`${Math.min(1e5,L)}px`,`${Math.min(1e5,f)}px`]},[ot,Qe==null?void 0:Qe.scrollbarWidthOverride,ir,Re,oe,lo]),j0=d.useMemo(()=>vf(_t),[_t]);return d.createElement(wf.Provider,{value:_t},d.createElement(Yd,{style:j0,className:B,inWidth:v??L0,inHeight:R??_0},d.createElement(Ed,{fillHandle:jt,drawFocusRing:eo,experimental:Qe,fixedShadowX:Mr,fixedShadowY:Eo,getRowThemeOverride:Zt,headerIcons:jr,imageWindowLoader:Rr,initialSize:Er,isDraggable:wn,onDragLeave:Io,onRowMoved:Fr,overscrollX:Tn,overscrollY:Oi,preventDiagonalScrolling:xn,rightElement:Cn,rightElementProps:Jr,smoothScrollX:To,smoothScrollY:Ei,className:B,enableGroups:Di,onCanvasFocused:z0,onCanvasBlur:A0,canvasRef:l,onContextMenu:M0,theme:_t,cellXOffset:u0,cellYOffset:Lo,accessibilityHeight:nn.height,onDragEnd:C0,columns:ot,nonGrowWidth:Pa,drawHeader:lr,onColumnProposeMove:y0,drawCell:vt,disabledRows:E0,freezeColumns:P0,lockColumns:z,firstColAccessible:z===0,getCellContent:er,minColumnWidth:Hr,maxColumnWidth:En,searchInputRef:a,showSearch:tt,onSearchClose:ke,highlightRegions:d0,getCellsForSelection:We,getGroupDetails:Ai,headerHeight:io,isFocused:O0,groupHeaderHeight:Di?tn:0,freezeTrailingRows:qe+(oe&&(xe==null?void 0:xe.sticky)===!0?1:0),hasAppendRow:oe,onColumnResize:Rt,onColumnResizeEnd:dr,onColumnResizeStart:wr,onCellFocused:H0,onColumnMoved:b0,onDragStart:x0,onHeaderMenuClick:m0,onHeaderIndicatorClick:v0,onItemHovered:Xi,isFilling:(s==null?void 0:s.fillHandle)===!0,onMouseMove:p0,onKeyDown:ho,onKeyUp:Ae,onMouseDown:h0,onMouseUp:g0,onDragOverCell:or,onDrop:Vt,onSearchResultsChanged:R0,onVisibleRegionChanged:w0,clientSize:yr,rowHeight:ir,searchResults:ee,searchValue:ce,onSearchValueChange:le,rows:Xt,scrollRef:It,selection:N,translateX:nn.tx,translateY:nn.ty,verticalBorder:I0,gridRef:Wt,getCellRenderer:$t,resizeIndicator:kn}),T0,i!==void 0&&d.createElement(d.Suspense,{fallback:null},d.createElement(ih,{...i,validateCell:nt,bloom:j,id:k0,getCellRenderer:$t,className:(Qe==null?void 0:Qe.isSubGrid)===!0?"click-outside-ignore":void 0,provideEditor:Me,imageEditorOverride:g,portalElementRef:Ho,onFinishEditing:S0,markdownDivCreateNode:p,isOutsideClick:Po,customEventTarget:Qe==null?void 0:Qe.eventTarget}))))});function wa(e){let{cell:t,posX:n,posY:r,bounds:i,theme:o}=e,{width:a,height:l,x:s,y:c}=i,u=t.maxSize??o.checkboxMaxSize,h=Math.floor(i.y+l/2),g=ul(u,l,o.cellVerticalPadding),m=sl(cl(t.contentAlign??"center",s,a,o.cellHorizontalPadding,g),h,g),p=dl(s+n,c+r,m);return el(t)&&p}const ch={getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??"false"},kind:ve.Boolean,needsHover:!0,useLabel:!1,needsHoverPosition:!0,measure:()=>50,draw:e=>uh(e,e.cell.data,el(e.cell),e.cell.maxSize??e.theme.checkboxMaxSize,e.cell.hoverEffectIntensity??.35),onDelete:e=>({...e,data:!1}),onSelect:e=>{wa(e)&&e.preventDefault()},onClick:e=>{if(wa(e))return{...e.cell,data:ha(e.cell.data)}},onPaste:(e,t)=>{let n=null;return e.toLowerCase()==="true"?n=!0:e.toLowerCase()==="false"?n=!1:e.toLowerCase()==="indeterminate"&&(n=void 0),n===t.data?void 0:{...t,data:n}}};function uh(e,t,n,r,i){if(!n&&t===null)return;let{ctx:o,hoverAmount:a,theme:l,rect:s,highlighted:c,hoverX:u,hoverY:h,cell:{contentAlign:g}}=e,{x:m,y:p,width:v,height:R}=s,x=!1;if(i>0){let w=n?1-i+i*a:.4;if(t===null&&(w*=a),w===0)return;w<1&&(x=!0,o.globalAlpha=w)}vi(o,l,t,m,p,v,R,c,u,h,r,g),x&&(o.globalAlpha=1)}const dh=nr("div")({name:"BubblesOverlayEditorStyle",class:"gdg-b1ygi5by",propsAsIs:!1});var hh=e=>{let{bubbles:t}=e;return d.createElement(dh,null,t.map((n,r)=>d.createElement("div",{key:r,className:"boe-bubble"},n)),d.createElement("textarea",{className:"gdg-input",autoFocus:!0}))};const fh={getAccessibilityString:e=>hl(e.data),kind:ve.Bubble,needsHover:!1,useLabel:!1,needsHoverPosition:!1,measure:(e,t,n)=>{let r=t.data.reduce((i,o)=>e.measureText(o).width+i+n.bubblePadding*2+n.bubbleMargin,0);return t.data.length===0?n.cellHorizontalPadding*2:r+2*n.cellHorizontalPadding-n.bubbleMargin},draw:e=>gh(e,e.cell.data),provideEditor:()=>e=>{let{value:t}=e;return d.createElement(hh,{bubbles:t.data})},onPaste:()=>{}};function gh(e,t){let{rect:n,theme:r,ctx:i,highlighted:o}=e,{x:a,y:l,width:s,height:c}=n,u=a+r.cellHorizontalPadding,h=[];for(let g of t){if(u>a+s)break;let m=gn(g,i,r.baseFontFull).width;h.push({x:u,width:m}),u+=m+r.bubblePadding*2+r.bubbleMargin}i.beginPath();for(let g of h)mr(i,g.x,l+(c-r.bubbleHeight)/2,g.width+r.bubblePadding*2,r.bubbleHeight,r.roundingRadius??r.bubbleHeight/2);i.fillStyle=o?r.bgBubbleSelected:r.bgBubble,i.fill();for(let[g,m]of h.entries())i.beginPath(),i.fillStyle=r.textBubble,i.fillText(t[g],m.x+r.bubblePadding,l+c/2+zr(i,r))}var ph=nr("div")({name:"DrilldownOverlayEditorStyle",class:"gdg-d4zsq0x",propsAsIs:!1}),mh=e=>{let{drilldowns:t}=e;return d.createElement(ph,null,t.map((n,r)=>d.createElement("div",{key:r,className:"doe-bubble"},n.img!==void 0&&d.createElement("img",{src:n.img}),d.createElement("div",null,n.text))))};const vh={getAccessibilityString:e=>hl(e.data.map(t=>t.text)),kind:ve.Drilldown,needsHover:!1,useLabel:!1,needsHoverPosition:!1,measure:(e,t,n)=>t.data.reduce((r,i)=>e.measureText(i.text).width+r+n.bubblePadding*2+n.bubbleMargin+(i.img===void 0?0:18),0)+2*n.cellHorizontalPadding-4,draw:e=>yh(e,e.cell.data),provideEditor:()=>e=>{let{value:t}=e;return d.createElement(mh,{drilldowns:t.data})},onPaste:()=>{}};var ki={};function wh(e,t,n,r){let i=Math.ceil(window.devicePixelRatio),o=n-10,a=n*i,l=r+5,s=r*3,c=(s+10)*i,u=`${e},${t},${i},${n}`;if(ki[u]!==void 0)return{el:ki[u],height:a,width:c,middleWidth:4*i,sideWidth:l*i,padding:5*i,dpr:i};let h=document.createElement("canvas"),g=h.getContext("2d");return g===null?null:(h.width=c,h.height=a,g.scale(i,i),ki[u]=h,g.beginPath(),mr(g,5,5,s,o,r),g.shadowColor="rgba(24, 25, 34, 0.4)",g.shadowBlur=1,g.fillStyle=e,g.fill(),g.shadowColor="rgba(24, 25, 34, 0.3)",g.shadowOffsetY=1,g.shadowBlur=5,g.fillStyle=e,g.fill(),g.shadowOffsetY=0,g.shadowBlur=0,g.shadowBlur=0,g.beginPath(),mr(g,5.5,5.5,s,o,r),g.strokeStyle=t,g.lineWidth=1,g.stroke(),{el:h,height:a,width:c,sideWidth:l*i,middleWidth:r*i,padding:5*i,dpr:i})}function yh(e,t){let{rect:n,theme:r,ctx:i,imageLoader:o,col:a,row:l}=e,{x:s,width:c}=n,u=r.baseFontFull,h=Sl(i,u),g=Math.min(n.height,Math.max(16,Math.ceil(h*r.lineHeight)*2)),m=Math.floor(n.y+(n.height-g)/2),p=g-10,v=r.bubblePadding,R=r.bubbleMargin,x=s+r.cellHorizontalPadding,w=r.roundingRadius??6,M=wh(r.bgCell,r.drilldownBorder,g,w),T=[];for(let P of t){if(x>s+c)break;let E=gn(P.text,i,u).width,A=0;P.img!==void 0&&o.loadOrGetImage(P.img,a,l)!==void 0&&(A=p-8+4);let _=E+A+v*2;T.push({x,width:_}),x+=_+R}if(M!==null){let{el:P,height:E,middleWidth:A,sideWidth:_,width:k,dpr:I,padding:j}=M,C=_/I,y=j/I;for(let S of T){let H=Math.floor(S.x),b=Math.floor(S.width),Y=b-(C-y)*2;i.imageSmoothingEnabled=!1,i.drawImage(P,0,0,_,E,H-y,m,C,g),Y>0&&i.drawImage(P,_,0,A,E,H+(C-y),m,Y,g),i.drawImage(P,k-_,0,_,E,H+b-(C-y),m,C,g),i.imageSmoothingEnabled=!0}}i.beginPath();for(let[P,E]of T.entries()){let A=t[P],_=E.x+v;if(A.img!==void 0){let k=o.loadOrGetImage(A.img,a,l);if(k!==void 0){let I=p-8,j=0,C=0,y=k.width,S=k.height;y>S?(j+=(y-S)/2,y=S):S>y&&(C+=(S-y)/2,S=y),i.beginPath(),mr(i,_,m+g/2-I/2,I,I,r.roundingRadius??3),i.save(),i.clip(),i.drawImage(k,j,C,y,S,_,m+g/2-I/2,I,I),i.restore(),_+=I+4}}i.beginPath(),i.fillStyle=r.textBubble,i.fillText(A.text,_,m+g/2+zr(i,r))}}const bh={getAccessibilityString:e=>e.data.join(", "),kind:ve.Image,needsHover:!1,useLabel:!1,needsHoverPosition:!1,draw:e=>xh(e,e.cell.displayData??e.cell.data,e.cell.rounding??e.theme.roundingRadius??4,e.cell.contentAlign),measure:(e,t)=>t.data.length*50,onDelete:e=>({...e,data:[]}),provideEditor:()=>e=>{let{value:t,onFinishedEditing:n,imageEditorOverride:r}=e,i=r??js;return d.createElement(i,{urls:t.data,canWrite:t.readonly!==!0,onCancel:n,onChange:o=>{n({...t,data:[o]})}})},onPaste:(e,t)=>{e=e.trim();let n=e.split(",").map(r=>{try{return new URL(r),r}catch{return}}).filter(r=>r!==void 0);if(!(n.length===t.data.length&&n.every((r,i)=>r===t.data[i])))return{...t,data:n}}};var Mi=4;function xh(e,t,n,r){let{rect:i,col:o,row:a,theme:l,ctx:s,imageLoader:c}=e,{x:u,y:h,height:g,width:m}=i,p=g-l.cellVerticalPadding*2,v=[],R=0;for(let w=0;w<t.length;w++){let M=t[w];if(M.length===0)continue;let T=c.loadOrGetImage(M,o,a);if(T!==void 0){v[w]=T;let P=T.width*(p/T.height);R+=P+Mi}}if(R===0)return;R-=Mi;let x=u+l.cellHorizontalPadding;r==="right"?x=Math.floor(u+m-l.cellHorizontalPadding-R):r==="center"&&(x=Math.floor(u+m/2-R/2));for(let w of v){if(w===void 0)continue;let M=w.width*(p/w.height);n>0&&(s.beginPath(),mr(s,x,h+l.cellVerticalPadding,M,p,n),s.save(),s.clip()),s.drawImage(w,x,h+l.cellVerticalPadding,M,p),n>0&&s.restore(),x+=M+Mi}}function Ch(e,t){let n=e*49632+t*325176;return n^=n<<13,n^=n>>17,n^=n<<5,n/4294967295*2}const Sh={getAccessibilityString:()=>"",kind:ve.Loading,needsHover:!1,useLabel:!1,needsHoverPosition:!1,measure:()=>120,draw:e=>{let{cell:t,col:n,row:r,ctx:i,rect:o,theme:a}=e;if(t.skeletonWidth===void 0||t.skeletonWidth===0)return;let l=t.skeletonWidth;t.skeletonWidthVariability!==void 0&&t.skeletonWidthVariability>0&&(l+=Math.round(Ch(n,r)*t.skeletonWidthVariability));let s=a.cellHorizontalPadding;l+s*2>=o.width&&(l=o.width-s*2-1);let c=t.skeletonHeight??Math.min(18,o.height-2*a.cellVerticalPadding);mr(i,o.x+s,o.y+(o.height-c)/2,l,c,a.roundingRadius??3),i.fillStyle=cn(a.textDark,.1),i.fill()},onPaste:()=>{}};var kh=()=>e=>e.targetWidth;const ya=nr("div")({name:"MarkdownOverlayEditorStyle",class:"gdg-m1pnx84e",propsAsIs:!1,vars:{"m1pnx84e-0":[kh(),"px"]}}),Mh=e=>{let{value:t,onChange:n,forceEditMode:r,createNode:i,targetRect:o,onFinish:a,validatedSelection:l}=e,s=t.data,c=t.readonly===!0,[u,h]=d.useState(s===""||r),g=d.useCallback(()=>{h(p=>!p)},[]),m=s?"gdg-ml-6":"";return u?d.createElement(ya,{targetWidth:o.width-20},d.createElement(wo,{autoFocus:!0,highlight:!1,validatedSelection:l,value:s,onKeyDown:p=>{p.key==="Enter"&&p.stopPropagation()},onChange:n}),d.createElement("div",{className:`gdg-edit-icon gdg-checkmark-hover ${m}`,onClick:()=>a(t)},d.createElement(Os,null))):d.createElement(ya,{targetWidth:o.width},d.createElement(Bs,{contents:s,createNode:i}),!c&&d.createElement(d.Fragment,null,d.createElement("div",{className:"spacer"}),d.createElement("div",{className:`gdg-edit-icon gdg-edit-hover ${m}`,onClick:g},d.createElement(ni,null))),d.createElement("textarea",{className:"gdg-md-edit-textarea gdg-input",autoFocus:!0}))},Rh={getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.Markdown,needsHover:!1,needsHoverPosition:!1,drawPrep:Kn,measure:(e,t,n)=>{let r=t.data.split(`
|
|
130
130
|
`)[0];return e.measureText(r).width+2*n.cellHorizontalPadding},draw:e=>Sr(e,e.cell.data,e.cell.contentAlign),onDelete:e=>({...e,data:""}),provideEditor:()=>e=>{let{onChange:t,value:n,target:r,onFinishedEditing:i,markdownDivCreateNode:o,forceEditMode:a,validatedSelection:l}=e;return d.createElement(Mh,{onFinish:i,targetRect:r,value:n,validatedSelection:l,onChange:s=>t({...n,data:s.target.value}),forceEditMode:a,createNode:o})},onPaste:(e,t)=>e===t.data?void 0:{...t,data:e}},Eh={getAccessibilityString:e=>e.row.toString(),kind:Xr.Marker,needsHover:!0,needsHoverPosition:!1,drawPrep:Ih,measure:()=>44,draw:e=>Ph(e,e.cell.row,e.cell.checked,e.cell.markerKind,e.cell.drawHandle,e.cell.checkboxStyle),onClick:e=>{let{bounds:t,cell:n,posX:r,posY:i}=e,{width:o,height:a}=t,l=n.drawHandle?7+(o-7)/2:o/2,s=a/2;if(Math.abs(r-l)<=10&&Math.abs(i-s)<=10)return{...n,checked:!n.checked}},onPaste:()=>{}};function Ih(e,t){let{ctx:n,theme:r}=e,i=r.markerFontFull,o=t??{};return(o==null?void 0:o.font)!==i&&(n.font=i,o.font=i),o.deprep=Th,n.textAlign="center",o}function Th(e){let{ctx:t}=e;t.textAlign="start"}function Ph(e,t,n,r,i,o){let{ctx:a,rect:l,hoverAmount:s,theme:c}=e,{x:u,y:h,width:g,height:m}=l,p=n?1:r==="checkbox-visible"?.6+.4*s:s;if(r!=="number"&&p>0){a.globalAlpha=p;let v=7*(n?s:1);if(vi(a,c,n,i?u+v:u,h,i?g-v:g,m,!0,void 0,void 0,c.checkboxMaxSize,"center",o),i){a.globalAlpha=s,a.beginPath();for(let R of[3,6])for(let x of[-5,-1,3])a.rect(u+R,h+m/2+x,2,2);a.fillStyle=c.textLight,a.fill(),a.beginPath()}a.globalAlpha=1}if(r==="number"||r==="both"&&!n){let v=t.toString(),R=c.markerFontFull,x=u+g/2;r==="both"&&s!==0&&(a.globalAlpha=1-s),a.fillStyle=c.textLight,a.font=R,a.fillText(v,x,h+m/2+zr(a,R)),s!==0&&(a.globalAlpha=1)}}const Hh={getAccessibilityString:()=>"",kind:Xr.NewRow,needsHover:!0,needsHoverPosition:!1,measure:()=>200,draw:e=>Oh(e,e.cell.hint,e.cell.icon),onPaste:()=>{}};function Oh(e,t,n){let{ctx:r,rect:i,hoverAmount:o,theme:a,spriteManager:l}=e,{x:s,y:c,width:u,height:h}=i;r.beginPath(),r.globalAlpha=o,r.rect(s+1,c+1,u,h-2),r.fillStyle=a.bgHeaderHovered,r.fill(),r.globalAlpha=1,r.beginPath();let g=t!=="",m=0;if(n!==void 0){let p=h-8,v=s+8/2,R=c+8/2;l.drawSprite(n,"normal",r,v,R,p,a,g?1:o),m=p}else{m=24;let p=g?12:o*12,v=g?0:(1-o)*12*.5,R=a.cellHorizontalPadding+4;p>0&&(r.moveTo(s+R+v,c+h/2),r.lineTo(s+R+v+p,c+h/2),r.moveTo(s+R+v+p*.5,c+h/2-p*.5),r.lineTo(s+R+v+p*.5,c+h/2+p*.5),r.lineWidth=2,r.strokeStyle=a.bgIconHeader,r.lineCap="round",r.stroke())}r.fillStyle=a.textMedium,r.fillText(t,m+s+a.cellHorizontalPadding+.5,c+h/2+zr(r,a)),r.beginPath()}function ba(e,t,n,r,i,o,a){e.textBaseline="alphabetic";let l=Dh(e,i,r,t,(n==null?void 0:n.fullSize)??!1);e.beginPath(),mr(e,l.x,l.y,l.width,l.height,t.roundingRadius??4),e.globalAlpha=o,e.fillStyle=(n==null?void 0:n.bgColor)??cn(t.textDark,.1),e.fill(),e.globalAlpha=1,e.fillStyle=t.textDark,e.textBaseline="middle",a==null||a("text")}function Dh(e,t,n,r,i){let o=r.cellHorizontalPadding,a=r.cellVerticalPadding;if(i)return{x:t.x+o/2,y:t.y+a/2+1,width:t.width-o,height:t.height-a-1};let l=gn(n,e,r.baseFontFull,"alphabetic"),s=t.height-a,c=Math.min(s,l.actualBoundingBoxAscent*2.5);return{x:t.x+o/2,y:t.y+(t.height-c)/2+1,width:l.width+o*3,height:c-1}}var zh=d.lazy(async()=>await os(()=>import("./number-overlay-editor-CrwfeUrx.js").then(async e=>(await e.__tla,e)),__vite__mapDeps([7,4,5,2,3]),import.meta.url));const Ah={getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.Number,needsHover:e=>e.hoverEffect===!0,needsHoverPosition:!1,useLabel:!0,drawPrep:Kn,draw:e=>{let{hoverAmount:t,cell:n,ctx:r,theme:i,rect:o,overrideCursor:a}=e,{hoverEffect:l,displayData:s,hoverEffectTheme:c}=n;l===!0&&t>0&&ba(r,i,c,s,o,t,a),Sr(e,e.cell.displayData,e.cell.contentAlign)},measure:(e,t,n)=>e.measureText(t.displayData).width+n.cellHorizontalPadding*2,onDelete:e=>({...e,data:void 0}),provideEditor:()=>e=>{let{isHighlighted:t,onChange:n,value:r,validatedSelection:i}=e;return d.createElement(d.Suspense,{fallback:null},d.createElement(zh,{highlight:t,disabled:r.readonly===!0,value:r.data,fixedDecimals:r.fixedDecimals,allowNegative:r.allowNegative,thousandSeparator:r.thousandSeparator,decimalSeparator:r.decimalSeparator,validatedSelection:i,onChange:o=>n({...r,data:Number.isNaN(o.floatValue??0)?0:o.floatValue})}))},onPaste:(e,t,n)=>{let r=typeof n.rawValue=="number"?n.rawValue:Number.parseFloat(typeof n.rawValue=="string"?n.rawValue:e);if(!(Number.isNaN(r)||t.data===r))return{...t,data:r,displayData:n.formattedString??t.displayData}}},Lh={getAccessibilityString:()=>"",measure:()=>108,kind:ve.Protected,needsHover:!1,needsHoverPosition:!1,draw:_h,onPaste:()=>{}};function _h(e){let{ctx:t,theme:n,rect:r}=e,{x:i,y:o,height:a}=r;t.beginPath();let l=2.5,s=i+n.cellHorizontalPadding+l,c=o+a/2,u=Math.cos(al(30))*l,h=Math.sin(al(30))*l;for(let g=0;g<12;g++)t.moveTo(s,c-l),t.lineTo(s,c+l),t.moveTo(s+u,c-h),t.lineTo(s-u,c+h),t.moveTo(s-u,c-h),t.lineTo(s+u,c+h),s+=8;t.lineWidth=1.1,t.lineCap="square",t.strokeStyle=n.textLight,t.stroke()}const jh={getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.RowID,needsHover:!1,needsHoverPosition:!1,drawPrep:(e,t)=>Kn(e,t,e.theme.textLight),draw:e=>Sr(e,e.cell.data,e.cell.contentAlign),measure:(e,t,n)=>e.measureText(t.data).width+n.cellHorizontalPadding*2,provideEditor:()=>e=>{let{isHighlighted:t,onChange:n,value:r,validatedSelection:i}=e;return d.createElement(wo,{highlight:t,autoFocus:r.readonly!==!0,disabled:r.readonly!==!1,value:r.data,validatedSelection:i,onChange:o=>n({...r,data:o.target.value})})},onPaste:()=>{}},Fh={getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.Text,needsHover:e=>e.hoverEffect===!0,needsHoverPosition:!1,drawPrep:Kn,useLabel:!0,draw:e=>{let{cell:t,hoverAmount:n,hyperWrapping:r,ctx:i,rect:o,theme:a,overrideCursor:l}=e,{displayData:s,contentAlign:c,hoverEffect:u,allowWrapping:h,hoverEffectTheme:g}=t;u===!0&&n>0&&ba(i,a,g,s,o,n,l),Sr(e,s,c,h,r)},measure:(e,t,n)=>{let r=t.displayData.split(`
|
|
131
|
-
`,t.allowWrapping===!0?void 0:1),i=0;for(let o of r)i=Math.max(i,e.measureText(o).width);return i+2*n.cellHorizontalPadding},onDelete:e=>({...e,data:""}),provideEditor:e=>({disablePadding:e.allowWrapping===!0,editor:t=>{let{isHighlighted:n,onChange:r,value:i,validatedSelection:o}=t;return d.createElement(wo,{style:e.allowWrapping===!0?{padding:"3px 8.5px"}:void 0,highlight:n,autoFocus:i.readonly!==!0,disabled:i.readonly===!0,altNewline:!0,value:i.data,validatedSelection:o,onChange:a=>r({...i,data:a.target.value})})}}),onPaste:(e,t,n)=>e===t.data?void 0:{...t,data:e,displayData:n.formattedString??t.displayData}},Bh=nr("div")({name:"UriOverlayEditorStyle",class:"gdg-u1rrojo",propsAsIs:!1});var Nh=e=>{let{uri:t,onChange:n,forceEditMode:r,readonly:i,validatedSelection:o,preview:a}=e,[l,s]=d.useState(!i&&(t===""||r)),c=d.useCallback(()=>{s(!0)},[]);return l?d.createElement(wo,{validatedSelection:o,highlight:!0,autoFocus:!0,value:t,onChange:n}):d.createElement(Bh,null,d.createElement("a",{className:"gdg-link-area",href:t,target:"_blank",rel:"noopener noreferrer"},a),!i&&d.createElement("div",{className:"gdg-edit-icon",onClick:c},d.createElement(ni,null)),d.createElement("textarea",{className:"gdg-input",autoFocus:!0}))};function xa(e,t,n,r){let i=n.cellHorizontalPadding,o=t.height/2-e.actualBoundingBoxAscent/2,a=e.width,l=e.actualBoundingBoxAscent;return r==="right"?i=t.width-a-n.cellHorizontalPadding:r==="center"&&(i=t.width/2-a/2),{x:i,y:o,width:a,height:l}}function Ca(e){let{cell:t,bounds:n,posX:r,posY:i,theme:o}=e,a=t.displayData??t.data;if(t.hoverEffect!==!0||t.onClickUri===void 0)return!1;let l=yl(a,o.baseFontFull);if(l===void 0)return!1;let s=xa(l,n,o,t.contentAlign);return qr({x:s.x-4,y:s.y-4,width:s.width+8,height:s.height+8},r,i)}const Wh=[Eh,Hh,ch,fh,vh,bh,Sh,Rh,Ah,Lh,jh,Fh,{getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.Uri,needsHover:e=>e.hoverEffect===!0,needsHoverPosition:!0,useLabel:!0,drawPrep:Kn,draw:e=>{let{cell:t,theme:n,overrideCursor:r,hoverX:i,hoverY:o,rect:a,ctx:l}=e,s=t.displayData??t.data,c=t.hoverEffect===!0;if(r!==void 0&&c&&i!==void 0&&o!==void 0){let{x:u,y:h,width:g,height:m}=xa(gn(s,l,n.baseFontFull),a,n,t.contentAlign);if(i>=u-4&&i<=u-4+g+8&&o>=h-4&&o<=h-4+m+8){let p=zr(l,n.baseFontFull);r("pointer");let v=h-p;l.beginPath(),l.moveTo(a.x+u,Math.floor(a.y+v+m+5)+.5),l.lineTo(a.x+u+g,Math.floor(a.y+v+m+5)+.5),l.strokeStyle=n.linkColor,l.stroke(),l.save(),l.fillStyle=e.cellFillColor,Sr({...e,rect:{...a,x:a.x-1}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x-2}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x+1}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x+2}},s,t.contentAlign),l.restore()}}l.fillStyle=c?n.linkColor:n.textDark,Sr(e,s,t.contentAlign)},onSelect:e=>{Ca(e)&&e.preventDefault()},onClick:e=>{var n;let{cell:t}=e;Ca(e)&&((n=t.onClickUri)==null||n.call(t,e))},measure:(e,t,n)=>e.measureText(t.displayData??t.data).width+n.cellHorizontalPadding*2,onDelete:e=>({...e,data:""}),provideEditor:e=>t=>{let{onChange:n,value:r,forceEditMode:i,validatedSelection:o}=t;return d.createElement(Nh,{forceEditMode:r.readonly!==!0&&(i||e.hoverEffect===!0&&e.onClickUri!==void 0),uri:r.data,preview:r.displayData??r.data,validatedSelection:o,readonly:r.readonly===!0,onChange:a=>n({...r,data:a.target.value})})},onPaste:(e,t,n)=>e===t.data?void 0:{...t,data:e,displayData:n.formattedString??t.displayData}}];var $h=qt(U(((e,t)=>{var n=ri(),r=po(),i="Expected a function";function o(a,l,s){var c=!0,u=!0;if(typeof a!="function")throw TypeError(i);return r(s)&&(c="leading"in s?!!s.leading:c,u="trailing"in s?!!s.trailing:u),n(a,l,{leading:c,maxWait:l,trailing:u})}t.exports=o}))(),1),Ri=[],Xh=class extends Ml{constructor(){super(...arguments);it(this,"imageLoaded",()=>{});it(this,"loadedLocations",[]);it(this,"cache",{});it(this,"sendLoaded",(0,$h.default)(()=>{this.imageLoaded(new Yn(this.loadedLocations)),this.loadedLocations=[]},20));it(this,"clearOutOfWindow",()=>{let t=Object.keys(this.cache);for(let n of t){let r=this.cache[n],i=!1;for(let o=0;o<r.cells.length;o++){let a=r.cells[o];if(this.isInWindow(a)){i=!0;break}}i?r.cells=r.cells.filter(this.isInWindow):(r.cancel(),delete this.cache[n])}})}setCallback(t){this.imageLoaded=t}loadImage(t,n,r,i){let o=!1,a=Ri.pop()??new Image,l=!1,s={img:void 0,cells:[ur(n,r)],url:t,cancel:()=>{l||(l=!0,Ri.length<12?Ri.unshift(a):o||(a.src=""))}},c=new Promise(u=>a.addEventListener("load",()=>u(null)));requestAnimationFrame(async()=>{try{a.src=t,await c,await a.decode();let u=this.cache[i];if(u!==void 0&&!l){u.img=a;for(let h of u.cells)this.loadedLocations.push(di(h));o=!0,this.sendLoaded()}}catch{s.cancel()}}),this.cache[i]=s}loadOrGetImage(t,n,r){let i=t,o=this.cache[i];if(o!==void 0){let a=ur(n,r);return o.cells.includes(a)||o.cells.push(a),o.img}else this.loadImage(t,n,r,i)}};const Kh=d.forwardRef((e,t)=>{let n=d.useMemo(()=>({..._c,...e.headerIcons}),[e.headerIcons]),r=d.useMemo(()=>e.renderers??Wh,[e.renderers]),i=d.useMemo(()=>e.imageWindowLoader??new Xh,[e.imageWindowLoader]);return d.createElement(sh,{...e,renderers:r,headerIcons:n,ref:t,imageWindowLoader:i})});var Sa=Gi();function Yh(e){switch(e){case"string":return ve.Text;case"number":return ve.Number;case"boolean":return ve.Boolean;default:return ve.Text}}function Vh(e){switch(e){case"string":return Kr.HeaderString;case"number":case"integer":return Kr.HeaderNumber;case"boolean":return Kr.HeaderBoolean;case"date":case"datetime":return Kr.HeaderDate;case"time":return Kr.HeaderTime;case"unknown":return Kr.HeaderString;default:return rs(e),Kr.HeaderString}}function ka(e){return"rowIdx"in e&&"columnId"in e&&"value"in e}function Gh(e){return"rowIdx"in e&&"type"in e}function Uh(e){return"columnIdx"in e&&"type"in e}function qh(e){let{selection:t,data:n,setData:r,onAddEdits:i,columns:o,editableColumns:a}=e;if(!t.current)return;let{range:l}=t.current,{x:s,y:c}=l;navigator.clipboard.readText().then(u=>{if(!u.trim())return;let h=u.split(`
|
|
132
|
-
`).filter(p=>p.trim()),g=[];for(let p of h){let v=p.split(" ");g.push(v)}if(g.length===0)return;let m=[];for(let[p,v]of g.entries()){if(!v)continue;let R=c+p;if(R>=n.length)break;for(let[x,w]of v.entries()){if(w===void 0)continue;let M=s+x;if(!o||M>=o.length)break;let T=o[M],P=T.dataType;if(!(a==="all"||a.includes(T.title)))continue;let E=w;switch(P){case"integer":case"number":{let _=Number(w);if(Number.isNaN(_))continue;E=_;break}case"boolean":{let _=w.toLowerCase();E=_==="true"||_==="1";break}}let A=o[M].title;m.push({rowIdx:R,columnId:A,value:E})}}m.length>0&&(i(m),r(p=>{let v=[...p];for(let R of m)if(ka(R)){let x=R.rowIdx,w=R.columnId;if(x<v.length){let M=v[x];w in M&&(M[w]=R.value)}}return v}))}).catch(u=>{Ui.error("Failed to read clipboard data",u)})}function Zh(e){return e==="light"?{lineHeight:1.25}:{lineHeight:1.25,accentColor:"#7c3aed",accentLight:"rgba(124, 58, 237, 0.15)",textDark:"#f4f4f5",textMedium:"#a1a1aa",textLight:"#71717a",textBubble:"#f4f4f5",bgIconHeader:"#a1a1aa",fgIconHeader:"#18181b",textHeader:"#d4d4d8",textHeaderSelected:"#18181b",bgCell:"#18181b",bgCellMedium:"#27272a",bgHeader:"#27272a",bgHeaderHasFocus:"#3f3f46",bgHeaderHovered:"#3f3f46",bgBubble:"#27272a",bgBubbleSelected:"#7c3aed",bgSearchResult:"#312e81",borderColor:"#27272a",drilldownBorder:"#7c3aed",linkColor:"#818cf8",headerFontStyle:"bold 14px",baseFontStyle:"13px"}}var ze=qt(X0(),1);const Jh=e=>{let t=(0,Sa.c)(19),{currentColumnName:n,onRename:r,onCancel:i}=e,[o,a]=(0,d.useState)(""),l;t[0]!==n||t[1]!==o||t[2]!==r?(l=()=>{o.trim()&&(r(o.trim()),a(n))},t[0]=n,t[1]=o,t[2]=r,t[3]=l):l=t[3];let s=l,c;t[4]!==s||t[5]!==i?(c=w=>{w.key==="Enter"?s():w.key==="Escape"&&i()},t[4]=s,t[5]=i,t[6]=c):c=t[6];let u=c,h;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,ze.jsxs)(Qa,{children:[(0,ze.jsx)(rf,{className:"mr-2 h-3.5 w-3.5"}),"Rename column"]}),t[7]=h):h=t[7];let g;t[8]===Symbol.for("react.memo_cache_sentinel")?(g=(0,ze.jsx)(qi,{htmlFor:"rename-input",children:"Column name"}),t[8]=g):g=t[8];let m;t[9]===Symbol.for("react.memo_cache_sentinel")?(m=w=>a(w.target.value),t[9]=m):m=t[9];let p;t[10]!==u||t[11]!==o?(p=(0,ze.jsxs)("div",{children:[g,(0,ze.jsx)(ns,{value:o,onChange:m,placeholder:"Enter new column name",className:"mt-1",onKeyDown:u})]}),t[10]=u,t[11]=o,t[12]=p):p=t[12];let v=!o.trim(),R;t[13]!==s||t[14]!==v?(R=(0,ze.jsx)(Ji,{onClick:s,disabled:v,size:"sm",className:"w-full",children:"Rename"}),t[13]=s,t[14]=v,t[15]=R):R=t[15];let x;return t[16]!==p||t[17]!==R?(x=(0,ze.jsxs)(ts,{children:[h,(0,ze.jsx)(es,{children:(0,ze.jsx)(Ja,{className:"w-64 p-4",children:(0,ze.jsxs)("div",{className:"space-y-3",children:[p,R]})})})]}),t[16]=p,t[17]=R,t[18]=x):x=t[18],x},Ma=e=>{let t=(0,Sa.c)(77),{direction:n,onAdd:r,onCancel:i}=e,[o,a]=(0,d.useState)(""),[l,s]=(0,d.useState)("string"),c,u,h,g,m,p,v,R,x,w,M,T,P,E,A;if(t[0]!==o||t[1]!==l||t[2]!==n||t[3]!==r||t[4]!==i){let Y=["string","number","boolean","datetime"],B;t[20]!==o||t[21]!==l||t[22]!==r?(B=()=>{o.trim()&&(r(o.trim(),l),a(""),s("string"))},t[20]=o,t[21]=l,t[22]=r,t[23]=B):B=t[23],p=B;let q;t[24]!==p||t[25]!==i?(q=Ae=>{Ae.key==="Enter"?p():Ae.key==="Escape"&&i()},t[24]=p,t[25]=i,t[26]=q):q=t[26];let J=q;m=ts;let K;t[27]===Symbol.for("react.memo_cache_sentinel")?(K=(0,ze.jsx)(nf,{className:"mr-2 h-3.5 w-3.5"}),t[27]=K):K=t[27],t[28]===n?A=t[29]:(A=(0,ze.jsxs)(Qa,{children:[K,"Add column to the ",n]}),t[28]=n,t[29]=A),g=es,h=Ja,E="w-64 p-4",T="space-y-3";let ae=`add-column-input-${n}`,re;t[30]===ae?re=t[31]:(re=(0,ze.jsx)(qi,{htmlFor:ae,children:"Column name"}),t[30]=ae,t[31]=re);let de=`add-column-input-${n}`,Ie;t[32]===Symbol.for("react.memo_cache_sentinel")?(Ie=Ae=>a(Ae.target.value),t[32]=Ie):Ie=t[32];let ee;t[33]!==o||t[34]!==J||t[35]!==de?(ee=(0,ze.jsx)(ns,{id:de,value:o,onChange:Ie,placeholder:"Enter column name",className:"mt-1",onKeyDown:J}),t[33]=o,t[34]=J,t[35]=de,t[36]=ee):ee=t[36],t[37]!==re||t[38]!==ee?(P=(0,ze.jsxs)("div",{children:[re,ee]}),t[37]=re,t[38]=ee,t[39]=P):P=t[39];let le=`add-column-type-${n}`;t[40]===le?M=t[41]:(M=(0,ze.jsx)(qi,{htmlFor:le,children:"Data type"}),t[40]=le,t[41]=M),u=U0,R=l,t[42]===Symbol.for("react.memo_cache_sentinel")?(x=Ae=>s(Ae),t[42]=x):x=t[42];let ce=`add-column-type-${n}`,ye;t[43]===Symbol.for("react.memo_cache_sentinel")?(ye=(0,ze.jsx)(K0,{}),t[43]=ye):ye=t[43],t[44]===ce?w=t[45]:(w=(0,ze.jsx)(G0,{id:ce,className:"mt-1",children:ye}),t[44]=ce,t[45]=w),c=V0,v=Y.map(Qh),t[0]=o,t[1]=l,t[2]=n,t[3]=r,t[4]=i,t[5]=c,t[6]=u,t[7]=h,t[8]=g,t[9]=m,t[10]=p,t[11]=v,t[12]=R,t[13]=x,t[14]=w,t[15]=M,t[16]=T,t[17]=P,t[18]=E,t[19]=A}else c=t[5],u=t[6],h=t[7],g=t[8],m=t[9],p=t[10],v=t[11],R=t[12],x=t[13],w=t[14],M=t[15],T=t[16],P=t[17],E=t[18],A=t[19];let _;t[46]!==c||t[47]!==v?(_=(0,ze.jsx)(c,{children:v}),t[46]=c,t[47]=v,t[48]=_):_=t[48];let k;t[49]!==u||t[50]!==_||t[51]!==R||t[52]!==x||t[53]!==w?(k=(0,ze.jsxs)(u,{value:R,onValueChange:x,children:[w,_]}),t[49]=u,t[50]=_,t[51]=R,t[52]=x,t[53]=w,t[54]=k):k=t[54];let I;t[55]!==k||t[56]!==M?(I=(0,ze.jsxs)("div",{children:[M,k]}),t[55]=k,t[56]=M,t[57]=I):I=t[57];let j=!o.trim(),C;t[58]!==p||t[59]!==j?(C=(0,ze.jsx)(Ji,{onClick:p,disabled:j,size:"sm",className:"w-full",children:"Add"}),t[58]=p,t[59]=j,t[60]=C):C=t[60];let y;t[61]!==I||t[62]!==C||t[63]!==T||t[64]!==P?(y=(0,ze.jsxs)("div",{className:T,children:[P,I,C]}),t[61]=I,t[62]=C,t[63]=T,t[64]=P,t[65]=y):y=t[65];let S;t[66]!==h||t[67]!==y||t[68]!==E?(S=(0,ze.jsx)(h,{className:E,children:y}),t[66]=h,t[67]=y,t[68]=E,t[69]=S):S=t[69];let H;t[70]!==g||t[71]!==S?(H=(0,ze.jsx)(g,{children:S}),t[70]=g,t[71]=S,t[72]=H):H=t[72];let b;return t[73]!==m||t[74]!==H||t[75]!==A?(b=(0,ze.jsxs)(m,{children:[A,H]}),t[73]=m,t[74]=H,t[75]=A,t[76]=b):b=t[76],b};function Qh(e){return(0,ze.jsx)(Y0,{value:e,children:ef(e)},e)}function Ra(e,t){return e.map(n=>{let r=n,i=Object.keys(r);if(t<0||t>=i.length)return r;let o=i[t],{[o]:a,...l}=r;return l})}function Ea(e,t){return t?e.map(n=>({...n,[t]:""})):e}function Ia(e,t,n){return!t||!n||t===n?e:e.map(r=>{let i=r,{[t]:o,...a}=i;return{...a,[n]:i[t]}})}function vn(e){var a;let{columnFields:t,columnIdx:n,type:r,dataType:i,newColumnName:o}=e;switch(r){case"insert":{if(!o)return Ui.error("newName is required for insert"),t;let l=[...t.entries()],s=[...l.slice(0,n),[o,i||"string"],...l.slice(n)];return new Map(s)}case"remove":{if(n<0||n>=t.size)return t;let l=(a=[...t.entries()][n])==null?void 0:a[0];if(l){let s=new Map(t);return s.delete(l),s}return t}case"rename":{if(!o)return Ui.error("newName is required for rename"),t;if(n<0||n>=t.size)return t;let l=[...t.entries()],s=[...l.slice(0,n),[o,i||"string"],...l.slice(n+1)];return new Map(s)}}}var Ta=Gi(),e0=W0();function t0(){let e=document.querySelector("[data-testid='glide-data-editor-portal'] .gdg-clip-region");e&&e.dispatchEvent(new KeyboardEvent("keydown",{key:"Escape",bubbles:!0}))}function r0(){return document.fullscreenElement??document.body}function n0(){let e=(0,Ta.c)(2),[t,n]=(0,d.useState)(r0),r,i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(r=()=>{let o=()=>{document.fullscreenElement?n(document.fullscreenElement):(t0(),n(document.body))};return document.addEventListener("fullscreenchange",o),o(),()=>{document.removeEventListener("fullscreenchange",o)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,d.useEffect)(r,i),t}function o0(e){let t=(0,Ta.c)(6),{portalRef:n}=e,r=n0(),i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={position:"fixed",left:0,top:0,zIndex:9999},t[0]=i):i=t[0];let o;t[1]===n?o=t[2]:(o=(0,ze.jsx)("div",{ref:n,"data-testid":"glide-data-editor-portal",style:i}),t[1]=n,t[2]=o);let a;return t[3]!==r||t[4]!==o?(a=(0,e0.createPortal)(o,r),t[3]=r,t[4]=o,t[5]=a):a=t[5],a}var i0=Gi();rl=e=>{let t=(0,i0.c)(108),{data:n,setData:r,columnFields:i,setColumnFields:o,editableColumns:a,edits:l,onAddEdits:s,onAddRows:c,onDeleteRows:u,onRenameColumn:h,onDeleteColumn:g,onAddColumn:m}=e,{theme:p}=af(),v=(0,d.useRef)(null),R=(0,d.useRef)(null),[x,w]=(0,d.useState)(),[M,T]=(0,d.useState)(!1),P;t[0]===Symbol.for("react.memo_cache_sentinel")?(P={columns:dt.empty(),rows:dt.empty()},t[0]=P):P=t[0];let[E,A]=d.useState(P),_;t[1]===Symbol.for("react.memo_cache_sentinel")?(_={},t[1]=_):_=t[1];let[k,I]=(0,d.useState)(_),j=Q0(),C=(0,d.useRef)(!1),y;if(t[2]!==i||t[3]!==k||t[4]!==a||t[5]!==p){y=[];for(let[me,De]of i){let se=a==="all"||a.includes(me);y.push({id:me,title:me,width:k[me],icon:se?Vh(De):Kr.ProtectedColumnOverlay,style:"normal",kind:Yh(De),dataType:De,hasMenu:!0,themeOverride:se?void 0:{bgCell:p==="light"?"#F9F9FA":"#1e1e21"}})}t[2]=i,t[3]=k,t[4]=a,t[5]=p,t[6]=y}else y=t[6];let S=y,H;t[7]!==S||t[8]!==n.length||t[9]!==l||t[10]!==j||t[11]!==o||t[12]!==r?(H=()=>{if(C.current||n.length===0||(C.current=!0,l.length===0))return;let me=new Map;for(let se of l)if(ka(se))if(se.rowIdx>=n.length){me.has(se.rowIdx)||me.set(se.rowIdx,{});let Me=me.get(se.rowIdx);Me&&(Me[se.columnId]=se.value)}else r(Me=>{let xe=[...Me];return xe[se.rowIdx][se.columnId]=se.value,xe});else if(Gh(se)&&se.type===Uo.Remove)r(Me=>Me.filter((xe,qe)=>qe!==se.rowIdx));else if(Uh(se))e:switch(se.type){case Uo.Remove:r(Me=>Ra(Me,se.columnIdx)),o(Me=>vn({columnFields:Me,columnIdx:se.columnIdx,type:"remove"}));break e;case Uo.Insert:o(Me=>vn({columnFields:Me,columnIdx:se.columnIdx,type:"insert",newColumnName:se.newName})),r(Me=>Ea(Me,se.newName));break e;case Uo.Rename:{let Me=S[se.columnIdx].title,xe=se.newName;if(!Me||!xe)return;o(qe=>vn({columnFields:qe,columnIdx:se.columnIdx,type:"rename",newColumnName:xe})),r(qe=>Ia(qe,Me,xe))}}let De=[...me.entries()].toSorted(l0).map(a0);De.length>0&&r(se=>[...se,...De]),j()},t[7]=S,t[8]=n.length,t[9]=l,t[10]=j,t[11]=o,t[12]=r,t[13]=H):H=t[13];let b;t[14]===n.length?b=t[15]:(b=[n.length],t[14]=n.length,t[15]=b),(0,d.useEffect)(H,b);let Y;t[16]!==S||t[17]!==n||t[18]!==a?(Y=me=>{let[De,se]=me,Me=n[se][S[De].title],xe=S[De].kind,qe=a==="all"||a.includes(S[De].title);if(xe===ve.Boolean){let Pt=!!Me;return{kind:ve.Boolean,allowOverlay:!1,readonly:!qe,data:Pt}}return xe===ve.Number&&typeof Me=="number"?{kind:ve.Number,allowOverlay:qe,readonly:!qe,displayData:String(Me),data:Me}:{kind:ve.Text,allowOverlay:qe,readonly:!qe,displayData:String(Me),data:String(Me)}},t[16]=S,t[17]=n,t[18]=a,t[19]=Y):Y=t[19];let B=Y,q;t[20]!==S||t[21]!==s||t[22]!==r?(q=(me,De)=>{let[se,Me]=me,xe=S[se],qe=xe.title,Pt=De.data;(xe.dataType==="number"||xe.dataType==="integer")&&(De.data===void 0||De.data==="")&&(Pt=null),r(Je=>{let Mt=[...Je];return Mt[Me][qe]=Pt,Mt}),s([{rowIdx:Me,columnId:qe,value:Pt}])},t[20]=S,t[21]=s,t[22]=r,t[23]=q):q=t[23];let J=q,K;t[24]===Symbol.for("react.memo_cache_sentinel")?(K=(me,De)=>{I(se=>({...se,[me.title]:De}))},t[24]=K):K=t[24];let ae=K,re;t[25]!==i||t[26]!==S?(re=(me,De,se)=>{let[Me]=me,xe=S[Me].title,qe=i.get(xe);e:switch(qe){case"number":case"integer":if(Number.isNaN(Number(De.data)))return!1;break e;case"boolean":if(typeof De.data!="boolean")return!1}return!0},t[25]=i,t[26]=S,t[27]=re):re=t[27];let de=re,Ie;t[28]!==S||t[29]!==n||t[30]!==a||t[31]!==s||t[32]!==E||t[33]!==r?(Ie=me=>{if(v.current){if(Zi.isMetaOrCtrl(me)&&me.key==="c"){v.current.emit("copy");return}if(Zi.isMetaOrCtrl(me)&&me.key==="v"){qh({selection:E,data:n,setData:r,columns:S,editableColumns:a,onAddEdits:s});return}if(Zi.isMetaOrCtrl(me)&&me.key==="f"){T(s0),me.stopPropagation(),me.preventDefault();return}if(me.key==="Escape"){T(!1);return}}},t[28]=S,t[29]=n,t[30]=a,t[31]=s,t[32]=E,t[33]=r,t[34]=Ie):Ie=t[34];let ee=Ie,le;t[35]!==S||t[36]!==c||t[37]!==r?(le=()=>{let me=Object.fromEntries(S.map(c0));c([me]),r(De=>[...De,me])},t[35]=S,t[36]=c,t[37]=r,t[38]=le):le=t[38];let ce=le,ye;t[39]!==u||t[40]!==E.rows||t[41]!==r?(ye=()=>{let me=E.rows.toArray();u(me);let De=0;for(let se of me){let Me=se-De;r(xe=>xe.filter((qe,Pt)=>Pt!==Me)),De++}A({columns:dt.empty(),rows:dt.empty()})},t[39]=u,t[40]=E.rows,t[41]=r,t[42]=ye):ye=t[42];let Ae=ye,st;t[43]===Symbol.for("react.memo_cache_sentinel")?(st=(me,De)=>{w({col:me,bounds:De})},t[43]=st):st=t[43];let lt=N0(st),Oe;t[44]!==S||t[45]!==x?(Oe=async()=>{if(x){let me=S[x.col].title;await sf(me),w(void 0)}},t[44]=S,t[45]=x,t[46]=Oe):Oe=t[46];let Be=Oe,Te;t[47]===Symbol.for("react.memo_cache_sentinel")?(Te=function(me){lf({title:`Column '${me}' already exists`,description:"Please enter a different column name",variant:"danger"})},t[47]=Te):Te=t[47];let ft=Te,gt;t[48]!==i||t[49]!==S||t[50]!==x||t[51]!==h||t[52]!==o||t[53]!==r?(gt=me=>{if(x){let De=S[x.col].title;if(i.has(me)){ft(me);return}let se=S[x.col].dataType;h(x.col,me),o(Me=>vn({columnFields:Me,columnIdx:x.col,type:"rename",dataType:se,newColumnName:me})),r(Me=>Ia(Me,De,me)),w(void 0)}},t[48]=i,t[49]=S,t[50]=x,t[51]=h,t[52]=o,t[53]=r,t[54]=gt):gt=t[54];let ct=gt,ne;t[55]!==x||t[56]!==g||t[57]!==o||t[58]!==r?(ne=()=>{x&&(g(x.col),o(me=>vn({columnFields:me,columnIdx:x.col,type:"remove"})),r(me=>Ra(me,x.col)),w(void 0))},t[55]=x,t[56]=g,t[57]=o,t[58]=r,t[59]=ne):ne=t[59];let he=ne,Se;t[60]!==i||t[61]!==S.length||t[62]!==x||t[63]!==m||t[64]!==o||t[65]!==r?(Se=me=>{let{direction:De,columnName:se,dataType:Me}=me;if(x){let xe=x.col+(De==="left"?0:1),qe=Math.max(0,Math.min(xe,S.length));if(i.has(se)){ft(se);return}m(qe,se),o(Pt=>vn({columnFields:Pt,columnIdx:qe,type:"insert",dataType:Me,newColumnName:se})),r(Pt=>Ea(Pt,se)),w(void 0)}},t[60]=i,t[61]=S.length,t[62]=x,t[63]=m,t[64]=o,t[65]=r,t[66]=Se):Se=t[66];let je=Se,be=(x==null?void 0:x.col)===S.length-1,Xe=x!==void 0,Le;t[67]===Symbol.for("react.memo_cache_sentinel")?(Le={hint:"New row",sticky:!0,tint:!0},t[67]=Le):Le=t[67];let et=Le,ue=n.length>1e5,Ce=a==="all",Ne;t[68]!==Ce||t[69]!==S||t[70]!==je||t[71]!==Be||t[72]!==he||t[73]!==ct||t[74]!==ue||t[75]!==be||t[76]!==Xe||t[77]!==x?(Ne=()=>{if(!Xe)return;let me=(0,ze.jsxs)(ze.Fragment,{children:[Ce&&(0,ze.jsx)(Jh,{currentColumnName:S[x.col].title,onRename:ct,onCancel:()=>w(void 0)}),(0,ze.jsx)(Za,{}),(0,ze.jsx)(Ma,{direction:"left",onAdd:(De,se)=>je({direction:"left",columnName:De,dataType:se}),onCancel:()=>w(void 0)}),(0,ze.jsx)(Ma,{direction:"right",onAdd:(De,se)=>je({direction:"right",columnName:De,dataType:se}),onCancel:()=>w(void 0)}),(0,ze.jsx)(Za,{}),!be&&Ce&&(0,ze.jsxs)(qa,{onClick:he,className:"text-destructive focus:text-destructive",children:[(0,ze.jsx)(of,{className:"mr-2 h-3.5 w-3.5"}),"Delete column"]})]});return(0,ze.jsx)(Z0,{open:Xe,onOpenChange:De=>!De&&w(void 0),children:(0,ze.jsxs)(q0,{style:{left:(x==null?void 0:x.bounds.x)??0,top:((x==null?void 0:x.bounds.y)??0)+((x==null?void 0:x.bounds.height)??0)},className:"fixed w-52",children:[(0,ze.jsxs)(qa,{onClick:Be,children:[(0,ze.jsx)(tf,{className:"mr-2 h-3.5 w-3.5"}),"Copy column name"]}),!ue&&me]})})},t[68]=Ce,t[69]=S,t[70]=je,t[71]=Be,t[72]=he,t[73]=ct,t[74]=ue,t[75]=be,t[76]=Xe,t[77]=x,t[78]=Ne):Ne=t[78];let Ge=Ne,Ue;t[79]===Symbol.for("react.memo_cache_sentinel")?(Ue=(0,ze.jsx)(o0,{portalRef:R}),t[79]=Ue):Ue=t[79];let wt=n.length,Ze=!ue,_e=!ue,Ct=n.length>10?450:void 0,Tt;t[80]===Symbol.for("react.memo_cache_sentinel")?(Tt={kind:"both"},t[80]=Tt):Tt=t[80];let Ht;t[81]===p?Ht=t[82]:(Ht=Zh(p),t[81]=p,t[82]=Ht);let ht;t[83]!==S||t[84]!==n.length||t[85]!==B||t[86]!==J||t[87]!==lt||t[88]!==ee||t[89]!==ce||t[90]!==E||t[91]!==M||t[92]!==Ze||t[93]!==_e||t[94]!==Ct||t[95]!==Ht||t[96]!==de?(ht=(0,ze.jsx)($0,{children:(0,ze.jsx)(Kh,{ref:v,portalElementRef:R,getCellContent:B,columns:S,gridSelection:E,onGridSelectionChange:A,rows:wt,overscrollX:50,smoothScrollX:Ze,smoothScrollY:_e,validateCell:de,getCellsForSelection:!0,onPaste:!0,showSearch:M,fillHandle:!0,allowedFillDirections:"vertical",onKeyDown:ee,height:Ct,width:"100%",rowMarkers:Tt,rowSelectionMode:"multi",onCellEdited:J,onColumnResize:ae,onHeaderMenuClick:lt,theme:Ht,trailingRowOptions:et,onRowAppended:ce,maxColumnAutoWidth:600,maxColumnWidth:600})}),t[83]=S,t[84]=n.length,t[85]=B,t[86]=J,t[87]=lt,t[88]=ee,t[89]=ce,t[90]=E,t[91]=M,t[92]=Ze,t[93]=_e,t[94]=Ct,t[95]=Ht,t[96]=de,t[97]=ht):ht=t[97];let yt;t[98]===Ge?yt=t[99]:(yt=Ge(),t[98]=Ge,t[99]=yt);let zt=E.rows.length===0,Yt=E.rows.length<=1?"Delete row":"Delete rows",Lt;t[100]!==Ae||t[101]!==zt||t[102]!==Yt?(Lt=(0,ze.jsx)("div",{className:"absolute bottom-1 right-2 w-26",children:(0,ze.jsx)(Ji,{variant:"destructive",size:"sm",disabled:zt,className:"right-2 h-7",onClick:Ae,children:Yt})}),t[100]=Ae,t[101]=zt,t[102]=Yt,t[103]=Lt):Lt=t[103];let at;return t[104]!==ht||t[105]!==yt||t[106]!==Lt?(at=(0,ze.jsxs)("div",{className:"relative w-full min-w-0",children:[Ue,ht,yt,Lt]}),t[104]=ht,t[105]=yt,t[106]=Lt,t[107]=at):at=t[107],at},ys=rl;function l0(e,t){let[n]=e,[r]=t;return n-r}function a0(e){let[,t]=e;return t}function s0(e){return!e}function c0(e){let t=e.dataType;switch(t){case"boolean":return[e.title,!1];case"number":case"integer":return[e.title,null];case"date":case"datetime":case"time":return[e.title,new Date];case"string":case"unknown":return[e.title,""];default:return rs(t),[e.title,""]}}})();export{rl as GlideDataEditor,xf as __tla,ys as default};
|
|
131
|
+
`,t.allowWrapping===!0?void 0:1),i=0;for(let o of r)i=Math.max(i,e.measureText(o).width);return i+2*n.cellHorizontalPadding},onDelete:e=>({...e,data:""}),provideEditor:e=>({disablePadding:e.allowWrapping===!0,editor:t=>{let{isHighlighted:n,onChange:r,value:i,validatedSelection:o}=t;return d.createElement(wo,{style:e.allowWrapping===!0?{padding:"3px 8.5px"}:void 0,highlight:n,autoFocus:i.readonly!==!0,disabled:i.readonly===!0,altNewline:!0,value:i.data,validatedSelection:o,onChange:a=>r({...i,data:a.target.value})})}}),onPaste:(e,t,n)=>e===t.data?void 0:{...t,data:e,displayData:n.formattedString??t.displayData}},Bh=nr("div")({name:"UriOverlayEditorStyle",class:"gdg-u1rrojo",propsAsIs:!1});var Nh=e=>{let{uri:t,onChange:n,forceEditMode:r,readonly:i,validatedSelection:o,preview:a}=e,[l,s]=d.useState(!i&&(t===""||r)),c=d.useCallback(()=>{s(!0)},[]);return l?d.createElement(wo,{validatedSelection:o,highlight:!0,autoFocus:!0,value:t,onChange:n}):d.createElement(Bh,null,d.createElement("a",{className:"gdg-link-area",href:t,target:"_blank",rel:"noopener noreferrer"},a),!i&&d.createElement("div",{className:"gdg-edit-icon",onClick:c},d.createElement(ni,null)),d.createElement("textarea",{className:"gdg-input",autoFocus:!0}))};function xa(e,t,n,r){let i=n.cellHorizontalPadding,o=t.height/2-e.actualBoundingBoxAscent/2,a=e.width,l=e.actualBoundingBoxAscent;return r==="right"?i=t.width-a-n.cellHorizontalPadding:r==="center"&&(i=t.width/2-a/2),{x:i,y:o,width:a,height:l}}function Ca(e){let{cell:t,bounds:n,posX:r,posY:i,theme:o}=e,a=t.displayData??t.data;if(t.hoverEffect!==!0||t.onClickUri===void 0)return!1;let l=yl(a,o.baseFontFull);if(l===void 0)return!1;let s=xa(l,n,o,t.contentAlign);return qr({x:s.x-4,y:s.y-4,width:s.width+8,height:s.height+8},r,i)}const Wh=[Eh,Hh,ch,fh,vh,bh,Sh,Rh,Ah,Lh,jh,Fh,{getAccessibilityString:e=>{var t;return((t=e.data)==null?void 0:t.toString())??""},kind:ve.Uri,needsHover:e=>e.hoverEffect===!0,needsHoverPosition:!0,useLabel:!0,drawPrep:Kn,draw:e=>{let{cell:t,theme:n,overrideCursor:r,hoverX:i,hoverY:o,rect:a,ctx:l}=e,s=t.displayData??t.data,c=t.hoverEffect===!0;if(r!==void 0&&c&&i!==void 0&&o!==void 0){let{x:u,y:h,width:g,height:m}=xa(gn(s,l,n.baseFontFull),a,n,t.contentAlign);if(i>=u-4&&i<=u-4+g+8&&o>=h-4&&o<=h-4+m+8){let p=zr(l,n.baseFontFull);r("pointer");let v=h-p;l.beginPath(),l.moveTo(a.x+u,Math.floor(a.y+v+m+5)+.5),l.lineTo(a.x+u+g,Math.floor(a.y+v+m+5)+.5),l.strokeStyle=n.linkColor,l.stroke(),l.save(),l.fillStyle=e.cellFillColor,Sr({...e,rect:{...a,x:a.x-1}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x-2}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x+1}},s,t.contentAlign),Sr({...e,rect:{...a,x:a.x+2}},s,t.contentAlign),l.restore()}}l.fillStyle=c?n.linkColor:n.textDark,Sr(e,s,t.contentAlign)},onSelect:e=>{Ca(e)&&e.preventDefault()},onClick:e=>{var n;let{cell:t}=e;Ca(e)&&((n=t.onClickUri)==null||n.call(t,e))},measure:(e,t,n)=>e.measureText(t.displayData??t.data).width+n.cellHorizontalPadding*2,onDelete:e=>({...e,data:""}),provideEditor:e=>t=>{let{onChange:n,value:r,forceEditMode:i,validatedSelection:o}=t;return d.createElement(Nh,{forceEditMode:r.readonly!==!0&&(i||e.hoverEffect===!0&&e.onClickUri!==void 0),uri:r.data,preview:r.displayData??r.data,validatedSelection:o,readonly:r.readonly===!0,onChange:a=>n({...r,data:a.target.value})})},onPaste:(e,t,n)=>e===t.data?void 0:{...t,data:e,displayData:n.formattedString??t.displayData}}];var $h=qt(U(((e,t)=>{var n=ri(),r=po(),i="Expected a function";function o(a,l,s){var c=!0,u=!0;if(typeof a!="function")throw TypeError(i);return r(s)&&(c="leading"in s?!!s.leading:c,u="trailing"in s?!!s.trailing:u),n(a,l,{leading:c,maxWait:l,trailing:u})}t.exports=o}))(),1),Ri=[],Xh=class extends Ml{constructor(){super(...arguments);it(this,"imageLoaded",()=>{});it(this,"loadedLocations",[]);it(this,"cache",{});it(this,"sendLoaded",(0,$h.default)(()=>{this.imageLoaded(new Yn(this.loadedLocations)),this.loadedLocations=[]},20));it(this,"clearOutOfWindow",()=>{let t=Object.keys(this.cache);for(let n of t){let r=this.cache[n],i=!1;for(let o=0;o<r.cells.length;o++){let a=r.cells[o];if(this.isInWindow(a)){i=!0;break}}i?r.cells=r.cells.filter(this.isInWindow):(r.cancel(),delete this.cache[n])}})}setCallback(t){this.imageLoaded=t}loadImage(t,n,r,i){let o=!1,a=Ri.pop()??new Image,l=!1,s={img:void 0,cells:[ur(n,r)],url:t,cancel:()=>{l||(l=!0,Ri.length<12?Ri.unshift(a):o||(a.src=""))}},c=new Promise(u=>a.addEventListener("load",()=>u(null)));requestAnimationFrame(async()=>{try{a.src=t,await c,await a.decode();let u=this.cache[i];if(u!==void 0&&!l){u.img=a;for(let h of u.cells)this.loadedLocations.push(di(h));o=!0,this.sendLoaded()}}catch{s.cancel()}}),this.cache[i]=s}loadOrGetImage(t,n,r){let i=t,o=this.cache[i];if(o!==void 0){let a=ur(n,r);return o.cells.includes(a)||o.cells.push(a),o.img}else this.loadImage(t,n,r,i)}};const Kh=d.forwardRef((e,t)=>{let n=d.useMemo(()=>({..._c,...e.headerIcons}),[e.headerIcons]),r=d.useMemo(()=>e.renderers??Wh,[e.renderers]),i=d.useMemo(()=>e.imageWindowLoader??new Xh,[e.imageWindowLoader]);return d.createElement(sh,{...e,renderers:r,headerIcons:n,ref:t,imageWindowLoader:i})});var Sa=Gi();function Yh(e){switch(e){case"string":return ve.Text;case"number":return ve.Number;case"boolean":return ve.Boolean;default:return ve.Text}}function Vh(e){switch(e){case"string":return Kr.HeaderString;case"number":case"integer":return Kr.HeaderNumber;case"boolean":return Kr.HeaderBoolean;case"date":case"datetime":return Kr.HeaderDate;case"time":return Kr.HeaderTime;case"geometry":case"unknown":return Kr.HeaderString;default:return rs(e),Kr.HeaderString}}function ka(e){return"rowIdx"in e&&"columnId"in e&&"value"in e}function Gh(e){return"rowIdx"in e&&"type"in e}function Uh(e){return"columnIdx"in e&&"type"in e}function qh(e){let{selection:t,data:n,setData:r,onAddEdits:i,columns:o,editableColumns:a}=e;if(!t.current)return;let{range:l}=t.current,{x:s,y:c}=l;navigator.clipboard.readText().then(u=>{if(!u.trim())return;let h=u.split(`
|
|
132
|
+
`).filter(p=>p.trim()),g=[];for(let p of h){let v=p.split(" ");g.push(v)}if(g.length===0)return;let m=[];for(let[p,v]of g.entries()){if(!v)continue;let R=c+p;if(R>=n.length)break;for(let[x,w]of v.entries()){if(w===void 0)continue;let M=s+x;if(!o||M>=o.length)break;let T=o[M],P=T.dataType;if(!(a==="all"||a.includes(T.title)))continue;let E=w;switch(P){case"integer":case"number":{let _=Number(w);if(Number.isNaN(_))continue;E=_;break}case"boolean":{let _=w.toLowerCase();E=_==="true"||_==="1";break}}let A=o[M].title;m.push({rowIdx:R,columnId:A,value:E})}}m.length>0&&(i(m),r(p=>{let v=[...p];for(let R of m)if(ka(R)){let x=R.rowIdx,w=R.columnId;if(x<v.length){let M=v[x];w in M&&(M[w]=R.value)}}return v}))}).catch(u=>{Ui.error("Failed to read clipboard data",u)})}function Zh(e){return e==="light"?{lineHeight:1.25}:{lineHeight:1.25,accentColor:"#7c3aed",accentLight:"rgba(124, 58, 237, 0.15)",textDark:"#f4f4f5",textMedium:"#a1a1aa",textLight:"#71717a",textBubble:"#f4f4f5",bgIconHeader:"#a1a1aa",fgIconHeader:"#18181b",textHeader:"#d4d4d8",textHeaderSelected:"#18181b",bgCell:"#18181b",bgCellMedium:"#27272a",bgHeader:"#27272a",bgHeaderHasFocus:"#3f3f46",bgHeaderHovered:"#3f3f46",bgBubble:"#27272a",bgBubbleSelected:"#7c3aed",bgSearchResult:"#312e81",borderColor:"#27272a",drilldownBorder:"#7c3aed",linkColor:"#818cf8",headerFontStyle:"bold 14px",baseFontStyle:"13px"}}var ze=qt(X0(),1);const Jh=e=>{let t=(0,Sa.c)(19),{currentColumnName:n,onRename:r,onCancel:i}=e,[o,a]=(0,d.useState)(""),l;t[0]!==n||t[1]!==o||t[2]!==r?(l=()=>{o.trim()&&(r(o.trim()),a(n))},t[0]=n,t[1]=o,t[2]=r,t[3]=l):l=t[3];let s=l,c;t[4]!==s||t[5]!==i?(c=w=>{w.key==="Enter"?s():w.key==="Escape"&&i()},t[4]=s,t[5]=i,t[6]=c):c=t[6];let u=c,h;t[7]===Symbol.for("react.memo_cache_sentinel")?(h=(0,ze.jsxs)(Qa,{children:[(0,ze.jsx)(rf,{className:"mr-2 h-3.5 w-3.5"}),"Rename column"]}),t[7]=h):h=t[7];let g;t[8]===Symbol.for("react.memo_cache_sentinel")?(g=(0,ze.jsx)(qi,{htmlFor:"rename-input",children:"Column name"}),t[8]=g):g=t[8];let m;t[9]===Symbol.for("react.memo_cache_sentinel")?(m=w=>a(w.target.value),t[9]=m):m=t[9];let p;t[10]!==u||t[11]!==o?(p=(0,ze.jsxs)("div",{children:[g,(0,ze.jsx)(ns,{value:o,onChange:m,placeholder:"Enter new column name",className:"mt-1",onKeyDown:u})]}),t[10]=u,t[11]=o,t[12]=p):p=t[12];let v=!o.trim(),R;t[13]!==s||t[14]!==v?(R=(0,ze.jsx)(Ji,{onClick:s,disabled:v,size:"sm",className:"w-full",children:"Rename"}),t[13]=s,t[14]=v,t[15]=R):R=t[15];let x;return t[16]!==p||t[17]!==R?(x=(0,ze.jsxs)(ts,{children:[h,(0,ze.jsx)(es,{children:(0,ze.jsx)(Ja,{className:"w-64 p-4",children:(0,ze.jsxs)("div",{className:"space-y-3",children:[p,R]})})})]}),t[16]=p,t[17]=R,t[18]=x):x=t[18],x},Ma=e=>{let t=(0,Sa.c)(77),{direction:n,onAdd:r,onCancel:i}=e,[o,a]=(0,d.useState)(""),[l,s]=(0,d.useState)("string"),c,u,h,g,m,p,v,R,x,w,M,T,P,E,A;if(t[0]!==o||t[1]!==l||t[2]!==n||t[3]!==r||t[4]!==i){let Y=["string","number","boolean","datetime"],B;t[20]!==o||t[21]!==l||t[22]!==r?(B=()=>{o.trim()&&(r(o.trim(),l),a(""),s("string"))},t[20]=o,t[21]=l,t[22]=r,t[23]=B):B=t[23],p=B;let q;t[24]!==p||t[25]!==i?(q=Ae=>{Ae.key==="Enter"?p():Ae.key==="Escape"&&i()},t[24]=p,t[25]=i,t[26]=q):q=t[26];let J=q;m=ts;let K;t[27]===Symbol.for("react.memo_cache_sentinel")?(K=(0,ze.jsx)(nf,{className:"mr-2 h-3.5 w-3.5"}),t[27]=K):K=t[27],t[28]===n?A=t[29]:(A=(0,ze.jsxs)(Qa,{children:[K,"Add column to the ",n]}),t[28]=n,t[29]=A),g=es,h=Ja,E="w-64 p-4",T="space-y-3";let ae=`add-column-input-${n}`,re;t[30]===ae?re=t[31]:(re=(0,ze.jsx)(qi,{htmlFor:ae,children:"Column name"}),t[30]=ae,t[31]=re);let de=`add-column-input-${n}`,Ie;t[32]===Symbol.for("react.memo_cache_sentinel")?(Ie=Ae=>a(Ae.target.value),t[32]=Ie):Ie=t[32];let ee;t[33]!==o||t[34]!==J||t[35]!==de?(ee=(0,ze.jsx)(ns,{id:de,value:o,onChange:Ie,placeholder:"Enter column name",className:"mt-1",onKeyDown:J}),t[33]=o,t[34]=J,t[35]=de,t[36]=ee):ee=t[36],t[37]!==re||t[38]!==ee?(P=(0,ze.jsxs)("div",{children:[re,ee]}),t[37]=re,t[38]=ee,t[39]=P):P=t[39];let le=`add-column-type-${n}`;t[40]===le?M=t[41]:(M=(0,ze.jsx)(qi,{htmlFor:le,children:"Data type"}),t[40]=le,t[41]=M),u=U0,R=l,t[42]===Symbol.for("react.memo_cache_sentinel")?(x=Ae=>s(Ae),t[42]=x):x=t[42];let ce=`add-column-type-${n}`,ye;t[43]===Symbol.for("react.memo_cache_sentinel")?(ye=(0,ze.jsx)(K0,{}),t[43]=ye):ye=t[43],t[44]===ce?w=t[45]:(w=(0,ze.jsx)(G0,{id:ce,className:"mt-1",children:ye}),t[44]=ce,t[45]=w),c=V0,v=Y.map(Qh),t[0]=o,t[1]=l,t[2]=n,t[3]=r,t[4]=i,t[5]=c,t[6]=u,t[7]=h,t[8]=g,t[9]=m,t[10]=p,t[11]=v,t[12]=R,t[13]=x,t[14]=w,t[15]=M,t[16]=T,t[17]=P,t[18]=E,t[19]=A}else c=t[5],u=t[6],h=t[7],g=t[8],m=t[9],p=t[10],v=t[11],R=t[12],x=t[13],w=t[14],M=t[15],T=t[16],P=t[17],E=t[18],A=t[19];let _;t[46]!==c||t[47]!==v?(_=(0,ze.jsx)(c,{children:v}),t[46]=c,t[47]=v,t[48]=_):_=t[48];let k;t[49]!==u||t[50]!==_||t[51]!==R||t[52]!==x||t[53]!==w?(k=(0,ze.jsxs)(u,{value:R,onValueChange:x,children:[w,_]}),t[49]=u,t[50]=_,t[51]=R,t[52]=x,t[53]=w,t[54]=k):k=t[54];let I;t[55]!==k||t[56]!==M?(I=(0,ze.jsxs)("div",{children:[M,k]}),t[55]=k,t[56]=M,t[57]=I):I=t[57];let j=!o.trim(),C;t[58]!==p||t[59]!==j?(C=(0,ze.jsx)(Ji,{onClick:p,disabled:j,size:"sm",className:"w-full",children:"Add"}),t[58]=p,t[59]=j,t[60]=C):C=t[60];let y;t[61]!==I||t[62]!==C||t[63]!==T||t[64]!==P?(y=(0,ze.jsxs)("div",{className:T,children:[P,I,C]}),t[61]=I,t[62]=C,t[63]=T,t[64]=P,t[65]=y):y=t[65];let S;t[66]!==h||t[67]!==y||t[68]!==E?(S=(0,ze.jsx)(h,{className:E,children:y}),t[66]=h,t[67]=y,t[68]=E,t[69]=S):S=t[69];let H;t[70]!==g||t[71]!==S?(H=(0,ze.jsx)(g,{children:S}),t[70]=g,t[71]=S,t[72]=H):H=t[72];let b;return t[73]!==m||t[74]!==H||t[75]!==A?(b=(0,ze.jsxs)(m,{children:[A,H]}),t[73]=m,t[74]=H,t[75]=A,t[76]=b):b=t[76],b};function Qh(e){return(0,ze.jsx)(Y0,{value:e,children:ef(e)},e)}function Ra(e,t){return e.map(n=>{let r=n,i=Object.keys(r);if(t<0||t>=i.length)return r;let o=i[t],{[o]:a,...l}=r;return l})}function Ea(e,t){return t?e.map(n=>({...n,[t]:""})):e}function Ia(e,t,n){return!t||!n||t===n?e:e.map(r=>{let i=r,{[t]:o,...a}=i;return{...a,[n]:i[t]}})}function vn(e){var a;let{columnFields:t,columnIdx:n,type:r,dataType:i,newColumnName:o}=e;switch(r){case"insert":{if(!o)return Ui.error("newName is required for insert"),t;let l=[...t.entries()],s=[...l.slice(0,n),[o,i||"string"],...l.slice(n)];return new Map(s)}case"remove":{if(n<0||n>=t.size)return t;let l=(a=[...t.entries()][n])==null?void 0:a[0];if(l){let s=new Map(t);return s.delete(l),s}return t}case"rename":{if(!o)return Ui.error("newName is required for rename"),t;if(n<0||n>=t.size)return t;let l=[...t.entries()],s=[...l.slice(0,n),[o,i||"string"],...l.slice(n+1)];return new Map(s)}}}var Ta=Gi(),e0=W0();function t0(){let e=document.querySelector("[data-testid='glide-data-editor-portal'] .gdg-clip-region");e&&e.dispatchEvent(new KeyboardEvent("keydown",{key:"Escape",bubbles:!0}))}function r0(){return document.fullscreenElement??document.body}function n0(){let e=(0,Ta.c)(2),[t,n]=(0,d.useState)(r0),r,i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(r=()=>{let o=()=>{document.fullscreenElement?n(document.fullscreenElement):(t0(),n(document.body))};return document.addEventListener("fullscreenchange",o),o(),()=>{document.removeEventListener("fullscreenchange",o)}},i=[],e[0]=r,e[1]=i):(r=e[0],i=e[1]),(0,d.useEffect)(r,i),t}function o0(e){let t=(0,Ta.c)(6),{portalRef:n}=e,r=n0(),i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={position:"fixed",left:0,top:0,zIndex:9999},t[0]=i):i=t[0];let o;t[1]===n?o=t[2]:(o=(0,ze.jsx)("div",{ref:n,"data-testid":"glide-data-editor-portal",style:i}),t[1]=n,t[2]=o);let a;return t[3]!==r||t[4]!==o?(a=(0,e0.createPortal)(o,r),t[3]=r,t[4]=o,t[5]=a):a=t[5],a}var i0=Gi();rl=e=>{let t=(0,i0.c)(108),{data:n,setData:r,columnFields:i,setColumnFields:o,editableColumns:a,edits:l,onAddEdits:s,onAddRows:c,onDeleteRows:u,onRenameColumn:h,onDeleteColumn:g,onAddColumn:m}=e,{theme:p}=af(),v=(0,d.useRef)(null),R=(0,d.useRef)(null),[x,w]=(0,d.useState)(),[M,T]=(0,d.useState)(!1),P;t[0]===Symbol.for("react.memo_cache_sentinel")?(P={columns:dt.empty(),rows:dt.empty()},t[0]=P):P=t[0];let[E,A]=d.useState(P),_;t[1]===Symbol.for("react.memo_cache_sentinel")?(_={},t[1]=_):_=t[1];let[k,I]=(0,d.useState)(_),j=Q0(),C=(0,d.useRef)(!1),y;if(t[2]!==i||t[3]!==k||t[4]!==a||t[5]!==p){y=[];for(let[me,De]of i){let se=a==="all"||a.includes(me);y.push({id:me,title:me,width:k[me],icon:se?Vh(De):Kr.ProtectedColumnOverlay,style:"normal",kind:Yh(De),dataType:De,hasMenu:!0,themeOverride:se?void 0:{bgCell:p==="light"?"#F9F9FA":"#1e1e21"}})}t[2]=i,t[3]=k,t[4]=a,t[5]=p,t[6]=y}else y=t[6];let S=y,H;t[7]!==S||t[8]!==n.length||t[9]!==l||t[10]!==j||t[11]!==o||t[12]!==r?(H=()=>{if(C.current||n.length===0||(C.current=!0,l.length===0))return;let me=new Map;for(let se of l)if(ka(se))if(se.rowIdx>=n.length){me.has(se.rowIdx)||me.set(se.rowIdx,{});let Me=me.get(se.rowIdx);Me&&(Me[se.columnId]=se.value)}else r(Me=>{let xe=[...Me];return xe[se.rowIdx][se.columnId]=se.value,xe});else if(Gh(se)&&se.type===Uo.Remove)r(Me=>Me.filter((xe,qe)=>qe!==se.rowIdx));else if(Uh(se))e:switch(se.type){case Uo.Remove:r(Me=>Ra(Me,se.columnIdx)),o(Me=>vn({columnFields:Me,columnIdx:se.columnIdx,type:"remove"}));break e;case Uo.Insert:o(Me=>vn({columnFields:Me,columnIdx:se.columnIdx,type:"insert",newColumnName:se.newName})),r(Me=>Ea(Me,se.newName));break e;case Uo.Rename:{let Me=S[se.columnIdx].title,xe=se.newName;if(!Me||!xe)return;o(qe=>vn({columnFields:qe,columnIdx:se.columnIdx,type:"rename",newColumnName:xe})),r(qe=>Ia(qe,Me,xe))}}let De=[...me.entries()].toSorted(l0).map(a0);De.length>0&&r(se=>[...se,...De]),j()},t[7]=S,t[8]=n.length,t[9]=l,t[10]=j,t[11]=o,t[12]=r,t[13]=H):H=t[13];let b;t[14]===n.length?b=t[15]:(b=[n.length],t[14]=n.length,t[15]=b),(0,d.useEffect)(H,b);let Y;t[16]!==S||t[17]!==n||t[18]!==a?(Y=me=>{let[De,se]=me,Me=n[se][S[De].title],xe=S[De].kind,qe=a==="all"||a.includes(S[De].title);if(xe===ve.Boolean){let Pt=!!Me;return{kind:ve.Boolean,allowOverlay:!1,readonly:!qe,data:Pt}}return xe===ve.Number&&typeof Me=="number"?{kind:ve.Number,allowOverlay:qe,readonly:!qe,displayData:String(Me),data:Me}:{kind:ve.Text,allowOverlay:qe,readonly:!qe,displayData:String(Me),data:String(Me)}},t[16]=S,t[17]=n,t[18]=a,t[19]=Y):Y=t[19];let B=Y,q;t[20]!==S||t[21]!==s||t[22]!==r?(q=(me,De)=>{let[se,Me]=me,xe=S[se],qe=xe.title,Pt=De.data;(xe.dataType==="number"||xe.dataType==="integer")&&(De.data===void 0||De.data==="")&&(Pt=null),r(Je=>{let Mt=[...Je];return Mt[Me][qe]=Pt,Mt}),s([{rowIdx:Me,columnId:qe,value:Pt}])},t[20]=S,t[21]=s,t[22]=r,t[23]=q):q=t[23];let J=q,K;t[24]===Symbol.for("react.memo_cache_sentinel")?(K=(me,De)=>{I(se=>({...se,[me.title]:De}))},t[24]=K):K=t[24];let ae=K,re;t[25]!==i||t[26]!==S?(re=(me,De,se)=>{let[Me]=me,xe=S[Me].title,qe=i.get(xe);e:switch(qe){case"number":case"integer":if(Number.isNaN(Number(De.data)))return!1;break e;case"boolean":if(typeof De.data!="boolean")return!1}return!0},t[25]=i,t[26]=S,t[27]=re):re=t[27];let de=re,Ie;t[28]!==S||t[29]!==n||t[30]!==a||t[31]!==s||t[32]!==E||t[33]!==r?(Ie=me=>{if(v.current){if(Zi.isMetaOrCtrl(me)&&me.key==="c"){v.current.emit("copy");return}if(Zi.isMetaOrCtrl(me)&&me.key==="v"){qh({selection:E,data:n,setData:r,columns:S,editableColumns:a,onAddEdits:s});return}if(Zi.isMetaOrCtrl(me)&&me.key==="f"){T(s0),me.stopPropagation(),me.preventDefault();return}if(me.key==="Escape"){T(!1);return}}},t[28]=S,t[29]=n,t[30]=a,t[31]=s,t[32]=E,t[33]=r,t[34]=Ie):Ie=t[34];let ee=Ie,le;t[35]!==S||t[36]!==c||t[37]!==r?(le=()=>{let me=Object.fromEntries(S.map(c0));c([me]),r(De=>[...De,me])},t[35]=S,t[36]=c,t[37]=r,t[38]=le):le=t[38];let ce=le,ye;t[39]!==u||t[40]!==E.rows||t[41]!==r?(ye=()=>{let me=E.rows.toArray();u(me);let De=0;for(let se of me){let Me=se-De;r(xe=>xe.filter((qe,Pt)=>Pt!==Me)),De++}A({columns:dt.empty(),rows:dt.empty()})},t[39]=u,t[40]=E.rows,t[41]=r,t[42]=ye):ye=t[42];let Ae=ye,st;t[43]===Symbol.for("react.memo_cache_sentinel")?(st=(me,De)=>{w({col:me,bounds:De})},t[43]=st):st=t[43];let lt=N0(st),Oe;t[44]!==S||t[45]!==x?(Oe=async()=>{if(x){let me=S[x.col].title;await sf(me),w(void 0)}},t[44]=S,t[45]=x,t[46]=Oe):Oe=t[46];let Be=Oe,Te;t[47]===Symbol.for("react.memo_cache_sentinel")?(Te=function(me){lf({title:`Column '${me}' already exists`,description:"Please enter a different column name",variant:"danger"})},t[47]=Te):Te=t[47];let ft=Te,gt;t[48]!==i||t[49]!==S||t[50]!==x||t[51]!==h||t[52]!==o||t[53]!==r?(gt=me=>{if(x){let De=S[x.col].title;if(i.has(me)){ft(me);return}let se=S[x.col].dataType;h(x.col,me),o(Me=>vn({columnFields:Me,columnIdx:x.col,type:"rename",dataType:se,newColumnName:me})),r(Me=>Ia(Me,De,me)),w(void 0)}},t[48]=i,t[49]=S,t[50]=x,t[51]=h,t[52]=o,t[53]=r,t[54]=gt):gt=t[54];let ct=gt,ne;t[55]!==x||t[56]!==g||t[57]!==o||t[58]!==r?(ne=()=>{x&&(g(x.col),o(me=>vn({columnFields:me,columnIdx:x.col,type:"remove"})),r(me=>Ra(me,x.col)),w(void 0))},t[55]=x,t[56]=g,t[57]=o,t[58]=r,t[59]=ne):ne=t[59];let he=ne,Se;t[60]!==i||t[61]!==S.length||t[62]!==x||t[63]!==m||t[64]!==o||t[65]!==r?(Se=me=>{let{direction:De,columnName:se,dataType:Me}=me;if(x){let xe=x.col+(De==="left"?0:1),qe=Math.max(0,Math.min(xe,S.length));if(i.has(se)){ft(se);return}m(qe,se),o(Pt=>vn({columnFields:Pt,columnIdx:qe,type:"insert",dataType:Me,newColumnName:se})),r(Pt=>Ea(Pt,se)),w(void 0)}},t[60]=i,t[61]=S.length,t[62]=x,t[63]=m,t[64]=o,t[65]=r,t[66]=Se):Se=t[66];let je=Se,be=(x==null?void 0:x.col)===S.length-1,Xe=x!==void 0,Le;t[67]===Symbol.for("react.memo_cache_sentinel")?(Le={hint:"New row",sticky:!0,tint:!0},t[67]=Le):Le=t[67];let et=Le,ue=n.length>1e5,Ce=a==="all",Ne;t[68]!==Ce||t[69]!==S||t[70]!==je||t[71]!==Be||t[72]!==he||t[73]!==ct||t[74]!==ue||t[75]!==be||t[76]!==Xe||t[77]!==x?(Ne=()=>{if(!Xe)return;let me=(0,ze.jsxs)(ze.Fragment,{children:[Ce&&(0,ze.jsx)(Jh,{currentColumnName:S[x.col].title,onRename:ct,onCancel:()=>w(void 0)}),(0,ze.jsx)(Za,{}),(0,ze.jsx)(Ma,{direction:"left",onAdd:(De,se)=>je({direction:"left",columnName:De,dataType:se}),onCancel:()=>w(void 0)}),(0,ze.jsx)(Ma,{direction:"right",onAdd:(De,se)=>je({direction:"right",columnName:De,dataType:se}),onCancel:()=>w(void 0)}),(0,ze.jsx)(Za,{}),!be&&Ce&&(0,ze.jsxs)(qa,{onClick:he,className:"text-destructive focus:text-destructive",children:[(0,ze.jsx)(of,{className:"mr-2 h-3.5 w-3.5"}),"Delete column"]})]});return(0,ze.jsx)(Z0,{open:Xe,onOpenChange:De=>!De&&w(void 0),children:(0,ze.jsxs)(q0,{style:{left:(x==null?void 0:x.bounds.x)??0,top:((x==null?void 0:x.bounds.y)??0)+((x==null?void 0:x.bounds.height)??0)},className:"fixed w-52",children:[(0,ze.jsxs)(qa,{onClick:Be,children:[(0,ze.jsx)(tf,{className:"mr-2 h-3.5 w-3.5"}),"Copy column name"]}),!ue&&me]})})},t[68]=Ce,t[69]=S,t[70]=je,t[71]=Be,t[72]=he,t[73]=ct,t[74]=ue,t[75]=be,t[76]=Xe,t[77]=x,t[78]=Ne):Ne=t[78];let Ge=Ne,Ue;t[79]===Symbol.for("react.memo_cache_sentinel")?(Ue=(0,ze.jsx)(o0,{portalRef:R}),t[79]=Ue):Ue=t[79];let wt=n.length,Ze=!ue,_e=!ue,Ct=n.length>10?450:void 0,Tt;t[80]===Symbol.for("react.memo_cache_sentinel")?(Tt={kind:"both"},t[80]=Tt):Tt=t[80];let Ht;t[81]===p?Ht=t[82]:(Ht=Zh(p),t[81]=p,t[82]=Ht);let ht;t[83]!==S||t[84]!==n.length||t[85]!==B||t[86]!==J||t[87]!==lt||t[88]!==ee||t[89]!==ce||t[90]!==E||t[91]!==M||t[92]!==Ze||t[93]!==_e||t[94]!==Ct||t[95]!==Ht||t[96]!==de?(ht=(0,ze.jsx)($0,{children:(0,ze.jsx)(Kh,{ref:v,portalElementRef:R,getCellContent:B,columns:S,gridSelection:E,onGridSelectionChange:A,rows:wt,overscrollX:50,smoothScrollX:Ze,smoothScrollY:_e,validateCell:de,getCellsForSelection:!0,onPaste:!0,showSearch:M,fillHandle:!0,allowedFillDirections:"vertical",onKeyDown:ee,height:Ct,width:"100%",rowMarkers:Tt,rowSelectionMode:"multi",onCellEdited:J,onColumnResize:ae,onHeaderMenuClick:lt,theme:Ht,trailingRowOptions:et,onRowAppended:ce,maxColumnAutoWidth:600,maxColumnWidth:600})}),t[83]=S,t[84]=n.length,t[85]=B,t[86]=J,t[87]=lt,t[88]=ee,t[89]=ce,t[90]=E,t[91]=M,t[92]=Ze,t[93]=_e,t[94]=Ct,t[95]=Ht,t[96]=de,t[97]=ht):ht=t[97];let yt;t[98]===Ge?yt=t[99]:(yt=Ge(),t[98]=Ge,t[99]=yt);let zt=E.rows.length===0,Yt=E.rows.length<=1?"Delete row":"Delete rows",Lt;t[100]!==Ae||t[101]!==zt||t[102]!==Yt?(Lt=(0,ze.jsx)("div",{className:"absolute bottom-1 right-2 w-26",children:(0,ze.jsx)(Ji,{variant:"destructive",size:"sm",disabled:zt,className:"right-2 h-7",onClick:Ae,children:Yt})}),t[100]=Ae,t[101]=zt,t[102]=Yt,t[103]=Lt):Lt=t[103];let at;return t[104]!==ht||t[105]!==yt||t[106]!==Lt?(at=(0,ze.jsxs)("div",{className:"relative w-full min-w-0",children:[Ue,ht,yt,Lt]}),t[104]=ht,t[105]=yt,t[106]=Lt,t[107]=at):at=t[107],at},ys=rl;function l0(e,t){let[n]=e,[r]=t;return n-r}function a0(e){let[,t]=e;return t}function s0(e){return!e}function c0(e){let t=e.dataType;switch(t){case"boolean":return[e.title,!1];case"number":case"integer":return[e.title,null];case"date":case"datetime":case"time":return[e.title,new Date];case"string":case"geometry":case"unknown":return[e.title,""];default:return rs(t),[e.title,""]}}})();export{rl as GlideDataEditor,xf as __tla,ys as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as re}from"./chunk-C4rtOYze.js";import{d as je,l as oe,n as ae}from"./useEvent-GCVIknuR.js";import{t as be}from"./react-C60yClUi.js";import{Br as ve,Ir as se,Kn as ie,Kr as ke,Nt as we,Rr as Ne,ia as ne,qr as _e}from"./cells-DTFqEQb0.js";import"./react-dom-Ba2zmJWD.js";import{t as le}from"./compiler-runtime-DnimoHo0.js";import{_ as ce}from"./useEventListener-DpNnLPuE.js";import{t as Se}from"./objects-CrbstYTV.js";import{n as E}from"./constants-DifUxsbZ.js";import{P as Ce}from"./config-EoJoeZuK.js";import{t as ze}from"./ErrorBoundary-B392qglD.js";import{t as Ie}from"./cn-DCUzRj2J.js";import{t as Me}from"./jsx-runtime-3wZU7vFS.js";import"./fullscreen-CrevbcR_.js";import{o as Re}from"./alert-dialog-D_kB5FIu.js";import"./popover-B96fOqfH.js";import{a as Pe,c as De,p as Oe,r as Te,t as We}from"./dropdown-menu-DWGvf_Bw.js";import{t as Ae}from"./label-BOFHwHn7.js";import{t as Fe}from"./tooltip-C9LWGQ7Y.js";import{t as B}from"./button-W__YVea9.js";import"./dist-CeF1Em5L.js";import"./cjs-DCKmcMBz.js";import"./useNonce-C2dwX-sI.js";import{r as q}from"./requests-B9zEd_sW.js";import{t as H}from"./createLucideIcon-B8oVfJNp.js";import{t as Ue}from"./chart-no-axes-column-eb23KpAk.js";import{r as $e}from"./x-4y-nyVDU.js";import{t as Le}from"./chevron-right-C9ZBG6Lx.js";import{o as me,s as Ee}from"./tree-actions-DUAdNn1i.js";import{t as He}from"./circle-play-CuuYNJwJ.js";import{t as K}from"./external-link-C8y9rFms.js";import{r as Ve,t as Be}from"./file-icons-V3puz20c.js";import{t as qe}from"./file-BjlLTeSV.js";import{n as Ye,r as Je,t as Ge}from"./youtube-Bm-0BwCx.js";import{t as Ke}from"./link-DCLOj_aN.js";import{t as Q}from"./spinner-Cj3eM5bt.js";import{t as Qe}from"./package-ROei-DG7.js";import{a as Xe,i as Ze,l as et,n as tt,o as rt,r as ot,s as at,t as st}from"./file-name-input-DWf6YZwM.js";import{n as it,r as nt,t as lt}from"./app-config-button-C2zJXSrK.js";import{t as ct}from"./refresh-ccw-neWzNbg7.js";import{dt as mt,r as dt}from"./input-BN98e517.js";import"./dist-BPoMypmC.js";import"./dist-5bwTcyKs.js";import"./dist-BVNaV53g.js";import"./dist-BrqkjqDe.js";import"./dist-Bm9PT5P9.js";import{t as de}from"./use-toast-DjpWVza6.js";import{n as he}from"./paths-D5zczhUD.js";import{c as pe,n as ht,o as pt,t as ft}from"./session-D-SddyN0.js";import"./purify.es-Bwm8T4QC.js";import{s as ut}from"./dates-CZTDC2tF.js";import{t as xt}from"./context-BJMN4ll3.js";import{n as gt}from"./ImperativeModal-Dxj31V4A.js";import{a as yt}from"./errors-D93OkQw8.js";import{n as jt}from"./react-icons.esm-CsgEZOQ_.js";import{t as fe}from"./error-banner-d0-XOKtd.js";import{n as X,t as bt}from"./useAsyncData-BcvSvTUt.js";import{t as Z}from"./icons-BwSNDWAP.js";import{t as vt}from"./github-6F3RzPv3.js";import{n as kt}from"./marimo-icons-CW8-Txe-.js";import{t as wt}from"./links-STGde2qx.js";import"./Inputs-DrAa-p6i.js";import{t as Nt}from"./useInterval-CTStcSBb.js";var _t=H("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),St=H("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),Ct=H("graduation-cap",[["path",{d:"M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z",key:"j76jl0"}],["path",{d:"M22 10v6",key:"1lu8f3"}],["path",{d:"M6 12.5V16a6 3 0 0 0 12 0v-3.5",key:"1r8lef"}]]),zt=H("orbit",[["path",{d:"M20.341 6.484A10 10 0 0 1 10.266 21.85",key:"1enhxb"}],["path",{d:"M3.659 17.516A10 10 0 0 1 13.74 2.152",key:"1crzgf"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["circle",{cx:"19",cy:"5",r:"2",key:"mhkx31"}],["circle",{cx:"5",cy:"19",r:"2",key:"v8kfzx"}]]),It=H("panels-top-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]]),P=re(be(),1),ee=le(),r=re(Me(),1),Mt={intro:["Introduction",_t,"Get started with marimo basics"],dataflow:["Dataflow",_e,"Learn how cells interact with each other"],ui:["UI Elements",It,"Create interactive UI components"],markdown:["Markdown",se,"Format text with parameterized markdown"],plots:["Plots",Ue,"Create interactive visualizations"],sql:["SQL",Ne,"Query databases directly in marimo"],layout:["Layout",Je,"Customize the layout of your cells' output"],fileformat:["File format",qe,"Understand marimo's pure-Python file format"],"external-dependencies":["External dependencies",Qe,"Declare dependencies with Python script metadata"],"for-jupyter-users":["For Jupyter users",zt,"Transiting from Jupyter to marimo"],"markdown-format":["Markdown format",Z,"Using marimo to edit markdown files"]};const Rt=()=>{let t=(0,ee.c)(6),{openTutorial:e}=q(),o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,r.jsx)(Ct,{className:"w-4 h-4 mr-2"}),t[0]=o):o=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(Oe,{asChild:!0,children:(0,r.jsxs)(B,{"data-testid":"open-tutorial-button",size:"xs",variant:"outline",children:[o,"Tutorials",(0,r.jsx)(jt,{className:"w-3 h-3 ml-1"})]})}),t[1]=s):s=t[1];let a;t[2]===e?a=t[3]:(a=Se.entries(Mt).map(i=>{let[m,h]=i,[p,u,l]=h;return(0,r.jsxs)(Pe,{onSelect:async()=>{let c=await e({tutorialId:m});c&&wt(c.path)},children:[(0,r.jsx)(u,{strokeWidth:1.5,className:"w-4 h-4 mr-3 self-start mt-1.5 text-muted-foreground"}),(0,r.jsx)("div",{className:"flex items-center",children:(0,r.jsxs)("div",{className:"flex flex-col",children:[(0,r.jsx)("span",{children:p}),(0,r.jsx)("span",{className:"text-xs text-muted-foreground pr-1",children:l})]})})]},m)}),t[2]=e,t[3]=a);let n;return t[4]===a?n=t[5]:(n=(0,r.jsxs)(We,{children:[s,(0,r.jsx)(Te,{side:"bottom",align:"end",className:"print:hidden",children:a})]}),t[4]=a,t[5]=n),n};var Pt=[{title:"Documentation",description:"Official marimo documentation and API reference",icon:ke,url:E.docsPage},{title:"GitHub",description:"View source code, report issues, or contribute",icon:vt,url:E.githubPage},{title:"Community",description:"Join the marimo Discord community",icon:Ye,url:E.discordLink},{title:"molab",description:"Run marimo notebooks in the cloud",icon:kt,url:E.molab},{title:"YouTube",description:"Watch tutorials and demos",icon:Ge,url:E.youtube},{title:"Changelog",description:"See what's new in marimo",icon:se,url:E.releasesPage}];const Dt=()=>{let t=(0,ee.c)(2),e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,r.jsx)(Y,{Icon:Ke,children:"Resources"}),t[0]=e):e=t[0];let o;return t[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[e,(0,r.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:Pt.map(Ot)})]}),t[1]=o):o=t[1],o},Y=t=>{let e=(0,ee.c)(8),{Icon:o,control:s,children:a}=t,n;e[0]===o?n=e[1]:(n=(0,r.jsx)(o,{className:"h-5 w-5"}),e[0]=o,e[1]=n);let i;e[2]!==a||e[3]!==n?(i=(0,r.jsxs)("h2",{className:"flex items-center gap-2 text-xl font-semibold text-muted-foreground select-none",children:[n,a]}),e[2]=a,e[3]=n,e[4]=i):i=e[4];let m;return e[5]!==s||e[6]!==i?(m=(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[i,s]}),e[5]=s,e[6]=i,e[7]=m):m=e[7],m};function Ot(t){return(0,r.jsxs)("a",{href:t.url,target:"_blank",className:"flex items-start gap-3 py-3 px-3 rounded-lg border hover:bg-accent/20 transition-colors shadow-xs",children:[(0,r.jsx)(t.icon,{className:"w-5 h-5 mt-1.5 text-primary"}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium",children:t.title}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:t.description})]})]},t.title)}const te=P.createContext({runningNotebooks:new Map,setRunningNotebooks:ce.NOOP}),J=P.createContext({root:"",refreshWorkspace:ce.NOOP}),Tt=ne("marimo:home:include-markdown",!1,ie,{getOnInit:!0}),ue=ne("marimo:home:expanded-folders",{},ie,{getOnInit:!0});var W=le();function xe(t){return`${ft()}-${encodeURIComponent(t)}`}var Wt=()=>{let t=(0,W.c)(58),[e,o]=(0,P.useState)(0),{getRecentFiles:s,getRunningNotebooks:a}=q(),n;t[0]===s?n=t[1]:(n=()=>s(),t[0]=s,t[1]=n);let i;t[2]===Symbol.for("react.memo_cache_sentinel")?(i=[],t[2]=i):i=t[2];let m=X(n,i),h,p;t[3]===Symbol.for("react.memo_cache_sentinel")?(h=()=>{o(qt)},p={delayMs:1e4,whenVisible:!0},t[3]=h,t[4]=p):(h=t[3],p=t[4]),Nt(h,p);let u;t[5]===a?u=t[6]:(u=async()=>{let R=await a();return me.keyBy(R.files,Yt)},t[5]=a,t[6]=u);let l;t[7]===e?l=t[8]:(l=[e],t[7]=e,t[8]=l);let c=X(u,l),f,d,y,x,v,b,g,j,k,N,_,D,S;if(t[9]!==m||t[10]!==c){k=Symbol.for("react.early_return_sentinel");e:{let R=bt(m,c);if(R.error)throw R.error;let F=R.data;if(!F){let V;t[24]===Symbol.for("react.memo_cache_sentinel")?(V=(0,r.jsx)(Q,{centered:!0,size:"xlarge"}),t[24]=V):V=t[24],k=V;break e}let[$,L]=F;x=$,y=P.Suspense,d=te,g={runningNotebooks:L,setRunningNotebooks:c.setData};let w,U;t[25]===Symbol.for("react.memo_cache_sentinel")?(w=(0,r.jsx)(Rt,{}),U=(0,r.jsx)(lt,{showAppConfig:!1}),t[25]=w,t[26]=U):(w=t[25],U=t[26]);let G=`This will shutdown the notebook server and terminate all running notebooks (${L.size}). You'll lose all data that's in memory.`;t[27]===G?j=t[28]:(j=(0,r.jsxs)("div",{className:"absolute top-3 right-5 flex gap-3 z-50",children:[w,U,(0,r.jsx)(it,{description:G})]}),t[27]=G,t[28]=j),D="flex flex-col gap-6 max-w-6xl container pt-5 pb-20 z-10",t[29]===Symbol.for("react.memo_cache_sentinel")?(S=(0,r.jsx)("img",{src:"logo.png",alt:"marimo logo",className:"w-48 mb-2"}),v=(0,r.jsx)(Vt,{}),b=(0,r.jsx)(Dt,{}),t[29]=v,t[30]=b,t[31]=S):(v=t[29],b=t[30],S=t[31]),f=ge,t[32]===Symbol.for("react.memo_cache_sentinel")?(N=(0,r.jsx)(Y,{Icon:He,children:"Running notebooks"}),t[32]=N):N=t[32],_=[...L.values()]}t[9]=m,t[10]=c,t[11]=f,t[12]=d,t[13]=y,t[14]=x,t[15]=v,t[16]=b,t[17]=g,t[18]=j,t[19]=k,t[20]=N,t[21]=_,t[22]=D,t[23]=S}else f=t[11],d=t[12],y=t[13],x=t[14],v=t[15],b=t[16],g=t[17],j=t[18],k=t[19],N=t[20],_=t[21],D=t[22],S=t[23];if(k!==Symbol.for("react.early_return_sentinel"))return k;let C;t[33]!==f||t[34]!==N||t[35]!==_?(C=(0,r.jsx)(f,{header:N,files:_}),t[33]=f,t[34]=N,t[35]=_,t[36]=C):C=t[36];let A;t[37]===Symbol.for("react.memo_cache_sentinel")?(A=(0,r.jsx)(Y,{Icon:ve,children:"Recent notebooks"}),t[37]=A):A=t[37];let z;t[38]===x.files?z=t[39]:(z=(0,r.jsx)(ge,{header:A,files:x.files}),t[38]=x.files,t[39]=z);let I;t[40]===m.refetch?I=t[41]:(I=(0,r.jsx)(ze,{children:(0,r.jsx)(At,{onRefreshRecents:m.refetch})}),t[40]=m.refetch,t[41]=I);let O;t[42]!==v||t[43]!==b||t[44]!==C||t[45]!==z||t[46]!==I||t[47]!==D||t[48]!==S?(O=(0,r.jsxs)("div",{className:D,children:[S,v,b,C,z,I]}),t[42]=v,t[43]=b,t[44]=C,t[45]=z,t[46]=I,t[47]=D,t[48]=S,t[49]=O):O=t[49];let M;t[50]!==d||t[51]!==g||t[52]!==j||t[53]!==O?(M=(0,r.jsxs)(d,{value:g,children:[j,O]}),t[50]=d,t[51]=g,t[52]=j,t[53]=O,t[54]=M):M=t[54];let T;return t[55]!==y||t[56]!==M?(T=(0,r.jsx)(y,{children:M}),t[55]=y,t[56]=M,t[57]=T):T=t[57],T},At=t=>{let e=(0,W.c)(54),{onRefreshRecents:o}=t,{getWorkspaceFiles:s}=q(),[a,n]=oe(Tt),[i,m]=(0,P.useState)(""),h;e[0]!==s||e[1]!==a?(h=()=>s({includeMarkdown:a}),e[0]=s,e[1]=a,e[2]=h):h=e[2];let p;e[3]===a?p=e[4]:(p=[a],e[3]=a,e[4]=p);let{isPending:u,data:l,error:c,isFetching:f,refetch:d}=X(h,p),y;e[5]!==o||e[6]!==d?(y=()=>{d(),o()},e[5]=o,e[6]=d,e[7]=y):y=e[7];let x=ae(y);l==null||l.root;let v=(l==null?void 0:l.root)??"",b;e[8]!==x||e[9]!==v?(b={root:v,refreshWorkspace:x},e[8]=x,e[9]=v,e[10]=b):b=e[10];let g=b;if(u){let w;return e[11]===Symbol.for("react.memo_cache_sentinel")?(w=(0,r.jsx)(Q,{centered:!0,size:"xlarge",className:"mt-6"}),e[11]=w):w=e[11],w}if(c){let w;e[12]===c?w=e[13]:(w=yt(c),e[12]=c,e[13]=w);let U;return e[14]===w?U=e[15]:(U=(0,r.jsx)(fe,{kind:"danger",className:"rounded p-4",children:w}),e[14]=w,e[15]=U),U}let j;e[16]!==l.fileCount||e[17]!==l.hasMore?(j=l.hasMore&&(0,r.jsxs)(fe,{kind:"warn",className:"rounded p-4",children:["Showing first ",l.fileCount," files. Your workspace has more files."]}),e[16]=l.fileCount,e[17]=l.hasMore,e[18]=j):j=e[18];let k,N;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=(0,r.jsx)(mt,{size:13}),N=w=>m(w.target.value),e[19]=k,e[20]=N):(k=e[19],N=e[20]);let _;e[21]===i?_=e[22]:(_=(0,r.jsx)(dt,{id:"search",value:i,icon:k,onChange:N,placeholder:"Search",className:"mb-0 border-border"}),e[21]=i,e[22]=_);let D;e[23]===Symbol.for("react.memo_cache_sentinel")?(D=(0,r.jsx)(Ft,{}),e[23]=D):D=e[23];let S;e[24]===n?S=e[25]:(S=w=>n(!!w),e[24]=n,e[25]=S);let C;e[26]!==a||e[27]!==S?(C=(0,r.jsx)(we,{"data-testid":"include-markdown-checkbox",id:"include-markdown",checked:a,onCheckedChange:S}),e[26]=a,e[27]=S,e[28]=C):C=e[28];let A;e[29]===Symbol.for("react.memo_cache_sentinel")?(A=(0,r.jsx)(Ae,{htmlFor:"include-markdown",children:"Include markdown"}),e[29]=A):A=e[29];let z;e[30]!==C||e[31]!==_?(z=(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[_,D,C,A]}),e[30]=C,e[31]=_,e[32]=z):z=e[32];let I;e[33]===d?I=e[34]:(I=()=>d(),e[33]=d,e[34]=I);let O;e[35]===Symbol.for("react.memo_cache_sentinel")?(O=(0,r.jsx)(ct,{className:"w-4 h-4"}),e[35]=O):O=e[35];let M;e[36]===I?M=e[37]:(M=(0,r.jsx)(B,{variant:"text",size:"icon",className:"w-4 h-4 ml-1 p-0 opacity-70 hover:opacity-100",onClick:I,"aria-label":"Refresh workspace",children:O}),e[36]=I,e[37]=M);let T;e[38]===f?T=e[39]:(T=f&&(0,r.jsx)(Q,{size:"small"}),e[38]=f,e[39]=T);let R;e[40]!==z||e[41]!==M||e[42]!==T?(R=(0,r.jsxs)(Y,{Icon:St,control:z,children:["Workspace",M,T]}),e[40]=z,e[41]=M,e[42]=T,e[43]=R):R=e[43];let F;e[44]!==i||e[45]!==l.files?(F=(0,r.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:(0,r.jsx)(Ut,{searchText:i,files:l.files})}),e[44]=i,e[45]=l.files,e[46]=F):F=e[46];let $;e[47]!==R||e[48]!==F||e[49]!==j?($=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[j,R,F]}),e[47]=R,e[48]=F,e[49]=j,e[50]=$):$=e[50];let L;return e[51]!==$||e[52]!==g?(L=(0,r.jsx)(J,{value:g,children:$}),e[51]=$,e[52]=g,e[53]=L):L=e[53],L},Ft=()=>{let t=(0,W.c)(5),e=je(ue),o;t[0]===e?o=t[1]:(o=()=>{e({})},t[0]=e,t[1]=o);let s;t[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(Ee,{className:"w-4 h-4 mr-1"}),t[2]=s):s=t[2];let a;return t[3]===o?a=t[4]:(a=(0,r.jsxs)(B,{variant:"text",size:"sm",className:"h-fit hidden sm:flex",onClick:o,children:[s,"Collapse all"]}),t[3]=o,t[4]=a),a},Ut=t=>{let e=(0,W.c)(20),{files:o,searchText:s}=t,[a,n]=oe(ue),i=Object.keys(a).length===0,m=(0,P.useRef)(void 0),{root:h,refreshWorkspace:p}=(0,P.use)(J),u;e[0]===h?u=e[1]:(u={root:h},e[0]=h,e[1]=u);let{renameFile:l}=rt(u),c,f;e[2]===i?(c=e[3],f=e[4]):(c=()=>{var g;i&&((g=m.current)==null||g.closeAll())},f=[i],e[2]=i,e[3]=c,e[4]=f),(0,P.useEffect)(c,f);let d;e[5]!==p||e[6]!==l?(d=async(g,j)=>{var N;let k=(N=m.current)==null?void 0:N.get(g);if(!k){de({title:"Failed",description:`Node with id ${g} not found in the tree`});return}await l(k.data,j)&&p()},e[5]=p,e[6]=l,e[7]=d):d=e[7];let y=ae(d);if(o.length===0){let g;return e[8]===Symbol.for("react.memo_cache_sentinel")?(g=(0,r.jsx)("div",{className:"flex flex-col px-5 py-10 items-center justify-center",children:(0,r.jsx)("p",{className:"text-center text-muted-foreground",children:"No files in this workspace"})}),e[8]=g):g=e[8],g}let x;e[9]!==a||e[10]!==n?(x=async g=>{let j=a[g]??!1;n({...a,[g]:!j})},e[9]=a,e[10]=n,e[11]=x):x=e[11];let v;e[12]===y?v=e[13]:(v=async g=>{let{id:j,name:k}=g;await y(j,k)},e[12]=y,e[13]=v);let b;return e[14]!==o||e[15]!==a||e[16]!==s||e[17]!==x||e[18]!==v?(b=(0,r.jsx)(et,{ref:m,width:"100%",height:500,searchTerm:s,className:"h-full",idAccessor:Jt,data:o,openByDefault:!1,initialOpenState:a,onToggle:x,onRename:v,padding:5,rowHeight:35,indent:15,overscanCount:1e3,renderCursor:Gt,disableDrop:!0,disableDrag:!0,disableMultiSelection:!0,children:$t}),e[14]=o,e[15]=a,e[16]=s,e[17]=x,e[18]=v,e[19]=b):b=e[19],b},$t=t=>{let e=(0,W.c)(18),{node:o,style:s}=t,a=Be[o.data.isDirectory?"directory":Ve(o.data.name)],n;e[0]===a?n=e[1]:(n=(0,r.jsx)(a,{className:"w-5 h-5 shrink-0",strokeWidth:1.5}),e[0]=a,e[1]=n);let i=n,{root:m}=(0,P.use)(J),{runningNotebooks:h}=(0,P.use)(te),p;e[2]!==i||e[3]!==o||e[4]!==m||e[5]!==h?(p=()=>{if(o.isEditing)return(0,r.jsxs)("div",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",children:[i,(0,r.jsx)(st,{node:o})]});if(o.data.isDirectory)return(0,r.jsxs)("span",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",children:[i,o.data.name]});let x=o.data.path.startsWith(m)&&he.isAbsolute(o.data.path)?he.rest(o.data.path,m):o.data.path,v=x.endsWith(".md")||x.endsWith(".qmd"),b=h.has(x);return(0,r.jsxs)("a",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",href:pe(`?file=${encodeURIComponent(x)}`).toString(),target:xe(x),children:[i,(0,r.jsxs)("span",{className:"flex-1 overflow-hidden text-ellipsis",children:[o.data.name,v&&(0,r.jsx)(Z,{className:"ml-2 inline opacity-80"})]}),(0,r.jsx)(Lt,{node:o,isRunning:b}),(0,r.jsx)("div",{className:"w-8 h-8 flex items-center justify-center shrink-0",children:(0,r.jsx)(ye,{filePath:x})}),(0,r.jsx)(K,{size:20,className:"group-hover:opacity-100 opacity-0 text-primary shrink-0"})]})},e[2]=i,e[3]=o,e[4]=m,e[5]=h,e[6]=p):p=e[6];let u=p,l;e[7]===Symbol.for("react.memo_cache_sentinel")?(l=Ie("flex items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group h-full"),e[7]=l):l=e[7];let c,f;e[8]===o?(c=e[9],f=e[10]):(c=x=>{x.stopPropagation(),o.data.isDirectory&&o.toggle()},f=(0,r.jsx)(Et,{node:o}),e[8]=o,e[9]=c,e[10]=f);let d;e[11]===u?d=e[12]:(d=u(),e[11]=u,e[12]=d);let y;return e[13]!==s||e[14]!==c||e[15]!==f||e[16]!==d?(y=(0,r.jsxs)("div",{style:s,className:l,onClick:c,children:[f,d]}),e[13]=s,e[14]=c,e[15]=f,e[16]=d,e[17]=y):y=e[17],y},Lt=t=>{let e=(0,W.c)(19),{node:o,isRunning:s}=t,{root:a,refreshWorkspace:n}=(0,P.use)(J),i;e[0]!==o||e[1]!==n||e[2]!==a?(i={node:o,root:a,onAfterChange:n},e[0]=o,e[1]=n,e[2]=a,e[3]=i):i=e[3];let{handleRename:m,handleDuplicate:h,handleDelete:p}=at(i),u=s?"Stop the notebook's kernel before renaming or deleting.":void 0,l;e[4]!==m||e[5]!==s||e[6]!==u?(l=(0,r.jsx)(Xe,{onSelect:m,disabled:s,title:u}),e[4]=m,e[5]=s,e[6]=u,e[7]=l):l=e[7];let c;e[8]===h?c=e[9]:(c=(0,r.jsx)(ot,{onSelect:h}),e[8]=h,e[9]=c);let f;e[10]===Symbol.for("react.memo_cache_sentinel")?(f=(0,r.jsx)(De,{}),e[10]=f):f=e[10];let d;e[11]!==p||e[12]!==s||e[13]!==u?(d=(0,r.jsx)(tt,{onSelect:p,disabled:s,title:u}),e[11]=p,e[12]=s,e[13]=u,e[14]=d):d=e[14];let y;return e[15]!==l||e[16]!==c||e[17]!==d?(y=(0,r.jsxs)(Ze,{testId:"workspace-more-button",buttonClassName:"w-8 h-8 p-0 shrink-0",contentClassName:"print:hidden w-fit min-w-[140px]",preventDefaultOnTrigger:!0,children:[l,c,f,d]}),e[15]=l,e[16]=c,e[17]=d,e[18]=y):y=e[18],y},Et=t=>{let e=(0,W.c)(3),{node:o}=t;if(!o.data.isDirectory){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,r.jsx)("span",{className:"w-5 h-5 shrink-0"}),e[0]=a):a=e[0],a}let s;return e[1]===o.isOpen?s=e[2]:(s=o.isOpen?(0,r.jsx)($e,{className:"w-5 h-5 shrink-0"}):(0,r.jsx)(Le,{className:"w-5 h-5 shrink-0"}),e[1]=o.isOpen,e[2]=s),s},ge=t=>{let e=(0,W.c)(7),{header:o,files:s}=t;if(s.length===0)return null;let a;e[0]===s?a=e[1]:(a=s.map(Kt),e[0]=s,e[1]=a);let n;e[2]===a?n=e[3]:(n=(0,r.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:a}),e[2]=a,e[3]=n);let i;return e[4]!==o||e[5]!==n?(i=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[o,n]}),e[4]=o,e[5]=n,e[6]=i):i=e[6],i},Ht=t=>{let e=(0,W.c)(41),{file:o}=t,{locale:s}=xt(),a;e[0]===o.path?a=e[1]:(a=ht(o.path),e[0]=o.path,e[1]=a);let n=a,i,m,h,p;if(e[2]!==o.initializationId||e[3]!==o.path||e[4]!==n){let N=pe(n?`?file=${encodeURIComponent(o.initializationId??o.path)}&session_id=${o.path}`:`?file=${encodeURIComponent(o.path)}`),_;e[9]===o.path?_=e[10]:(_=o.path.endsWith(".md"),e[9]=o.path,e[10]=_),i=_,m="py-1.5 px-4 hover:bg-(--blue-2) hover:text-primary transition-all duration-300 cursor-pointer group relative flex gap-4 items-center",h=o.path,p=N.toString(),e[2]=o.initializationId,e[3]=o.path,e[4]=n,e[5]=i,e[6]=m,e[7]=h,e[8]=p}else i=e[5],m=e[6],h=e[7],p=e[8];let u=o.initializationId||o.path,l;e[11]===u?l=e[12]:(l=xe(u),e[11]=u,e[12]=l);let c;e[13]===i?c=e[14]:(c=i&&(0,r.jsx)("span",{className:"opacity-80",children:(0,r.jsx)(Z,{})}),e[13]=i,e[14]=c);let f;e[15]!==o.name||e[16]!==c?(f=(0,r.jsxs)("span",{className:"flex items-center gap-2",children:[o.name,c]}),e[15]=o.name,e[16]=c,e[17]=f):f=e[17];let d;e[18]===o.path?d=e[19]:(d=(0,r.jsx)("p",{title:o.path,className:"text-sm text-muted-foreground overflow-hidden whitespace-nowrap text-ellipsis",children:o.path}),e[18]=o.path,e[19]=d);let y;e[20]!==f||e[21]!==d?(y=(0,r.jsxs)("div",{className:"flex flex-col justify-between flex-1",children:[f,d]}),e[20]=f,e[21]=d,e[22]=y):y=e[22];let x;e[23]===o.path?x=e[24]:(x=(0,r.jsx)("div",{children:(0,r.jsx)(ye,{filePath:o.path})}),e[23]=o.path,e[24]=x);let v;e[25]===Symbol.for("react.memo_cache_sentinel")?(v=(0,r.jsx)(K,{size:20,className:"group-hover:opacity-100 opacity-0 transition-all duration-300 text-primary"}),e[25]=v):v=e[25];let b;e[26]===x?b=e[27]:(b=(0,r.jsxs)("div",{className:"flex gap-3 items-center",children:[x,v]}),e[26]=x,e[27]=b);let g;e[28]!==o.lastModified||e[29]!==s?(g=!!o.lastModified&&(0,r.jsx)("div",{className:"text-xs text-muted-foreground opacity-80",children:ut(o.lastModified*1e3,s)}),e[28]=o.lastModified,e[29]=s,e[30]=g):g=e[30];let j;e[31]!==b||e[32]!==g?(j=(0,r.jsxs)("div",{className:"flex flex-col gap-1 items-end",children:[b,g]}),e[31]=b,e[32]=g,e[33]=j):j=e[33];let k;return e[34]!==y||e[35]!==j||e[36]!==m||e[37]!==h||e[38]!==p||e[39]!==l?(k=(0,r.jsxs)("a",{className:m,href:p,target:l,children:[y,j]},h),e[34]=y,e[35]=j,e[36]=m,e[37]=h,e[38]=p,e[39]=l,e[40]=k):k=e[40],k},ye=t=>{let e=(0,W.c)(10),{filePath:o}=t,{openConfirm:s,closeModal:a}=gt(),{shutdownSession:n}=q(),{runningNotebooks:i,setRunningNotebooks:m}=(0,P.use)(te);if(!i.has(o))return null;let h;e[0]!==a||e[1]!==o||e[2]!==s||e[3]!==i||e[4]!==m||e[5]!==n?(h=l=>{l.stopPropagation(),l.preventDefault(),s({title:"Shutdown",description:"This will terminate the Python kernel. You'll lose all data that's in memory.",variant:"destructive",confirmAction:(0,r.jsx)(Re,{onClick:()=>{let c=i.get(o);Ce(c==null?void 0:c.sessionId),n({sessionId:c.sessionId}).then(f=>{m(me.keyBy(f.files,Qt))}),a(),de({description:"Notebook has been shutdown."})},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[0]=a,e[1]=o,e[2]=s,e[3]=i,e[4]=m,e[5]=n,e[6]=h):h=e[6];let p;e[7]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)(nt,{size:14}),e[7]=p):p=e[7];let u;return e[8]===h?u=e[9]:(u=(0,r.jsx)(Fe,{content:"Shutdown",children:(0,r.jsx)(B,{size:"icon",variant:"outline",className:"opacity-80 hover:opacity-100 hover:bg-accent text-destructive border-destructive hover:border-destructive hover:text-destructive bg-background hover:bg-(--red-1)",onClick:h,children:p})}),e[8]=h,e[9]=u),u},Vt=()=>{let t=(0,W.c)(3),e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=pt(),t[0]=e):e=t[0];let o=e,s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)("h2",{className:"text-lg font-semibold",children:"Create a new notebook"}),t[1]=s):s=t[1];let a;return t[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,r.jsxs)("a",{className:`relative rounded-lg p-6 group
|
|
1
|
+
import{o as re}from"./chunk-C4rtOYze.js";import{d as je,l as oe,n as ae}from"./useEvent-GCVIknuR.js";import{t as be}from"./react-C60yClUi.js";import{Jr as ve,Kn as se,Lr as ie,Nt as ke,Vr as we,aa as ne,qr as Ne,zr as _e}from"./cells-DD-zwhxi.js";import"./react-dom-Ba2zmJWD.js";import{t as le}from"./compiler-runtime-DnimoHo0.js";import{_ as ce}from"./useEventListener-DpNnLPuE.js";import{t as Se}from"./objects-CrbstYTV.js";import{n as V}from"./constants-DifUxsbZ.js";import{P as Ce}from"./config-DFK5eCC3.js";import{t as ze}from"./ErrorBoundary-B392qglD.js";import{t as Me}from"./cn-DCUzRj2J.js";import{t as Ie}from"./jsx-runtime-3wZU7vFS.js";import"./fullscreen-CrevbcR_.js";import{o as Re}from"./alert-dialog-D_kB5FIu.js";import"./popover-B96fOqfH.js";import{a as Pe,c as De,p as Oe,r as Te,t as We}from"./dropdown-menu-DWGvf_Bw.js";import{t as Ae}from"./label-BOFHwHn7.js";import{t as Fe}from"./tooltip-C9LWGQ7Y.js";import{t as q}from"./button-W__YVea9.js";import"./dist-CeF1Em5L.js";import"./cjs-DCKmcMBz.js";import"./useNonce-C2dwX-sI.js";import{r as B}from"./requests-B9zEd_sW.js";import{t as E}from"./createLucideIcon-B8oVfJNp.js";import{t as Le}from"./chart-no-axes-column-eb23KpAk.js";import{r as Ue}from"./x-4y-nyVDU.js";import{t as $e}from"./chevron-right-C9ZBG6Lx.js";import{o as me,s as Ve}from"./tree-actions-BBmIijvt.js";import{t as Ee}from"./circle-play-CuuYNJwJ.js";import{t as Q}from"./external-link-C8y9rFms.js";import{r as He,t as qe}from"./file-icons-Dop5RazI.js";import{t as Be}from"./file-BjlLTeSV.js";import{n as Je,r as Ye,t as Ge}from"./youtube-Bm-0BwCx.js";import{t as Qe}from"./link-DCLOj_aN.js";import{t as K}from"./spinner-Cj3eM5bt.js";import{t as Ke}from"./package-ROei-DG7.js";import{a as Xe,i as Ze,l as et,n as tt,o as rt,r as ot,s as at,t as st}from"./file-name-input-C5_fsJ6t.js";import{n as it,r as nt,t as lt}from"./app-config-button-BkwiW00-.js";import{t as ct}from"./refresh-ccw-neWzNbg7.js";import{dt as mt,r as dt}from"./input-BN98e517.js";import"./dist-BPoMypmC.js";import"./dist-5bwTcyKs.js";import"./dist-BVNaV53g.js";import"./dist-BrqkjqDe.js";import"./dist-Bm9PT5P9.js";import{t as de}from"./use-toast-DjpWVza6.js";import{n as he}from"./paths-D5zczhUD.js";import{c as pe,n as ht,o as pt,t as ft}from"./session-D-SddyN0.js";import"./purify.es-Bwm8T4QC.js";import{s as ut}from"./dates-CZTDC2tF.js";import{t as xt}from"./context-BJMN4ll3.js";import{n as gt}from"./ImperativeModal-Dxj31V4A.js";import{a as yt}from"./errors-D93OkQw8.js";import{n as jt}from"./react-icons.esm-CsgEZOQ_.js";import{t as fe}from"./error-banner-d0-XOKtd.js";import{n as X,t as bt}from"./useAsyncData-BcvSvTUt.js";import{t as Z}from"./icons-BwSNDWAP.js";import{t as vt}from"./github-6F3RzPv3.js";import{n as kt}from"./marimo-icons-CW8-Txe-.js";import{t as wt}from"./links-STGde2qx.js";import"./Inputs-DrAa-p6i.js";import{t as Nt}from"./useInterval-CTStcSBb.js";var _t=E("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),St=E("book-text",[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}],["path",{d:"M8 11h8",key:"vwpz6n"}],["path",{d:"M8 7h6",key:"1f0q6e"}]]),Ct=E("graduation-cap",[["path",{d:"M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z",key:"j76jl0"}],["path",{d:"M22 10v6",key:"1lu8f3"}],["path",{d:"M6 12.5V16a6 3 0 0 0 12 0v-3.5",key:"1r8lef"}]]),zt=E("orbit",[["path",{d:"M20.341 6.484A10 10 0 0 1 10.266 21.85",key:"1enhxb"}],["path",{d:"M3.659 17.516A10 10 0 0 1 13.74 2.152",key:"1crzgf"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["circle",{cx:"19",cy:"5",r:"2",key:"mhkx31"}],["circle",{cx:"5",cy:"19",r:"2",key:"v8kfzx"}]]),Mt=E("panels-top-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]]),P=re(be(),1),ee=le(),r=re(Ie(),1),It={intro:["Introduction",_t,"Get started with marimo basics"],dataflow:["Dataflow",ve,"Learn how cells interact with each other"],ui:["UI Elements",Mt,"Create interactive UI components"],markdown:["Markdown",ie,"Format text with parameterized markdown"],plots:["Plots",Le,"Create interactive visualizations"],sql:["SQL",_e,"Query databases directly in marimo"],layout:["Layout",Ye,"Customize the layout of your cells' output"],fileformat:["File format",Be,"Understand marimo's pure-Python file format"],"external-dependencies":["External dependencies",Ke,"Declare dependencies with Python script metadata"],"for-jupyter-users":["For Jupyter users",zt,"Transiting from Jupyter to marimo"],"markdown-format":["Markdown format",Z,"Using marimo to edit markdown files"]};const Rt=()=>{let t=(0,ee.c)(6),{openTutorial:e}=B(),o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o=(0,r.jsx)(Ct,{className:"w-4 h-4 mr-2"}),t[0]=o):o=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(Oe,{asChild:!0,children:(0,r.jsxs)(q,{"data-testid":"open-tutorial-button",size:"xs",variant:"outline",children:[o,"Tutorials",(0,r.jsx)(jt,{className:"w-3 h-3 ml-1"})]})}),t[1]=s):s=t[1];let a;t[2]===e?a=t[3]:(a=Se.entries(It).map(i=>{let[m,h]=i,[p,u,l]=h;return(0,r.jsxs)(Pe,{onSelect:async()=>{let c=await e({tutorialId:m});c&&wt(c.path)},children:[(0,r.jsx)(u,{strokeWidth:1.5,className:"w-4 h-4 mr-3 self-start mt-1.5 text-muted-foreground"}),(0,r.jsx)("div",{className:"flex items-center",children:(0,r.jsxs)("div",{className:"flex flex-col",children:[(0,r.jsx)("span",{children:p}),(0,r.jsx)("span",{className:"text-xs text-muted-foreground pr-1",children:l})]})})]},m)}),t[2]=e,t[3]=a);let n;return t[4]===a?n=t[5]:(n=(0,r.jsxs)(We,{children:[s,(0,r.jsx)(Te,{side:"bottom",align:"end",className:"print:hidden",children:a})]}),t[4]=a,t[5]=n),n};var Pt=[{title:"Documentation",description:"Official marimo documentation and API reference",icon:Ne,url:V.docsPage},{title:"GitHub",description:"View source code, report issues, or contribute",icon:vt,url:V.githubPage},{title:"Community",description:"Join the marimo Discord community",icon:Je,url:V.discordLink},{title:"molab",description:"Run marimo notebooks in the cloud",icon:kt,url:V.molab},{title:"YouTube",description:"Watch tutorials and demos",icon:Ge,url:V.youtube},{title:"Changelog",description:"See what's new in marimo",icon:ie,url:V.releasesPage}];const Dt=()=>{let t=(0,ee.c)(2),e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,r.jsx)(J,{Icon:Qe,children:"Resources"}),t[0]=e):e=t[0];let o;return t[1]===Symbol.for("react.memo_cache_sentinel")?(o=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[e,(0,r.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:Pt.map(Ot)})]}),t[1]=o):o=t[1],o},J=t=>{let e=(0,ee.c)(8),{Icon:o,control:s,children:a}=t,n;e[0]===o?n=e[1]:(n=(0,r.jsx)(o,{className:"h-5 w-5"}),e[0]=o,e[1]=n);let i;e[2]!==a||e[3]!==n?(i=(0,r.jsxs)("h2",{className:"flex items-center gap-2 text-xl font-semibold text-muted-foreground select-none",children:[n,a]}),e[2]=a,e[3]=n,e[4]=i):i=e[4];let m;return e[5]!==s||e[6]!==i?(m=(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[i,s]}),e[5]=s,e[6]=i,e[7]=m):m=e[7],m};function Ot(t){return(0,r.jsxs)("a",{href:t.url,target:"_blank",className:"flex items-start gap-3 py-3 px-3 rounded-lg border hover:bg-accent/20 transition-colors shadow-xs",children:[(0,r.jsx)(t.icon,{className:"w-5 h-5 mt-1.5 text-primary"}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h3",{className:"font-medium",children:t.title}),(0,r.jsx)("p",{className:"text-sm text-muted-foreground",children:t.description})]})]},t.title)}const te=P.createContext({runningNotebooks:new Map,setRunningNotebooks:ce.NOOP}),Y=P.createContext({root:"",refreshWorkspace:ce.NOOP}),Tt=ne("marimo:home:include-markdown",!1,se,{getOnInit:!0}),ue=ne("marimo:home:expanded-folders",{},se,{getOnInit:!0});var W=le();function xe(t){return`${ft()}-${encodeURIComponent(t)}`}var Wt=()=>{let t=(0,W.c)(58),[e,o]=(0,P.useState)(0),{getRecentFiles:s,getRunningNotebooks:a}=B(),n;t[0]===s?n=t[1]:(n=()=>s(),t[0]=s,t[1]=n);let i;t[2]===Symbol.for("react.memo_cache_sentinel")?(i=[],t[2]=i):i=t[2];let m=X(n,i),h,p;t[3]===Symbol.for("react.memo_cache_sentinel")?(h=()=>{o(Bt)},p={delayMs:1e4,whenVisible:!0},t[3]=h,t[4]=p):(h=t[3],p=t[4]),Nt(h,p);let u;t[5]===a?u=t[6]:(u=async()=>{let R=await a();return me.keyBy(R.files,Jt)},t[5]=a,t[6]=u);let l;t[7]===e?l=t[8]:(l=[e],t[7]=e,t[8]=l);let c=X(u,l),f,d,y,x,v,b,g,j,k,N,_,D,S;if(t[9]!==m||t[10]!==c){k=Symbol.for("react.early_return_sentinel");e:{let R=bt(m,c);if(R.error)throw R.error;let F=R.data;if(!F){let H;t[24]===Symbol.for("react.memo_cache_sentinel")?(H=(0,r.jsx)(K,{centered:!0,size:"xlarge"}),t[24]=H):H=t[24],k=H;break e}let[U,$]=F;x=U,y=P.Suspense,d=te,g={runningNotebooks:$,setRunningNotebooks:c.setData};let w,L;t[25]===Symbol.for("react.memo_cache_sentinel")?(w=(0,r.jsx)(Rt,{}),L=(0,r.jsx)(lt,{showAppConfig:!1}),t[25]=w,t[26]=L):(w=t[25],L=t[26]);let G=`This will shutdown the notebook server and terminate all running notebooks (${$.size}). You'll lose all data that's in memory.`;t[27]===G?j=t[28]:(j=(0,r.jsxs)("div",{className:"absolute top-3 right-5 flex gap-3 z-50",children:[w,L,(0,r.jsx)(it,{description:G})]}),t[27]=G,t[28]=j),D="flex flex-col gap-6 max-w-6xl container pt-5 pb-20 z-10",t[29]===Symbol.for("react.memo_cache_sentinel")?(S=(0,r.jsx)("img",{src:"logo.png",alt:"marimo logo",className:"w-48 mb-2"}),v=(0,r.jsx)(Ht,{}),b=(0,r.jsx)(Dt,{}),t[29]=v,t[30]=b,t[31]=S):(v=t[29],b=t[30],S=t[31]),f=ge,t[32]===Symbol.for("react.memo_cache_sentinel")?(N=(0,r.jsx)(J,{Icon:Ee,children:"Running notebooks"}),t[32]=N):N=t[32],_=[...$.values()]}t[9]=m,t[10]=c,t[11]=f,t[12]=d,t[13]=y,t[14]=x,t[15]=v,t[16]=b,t[17]=g,t[18]=j,t[19]=k,t[20]=N,t[21]=_,t[22]=D,t[23]=S}else f=t[11],d=t[12],y=t[13],x=t[14],v=t[15],b=t[16],g=t[17],j=t[18],k=t[19],N=t[20],_=t[21],D=t[22],S=t[23];if(k!==Symbol.for("react.early_return_sentinel"))return k;let C;t[33]!==f||t[34]!==N||t[35]!==_?(C=(0,r.jsx)(f,{header:N,files:_}),t[33]=f,t[34]=N,t[35]=_,t[36]=C):C=t[36];let A;t[37]===Symbol.for("react.memo_cache_sentinel")?(A=(0,r.jsx)(J,{Icon:we,children:"Recent notebooks"}),t[37]=A):A=t[37];let z;t[38]===x.files?z=t[39]:(z=(0,r.jsx)(ge,{header:A,files:x.files}),t[38]=x.files,t[39]=z);let M;t[40]===m.refetch?M=t[41]:(M=(0,r.jsx)(ze,{children:(0,r.jsx)(At,{onRefreshRecents:m.refetch})}),t[40]=m.refetch,t[41]=M);let O;t[42]!==v||t[43]!==b||t[44]!==C||t[45]!==z||t[46]!==M||t[47]!==D||t[48]!==S?(O=(0,r.jsxs)("div",{className:D,children:[S,v,b,C,z,M]}),t[42]=v,t[43]=b,t[44]=C,t[45]=z,t[46]=M,t[47]=D,t[48]=S,t[49]=O):O=t[49];let I;t[50]!==d||t[51]!==g||t[52]!==j||t[53]!==O?(I=(0,r.jsxs)(d,{value:g,children:[j,O]}),t[50]=d,t[51]=g,t[52]=j,t[53]=O,t[54]=I):I=t[54];let T;return t[55]!==y||t[56]!==I?(T=(0,r.jsx)(y,{children:I}),t[55]=y,t[56]=I,t[57]=T):T=t[57],T},At=t=>{let e=(0,W.c)(54),{onRefreshRecents:o}=t,{getWorkspaceFiles:s}=B(),[a,n]=oe(Tt),[i,m]=(0,P.useState)(""),h;e[0]!==s||e[1]!==a?(h=()=>s({includeMarkdown:a}),e[0]=s,e[1]=a,e[2]=h):h=e[2];let p;e[3]===a?p=e[4]:(p=[a],e[3]=a,e[4]=p);let{isPending:u,data:l,error:c,isFetching:f,refetch:d}=X(h,p),y;e[5]!==o||e[6]!==d?(y=()=>{d(),o()},e[5]=o,e[6]=d,e[7]=y):y=e[7];let x=ae(y);l==null||l.root;let v=(l==null?void 0:l.root)??"",b;e[8]!==x||e[9]!==v?(b={root:v,refreshWorkspace:x},e[8]=x,e[9]=v,e[10]=b):b=e[10];let g=b;if(u){let w;return e[11]===Symbol.for("react.memo_cache_sentinel")?(w=(0,r.jsx)(K,{centered:!0,size:"xlarge",className:"mt-6"}),e[11]=w):w=e[11],w}if(c){let w;e[12]===c?w=e[13]:(w=yt(c),e[12]=c,e[13]=w);let L;return e[14]===w?L=e[15]:(L=(0,r.jsx)(fe,{kind:"danger",className:"rounded p-4",children:w}),e[14]=w,e[15]=L),L}let j;e[16]!==l.fileCount||e[17]!==l.hasMore?(j=l.hasMore&&(0,r.jsxs)(fe,{kind:"warn",className:"rounded p-4",children:["Showing first ",l.fileCount," files. Your workspace has more files."]}),e[16]=l.fileCount,e[17]=l.hasMore,e[18]=j):j=e[18];let k,N;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=(0,r.jsx)(mt,{size:13}),N=w=>m(w.target.value),e[19]=k,e[20]=N):(k=e[19],N=e[20]);let _;e[21]===i?_=e[22]:(_=(0,r.jsx)(dt,{id:"search",value:i,icon:k,onChange:N,placeholder:"Search",className:"mb-0 border-border"}),e[21]=i,e[22]=_);let D;e[23]===Symbol.for("react.memo_cache_sentinel")?(D=(0,r.jsx)(Ft,{}),e[23]=D):D=e[23];let S;e[24]===n?S=e[25]:(S=w=>n(!!w),e[24]=n,e[25]=S);let C;e[26]!==a||e[27]!==S?(C=(0,r.jsx)(ke,{"data-testid":"include-markdown-checkbox",id:"include-markdown",checked:a,onCheckedChange:S}),e[26]=a,e[27]=S,e[28]=C):C=e[28];let A;e[29]===Symbol.for("react.memo_cache_sentinel")?(A=(0,r.jsx)(Ae,{htmlFor:"include-markdown",children:"Include markdown"}),e[29]=A):A=e[29];let z;e[30]!==C||e[31]!==_?(z=(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[_,D,C,A]}),e[30]=C,e[31]=_,e[32]=z):z=e[32];let M;e[33]===d?M=e[34]:(M=()=>d(),e[33]=d,e[34]=M);let O;e[35]===Symbol.for("react.memo_cache_sentinel")?(O=(0,r.jsx)(ct,{className:"w-4 h-4"}),e[35]=O):O=e[35];let I;e[36]===M?I=e[37]:(I=(0,r.jsx)(q,{variant:"text",size:"icon",className:"w-4 h-4 ml-1 p-0 opacity-70 hover:opacity-100",onClick:M,"aria-label":"Refresh workspace",children:O}),e[36]=M,e[37]=I);let T;e[38]===f?T=e[39]:(T=f&&(0,r.jsx)(K,{size:"small"}),e[38]=f,e[39]=T);let R;e[40]!==z||e[41]!==I||e[42]!==T?(R=(0,r.jsxs)(J,{Icon:St,control:z,children:["Workspace",I,T]}),e[40]=z,e[41]=I,e[42]=T,e[43]=R):R=e[43];let F;e[44]!==i||e[45]!==l.files?(F=(0,r.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:(0,r.jsx)(Lt,{searchText:i,files:l.files})}),e[44]=i,e[45]=l.files,e[46]=F):F=e[46];let U;e[47]!==R||e[48]!==F||e[49]!==j?(U=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[j,R,F]}),e[47]=R,e[48]=F,e[49]=j,e[50]=U):U=e[50];let $;return e[51]!==U||e[52]!==g?($=(0,r.jsx)(Y,{value:g,children:U}),e[51]=U,e[52]=g,e[53]=$):$=e[53],$},Ft=()=>{let t=(0,W.c)(5),e=je(ue),o;t[0]===e?o=t[1]:(o=()=>{e({})},t[0]=e,t[1]=o);let s;t[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)(Ve,{className:"w-4 h-4 mr-1"}),t[2]=s):s=t[2];let a;return t[3]===o?a=t[4]:(a=(0,r.jsxs)(q,{variant:"text",size:"sm",className:"h-fit hidden sm:flex",onClick:o,children:[s,"Collapse all"]}),t[3]=o,t[4]=a),a},Lt=t=>{let e=(0,W.c)(20),{files:o,searchText:s}=t,[a,n]=oe(ue),i=Object.keys(a).length===0,m=(0,P.useRef)(void 0),{root:h,refreshWorkspace:p}=(0,P.use)(Y),u;e[0]===h?u=e[1]:(u={root:h},e[0]=h,e[1]=u);let{renameFile:l}=rt(u),c,f;e[2]===i?(c=e[3],f=e[4]):(c=()=>{var g;i&&((g=m.current)==null||g.closeAll())},f=[i],e[2]=i,e[3]=c,e[4]=f),(0,P.useEffect)(c,f);let d;e[5]!==p||e[6]!==l?(d=async(g,j)=>{var N;let k=(N=m.current)==null?void 0:N.get(g);if(!k){de({title:"Failed",description:`Node with id ${g} not found in the tree`});return}await l(k.data,j)&&p()},e[5]=p,e[6]=l,e[7]=d):d=e[7];let y=ae(d);if(o.length===0){let g;return e[8]===Symbol.for("react.memo_cache_sentinel")?(g=(0,r.jsx)("div",{className:"flex flex-col px-5 py-10 items-center justify-center",children:(0,r.jsx)("p",{className:"text-center text-muted-foreground",children:"No files in this workspace"})}),e[8]=g):g=e[8],g}let x;e[9]!==a||e[10]!==n?(x=async g=>{let j=a[g]??!1;n({...a,[g]:!j})},e[9]=a,e[10]=n,e[11]=x):x=e[11];let v;e[12]===y?v=e[13]:(v=async g=>{let{id:j,name:k}=g;await y(j,k)},e[12]=y,e[13]=v);let b;return e[14]!==o||e[15]!==a||e[16]!==s||e[17]!==x||e[18]!==v?(b=(0,r.jsx)(et,{ref:m,width:"100%",height:500,searchTerm:s,className:"h-full",idAccessor:Yt,data:o,openByDefault:!1,initialOpenState:a,onToggle:x,onRename:v,padding:5,rowHeight:35,indent:15,overscanCount:1e3,renderCursor:Gt,disableDrop:!0,disableDrag:!0,disableMultiSelection:!0,children:Ut}),e[14]=o,e[15]=a,e[16]=s,e[17]=x,e[18]=v,e[19]=b):b=e[19],b},Ut=t=>{let e=(0,W.c)(18),{node:o,style:s}=t,a=qe[o.data.isDirectory?"directory":He(o.data.name)],n;e[0]===a?n=e[1]:(n=(0,r.jsx)(a,{className:"w-5 h-5 shrink-0",strokeWidth:1.5}),e[0]=a,e[1]=n);let i=n,{root:m}=(0,P.use)(Y),{runningNotebooks:h}=(0,P.use)(te),p;e[2]!==i||e[3]!==o||e[4]!==m||e[5]!==h?(p=()=>{if(o.isEditing)return(0,r.jsxs)("div",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",children:[i,(0,r.jsx)(st,{node:o})]});if(o.data.isDirectory)return(0,r.jsxs)("span",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",children:[i,o.data.name]});let x=o.data.path.startsWith(m)&&he.isAbsolute(o.data.path)?he.rest(o.data.path,m):o.data.path,v=x.endsWith(".md")||x.endsWith(".qmd"),b=h.has(x);return(0,r.jsxs)("a",{className:"flex items-center pl-1 cursor-pointer hover:bg-accent/50 hover:text-accent-foreground rounded-l flex-1 overflow-hidden h-full pr-3 gap-2",href:pe(`?file=${encodeURIComponent(x)}`).toString(),target:xe(x),children:[i,(0,r.jsxs)("span",{className:"flex-1 overflow-hidden text-ellipsis",children:[o.data.name,v&&(0,r.jsx)(Z,{className:"ml-2 inline opacity-80"})]}),(0,r.jsx)($t,{node:o,isRunning:b}),(0,r.jsx)("div",{className:"w-8 h-8 flex items-center justify-center shrink-0",children:(0,r.jsx)(ye,{filePath:x})}),(0,r.jsx)(Q,{size:20,className:"group-hover:opacity-100 opacity-0 text-primary shrink-0"})]})},e[2]=i,e[3]=o,e[4]=m,e[5]=h,e[6]=p):p=e[6];let u=p,l;e[7]===Symbol.for("react.memo_cache_sentinel")?(l=Me("flex items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group h-full"),e[7]=l):l=e[7];let c,f;e[8]===o?(c=e[9],f=e[10]):(c=x=>{x.stopPropagation(),o.data.isDirectory&&o.toggle()},f=(0,r.jsx)(Vt,{node:o}),e[8]=o,e[9]=c,e[10]=f);let d;e[11]===u?d=e[12]:(d=u(),e[11]=u,e[12]=d);let y;return e[13]!==s||e[14]!==c||e[15]!==f||e[16]!==d?(y=(0,r.jsxs)("div",{style:s,className:l,onClick:c,children:[f,d]}),e[13]=s,e[14]=c,e[15]=f,e[16]=d,e[17]=y):y=e[17],y},$t=t=>{let e=(0,W.c)(19),{node:o,isRunning:s}=t,{root:a,refreshWorkspace:n}=(0,P.use)(Y),i;e[0]!==o||e[1]!==n||e[2]!==a?(i={node:o,root:a,onAfterChange:n},e[0]=o,e[1]=n,e[2]=a,e[3]=i):i=e[3];let{handleRename:m,handleDuplicate:h,handleDelete:p}=at(i),u=s?"Stop the notebook's kernel before renaming or deleting.":void 0,l;e[4]!==m||e[5]!==s||e[6]!==u?(l=(0,r.jsx)(Xe,{onSelect:m,disabled:s,title:u}),e[4]=m,e[5]=s,e[6]=u,e[7]=l):l=e[7];let c;e[8]===h?c=e[9]:(c=(0,r.jsx)(ot,{onSelect:h}),e[8]=h,e[9]=c);let f;e[10]===Symbol.for("react.memo_cache_sentinel")?(f=(0,r.jsx)(De,{}),e[10]=f):f=e[10];let d;e[11]!==p||e[12]!==s||e[13]!==u?(d=(0,r.jsx)(tt,{onSelect:p,disabled:s,title:u}),e[11]=p,e[12]=s,e[13]=u,e[14]=d):d=e[14];let y;return e[15]!==l||e[16]!==c||e[17]!==d?(y=(0,r.jsxs)(Ze,{testId:"workspace-more-button",buttonClassName:"w-8 h-8 p-0 shrink-0",contentClassName:"print:hidden w-fit min-w-[140px]",preventDefaultOnTrigger:!0,children:[l,c,f,d]}),e[15]=l,e[16]=c,e[17]=d,e[18]=y):y=e[18],y},Vt=t=>{let e=(0,W.c)(3),{node:o}=t;if(!o.data.isDirectory){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,r.jsx)("span",{className:"w-5 h-5 shrink-0"}),e[0]=a):a=e[0],a}let s;return e[1]===o.isOpen?s=e[2]:(s=o.isOpen?(0,r.jsx)(Ue,{className:"w-5 h-5 shrink-0"}):(0,r.jsx)($e,{className:"w-5 h-5 shrink-0"}),e[1]=o.isOpen,e[2]=s),s},ge=t=>{let e=(0,W.c)(7),{header:o,files:s}=t;if(s.length===0)return null;let a;e[0]===s?a=e[1]:(a=s.map(Qt),e[0]=s,e[1]=a);let n;e[2]===a?n=e[3]:(n=(0,r.jsx)("div",{className:"flex flex-col divide-y divide-(--slate-3) border rounded overflow-hidden max-h-192 overflow-y-auto shadow-sm bg-background",children:a}),e[2]=a,e[3]=n);let i;return e[4]!==o||e[5]!==n?(i=(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[o,n]}),e[4]=o,e[5]=n,e[6]=i):i=e[6],i},Et=t=>{let e=(0,W.c)(41),{file:o}=t,{locale:s}=xt(),a;e[0]===o.path?a=e[1]:(a=ht(o.path),e[0]=o.path,e[1]=a);let n=a,i,m,h,p;if(e[2]!==o.initializationId||e[3]!==o.path||e[4]!==n){let N=pe(n?`?file=${encodeURIComponent(o.initializationId??o.path)}&session_id=${o.path}`:`?file=${encodeURIComponent(o.path)}`),_;e[9]===o.path?_=e[10]:(_=o.path.endsWith(".md"),e[9]=o.path,e[10]=_),i=_,m="py-1.5 px-4 hover:bg-(--blue-2) hover:text-primary transition-all duration-300 cursor-pointer group relative flex gap-4 items-center",h=o.path,p=N.toString(),e[2]=o.initializationId,e[3]=o.path,e[4]=n,e[5]=i,e[6]=m,e[7]=h,e[8]=p}else i=e[5],m=e[6],h=e[7],p=e[8];let u=o.initializationId||o.path,l;e[11]===u?l=e[12]:(l=xe(u),e[11]=u,e[12]=l);let c;e[13]===i?c=e[14]:(c=i&&(0,r.jsx)("span",{className:"opacity-80",children:(0,r.jsx)(Z,{})}),e[13]=i,e[14]=c);let f;e[15]!==o.name||e[16]!==c?(f=(0,r.jsxs)("span",{className:"flex items-center gap-2",children:[o.name,c]}),e[15]=o.name,e[16]=c,e[17]=f):f=e[17];let d;e[18]===o.path?d=e[19]:(d=(0,r.jsx)("p",{title:o.path,className:"text-sm text-muted-foreground overflow-hidden whitespace-nowrap text-ellipsis",children:o.path}),e[18]=o.path,e[19]=d);let y;e[20]!==f||e[21]!==d?(y=(0,r.jsxs)("div",{className:"flex flex-col justify-between flex-1",children:[f,d]}),e[20]=f,e[21]=d,e[22]=y):y=e[22];let x;e[23]===o.path?x=e[24]:(x=(0,r.jsx)("div",{children:(0,r.jsx)(ye,{filePath:o.path})}),e[23]=o.path,e[24]=x);let v;e[25]===Symbol.for("react.memo_cache_sentinel")?(v=(0,r.jsx)(Q,{size:20,className:"group-hover:opacity-100 opacity-0 transition-all duration-300 text-primary"}),e[25]=v):v=e[25];let b;e[26]===x?b=e[27]:(b=(0,r.jsxs)("div",{className:"flex gap-3 items-center",children:[x,v]}),e[26]=x,e[27]=b);let g;e[28]!==o.lastModified||e[29]!==s?(g=!!o.lastModified&&(0,r.jsx)("div",{className:"text-xs text-muted-foreground opacity-80",children:ut(o.lastModified*1e3,s)}),e[28]=o.lastModified,e[29]=s,e[30]=g):g=e[30];let j;e[31]!==b||e[32]!==g?(j=(0,r.jsxs)("div",{className:"flex flex-col gap-1 items-end",children:[b,g]}),e[31]=b,e[32]=g,e[33]=j):j=e[33];let k;return e[34]!==y||e[35]!==j||e[36]!==m||e[37]!==h||e[38]!==p||e[39]!==l?(k=(0,r.jsxs)("a",{className:m,href:p,target:l,children:[y,j]},h),e[34]=y,e[35]=j,e[36]=m,e[37]=h,e[38]=p,e[39]=l,e[40]=k):k=e[40],k},ye=t=>{let e=(0,W.c)(10),{filePath:o}=t,{openConfirm:s,closeModal:a}=gt(),{shutdownSession:n}=B(),{runningNotebooks:i,setRunningNotebooks:m}=(0,P.use)(te);if(!i.has(o))return null;let h;e[0]!==a||e[1]!==o||e[2]!==s||e[3]!==i||e[4]!==m||e[5]!==n?(h=l=>{l.stopPropagation(),l.preventDefault(),s({title:"Shutdown",description:"This will terminate the Python kernel. You'll lose all data that's in memory.",variant:"destructive",confirmAction:(0,r.jsx)(Re,{onClick:()=>{let c=i.get(o);Ce(c==null?void 0:c.sessionId),n({sessionId:c.sessionId}).then(f=>{m(me.keyBy(f.files,Kt))}),a(),de({description:"Notebook has been shutdown."})},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},e[0]=a,e[1]=o,e[2]=s,e[3]=i,e[4]=m,e[5]=n,e[6]=h):h=e[6];let p;e[7]===Symbol.for("react.memo_cache_sentinel")?(p=(0,r.jsx)(nt,{size:14}),e[7]=p):p=e[7];let u;return e[8]===h?u=e[9]:(u=(0,r.jsx)(Fe,{content:"Shutdown",children:(0,r.jsx)(q,{size:"icon",variant:"outline",className:"opacity-80 hover:opacity-100 hover:bg-accent text-destructive border-destructive hover:border-destructive hover:text-destructive bg-background hover:bg-(--red-1)",onClick:h,children:p})}),e[8]=h,e[9]=u),u},Ht=()=>{let t=(0,W.c)(3),e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=pt(),t[0]=e):e=t[0];let o=e,s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=(0,r.jsx)("h2",{className:"text-lg font-semibold",children:"Create a new notebook"}),t[1]=s):s=t[1];let a;return t[2]===Symbol.for("react.memo_cache_sentinel")?(a=(0,r.jsxs)("a",{className:`relative rounded-lg p-6 group
|
|
2
2
|
text-primary hover:bg-(--blue-2) shadow-md-solid shadow-accent border bg-(--blue-1)
|
|
3
3
|
transition-all duration-300 cursor-pointer
|
|
4
|
-
`,href:o,target:"_blank",rel:"noreferrer",children:[s,(0,r.jsx)("div",{className:"group-hover:opacity-100 opacity-0 absolute right-5 top-0 bottom-0 rounded-lg flex items-center justify-center transition-all duration-300",children:(0,r.jsx)(
|
|
4
|
+
`,href:o,target:"_blank",rel:"noreferrer",children:[s,(0,r.jsx)("div",{className:"group-hover:opacity-100 opacity-0 absolute right-5 top-0 bottom-0 rounded-lg flex items-center justify-center transition-all duration-300",children:(0,r.jsx)(Q,{size:24})})]}),t[2]=a):a=t[2],a},qt=Wt;function Bt(t){return t+1}function Jt(t){return t.path}function Yt(t){return t.path}function Gt(){return null}function Qt(t){return(0,r.jsx)(Et,{file:t},t.path)}function Kt(t){return t.path}export{qt as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as q}from"./useEvent-GCVIknuR.js";import{Yn as W,ua as C,y as G}from"./cells-DTFqEQb0.js";import{g as v}from"./useEventListener-DpNnLPuE.js";import{t as $}from"./requests-B9zEd_sW.js";function I({moduleName:e,variableName:t,onAddImport:r,appStore:n=q}){if(t in n.get(W))return!1;let{cellData:i,cellIds:o}=n.get(G),a=RegExp(`import[ ]+${e}[ ]+as[ ]+${t}`,"g");for(let l of o.inOrderIds)if(a.test(i[l].code))return!1;return r(`import ${e} as ${t}`),!0}function J({autoInstantiate:e,createNewCell:t,fromCellId:r,before:n}){let i=$(),o=null;return I({moduleName:"marimo",variableName:"mo",onAddImport:a=>{o=C.create(),t({cellId:r??"__end__",before:n??!1,code:a,lastCodeRun:e?a:void 0,newCellId:o,skipIfCodeExists:!0,autoFocus:!1}),e&&i.sendRun({cellIds:[o],codes:[a]})}})?o:null}function Y({autoInstantiate:e,createNewCell:t,fromCellId:r}){let n=$(),i=null;return I({moduleName:"altair",variableName:"alt",onAddImport:o=>{i=C.create(),t({cellId:r??"__end__",before:!1,code:o,lastCodeRun:e?o:void 0,newCellId:i,skipIfCodeExists:!0,autoFocus:!1}),e&&n.sendRun({cellIds:[i],codes:[o]})}})?i:null}function K(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i))return e;let r=document.implementation.createHTMLDocument(),n=r.createElement("base"),i=r.createElement("a");return r.head.appendChild(n),r.body.appendChild(i),t&&(n.href=t),i.href=e,i.href}const X=(()=>{let e=0,t=()=>`0000${(Math.random()*36**4<<0).toString(36)}`.slice(-4);return()=>(e+=1,`u${t()}${e}`)})();function d(e){let t=[];for(let r=0,n=e.length;r<n;r++)t.push(e[r]);return t}var m=null;function R(e={}){return m||(e.includeStyleProperties?(m=e.includeStyleProperties,m):(m=d(window.getComputedStyle(document.documentElement)),m))}function p(e,t){let r=(e.ownerDocument.defaultView||window).getComputedStyle(e).getPropertyValue(t);return r?parseFloat(r.replace("px","")):0}function Z(e){let t=p(e,"border-left-width"),r=p(e,"border-right-width");return e.clientWidth+t+r}function ee(e){let t=p(e,"border-top-width"),r=p(e,"border-bottom-width");return e.clientHeight+t+r}function k(e,t={}){return{width:t.width||Z(e),height:t.height||ee(e)}}function te(){let e,t;try{t=process}catch{}let r=t&&t.env?t.env.devicePixelRatio:null;return r&&(e=parseInt(r,10),Number.isNaN(e)&&(e=1)),e||window.devicePixelRatio||1}var u=16384;function re(e){(e.width>u||e.height>u)&&(e.width>u&&e.height>u?e.width>e.height?(e.height*=u/e.width,e.width=u):(e.width*=u/e.height,e.height=u):e.width>u?(e.height*=u/e.width,e.width=u):(e.width*=u/e.height,e.height=u))}function w(e){return new Promise((t,r)=>{let n=new Image;n.onload=()=>{n.decode().then(()=>{requestAnimationFrame(()=>t(n))})},n.onerror=r,n.crossOrigin="anonymous",n.decoding="async",n.src=e})}async function ne(e){return Promise.resolve().then(()=>new XMLSerializer().serializeToString(e)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}async function ie(e,t,r){let n="http://www.w3.org/2000/svg",i=document.createElementNS(n,"svg"),o=document.createElementNS(n,"foreignObject");return i.setAttribute("width",`${t}`),i.setAttribute("height",`${r}`),i.setAttribute("viewBox",`0 0 ${t} ${r}`),o.setAttribute("width","100%"),o.setAttribute("height","100%"),o.setAttribute("x","0"),o.setAttribute("y","0"),o.setAttribute("externalResourcesRequired","true"),i.appendChild(o),o.appendChild(e),ne(i)}const c=(e,t)=>{if(e instanceof t)return!0;let r=Object.getPrototypeOf(e);return r===null?!1:r.constructor.name===t.name||c(r,t)};function oe(e){let t=e.getPropertyValue("content");return`${e.cssText} content: '${t.replace(/'|"/g,"")}';`}function ae(e,t){return R(t).map(r=>`${r}: ${e.getPropertyValue(r)}${e.getPropertyPriority(r)?" !important":""};`).join(" ")}function le(e,t,r,n){let i=`.${e}:${t}`,o=r.cssText?oe(r):ae(r,n);return document.createTextNode(`${i}{${o}}`)}function P(e,t,r,n){let i=window.getComputedStyle(e,r),o=i.getPropertyValue("content");if(o===""||o==="none")return;let a=X();try{t.className=`${t.className} ${a}`}catch{return}let l=document.createElement("style");l.appendChild(le(a,r,i,n)),t.appendChild(l)}function se(e,t,r){P(e,t,":before",r),P(e,t,":after",r)}var N="application/font-woff",T="image/jpeg",ce={woff:N,woff2:N,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:T,jpeg:T,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function ue(e){let t=/\.([^./]*?)$/g.exec(e);return t?t[1]:""}function A(e){return ce[ue(e).toLowerCase()]||""}function de(e){return e.split(/,/)[1]}function x(e){return e.search(/^(data:)/)!==-1}function L(e,t){return`data:${t};base64,${e}`}async function F(e,t,r){let n=await fetch(e,t);if(n.status===404)throw Error(`Resource "${n.url}" not found`);let i=await n.blob();return new Promise((o,a)=>{let l=new FileReader;l.onerror=a,l.onloadend=()=>{try{o(r({res:n,result:l.result}))}catch(s){a(s)}},l.readAsDataURL(i)})}var E={};function fe(e,t,r){let n=e.replace(/\?.*/,"");return r&&(n=e),/ttf|otf|eot|woff2?/i.test(n)&&(n=n.replace(/.*\//,"")),t?`[${t}]${n}`:n}async function S(e,t,r){let n=fe(e,t,r.includeQueryParams);if(E[n]!=null)return E[n];r.cacheBust&&(e+=(/\?/.test(e)?"&":"?")+new Date().getTime());let i;try{i=L(await F(e,r.fetchRequestInit,({res:o,result:a})=>(t||(t=o.headers.get("Content-Type")||""),de(a))),t)}catch(o){i=r.imagePlaceholder||"";let a=`Failed to fetch resource: ${e}`;o&&(a=typeof o=="string"?o:o.message),a&&console.warn(a)}return E[n]=i,i}async function he(e){let t=e.toDataURL();return t==="data:,"?e.cloneNode(!1):w(t)}async function ge(e,t){if(e.currentSrc){let n=document.createElement("canvas"),i=n.getContext("2d");return n.width=e.clientWidth,n.height=e.clientHeight,i==null||i.drawImage(e,0,0,n.width,n.height),w(n.toDataURL())}let r=e.poster;return w(await S(r,A(r),t))}async function me(e,t){var r;try{if((r=e==null?void 0:e.contentDocument)!=null&&r.body)return await y(e.contentDocument.body,t,!0)}catch{}return e.cloneNode(!1)}async function pe(e,t){return c(e,HTMLCanvasElement)?he(e):c(e,HTMLVideoElement)?ge(e,t):c(e,HTMLIFrameElement)?me(e,t):e.cloneNode(H(e))}var we=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SLOT",H=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SVG";async function ye(e,t,r){var i;if(H(t))return t;let n=[];if(we(e)&&e.assignedNodes)n=d(e.assignedNodes());else if(c(e,HTMLIFrameElement))try{(i=e.contentDocument)!=null&&i.body&&(n=d(e.contentDocument.body.childNodes))}catch{}else n=d((e.shadowRoot??e).childNodes);return n.length===0||c(e,HTMLVideoElement)||await n.reduce((o,a)=>o.then(()=>y(a,r)).then(l=>{l&&t.appendChild(l)}),Promise.resolve()),t}function be(e,t,r){let n=t.style;if(!n)return;let i=window.getComputedStyle(e);i.cssText?(n.cssText=i.cssText,n.transformOrigin=i.transformOrigin):R(r).forEach(o=>{let a=i.getPropertyValue(o);o==="font-size"&&a.endsWith("px")&&(a=`${Math.floor(parseFloat(a.substring(0,a.length-2)))-.1}px`),c(e,HTMLIFrameElement)&&o==="display"&&a==="inline"&&(a="block"),o==="d"&&t.getAttribute("d")&&(a=`path(${t.getAttribute("d")})`),n.setProperty(o,a,i.getPropertyPriority(o))})}function Ae(e,t){c(e,HTMLTextAreaElement)&&(t.innerHTML=e.value),c(e,HTMLInputElement)&&t.setAttribute("value",e.value)}function xe(e,t){if(c(e,HTMLSelectElement)){let r=t,n=Array.from(r.children).find(i=>e.value===i.getAttribute("value"));n&&n.setAttribute("selected","")}}function Ee(e,t,r){return c(t,Element)&&(be(e,t,r),se(e,t,r),Ae(e,t),xe(e,t)),t}async function Se(e,t){let r=e.querySelectorAll?e.querySelectorAll("use"):[];if(r.length===0)return e;let n={};for(let o=0;o<r.length;o++){let a=r[o].getAttribute("xlink:href");if(a){let l=e.querySelector(a),s=document.querySelector(a);!l&&s&&!n[a]&&(n[a]=await y(s,t,!0))}}let i=Object.values(n);if(i.length){let o="http://www.w3.org/1999/xhtml",a=document.createElementNS(o,"svg");a.setAttribute("xmlns",o),a.style.position="absolute",a.style.width="0",a.style.height="0",a.style.overflow="hidden",a.style.display="none";let l=document.createElementNS(o,"defs");a.appendChild(l);for(let s=0;s<i.length;s++)l.appendChild(i[s]);e.appendChild(a)}return e}async function y(e,t,r){return!r&&t.filter&&!t.filter(e)?null:Promise.resolve(e).then(n=>pe(n,t)).then(n=>ye(e,n,t)).then(n=>Ee(e,n,t)).then(n=>Se(n,t))}var V=/url\((['"]?)([^'"]+?)\1\)/g,Ce=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,ve=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function $e(e){let t=e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return RegExp(`(url\\(['"]?)(${t})(['"]?\\))`,"g")}function Ie(e){let t=[];return e.replace(V,(r,n,i)=>(t.push(i),r)),t.filter(r=>!x(r))}async function Re(e,t,r,n,i){try{let o=r?K(t,r):t,a=A(t),l;return l=i?L(await i(o),a):await S(o,a,n),e.replace($e(t),`$1${l}$3`)}catch{}return e}function ke(e,{preferredFontFormat:t}){return t?e.replace(ve,r=>{for(;;){let[n,,i]=Ce.exec(r)||[];if(!i)return"";if(i===t)return`src: ${n};`}}):e}function D(e){return e.search(V)!==-1}async function M(e,t,r){if(!D(e))return e;let n=ke(e,r);return Ie(n).reduce((i,o)=>i.then(a=>Re(a,o,t,r)),Promise.resolve(n))}async function h(e,t,r){var i;let n=(i=t.style)==null?void 0:i.getPropertyValue(e);if(n){let o=await M(n,null,r);return t.style.setProperty(e,o,t.style.getPropertyPriority(e)),!0}return!1}async function Pe(e,t){await h("background",e,t)||await h("background-image",e,t),await h("mask",e,t)||await h("-webkit-mask",e,t)||await h("mask-image",e,t)||await h("-webkit-mask-image",e,t)}async function Ne(e,t){let r=c(e,HTMLImageElement);if(!(r&&!x(e.src))&&!(c(e,SVGImageElement)&&!x(e.href.baseVal)))return;let n=r?e.src:e.href.baseVal,i=await S(n,A(n),t);await new Promise((o,a)=>{e.onload=o,e.onerror=t.onImageErrorHandler?(...s)=>{try{o(t.onImageErrorHandler(...s))}catch(f){a(f)}}:a;let l=e;l.decode&&(l.decode=o),l.loading==="lazy"&&(l.loading="eager"),r?(e.srcset="",e.src=i):e.href.baseVal=i})}async function Te(e,t){let r=d(e.childNodes).map(n=>j(n,t));await Promise.all(r).then(()=>e)}async function j(e,t){c(e,Element)&&(await Pe(e,t),await Ne(e,t),await Te(e,t))}function Le(e,t){let{style:r}=e;t.backgroundColor&&(r.backgroundColor=t.backgroundColor),t.width&&(r.width=`${t.width}px`),t.height&&(r.height=`${t.height}px`);let n=t.style;return n!=null&&Object.keys(n).forEach(i=>{r[i]=n[i]}),e}var O={};async function U(e){let t=O[e];return t??(t={url:e,cssText:await(await fetch(e)).text()},O[e]=t,t)}async function z(e,t){let r=e.cssText,n=/url\(["']?([^"')]+)["']?\)/g,i=(r.match(/url\([^)]+\)/g)||[]).map(async o=>{let a=o.replace(n,"$1");return a.startsWith("https://")||(a=new URL(a,e.url).href),F(a,t.fetchRequestInit,({result:l})=>(r=r.replace(o,`url(${l})`),[o,l]))});return Promise.all(i).then(()=>r)}function _(e){if(e==null)return[];let t=[],r=e.replace(/(\/\*[\s\S]*?\*\/)/gi,""),n=RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){let a=n.exec(r);if(a===null)break;t.push(a[0])}r=r.replace(n,"");let i=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,o=RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let a=i.exec(r);if(a===null){if(a=o.exec(r),a===null)break;i.lastIndex=o.lastIndex}else o.lastIndex=i.lastIndex;t.push(a[0])}return t}async function Fe(e,t){let r=[],n=[];return e.forEach(i=>{if("cssRules"in i)try{d(i.cssRules||[]).forEach((o,a)=>{if(o.type===CSSRule.IMPORT_RULE){let l=a+1,s=o.href,f=U(s).then(g=>z(g,t)).then(g=>_(g).forEach(b=>{try{i.insertRule(b,b.startsWith("@import")?l+=1:i.cssRules.length)}catch(B){console.error("Error inserting rule from remote css",{rule:b,error:B})}})).catch(g=>{console.error("Error loading remote css",g.toString())});n.push(f)}})}catch(o){let a=e.find(l=>l.href==null)||document.styleSheets[0];i.href!=null&&n.push(U(i.href).then(l=>z(l,t)).then(l=>_(l).forEach(s=>{a.insertRule(s,a.cssRules.length)})).catch(l=>{console.error("Error loading remote stylesheet",l)})),console.error("Error inlining remote css file",o)}}),Promise.all(n).then(()=>(e.forEach(i=>{if("cssRules"in i)try{d(i.cssRules||[]).forEach(o=>{r.push(o)})}catch(o){console.error(`Error while reading CSS rules from ${i.href}`,o)}}),r))}function He(e){return e.filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>D(t.style.getPropertyValue("src")))}async function Ve(e,t){if(e.ownerDocument==null)throw Error("Provided element is not within a Document");return He(await Fe(d(e.ownerDocument.styleSheets),t))}function Q(e){return(e||"").trim().replace(/["']/g,"")}function De(e){let t=new Set;function r(n){let i=n.style.fontFamily||getComputedStyle(n).fontFamily;i&&i.split(",").forEach(o=>{t.add(Q(o))}),Array.from(n.children).forEach(o=>{o instanceof HTMLElement&&r(o)})}return r(e),t}async function Me(e,t){let r=await Ve(e,t),n=De(e);return(await Promise.all(r.filter(i=>n.has(Q(i.style.fontFamily))).map(i=>{let o=i.parentStyleSheet?i.parentStyleSheet.href:null;return M(i.cssText,o,t)}))).join(`
|
|
1
|
+
import{i as q}from"./useEvent-GCVIknuR.js";import{Yn as W,da as C,y as G}from"./cells-DD-zwhxi.js";import{g as v}from"./useEventListener-DpNnLPuE.js";import{t as $}from"./requests-B9zEd_sW.js";function I({moduleName:e,variableName:t,onAddImport:r,appStore:n=q}){if(t in n.get(W))return!1;let{cellData:i,cellIds:o}=n.get(G),a=RegExp(`import[ ]+${e}[ ]+as[ ]+${t}`,"g");for(let l of o.inOrderIds)if(a.test(i[l].code))return!1;return r(`import ${e} as ${t}`),!0}function J({autoInstantiate:e,createNewCell:t,fromCellId:r,before:n}){let i=$(),o=null;return I({moduleName:"marimo",variableName:"mo",onAddImport:a=>{o=C.create(),t({cellId:r??"__end__",before:n??!1,code:a,lastCodeRun:e?a:void 0,newCellId:o,skipIfCodeExists:!0,autoFocus:!1}),e&&i.sendRun({cellIds:[o],codes:[a]})}})?o:null}function Y({autoInstantiate:e,createNewCell:t,fromCellId:r}){let n=$(),i=null;return I({moduleName:"altair",variableName:"alt",onAddImport:o=>{i=C.create(),t({cellId:r??"__end__",before:!1,code:o,lastCodeRun:e?o:void 0,newCellId:i,skipIfCodeExists:!0,autoFocus:!1}),e&&n.sendRun({cellIds:[i],codes:[o]})}})?i:null}function K(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i))return e;let r=document.implementation.createHTMLDocument(),n=r.createElement("base"),i=r.createElement("a");return r.head.appendChild(n),r.body.appendChild(i),t&&(n.href=t),i.href=e,i.href}const X=(()=>{let e=0,t=()=>`0000${(Math.random()*36**4<<0).toString(36)}`.slice(-4);return()=>(e+=1,`u${t()}${e}`)})();function d(e){let t=[];for(let r=0,n=e.length;r<n;r++)t.push(e[r]);return t}var m=null;function R(e={}){return m||(e.includeStyleProperties?(m=e.includeStyleProperties,m):(m=d(window.getComputedStyle(document.documentElement)),m))}function p(e,t){let r=(e.ownerDocument.defaultView||window).getComputedStyle(e).getPropertyValue(t);return r?parseFloat(r.replace("px","")):0}function Z(e){let t=p(e,"border-left-width"),r=p(e,"border-right-width");return e.clientWidth+t+r}function ee(e){let t=p(e,"border-top-width"),r=p(e,"border-bottom-width");return e.clientHeight+t+r}function k(e,t={}){return{width:t.width||Z(e),height:t.height||ee(e)}}function te(){let e,t;try{t=process}catch{}let r=t&&t.env?t.env.devicePixelRatio:null;return r&&(e=parseInt(r,10),Number.isNaN(e)&&(e=1)),e||window.devicePixelRatio||1}var u=16384;function re(e){(e.width>u||e.height>u)&&(e.width>u&&e.height>u?e.width>e.height?(e.height*=u/e.width,e.width=u):(e.width*=u/e.height,e.height=u):e.width>u?(e.height*=u/e.width,e.width=u):(e.width*=u/e.height,e.height=u))}function w(e){return new Promise((t,r)=>{let n=new Image;n.onload=()=>{n.decode().then(()=>{requestAnimationFrame(()=>t(n))})},n.onerror=r,n.crossOrigin="anonymous",n.decoding="async",n.src=e})}async function ne(e){return Promise.resolve().then(()=>new XMLSerializer().serializeToString(e)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}async function ie(e,t,r){let n="http://www.w3.org/2000/svg",i=document.createElementNS(n,"svg"),o=document.createElementNS(n,"foreignObject");return i.setAttribute("width",`${t}`),i.setAttribute("height",`${r}`),i.setAttribute("viewBox",`0 0 ${t} ${r}`),o.setAttribute("width","100%"),o.setAttribute("height","100%"),o.setAttribute("x","0"),o.setAttribute("y","0"),o.setAttribute("externalResourcesRequired","true"),i.appendChild(o),o.appendChild(e),ne(i)}const c=(e,t)=>{if(e instanceof t)return!0;let r=Object.getPrototypeOf(e);return r===null?!1:r.constructor.name===t.name||c(r,t)};function oe(e){let t=e.getPropertyValue("content");return`${e.cssText} content: '${t.replace(/'|"/g,"")}';`}function ae(e,t){return R(t).map(r=>`${r}: ${e.getPropertyValue(r)}${e.getPropertyPriority(r)?" !important":""};`).join(" ")}function le(e,t,r,n){let i=`.${e}:${t}`,o=r.cssText?oe(r):ae(r,n);return document.createTextNode(`${i}{${o}}`)}function P(e,t,r,n){let i=window.getComputedStyle(e,r),o=i.getPropertyValue("content");if(o===""||o==="none")return;let a=X();try{t.className=`${t.className} ${a}`}catch{return}let l=document.createElement("style");l.appendChild(le(a,r,i,n)),t.appendChild(l)}function se(e,t,r){P(e,t,":before",r),P(e,t,":after",r)}var N="application/font-woff",T="image/jpeg",ce={woff:N,woff2:N,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:T,jpeg:T,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function ue(e){let t=/\.([^./]*?)$/g.exec(e);return t?t[1]:""}function A(e){return ce[ue(e).toLowerCase()]||""}function de(e){return e.split(/,/)[1]}function x(e){return e.search(/^(data:)/)!==-1}function L(e,t){return`data:${t};base64,${e}`}async function F(e,t,r){let n=await fetch(e,t);if(n.status===404)throw Error(`Resource "${n.url}" not found`);let i=await n.blob();return new Promise((o,a)=>{let l=new FileReader;l.onerror=a,l.onloadend=()=>{try{o(r({res:n,result:l.result}))}catch(s){a(s)}},l.readAsDataURL(i)})}var E={};function fe(e,t,r){let n=e.replace(/\?.*/,"");return r&&(n=e),/ttf|otf|eot|woff2?/i.test(n)&&(n=n.replace(/.*\//,"")),t?`[${t}]${n}`:n}async function S(e,t,r){let n=fe(e,t,r.includeQueryParams);if(E[n]!=null)return E[n];r.cacheBust&&(e+=(/\?/.test(e)?"&":"?")+new Date().getTime());let i;try{i=L(await F(e,r.fetchRequestInit,({res:o,result:a})=>(t||(t=o.headers.get("Content-Type")||""),de(a))),t)}catch(o){i=r.imagePlaceholder||"";let a=`Failed to fetch resource: ${e}`;o&&(a=typeof o=="string"?o:o.message),a&&console.warn(a)}return E[n]=i,i}async function he(e){let t=e.toDataURL();return t==="data:,"?e.cloneNode(!1):w(t)}async function ge(e,t){if(e.currentSrc){let n=document.createElement("canvas"),i=n.getContext("2d");return n.width=e.clientWidth,n.height=e.clientHeight,i==null||i.drawImage(e,0,0,n.width,n.height),w(n.toDataURL())}let r=e.poster;return w(await S(r,A(r),t))}async function me(e,t){var r;try{if((r=e==null?void 0:e.contentDocument)!=null&&r.body)return await y(e.contentDocument.body,t,!0)}catch{}return e.cloneNode(!1)}async function pe(e,t){return c(e,HTMLCanvasElement)?he(e):c(e,HTMLVideoElement)?ge(e,t):c(e,HTMLIFrameElement)?me(e,t):e.cloneNode(H(e))}var we=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SLOT",H=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SVG";async function ye(e,t,r){var i;if(H(t))return t;let n=[];if(we(e)&&e.assignedNodes)n=d(e.assignedNodes());else if(c(e,HTMLIFrameElement))try{(i=e.contentDocument)!=null&&i.body&&(n=d(e.contentDocument.body.childNodes))}catch{}else n=d((e.shadowRoot??e).childNodes);return n.length===0||c(e,HTMLVideoElement)||await n.reduce((o,a)=>o.then(()=>y(a,r)).then(l=>{l&&t.appendChild(l)}),Promise.resolve()),t}function be(e,t,r){let n=t.style;if(!n)return;let i=window.getComputedStyle(e);i.cssText?(n.cssText=i.cssText,n.transformOrigin=i.transformOrigin):R(r).forEach(o=>{let a=i.getPropertyValue(o);o==="font-size"&&a.endsWith("px")&&(a=`${Math.floor(parseFloat(a.substring(0,a.length-2)))-.1}px`),c(e,HTMLIFrameElement)&&o==="display"&&a==="inline"&&(a="block"),o==="d"&&t.getAttribute("d")&&(a=`path(${t.getAttribute("d")})`),n.setProperty(o,a,i.getPropertyPriority(o))})}function Ae(e,t){c(e,HTMLTextAreaElement)&&(t.innerHTML=e.value),c(e,HTMLInputElement)&&t.setAttribute("value",e.value)}function xe(e,t){if(c(e,HTMLSelectElement)){let r=t,n=Array.from(r.children).find(i=>e.value===i.getAttribute("value"));n&&n.setAttribute("selected","")}}function Ee(e,t,r){return c(t,Element)&&(be(e,t,r),se(e,t,r),Ae(e,t),xe(e,t)),t}async function Se(e,t){let r=e.querySelectorAll?e.querySelectorAll("use"):[];if(r.length===0)return e;let n={};for(let o=0;o<r.length;o++){let a=r[o].getAttribute("xlink:href");if(a){let l=e.querySelector(a),s=document.querySelector(a);!l&&s&&!n[a]&&(n[a]=await y(s,t,!0))}}let i=Object.values(n);if(i.length){let o="http://www.w3.org/1999/xhtml",a=document.createElementNS(o,"svg");a.setAttribute("xmlns",o),a.style.position="absolute",a.style.width="0",a.style.height="0",a.style.overflow="hidden",a.style.display="none";let l=document.createElementNS(o,"defs");a.appendChild(l);for(let s=0;s<i.length;s++)l.appendChild(i[s]);e.appendChild(a)}return e}async function y(e,t,r){return!r&&t.filter&&!t.filter(e)?null:Promise.resolve(e).then(n=>pe(n,t)).then(n=>ye(e,n,t)).then(n=>Ee(e,n,t)).then(n=>Se(n,t))}var V=/url\((['"]?)([^'"]+?)\1\)/g,Ce=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,ve=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function $e(e){let t=e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return RegExp(`(url\\(['"]?)(${t})(['"]?\\))`,"g")}function Ie(e){let t=[];return e.replace(V,(r,n,i)=>(t.push(i),r)),t.filter(r=>!x(r))}async function Re(e,t,r,n,i){try{let o=r?K(t,r):t,a=A(t),l;return l=i?L(await i(o),a):await S(o,a,n),e.replace($e(t),`$1${l}$3`)}catch{}return e}function ke(e,{preferredFontFormat:t}){return t?e.replace(ve,r=>{for(;;){let[n,,i]=Ce.exec(r)||[];if(!i)return"";if(i===t)return`src: ${n};`}}):e}function D(e){return e.search(V)!==-1}async function M(e,t,r){if(!D(e))return e;let n=ke(e,r);return Ie(n).reduce((i,o)=>i.then(a=>Re(a,o,t,r)),Promise.resolve(n))}async function h(e,t,r){var i;let n=(i=t.style)==null?void 0:i.getPropertyValue(e);if(n){let o=await M(n,null,r);return t.style.setProperty(e,o,t.style.getPropertyPriority(e)),!0}return!1}async function Pe(e,t){await h("background",e,t)||await h("background-image",e,t),await h("mask",e,t)||await h("-webkit-mask",e,t)||await h("mask-image",e,t)||await h("-webkit-mask-image",e,t)}async function Ne(e,t){let r=c(e,HTMLImageElement);if(!(r&&!x(e.src))&&!(c(e,SVGImageElement)&&!x(e.href.baseVal)))return;let n=r?e.src:e.href.baseVal,i=await S(n,A(n),t);await new Promise((o,a)=>{e.onload=o,e.onerror=t.onImageErrorHandler?(...s)=>{try{o(t.onImageErrorHandler(...s))}catch(f){a(f)}}:a;let l=e;l.decode&&(l.decode=o),l.loading==="lazy"&&(l.loading="eager"),r?(e.srcset="",e.src=i):e.href.baseVal=i})}async function Te(e,t){let r=d(e.childNodes).map(n=>j(n,t));await Promise.all(r).then(()=>e)}async function j(e,t){c(e,Element)&&(await Pe(e,t),await Ne(e,t),await Te(e,t))}function Le(e,t){let{style:r}=e;t.backgroundColor&&(r.backgroundColor=t.backgroundColor),t.width&&(r.width=`${t.width}px`),t.height&&(r.height=`${t.height}px`);let n=t.style;return n!=null&&Object.keys(n).forEach(i=>{r[i]=n[i]}),e}var O={};async function U(e){let t=O[e];return t??(t={url:e,cssText:await(await fetch(e)).text()},O[e]=t,t)}async function z(e,t){let r=e.cssText,n=/url\(["']?([^"')]+)["']?\)/g,i=(r.match(/url\([^)]+\)/g)||[]).map(async o=>{let a=o.replace(n,"$1");return a.startsWith("https://")||(a=new URL(a,e.url).href),F(a,t.fetchRequestInit,({result:l})=>(r=r.replace(o,`url(${l})`),[o,l]))});return Promise.all(i).then(()=>r)}function _(e){if(e==null)return[];let t=[],r=e.replace(/(\/\*[\s\S]*?\*\/)/gi,""),n=RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){let a=n.exec(r);if(a===null)break;t.push(a[0])}r=r.replace(n,"");let i=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,o=RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let a=i.exec(r);if(a===null){if(a=o.exec(r),a===null)break;i.lastIndex=o.lastIndex}else o.lastIndex=i.lastIndex;t.push(a[0])}return t}async function Fe(e,t){let r=[],n=[];return e.forEach(i=>{if("cssRules"in i)try{d(i.cssRules||[]).forEach((o,a)=>{if(o.type===CSSRule.IMPORT_RULE){let l=a+1,s=o.href,f=U(s).then(g=>z(g,t)).then(g=>_(g).forEach(b=>{try{i.insertRule(b,b.startsWith("@import")?l+=1:i.cssRules.length)}catch(B){console.error("Error inserting rule from remote css",{rule:b,error:B})}})).catch(g=>{console.error("Error loading remote css",g.toString())});n.push(f)}})}catch(o){let a=e.find(l=>l.href==null)||document.styleSheets[0];i.href!=null&&n.push(U(i.href).then(l=>z(l,t)).then(l=>_(l).forEach(s=>{a.insertRule(s,a.cssRules.length)})).catch(l=>{console.error("Error loading remote stylesheet",l)})),console.error("Error inlining remote css file",o)}}),Promise.all(n).then(()=>(e.forEach(i=>{if("cssRules"in i)try{d(i.cssRules||[]).forEach(o=>{r.push(o)})}catch(o){console.error(`Error while reading CSS rules from ${i.href}`,o)}}),r))}function He(e){return e.filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>D(t.style.getPropertyValue("src")))}async function Ve(e,t){if(e.ownerDocument==null)throw Error("Provided element is not within a Document");return He(await Fe(d(e.ownerDocument.styleSheets),t))}function Q(e){return(e||"").trim().replace(/["']/g,"")}function De(e){let t=new Set;function r(n){let i=n.style.fontFamily||getComputedStyle(n).fontFamily;i&&i.split(",").forEach(o=>{t.add(Q(o))}),Array.from(n.children).forEach(o=>{o instanceof HTMLElement&&r(o)})}return r(e),t}async function Me(e,t){let r=await Ve(e,t),n=De(e);return(await Promise.all(r.filter(i=>n.has(Q(i.style.fontFamily))).map(i=>{let o=i.parentStyleSheet?i.parentStyleSheet.href:null;return M(i.cssText,o,t)}))).join(`
|
|
2
2
|
`)}async function je(e,t){let r=t.fontEmbedCSS==null?t.skipFonts?null:await Me(e,t):t.fontEmbedCSS,n=t.extraStyleContent==null?r:(r||"").concat(t.extraStyleContent);if(n){let i=document.createElement("style"),o=document.createTextNode(n);i.appendChild(o),e.firstChild?e.insertBefore(i,e.firstChild):e.appendChild(i)}}async function Oe(e,t={}){let{width:r,height:n}=k(e,t),i=await y(e,t,!0);return await je(i,t),await j(i,t),Le(i,t),await ie(i,r,n)}async function Ue(e,t={}){let{width:r,height:n}=k(e,t),i=await w(await Oe(e,t)),o=document.createElement("canvas"),a=o.getContext("2d"),l=t.pixelRatio||te(),s=t.canvasWidth||r,f=t.canvasHeight||n;return o.width=s*l,o.height=f*l,t.skipAutoScale||re(o),o.style.width=`${s}`,o.style.height=`${f}`,t.backgroundColor&&(a.fillStyle=t.backgroundColor,a.fillRect(0,0,o.width,o.height)),a.drawImage(i,0,0,o.width,o.height),o}async function ze(e,t={}){return(await Ue(e,t)).toDataURL()}const _e={filter:e=>{try{if("classList"in e){let t=e.classList;if(t.contains("mpl-toolbar")||t.contains("print:hidden"))return!1}return!0}catch(t){return v.error("Error filtering node:",t),!0}},imagePlaceholder:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQI12NgAAIABQABNjN9GQAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAA0lEQVQI12P4z8BQDwAEgAF/QualIQAAAABJRU5ErkJggg==",onImageErrorHandler:e=>{v.error("Error loading image:",e)},includeStyleProperties:"width.height.min-width.min-height.max-width.max-height.box-sizing.aspect-ratio.display.position.top.left.bottom.right.z-index.float.clear.flex.flex-direction.flex-wrap.flex-grow.flex-shrink.flex-basis.align-items.align-self.justify-content.gap.order.grid-template-columns.grid-template-rows.grid-column.grid-row.row-gap.column-gap.margin.margin-top.margin-right.margin-bottom.margin-left.padding.padding-top.padding-right.padding-bottom.padding-left.font.font-family.font-size.font-weight.font-style.line-height.letter-spacing.word-spacing.text-align.text-decoration.text-transform.text-indent.text-shadow.white-space.text-wrap.word-break.text-overflow.vertical-align.color.background.background-color.background-image.background-size.background-position.background-repeat.background-clip.border.border-width.border-style.border-color.border-top.border-right.border-bottom.border-left.border-radius.outline.box-shadow.text-shadow.opacity.filter.backdrop-filter.mix-blend-mode.transform.clip-path.overflow.overflow-x.overflow-y.visibility.fill.stroke.stroke-width.object-fit.object-position.list-style.list-style-type.border-collapse.border-spacing.content.cursor".split(".")};async function Qe(e,t){return ze(e,{..._e,...t})}export{Y as n,J as r,Qe as t};
|