@copilotkit/react-ui 0.10.0-alpha.4 → 0.10.0-alpha.5
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/.turbo/turbo-build.log +180 -88
- package/CHANGELOG.md +11 -0
- package/dist/components/chat-components/chat-list.js +470 -0
- package/dist/components/chat-components/chat-list.js.map +1 -0
- package/dist/components/chat-components/chat-message-actions.js +188 -0
- package/dist/components/chat-components/chat-message-actions.js.map +1 -0
- package/dist/components/chat-components/chat-message.js +431 -0
- package/dist/components/chat-components/chat-message.js.map +1 -0
- package/dist/components/chat-components/chat-panel.js +330 -0
- package/dist/components/chat-components/chat-panel.js.map +1 -0
- package/dist/components/chat-components/chat-scroll-anchor.js +65 -0
- package/dist/components/chat-components/chat-scroll-anchor.js.map +1 -0
- package/dist/components/chat-components/clear-history.js +323 -0
- package/dist/components/chat-components/clear-history.js.map +1 -0
- package/dist/components/chat-components/copilot-chat.js +876 -0
- package/dist/components/chat-components/copilot-chat.js.map +1 -0
- package/dist/components/chat-components/default-empty-screen.js +211 -0
- package/dist/components/chat-components/default-empty-screen.js.map +1 -0
- package/dist/components/chat-components/external-link.js +35 -0
- package/dist/components/chat-components/external-link.js.map +1 -0
- package/dist/components/chat-components/markdown.js +14 -0
- package/dist/components/chat-components/markdown.js.map +1 -0
- package/dist/components/chat-components/prompt-form.js +245 -0
- package/dist/components/chat-components/prompt-form.js.map +1 -0
- package/dist/components/chat-components/theme-toggle.js +158 -0
- package/dist/components/chat-components/theme-toggle.js.map +1 -0
- package/dist/components/chat-components/toaster.js +12 -0
- package/dist/components/chat-components/toaster.js.map +1 -0
- package/dist/components/chat-components/ui/alert-dialog.js +229 -0
- package/dist/components/chat-components/ui/alert-dialog.js.map +1 -0
- package/dist/components/chat-components/ui/badge.js +70 -0
- package/dist/components/chat-components/ui/badge.js.map +1 -0
- package/dist/components/chat-components/ui/button.js +105 -0
- package/dist/components/chat-components/ui/button.js.map +1 -0
- package/dist/components/chat-components/ui/codeblock.js +299 -0
- package/dist/components/chat-components/ui/codeblock.js.map +1 -0
- package/dist/components/chat-components/ui/dialog.js +198 -0
- package/dist/components/chat-components/ui/dialog.js.map +1 -0
- package/dist/components/chat-components/ui/dropdown-menu.js +153 -0
- package/dist/components/chat-components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/chat-components/ui/icons.js +567 -0
- package/dist/components/chat-components/ui/icons.js.map +1 -0
- package/dist/components/chat-components/ui/input.js +80 -0
- package/dist/components/chat-components/ui/input.js.map +1 -0
- package/dist/components/chat-components/ui/label.js +80 -0
- package/dist/components/chat-components/ui/label.js.map +1 -0
- package/dist/components/chat-components/ui/select.js +196 -0
- package/dist/components/chat-components/ui/select.js.map +1 -0
- package/dist/components/chat-components/ui/separator.js +84 -0
- package/dist/components/chat-components/ui/separator.js.map +1 -0
- package/dist/components/chat-components/ui/sheet.js +189 -0
- package/dist/components/chat-components/ui/sheet.js.map +1 -0
- package/dist/components/chat-components/ui/switch.js +88 -0
- package/dist/components/chat-components/ui/switch.js.map +1 -0
- package/dist/components/chat-components/ui/textarea.js +79 -0
- package/dist/components/chat-components/ui/textarea.js.map +1 -0
- package/dist/components/chat-components/ui/tooltip.js +86 -0
- package/dist/components/chat-components/ui/tooltip.js.map +1 -0
- package/dist/components/index.js +989 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/sidebar/copilot-sidebar-ui-provider.js +984 -0
- package/dist/components/sidebar/copilot-sidebar-ui-provider.js.map +1 -0
- package/dist/components/sidebar/copilot-sidebar.js +916 -0
- package/dist/components/sidebar/copilot-sidebar.js.map +1 -0
- package/dist/components/sidebar/sidebar-context.js +14 -0
- package/dist/components/sidebar/sidebar-context.js.map +1 -0
- package/dist/context/index.js +4 -0
- package/dist/context/index.js.map +1 -0
- package/dist/hooks/index.js +4 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-at-bottom.js +44 -0
- package/dist/hooks/use-at-bottom.js.map +1 -0
- package/dist/hooks/use-copy-to-clipboard.js +49 -0
- package/dist/hooks/use-copy-to-clipboard.js.map +1 -0
- package/dist/hooks/use-enter-submit.js +20 -0
- package/dist/hooks/use-enter-submit.js.map +1 -0
- package/dist/index.js +989 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1 -1
- package/dist/lib/utils.js +64 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/utils.test.js +10 -0
- package/dist/lib/utils.test.js.map +1 -0
- package/dist/types/index.js +4 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/types.js +4 -0
- package/dist/types/types.js.map +1 -0
- package/package.json +4 -4
- package/tsup.config.ts +1 -1
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React2 = require('react');
|
|
4
|
+
var AlertDialogPrimitive = require('@radix-ui/react-alert-dialog');
|
|
5
|
+
var clsx = require('clsx');
|
|
6
|
+
var nanoid = require('nanoid');
|
|
7
|
+
var tailwindMerge = require('tailwind-merge');
|
|
8
|
+
var reactSlot = require('@radix-ui/react-slot');
|
|
9
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
10
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
11
|
+
|
|
12
|
+
function _interopNamespaceDefault(e) {
|
|
13
|
+
var n = Object.create(null);
|
|
14
|
+
if (e) {
|
|
15
|
+
Object.keys(e).forEach(function (k) {
|
|
16
|
+
if (k !== 'default') {
|
|
17
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
18
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () { return e[k]; }
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
n.default = e;
|
|
26
|
+
return Object.freeze(n);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
var React2__namespace = /*#__PURE__*/_interopNamespaceDefault(React2);
|
|
30
|
+
var AlertDialogPrimitive__namespace = /*#__PURE__*/_interopNamespaceDefault(AlertDialogPrimitive);
|
|
31
|
+
|
|
32
|
+
var __defProp = Object.defineProperty;
|
|
33
|
+
var __defProps = Object.defineProperties;
|
|
34
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
35
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
36
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
37
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
38
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
39
|
+
var __spreadValues = (a, b) => {
|
|
40
|
+
for (var prop in b || (b = {}))
|
|
41
|
+
if (__hasOwnProp.call(b, prop))
|
|
42
|
+
__defNormalProp(a, prop, b[prop]);
|
|
43
|
+
if (__getOwnPropSymbols)
|
|
44
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
45
|
+
if (__propIsEnum.call(b, prop))
|
|
46
|
+
__defNormalProp(a, prop, b[prop]);
|
|
47
|
+
}
|
|
48
|
+
return a;
|
|
49
|
+
};
|
|
50
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
51
|
+
var __objRest = (source, exclude) => {
|
|
52
|
+
var target = {};
|
|
53
|
+
for (var prop in source)
|
|
54
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
55
|
+
target[prop] = source[prop];
|
|
56
|
+
if (source != null && __getOwnPropSymbols)
|
|
57
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
58
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
59
|
+
target[prop] = source[prop];
|
|
60
|
+
}
|
|
61
|
+
return target;
|
|
62
|
+
};
|
|
63
|
+
function cn(...inputs) {
|
|
64
|
+
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
65
|
+
}
|
|
66
|
+
nanoid.customAlphabet(
|
|
67
|
+
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
|
|
68
|
+
7
|
|
69
|
+
);
|
|
70
|
+
var buttonVariants = classVarianceAuthority.cva(
|
|
71
|
+
"inline-flex items-center justify-center rounded-md text-sm font-medium shadow ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
72
|
+
{
|
|
73
|
+
variants: {
|
|
74
|
+
variant: {
|
|
75
|
+
default: "bg-primary text-primary-foreground shadow-md hover:bg-primary/90",
|
|
76
|
+
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
77
|
+
outline: "border border-input hover:bg-accent hover:text-accent-foreground",
|
|
78
|
+
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
79
|
+
ghost: "shadow-none hover:bg-accent hover:text-accent-foreground",
|
|
80
|
+
link: "text-primary underline-offset-4 shadow-none hover:underline"
|
|
81
|
+
},
|
|
82
|
+
size: {
|
|
83
|
+
default: "h-8 px-4 py-2",
|
|
84
|
+
sm: "h-8 rounded-md px-3",
|
|
85
|
+
lg: "h-11 rounded-md px-8",
|
|
86
|
+
icon: "h-8 w-8 p-0"
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
defaultVariants: {
|
|
90
|
+
variant: "default",
|
|
91
|
+
size: "default"
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
var Button = React2__namespace.forwardRef(
|
|
96
|
+
(_a, ref) => {
|
|
97
|
+
var _b = _a, { className, variant, size, asChild = false } = _b, props = __objRest(_b, ["className", "variant", "size", "asChild"]);
|
|
98
|
+
const Comp = asChild ? reactSlot.Slot : "button";
|
|
99
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Comp, __spreadValues({
|
|
100
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
101
|
+
ref
|
|
102
|
+
}, props));
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
Button.displayName = "Button";
|
|
106
|
+
var AlertDialog = AlertDialogPrimitive__namespace.Root;
|
|
107
|
+
var AlertDialogTrigger = AlertDialogPrimitive__namespace.Trigger;
|
|
108
|
+
var AlertDialogPortal = (_a) => {
|
|
109
|
+
var _b = _a, {
|
|
110
|
+
className,
|
|
111
|
+
children
|
|
112
|
+
} = _b, props = __objRest(_b, [
|
|
113
|
+
"className",
|
|
114
|
+
"children"
|
|
115
|
+
]);
|
|
116
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Portal, __spreadProps(__spreadValues({
|
|
117
|
+
className: cn(className)
|
|
118
|
+
}, props), {
|
|
119
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", {
|
|
120
|
+
className: "fixed inset-0 z-50 flex items-end justify-center sm:items-center",
|
|
121
|
+
children
|
|
122
|
+
})
|
|
123
|
+
}));
|
|
124
|
+
};
|
|
125
|
+
AlertDialogPortal.displayName = AlertDialogPrimitive__namespace.Portal.displayName;
|
|
126
|
+
var AlertDialogOverlay = React2__namespace.forwardRef((_a, ref) => {
|
|
127
|
+
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
128
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Overlay, __spreadProps(__spreadValues({
|
|
129
|
+
className: cn(
|
|
130
|
+
"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-opacity animate-in fade-in",
|
|
131
|
+
className
|
|
132
|
+
)
|
|
133
|
+
}, props), {
|
|
134
|
+
ref
|
|
135
|
+
}));
|
|
136
|
+
});
|
|
137
|
+
AlertDialogOverlay.displayName = AlertDialogPrimitive__namespace.Overlay.displayName;
|
|
138
|
+
var AlertDialogContent = React2__namespace.forwardRef((_a, ref) => {
|
|
139
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
140
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortal, {
|
|
141
|
+
children: [
|
|
142
|
+
/* @__PURE__ */ jsxRuntime.jsx(AlertDialogOverlay, {}),
|
|
143
|
+
/* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Content, __spreadValues({
|
|
144
|
+
ref,
|
|
145
|
+
className: cn(
|
|
146
|
+
"fixed z-50 grid w-full max-w-lg scale-100 gap-4 border bg-background p-6 opacity-100 shadow-lg animate-in fade-in-90 slide-in-from-bottom-10 sm:rounded-lg sm:zoom-in-90 sm:slide-in-from-bottom-0 md:w-full",
|
|
147
|
+
className
|
|
148
|
+
)
|
|
149
|
+
}, props))
|
|
150
|
+
]
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
AlertDialogContent.displayName = AlertDialogPrimitive__namespace.Content.displayName;
|
|
154
|
+
var AlertDialogHeader = (_a) => {
|
|
155
|
+
var _b = _a, {
|
|
156
|
+
className
|
|
157
|
+
} = _b, props = __objRest(_b, [
|
|
158
|
+
"className"
|
|
159
|
+
]);
|
|
160
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadValues({
|
|
161
|
+
className: cn(
|
|
162
|
+
"flex flex-col space-y-2 text-center sm:text-left",
|
|
163
|
+
className
|
|
164
|
+
)
|
|
165
|
+
}, props));
|
|
166
|
+
};
|
|
167
|
+
AlertDialogHeader.displayName = "AlertDialogHeader";
|
|
168
|
+
var AlertDialogFooter = (_a) => {
|
|
169
|
+
var _b = _a, {
|
|
170
|
+
className
|
|
171
|
+
} = _b, props = __objRest(_b, [
|
|
172
|
+
"className"
|
|
173
|
+
]);
|
|
174
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadValues({
|
|
175
|
+
className: cn(
|
|
176
|
+
"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
|
|
177
|
+
className
|
|
178
|
+
)
|
|
179
|
+
}, props));
|
|
180
|
+
};
|
|
181
|
+
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
182
|
+
var AlertDialogTitle = React2__namespace.forwardRef((_a, ref) => {
|
|
183
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
184
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Title, __spreadValues({
|
|
185
|
+
ref,
|
|
186
|
+
className: cn("text-lg font-semibold", className)
|
|
187
|
+
}, props));
|
|
188
|
+
});
|
|
189
|
+
AlertDialogTitle.displayName = AlertDialogPrimitive__namespace.Title.displayName;
|
|
190
|
+
var AlertDialogDescription = React2__namespace.forwardRef((_a, ref) => {
|
|
191
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
192
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Description, __spreadValues({
|
|
193
|
+
ref,
|
|
194
|
+
className: cn("text-sm text-muted-foreground", className)
|
|
195
|
+
}, props));
|
|
196
|
+
});
|
|
197
|
+
AlertDialogDescription.displayName = AlertDialogPrimitive__namespace.Description.displayName;
|
|
198
|
+
var AlertDialogAction = React2__namespace.forwardRef((_a, ref) => {
|
|
199
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
200
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Action, __spreadValues({
|
|
201
|
+
ref,
|
|
202
|
+
className: cn(buttonVariants(), className)
|
|
203
|
+
}, props));
|
|
204
|
+
});
|
|
205
|
+
AlertDialogAction.displayName = AlertDialogPrimitive__namespace.Action.displayName;
|
|
206
|
+
var AlertDialogCancel = React2__namespace.forwardRef((_a, ref) => {
|
|
207
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
208
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialogPrimitive__namespace.Cancel, __spreadValues({
|
|
209
|
+
ref,
|
|
210
|
+
className: cn(
|
|
211
|
+
buttonVariants({ variant: "outline" }),
|
|
212
|
+
"mt-2 sm:mt-0",
|
|
213
|
+
className
|
|
214
|
+
)
|
|
215
|
+
}, props));
|
|
216
|
+
});
|
|
217
|
+
AlertDialogCancel.displayName = AlertDialogPrimitive__namespace.Cancel.displayName;
|
|
218
|
+
|
|
219
|
+
exports.AlertDialog = AlertDialog;
|
|
220
|
+
exports.AlertDialogAction = AlertDialogAction;
|
|
221
|
+
exports.AlertDialogCancel = AlertDialogCancel;
|
|
222
|
+
exports.AlertDialogContent = AlertDialogContent;
|
|
223
|
+
exports.AlertDialogDescription = AlertDialogDescription;
|
|
224
|
+
exports.AlertDialogFooter = AlertDialogFooter;
|
|
225
|
+
exports.AlertDialogHeader = AlertDialogHeader;
|
|
226
|
+
exports.AlertDialogTitle = AlertDialogTitle;
|
|
227
|
+
exports.AlertDialogTrigger = AlertDialogTrigger;
|
|
228
|
+
//# sourceMappingURL=out.js.map
|
|
229
|
+
//# sourceMappingURL=alert-dialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/chat-components/ui/alert-dialog.tsx","../../../../src/lib/utils.ts","../../../../src/components/chat-components/ui/button.tsx"],"names":["React","jsx"],"mappings":"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","sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\";\n\nimport { cn } from \"../../../lib/utils\";\nimport { buttonVariants } from \"./button\";\n\nconst AlertDialog = AlertDialogPrimitive.Root;\n\nconst AlertDialogTrigger = AlertDialogPrimitive.Trigger;\n\nconst AlertDialogPortal = ({\n className,\n children,\n ...props\n}: AlertDialogPrimitive.AlertDialogPortalProps) => (\n <AlertDialogPrimitive.Portal className={cn(className)} {...props}>\n <div className=\"fixed inset-0 z-50 flex items-end justify-center sm:items-center\">\n {children}\n </div>\n </AlertDialogPrimitive.Portal>\n);\nAlertDialogPortal.displayName = AlertDialogPrimitive.Portal.displayName;\n\nconst AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Overlay>\n>(({ className, children, ...props }, ref) => (\n <AlertDialogPrimitive.Overlay\n className={cn(\n \"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm transition-opacity animate-in fade-in\",\n className\n )}\n {...props}\n ref={ref}\n />\n));\nAlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;\n\nconst AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <AlertDialogPortal>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed z-50 grid w-full max-w-lg scale-100 gap-4 border bg-background p-6 opacity-100 shadow-lg animate-in fade-in-90 slide-in-from-bottom-10 sm:rounded-lg sm:zoom-in-90 sm:slide-in-from-bottom-0 md:w-full\",\n className\n )}\n {...props}\n />\n </AlertDialogPortal>\n));\nAlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;\n\nconst AlertDialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col space-y-2 text-center sm:text-left\",\n className\n )}\n {...props}\n />\n);\nAlertDialogHeader.displayName = \"AlertDialogHeader\";\n\nconst AlertDialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\n \"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\",\n className\n )}\n {...props}\n />\n);\nAlertDialogFooter.displayName = \"AlertDialogFooter\";\n\nconst AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Title\n ref={ref}\n className={cn(\"text-lg font-semibold\", className)}\n {...props}\n />\n));\nAlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;\n\nconst AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nAlertDialogDescription.displayName =\n AlertDialogPrimitive.Description.displayName;\n\nconst AlertDialogAction = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Action>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Action\n ref={ref}\n className={cn(buttonVariants(), className)}\n {...props}\n />\n));\nAlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;\n\nconst AlertDialogCancel = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Cancel>,\n React.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Cancel>\n>(({ className, ...props }, ref) => (\n <AlertDialogPrimitive.Cancel\n ref={ref}\n className={cn(\n buttonVariants({ variant: \"outline\" }),\n \"mt-2 sm:mt-0\",\n className\n )}\n {...props}\n />\n));\nAlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;\n\nexport {\n AlertDialog,\n AlertDialogTrigger,\n AlertDialogContent,\n AlertDialogHeader,\n AlertDialogFooter,\n AlertDialogTitle,\n AlertDialogDescription,\n AlertDialogAction,\n AlertDialogCancel,\n};\n","import { clsx, type ClassValue } from \"clsx\";\nimport { customAlphabet } from \"nanoid\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport const nanoid = customAlphabet(\n \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",\n 7\n); // 7-character random string\n\nexport async function fetcher<JSON = any>(\n input: RequestInfo,\n init?: RequestInit\n): Promise<JSON> {\n const res = await fetch(input, init);\n\n if (!res.ok) {\n const json = await res.json();\n if (json.error) {\n const error = new Error(json.error) as Error & {\n status: number;\n };\n error.status = res.status;\n throw error;\n } else {\n throw new Error(\"An unexpected error occurred\");\n }\n }\n\n return res.json();\n}\n\nexport function formatDate(input: string | number | Date): string {\n const date = new Date(input);\n return date.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n });\n}\n","import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../../lib/utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center rounded-md text-sm font-medium shadow ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground shadow-md hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"shadow-none hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 shadow-none hover:underline\",\n },\n size: {\n default: \"h-8 px-4 py-2\",\n sm: \"h-8 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"h-8 w-8 p-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n"]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
4
|
+
var clsx = require('clsx');
|
|
5
|
+
var nanoid = require('nanoid');
|
|
6
|
+
var tailwindMerge = require('tailwind-merge');
|
|
7
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
8
|
+
|
|
9
|
+
var __defProp = Object.defineProperty;
|
|
10
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14
|
+
var __spreadValues = (a, b) => {
|
|
15
|
+
for (var prop in b || (b = {}))
|
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
if (__getOwnPropSymbols)
|
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
20
|
+
if (__propIsEnum.call(b, prop))
|
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
|
22
|
+
}
|
|
23
|
+
return a;
|
|
24
|
+
};
|
|
25
|
+
var __objRest = (source, exclude) => {
|
|
26
|
+
var target = {};
|
|
27
|
+
for (var prop in source)
|
|
28
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
if (source != null && __getOwnPropSymbols)
|
|
31
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
+
target[prop] = source[prop];
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
};
|
|
37
|
+
function cn(...inputs) {
|
|
38
|
+
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
39
|
+
}
|
|
40
|
+
nanoid.customAlphabet(
|
|
41
|
+
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
|
|
42
|
+
7
|
|
43
|
+
);
|
|
44
|
+
var badgeVariants = classVarianceAuthority.cva(
|
|
45
|
+
"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
46
|
+
{
|
|
47
|
+
variants: {
|
|
48
|
+
variant: {
|
|
49
|
+
default: "border-transparent bg-primary text-primary-foreground hover:bg-primary/80",
|
|
50
|
+
secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
51
|
+
destructive: "border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",
|
|
52
|
+
outline: "text-foreground"
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
defaultVariants: {
|
|
56
|
+
variant: "default"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
);
|
|
60
|
+
function Badge(_a) {
|
|
61
|
+
var _b = _a, { className, variant } = _b, props = __objRest(_b, ["className", "variant"]);
|
|
62
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadValues({
|
|
63
|
+
className: cn(badgeVariants({ variant }), className)
|
|
64
|
+
}, props));
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
exports.Badge = Badge;
|
|
68
|
+
exports.badgeVariants = badgeVariants;
|
|
69
|
+
//# sourceMappingURL=out.js.map
|
|
70
|
+
//# sourceMappingURL=badge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/chat-components/ui/badge.tsx","../../../../src/lib/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAS,WAA8B;;;ACDvC,SAAS,YAA6B;AACtC,SAAS,sBAAsB;AAC/B,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;AAEO,IAAM,SAAS;AAAA,EACpB;AAAA,EACA;AACF;;;ADoBI;AA1BJ,IAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,WACE;AAAA,QACF,aACE;AAAA,QACF,SAAS;AAAA,MACX;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF;AAMA,SAAS,MAAM,IAA8C;AAA9C,eAAE,aAAW,QA7B5B,IA6Be,IAAyB,kBAAzB,IAAyB,CAAvB,aAAW;AAC1B,SACE,oBAAC;AAAA,IAAI,WAAW,GAAG,cAAc,EAAE,QAAQ,CAAC,GAAG,SAAS;AAAA,KAAO,MAAO;AAE1E","sourcesContent":["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../../lib/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\n outline: \"text-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n);\n\nexport interface BadgeProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return (\n <div className={cn(badgeVariants({ variant }), className)} {...props} />\n );\n}\n\nexport { Badge, badgeVariants };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { customAlphabet } from \"nanoid\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport const nanoid = customAlphabet(\n \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",\n 7\n); // 7-character random string\n\nexport async function fetcher<JSON = any>(\n input: RequestInfo,\n init?: RequestInit\n): Promise<JSON> {\n const res = await fetch(input, init);\n\n if (!res.ok) {\n const json = await res.json();\n if (json.error) {\n const error = new Error(json.error) as Error & {\n status: number;\n };\n error.status = res.status;\n throw error;\n } else {\n throw new Error(\"An unexpected error occurred\");\n }\n }\n\n return res.json();\n}\n\nexport function formatDate(input: string | number | Date): string {\n const date = new Date(input);\n return date.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n });\n}\n"]}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var reactSlot = require('@radix-ui/react-slot');
|
|
5
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
6
|
+
var clsx = require('clsx');
|
|
7
|
+
var nanoid = require('nanoid');
|
|
8
|
+
var tailwindMerge = require('tailwind-merge');
|
|
9
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
10
|
+
|
|
11
|
+
function _interopNamespaceDefault(e) {
|
|
12
|
+
var n = Object.create(null);
|
|
13
|
+
if (e) {
|
|
14
|
+
Object.keys(e).forEach(function (k) {
|
|
15
|
+
if (k !== 'default') {
|
|
16
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
17
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
get: function () { return e[k]; }
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
n.default = e;
|
|
25
|
+
return Object.freeze(n);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
29
|
+
|
|
30
|
+
var __defProp = Object.defineProperty;
|
|
31
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
32
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
33
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
34
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
35
|
+
var __spreadValues = (a, b) => {
|
|
36
|
+
for (var prop in b || (b = {}))
|
|
37
|
+
if (__hasOwnProp.call(b, prop))
|
|
38
|
+
__defNormalProp(a, prop, b[prop]);
|
|
39
|
+
if (__getOwnPropSymbols)
|
|
40
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
41
|
+
if (__propIsEnum.call(b, prop))
|
|
42
|
+
__defNormalProp(a, prop, b[prop]);
|
|
43
|
+
}
|
|
44
|
+
return a;
|
|
45
|
+
};
|
|
46
|
+
var __objRest = (source, exclude) => {
|
|
47
|
+
var target = {};
|
|
48
|
+
for (var prop in source)
|
|
49
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
50
|
+
target[prop] = source[prop];
|
|
51
|
+
if (source != null && __getOwnPropSymbols)
|
|
52
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
53
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
54
|
+
target[prop] = source[prop];
|
|
55
|
+
}
|
|
56
|
+
return target;
|
|
57
|
+
};
|
|
58
|
+
function cn(...inputs) {
|
|
59
|
+
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
60
|
+
}
|
|
61
|
+
nanoid.customAlphabet(
|
|
62
|
+
"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",
|
|
63
|
+
7
|
|
64
|
+
);
|
|
65
|
+
var buttonVariants = classVarianceAuthority.cva(
|
|
66
|
+
"inline-flex items-center justify-center rounded-md text-sm font-medium shadow ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",
|
|
67
|
+
{
|
|
68
|
+
variants: {
|
|
69
|
+
variant: {
|
|
70
|
+
default: "bg-primary text-primary-foreground shadow-md hover:bg-primary/90",
|
|
71
|
+
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
72
|
+
outline: "border border-input hover:bg-accent hover:text-accent-foreground",
|
|
73
|
+
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
74
|
+
ghost: "shadow-none hover:bg-accent hover:text-accent-foreground",
|
|
75
|
+
link: "text-primary underline-offset-4 shadow-none hover:underline"
|
|
76
|
+
},
|
|
77
|
+
size: {
|
|
78
|
+
default: "h-8 px-4 py-2",
|
|
79
|
+
sm: "h-8 rounded-md px-3",
|
|
80
|
+
lg: "h-11 rounded-md px-8",
|
|
81
|
+
icon: "h-8 w-8 p-0"
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
defaultVariants: {
|
|
85
|
+
variant: "default",
|
|
86
|
+
size: "default"
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
var Button = React__namespace.forwardRef(
|
|
91
|
+
(_a, ref) => {
|
|
92
|
+
var _b = _a, { className, variant, size, asChild = false } = _b, props = __objRest(_b, ["className", "variant", "size", "asChild"]);
|
|
93
|
+
const Comp = asChild ? reactSlot.Slot : "button";
|
|
94
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Comp, __spreadValues({
|
|
95
|
+
className: cn(buttonVariants({ variant, size, className })),
|
|
96
|
+
ref
|
|
97
|
+
}, props));
|
|
98
|
+
}
|
|
99
|
+
);
|
|
100
|
+
Button.displayName = "Button";
|
|
101
|
+
|
|
102
|
+
exports.Button = Button;
|
|
103
|
+
exports.buttonVariants = buttonVariants;
|
|
104
|
+
//# sourceMappingURL=out.js.map
|
|
105
|
+
//# sourceMappingURL=button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/chat-components/ui/button.tsx","../../../../src/lib/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,YAAY,WAAW;AACvB,SAAS,YAAY;AACrB,SAAS,WAA8B;;;ACFvC,SAAS,YAA6B;AACtC,SAAS,sBAAsB;AAC/B,SAAS,eAAe;AAEjB,SAAS,MAAM,QAAsB;AAC1C,SAAO,QAAQ,KAAK,MAAM,CAAC;AAC7B;AAEO,IAAM,SAAS;AAAA,EACpB;AAAA,EACA;AACF;;;ADmCM;AAxCN,IAAM,iBAAiB;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,aACE;AAAA,QACF,SACE;AAAA,QACF,WACE;AAAA,QACF,OAAO;AAAA,QACP,MAAM;AAAA,MACR;AAAA,MACA,MAAM;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAQA,IAAM,SAAe;AAAA,EACnB,CAAC,IAAyD,QAAQ;AAAjE,iBAAE,aAAW,SAAS,MAAM,UAAU,MA3CzC,IA2CG,IAAgD,kBAAhD,IAAgD,CAA9C,aAAW,WAAS,QAAM;AAC3B,UAAM,OAAO,UAAU,OAAO;AAC9B,WACE,oBAAC;AAAA,MACC,WAAW,GAAG,eAAe,EAAE,SAAS,MAAM,UAAU,CAAC,CAAC;AAAA,MAC1D;AAAA,OACI,MACN;AAAA,EAEJ;AACF;AACA,OAAO,cAAc","sourcesContent":["import * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../../lib/utils\";\n\nconst buttonVariants = cva(\n \"inline-flex items-center justify-center rounded-md text-sm font-medium shadow ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground shadow-md hover:bg-primary/90\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90\",\n outline:\n \"border border-input hover:bg-accent hover:text-accent-foreground\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n ghost: \"shadow-none hover:bg-accent hover:text-accent-foreground\",\n link: \"text-primary underline-offset-4 shadow-none hover:underline\",\n },\n size: {\n default: \"h-8 px-4 py-2\",\n sm: \"h-8 rounded-md px-3\",\n lg: \"h-11 rounded-md px-8\",\n icon: \"h-8 w-8 p-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n ({ className, variant, size, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n {...props}\n />\n );\n }\n);\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { customAlphabet } from \"nanoid\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport const nanoid = customAlphabet(\n \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\",\n 7\n); // 7-character random string\n\nexport async function fetcher<JSON = any>(\n input: RequestInfo,\n init?: RequestInit\n): Promise<JSON> {\n const res = await fetch(input, init);\n\n if (!res.ok) {\n const json = await res.json();\n if (json.error) {\n const error = new Error(json.error) as Error & {\n status: number;\n };\n error.status = res.status;\n throw error;\n } else {\n throw new Error(\"An unexpected error occurred\");\n }\n }\n\n return res.json();\n}\n\nexport function formatDate(input: string | number | Date): string {\n const date = new Date(input);\n return date.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n });\n}\n"]}
|