Haleshot's picture
Update course materials and assets across various sections, including functional programming, optimization, probability, and Python. Enhance HTML content and ensure consistency in asset management.
565ea71 unverified
raw
history blame
17 kB
import{aD as e,R as a,aE as t,aF as s,G as r,J as o,ao as n,aG as l,P as i,aH as c,aI as d,aJ as h,aK as m,am as x,aL as f,aM as u,aN as p,aO as y,aP as b,aQ as j,aR as g,aS as v,aT as k,aU as w,ad as N,aV as _,aW as S,aX as z,aY as C,aZ as M,a_ as I,a5 as P,ax as D,$ as O,a$ as T,b0 as $,b1 as R,az as A,b2 as W,b3 as B,b4 as L,b5 as H,b6 as V,b7 as E,b8 as F,b9 as G,ba as J,bb as U,bc as Y,bd as q,be as Q,bf as K,bg as X,bh as Z,T as ee}from"./index-BiV-b1K2.js";import{u as ae,C as te,S as se,a as re,T as oe,M as ne,P as le,G as ie,A as ce}from"./tree-DZAe83wi.js";import"./main-CEaoNRsh.js";import"./createWsUrl-Bazdvp-G.js";import"./index-DbEIEgDe.js";
/**
* @license lucide-react v0.474.0 - ISC
*
* This source code is licensed under the ISC license.
* See the LICENSE file in the root directory of this source tree.
*/const de=e("BookOpen",[["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"}]]),he=e("BookText",[["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"}]]),me=e("ChartNoAxesColumn",[["line",{x1:"18",x2:"18",y1:"20",y2:"10",key:"1xfpm4"}],["line",{x1:"12",x2:"12",y1:"20",y2:"4",key:"be30l9"}],["line",{x1:"6",x2:"6",y1:"20",y2:"14",key:"1r4le6"}]]),xe=e("GraduationCap",[["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"}]]),fe=e("Orbit",[["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"}],["path",{d:"M10.4 21.9a10 10 0 0 0 9.941-15.416",key:"eohfx2"}],["path",{d:"M13.5 2.1a10 10 0 0 0-9.841 15.416",key:"19pvbm"}]]),ue=e("PanelsTopLeft",[["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"}]]),pe=a.createContext({runningNotebooks:new Map,setRunningNotebooks:t.NOOP}),ye=a.createContext(""),be=s("marimo:home:include-markdown",!1,void 0,{getOnInit:!0}),je=s("marimo:home:expanded-folders",{},void 0,{getOnInit:!0});function ge(e){return`${ee()}-${encodeURIComponent(e)}`}const ve=()=>{const e=r.c(51),[a,t]=o.useState(0);let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=[],e[0]=s):s=e[0];const c=n(Te,s);let d,h,m;e[1]===Symbol.for("react.memo_cache_sentinel")?(d=()=>{t($e)},h={delayMs:1e4,whenVisible:!0},e[1]=d,e[2]=h):(d=e[1],h=e[2]),ae(d,h),e[3]!==a?(m=[a],e[3]=a,e[4]=m):m=e[4];const x=n(Ae,m);let f,u,j,g,v,k,w,N,_,S,z,C,M,I,P,D,O,T,$,R;if(e[5]!==c||e[6]!==x){k=Symbol.for("react.early_return_sentinel");e:{const a=l(c,x);if(a.error)throw a.error;const t=a.data;if(!t){let a;e[19]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx(p,{centered:!0,size:"xlarge"}),e[19]=a):a=e[19],k=a;break e}const[s,r]=t;let n,d;g=s,j=o.Suspense,u=pe.Provider,C={runningNotebooks:r,setRunningNotebooks:x.setData},e[20]===Symbol.for("react.memo_cache_sentinel")?(n=i.jsx(Oe,{}),d=i.jsx(te,{showAppConfig:!1}),e[20]=n,e[21]=d):(n=e[20],d=e[21]);const h=`This will shutdown the notebook server and terminate all running notebooks (${r.size}). You'll lose all data that's in memory.`;e[22]!==h?(v=i.jsxs("div",{className:"absolute top-3 right-5 flex gap-2 z-50",children:[n,d,i.jsx(se,{description:h})]}),e[22]=h,e[23]=v):v=e[23],_="flex flex-col gap-6 max-w-5xl container pt-5 pb-20 z-10",e[24]===Symbol.for("react.memo_cache_sentinel")?(S=i.jsx("img",{src:"logo.png",alt:"marimo logo",className:"w-64 mb-4"}),z=i.jsx(Pe,{}),e[24]=S,e[25]=z):(S=e[24],z=e[25]),f=ze,e[26]===Symbol.for("react.memo_cache_sentinel")?(N=i.jsx(Ce,{Icon:re,children:"Running notebooks"}),e[26]=N):N=e[26],w=r.values()}e[5]=c,e[6]=x,e[7]=f,e[8]=u,e[9]=j,e[10]=g,e[11]=v,e[12]=k,e[13]=w,e[14]=N,e[15]=_,e[16]=S,e[17]=z,e[18]=C}else f=e[7],u=e[8],j=e[9],g=e[10],v=e[11],k=e[12],w=e[13],N=e[14],_=e[15],S=e[16],z=e[17],C=e[18];return k!==Symbol.for("react.early_return_sentinel")?k:(e[27]!==w?(M=[...w],e[27]=w,e[28]=M):M=e[28],e[29]!==f||e[30]!==M||e[31]!==N?(I=i.jsx(f,{header:N,files:M}),e[29]=f,e[30]=M,e[31]=N,e[32]=I):I=e[32],e[33]===Symbol.for("react.memo_cache_sentinel")?(P=i.jsx(Ce,{Icon:y,children:"Recent notebooks"}),e[33]=P):P=e[33],e[34]!==g.files?(D=i.jsx(ze,{header:P,files:g.files}),e[34]=g.files,e[35]=D):D=e[35],e[36]===Symbol.for("react.memo_cache_sentinel")?(O=i.jsx(b,{children:i.jsx(ke,{})}),e[36]=O):O=e[36],e[37]!==I||e[38]!==D||e[39]!==_||e[40]!==S||e[41]!==z?(T=i.jsxs("div",{className:_,children:[S,z,I,D,O]}),e[37]=I,e[38]=D,e[39]=_,e[40]=S,e[41]=z,e[42]=T):T=e[42],e[43]!==u||e[44]!==v||e[45]!==T||e[46]!==C?($=i.jsxs(u,{value:C,children:[v,T]}),e[43]=u,e[44]=v,e[45]=T,e[46]=C,e[47]=$):$=e[47],e[48]!==j||e[49]!==$?(R=i.jsx(j,{children:$}),e[48]=j,e[49]=$,e[50]=R):R=e[50],R)},ke=()=>{const e=r.c(39),[a,t]=j(be),[s,l]=o.useState("");let c,d;e[0]!==a?(c=()=>G({includeMarkdown:a}),d=[a],e[0]=a,e[1]=c,e[2]=d):(c=e[1],d=e[2]);const h=n(c,d);if(h.error){let a,t;return e[3]!==h.error?(a=g(h.error),e[3]=h.error,e[4]=a):a=e[4],e[5]!==a?(t=i.jsx(J,{kind:"danger",className:"rounded p-4",children:a}),e[5]=a,e[6]=t):t=e[6],t}if(h.loading||!h.data){let a;return e[7]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx(p,{centered:!0,size:"xlarge",className:"mt-6"}),e[7]=a):a=e[7],a}const m=h.data;let x,f,u,y,b,v,k,w,N,_,S,z,C,M;return e[8]===Symbol.for("react.memo_cache_sentinel")?(x=i.jsx(U,{size:13}),f=e=>l(e.target.value),e[8]=x,e[9]=f):(x=e[8],f=e[9]),e[10]!==s?(u=i.jsx(Y,{id:"search",value:s,icon:x,onChange:f,placeholder:"Search",className:"mb-0 border-border"}),e[10]=s,e[11]=u):u=e[11],e[12]===Symbol.for("react.memo_cache_sentinel")?(y=i.jsx(we,{}),e[12]=y):y=e[12],e[13]!==t?(b=e=>t(Boolean(e)),e[13]=t,e[14]=b):b=e[14],e[15]!==a||e[16]!==b?(v=i.jsx(q,{"data-testid":"include-markdown-checkbox",id:"include-markdown",checked:a,onCheckedChange:b}),e[15]=a,e[16]=b,e[17]=v):v=e[17],e[18]===Symbol.for("react.memo_cache_sentinel")?(k=i.jsx(Q,{htmlFor:"include-markdown",children:"Include markdown"}),e[18]=k):k=e[18],e[19]!==u||e[20]!==v?(w=i.jsxs("div",{className:"flex items-center gap-2",children:[u,y,v,k]}),e[19]=u,e[20]=v,e[21]=w):w=e[21],e[22]!==h?(N=i.jsx(K,{className:"w-4 h-4 ml-1 cursor-pointer opacity-70 hover:opacity-100",onClick:()=>h.reload()}),e[22]=h,e[23]=N):N=e[23],e[24]!==h.loading?(_=h.loading&&i.jsx(p,{size:"small"}),e[24]=h.loading,e[25]=_):_=e[25],e[26]!==N||e[27]!==_||e[28]!==w?(S=i.jsxs(Ce,{Icon:he,control:w,children:["Workspace",N,_]}),e[26]=N,e[27]=_,e[28]=w,e[29]=S):S=e[29],e[30]!==s||e[31]!==m.files?(z=i.jsx("div",{className:"flex flex-col divide-y divide-[var(--slate-3)] border rounded overflow-hidden max-h-[48rem] overflow-y-auto shadow-sm bg-background",children:i.jsx(Ne,{searchText:s,files:m.files})}),e[30]=s,e[31]=m.files,e[32]=z):z=e[32],e[33]!==S||e[34]!==z?(C=i.jsxs("div",{className:"flex flex-col gap-2",children:[S,z]}),e[33]=S,e[34]=z,e[35]=C):C=e[35],e[36]!==C||e[37]!==m.root?(M=i.jsx(ye.Provider,{value:m.root,children:C}),e[36]=C,e[37]=m.root,e[38]=M):M=e[38],M},we=()=>{const e=r.c(5),a=v(je);let t,s,o;return e[0]!==a?(t=()=>{a({})},e[0]=a,e[1]=t):t=e[1],e[2]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsx(X,{className:"w-4 h-4 mr-1"}),e[2]=s):s=e[2],e[3]!==t?(o=i.jsxs(O,{variant:"text",size:"sm",className:"h-fit",onClick:t,children:[s,"Collapse all"]}),e[3]=t,e[4]=o):o=e[4],o},Ne=e=>{const a=r.c(12),{files:t,searchText:s}=e,[n,l]=j(je),c=0===Object.keys(n).length,d=o.useRef();let h,m,x,f;if(a[0]!==c?(h=()=>{var e;c&&(null==(e=d.current)||e.closeAll())},m=[c],a[0]=c,a[1]=h,a[2]=m):(h=a[1],m=a[2]),o.useEffect(h,m),0===t.length){let e;return a[3]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx("div",{className:"flex flex-col px-5 py-10 items-center justify-center",children:i.jsx("p",{className:"text-center text-muted-foreground",children:"No files in this workspace"})}),a[3]=e):e=a[3],e}return a[4]!==n||a[5]!==l?(x=async e=>{const a=n[e]??!1;l({...n,[e]:!a})},a[4]=n,a[5]=l,a[6]=x):x=a[6],a[7]!==t||a[8]!==n||a[9]!==s||a[10]!==x?(f=i.jsx(oe,{ref:d,width:"100%",height:500,searchTerm:s,className:"h-full",idAccessor:We,data:t,openByDefault:!1,initialOpenState:n,onToggle:x,padding:5,rowHeight:35,indent:15,overscanCount:1e3,renderCursor:Be,disableDrop:!0,disableDrag:!0,disableEdit:!0,disableMultiSelection:!0,children:_e}),a[7]=t,a[8]=n,a[9]=s,a[10]=x,a[11]=f):f=a[11],f},_e=e=>{const a=r.c(19),{node:t,style:s}=e,n=t.data.isDirectory?"directory":k(t.data.name),l=w[n];let c;a[0]!==l?(c=i.jsx(l,{className:"w-5 h-5 flex-shrink-0",strokeWidth:1.5}),a[0]=l,a[1]=c):c=a[1];const d=c,h=o.useContext(ye);let m;a[2]!==d||a[3]!==t.data.isDirectory||a[4]!==t.data.name||a[5]!==t.data.path||a[6]!==h?(m=()=>{if(t.data.isDirectory)return i.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:[d,t.data.name]});const e=t.data.path.startsWith(h)&&Z.isAbsolute(t.data.path)?Z.rest(t.data.path,h):t.data.path,a=e.endsWith(".md");return i.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:x(`?file=${e}`).toString(),target:ge(e),children:[d,i.jsxs("span",{className:"flex-1 overflow-hidden text-ellipsis",children:[t.data.name,a&&i.jsx(ne,{className:"ml-2 inline opacity-80"})]}),i.jsx(Ie,{filePath:e}),i.jsx(z,{size:20,className:"group-hover:opacity-100 opacity-0 text-primary"})]})},a[2]=d,a[3]=t.data.isDirectory,a[4]=t.data.name,a[5]=t.data.path,a[6]=h,a[7]=m):m=a[7];const f=m;let u,p,y,b,j;return a[8]===Symbol.for("react.memo_cache_sentinel")?(u=N("flex items-center cursor-pointer ml-1 text-muted-foreground whitespace-nowrap group h-full"),a[8]=u):u=a[8],a[9]!==t?(p=e=>{e.stopPropagation(),t.data.isDirectory&&t.toggle()},y=i.jsx(Se,{node:t}),a[9]=t,a[10]=p,a[11]=y):(p=a[10],y=a[11]),a[12]!==f?(b=f(),a[12]=f,a[13]=b):b=a[13],a[14]!==s||a[15]!==p||a[16]!==y||a[17]!==b?(j=i.jsxs("div",{style:s,className:u,onClick:p,children:[y,b]}),a[14]=s,a[15]=p,a[16]=y,a[17]=b,a[18]=j):j=a[18],j},Se=e=>{const a=r.c(3),{node:t}=e;if(!t.data.isDirectory){let e;return a[0]===Symbol.for("react.memo_cache_sentinel")?(e=i.jsx("span",{className:"w-5 h-5 flex-shrink-0"}),a[0]=e):e=a[0],e}let s;return a[1]!==t.isOpen?(s=t.isOpen?i.jsx(_,{className:"w-5 h-5 flex-shrink-0"}):i.jsx(S,{className:"w-5 h-5 flex-shrink-0"}),a[1]=t.isOpen,a[2]=s):s=a[2],s},ze=e=>{const a=r.c(7),{header:t,files:s}=e;if(0===s.length)return null;let o,n,l;return a[0]!==s?(o=s.map(Le),a[0]=s,a[1]=o):o=a[1],a[2]!==o?(n=i.jsx("div",{className:"flex flex-col divide-y divide-[var(--slate-3)] border rounded overflow-hidden max-h-[48rem] overflow-y-auto shadow-sm bg-background",children:o}),a[2]=o,a[3]=n):n=a[3],a[4]!==t||a[5]!==n?(l=i.jsxs("div",{className:"flex flex-col gap-2",children:[t,n]}),a[4]=t,a[5]=n,a[6]=l):l=a[6],l},Ce=e=>{const a=r.c(8),{Icon:t,control:s,children:o}=e;let n,l,c;return a[0]!==t?(n=i.jsx(t,{className:"h-5 w-5"}),a[0]=t,a[1]=n):n=a[1],a[2]!==o||a[3]!==n?(l=i.jsxs("h2",{className:"flex items-center gap-2 text-xl font-semibold text-muted-foreground select-none",children:[n,o]}),a[2]=o,a[3]=n,a[4]=l):l=a[4],a[5]!==s||a[6]!==l?(c=i.jsxs("div",{className:"flex items-center justify-between gap-2",children:[l,s]}),a[5]=s,a[6]=l,a[7]=c):c=a[7],c},Me=e=>{const a=r.c(40),{file:t}=e;let s;a[0]!==t.path?(s=m(t.path),a[0]=t.path,a[1]=s):s=a[1];const o=s;let n,l,c,d;if(a[2]!==t.initializationId||a[3]!==t.path||a[4]!==o){const e=x(o?`?file=${t.initializationId}&session_id=${t.path}`:`?file=${t.path}`);let s;a[9]!==t.path?(s=t.path.endsWith(".md"),a[9]=t.path,a[10]=s):s=a[10],n=s,l="py-1.5 px-4 hover:bg-[var(--blue-2)] hover:text-primary transition-all duration-300 cursor-pointer group relative flex gap-4 items-center",c=t.path,d=e.toString(),a[2]=t.initializationId,a[3]=t.path,a[4]=o,a[5]=n,a[6]=l,a[7]=c,a[8]=d}else n=a[5],l=a[6],c=a[7],d=a[8];const h=t.initializationId||t.path;let u,p,y,b,j,g,v,k,w,N,_;return a[11]!==h?(u=ge(h),a[11]=h,a[12]=u):u=a[12],a[13]!==n?(p=n&&i.jsx("span",{className:"opacity-80",children:i.jsx(ne,{})}),a[13]=n,a[14]=p):p=a[14],a[15]!==t.name||a[16]!==p?(y=i.jsxs("span",{className:"flex items-center gap-2",children:[t.name,p]}),a[15]=t.name,a[16]=p,a[17]=y):y=a[17],a[18]!==t.path?(b=i.jsx("p",{title:t.path,className:"text-sm text-muted-foreground overflow-hidden whitespace-nowrap overflow-ellipsis",children:t.path}),a[18]=t.path,a[19]=b):b=a[19],a[20]!==y||a[21]!==b?(j=i.jsxs("div",{className:"flex flex-col justify-between flex-1",children:[y,b]}),a[20]=y,a[21]=b,a[22]=j):j=a[22],a[23]!==t.path?(g=i.jsx("div",{children:i.jsx(Ie,{filePath:t.path})}),a[23]=t.path,a[24]=g):g=a[24],a[25]===Symbol.for("react.memo_cache_sentinel")?(v=i.jsx(z,{size:20,className:"group-hover:opacity-100 opacity-0 transition-all duration-300 text-primary"}),a[25]=v):v=a[25],a[26]!==g?(k=i.jsxs("div",{className:"flex gap-3 items-center",children:[g,v]}),a[26]=g,a[27]=k):k=a[27],a[28]!==t.lastModified?(w=!!t.lastModified&&i.jsx("div",{className:"text-xs text-muted-foreground opacity-80",children:f(1e3*t.lastModified)}),a[28]=t.lastModified,a[29]=w):w=a[29],a[30]!==k||a[31]!==w?(N=i.jsxs("div",{className:"flex flex-col gap-1 items-end",children:[k,w]}),a[30]=k,a[31]=w,a[32]=N):N=a[32],a[33]!==j||a[34]!==N||a[35]!==l||a[36]!==c||a[37]!==d||a[38]!==u?(_=i.jsxs("a",{className:l,href:d,target:u,children:[j,N]},c),a[33]=j,a[34]=N,a[35]=l,a[36]=c,a[37]=d,a[38]=u,a[39]=_):_=a[39],_},Ie=e=>{const a=r.c(9),{filePath:t}=e,{openConfirm:s,closeModal:n}=u(),{runningNotebooks:l,setRunningNotebooks:c}=o.useContext(pe);if(!l.has(t))return null;let d,m,x;return a[0]!==n||a[1]!==t||a[2]!==s||a[3]!==l||a[4]!==c?(d=e=>{e.stopPropagation(),e.preventDefault(),s({title:"Shutdown",description:"This will terminate the Python kernel. You'll lose all data that's in memory.",variant:"destructive",confirmAction:i.jsx(C,{onClick:e=>{const a=l.get(t);M(a),I({sessionId:a.sessionId}).then((e=>{c(h.keyBy(e.files,He))})),n(),P({description:"Notebook has been shutdown."})},"aria-label":"Confirm Shutdown",children:"Shutdown"})})},a[0]=n,a[1]=t,a[2]=s,a[3]=l,a[4]=c,a[5]=d):d=a[5],a[6]===Symbol.for("react.memo_cache_sentinel")?(m=i.jsx(le,{size:14}),a[6]=m):m=a[6],a[7]!==d?(x=i.jsx(D,{content:"Shutdown",children:i.jsx(O,{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-[var(--red-1)]",onClick:d,children:m})}),a[7]=d,a[8]=x):x=a[8],x},Pe=()=>{const e=r.c(3);let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=T(),e[0]=a):a=e[0];const t=a;let s,o;return e[1]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsx("h2",{className:"text-lg font-semibold",children:"Create a new notebook"}),e[1]=s):s=e[1],e[2]===Symbol.for("react.memo_cache_sentinel")?(o=i.jsxs("a",{className:"relative rounded-lg p-6 group\n text-primary hover:bg-[var(--blue-2)] shadow-mdSolid shadow-accent border\n transition-all duration-300 cursor-pointer\n ",href:t,target:"_blank",rel:"noreferrer",children:[s,i.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:i.jsx(z,{size:24})})]}),e[2]=o):o=e[2],o},De={intro:["Introduction",de],dataflow:["Dataflow",ce],ui:["UI Elements",ue],markdown:["Markdown",L],plots:["Plots",me],sql:["SQL",B],layout:["Layout",ie],fileformat:["File format",W],"for-jupyter-users":["For Jupyter users",fe],"markdown-format":["Markdown format",ne]},Oe=()=>{const e=r.c(3);let a,t,s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx(xe,{className:"w-4 h-4 mr-2"}),e[0]=a):a=e[0],e[1]===Symbol.for("react.memo_cache_sentinel")?(t=i.jsx(E,{asChild:!0,children:i.jsxs(O,{"data-testid":"open-tutorial-button",size:"xs",variant:"outline",children:[a,"Tutorials",i.jsx(F,{className:"w-3 h-3 ml-1"})]})}),e[1]=t):t=e[1],e[2]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsxs($,{children:[t,i.jsx(R,{side:"bottom",className:"no-print",children:A.entries(De).map(Ve)})]}),e[2]=s):s=e[2],s};function Te(){return c()}function $e(e){return e+1}function Re(e){return e.path}async function Ae(){const e=await d();return h.keyBy(e.files,Re)}function We(e){return e.path}function Be(){return null}function Le(e){return i.jsx(Me,{file:e},e.path)}function He(e){return e.path}function Ve(e){const[a,t]=e,[s,r]=t;return i.jsxs(H,{onSelect:async()=>{const e=await V({tutorialId:a});e&&window.open(x(`?file=${e.path}`).toString(),"_blank")},children:[i.jsx(r,{strokeWidth:1.5,className:"w-4 h-4 mr-2"}),s]},a)}export{ve as default};