@epicbagel/saas-kit 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -1
- package/THIRD_PARTY_NOTICES.md +13 -7
- package/dist/chunk-2AU7ZRGX.cjs +96 -0
- package/dist/chunk-2BTDBZYN.cjs +154 -0
- package/dist/chunk-2HV2KKOE.cjs +38 -0
- package/dist/chunk-2KFZQJH5.cjs +29 -0
- package/dist/chunk-32Q4XOTU.cjs +204 -0
- package/dist/chunk-42RTTHND.js +29 -0
- package/dist/chunk-6FC65AZQ.js +38 -0
- package/dist/chunk-6V4XMQ6D.js +118 -0
- package/dist/chunk-B765DSRG.cjs +66 -0
- package/dist/chunk-ELPV44S6.cjs +44 -0
- package/dist/chunk-EOUO3ORO.cjs +244 -0
- package/dist/chunk-EZCKWTH7.js +204 -0
- package/dist/chunk-F366BHWH.js +116 -0
- package/dist/chunk-GFG2R5BZ.js +132 -0
- package/dist/chunk-HAC32ALJ.js +244 -0
- package/dist/chunk-I5UQSBBZ.cjs +118 -0
- package/dist/chunk-INNGGLMZ.js +44 -0
- package/dist/chunk-IW4ZIXXG.js +66 -0
- package/dist/chunk-JZOBIPFC.js +96 -0
- package/dist/chunk-KENBU3NV.cjs +27 -0
- package/dist/chunk-MHYAVXOE.js +159 -0
- package/dist/chunk-RIWLAMME.cjs +159 -0
- package/dist/chunk-SUB4BAYE.cjs +73 -0
- package/dist/chunk-THWIJG5C.js +73 -0
- package/dist/chunk-V4YWTRLD.cjs +116 -0
- package/dist/chunk-VY5U4VGV.js +27 -0
- package/dist/chunk-XABXUP6L.cjs +132 -0
- package/dist/chunk-Z45YKVAM.js +154 -0
- package/dist/primitives/action-dock.cjs +8 -0
- package/dist/primitives/action-dock.d.cts +10 -0
- package/dist/primitives/action-dock.d.ts +10 -0
- package/dist/primitives/action-dock.js +8 -0
- package/dist/primitives/alert.d.cts +1 -1
- package/dist/primitives/alert.d.ts +1 -1
- package/dist/primitives/attachment.cjs +25 -203
- package/dist/primitives/attachment.d.cts +1 -1
- package/dist/primitives/attachment.d.ts +1 -1
- package/dist/primitives/attachment.js +12 -190
- package/dist/primitives/badge.d.cts +1 -1
- package/dist/primitives/badge.d.ts +1 -1
- package/dist/primitives/board-view.cjs +3 -3
- package/dist/primitives/board-view.js +2 -2
- package/dist/primitives/bubble.cjs +14 -0
- package/dist/primitives/bubble.d.cts +21 -0
- package/dist/primitives/bubble.d.ts +21 -0
- package/dist/primitives/bubble.js +14 -0
- package/dist/primitives/button.d.cts +2 -2
- package/dist/primitives/button.d.ts +2 -2
- package/dist/primitives/chat.cjs +864 -0
- package/dist/primitives/chat.d.cts +326 -0
- package/dist/primitives/chat.d.ts +326 -0
- package/dist/primitives/chat.js +864 -0
- package/dist/primitives/connection.cjs +6 -6
- package/dist/primitives/connection.js +7 -7
- package/dist/primitives/file-dropzone.cjs +7 -113
- package/dist/primitives/file-dropzone.js +6 -112
- package/dist/primitives/input-group.cjs +21 -0
- package/dist/primitives/input-group.d.cts +20 -0
- package/dist/primitives/input-group.d.ts +20 -0
- package/dist/primitives/input-group.js +21 -0
- package/dist/primitives/item.cjs +197 -0
- package/dist/primitives/item.d.cts +28 -0
- package/dist/primitives/item.d.ts +28 -0
- package/dist/primitives/item.js +197 -0
- package/dist/primitives/lazy-markdown.cjs +10 -0
- package/dist/primitives/lazy-markdown.d.cts +20 -0
- package/dist/primitives/lazy-markdown.d.ts +20 -0
- package/dist/primitives/lazy-markdown.js +10 -0
- package/dist/primitives/markdown.cjs +17 -0
- package/dist/primitives/markdown.d.cts +32 -0
- package/dist/primitives/markdown.d.ts +32 -0
- package/dist/primitives/markdown.js +17 -0
- package/dist/primitives/marker.cjs +14 -0
- package/dist/primitives/marker.d.cts +15 -0
- package/dist/primitives/marker.d.ts +15 -0
- package/dist/primitives/marker.js +14 -0
- package/dist/primitives/message-scroller.cjs +26 -0
- package/dist/primitives/message-scroller.d.cts +16 -0
- package/dist/primitives/message-scroller.d.ts +16 -0
- package/dist/primitives/message-scroller.js +26 -0
- package/dist/primitives/message.cjs +7 -84
- package/dist/primitives/message.js +8 -85
- package/dist/primitives/resource-list.cjs +3 -3
- package/dist/primitives/resource-list.js +2 -2
- package/dist/primitives/rich-text.cjs +3 -38
- package/dist/primitives/rich-text.js +3 -38
- package/dist/primitives/section-header.d.cts +1 -1
- package/dist/primitives/section-header.d.ts +1 -1
- package/dist/primitives/spinner.cjs +23 -0
- package/dist/primitives/spinner.d.cts +6 -0
- package/dist/primitives/spinner.d.ts +6 -0
- package/dist/primitives/spinner.js +23 -0
- package/dist/primitives/suggestion.cjs +11 -0
- package/dist/primitives/suggestion.d.cts +19 -0
- package/dist/primitives/suggestion.d.ts +19 -0
- package/dist/primitives/suggestion.js +11 -0
- package/dist/primitives/switch-field.cjs +2 -2
- package/dist/primitives/switch-field.js +3 -3
- package/dist/primitives/textarea.cjs +4 -33
- package/dist/primitives/textarea.js +3 -32
- package/dist/primitives/toggle-group.d.cts +2 -2
- package/dist/primitives/toggle-group.d.ts +2 -2
- package/dist/primitives/toggle.d.cts +2 -2
- package/dist/primitives/toggle.d.ts +2 -2
- package/dist/primitives/trace.cjs +23 -0
- package/dist/primitives/trace.d.cts +22 -0
- package/dist/primitives/trace.d.ts +22 -0
- package/dist/primitives/trace.js +23 -0
- package/dist/primitives/voice-dictation-button.cjs +5 -239
- package/dist/primitives/voice-dictation-button.js +4 -238
- package/package.json +125 -2
- package/src/styles/components/bubble.css +81 -0
- package/src/styles/components/marker.css +27 -0
- package/src/styles/components/message-scroller.css +11 -0
- package/src/styles/components.css +3 -0
- package/src/styles/utilities.css +3 -2
- package/dist/{chunk-UGF2K6NR.js → chunk-HRLP4BHJ.js} +6 -6
- package/dist/{chunk-RWWOFWLP.cjs → chunk-IH3COANJ.cjs} +3 -3
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
5
|
+
|
|
6
|
+
// src/primitives/bubble.tsx
|
|
7
|
+
var _classvarianceauthority = require('class-variance-authority');
|
|
8
|
+
var _radixui = require('radix-ui');
|
|
9
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
10
|
+
function BubbleGroup({ className, ...props }) {
|
|
11
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
12
|
+
"div",
|
|
13
|
+
{
|
|
14
|
+
"data-slot": "bubble-group",
|
|
15
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, "cn-bubble-group flex min-w-0 flex-col", className),
|
|
16
|
+
...props
|
|
17
|
+
}
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
var bubbleVariants = _classvarianceauthority.cva.call(void 0,
|
|
21
|
+
"cn-bubble group/bubble relative flex w-fit min-w-0 flex-col",
|
|
22
|
+
{
|
|
23
|
+
variants: {
|
|
24
|
+
variant: {
|
|
25
|
+
default: "cn-bubble-variant-default",
|
|
26
|
+
secondary: "cn-bubble-variant-secondary",
|
|
27
|
+
muted: "cn-bubble-variant-muted",
|
|
28
|
+
tinted: "cn-bubble-variant-tinted",
|
|
29
|
+
outline: "cn-bubble-variant-outline",
|
|
30
|
+
ghost: "cn-bubble-variant-ghost",
|
|
31
|
+
destructive: "cn-bubble-variant-destructive"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
defaultVariants: {
|
|
35
|
+
variant: "default"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
function Bubble({
|
|
40
|
+
variant = "default",
|
|
41
|
+
align = "start",
|
|
42
|
+
className,
|
|
43
|
+
...props
|
|
44
|
+
}) {
|
|
45
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
46
|
+
"div",
|
|
47
|
+
{
|
|
48
|
+
"data-slot": "bubble",
|
|
49
|
+
"data-variant": variant,
|
|
50
|
+
"data-align": align,
|
|
51
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, bubbleVariants({ variant }), className),
|
|
52
|
+
...props
|
|
53
|
+
}
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
function BubbleContent({
|
|
57
|
+
asChild = false,
|
|
58
|
+
className,
|
|
59
|
+
...props
|
|
60
|
+
}) {
|
|
61
|
+
const Comp = asChild ? _radixui.Slot.Root : "div";
|
|
62
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
63
|
+
Comp,
|
|
64
|
+
{
|
|
65
|
+
"data-slot": "bubble-content",
|
|
66
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
67
|
+
"cn-bubble-content w-fit max-w-full min-w-0 overflow-hidden wrap-break-word [button]:text-left [button,a]:transition-colors",
|
|
68
|
+
className
|
|
69
|
+
),
|
|
70
|
+
...props
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
var bubbleReactionsVariants = _classvarianceauthority.cva.call(void 0,
|
|
75
|
+
"cn-bubble-reactions absolute z-10 flex w-fit items-center justify-center",
|
|
76
|
+
{
|
|
77
|
+
variants: {
|
|
78
|
+
side: {
|
|
79
|
+
top: "cn-bubble-reactions-side-top",
|
|
80
|
+
bottom: "cn-bubble-reactions-side-bottom"
|
|
81
|
+
},
|
|
82
|
+
align: {
|
|
83
|
+
start: "cn-bubble-reactions-align-start",
|
|
84
|
+
end: "cn-bubble-reactions-align-end"
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
defaultVariants: {
|
|
88
|
+
side: "bottom",
|
|
89
|
+
align: "end"
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
function BubbleReactions({
|
|
94
|
+
side = "bottom",
|
|
95
|
+
align = "end",
|
|
96
|
+
className,
|
|
97
|
+
...props
|
|
98
|
+
}) {
|
|
99
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
100
|
+
"div",
|
|
101
|
+
{
|
|
102
|
+
"data-slot": "bubble-reactions",
|
|
103
|
+
"data-align": align,
|
|
104
|
+
"data-side": side,
|
|
105
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, bubbleReactionsVariants({ side, align }), className),
|
|
106
|
+
...props
|
|
107
|
+
}
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
exports.BubbleGroup = BubbleGroup; exports.Bubble = Bubble; exports.BubbleContent = BubbleContent; exports.BubbleReactions = BubbleReactions;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
RichText
|
|
4
|
+
} from "./chunk-INNGGLMZ.js";
|
|
5
|
+
import {
|
|
6
|
+
cn
|
|
7
|
+
} from "./chunk-G6SRSWXB.js";
|
|
8
|
+
|
|
9
|
+
// src/primitives/lazy-markdown.tsx
|
|
10
|
+
import { lazy, Suspense } from "react";
|
|
11
|
+
import { jsx } from "react/jsx-runtime";
|
|
12
|
+
var Markdown = lazy(
|
|
13
|
+
() => import("./primitives/markdown.js").then((module) => ({ default: module.Markdown }))
|
|
14
|
+
);
|
|
15
|
+
function LazyMarkdown({ children, components, className, ...props }) {
|
|
16
|
+
return /* @__PURE__ */ jsx(
|
|
17
|
+
Suspense,
|
|
18
|
+
{
|
|
19
|
+
fallback: /* @__PURE__ */ jsx(RichText, { ...props, className: cn("whitespace-pre-wrap", className), children }),
|
|
20
|
+
children: /* @__PURE__ */ jsx(Markdown, { ...props, className, components, children })
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export {
|
|
26
|
+
LazyMarkdown
|
|
27
|
+
};
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkL4DH72UFcjs = require('./chunk-L4DH72UF.cjs');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
8
|
+
|
|
9
|
+
// src/primitives/message-scroller.tsx
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
var _messagescroller = require('@shadcn/react/message-scroller');
|
|
16
|
+
var _lucidereact = require('lucide-react');
|
|
17
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
18
|
+
function MessageScrollerProvider(props) {
|
|
19
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _messagescroller.MessageScroller.Provider, { ...props });
|
|
20
|
+
}
|
|
21
|
+
function MessageScroller({
|
|
22
|
+
className,
|
|
23
|
+
...props
|
|
24
|
+
}) {
|
|
25
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
26
|
+
_messagescroller.MessageScroller.Root,
|
|
27
|
+
{
|
|
28
|
+
"data-slot": "message-scroller",
|
|
29
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
30
|
+
"cn-message-scroller group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden",
|
|
31
|
+
className
|
|
32
|
+
),
|
|
33
|
+
...props
|
|
34
|
+
}
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
function MessageScrollerViewport({
|
|
38
|
+
className,
|
|
39
|
+
...props
|
|
40
|
+
}) {
|
|
41
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
42
|
+
_messagescroller.MessageScroller.Viewport,
|
|
43
|
+
{
|
|
44
|
+
"data-slot": "message-scroller-viewport",
|
|
45
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
46
|
+
// @shadcn/react 0.3: while an automatic scroll runs the scrollbar goes
|
|
47
|
+
// transparent rather than away (so the gutter, and the text, never
|
|
48
|
+
// shift), and the viewport stays invisible until its opening scroll
|
|
49
|
+
// position is applied, so a long thread never flashes its first turn.
|
|
50
|
+
"cn-message-scroller-viewport size-full min-h-0 min-w-0 scroll-fade-b scrollbar-thin scrollbar-gutter-stable overflow-y-auto overscroll-contain contain-content data-autoscrolling:scrollbar-thumb-transparent data-autoscrolling:scrollbar-track-transparent data-pending-scroll:invisible",
|
|
51
|
+
className
|
|
52
|
+
),
|
|
53
|
+
...props
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
function MessageScrollerContent({
|
|
58
|
+
className,
|
|
59
|
+
...props
|
|
60
|
+
}) {
|
|
61
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
62
|
+
_messagescroller.MessageScroller.Content,
|
|
63
|
+
{
|
|
64
|
+
"data-slot": "message-scroller-content",
|
|
65
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
66
|
+
"cn-message-scroller-content flex h-max min-h-full flex-col",
|
|
67
|
+
className
|
|
68
|
+
),
|
|
69
|
+
...props
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
function MessageScrollerItem({
|
|
74
|
+
className,
|
|
75
|
+
scrollAnchor = false,
|
|
76
|
+
...props
|
|
77
|
+
}) {
|
|
78
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
79
|
+
_messagescroller.MessageScroller.Item,
|
|
80
|
+
{
|
|
81
|
+
"data-slot": "message-scroller-item",
|
|
82
|
+
scrollAnchor,
|
|
83
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
84
|
+
"cn-message-scroller-item min-w-0 shrink-0 [contain-intrinsic-size:auto_10rem] [content-visibility:auto]",
|
|
85
|
+
className
|
|
86
|
+
),
|
|
87
|
+
...props
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
}
|
|
91
|
+
function MessageScrollerButton({
|
|
92
|
+
direction = "end",
|
|
93
|
+
className,
|
|
94
|
+
children,
|
|
95
|
+
render,
|
|
96
|
+
variant = "secondary",
|
|
97
|
+
size = "icon-sm",
|
|
98
|
+
...props
|
|
99
|
+
}) {
|
|
100
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
101
|
+
_messagescroller.MessageScroller.Button,
|
|
102
|
+
{
|
|
103
|
+
"data-slot": "message-scroller-button",
|
|
104
|
+
"data-direction": direction,
|
|
105
|
+
"data-variant": variant,
|
|
106
|
+
"data-size": size,
|
|
107
|
+
direction,
|
|
108
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
109
|
+
"cn-message-scroller-button absolute inset-s-1/2 -translate-x-1/2 border-border bg-background text-foreground transition-[translate,scale,opacity] duration-200 hover:bg-muted hover:text-foreground data-[active=false]:pointer-events-none data-[active=false]:scale-95 data-[active=false]:opacity-0 data-[active=false]:duration-400 data-[active=false]:ease-[cubic-bezier(0.7,0,0.84,0)] data-[active=true]:translate-y-0 data-[active=true]:scale-100 data-[active=true]:opacity-100 data-[active=true]:ease-[cubic-bezier(0.23,1,0.32,1)] data-[direction=end]:bottom-4 data-[direction=end]:data-[active=false]:translate-y-full data-[direction=start]:top-4 data-[direction=start]:data-[active=false]:-translate-y-full rtl:translate-x-1/2 data-[direction=start]:[&_svg]:rotate-180",
|
|
110
|
+
className
|
|
111
|
+
),
|
|
112
|
+
render: _nullishCoalesce(render, () => ( /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkL4DH72UFcjs.Button, { variant, size }))),
|
|
113
|
+
...props,
|
|
114
|
+
children: _nullishCoalesce(children, () => ( /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
115
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.ArrowDown, { className: "h-4 w-4" }),
|
|
116
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "sr-only", children: direction === "end" ? "Scroll to end" : "Scroll to start" })
|
|
117
|
+
] })))
|
|
118
|
+
}
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
exports.useMessageScroller = _messagescroller.useMessageScroller; exports.useMessageScrollerScrollable = _messagescroller.useMessageScrollerScrollable; exports.useMessageScrollerVisibility = _messagescroller.useMessageScrollerVisibility; exports.MessageScrollerProvider = MessageScrollerProvider; exports.MessageScroller = MessageScroller; exports.MessageScrollerViewport = MessageScrollerViewport; exports.MessageScrollerContent = MessageScrollerContent; exports.MessageScrollerItem = MessageScrollerItem; exports.MessageScrollerButton = MessageScrollerButton;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Collapsible,
|
|
4
|
+
CollapsibleContent,
|
|
5
|
+
CollapsibleTrigger
|
|
6
|
+
} from "./chunk-NBUWGRQO.js";
|
|
7
|
+
import {
|
|
8
|
+
cn
|
|
9
|
+
} from "./chunk-G6SRSWXB.js";
|
|
10
|
+
|
|
11
|
+
// src/primitives/trace.tsx
|
|
12
|
+
import { ChevronRight } from "lucide-react";
|
|
13
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
|
+
function Trace({ className, ...props }) {
|
|
15
|
+
return /* @__PURE__ */ jsx(
|
|
16
|
+
"div",
|
|
17
|
+
{
|
|
18
|
+
"data-slot": "trace",
|
|
19
|
+
className: cn(
|
|
20
|
+
"flex w-full min-w-0 flex-col gap-2 *:has-[>[data-slot=trace-line]]:flex *:has-[>[data-slot=trace-line]]:w-fit *:has-[>[data-slot=trace-line]]:max-w-full *:has-[>[data-slot=trace-line]]:min-w-0 *:has-[>[data-slot=trace-line]]:rounded-md *:has-[>[data-slot=trace-line]]:text-left *:has-[>[data-slot=trace-line]]:outline-none *:has-[>[data-slot=trace-line]]:focus-visible:ring-3 *:has-[>[data-slot=trace-line]]:focus-visible:ring-ring/50",
|
|
21
|
+
className
|
|
22
|
+
),
|
|
23
|
+
...props
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
}
|
|
27
|
+
function TraceLine({
|
|
28
|
+
className,
|
|
29
|
+
status,
|
|
30
|
+
...props
|
|
31
|
+
}) {
|
|
32
|
+
return /* @__PURE__ */ jsx(
|
|
33
|
+
"span",
|
|
34
|
+
{
|
|
35
|
+
"data-slot": "trace-line",
|
|
36
|
+
"data-status": status,
|
|
37
|
+
className: cn(
|
|
38
|
+
"flex w-fit max-w-full min-w-0 items-center gap-2 text-sm text-muted-foreground transition-colors in-[a,button]:cursor-pointer in-[a:hover,button:hover]:text-foreground data-[status=error]:text-destructive data-[status=error]:in-[a:hover,button:hover]:text-destructive data-[status=pending]:opacity-60 data-[status=running]:*:data-[slot=trace-title]:shimmer",
|
|
39
|
+
className
|
|
40
|
+
),
|
|
41
|
+
...props
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
function TraceIcon({ className, ...props }) {
|
|
46
|
+
return /* @__PURE__ */ jsx(
|
|
47
|
+
"span",
|
|
48
|
+
{
|
|
49
|
+
"data-slot": "trace-icon",
|
|
50
|
+
"aria-hidden": "true",
|
|
51
|
+
className: cn(
|
|
52
|
+
"flex size-4 shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [[data-slot=trace-title]~&]:-ml-1",
|
|
53
|
+
className
|
|
54
|
+
),
|
|
55
|
+
...props
|
|
56
|
+
}
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
function TraceTitle({ className, ...props }) {
|
|
60
|
+
return /* @__PURE__ */ jsx(
|
|
61
|
+
"span",
|
|
62
|
+
{
|
|
63
|
+
"data-slot": "trace-title",
|
|
64
|
+
className: cn("min-w-0 truncate motion-reduce:shimmer-none", className),
|
|
65
|
+
...props
|
|
66
|
+
}
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
function TraceDescription({
|
|
70
|
+
className,
|
|
71
|
+
...props
|
|
72
|
+
}) {
|
|
73
|
+
return /* @__PURE__ */ jsx(
|
|
74
|
+
"span",
|
|
75
|
+
{
|
|
76
|
+
"data-slot": "trace-description",
|
|
77
|
+
className: cn(
|
|
78
|
+
"shrink-0 text-muted-foreground/70 tabular-nums",
|
|
79
|
+
className
|
|
80
|
+
),
|
|
81
|
+
...props
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
function TraceCollapsible({
|
|
86
|
+
className,
|
|
87
|
+
...props
|
|
88
|
+
}) {
|
|
89
|
+
return /* @__PURE__ */ jsx(
|
|
90
|
+
Collapsible,
|
|
91
|
+
{
|
|
92
|
+
"data-slot": "trace-collapsible",
|
|
93
|
+
className: cn("flex w-full min-w-0 flex-col", className),
|
|
94
|
+
...props
|
|
95
|
+
}
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
function TraceCollapsibleTrigger({
|
|
99
|
+
className,
|
|
100
|
+
children,
|
|
101
|
+
...props
|
|
102
|
+
}) {
|
|
103
|
+
return /* @__PURE__ */ jsxs(
|
|
104
|
+
CollapsibleTrigger,
|
|
105
|
+
{
|
|
106
|
+
"data-slot": "trace-collapsible-trigger",
|
|
107
|
+
className: cn(
|
|
108
|
+
"group/trace-collapsible-trigger flex w-fit max-w-full min-w-0 cursor-pointer items-center gap-1 rounded-md text-left text-muted-foreground transition-colors outline-none hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/50 has-[[data-status=error]]:text-destructive",
|
|
109
|
+
className
|
|
110
|
+
),
|
|
111
|
+
...props,
|
|
112
|
+
children: [
|
|
113
|
+
children,
|
|
114
|
+
/* @__PURE__ */ jsx(TraceIcon, { className: "transition-transform group-aria-expanded/trace-collapsible-trigger:rotate-90", children: /* @__PURE__ */ jsx(ChevronRight, {}) })
|
|
115
|
+
]
|
|
116
|
+
}
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
function TraceCollapsibleContent({
|
|
120
|
+
className,
|
|
121
|
+
children,
|
|
122
|
+
...props
|
|
123
|
+
}) {
|
|
124
|
+
return /* @__PURE__ */ jsx(
|
|
125
|
+
CollapsibleContent,
|
|
126
|
+
{
|
|
127
|
+
"data-slot": "trace-collapsible-content",
|
|
128
|
+
className: "min-w-0 overflow-hidden duration-200 [--radix-accordion-content-height:var(--radix-collapsible-content-height)] data-open:animate-accordion-down data-closed:animate-accordion-up",
|
|
129
|
+
...props,
|
|
130
|
+
children: /* @__PURE__ */ jsx(
|
|
131
|
+
"div",
|
|
132
|
+
{
|
|
133
|
+
"data-slot": "trace-collapsible-content-inner",
|
|
134
|
+
className: cn(
|
|
135
|
+
"mt-2 mb-1 ml-[calc(--spacing(2)-1px)] min-w-0 border-l pr-1 pl-4 leading-relaxed wrap-break-word text-muted-foreground",
|
|
136
|
+
className
|
|
137
|
+
),
|
|
138
|
+
children
|
|
139
|
+
}
|
|
140
|
+
)
|
|
141
|
+
}
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export {
|
|
146
|
+
Trace,
|
|
147
|
+
TraceLine,
|
|
148
|
+
TraceIcon,
|
|
149
|
+
TraceTitle,
|
|
150
|
+
TraceDescription,
|
|
151
|
+
TraceCollapsible,
|
|
152
|
+
TraceCollapsibleTrigger,
|
|
153
|
+
TraceCollapsibleContent
|
|
154
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { HTMLAttributes } from 'react';
|
|
3
|
+
|
|
4
|
+
interface ActionDockProps extends HTMLAttributes<HTMLElement> {
|
|
5
|
+
shrink?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/** In-flow action boundary for the bottom of a panel, drawer, or review card. */
|
|
8
|
+
declare const ActionDock: React.ForwardRefExoticComponent<ActionDockProps & React.RefAttributes<HTMLElement>>;
|
|
9
|
+
|
|
10
|
+
export { ActionDock, type ActionDockProps };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { HTMLAttributes } from 'react';
|
|
3
|
+
|
|
4
|
+
interface ActionDockProps extends HTMLAttributes<HTMLElement> {
|
|
5
|
+
shrink?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/** In-flow action boundary for the bottom of a panel, drawer, or review card. */
|
|
8
|
+
declare const ActionDock: React.ForwardRefExoticComponent<ActionDockProps & React.RefAttributes<HTMLElement>>;
|
|
9
|
+
|
|
10
|
+
export { ActionDock, type ActionDockProps };
|
|
@@ -4,7 +4,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const alertVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "success" | "warning" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface AlertProps extends HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
|
|
10
10
|
marginBottom?: "none" | "md";
|
|
@@ -4,7 +4,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const alertVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "success" | "warning" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface AlertProps extends HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
|
|
10
10
|
marginBottom?: "none" | "md";
|