raft-ui 0.0.7 → 0.0.8

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.
package/dist/wip.mjs CHANGED
@@ -1,288 +1,15 @@
1
- import { a as useThemeFamily, c as tv, t as Button$1 } from "./button-CJqMhTPQ.mjs";
2
1
  import { cn } from "./cn.mjs";
3
- import { Button } from "@base-ui/react/button";
2
+ import { a as tv, n as useThemeFamily } from "./use-theme-Y_h1DKll.mjs";
3
+ import { Dialog } from "@base-ui/react/dialog";
4
+ import { MessageSquare } from "lucide-react";
4
5
  import { useCallback, useRef, useState } from "react";
6
+ import { Button } from "@base-ui/react/button";
5
7
  import { mergeProps } from "@base-ui/react/merge-props";
6
8
  import { useRender } from "@base-ui/react/use-render";
7
9
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
- import { MessageSquare } from "lucide-react";
9
- import { Dialog as Dialog$1 } from "@base-ui/react/dialog";
10
10
  import { Toggle } from "@base-ui/react/toggle";
11
11
  import { ToggleGroup as ToggleGroup$1 } from "@base-ui/react/toggle-group";
12
12
  import { useHotkey } from "@tanstack/react-hotkeys";
13
- //#region src/components/dialog/dialog.tsx
14
- const dialog = tv({
15
- slots: {
16
- overlay: [
17
- "fixed inset-0 z-50",
18
- "transition-opacity duration-100",
19
- "data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"
20
- ],
21
- content: [
22
- "fixed top-1/2 left-1/2 z-50 grid w-[calc(100%-2rem)] max-w-md -translate-x-1/2 -translate-y-1/2",
23
- "outline-none transition-[opacity,transform] duration-100",
24
- "data-[starting-style]:scale-95 data-[starting-style]:opacity-0",
25
- "data-[ending-style]:scale-95 data-[ending-style]:opacity-0"
26
- ],
27
- header: ["flex min-w-0 flex-col gap-1"],
28
- body: ["min-w-0"],
29
- footer: ["flex items-center justify-end gap-3"],
30
- title: ["m-0 min-w-0 text-foreground-strong"],
31
- description: ["m-0 text-foreground-muted"]
32
- },
33
- variants: { theme: {
34
- brutal: {
35
- overlay: ["bg-black/60"],
36
- content: ["gap-4 border-2 border-line-strong bg-layer-panel p-6 shadow-xl"],
37
- title: ["font-heading text-lg leading-none font-bold uppercase"],
38
- description: ["font-sans text-sm leading-5 text-foreground/60"]
39
- },
40
- elegant: {
41
- overlay: ["bg-black/20"],
42
- content: ["gap-5 rounded-lg bg-layer-popover p-5", "shadow-[0_24px_48px_-24px_oklch(0.21_0.006_285_/_0.30),0_0_0_1px_oklch(0.21_0.006_285_/_0.08),0_1px_2px_oklch(0.21_0.006_285_/_0.08)]"],
43
- title: ["font-sans text-base leading-5 font-medium tracking-[-0.005em]"],
44
- description: ["font-sans text-sm leading-5 text-[oklch(0.48_0_0)] dark:text-[oklch(0.76_0_0)]"]
45
- }
46
- } }
47
- });
48
- function Dialog(props) {
49
- return /* @__PURE__ */ jsx(Dialog$1.Root, {
50
- "data-slot": "dialog",
51
- ...props
52
- });
53
- }
54
- function DialogTrigger(props) {
55
- return /* @__PURE__ */ jsx(Dialog$1.Trigger, {
56
- "data-slot": "dialog-trigger",
57
- ...props
58
- });
59
- }
60
- function DialogPortal(props) {
61
- return /* @__PURE__ */ jsx(Dialog$1.Portal, {
62
- "data-slot": "dialog-portal",
63
- ...props
64
- });
65
- }
66
- function DialogOverlay({ className, ...props }) {
67
- const { overlay } = dialog({ theme: useThemeFamily() });
68
- return /* @__PURE__ */ jsx(Dialog$1.Backdrop, {
69
- "data-slot": "dialog-overlay",
70
- className: overlay({ className }),
71
- ...props
72
- });
73
- }
74
- function DialogContent({ className, children, portalProps, overlay, ...props }) {
75
- const { content } = dialog({ theme: useThemeFamily() });
76
- return /* @__PURE__ */ jsxs(DialogPortal, {
77
- ...portalProps,
78
- children: [overlay === false ? null : /* @__PURE__ */ jsx(DialogOverlay, { ...overlay }), /* @__PURE__ */ jsx(Dialog$1.Popup, {
79
- "data-slot": "dialog-content",
80
- className: content({ className }),
81
- ...props,
82
- children
83
- })]
84
- });
85
- }
86
- function DialogClose(props) {
87
- return /* @__PURE__ */ jsx(Dialog$1.Close, {
88
- "data-slot": "dialog-close",
89
- ...props
90
- });
91
- }
92
- function DialogHeader({ className, ...props }) {
93
- const { header } = dialog({ theme: useThemeFamily() });
94
- return /* @__PURE__ */ jsx("div", {
95
- "data-slot": "dialog-header",
96
- className: header({ className }),
97
- ...props
98
- });
99
- }
100
- function DialogBody({ className, ...props }) {
101
- const { body } = dialog({ theme: useThemeFamily() });
102
- return /* @__PURE__ */ jsx("div", {
103
- "data-slot": "dialog-body",
104
- className: body({ className }),
105
- ...props
106
- });
107
- }
108
- function DialogFooter({ className, ...props }) {
109
- const { footer } = dialog({ theme: useThemeFamily() });
110
- return /* @__PURE__ */ jsx("div", {
111
- "data-slot": "dialog-footer",
112
- className: footer({ className }),
113
- ...props
114
- });
115
- }
116
- function DialogTitle({ className, ...props }) {
117
- const { title } = dialog({ theme: useThemeFamily() });
118
- return /* @__PURE__ */ jsx(Dialog$1.Title, {
119
- "data-slot": "dialog-title",
120
- className: title({ className }),
121
- ...props
122
- });
123
- }
124
- function DialogDescription({ className, ...props }) {
125
- const { description } = dialog({ theme: useThemeFamily() });
126
- return /* @__PURE__ */ jsx(Dialog$1.Description, {
127
- "data-slot": "dialog-description",
128
- className: description({ className }),
129
- ...props
130
- });
131
- }
132
- //#endregion
133
- //#region src/components/alert-dialog/alert-dialog.tsx
134
- const alertDialog = tv({
135
- slots: {
136
- overlay: [
137
- "fixed inset-0 z-50",
138
- "transition-opacity duration-100",
139
- "data-[starting-style]:opacity-0 data-[ending-style]:opacity-0"
140
- ],
141
- content: [
142
- "fixed top-1/2 left-1/2 z-50 grid w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2",
143
- "outline-none transition-[opacity,transform] duration-100",
144
- "data-[starting-style]:scale-95 data-[starting-style]:opacity-0",
145
- "data-[ending-style]:scale-95 data-[ending-style]:opacity-0"
146
- ],
147
- header: ["grid min-w-0 gap-1"],
148
- media: ["flex size-10 shrink-0 items-center justify-center"],
149
- body: ["min-w-0"],
150
- footer: ["flex items-center justify-end gap-3"],
151
- title: ["m-0 min-w-0 text-foreground-strong"],
152
- description: ["m-0 text-foreground-muted"]
153
- },
154
- variants: {
155
- theme: {
156
- brutal: {
157
- overlay: ["bg-black/60"],
158
- content: ["gap-4 border-2 border-line-strong bg-layer-panel p-6 shadow-xl"],
159
- media: ["border-2 border-line-strong bg-warning-base text-foreground-inverse"],
160
- title: ["font-heading text-lg leading-none font-bold uppercase"],
161
- description: ["font-sans text-sm leading-5 text-foreground/60"]
162
- },
163
- elegant: {
164
- overlay: ["bg-black/20"],
165
- content: ["gap-5 rounded-lg bg-layer-popover p-5", "shadow-[0_24px_48px_-24px_oklch(0.21_0.006_285_/_0.30),0_0_0_1px_oklch(0.21_0.006_285_/_0.08),0_1px_2px_oklch(0.21_0.006_285_/_0.08)]"],
166
- media: ["rounded-md bg-danger-lighter text-danger-base"],
167
- title: ["font-sans text-base leading-5 font-medium tracking-[-0.005em]"],
168
- description: ["font-sans text-sm leading-5 text-[oklch(0.48_0_0)] dark:text-[oklch(0.76_0_0)]"]
169
- }
170
- },
171
- size: {
172
- sm: { content: ["max-w-sm"] },
173
- md: { content: ["max-w-md"] }
174
- }
175
- },
176
- defaultVariants: { size: "sm" }
177
- });
178
- function AlertDialog(props) {
179
- return /* @__PURE__ */ jsx(Dialog$1.Root, {
180
- "data-slot": "alert-dialog",
181
- ...props
182
- });
183
- }
184
- function AlertDialogTrigger(props) {
185
- return /* @__PURE__ */ jsx(Dialog$1.Trigger, {
186
- "data-slot": "alert-dialog-trigger",
187
- ...props
188
- });
189
- }
190
- function AlertDialogPortal(props) {
191
- return /* @__PURE__ */ jsx(Dialog$1.Portal, {
192
- "data-slot": "alert-dialog-portal",
193
- ...props
194
- });
195
- }
196
- function AlertDialogOverlay({ className, ...props }) {
197
- const { overlay } = alertDialog({ theme: useThemeFamily() });
198
- return /* @__PURE__ */ jsx(Dialog$1.Backdrop, {
199
- "data-slot": "alert-dialog-overlay",
200
- className: overlay({ className }),
201
- ...props
202
- });
203
- }
204
- function AlertDialogContent({ className, children, portalProps, overlay, size, ...props }) {
205
- const { content } = alertDialog({
206
- theme: useThemeFamily(),
207
- size
208
- });
209
- return /* @__PURE__ */ jsxs(AlertDialogPortal, {
210
- ...portalProps,
211
- children: [overlay === false ? null : /* @__PURE__ */ jsx(AlertDialogOverlay, { ...overlay }), /* @__PURE__ */ jsx(Dialog$1.Popup, {
212
- "data-slot": "alert-dialog-content",
213
- className: content({ className }),
214
- ...props,
215
- role: "alertdialog",
216
- children
217
- })]
218
- });
219
- }
220
- function AlertDialogHeader({ className, ...props }) {
221
- const { header } = alertDialog({ theme: useThemeFamily() });
222
- return /* @__PURE__ */ jsx("div", {
223
- "data-slot": "alert-dialog-header",
224
- className: header({ className }),
225
- ...props
226
- });
227
- }
228
- function AlertDialogMedia({ className, ...props }) {
229
- const { media } = alertDialog({ theme: useThemeFamily() });
230
- return /* @__PURE__ */ jsx("div", {
231
- "data-slot": "alert-dialog-media",
232
- className: media({ className }),
233
- ...props
234
- });
235
- }
236
- function AlertDialogBody({ className, ...props }) {
237
- const { body } = alertDialog({ theme: useThemeFamily() });
238
- return /* @__PURE__ */ jsx("div", {
239
- "data-slot": "alert-dialog-body",
240
- className: body({ className }),
241
- ...props
242
- });
243
- }
244
- function AlertDialogFooter({ className, ...props }) {
245
- const { footer } = alertDialog({ theme: useThemeFamily() });
246
- return /* @__PURE__ */ jsx("div", {
247
- "data-slot": "alert-dialog-footer",
248
- className: footer({ className }),
249
- ...props
250
- });
251
- }
252
- function AlertDialogTitle({ className, ...props }) {
253
- const { title } = alertDialog({ theme: useThemeFamily() });
254
- return /* @__PURE__ */ jsx(Dialog$1.Title, {
255
- "data-slot": "alert-dialog-title",
256
- className: title({ className }),
257
- ...props
258
- });
259
- }
260
- function AlertDialogDescription({ className, ...props }) {
261
- const { description } = alertDialog({ theme: useThemeFamily() });
262
- return /* @__PURE__ */ jsx(Dialog$1.Description, {
263
- "data-slot": "alert-dialog-description",
264
- className: description({ className }),
265
- ...props
266
- });
267
- }
268
- function AlertDialogAction(props) {
269
- return /* @__PURE__ */ jsx(Button$1, {
270
- "data-slot": "alert-dialog-action",
271
- ...props
272
- });
273
- }
274
- function AlertDialogCancel({ className, variant = "outline", size = "sm", ...props }) {
275
- return /* @__PURE__ */ jsx(Dialog$1.Close, {
276
- "data-slot": "alert-dialog-cancel",
277
- render: /* @__PURE__ */ jsx(Button$1, {
278
- className,
279
- variant,
280
- size
281
- }),
282
- ...props
283
- });
284
- }
285
- //#endregion
286
13
  //#region src/components/toggle-group/toggle-group.tsx
287
14
  const toggleGroup = tv({
288
15
  slots: {
@@ -690,10 +417,10 @@ const panelHeader = tv({
690
417
  },
691
418
  variants: { theme: {
692
419
  brutal: {
693
- root: "border-b-2 border-line-strong bg-layer-panel",
694
- icon: "border-line-strong",
695
- title: "text-foreground-strong",
696
- subtitle: "text-foreground/50"
420
+ root: "border-b-2 border-black bg-white",
421
+ icon: "border-black",
422
+ title: "text-black",
423
+ subtitle: "text-black/50"
697
424
  },
698
425
  elegant: {}
699
426
  } }
@@ -1305,7 +1032,7 @@ function Lightbox({ closeOnModW = true, defaultOpen = false, modal = true, onOpe
1305
1032
  onOpenChange?.(nextOpen, eventDetails);
1306
1033
  }, [onOpenChange, open]);
1307
1034
  const modWClose = closeOnModW && effectiveOpen ? /* @__PURE__ */ jsx(LightboxModWClose, { dialogRef }) : null;
1308
- return /* @__PURE__ */ jsxs(Dialog$1.Root, {
1035
+ return /* @__PURE__ */ jsxs(Dialog.Root, {
1309
1036
  actionsRef: dialogRef,
1310
1037
  defaultOpen,
1311
1038
  modal,
@@ -1327,23 +1054,23 @@ function LightboxModWClose({ dialogRef }) {
1327
1054
  return null;
1328
1055
  }
1329
1056
  function LightboxTrigger(props) {
1330
- return /* @__PURE__ */ jsx(Dialog$1.Trigger, {
1057
+ return /* @__PURE__ */ jsx(Dialog.Trigger, {
1331
1058
  "data-slot": "lightbox-trigger",
1332
1059
  ...props
1333
1060
  });
1334
1061
  }
1335
1062
  function LightboxPortal(props) {
1336
- return /* @__PURE__ */ jsx(Dialog$1.Portal, {
1063
+ return /* @__PURE__ */ jsx(Dialog.Portal, {
1337
1064
  "data-slot": "lightbox-portal",
1338
1065
  ...props
1339
1066
  });
1340
1067
  }
1341
1068
  function LightboxContent({ className, initialFocus = false, finalFocus = false, ...props }) {
1342
1069
  const { backdrop, content } = lightbox({ theme: useThemeFamily() });
1343
- return /* @__PURE__ */ jsxs(LightboxPortal, { children: [/* @__PURE__ */ jsx(Dialog$1.Backdrop, {
1070
+ return /* @__PURE__ */ jsxs(LightboxPortal, { children: [/* @__PURE__ */ jsx(Dialog.Backdrop, {
1344
1071
  "data-slot": "lightbox-backdrop",
1345
1072
  className: backdrop()
1346
- }), /* @__PURE__ */ jsx(Dialog$1.Popup, {
1073
+ }), /* @__PURE__ */ jsx(Dialog.Popup, {
1347
1074
  "data-slot": "lightbox-content",
1348
1075
  initialFocus,
1349
1076
  finalFocus,
@@ -1398,7 +1125,7 @@ function LightboxMedia({ render, className, ...props }) {
1398
1125
  }
1399
1126
  function LightboxClose({ className, ...props }) {
1400
1127
  const { close } = lightbox({ theme: useThemeFamily() });
1401
- return /* @__PURE__ */ jsx(Dialog$1.Close, {
1128
+ return /* @__PURE__ */ jsx(Dialog.Close, {
1402
1129
  "data-slot": "lightbox-close",
1403
1130
  className: close({ className }),
1404
1131
  ...props
@@ -1415,28 +1142,28 @@ const bottomSheet = tv({
1415
1142
  description: ["text-sm text-foreground/60"]
1416
1143
  },
1417
1144
  variants: { theme: {
1418
- brutal: { content: ["border-2 border-line-strong bg-layer-panel shadow-xl"] },
1145
+ brutal: { content: ["border-2 border-black bg-white text-black shadow-xl"] },
1419
1146
  elegant: {}
1420
1147
  } }
1421
1148
  });
1422
1149
  function BottomSheet(props) {
1423
- return /* @__PURE__ */ jsx(Dialog$1.Root, { ...props });
1150
+ return /* @__PURE__ */ jsx(Dialog.Root, { ...props });
1424
1151
  }
1425
1152
  function BottomSheetTrigger(props) {
1426
- return /* @__PURE__ */ jsx(Dialog$1.Trigger, {
1153
+ return /* @__PURE__ */ jsx(Dialog.Trigger, {
1427
1154
  "data-slot": "bottom-sheet-trigger",
1428
1155
  ...props
1429
1156
  });
1430
1157
  }
1431
1158
  function BottomSheetPortal(props) {
1432
- return /* @__PURE__ */ jsx(Dialog$1.Portal, {
1159
+ return /* @__PURE__ */ jsx(Dialog.Portal, {
1433
1160
  "data-slot": "bottom-sheet-portal",
1434
1161
  ...props
1435
1162
  });
1436
1163
  }
1437
1164
  function BottomSheetContent({ className, ...props }) {
1438
1165
  const { content } = bottomSheet({ theme: useThemeFamily() });
1439
- return /* @__PURE__ */ jsx(BottomSheetPortal, { children: /* @__PURE__ */ jsx(Dialog$1.Popup, {
1166
+ return /* @__PURE__ */ jsx(BottomSheetPortal, { children: /* @__PURE__ */ jsx(Dialog.Popup, {
1440
1167
  "data-slot": "bottom-sheet-content",
1441
1168
  "data-side": "bottom",
1442
1169
  className: content({ className }),
@@ -1444,7 +1171,7 @@ function BottomSheetContent({ className, ...props }) {
1444
1171
  }) });
1445
1172
  }
1446
1173
  function BottomSheetClose(props) {
1447
- return /* @__PURE__ */ jsx(Dialog$1.Close, {
1174
+ return /* @__PURE__ */ jsx(Dialog.Close, {
1448
1175
  "data-slot": "bottom-sheet-close",
1449
1176
  ...props
1450
1177
  });
@@ -1469,7 +1196,7 @@ function BottomSheetFooter({ className, render, ...props }) {
1469
1196
  }
1470
1197
  function BottomSheetTitle({ className, ...props }) {
1471
1198
  const { title } = bottomSheet({ theme: useThemeFamily() });
1472
- return /* @__PURE__ */ jsx(Dialog$1.Title, {
1199
+ return /* @__PURE__ */ jsx(Dialog.Title, {
1473
1200
  "data-slot": "bottom-sheet-title",
1474
1201
  className: title({ className }),
1475
1202
  ...props
@@ -1477,11 +1204,11 @@ function BottomSheetTitle({ className, ...props }) {
1477
1204
  }
1478
1205
  function BottomSheetDescription({ className, ...props }) {
1479
1206
  const { description } = bottomSheet({ theme: useThemeFamily() });
1480
- return /* @__PURE__ */ jsx(Dialog$1.Description, {
1207
+ return /* @__PURE__ */ jsx(Dialog.Description, {
1481
1208
  "data-slot": "bottom-sheet-description",
1482
1209
  className: description({ className }),
1483
1210
  ...props
1484
1211
  });
1485
1212
  }
1486
1213
  //#endregion
1487
- export { AlertDialog, AlertDialogAction, AlertDialogBody, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, BottomSheet, BottomSheetClose, BottomSheetContent, BottomSheetDescription, BottomSheetFooter, BottomSheetHeader, BottomSheetPortal, BottomSheetTitle, BottomSheetTrigger, ConversationPreviewCard, ConversationPreviewCardAction, ConversationPreviewCardAuthor, ConversationPreviewCardAuthorName, ConversationPreviewCardAuthorSubtitle, ConversationPreviewCardChannel, ConversationPreviewCardContent, ConversationPreviewCardFooter, ConversationPreviewCardMeta, ConversationPreviewCardPreview, ConversationPreviewCardPreviewAuthor, ConversationPreviewCardPreviewLeading, ConversationPreviewCardSecondaryPreview, ConversationPreviewCardTimestamp, DescriptionAction, DescriptionDetails, DescriptionItem, DescriptionList, DescriptionTerm, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Lightbox, LightboxActions, LightboxClose, LightboxContent, LightboxHeader, LightboxMedia, LightboxPortal, LightboxStage, LightboxTitle, LightboxTrigger, ListItem, ListItemActionGroup, ListItemBody, ListItemDescription, ListItemIcon, ListItemMeta, ListItemRow, ListItemTitle, MediaListItem, MediaListItemActionGroup, MediaListItemAside, MediaListItemBody, MediaListItemSubtitle, MediaListItemText, MediaListItemTitle, MediaListItemVisual, PanelHeader, PanelHeaderActions, PanelHeaderContent, PanelHeaderIcon, PanelHeaderSubtitle, PanelHeaderSuffix, PanelHeaderTitle, PanelHeaderTitleRow, PanelHeaderVisual, PreviewShell, QuotedMessageCard, QuotedMessageCardAttachments, QuotedMessageCardAuthor, QuotedMessageCardAuthorName, QuotedMessageCardAuthorSubtitle, QuotedMessageCardBody, QuotedMessageCardChannel, QuotedMessageCardContent, QuotedMessageCardContentWrap, QuotedMessageCardHeader, QuotedMessageCardMeta, QuotedMessageCardSeparator, QuotedMessageCardTag, QuotedMessageCardThread, QuotedMessageCardTimestamp, QuotedMessageCardUnavailable, SectionHeader, SectionHeaderActions, SectionHeaderContent, SectionHeaderCount, SectionHeaderIcon, SectionHeaderTitle, SectionLabel, ToggleGroup, ToggleGroupCount, ToggleGroupItem, ToggleGroupLabel };
1214
+ export { BottomSheet, BottomSheetClose, BottomSheetContent, BottomSheetDescription, BottomSheetFooter, BottomSheetHeader, BottomSheetPortal, BottomSheetTitle, BottomSheetTrigger, ConversationPreviewCard, ConversationPreviewCardAction, ConversationPreviewCardAuthor, ConversationPreviewCardAuthorName, ConversationPreviewCardAuthorSubtitle, ConversationPreviewCardChannel, ConversationPreviewCardContent, ConversationPreviewCardFooter, ConversationPreviewCardMeta, ConversationPreviewCardPreview, ConversationPreviewCardPreviewAuthor, ConversationPreviewCardPreviewLeading, ConversationPreviewCardSecondaryPreview, ConversationPreviewCardTimestamp, DescriptionAction, DescriptionDetails, DescriptionItem, DescriptionList, DescriptionTerm, Lightbox, LightboxActions, LightboxClose, LightboxContent, LightboxHeader, LightboxMedia, LightboxPortal, LightboxStage, LightboxTitle, LightboxTrigger, ListItem, ListItemActionGroup, ListItemBody, ListItemDescription, ListItemIcon, ListItemMeta, ListItemRow, ListItemTitle, MediaListItem, MediaListItemActionGroup, MediaListItemAside, MediaListItemBody, MediaListItemSubtitle, MediaListItemText, MediaListItemTitle, MediaListItemVisual, PanelHeader, PanelHeaderActions, PanelHeaderContent, PanelHeaderIcon, PanelHeaderSubtitle, PanelHeaderSuffix, PanelHeaderTitle, PanelHeaderTitleRow, PanelHeaderVisual, PreviewShell, QuotedMessageCard, QuotedMessageCardAttachments, QuotedMessageCardAuthor, QuotedMessageCardAuthorName, QuotedMessageCardAuthorSubtitle, QuotedMessageCardBody, QuotedMessageCardChannel, QuotedMessageCardContent, QuotedMessageCardContentWrap, QuotedMessageCardHeader, QuotedMessageCardMeta, QuotedMessageCardSeparator, QuotedMessageCardTag, QuotedMessageCardThread, QuotedMessageCardTimestamp, QuotedMessageCardUnavailable, SectionHeader, SectionHeaderActions, SectionHeaderContent, SectionHeaderCount, SectionHeaderIcon, SectionHeaderTitle, SectionLabel, ToggleGroup, ToggleGroupCount, ToggleGroupItem, ToggleGroupLabel };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "raft-ui",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "React UI components for Raft.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -39,6 +39,7 @@
39
39
  "@dnd-kit/utilities": "^3.2.2",
40
40
  "@tanstack/react-hotkeys": "^0.10.0",
41
41
  "cnfast": "^0.0.7",
42
+ "foxact": "^0.3.7",
42
43
  "lucide-react": "^1.21.0",
43
44
  "tailwind-variants": "^3.2.2"
44
45
  },