@assistant-ui/mcp-docs-server 0.1.17 → 0.1.18
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/.docs/organized/code-examples/with-ag-ui.md +146 -152
- package/.docs/organized/code-examples/with-ai-sdk-v5.md +96 -101
- package/.docs/organized/code-examples/with-assistant-transport.md +132 -220
- package/.docs/organized/code-examples/with-cloud.md +124 -131
- package/.docs/organized/code-examples/with-custom-thread-list.md +26 -46
- package/.docs/organized/code-examples/with-external-store.md +146 -151
- package/.docs/organized/code-examples/with-ffmpeg.md +129 -139
- package/.docs/organized/code-examples/with-langgraph.md +231 -225
- package/.docs/organized/code-examples/with-parent-id-grouping.md +146 -151
- package/.docs/organized/code-examples/with-react-hook-form.md +146 -152
- package/.docs/organized/code-examples/{store-example.md → with-store.md} +16 -20
- package/.docs/organized/code-examples/with-tanstack.md +23 -41
- package/.docs/raw/docs/runtimes/custom/custom-thread-list.mdx +36 -0
- package/.docs/raw/docs/runtimes/custom/local.mdx +31 -8
- package/.docs/raw/docs/ui/Scrollbar.mdx +0 -6
- package/dist/constants.d.ts +10 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +14 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -1
- package/dist/index.js.map +1 -0
- package/dist/prepare-docs/code-examples.d.ts +2 -0
- package/dist/prepare-docs/code-examples.d.ts.map +1 -0
- package/dist/prepare-docs/code-examples.js +129 -0
- package/dist/prepare-docs/code-examples.js.map +1 -0
- package/dist/prepare-docs/copy-raw.d.ts +2 -0
- package/dist/prepare-docs/copy-raw.d.ts.map +1 -0
- package/dist/prepare-docs/copy-raw.js +50 -0
- package/dist/prepare-docs/copy-raw.js.map +1 -0
- package/dist/prepare-docs/prepare.d.ts +2 -0
- package/dist/prepare-docs/prepare.d.ts.map +1 -0
- package/dist/prepare-docs/prepare.js +18 -195
- package/dist/prepare-docs/prepare.js.map +1 -0
- package/dist/stdio.d.ts +3 -0
- package/dist/stdio.d.ts.map +1 -0
- package/dist/stdio.js +4 -5
- package/dist/stdio.js.map +1 -0
- package/dist/tools/docs.d.ts +23 -0
- package/dist/tools/docs.d.ts.map +1 -0
- package/dist/tools/docs.js +168 -0
- package/dist/tools/docs.js.map +1 -0
- package/dist/tools/examples.d.ts +23 -0
- package/dist/tools/examples.d.ts.map +1 -0
- package/dist/tools/examples.js +95 -0
- package/dist/tools/examples.js.map +1 -0
- package/dist/tools/tests/test-setup.d.ts +4 -0
- package/dist/tools/tests/test-setup.d.ts.map +1 -0
- package/dist/tools/tests/test-setup.js +36 -0
- package/dist/tools/tests/test-setup.js.map +1 -0
- package/dist/utils/logger.d.ts +7 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +20 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/mcp-format.d.ts +7 -0
- package/dist/utils/mcp-format.d.ts.map +1 -0
- package/dist/utils/mcp-format.js +11 -0
- package/dist/utils/mcp-format.js.map +1 -0
- package/dist/utils/mdx.d.ts +9 -0
- package/dist/utils/mdx.d.ts.map +1 -0
- package/dist/utils/mdx.js +27 -0
- package/dist/utils/mdx.js.map +1 -0
- package/dist/utils/paths.d.ts +8 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +84 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/utils/security.d.ts +2 -0
- package/dist/utils/security.d.ts.map +1 -0
- package/dist/utils/security.js +43 -0
- package/dist/utils/security.js.map +1 -0
- package/package.json +37 -19
- package/src/constants.ts +22 -0
- package/src/index.ts +51 -0
- package/src/prepare-docs/code-examples.ts +158 -0
- package/src/prepare-docs/copy-raw.ts +55 -0
- package/src/prepare-docs/prepare.ts +24 -0
- package/src/stdio.ts +7 -0
- package/src/tools/docs.ts +207 -0
- package/src/tools/examples.ts +107 -0
- package/src/tools/tests/docs.test.ts +122 -0
- package/src/tools/tests/examples.test.ts +94 -0
- package/src/tools/tests/integration.test.ts +46 -0
- package/src/tools/tests/json-parsing.test.ts +23 -0
- package/src/tools/tests/mcp-protocol.test.ts +133 -0
- package/src/tools/tests/path-traversal.test.ts +81 -0
- package/src/tools/tests/test-setup.ts +40 -0
- package/src/utils/logger.ts +20 -0
- package/src/utils/mcp-format.ts +12 -0
- package/src/utils/mdx.ts +39 -0
- package/src/utils/paths.ts +114 -0
- package/src/utils/security.ts +52 -0
- package/src/utils/tests/security.test.ts +119 -0
- package/dist/chunk-M2RKUM66.js +0 -38
- package/dist/chunk-NVNFQ5ZO.js +0 -423
|
@@ -36,43 +36,41 @@ export async function POST(req: Request) {
|
|
|
36
36
|
@custom-variant dark (&:is(.dark *));
|
|
37
37
|
|
|
38
38
|
@theme inline {
|
|
39
|
-
--color-background: var(--background);
|
|
40
|
-
--color-foreground: var(--foreground);
|
|
41
|
-
--font-sans: var(--font-geist-sans);
|
|
42
|
-
--font-mono: var(--font-geist-mono);
|
|
43
|
-
--color-sidebar-ring: var(--sidebar-ring);
|
|
44
|
-
--color-sidebar-border: var(--sidebar-border);
|
|
45
|
-
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
46
|
-
--color-sidebar-accent: var(--sidebar-accent);
|
|
47
|
-
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
48
|
-
--color-sidebar-primary: var(--sidebar-primary);
|
|
49
|
-
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
50
|
-
--color-sidebar: var(--sidebar);
|
|
51
|
-
--color-chart-5: var(--chart-5);
|
|
52
|
-
--color-chart-4: var(--chart-4);
|
|
53
|
-
--color-chart-3: var(--chart-3);
|
|
54
|
-
--color-chart-2: var(--chart-2);
|
|
55
|
-
--color-chart-1: var(--chart-1);
|
|
56
|
-
--color-ring: var(--ring);
|
|
57
|
-
--color-input: var(--input);
|
|
58
|
-
--color-border: var(--border);
|
|
59
|
-
--color-destructive: var(--destructive);
|
|
60
|
-
--color-accent-foreground: var(--accent-foreground);
|
|
61
|
-
--color-accent: var(--accent);
|
|
62
|
-
--color-muted-foreground: var(--muted-foreground);
|
|
63
|
-
--color-muted: var(--muted);
|
|
64
|
-
--color-secondary-foreground: var(--secondary-foreground);
|
|
65
|
-
--color-secondary: var(--secondary);
|
|
66
|
-
--color-primary-foreground: var(--primary-foreground);
|
|
67
|
-
--color-primary: var(--primary);
|
|
68
|
-
--color-popover-foreground: var(--popover-foreground);
|
|
69
|
-
--color-popover: var(--popover);
|
|
70
|
-
--color-card-foreground: var(--card-foreground);
|
|
71
|
-
--color-card: var(--card);
|
|
72
39
|
--radius-sm: calc(var(--radius) - 4px);
|
|
73
40
|
--radius-md: calc(var(--radius) - 2px);
|
|
74
41
|
--radius-lg: var(--radius);
|
|
75
42
|
--radius-xl: calc(var(--radius) + 4px);
|
|
43
|
+
--color-background: var(--background);
|
|
44
|
+
--color-foreground: var(--foreground);
|
|
45
|
+
--color-card: var(--card);
|
|
46
|
+
--color-card-foreground: var(--card-foreground);
|
|
47
|
+
--color-popover: var(--popover);
|
|
48
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
49
|
+
--color-primary: var(--primary);
|
|
50
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
51
|
+
--color-secondary: var(--secondary);
|
|
52
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
53
|
+
--color-muted: var(--muted);
|
|
54
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
55
|
+
--color-accent: var(--accent);
|
|
56
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
57
|
+
--color-destructive: var(--destructive);
|
|
58
|
+
--color-border: var(--border);
|
|
59
|
+
--color-input: var(--input);
|
|
60
|
+
--color-ring: var(--ring);
|
|
61
|
+
--color-chart-1: var(--chart-1);
|
|
62
|
+
--color-chart-2: var(--chart-2);
|
|
63
|
+
--color-chart-3: var(--chart-3);
|
|
64
|
+
--color-chart-4: var(--chart-4);
|
|
65
|
+
--color-chart-5: var(--chart-5);
|
|
66
|
+
--color-sidebar: var(--sidebar);
|
|
67
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
68
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
69
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
70
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
71
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
72
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
73
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
76
74
|
}
|
|
77
75
|
|
|
78
76
|
:root {
|
|
@@ -465,8 +463,12 @@ export default function Home() {
|
|
|
465
463
|
},
|
|
466
464
|
"aliases": {
|
|
467
465
|
"components": "@/components",
|
|
468
|
-
"utils": "@/lib/utils"
|
|
469
|
-
|
|
466
|
+
"utils": "@/lib/utils",
|
|
467
|
+
"ui": "@/components/ui",
|
|
468
|
+
"lib": "@/lib",
|
|
469
|
+
"hooks": "@/hooks"
|
|
470
|
+
},
|
|
471
|
+
"iconLibrary": "lucide"
|
|
470
472
|
}
|
|
471
473
|
|
|
472
474
|
```
|
|
@@ -1021,7 +1023,7 @@ const ThreadScrollToBottom: FC = () => {
|
|
|
1021
1023
|
<TooltipIconButton
|
|
1022
1024
|
tooltip="Scroll to bottom"
|
|
1023
1025
|
variant="outline"
|
|
1024
|
-
className="aui-thread-scroll-to-bottom -top-12
|
|
1026
|
+
className="aui-thread-scroll-to-bottom absolute -top-12 z-10 self-center rounded-full p-4 disabled:invisible dark:bg-background dark:hover:bg-accent"
|
|
1025
1027
|
>
|
|
1026
1028
|
<ArrowDownIcon />
|
|
1027
1029
|
</TooltipIconButton>
|
|
@@ -1185,7 +1187,7 @@ const AssistantActionBar: FC = () => {
|
|
|
1185
1187
|
hideWhenRunning
|
|
1186
1188
|
autohide="not-last"
|
|
1187
1189
|
autohideFloat="single-branch"
|
|
1188
|
-
className="aui-assistant-action-bar-root
|
|
1190
|
+
className="aui-assistant-action-bar-root col-start-3 row-start-2 -ml-1 flex gap-1 text-muted-foreground data-floating:absolute data-floating:rounded-md data-floating:border data-floating:bg-background data-floating:p-1 data-floating:shadow-sm"
|
|
1189
1191
|
>
|
|
1190
1192
|
<ActionBarPrimitive.Copy asChild>
|
|
1191
1193
|
<TooltipIconButton tooltip="Copy">
|
|
@@ -1223,12 +1225,12 @@ const UserMessage: FC = () => {
|
|
|
1223
1225
|
<div className="aui-user-message-content wrap-break-word rounded-2xl bg-muted px-4 py-2.5 text-foreground">
|
|
1224
1226
|
<MessagePrimitive.Parts />
|
|
1225
1227
|
</div>
|
|
1226
|
-
<div className="aui-user-action-bar-wrapper -translate-x-full -translate-y-1/2
|
|
1228
|
+
<div className="aui-user-action-bar-wrapper absolute top-1/2 left-0 -translate-x-full -translate-y-1/2 pr-2">
|
|
1227
1229
|
<UserActionBar />
|
|
1228
1230
|
</div>
|
|
1229
1231
|
</div>
|
|
1230
1232
|
|
|
1231
|
-
<BranchPicker className="aui-user-branch-picker
|
|
1233
|
+
<BranchPicker className="aui-user-branch-picker col-span-full col-start-1 row-start-3 -mr-1 justify-end" />
|
|
1232
1234
|
</MessagePrimitive.Root>
|
|
1233
1235
|
);
|
|
1234
1236
|
};
|
|
@@ -1280,7 +1282,7 @@ const BranchPicker: FC<BranchPickerPrimitive.Root.Props> = ({
|
|
|
1280
1282
|
<BranchPickerPrimitive.Root
|
|
1281
1283
|
hideWhenSingleBranch
|
|
1282
1284
|
className={cn(
|
|
1283
|
-
"aui-branch-picker-root -
|
|
1285
|
+
"aui-branch-picker-root mr-2 -ml-2 inline-flex items-center text-muted-foreground text-xs",
|
|
1284
1286
|
className,
|
|
1285
1287
|
)}
|
|
1286
1288
|
{...rest}
|
|
@@ -1461,47 +1463,50 @@ import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
|
1461
1463
|
|
|
1462
1464
|
import { cn } from "@/lib/utils";
|
|
1463
1465
|
|
|
1464
|
-
|
|
1465
|
-
|
|
1466
|
-
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
)
|
|
1504
|
-
|
|
1466
|
+
function Avatar({
|
|
1467
|
+
className,
|
|
1468
|
+
...props
|
|
1469
|
+
}: React.ComponentProps<typeof AvatarPrimitive.Root>) {
|
|
1470
|
+
return (
|
|
1471
|
+
<AvatarPrimitive.Root
|
|
1472
|
+
data-slot="avatar"
|
|
1473
|
+
className={cn(
|
|
1474
|
+
"relative flex size-8 shrink-0 overflow-hidden rounded-full",
|
|
1475
|
+
className,
|
|
1476
|
+
)}
|
|
1477
|
+
{...props}
|
|
1478
|
+
/>
|
|
1479
|
+
);
|
|
1480
|
+
}
|
|
1481
|
+
|
|
1482
|
+
function AvatarImage({
|
|
1483
|
+
className,
|
|
1484
|
+
...props
|
|
1485
|
+
}: React.ComponentProps<typeof AvatarPrimitive.Image>) {
|
|
1486
|
+
return (
|
|
1487
|
+
<AvatarPrimitive.Image
|
|
1488
|
+
data-slot="avatar-image"
|
|
1489
|
+
className={cn("aspect-square size-full", className)}
|
|
1490
|
+
{...props}
|
|
1491
|
+
/>
|
|
1492
|
+
);
|
|
1493
|
+
}
|
|
1494
|
+
|
|
1495
|
+
function AvatarFallback({
|
|
1496
|
+
className,
|
|
1497
|
+
...props
|
|
1498
|
+
}: React.ComponentProps<typeof AvatarPrimitive.Fallback>) {
|
|
1499
|
+
return (
|
|
1500
|
+
<AvatarPrimitive.Fallback
|
|
1501
|
+
data-slot="avatar-fallback"
|
|
1502
|
+
className={cn(
|
|
1503
|
+
"flex size-full items-center justify-center rounded-full bg-muted",
|
|
1504
|
+
className,
|
|
1505
|
+
)}
|
|
1506
|
+
{...props}
|
|
1507
|
+
/>
|
|
1508
|
+
);
|
|
1509
|
+
}
|
|
1505
1510
|
|
|
1506
1511
|
export { Avatar, AvatarImage, AvatarFallback };
|
|
1507
1512
|
|
|
@@ -1510,8 +1515,6 @@ export { Avatar, AvatarImage, AvatarFallback };
|
|
|
1510
1515
|
## components/ui/button.tsx
|
|
1511
1516
|
|
|
1512
1517
|
```tsx
|
|
1513
|
-
"use client";
|
|
1514
|
-
|
|
1515
1518
|
import * as React from "react";
|
|
1516
1519
|
import { Slot } from "@radix-ui/react-slot";
|
|
1517
1520
|
import { cva, type VariantProps } from "class-variance-authority";
|
|
@@ -1523,14 +1526,13 @@ const buttonVariants = cva(
|
|
|
1523
1526
|
{
|
|
1524
1527
|
variants: {
|
|
1525
1528
|
variant: {
|
|
1526
|
-
default:
|
|
1527
|
-
"bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
|
|
1529
|
+
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
1528
1530
|
destructive:
|
|
1529
|
-
"bg-destructive text-white
|
|
1531
|
+
"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
|
|
1530
1532
|
outline:
|
|
1531
1533
|
"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",
|
|
1532
1534
|
secondary:
|
|
1533
|
-
"bg-secondary text-secondary-foreground
|
|
1535
|
+
"bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
1534
1536
|
ghost:
|
|
1535
1537
|
"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
|
|
1536
1538
|
link: "text-primary underline-offset-4 hover:underline",
|
|
@@ -1540,6 +1542,8 @@ const buttonVariants = cva(
|
|
|
1540
1542
|
sm: "h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",
|
|
1541
1543
|
lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
|
|
1542
1544
|
icon: "size-9",
|
|
1545
|
+
"icon-sm": "size-8",
|
|
1546
|
+
"icon-lg": "size-10",
|
|
1543
1547
|
},
|
|
1544
1548
|
},
|
|
1545
1549
|
defaultVariants: {
|
|
@@ -1551,8 +1555,8 @@ const buttonVariants = cva(
|
|
|
1551
1555
|
|
|
1552
1556
|
function Button({
|
|
1553
1557
|
className,
|
|
1554
|
-
variant,
|
|
1555
|
-
size,
|
|
1558
|
+
variant = "default",
|
|
1559
|
+
size = "default",
|
|
1556
1560
|
asChild = false,
|
|
1557
1561
|
...props
|
|
1558
1562
|
}: React.ComponentProps<"button"> &
|
|
@@ -1564,6 +1568,8 @@ function Button({
|
|
|
1564
1568
|
return (
|
|
1565
1569
|
<Comp
|
|
1566
1570
|
data-slot="button"
|
|
1571
|
+
data-variant={variant}
|
|
1572
|
+
data-size={size}
|
|
1567
1573
|
className={cn(buttonVariants({ variant, size, className }))}
|
|
1568
1574
|
{...props}
|
|
1569
1575
|
/>
|
|
@@ -1617,7 +1623,7 @@ function DialogOverlay({
|
|
|
1617
1623
|
<DialogPrimitive.Overlay
|
|
1618
1624
|
data-slot="dialog-overlay"
|
|
1619
1625
|
className={cn(
|
|
1620
|
-
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/
|
|
1626
|
+
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=open]:animate-in",
|
|
1621
1627
|
className,
|
|
1622
1628
|
)}
|
|
1623
1629
|
{...props}
|
|
@@ -1628,24 +1634,32 @@ function DialogOverlay({
|
|
|
1628
1634
|
function DialogContent({
|
|
1629
1635
|
className,
|
|
1630
1636
|
children,
|
|
1637
|
+
showCloseButton = true,
|
|
1631
1638
|
...props
|
|
1632
|
-
}: React.ComponentProps<typeof DialogPrimitive.Content>
|
|
1639
|
+
}: React.ComponentProps<typeof DialogPrimitive.Content> & {
|
|
1640
|
+
showCloseButton?: boolean;
|
|
1641
|
+
}) {
|
|
1633
1642
|
return (
|
|
1634
1643
|
<DialogPortal data-slot="dialog-portal">
|
|
1635
1644
|
<DialogOverlay />
|
|
1636
1645
|
<DialogPrimitive.Content
|
|
1637
1646
|
data-slot="dialog-content"
|
|
1638
1647
|
className={cn(
|
|
1639
|
-
"data-[state=closed]:fade-out-0 data-[state=
|
|
1648
|
+
"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg outline-none duration-200 data-[state=closed]:animate-out data-[state=open]:animate-in sm:max-w-lg",
|
|
1640
1649
|
className,
|
|
1641
1650
|
)}
|
|
1642
1651
|
{...props}
|
|
1643
1652
|
>
|
|
1644
1653
|
{children}
|
|
1645
|
-
|
|
1646
|
-
<
|
|
1647
|
-
|
|
1648
|
-
|
|
1654
|
+
{showCloseButton && (
|
|
1655
|
+
<DialogPrimitive.Close
|
|
1656
|
+
data-slot="dialog-close"
|
|
1657
|
+
className="absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0"
|
|
1658
|
+
>
|
|
1659
|
+
<XIcon />
|
|
1660
|
+
<span className="sr-only">Close</span>
|
|
1661
|
+
</DialogPrimitive.Close>
|
|
1662
|
+
)}
|
|
1649
1663
|
</DialogPrimitive.Content>
|
|
1650
1664
|
</DialogPortal>
|
|
1651
1665
|
);
|
|
@@ -1766,13 +1780,13 @@ function TooltipContent({
|
|
|
1766
1780
|
data-slot="tooltip-content"
|
|
1767
1781
|
sideOffset={sideOffset}
|
|
1768
1782
|
className={cn(
|
|
1769
|
-
"fade-in-0 zoom-in-95 data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-
|
|
1783
|
+
"fade-in-0 zoom-in-95 data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in text-balance rounded-md bg-foreground px-3 py-1.5 text-background text-xs data-[state=closed]:animate-out",
|
|
1770
1784
|
className,
|
|
1771
1785
|
)}
|
|
1772
1786
|
{...props}
|
|
1773
1787
|
>
|
|
1774
1788
|
{children}
|
|
1775
|
-
<TooltipPrimitive.Arrow className="z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-
|
|
1789
|
+
<TooltipPrimitive.Arrow className="z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground" />
|
|
1776
1790
|
</TooltipPrimitive.Content>
|
|
1777
1791
|
</TooltipPrimitive.Portal>
|
|
1778
1792
|
);
|
|
@@ -1812,52 +1826,46 @@ export default nextConfig;
|
|
|
1812
1826
|
```json
|
|
1813
1827
|
{
|
|
1814
1828
|
"name": "with-ffmpeg",
|
|
1815
|
-
"version": "0.
|
|
1829
|
+
"version": "0.0.0",
|
|
1816
1830
|
"private": true,
|
|
1831
|
+
"type": "module",
|
|
1817
1832
|
"scripts": {
|
|
1818
|
-
"dev": "next dev
|
|
1833
|
+
"dev": "next dev",
|
|
1819
1834
|
"build": "next build",
|
|
1820
1835
|
"start": "next start"
|
|
1821
1836
|
},
|
|
1822
1837
|
"dependencies": {
|
|
1823
|
-
"@ai-sdk/openai": "^2.0.
|
|
1838
|
+
"@ai-sdk/openai": "^2.0.88",
|
|
1824
1839
|
"@assistant-ui/react": "workspace:*",
|
|
1825
1840
|
"@assistant-ui/react-ai-sdk": "workspace:*",
|
|
1826
|
-
"@assistant-ui/react-hook-form": "workspace:*",
|
|
1827
1841
|
"@assistant-ui/react-markdown": "workspace:*",
|
|
1828
1842
|
"@ffmpeg/ffmpeg": "^0.12.15",
|
|
1829
1843
|
"@ffmpeg/util": "^0.12.2",
|
|
1830
|
-
"@hookform/resolvers": "^5.2.2",
|
|
1831
1844
|
"@radix-ui/react-avatar": "^1.1.11",
|
|
1832
1845
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
1833
|
-
"@radix-ui/react-icons": "^1.3.2",
|
|
1834
|
-
"@radix-ui/react-label": "^2.1.8",
|
|
1835
1846
|
"@radix-ui/react-slot": "^1.2.4",
|
|
1836
|
-
"@radix-ui/react-tabs": "^1.1.13",
|
|
1837
1847
|
"@radix-ui/react-tooltip": "^1.2.8",
|
|
1838
|
-
"
|
|
1839
|
-
"ai": "^5.0.112",
|
|
1848
|
+
"ai": "^5.0.116",
|
|
1840
1849
|
"class-variance-authority": "^0.7.1",
|
|
1841
1850
|
"clsx": "^2.1.1",
|
|
1842
|
-
"lucide-react": "^0.
|
|
1843
|
-
"next": "16.0
|
|
1851
|
+
"lucide-react": "^0.562.0",
|
|
1852
|
+
"next": "16.1.0",
|
|
1844
1853
|
"react": "19.2.3",
|
|
1845
1854
|
"react-dom": "19.2.3",
|
|
1846
|
-
"react-hook-form": "^7.68.0",
|
|
1847
|
-
"react-resizable-panels": "^3.0.6",
|
|
1848
1855
|
"remark-gfm": "^4.0.1",
|
|
1849
1856
|
"tailwind-merge": "^3.4.0",
|
|
1850
|
-
"
|
|
1851
|
-
"zod": "^4.1.13",
|
|
1857
|
+
"zod": "^4.2.1",
|
|
1852
1858
|
"zustand": "^5.0.9"
|
|
1853
1859
|
},
|
|
1854
1860
|
"devDependencies": {
|
|
1855
1861
|
"@assistant-ui/x-buildutils": "workspace:*",
|
|
1856
|
-
"@
|
|
1857
|
-
"@types/
|
|
1858
|
-
"@types/react
|
|
1859
|
-
"
|
|
1862
|
+
"@tailwindcss/postcss": "^4.1.18",
|
|
1863
|
+
"@types/node": "^25.0.3",
|
|
1864
|
+
"@types/react": "^19.2.7",
|
|
1865
|
+
"@types/react-dom": "^19.2.3",
|
|
1866
|
+
"postcss": "^8.5.6",
|
|
1860
1867
|
"tailwindcss": "^4.1.18",
|
|
1868
|
+
"tw-animate-css": "^1.4.0",
|
|
1861
1869
|
"typescript": "^5.9.3"
|
|
1862
1870
|
}
|
|
1863
1871
|
}
|
|
@@ -1868,29 +1876,11 @@ export default nextConfig;
|
|
|
1868
1876
|
|
|
1869
1877
|
```json
|
|
1870
1878
|
{
|
|
1871
|
-
"extends": "@assistant-ui/x-buildutils/ts/
|
|
1879
|
+
"extends": "@assistant-ui/x-buildutils/ts/next",
|
|
1872
1880
|
"compilerOptions": {
|
|
1873
|
-
"
|
|
1874
|
-
"module": "ESNext",
|
|
1875
|
-
"incremental": true,
|
|
1876
|
-
"plugins": [
|
|
1877
|
-
{
|
|
1878
|
-
"name": "next"
|
|
1879
|
-
}
|
|
1880
|
-
],
|
|
1881
|
-
"allowJs": true,
|
|
1882
|
-
"strictNullChecks": true,
|
|
1883
|
-
"jsx": "preserve",
|
|
1884
|
-
"paths": {
|
|
1885
|
-
"@/*": ["./*"],
|
|
1886
|
-
"@assistant-ui/*": ["../../packages/*/src"],
|
|
1887
|
-
"@assistant-ui/react/*": ["../../packages/react/src/*"],
|
|
1888
|
-
"@assistant-ui/tap/*": ["../../packages/tap/src/*"],
|
|
1889
|
-
"assistant-stream": ["../../packages/assistant-stream/src"],
|
|
1890
|
-
"assistant-stream/*": ["../../packages/assistant-stream/src/*"]
|
|
1891
|
-
}
|
|
1881
|
+
"paths": { "@/*": ["./*"] }
|
|
1892
1882
|
},
|
|
1893
|
-
"include": ["
|
|
1883
|
+
"include": ["**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
|
|
1894
1884
|
"exclude": ["node_modules"]
|
|
1895
1885
|
}
|
|
1896
1886
|
|