tarsk 0.4.8 → 0.4.10

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 (59) hide show
  1. package/dist/index.js +272 -164
  2. package/dist/public/assets/account-view-D1x7ZeLs.js +1 -0
  3. package/dist/public/assets/add-agent-view-Ctbm0EgW.js +1 -0
  4. package/dist/public/assets/add-rule-view-xKAYGOl5.js +7 -0
  5. package/dist/public/assets/add-skill-view-D63xCrVn.js +1 -0
  6. package/dist/public/assets/add-slash-command-view-paJjkCml.js +1 -0
  7. package/dist/public/assets/browser-tab-CWkk3b20.js +1 -0
  8. package/dist/public/assets/conversation-history-view-BdJJ-7zE.js +1 -0
  9. package/dist/public/assets/{dialogs-config-DiFQjCeA.js → dialogs-config-CB7G-sX6.js} +13 -13
  10. package/dist/public/assets/diff-view-kPjfhf7_.js +3 -0
  11. package/dist/public/assets/file-tree-sidebar-D58ROyfi.js +1 -0
  12. package/dist/public/assets/files-tab-view-DhnLTfaB.js +2 -0
  13. package/dist/public/assets/files-view-C1vg37wD.js +1 -0
  14. package/dist/public/assets/history-view-D-hEB6Qt.js +1 -0
  15. package/dist/public/assets/index-D7yQjYyf.js +16 -0
  16. package/dist/public/assets/index-DVHw8RF4.css +1 -0
  17. package/dist/public/assets/mcp-manager-J9VCn8-1.js +1 -0
  18. package/dist/public/assets/{mcp-server-edit-view-BAwMNOAH.js → mcp-server-edit-view-yd_q5UVd.js} +3 -3
  19. package/dist/public/assets/mcp-servers-sidebar-Bwg40dY8.js +1 -0
  20. package/dist/public/assets/mcp-view-BYzQiRVC.js +1 -0
  21. package/dist/public/assets/onboarding-CxK4aR2J.js +1 -0
  22. package/dist/public/assets/onboarding-dialog-DX7DCkK0.js +1 -0
  23. package/dist/public/assets/project-settings-view-CkAqtfjP.js +1 -0
  24. package/dist/public/assets/provider-details-view-CzsPzv6h.js +1 -0
  25. package/dist/public/assets/{providers-sidebar-C4MF6i9d.js → providers-sidebar-BokZx2tk.js} +1 -1
  26. package/dist/public/assets/radio-group-BpmnaKJk.js +1 -0
  27. package/dist/public/assets/react-vendor-CR4cAsbx.js +17 -0
  28. package/dist/public/assets/settings-view-CoL0k8nt.js +2 -0
  29. package/dist/public/assets/side-panel-resizer-CVC2NC75.js +1 -0
  30. package/dist/public/assets/store-CxlaVYZ6.js +2 -0
  31. package/dist/public/assets/terminal-panel-Bv2hLEfW.js +2 -0
  32. package/dist/public/assets/todos-view-FJ5GkG21.js +1 -0
  33. package/dist/public/assets/{utils-DY_quHB8.js → utils-DVGxCyLB.js} +1 -1
  34. package/dist/public/index.html +9 -10
  35. package/package.json +1 -1
  36. package/dist/public/assets/add-agent-view-B9IQjAwU.js +0 -1
  37. package/dist/public/assets/add-rule-view-BdZHurB3.js +0 -7
  38. package/dist/public/assets/add-skill-view-Cuu6Z0fr.js +0 -1
  39. package/dist/public/assets/add-slash-command-view-uW75Jvbh.js +0 -1
  40. package/dist/public/assets/conversation-history-view-D0OBxJMC.js +0 -1
  41. package/dist/public/assets/diff-view-B5XBM5UZ.js +0 -3
  42. package/dist/public/assets/file-tree-sidebar-DMX7fHi7.js +0 -1
  43. package/dist/public/assets/files-view-CUZn7G0o.js +0 -1
  44. package/dist/public/assets/history-view-B8HM78Wa.js +0 -1
  45. package/dist/public/assets/index-C-p81QYw.js +0 -17
  46. package/dist/public/assets/index-DhVMb7D6.css +0 -1
  47. package/dist/public/assets/mcp-manager-CEm1L3dn.js +0 -1
  48. package/dist/public/assets/mcp-servers-sidebar-Ncxq9Oj5.js +0 -1
  49. package/dist/public/assets/mcp-view-Cz7nelGQ.js +0 -1
  50. package/dist/public/assets/onboarding-CvpvkF3X.js +0 -1
  51. package/dist/public/assets/onboarding-dialog-CKJw0ULj.js +0 -1
  52. package/dist/public/assets/project-settings-view-DJ1uvrTL.js +0 -1
  53. package/dist/public/assets/provider-details-view-CkS6WbnK.js +0 -1
  54. package/dist/public/assets/radio-group-BItFbSTw.js +0 -1
  55. package/dist/public/assets/react-vendor-DkKo9QGO.js +0 -17
  56. package/dist/public/assets/settings-view-C45kmAGH.js +0 -2
  57. package/dist/public/assets/store-BVVGurzl.js +0 -2
  58. package/dist/public/assets/use-toast-DEJkXPN4.js +0 -1
  59. /package/dist/public/assets/{monaco-DvsnxTfD.js → monaco-Cp3BWanQ.js} +0 -0
@@ -0,0 +1,7 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{Mi as t,Pi as n,Ut as r,Vr as i,c as a,dn as o,er as s,l as c,xi as l,xn as u}from"./dialogs-config-CB7G-sX6.js";import{i as d,r as f}from"./react-vendor-CR4cAsbx.js";import"./history-view-D-hEB6Qt.js";import{a as p,c as m}from"./index-D7yQjYyf.js";import{n as h,t as g}from"./radio-group-BpmnaKJk.js";var _=t(),v=e(n(),1),y=s(),b=v.forwardRef((e,t)=>{let n=(0,_.c)(10),r,i;n[0]===e?(r=n[1],i=n[2]):({className:r,...i}=e,n[0]=e,n[1]=r,n[2]=i);let a;n[3]===r?a=n[4]:(a=u(`peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input`,r),n[3]=r,n[4]=a);let o;n[5]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,y.jsx)(d,{className:u(`pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0`)}),n[5]=o):o=n[5];let s;return n[6]!==i||n[7]!==t||n[8]!==a?(s=(0,y.jsx)(f,{className:a,...i,ref:t,children:o}),n[6]=i,n[7]=t,n[8]=a,n[9]=s):s=n[9],s});b.displayName=f.displayName;function x({threadId:e,onRuleCreated:t}){let[n,s]=(0,v.useState)(``),[u,d]=(0,v.useState)(``),[f,_]=(0,v.useState)(!1),[x,S]=(0,v.useState)(`local`),[C,w]=(0,v.useState)(!1),T=n.toLowerCase().replace(/\s+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/-+/g,`-`).replace(/^-|-$/g,``),E=T.length>0&&T.length<=64;return e?(0,y.jsxs)(`div`,{className:`max-w-2xl mx-auto p-6`,children:[(0,y.jsxs)(`div`,{className:`mb-6`,children:[(0,y.jsx)(`h1`,{className:`text-2xl font-bold`,children:`Add Rule`}),(0,y.jsx)(`p`,{className:`text-muted-foreground`,children:`Create a new agent rule. The rule will be saved as a .md file in the .agents/rules folder.`})]}),(0,y.jsxs)(`div`,{className:`space-y-6`,children:[(0,y.jsxs)(`div`,{className:`space-y-2`,children:[(0,y.jsx)(c,{htmlFor:`ruleName`,children:`Rule Name`}),(0,y.jsx)(a,{id:`ruleName`,value:n,onChange:e=>s(e.target.value),placeholder:`e.g. Code Style Guide`,disabled:C}),n&&(0,y.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`File name: `,(0,y.jsxs)(`span`,{className:`font-mono`,children:[T||`...`,`.md`]})]})]}),(0,y.jsxs)(`div`,{className:`space-y-2`,children:[(0,y.jsx)(c,{htmlFor:`ruleDescription`,children:`Description`}),(0,y.jsx)(m,{id:`ruleDescription`,value:u,onChange:e=>d(e.target.value),placeholder:`Describe when Tarsk should apply this rule...`,className:`resize-none min-h-[120px]`,disabled:C})]}),(0,y.jsxs)(`div`,{className:`space-y-2`,children:[(0,y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,y.jsx)(c,{htmlFor:`alwaysApply`,children:`Always Apply`}),(0,y.jsx)(b,{id:`alwaysApply`,checked:f,onCheckedChange:_,disabled:C})]}),(0,y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:f?`This rule will be automatically added to context for all conversations.`:`Only the rule description will be added to context, allowing the agent to read the rule file when needed.`})]}),(0,y.jsxs)(`div`,{className:`space-y-2`,children:[(0,y.jsx)(c,{children:`Scope`}),(0,y.jsxs)(g,{value:x,onValueChange:e=>S(e),className:`flex gap-4`,disabled:C,children:[(0,y.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,y.jsx)(h,{value:`local`,id:`scope-local`}),(0,y.jsx)(c,{htmlFor:`scope-local`,className:`font-normal cursor-pointer`,children:`Local (this project)`})]}),(0,y.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,y.jsx)(h,{value:`global`,id:`scope-global`,disabled:!0}),(0,y.jsx)(c,{htmlFor:`scope-global`,className:`font-normal cursor-pointer text-muted-foreground`,children:`Global (coming soon)`})]})]}),(0,y.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:x===`local`?`This rule will only be available for this project.`:`This rule will be available across all projects (coming soon).`})]}),(0,y.jsx)(`div`,{className:`border-t pt-4 flex justify-end`,children:(0,y.jsx)(o,{onClick:async()=>{if(!(!E||!e)){w(!0);try{let n=`---
2
+ description: ${u.trim()}
3
+ alwaysApply: ${f}
4
+ ---
5
+
6
+ Place your rule instructions here as markdown.
7
+ `;await r(e,`.agents/rules/${T}.md`,n),p({title:`Rule created`,description:`Rule '${T}' was created successfully.`}),s(``),d(``),_(!1),S(`local`),t?.(T)}catch(e){p({title:`Error`,description:e instanceof Error?e.message:`Failed to create rule`,variant:`destructive`})}finally{w(!1)}}},disabled:!E||!u.trim()||C,children:C?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(i,{className:`mr-2 h-4 w-4 animate-spin`}),`Creating...`]}):(0,y.jsxs)(y.Fragment,{children:[`Continue`,(0,y.jsx)(l,{className:`ml-2 h-4 w-4`})]})})})]})]}):(0,y.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,y.jsxs)(`div`,{className:`text-center`,children:[(0,y.jsx)(`h2`,{className:`text-lg font-semibold text-muted-foreground mb-2`,children:`No Thread Selected`}),(0,y.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Please select a thread to add a rule.`})]})})}export{x as default};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{L as t,Pi as n,Vr as r,c as i,dn as a,er as o,l as s,xi as c}from"./dialogs-config-CB7G-sX6.js";import"./react-vendor-CR4cAsbx.js";import"./history-view-D-hEB6Qt.js";import{a as l,c as u}from"./index-D7yQjYyf.js";import{n as d,t as f}from"./radio-group-BpmnaKJk.js";var p=e(n(),1),m=o();function h({threadId:e,onSkillCreated:n}){let[o,h]=(0,p.useState)(``),[g,_]=(0,p.useState)(``),[v,y]=(0,p.useState)(`local`),[b,x]=(0,p.useState)(!1),S=o.toLowerCase().replace(/\s+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/-+/g,`-`).replace(/^-|-$/g,``),C=S.length>0&&S.length<=64;return e?(0,m.jsxs)(`div`,{className:`max-w-2xl mx-auto p-6`,children:[(0,m.jsxs)(`div`,{className:`mb-6`,children:[(0,m.jsx)(`h1`,{className:`text-2xl font-bold`,children:`Add Skill`}),(0,m.jsx)(`p`,{className:`text-muted-foreground`,children:`Create a new agent skill. The skill will be saved as a SKILL.md file in the .agents/skills folder.`})]}),(0,m.jsxs)(`div`,{className:`space-y-6`,children:[(0,m.jsxs)(`div`,{className:`space-y-2`,children:[(0,m.jsx)(s,{htmlFor:`skillName`,children:`Skill Name`}),(0,m.jsx)(i,{id:`skillName`,value:o,onChange:e=>h(e.target.value),placeholder:`e.g. Code Review`,disabled:b}),o&&(0,m.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Folder name: `,(0,m.jsx)(`span`,{className:`font-mono`,children:S||`...`})]})]}),(0,m.jsxs)(`div`,{className:`space-y-2`,children:[(0,m.jsx)(s,{htmlFor:`skillDescription`,children:`Description`}),(0,m.jsx)(u,{id:`skillDescription`,value:g,onChange:e=>_(e.target.value),placeholder:`Describe when Tarsk should apply this skill`,className:`resize-none min-h-[120px]`,disabled:b})]}),(0,m.jsxs)(`div`,{className:`space-y-2`,children:[(0,m.jsx)(s,{children:`Scope`}),(0,m.jsxs)(f,{value:v,onValueChange:e=>y(e),className:`flex gap-4`,disabled:b,children:[(0,m.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,m.jsx)(d,{value:`local`,id:`scope-local`}),(0,m.jsx)(s,{htmlFor:`scope-local`,className:`font-normal cursor-pointer`,children:`Local (this project)`})]}),(0,m.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,m.jsx)(d,{value:`global`,id:`scope-global`,disabled:!0}),(0,m.jsx)(s,{htmlFor:`scope-global`,className:`font-normal cursor-pointer text-muted-foreground`,children:`Global (coming soon)`})]})]}),(0,m.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:v===`local`?`This skill will only be available for this project.`:`This skill will be available across all projects (coming soon).`})]}),(0,m.jsx)(`div`,{className:`border-t pt-4 flex justify-end`,children:(0,m.jsx)(a,{onClick:async()=>{if(!(!C||!g.trim()||!e)){x(!0);try{let r=await t(e,S,g.trim());l({title:`Skill created`,description:`Skill '${S}' was created successfully.`}),h(``),_(``),y(`local`),n?.(r.path,`SKILL.md`)}catch(e){l({title:`Error`,description:e instanceof Error?e.message:`Failed to create skill`,variant:`destructive`})}finally{x(!1)}}},disabled:!C||!g.trim()||b,children:b?(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(r,{className:`mr-2 h-4 w-4 animate-spin`}),`Creating...`]}):(0,m.jsxs)(m.Fragment,{children:[`Continue`,(0,m.jsx)(c,{className:`ml-2 h-4 w-4`})]})})})]})]}):(0,m.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,m.jsxs)(`div`,{className:`text-center`,children:[(0,m.jsx)(`h2`,{className:`text-lg font-semibold text-muted-foreground mb-2`,children:`No Thread Selected`}),(0,m.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Please select a thread to add a skill.`})]})})}export{h as default};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{P as t,Pi as n,Vr as r,c as i,dn as a,er as o,l as s,xi as c}from"./dialogs-config-CB7G-sX6.js";import"./react-vendor-CR4cAsbx.js";import"./history-view-D-hEB6Qt.js";import{a as l}from"./index-D7yQjYyf.js";import{n as u,t as d}from"./radio-group-BpmnaKJk.js";var f=e(n(),1),p=o();function m({projectId:e,threadId:n,onCommandCreated:o}){let[m,h]=(0,f.useState)(``),[g,_]=(0,f.useState)(``),[v,y]=(0,f.useState)(``),[b,x]=(0,f.useState)(`default`),[S,C]=(0,f.useState)(`local`),[w,T]=(0,f.useState)(!1),E=m.toLowerCase().replace(/\s+/g,`-`).replace(/[^a-z0-9-]/g,``).replace(/-+/g,`-`).replace(/^-|-$/g,``),D=E.length>0&&E.length<=64;return e?(0,p.jsxs)(`div`,{className:`max-w-2xl mx-auto p-6`,children:[(0,p.jsxs)(`div`,{className:`mb-6`,children:[(0,p.jsx)(`h1`,{className:`text-2xl font-bold`,children:`Add Slash Command`}),(0,p.jsx)(`p`,{className:`text-muted-foreground`,children:`Create a new slash command. The command will be saved as a .md file in the ~/.agents/commands folder.`})]}),(0,p.jsxs)(`div`,{className:`space-y-6`,children:[(0,p.jsxs)(`div`,{className:`space-y-2`,children:[(0,p.jsx)(s,{htmlFor:`commandName`,children:`Command Name`}),(0,p.jsx)(i,{id:`commandName`,value:m,onChange:e=>h(e.target.value),placeholder:`e.g. review`,disabled:w}),m&&(0,p.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Command: `,(0,p.jsxs)(`span`,{className:`font-mono`,children:[`/`,E||`...`]})]})]}),(0,p.jsxs)(`div`,{className:`space-y-2`,children:[(0,p.jsx)(s,{htmlFor:`commandDescription`,children:`Description`}),(0,p.jsx)(i,{id:`commandDescription`,value:g,onChange:e=>_(e.target.value),placeholder:`Brief description shown in autocomplete`,disabled:w})]}),(0,p.jsxs)(`div`,{className:`space-y-2`,children:[(0,p.jsx)(s,{htmlFor:`argumentHint`,children:`Argument Hint (optional)`}),(0,p.jsx)(i,{id:`argumentHint`,value:v,onChange:e=>y(e.target.value),placeholder:`e.g. <focus-area> or <branch-name>`,disabled:w}),(0,p.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Shows after the command name to guide users what to type`})]}),(0,p.jsxs)(`div`,{className:`space-y-2`,children:[(0,p.jsx)(s,{children:`Mode`}),(0,p.jsxs)(d,{value:b,onValueChange:e=>x(e),className:`flex gap-4`,disabled:w,children:[(0,p.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,p.jsx)(u,{value:`default`,id:`mode-default`}),(0,p.jsx)(s,{htmlFor:`mode-default`,className:`font-normal cursor-pointer`,children:`Default`})]}),(0,p.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,p.jsx)(u,{value:`plan`,id:`mode-plan`}),(0,p.jsx)(s,{htmlFor:`mode-plan`,className:`font-normal cursor-pointer`,children:`Plan`})]})]}),(0,p.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:b===`default`?`Standard chat mode`:`Activates plan mode when this command is used`})]}),(0,p.jsxs)(`div`,{className:`space-y-2`,children:[(0,p.jsx)(s,{children:`Scope`}),(0,p.jsxs)(d,{value:S,onValueChange:e=>C(e),className:`flex gap-4`,disabled:w,children:[(0,p.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,p.jsx)(u,{value:`local`,id:`scope-local`}),(0,p.jsx)(s,{htmlFor:`scope-local`,className:`font-normal cursor-pointer`,children:`Local (this project)`})]}),(0,p.jsxs)(`div`,{className:`flex items-center space-x-2`,children:[(0,p.jsx)(u,{value:`global`,id:`scope-global`,disabled:!0}),(0,p.jsx)(s,{htmlFor:`scope-global`,className:`font-normal cursor-pointer text-muted-foreground`,children:`Global (coming soon)`})]})]}),(0,p.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:S===`local`?`This command will only be available for this project.`:`This command will be available across all projects (coming soon).`})]}),(0,p.jsx)(`div`,{className:`border-t pt-4 flex justify-end`,children:(0,p.jsx)(a,{onClick:async()=>{if(!(!D||!e)){T(!0);try{await t(E,``,{description:g.trim()||void 0,argumentHint:v.trim()||void 0,mode:b===`plan`?`plan`:void 0},S===`global`?`global`:`project`,n??void 0),l({title:`Command created`,description:`Command '/${E}' was created successfully.`}),h(``),_(``),y(``),x(`default`),C(`local`),o?.(E)}catch(e){l({title:`Error`,description:e instanceof Error?e.message:`Failed to create command`,variant:`destructive`})}finally{T(!1)}}},disabled:!D||w,children:w?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(r,{className:`mr-2 h-4 w-4 animate-spin`}),`Creating...`]}):(0,p.jsxs)(p.Fragment,{children:[`Continue`,(0,p.jsx)(c,{className:`ml-2 h-4 w-4`})]})})})]})]}):(0,p.jsx)(`div`,{className:`flex items-center justify-center h-full`,children:(0,p.jsxs)(`div`,{className:`text-center`,children:[(0,p.jsx)(`h2`,{className:`text-lg font-semibold text-muted-foreground mb-2`,children:`No Project Selected`}),(0,p.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Please select a project to add a slash command.`})]})})}export{m as default};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-Dw2cE7zH.js";import{Mi as t,Nt as n,Pi as r,er as i,oi as a}from"./dialogs-config-CB7G-sX6.js";import{i as o}from"./index-D7yQjYyf.js";var s=t(),c=e(r(),1),l=i();function u(){let e=(0,s.c)(20),{devServerUrl:t}=o(),[r,i]=(0,c.useState)(``),[u,d]=(0,c.useState)(``),f=(0,c.useRef)(null),p,m;e[0]===t?(p=e[1],m=e[2]):(p=()=>{t&&(i(t),d(t))},m=[t],e[0]=t,e[1]=p,e[2]=m),(0,c.useEffect)(p,m);let h;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(h=e=>{let t=e.trim();t&&(!t.startsWith(`http://`)&&!t.startsWith(`https://`)&&(t=`http://`+t),i(t),d(t))},e[3]=h):h=e[3];let g=h,_;e[4]===r?_=e[5]:(_=e=>{e.key===`Enter`&&g(r)},e[4]=r,e[5]=_);let v=_,y;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>i(e.target.value),e[6]=y):y=e[6];let b;e[7]!==v||e[8]!==r?(b=(0,l.jsx)(`input`,{type:`text`,value:r,onChange:y,onKeyDown:v,placeholder:`Enter URL...`,className:`flex-1 px-4 py-1.5 text-sm bg-muted rounded-full border border-border outline-none focus:ring-1 focus:ring-ring font-mono`,spellCheck:!1}),e[7]=v,e[8]=r,e[9]=b):b=e[9];let x;e[10]===u?x=e[11]:(x=u&&(0,l.jsx)(`button`,{onClick:()=>void n(u),title:`Open in external browser`,className:`p-1.5 rounded hover:bg-muted text-muted-foreground hover:text-foreground transition-colors`,children:(0,l.jsx)(a,{size:15})}),e[10]=u,e[11]=x);let S;e[12]!==b||e[13]!==x?(S=(0,l.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 border-b border-border shrink-0`,children:[b,x]}),e[12]=b,e[13]=x,e[14]=S):S=e[14];let C;e[15]===u?C=e[16]:(C=u?(0,l.jsx)(`iframe`,{ref:f,src:u,className:`flex-1 w-full border-none`,title:`Browser`}):(0,l.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-muted-foreground text-sm`,children:`Enter a URL to browse`}),e[15]=u,e[16]=C);let w;return e[17]!==S||e[18]!==C?(w=(0,l.jsxs)(`div`,{className:`flex flex-col h-full overflow-hidden`,children:[S,C]}),e[17]=S,e[18]=C,e[19]=w):w=e[19],w}export{u as BrowserTab};
@@ -0,0 +1 @@
1
+ import"./dialogs-config-CB7G-sX6.js";import{t as e}from"./history-view-D-hEB6Qt.js";export{e as ConversationHistoryView,e as default};