@kitn.ai/ui 0.18.1 → 0.19.0

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 (203) hide show
  1. package/dist/components/thread.d.ts +54 -0
  2. package/dist/custom-elements.json +195 -0
  3. package/dist/elements/agent-card.js +1 -1
  4. package/dist/elements/artifact.js +1 -1
  5. package/dist/elements/attachments.js +1 -1
  6. package/dist/elements/autoloader.js +1 -1
  7. package/dist/elements/avatar.js +1 -1
  8. package/dist/elements/badge.js +1 -1
  9. package/dist/elements/button.js +1 -1
  10. package/dist/elements/card.js +1 -1
  11. package/dist/elements/cards.js +1 -1
  12. package/dist/elements/chain-of-thought.js +1 -1
  13. package/dist/elements/chat-scope-picker.js +1 -1
  14. package/dist/elements/chat-workspace.js +1 -1
  15. package/dist/elements/chat.js +1 -1
  16. package/dist/elements/checkpoint.js +1 -1
  17. package/dist/elements/choice.js +1 -1
  18. package/dist/elements/chunks/{Icon-C2LTALdM.js → Icon-11SRdjJ4.js} +1 -1
  19. package/dist/elements/chunks/action-icons-CtRg17uX.js +1 -0
  20. package/dist/elements/chunks/arrow-left-CifsGq8x.js +1 -0
  21. package/dist/elements/chunks/{attachments-DLJcWCDV.js → attachments-CBqQRh60.js} +1 -1
  22. package/dist/elements/chunks/{badge-BTNZTODL.js → badge-CxklEXQm.js} +1 -1
  23. package/dist/elements/chunks/{button-DBDZebGr.js → button-BD7lUvVB.js} +1 -1
  24. package/dist/elements/chunks/{card-YfCyI4fH.js → card-B-PRGXdj.js} +1 -1
  25. package/dist/elements/chunks/chat-thread-DIZbRIKG.js +1 -0
  26. package/dist/elements/chunks/check-CUKS495w.js +1 -0
  27. package/dist/elements/chunks/chevron-down-AELmYT1j.js +1 -0
  28. package/dist/elements/chunks/chevron-right-C8g26oKh.js +1 -0
  29. package/dist/elements/chunks/circle-DGcI8Cft.js +1 -0
  30. package/dist/elements/chunks/circle-check-DuU0IcBQ.js +1 -0
  31. package/dist/elements/chunks/{circle-x-pDtzlghQ.js → circle-x-mtjCO_Ok.js} +1 -1
  32. package/dist/elements/chunks/{code-block-DZ6mz6vs.js → code-block-BeWVttmU.js} +1 -1
  33. package/dist/elements/chunks/{collapsible-CWUAShMC.js → collapsible-DGjADCN6.js} +1 -1
  34. package/dist/elements/chunks/{composer-BZyPU6gD.js → composer-CavJww3d.js} +7 -3
  35. package/dist/elements/chunks/{context-Cx6eQA_G.js → context-CnlsNJSJ.js} +1 -1
  36. package/dist/elements/chunks/{conversation-list-C4xTQSpT.js → conversation-list-5O_KdI_I.js} +1 -1
  37. package/dist/elements/chunks/{default-input-BZcwyKcP.js → default-input-CB46cJJ1.js} +1 -1
  38. package/dist/elements/chunks/{define-CNSKFZCd.js → define-DfTe4zwZ.js} +1 -1
  39. package/dist/elements/chunks/{disclosure-BcBs--Jf.js → disclosure-BtFK3a-M.js} +1 -1
  40. package/dist/elements/chunks/{download-BDQwcFav.js → download-qJv1dS3M.js} +1 -1
  41. package/dist/elements/chunks/{dropdown-wgs8xCJZ.js → dropdown-UhtAueYR.js} +1 -1
  42. package/dist/elements/chunks/{ellipsis-CUiEJ6R1.js → ellipsis-B1sOOqiJ.js} +1 -1
  43. package/dist/elements/chunks/{external-link-DJUmC7g2.js → external-link-DToP_VKE.js} +1 -1
  44. package/dist/elements/chunks/{file-text-DOYfYvrh.js → file-text-BwUs_Pj4.js} +1 -1
  45. package/dist/elements/chunks/{file-tree-DQzNQrbr.js → file-tree-C6RhmSnX.js} +1 -1
  46. package/dist/elements/chunks/{folder-DBDUBANz.js → folder-H_Xp0GYP.js} +1 -1
  47. package/dist/elements/chunks/hover-card-Dn3yrk1l.js +1 -0
  48. package/dist/elements/chunks/icon-BrxJQXzC.js +1 -0
  49. package/dist/elements/chunks/{info-DBQl-m6e.js → info-11eT2q5H.js} +1 -1
  50. package/dist/elements/chunks/{input-DZD67EvW.js → input-B9oZKDfb.js} +1 -1
  51. package/dist/elements/chunks/{kbd-DbyVrlnU.js → kbd-D2fx3rWh.js} +1 -1
  52. package/dist/elements/chunks/{link-vko7AttA.js → link-B-RNYWNw.js} +1 -1
  53. package/dist/elements/chunks/{loader-Cg6rO8tQ.js → loader-BJh_aRlp.js} +1 -1
  54. package/dist/elements/chunks/{markdown-n3Xbj3PR.js → markdown-BIpjrDFv.js} +1 -1
  55. package/dist/elements/chunks/{message-CgKytiSB.js → message-CPfqj8Gi.js} +1 -1
  56. package/dist/elements/chunks/{message-feedback-Ds3-US0e.js → message-feedback-8uj0aVYh.js} +1 -1
  57. package/dist/elements/chunks/message-square-CCSQ4M9g.js +1 -0
  58. package/dist/elements/chunks/{minimize-2-3kCdE0q3.js → minimize-2-C9qkiTJg.js} +1 -1
  59. package/dist/elements/chunks/{model-switcher-BMtXGwLU.js → model-switcher-DRrMcRXH.js} +1 -1
  60. package/dist/elements/chunks/{overlay-B1-MBI6h.js → overlay-C8_FUL8q.js} +1 -1
  61. package/dist/elements/chunks/{paperclip-DDEfmkHc.js → paperclip-MA9hxLhW.js} +1 -1
  62. package/dist/elements/chunks/{progress-bar-Dwbiyv3s.js → progress-bar-y5G6HDjg.js} +1 -1
  63. package/dist/elements/chunks/{prompt-suggestion-9lvgFcEa.js → prompt-suggestion-LalWvCJy.js} +1 -1
  64. package/dist/elements/chunks/reasoning-CW3SDdb4.js +1 -0
  65. package/dist/elements/chunks/resizable-xhYF5lCQ.js +1 -0
  66. package/dist/elements/chunks/{rotate-cw-jpisOdOV.js → rotate-cw-2ndEXjgS.js} +1 -1
  67. package/dist/elements/chunks/{scroll-area-g5Ze3K6f.js → scroll-area-BzOPDXrZ.js} +1 -1
  68. package/dist/elements/chunks/scroll-button-B1x4cYqM.js +1 -0
  69. package/dist/elements/chunks/{separator-Bmjc5XyX.js → separator-CPvL5Xdl.js} +1 -1
  70. package/dist/elements/chunks/{settings-group-9imY3kRA.js → settings-group-BiIym17O.js} +1 -1
  71. package/dist/elements/chunks/{settings-Cz1bMJP9.js → settings-hmzIuNXD.js} +1 -1
  72. package/dist/elements/chunks/{share-BdenF0wQ.js → share-BbziTAzn.js} +1 -1
  73. package/dist/elements/chunks/skeleton-Bxhs1thL.js +1 -0
  74. package/dist/elements/chunks/{slots-DkZ-Cmha.js → slots--V19HwUb.js} +1 -1
  75. package/dist/elements/chunks/{star-DY6z1UUH.js → star-BHL3Va5p.js} +1 -1
  76. package/dist/elements/chunks/{store-th4VyJXM.js → store-tpnnWlxY.js} +1 -1
  77. package/dist/elements/chunks/{text-shimmer-CEi-tlXr.js → text-shimmer-1DCKivKx.js} +1 -1
  78. package/dist/elements/chunks/textarea-Czaowo9F.js +1 -0
  79. package/dist/elements/chunks/{thumbs-up-BR33KLfA.js → thumbs-up-CdLqA13R.js} +1 -1
  80. package/dist/elements/chunks/{toast-store-BEMda0fv.js → toast-store-BvBquUFA.js} +1 -1
  81. package/dist/elements/chunks/{tool-TMued3WO.js → tool-4P_ne8Go.js} +1 -1
  82. package/dist/elements/chunks/{tooltip-Cft_Rxiw.js → tooltip-CBeFqJKk.js} +1 -1
  83. package/dist/elements/chunks/{triangle-alert-B07fX3Q8.js → triangle-alert-BllqxXq8.js} +1 -1
  84. package/dist/elements/chunks/{use-card-resolution-M36zVciB.js → use-card-resolution-73xiddIW.js} +1 -1
  85. package/dist/elements/chunks/{video-MKp3LmNT.js → video-O9rA6k7S.js} +1 -1
  86. package/dist/elements/chunks/x-DeS3rQhx.js +1 -0
  87. package/dist/elements/coachmark.js +1 -1
  88. package/dist/elements/code-block.js +1 -1
  89. package/dist/elements/command.js +1 -1
  90. package/dist/elements/compare.js +1 -1
  91. package/dist/elements/composer.js +1 -1
  92. package/dist/elements/confirm-card.js +1 -1
  93. package/dist/elements/context-meter.js +1 -1
  94. package/dist/elements/conversation-list.js +1 -1
  95. package/dist/elements/dialog.js +1 -1
  96. package/dist/elements/editable-label.js +1 -1
  97. package/dist/elements/embed.js +1 -1
  98. package/dist/elements/empty.js +1 -1
  99. package/dist/elements/feedback-bar.js +1 -1
  100. package/dist/elements/file-tree.js +1 -1
  101. package/dist/elements/file-upload.js +1 -1
  102. package/dist/elements/form.js +1 -1
  103. package/dist/elements/hover-card.js +1 -1
  104. package/dist/elements/icon.js +1 -1
  105. package/dist/elements/image.js +1 -1
  106. package/dist/elements/input.js +1 -1
  107. package/dist/elements/kbd.js +1 -1
  108. package/dist/elements/link-preview.js +1 -1
  109. package/dist/elements/loader.js +1 -1
  110. package/dist/elements/markdown.js +1 -1
  111. package/dist/elements/menu.js +1 -1
  112. package/dist/elements/message-skills.js +1 -1
  113. package/dist/elements/message.js +1 -1
  114. package/dist/elements/model-switcher.js +1 -1
  115. package/dist/elements/nav.js +1 -1
  116. package/dist/elements/notice.js +1 -1
  117. package/dist/elements/pane-group.js +1 -1
  118. package/dist/elements/pane.js +1 -1
  119. package/dist/elements/popover.js +1 -1
  120. package/dist/elements/progress-bar.js +1 -1
  121. package/dist/elements/prompt-dock.js +1 -1
  122. package/dist/elements/prompt-input.js +1 -1
  123. package/dist/elements/prompt-suggestions.js +1 -1
  124. package/dist/elements/reasoning.js +1 -1
  125. package/dist/elements/remote.js +1 -1
  126. package/dist/elements/resizable.js +1 -1
  127. package/dist/elements/response-stream.js +1 -1
  128. package/dist/elements/screen.js +1 -1
  129. package/dist/elements/scroll-area.js +1 -1
  130. package/dist/elements/scroll-button.js +1 -1
  131. package/dist/elements/search.js +1 -1
  132. package/dist/elements/segmented.js +1 -1
  133. package/dist/elements/separator.js +1 -1
  134. package/dist/elements/setting-item.js +1 -1
  135. package/dist/elements/settings-group.js +1 -1
  136. package/dist/elements/skeleton.js +1 -1
  137. package/dist/elements/slots.d.ts +3 -0
  138. package/dist/elements/source.js +1 -1
  139. package/dist/elements/status.js +1 -1
  140. package/dist/elements/switch.js +1 -1
  141. package/dist/elements/tabs.js +1 -1
  142. package/dist/elements/tasks.js +1 -1
  143. package/dist/elements/text-shimmer.js +1 -1
  144. package/dist/elements/thinking-bar.js +1 -1
  145. package/dist/elements/thread.d.ts +1 -0
  146. package/dist/elements/thread.js +1 -0
  147. package/dist/elements/toast.js +1 -1
  148. package/dist/elements/tool.js +1 -1
  149. package/dist/elements/tooltip.js +1 -1
  150. package/dist/elements/voice-input.js +1 -1
  151. package/dist/elements/voice-output.js +1 -1
  152. package/dist/elements.d.ts +24 -0
  153. package/dist/index.js +3393 -3311
  154. package/dist/kai.es.js +1 -1
  155. package/dist/llms/llms-full.txt +34 -4
  156. package/dist/llms/llms.txt +3 -3
  157. package/dist/react/index.d.ts +64 -0
  158. package/dist/react/use-voice-input.d.ts +15 -0
  159. package/dist/react.js +263 -240
  160. package/dist/register-impl-CaaHJcea.js +145 -0
  161. package/dist/ui/resizable.d.ts +9 -3
  162. package/frameworks/react/index.tsx +32 -1
  163. package/frameworks/react/use-voice-input.tsx +59 -0
  164. package/llms-full.txt +34 -4
  165. package/llms.txt +3 -3
  166. package/package.json +27 -5
  167. package/src/components/component-meta.json +30 -28
  168. package/src/components/composer.tsx +5 -0
  169. package/src/components/thread.tsx +177 -0
  170. package/src/elements/chat-workspace.tsx +1 -1
  171. package/src/elements/compiled.css +1 -1
  172. package/src/elements/element-manifest.json +4 -0
  173. package/src/elements/element-meta.json +117 -0
  174. package/src/elements/element-types.d.ts +24 -0
  175. package/src/elements/icon-names.json +2 -0
  176. package/src/elements/menu.tsx +7 -4
  177. package/src/elements/register-impl.ts +2 -0
  178. package/src/elements/resizable.tsx +78 -2
  179. package/src/elements/search.tsx +1 -1
  180. package/src/elements/slots.ts +7 -0
  181. package/src/elements/thread.tsx +105 -0
  182. package/src/ui/action-icons.ts +2 -1
  183. package/src/ui/command.tsx +5 -1
  184. package/src/ui/icon.tsx +4 -0
  185. package/src/ui/overlay.tsx +8 -1
  186. package/src/ui/resizable.tsx +47 -9
  187. package/dist/elements/chunks/action-icons-Dtl8Ox5D.js +0 -1
  188. package/dist/elements/chunks/arrow-left-GbBceGBE.js +0 -1
  189. package/dist/elements/chunks/chat-thread-Dz2qbzvI.js +0 -1
  190. package/dist/elements/chunks/check-fhmRksq_.js +0 -1
  191. package/dist/elements/chunks/chevron-down-DcRg1aRU.js +0 -1
  192. package/dist/elements/chunks/chevron-right-ChzBcNJ-.js +0 -1
  193. package/dist/elements/chunks/circle-B4fTe9v6.js +0 -1
  194. package/dist/elements/chunks/circle-check-CJV-3Rem.js +0 -1
  195. package/dist/elements/chunks/hover-card-BQGdGAQ3.js +0 -1
  196. package/dist/elements/chunks/icon-CAyRqVrg.js +0 -1
  197. package/dist/elements/chunks/message-square-MmRkvc-M.js +0 -1
  198. package/dist/elements/chunks/reasoning-DzHWsdAJ.js +0 -1
  199. package/dist/elements/chunks/resizable-Bq_eHxUm.js +0 -1
  200. package/dist/elements/chunks/skeleton-Pjc5jiaY.js +0 -1
  201. package/dist/elements/chunks/textarea-CboigarR.js +0 -1
  202. package/dist/elements/chunks/x-Ckwicf6g.js +0 -1
  203. package/dist/register-impl-cKscku5m.js +0 -141
@@ -237,7 +237,13 @@ function ResizablePanel(props: ResizablePanelProps) {
237
237
  // --- ResizableHandle ---
238
238
 
239
239
  export interface ResizableHandleProps extends JSX.HTMLAttributes<HTMLDivElement> {
240
- withHandle?: boolean;
240
+ /**
241
+ * Divider affordance drawn inside the 8px grab zone:
242
+ * - `line` (default) — a 1px hairline, transparent at rest, tinting on hover/drag.
243
+ * - `grip` — a dotted grip handle.
244
+ * - `none` — no visible divider (invisible hit-area only).
245
+ */
246
+ handle?: 'line' | 'grip' | 'none';
241
247
  onPanelResize?: (delta: number) => void;
242
248
  /** Keyboard nudge step in pixels (default 16). Home/End jump to min/max. */
243
249
  keyboardStep?: number;
@@ -265,12 +271,15 @@ function readBound(el: HTMLElement, kind: 'min' | 'max', containerPx: number, fa
265
271
 
266
272
  function ResizableHandle(props: ResizableHandleProps) {
267
273
  const [local, rest] = splitProps(props, [
268
- 'withHandle', 'onPanelResize', 'class', 'keyboardStep', 'static', 'orientation',
274
+ 'handle', 'onPanelResize', 'class', 'keyboardStep', 'static', 'orientation',
269
275
  ]);
270
276
  const ctx = useContext(ResizableContext);
271
277
  const orientation = () => local.orientation ?? ctx?.orientation ?? 'horizontal';
272
278
  const [isDragging, setIsDragging] = createSignal(false);
279
+ const [hovering, setHovering] = createSignal(false);
273
280
  const isStatic = () => !!local.static;
281
+ // Divider affordance; `line` (hairline) is the default.
282
+ const mode = () => local.handle ?? 'line';
274
283
 
275
284
  let startPos = 0;
276
285
  let prevEl: HTMLElement | null = null;
@@ -481,18 +490,33 @@ function ResizableHandle(props: ResizableHandleProps) {
481
490
  nextEl = null;
482
491
  };
483
492
 
493
+ // The full-strip drag highlight is only for `grip`/`none`; `line` shows its tint
494
+ // on the hairline alone (below), so the whole 8px zone must stay transparent.
495
+ const showStripHighlight = () => isDragging() && mode() !== 'line';
496
+ // Hairline tint (priority: dragging > hovering > rest). Inline CSS-var values
497
+ // with literal-hex fallbacks — this renders in a shadow root AND in light-DOM
498
+ // stories, where Tailwind arbitrary-value classes aren't reliably present.
499
+ const lineColor = () =>
500
+ isDragging()
501
+ ? 'var(--color-muted, #f4f4f5)'
502
+ : hovering()
503
+ ? 'var(--color-border, #e4e4e7)'
504
+ : 'transparent';
505
+
484
506
  return (
485
507
  <div
486
508
  class={cn('relative flex items-center justify-center', local.class)}
487
509
  style={{
488
510
  cursor: isStatic() ? 'default' : isHoriz() ? 'col-resize' : 'row-resize',
489
511
  [isHoriz() ? 'width' : 'height']: '8px',
490
- 'background': isDragging() ? 'var(--color-muted-foreground, #98989f)' : 'transparent',
491
- 'opacity': isDragging() ? '0.3' : '1',
512
+ 'background': showStripHighlight() ? 'var(--color-muted-foreground, #98989f)' : 'transparent',
513
+ 'opacity': showStripHighlight() ? '0.3' : '1',
492
514
  }}
493
515
  onPointerDown={handlePointerDown}
494
516
  onPointerMove={handlePointerMove}
495
517
  onPointerUp={handlePointerUp}
518
+ onPointerEnter={() => setHovering(true)}
519
+ onPointerLeave={() => setHovering(false)}
496
520
  onDblClick={handleDblClick}
497
521
  onKeyDown={handleKeyDown}
498
522
  role="separator"
@@ -505,7 +529,7 @@ function ResizableHandle(props: ResizableHandleProps) {
505
529
  aria-valuenow={valueNow()}
506
530
  {...rest}
507
531
  >
508
- <Show when={local.withHandle}>
532
+ <Show when={mode() === 'grip'}>
509
533
  <div
510
534
  class={cn(
511
535
  'z-10 flex items-center justify-center',
@@ -529,6 +553,20 @@ function ResizableHandle(props: ResizableHandleProps) {
529
553
  </svg>
530
554
  </div>
531
555
  </Show>
556
+ <Show when={mode() === 'line'}>
557
+ {/* 1px hairline centered in the 8px grab zone; never eats the drag. */}
558
+ <div
559
+ class="pointer-events-none"
560
+ data-handle-line
561
+ style={{
562
+ position: 'absolute',
563
+ background: lineColor(),
564
+ ...(isHoriz()
565
+ ? { top: '0', bottom: '0', left: '50%', width: '1px', transform: 'translateX(-0.5px)' }
566
+ : { left: '0', right: '0', top: '50%', height: '1px', transform: 'translateY(-0.5px)' }),
567
+ }}
568
+ />
569
+ </Show>
532
570
  </div>
533
571
  );
534
572
  }
@@ -539,8 +577,8 @@ export interface ResizableProps {
539
577
  orientation?: Orientation;
540
578
  /** Fired on drag-end / keyboard resize / visibility change with the current panel sizes (percent). */
541
579
  onChange?: (sizes: number[]) => void;
542
- /** Show a visible grip on each interactive handle. */
543
- withHandle?: boolean;
580
+ /** Divider affordance on each interactive handle: `line` (default), `grip`, or `none`. */
581
+ handle?: 'line' | 'grip' | 'none';
544
582
  class?: string;
545
583
  /** Which panel index is maximized (null = none). Hides the others. */
546
584
  maximizedIndex?: number | null;
@@ -559,7 +597,7 @@ export interface ResizableProps {
559
597
  */
560
598
  function Resizable(props: ResizableProps) {
561
599
  const [local] = splitProps(props, [
562
- 'orientation', 'onChange', 'withHandle', 'class', 'children', 'maximizedIndex', 'onMaximizeChange',
600
+ 'orientation', 'onChange', 'handle', 'class', 'children', 'maximizedIndex', 'onMaximizeChange',
563
601
  ]);
564
602
  const orientation = () => local.orientation ?? 'horizontal';
565
603
 
@@ -627,7 +665,7 @@ function Resizable(props: ResizableProps) {
627
665
  <>
628
666
  <Show when={i() > 0}>
629
667
  <ResizableHandle
630
- withHandle={local.withHandle}
668
+ handle={local.handle ?? 'line'}
631
669
  static={panel.locked || renderPanels()[i() - 1]?.locked}
632
670
  onPanelResize={() => emitChange()}
633
671
  />
@@ -1 +0,0 @@
1
- import{e as t}from"./ellipsis-CUiEJ6R1.js";import{f as i,b as s,s as p,p as m,c as k}from"./share-BdenF0wQ.js";import{c as d}from"./check-fhmRksq_.js";import{d as y}from"./download-BDQwcFav.js";import{l as c}from"./link-vko7AttA.js";import{I as a}from"./Icon-C2LTALdM.js";import{c as o,m as r}from"./define-CNSKFZCd.js";import{s as n}from"./star-DY6z1UUH.js";import{a as f,t as h}from"./thumbs-up-BR33KLfA.js";import{x as l}from"./x-Ckwicf6g.js";var v=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],x=e=>o(a,r(e,{name:"RefreshCw",iconNode:v})),M=x,g=[["polyline",{points:"9 17 4 12 9 7",key:"hvgpf2"}],["path",{d:"M20 18v-2a4 4 0 0 0-4-4H4",key:"5vmcpk"}]],u=e=>o(a,r(e,{name:"Reply",iconNode:g})),w=u,N=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],C=e=>o(a,r(e,{name:"Trash2",iconNode:N})),H=C;const L={copy:k,like:h,dislike:f,regenerate:M,edit:m,share:p,bookmark:s,download:y,link:c,trash:H,check:d,x:l,star:n,flag:i,reply:w,more:t};function R(e){if(e)return L[e]}const b={copy:"Copy",like:"Like",dislike:"Dislike",regenerate:"Regenerate",edit:"Edit"};export{b as B,R as a};
@@ -1 +0,0 @@
1
- import{I as o}from"./Icon-C2LTALdM.js";import{c as m,m as r}from"./define-CNSKFZCd.js";var e=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],t=a=>m(o,r(a,{name:"ArrowLeft",iconNode:e})),p=t;export{p as a};
@@ -1 +0,0 @@
1
- import{g as A,p as Q,s as B,c as r,u as z,k as M,m as _,i,t as c,v as U,w as G,x as J,h as K,o as N,S as h,q as b,n as W,F as X,a as E,b as q,C as Y}from"./define-CNSKFZCd.js";import{s as Z,n as ee}from"./composer-BZyPU6gD.js";import{c as $}from"./cn-CU7UAWzk.js";import{M as te,a as I,b as re}from"./message-CgKytiSB.js";import{c as ne}from"./message-feedback-Ds3-US0e.js";import{M as le}from"./model-switcher-BMtXGwLU.js";import{B as se}from"./button-DBDZebGr.js";import{c as oe}from"./chevron-down-DcRg1aRU.js";import{C as ae,a as ie,b as ce,c as ue,d as de,e as ge,f as he,g as me}from"./context-Cx6eQA_G.js";import{D as ve}from"./default-input-BZcwyKcP.js";const fe=50;function xe(){const[e,u]=A(!0);let o,s=!0;function x(){if(!o)return;const{scrollTop:g,scrollHeight:w,clientHeight:S}=o,y=w-g-S<fe;u(y),s=y}function k(g="smooth"){o&&(o.scrollTo({top:o.scrollHeight,behavior:g}),s=!0,u(!0))}function m(){s&&requestAnimationFrame(()=>k("instant"))}function T(g){o=g,g.addEventListener("scroll",x,{passive:!0});const w=new MutationObserver(m);w.observe(g,{childList:!0,subtree:!0,characterData:!0}),Q(()=>{g.removeEventListener("scroll",x),w.disconnect()})}return{ref:T,isAtBottom:e,scrollToBottom:k}}var pe=c("<div role=log tabindex=0>"),be=c("<div>"),we=c("<div aria-hidden=true>");const L=U();function Ce(){const e=G(L);if(!e)throw new Error("useChatContainer must be used within ChatContainer");return e}function ke(e){const[u,o]=B(e,["children","class"]),{ref:s,isAtBottom:x,scrollToBottom:k}=xe();return r(L.Provider,{value:{isAtBottom:x,scrollToBottom:k},get children(){var m=pe();return z(s,m),M(m,_({get class(){return $("flex flex-col overflow-y-auto",u.class)}},o),!1,!0),i(m,()=>u.children),m}})}function Te(e){const[u,o]=B(e,["children","class"]);return(()=>{var s=be();return M(s,_({get class(){return $("flex w-full flex-col",u.class)}},o),!1,!0),i(s,()=>u.children),s})()}function ye(e){const[u,o]=B(e,["class"]);return(()=>{var s=we();return M(s,_({get class(){return $("h-px w-full shrink-0 scroll-mt-4",u.class)}},o),!1,!1),s})()}function Se(e){const{isAtBottom:u,scrollToBottom:o}=Ce();return r(se,{get variant(){return e.variant??"outline"},get size(){return e.size??"sm"},"aria-label":"Scroll to bottom",get class(){return $("h-10 w-10 rounded-full transition-all duration-150 ease-out",u()?"pointer-events-none translate-y-4 scale-95 opacity-0":"translate-y-0 scale-100 opacity-100",e.class)},onClick:()=>o(),get children(){return r(oe,{class:"h-5 w-5"})}})}var $e=c('<aside part=sidebar class="flex w-64 shrink-0 flex-col overflow-hidden border-r border-border"><slot name=sidebar>'),Ae=c("<header part=header class=shrink-0><slot name=header>"),Be=c("<slot name=empty>"),Me=c('<div class="absolute bottom-4 left-1/2 flex w-full max-w-3xl -translate-x-1/2 justify-center px-5">'),_e=c('<div class="shrink-0 px-4"><div class="mx-auto flex max-w-3xl items-center gap-2 pb-2"><slot name=composer-actions>'),He=c("<slot name=composer>"),Fe=c('<div part=footer class="shrink-0 px-4 pb-3"><div class="mx-auto max-w-3xl text-center text-xs text-muted-foreground"><slot name=footer>'),Ve=c('<div><div class="flex h-full min-w-0 flex-1 flex-col"><div class="relative flex-1 overflow-hidden"></div><div class="shrink-0 px-4 pb-4"><div class="mx-auto max-w-3xl">'),ze=c('<div class="text-sm font-semibold text-foreground">'),Ee=c("<div class=space-y-1.5>"),qe=c('<header part=header-bar class="flex h-14 shrink-0 items-center justify-between border-b border-border px-5"><div class="flex items-center gap-2"><slot name=header-start></slot></div><div class="flex items-center gap-2"><slot name=header-end>'),Ie=c("<div>");function Le(e){const u=J(),o=()=>e.actionsReveal==="hover"?"hover":"always";let s;const x=ne({emit:n=>{var l;return(l=e.onMessageAction)==null?void 0:l.call(e,n)},target:()=>s}),[k,m]=A(e.value??""),[T,g]=A([]),w=()=>typeof e.value=="string"?e.value:k();K(()=>{const n=e.value;n!=null&&typeof n!="string"&&m(n)});const S=n=>{var l;m(n),(l=e.onValueChange)==null||l.call(e,n)},y=()=>{g([]),e.value===void 0&&m("")},H=()=>{var n;(n=e.onSubmit)==null||n.call(e,{value:Z(ee(w())),attachments:T()}),y()},R=n=>{var l,d;(e.suggestionMode??"submit")==="fill"?(S(n),(l=e.onSuggestionClick)==null||l.call(e,n)):((d=e.onSubmit)==null||d.call(e,{value:n,attachments:T()}),y())},j=()=>!!(e.chatTitle||e.models||e.context||e.headerStart||e.headerEnd),D=()=>e.persistSuggestions||e.messages.length===0?e.suggestions:void 0,O=()=>e.scrollButton!==!1;return N(()=>{var n;(n=e.controllerRef)==null||n.call(e,{focus:l=>{var d;return(d=s?.querySelector('[contenteditable]:not([contenteditable="false"]), textarea'))==null?void 0:d.focus(l)},clear:()=>{var l;m(""),g([]),(l=e.onValueChange)==null||l.call(e,"")},send:()=>H(),scrollToBottom:l=>{const d=s?.querySelector(".overflow-y-auto");d?.scrollTo({top:d.scrollHeight,behavior:l??"smooth"})}})}),r(Y,{get proseSize(){return e.proseSize},get codeTheme(){return e.codeTheme},get codeHighlight(){return e.codeHighlight!==!1},get portalMount(){return u.portalMount()},get children(){var n=Ve(),l=n.firstChild,d=l.firstChild,F=d.nextSibling,P=F.firstChild;return z(t=>s=t,n),i(n,r(h,{get when(){return e.sidebar},get children(){var t=$e(),a=t.firstChild;return a._$owner=b(),t}}),l),i(l,r(h,{get when(){return e.headerFull},get fallback(){return r(h,{get when(){return j()},get children(){var t=qe(),a=t.firstChild,p=a.firstChild,f=a.nextSibling,C=f.firstChild;return p._$owner=b(),i(a,r(h,{get when(){return e.chatTitle},get children(){var v=ze();return i(v,()=>e.chatTitle),v}}),null),i(f,r(h,{get when(){return e.models},get children(){return r(le,{get models(){return e.models},get currentModelId(){var v;return e.currentModel??((v=e.models[0])==null?void 0:v.id)??""},onModelChange:v=>{var V;return(V=e.onModelChange)==null?void 0:V.call(e,v)}})}}),C),i(f,r(h,{get when(){return e.context},get children(){return r(ae,{get usedTokens(){return e.context.usedTokens},get maxTokens(){return e.context.maxTokens},get inputTokens(){return e.context.inputTokens},get outputTokens(){return e.context.outputTokens},get estimatedCost(){return e.context.estimatedCost},get children(){return[r(ie,{}),r(ce,{get children(){return[r(ue,{}),r(de,{get children(){var v=Ee();return i(v,r(ge,{}),null),i(v,r(he,{}),null),v}}),r(me,{})]}})]}})}}),C),C._$owner=b(),t}})},get children(){var t=Ae(),a=t.firstChild;return a._$owner=b(),t}}),d),i(d,r(ke,{class:"h-full px-4 py-3",get children(){return[r(Te,{class:"mx-auto w-full max-w-3xl space-y-4",get children(){return[r(h,{get when(){return W(()=>!!e.empty)()&&e.messages.length===0},get children(){var t=Be();return t._$owner=b(),t}}),r(X,{get each(){return e.messages},children:t=>{const a=r(te,{get content(){return t.content},get reasoning(){return t.reasoning},get tools(){return t.tools},get attachments(){return t.attachments},get isUser(){return t.role==="user"},get markdown(){return t.role==="assistant"},get actions(){return t.actions},get actionsReveal(){return o()},get activeFeedback(){return x.resolveFeedback(t)},get copied(){return x.isCopied(t.id)},onAction:f=>x.handleAction(t,f)}),p=o()==="hover"?"group ":"";return r(h,{get when(){return t.avatar},get fallback(){return r(I,{get class(){return`${p}${t.role==="user"?"flex-col items-end":"flex-col items-start"}`},children:a})},children:f=>r(I,{class:p,get children(){return[r(re,{get src(){return f().src??""},get alt(){return f().alt??""},get fallback(){return f().fallback}}),(()=>{var C=Ie();return i(C,a),E(()=>q(C,`flex min-w-0 flex-1 flex-col ${t.role==="user"?"items-end":"items-start"}`)),C})()]}})})}}),r(ye,{})]}}),r(h,{get when(){return O()},get children(){var t=Me();return i(t,r(Se,{class:"shadow-sm"})),t}})]}})),i(l,r(h,{get when(){return e.composerActions},get children(){var t=_e(),a=t.firstChild,p=a.firstChild;return p._$owner=b(),t}}),F),i(P,r(h,{get when(){return e.composer},get fallback(){return r(ve,{get value(){return w()},get placeholder(){return e.placeholder},get loading(){return e.loading===!0},get suggestions(){return D()},get attachments(){return T()},get search(){return e.search===!0},get voice(){return e.voice===!0},get triggers(){return e.triggers},get kindIcons(){return e.kindIcons},onValueChange:S,onSubmit:H,onSuggestionClick:R,onAttachmentsChange:t=>{var a;g(t),(a=e.onAttachmentsChange)==null||a.call(e,t)},onSearch:()=>{var t;return(t=e.onSearch)==null?void 0:t.call(e)},onVoice:()=>{var t;return(t=e.onVoice)==null?void 0:t.call(e)}})},get children(){var t=He();return t._$owner=b(),t}})),i(l,r(h,{get when(){return e.footer},get children(){var t=Fe(),a=t.firstChild,p=a.firstChild;return p._$owner=b(),t}}),null),E(()=>q(n,`flex h-full bg-background ${e.class??""}`)),n}})}export{Le as C};
@@ -1 +0,0 @@
1
- import{I as m}from"./Icon-C2LTALdM.js";import{c as o,m as r}from"./define-CNSKFZCd.js";var c=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],e=a=>o(m,r(a,{name:"Check",iconNode:c})),f=e;export{f as c};
@@ -1 +0,0 @@
1
- import{I as r}from"./Icon-C2LTALdM.js";import{c as a,m}from"./define-CNSKFZCd.js";var e=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],n=o=>a(r,m(o,{name:"ChevronDown",iconNode:e})),p=n;export{p as c};
@@ -1 +0,0 @@
1
- import{I as o}from"./Icon-C2LTALdM.js";import{c as a,m as r}from"./define-CNSKFZCd.js";var t=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],e=m=>a(o,r(m,{name:"ChevronRight",iconNode:t})),h=e;export{h as c};
@@ -1 +0,0 @@
1
- import{I as c}from"./Icon-C2LTALdM.js";import{c as m,m as o}from"./define-CNSKFZCd.js";var a=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],e=r=>m(c,o(r,{name:"Circle",iconNode:a})),i=e;export{i as c};
@@ -1 +0,0 @@
1
- import{I as c}from"./Icon-C2LTALdM.js";import{c as r,m as a}from"./define-CNSKFZCd.js";var e=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],o=m=>r(c,a(m,{name:"CircleCheck",iconNode:e})),i=o;export{i as c};
@@ -1 +0,0 @@
1
- import{g as v,p as T,c as i,x,P as C,y as g,u as P,i as k,a as z,G as H,d as f,b as O,S as R,v as $,w as E,t as F,s as A,e as G}from"./define-CNSKFZCd.js";import{c as m}from"./cn-CU7UAWzk.js";import{A as I,c as L,u as M,a as S}from"./overlay-B1-MBI6h.js";var j=F("<div data-hovercard-content class=z-50 style=position:fixed;background:transparent><div>");const h=$(),b=()=>{const t=E(h);if(!t)throw new Error("HoverCard parts must be used within <HoverCardRoot>");return t};function y(t){var e;const[a,n]=v(t.defaultOpen??!1),[l,o]=v(),[c,r]=v();let s;(e=t.controllerRef)==null||e.call(t,{open:a,setOpen:n});const d=()=>{t.disabled||(clearTimeout(s),s=window.setTimeout(()=>n(!0),t.openDelay??0))},u=()=>{clearTimeout(s),s=window.setTimeout(()=>n(!1),t.closeDelay??300)},p=()=>{clearTimeout(s),n(!1)};return T(()=>clearTimeout(s)),i(h.Provider,{value:{open:a,enter:d,leave:u,close:p,setTrigger:o,setContent:r,trigger:l,content:c},get children(){return t.children}})}function w(t){const e=b();return i(I,{as:"span",get class(){return m("inline-block",t.class)},ref(a){var n=e.setTrigger;typeof n=="function"?n(a):e.setTrigger=a},get onPointerEnter(){return e.enter},get onPointerLeave(){return e.leave},get onFocusIn(){return e.enter},get onFocusOut(){return e.leave},get children(){return t.children}})}const K=8;function N(t,e){const a=t.split("-")[0];return{[{bottom:"padding-top",top:"padding-bottom",left:"padding-right",right:"padding-left"}[a]??"padding-top"]:`${e}px`}}function D(t){const e=b(),a=x(),n=L(e.open),l=M(e.trigger,e.content,{placement:t.placement??"bottom",gutter:0,onDisconnect:()=>e.close()});return S({enabled:e.open,onDismiss:()=>e.close(),refs:()=>[e.trigger(),e.content()]}),i(R,{get when(){return n.present()},get children(){return i(C,{get mount(){return a.portalMount()},get children(){var o=j(),c=o.firstChild;return g(o,"focusout",e.leave,!0),g(o,"focusin",e.enter,!0),g(o,"pointerleave",e.leave),g(o,"pointerenter",e.enter),P(r=>{e.setContent(r),n.setRef(r)},o),k(c,()=>t.children),z(r=>{var s={left:`${l.pos().x}px`,top:`${l.pos().y}px`,visibility:l.hidden()?"hidden":"visible",...N(l.pos().placement,K)},d=n.state()==="open"?"":void 0,u=n.state()==="closed"?"":void 0,p=m("rounded-lg bg-card kai-elevation","animate-in fade-in-0 zoom-in-95 data-[closed]:animate-out data-[closed]:fade-out-0 data-[closed]:zoom-out-95",t.class);return r.e=H(o,s,r.e),d!==r.t&&f(c,"data-expanded",r.t=d),u!==r.a&&f(c,"data-closed",r.a=u),p!==r.o&&O(c,r.o=p),r},{e:void 0,t:void 0,a:void 0,o:void 0}),o}})}})}function U(t){const[e]=A(t,["trigger","children","class","openDelay","closeDelay","placement"]);return i(y,{get openDelay(){return e.openDelay},get closeDelay(){return e.closeDelay},get children(){return[i(w,{get children(){return e.trigger}}),i(D,{get class(){return m("w-64 p-4",e.class)},get placement(){return e.placement},get children(){return e.children}})]}})}G(["focusin","focusout"]);export{U as H,y as a,w as b,D as c};
@@ -1 +0,0 @@
1
- import{c as a,m as i,d as s,a as d,b as l,i as x,t as k}from"./define-CNSKFZCd.js";import{r as v,h as f,c as M}from"./rotate-cw-jpisOdOV.js";import{I as r}from"./Icon-C2LTALdM.js";import{a as u}from"./arrow-left-GbBceGBE.js";import{f as g,c as w,b as N,s as b,p as q}from"./share-BdenF0wQ.js";import{c as z}from"./chevron-down-DcRg1aRU.js";import{c as A}from"./circle-B4fTe9v6.js";import{e as m}from"./ellipsis-CUiEJ6R1.js";import{e as L}from"./external-link-DJUmC7g2.js";import{f as j}from"./file-text-DOYfYvrh.js";import{f as C}from"./folder-DBDUBANz.js";import{i as V,g as H,p as S}from"./paperclip-DDEfmkHc.js";import{m as B}from"./message-square-MmRkvc-M.js";import{s as P}from"./settings-Cz1bMJP9.js";import{x as G}from"./x-Ckwicf6g.js";var Z=[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]],F=e=>a(r,i(e,{name:"Archive",iconNode:Z})),I=F,O=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],R=e=>a(r,i(e,{name:"ArrowUp",iconNode:O})),U=R,W=[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]],D=e=>a(r,i(e,{name:"AudioLines",iconNode:W})),E=D,J=[["path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z",key:"vv98re"}],["path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z",key:"1cyq3y"}]],K=e=>a(r,i(e,{name:"BookOpen",iconNode:J})),Q=K,T=[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]],X=e=>a(r,i(e,{name:"Box",iconNode:T})),Y=X,_=[["path",{d:"M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16",key:"jecpp"}],["rect",{width:"20",height:"14",x:"2",y:"6",rx:"2",key:"i6l2r4"}]],$=e=>a(r,i(e,{name:"Briefcase",iconNode:_})),ee=$,ae=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],ie=e=>a(r,i(e,{name:"ChevronLeft",iconNode:ae})),re=ie,oe=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]],te=e=>a(r,i(e,{name:"Clock",iconNode:oe})),ye=te,ne=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],he=e=>a(r,i(e,{name:"GitBranch",iconNode:ne})),ce=he,se=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["line",{x1:"6",x2:"6",y1:"9",y2:"21",key:"rroup"}]],de=e=>a(r,i(e,{name:"GitPullRequest",iconNode:se})),le=de,ke=[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]],me=e=>a(r,i(e,{name:"Github",iconNode:ke})),pe=me,xe=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M7 12h10",key:"b7w52i"}],["path",{d:"M10 18h4",key:"1ulq68"}]],ve=e=>a(r,i(e,{name:"ListFilter",iconNode:xe})),fe=ve,Me=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],ue=e=>a(r,i(e,{name:"Lock",iconNode:Me})),ge=ue,we=[["path",{d:"M7.9 20A9 9 0 1 0 4 16.1L2 22Z",key:"vv11sd"}]],Ne=e=>a(r,i(e,{name:"MessageCircle",iconNode:we})),be=Ne,qe=[["path",{d:"M12 2a3 3 0 0 0-3 3v7a3 3 0 0 0 6 0V5a3 3 0 0 0-3-3Z",key:"131961"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["line",{x1:"12",x2:"12",y1:"19",y2:"22",key:"x3vr5v"}]],ze=e=>a(r,i(e,{name:"Mic",iconNode:qe})),p=ze,Ae=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],Le=e=>a(r,i(e,{name:"Monitor",iconNode:Ae})),je=Le,Ce=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],Ve=e=>a(r,i(e,{name:"PanelLeft",iconNode:Ce})),He=Ve,Se=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Be=e=>a(r,i(e,{name:"Plus",iconNode:Se})),Pe=Be,Ge=[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]],Ze=e=>a(r,i(e,{name:"Search",iconNode:Ge})),Fe=Ze,Ie=[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]],Oe=e=>a(r,i(e,{name:"SlidersHorizontal",iconNode:Ie})),Re=Oe,Ue=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M8 14s1.5 2 4 2 4-2 4-2",key:"1y1vjs"}],["line",{x1:"9",x2:"9.01",y1:"9",y2:"9",key:"yxxnd0"}],["line",{x1:"15",x2:"15.01",y1:"9",y2:"9",key:"1p4y9e"}]],We=e=>a(r,i(e,{name:"Smile",iconNode:Ue})),De=We,Ee=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],Je=e=>a(r,i(e,{name:"Sparkles",iconNode:Ee})),Ke=Je,Qe=[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z",key:"ohrbg2"}]],Te=e=>a(r,i(e,{name:"SquarePen",iconNode:Qe})),Xe=Te,Ye=[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]],_e=e=>a(r,i(e,{name:"Workflow",iconNode:Ye})),$e=_e,e1=k("<img alt>"),a1=k("<span>");const i1={plus:Pe,paperclip:S,github:pe,globe:H,sparkles:Ke,settings:P,"file-text":j,folder:C,image:V,monitor:je,"message-circle":be,"message-square":B,search:Fe,mic:p,"audio-lines":E,x:G,"chevron-down":z,pencil:q,"book-open":Q,code:M,smile:De,share:b,"arrow-left":u,"more-horizontal":m,"chevron-left":re,home:f,clock:ye,lock:ge,box:Y,briefcase:ee,"panel-left":He,circle:A,"sliders-horizontal":Re,workflow:$e,"square-pen":Xe,archive:I,"arrow-up":U,bookmark:N,copy:w,ellipsis:m,"external-link":L,flag:g,"git-branch":ce,"git-pull-request":le,"list-filter":fe,"rotate-cw":v};function r1(e,o){if(!e)return null;const n=i1[e];return n?a(n,{get class(){return o?.imgClass??o?.class??"mr-2 size-4 shrink-0"}}):/^(https?:|\/|data:)/.test(e)?(()=>{var t=e1();return s(t,"src",e),d(()=>l(t,o?.imgClass??o?.class??"size-4 shrink-0")),t})():(()=>{var t=a1();return x(t,e),d(y=>{var h=o?.spanClass??o?.class??"size-4 shrink-0",c=o!=null&&o.ariaHidden?"true":void 0;return h!==y.e&&l(t,y.e=h),c!==y.t&&s(t,"aria-hidden",y.t=c),y},{e:void 0,t:void 0}),t})()}export{p as m,r1 as r};
@@ -1 +0,0 @@
1
- import{I as e}from"./Icon-C2LTALdM.js";import{c as m,m as o}from"./define-CNSKFZCd.js";var r=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]],s=a=>m(e,o(a,{name:"MessageSquare",iconNode:r})),i=s;export{i as m};
@@ -1 +0,0 @@
1
- import{s as p,g as O,h as C,c as u,i as h,a as f,b as m,k as w,m as y,S,t as v,v as $,w as z,p as M,u as R,e as B}from"./define-CNSKFZCd.js";import{c as g}from"./cn-CU7UAWzk.js";import{M as E}from"./markdown-n3Xbj3PR.js";import{c as P}from"./chevron-down-DcRg1aRU.js";const q=1;function A(i,s){let e=-1;const o=new ResizeObserver(n=>{var r;const t=((r=n[n.length-1])==null?void 0:r.contentRect.height)??i.getBoundingClientRect().height;(e<0||Math.abs(t-e)>q)&&(e=t,s(t))});return o.observe(i),()=>o.disconnect()}var D=v("<div>"),F=v("<button><span class=text-primary></span><div>"),G=v("<div style=max-height:0px><div>");const k=$();function H(){const i=z(k);if(!i)throw new Error("useReasoningContext must be used within a Reasoning provider");return i}function I(i){var s;const[e]=p(i,["children","class","open","defaultOpen","onOpenChange","isStreaming","disabled","controllerRef"]),[o,n]=O(e.defaultOpen??!1),[r,t]=O(!1),a=()=>e.open!==void 0,c=()=>a()?e.open:o(),d=()=>!!e.disabled,x=l=>{var b;c()!==l&&(a()||n(l),(b=e.onOpenChange)==null||b.call(e,l))};return C(()=>{const l=e.isStreaming;l&&!r()&&(a()||n(!0),t(!0)),!l&&r()&&(a()||n(!1),t(!1))}),(s=e.controllerRef)==null||s.call(e,{open:c,setOpen:x}),u(k.Provider,{value:{isOpen:c,onOpenChange:x,disabled:d},get children(){var l=D();return h(l,()=>e.children),f(()=>m(l,e.class)),l}})}function T(i){const[s,e]=p(i,["children","class"]),{isOpen:o,onOpenChange:n,disabled:r}=H();return(()=>{var t=F(),a=t.firstChild,c=a.nextSibling;return t.$$click=()=>{r()||n(!o())},w(t,y({get class(){return g("flex cursor-pointer items-center gap-2 text-meta",s.class)},get disabled(){return r()||void 0}},e),!1,!0),h(a,()=>s.children),h(c,u(P,{class:"size-4"})),f(()=>m(c,g("transform transition-transform",o()?"rotate-180":""))),t})()}function _(i){const[s,e]=p(i,["children","class","contentClass","markdown"]),{isOpen:o}=H();let n,r;return C(()=>{if(!n||!r)return;const t=A(r,()=>{n&&r&&o()&&(n.style.maxHeight=`${r.scrollHeight}px`)});o()?n.style.maxHeight=`${r.scrollHeight}px`:n.style.maxHeight="0px",M(t)}),(()=>{var t=G(),a=t.firstChild,c=n;typeof c=="function"?R(c,t):n=t,w(t,y({get class(){return g("overflow-hidden transition-[max-height] duration-150 ease-out",s.class)}},e),!1,!0);var d=r;return typeof d=="function"?R(d,a):r=a,h(a,u(S,{get when(){return s.markdown},get fallback(){return s.children},get children(){return u(E,{get content(){return s.children}})}})),f(()=>m(a,g("text-muted-foreground text-body",s.contentClass))),t})()}B(["click"]);export{I as R,T as a,_ as b};
@@ -1 +0,0 @@
1
- import{s as F,c as j,k as E,m as M,i as N,w as te,g as H,a as ne,b as ie,d as re,S as le,t as P,v as ae,e as oe}from"./define-CNSKFZCd.js";import{c as B}from"./cn-CU7UAWzk.js";var T=P("<div>"),se=P('<div><svg viewBox="0 0 4 8"fill=currentColor><circle cx=1 cy=1.5 r=0.6></circle><circle cx=3 cy=1.5 r=0.6></circle><circle cx=1 cy=4 r=0.6></circle><circle cx=3 cy=4 r=0.6></circle><circle cx=1 cy=6.5 r=0.6></circle><circle cx=3 cy=6.5 r=0.6>'),ce=P("<div role=separator aria-valuemin=0 aria-valuemax=100>");const I=ae();function G(a){if(a==null||a==="")return;if(typeof a=="number")return Number.isFinite(a)?`${a}%`:void 0;const t=a.trim();if(t==="")return;if(t.endsWith("%")||t.endsWith("px"))return t;const o=Number(t);return Number.isFinite(o)?`${o}%`:void 0}function A(a){const t=/^\s*(-?\d*\.?\d+)(px|%)\s*$/.exec(a);return t?{n:parseFloat(t[1]),unit:t[2]}:null}function X(a,t,o){if(a===void 0)return;const u=A(a),d=t===void 0?void 0:A(t),x=o===void 0?void 0:A(o);if(u&&(t===void 0||d?.unit===u.unit)&&(o===void 0||x?.unit===u.unit)){let i=u.n;return x&&(i=Math.min(i,x.n)),d&&(i=Math.max(i,d.n)),`${i}${u.unit}`}return t!==void 0&&o!==void 0?`clamp(${t}, ${a}, ${o})`:o!==void 0?`min(${a}, ${o})`:t!==void 0?`max(${t}, ${a})`:a}function ue(a){const[t,o]=F(a,["orientation","children","class"]),u=()=>t.orientation??"horizontal";return j(I.Provider,{get value(){return{orientation:u()}},get children(){var d=T();return E(d,M({get class(){return B("flex h-full w-full",u()==="vertical"?"flex-col":"flex-row",t.class)},get"data-orientation"(){return u()}},o),!1,!0),N(d,()=>t.children),d}})}function de(a){const[t,o]=F(a,["defaultSize","minSize","maxSize","locked","hidden","children","class","style"]),u=(i,m,g)=>{const n=G(i);if(n!==void 0)return n;const l=m==null?"":String(m).trim();if(l!==""){const h=parseFloat(l);if(Number.isFinite(h))return`${h}px`}const f=g==null?"":String(g).trim();if(f!==""){const h=parseFloat(f);if(Number.isFinite(h))return`${h}%`}},d=()=>{const i=o,m=u(t.minSize,i["data-min-size"],i["data-min-size-pct"]),g=u(t.maxSize,i["data-max-size"],i["data-max-size-pct"]),n=X(G(t.defaultSize),m,g);return{...n!==void 0?{"flex-basis":n,"flex-grow":"0","flex-shrink":"0"}:{flex:"1 1 0%"},display:"grid","grid-template-rows":"minmax(0, 1fr)","grid-template-columns":"minmax(0, 1fr)","min-width":"0","min-height":"0"}},x=()=>{const i={},m=(g,n,l)=>{if(g==null||g==="")return;if(typeof g=="number"){i[l]=String(g);return}const f=g.trim();f.endsWith("px")?i[n]=String(parseFloat(f)):f.endsWith("%")?i[l]=String(parseFloat(f)):Number.isFinite(Number(f))&&(i[l]=f)};return m(t.minSize,"data-min-size","data-min-size-pct"),m(t.maxSize,"data-max-size","data-max-size-pct"),m(t.defaultSize,"data-default-size","data-default-size-pct"),i};return(()=>{var i=T();return E(i,M({get class(){return B("overflow-hidden",t.class)},get style(){return{...d(),...typeof t.style=="object"?t.style:{}}},get"data-locked"(){return t.locked?"":void 0},get hidden(){return t.hidden||void 0}},x,o),!1,!0),N(i,()=>t.children),i})()}function k(a,t,o,u){const d=a.dataset[t==="min"?"minSize":"maxSize"];if(d!==void 0&&d!==""){const i=parseFloat(d);if(Number.isFinite(i))return i}const x=a.dataset[t==="min"?"minSizePct":"maxSizePct"];if(x!==void 0&&x!==""){const i=parseFloat(x);if(Number.isFinite(i))return i/100*o}return u}function fe(a){const[t,o]=F(a,["withHandle","onPanelResize","class","keyboardStep","static","orientation"]),u=te(I),d=()=>t.orientation??u?.orientation??"horizontal",[x,i]=H(!1),m=()=>!!t.static;let g=0,n=null,l=null,f=0,h=0;const S=()=>d()==="horizontal",v=()=>S()?"width":"height",Y=e=>{if(m())return;const r=e.currentTarget;n=r.previousElementSibling,l=r.nextElementSibling,!(!n||!l)&&(e.preventDefault(),i(!0),r.setPointerCapture(e.pointerId),g=S()?e.clientX:e.clientY,f=n.getBoundingClientRect()[v()],h=l.getBoundingClientRect()[v()])},L=e=>{if(!x()||!n||!l)return;const r=(S()?e.clientX:e.clientY)-g;R(r)};function R(e){var r;if(!n||!l)return!1;const s=n.parentElement,c=s?s.getBoundingClientRect()[v()]:0,w=k(n,"min",c,0),b=k(n,"max",c,999999),z=k(l,"min",c,0),$=k(l,"max",c,999999);let p=-1/0,y=1/0;if(p=Math.max(p,w-f),y=Math.min(y,b-f),p=Math.max(p,h-$),y=Math.min(y,h-z),p>y)return!1;const C=Math.max(p,Math.min(y,e)),_=f+C,ee=h-C;return n.style.flexBasis=`${_}px`,n.style.flexGrow="0",n.style.flexShrink="0",l.style.flexBasis=`${ee}px`,l.style.flexGrow="0",l.style.flexShrink="0",(r=t.onPanelResize)==null||r.call(t,C),!0}function D(){if(!n||!l)return;const e=n.parentElement;if(!e)return;const r=e.getBoundingClientRect()[v()];if(r<=0)return;const s=n.getBoundingClientRect()[v()]/r*100,c=l.getBoundingClientRect()[v()]/r*100;n.style.flexBasis=`${s}%`,l.style.flexBasis=`${c}%`}const U=()=>{D(),i(!1),n=null,l=null};function W(e){const r=e.dataset.defaultSize,s=e.dataset.defaultSizePct;r!==void 0&&r!==""?(e.style.flexBasis=`${r}px`,e.style.flexGrow="0",e.style.flexShrink="0"):s!==void 0&&s!==""?(e.style.flexBasis=`${s}%`,e.style.flexGrow="0",e.style.flexShrink="0"):(e.style.flexBasis="",e.style.flexGrow="1",e.style.flexShrink="1")}const q=e=>{var r;if(m())return;const s=e.currentTarget,c=s.previousElementSibling,w=s.nextElementSibling;!c||!w||(e.preventDefault(),W(c),W(w),(r=t.onPanelResize)==null||r.call(t,0))},J=H(50),[K,O]=J;function Q(e){return n=e.previousElementSibling,l=e.nextElementSibling,!n||!l?!1:(f=n.getBoundingClientRect()[v()],h=l.getBoundingClientRect()[v()],!0)}function V(){if(!n)return;const e=n.parentElement;if(!e)return;const r=e.getBoundingClientRect()[v()];if(r<=0)return;const s=n.getBoundingClientRect()[v()]/r*100;O(Math.round(s))}const Z=e=>{if(m())return;const r=e.currentTarget,s=t.keyboardStep??16,c=S(),w=c?"ArrowLeft":"ArrowUp",b=c?"ArrowRight":"ArrowDown";let z=null;if(e.key===w)z=-s;else if(e.key===b)z=s;else if(e.key==="Home")z="min";else if(e.key==="End")z="max";else return;if(e.preventDefault(),!!Q(r)){if(z==="min"){const $=n.parentElement,p=$?$.getBoundingClientRect()[v()]:0,y=k(n,"min",p,0);R(y-f)}else if(z==="max"){const $=n.parentElement,p=$?$.getBoundingClientRect()[v()]:0,y=k(n,"max",p,999999);R(y-f)}else R(z);V(),D(),n=null,l=null}};return(()=>{var e=ce();return e.$$keydown=Z,e.$$dblclick=q,e.$$pointerup=U,e.$$pointermove=L,e.$$pointerdown=Y,E(e,M({get class(){return B("relative flex items-center justify-center",t.class)},get style(){return{cursor:m()?"default":S()?"col-resize":"row-resize",[S()?"width":"height"]:"8px",background:x()?"var(--color-muted-foreground, #98989f)":"transparent",opacity:x()?"0.3":"1"}},get tabIndex(){return m()?void 0:0},get"data-orientation"(){return d()},get"data-static"(){return m()?"":void 0},get"aria-orientation"(){return S()?"vertical":"horizontal"},get"aria-valuenow"(){return K()}},o),!1,!0),N(e,j(le,{get when(){return t.withHandle},get children(){var r=se(),s=r.firstChild;return ne(c=>{var w=B("z-10 flex items-center justify-center",S()?"h-6 w-3 flex-col":"h-3 w-6 flex-row"),b=B("text-muted-foreground/40",S()?"h-3 w-2":"h-2 w-3 rotate-90");return w!==c.e&&ie(r,c.e=w),b!==c.t&&re(s,"class",c.t=b),c},{e:void 0,t:void 0}),r}})),e})()}oe(["pointerdown","pointermove","pointerup","dblclick","keydown"]);export{ue as R,de as a,fe as b,X as c,G as n};
@@ -1 +0,0 @@
1
- import{s as m,c as u,i as v,F as w,S as p,t as c,k as x,m as y}from"./define-CNSKFZCd.js";import{c as b}from"./cn-CU7UAWzk.js";var k=c("<div part=skeleton>"),S=c('<div class="flex w-full flex-col gap-2">');const i=r=>typeof r=="number"?`${r}px`:r,F=r=>r==="circle"?"rounded-full":r==="text"?"rounded":"rounded-md";function j(r){const[t,o]=m(r,["class","variant","width","height","lines","style"]),s=()=>t.width!=null,d=()=>t.height!=null,g=()=>!s()&&t.variant!=null&&t.variant!=="circle",f=a=>{const e=typeof t.style=="object"&&t.style?{...t.style}:{};if(t.variant==="circle"){const n=i(t.width)??i(t.height)??"2.5rem";return e.width=n,e.height=n,e}return a?e.width="70%":s()&&(e.width=i(t.width)),d()?e.height=i(t.height):t.variant==="text"&&(e.height="0.75rem"),e},h=(a=!1)=>(()=>{var e=k();return x(e,y({get class(){return b("animate-pulse bg-foreground/10",F(t.variant),g()&&"w-full",t.class)},get style(){return f(a)}},o),!1,!1),e})(),l=()=>t.variant==="text"?Math.max(1,t.lines??1):1;return u(p,{get when(){return l()>1},get fallback(){return h()},get children(){var a=S();return v(a,u(w,{get each(){return Array.from({length:l()})},children:(e,n)=>h(n()===l()-1)})),a}})}export{j as S};
@@ -1 +0,0 @@
1
- import{p as s,s as a,u,k as l,m as f,t as g}from"./define-CNSKFZCd.js";import{c as m}from"./cn-CU7UAWzk.js";function c(i={}){let e;function r(){if(!e)return;e.style.height="auto";const t=e.scrollHeight;i.maxHeight&&t>i.maxHeight?(e.style.height=`${i.maxHeight}px`,e.style.overflowY="auto"):(e.style.height=`${t}px`,e.style.overflowY="hidden")}function n(t){e=t,t.addEventListener("input",r),requestAnimationFrame(r),s(()=>t.removeEventListener("input",r))}return{ref:n,resize:r}}var h=g("<textarea rows=1>");function d(i){const[e,r]=a(i,["class","maxHeight","autoResize"]),{ref:n}=c({maxHeight:e.maxHeight});return(()=>{var t=h(),o=e.autoResize!==!1?n:void 0;return typeof o=="function"&&u(o,t),l(t,f({get class(){return m("w-full resize-none rounded-md bg-transparent text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",e.class)}},r),!1,!1),t})()}export{d as T};
@@ -1 +0,0 @@
1
- import{I as m}from"./Icon-C2LTALdM.js";import{c as o,m as r}from"./define-CNSKFZCd.js";var e=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],t=a=>o(m,r(a,{name:"X",iconNode:e})),p=t;export{p as x};