@datum-cloud/datum-ui 3.6.0 → 3.7.1

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 (186) hide show
  1. package/dist/{action-row-DTvs91_3.mjs → action-row-BEzE9x37.mjs} +2 -3
  2. package/dist/{adapter-context-h0jCVqGO.mjs → adapter-context-XT749tyT.mjs} +1 -2
  3. package/dist/alert/index.mjs +1 -2
  4. package/dist/{alert-SAPwee1h.mjs → alert-CVckvox4.mjs} +2 -3
  5. package/dist/app-navigation/index.mjs +2 -2
  6. package/dist/{app-navigation-BB_NLEWv.mjs → app-navigation-Bcx7hr9L.mjs} +10 -16
  7. package/dist/assistant/index.mjs +418 -88
  8. package/dist/autocomplete/index.mjs +1 -2
  9. package/dist/{autocomplete-BxtzndxZ.mjs → autocomplete-fSSmRLYK.mjs} +6 -8
  10. package/dist/autosearch/index.mjs +8 -10
  11. package/dist/avatar/index.mjs +2 -3
  12. package/dist/avatar-stack/index.mjs +1 -2
  13. package/dist/{avatar-stack-BUcsjhA6.mjs → avatar-stack-2ow672bR.mjs} +3 -4
  14. package/dist/badge/index.mjs +1 -2
  15. package/dist/{badge-DOZUr5DV.mjs → badge-D7A6GfWn.mjs} +2 -3
  16. package/dist/breadcrumb/index.mjs +1 -2
  17. package/dist/{breadcrumb-DmdhC8bE.mjs → breadcrumb-D97jAZ2N.mjs} +2 -3
  18. package/dist/button/index.mjs +2 -2
  19. package/dist/{button-CDPui_Ov.mjs → button-BU8TEbJ5.mjs} +3 -4
  20. package/dist/{button-CsdF61EI.mjs → button-C57mkFkS.mjs} +2 -3
  21. package/dist/{button-DoMqfQLu.mjs → button-Dj6cKrWj.mjs} +4 -6
  22. package/dist/button-group/index.mjs +1 -2
  23. package/dist/{button-group-DFrTH4L8.mjs → button-group-C3GKo-0p.mjs} +3 -4
  24. package/dist/calendar/index.mjs +4 -5
  25. package/dist/{calendar-date-picker-DPvVAW2I.mjs → calendar-date-picker-BUwgVaI1.mjs} +3 -4
  26. package/dist/card/index.mjs +1 -2
  27. package/dist/{card-save-bar-BZzNnKYj.mjs → card-save-bar-0XDpAJo_.mjs} +5 -8
  28. package/dist/chart/index.mjs +1 -2
  29. package/dist/{chart-EgzTS28l.mjs → chart-BsGsx2jb.mjs} +2 -3
  30. package/dist/checkbox/index.mjs +1 -2
  31. package/dist/{checkbox-C6P12fio.mjs → checkbox-CNljVnKj.mjs} +3 -5
  32. package/dist/{close.icon-DdXKQ4m0.mjs → close.icon-BCPmH4nN.mjs} +2 -3
  33. package/dist/code-editor/index.mjs +1 -2
  34. package/dist/{col-BYGWTB4j.mjs → col-CYHIfPJq.mjs} +5 -9
  35. package/dist/collapsible/index.mjs +1 -2
  36. package/dist/command/index.mjs +1 -2
  37. package/dist/{command-C0aGIYnQ.mjs → command-B0be-zU5.mjs} +3 -4
  38. package/dist/components/features/assistant/components/assistant-workspace.d.ts +8 -2
  39. package/dist/components/features/assistant/components/composer/prompt-card.d.ts +7 -2
  40. package/dist/components/features/assistant/components/conversation/conversation.d.ts +19 -5
  41. package/dist/components/features/assistant/components/message/assistant-message.d.ts +24 -4
  42. package/dist/components/features/assistant/components/message/choice-chips.d.ts +17 -0
  43. package/dist/components/features/assistant/components/message/index.d.ts +2 -0
  44. package/dist/components/features/assistant/components/message/plan-card.d.ts +20 -0
  45. package/dist/components/features/assistant/components/message/user-message.d.ts +1 -1
  46. package/dist/components/features/assistant/index.d.ts +2 -1
  47. package/dist/components/features/assistant/types.d.ts +66 -3
  48. package/dist/data-table/index.mjs +1 -2
  49. package/dist/{data-table-CJiQQ6TM.mjs → data-table-s2YrE79S.mjs} +39 -66
  50. package/dist/date-picker/index.mjs +3 -3
  51. package/dist/date-time/index.mjs +1 -2
  52. package/dist/{date-time-lZdefM4H.mjs → date-time-BBRVM9qb.mjs} +4 -6
  53. package/dist/date-time-picker/index.mjs +1 -2
  54. package/dist/{date-time-picker-CricsXgF.mjs → date-time-picker-CLdaGiGC.mjs} +3 -4
  55. package/dist/{date-time-range-picker-DM4AIvQ1.mjs → date-time-range-picker-RZX4CS4b.mjs} +36 -59
  56. package/dist/dialog/index.mjs +1 -2
  57. package/dist/{dialog-Gu70fban.mjs → dialog-C8RXIQYm.mjs} +4 -5
  58. package/dist/{dialog-CmkrpaYy.mjs → dialog-D6sDXaH6.mjs} +2 -3
  59. package/dist/dropdown/index.mjs +1 -2
  60. package/dist/{dropdown-Xvduih96.mjs → dropdown-DR9j3Ni_.mjs} +3 -4
  61. package/dist/{dropdown-menu-b8zY5Cs6.mjs → dropdown-menu-CjgTr8Ab.mjs} +2 -3
  62. package/dist/dropzone/index.mjs +1 -2
  63. package/dist/{dropzone-ihksfjN2.mjs → dropzone-Cer9E-VH.mjs} +6 -8
  64. package/dist/empty-content/index.mjs +1 -2
  65. package/dist/{empty-content-CmuVcU0P.mjs → empty-content-B2FZ9cyt.mjs} +8 -13
  66. package/dist/form/adapters/conform/index.mjs +4 -6
  67. package/dist/form/adapters/rhf/index.mjs +6 -9
  68. package/dist/form/index.mjs +2 -2
  69. package/dist/form/stepper/index.mjs +11 -16
  70. package/dist/{form-D4R6C609.mjs → form-C4XcxxjK.mjs} +54 -86
  71. package/dist/{form-context-DzB2a-dw.mjs → form-context-BRzt53M5.mjs} +1 -2
  72. package/dist/grid/index.mjs +1 -2
  73. package/dist/grouped-table/index.mjs +1 -2
  74. package/dist/{grouped-table-fHguJz9W.mjs → grouped-table-32RO2v7U.mjs} +16 -24
  75. package/dist/hooks/index.mjs +4 -4
  76. package/dist/{hooks-CwZ6hyI1.mjs → hooks-WVJbyhCz.mjs} +1 -2
  77. package/dist/hover-card/index.mjs +1 -2
  78. package/dist/{hover-card-BNOE5vT5.mjs → hover-card-DSt1lZGg.mjs} +3 -5
  79. package/dist/{icon-wrapper-DKfJlJd0.mjs → icon-wrapper-CIk2th6R.mjs} +1 -2
  80. package/dist/icons/index.mjs +3 -3
  81. package/dist/index.mjs +79 -79
  82. package/dist/input/index.mjs +1 -2
  83. package/dist/{input-j4tbmYYz.mjs → input-DsT5qkJn.mjs} +3 -4
  84. package/dist/{input-DR-XbgpD.mjs → input-Wl1K48ca.mjs} +2 -3
  85. package/dist/input-group/index.mjs +1 -2
  86. package/dist/{input-group-DieA8aBt.mjs → input-group-CCzvJIZM.mjs} +5 -6
  87. package/dist/input-number/index.mjs +1 -2
  88. package/dist/{input-number-TXmW-X9o.mjs → input-number-DF-bfIo8.mjs} +5 -6
  89. package/dist/input-with-addons/index.mjs +2 -3
  90. package/dist/label/index.mjs +1 -2
  91. package/dist/{label-Bk6FXsju.mjs → label-BR1V3Imy.mjs} +3 -5
  92. package/dist/{layers-DWYdrGmC.mjs → layers-XEND2WKv.mjs} +17 -26
  93. package/dist/loader-overlay/index.mjs +1 -2
  94. package/dist/{loader-overlay-DD94azZX.mjs → loader-overlay-JvB8IQo3.mjs} +3 -4
  95. package/dist/logo/index.mjs +2 -2
  96. package/dist/logo/themed/index.mjs +3 -4
  97. package/dist/{logo-C3FxD7jb.mjs → logo-CkzKra6H.mjs} +2 -3
  98. package/dist/{logo-text-Dpm5O6Kg.mjs → logo-text-B54YiEte.mjs} +6 -11
  99. package/dist/logs/fixtures/index.mjs +2 -4
  100. package/dist/logs/index.mjs +34 -56
  101. package/dist/map/index.mjs +1 -2
  102. package/dist/{map-leaflet-imports-S3kx8Q-S.mjs → map-leaflet-imports-Xdz9Xiaf.mjs} +1 -2
  103. package/dist/mobile-sheet/index.mjs +1 -2
  104. package/dist/{mobile-sheet-9TootJGg.mjs → mobile-sheet-1995HYY_.mjs} +6 -9
  105. package/dist/more-actions/index.mjs +2 -2
  106. package/dist/{more-actions-C3DYWO0a.mjs → more-actions-D9k1ILzT.mjs} +6 -7
  107. package/dist/{motion-DvGRWdsm.mjs → motion-DOrRbLmy.mjs} +1 -2
  108. package/dist/multi-select/index.mjs +1 -2
  109. package/dist/{multi-select-CF0Yq5yf.mjs → multi-select-BUgx6VZF.mjs} +11 -15
  110. package/dist/nprogress/index.mjs +1 -2
  111. package/dist/page-title/index.mjs +1 -2
  112. package/dist/{page-title-ipRWEOeM.mjs → page-title-Djl3LvPT.mjs} +2 -3
  113. package/dist/picker/index.mjs +2 -2
  114. package/dist/{picker-BoKXW6_s.mjs → picker-C0h30DHf.mjs} +14 -25
  115. package/dist/popover/index.mjs +1 -2
  116. package/dist/{popover-X82NwhX9.mjs → popover-7YxyP_W0.mjs} +3 -5
  117. package/dist/radio-group/index.mjs +1 -2
  118. package/dist/{radio-group-LduBVTnh.mjs → radio-group-0RxTmRnF.mjs} +3 -5
  119. package/dist/responsive-dropdown/index.mjs +1 -2
  120. package/dist/{responsive-dropdown-C_KKgLbH.mjs → responsive-dropdown-DsWgpE_i.mjs} +5 -6
  121. package/dist/responsive-popover/index.mjs +1 -2
  122. package/dist/{responsive-popover-8VcjBM2d.mjs → responsive-popover-DJYd8lOK.mjs} +5 -6
  123. package/dist/rich-text-content/index.mjs +1 -2
  124. package/dist/{rich-text-content-DNonBD39.mjs → rich-text-content-BiIIowBU.mjs} +2 -3
  125. package/dist/rich-text-editor/index.mjs +2 -2
  126. package/dist/{rich-text-editor-DP5JnAoO.mjs → rich-text-editor-ibngjhQV.mjs} +16 -24
  127. package/dist/select/index.mjs +1 -2
  128. package/dist/{select-D4pk9e2d.mjs → select-DemYhwnG.mjs} +3 -4
  129. package/dist/{select-daE2Nn0Z.mjs → select-jgK6wyXj.mjs} +2 -3
  130. package/dist/separator/index.mjs +1 -2
  131. package/dist/{separator-vbPD_WFQ.mjs → separator-DNiiN2BN.mjs} +2 -3
  132. package/dist/settings-nav/index.mjs +1 -2
  133. package/dist/{settings-nav-Hf3GrCGv.mjs → settings-nav-CCZdPD-x.mjs} +2 -3
  134. package/dist/sheet/index.mjs +2 -2
  135. package/dist/{sheet-DHn6C_rs.mjs → sheet-DEpEJ_Rk.mjs} +4 -5
  136. package/dist/{sheet-DXCZyMHI.mjs → sheet-DYPtVIb2.mjs} +2 -3
  137. package/dist/sidebar/index.mjs +1 -2
  138. package/dist/{sidebar-sbqOOFii.mjs → sidebar-DWnxQWQ8.mjs} +13 -18
  139. package/dist/skeleton/index.mjs +3 -4
  140. package/dist/{skeleton-DFExK4GX.mjs → skeleton-CDPoo7-M.mjs} +2 -3
  141. package/dist/spinner/index.mjs +1 -2
  142. package/dist/{spinner-C5Xv-i2C.mjs → spinner-DjEpx6Q3.mjs} +2 -3
  143. package/dist/{spinner.icon-BYUMQ8H-.mjs → spinner.icon-D0SKuGFG.mjs} +2 -3
  144. package/dist/stepper/index.mjs +1 -2
  145. package/dist/{stepper-dNvkipop.mjs → stepper-ZipxpzWY.mjs} +10 -11
  146. package/dist/styles/themes/alpha.css +1 -1
  147. package/dist/switch/index.mjs +1 -2
  148. package/dist/{switch-BaR-Vna4.mjs → switch-CWvVN9ea.mjs} +2 -3
  149. package/dist/table/index.mjs +2 -3
  150. package/dist/tabs/index.mjs +2 -3
  151. package/dist/tag-input/index.mjs +1 -2
  152. package/dist/{tag-input-c9OvWTSe.mjs → tag-input-DAMY703F.mjs} +8 -12
  153. package/dist/task-queue/index.mjs +1 -2
  154. package/dist/{task-queue-dropdown-CHPP5WIm.mjs → task-queue-dropdown-BgQSGDwg.mjs} +39 -59
  155. package/dist/textarea/index.mjs +1 -2
  156. package/dist/{textarea-DiSGxCBO.mjs → textarea-CvhdK6JY.mjs} +3 -4
  157. package/dist/{textarea-CCxpXJdh.mjs → textarea-D36SE4ki.mjs} +2 -3
  158. package/dist/theme/index.mjs +1 -2
  159. package/dist/{themes-Ba2bajuF.mjs → themes-BoxnQbbu.mjs} +8 -10
  160. package/dist/time-picker/index.mjs +1 -2
  161. package/dist/{time-picker-DQlc2gKW.mjs → time-picker-DgHjdcMZ.mjs} +3 -4
  162. package/dist/{to-api-format-QuJ81vQ9.mjs → to-api-format-EZInfj0_.mjs} +15 -23
  163. package/dist/toast/index.mjs +2 -2
  164. package/dist/{toast-BUPlDkN3.mjs → toast-CizxCEcK.mjs} +4 -6
  165. package/dist/tooltip/index.mjs +1 -2
  166. package/dist/{tooltip-DhbN1BDK.mjs → tooltip-OIySjJWW.mjs} +3 -5
  167. package/dist/transfer/index.mjs +1 -2
  168. package/dist/{transfer-DsshYgIk.mjs → transfer-91lwTOhX.mjs} +8 -14
  169. package/dist/{types-agDpVXBG.mjs → types-ChINrR8H.mjs} +7 -11
  170. package/dist/typography/index.mjs +1 -2
  171. package/dist/{typography-q71iTG72.mjs → typography-XFfN6PGD.mjs} +5 -6
  172. package/dist/{use-breakpoint-CwiUJSmk.mjs → use-breakpoint-zY_JYINK.mjs} +1 -2
  173. package/dist/{use-controllable-state-Dna7u3r9.mjs → use-controllable-state-DLeVgbAb.mjs} +1 -2
  174. package/dist/{use-copy-to-clipboard-DZDq_85T.mjs → use-copy-to-clipboard-CWKWHLxI.mjs} +1 -2
  175. package/dist/{use-debounced-search-input-yu_F0QBt.mjs → use-debounced-search-input-B4u28iLx.mjs} +1 -2
  176. package/dist/{use-deprecation-warning-DXrGc0jX.mjs → use-deprecation-warning-BS1V4IS5.mjs} +1 -2
  177. package/dist/{use-display-touched-CMEEv7aT.mjs → use-display-touched-BSq0Ninl.mjs} +3 -5
  178. package/dist/{use-option-picker-s2bUYwXC.mjs → use-option-picker-CBMU72LU.mjs} +6 -9
  179. package/dist/{use-toast-Bpq0yJIT.mjs → use-toast-CZAZeS95.mjs} +3 -5
  180. package/dist/utils/index.mjs +3 -3
  181. package/dist/{utils-CA4QEIJ8.mjs → utils-CPJ5MCfd.mjs} +1 -2
  182. package/dist/{utils-Bu32wN-x.mjs → utils-CTIuhCOs.mjs} +1 -2
  183. package/dist/visually-hidden/index.mjs +1 -2
  184. package/dist/{visuallyhidden-D7L_qs8b.mjs → visuallyhidden-Mg4OsZ-l.mjs} +1 -2
  185. package/dist/{zod-helpers-YEhVo2S-.mjs → zod-helpers-JcfFVJJd.mjs} +1 -2
  186. package/package.json +20 -20
@@ -1,2 +1 @@
1
- import { t as Autocomplete } from "../autocomplete-BxtzndxZ.mjs";
2
- export { Autocomplete };
1
+ export { t as Autocomplete } from "../autocomplete-fSSmRLYK.mjs";
@@ -1,11 +1,11 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as ResponsivePopover } from "./responsive-popover-8VcjBM2d.mjs";
3
- import { t as LoaderOverlay } from "./loader-overlay-DD94azZX.mjs";
4
- import { n as OptionList, t as useOptionPicker } from "./use-option-picker-s2bUYwXC.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { n as OptionList, t as useOptionPicker } from "./use-option-picker-CBMU72LU.mjs";
3
+ import { t as ResponsivePopover } from "./responsive-popover-DJYd8lOK.mjs";
4
+ import { t as LoaderOverlay } from "./loader-overlay-JvB8IQo3.mjs";
5
5
  import { ChevronDown } from "lucide-react";
6
6
  import * as React from "react";
7
7
  import { jsx, jsxs } from "react/jsx-runtime";
8
- //#region src/components/features/autocomplete/trigger.tsx
8
+ // src/components/features/autocomplete/trigger.tsx
9
9
  function Trigger({ ref, selectedOption, createdValue, renderValue, placeholder, loading, disabled, open, id, className, ...rest }) {
10
10
  let displayContent;
11
11
  if (selectedOption) displayContent = renderValue ? renderValue(selectedOption) : /* @__PURE__ */ jsx("span", {
@@ -40,8 +40,7 @@ function Trigger({ ref, selectedOption, createdValue, renderValue, placeholder,
40
40
  });
41
41
  }
42
42
  Trigger.displayName = "AutocompleteTrigger";
43
- //#endregion
44
- //#region src/components/features/autocomplete/autocomplete.tsx
43
+ // src/components/features/autocomplete/autocomplete.tsx
45
44
  /**
46
45
  * Autocomplete - A searchable select component
47
46
  *
@@ -128,5 +127,4 @@ function Autocomplete({ options, value, onValueChange, onSearchChange, searchPla
128
127
  });
129
128
  }
130
129
  Autocomplete.displayName = "Autocomplete";
131
- //#endregion
132
130
  export { Autocomplete as t };
@@ -1,13 +1,13 @@
1
- import { t as cn } from "../utils-Bu32wN-x.mjs";
2
- import { t as Button } from "../button-DoMqfQLu.mjs";
3
- import { t as Input } from "../input-j4tbmYYz.mjs";
4
- import { t as ResponsivePopover } from "../responsive-popover-8VcjBM2d.mjs";
5
- import { t as Tooltip } from "../tooltip-DhbN1BDK.mjs";
6
- import { n as OptionList, t as useOptionPicker } from "../use-option-picker-s2bUYwXC.mjs";
1
+ import { t as cn } from "../utils-CTIuhCOs.mjs";
2
+ import { t as Button } from "../button-Dj6cKrWj.mjs";
3
+ import { t as Input } from "../input-DsT5qkJn.mjs";
4
+ import { n as OptionList, t as useOptionPicker } from "../use-option-picker-CBMU72LU.mjs";
5
+ import { t as ResponsivePopover } from "../responsive-popover-DJYd8lOK.mjs";
6
+ import { t as Tooltip } from "../tooltip-OIySjJWW.mjs";
7
7
  import { AlertCircle, Loader2, X } from "lucide-react";
8
8
  import * as React from "react";
9
9
  import { jsx, jsxs } from "react/jsx-runtime";
10
- //#region src/components/features/autosearch/autosearch.tsx
10
+ // src/components/features/autosearch/autosearch.tsx
11
11
  /**
12
12
  * Autosearch - Search-first input with dropdown results
13
13
  *
@@ -184,8 +184,7 @@ function Autosearch({ options = [], value, onValueChange, onSearch, searchDeboun
184
184
  });
185
185
  }
186
186
  Autosearch.displayName = "Autosearch";
187
- //#endregion
188
- //#region src/components/features/autosearch/autosearch.types.ts
187
+ // src/components/features/autosearch/autosearch.types.ts
189
188
  /**
190
189
  * Default function to extract searchable text from an option.
191
190
  * Combines label, description, and value for comprehensive searching.
@@ -197,5 +196,4 @@ function defaultAutosearchValue(option) {
197
196
  option.value
198
197
  ].filter(Boolean).join(" ");
199
198
  }
200
- //#endregion
201
199
  export { Autosearch, defaultAutosearchValue };
@@ -1,8 +1,8 @@
1
- import { t as cn } from "../utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "../utils-CTIuhCOs.mjs";
2
2
  import "react";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  import * as AvatarPrimitive from "@radix-ui/react-avatar";
5
- //#region ../shadcn/ui/avatar.tsx
5
+ // ../shadcn/ui/avatar.tsx
6
6
  function Avatar({ className, ...props }) {
7
7
  return /* @__PURE__ */ jsx(AvatarPrimitive.Root, {
8
8
  "data-slot": "avatar",
@@ -24,5 +24,4 @@ function AvatarFallback({ className, ...props }) {
24
24
  ...props
25
25
  });
26
26
  }
27
- //#endregion
28
27
  export { Avatar, AvatarFallback, AvatarImage };
@@ -1,2 +1 @@
1
- import { n as avatarStackVariants, t as AvatarStack } from "../avatar-stack-BUcsjhA6.mjs";
2
- export { AvatarStack, avatarStackVariants };
1
+ export { t as AvatarStack, n as avatarStackVariants } from "../avatar-stack-2ow672bR.mjs";
@@ -1,10 +1,10 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { Avatar, AvatarFallback, AvatarImage } from "./avatar/index.mjs";
3
- import { t as Tooltip } from "./tooltip-DhbN1BDK.mjs";
3
+ import { t as Tooltip } from "./tooltip-OIySjJWW.mjs";
4
4
  import { cva } from "class-variance-authority";
5
5
  import "react";
6
6
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
7
- //#region src/components/features/avatar-stack/avatar-stack.tsx
7
+ // src/components/features/avatar-stack/avatar-stack.tsx
8
8
  const avatarStackVariants = cva("flex", {
9
9
  variants: {
10
10
  orientation: {
@@ -49,5 +49,4 @@ function AvatarStack({ className, orientation, avatars, spacing, maxAvatarsAmoun
49
49
  }) : null]
50
50
  });
51
51
  }
52
- //#endregion
53
52
  export { avatarStackVariants as n, AvatarStack as t };
@@ -1,2 +1 @@
1
- import { n as badgeVariants, t as Badge } from "../badge-DOZUr5DV.mjs";
2
- export { Badge, badgeVariants };
1
+ export { t as Badge, n as badgeVariants } from "../badge-D7A6GfWn.mjs";
@@ -1,8 +1,8 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { cva } from "class-variance-authority";
3
3
  import "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
- //#region src/components/base/badge/badge.tsx
5
+ // src/components/base/badge/badge.tsx
6
6
  /**
7
7
  * Datum Badge Component
8
8
  * Similar to Button component but with badge-specific styling
@@ -179,5 +179,4 @@ function Badge({ className, type, theme, ...props }) {
179
179
  ...props
180
180
  });
181
181
  }
182
- //#endregion
183
182
  export { badgeVariants as n, Badge as t };
@@ -1,2 +1 @@
1
- import { a as BreadcrumbList, i as BreadcrumbLink, n as BreadcrumbEllipsis, o as BreadcrumbPage, r as BreadcrumbItem, s as BreadcrumbSeparator, t as Breadcrumb } from "../breadcrumb-DmdhC8bE.mjs";
2
- export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
1
+ export { t as Breadcrumb, n as BreadcrumbEllipsis, r as BreadcrumbItem, i as BreadcrumbLink, a as BreadcrumbList, o as BreadcrumbPage, s as BreadcrumbSeparator } from "../breadcrumb-D97jAZ2N.mjs";
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { ChevronRight, MoreHorizontal } from "lucide-react";
3
3
  import "react";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
5
  import { Slot } from "@radix-ui/react-slot";
6
- //#region ../shadcn/ui/breadcrumb.tsx
6
+ // ../shadcn/ui/breadcrumb.tsx
7
7
  function Breadcrumb({ ...props }) {
8
8
  return /* @__PURE__ */ jsx("nav", {
9
9
  "aria-label": "breadcrumb",
@@ -65,5 +65,4 @@ function BreadcrumbEllipsis({ className, ...props }) {
65
65
  })]
66
66
  });
67
67
  }
68
- //#endregion
69
68
  export { BreadcrumbList as a, BreadcrumbLink as i, BreadcrumbEllipsis as n, BreadcrumbPage as o, BreadcrumbItem as r, BreadcrumbSeparator as s, Breadcrumb as t };
@@ -1,3 +1,3 @@
1
- import { n as buttonVariants, t as Button } from "../button-DoMqfQLu.mjs";
2
- import { t as LinkButton } from "../button-CDPui_Ov.mjs";
1
+ import { n as buttonVariants, t as Button } from "../button-Dj6cKrWj.mjs";
2
+ import { t as LinkButton } from "../button-BU8TEbJ5.mjs";
3
3
  export { Button, LinkButton, buttonVariants };
@@ -1,8 +1,8 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { n as buttonVariants, r as getIconOnlyClass } from "./button-DoMqfQLu.mjs";
1
+ import { n as buttonVariants, r as getIconOnlyClass } from "./button-Dj6cKrWj.mjs";
2
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
3
3
  import "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
5
- //#region src/components/base/button/link-button.tsx
5
+ // src/components/base/button/link-button.tsx
6
6
  function LinkButton({ ref, className, type, theme, size, block, icon, iconPosition = "left", children, as: Component = "a", href, ...props }) {
7
7
  const isIconOnly = icon && !children;
8
8
  const linkProps = Component === "a" ? { href } : { to: href };
@@ -24,5 +24,4 @@ function LinkButton({ ref, className, type, theme, size, block, icon, iconPositi
24
24
  });
25
25
  }
26
26
  LinkButton.displayName = "LinkButton";
27
- //#endregion
28
27
  export { LinkButton as t };
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { cva } from "class-variance-authority";
3
3
  import * as React from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { Slot } from "@radix-ui/react-slot";
6
- //#region ../shadcn/ui/button.tsx
6
+ // ../shadcn/ui/button.tsx
7
7
  /**
8
8
  * Vanilla shadcn/ui Button Component
9
9
  * Pure shadcn button without Datum customizations
@@ -43,5 +43,4 @@ const Button = React.forwardRef(({ className, variant, size, asChild = false, ..
43
43
  });
44
44
  });
45
45
  Button.displayName = "Button";
46
- //#endregion
47
46
  export { buttonVariants as n, Button as t };
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as SpinnerIcon } from "./spinner.icon-BYUMQ8H-.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { t as SpinnerIcon } from "./spinner.icon-D0SKuGFG.mjs";
3
3
  import { cva } from "class-variance-authority";
4
4
  import "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
- //#region src/components/base/button/icon-only.ts
6
+ // src/components/base/button/icon-only.ts
7
7
  /**
8
8
  * Returns the width/padding class that squares off an icon-only button for a
9
9
  * given size. Shared by Button and LinkButton to keep their icon-only sizing
@@ -22,8 +22,7 @@ function getIconOnlyClass(size, isIconOnly) {
22
22
  default: return "w-9 px-0";
23
23
  }
24
24
  }
25
- //#endregion
26
- //#region src/components/base/button/button.tsx
25
+ // src/components/base/button/button.tsx
27
26
  const buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-lg text-sm font-medium transition-[color,background-color,border-color,opacity,transform] duration-[var(--duration-fast)] ease-out focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:opacity-50 active:scale-[0.98] disabled:active:scale-100", {
28
27
  variants: {
29
28
  type: {
@@ -238,5 +237,4 @@ function Button({ ref, className, type, theme, size, block, loading = false, dis
238
237
  });
239
238
  }
240
239
  Button.displayName = "Button";
241
- //#endregion
242
240
  export { buttonVariants as n, getIconOnlyClass as r, Button as t };
@@ -1,2 +1 @@
1
- import { i as buttonGroupVariants, n as ButtonGroupSeparator, r as ButtonGroupText, t as ButtonGroup } from "../button-group-DFrTH4L8.mjs";
2
- export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
1
+ export { t as ButtonGroup, n as ButtonGroupSeparator, r as ButtonGroupText, i as buttonGroupVariants } from "../button-group-C3GKo-0p.mjs";
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as Separator } from "./separator-vbPD_WFQ.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { t as Separator } from "./separator-DNiiN2BN.mjs";
3
3
  import { cva } from "class-variance-authority";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { Slot } from "@radix-ui/react-slot";
6
- //#region ../shadcn/ui/button-group.tsx
6
+ // ../shadcn/ui/button-group.tsx
7
7
  const buttonGroupVariants = cva("flex w-fit items-stretch has-[>[data-slot=button-group]]:gap-2 [&>*]:focus-visible:relative [&>*]:focus-visible:z-10 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1", {
8
8
  variants: { orientation: {
9
9
  horizontal: "[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",
@@ -34,5 +34,4 @@ function ButtonGroupSeparator({ className, orientation = "vertical", ...props })
34
34
  ...props
35
35
  });
36
36
  }
37
- //#endregion
38
37
  export { buttonGroupVariants as i, ButtonGroupSeparator as n, ButtonGroupText as r, ButtonGroup as t };
@@ -1,11 +1,11 @@
1
- import { t as cn } from "../utils-Bu32wN-x.mjs";
2
- import { n as buttonVariants, t as Button } from "../button-CsdF61EI.mjs";
3
- import { t as Icon } from "../icon-wrapper-DKfJlJd0.mjs";
1
+ import { n as buttonVariants, t as Button } from "../button-C57mkFkS.mjs";
2
+ import { t as cn } from "../utils-CTIuhCOs.mjs";
3
+ import { t as Icon } from "../icon-wrapper-CIk2th6R.mjs";
4
4
  import { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from "lucide-react";
5
5
  import * as React from "react";
6
6
  import { jsx } from "react/jsx-runtime";
7
7
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
8
- //#region src/components/base/calendar/calendar.tsx
8
+ // src/components/base/calendar/calendar.tsx
9
9
  function CalendarRoot({ className, rootRef, ...props }) {
10
10
  return /* @__PURE__ */ jsx("div", {
11
11
  "data-slot": "calendar",
@@ -107,5 +107,4 @@ function CalendarDayButton({ className, day, modifiers, ...props }) {
107
107
  ...props
108
108
  });
109
109
  }
110
- //#endregion
111
110
  export { Calendar, CalendarDayButton };
@@ -1,7 +1,7 @@
1
- import { t as useDeprecationWarning } from "./use-deprecation-warning-DXrGc0jX.mjs";
2
- import { a as DateRangePicker } from "./picker-BoKXW6_s.mjs";
1
+ import { t as useDeprecationWarning } from "./use-deprecation-warning-BS1V4IS5.mjs";
2
+ import { a as DateRangePicker } from "./picker-C0h30DHf.mjs";
3
3
  import { jsx } from "react/jsx-runtime";
4
- //#region src/components/features/calendar-date-picker/calendar-date-picker.tsx
4
+ // src/components/features/calendar-date-picker/calendar-date-picker.tsx
5
5
  /**
6
6
  * @deprecated Use `DateRangePicker` (or `DatePicker`) from
7
7
  * `@datum-cloud/datum-ui/picker` instead. This adapter shim ships through
@@ -49,5 +49,4 @@ function CalendarDatePicker({ date, onDateSelect, closeOnSelect, numberOfMonths
49
49
  });
50
50
  }
51
51
  CalendarDatePicker.displayName = "CalendarDatePicker";
52
- //#endregion
53
52
  export { CalendarDatePicker as t };
@@ -1,2 +1 @@
1
- import { a as CardField, c as CardFooter, d as CardTitle, i as CardContent, l as CardHeader, n as Card, o as CardFieldLabel, r as CardAction, s as CardFieldValue, t as CardSaveBar, u as CardDescription } from "../card-save-bar-BZzNnKYj.mjs";
2
- export { Card, CardAction, CardContent, CardDescription, CardField, CardFieldLabel, CardFieldValue, CardFooter, CardHeader, CardSaveBar, CardTitle };
1
+ export { n as Card, r as CardAction, i as CardContent, u as CardDescription, a as CardField, o as CardFieldLabel, s as CardFieldValue, c as CardFooter, l as CardHeader, t as CardSaveBar, d as CardTitle } from "../card-save-bar-0XDpAJo_.mjs";
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as Button } from "./button-DoMqfQLu.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { t as Button } from "./button-Dj6cKrWj.mjs";
3
3
  import { cva } from "class-variance-authority";
4
4
  import "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
- //#region ../shadcn/ui/card.tsx
6
+ // ../shadcn/ui/card.tsx
7
7
  function CardTitle({ className, ...props }) {
8
8
  return /* @__PURE__ */ jsx("div", {
9
9
  "data-slot": "card-title",
@@ -18,8 +18,7 @@ function CardDescription({ className, ...props }) {
18
18
  ...props
19
19
  });
20
20
  }
21
- //#endregion
22
- //#region src/components/base/card/card.tsx
21
+ // src/components/base/card/card.tsx
23
22
  /**
24
23
  * Datum Card
25
24
  *
@@ -216,8 +215,7 @@ function CardFieldValue({ className, ...props }) {
216
215
  ...props
217
216
  });
218
217
  }
219
- //#endregion
220
- //#region src/components/base/card/card-save-bar.tsx
218
+ // src/components/base/card/card-save-bar.tsx
221
219
  function pluralize(count, noun) {
222
220
  return `${count} ${noun}${count === 1 ? "" : "s"}`;
223
221
  }
@@ -277,5 +275,4 @@ function CardSaveBar({ changeCount, errorCount = 0, saving = false, onCancel, on
277
275
  })]
278
276
  });
279
277
  }
280
- //#endregion
281
278
  export { CardField as a, CardFooter as c, CardTitle as d, CardContent as i, CardHeader as l, Card as n, CardFieldLabel as o, CardAction as r, CardFieldValue as s, CardSaveBar as t, CardDescription as u };
@@ -1,2 +1 @@
1
- import { a as ChartTooltip, i as ChartStyle, n as ChartLegend, o as ChartTooltipContent, r as ChartLegendContent, t as ChartContainer } from "../chart-EgzTS28l.mjs";
2
- export { ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent };
1
+ export { t as ChartContainer, n as ChartLegend, r as ChartLegendContent, i as ChartStyle, a as ChartTooltip, o as ChartTooltipContent } from "../chart-BsGsx2jb.mjs";
@@ -1,8 +1,8 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import * as React from "react";
3
3
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
4
4
  import * as RechartsPrimitive from "recharts";
5
- //#region ../shadcn/ui/chart.tsx
5
+ // ../shadcn/ui/chart.tsx
6
6
  const THEMES = {
7
7
  light: "",
8
8
  dark: ".dark"
@@ -140,5 +140,4 @@ function getPayloadConfigFromPayload(config, payload, key) {
140
140
  else if (payloadPayload && key in payloadPayload && typeof payloadPayload[key] === "string") configLabelKey = payloadPayload[key];
141
141
  return configLabelKey in config ? config[configLabelKey] : config[key];
142
142
  }
143
- //#endregion
144
143
  export { ChartTooltip as a, ChartStyle as i, ChartLegend as n, ChartTooltipContent as o, ChartLegendContent as r, ChartContainer as t };
@@ -1,2 +1 @@
1
- import { t as Checkbox } from "../checkbox-C6P12fio.mjs";
2
- export { Checkbox };
1
+ export { t as Checkbox } from "../checkbox-CNljVnKj.mjs";
@@ -1,9 +1,9 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { CheckIcon } from "lucide-react";
3
3
  import "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
6
- //#region ../shadcn/ui/checkbox.tsx
6
+ // ../shadcn/ui/checkbox.tsx
7
7
  function Checkbox$1({ className, ...props }) {
8
8
  return /* @__PURE__ */ jsx(CheckboxPrimitive.Root, {
9
9
  "data-slot": "checkbox",
@@ -16,8 +16,7 @@ function Checkbox$1({ className, ...props }) {
16
16
  })
17
17
  });
18
18
  }
19
- //#endregion
20
- //#region src/components/base/checkbox/checkbox.tsx
19
+ // src/components/base/checkbox/checkbox.tsx
21
20
  function Checkbox({ ref, className, ...props }) {
22
21
  return /* @__PURE__ */ jsx(Checkbox$1, {
23
22
  ref,
@@ -26,5 +25,4 @@ function Checkbox({ ref, className, ...props }) {
26
25
  });
27
26
  }
28
27
  Checkbox.displayName = "Checkbox";
29
- //#endregion
30
28
  export { Checkbox as t };
@@ -1,6 +1,6 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import { jsx } from "react/jsx-runtime";
3
- //#region src/components/icons/close.icon.tsx
3
+ // src/components/icons/close.icon.tsx
4
4
  function CloseIcon({ className, fill = "fill-foreground" }) {
5
5
  return /* @__PURE__ */ jsx("svg", {
6
6
  width: "17",
@@ -16,5 +16,4 @@ function CloseIcon({ className, fill = "fill-foreground" }) {
16
16
  })
17
17
  });
18
18
  }
19
- //#endregion
20
19
  export { CloseIcon as t };
@@ -1,2 +1 @@
1
- import { a as formatJson, c as isValidYaml, d as CodeEditor, i as CodeEditorTabs, l as jsonToYaml, n as jsonSchema, o as formatYaml, r as yamlSchema, s as isValidJson, t as createCodeEditorSchema, u as yamlToJson } from "../types-agDpVXBG.mjs";
2
- export { CodeEditor, CodeEditorTabs, createCodeEditorSchema, formatJson, formatYaml, isValidJson, isValidYaml, jsonSchema, jsonToYaml, yamlSchema, yamlToJson };
1
+ export { d as CodeEditor, i as CodeEditorTabs, t as createCodeEditorSchema, a as formatJson, o as formatYaml, s as isValidJson, c as isValidYaml, n as jsonSchema, l as jsonToYaml, r as yamlSchema, u as yamlToJson } from "../types-ChINrR8H.mjs";
@@ -1,8 +1,8 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
2
  import * as React from "react";
3
3
  import { use, useEffect, useState } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
- //#region src/components/features/grid/constants/grid.constants.ts
5
+ // src/components/features/grid/constants/grid.constants.ts
6
6
  const GRID_BREAKPOINTS = {
7
7
  xs: 480,
8
8
  sm: 576,
@@ -29,8 +29,7 @@ const RESPONSIVE_MAP = {
29
29
  xl: "(min-width: 1200px)",
30
30
  xxl: "(min-width: 1600px)"
31
31
  };
32
- //#endregion
33
- //#region src/components/features/grid/utils/responsive.ts
32
+ // src/components/features/grid/utils/responsive.ts
34
33
  function registerMediaQuery(query, callback) {
35
34
  const mediaQuery = window.matchMedia(query);
36
35
  const handleChange = (event) => {
@@ -80,8 +79,7 @@ function getResponsiveValue(value, screens) {
80
79
  }
81
80
  return value;
82
81
  }
83
- //#endregion
84
- //#region src/components/features/grid/components/row.tsx
82
+ // src/components/features/grid/components/row.tsx
85
83
  const RowContext = React.createContext(null);
86
84
  const Row = ({ type, align, justify, className, style, children, gutter = 0, prefixCls = GRID_PREFIX, ...rest }) => {
87
85
  const [screens, setScreens] = useState({
@@ -141,8 +139,7 @@ const Row = ({ type, align, justify, className, style, children, gutter = 0, pre
141
139
  })
142
140
  });
143
141
  };
144
- //#endregion
145
- //#region src/components/features/grid/components/col.tsx
142
+ // src/components/features/grid/components/col.tsx
146
143
  const Col = ({ span, order, offset, push, pull, className, prefixCls = GRID_PREFIX, style, children, ...rest }) => {
147
144
  const context = use(RowContext);
148
145
  const prefix = `${prefixCls}-col`;
@@ -189,5 +186,4 @@ const Col = ({ span, order, offset, push, pull, className, prefixCls = GRID_PREF
189
186
  children
190
187
  });
191
188
  };
192
- //#endregion
193
189
  export { getResponsiveValue as a, GRID_COLUMNS as c, RESPONSIVE_MAP as d, getGutter as i, GRID_PREFIX as l, Row as n, registerMediaQuery as o, RowContext as r, GRID_BREAKPOINTS as s, Col as t, RESPONSIVE_ARRAY as u };
@@ -1,7 +1,6 @@
1
1
  import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
2
- //#region ../shadcn/ui/collapsible.tsx
2
+ // ../shadcn/ui/collapsible.tsx
3
3
  const Collapsible = CollapsiblePrimitive.Root;
4
4
  const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger;
5
5
  const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent;
6
- //#endregion
7
6
  export { Collapsible, CollapsibleContent, CollapsibleTrigger };
@@ -1,2 +1 @@
1
- import { a as CommandInput, c as CommandSeparator, i as CommandGroup, l as CommandShortcut, n as CommandDialog, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "../command-C0aGIYnQ.mjs";
2
- export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
1
+ export { t as Command, n as CommandDialog, r as CommandEmpty, i as CommandGroup, a as CommandInput, o as CommandItem, s as CommandList, c as CommandSeparator, l as CommandShortcut } from "../command-B0be-zU5.mjs";
@@ -1,10 +1,10 @@
1
- import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { i as DialogDescription, l as DialogTitle, o as DialogHeader, r as DialogContent, t as Dialog } from "./dialog-CmkrpaYy.mjs";
1
+ import { t as cn } from "./utils-CTIuhCOs.mjs";
2
+ import { i as DialogDescription, l as DialogTitle, o as DialogHeader, r as DialogContent, t as Dialog } from "./dialog-D6sDXaH6.mjs";
3
3
  import { SearchIcon } from "lucide-react";
4
4
  import "react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  import { Command } from "cmdk";
7
- //#region ../shadcn/ui/command.tsx
7
+ // ../shadcn/ui/command.tsx
8
8
  function Command$1({ className, ...props }) {
9
9
  return /* @__PURE__ */ jsx(Command, {
10
10
  "data-slot": "command",
@@ -80,5 +80,4 @@ function CommandShortcut({ className, ...props }) {
80
80
  ...props
81
81
  });
82
82
  }
83
- //#endregion
84
83
  export { CommandInput as a, CommandSeparator as c, CommandGroup as i, CommandShortcut as l, CommandDialog as n, CommandItem as o, CommandEmpty as r, CommandList as s, Command$1 as t };
@@ -1,7 +1,7 @@
1
1
  import type { Editor } from '@tiptap/react';
2
2
  import type { UIMessage } from 'ai';
3
3
  import type { MouseEvent as ReactMouseEvent, ReactNode, RefObject } from 'react';
4
- import type { AssistantConfig, ChatSummary, EffortId } from '../types';
4
+ import type { AssistantChoiceOption, AssistantConfig, ChatSummary, EffortId } from '../types';
5
5
  export type AssistantWorkspaceOrientation = 'horizontal' | 'vertical';
6
6
  /**
7
7
  * Presentational, props-driven assistant layout: left rail + collapsible
@@ -66,6 +66,12 @@ export interface AssistantWorkspaceProps {
66
66
  /** Confirm (deletion can't be undone) before calling `onDeleteChat`. */
67
67
  confirmDelete?: boolean;
68
68
  onSuggestion: (text: string) => void;
69
+ /** Called when the person picks an option of a question asked as buttons (see `Conversation`). */
70
+ onChoose?: (messageId: string, option: AssistantChoiceOption) => void;
71
+ /** Called when the person approves a plan card (see `Conversation`). */
72
+ onApprovePlan?: (messageId: string, planId: string) => void;
73
+ /** Called when the person clicks "Change something" on a plan card. */
74
+ onChangePlan?: (messageId: string, planId: string) => void;
69
75
  modelId: string;
70
76
  effortId: EffortId;
71
77
  onModelChange: (id: string) => void;
@@ -77,4 +83,4 @@ export interface AssistantWorkspaceProps {
77
83
  historyOpen: boolean;
78
84
  onToggleHistory: () => void;
79
85
  }
80
- export declare function AssistantWorkspace({ orientation, onClose, config, userName, title, messages, status, error, isReady, chatList, currentChatId, sidebarHeader, editor, htmlByUserMsgIndex, bottomRef, containerRef, userScrolledUpRef, onSend, onStop, onRetry, onNewChat, onLoadChat, onDeleteChat, onArchiveChat, onUnarchiveChat, confirmDelete, onSuggestion, modelId, effortId, onModelChange, onEffortChange, micSupported, micListening, micFrequencyData, onMicToggle, historyOpen, onToggleHistory, }: AssistantWorkspaceProps): import("react").JSX.Element;
86
+ export declare function AssistantWorkspace({ orientation, onClose, config, userName, title, messages, status, error, isReady, chatList, currentChatId, sidebarHeader, editor, htmlByUserMsgIndex, bottomRef, containerRef, userScrolledUpRef, onSend, onStop, onRetry, onNewChat, onLoadChat, onDeleteChat, onArchiveChat, onUnarchiveChat, confirmDelete, onSuggestion, onChoose, onApprovePlan, onChangePlan, modelId, effortId, onModelChange, onEffortChange, micSupported, micListening, micFrequencyData, onMicToggle, historyOpen, onToggleHistory, }: AssistantWorkspaceProps): import("react").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import type { Editor } from '@tiptap/react';
2
- import type { EffortId } from '../../types';
2
+ import type { ConversationDensity, EffortId } from '../../types';
3
3
  interface PromptCardProps {
4
4
  editor: Editor | null;
5
5
  isReady: boolean;
@@ -15,7 +15,12 @@ interface PromptCardProps {
15
15
  isListening?: boolean;
16
16
  frequencyData?: number[];
17
17
  onMicToggle?: () => void;
18
+ /**
19
+ * `compact` is one row: the input and its buttons side by side in a plain
20
+ * bordered field, with an outline send button. For a chat embedded in a page.
21
+ */
22
+ density?: ConversationDensity;
18
23
  className?: string;
19
24
  }
20
- export declare function PromptCard({ editor, isReady, canRetry, onSend, onStop, onRetry, modelId, effortId, onModelChange, onEffortChange, speechSupported, isListening, frequencyData, onMicToggle, className, }: PromptCardProps): import("react").JSX.Element;
25
+ export declare function PromptCard({ editor, isReady, canRetry, onSend, onStop, onRetry, modelId, effortId, onModelChange, onEffortChange, speechSupported, isListening, frequencyData, onMicToggle, density, className, }: PromptCardProps): import("react").JSX.Element;
21
26
  export {};
@@ -1,6 +1,6 @@
1
1
  import type { UIMessage } from 'ai';
2
2
  import type { RefObject } from 'react';
3
- import type { ConversationDensity } from '../../types';
3
+ import type { AssistantChoiceOption, ConversationDensity } from '../../types';
4
4
  interface ConversationProps {
5
5
  messages: UIMessage[];
6
6
  status: string;
@@ -13,11 +13,25 @@ interface ConversationProps {
13
13
  footer: React.ReactNode;
14
14
  /**
15
15
  * `default` is the full workspace layout. `compact` is for a conversation
16
- * embedded in another page: an avatar beside each assistant turn, a
17
- * narrower column (42rem, footer included), one-step-smaller body text and
18
- * tighter markdown spacing.
16
+ * embedded in another page: it fills the host's width with 1.75rem side
17
+ * padding, puts an avatar beside each assistant turn and tightens markdown
18
+ * spacing.
19
19
  */
20
20
  density?: ConversationDensity;
21
+ /**
22
+ * Called when the person picks an option of a question the assistant asked
23
+ * as buttons, with the message it belongs to. Only the latest turn's
24
+ * question can be answered, and only once it has finished streaming.
25
+ */
26
+ onChoose?: (messageId: string, option: AssistantChoiceOption) => void;
27
+ /**
28
+ * Called when the person approves a plan card, with the message it is in
29
+ * and the plan's id. Only the newest plan can be approved, and only while
30
+ * the conversation is idle.
31
+ */
32
+ onApprovePlan?: (messageId: string, planId: string) => void;
33
+ /** Called when the person clicks "Change something" on a plan card. */
34
+ onChangePlan?: (messageId: string, planId: string) => void;
21
35
  }
22
- export declare function Conversation({ messages, status, error, htmlByUserMsgIndex, containerRef, bottomRef, userScrolledUpRef, footer, density, }: ConversationProps): import("react").JSX.Element;
36
+ export declare function Conversation({ messages, status, error, htmlByUserMsgIndex, containerRef, bottomRef, userScrolledUpRef, footer, density, onChoose, onApprovePlan, onChangePlan, }: ConversationProps): import("react").JSX.Element;
23
37
  export {};