@arcadeai/design-system 3.33.2 → 3.35.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 (121) hide show
  1. package/README.md +30 -317
  2. package/dist/arcade-logo-BVV97-cr.js +33 -0
  3. package/dist/assets/icons/granola.js +14 -0
  4. package/dist/assets/images/arcade-grid.d.ts +1 -1
  5. package/dist/assets/images/arcade-grid.d.ts.map +1 -1
  6. package/dist/assets/images/arcade-logo.d.ts +1 -1
  7. package/dist/assets/images/arcade-logo.d.ts.map +1 -1
  8. package/dist/assets/images/arcade-logo.js +10 -31
  9. package/dist/components/index.js +597 -567
  10. package/dist/components/ui/atoms/accordion.d.ts +1 -1
  11. package/dist/components/ui/atoms/accordion.d.ts.map +1 -1
  12. package/dist/components/ui/atoms/alert-dialog.d.ts +1 -1
  13. package/dist/components/ui/atoms/alert-dialog.d.ts.map +1 -1
  14. package/dist/components/ui/atoms/alert.d.ts +1 -1
  15. package/dist/components/ui/atoms/alert.d.ts.map +1 -1
  16. package/dist/components/ui/atoms/avatar-notification-badge.d.ts +34 -0
  17. package/dist/components/ui/atoms/avatar-notification-badge.d.ts.map +1 -0
  18. package/dist/components/ui/atoms/avatar-notification-badge.js +78 -0
  19. package/dist/components/ui/atoms/avatar.d.ts +1 -1
  20. package/dist/components/ui/atoms/avatar.d.ts.map +1 -1
  21. package/dist/components/ui/atoms/breadcrumb.d.ts +1 -1
  22. package/dist/components/ui/atoms/breadcrumb.d.ts.map +1 -1
  23. package/dist/components/ui/atoms/card.d.ts +1 -1
  24. package/dist/components/ui/atoms/card.d.ts.map +1 -1
  25. package/dist/components/ui/atoms/chart.d.ts +1 -1
  26. package/dist/components/ui/atoms/chart.d.ts.map +1 -1
  27. package/dist/components/ui/atoms/chat-container.d.ts +1 -1
  28. package/dist/components/ui/atoms/chat-container.d.ts.map +1 -1
  29. package/dist/components/ui/atoms/code-block.d.ts +1 -1
  30. package/dist/components/ui/atoms/code-block.d.ts.map +1 -1
  31. package/dist/components/ui/atoms/collapsible.d.ts +1 -1
  32. package/dist/components/ui/atoms/command.d.ts +1 -1
  33. package/dist/components/ui/atoms/command.d.ts.map +1 -1
  34. package/dist/components/ui/atoms/command.js +364 -288
  35. package/dist/components/ui/atoms/copy-button.d.ts +1 -1
  36. package/dist/components/ui/atoms/copy-button.d.ts.map +1 -1
  37. package/dist/components/ui/atoms/dropdown-menu.d.ts +1 -1
  38. package/dist/components/ui/atoms/dropdown-menu.d.ts.map +1 -1
  39. package/dist/components/ui/atoms/form.d.ts +1 -1
  40. package/dist/components/ui/atoms/form.d.ts.map +1 -1
  41. package/dist/components/ui/atoms/hover-card.d.ts +1 -1
  42. package/dist/components/ui/atoms/icons/granola.d.ts +4 -0
  43. package/dist/components/ui/atoms/icons/granola.d.ts.map +1 -0
  44. package/dist/components/ui/atoms/icons/granola.js +20 -0
  45. package/dist/components/ui/atoms/icons/index.d.ts +1 -0
  46. package/dist/components/ui/atoms/icons/index.d.ts.map +1 -1
  47. package/dist/components/ui/atoms/icons/index.js +156 -154
  48. package/dist/components/ui/atoms/index.d.ts +3 -0
  49. package/dist/components/ui/atoms/index.d.ts.map +1 -1
  50. package/dist/components/ui/atoms/index.js +514 -504
  51. package/dist/components/ui/atoms/json-highlight.d.ts +60 -0
  52. package/dist/components/ui/atoms/json-highlight.d.ts.map +1 -0
  53. package/dist/components/ui/atoms/json-highlight.js +77 -0
  54. package/dist/components/ui/atoms/loader.d.ts +1 -1
  55. package/dist/components/ui/atoms/loader.d.ts.map +1 -1
  56. package/dist/components/ui/atoms/markdown.js +1 -1
  57. package/dist/components/ui/atoms/popover.d.ts +1 -1
  58. package/dist/components/ui/atoms/popover.d.ts.map +1 -1
  59. package/dist/components/ui/atoms/resizable.d.ts +1 -1
  60. package/dist/components/ui/atoms/resizable.d.ts.map +1 -1
  61. package/dist/components/ui/atoms/scroll-button.d.ts +1 -1
  62. package/dist/components/ui/atoms/scroll-button.d.ts.map +1 -1
  63. package/dist/components/ui/atoms/scroll-button.js +8 -8
  64. package/dist/components/ui/atoms/sheet.d.ts +1 -1
  65. package/dist/components/ui/atoms/sheet.d.ts.map +1 -1
  66. package/dist/components/ui/atoms/table.d.ts +1 -1
  67. package/dist/components/ui/atoms/table.d.ts.map +1 -1
  68. package/dist/components/ui/atoms/tabs.d.ts +1 -1
  69. package/dist/components/ui/atoms/tabs.d.ts.map +1 -1
  70. package/dist/components/ui/atoms/tooltip.d.ts +4 -2
  71. package/dist/components/ui/atoms/tooltip.d.ts.map +1 -1
  72. package/dist/components/ui/atoms/tooltip.js +3 -2
  73. package/dist/components/ui/atoms/view-tools-control.d.ts +1 -1
  74. package/dist/components/ui/atoms/view-tools-control.d.ts.map +1 -1
  75. package/dist/components/ui/atoms/view-tools-control.js +20 -19
  76. package/dist/components/ui/index.js +597 -567
  77. package/dist/components/ui/molecules/chat-message-list.d.ts +5 -2
  78. package/dist/components/ui/molecules/chat-message-list.d.ts.map +1 -1
  79. package/dist/components/ui/molecules/chat-message-list.js +2 -2
  80. package/dist/components/ui/molecules/index.d.ts +8 -0
  81. package/dist/components/ui/molecules/index.d.ts.map +1 -1
  82. package/dist/components/ui/molecules/index.js +48 -28
  83. package/dist/components/ui/molecules/message.d.ts +2 -2
  84. package/dist/components/ui/molecules/message.d.ts.map +1 -1
  85. package/dist/components/ui/molecules/message.js +1 -1
  86. package/dist/components/ui/molecules/prompt-input.d.ts +1 -1
  87. package/dist/components/ui/molecules/prompt-input.d.ts.map +1 -1
  88. package/dist/components/ui/molecules/prompt-input.js +20 -20
  89. package/dist/components/ui/molecules/requirement-badges.js +9 -5
  90. package/dist/components/ui/molecules/switcher.d.ts +83 -0
  91. package/dist/components/ui/molecules/switcher.d.ts.map +1 -0
  92. package/dist/components/ui/molecules/switcher.js +164 -0
  93. package/dist/components/ui/molecules/tool-authorization.d.ts +56 -0
  94. package/dist/components/ui/molecules/tool-authorization.d.ts.map +1 -0
  95. package/dist/components/ui/molecules/tool-authorization.js +160 -0
  96. package/dist/components/ui/molecules/tool-call-accordion.d.ts +36 -0
  97. package/dist/components/ui/molecules/tool-call-accordion.d.ts.map +1 -0
  98. package/dist/components/ui/molecules/tool-call-accordion.js +301 -0
  99. package/dist/components/ui/molecules/toolkit-card.js +1 -1
  100. package/dist/components/ui/molecules/user-nav.d.ts +65 -0
  101. package/dist/components/ui/molecules/user-nav.d.ts.map +1 -0
  102. package/dist/components/ui/molecules/user-nav.js +154 -0
  103. package/dist/components/ui/pages/chat-page.d.ts +18 -10
  104. package/dist/components/ui/pages/chat-page.d.ts.map +1 -1
  105. package/dist/components/ui/pages/chat-page.js +328 -243
  106. package/dist/components/ui/pages/login-page.js +6 -6
  107. package/dist/components/ui/templates/chat-template.d.ts +1 -1
  108. package/dist/components/ui/templates/chat-template.d.ts.map +1 -1
  109. package/dist/components/ui/templates/chat-template.js +11 -11
  110. package/dist/{highlighted-body-TPN3WLV5-DyOGcftJ.js → highlighted-body-TPN3WLV5-D6UnKGod.js} +1 -1
  111. package/dist/lib/utils.js +1 -1
  112. package/dist/main.js +623 -593
  113. package/dist/{markdown-9KGBuupR.js → markdown-D0xxRbwP.js} +2597 -2592
  114. package/dist/mermaid-O7DHMXV3-gUrB-Xs1.js +4 -0
  115. package/dist/metadata/toolkit-icons.d.ts.map +1 -1
  116. package/dist/metadata/toolkit-icons.js +130 -128
  117. package/dist/metadata/toolkits.d.ts.map +1 -1
  118. package/dist/metadata/toolkits.js +13 -0
  119. package/dist/{toolkit-card-k8jio69G.js → toolkit-card-B97E7TBA.js} +15 -12
  120. package/package.json +6 -6
  121. package/dist/mermaid-O7DHMXV3-CUp9wvRi.js +0 -4
@@ -7,7 +7,7 @@ export type ChatMessageItem = {
7
7
  /** Unique identifier for the message */
8
8
  id: string;
9
9
  /** Role of the message sender */
10
- role: "user" | "assistant";
10
+ role: "user" | "assistant" | "system";
11
11
  /** Text content of the message */
12
12
  content: string;
13
13
  };
@@ -35,9 +35,12 @@ export type ChatMessageListProps = {
35
35
  * of simple text-based conversations. Use `renderMessage` to customize.
36
36
  */
37
37
  export declare function ChatMessageList({ messages, isStreaming, renderMessage, loadingIndicator, children, className, ...props }: ChatMessageListProps): import("react/jsx-runtime").JSX.Element | null;
38
- export type ChatUserMessageProps = React.ComponentProps<"div">;
38
+ export type ChatUserMessageProps = Omit<React.ComponentProps<"div">, "children"> & {
39
+ children: string;
40
+ };
39
41
  /**
40
42
  * Pre-styled user message bubble. Right-aligned with primary-colored background.
43
+ * Accepts only string children — use `ChatAssistantMessage` for rich content.
41
44
  */
42
45
  export declare function ChatUserMessage({ children, className, ...props }: ChatUserMessageProps): import("react/jsx-runtime").JSX.Element;
43
46
  export type ChatAssistantMessageProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-message-list.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/chat-message-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAQpC;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mFAAmF;IACnF,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAIhC;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,WAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,kDA0EtB;AAID,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAE/D;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAYtB;AAID,MAAM,MAAM,yBAAyB,GAAG;IACtC,iEAAiE;IACjE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,WAAW,EACX,SAAS,EACT,GAAG,KAAK,EACT,EAAE,yBAAyB,2CAoB3B;AAID,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEtE;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAU7B"}
1
+ {"version":3,"file":"chat-message-list.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/chat-message-list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAQpC;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mFAAmF;IACnF,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,KAC/C,KAAK,CAAC,SAAS,CAAC;IACrB,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACpC,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAIhC;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,WAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,kDA0EtB;AAID,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAC3B,UAAU,CACX,GAAG;IACF,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAYtB;AAID,MAAM,MAAM,yBAAyB,GAAG;IACtC,iEAAiE;IACjE,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,QAAQ,EACR,WAAW,EACX,SAAS,EACT,GAAG,KAAK,EACT,EAAE,yBAAyB,2CAoB3B;AAID,MAAM,MAAM,2BAA2B,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEtE;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAU7B"}
@@ -42,10 +42,10 @@ function A({
42
42
  children: [
43
43
  t.map((n) => {
44
44
  const u = n.role === "user", s = n === o;
45
- return u || n.content ? e ? /* @__PURE__ */ a(v, { children: e(n, {
45
+ return e ? /* @__PURE__ */ a(v, { children: e(n, {
46
46
  isLast: s,
47
47
  isStreaming: s && r
48
- }) }, n.id) : u ? /* @__PURE__ */ a(N, { children: n.content }, n.id) : /* @__PURE__ */ a(
48
+ }) }, n.id) : u || n.content ? u ? /* @__PURE__ */ a(N, { children: n.content }, n.id) : /* @__PURE__ */ a(
49
49
  w,
50
50
  {
51
51
  isAnimating: s && r,
@@ -12,6 +12,14 @@ export type { Step, StepStatus, StepsProgressProps } from './steps-progress';
12
12
  export { StepsProgress } from './steps-progress';
13
13
  export type { SuggestionCardProps } from './suggestion-card';
14
14
  export { SuggestionCard } from './suggestion-card';
15
+ export type { SwitcherContentProps, SwitcherInputProps, SwitcherItemProps, SwitcherProps, SwitcherTriggerProps, } from './switcher';
16
+ export { Switcher, SwitcherContent, SwitcherInput, SwitcherItem, SwitcherTrigger, useSwitcher, } from './switcher';
17
+ export type { ToolAuthorizationArgsProps, ToolAuthorizationHeaderProps, ToolAuthorizationMessageProps, ToolAuthorizationProps, ToolAuthorizationStatus, } from './tool-authorization';
18
+ export { ToolAuthorization, ToolAuthorizationArgs, ToolAuthorizationContent, ToolAuthorizationHeader, ToolAuthorizationMessage, } from './tool-authorization';
19
+ export type { ToolCallAccordionContentProps, ToolCallAccordionItemProps, ToolCallAccordionProps, ToolCallAccordionTriggerProps, ToolCallState, ToolCallView, } from './tool-call-accordion';
20
+ export { ToolCallAccordion, ToolCallAccordionContent, ToolCallAccordionItem, ToolCallAccordionTrigger, } from './tool-call-accordion';
15
21
  export { ToolCard } from './tool-card';
16
22
  export { ToolkitCard } from './toolkit-card';
23
+ export type { UserNavProps, UserNavSize } from './user-nav';
24
+ export { UserNav } from './user-nav';
17
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAE/G,YAAY,EACV,yBAAyB,EACzB,eAAe,EACf,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/index.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAE/G,YAAY,EACV,yBAAyB,EACzB,eAAe,EACf,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,sBAAsB,EACtB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,QAAQ,EACR,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,6BAA6B,EAC7B,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,6BAA6B,EAC7B,aAAa,EACb,YAAY,GACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC"}
@@ -1,31 +1,51 @@
1
- import { ChatAssistantMessage as o, ChatMessageList as r, ChatStreamingIndicator as s, ChatUserMessage as a } from "./chat-message-list.js";
2
- import { DateTimePicker as m } from "./date-time-picker.js";
3
- import { EmptyState as g } from "./empty-state.js";
4
- import { Message as x, MessageAction as f, MessageActions as C, MessageAvatar as M, MessageContent as c } from "./message.js";
5
- import { PromptInput as A, PromptInputAction as P, PromptInputActions as d, PromptInputTextarea as I } from "./prompt-input.js";
6
- import { R as h, T as S } from "../../../toolkit-card-k8jio69G.js";
7
- import { StepsProgress as l } from "./steps-progress.js";
8
- import { SuggestionCard as q } from "./suggestion-card.js";
9
- import { ToolCard as y } from "./tool-card.js";
1
+ import { ChatAssistantMessage as e, ChatMessageList as r, ChatStreamingIndicator as a, ChatUserMessage as i } from "./chat-message-list.js";
2
+ import { DateTimePicker as n } from "./date-time-picker.js";
3
+ import { EmptyState as m } from "./empty-state.js";
4
+ import { Message as g, MessageAction as l, MessageActions as A, MessageAvatar as T, MessageContent as h } from "./message.js";
5
+ import { PromptInput as x, PromptInputAction as f, PromptInputActions as u, PromptInputTextarea as d } from "./prompt-input.js";
6
+ import { R as M, T as I } from "../../../toolkit-card-B97E7TBA.js";
7
+ import { StepsProgress as P } from "./steps-progress.js";
8
+ import { SuggestionCard as k } from "./suggestion-card.js";
9
+ import { Switcher as R, SwitcherContent as U, SwitcherInput as q, SwitcherItem as y, SwitcherTrigger as B, useSwitcher as D } from "./switcher.js";
10
+ import { ToolAuthorization as H, ToolAuthorizationArgs as L, ToolAuthorizationContent as N, ToolAuthorizationHeader as b, ToolAuthorizationMessage as j } from "./tool-authorization.js";
11
+ import { ToolCallAccordion as G, ToolCallAccordionContent as J, ToolCallAccordionItem as K, ToolCallAccordionTrigger as O } from "./tool-call-accordion.js";
12
+ import { ToolCard as V } from "./tool-card.js";
13
+ import { UserNav as X } from "./user-nav.js";
10
14
  export {
11
- o as ChatAssistantMessage,
15
+ e as ChatAssistantMessage,
12
16
  r as ChatMessageList,
13
- s as ChatStreamingIndicator,
14
- a as ChatUserMessage,
15
- m as DateTimePicker,
16
- g as EmptyState,
17
- x as Message,
18
- f as MessageAction,
19
- C as MessageActions,
20
- M as MessageAvatar,
21
- c as MessageContent,
22
- A as PromptInput,
23
- P as PromptInputAction,
24
- d as PromptInputActions,
25
- I as PromptInputTextarea,
26
- h as RequirementBadges,
27
- l as StepsProgress,
28
- q as SuggestionCard,
29
- y as ToolCard,
30
- S as ToolkitCard
17
+ a as ChatStreamingIndicator,
18
+ i as ChatUserMessage,
19
+ n as DateTimePicker,
20
+ m as EmptyState,
21
+ g as Message,
22
+ l as MessageAction,
23
+ A as MessageActions,
24
+ T as MessageAvatar,
25
+ h as MessageContent,
26
+ x as PromptInput,
27
+ f as PromptInputAction,
28
+ u as PromptInputActions,
29
+ d as PromptInputTextarea,
30
+ M as RequirementBadges,
31
+ P as StepsProgress,
32
+ k as SuggestionCard,
33
+ R as Switcher,
34
+ U as SwitcherContent,
35
+ q as SwitcherInput,
36
+ y as SwitcherItem,
37
+ B as SwitcherTrigger,
38
+ H as ToolAuthorization,
39
+ L as ToolAuthorizationArgs,
40
+ N as ToolAuthorizationContent,
41
+ b as ToolAuthorizationHeader,
42
+ j as ToolAuthorizationMessage,
43
+ G as ToolCallAccordion,
44
+ J as ToolCallAccordionContent,
45
+ K as ToolCallAccordionItem,
46
+ O as ToolCallAccordionTrigger,
47
+ V as ToolCard,
48
+ I as ToolkitCard,
49
+ X as UserNav,
50
+ D as useSwitcher
31
51
  };
@@ -32,6 +32,6 @@ type MessageActionProps = {
32
32
  side?: "top" | "bottom" | "left" | "right";
33
33
  } & React.ComponentProps<typeof Tooltip>;
34
34
  declare function MessageAction({ tooltip, children, className, side, ...props }: MessageActionProps): import("react/jsx-runtime").JSX.Element;
35
- export { Message, MessageAvatar, MessageContent, MessageActions, MessageAction, };
36
- export type { MessageProps, MessageAvatarProps, MessageContentProps, MessageActionsProps, MessageActionProps, };
35
+ export type { MessageActionProps, MessageActionsProps, MessageAvatarProps, MessageContentProps, MessageProps, };
36
+ export { Message, MessageAction, MessageActions, MessageAvatar, MessageContent, };
37
37
  //# sourceMappingURL=message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAMpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EACL,OAAO,EAIR,MAAM,+BAA+B,CAAC;AAGvC,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,2CAM/D;AAED,KAAK,kBAAkB,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,aAAa,CAAC,EACrB,GAAG,EACH,GAAG,EACH,QAAQ,EACR,OAAO,EACP,SAAS,GACV,EAAE,kBAAkB,2CASpB;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,GACvC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9B,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,QAAgB,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAerB;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CASrB;AAED,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CAC5C,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzC,iBAAS,aAAa,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,kBAAkB,2CAWpB;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,cAAc,EACd,aAAa,GACd,CAAC;AACF,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,GACnB,CAAC"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/message.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAMpC,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EACL,OAAO,EAIR,MAAM,+BAA+B,CAAC;AAGvC,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,2CAM/D;AAED,KAAK,kBAAkB,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,aAAa,CAAC,EACrB,GAAG,EACH,GAAG,EACH,QAAQ,EACR,OAAO,EACP,SAAS,GACV,EAAE,kBAAkB,2CASpB;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,GACvC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9B,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,QAAgB,EAChB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAerB;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,cAAc,CAAC,EACtB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,mBAAmB,2CASrB;AAED,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CAC5C,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzC,iBAAS,aAAa,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,kBAAkB,2CAWpB;AAED,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,GACb,CAAC;AACF,OAAO,EACL,OAAO,EACP,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,GACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as o, jsxs as i } from "react/jsx-runtime";
2
2
  import { Avatar as c, AvatarImage as m, AvatarFallback as l } from "../atoms/avatar.js";
3
- import { M as d } from "../../../markdown-9KGBuupR.js";
3
+ import { M as d } from "../../../markdown-D0xxRbwP.js";
4
4
  import { TooltipProvider as p, Tooltip as u, TooltipTrigger as f, TooltipContent as g } from "../atoms/tooltip.js";
5
5
  import { cn as n } from "../../../lib/utils.js";
6
6
  function N({ children: e, className: t, ...r }) {
@@ -25,5 +25,5 @@ export type PromptInputActionProps = {
25
25
  side?: "top" | "bottom" | "left" | "right";
26
26
  } & React.ComponentProps<typeof Tooltip>;
27
27
  declare function PromptInputAction({ tooltip, children, className, side, ...props }: PromptInputActionProps): import("react/jsx-runtime").JSX.Element;
28
- export { PromptInput, PromptInputTextarea, PromptInputActions, PromptInputAction, };
28
+ export { PromptInput, PromptInputAction, PromptInputActions, PromptInputTextarea, };
29
29
  //# sourceMappingURL=prompt-input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-input.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/prompt-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EACL,OAAO,EAIR,MAAM,+BAA+B,CAAC;AA6BvC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,SAAiB,EACjB,SAAe,EACf,KAAK,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAgB,EAChB,OAAO,EACP,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA6ClB;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1C,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,SAAS,EACT,eAAuB,EACvB,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAoE1B;AAED,MAAM,MAAM,uBAAuB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAElE,iBAAS,kBAAkB,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,2CAMzB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CAC5C,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzC,iBAAS,iBAAiB,CAAC,EACzB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,sBAAsB,2CAmBxB;AAED,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,GAClB,CAAC"}
1
+ {"version":3,"file":"prompt-input.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/prompt-input.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EACL,OAAO,EAIR,MAAM,+BAA+B,CAAC;AA6BvC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAEhC,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,SAAiB,EACjB,SAAe,EACf,KAAK,EACL,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,QAAgB,EAChB,OAAO,EACP,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA6ClB;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE1C,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,SAAS,EACT,eAAuB,EACvB,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAoE1B;AAED,MAAM,MAAM,uBAAuB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAElE,iBAAS,kBAAkB,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,2CAMzB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CAC5C,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,OAAO,CAAC,CAAC;AAEzC,iBAAS,iBAAiB,CAAC,EACzB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,sBAAsB,2CAmBxB;AAED,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,CAAC"}
@@ -1,5 +1,5 @@
1
- import { jsx as a, jsxs as y } from "react/jsx-runtime";
2
- import w, { createContext as _, useState as C, useRef as k, useLayoutEffect as P, useContext as H } from "react";
1
+ import { jsx as a, jsxs as w } from "react/jsx-runtime";
2
+ import y, { createContext as _, useState as C, useRef as k, useLayoutEffect as P, useContext as H } from "react";
3
3
  import { Textarea as I } from "../atoms/textarea.js";
4
4
  import { TooltipProvider as R, Tooltip as T, TooltipTrigger as $, TooltipContent as D } from "../atoms/tooltip.js";
5
5
  import { cn as x } from "../../../lib/utils.js";
@@ -11,14 +11,14 @@ const b = _({
11
11
  maxHeight: 240,
12
12
  onSubmit: void 0,
13
13
  disabled: !1,
14
- textareaRef: w.createRef()
14
+ textareaRef: y.createRef()
15
15
  });
16
16
  function v() {
17
17
  return H(b);
18
18
  }
19
19
  function V({
20
- className: r,
21
- isLoading: o = !1,
20
+ className: o,
21
+ isLoading: r = !1,
22
22
  maxHeight: n = 240,
23
23
  value: s,
24
24
  onValueChange: i,
@@ -37,7 +37,7 @@ function V({
37
37
  b.Provider,
38
38
  {
39
39
  value: {
40
- isLoading: o,
40
+ isLoading: r,
41
41
  value: s ?? f,
42
42
  setValue: i ?? g,
43
43
  maxHeight: n,
@@ -49,8 +49,8 @@ function V({
49
49
  "div",
50
50
  {
51
51
  className: x(
52
- "cursor-text rounded-lg border border-input bg-background p-2 shadow-xs transition-[box-shadow,border-color] focus-within:border-primary focus-within:shadow-[0_0_8px_color-mix(in_oklch,var(--ring)_9%,transparent)] dark:focus-within:shadow-[0_0_8px_color-mix(in_oklch,var(--ring)_20%,transparent)]",
53
- r
52
+ "cursor-text rounded-lg border border-input bg-background p-2 shadow-xs transition-[box-shadow,border-color] focus-within:border focus-within:border-muted-foreground focus-within:shadow-[0_0_4px_color-mix(in_oklch,var(--ring)_4%,transparent)] dark:focus-within:shadow-[0_0_4px_color-mix(in_oklch,var(--ring)_8%,transparent)]",
53
+ o
54
54
  ),
55
55
  onClick: t,
56
56
  ...u,
@@ -61,8 +61,8 @@ function V({
61
61
  ) });
62
62
  }
63
63
  function E({
64
- className: r,
65
- onKeyDown: o,
64
+ className: o,
65
+ onKeyDown: r,
66
66
  disableAutosize: n = !1,
67
67
  ...s
68
68
  }) {
@@ -80,14 +80,14 @@ function E({
80
80
  const h = (t) => {
81
81
  f(t.target), l(t.target.value);
82
82
  }, g = (t) => {
83
- t.key === "Enter" && !t.shiftKey && (t.preventDefault(), d || c?.()), o?.(t);
83
+ t.key === "Enter" && !t.shiftKey && (t.preventDefault(), d || c?.()), r?.(t);
84
84
  };
85
85
  return /* @__PURE__ */ a(
86
86
  I,
87
87
  {
88
88
  className: x(
89
89
  "min-h-[44px] w-full resize-none border-none bg-transparent text-foreground shadow-none outline-none focus-visible:ring-0 focus-visible:ring-offset-0 dark:bg-transparent",
90
- r
90
+ o
91
91
  ),
92
92
  onChange: h,
93
93
  onKeyDown: g,
@@ -99,21 +99,21 @@ function E({
99
99
  );
100
100
  }
101
101
  function L({
102
- children: r,
103
- className: o,
102
+ children: o,
103
+ className: r,
104
104
  ...n
105
105
  }) {
106
- return /* @__PURE__ */ a("div", { className: x("flex items-center gap-2", o), ...n, children: r });
106
+ return /* @__PURE__ */ a("div", { className: x("flex items-center gap-2", r), ...n, children: o });
107
107
  }
108
108
  function q({
109
- tooltip: r,
110
- children: o,
109
+ tooltip: o,
110
+ children: r,
111
111
  className: n,
112
112
  side: s = "top",
113
113
  ...i
114
114
  }) {
115
115
  const { disabled: l } = v();
116
- return /* @__PURE__ */ y(T, { ...i, children: [
116
+ return /* @__PURE__ */ w(T, { ...i, children: [
117
117
  /* @__PURE__ */ a(
118
118
  $,
119
119
  {
@@ -121,10 +121,10 @@ function q({
121
121
  disabled: l,
122
122
  onClick: (e) => e.stopPropagation(),
123
123
  onMouseDown: (e) => e.preventDefault(),
124
- children: o
124
+ children: r
125
125
  }
126
126
  ),
127
- /* @__PURE__ */ a(D, { className: n, side: s, children: r })
127
+ /* @__PURE__ */ a(D, { className: n, side: s, children: o })
128
128
  ] });
129
129
  }
130
130
  export {
@@ -5,19 +5,23 @@ import "../../../lib/utils.js";
5
5
  import "../atoms/badge.js";
6
6
  import "../atoms/byoc-badge.js";
7
7
  import "../atoms/chart.js";
8
- import "../../../markdown-9KGBuupR.js";
8
+ import "../atoms/json-highlight.js";
9
+ import "../../../markdown-D0xxRbwP.js";
9
10
  import "../atoms/mobile-tooltip.js";
10
11
  import "../atoms/pro-badge.js";
11
12
  import "../../../react-resizable-panels.browser-DYl0LXfw.js";
12
13
  import "../atoms/tooltip.js";
13
14
  import "../atoms/sidebar.js";
15
+ import "../atoms/view-tools-control.js";
14
16
  import "./date-time-picker.js";
15
17
  import "./prompt-input.js";
16
- import { O as n, R as q, S as x } from "../../../toolkit-card-k8jio69G.js";
18
+ import { O as b, R as j, S as k } from "../../../toolkit-card-B97E7TBA.js";
19
+ import "./switcher.js";
20
+ import "./tool-call-accordion.js";
17
21
  import "./tool-card.js";
18
22
  import "../utils/memo.js";
19
23
  export {
20
- n as OAuthBadge,
21
- q as RequirementBadges,
22
- x as SecretsBadge
24
+ b as OAuthBadge,
25
+ j as RequirementBadges,
26
+ k as SecretsBadge
23
27
  };
@@ -0,0 +1,83 @@
1
+ import { ReactNode } from 'react';
2
+ import { DropdownMenuContent } from '../atoms/dropdown-menu';
3
+ /**
4
+ * Access the switcher context from a child component.
5
+ *
6
+ * Read `searchQuery` to filter items and conditionally render empty states.
7
+ */
8
+ declare function useSwitcher(): {
9
+ searchQuery: string;
10
+ open: boolean;
11
+ setOpen: (open: boolean) => void;
12
+ selectedValue: string | null | undefined;
13
+ };
14
+ type SwitcherRootProps = {
15
+ children: ReactNode;
16
+ /** Currently selected item value. */
17
+ value?: string | null;
18
+ /** Called when the user selects an item. Receives the item's `value` string. */
19
+ onValueChange: (value: string) => void;
20
+ /** Controlled open state. When omitted the component manages its own state. */
21
+ open?: boolean;
22
+ /** Called when open state changes. Works with both controlled and uncontrolled modes. */
23
+ onOpenChange?: (open: boolean) => void;
24
+ };
25
+ /**
26
+ * Composable searchable dropdown for selecting an item from a list.
27
+ *
28
+ * Built as compound components — combine `SwitcherTrigger`, `SwitcherContent`,
29
+ * `SwitcherInput`, and `SwitcherItem` to build any picker UI.
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * <Switcher value={activeOrg.id} onValueChange={handleSelect}>
34
+ * <SwitcherTrigger>
35
+ * <Button variant="outline">{activeOrg.name}</Button>
36
+ * </SwitcherTrigger>
37
+ * <SwitcherContent>
38
+ * <SwitcherInput placeholder="Search…" />
39
+ * <OrgItems orgs={orgs} />
40
+ * </SwitcherContent>
41
+ * </Switcher>
42
+ * ```
43
+ */
44
+ declare function Switcher({ children, value, onValueChange, open: controlledOpen, onOpenChange, }: SwitcherRootProps): import("react/jsx-runtime").JSX.Element;
45
+ type SwitcherTriggerProps = {
46
+ children: ReactNode;
47
+ className?: string;
48
+ };
49
+ declare function SwitcherTrigger({ children, className }: SwitcherTriggerProps): import("react/jsx-runtime").JSX.Element;
50
+ type SwitcherContentProps = {
51
+ children: ReactNode;
52
+ className?: string;
53
+ } & Omit<React.ComponentProps<typeof DropdownMenuContent>, "children" | "className">;
54
+ declare function SwitcherContent({ children, className, ...props }: SwitcherContentProps): import("react/jsx-runtime").JSX.Element;
55
+ type SwitcherInputProps = {
56
+ /** @default "Search…" */
57
+ placeholder?: string;
58
+ };
59
+ declare function SwitcherInput({ placeholder }: SwitcherInputProps): import("react/jsx-runtime").JSX.Element;
60
+ type SwitcherItemProps = {
61
+ /** Unique value — passed to root `onValueChange` when selected. */
62
+ value: string;
63
+ /**
64
+ * Text used for search filtering. When the search query doesn't match this
65
+ * text the item is hidden. Omit to make the item always visible.
66
+ */
67
+ textValue?: string;
68
+ /**
69
+ * Called on select *instead of* the root `onValueChange`.
70
+ * Use for items that trigger side-effects (opening dialogs, navigation)
71
+ * rather than changing the selected value.
72
+ */
73
+ onSelect?: () => void;
74
+ /** Render children directly, or use a render function to access `isSelected`. */
75
+ children: ReactNode | ((props: {
76
+ isSelected: boolean;
77
+ }) => ReactNode);
78
+ className?: string;
79
+ };
80
+ declare function SwitcherItem({ value, textValue, onSelect: itemOnSelect, children, className, }: SwitcherItemProps): import("react/jsx-runtime").JSX.Element | null;
81
+ export type { SwitcherContentProps, SwitcherInputProps, SwitcherItemProps, SwitcherRootProps as SwitcherProps, SwitcherTriggerProps, };
82
+ export { Switcher, SwitcherContent, SwitcherInput, SwitcherItem, SwitcherTrigger, useSwitcher, };
83
+ //# sourceMappingURL=switcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switcher.d.ts","sourceRoot":"","sources":["../../../../lib/components/ui/molecules/switcher.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,OAAO,CAAC;AAUlD,OAAO,EAEL,mBAAmB,EAGpB,MAAM,qCAAqC,CAAC;AA6B7C;;;;GAIG;AACH,iBAAS,WAAW;;;oBA1BF,OAAO,KAAK,IAAI;;EAkCjC;AAID,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,gFAAgF;IAChF,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,+EAA+E;IAC/E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,yFAAyF;IACzF,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,iBAAS,QAAQ,CAAC,EAChB,QAAQ,EACR,KAAK,EACL,aAAa,EACb,IAAI,EAAE,cAAc,EACpB,YAAY,GACb,EAAE,iBAAiB,2CA2CnB;AAID,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,eAAe,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,oBAAoB,2CAMrE;AAID,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CACN,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,EAChD,UAAU,GAAG,WAAW,CACzB,CAAC;AAEF,iBAAS,eAAe,CAAC,EACvB,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAgBtB;AAID,KAAK,kBAAkB,GAAG;IACxB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAIF,iBAAS,aAAa,CAAC,EAAE,WAA4B,EAAE,EAAE,kBAAkB,2CA4D1E;AAID,KAAK,iBAAiB,GAAG;IACvB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,iFAAiF;IACjF,QAAQ,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,KAAK,SAAS,CAAC,CAAC;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,iBAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,SAAS,GACV,EAAE,iBAAiB,kDA4CnB;AAID,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,IAAI,aAAa,EAClC,oBAAoB,GACrB,CAAC;AACF,OAAO,EACL,QAAQ,EACR,eAAe,EACf,aAAa,EACb,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,CAAC"}
@@ -0,0 +1,164 @@
1
+ import { jsx as i, jsxs as C } from "react/jsx-runtime";
2
+ import { Search as D } from "lucide-react";
3
+ import { createContext as x, useState as y, useRef as S, useCallback as I, useMemo as k, useEffect as R, useContext as Q } from "react";
4
+ import { DropdownMenu as T, DropdownMenuContent as E, DropdownMenuItem as M, DropdownMenuTrigger as N } from "../atoms/dropdown-menu.js";
5
+ import { Input as V } from "../atoms/input.js";
6
+ import { cn as g } from "../../../lib/utils.js";
7
+ const b = x(null);
8
+ function m() {
9
+ const t = Q(b);
10
+ if (!t)
11
+ throw new Error(
12
+ "Switcher compound components must be used within <Switcher>"
13
+ );
14
+ return t;
15
+ }
16
+ function F() {
17
+ const t = m();
18
+ return {
19
+ searchQuery: t.searchQuery,
20
+ open: t.open,
21
+ setOpen: t.setOpen,
22
+ selectedValue: t.selectedValue
23
+ };
24
+ }
25
+ function U({
26
+ children: t,
27
+ value: r,
28
+ onValueChange: o,
29
+ open: n,
30
+ onOpenChange: s
31
+ }) {
32
+ const [a, c] = y(!1), [l, e] = y(""), f = S(null), w = S(null), p = n !== void 0, u = p ? n : a, h = I(
33
+ (d) => {
34
+ p || c(d), s?.(d), d && e("");
35
+ },
36
+ [p, s]
37
+ ), v = k(
38
+ () => ({
39
+ open: u,
40
+ setOpen: h,
41
+ searchQuery: l,
42
+ setSearchQuery: e,
43
+ selectedValue: r,
44
+ onValueChange: o,
45
+ searchInputRef: f,
46
+ contentRef: w
47
+ }),
48
+ [u, h, l, r, o]
49
+ );
50
+ return /* @__PURE__ */ i(b.Provider, { value: v, children: /* @__PURE__ */ i(T, { onOpenChange: h, open: u, children: t }) });
51
+ }
52
+ function z({ children: t, className: r }) {
53
+ return /* @__PURE__ */ i(N, { asChild: !0, className: r, "data-slot": "switcher", children: t });
54
+ }
55
+ function Y({
56
+ children: t,
57
+ className: r,
58
+ ...o
59
+ }) {
60
+ const { contentRef: n } = m();
61
+ return /* @__PURE__ */ i(
62
+ E,
63
+ {
64
+ className: g(
65
+ "max-h-[var(--radix-dropdown-menu-content-available-height)] w-80 overflow-y-auto p-2",
66
+ r
67
+ ),
68
+ "data-switcher-content": !0,
69
+ ref: n,
70
+ ...o,
71
+ children: t
72
+ }
73
+ );
74
+ }
75
+ const A = 100;
76
+ function _({ placeholder: t = "Search…" }) {
77
+ const {
78
+ open: r,
79
+ searchQuery: o,
80
+ setSearchQuery: n,
81
+ setOpen: s,
82
+ contentRef: a,
83
+ searchInputRef: c
84
+ } = m();
85
+ R(() => {
86
+ if (r && c.current) {
87
+ const e = setTimeout(
88
+ () => c.current?.focus(),
89
+ A
90
+ );
91
+ return () => clearTimeout(e);
92
+ }
93
+ }, [r, c]);
94
+ function l(e) {
95
+ const f = () => a.current?.querySelector(
96
+ "[data-switcher-item]"
97
+ );
98
+ if (e.key === "Tab") {
99
+ s(!1);
100
+ return;
101
+ }
102
+ e.key === "ArrowDown" ? (e.preventDefault(), f()?.focus()) : e.key === "Enter" ? (e.preventDefault(), f()?.click()) : e.key === "Escape" && (e.preventDefault(), s(!1)), e.stopPropagation();
103
+ }
104
+ return /* @__PURE__ */ C("div", { className: "relative sticky top-0 z-10 border-border/60 border-b bg-popover pb-2", children: [
105
+ /* @__PURE__ */ i(D, { className: "absolute top-2.5 left-2 h-4 w-4 text-muted-foreground" }),
106
+ /* @__PURE__ */ i(
107
+ V,
108
+ {
109
+ className: "h-9 border-0 pl-8 focus-visible:ring-1",
110
+ onChange: (e) => n(e.target.value),
111
+ onClick: (e) => e.stopPropagation(),
112
+ onFocus: (e) => e.stopPropagation(),
113
+ onKeyDown: l,
114
+ placeholder: t,
115
+ ref: c,
116
+ value: o
117
+ }
118
+ )
119
+ ] });
120
+ }
121
+ function B({
122
+ value: t,
123
+ textValue: r,
124
+ onSelect: o,
125
+ children: n,
126
+ className: s
127
+ }) {
128
+ const {
129
+ searchQuery: a,
130
+ selectedValue: c,
131
+ onValueChange: l,
132
+ searchInputRef: e,
133
+ contentRef: f
134
+ } = m();
135
+ if (!(!a || r === void 0 || r.toLowerCase().includes(a.toLowerCase())))
136
+ return null;
137
+ const p = t === c;
138
+ return /* @__PURE__ */ i(
139
+ M,
140
+ {
141
+ className: g(
142
+ "group flex cursor-pointer items-center gap-2.5 px-3 py-2.5 hover:bg-accent/50 focus:bg-accent",
143
+ s
144
+ ),
145
+ "data-switcher-item": !0,
146
+ "data-value": t,
147
+ onClick: () => o ? o() : l(t),
148
+ onKeyDown: (u) => {
149
+ u.key === "ArrowUp" && f.current?.querySelectorAll(
150
+ "[data-switcher-item]"
151
+ )?.[0] === u.currentTarget && (u.preventDefault(), e.current?.focus());
152
+ },
153
+ children: typeof n == "function" ? n({ isSelected: p }) : n
154
+ }
155
+ );
156
+ }
157
+ export {
158
+ U as Switcher,
159
+ Y as SwitcherContent,
160
+ _ as SwitcherInput,
161
+ B as SwitcherItem,
162
+ z as SwitcherTrigger,
163
+ F as useSwitcher
164
+ };