shioricode 0.4.20 → 0.4.21

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 (75) hide show
  1. package/dist/bin.cjs +13117 -12448
  2. package/dist/bin.mjs +13155 -12486
  3. package/dist/client/assets/{ArtifactPanel-DhNMewF_.js → ArtifactPanel-CdR4rtqI.js} +2 -2
  4. package/dist/client/assets/{ChatMarkdown-CQLSgdaS.js → ChatMarkdown-LC7VQG0i.js} +2 -2
  5. package/dist/client/assets/{DiffPanel-IxDswq5p.js → DiffPanel-Dj0UZJm3.js} +3 -3
  6. package/dist/client/assets/DiffPanelShell-xseg5JQo.js +2 -0
  7. package/dist/client/assets/{DiffWorkerPoolProvider-dhrEONTb.js → DiffWorkerPoolProvider-D6XJdZWI.js} +2 -2
  8. package/dist/client/assets/NoActiveThreadState-CQmuWJhb.js +2 -0
  9. package/dist/client/assets/ProviderModelPicker-Bze2CcYx.js +2 -0
  10. package/dist/client/assets/SettingsPanels-DqCqBUI7.js +4 -0
  11. package/dist/client/assets/_chat-CKouNPVs.js +2 -0
  12. package/dist/client/assets/_chat._threadId-CU4xs7Dd.js +289 -0
  13. package/dist/client/assets/{_chat.index-B4NLV9mk.js → _chat.index-20AQsDPh.js} +2 -2
  14. package/dist/client/assets/automations-CWJGpvWf.js +2 -0
  15. package/dist/client/assets/{badge-BaTrdaZE.js → badge-1VUDnpuQ.js} +2 -2
  16. package/dist/client/assets/clientSettings-5THztvzS.js +2 -0
  17. package/dist/client/assets/{collapsible-DfWqkHJg.js → collapsible--nYYN5Zg.js} +2 -2
  18. package/dist/client/assets/{dialog-DjTpVApd.js → dialog-BzCtORYk.js} +2 -2
  19. package/dist/client/assets/{empty-Be-8qJMT.js → empty-DrPVL67l.js} +2 -2
  20. package/dist/client/assets/{gitReactQuery-TUte-oT5.js → gitReactQuery-Be_6T0Ee.js} +2 -2
  21. package/dist/client/assets/index-B58EBW6O.js +6 -0
  22. package/dist/client/assets/index-Cr2B1Z-_.css +2 -0
  23. package/dist/client/assets/{input-CE9hmpu7.js → input-DWDmgkdY.js} +2 -2
  24. package/dist/client/assets/pull-requests-Doz3BMXH.js +46 -0
  25. package/dist/client/assets/queuedTurnsStore-CIDk30NZ.js +2 -0
  26. package/dist/client/assets/{scroll-area-CbQzkLT_.js → scroll-area-CFMQ9e4_.js} +2 -2
  27. package/dist/client/assets/{separator-DI5DQ7Ks.js → separator-BdZ-ET3V.js} +2 -2
  28. package/dist/client/assets/settings-BGn4mjTS.js +2 -0
  29. package/dist/client/assets/settings.appearance-Ckvmtwdi.js +2 -0
  30. package/dist/client/assets/settings.archived-2t5UQQrc.js +2 -0
  31. package/dist/client/assets/{settings.computer-use-tZN9IYDg.js → settings.computer-use-Dfj_6GTK.js} +2 -2
  32. package/dist/client/assets/{settings.credits-BpgwqbI7.js → settings.credits-BUY8PBTc.js} +2 -2
  33. package/dist/client/assets/settings.general-Bvydzs1m.js +2 -0
  34. package/dist/client/assets/settings.mcp-Byoxze4F.js +2 -0
  35. package/dist/client/assets/{settings.mobile-PxkOX11C.js → settings.mobile-BUu4CP8r.js} +2 -2
  36. package/dist/client/assets/{settings.plugins-CQejJM2o.js → settings.plugins-CAvGUyw-.js} +2 -2
  37. package/dist/client/assets/settings.remote-BaGj1Eao.js +2 -0
  38. package/dist/client/assets/{settings.skills-Cg57qd7S.js → settings.skills-B-UfH45M.js} +2 -2
  39. package/dist/client/assets/{settings.theme-builder-DUu9nCmf.js → settings.theme-builder-DYn2dp1p.js} +2 -2
  40. package/dist/client/assets/{skillsMcpShared-CGi0RTQJ.js → skillsMcpShared-RFZJX9uG.js} +2 -2
  41. package/dist/client/assets/store-KYb5gyLf.js +12 -0
  42. package/dist/client/assets/{terminalStateStore-COv6Fwmt.js → terminalStateStore-DBL14uZB.js} +2 -2
  43. package/dist/client/assets/{textarea-CFQ0q5G1.js → textarea-CeNMtAmc.js} +2 -2
  44. package/dist/client/assets/{toggle-CwB81Wb2.js → toggle-BR_nJmIu.js} +2 -2
  45. package/dist/client/assets/{toggle-group-B4poMzYg.js → toggle-group-Tr8y9Pwx.js} +2 -2
  46. package/dist/client/assets/{uiStateStore-DsIsCBO9.js → uiStateStore-CC1coFoR.js} +2 -2
  47. package/dist/client/assets/{useHandleNewThread-DtShg-Gb.js → useHandleNewThread-CRjy_n7m.js} +2 -2
  48. package/dist/client/assets/useSettings-CvQQz7AW.js +2 -0
  49. package/dist/client/assets/{useTheme-CpDK1jpf.js → useTheme-D0lWhUH9.js} +2 -2
  50. package/dist/client/assets/utils-D1UgimcN.js +2 -0
  51. package/dist/client/assets/{vendor-effect-DldSDsna.js → vendor-effect-Chd9hYxF.js} +1 -1
  52. package/dist/client/assets/{vendor-ui-D-080HIn.js → vendor-ui-CJZCHXkp.js} +2 -2
  53. package/dist/client/index.html +15 -15
  54. package/package.json +1 -1
  55. package/dist/client/assets/DiffPanelShell-BYPngGr7.js +0 -2
  56. package/dist/client/assets/NoActiveThreadState-BhsV4knw.js +0 -2
  57. package/dist/client/assets/ProviderModelPicker-DvZxygLs.js +0 -2
  58. package/dist/client/assets/SettingsPanels-CcxbSb2Y.js +0 -4
  59. package/dist/client/assets/_chat-BKEfH7bm.js +0 -2
  60. package/dist/client/assets/_chat._threadId-CKYAWkIl.js +0 -289
  61. package/dist/client/assets/automations-BaROU0my.js +0 -2
  62. package/dist/client/assets/clientSettings-333fq8u7.js +0 -2
  63. package/dist/client/assets/index-DO0-ySqI.js +0 -6
  64. package/dist/client/assets/index-Hee7CrbY.css +0 -2
  65. package/dist/client/assets/pull-requests-D0RjDNry.js +0 -46
  66. package/dist/client/assets/queuedTurnsStore-C44-Rdam.js +0 -2
  67. package/dist/client/assets/settings-DYPhYb14.js +0 -2
  68. package/dist/client/assets/settings.appearance-DcK3XBNk.js +0 -2
  69. package/dist/client/assets/settings.archived-bTn7EzG_.js +0 -2
  70. package/dist/client/assets/settings.general-C_Aq9Mn4.js +0 -2
  71. package/dist/client/assets/settings.mcp-BnzVTWcW.js +0 -2
  72. package/dist/client/assets/settings.remote-BlV5n30n.js +0 -2
  73. package/dist/client/assets/store-8a4nbwgb.js +0 -12
  74. package/dist/client/assets/useSettings-Bof_skNF.js +0 -2
  75. package/dist/client/assets/utils-X2TItr-k.js +0 -2
@@ -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-DxB_J8A7.js";import{c as o}from"./vendor--lexical-react-Dg6NVZQt.js";import"./vendor-effect-DldSDsna.js";import{m as s,s as c}from"./clientSettings-333fq8u7.js";import{t as l}from"./utils-X2TItr-k.js";import{Dr as u,On as d,Vn as f,dr as p,jr as m,xr as h}from"./vendor-ui-D-080HIn.js";import"./vendor-diffs-CBk6gACd.js";import{G as g,U as _,W as v,a as y,i as b,nt as x,u as S}from"./index-DO0-ySqI.js";import{a as C,f as w,n as T,o as E,t as D}from"./DiffPanelShell-BYPngGr7.js";import{t as O}from"./useTheme-CpDK1jpf.js";import"./vendor--shikijs-core-BAnPeRVm.js";import"./vendor-hast-util-to-jsx-runtime-Dkh1YHjw.js";import"./vendor-hast-util-raw-ryote2N_.js";import"./vendor-extend-BluXZM4M.js";import"./vendor-katex-VTL7DqQH.js";import{n as ee,t as k}from"./ChatMarkdown-CQLSgdaS.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:y,onViewModeChange:b,relativePath:x,resolvedTheme:S,viewMode:C}=e,w=r?.relativePath??x??`Artifact`,T;t[0]!==w||t[1]!==S?(T=(0,M.jsx)(ee,{pathValue:w,kind:`file`,theme:S,className:`size-4 shrink-0`}),t[0]=w,t[1]=S,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]!==b||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:()=>b(`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:()=>b(`source`),children:[(0,M.jsx)(m,{className:`size-3.5`}),`Source`]})]}):null,t[11]=r?.kind,t[12]=b,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)(d,{className:`size-3.5 animate-spin`}):(0,M.jsx)(u,{className:`size-3.5`}),t[15]=a,t[16]=F);let L;t[17]!==y||t[18]!==P||t[19]!==F?(L=(0,M.jsx)(g,{render:(0,M.jsx)(c,{"aria-label":`Save artifact`,disabled:P,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:y,children:F})}),t[17]=y,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)(v,{side:`bottom`,children:`Save artifact`}),t[21]=R):R=t[21];let z;t[22]===L?z=t[23]:(z=(0,M.jsxs)(_,{children:[L,R]}),t[22]=L,t[23]=z);let B=!x,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)(g,{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)(v,{side:`bottom`,children:`Open in editor`}),t[28]=U):U=t[28];let W;t[29]===H?W=t[30]:(W=(0,M.jsxs)(_,{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=y({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)(``),v=p.data,ee=v?.kind===`text`?v.contents??``:``,k=v?.kind===`text`&&g!==ee,N,P;t[3]===v?(N=t[4],P=t[5]):(N=()=>{if(v?.kind!==`text`){_(``),h(`preview`);return}_(v.contents??``),h(e=>F(v)?e:`source`)},P=[v],t[3]=v,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:b.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:b.readFile(n,l)}),x.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||S(e,w(l,n)).catch(V)},t[21]=n,t[22]=l,t[23]=K):K=t[23];let q=K,J=!!(v?.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]!==v||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:v,isDirty:Y,isSaving:G.isPending,relativePath:l,resolvedTheme:d,viewMode:m,onClose:c,onOpenInEditor:q,onSave:X,onViewModeChange:h}),t[27]=J,t[28]=v,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]!==v||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`}):v?(0,M.jsx)(z,{cwd:n,data:v,draft:g,viewMode:m,onDraftChange:_}):null,t[38]=p.error,t[39]=p.isError,t[40]=p.isLoading,t[41]=n,t[42]=v,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){x.add({type:`error`,title:`Failed to open artifact.`,description:e instanceof Error?e.message:`Unknown error`})}function H(e){x.add({type:`error`,title:`Failed to save artifact.`,description:e instanceof Error?e.message:`Unknown error`})}export{B as default};
2
- //# sourceMappingURL=ArtifactPanel-DhNMewF_.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-DxB_J8A7.js";import{c as o}from"./vendor--lexical-react-Dg6NVZQt.js";import{h as s,s as c}from"./clientSettings-5THztvzS.js";import"./vendor-effect-Chd9hYxF.js";import{t as l}from"./utils-D1UgimcN.js";import{Ar as u,Pr as d,Wn as f,jn as p,mr as m,wr as h}from"./vendor-ui-CJZCHXkp.js";import"./vendor-diffs-CBk6gACd.js";import{G as g,U as _,W as v,a as y,i as b,nt as x,u as S}from"./index-B58EBW6O.js";import{a as C,f as w,n as T,o as E,t as D}from"./DiffPanelShell-xseg5JQo.js";import{t as O}from"./useTheme-D0lWhUH9.js";import"./vendor--shikijs-core-BAnPeRVm.js";import"./vendor-hast-util-to-jsx-runtime-Dkh1YHjw.js";import"./vendor-hast-util-raw-ryote2N_.js";import"./vendor-extend-BluXZM4M.js";import"./vendor-katex-VTL7DqQH.js";import{n as ee,t as k}from"./ChatMarkdown-LC7VQG0i.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:y,onViewModeChange:b,relativePath:x,resolvedTheme:S,viewMode:C}=e,w=r?.relativePath??x??`Artifact`,T;t[0]!==w||t[1]!==S?(T=(0,M.jsx)(ee,{pathValue:w,kind:`file`,theme:S,className:`size-4 shrink-0`}),t[0]=w,t[1]=S,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]!==b||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:()=>b(`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:()=>b(`source`),children:[(0,M.jsx)(d,{className:`size-3.5`}),`Source`]})]}):null,t[11]=r?.kind,t[12]=b,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)(p,{className:`size-3.5 animate-spin`}):(0,M.jsx)(u,{className:`size-3.5`}),t[15]=a,t[16]=F);let L;t[17]!==y||t[18]!==P||t[19]!==F?(L=(0,M.jsx)(g,{render:(0,M.jsx)(c,{"aria-label":`Save artifact`,disabled:P,size:`icon-xs`,type:`button`,variant:`ghost`,onClick:y,children:F})}),t[17]=y,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)(v,{side:`bottom`,children:`Save artifact`}),t[21]=R):R=t[21];let z;t[22]===L?z=t[23]:(z=(0,M.jsxs)(_,{children:[L,R]}),t[22]=L,t[23]=z);let B=!x,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)(g,{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)(v,{side:`bottom`,children:`Open in editor`}),t[28]=U):U=t[28];let W;t[29]===H?W=t[30]:(W=(0,M.jsxs)(_,{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=y({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)(``),v=p.data,ee=v?.kind===`text`?v.contents??``:``,k=v?.kind===`text`&&g!==ee,N,P;t[3]===v?(N=t[4],P=t[5]):(N=()=>{if(v?.kind!==`text`){_(``),h(`preview`);return}_(v.contents??``),h(e=>F(v)?e:`source`)},P=[v],t[3]=v,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:b.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:b.readFile(n,l)}),x.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||S(e,w(l,n)).catch(V)},t[21]=n,t[22]=l,t[23]=K):K=t[23];let q=K,J=!!(v?.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]!==v||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:v,isDirty:Y,isSaving:G.isPending,relativePath:l,resolvedTheme:d,viewMode:m,onClose:c,onOpenInEditor:q,onSave:X,onViewModeChange:h}),t[27]=J,t[28]=v,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]!==v||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`}):v?(0,M.jsx)(z,{cwd:n,data:v,draft:g,viewMode:m,onDraftChange:_}):null,t[38]=p.error,t[39]=p.isError,t[40]=p.isLoading,t[41]=n,t[42]=v,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){x.add({type:`error`,title:`Failed to open artifact.`,description:e instanceof Error?e.message:`Unknown error`})}function H(e){x.add({type:`error`,title:`Failed to save artifact.`,description:e instanceof Error?e.message:`Unknown error`})}export{B as default};
2
+ //# sourceMappingURL=ArtifactPanel-CdR4rtqI.js.map