shioricode 0.5.1 → 0.5.2

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.
Files changed (68) hide show
  1. package/dist/bin.mjs +1 -1
  2. package/dist/client/apple-touch-icon.png +0 -0
  3. package/dist/client/assets/{ArtifactPanel-1Tg5ZLm5.js → ArtifactPanel-BPQ8FX7l.js} +2 -2
  4. package/dist/client/assets/{ChatMarkdown-BvwoXC6z.js → ChatMarkdown-jcE8Pq97.js} +2 -2
  5. package/dist/client/assets/{DiffPanel-D-xp36wD.js → DiffPanel-CPmbtIC0.js} +3 -3
  6. package/dist/client/assets/{DiffPanelShell-DdBr4p9c.js → DiffPanelShell-CqS9jPrk.js} +2 -2
  7. package/dist/client/assets/{DiffWorkerPoolProvider--93ReMXi.js → DiffWorkerPoolProvider-CEnxoS9v.js} +2 -2
  8. package/dist/client/assets/{NoActiveThreadState-B_C5Y_aO.js → NoActiveThreadState-Bt_jFQ4-.js} +2 -2
  9. package/dist/client/assets/{ProviderModelPicker-BWTkQW8f.js → ProviderModelPicker-BRDu3BzU.js} +2 -2
  10. package/dist/client/assets/SettingsPanels-BX2dAbn4.js +4 -0
  11. package/dist/client/assets/{_chat-BhqvWJHj.js → _chat-C_aCgqFw.js} +2 -2
  12. package/dist/client/assets/_chat._threadId-DLIOcnXQ.js +289 -0
  13. package/dist/client/assets/{_chat.index-oZTnMcB3.js → _chat.index-B9u7xlCv.js} +2 -2
  14. package/dist/client/assets/automations-CJVFqqLv.js +2 -0
  15. package/dist/client/assets/{badge-BkzSFcY-.js → badge-iReKY3O4.js} +2 -2
  16. package/dist/client/assets/{clientSettings--1UP2ayD.js → clientSettings-DFgmWajw.js} +2 -2
  17. package/dist/client/assets/{collapsible-CqRg_DyH.js → collapsible-BEW6Xu4N.js} +2 -2
  18. package/dist/client/assets/{dialog-C7Ppq2qI.js → dialog-BwIZs3EF.js} +2 -2
  19. package/dist/client/assets/{gitReactQuery-BBOGuHot.js → gitReactQuery-BxToLb49.js} +2 -2
  20. package/dist/client/assets/{index-DvBh1mNh.js → index-DKZPXV4a.js} +5 -5
  21. package/dist/client/assets/{input-emuaAuIe.js → input-CthhcRBE.js} +2 -2
  22. package/dist/client/assets/pull-requests-CQHYo-fV.js +46 -0
  23. package/dist/client/assets/{queuedTurnsStore-I4LoXHLF.js → queuedTurnsStore-CYufNsaQ.js} +2 -2
  24. package/dist/client/assets/{scroll-area-kK2XF1gm.js → scroll-area-D6P_hAXV.js} +2 -2
  25. package/dist/client/assets/{separator-CSqq2xHm.js → separator-ByukCTaZ.js} +2 -2
  26. package/dist/client/assets/{settings-C9R1j3GG.js → settings-i7-rb7s9.js} +2 -2
  27. package/dist/client/assets/{settings.appearance-Cac_fbGk.js → settings.appearance-Dwkl1cOq.js} +2 -2
  28. package/dist/client/assets/settings.archived-DZPSjNZJ.js +2 -0
  29. package/dist/client/assets/{settings.computer-use-BL801Zu5.js → settings.computer-use-CLy6GP7W.js} +2 -2
  30. package/dist/client/assets/{settings.credits-Brx-cGXe.js → settings.credits-DiXAbJQa.js} +2 -2
  31. package/dist/client/assets/settings.general-CuNCor2d.js +2 -0
  32. package/dist/client/assets/{settings.mcp-DEMm4v5q.js → settings.mcp-DwWQDGSB.js} +2 -2
  33. package/dist/client/assets/{settings.mobile-DF1raoba.js → settings.mobile-B73fICiz.js} +2 -2
  34. package/dist/client/assets/{settings.plugins-CewrpoKP.js → settings.plugins-BjW05gj4.js} +2 -2
  35. package/dist/client/assets/{settings.remote-BufK_lG_.js → settings.remote-D_iWhzEN.js} +2 -2
  36. package/dist/client/assets/{settings.skills-Cz9xy1ba.js → settings.skills-BCB4uvnE.js} +2 -2
  37. package/dist/client/assets/{settings.theme-builder-BU_DRAvo.js → settings.theme-builder-CS2XB4es.js} +2 -2
  38. package/dist/client/assets/{skillsMcpShared-DxxY1mEt.js → skillsMcpShared-CiunLdEL.js} +2 -2
  39. package/dist/client/assets/{store-BQMb1nBV.js → store-LT9wKN7R.js} +3 -3
  40. package/dist/client/assets/{terminalStateStore-C38k-Eaw.js → terminalStateStore-B-V7Awi_.js} +2 -2
  41. package/dist/client/assets/{textarea-DXuuOfmM.js → textarea-DAzODx1v.js} +2 -2
  42. package/dist/client/assets/{toggle-group-CvAnsecf.js → toggle-group-CMWeXyeK.js} +2 -2
  43. package/dist/client/assets/{toggle-nUm5N7vp.js → toggle-uzFsauJb.js} +2 -2
  44. package/dist/client/assets/{uiStateStore-Di3ieZaJ.js → uiStateStore-CgvPrTF8.js} +2 -2
  45. package/dist/client/assets/{useHandleNewThread-WYMZPumx.js → useHandleNewThread-Chs2blac.js} +2 -2
  46. package/dist/client/assets/{useSettings-DOuHg9jg.js → useSettings-CaigvboL.js} +2 -2
  47. package/dist/client/assets/{useTheme-Dhz9U3on.js → useTheme-7QjQMsSZ.js} +2 -2
  48. package/dist/client/assets/{vendor-ui-DmvKhMzf.js → vendor-ui-Ds9VgrYb.js} +2 -2
  49. package/dist/client/favicon-16x16.png +0 -0
  50. package/dist/client/favicon-32x32.png +0 -0
  51. package/dist/client/favicon.ico +0 -0
  52. package/dist/client/index.html +12 -12
  53. package/package.json +5 -38
  54. package/dist/BunHttpServer-BvXfeDdm.cjs +0 -375
  55. package/dist/BunPTY-l5TwbZzE.cjs +0 -91
  56. package/dist/BunServices-07vLsX26.cjs +0 -74
  57. package/dist/NodeHttpServer-OQzpZjfj.cjs +0 -4142
  58. package/dist/NodePTY-BNeKL1sW.cjs +0 -86
  59. package/dist/NodeSqliteClient-K1HOOjni.cjs +0 -147
  60. package/dist/SqlError-UTW5yuSG.cjs +0 -262
  61. package/dist/SqliteClient-CVOnk2wf.cjs +0 -125
  62. package/dist/bin.cjs +0 -703456
  63. package/dist/client/assets/SettingsPanels-DGYlfoWv.js +0 -4
  64. package/dist/client/assets/_chat._threadId-Blwb3CRP.js +0 -289
  65. package/dist/client/assets/automations-ChGelqHO.js +0 -2
  66. package/dist/client/assets/pull-requests-xKFO2G81.js +0 -46
  67. package/dist/client/assets/settings.archived-KRU4XARw.js +0 -2
  68. package/dist/client/assets/settings.general-BXcV60tY.js +0 -2
package/dist/bin.mjs CHANGED
@@ -219725,7 +219725,7 @@ const getTelemetryIdentifier = gen$5(function* () {
219725
219725
 
219726
219726
  //#endregion
219727
219727
  //#region package.json
219728
- var version$1 = "0.5.1";
219728
+ var version$1 = "0.5.2";
219729
219729
 
219730
219730
  //#endregion
219731
219731
  //#region src/telemetry/Layers/AnalyticsService.ts
Binary file
@@ -1,2 +1,2 @@
1
- import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{c as r,d as i,m as a}from"./vendor-tanstack-CM5SpFmF.js";import{c as o}from"./vendor--lexical-react-B6TeCrpE.js";import{h as s,s as c}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{t as l}from"./utils-B-Di8CjF.js";import{An as u,Or as d,Sr as f,Un as p,fr as m,jr as h}from"./vendor-ui-DmvKhMzf.js";import"./vendor-diffs-TCBcYN7E.js";import{G as g,K as _,a as v,d as y,it as b,o as x,q as S}from"./index-DvBh1mNh.js";import{a as C,f as w,n as T,o as E,t as D}from"./DiffPanelShell-DdBr4p9c.js";import{t as O}from"./useTheme-Dhz9U3on.js";import"./vendor--shikijs-core-BvuCEFk2.js";import"./vendor-hast-util-to-jsx-runtime-Cj_7lYX5.js";import"./vendor-hast-util-raw-DrJxi__t.js";import"./vendor-extend-BW3CRMi7.js";import"./vendor-katex-C_40Fys8.js";import{n as ee,t as k}from"./ChatMarkdown-BvwoXC6z.js";var A=n(),j=e(t(),1),M=o(),N=new Set([`.md`,`.mdx`,`.markdown`]);function P(e){let t=e.split(`/`).pop()??e,n=t.lastIndexOf(`.`);return n>0?t.slice(n).toLowerCase():``}function F(e){return e.kind===`text`&&(e.mimeType===`text/markdown`||N.has(P(e.relativePath)))}function I(e){if(e<1024)return`${e} B`;let t=e/1024;if(t<1024)return`${t.toFixed(t>=10?0:1)} KB`;let n=t/1024;return`${n.toFixed(n>=10?0:1)} MB`}function L(e){let t=(0,A.c)(40),{canSave:n,data:r,isDirty:i,isSaving:a,onClose:o,onOpenInEditor:s,onSave:v,onViewModeChange:y,relativePath:b,resolvedTheme:x,viewMode:C}=e,w=r?.relativePath??b??`Artifact`,T;t[0]!==w||t[1]!==x?(T=(0,M.jsx)(ee,{pathValue:w,kind:`file`,theme:x,className:`size-4 shrink-0`}),t[0]=w,t[1]=x,t[2]=T):T=t[2];let E;t[3]===w?E=t[4]:(E=(0,M.jsx)(`div`,{className:`truncate font-mono text-[13px] font-medium text-foreground`,children:w}),t[3]=w,t[4]=E);let D=r?`${r.kind} · ${I(r.sizeBytes)}`:`Workspace artifact`,O=i?` · unsaved`:``,k;t[5]!==D||t[6]!==O?(k=(0,M.jsxs)(`div`,{className:`truncate text-[11px] text-muted-foreground`,children:[D,O]}),t[5]=D,t[6]=O,t[7]=k):k=t[7];let j;t[8]!==E||t[9]!==k?(j=(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[E,k]}),t[8]=E,t[9]=k,t[10]=j):j=t[10];let N;t[11]!==r?.kind||t[12]!==y||t[13]!==C?(N=r?.kind===`text`?(0,M.jsxs)(`div`,{className:`flex shrink-0 items-center rounded-md border border-border/70 bg-background/60 p-0.5`,children:[(0,M.jsxs)(c,{"aria-pressed":C===`preview`,className:l(`h-6 gap-1 border-transparent px-2 text-xs shadow-none`,C===`preview`?`bg-accent text-foreground`:`text-muted-foreground`),size:`xs`,type:`button`,variant:`ghost`,onClick:()=>y(`preview`),children:[(0,M.jsx)(f,{className:`size-3.5`}),`Preview`]}),(0,M.jsxs)(c,{"aria-pressed":C===`source`,className:l(`h-6 gap-1 border-transparent px-2 text-xs shadow-none`,C===`source`?`bg-accent text-foreground`:`text-muted-foreground`),size:`xs`,type:`button`,variant:`ghost`,onClick:()=>y(`source`),children:[(0,M.jsx)(h,{className:`size-3.5`}),`Source`]})]}):null,t[11]=r?.kind,t[12]=y,t[13]=C,t[14]=N):N=t[14];let P=!n||a,F;t[15]===a?F=t[16]:(F=a?(0,M.jsx)(u,{className:`size-3.5 animate-spin`}):(0,M.jsx)(d,{className:`size-3.5`}),t[15]=a,t[16]=F);let L;t[17]!==v||t[18]!==P||t[19]!==F?(L=(0,M.jsx)(S,{render:(0,M.jsx)(c,{"aria-label":`Save artifact`,disabled:P,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:v,children:F})}),t[17]=v,t[18]=P,t[19]=F,t[20]=L):L=t[20];let R;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,M.jsx)(_,{side:`bottom`,children:`Save artifact`}),t[21]=R):R=t[21];let z;t[22]===L?z=t[23]:(z=(0,M.jsxs)(g,{children:[L,R]}),t[22]=L,t[23]=z);let B=!b,V;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,M.jsx)(m,{className:`size-3.5`}),t[24]=V):V=t[24];let H;t[25]!==s||t[26]!==B?(H=(0,M.jsx)(S,{render:(0,M.jsx)(c,{"aria-label":`Open artifact in editor`,disabled:B,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:s,children:V})}),t[25]=s,t[26]=B,t[27]=H):H=t[27];let U;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,M.jsx)(_,{side:`bottom`,children:`Open in editor`}),t[28]=U):U=t[28];let W;t[29]===H?W=t[30]:(W=(0,M.jsxs)(g,{children:[H,U]}),t[29]=H,t[30]=W);let G;t[31]===o?G=t[32]:(G=o?(0,M.jsx)(c,{"aria-label":`Close artifact panel`,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:o,children:(0,M.jsx)(p,{className:`size-3.5`})}):null,t[31]=o,t[32]=G);let K;return t[33]!==T||t[34]!==z||t[35]!==W||t[36]!==G||t[37]!==j||t[38]!==N?(K=(0,M.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[T,j,N,z,W,G]}),t[33]=T,t[34]=z,t[35]=W,t[36]=G,t[37]=j,t[38]=N,t[39]=K):K=t[39],K}function R(e){let t=(0,A.c)(10),{cwd:n,data:r,draft:i,onDraftChange:a,viewMode:o}=e;if(o===`source`){let e;t[0]===a?e=t[1]:(e=e=>a(e.target.value),t[0]=a,t[1]=e);let n;return t[2]!==i||t[3]!==e?(n=(0,M.jsx)(`textarea`,{"aria-label":`Artifact source editor`,className:`h-full min-h-0 w-full resize-none overflow-auto border-0 bg-transparent p-4 font-mono text-[12.5px] leading-5 text-foreground outline-none selection:bg-primary/20`,spellCheck:!1,value:i,onChange:e}),t[2]=i,t[3]=e,t[4]=n):n=t[4],n}if(F(r)){let e=n??void 0,r;return t[5]!==i||t[6]!==e?(r=(0,M.jsx)(`div`,{className:`h-full min-h-0 overflow-auto px-5 py-4`,children:(0,M.jsx)(k,{text:i,cwd:e})}),t[5]=i,t[6]=e,t[7]=r):r=t[7],r}let s;return t[8]===i?s=t[9]:(s=(0,M.jsx)(`pre`,{className:`h-full min-h-0 overflow-auto whitespace-pre-wrap break-words p-4 font-mono text-[12.5px] leading-5 text-foreground`,children:i}),t[8]=i,t[9]=s),s}function z(e){let t=(0,A.c)(15),{cwd:n,data:r,draft:i,onDraftChange:a,viewMode:o}=e;if(r.kind===`text`){let e;return t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a||t[4]!==o?(e=(0,M.jsx)(R,{cwd:n,data:r,draft:i,viewMode:o,onDraftChange:a}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=e):e=t[5],e}if(r.kind===`image`&&r.dataUrl){let e;return t[6]!==r.dataUrl||t[7]!==r.relativePath?(e=(0,M.jsx)(`div`,{className:`flex h-full min-h-0 items-center justify-center overflow-auto bg-muted/25 p-4`,children:(0,M.jsx)(`img`,{alt:r.relativePath,className:`max-h-full max-w-full object-contain`,src:r.dataUrl})}),t[6]=r.dataUrl,t[7]=r.relativePath,t[8]=e):e=t[8],e}if(r.kind===`pdf`&&r.dataUrl){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,M.jsx)(D,{title:`PDF preview unavailable`,description:`Open the artifact in your editor to inspect this PDF.`}),t[9]=e):e=t[9];let n;return t[10]!==r.dataUrl||t[11]!==r.relativePath?(n=(0,M.jsx)(`object`,{"aria-label":r.relativePath,className:`h-full min-h-0 w-full bg-background`,data:r.dataUrl,type:`application/pdf`,children:e}),t[10]=r.dataUrl,t[11]=r.relativePath,t[12]=n):n=t[12],n}let s=r.reason??`This artifact type cannot be previewed yet.`,c;return t[13]===s?c=t[14]:(c=(0,M.jsx)(D,{title:`Preview unavailable`,description:s}),t[13]=s,t[14]=c),c}function B(e){let t=(0,A.c)(51),{cwd:n,mode:o,onClose:c,relativePath:l}=e,u=a(),{resolvedTheme:d}=O(),f;t[0]!==n||t[1]!==l?(f=x({cwd:n,relativePath:l}),t[0]=n,t[1]=l,t[2]=f):f=t[2];let p=i(f),[m,h]=(0,j.useState)(`preview`),[g,_]=(0,j.useState)(``),S=p.data,ee=S?.kind===`text`?S.contents??``:``,k=S?.kind===`text`&&g!==ee,N,P;t[3]===S?(N=t[4],P=t[5]):(N=()=>{if(S?.kind!==`text`){_(``),h(`preview`);return}_(S.contents??``),h(e=>F(S)?e:`source`)},P=[S],t[3]=S,t[4]=N,t[5]=P),(0,j.useEffect)(N,P);let I,R;t[6]!==n||t[7]!==u||t[8]!==l?(I=()=>(_(``),h(`preview`),()=>{u.removeQueries({queryKey:v.readFile(n,l),exact:!0})}),R=[n,u,l],t[6]=n,t[7]=u,t[8]=l,t[9]=I,t[10]=R):(I=t[9],R=t[10]),(0,j.useEffect)(I,R);let B;t[11]!==n||t[12]!==l?(B=async e=>{let t=s();if(!t||!n||!l)throw Error(`Native API is unavailable.`);return t.projects.writeFile({cwd:n,relativePath:l,contents:e})},t[11]=n,t[12]=l,t[13]=B):B=t[13];let U;t[14]!==n||t[15]!==u||t[16]!==l?(U=async()=>{await u.invalidateQueries({queryKey:v.readFile(n,l)}),b.add({type:`success`,title:`Artifact saved.`})},t[14]=n,t[15]=u,t[16]=l,t[17]=U):U=t[17];let W;t[18]!==B||t[19]!==U?(W={mutationFn:B,onSuccess:U,onError:H},t[18]=B,t[19]=U,t[20]=W):W=t[20];let G=r(W),K;t[21]!==n||t[22]!==l?(K=()=>{let e=s();!e||!n||!l||y(e,w(l,n)).catch(V)},t[21]=n,t[22]=l,t[23]=K):K=t[23];let q=K,J=!!(S?.kind===`text`&&k&&n&&l),Y=!!k,X;t[24]!==g||t[25]!==G?(X=()=>G.mutate(g),t[24]=g,t[25]=G,t[26]=X):X=t[26];let Z;t[27]!==J||t[28]!==S||t[29]!==c||t[30]!==q||t[31]!==l||t[32]!==d||t[33]!==G.isPending||t[34]!==Y||t[35]!==X||t[36]!==m?(Z=(0,M.jsx)(L,{canSave:J,data:S,isDirty:Y,isSaving:G.isPending,relativePath:l,resolvedTheme:d,viewMode:m,onClose:c,onOpenInEditor:q,onSave:X,onViewModeChange:h}),t[27]=J,t[28]=S,t[29]=c,t[30]=q,t[31]=l,t[32]=d,t[33]=G.isPending,t[34]=Y,t[35]=X,t[36]=m,t[37]=Z):Z=t[37];let te=Z,Q;t[38]!==p.error||t[39]!==p.isError||t[40]!==p.isLoading||t[41]!==n||t[42]!==S||t[43]!==g||t[44]!==l||t[45]!==m?(Q=!n||!l?(0,M.jsx)(D,{title:`No artifact selected`,description:`Open a changed file from the conversation to preview or edit it.`}):p.isLoading?(0,M.jsx)(C,{label:`Loading artifact`}):p.isError?(0,M.jsx)(T,{title:`Unable to load artifact`,description:p.error instanceof Error?p.error.message:`Unknown error`}):S?(0,M.jsx)(z,{cwd:n,data:S,draft:g,viewMode:m,onDraftChange:_}):null,t[38]=p.error,t[39]=p.isError,t[40]=p.isLoading,t[41]=n,t[42]=S,t[43]=g,t[44]=l,t[45]=m,t[46]=Q):Q=t[46];let $;return t[47]!==te||t[48]!==o||t[49]!==Q?($=(0,M.jsx)(E,{mode:o,header:te,children:Q}),t[47]=te,t[48]=o,t[49]=Q,t[50]=$):$=t[50],$}function V(e){b.add({type:`error`,title:`Failed to open artifact.`,description:e instanceof Error?e.message:`Unknown error`})}function H(e){b.add({type:`error`,title:`Failed to save artifact.`,description:e instanceof Error?e.message:`Unknown error`})}export{B as default};
2
- //# sourceMappingURL=ArtifactPanel-1Tg5ZLm5.js.map
1
+ import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{c as r,d as i,m as a}from"./vendor-tanstack-CM5SpFmF.js";import{c as o}from"./vendor--lexical-react-B6TeCrpE.js";import{h as s,s as c}from"./clientSettings-DFgmWajw.js";import"./vendor-effect-Chd9hYxF.js";import{t as l}from"./utils-B-Di8CjF.js";import{Ar as u,Dr as d,Hn as f,dr as p,kn as m,xr as h}from"./vendor-ui-Ds9VgrYb.js";import"./vendor-diffs-TCBcYN7E.js";import{G as g,K as _,a as v,d as y,it as b,o as x,q as S}from"./index-DKZPXV4a.js";import{a as C,f as w,n as T,o as E,t as D}from"./DiffPanelShell-CqS9jPrk.js";import{t as O}from"./useTheme-7QjQMsSZ.js";import"./vendor--shikijs-core-BvuCEFk2.js";import"./vendor-hast-util-to-jsx-runtime-Cj_7lYX5.js";import"./vendor-hast-util-raw-DrJxi__t.js";import"./vendor-extend-BW3CRMi7.js";import"./vendor-katex-C_40Fys8.js";import{n as ee,t as k}from"./ChatMarkdown-jcE8Pq97.js";var A=n(),j=e(t(),1),M=o(),N=new Set([`.md`,`.mdx`,`.markdown`]);function P(e){let t=e.split(`/`).pop()??e,n=t.lastIndexOf(`.`);return n>0?t.slice(n).toLowerCase():``}function F(e){return e.kind===`text`&&(e.mimeType===`text/markdown`||N.has(P(e.relativePath)))}function I(e){if(e<1024)return`${e} B`;let t=e/1024;if(t<1024)return`${t.toFixed(t>=10?0:1)} KB`;let n=t/1024;return`${n.toFixed(n>=10?0:1)} MB`}function L(e){let t=(0,A.c)(40),{canSave:n,data:r,isDirty:i,isSaving:a,onClose:o,onOpenInEditor:s,onSave:v,onViewModeChange:y,relativePath:b,resolvedTheme:x,viewMode:C}=e,w=r?.relativePath??b??`Artifact`,T;t[0]!==w||t[1]!==x?(T=(0,M.jsx)(ee,{pathValue:w,kind:`file`,theme:x,className:`size-4 shrink-0`}),t[0]=w,t[1]=x,t[2]=T):T=t[2];let E;t[3]===w?E=t[4]:(E=(0,M.jsx)(`div`,{className:`truncate font-mono text-[13px] font-medium text-foreground`,children:w}),t[3]=w,t[4]=E);let D=r?`${r.kind} · ${I(r.sizeBytes)}`:`Workspace artifact`,O=i?` · unsaved`:``,k;t[5]!==D||t[6]!==O?(k=(0,M.jsxs)(`div`,{className:`truncate text-[11px] text-muted-foreground`,children:[D,O]}),t[5]=D,t[6]=O,t[7]=k):k=t[7];let j;t[8]!==E||t[9]!==k?(j=(0,M.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[E,k]}),t[8]=E,t[9]=k,t[10]=j):j=t[10];let N;t[11]!==r?.kind||t[12]!==y||t[13]!==C?(N=r?.kind===`text`?(0,M.jsxs)(`div`,{className:`flex shrink-0 items-center rounded-md border border-border/70 bg-background/60 p-0.5`,children:[(0,M.jsxs)(c,{"aria-pressed":C===`preview`,className:l(`h-6 gap-1 border-transparent px-2 text-xs shadow-none`,C===`preview`?`bg-accent text-foreground`:`text-muted-foreground`),size:`xs`,type:`button`,variant:`ghost`,onClick:()=>y(`preview`),children:[(0,M.jsx)(h,{className:`size-3.5`}),`Preview`]}),(0,M.jsxs)(c,{"aria-pressed":C===`source`,className:l(`h-6 gap-1 border-transparent px-2 text-xs shadow-none`,C===`source`?`bg-accent text-foreground`:`text-muted-foreground`),size:`xs`,type:`button`,variant:`ghost`,onClick:()=>y(`source`),children:[(0,M.jsx)(u,{className:`size-3.5`}),`Source`]})]}):null,t[11]=r?.kind,t[12]=y,t[13]=C,t[14]=N):N=t[14];let P=!n||a,F;t[15]===a?F=t[16]:(F=a?(0,M.jsx)(m,{className:`size-3.5 animate-spin`}):(0,M.jsx)(d,{className:`size-3.5`}),t[15]=a,t[16]=F);let L;t[17]!==v||t[18]!==P||t[19]!==F?(L=(0,M.jsx)(S,{render:(0,M.jsx)(c,{"aria-label":`Save artifact`,disabled:P,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:v,children:F})}),t[17]=v,t[18]=P,t[19]=F,t[20]=L):L=t[20];let R;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(R=(0,M.jsx)(_,{side:`bottom`,children:`Save artifact`}),t[21]=R):R=t[21];let z;t[22]===L?z=t[23]:(z=(0,M.jsxs)(g,{children:[L,R]}),t[22]=L,t[23]=z);let B=!b,V;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,M.jsx)(p,{className:`size-3.5`}),t[24]=V):V=t[24];let H;t[25]!==s||t[26]!==B?(H=(0,M.jsx)(S,{render:(0,M.jsx)(c,{"aria-label":`Open artifact in editor`,disabled:B,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:s,children:V})}),t[25]=s,t[26]=B,t[27]=H):H=t[27];let U;t[28]===Symbol.for(`react.memo_cache_sentinel`)?(U=(0,M.jsx)(_,{side:`bottom`,children:`Open in editor`}),t[28]=U):U=t[28];let W;t[29]===H?W=t[30]:(W=(0,M.jsxs)(g,{children:[H,U]}),t[29]=H,t[30]=W);let G;t[31]===o?G=t[32]:(G=o?(0,M.jsx)(c,{"aria-label":`Close artifact panel`,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:o,children:(0,M.jsx)(f,{className:`size-3.5`})}):null,t[31]=o,t[32]=G);let K;return t[33]!==T||t[34]!==z||t[35]!==W||t[36]!==G||t[37]!==j||t[38]!==N?(K=(0,M.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[T,j,N,z,W,G]}),t[33]=T,t[34]=z,t[35]=W,t[36]=G,t[37]=j,t[38]=N,t[39]=K):K=t[39],K}function R(e){let t=(0,A.c)(10),{cwd:n,data:r,draft:i,onDraftChange:a,viewMode:o}=e;if(o===`source`){let e;t[0]===a?e=t[1]:(e=e=>a(e.target.value),t[0]=a,t[1]=e);let n;return t[2]!==i||t[3]!==e?(n=(0,M.jsx)(`textarea`,{"aria-label":`Artifact source editor`,className:`h-full min-h-0 w-full resize-none overflow-auto border-0 bg-transparent p-4 font-mono text-[12.5px] leading-5 text-foreground outline-none selection:bg-primary/20`,spellCheck:!1,value:i,onChange:e}),t[2]=i,t[3]=e,t[4]=n):n=t[4],n}if(F(r)){let e=n??void 0,r;return t[5]!==i||t[6]!==e?(r=(0,M.jsx)(`div`,{className:`h-full min-h-0 overflow-auto px-5 py-4`,children:(0,M.jsx)(k,{text:i,cwd:e})}),t[5]=i,t[6]=e,t[7]=r):r=t[7],r}let s;return t[8]===i?s=t[9]:(s=(0,M.jsx)(`pre`,{className:`h-full min-h-0 overflow-auto whitespace-pre-wrap break-words p-4 font-mono text-[12.5px] leading-5 text-foreground`,children:i}),t[8]=i,t[9]=s),s}function z(e){let t=(0,A.c)(15),{cwd:n,data:r,draft:i,onDraftChange:a,viewMode:o}=e;if(r.kind===`text`){let e;return t[0]!==n||t[1]!==r||t[2]!==i||t[3]!==a||t[4]!==o?(e=(0,M.jsx)(R,{cwd:n,data:r,draft:i,viewMode:o,onDraftChange:a}),t[0]=n,t[1]=r,t[2]=i,t[3]=a,t[4]=o,t[5]=e):e=t[5],e}if(r.kind===`image`&&r.dataUrl){let e;return t[6]!==r.dataUrl||t[7]!==r.relativePath?(e=(0,M.jsx)(`div`,{className:`flex h-full min-h-0 items-center justify-center overflow-auto bg-muted/25 p-4`,children:(0,M.jsx)(`img`,{alt:r.relativePath,className:`max-h-full max-w-full object-contain`,src:r.dataUrl})}),t[6]=r.dataUrl,t[7]=r.relativePath,t[8]=e):e=t[8],e}if(r.kind===`pdf`&&r.dataUrl){let e;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,M.jsx)(D,{title:`PDF preview unavailable`,description:`Open the artifact in your editor to inspect this PDF.`}),t[9]=e):e=t[9];let n;return t[10]!==r.dataUrl||t[11]!==r.relativePath?(n=(0,M.jsx)(`object`,{"aria-label":r.relativePath,className:`h-full min-h-0 w-full bg-background`,data:r.dataUrl,type:`application/pdf`,children:e}),t[10]=r.dataUrl,t[11]=r.relativePath,t[12]=n):n=t[12],n}let s=r.reason??`This artifact type cannot be previewed yet.`,c;return t[13]===s?c=t[14]:(c=(0,M.jsx)(D,{title:`Preview unavailable`,description:s}),t[13]=s,t[14]=c),c}function B(e){let t=(0,A.c)(51),{cwd:n,mode:o,onClose:c,relativePath:l}=e,u=a(),{resolvedTheme:d}=O(),f;t[0]!==n||t[1]!==l?(f=x({cwd:n,relativePath:l}),t[0]=n,t[1]=l,t[2]=f):f=t[2];let p=i(f),[m,h]=(0,j.useState)(`preview`),[g,_]=(0,j.useState)(``),S=p.data,ee=S?.kind===`text`?S.contents??``:``,k=S?.kind===`text`&&g!==ee,N,P;t[3]===S?(N=t[4],P=t[5]):(N=()=>{if(S?.kind!==`text`){_(``),h(`preview`);return}_(S.contents??``),h(e=>F(S)?e:`source`)},P=[S],t[3]=S,t[4]=N,t[5]=P),(0,j.useEffect)(N,P);let I,R;t[6]!==n||t[7]!==u||t[8]!==l?(I=()=>(_(``),h(`preview`),()=>{u.removeQueries({queryKey:v.readFile(n,l),exact:!0})}),R=[n,u,l],t[6]=n,t[7]=u,t[8]=l,t[9]=I,t[10]=R):(I=t[9],R=t[10]),(0,j.useEffect)(I,R);let B;t[11]!==n||t[12]!==l?(B=async e=>{let t=s();if(!t||!n||!l)throw Error(`Native API is unavailable.`);return t.projects.writeFile({cwd:n,relativePath:l,contents:e})},t[11]=n,t[12]=l,t[13]=B):B=t[13];let U;t[14]!==n||t[15]!==u||t[16]!==l?(U=async()=>{await u.invalidateQueries({queryKey:v.readFile(n,l)}),b.add({type:`success`,title:`Artifact saved.`})},t[14]=n,t[15]=u,t[16]=l,t[17]=U):U=t[17];let W;t[18]!==B||t[19]!==U?(W={mutationFn:B,onSuccess:U,onError:H},t[18]=B,t[19]=U,t[20]=W):W=t[20];let G=r(W),K;t[21]!==n||t[22]!==l?(K=()=>{let e=s();!e||!n||!l||y(e,w(l,n)).catch(V)},t[21]=n,t[22]=l,t[23]=K):K=t[23];let q=K,J=!!(S?.kind===`text`&&k&&n&&l),Y=!!k,X;t[24]!==g||t[25]!==G?(X=()=>G.mutate(g),t[24]=g,t[25]=G,t[26]=X):X=t[26];let Z;t[27]!==J||t[28]!==S||t[29]!==c||t[30]!==q||t[31]!==l||t[32]!==d||t[33]!==G.isPending||t[34]!==Y||t[35]!==X||t[36]!==m?(Z=(0,M.jsx)(L,{canSave:J,data:S,isDirty:Y,isSaving:G.isPending,relativePath:l,resolvedTheme:d,viewMode:m,onClose:c,onOpenInEditor:q,onSave:X,onViewModeChange:h}),t[27]=J,t[28]=S,t[29]=c,t[30]=q,t[31]=l,t[32]=d,t[33]=G.isPending,t[34]=Y,t[35]=X,t[36]=m,t[37]=Z):Z=t[37];let te=Z,Q;t[38]!==p.error||t[39]!==p.isError||t[40]!==p.isLoading||t[41]!==n||t[42]!==S||t[43]!==g||t[44]!==l||t[45]!==m?(Q=!n||!l?(0,M.jsx)(D,{title:`No artifact selected`,description:`Open a changed file from the conversation to preview or edit it.`}):p.isLoading?(0,M.jsx)(C,{label:`Loading artifact`}):p.isError?(0,M.jsx)(T,{title:`Unable to load artifact`,description:p.error instanceof Error?p.error.message:`Unknown error`}):S?(0,M.jsx)(z,{cwd:n,data:S,draft:g,viewMode:m,onDraftChange:_}):null,t[38]=p.error,t[39]=p.isError,t[40]=p.isLoading,t[41]=n,t[42]=S,t[43]=g,t[44]=l,t[45]=m,t[46]=Q):Q=t[46];let $;return t[47]!==te||t[48]!==o||t[49]!==Q?($=(0,M.jsx)(E,{mode:o,header:te,children:Q}),t[47]=te,t[48]=o,t[49]=Q,t[50]=$):$=t[50],$}function V(e){b.add({type:`error`,title:`Failed to open artifact.`,description:e instanceof Error?e.message:`Unknown error`})}function H(e){b.add({type:`error`,title:`Failed to save artifact.`,description:e instanceof Error?e.message:`Unknown error`})}export{B as default};
2
+ //# sourceMappingURL=ArtifactPanel-BPQ8FX7l.js.map