@alexgorbatchev/shadcn 0.0.20 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/README.md +24 -14
  2. package/THIRD_PARTY_NOTICES.md +60 -0
  3. package/dist/{chunk-s46hvhjw.js → chunk-0w6rxpr5.js} +1 -1
  4. package/dist/{chunk-gabqzfq0.js → chunk-1p7pend8.js} +3 -3
  5. package/dist/chunk-21wbz345.js +65 -0
  6. package/dist/{chunk-84ca0dpc.js → chunk-67dkgsm3.js} +1 -1
  7. package/dist/{chunk-p8qtk151.js → chunk-72qr0gqe.js} +1 -1
  8. package/dist/{chunk-4drqqqz1.js → chunk-83cckb23.js} +1 -1
  9. package/dist/{chunk-ztcbee24.js → chunk-9dqspkha.js} +1 -1
  10. package/dist/{chunk-eq88qk1d.js → chunk-d3ad53et.js} +8 -8
  11. package/dist/{chunk-h979cxnh.js → chunk-dq7kr5y0.js} +2 -1
  12. package/dist/{chunk-mrrbycgx.js → chunk-e0gcczqk.js} +1 -1
  13. package/dist/{chunk-553bzh59.js → chunk-f4c0tg2x.js} +1 -1
  14. package/dist/{chunk-14qj6w54.js → chunk-f9ha76ap.js} +4 -4
  15. package/dist/{chunk-ykt5sv7n.js → chunk-gkkbg7rq.js} +1 -1
  16. package/dist/{chunk-qv19jhdk.js → chunk-k8v9y2dw.js} +1 -1
  17. package/dist/chunk-kbg2e95b.js +434 -0
  18. package/dist/chunk-r9qrb6b6.js +54 -0
  19. package/dist/{chunk-ecmk3vgd.js → chunk-seeed8a2.js} +1 -1
  20. package/dist/{chunk-d9jbqd99.js → chunk-tynbgc30.js} +1 -1
  21. package/dist/{chunk-1qhf8gh8.js → chunk-wwyzwptb.js} +1 -1
  22. package/dist/components/AccountMenu.d.ts +12 -0
  23. package/dist/components/AppShell.d.ts +23 -0
  24. package/dist/components/AuthForm.d.ts +18 -0
  25. package/dist/components/BarList.d.ts +16 -0
  26. package/dist/components/BillingUsage.d.ts +20 -0
  27. package/dist/components/Combobox.d.ts +2 -1
  28. package/dist/components/DashboardLayout.d.ts +18 -0
  29. package/dist/components/FilterBar.d.ts +20 -0
  30. package/dist/components/Kanban.d.ts +23 -0
  31. package/dist/components/Meter.d.ts +9 -0
  32. package/dist/components/NumberField.d.ts +11 -0
  33. package/dist/components/PageHeader.d.ts +11 -0
  34. package/dist/components/SettingsSection.d.ts +16 -0
  35. package/dist/components/Sidebar.d.ts +2 -1
  36. package/dist/components/StatCard.d.ts +14 -0
  37. package/dist/components/StatusTracker.d.ts +16 -0
  38. package/dist/components/Stepper.d.ts +12 -0
  39. package/dist/components/TagInput.d.ts +16 -0
  40. package/dist/components/Toolbar.d.ts +10 -0
  41. package/dist/components/WorkspaceSwitcher.d.ts +14 -0
  42. package/dist/components/assistant-ui/elements/ApprovalCard.d.ts +1 -1
  43. package/dist/components/assistant-ui/elements/CommandPalette.js +3 -3
  44. package/dist/components/assistant-ui/elements/MessageTiming.d.ts +1 -1
  45. package/dist/components/assistant-ui/elements/ModelSelector.js +9 -9
  46. package/dist/components/assistant-ui/elements/ModelSelectorContent.js +8 -8
  47. package/dist/components/assistant-ui/elements/ModelSelectorEmpty.js +3 -3
  48. package/dist/components/assistant-ui/elements/ModelSelectorFocusAnchor.js +3 -3
  49. package/dist/components/assistant-ui/elements/ModelSelectorGroup.js +3 -3
  50. package/dist/components/assistant-ui/elements/ModelSelectorItem.js +3 -3
  51. package/dist/components/assistant-ui/elements/ModelSelectorList.js +5 -5
  52. package/dist/components/assistant-ui/elements/ModelSelectorSearch.js +3 -3
  53. package/dist/components/assistant-ui/elements/ModelSelectorSeparator.js +3 -3
  54. package/dist/components/assistant-ui/elements/types.d.ts +0 -4
  55. package/dist/components/assistant-ui/index.js +11 -11
  56. package/dist/components/assistant-ui/native/AssistantModal.js +3 -3
  57. package/dist/components/assistant-ui/native/AssistantSidebar.js +3 -3
  58. package/dist/components/assistant-ui/native/ModelSelector.js +11 -11
  59. package/dist/components/assistant-ui/native/TaskCard.js +2 -2
  60. package/dist/components/assistant-ui/native/TaskGroup.js +3 -3
  61. package/dist/components/assistant-ui/native/Thread.js +2 -2
  62. package/dist/components/assistant-ui/native/ThreadListSidebar.js +2 -2
  63. package/dist/components/assistant-ui/native/index.js +17 -17
  64. package/dist/components/calendar/DatePicker.d.ts +27 -0
  65. package/dist/components/calendar/index.d.ts +2 -0
  66. package/dist/components/calendar/index.js +175 -2
  67. package/dist/components/chart/AnalyticsChart.d.ts +24 -0
  68. package/dist/components/chart/index.d.ts +2 -0
  69. package/dist/components/chart/index.js +88 -0
  70. package/dist/components/color-picker/ColorPicker.d.ts +14 -0
  71. package/dist/components/color-picker/index.d.ts +2 -0
  72. package/dist/components/color-picker/index.js +52 -0
  73. package/dist/components/command/index.js +1 -1
  74. package/dist/components/data-grid/DataGrid.d.ts +44 -0
  75. package/dist/components/data-grid/index.d.ts +2 -0
  76. package/dist/components/data-grid/index.js +228 -0
  77. package/dist/components/editor/RichTextEditor.d.ts +14 -0
  78. package/dist/components/editor/index.d.ts +2 -0
  79. package/dist/components/editor/index.js +108 -0
  80. package/dist/components/event-calendar/EventCalendar.d.ts +16 -0
  81. package/dist/components/event-calendar/EventForm.d.ts +18 -0
  82. package/dist/components/event-calendar/index.d.ts +4 -0
  83. package/dist/components/event-calendar/index.js +266 -0
  84. package/dist/components/file-upload/FileUpload.d.ts +14 -0
  85. package/dist/components/file-upload/index.d.ts +2 -0
  86. package/dist/components/file-upload/index.js +80 -0
  87. package/dist/components/gantt/Gantt.d.ts +22 -0
  88. package/dist/components/gantt/Roadmap.d.ts +18 -0
  89. package/dist/components/gantt/index.d.ts +4 -0
  90. package/dist/components/gantt/index.js +357 -0
  91. package/dist/components/image-crop/ImageCrop.d.ts +10 -0
  92. package/dist/components/image-crop/index.d.ts +2 -0
  93. package/dist/components/image-crop/index.js +35 -0
  94. package/dist/components/tree/Tree.d.ts +16 -0
  95. package/dist/components/tree/index.d.ts +2 -0
  96. package/dist/components/tree/index.js +57 -0
  97. package/dist/event-calendar.css +83 -0
  98. package/dist/index.d.ts +33 -0
  99. package/dist/index.js +1411 -708
  100. package/dist/options/types.d.ts +5 -0
  101. package/llms/components/actions/Toolbar.md +89 -0
  102. package/llms/components/data-display/AnalyticsChart.md +48 -0
  103. package/llms/components/data-display/BarList.md +50 -0
  104. package/llms/components/data-display/DataGrid.md +51 -0
  105. package/llms/components/data-display/Meter.md +74 -0
  106. package/llms/components/data-display/Sparkline.md +50 -0
  107. package/llms/components/data-display/StatCard.md +65 -0
  108. package/llms/components/data-display/StatusTracker.md +51 -0
  109. package/llms/components/dates/DatePicker.md +97 -0
  110. package/llms/components/forms/AuthForm.md +70 -0
  111. package/llms/components/forms/ColorPicker.md +70 -0
  112. package/llms/components/forms/EventForm.md +66 -0
  113. package/llms/components/forms/FileUpload.md +55 -0
  114. package/llms/components/forms/FilterBar.md +34 -0
  115. package/llms/components/forms/ImageCrop.md +88 -0
  116. package/llms/components/forms/NumberField.md +94 -0
  117. package/llms/components/forms/Questionnaire.md +12 -0
  118. package/llms/components/forms/RichTextEditor.md +62 -0
  119. package/llms/components/forms/SettingsSection.md +65 -0
  120. package/llms/components/forms/Stepper.md +85 -0
  121. package/llms/components/forms/TagInput.md +47 -0
  122. package/llms/components/layout/AppShell.md +63 -0
  123. package/llms/components/layout/BillingUsage.md +51 -0
  124. package/llms/components/layout/DashboardLayout.md +78 -0
  125. package/llms/components/layout/PageHeader.md +49 -0
  126. package/llms/components/navigation/AccountMenu.md +42 -0
  127. package/llms/components/navigation/Tree.md +28 -0
  128. package/llms/components/navigation/WorkspaceSwitcher.md +48 -0
  129. package/llms/components/planning/EventCalendar.md +67 -0
  130. package/llms/components/planning/Gantt.md +66 -0
  131. package/llms/components/planning/Kanban.md +50 -0
  132. package/llms/components/planning/Roadmap.md +34 -0
  133. package/llms/setup.md +24 -14
  134. package/llms.txt +34 -0
  135. package/package.json +105 -3
  136. /package/dist/{chunk-8fcjx3he.js → chunk-az81pc04.js} +0 -0
  137. /package/dist/{chunk-7pyt4e5t.js → chunk-ghmkxqn5.js} +0 -0
  138. /package/dist/{chunk-5pvyxayg.js → chunk-m9zsppp2.js} +0 -0
package/README.md CHANGED
@@ -50,20 +50,30 @@ Package preparation and contributor commands are documented in [AGENTS.md](./AGE
50
50
 
51
51
  Import shared controls and providers from `@alexgorbatchev/shadcn`. Import the following features from their dedicated entry points and install only the peers you use. These features, their hooks, and their types are not exported from the package root.
52
52
 
53
- | Import path suffix | Components | Install alongside the package |
54
- | ------------------- | ------------------------------------------------------- | ------------------------------------------------------------- |
55
- | `/chart` | Chart components, ChartStyle, useChart, and chart types | `bun add recharts@3.8.0 cssesc@3.0.0 es-toolkit@1.52.0` |
56
- | `/calendar` | Calendar, CalendarDayButton | `bun add @daypicker/react@^10.0.2` |
57
- | `/persian-calendar` | PersianCalendar | `bun add @daypicker/persian@^10.0.2 @daypicker/react@^10.0.2` |
58
- | `/carousel` | Carousel components, useCarousel, and carousel types | `bun add embla-carousel-react@^8.6.0` |
59
- | `/command` | Command components, including CommandDialog | `bun add cmdk@^1.1.1` |
60
- | `/resizable` | Resizable components and SplitView | `bun add react-resizable-panels@^4.14.3` |
61
- | `/fonts.css` | JetBrains Mono font stylesheet | `bun add @fontsource-variable/jetbrains-mono@^5.3.0` |
62
- | `/sonner` | Sonner, SonnerToaster, Toaster, toast, useSonner | No additional install; patched implementation is bundled |
63
- | `/input-otp` | InputOTP components | No additional install; patched implementation is bundled |
64
- | `/virtual-table` | VirtualTable and row measurement props | `@tanstack/react-virtual@3.14.13` |
65
- | `/message-scroller` | MessageScroller components, hooks, and types | No additional install; patched implementation is bundled |
66
- | `/questionnaire` | Questionnaire components and types | No additional install; patched implementation is bundled |
53
+ | Import path suffix | Components | Install alongside the package |
54
+ | ------------------- | -------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
55
+ | `/chart` | Chart parts, AnalyticsChart, Sparkline, hooks and types | `bun add recharts@3.8.0 cssesc@3.0.0 es-toolkit@1.52.0` |
56
+ | `/calendar` | Calendar, CalendarDayButton, DatePicker, DateRangePicker | `bun add @daypicker/react@^10.0.2` |
57
+ | `/persian-calendar` | PersianCalendar | `bun add @daypicker/persian@^10.0.2 @daypicker/react@^10.0.2` |
58
+ | `/carousel` | Carousel components, useCarousel, and carousel types | `bun add embla-carousel-react@^8.6.0` |
59
+ | `/command` | Command components, including CommandDialog | `bun add cmdk@^1.1.1` |
60
+ | `/resizable` | Resizable components and SplitView | `bun add react-resizable-panels@^4.14.3` |
61
+ | `/fonts.css` | JetBrains Mono font stylesheet | `bun add @fontsource-variable/jetbrains-mono@^5.3.0` |
62
+ | `/sonner` | Sonner, SonnerToaster, Toaster, toast, useSonner | No additional install; patched implementation is bundled |
63
+ | `/input-otp` | InputOTP components | No additional install; patched implementation is bundled |
64
+ | `/virtual-table` | VirtualTable and row measurement props | `@tanstack/react-virtual@3.14.13` |
65
+ | `/message-scroller` | MessageScroller components, hooks, and types | No additional install; patched implementation is bundled |
66
+ | `/questionnaire` | Questionnaire components and types | No additional install; patched implementation is bundled |
67
+ | `/data-grid` | DataGrid and native table helpers | `bun add @tanstack/react-table@9.2.8` |
68
+ | `/file-upload` | FileUpload selection and validation | `bun add react-dropzone@^20.1.4` |
69
+ | `/color-picker` | ColorPicker | `bun add react-colorful@^5.8.1` |
70
+ | `/image-crop` | ImageCrop and native export helpers | `bun add react-image-crop@^11.1.2` |
71
+ | `/tree` | Tree, native hooks and features | `bun add @headless-tree/core@^1.8.0 @headless-tree/react@^1.8.0` |
72
+ | `/editor` | RichTextEditor, native Tiptap hooks and StarterKit | `bun add @tiptap/core@^3.32.0 @tiptap/react@^3.32.0 @tiptap/pm@^3.32.0 @tiptap/starter-kit@^3.32.0` |
73
+ | `/event-calendar` | EventCalendar, EventForm and native calendar APIs | `bun add react-big-calendar@^1.20.0 date-fns@^4.4.0`; TypeScript: `bun add -d @types/react-big-calendar@^1.16.3` |
74
+ | `/gantt` | Gantt and Roadmap | `bun add date-fns@^4.4.0 @date-fns/tz@^1.5.0` |
75
+
76
+ Import `@alexgorbatchev/shadcn/event-calendar.css` for EventCalendar, and `react-image-crop/dist/ReactCrop.css` for ImageCrop. The root also provides application shells, dashboard and billing layouts, authentication/settings forms, account/workspace controls, Kanban, facets, tags, number fields, toolbars, meters, stat cards and status displays. See the [component catalog reference](./docs/internal/component-catalog.md) for source groups, native APIs, dependency costs and consumer responsibilities.
67
77
 
68
78
  For example:
69
79
 
@@ -14,6 +14,8 @@ Questionnaire adapts the official registry's fifteen styled parts around `@shadc
14
14
 
15
15
  ## shadcn/ui
16
16
 
17
+ Questionnaire's NativeChoiceKeyboard and ItemArrowNavigation Storybook interactions adapt the native choice-navigation and contextual horizontal-arrow browser tests from `packages/react/src/questionnaire/questionnaire.browser.test.tsx` at upstream commit `3d98900e9b73c45f035f8109e9d41ba6a51685e7` (https://github.com/shadcn-ui/ui). Local changes use this package's styled compositions, Storybook's play context and accessible queries, and assert unanswered-item guards, focus, selection and submitted answers. The upstream MIT notice below covers these adaptations.
18
+
17
19
  Sidebar adapts the official provider and styled parts, preserving custom render/ref contracts, keyboard toggling within each provider, consumer-owned persistence, and native mobile Sheet behavior. Local changes support density, cancelled toggle events, observation without controlled state, inert offcanvas panels, configured mobile widths, and centered icons with accessible collapsed labels. Separator uses Base UI's current orientation attributes, and Tooltip preserves native state callbacks.
18
20
 
19
21
  Field preserves the official form composition and filters empty error messages before rendering an alert. Popover preserves native className callbacks on its popup, title, and description. Storybook form, date picker, and data table examples follow the official composition guides; the data table uses TanStack Table v9's native API.
@@ -155,3 +157,61 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
155
157
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
156
158
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
157
159
  SOFTWARE.
160
+
161
+ ## ReUI public component examples
162
+
163
+ DataGrid, FilterBar, Stepper, FileUpload, Tree, Kanban and planning compositions use the reviewed public MIT registry as a reference. Local integrations use TanStack Table v9, Base UI Tabs, react-dropzone, Headless Tree, React Big Calendar and the package's drag/drop contracts. Styling, native callbacks, keyboard alternatives and behavioral tests are package-owned. Premium blocks, icons and templates are excluded.
164
+
165
+ Reviewed source: https://github.com/keenthemes/reui/tree/067aa0dc7f8bbfec1cd76fc5ad31f842be5f569a
166
+
167
+ MIT License
168
+
169
+ Copyright (c) 2025 Keenthemes Inc
170
+
171
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
172
+
173
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
174
+
175
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
176
+
177
+ ## Kibo UI examples
178
+
179
+ RichTextEditor, FileUpload, ImageCrop, ColorPicker, TagInput, EventForm and Roadmap adapt the reviewed MIT composition patterns with native engine APIs and this package's theme. Local implementations preserve Tiptap ownership, native file validation, crop helpers, color conversion and shared roadmap state. The reviewed color-state conversion and image-size retry defects are not copied.
180
+
181
+ Reviewed source: https://github.com/shadcnblocks/kibo/tree/3d63cdb15b79d972e3dc38a10997987672f9b263
182
+
183
+ Copyright (c) 2023 — Present shadcnblocks
184
+
185
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
186
+
187
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
188
+
189
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
190
+
191
+ ## Tremor Blocks
192
+
193
+ StatCard, DashboardLayout, BillingUsage and SettingsSection follow the reviewed MIT dashboard, KPI, billing and form composition patterns. Local versions use semantic tokens, package primitives, consumer callbacks and behavioral stories. BarList, StatusTracker and chart compositions use package Meter/Tooltip and native Recharts; no Tremor Apache-2.0 runtime source is bundled by these additions.
194
+
195
+ Reviewed source: https://github.com/tremorlabs/tremor-blocks/tree/b319e8d3d3678a4f60f4802f7e85bc1abc52d598
196
+
197
+ The MIT License (MIT)
198
+
199
+ Copyright (c) 2025 Tremor Labs, Inc.
200
+
201
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
202
+
203
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
204
+
205
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
206
+
207
+ ## coss ui MIT registry reference
208
+
209
+ NumberField, Toolbar, Meter and date-picker compositions consult the MIT registry under apps/ui at https://github.com/cosscom/ui/tree/3d8ca28e7d90123e9e0f44665944dc240b026ccb/apps/ui. The repository's LICENSING.md designates apps/ui and apps/origin as MIT; its default AGPL license does not apply to these directories. These package implementations use native Base UI primitives and existing Calendar/Popover presentation. No AGPL packages/ui implementation or tests are incorporated.
210
+
211
+ ## Mantine UI design reference
212
+
213
+ The MIT examples at https://github.com/mantinedev/ui.mantine.dev/tree/966b0ff96011c3373a0a76ffd09c3150c4eb6047 inform responsive layout, authentication, account and statistic variants. Overlapping patterns are consolidated into this package's own compositions; no Mantine runtime, stylesheet or test helper is bundled.
214
+
215
+ ## Optional feature engines
216
+
217
+ The optional feature imports use external, separately installed react-dropzone 20.1.4 (MIT), react-colorful 5.8.1 (MIT), react-image-crop 11.1.2 (ISC), Headless Tree 1.8.0 (MIT), Tiptap 3.32.0 (MIT), React Big Calendar 1.20.0 (MIT), date-fns 4.4.0 (MIT), and @date-fns/tz 1.5.0 (MIT). Their distributions retain their own license files. No third-party engine source is bundled into the package archive by these integrations. EventCalendar's companion stylesheet imports the externally installed React Big Calendar structural stylesheet and applies local semantic-token presentation.
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommandInput2
3
- } from "./chunk-7pyt4e5t.js";
3
+ } from "./chunk-ghmkxqn5.js";
4
4
 
5
5
  // src/components/assistant-ui/elements/ModelSelectorSearch.tsx
6
6
  import { jsx } from "react/jsx-runtime";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  CommandList2,
3
3
  CommandGroup2
4
- } from "./chunk-7pyt4e5t.js";
4
+ } from "./chunk-ghmkxqn5.js";
5
5
  import {
6
6
  useModelSelectorContext
7
7
  } from "./chunk-ydfx8r6d.js";
8
8
  import {
9
9
  ModelSelectorEmpty2
10
- } from "./chunk-p8qtk151.js";
10
+ } from "./chunk-72qr0gqe.js";
11
11
  import {
12
12
  ModelSelectorItem2
13
- } from "./chunk-4drqqqz1.js";
13
+ } from "./chunk-83cckb23.js";
14
14
 
15
15
  // src/components/assistant-ui/elements/ModelSelectorList.tsx
16
16
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
@@ -0,0 +1,65 @@
1
+ import {
2
+ cn2
3
+ } from "./chunk-cp2m7y7v.js";
4
+ import {
5
+ buttonVariants2
6
+ } from "./chunk-73rkr9ct.js";
7
+
8
+ // src/components/Toolbar.tsx
9
+ import { Toolbar as ToolbarPrimitive } from "@base-ui/react/toolbar";
10
+ import { jsx } from "react/jsx-runtime";
11
+ function Toolbar2({ density, className, ...props }) {
12
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Root, {
13
+ "data-density": density,
14
+ "data-slot": "toolbar",
15
+ "data-scroll": "none",
16
+ className: (state) => cn2("flex min-w-0 gap-control-gap rounded-sm border border-border bg-card p-1 text-card-foreground data-[orientation=vertical]:flex-col", typeof className === "function" ? className(state) : className),
17
+ ...props
18
+ });
19
+ }
20
+ function ToolbarButton2({ density, className, ...props }) {
21
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Button, {
22
+ "data-density": density,
23
+ "data-slot": "toolbar-button",
24
+ className: (state) => cn2(buttonVariants2({ variant: "ghost" }), "data-disabled:border-dashed data-disabled:border-border data-disabled:bg-transparent data-disabled:text-faint-foreground data-disabled:font-normal", typeof className === "function" ? className(state) : className),
25
+ ...props
26
+ });
27
+ }
28
+ function ToolbarLink2({ density, className, ...props }) {
29
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Link, {
30
+ "data-density": density,
31
+ "data-slot": "toolbar-link",
32
+ className: (state) => cn2(buttonVariants2({ variant: "ghost" }), typeof className === "function" ? className(state) : className),
33
+ ...props
34
+ });
35
+ }
36
+ function ToolbarInput2({ density, className, ...props }) {
37
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Input, {
38
+ "data-density": density,
39
+ "data-slot": "toolbar-input",
40
+ className: (state) => cn2("h-control min-w-0 rounded-sm border border-input bg-secondary px-control-x text-sm outline-none focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50", typeof className === "function" ? className(state) : className),
41
+ ...props
42
+ });
43
+ }
44
+ function ToolbarGroup2({ density, className, ...props }) {
45
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Group, {
46
+ "data-density": density,
47
+ "data-slot": "toolbar-group",
48
+ className: (state) => cn2("flex items-center gap-control-gap data-[orientation=vertical]:flex-col", typeof className === "function" ? className(state) : className),
49
+ ...props
50
+ });
51
+ }
52
+ function ToolbarSeparator2({
53
+ density,
54
+ className,
55
+ ...props
56
+ }) {
57
+ return /* @__PURE__ */ jsx(ToolbarPrimitive.Separator, {
58
+ "data-density": density,
59
+ "data-slot": "toolbar-separator",
60
+ className: (state) => cn2("shrink-0 self-stretch bg-border data-[orientation=vertical]:mx-1 data-[orientation=vertical]:w-px data-[orientation=horizontal]:my-1 data-[orientation=horizontal]:h-px", typeof className === "function" ? className(state) : className),
61
+ ...props
62
+ });
63
+ }
64
+
65
+ export { Toolbar2, ToolbarButton2, ToolbarLink2, ToolbarInput2, ToolbarGroup2, ToolbarSeparator2 };
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-rffrerg5.js";
6
6
  import {
7
7
  Thread2
8
- } from "./chunk-8fcjx3he.js";
8
+ } from "./chunk-az81pc04.js";
9
9
 
10
10
  // src/components/assistant-ui/native/AssistantSidebar.tsx
11
11
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommandEmpty2
3
- } from "./chunk-7pyt4e5t.js";
3
+ } from "./chunk-ghmkxqn5.js";
4
4
 
5
5
  // src/components/assistant-ui/elements/ModelSelectorEmpty.tsx
6
6
  import { jsx } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommandItem2
3
- } from "./chunk-7pyt4e5t.js";
3
+ } from "./chunk-ghmkxqn5.js";
4
4
  import {
5
5
  useModelSelectorContext
6
6
  } from "./chunk-ydfx8r6d.js";
@@ -10,7 +10,7 @@ import {
10
10
  } from "./chunk-1s7af44v.js";
11
11
  import {
12
12
  TaskCard2
13
- } from "./chunk-5pvyxayg.js";
13
+ } from "./chunk-m9zsppp2.js";
14
14
 
15
15
  // src/components/assistant-ui/native/TaskGroup.tsx
16
16
  import { useAui, useAuiState } from "@assistant-ui/react";
@@ -12,31 +12,31 @@ import {
12
12
  } from "./chunk-96wh7ccv.js";
13
13
  import {
14
14
  ModelSelectorFocusAnchor2
15
- } from "./chunk-553bzh59.js";
15
+ } from "./chunk-f4c0tg2x.js";
16
16
  import {
17
17
  ModelSelectorSearch2
18
- } from "./chunk-s46hvhjw.js";
18
+ } from "./chunk-0w6rxpr5.js";
19
19
  import {
20
20
  ModelSelectorEmpty2
21
- } from "./chunk-p8qtk151.js";
21
+ } from "./chunk-72qr0gqe.js";
22
22
  import {
23
23
  ModelSelectorItem2
24
- } from "./chunk-4drqqqz1.js";
24
+ } from "./chunk-83cckb23.js";
25
25
  import {
26
26
  ModelSelectorList2
27
- } from "./chunk-gabqzfq0.js";
27
+ } from "./chunk-1p7pend8.js";
28
28
  import {
29
29
  ModelSelectorEffort2
30
30
  } from "./chunk-r07v9c4f.js";
31
31
  import {
32
32
  ModelSelectorContent2
33
- } from "./chunk-14qj6w54.js";
33
+ } from "./chunk-f9ha76ap.js";
34
34
  import {
35
35
  ModelSelectorGroup2
36
- } from "./chunk-qv19jhdk.js";
36
+ } from "./chunk-k8v9y2dw.js";
37
37
  import {
38
38
  ModelSelectorSeparator2
39
- } from "./chunk-ecmk3vgd.js";
39
+ } from "./chunk-seeed8a2.js";
40
40
 
41
41
  // src/components/assistant-ui/native/ModelSelector.tsx
42
42
  import { memo, useEffect } from "react";
@@ -242,6 +242,7 @@ function Sidebar2({
242
242
  side = "left",
243
243
  variant = "sidebar",
244
244
  collapsible = "offcanvas",
245
+ position = "viewport",
245
246
  className,
246
247
  children,
247
248
  dir,
@@ -325,7 +326,7 @@ function Sidebar2({
325
326
  dir: direction,
326
327
  inert: isOffcanvas,
327
328
  "aria-hidden": isOffcanvas || undefined,
328
- className: cn2("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex motion-reduce:transition-none", variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", className),
329
+ className: cn2("inset-y-0 z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex motion-reduce:transition-none", position === "container" ? "absolute h-full" : "fixed h-svh", variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l", className),
329
330
  ...props,
330
331
  children: /* @__PURE__ */ jsx2("div", {
331
332
  "data-sidebar": "sidebar",
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-96wh7ccv.js";
7
7
  import {
8
8
  ModelSelectorContent2
9
- } from "./chunk-14qj6w54.js";
9
+ } from "./chunk-f9ha76ap.js";
10
10
 
11
11
  // src/components/assistant-ui/elements/ModelSelector.tsx
12
12
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommandInput2
3
- } from "./chunk-7pyt4e5t.js";
3
+ } from "./chunk-ghmkxqn5.js";
4
4
 
5
5
  // src/components/assistant-ui/elements/ModelSelectorFocusAnchor.tsx
6
6
  import { jsx } from "react/jsx-runtime";
@@ -4,19 +4,19 @@ import {
4
4
  } from "./chunk-4djw71cv.js";
5
5
  import {
6
6
  Command2
7
- } from "./chunk-7pyt4e5t.js";
7
+ } from "./chunk-ghmkxqn5.js";
8
8
  import {
9
9
  useModelSelectorContext
10
10
  } from "./chunk-ydfx8r6d.js";
11
11
  import {
12
12
  ModelSelectorFocusAnchor2
13
- } from "./chunk-553bzh59.js";
13
+ } from "./chunk-f4c0tg2x.js";
14
14
  import {
15
15
  ModelSelectorSearch2
16
- } from "./chunk-s46hvhjw.js";
16
+ } from "./chunk-0w6rxpr5.js";
17
17
  import {
18
18
  ModelSelectorList2
19
- } from "./chunk-gabqzfq0.js";
19
+ } from "./chunk-1p7pend8.js";
20
20
  import {
21
21
  ModelSelectorEffort2
22
22
  } from "./chunk-r07v9c4f.js";
@@ -6,7 +6,7 @@ import {
6
6
  CommandGroup2,
7
7
  CommandItem2,
8
8
  CommandShortcut2
9
- } from "./chunk-7pyt4e5t.js";
9
+ } from "./chunk-ghmkxqn5.js";
10
10
  import {
11
11
  Kbd2
12
12
  } from "./chunk-vyve5wf3.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommandGroup2
3
- } from "./chunk-7pyt4e5t.js";
3
+ } from "./chunk-ghmkxqn5.js";
4
4
 
5
5
  // src/components/assistant-ui/elements/ModelSelectorGroup.tsx
6
6
  import { jsx } from "react/jsx-runtime";