@marimo-team/frontend 0.19.7-dev20 → 0.19.7-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/{JsonOutput-BVI_kCSN.js → JsonOutput-Dmfgex9T.js} +1 -1
- package/dist/assets/{agent-panel-0HhcHaVj.js → agent-panel-Baphp2Rh.js} +1 -1
- package/dist/assets/{cell-editor-COotfHlv.js → cell-editor-Cqw8VDah.js} +1 -1
- package/dist/assets/{column-preview-tRvaNrl-.js → column-preview-BvwEAGt6.js} +1 -1
- package/dist/assets/{command-palette-D8_SvjIR.js → command-palette-aT5upvTH.js} +1 -1
- package/dist/assets/{dependency-graph-panel-DSeZ5qhn.js → dependency-graph-panel-CBiKFUBG.js} +1 -1
- package/dist/assets/download-kUMZIq8-.js +1 -0
- package/dist/assets/{edit-page-CdRvNDWO.js → edit-page-cuNCsDIq.js} +3 -3
- package/dist/assets/{file-explorer-panel-g80R2HMx.js → file-explorer-panel-CkOMaMbq.js} +1 -1
- package/dist/assets/{hooks-BCWaBVPa.js → hooks-DxXRX-38.js} +1 -1
- package/dist/assets/{index-Clc-qLX8.js → index-DOcwFnbt.js} +3 -3
- package/dist/assets/{layout--FMxALVU.js → layout-BkGjQBnQ.js} +1 -1
- package/dist/assets/{panels-D4X7kUpt.js → panels-B55q0DEo.js} +1 -1
- package/dist/assets/{run-page-DLppr0V5.js → run-page-6DKviU71.js} +1 -1
- package/dist/assets/{scratchpad-panel-Dh7Pdw2h.js → scratchpad-panel-CM5InA2G.js} +1 -1
- package/dist/assets/{session-panel-CCi2mMz9.js → session-panel-CRStSDDj.js} +1 -1
- package/dist/assets/{useCellActionButton-Cgy2ht_4.js → useCellActionButton-CQQ8dBy_.js} +1 -1
- package/dist/assets/{useDependencyPanelTab-gUps1qpH.js → useDependencyPanelTab-_ibASMD1.js} +1 -1
- package/dist/assets/{useNotebookActions-BuhoyoG6.js → useNotebookActions-REoVp8xc.js} +1 -1
- package/dist/assets/{utilities.esm-DOpL-6DC.js → utilities.esm-eBoXu7lR.js} +1 -1
- package/dist/index.html +5 -5
- package/package.json +1 -1
- package/src/utils/__tests__/iframe.test.ts +139 -0
- package/src/utils/download.ts +14 -0
- package/src/utils/iframe.ts +142 -0
- package/dist/assets/download-CBUrhm0-.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as F}from"./chunk-LvLJmgfZ.js";import{t as I}from"./react-BGmjiNul.js";import{ii as W,zt as C}from"./cells-Cvo5AIrZ.js";import{d as z}from"./hotkeys-DghjL7BQ.js";import{t as H}from"./requests-BsVD4CdD.js";import{t as Y}from"./createLucideIcon-CnW3RofX.js";import{t as k}from"./use-toast-rmUWldD_.js";import{d as _}from"./popover-D16ZremR.js";import{r as J}from"./errors-2SszdW9t.js";import{t as A}from"./html-to-image-CJgqxZci.js";var K=Y("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]),N=t=>{let e,n=new Set,r=(l,R)=>{let d=typeof l=="function"?l(e):l;if(!Object.is(d,e)){let c=e;e=R??(typeof d!="object"||!d)?d:Object.assign({},e,d),n.forEach(s=>s(e,c))}},o=()=>e,i={setState:r,getState:o,getInitialState:()=>a,subscribe:l=>(n.add(l),()=>n.delete(l)),destroy:()=>{n.clear()}},a=e=t(r,o,i);return i},Q=t=>t?N(t):N,X=F((t=>{var e=I(),n=_();function r(c,s){return c===s&&(c!==0||1/c==1/s)||c!==c&&s!==s}var o=typeof Object.is=="function"?Object.is:r,i=n.useSyncExternalStore,a=e.useRef,l=e.useEffect,R=e.useMemo,d=e.useDebugValue;t.useSyncExternalStoreWithSelector=function(c,s,P,j,v){var m=a(null);if(m.current===null){var p={hasValue:!1,value:null};m.current=p}else p=m.current;m=R(function(){function D(f){if(!O){if(O=!0,h=f,f=j(f),v!==void 0&&p.hasValue){var y=p.value;if(v(y,f))return b=y}return b=f}if(y=b,o(h,f))return y;var U=j(f);return v!==void 0&&v(y,U)?(h=f,y):(h=f,b=U)}var O=!1,h,b,T=P===void 0?null:P;return[function(){return D(s())},T===null?void 0:function(){return D(T())}]},[s,P,j,v]);var g=i(c,m[0],m[1]);return l(function(){p.hasValue=!0,p.value=g},[g]),d(g),g}})),Z=F(((t,e)=>{e.exports=X()}));const u={toMarkdown:t=>u.replace(t,"md"),toHTML:t=>u.replace(t,"html"),toPNG:t=>u.replace(t,"png"),toPDF:t=>u.replace(t,"pdf"),toPY:t=>u.replace(t,"py"),withoutExtension:t=>{let e=t.split(".");return e.length===1?t:e.slice(0,-1).join(".")},replace:(t,e)=>t.endsWith(`.${e}`)?t:`${u.withoutExtension(t)}.${e}`};var w=320,x=180;function G(t){if(!t||t==="about:blank")return null;try{let e=new URL(t,window.location.href);return e.origin===window.location.origin?null:e.href}catch{return t}}function tt(t,e,n){let r=[],o="";for(let i of e){let a=o+i;t.measureText(a).width<=n?o=a:(o&&r.push(o),o=i)}return o&&r.push(o),r}function L(t){let e=window.devicePixelRatio||1,n=document.createElement("canvas");n.width=w*e,n.height=x*e;let r=n.getContext("2d");if(!r)return n.toDataURL("image/png");r.scale(e,e),r.fillStyle="#f3f4f6",r.fillRect(0,0,w,x),r.strokeStyle="#d1d5db",r.strokeRect(.5,.5,w-1,x-1),r.fillStyle="#6b7280",r.font="8px sans-serif",r.textAlign="center",r.textBaseline="middle";let o=w-32,i=t?tt(r,t,o):[],a=(x-(1+i.length)*14)/2+14/2;r.fillText("External iframe",w/2,a),a+=14;for(let l of i)r.fillText(l,w/2,a),a+=14;return n.toDataURL("image/png")}async function M(t){var o;let e=t.querySelector("iframe");if(!e)return null;let n=G(e.getAttribute("src"));if(n)return L(n);let r;try{let i=e.contentDocument||((o=e.contentWindow)==null?void 0:o.document);if(!(i!=null&&i.body))return null;r=i}catch{return L(null)}for(let i of r.querySelectorAll("iframe")){let a=G(i.getAttribute("src"));if(a)return L(a)}try{return await A(r.body)}catch{return L(null)}}async function et(t,e){let n=k({title:t,duration:1/0});try{let r=await e();return n.dismiss(),r}catch(r){throw n.dismiss(),r}}function V(t){let e=document.getElementById(W.create(t));if(!e){z.error(`Output element not found for cell ${t}`);return}return e}var S=0;function nt(){S++,S===1&&document.body.classList.add("printing")}function rt(){S--,S===0&&document.body.classList.remove("printing")}function $(t,e){t.classList.add("printing-output"),e&&nt();let n=t.style.overflow;return t.style.overflow="auto",()=>{t.classList.remove("printing-output"),e&&rt(),t.style.overflow=n}}async function ot(t,e=!0){let n=V(t);if(!n)return;let r=await M(n);if(r)return r;let o=$(n,e);try{return await A(n)}finally{o()}}async function it(t,e){let n=V(t);if(!n)return;let r=await M(n);if(r){E(r,u.toPNG(e));return}await q({element:n,filename:e,prepare:()=>$(n,!0)})}async function q(t){let{element:e,filename:n,prepare:r}=t,o=document.getElementById("App"),i=(o==null?void 0:o.scrollTop)??0,a;r?a=r(e):document.body.classList.add("printing");try{E(await A(e),u.toPNG(n))}catch{k({title:"Error",description:"Failed to download as PNG.",variant:"danger"})}finally{a==null||a(),document.body.classList.contains("printing")&&document.body.classList.remove("printing"),requestAnimationFrame(()=>{o==null||o.scrollTo(0,i)})}}function E(t,e){let n=document.createElement("a");n.href=t,n.download=e,n.click(),n.remove()}function B(t,e){let n=URL.createObjectURL(t);E(n,e),URL.revokeObjectURL(n)}async function at(t){let e=H(),{filename:n,webpdf:r}=t;try{let o=await e.exportAsPDF({webpdf:r}),i=C.basename(n);B(o,u.toPDF(i))}catch(o){throw k({title:"Failed to download",description:J(o),variant:"danger"}),o}}export{q as a,u as c,K as d,it as i,Z as l,B as n,ot as o,E as r,et as s,at as t,Q as u};
|