@refraction-ui/react 0.1.3 → 0.2.1
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/index.cjs +1434 -748
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1417 -748
- package/dist/index.js.map +1 -1
- package/package.json +21 -5
package/dist/index.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var React41 = require('react');
|
|
4
4
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
5
|
var ReactDOM = require('react-dom');
|
|
6
6
|
|
|
@@ -22,10 +22,370 @@ function _interopNamespace(e) {
|
|
|
22
22
|
return Object.freeze(n);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
var
|
|
25
|
+
var React41__namespace = /*#__PURE__*/_interopNamespace(React41);
|
|
26
26
|
var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
|
|
27
27
|
|
|
28
|
-
|
|
28
|
+
var __create = Object.create;
|
|
29
|
+
var __defProp = Object.defineProperty;
|
|
30
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
31
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
32
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
33
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
34
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
35
|
+
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
36
|
+
}) : x)(function(x) {
|
|
37
|
+
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
38
|
+
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
39
|
+
});
|
|
40
|
+
var __commonJS = (cb, mod) => function __require2() {
|
|
41
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
42
|
+
};
|
|
43
|
+
var __export = (target, all) => {
|
|
44
|
+
for (var name in all)
|
|
45
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
46
|
+
};
|
|
47
|
+
var __copyProps = (to, from, except, desc) => {
|
|
48
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
49
|
+
for (let key of __getOwnPropNames(from))
|
|
50
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
51
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
52
|
+
}
|
|
53
|
+
return to;
|
|
54
|
+
};
|
|
55
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget);
|
|
56
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
57
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
58
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
59
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
60
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
61
|
+
__defProp(target, "default", { value: mod, enumerable: true }) ,
|
|
62
|
+
mod
|
|
63
|
+
));
|
|
64
|
+
|
|
65
|
+
// ../react-file-tree/dist/index.js
|
|
66
|
+
var require_dist = __commonJS({
|
|
67
|
+
"../react-file-tree/dist/index.js"(exports) {
|
|
68
|
+
var jsxRuntime = __require("react/jsx-runtime");
|
|
69
|
+
var FileTree = () => {
|
|
70
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", {});
|
|
71
|
+
};
|
|
72
|
+
exports.FileTree = FileTree;
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
// ../react-icon-system/dist/index.js
|
|
77
|
+
var require_dist2 = __commonJS({
|
|
78
|
+
"../react-icon-system/dist/index.js"(exports) {
|
|
79
|
+
var jsxRuntime = __require("react/jsx-runtime");
|
|
80
|
+
var IconSystem = () => {
|
|
81
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", {});
|
|
82
|
+
};
|
|
83
|
+
exports.IconSystem = IconSystem;
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
// src/index.ts
|
|
88
|
+
var index_exports = {};
|
|
89
|
+
__export(index_exports, {
|
|
90
|
+
Accordion: () => Accordion,
|
|
91
|
+
AccordionContent: () => AccordionContent,
|
|
92
|
+
AccordionItem: () => AccordionItem,
|
|
93
|
+
AccordionTrigger: () => AccordionTrigger,
|
|
94
|
+
AnimatedText: () => AnimatedText,
|
|
95
|
+
AppShell: () => AppShell,
|
|
96
|
+
AuthGuard: () => AuthGuard,
|
|
97
|
+
AuthProvider: () => AuthProvider,
|
|
98
|
+
Avatar: () => Avatar,
|
|
99
|
+
AvatarFallback: () => AvatarFallback,
|
|
100
|
+
AvatarGroup: () => AvatarGroup,
|
|
101
|
+
AvatarImage: () => AvatarImage,
|
|
102
|
+
Badge: () => Badge,
|
|
103
|
+
BadgeDisplay: () => BadgeDisplay,
|
|
104
|
+
BottomNav: () => BottomNav,
|
|
105
|
+
Breadcrumbs: () => Breadcrumbs,
|
|
106
|
+
Button: () => Button,
|
|
107
|
+
CATEGORY_LABELS: () => CATEGORY_LABELS,
|
|
108
|
+
Calendar: () => Calendar,
|
|
109
|
+
CalendarHeader: () => CalendarHeader,
|
|
110
|
+
Callout: () => Callout,
|
|
111
|
+
Card: () => Card2,
|
|
112
|
+
CardContent: () => CardContent,
|
|
113
|
+
CardDescription: () => CardDescription,
|
|
114
|
+
CardFooter: () => CardFooter,
|
|
115
|
+
CardGrid: () => CardGrid,
|
|
116
|
+
CardHeader: () => CardHeader,
|
|
117
|
+
CardTitle: () => CardTitle,
|
|
118
|
+
Carousel: () => Carousel,
|
|
119
|
+
CarouselContent: () => CarouselContent,
|
|
120
|
+
CarouselItem: () => CarouselItem,
|
|
121
|
+
CarouselTrigger: () => CarouselTrigger,
|
|
122
|
+
Checkbox: () => Checkbox,
|
|
123
|
+
CodeBlock: () => CodeBlock,
|
|
124
|
+
CodeEditor: () => CodeEditor,
|
|
125
|
+
Collapsible: () => Collapsible,
|
|
126
|
+
CollapsibleContent: () => CollapsibleContent,
|
|
127
|
+
CollapsibleTrigger: () => CollapsibleTrigger,
|
|
128
|
+
Command: () => Command,
|
|
129
|
+
CommandEmpty: () => CommandEmpty,
|
|
130
|
+
CommandGroup: () => CommandGroup,
|
|
131
|
+
CommandInput: () => CommandInput,
|
|
132
|
+
CommandItem: () => CommandItem,
|
|
133
|
+
CommandList: () => CommandList,
|
|
134
|
+
CommandSeparator: () => CommandSeparator,
|
|
135
|
+
ContentProtection: () => ContentProtection,
|
|
136
|
+
DataTable: () => DataTable,
|
|
137
|
+
DatePicker: () => DatePicker,
|
|
138
|
+
DeviceFrame: () => DeviceFrame,
|
|
139
|
+
Dialog: () => Dialog,
|
|
140
|
+
DialogClose: () => DialogClose,
|
|
141
|
+
DialogContent: () => DialogContent,
|
|
142
|
+
DialogDescription: () => DialogDescription,
|
|
143
|
+
DialogFooter: () => DialogFooter,
|
|
144
|
+
DialogHeader: () => DialogHeader,
|
|
145
|
+
DialogOverlay: () => DialogOverlay,
|
|
146
|
+
DialogTitle: () => DialogTitle,
|
|
147
|
+
DialogTrigger: () => DialogTrigger,
|
|
148
|
+
DiffViewer: () => DiffViewer,
|
|
149
|
+
DropdownMenu: () => DropdownMenu,
|
|
150
|
+
DropdownMenuContent: () => DropdownMenuContent,
|
|
151
|
+
DropdownMenuItem: () => DropdownMenuItem,
|
|
152
|
+
DropdownMenuLabel: () => DropdownMenuLabel,
|
|
153
|
+
DropdownMenuSeparator: () => DropdownMenuSeparator,
|
|
154
|
+
DropdownMenuTrigger: () => DropdownMenuTrigger,
|
|
155
|
+
EMOJI_CATEGORIES: () => EMOJI_CATEGORIES,
|
|
156
|
+
EMOJI_DATA: () => EMOJI_DATA,
|
|
157
|
+
EmojiPicker: () => EmojiPicker,
|
|
158
|
+
FeedbackButton: () => FeedbackButton,
|
|
159
|
+
FeedbackDialog: () => FeedbackDialog,
|
|
160
|
+
FileUpload: () => FileUpload,
|
|
161
|
+
Footer: () => Footer,
|
|
162
|
+
InlineEditor: () => InlineEditor,
|
|
163
|
+
Input: () => Input,
|
|
164
|
+
InputGroup: () => InputGroup,
|
|
165
|
+
InputGroupAddon: () => InputGroupAddon,
|
|
166
|
+
InputGroupButton: () => InputGroupButton,
|
|
167
|
+
InputGroupText: () => InputGroupText,
|
|
168
|
+
InstallPrompt: () => InstallPrompt,
|
|
169
|
+
KeyboardShortcut: () => KeyboardShortcut,
|
|
170
|
+
LanguageSelector: () => LanguageSelector,
|
|
171
|
+
LinkCard: () => LinkCard,
|
|
172
|
+
MarkdownRenderer: () => MarkdownRenderer,
|
|
173
|
+
MobileNav: () => MobileNav,
|
|
174
|
+
MobileNavContent: () => MobileNavContent,
|
|
175
|
+
MobileNavLink: () => MobileNavLink,
|
|
176
|
+
MobileNavTrigger: () => MobileNavTrigger,
|
|
177
|
+
Navbar: () => Navbar,
|
|
178
|
+
OtpInput: () => OtpInput,
|
|
179
|
+
PRESENCE_STATUS_COLORS: () => STATUS_COLORS,
|
|
180
|
+
PRESENCE_STATUS_LABELS: () => STATUS_LABELS,
|
|
181
|
+
Pagination: () => Pagination,
|
|
182
|
+
Payment: () => Payment,
|
|
183
|
+
Popover: () => Popover,
|
|
184
|
+
PopoverClose: () => PopoverClose,
|
|
185
|
+
PopoverContent: () => PopoverContent,
|
|
186
|
+
PopoverTrigger: () => PopoverTrigger,
|
|
187
|
+
PresenceIndicator: () => PresenceIndicator,
|
|
188
|
+
ProgressBar: () => ProgressBar,
|
|
189
|
+
RadioGroup: () => RadioGroup,
|
|
190
|
+
RadioItem: () => RadioItem,
|
|
191
|
+
ReactionBar: () => ReactionBar,
|
|
192
|
+
ResizableDivider: () => ResizableDivider,
|
|
193
|
+
ResizableLayout: () => ResizableLayout,
|
|
194
|
+
ResizablePane: () => ResizablePane,
|
|
195
|
+
STATUS_COLORS: () => STATUS_COLORS2,
|
|
196
|
+
STATUS_LABELS: () => STATUS_LABELS2,
|
|
197
|
+
SearchBar: () => SearchBar,
|
|
198
|
+
SearchResultItem: () => SearchResultItem,
|
|
199
|
+
SearchResults: () => SearchResults,
|
|
200
|
+
Select: () => Select,
|
|
201
|
+
SelectContent: () => SelectContent,
|
|
202
|
+
SelectItem: () => SelectItem,
|
|
203
|
+
SelectTrigger: () => SelectTrigger,
|
|
204
|
+
ShortcutBadge: () => ShortcutBadge,
|
|
205
|
+
Sidebar: () => Sidebar,
|
|
206
|
+
Skeleton: () => Skeleton,
|
|
207
|
+
SkeletonText: () => SkeletonText,
|
|
208
|
+
SkipToContent: () => SkipToContent,
|
|
209
|
+
SlideViewer: () => SlideViewer,
|
|
210
|
+
StatsGrid: () => StatsGrid,
|
|
211
|
+
StatusIndicator: () => StatusIndicator,
|
|
212
|
+
Steps: () => Steps,
|
|
213
|
+
Switch: () => Switch,
|
|
214
|
+
TableOfContents: () => TableOfContents,
|
|
215
|
+
Tabs: () => Tabs,
|
|
216
|
+
TabsContent: () => TabsContent,
|
|
217
|
+
TabsList: () => TabsList,
|
|
218
|
+
TabsTrigger: () => TabsTrigger,
|
|
219
|
+
Textarea: () => Textarea,
|
|
220
|
+
ThemeProvider: () => ThemeProvider,
|
|
221
|
+
ThemeScript: () => ThemeScript,
|
|
222
|
+
ThemeToggle: () => ThemeToggle,
|
|
223
|
+
ThreadView: () => ThreadView,
|
|
224
|
+
Toast: () => Toast,
|
|
225
|
+
ToastProvider: () => ToastProvider,
|
|
226
|
+
Toaster: () => Toaster,
|
|
227
|
+
Tooltip: () => Tooltip,
|
|
228
|
+
TooltipContent: () => TooltipContent,
|
|
229
|
+
TooltipTrigger: () => TooltipTrigger,
|
|
230
|
+
TypewriterText: () => TypewriterText,
|
|
231
|
+
VersionSelector: () => VersionSelector,
|
|
232
|
+
VideoPlayer: () => VideoPlayer,
|
|
233
|
+
animatedTextVariants: () => animatedTextVariants,
|
|
234
|
+
avatarFallbackVariants: () => avatarFallbackVariants,
|
|
235
|
+
avatarImageVariants: () => avatarImageVariants,
|
|
236
|
+
avatarTokens: () => avatarTokens,
|
|
237
|
+
avatarVariants: () => avatarVariants,
|
|
238
|
+
badgeGridVariants: () => badgeGridVariants,
|
|
239
|
+
badgeItemVariants: () => badgeItemVariants,
|
|
240
|
+
badgeVariants: () => badgeVariants,
|
|
241
|
+
bottomNavTabVariants: () => bottomNavTabVariants,
|
|
242
|
+
bottomNavVariants: () => bottomNavVariants,
|
|
243
|
+
breadcrumbItemVariants: () => breadcrumbItemVariants,
|
|
244
|
+
breadcrumbSeparatorStyles: () => breadcrumbSeparatorStyles,
|
|
245
|
+
breadcrumbsVariants: () => breadcrumbsVariants,
|
|
246
|
+
buttonTokens: () => buttonTokens,
|
|
247
|
+
buttonVariants: () => buttonVariants,
|
|
248
|
+
calendarVariants: () => calendarVariants,
|
|
249
|
+
canAccessAdmin: () => canAccessAdmin,
|
|
250
|
+
canAccessReviewer: () => canAccessReviewer,
|
|
251
|
+
cardContentVariants: () => cardContentVariants,
|
|
252
|
+
cardDescriptionVariants: () => cardDescriptionVariants,
|
|
253
|
+
cardFooterVariants: () => cardFooterVariants,
|
|
254
|
+
cardHeaderVariants: () => cardHeaderVariants,
|
|
255
|
+
cardTitleVariants: () => cardTitleVariants,
|
|
256
|
+
cardTokens: () => cardTokens,
|
|
257
|
+
cardVariants: () => cardVariants,
|
|
258
|
+
cellVariants: () => cellVariants,
|
|
259
|
+
checkIconPath: () => checkIconPath,
|
|
260
|
+
checkboxTokens: () => checkboxTokens,
|
|
261
|
+
checkboxVariants: () => checkboxVariants,
|
|
262
|
+
codeEditorTokens: () => codeEditorTokens,
|
|
263
|
+
codeEditorVariants: () => codeEditorVariants,
|
|
264
|
+
collapsibleContentVariants: () => collapsibleContentVariants,
|
|
265
|
+
commandGroupVariants: () => commandGroupVariants,
|
|
266
|
+
commandInputVariants: () => commandInputVariants,
|
|
267
|
+
commandItemVariants: () => commandItemVariants,
|
|
268
|
+
commandVariants: () => commandVariants,
|
|
269
|
+
contentProtectionVariants: () => contentProtectionVariants,
|
|
270
|
+
controlsVariants: () => controlsVariants,
|
|
271
|
+
createDiffViewer: () => createDiffViewer,
|
|
272
|
+
dayVariants: () => dayVariants,
|
|
273
|
+
deviceFrameVariants: () => deviceFrameVariants,
|
|
274
|
+
dialogContentVariants: () => dialogContentVariants,
|
|
275
|
+
diffViewerTokens: () => diffViewerTokens,
|
|
276
|
+
diffViewerVariants: () => diffViewerVariants,
|
|
277
|
+
editorVariants: () => editorVariants,
|
|
278
|
+
emojiPickerContainerStyles: () => emojiPickerContainerStyles,
|
|
279
|
+
emojiPickerEmojiButtonStyles: () => emojiPickerEmojiButtonStyles,
|
|
280
|
+
emojiPickerGridStyles: () => emojiPickerGridStyles,
|
|
281
|
+
feedbackDialogVariants: () => feedbackDialogVariants,
|
|
282
|
+
fileUploadDropZoneVariants: () => fileUploadDropZoneVariants,
|
|
283
|
+
fileUploadFileItemStyles: () => fileUploadFileItemStyles,
|
|
284
|
+
fileUploadFileListStyles: () => fileUploadFileListStyles,
|
|
285
|
+
footerVariants: () => footerVariants,
|
|
286
|
+
formatFileSize: () => formatFileSize,
|
|
287
|
+
formatRelativeTime: () => formatRelativeTime,
|
|
288
|
+
formatShortcut: () => formatShortcut,
|
|
289
|
+
formatTimestamp: () => formatTimestamp,
|
|
290
|
+
getAssignableRoles: () => getAssignableRoles,
|
|
291
|
+
getDefaultPortal: () => getDefaultPortal,
|
|
292
|
+
getInitials: () => getInitials,
|
|
293
|
+
hasAllRoles: () => hasAllRoles,
|
|
294
|
+
hasAnyRole: () => hasAnyRole,
|
|
295
|
+
hasRole: () => hasRole,
|
|
296
|
+
headerVariants: () => headerVariants,
|
|
297
|
+
indeterminateIconPath: () => indeterminateIconPath,
|
|
298
|
+
inputGroupAddonVariants: () => inputGroupAddonVariants,
|
|
299
|
+
inputGroupButtonVariants: () => inputGroupButtonVariants,
|
|
300
|
+
inputGroupTokens: () => inputGroupTokens,
|
|
301
|
+
inputGroupVariants: () => inputGroupVariants,
|
|
302
|
+
inputVariants: () => inputVariants,
|
|
303
|
+
installPromptVariants: () => installPromptVariants,
|
|
304
|
+
latestBadgeVariants: () => latestBadgeVariants,
|
|
305
|
+
markdownRendererTokens: () => markdownRendererTokens,
|
|
306
|
+
menuContentVariants: () => menuContentVariants,
|
|
307
|
+
menuItemVariants: () => menuItemVariants,
|
|
308
|
+
mobileNavContentVariants: () => mobileNavContentVariants,
|
|
309
|
+
mobileNavLinkVariants: () => mobileNavLinkVariants,
|
|
310
|
+
mobileNavTokens: () => mobileNavTokens,
|
|
311
|
+
mobileNavTriggerVariants: () => mobileNavTriggerVariants,
|
|
312
|
+
mobileNavVariants: () => mobileNavVariants,
|
|
313
|
+
navLinkVariants: () => navLinkVariants,
|
|
314
|
+
navbarVariants: () => navbarVariants,
|
|
315
|
+
optionVariants: () => optionVariants,
|
|
316
|
+
otpInputContainerVariants: () => otpInputContainerVariants,
|
|
317
|
+
otpInputSlotVariants: () => otpInputSlotVariants,
|
|
318
|
+
otpInputTokens: () => otpInputTokens,
|
|
319
|
+
overlayStyles: () => overlayStyles,
|
|
320
|
+
overlayVariants: () => overlayVariants,
|
|
321
|
+
playerVariants: () => playerVariants,
|
|
322
|
+
popoverContentVariants: () => popoverContentVariants,
|
|
323
|
+
previewVariants: () => previewVariants,
|
|
324
|
+
progressBarVariants: () => progressBarVariants,
|
|
325
|
+
proseVariants: () => proseVariants,
|
|
326
|
+
radioCircleVariants: () => radioCircleVariants,
|
|
327
|
+
radioGroupVariants: () => radioGroupVariants,
|
|
328
|
+
radioItemVariants: () => radioItemVariants,
|
|
329
|
+
reactionAddButtonStyles: () => reactionAddButtonStyles,
|
|
330
|
+
reactionBarStyles: () => reactionBarStyles,
|
|
331
|
+
reactionCountStyles: () => reactionCountStyles,
|
|
332
|
+
reactionEmojiStyles: () => reactionEmojiStyles,
|
|
333
|
+
reactionPillVariants: () => reactionPillVariants,
|
|
334
|
+
resizableDividerVariants: () => resizableDividerVariants,
|
|
335
|
+
resizableLayoutTokens: () => resizableLayoutTokens,
|
|
336
|
+
resizableLayoutVariants: () => resizableLayoutVariants,
|
|
337
|
+
resizablePaneVariants: () => resizablePaneVariants,
|
|
338
|
+
rowVariants: () => rowVariants,
|
|
339
|
+
searchBarVariants: () => searchBarVariants,
|
|
340
|
+
searchResultVariants: () => searchResultVariants,
|
|
341
|
+
selectContentVariants: () => selectContentVariants,
|
|
342
|
+
selectItemVariants: () => selectItemVariants,
|
|
343
|
+
selectTokens: () => selectTokens,
|
|
344
|
+
selectTriggerVariants: () => selectTriggerVariants,
|
|
345
|
+
selectorVariants: () => selectorVariants,
|
|
346
|
+
shortcutBadgeStyles: () => shortcutBadgeStyles,
|
|
347
|
+
shortcutKeyStyles: () => shortcutKeyStyles,
|
|
348
|
+
shortcutSeparatorStyles: () => shortcutSeparatorStyles,
|
|
349
|
+
skeletonVariants: () => skeletonVariants,
|
|
350
|
+
slideTypeBadgeVariants: () => slideTypeBadgeVariants,
|
|
351
|
+
slideViewerProgressBarVariants: () => progressBarVariants2,
|
|
352
|
+
slideViewerTokens: () => slideViewerTokens,
|
|
353
|
+
slideViewerVariants: () => slideViewerVariants,
|
|
354
|
+
statCardVariants: () => statCardVariants,
|
|
355
|
+
statsGridVariants: () => statsGridVariants,
|
|
356
|
+
statusBarVariants: () => statusBarVariants,
|
|
357
|
+
statusContainerStyles: () => statusContainerStyles,
|
|
358
|
+
statusDotVariants: () => statusDotVariants,
|
|
359
|
+
statusLabelStyles: () => statusLabelStyles,
|
|
360
|
+
statusPulseVariants: () => statusPulseVariants,
|
|
361
|
+
switchThumbVariants: () => switchThumbVariants,
|
|
362
|
+
switchTokens: () => switchTokens,
|
|
363
|
+
switchVariants: () => switchVariants,
|
|
364
|
+
tabBarVariants: () => tabBarVariants,
|
|
365
|
+
tabVariants: () => tabVariants,
|
|
366
|
+
tableVariants: () => tableVariants,
|
|
367
|
+
tabsListVariants: () => tabsListVariants,
|
|
368
|
+
tabsTriggerVariants: () => tabsTriggerVariants,
|
|
369
|
+
textareaVariants: () => textareaVariants,
|
|
370
|
+
threadAuthorStyles: () => threadAuthorStyles,
|
|
371
|
+
threadAvatarStyles: () => threadAvatarStyles,
|
|
372
|
+
threadBodyStyles: () => threadBodyStyles,
|
|
373
|
+
threadContainerStyles: () => threadContainerStyles,
|
|
374
|
+
threadContentStyles: () => threadContentStyles,
|
|
375
|
+
threadMessageStyles: () => threadMessageStyles,
|
|
376
|
+
threadReactionsStyles: () => threadReactionsStyles,
|
|
377
|
+
threadTimestampStyles: () => threadTimestampStyles,
|
|
378
|
+
toastVariants: () => toastVariants,
|
|
379
|
+
toolbarVariants: () => toolbarVariants,
|
|
380
|
+
tooltipContentVariants: () => tooltipContentVariants,
|
|
381
|
+
typewriterVariants: () => typewriterVariants,
|
|
382
|
+
useAuth: () => useAuth,
|
|
383
|
+
useTheme: () => useTheme,
|
|
384
|
+
useToast: () => useToast,
|
|
385
|
+
versionSelectorOptionVariants: () => optionVariants2,
|
|
386
|
+
versionSelectorVariants: () => versionSelectorVariants,
|
|
387
|
+
watermarkVariants: () => watermarkVariants
|
|
388
|
+
});
|
|
29
389
|
|
|
30
390
|
// ../theme/dist/index.js
|
|
31
391
|
function resolveTheme(mode, systemPrefersDark) {
|
|
@@ -141,14 +501,14 @@ function applyThemeToDOM(resolved, attribute = "class") {
|
|
|
141
501
|
}
|
|
142
502
|
|
|
143
503
|
// ../react-theme/dist/index.js
|
|
144
|
-
var ThemeContext =
|
|
504
|
+
var ThemeContext = React41__namespace.createContext(null);
|
|
145
505
|
function ThemeProvider({
|
|
146
506
|
children,
|
|
147
507
|
defaultMode = "system",
|
|
148
508
|
storageKey = "rfr-theme",
|
|
149
509
|
attribute = "class"
|
|
150
510
|
}) {
|
|
151
|
-
const themeRef =
|
|
511
|
+
const themeRef = React41__namespace.useRef(null);
|
|
152
512
|
if (!themeRef.current) {
|
|
153
513
|
const isBrowser = typeof window !== "undefined";
|
|
154
514
|
themeRef.current = createTheme(
|
|
@@ -157,8 +517,8 @@ function ThemeProvider({
|
|
|
157
517
|
isBrowser ? createMediaQueryAdapter() : void 0
|
|
158
518
|
);
|
|
159
519
|
}
|
|
160
|
-
const [state, setState] =
|
|
161
|
-
|
|
520
|
+
const [state, setState] = React41__namespace.useState(() => themeRef.current.getState());
|
|
521
|
+
React41__namespace.useEffect(() => {
|
|
162
522
|
const theme = themeRef.current;
|
|
163
523
|
applyThemeToDOM(theme.getState().resolved, attribute);
|
|
164
524
|
const unsub = theme.subscribe((newState) => {
|
|
@@ -170,7 +530,7 @@ function ThemeProvider({
|
|
|
170
530
|
theme.destroy();
|
|
171
531
|
};
|
|
172
532
|
}, [attribute]);
|
|
173
|
-
const contextValue =
|
|
533
|
+
const contextValue = React41__namespace.useMemo(
|
|
174
534
|
() => ({
|
|
175
535
|
mode: state.mode,
|
|
176
536
|
resolved: state.resolved,
|
|
@@ -178,10 +538,10 @@ function ThemeProvider({
|
|
|
178
538
|
}),
|
|
179
539
|
[state.mode, state.resolved]
|
|
180
540
|
);
|
|
181
|
-
return
|
|
541
|
+
return React41__namespace.createElement(ThemeContext.Provider, { value: contextValue }, children);
|
|
182
542
|
}
|
|
183
543
|
function useTheme() {
|
|
184
|
-
const context =
|
|
544
|
+
const context = React41__namespace.useContext(ThemeContext);
|
|
185
545
|
if (!context) {
|
|
186
546
|
throw new Error("useTheme must be used within a <ThemeProvider>");
|
|
187
547
|
}
|
|
@@ -193,7 +553,7 @@ var modes = [
|
|
|
193
553
|
{ value: "system", label: "System", icon: "monitor" }
|
|
194
554
|
];
|
|
195
555
|
var icons = {
|
|
196
|
-
sun:
|
|
556
|
+
sun: React41__namespace.createElement(
|
|
197
557
|
"svg",
|
|
198
558
|
{
|
|
199
559
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -206,10 +566,10 @@ var icons = {
|
|
|
206
566
|
strokeLinecap: "round",
|
|
207
567
|
strokeLinejoin: "round"
|
|
208
568
|
},
|
|
209
|
-
|
|
210
|
-
|
|
569
|
+
React41__namespace.createElement("circle", { cx: 12, cy: 12, r: 5 }),
|
|
570
|
+
React41__namespace.createElement("path", { d: "M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42" })
|
|
211
571
|
),
|
|
212
|
-
moon:
|
|
572
|
+
moon: React41__namespace.createElement(
|
|
213
573
|
"svg",
|
|
214
574
|
{
|
|
215
575
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -222,9 +582,9 @@ var icons = {
|
|
|
222
582
|
strokeLinecap: "round",
|
|
223
583
|
strokeLinejoin: "round"
|
|
224
584
|
},
|
|
225
|
-
|
|
585
|
+
React41__namespace.createElement("path", { d: "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" })
|
|
226
586
|
),
|
|
227
|
-
monitor:
|
|
587
|
+
monitor: React41__namespace.createElement(
|
|
228
588
|
"svg",
|
|
229
589
|
{
|
|
230
590
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -237,15 +597,15 @@ var icons = {
|
|
|
237
597
|
strokeLinecap: "round",
|
|
238
598
|
strokeLinejoin: "round"
|
|
239
599
|
},
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
600
|
+
React41__namespace.createElement("rect", { x: 2, y: 3, width: 20, height: 14, rx: 2, ry: 2 }),
|
|
601
|
+
React41__namespace.createElement("line", { x1: 8, y1: 21, x2: 16, y2: 21 }),
|
|
602
|
+
React41__namespace.createElement("line", { x1: 12, y1: 17, x2: 12, y2: 21 })
|
|
243
603
|
)
|
|
244
604
|
};
|
|
245
605
|
function ThemeToggle({ className, variant = "segmented" }) {
|
|
246
606
|
const { mode, setMode } = useTheme();
|
|
247
607
|
if (variant === "segmented") {
|
|
248
|
-
return
|
|
608
|
+
return React41__namespace.createElement(
|
|
249
609
|
"div",
|
|
250
610
|
{
|
|
251
611
|
className: `inline-flex items-center gap-1 rounded-lg border p-1 ${className ?? ""}`,
|
|
@@ -253,7 +613,7 @@ function ThemeToggle({ className, variant = "segmented" }) {
|
|
|
253
613
|
"aria-label": "Theme"
|
|
254
614
|
},
|
|
255
615
|
modes.map(
|
|
256
|
-
({ value, label, icon }) =>
|
|
616
|
+
({ value, label, icon }) => React41__namespace.createElement("button", {
|
|
257
617
|
key: value,
|
|
258
618
|
type: "button",
|
|
259
619
|
role: "radio",
|
|
@@ -265,9 +625,9 @@ function ThemeToggle({ className, variant = "segmented" }) {
|
|
|
265
625
|
)
|
|
266
626
|
);
|
|
267
627
|
}
|
|
268
|
-
const [open, setOpen] =
|
|
269
|
-
const ref =
|
|
270
|
-
|
|
628
|
+
const [open, setOpen] = React41__namespace.useState(false);
|
|
629
|
+
const ref = React41__namespace.useRef(null);
|
|
630
|
+
React41__namespace.useEffect(() => {
|
|
271
631
|
if (!open) return;
|
|
272
632
|
const handler = (e) => {
|
|
273
633
|
if (ref.current && !ref.current.contains(e.target)) setOpen(false);
|
|
@@ -276,24 +636,24 @@ function ThemeToggle({ className, variant = "segmented" }) {
|
|
|
276
636
|
return () => document.removeEventListener("mousedown", handler);
|
|
277
637
|
}, [open]);
|
|
278
638
|
const currentIcon = modes.find((m) => m.value === mode)?.icon ?? "monitor";
|
|
279
|
-
return
|
|
639
|
+
return React41__namespace.createElement(
|
|
280
640
|
"div",
|
|
281
641
|
{ ref, className: `relative ${className ?? ""}` },
|
|
282
|
-
|
|
642
|
+
React41__namespace.createElement("button", {
|
|
283
643
|
type: "button",
|
|
284
644
|
"aria-label": "Toggle theme",
|
|
285
645
|
"aria-expanded": open,
|
|
286
646
|
className: "inline-flex items-center justify-center rounded-md p-2 text-sm transition-colors hover:bg-muted",
|
|
287
647
|
onClick: () => setOpen(!open)
|
|
288
648
|
}, icons[currentIcon]),
|
|
289
|
-
open &&
|
|
649
|
+
open && React41__namespace.createElement(
|
|
290
650
|
"div",
|
|
291
651
|
{
|
|
292
652
|
className: "absolute right-0 top-full mt-1 z-50 min-w-[8rem] rounded-md border bg-popover p-1 shadow-md",
|
|
293
653
|
role: "menu"
|
|
294
654
|
},
|
|
295
655
|
modes.map(
|
|
296
|
-
({ value, label, icon }) =>
|
|
656
|
+
({ value, label, icon }) => React41__namespace.createElement("button", {
|
|
297
657
|
key: value,
|
|
298
658
|
type: "button",
|
|
299
659
|
role: "menuitem",
|
|
@@ -311,7 +671,7 @@ function ThemeScript({
|
|
|
311
671
|
storageKey = "rfr-theme",
|
|
312
672
|
attribute = "class"
|
|
313
673
|
}) {
|
|
314
|
-
return
|
|
674
|
+
return React41__namespace.createElement("script", {
|
|
315
675
|
dangerouslySetInnerHTML: {
|
|
316
676
|
__html: getThemeScript(storageKey, attribute)
|
|
317
677
|
}
|
|
@@ -429,6 +789,105 @@ function cva(config) {
|
|
|
429
789
|
return classes.filter(Boolean).join(" ");
|
|
430
790
|
};
|
|
431
791
|
}
|
|
792
|
+
var AccordionContext = React41__namespace.createContext(null);
|
|
793
|
+
var Accordion = React41__namespace.forwardRef(
|
|
794
|
+
({ className, type = "single", collapsible, value: controlledValue, defaultValue, onValueChange, ...props }, ref) => {
|
|
795
|
+
const [uncontrolledValue, setUncontrolledValue] = React41__namespace.useState(
|
|
796
|
+
defaultValue ?? (type === "multiple" ? [] : "")
|
|
797
|
+
);
|
|
798
|
+
const value = controlledValue !== void 0 ? controlledValue : uncontrolledValue;
|
|
799
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
800
|
+
(itemValue) => {
|
|
801
|
+
if (type === "single") {
|
|
802
|
+
const newValue = value === itemValue && collapsible ? "" : itemValue;
|
|
803
|
+
setUncontrolledValue(newValue);
|
|
804
|
+
onValueChange?.(newValue);
|
|
805
|
+
} else {
|
|
806
|
+
const arrValue = Array.isArray(value) ? value : [];
|
|
807
|
+
const newValue = arrValue.includes(itemValue) ? arrValue.filter((v) => v !== itemValue) : [...arrValue, itemValue];
|
|
808
|
+
setUncontrolledValue(newValue);
|
|
809
|
+
onValueChange?.(newValue);
|
|
810
|
+
}
|
|
811
|
+
},
|
|
812
|
+
[type, collapsible, value, onValueChange]
|
|
813
|
+
);
|
|
814
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AccordionContext.Provider, { value: { type, value, onValueChange: handleValueChange }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex flex-col w-full", className), ...props }) });
|
|
815
|
+
}
|
|
816
|
+
);
|
|
817
|
+
Accordion.displayName = "Accordion";
|
|
818
|
+
var AccordionItemContext = React41__namespace.createContext(null);
|
|
819
|
+
var AccordionItem = React41__namespace.forwardRef(
|
|
820
|
+
({ className, value, ...props }, ref) => {
|
|
821
|
+
const context = React41__namespace.useContext(AccordionContext);
|
|
822
|
+
if (!context) throw new Error("AccordionItem must be within Accordion");
|
|
823
|
+
const isOpen = context.type === "single" ? context.value === value : Array.isArray(context.value) && context.value.includes(value);
|
|
824
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AccordionItemContext.Provider, { value: { value, isOpen }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("border-b border-border", className), "data-state": isOpen ? "open" : "closed", ...props }) });
|
|
825
|
+
}
|
|
826
|
+
);
|
|
827
|
+
AccordionItem.displayName = "AccordionItem";
|
|
828
|
+
var AccordionTrigger = React41__namespace.forwardRef(
|
|
829
|
+
({ className, children, ...props }, ref) => {
|
|
830
|
+
const accordionContext = React41__namespace.useContext(AccordionContext);
|
|
831
|
+
const itemContext = React41__namespace.useContext(AccordionItemContext);
|
|
832
|
+
if (!accordionContext || !itemContext) throw new Error("AccordionTrigger missing context");
|
|
833
|
+
return /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "flex m-0 p-0", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
834
|
+
"button",
|
|
835
|
+
{
|
|
836
|
+
ref,
|
|
837
|
+
type: "button",
|
|
838
|
+
"aria-expanded": itemContext.isOpen,
|
|
839
|
+
className: cn(
|
|
840
|
+
"flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",
|
|
841
|
+
className
|
|
842
|
+
),
|
|
843
|
+
"data-state": itemContext.isOpen ? "open" : "closed",
|
|
844
|
+
onClick: () => accordionContext.onValueChange(itemContext.value),
|
|
845
|
+
...props,
|
|
846
|
+
children: [
|
|
847
|
+
children,
|
|
848
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
849
|
+
"svg",
|
|
850
|
+
{
|
|
851
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
852
|
+
width: "24",
|
|
853
|
+
height: "24",
|
|
854
|
+
viewBox: "0 0 24 24",
|
|
855
|
+
fill: "none",
|
|
856
|
+
stroke: "currentColor",
|
|
857
|
+
strokeWidth: "2",
|
|
858
|
+
strokeLinecap: "round",
|
|
859
|
+
strokeLinejoin: "round",
|
|
860
|
+
className: "h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200",
|
|
861
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m6 9 6 6 6-6" })
|
|
862
|
+
}
|
|
863
|
+
)
|
|
864
|
+
]
|
|
865
|
+
}
|
|
866
|
+
) });
|
|
867
|
+
}
|
|
868
|
+
);
|
|
869
|
+
AccordionTrigger.displayName = "AccordionTrigger";
|
|
870
|
+
var AccordionContent = React41__namespace.forwardRef(
|
|
871
|
+
({ className, children, ...props }, ref) => {
|
|
872
|
+
const itemContext = React41__namespace.useContext(AccordionItemContext);
|
|
873
|
+
if (!itemContext) throw new Error("AccordionContent missing context");
|
|
874
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
875
|
+
"div",
|
|
876
|
+
{
|
|
877
|
+
ref,
|
|
878
|
+
className: cn(
|
|
879
|
+
"overflow-hidden text-sm",
|
|
880
|
+
className
|
|
881
|
+
),
|
|
882
|
+
"data-state": itemContext.isOpen ? "open" : "closed",
|
|
883
|
+
hidden: !itemContext.isOpen,
|
|
884
|
+
...props,
|
|
885
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pb-4 pt-0 text-muted-foreground leading-relaxed", children })
|
|
886
|
+
}
|
|
887
|
+
);
|
|
888
|
+
}
|
|
889
|
+
);
|
|
890
|
+
AccordionContent.displayName = "AccordionContent";
|
|
432
891
|
|
|
433
892
|
// ../animated-text/dist/index.js
|
|
434
893
|
function createAnimatedText(props) {
|
|
@@ -492,16 +951,16 @@ var typewriterVariants = cva({
|
|
|
492
951
|
cursor: "blinking"
|
|
493
952
|
}
|
|
494
953
|
});
|
|
495
|
-
var AnimatedText =
|
|
954
|
+
var AnimatedText = React41__namespace.forwardRef(
|
|
496
955
|
({ words, interval = 2500, transitionDuration = 1e3, className, ...props }, ref) => {
|
|
497
|
-
const apiRef =
|
|
956
|
+
const apiRef = React41__namespace.useRef(
|
|
498
957
|
createAnimatedText({ words})
|
|
499
958
|
);
|
|
500
959
|
const api = apiRef.current;
|
|
501
|
-
const [currentIndex, setCurrentIndex] =
|
|
502
|
-
const [isExiting, setIsExiting] =
|
|
960
|
+
const [currentIndex, setCurrentIndex] = React41__namespace.useState(0);
|
|
961
|
+
const [isExiting, setIsExiting] = React41__namespace.useState(false);
|
|
503
962
|
const prefersReducedMotion = typeof globalThis !== "undefined" && typeof globalThis.matchMedia === "function" && globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
504
|
-
|
|
963
|
+
React41__namespace.useEffect(() => {
|
|
505
964
|
if (words.length <= 1) return;
|
|
506
965
|
const tick = setInterval(() => {
|
|
507
966
|
if (prefersReducedMotion) {
|
|
@@ -537,13 +996,13 @@ var AnimatedText = React40__namespace.forwardRef(
|
|
|
537
996
|
}
|
|
538
997
|
);
|
|
539
998
|
AnimatedText.displayName = "AnimatedText";
|
|
540
|
-
var TypewriterText =
|
|
999
|
+
var TypewriterText = React41__namespace.forwardRef(
|
|
541
1000
|
({ text, speed = 50, startDelay = 0, className, ...props }, ref) => {
|
|
542
|
-
const apiRef =
|
|
1001
|
+
const apiRef = React41__namespace.useRef(createTypewriter({ text}));
|
|
543
1002
|
const api = apiRef.current;
|
|
544
|
-
const [currentIndex, setCurrentIndex] =
|
|
1003
|
+
const [currentIndex, setCurrentIndex] = React41__namespace.useState(0);
|
|
545
1004
|
const prefersReducedMotion = typeof globalThis !== "undefined" && typeof globalThis.matchMedia === "function" && globalThis.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
546
|
-
|
|
1005
|
+
React41__namespace.useEffect(() => {
|
|
547
1006
|
if (prefersReducedMotion) {
|
|
548
1007
|
api.state.currentIndex = text.length;
|
|
549
1008
|
setCurrentIndex(text.length);
|
|
@@ -702,116 +1161,26 @@ function getAssignableRoles(user) {
|
|
|
702
1161
|
if (hasRole(user, "reviewer")) return ["student"];
|
|
703
1162
|
return [];
|
|
704
1163
|
}
|
|
705
|
-
function createMockAdapter(initialUser) {
|
|
706
|
-
let currentUser = initialUser ?? null;
|
|
707
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
708
|
-
function notify() {
|
|
709
|
-
for (const fn of listeners) {
|
|
710
|
-
fn(currentUser);
|
|
711
|
-
}
|
|
712
|
-
}
|
|
713
|
-
return {
|
|
714
|
-
async signIn(email, _password) {
|
|
715
|
-
currentUser = {
|
|
716
|
-
uid: "mock-" + email,
|
|
717
|
-
email,
|
|
718
|
-
displayName: email.split("@")[0],
|
|
719
|
-
photoURL: null,
|
|
720
|
-
roles: ["student"]
|
|
721
|
-
};
|
|
722
|
-
notify();
|
|
723
|
-
return currentUser;
|
|
724
|
-
},
|
|
725
|
-
async signInWithOAuth(_provider) {
|
|
726
|
-
currentUser = {
|
|
727
|
-
uid: "mock-oauth",
|
|
728
|
-
email: "oauth@example.com",
|
|
729
|
-
displayName: "OAuth User",
|
|
730
|
-
photoURL: null,
|
|
731
|
-
roles: ["student"]
|
|
732
|
-
};
|
|
733
|
-
notify();
|
|
734
|
-
return currentUser;
|
|
735
|
-
},
|
|
736
|
-
async signUp(email, _password, displayName) {
|
|
737
|
-
currentUser = {
|
|
738
|
-
uid: "mock-" + email,
|
|
739
|
-
email,
|
|
740
|
-
displayName,
|
|
741
|
-
photoURL: null,
|
|
742
|
-
roles: ["student"]
|
|
743
|
-
};
|
|
744
|
-
notify();
|
|
745
|
-
return currentUser;
|
|
746
|
-
},
|
|
747
|
-
async signOut() {
|
|
748
|
-
currentUser = null;
|
|
749
|
-
notify();
|
|
750
|
-
},
|
|
751
|
-
async resetPassword(_email) {
|
|
752
|
-
},
|
|
753
|
-
async getToken() {
|
|
754
|
-
return currentUser ? "mock-token-" + currentUser.uid : null;
|
|
755
|
-
},
|
|
756
|
-
onAuthStateChange(callback) {
|
|
757
|
-
listeners.add(callback);
|
|
758
|
-
callback(currentUser);
|
|
759
|
-
return () => {
|
|
760
|
-
listeners.delete(callback);
|
|
761
|
-
};
|
|
762
|
-
}
|
|
763
|
-
};
|
|
764
|
-
}
|
|
765
|
-
function resolveAdapter(provider) {
|
|
766
|
-
const resolved = provider ?? detectProvider();
|
|
767
|
-
switch (resolved) {
|
|
768
|
-
case "firebase":
|
|
769
|
-
if (typeof console !== "undefined") {
|
|
770
|
-
console.warn("[refraction-ui/auth] Firebase adapter not yet implemented. Using mock adapter.");
|
|
771
|
-
}
|
|
772
|
-
return createMockAdapter();
|
|
773
|
-
case "supabase":
|
|
774
|
-
if (typeof console !== "undefined") {
|
|
775
|
-
console.warn("[refraction-ui/auth] Supabase adapter not yet implemented. Using mock adapter.");
|
|
776
|
-
}
|
|
777
|
-
return createMockAdapter();
|
|
778
|
-
case "mock":
|
|
779
|
-
return createMockAdapter();
|
|
780
|
-
case "none":
|
|
781
|
-
default:
|
|
782
|
-
return createMockAdapter();
|
|
783
|
-
}
|
|
784
|
-
}
|
|
785
|
-
function detectProvider() {
|
|
786
|
-
const env = typeof process !== "undefined" ? process.env : {};
|
|
787
|
-
const explicit = env["REFRACTION_AUTH_PROVIDER"];
|
|
788
|
-
if (explicit) return explicit;
|
|
789
|
-
if (env["FIREBASE_API_KEY"] || env["NEXT_PUBLIC_FIREBASE_API_KEY"]) {
|
|
790
|
-
return "firebase";
|
|
791
|
-
}
|
|
792
|
-
if (env["SUPABASE_URL"] || env["NEXT_PUBLIC_SUPABASE_URL"]) {
|
|
793
|
-
return "supabase";
|
|
794
|
-
}
|
|
795
|
-
return "none";
|
|
796
|
-
}
|
|
797
1164
|
|
|
798
1165
|
// ../react-auth/dist/index.js
|
|
799
|
-
var AuthContext =
|
|
1166
|
+
var AuthContext = React41__namespace.createContext(null);
|
|
800
1167
|
function AuthProvider({ children, ...config }) {
|
|
801
|
-
const authRef =
|
|
1168
|
+
const authRef = React41__namespace.useRef(null);
|
|
802
1169
|
if (!authRef.current) {
|
|
803
|
-
|
|
804
|
-
|
|
1170
|
+
if (!config.adapter) {
|
|
1171
|
+
throw new Error("[refraction-ui/react-auth] You must provide an `adapter` to AuthProvider.");
|
|
1172
|
+
}
|
|
1173
|
+
authRef.current = createAuth(config.adapter, config);
|
|
805
1174
|
}
|
|
806
|
-
const [state, setState] =
|
|
807
|
-
|
|
1175
|
+
const [state, setState] = React41__namespace.useState(() => authRef.current.getState());
|
|
1176
|
+
React41__namespace.useEffect(() => {
|
|
808
1177
|
const unsub = authRef.current.subscribe(setState);
|
|
809
1178
|
return () => {
|
|
810
1179
|
unsub();
|
|
811
1180
|
authRef.current.destroy();
|
|
812
1181
|
};
|
|
813
1182
|
}, []);
|
|
814
|
-
const value =
|
|
1183
|
+
const value = React41__namespace.useMemo(
|
|
815
1184
|
() => ({
|
|
816
1185
|
user: state.user,
|
|
817
1186
|
isLoading: state.status === "loading",
|
|
@@ -825,10 +1194,10 @@ function AuthProvider({ children, ...config }) {
|
|
|
825
1194
|
}),
|
|
826
1195
|
[state.user, state.status]
|
|
827
1196
|
);
|
|
828
|
-
return
|
|
1197
|
+
return React41__namespace.createElement(AuthContext.Provider, { value }, children);
|
|
829
1198
|
}
|
|
830
1199
|
function useAuth() {
|
|
831
|
-
const ctx =
|
|
1200
|
+
const ctx = React41__namespace.useContext(AuthContext);
|
|
832
1201
|
if (!ctx) {
|
|
833
1202
|
throw new Error("useAuth must be used within an <AuthProvider>");
|
|
834
1203
|
}
|
|
@@ -842,15 +1211,15 @@ function AuthGuard({
|
|
|
842
1211
|
}) {
|
|
843
1212
|
const { isLoading, isAuthenticated, user } = useAuth();
|
|
844
1213
|
if (isLoading) {
|
|
845
|
-
return
|
|
1214
|
+
return React41__namespace.createElement(React41__namespace.Fragment, null, fallback ?? null);
|
|
846
1215
|
}
|
|
847
1216
|
if (!isAuthenticated) {
|
|
848
|
-
return
|
|
1217
|
+
return React41__namespace.createElement(React41__namespace.Fragment, null, fallback ?? null);
|
|
849
1218
|
}
|
|
850
1219
|
if (roles && roles.length > 0 && !hasAnyRole(user, roles)) {
|
|
851
|
-
return
|
|
1220
|
+
return React41__namespace.createElement(React41__namespace.Fragment, null, unauthorized ?? null);
|
|
852
1221
|
}
|
|
853
|
-
return
|
|
1222
|
+
return React41__namespace.createElement(React41__namespace.Fragment, null, children);
|
|
854
1223
|
}
|
|
855
1224
|
|
|
856
1225
|
// ../badge/dist/index.js
|
|
@@ -890,7 +1259,7 @@ var badgeVariants = cva({
|
|
|
890
1259
|
size: "md"
|
|
891
1260
|
}
|
|
892
1261
|
});
|
|
893
|
-
var Badge =
|
|
1262
|
+
var Badge = React41__namespace.forwardRef(
|
|
894
1263
|
({ variant, size, className, children, ...props }, ref) => {
|
|
895
1264
|
const api = createBadge({ variant});
|
|
896
1265
|
const classes = cn(badgeVariants({ variant, size }), className);
|
|
@@ -937,7 +1306,7 @@ var bottomNavTabVariants = cva({
|
|
|
937
1306
|
active: "false"
|
|
938
1307
|
}
|
|
939
1308
|
});
|
|
940
|
-
var BottomNav =
|
|
1309
|
+
var BottomNav = React41__namespace.forwardRef(
|
|
941
1310
|
({ tabs = [], currentPath, className, ...props }, ref) => {
|
|
942
1311
|
const api = createBottomNav({ currentPath });
|
|
943
1312
|
const classes = cn(bottomNavVariants(), className);
|
|
@@ -995,7 +1364,7 @@ function createBreadcrumbs(props = {}) {
|
|
|
995
1364
|
};
|
|
996
1365
|
}
|
|
997
1366
|
var breadcrumbsVariants = cva({
|
|
998
|
-
base: "flex items-center gap-1.5 text-sm text-muted-foreground"
|
|
1367
|
+
base: "flex flex-wrap items-center gap-1.5 text-sm text-muted-foreground"
|
|
999
1368
|
});
|
|
1000
1369
|
var breadcrumbItemVariants = cva({
|
|
1001
1370
|
base: "transition-colors",
|
|
@@ -1010,7 +1379,7 @@ var breadcrumbItemVariants = cva({
|
|
|
1010
1379
|
}
|
|
1011
1380
|
});
|
|
1012
1381
|
var breadcrumbSeparatorStyles = "text-muted-foreground/50 select-none";
|
|
1013
|
-
var Breadcrumbs =
|
|
1382
|
+
var Breadcrumbs = React41__namespace.forwardRef(
|
|
1014
1383
|
({
|
|
1015
1384
|
pathname,
|
|
1016
1385
|
items,
|
|
@@ -1117,12 +1486,12 @@ var buttonVariants = cva({
|
|
|
1117
1486
|
size: "default"
|
|
1118
1487
|
}
|
|
1119
1488
|
});
|
|
1120
|
-
var Button =
|
|
1489
|
+
var Button = React41__namespace.forwardRef(
|
|
1121
1490
|
({ variant, size, loading, asChild, className, disabled, children, ...props }, ref) => {
|
|
1122
1491
|
const api = createButton({ disabled, loading, type: props.type });
|
|
1123
1492
|
const classes = cn(buttonVariants({ variant, size }), className);
|
|
1124
|
-
if (asChild &&
|
|
1125
|
-
return
|
|
1493
|
+
if (asChild && React41__namespace.isValidElement(children)) {
|
|
1494
|
+
return React41__namespace.cloneElement(children, {
|
|
1126
1495
|
ref,
|
|
1127
1496
|
className: cn(classes, children.props.className),
|
|
1128
1497
|
type: getButtonType({ type: props.type }),
|
|
@@ -1329,15 +1698,15 @@ function Calendar({
|
|
|
1329
1698
|
maxDate,
|
|
1330
1699
|
disabledDates
|
|
1331
1700
|
}) {
|
|
1332
|
-
const [uncontrolledValue, setUncontrolledValue] =
|
|
1333
|
-
const [uncontrolledMonth, setUncontrolledMonth] =
|
|
1701
|
+
const [uncontrolledValue, setUncontrolledValue] = React41__namespace.useState(defaultValue);
|
|
1702
|
+
const [uncontrolledMonth, setUncontrolledMonth] = React41__namespace.useState(
|
|
1334
1703
|
() => month ?? value ?? defaultValue ?? /* @__PURE__ */ new Date()
|
|
1335
1704
|
);
|
|
1336
1705
|
const isValueControlled = value !== void 0;
|
|
1337
1706
|
const isMonthControlled = month !== void 0;
|
|
1338
1707
|
const selectedValue = isValueControlled ? value : uncontrolledValue;
|
|
1339
1708
|
const displayMonth = isMonthControlled ? month : uncontrolledMonth;
|
|
1340
|
-
const handleSelect =
|
|
1709
|
+
const handleSelect = React41__namespace.useCallback(
|
|
1341
1710
|
(date) => {
|
|
1342
1711
|
if (!isValueControlled) {
|
|
1343
1712
|
setUncontrolledValue(date);
|
|
@@ -1346,7 +1715,7 @@ function Calendar({
|
|
|
1346
1715
|
},
|
|
1347
1716
|
[isValueControlled, onSelect]
|
|
1348
1717
|
);
|
|
1349
|
-
const handleMonthChange =
|
|
1718
|
+
const handleMonthChange = React41__namespace.useCallback(
|
|
1350
1719
|
(m) => {
|
|
1351
1720
|
if (!isMonthControlled) {
|
|
1352
1721
|
setUncontrolledMonth(m);
|
|
@@ -1372,28 +1741,28 @@ function Calendar({
|
|
|
1372
1741
|
return "default";
|
|
1373
1742
|
}
|
|
1374
1743
|
const monthLabel = `${MONTH_NAMES[api.state.currentMonth.getMonth()]} ${api.state.currentMonth.getFullYear()}`;
|
|
1375
|
-
return
|
|
1744
|
+
return React41__namespace.createElement(
|
|
1376
1745
|
"div",
|
|
1377
1746
|
{
|
|
1378
1747
|
className: cn(calendarVariants(), className),
|
|
1379
1748
|
...api.ariaProps
|
|
1380
1749
|
},
|
|
1381
1750
|
// Header row: prev, month label, next
|
|
1382
|
-
|
|
1751
|
+
React41__namespace.createElement(CalendarHeader, {
|
|
1383
1752
|
label: monthLabel,
|
|
1384
1753
|
labelId: api.ids.label,
|
|
1385
1754
|
onPrevMonth: api.prevMonth,
|
|
1386
1755
|
onNextMonth: api.nextMonth
|
|
1387
1756
|
}),
|
|
1388
1757
|
// Day-of-week headers
|
|
1389
|
-
|
|
1758
|
+
React41__namespace.createElement(
|
|
1390
1759
|
"div",
|
|
1391
1760
|
{
|
|
1392
1761
|
className: "grid grid-cols-7 gap-1 mb-1",
|
|
1393
1762
|
role: "row"
|
|
1394
1763
|
},
|
|
1395
1764
|
DAY_HEADERS.map(
|
|
1396
|
-
(d) =>
|
|
1765
|
+
(d) => React41__namespace.createElement(
|
|
1397
1766
|
"div",
|
|
1398
1767
|
{
|
|
1399
1768
|
key: d,
|
|
@@ -1406,7 +1775,7 @@ function Calendar({
|
|
|
1406
1775
|
)
|
|
1407
1776
|
),
|
|
1408
1777
|
// Day grid
|
|
1409
|
-
|
|
1778
|
+
React41__namespace.createElement(
|
|
1410
1779
|
"div",
|
|
1411
1780
|
{
|
|
1412
1781
|
className: "grid grid-cols-7 gap-1",
|
|
@@ -1415,7 +1784,7 @@ function Calendar({
|
|
|
1415
1784
|
api.days.map((day, i) => {
|
|
1416
1785
|
const dayAriaProps = api.getDayAriaProps(day);
|
|
1417
1786
|
const state = getDayState(day);
|
|
1418
|
-
return
|
|
1787
|
+
return React41__namespace.createElement(
|
|
1419
1788
|
"button",
|
|
1420
1789
|
{
|
|
1421
1790
|
key: i,
|
|
@@ -1439,12 +1808,12 @@ function CalendarHeader({
|
|
|
1439
1808
|
onNextMonth,
|
|
1440
1809
|
className
|
|
1441
1810
|
}) {
|
|
1442
|
-
return
|
|
1811
|
+
return React41__namespace.createElement(
|
|
1443
1812
|
"div",
|
|
1444
1813
|
{
|
|
1445
1814
|
className: cn("flex items-center justify-between mb-2", className)
|
|
1446
1815
|
},
|
|
1447
|
-
|
|
1816
|
+
React41__namespace.createElement(
|
|
1448
1817
|
"button",
|
|
1449
1818
|
{
|
|
1450
1819
|
type: "button",
|
|
@@ -1454,7 +1823,7 @@ function CalendarHeader({
|
|
|
1454
1823
|
},
|
|
1455
1824
|
"\u2039"
|
|
1456
1825
|
),
|
|
1457
|
-
|
|
1826
|
+
React41__namespace.createElement(
|
|
1458
1827
|
"div",
|
|
1459
1828
|
{
|
|
1460
1829
|
id: labelId,
|
|
@@ -1463,7 +1832,7 @@ function CalendarHeader({
|
|
|
1463
1832
|
},
|
|
1464
1833
|
label
|
|
1465
1834
|
),
|
|
1466
|
-
|
|
1835
|
+
React41__namespace.createElement(
|
|
1467
1836
|
"button",
|
|
1468
1837
|
{
|
|
1469
1838
|
type: "button",
|
|
@@ -1596,7 +1965,7 @@ var codeEditorVariants = cva({
|
|
|
1596
1965
|
size: "default"
|
|
1597
1966
|
}
|
|
1598
1967
|
});
|
|
1599
|
-
var CodeEditor =
|
|
1968
|
+
var CodeEditor = React41__namespace.forwardRef(
|
|
1600
1969
|
({
|
|
1601
1970
|
value = "",
|
|
1602
1971
|
onChange,
|
|
@@ -1712,9 +2081,9 @@ var collapsibleContentVariants = cva({
|
|
|
1712
2081
|
});
|
|
1713
2082
|
|
|
1714
2083
|
// ../react-collapsible/dist/index.js
|
|
1715
|
-
var CollapsibleContext =
|
|
2084
|
+
var CollapsibleContext = React41__namespace.createContext(null);
|
|
1716
2085
|
function useCollapsibleContext() {
|
|
1717
|
-
const ctx =
|
|
2086
|
+
const ctx = React41__namespace.useContext(CollapsibleContext);
|
|
1718
2087
|
if (!ctx) {
|
|
1719
2088
|
throw new Error(
|
|
1720
2089
|
"Collapsible compound components must be used within <Collapsible>"
|
|
@@ -1730,10 +2099,10 @@ function Collapsible({
|
|
|
1730
2099
|
children,
|
|
1731
2100
|
className
|
|
1732
2101
|
}) {
|
|
1733
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
2102
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React41__namespace.useState(defaultOpen);
|
|
1734
2103
|
const isControlled = controlledOpen !== void 0;
|
|
1735
2104
|
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
1736
|
-
const handleOpenChange =
|
|
2105
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
1737
2106
|
(next) => {
|
|
1738
2107
|
if (!isControlled) {
|
|
1739
2108
|
setUncontrolledOpen(next);
|
|
@@ -1742,12 +2111,12 @@ function Collapsible({
|
|
|
1742
2111
|
},
|
|
1743
2112
|
[isControlled, onOpenChange]
|
|
1744
2113
|
);
|
|
1745
|
-
const apiRef =
|
|
2114
|
+
const apiRef = React41__namespace.useRef(null);
|
|
1746
2115
|
if (apiRef.current === null) {
|
|
1747
2116
|
apiRef.current = createCollapsible({ open, defaultOpen, disabled });
|
|
1748
2117
|
}
|
|
1749
2118
|
const contentId = apiRef.current.contentProps.id;
|
|
1750
|
-
const ctx =
|
|
2119
|
+
const ctx = React41__namespace.useMemo(
|
|
1751
2120
|
() => ({
|
|
1752
2121
|
open,
|
|
1753
2122
|
onOpenChange: handleOpenChange,
|
|
@@ -1756,10 +2125,10 @@ function Collapsible({
|
|
|
1756
2125
|
}),
|
|
1757
2126
|
[open, handleOpenChange, disabled, contentId]
|
|
1758
2127
|
);
|
|
1759
|
-
return
|
|
2128
|
+
return React41__namespace.createElement(
|
|
1760
2129
|
CollapsibleContext.Provider,
|
|
1761
2130
|
{ value: ctx },
|
|
1762
|
-
|
|
2131
|
+
React41__namespace.createElement(
|
|
1763
2132
|
"div",
|
|
1764
2133
|
{
|
|
1765
2134
|
"data-state": open ? "open" : "closed",
|
|
@@ -1771,7 +2140,7 @@ function Collapsible({
|
|
|
1771
2140
|
);
|
|
1772
2141
|
}
|
|
1773
2142
|
Collapsible.displayName = "Collapsible";
|
|
1774
|
-
var CollapsibleTrigger =
|
|
2143
|
+
var CollapsibleTrigger = React41__namespace.forwardRef(({ onClick, disabled: disabledProp, children, ...props }, ref) => {
|
|
1775
2144
|
const { open, onOpenChange, disabled: ctxDisabled, contentId } = useCollapsibleContext();
|
|
1776
2145
|
const disabled = disabledProp ?? ctxDisabled;
|
|
1777
2146
|
const handleClick = (e) => {
|
|
@@ -1780,7 +2149,7 @@ var CollapsibleTrigger = React40__namespace.forwardRef(({ onClick, disabled: dis
|
|
|
1780
2149
|
}
|
|
1781
2150
|
onClick?.(e);
|
|
1782
2151
|
};
|
|
1783
|
-
return
|
|
2152
|
+
return React41__namespace.createElement(
|
|
1784
2153
|
"button",
|
|
1785
2154
|
{
|
|
1786
2155
|
ref,
|
|
@@ -1797,11 +2166,11 @@ var CollapsibleTrigger = React40__namespace.forwardRef(({ onClick, disabled: dis
|
|
|
1797
2166
|
);
|
|
1798
2167
|
});
|
|
1799
2168
|
CollapsibleTrigger.displayName = "CollapsibleTrigger";
|
|
1800
|
-
var CollapsibleContent =
|
|
2169
|
+
var CollapsibleContent = React41__namespace.forwardRef(({ className, children, ...props }, ref) => {
|
|
1801
2170
|
const { open, contentId } = useCollapsibleContext();
|
|
1802
2171
|
const dataState = open ? "open" : "closed";
|
|
1803
2172
|
if (!open) return null;
|
|
1804
|
-
return
|
|
2173
|
+
return React41__namespace.createElement(
|
|
1805
2174
|
"div",
|
|
1806
2175
|
{
|
|
1807
2176
|
ref,
|
|
@@ -1946,9 +2315,9 @@ var commandGroupVariants = cva({
|
|
|
1946
2315
|
});
|
|
1947
2316
|
|
|
1948
2317
|
// ../react-command/dist/index.js
|
|
1949
|
-
var CommandContext =
|
|
2318
|
+
var CommandContext = React41__namespace.createContext(null);
|
|
1950
2319
|
function useCommandContext() {
|
|
1951
|
-
const ctx =
|
|
2320
|
+
const ctx = React41__namespace.useContext(CommandContext);
|
|
1952
2321
|
if (!ctx) {
|
|
1953
2322
|
throw new Error("Command compound components must be used within <Command>");
|
|
1954
2323
|
}
|
|
@@ -1961,11 +2330,11 @@ function Command({
|
|
|
1961
2330
|
className,
|
|
1962
2331
|
children
|
|
1963
2332
|
}) {
|
|
1964
|
-
const [items, setItems] =
|
|
1965
|
-
const [search, setSearch] =
|
|
1966
|
-
const [selectedIndex, setSelectedIndex] =
|
|
1967
|
-
const apiRef =
|
|
1968
|
-
const api =
|
|
2333
|
+
const [items, setItems] = React41__namespace.useState([]);
|
|
2334
|
+
const [search, setSearch] = React41__namespace.useState("");
|
|
2335
|
+
const [selectedIndex, setSelectedIndex] = React41__namespace.useState(0);
|
|
2336
|
+
const apiRef = React41__namespace.useRef(null);
|
|
2337
|
+
const api = React41__namespace.useMemo(() => {
|
|
1969
2338
|
const instance = createCommand({ open, onOpenChange, filter }, items);
|
|
1970
2339
|
if (search) {
|
|
1971
2340
|
instance.search(search);
|
|
@@ -1974,23 +2343,23 @@ function Command({
|
|
|
1974
2343
|
return instance;
|
|
1975
2344
|
}, [open, onOpenChange, filter, items, search]);
|
|
1976
2345
|
const filteredItems = api.state.filteredItems;
|
|
1977
|
-
const handleSearch =
|
|
2346
|
+
const handleSearch = React41__namespace.useCallback((query) => {
|
|
1978
2347
|
setSearch(query);
|
|
1979
2348
|
setSelectedIndex(0);
|
|
1980
2349
|
}, []);
|
|
1981
|
-
const handleSelect =
|
|
2350
|
+
const handleSelect = React41__namespace.useCallback((index) => {
|
|
1982
2351
|
setSelectedIndex(index);
|
|
1983
2352
|
}, []);
|
|
1984
|
-
const registerItem =
|
|
2353
|
+
const registerItem = React41__namespace.useCallback((item) => {
|
|
1985
2354
|
setItems((prev) => {
|
|
1986
2355
|
if (prev.some((i) => i.id === item.id)) return prev;
|
|
1987
2356
|
return [...prev, item];
|
|
1988
2357
|
});
|
|
1989
2358
|
}, []);
|
|
1990
|
-
const unregisterItem =
|
|
2359
|
+
const unregisterItem = React41__namespace.useCallback((id) => {
|
|
1991
2360
|
setItems((prev) => prev.filter((i) => i.id !== id));
|
|
1992
2361
|
}, []);
|
|
1993
|
-
const handleKeyDown =
|
|
2362
|
+
const handleKeyDown = React41__namespace.useCallback(
|
|
1994
2363
|
(e) => {
|
|
1995
2364
|
const handler = createKeyboardHandler({
|
|
1996
2365
|
[Keys.ArrowDown]: (ev) => {
|
|
@@ -2017,7 +2386,7 @@ function Command({
|
|
|
2017
2386
|
},
|
|
2018
2387
|
[filteredItems.length, onOpenChange]
|
|
2019
2388
|
);
|
|
2020
|
-
const ctx =
|
|
2389
|
+
const ctx = React41__namespace.useMemo(
|
|
2021
2390
|
() => ({
|
|
2022
2391
|
search,
|
|
2023
2392
|
onSearch: handleSearch,
|
|
@@ -2032,10 +2401,10 @@ function Command({
|
|
|
2032
2401
|
}),
|
|
2033
2402
|
[search, handleSearch, selectedIndex, handleSelect, items, filteredItems, registerItem, unregisterItem, api.ids.list, api.ids.input]
|
|
2034
2403
|
);
|
|
2035
|
-
return
|
|
2404
|
+
return React41__namespace.createElement(
|
|
2036
2405
|
CommandContext.Provider,
|
|
2037
2406
|
{ value: ctx },
|
|
2038
|
-
|
|
2407
|
+
React41__namespace.createElement(
|
|
2039
2408
|
"div",
|
|
2040
2409
|
{
|
|
2041
2410
|
className: cn(commandVariants(), className),
|
|
@@ -2047,14 +2416,14 @@ function Command({
|
|
|
2047
2416
|
);
|
|
2048
2417
|
}
|
|
2049
2418
|
Command.displayName = "Command";
|
|
2050
|
-
var CommandInput =
|
|
2419
|
+
var CommandInput = React41__namespace.forwardRef(
|
|
2051
2420
|
({ className, onChange, ...props }, ref) => {
|
|
2052
2421
|
const { search, onSearch, inputId, listId } = useCommandContext();
|
|
2053
2422
|
const handleChange = (e) => {
|
|
2054
2423
|
onSearch(e.target.value);
|
|
2055
2424
|
onChange?.(e);
|
|
2056
2425
|
};
|
|
2057
|
-
return
|
|
2426
|
+
return React41__namespace.createElement("input", {
|
|
2058
2427
|
ref,
|
|
2059
2428
|
id: inputId,
|
|
2060
2429
|
type: "text",
|
|
@@ -2069,10 +2438,10 @@ var CommandInput = React40__namespace.forwardRef(
|
|
|
2069
2438
|
}
|
|
2070
2439
|
);
|
|
2071
2440
|
CommandInput.displayName = "CommandInput";
|
|
2072
|
-
var CommandList =
|
|
2441
|
+
var CommandList = React41__namespace.forwardRef(
|
|
2073
2442
|
({ className, children, ...props }, ref) => {
|
|
2074
2443
|
const { listId } = useCommandContext();
|
|
2075
|
-
return
|
|
2444
|
+
return React41__namespace.createElement(
|
|
2076
2445
|
"div",
|
|
2077
2446
|
{
|
|
2078
2447
|
ref,
|
|
@@ -2087,11 +2456,11 @@ var CommandList = React40__namespace.forwardRef(
|
|
|
2087
2456
|
}
|
|
2088
2457
|
);
|
|
2089
2458
|
CommandList.displayName = "CommandList";
|
|
2090
|
-
var CommandEmpty =
|
|
2459
|
+
var CommandEmpty = React41__namespace.forwardRef(
|
|
2091
2460
|
({ className, children, ...props }, ref) => {
|
|
2092
2461
|
const { filteredItems } = useCommandContext();
|
|
2093
2462
|
if (filteredItems.length > 0) return null;
|
|
2094
|
-
return
|
|
2463
|
+
return React41__namespace.createElement(
|
|
2095
2464
|
"div",
|
|
2096
2465
|
{
|
|
2097
2466
|
ref,
|
|
@@ -2104,9 +2473,9 @@ var CommandEmpty = React40__namespace.forwardRef(
|
|
|
2104
2473
|
}
|
|
2105
2474
|
);
|
|
2106
2475
|
CommandEmpty.displayName = "CommandEmpty";
|
|
2107
|
-
var CommandGroup =
|
|
2476
|
+
var CommandGroup = React41__namespace.forwardRef(
|
|
2108
2477
|
({ className, heading, children, ...props }, ref) => {
|
|
2109
|
-
return
|
|
2478
|
+
return React41__namespace.createElement(
|
|
2110
2479
|
"div",
|
|
2111
2480
|
{
|
|
2112
2481
|
ref,
|
|
@@ -2115,7 +2484,7 @@ var CommandGroup = React40__namespace.forwardRef(
|
|
|
2115
2484
|
"aria-label": heading,
|
|
2116
2485
|
...props
|
|
2117
2486
|
},
|
|
2118
|
-
heading ?
|
|
2487
|
+
heading ? React41__namespace.createElement(
|
|
2119
2488
|
"div",
|
|
2120
2489
|
{ className: "px-2 py-1.5 text-xs font-medium text-muted-foreground" },
|
|
2121
2490
|
heading
|
|
@@ -2125,10 +2494,10 @@ var CommandGroup = React40__namespace.forwardRef(
|
|
|
2125
2494
|
}
|
|
2126
2495
|
);
|
|
2127
2496
|
CommandGroup.displayName = "CommandGroup";
|
|
2128
|
-
var CommandItem =
|
|
2497
|
+
var CommandItem = React41__namespace.forwardRef(
|
|
2129
2498
|
({ className, value, disabled, onSelect: onItemSelect, children, ...props }, ref) => {
|
|
2130
2499
|
const state = disabled ? "disabled" : "default";
|
|
2131
|
-
return
|
|
2500
|
+
return React41__namespace.createElement(
|
|
2132
2501
|
"div",
|
|
2133
2502
|
{
|
|
2134
2503
|
ref,
|
|
@@ -2149,9 +2518,9 @@ var CommandItem = React40__namespace.forwardRef(
|
|
|
2149
2518
|
}
|
|
2150
2519
|
);
|
|
2151
2520
|
CommandItem.displayName = "CommandItem";
|
|
2152
|
-
var CommandSeparator =
|
|
2521
|
+
var CommandSeparator = React41__namespace.forwardRef(
|
|
2153
2522
|
({ className, ...props }, ref) => {
|
|
2154
|
-
return
|
|
2523
|
+
return React41__namespace.createElement("div", {
|
|
2155
2524
|
ref,
|
|
2156
2525
|
role: "separator",
|
|
2157
2526
|
className: cn("-mx-1 h-px bg-border", className),
|
|
@@ -2198,7 +2567,7 @@ var contentProtectionVariants = cva({
|
|
|
2198
2567
|
var watermarkVariants = cva({
|
|
2199
2568
|
base: "pointer-events-none absolute inset-0 z-50 overflow-hidden"
|
|
2200
2569
|
});
|
|
2201
|
-
var ContentProtection =
|
|
2570
|
+
var ContentProtection = React41__namespace.forwardRef(
|
|
2202
2571
|
({
|
|
2203
2572
|
enabled,
|
|
2204
2573
|
disableCopy,
|
|
@@ -2445,10 +2814,10 @@ function DataTable({
|
|
|
2445
2814
|
className,
|
|
2446
2815
|
emptyMessage = "No data available"
|
|
2447
2816
|
}) {
|
|
2448
|
-
const [sortBy, setSortBy] =
|
|
2449
|
-
const [sortDir, setSortDir] =
|
|
2450
|
-
const [filters, setFilters] =
|
|
2451
|
-
const api =
|
|
2817
|
+
const [sortBy, setSortBy] = React41__namespace.useState(controlledSortBy ?? null);
|
|
2818
|
+
const [sortDir, setSortDir] = React41__namespace.useState(controlledSortDir);
|
|
2819
|
+
const [filters, setFilters] = React41__namespace.useState(controlledFilters ?? {});
|
|
2820
|
+
const api = React41__namespace.useMemo(
|
|
2452
2821
|
() => createDataTable({
|
|
2453
2822
|
columns,
|
|
2454
2823
|
data,
|
|
@@ -2459,7 +2828,7 @@ function DataTable({
|
|
|
2459
2828
|
}),
|
|
2460
2829
|
[columns, data, sortBy, sortDir, onSort, filters]
|
|
2461
2830
|
);
|
|
2462
|
-
const handleSort =
|
|
2831
|
+
const handleSort = React41__namespace.useCallback(
|
|
2463
2832
|
(columnId) => {
|
|
2464
2833
|
const col = columns.find((c) => c.id === columnId);
|
|
2465
2834
|
if (!col?.sortable) return;
|
|
@@ -2473,7 +2842,7 @@ function DataTable({
|
|
|
2473
2842
|
},
|
|
2474
2843
|
[columns, sortBy, sortDir, onSort]
|
|
2475
2844
|
);
|
|
2476
|
-
const handleFilter =
|
|
2845
|
+
const handleFilter = React41__namespace.useCallback(
|
|
2477
2846
|
(columnId, value) => {
|
|
2478
2847
|
setFilters((prev) => ({ ...prev, [columnId]: value }));
|
|
2479
2848
|
},
|
|
@@ -2481,87 +2850,91 @@ function DataTable({
|
|
|
2481
2850
|
);
|
|
2482
2851
|
const sortedData = api.state.sortedData;
|
|
2483
2852
|
const hasFilterable = columns.some((c) => c.filterable);
|
|
2484
|
-
return
|
|
2485
|
-
"
|
|
2486
|
-
{
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
const headerProps = api.getHeaderProps(col);
|
|
2500
|
-
return React40__namespace.createElement(
|
|
2501
|
-
"th",
|
|
2502
|
-
{
|
|
2503
|
-
key: col.id,
|
|
2504
|
-
...headerProps,
|
|
2505
|
-
className: headerVariants({ sortable: col.sortable ? "true" : "false" }),
|
|
2506
|
-
onClick: col.sortable ? () => handleSort(col.id) : void 0
|
|
2507
|
-
},
|
|
2508
|
-
col.header,
|
|
2509
|
-
col.sortable && sortBy === col.id ? React40__namespace.createElement("span", { "aria-hidden": true }, sortDir === "asc" ? " \u2191" : " \u2193") : null
|
|
2510
|
-
);
|
|
2511
|
-
})
|
|
2512
|
-
),
|
|
2513
|
-
// Filter row
|
|
2514
|
-
hasFilterable ? React40__namespace.createElement(
|
|
2515
|
-
"tr",
|
|
2516
|
-
{ role: "row", "data-filter-row": "true" },
|
|
2517
|
-
...columns.map(
|
|
2518
|
-
(col) => React40__namespace.createElement(
|
|
2519
|
-
"th",
|
|
2520
|
-
{ key: `filter-${col.id}` },
|
|
2521
|
-
col.filterable ? React40__namespace.createElement("input", {
|
|
2522
|
-
type: "text",
|
|
2523
|
-
"aria-label": `Filter ${col.header}`,
|
|
2524
|
-
value: filters[col.id] ?? "",
|
|
2525
|
-
onChange: (e) => handleFilter(col.id, e.target.value),
|
|
2526
|
-
placeholder: `Filter...`
|
|
2527
|
-
}) : null
|
|
2528
|
-
)
|
|
2529
|
-
)
|
|
2530
|
-
) : null
|
|
2531
|
-
),
|
|
2532
|
-
// tbody
|
|
2533
|
-
React40__namespace.createElement(
|
|
2534
|
-
"tbody",
|
|
2535
|
-
null,
|
|
2536
|
-
sortedData.length === 0 ? React40__namespace.createElement(
|
|
2537
|
-
"tr",
|
|
2538
|
-
{ role: "row" },
|
|
2539
|
-
React40__namespace.createElement(
|
|
2540
|
-
"td",
|
|
2541
|
-
{
|
|
2542
|
-
colSpan: columns.length,
|
|
2543
|
-
className: "text-center p-4 text-muted-foreground",
|
|
2544
|
-
role: "cell"
|
|
2545
|
-
},
|
|
2546
|
-
emptyMessage
|
|
2547
|
-
)
|
|
2548
|
-
) : sortedData.map(
|
|
2549
|
-
(row, rowIndex) => React40__namespace.createElement(
|
|
2853
|
+
return React41__namespace.createElement(
|
|
2854
|
+
"div",
|
|
2855
|
+
{ className: "relative w-full overflow-auto" },
|
|
2856
|
+
React41__namespace.createElement(
|
|
2857
|
+
"table",
|
|
2858
|
+
{
|
|
2859
|
+
className: cn(tableVariants(), className),
|
|
2860
|
+
role: "table"
|
|
2861
|
+
},
|
|
2862
|
+
// thead
|
|
2863
|
+
React41__namespace.createElement(
|
|
2864
|
+
"thead",
|
|
2865
|
+
null,
|
|
2866
|
+
// Header row
|
|
2867
|
+
React41__namespace.createElement(
|
|
2550
2868
|
"tr",
|
|
2551
|
-
{
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2555
|
-
|
|
2556
|
-
...columns.map(
|
|
2557
|
-
(col) => React40__namespace.createElement(
|
|
2558
|
-
"td",
|
|
2869
|
+
{ role: "row" },
|
|
2870
|
+
...columns.map((col) => {
|
|
2871
|
+
const headerProps = api.getHeaderProps(col);
|
|
2872
|
+
return React41__namespace.createElement(
|
|
2873
|
+
"th",
|
|
2559
2874
|
{
|
|
2560
2875
|
key: col.id,
|
|
2561
|
-
...
|
|
2562
|
-
className:
|
|
2876
|
+
...headerProps,
|
|
2877
|
+
className: headerVariants({ sortable: col.sortable ? "true" : "false" }),
|
|
2878
|
+
onClick: col.sortable ? () => handleSort(col.id) : void 0
|
|
2563
2879
|
},
|
|
2564
|
-
|
|
2880
|
+
col.header,
|
|
2881
|
+
col.sortable && sortBy === col.id ? React41__namespace.createElement("span", { "aria-hidden": true }, sortDir === "asc" ? " \u2191" : " \u2193") : null
|
|
2882
|
+
);
|
|
2883
|
+
})
|
|
2884
|
+
),
|
|
2885
|
+
// Filter row
|
|
2886
|
+
hasFilterable ? React41__namespace.createElement(
|
|
2887
|
+
"tr",
|
|
2888
|
+
{ role: "row", "data-filter-row": "true" },
|
|
2889
|
+
...columns.map(
|
|
2890
|
+
(col) => React41__namespace.createElement(
|
|
2891
|
+
"th",
|
|
2892
|
+
{ key: `filter-${col.id}` },
|
|
2893
|
+
col.filterable ? React41__namespace.createElement("input", {
|
|
2894
|
+
type: "text",
|
|
2895
|
+
"aria-label": `Filter ${col.header}`,
|
|
2896
|
+
value: filters[col.id] ?? "",
|
|
2897
|
+
onChange: (e) => handleFilter(col.id, e.target.value),
|
|
2898
|
+
placeholder: `Filter...`
|
|
2899
|
+
}) : null
|
|
2900
|
+
)
|
|
2901
|
+
)
|
|
2902
|
+
) : null
|
|
2903
|
+
),
|
|
2904
|
+
// tbody
|
|
2905
|
+
React41__namespace.createElement(
|
|
2906
|
+
"tbody",
|
|
2907
|
+
null,
|
|
2908
|
+
sortedData.length === 0 ? React41__namespace.createElement(
|
|
2909
|
+
"tr",
|
|
2910
|
+
{ role: "row" },
|
|
2911
|
+
React41__namespace.createElement(
|
|
2912
|
+
"td",
|
|
2913
|
+
{
|
|
2914
|
+
colSpan: columns.length,
|
|
2915
|
+
className: "text-center p-4 text-muted-foreground",
|
|
2916
|
+
role: "cell"
|
|
2917
|
+
},
|
|
2918
|
+
emptyMessage
|
|
2919
|
+
)
|
|
2920
|
+
) : sortedData.map(
|
|
2921
|
+
(row, rowIndex) => React41__namespace.createElement(
|
|
2922
|
+
"tr",
|
|
2923
|
+
{
|
|
2924
|
+
key: rowIndex,
|
|
2925
|
+
...api.getRowProps(row, rowIndex),
|
|
2926
|
+
className: rowVariants()
|
|
2927
|
+
},
|
|
2928
|
+
...columns.map(
|
|
2929
|
+
(col) => React41__namespace.createElement(
|
|
2930
|
+
"td",
|
|
2931
|
+
{
|
|
2932
|
+
key: col.id,
|
|
2933
|
+
...api.getCellProps(col, row),
|
|
2934
|
+
className: cellVariants()
|
|
2935
|
+
},
|
|
2936
|
+
String(col.accessor(row) ?? "")
|
|
2937
|
+
)
|
|
2565
2938
|
)
|
|
2566
2939
|
)
|
|
2567
2940
|
)
|
|
@@ -2663,7 +3036,7 @@ function DeviceFrame({
|
|
|
2663
3036
|
children
|
|
2664
3037
|
}) {
|
|
2665
3038
|
const api = createDeviceFrame({ device, orientation });
|
|
2666
|
-
return
|
|
3039
|
+
return React41__namespace.createElement(
|
|
2667
3040
|
"div",
|
|
2668
3041
|
{
|
|
2669
3042
|
className: cn(deviceFrameVariants({ device, orientation }), className),
|
|
@@ -2675,13 +3048,13 @@ function DeviceFrame({
|
|
|
2675
3048
|
...api.dataAttributes
|
|
2676
3049
|
},
|
|
2677
3050
|
// Notch decoration
|
|
2678
|
-
api.dimensions.notch ?
|
|
3051
|
+
api.dimensions.notch ? React41__namespace.createElement("div", {
|
|
2679
3052
|
className: "absolute top-0 left-1/2 -translate-x-1/2 w-[40%] h-[30px] bg-black rounded-b-2xl z-10",
|
|
2680
3053
|
"aria-hidden": "true",
|
|
2681
3054
|
"data-part": "notch"
|
|
2682
3055
|
}) : null,
|
|
2683
3056
|
// Screen area
|
|
2684
|
-
|
|
3057
|
+
React41__namespace.createElement(
|
|
2685
3058
|
"div",
|
|
2686
3059
|
{
|
|
2687
3060
|
className: "relative w-full h-full overflow-hidden bg-white",
|
|
@@ -2690,7 +3063,7 @@ function DeviceFrame({
|
|
|
2690
3063
|
children
|
|
2691
3064
|
),
|
|
2692
3065
|
// Home indicator decoration
|
|
2693
|
-
api.dimensions.homeIndicator ?
|
|
3066
|
+
api.dimensions.homeIndicator ? React41__namespace.createElement("div", {
|
|
2694
3067
|
className: "absolute bottom-2 left-1/2 -translate-x-1/2 w-[35%] h-[5px] bg-gray-300 rounded-full z-10",
|
|
2695
3068
|
"aria-hidden": "true",
|
|
2696
3069
|
"data-part": "home-indicator"
|
|
@@ -2779,9 +3152,9 @@ var dialogContentVariants = cva({
|
|
|
2779
3152
|
});
|
|
2780
3153
|
|
|
2781
3154
|
// ../react-dialog/dist/index.js
|
|
2782
|
-
var DialogContext =
|
|
3155
|
+
var DialogContext = React41__namespace.createContext(null);
|
|
2783
3156
|
function useDialogContext() {
|
|
2784
|
-
const ctx =
|
|
3157
|
+
const ctx = React41__namespace.useContext(DialogContext);
|
|
2785
3158
|
if (!ctx) {
|
|
2786
3159
|
throw new Error("Dialog compound components must be used within <Dialog>");
|
|
2787
3160
|
}
|
|
@@ -2794,10 +3167,10 @@ function Dialog({
|
|
|
2794
3167
|
modal = true,
|
|
2795
3168
|
children
|
|
2796
3169
|
}) {
|
|
2797
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
3170
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React41__namespace.useState(defaultOpen);
|
|
2798
3171
|
const isControlled = controlledOpen !== void 0;
|
|
2799
3172
|
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
2800
|
-
const handleOpenChange =
|
|
3173
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
2801
3174
|
(next) => {
|
|
2802
3175
|
if (!isControlled) {
|
|
2803
3176
|
setUncontrolledOpen(next);
|
|
@@ -2806,12 +3179,12 @@ function Dialog({
|
|
|
2806
3179
|
},
|
|
2807
3180
|
[isControlled, onOpenChange]
|
|
2808
3181
|
);
|
|
2809
|
-
const apiRef =
|
|
3182
|
+
const apiRef = React41__namespace.useRef(null);
|
|
2810
3183
|
if (apiRef.current === null) {
|
|
2811
3184
|
apiRef.current = createDialog({ open, modal });
|
|
2812
3185
|
}
|
|
2813
3186
|
const api = apiRef.current;
|
|
2814
|
-
const ctx =
|
|
3187
|
+
const ctx = React41__namespace.useMemo(
|
|
2815
3188
|
() => ({
|
|
2816
3189
|
open,
|
|
2817
3190
|
onOpenChange: handleOpenChange,
|
|
@@ -2822,17 +3195,17 @@ function Dialog({
|
|
|
2822
3195
|
}),
|
|
2823
3196
|
[open, handleOpenChange, modal, api.ids.content, api.ids.title, api.ids.description]
|
|
2824
3197
|
);
|
|
2825
|
-
return
|
|
3198
|
+
return React41__namespace.createElement(DialogContext.Provider, { value: ctx }, children);
|
|
2826
3199
|
}
|
|
2827
3200
|
Dialog.displayName = "Dialog";
|
|
2828
|
-
var DialogTrigger =
|
|
3201
|
+
var DialogTrigger = React41__namespace.forwardRef(
|
|
2829
3202
|
({ onClick, children, ...props }, ref) => {
|
|
2830
3203
|
const { open, onOpenChange, contentId } = useDialogContext();
|
|
2831
3204
|
const handleClick = (e) => {
|
|
2832
3205
|
onOpenChange(!open);
|
|
2833
3206
|
onClick?.(e);
|
|
2834
3207
|
};
|
|
2835
|
-
return
|
|
3208
|
+
return React41__namespace.createElement(
|
|
2836
3209
|
"button",
|
|
2837
3210
|
{
|
|
2838
3211
|
ref,
|
|
@@ -2848,7 +3221,7 @@ var DialogTrigger = React40__namespace.forwardRef(
|
|
|
2848
3221
|
}
|
|
2849
3222
|
);
|
|
2850
3223
|
DialogTrigger.displayName = "DialogTrigger";
|
|
2851
|
-
var DialogOverlay =
|
|
3224
|
+
var DialogOverlay = React41__namespace.forwardRef(
|
|
2852
3225
|
({ className, onClick, ...props }, ref) => {
|
|
2853
3226
|
const { open, onOpenChange } = useDialogContext();
|
|
2854
3227
|
if (!open) return null;
|
|
@@ -2858,7 +3231,7 @@ var DialogOverlay = React40__namespace.forwardRef(
|
|
|
2858
3231
|
}
|
|
2859
3232
|
onClick?.(e);
|
|
2860
3233
|
};
|
|
2861
|
-
return
|
|
3234
|
+
return React41__namespace.createElement("div", {
|
|
2862
3235
|
ref,
|
|
2863
3236
|
className: cn(overlayStyles, className),
|
|
2864
3237
|
"data-state": open ? "open" : "closed",
|
|
@@ -2868,10 +3241,10 @@ var DialogOverlay = React40__namespace.forwardRef(
|
|
|
2868
3241
|
}
|
|
2869
3242
|
);
|
|
2870
3243
|
DialogOverlay.displayName = "DialogOverlay";
|
|
2871
|
-
var DialogContent =
|
|
3244
|
+
var DialogContent = React41__namespace.forwardRef(
|
|
2872
3245
|
({ className, children, onKeyDown, ...props }, ref) => {
|
|
2873
3246
|
const { open, onOpenChange, modal, contentId, titleId, descriptionId } = useDialogContext();
|
|
2874
|
-
|
|
3247
|
+
React41__namespace.useMemo(
|
|
2875
3248
|
() => createDialog({ open, modal }),
|
|
2876
3249
|
[open, modal]
|
|
2877
3250
|
);
|
|
@@ -2886,7 +3259,7 @@ var DialogContent = React40__namespace.forwardRef(
|
|
|
2886
3259
|
onKeyDown?.(e);
|
|
2887
3260
|
};
|
|
2888
3261
|
if (!open) return null;
|
|
2889
|
-
const content =
|
|
3262
|
+
const content = React41__namespace.createElement(
|
|
2890
3263
|
"div",
|
|
2891
3264
|
{
|
|
2892
3265
|
ref,
|
|
@@ -2909,9 +3282,9 @@ var DialogContent = React40__namespace.forwardRef(
|
|
|
2909
3282
|
}
|
|
2910
3283
|
);
|
|
2911
3284
|
DialogContent.displayName = "DialogContent";
|
|
2912
|
-
var DialogHeader =
|
|
3285
|
+
var DialogHeader = React41__namespace.forwardRef(
|
|
2913
3286
|
({ className, ...props }, ref) => {
|
|
2914
|
-
return
|
|
3287
|
+
return React41__namespace.createElement("div", {
|
|
2915
3288
|
ref,
|
|
2916
3289
|
className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className),
|
|
2917
3290
|
...props
|
|
@@ -2919,9 +3292,9 @@ var DialogHeader = React40__namespace.forwardRef(
|
|
|
2919
3292
|
}
|
|
2920
3293
|
);
|
|
2921
3294
|
DialogHeader.displayName = "DialogHeader";
|
|
2922
|
-
var DialogFooter =
|
|
3295
|
+
var DialogFooter = React41__namespace.forwardRef(
|
|
2923
3296
|
({ className, ...props }, ref) => {
|
|
2924
|
-
return
|
|
3297
|
+
return React41__namespace.createElement("div", {
|
|
2925
3298
|
ref,
|
|
2926
3299
|
className: cn(
|
|
2927
3300
|
"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
|
|
@@ -2932,10 +3305,10 @@ var DialogFooter = React40__namespace.forwardRef(
|
|
|
2932
3305
|
}
|
|
2933
3306
|
);
|
|
2934
3307
|
DialogFooter.displayName = "DialogFooter";
|
|
2935
|
-
var DialogTitle =
|
|
3308
|
+
var DialogTitle = React41__namespace.forwardRef(
|
|
2936
3309
|
({ className, ...props }, ref) => {
|
|
2937
3310
|
const { titleId } = useDialogContext();
|
|
2938
|
-
return
|
|
3311
|
+
return React41__namespace.createElement("h2", {
|
|
2939
3312
|
ref,
|
|
2940
3313
|
id: titleId,
|
|
2941
3314
|
className: cn("text-lg font-semibold leading-none tracking-tight", className),
|
|
@@ -2944,9 +3317,9 @@ var DialogTitle = React40__namespace.forwardRef(
|
|
|
2944
3317
|
}
|
|
2945
3318
|
);
|
|
2946
3319
|
DialogTitle.displayName = "DialogTitle";
|
|
2947
|
-
var DialogDescription =
|
|
3320
|
+
var DialogDescription = React41__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
2948
3321
|
const { descriptionId } = useDialogContext();
|
|
2949
|
-
return
|
|
3322
|
+
return React41__namespace.createElement("p", {
|
|
2950
3323
|
ref,
|
|
2951
3324
|
id: descriptionId,
|
|
2952
3325
|
className: cn("text-sm text-muted-foreground", className),
|
|
@@ -2954,14 +3327,14 @@ var DialogDescription = React40__namespace.forwardRef(({ className, ...props },
|
|
|
2954
3327
|
});
|
|
2955
3328
|
});
|
|
2956
3329
|
DialogDescription.displayName = "DialogDescription";
|
|
2957
|
-
var DialogClose =
|
|
3330
|
+
var DialogClose = React41__namespace.forwardRef(
|
|
2958
3331
|
({ onClick, children, ...props }, ref) => {
|
|
2959
3332
|
const { onOpenChange } = useDialogContext();
|
|
2960
3333
|
const handleClick = (e) => {
|
|
2961
3334
|
onOpenChange(false);
|
|
2962
3335
|
onClick?.(e);
|
|
2963
3336
|
};
|
|
2964
|
-
return
|
|
3337
|
+
return React41__namespace.createElement(
|
|
2965
3338
|
"button",
|
|
2966
3339
|
{
|
|
2967
3340
|
ref,
|
|
@@ -3066,9 +3439,9 @@ var menuItemVariants = cva({
|
|
|
3066
3439
|
});
|
|
3067
3440
|
|
|
3068
3441
|
// ../react-dropdown-menu/dist/index.js
|
|
3069
|
-
var DropdownMenuContext =
|
|
3442
|
+
var DropdownMenuContext = React41__namespace.createContext(null);
|
|
3070
3443
|
function useDropdownMenuContext() {
|
|
3071
|
-
const ctx =
|
|
3444
|
+
const ctx = React41__namespace.useContext(DropdownMenuContext);
|
|
3072
3445
|
if (!ctx) {
|
|
3073
3446
|
throw new Error("DropdownMenu compound components must be used within <DropdownMenu>");
|
|
3074
3447
|
}
|
|
@@ -3080,10 +3453,10 @@ function DropdownMenu({
|
|
|
3080
3453
|
onOpenChange,
|
|
3081
3454
|
children
|
|
3082
3455
|
}) {
|
|
3083
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
3456
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React41__namespace.useState(defaultOpen);
|
|
3084
3457
|
const isControlled = controlledOpen !== void 0;
|
|
3085
3458
|
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
3086
|
-
const handleOpenChange =
|
|
3459
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
3087
3460
|
(next) => {
|
|
3088
3461
|
if (!isControlled) {
|
|
3089
3462
|
setUncontrolledOpen(next);
|
|
@@ -3092,12 +3465,12 @@ function DropdownMenu({
|
|
|
3092
3465
|
},
|
|
3093
3466
|
[isControlled, onOpenChange]
|
|
3094
3467
|
);
|
|
3095
|
-
const apiRef =
|
|
3468
|
+
const apiRef = React41__namespace.useRef(null);
|
|
3096
3469
|
if (apiRef.current === null) {
|
|
3097
3470
|
apiRef.current = createDropdownMenu({ open });
|
|
3098
3471
|
}
|
|
3099
3472
|
const api = apiRef.current;
|
|
3100
|
-
const ctx =
|
|
3473
|
+
const ctx = React41__namespace.useMemo(
|
|
3101
3474
|
() => ({
|
|
3102
3475
|
open,
|
|
3103
3476
|
onOpenChange: handleOpenChange,
|
|
@@ -3105,17 +3478,17 @@ function DropdownMenu({
|
|
|
3105
3478
|
}),
|
|
3106
3479
|
[open, handleOpenChange, api.ids.content]
|
|
3107
3480
|
);
|
|
3108
|
-
return
|
|
3481
|
+
return React41__namespace.createElement(DropdownMenuContext.Provider, { value: ctx }, children);
|
|
3109
3482
|
}
|
|
3110
3483
|
DropdownMenu.displayName = "DropdownMenu";
|
|
3111
|
-
var DropdownMenuTrigger =
|
|
3484
|
+
var DropdownMenuTrigger = React41__namespace.forwardRef(
|
|
3112
3485
|
({ onClick, children, ...props }, ref) => {
|
|
3113
3486
|
const { open, onOpenChange, contentId } = useDropdownMenuContext();
|
|
3114
3487
|
const handleClick = (e) => {
|
|
3115
3488
|
onOpenChange(!open);
|
|
3116
3489
|
onClick?.(e);
|
|
3117
3490
|
};
|
|
3118
|
-
return
|
|
3491
|
+
return React41__namespace.createElement(
|
|
3119
3492
|
"button",
|
|
3120
3493
|
{
|
|
3121
3494
|
ref,
|
|
@@ -3131,7 +3504,7 @@ var DropdownMenuTrigger = React40__namespace.forwardRef(
|
|
|
3131
3504
|
}
|
|
3132
3505
|
);
|
|
3133
3506
|
DropdownMenuTrigger.displayName = "DropdownMenuTrigger";
|
|
3134
|
-
var DropdownMenuContent =
|
|
3507
|
+
var DropdownMenuContent = React41__namespace.forwardRef(
|
|
3135
3508
|
({ className, children, onKeyDown, ...props }, ref) => {
|
|
3136
3509
|
const { open, onOpenChange, contentId } = useDropdownMenuContext();
|
|
3137
3510
|
const handleKeyDown = (e) => {
|
|
@@ -3145,7 +3518,7 @@ var DropdownMenuContent = React40__namespace.forwardRef(
|
|
|
3145
3518
|
onKeyDown?.(e);
|
|
3146
3519
|
};
|
|
3147
3520
|
if (!open) return null;
|
|
3148
|
-
const content =
|
|
3521
|
+
const content = React41__namespace.createElement(
|
|
3149
3522
|
"div",
|
|
3150
3523
|
{
|
|
3151
3524
|
ref,
|
|
@@ -3166,7 +3539,7 @@ var DropdownMenuContent = React40__namespace.forwardRef(
|
|
|
3166
3539
|
}
|
|
3167
3540
|
);
|
|
3168
3541
|
DropdownMenuContent.displayName = "DropdownMenuContent";
|
|
3169
|
-
var DropdownMenuItem =
|
|
3542
|
+
var DropdownMenuItem = React41__namespace.forwardRef(
|
|
3170
3543
|
({ className, disabled, onSelect, onClick, children, ...props }, ref) => {
|
|
3171
3544
|
const { onOpenChange } = useDropdownMenuContext();
|
|
3172
3545
|
const handleClick = (e) => {
|
|
@@ -3183,7 +3556,7 @@ var DropdownMenuItem = React40__namespace.forwardRef(
|
|
|
3183
3556
|
onOpenChange(false);
|
|
3184
3557
|
}
|
|
3185
3558
|
};
|
|
3186
|
-
return
|
|
3559
|
+
return React41__namespace.createElement(
|
|
3187
3560
|
"div",
|
|
3188
3561
|
{
|
|
3189
3562
|
ref,
|
|
@@ -3201,9 +3574,9 @@ var DropdownMenuItem = React40__namespace.forwardRef(
|
|
|
3201
3574
|
}
|
|
3202
3575
|
);
|
|
3203
3576
|
DropdownMenuItem.displayName = "DropdownMenuItem";
|
|
3204
|
-
var DropdownMenuSeparator =
|
|
3577
|
+
var DropdownMenuSeparator = React41__namespace.forwardRef(
|
|
3205
3578
|
({ className, ...props }, ref) => {
|
|
3206
|
-
return
|
|
3579
|
+
return React41__namespace.createElement("div", {
|
|
3207
3580
|
ref,
|
|
3208
3581
|
role: "separator",
|
|
3209
3582
|
className: cn("-mx-1 my-1 h-px bg-muted", className),
|
|
@@ -3212,9 +3585,9 @@ var DropdownMenuSeparator = React40__namespace.forwardRef(
|
|
|
3212
3585
|
}
|
|
3213
3586
|
);
|
|
3214
3587
|
DropdownMenuSeparator.displayName = "DropdownMenuSeparator";
|
|
3215
|
-
var DropdownMenuLabel =
|
|
3588
|
+
var DropdownMenuLabel = React41__namespace.forwardRef(
|
|
3216
3589
|
({ className, ...props }, ref) => {
|
|
3217
|
-
return
|
|
3590
|
+
return React41__namespace.createElement("div", {
|
|
3218
3591
|
ref,
|
|
3219
3592
|
className: cn("px-2 py-1.5 text-sm font-semibold", className),
|
|
3220
3593
|
...props
|
|
@@ -3326,15 +3699,15 @@ function FeedbackDialog({
|
|
|
3326
3699
|
type = "general",
|
|
3327
3700
|
className
|
|
3328
3701
|
}) {
|
|
3329
|
-
const [open, setOpen] =
|
|
3330
|
-
const [comment, setComment] =
|
|
3331
|
-
const [email, setEmail] =
|
|
3332
|
-
const [honeypot, setHoneypot] =
|
|
3333
|
-
const [isSubmitting, setIsSubmitting] =
|
|
3334
|
-
const [isSubmitted, setIsSubmitted] =
|
|
3702
|
+
const [open, setOpen] = React41__namespace.useState(controlledOpen ?? false);
|
|
3703
|
+
const [comment, setComment] = React41__namespace.useState("");
|
|
3704
|
+
const [email, setEmail] = React41__namespace.useState("");
|
|
3705
|
+
const [honeypot, setHoneypot] = React41__namespace.useState("");
|
|
3706
|
+
const [isSubmitting, setIsSubmitting] = React41__namespace.useState(false);
|
|
3707
|
+
const [isSubmitted, setIsSubmitted] = React41__namespace.useState(false);
|
|
3335
3708
|
const isControlled = controlledOpen !== void 0;
|
|
3336
3709
|
const isOpen = isControlled ? controlledOpen : open;
|
|
3337
|
-
const handleOpenChange =
|
|
3710
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
3338
3711
|
(next) => {
|
|
3339
3712
|
if (!isControlled) {
|
|
3340
3713
|
setOpen(next);
|
|
@@ -3343,11 +3716,11 @@ function FeedbackDialog({
|
|
|
3343
3716
|
},
|
|
3344
3717
|
[isControlled, onOpenChange]
|
|
3345
3718
|
);
|
|
3346
|
-
const apiRef =
|
|
3719
|
+
const apiRef = React41__namespace.useRef(null);
|
|
3347
3720
|
if (apiRef.current === null) {
|
|
3348
3721
|
apiRef.current = createFeedbackDialog({ open: isOpen, onOpenChange: handleOpenChange, onSubmit, type });
|
|
3349
3722
|
}
|
|
3350
|
-
const handleSubmit =
|
|
3723
|
+
const handleSubmit = React41__namespace.useCallback(async () => {
|
|
3351
3724
|
if (honeypot) return;
|
|
3352
3725
|
if (!comment.trim()) return;
|
|
3353
3726
|
setIsSubmitting(true);
|
|
@@ -3364,7 +3737,7 @@ function FeedbackDialog({
|
|
|
3364
3737
|
setIsSubmitting(false);
|
|
3365
3738
|
}
|
|
3366
3739
|
}, [comment, email, honeypot, type, onSubmit]);
|
|
3367
|
-
const handleReset =
|
|
3740
|
+
const handleReset = React41__namespace.useCallback(() => {
|
|
3368
3741
|
setComment("");
|
|
3369
3742
|
setEmail("");
|
|
3370
3743
|
setHoneypot("");
|
|
@@ -3374,15 +3747,15 @@ function FeedbackDialog({
|
|
|
3374
3747
|
if (!isOpen) return null;
|
|
3375
3748
|
const api = apiRef.current;
|
|
3376
3749
|
if (isSubmitted) {
|
|
3377
|
-
return
|
|
3750
|
+
return React41__namespace.createElement(
|
|
3378
3751
|
"div",
|
|
3379
3752
|
{
|
|
3380
3753
|
className: cn(feedbackDialogVariants({ type }), className),
|
|
3381
3754
|
...api.ariaProps,
|
|
3382
3755
|
"data-state": "submitted"
|
|
3383
3756
|
},
|
|
3384
|
-
|
|
3385
|
-
|
|
3757
|
+
React41__namespace.createElement("p", { "data-testid": "success-message" }, "Thank you for your feedback!"),
|
|
3758
|
+
React41__namespace.createElement(
|
|
3386
3759
|
"button",
|
|
3387
3760
|
{
|
|
3388
3761
|
type: "button",
|
|
@@ -3395,22 +3768,22 @@ function FeedbackDialog({
|
|
|
3395
3768
|
)
|
|
3396
3769
|
);
|
|
3397
3770
|
}
|
|
3398
|
-
return
|
|
3771
|
+
return React41__namespace.createElement(
|
|
3399
3772
|
"div",
|
|
3400
3773
|
{
|
|
3401
3774
|
className: cn(feedbackDialogVariants({ type }), className),
|
|
3402
3775
|
...api.ariaProps,
|
|
3403
3776
|
"data-state": "open"
|
|
3404
3777
|
},
|
|
3405
|
-
|
|
3406
|
-
|
|
3778
|
+
React41__namespace.createElement("h2", { id: `${api.ariaProps.id}-title` }, "Send Feedback"),
|
|
3779
|
+
React41__namespace.createElement("textarea", {
|
|
3407
3780
|
"aria-label": "Feedback comment",
|
|
3408
3781
|
value: comment,
|
|
3409
3782
|
onChange: (e) => setComment(e.target.value),
|
|
3410
3783
|
placeholder: "Your feedback...",
|
|
3411
3784
|
disabled: isSubmitting
|
|
3412
3785
|
}),
|
|
3413
|
-
|
|
3786
|
+
React41__namespace.createElement("input", {
|
|
3414
3787
|
type: "email",
|
|
3415
3788
|
"aria-label": "Email",
|
|
3416
3789
|
value: email,
|
|
@@ -3419,7 +3792,7 @@ function FeedbackDialog({
|
|
|
3419
3792
|
disabled: isSubmitting
|
|
3420
3793
|
}),
|
|
3421
3794
|
// Honeypot field — hidden from real users
|
|
3422
|
-
|
|
3795
|
+
React41__namespace.createElement("input", {
|
|
3423
3796
|
type: "text",
|
|
3424
3797
|
"aria-hidden": true,
|
|
3425
3798
|
tabIndex: -1,
|
|
@@ -3429,7 +3802,7 @@ function FeedbackDialog({
|
|
|
3429
3802
|
autoComplete: "off",
|
|
3430
3803
|
name: "website"
|
|
3431
3804
|
}),
|
|
3432
|
-
|
|
3805
|
+
React41__namespace.createElement(
|
|
3433
3806
|
"button",
|
|
3434
3807
|
{
|
|
3435
3808
|
type: "button",
|
|
@@ -3441,9 +3814,9 @@ function FeedbackDialog({
|
|
|
3441
3814
|
);
|
|
3442
3815
|
}
|
|
3443
3816
|
FeedbackDialog.displayName = "FeedbackDialog";
|
|
3444
|
-
var FeedbackButton =
|
|
3817
|
+
var FeedbackButton = React41__namespace.forwardRef(
|
|
3445
3818
|
({ children, ...props }, ref) => {
|
|
3446
|
-
return
|
|
3819
|
+
return React41__namespace.createElement(
|
|
3447
3820
|
"button",
|
|
3448
3821
|
{
|
|
3449
3822
|
ref,
|
|
@@ -3470,7 +3843,7 @@ function createFooter(props = {}) {
|
|
|
3470
3843
|
var footerVariants = cva({
|
|
3471
3844
|
base: "border-t bg-background py-8"
|
|
3472
3845
|
});
|
|
3473
|
-
var Footer =
|
|
3846
|
+
var Footer = React41__namespace.forwardRef(
|
|
3474
3847
|
({
|
|
3475
3848
|
copyright,
|
|
3476
3849
|
socialLinks = [],
|
|
@@ -3608,34 +3981,34 @@ function InlineEditor({
|
|
|
3608
3981
|
onCancel,
|
|
3609
3982
|
className
|
|
3610
3983
|
}) {
|
|
3611
|
-
const [isEditing, setIsEditing] =
|
|
3612
|
-
const [editValue, setEditValue] =
|
|
3613
|
-
const apiRef =
|
|
3984
|
+
const [isEditing, setIsEditing] = React41__namespace.useState(false);
|
|
3985
|
+
const [editValue, setEditValue] = React41__namespace.useState(initialValue);
|
|
3986
|
+
const apiRef = React41__namespace.useRef(null);
|
|
3614
3987
|
if (apiRef.current === null) {
|
|
3615
3988
|
apiRef.current = createInlineEditor({ value: initialValue, onSave, onCancel });
|
|
3616
3989
|
}
|
|
3617
3990
|
const api = apiRef.current;
|
|
3618
|
-
const handleStartEditing =
|
|
3991
|
+
const handleStartEditing = React41__namespace.useCallback(() => {
|
|
3619
3992
|
setIsEditing(true);
|
|
3620
3993
|
setEditValue(initialValue);
|
|
3621
3994
|
}, [initialValue]);
|
|
3622
|
-
const handleCancel =
|
|
3995
|
+
const handleCancel = React41__namespace.useCallback(() => {
|
|
3623
3996
|
setIsEditing(false);
|
|
3624
3997
|
setEditValue(initialValue);
|
|
3625
3998
|
onCancel?.();
|
|
3626
3999
|
}, [initialValue, onCancel]);
|
|
3627
|
-
const handleSave =
|
|
4000
|
+
const handleSave = React41__namespace.useCallback(() => {
|
|
3628
4001
|
setIsEditing(false);
|
|
3629
4002
|
onSave?.(editValue);
|
|
3630
4003
|
}, [editValue, onSave]);
|
|
3631
|
-
const handleInsert =
|
|
4004
|
+
const handleInsert = React41__namespace.useCallback(
|
|
3632
4005
|
(syntax) => {
|
|
3633
4006
|
setEditValue((prev) => prev + syntax);
|
|
3634
4007
|
},
|
|
3635
4008
|
[]
|
|
3636
4009
|
);
|
|
3637
4010
|
if (!isEditing) {
|
|
3638
|
-
return
|
|
4011
|
+
return React41__namespace.createElement(
|
|
3639
4012
|
"div",
|
|
3640
4013
|
{
|
|
3641
4014
|
className: cn(editorVariants({ state: "viewing" }), className),
|
|
@@ -3650,20 +4023,20 @@ function InlineEditor({
|
|
|
3650
4023
|
}
|
|
3651
4024
|
}
|
|
3652
4025
|
},
|
|
3653
|
-
|
|
4026
|
+
React41__namespace.createElement("div", { className: previewVariants() }, editValue || initialValue)
|
|
3654
4027
|
);
|
|
3655
4028
|
}
|
|
3656
|
-
return
|
|
4029
|
+
return React41__namespace.createElement(
|
|
3657
4030
|
"div",
|
|
3658
4031
|
{
|
|
3659
4032
|
className: cn(editorVariants({ state: "editing" }), className)
|
|
3660
4033
|
},
|
|
3661
4034
|
// Toolbar
|
|
3662
|
-
|
|
4035
|
+
React41__namespace.createElement(
|
|
3663
4036
|
"div",
|
|
3664
4037
|
{ className: toolbarVariants(), role: "toolbar", "aria-label": "Formatting toolbar" },
|
|
3665
4038
|
...api.toolbarActions.map(
|
|
3666
|
-
(action) =>
|
|
4039
|
+
(action) => React41__namespace.createElement(
|
|
3667
4040
|
"button",
|
|
3668
4041
|
{
|
|
3669
4042
|
key: action.name,
|
|
@@ -3677,16 +4050,16 @@ function InlineEditor({
|
|
|
3677
4050
|
)
|
|
3678
4051
|
),
|
|
3679
4052
|
// Editor area: side-by-side textarea + preview
|
|
3680
|
-
|
|
4053
|
+
React41__namespace.createElement(
|
|
3681
4054
|
"div",
|
|
3682
4055
|
{ className: "flex gap-2 p-2" },
|
|
3683
|
-
|
|
4056
|
+
React41__namespace.createElement("textarea", {
|
|
3684
4057
|
value: editValue,
|
|
3685
4058
|
onChange: (e) => setEditValue(e.target.value),
|
|
3686
4059
|
className: "flex-1 min-h-[100px] resize-y border rounded p-2",
|
|
3687
4060
|
"aria-label": "Editor content"
|
|
3688
4061
|
}),
|
|
3689
|
-
|
|
4062
|
+
React41__namespace.createElement(
|
|
3690
4063
|
"div",
|
|
3691
4064
|
{
|
|
3692
4065
|
className: cn("flex-1", previewVariants()),
|
|
@@ -3696,15 +4069,15 @@ function InlineEditor({
|
|
|
3696
4069
|
)
|
|
3697
4070
|
),
|
|
3698
4071
|
// Action buttons
|
|
3699
|
-
|
|
4072
|
+
React41__namespace.createElement(
|
|
3700
4073
|
"div",
|
|
3701
4074
|
{ className: "flex justify-end gap-2 p-2 border-t" },
|
|
3702
|
-
|
|
4075
|
+
React41__namespace.createElement(
|
|
3703
4076
|
"button",
|
|
3704
4077
|
{ type: "button", onClick: handleCancel },
|
|
3705
4078
|
"Cancel"
|
|
3706
4079
|
),
|
|
3707
|
-
|
|
4080
|
+
React41__namespace.createElement(
|
|
3708
4081
|
"button",
|
|
3709
4082
|
{ type: "button", onClick: handleSave },
|
|
3710
4083
|
"Save"
|
|
@@ -3760,7 +4133,7 @@ var inputVariants = cva({
|
|
|
3760
4133
|
size: "default"
|
|
3761
4134
|
}
|
|
3762
4135
|
});
|
|
3763
|
-
var Input =
|
|
4136
|
+
var Input = React41__namespace.forwardRef(
|
|
3764
4137
|
({ type = "text", size, className, disabled, readOnly, required, "aria-invalid": ariaInvalid, ...props }, ref) => {
|
|
3765
4138
|
const api = createInput({
|
|
3766
4139
|
disabled,
|
|
@@ -3853,7 +4226,7 @@ var inputGroupButtonVariants = cva({
|
|
|
3853
4226
|
orientation: "horizontal"
|
|
3854
4227
|
}
|
|
3855
4228
|
});
|
|
3856
|
-
var InputGroup =
|
|
4229
|
+
var InputGroup = React41__namespace.forwardRef(
|
|
3857
4230
|
({ orientation = "horizontal", className, children, ...props }, ref) => {
|
|
3858
4231
|
const api = createInputGroup({
|
|
3859
4232
|
orientation,
|
|
@@ -3875,7 +4248,7 @@ var InputGroup = React40__namespace.forwardRef(
|
|
|
3875
4248
|
}
|
|
3876
4249
|
);
|
|
3877
4250
|
InputGroup.displayName = "InputGroup";
|
|
3878
|
-
var InputGroupAddon =
|
|
4251
|
+
var InputGroupAddon = React41__namespace.forwardRef(
|
|
3879
4252
|
({ orientation = "horizontal", className, children, ...props }, ref) => {
|
|
3880
4253
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3881
4254
|
"div",
|
|
@@ -3889,7 +4262,7 @@ var InputGroupAddon = React40__namespace.forwardRef(
|
|
|
3889
4262
|
}
|
|
3890
4263
|
);
|
|
3891
4264
|
InputGroupAddon.displayName = "InputGroupAddon";
|
|
3892
|
-
var InputGroupText =
|
|
4265
|
+
var InputGroupText = React41__namespace.forwardRef(
|
|
3893
4266
|
({ className, children, ...props }, ref) => {
|
|
3894
4267
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3895
4268
|
"span",
|
|
@@ -3903,7 +4276,7 @@ var InputGroupText = React40__namespace.forwardRef(
|
|
|
3903
4276
|
}
|
|
3904
4277
|
);
|
|
3905
4278
|
InputGroupText.displayName = "InputGroupText";
|
|
3906
|
-
var InputGroupButton =
|
|
4279
|
+
var InputGroupButton = React41__namespace.forwardRef(
|
|
3907
4280
|
({ orientation = "horizontal", className, children, ...props }, ref) => {
|
|
3908
4281
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3909
4282
|
"button",
|
|
@@ -3969,7 +4342,7 @@ function createLocalStorage() {
|
|
|
3969
4342
|
}
|
|
3970
4343
|
};
|
|
3971
4344
|
}
|
|
3972
|
-
var InstallPrompt =
|
|
4345
|
+
var InstallPrompt = React41__namespace.forwardRef(
|
|
3973
4346
|
({
|
|
3974
4347
|
delay = 3e3,
|
|
3975
4348
|
storageKey,
|
|
@@ -3979,14 +4352,14 @@ var InstallPrompt = React40__namespace.forwardRef(
|
|
|
3979
4352
|
className,
|
|
3980
4353
|
...props
|
|
3981
4354
|
}, ref) => {
|
|
3982
|
-
const storageRef =
|
|
4355
|
+
const storageRef = React41__namespace.useRef(void 0);
|
|
3983
4356
|
if (typeof window !== "undefined" && !storageRef.current) {
|
|
3984
4357
|
storageRef.current = createLocalStorage();
|
|
3985
4358
|
}
|
|
3986
4359
|
const api = createInstallPrompt({ storageKey }, storageRef.current);
|
|
3987
|
-
const [visible, setVisible] =
|
|
3988
|
-
const promptEventRef =
|
|
3989
|
-
|
|
4360
|
+
const [visible, setVisible] = React41__namespace.useState(false);
|
|
4361
|
+
const promptEventRef = React41__namespace.useRef(null);
|
|
4362
|
+
React41__namespace.useEffect(() => {
|
|
3990
4363
|
if (api.state.isDismissed) return;
|
|
3991
4364
|
const handleBeforeInstall = (e) => {
|
|
3992
4365
|
e.preventDefault();
|
|
@@ -4227,7 +4600,7 @@ function sanitizeHtml(html) {
|
|
|
4227
4600
|
sanitized = sanitized.replace(/(href|src)\s*=\s*["']?\s*javascript\s*:[^"'>]*/gi, '$1=""');
|
|
4228
4601
|
return sanitized;
|
|
4229
4602
|
}
|
|
4230
|
-
var MarkdownRenderer =
|
|
4603
|
+
var MarkdownRenderer = React41__namespace.forwardRef(
|
|
4231
4604
|
({ content, components, linkResolver, className, size }, ref) => {
|
|
4232
4605
|
const coreProps = { content, components, linkResolver };
|
|
4233
4606
|
const api = createMarkdownRenderer(coreProps);
|
|
@@ -4316,20 +4689,20 @@ var mobileNavLinkVariants = cva({
|
|
|
4316
4689
|
base: "block w-full px-4 py-2 text-sm transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2",
|
|
4317
4690
|
variants: {}
|
|
4318
4691
|
});
|
|
4319
|
-
var MobileNavContext =
|
|
4692
|
+
var MobileNavContext = React41__namespace.createContext(null);
|
|
4320
4693
|
function useMobileNavContext() {
|
|
4321
|
-
const ctx =
|
|
4694
|
+
const ctx = React41__namespace.useContext(MobileNavContext);
|
|
4322
4695
|
if (!ctx) {
|
|
4323
4696
|
throw new Error("MobileNav compound components must be used within <MobileNav>");
|
|
4324
4697
|
}
|
|
4325
4698
|
return ctx;
|
|
4326
4699
|
}
|
|
4327
|
-
var MobileNav =
|
|
4700
|
+
var MobileNav = React41__namespace.forwardRef(
|
|
4328
4701
|
({ open: controlledOpen, onOpenChange, defaultOpen = false, className, children, ...props }, ref) => {
|
|
4329
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
4702
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React41__namespace.useState(defaultOpen);
|
|
4330
4703
|
const isControlled = controlledOpen !== void 0;
|
|
4331
4704
|
const open = isControlled ? controlledOpen : uncontrolledOpen;
|
|
4332
|
-
const setOpen =
|
|
4705
|
+
const setOpen = React41__namespace.useCallback(
|
|
4333
4706
|
(value) => {
|
|
4334
4707
|
if (!isControlled) {
|
|
4335
4708
|
setUncontrolledOpen(value);
|
|
@@ -4339,11 +4712,11 @@ var MobileNav = React40__namespace.forwardRef(
|
|
|
4339
4712
|
[isControlled, onOpenChange]
|
|
4340
4713
|
);
|
|
4341
4714
|
const api = createMobileNav({ open, onOpenChange: setOpen, id: props.id });
|
|
4342
|
-
const handleKeyDown =
|
|
4715
|
+
const handleKeyDown = React41__namespace.useMemo(
|
|
4343
4716
|
() => createKeyboardHandler(api.keyboardHandlers),
|
|
4344
4717
|
[open]
|
|
4345
4718
|
);
|
|
4346
|
-
const contextValue =
|
|
4719
|
+
const contextValue = React41__namespace.useMemo(
|
|
4347
4720
|
() => ({ open, setOpen, contentId: api.contentProps.id }),
|
|
4348
4721
|
[open, setOpen, api.contentProps.id]
|
|
4349
4722
|
);
|
|
@@ -4360,7 +4733,7 @@ var MobileNav = React40__namespace.forwardRef(
|
|
|
4360
4733
|
}
|
|
4361
4734
|
);
|
|
4362
4735
|
MobileNav.displayName = "MobileNav";
|
|
4363
|
-
var MobileNavTrigger =
|
|
4736
|
+
var MobileNavTrigger = React41__namespace.forwardRef(
|
|
4364
4737
|
({ className, children, ...props }, ref) => {
|
|
4365
4738
|
const { open, setOpen, contentId } = useMobileNavContext();
|
|
4366
4739
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -4401,7 +4774,7 @@ var MobileNavTrigger = React40__namespace.forwardRef(
|
|
|
4401
4774
|
}
|
|
4402
4775
|
);
|
|
4403
4776
|
MobileNavTrigger.displayName = "MobileNavTrigger";
|
|
4404
|
-
var MobileNavContent =
|
|
4777
|
+
var MobileNavContent = React41__namespace.forwardRef(
|
|
4405
4778
|
({ className, children, ...props }, ref) => {
|
|
4406
4779
|
const { open, contentId } = useMobileNavContext();
|
|
4407
4780
|
const state = open ? "open" : "closed";
|
|
@@ -4420,7 +4793,7 @@ var MobileNavContent = React40__namespace.forwardRef(
|
|
|
4420
4793
|
}
|
|
4421
4794
|
);
|
|
4422
4795
|
MobileNavContent.displayName = "MobileNavContent";
|
|
4423
|
-
var MobileNavLink =
|
|
4796
|
+
var MobileNavLink = React41__namespace.forwardRef(
|
|
4424
4797
|
({ className, children, ...props }, ref) => {
|
|
4425
4798
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4426
4799
|
"a",
|
|
@@ -4479,7 +4852,7 @@ var navLinkVariants = cva({
|
|
|
4479
4852
|
active: "false"
|
|
4480
4853
|
}
|
|
4481
4854
|
});
|
|
4482
|
-
var Navbar =
|
|
4855
|
+
var Navbar = React41__namespace.forwardRef(
|
|
4483
4856
|
({
|
|
4484
4857
|
links = [],
|
|
4485
4858
|
currentPath,
|
|
@@ -4574,19 +4947,19 @@ var popoverContentVariants = cva({
|
|
|
4574
4947
|
side: "bottom"
|
|
4575
4948
|
}
|
|
4576
4949
|
});
|
|
4577
|
-
var PopoverContext =
|
|
4950
|
+
var PopoverContext = React41__namespace.createContext(null);
|
|
4578
4951
|
function usePopoverContext() {
|
|
4579
|
-
const ctx =
|
|
4952
|
+
const ctx = React41__namespace.useContext(PopoverContext);
|
|
4580
4953
|
if (!ctx) {
|
|
4581
4954
|
throw new Error("Popover compound components must be used within <Popover>");
|
|
4582
4955
|
}
|
|
4583
4956
|
return ctx;
|
|
4584
4957
|
}
|
|
4585
4958
|
function Popover({ open: controlledOpen, defaultOpen = false, onOpenChange, placement, children }) {
|
|
4586
|
-
const [internalOpen, setInternalOpen] =
|
|
4959
|
+
const [internalOpen, setInternalOpen] = React41__namespace.useState(controlledOpen ?? defaultOpen);
|
|
4587
4960
|
const isControlled = controlledOpen !== void 0;
|
|
4588
4961
|
const isOpen = isControlled ? controlledOpen : internalOpen;
|
|
4589
|
-
const handleOpenChange =
|
|
4962
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
4590
4963
|
(value) => {
|
|
4591
4964
|
if (!isControlled) {
|
|
4592
4965
|
setInternalOpen(value);
|
|
@@ -4595,18 +4968,18 @@ function Popover({ open: controlledOpen, defaultOpen = false, onOpenChange, plac
|
|
|
4595
4968
|
},
|
|
4596
4969
|
[isControlled, onOpenChange]
|
|
4597
4970
|
);
|
|
4598
|
-
const api =
|
|
4971
|
+
const api = React41__namespace.useMemo(
|
|
4599
4972
|
() => createPopover({ open: isOpen, onOpenChange: handleOpenChange, placement }),
|
|
4600
4973
|
[isOpen, handleOpenChange, placement]
|
|
4601
4974
|
);
|
|
4602
|
-
const ctx =
|
|
4975
|
+
const ctx = React41__namespace.useMemo(
|
|
4603
4976
|
() => ({ api, open: isOpen, setOpen: handleOpenChange }),
|
|
4604
4977
|
[api, isOpen, handleOpenChange]
|
|
4605
4978
|
);
|
|
4606
|
-
return
|
|
4979
|
+
return React41__namespace.createElement(PopoverContext.Provider, { value: ctx }, children);
|
|
4607
4980
|
}
|
|
4608
4981
|
Popover.displayName = "Popover";
|
|
4609
|
-
var PopoverTrigger =
|
|
4982
|
+
var PopoverTrigger = React41__namespace.forwardRef(
|
|
4610
4983
|
({ onClick, children, ...props }, ref) => {
|
|
4611
4984
|
const { api, setOpen, open } = usePopoverContext();
|
|
4612
4985
|
const handleClick = (e) => {
|
|
@@ -4629,7 +5002,7 @@ var PopoverTrigger = React40__namespace.forwardRef(
|
|
|
4629
5002
|
}
|
|
4630
5003
|
);
|
|
4631
5004
|
PopoverTrigger.displayName = "PopoverTrigger";
|
|
4632
|
-
var PopoverContent =
|
|
5005
|
+
var PopoverContent = React41__namespace.forwardRef(
|
|
4633
5006
|
({ side, className, children, onKeyDown, ...props }, ref) => {
|
|
4634
5007
|
const { api, open, setOpen } = usePopoverContext();
|
|
4635
5008
|
const handleKeyDown = (e) => {
|
|
@@ -4658,7 +5031,7 @@ var PopoverContent = React40__namespace.forwardRef(
|
|
|
4658
5031
|
}
|
|
4659
5032
|
);
|
|
4660
5033
|
PopoverContent.displayName = "PopoverContent";
|
|
4661
|
-
var PopoverClose =
|
|
5034
|
+
var PopoverClose = React41__namespace.forwardRef(
|
|
4662
5035
|
({ onClick, children, ...props }, ref) => {
|
|
4663
5036
|
const { setOpen } = usePopoverContext();
|
|
4664
5037
|
const handleClick = (e) => {
|
|
@@ -4779,9 +5152,9 @@ var searchResultVariants = cva({
|
|
|
4779
5152
|
});
|
|
4780
5153
|
|
|
4781
5154
|
// ../react-search-bar/dist/index.js
|
|
4782
|
-
var SearchBarContext =
|
|
5155
|
+
var SearchBarContext = React41__namespace.createContext(null);
|
|
4783
5156
|
function useSearchBarContext() {
|
|
4784
|
-
const ctx =
|
|
5157
|
+
const ctx = React41__namespace.useContext(SearchBarContext);
|
|
4785
5158
|
if (!ctx) {
|
|
4786
5159
|
throw new Error("SearchBar compound components must be used within <SearchBar>");
|
|
4787
5160
|
}
|
|
@@ -4799,11 +5172,11 @@ function SearchBar({
|
|
|
4799
5172
|
children,
|
|
4800
5173
|
...inputProps
|
|
4801
5174
|
}) {
|
|
4802
|
-
const [internalValue, setInternalValue] =
|
|
5175
|
+
const [internalValue, setInternalValue] = React41__namespace.useState(controlledValue ?? defaultValue);
|
|
4803
5176
|
const isControlled = controlledValue !== void 0;
|
|
4804
5177
|
const currentValue = isControlled ? controlledValue : internalValue;
|
|
4805
|
-
const debounceRef =
|
|
4806
|
-
const handleValueChange =
|
|
5178
|
+
const debounceRef = React41__namespace.useRef(void 0);
|
|
5179
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
4807
5180
|
(val) => {
|
|
4808
5181
|
if (!isControlled) {
|
|
4809
5182
|
setInternalValue(val);
|
|
@@ -4812,8 +5185,8 @@ function SearchBar({
|
|
|
4812
5185
|
},
|
|
4813
5186
|
[isControlled, onValueChange]
|
|
4814
5187
|
);
|
|
4815
|
-
const [isSearching, setIsSearching] =
|
|
4816
|
-
const handleSearch =
|
|
5188
|
+
const [isSearching, setIsSearching] = React41__namespace.useState(loading);
|
|
5189
|
+
const handleSearch = React41__namespace.useCallback(
|
|
4817
5190
|
(val) => {
|
|
4818
5191
|
if (debounceRef.current !== void 0) {
|
|
4819
5192
|
clearTimeout(debounceRef.current);
|
|
@@ -4830,7 +5203,7 @@ function SearchBar({
|
|
|
4830
5203
|
},
|
|
4831
5204
|
[onSearch, debounceMs]
|
|
4832
5205
|
);
|
|
4833
|
-
const handleChange =
|
|
5206
|
+
const handleChange = React41__namespace.useCallback(
|
|
4834
5207
|
(e) => {
|
|
4835
5208
|
const val = e.target.value;
|
|
4836
5209
|
handleValueChange(val);
|
|
@@ -4838,14 +5211,14 @@ function SearchBar({
|
|
|
4838
5211
|
},
|
|
4839
5212
|
[handleValueChange, handleSearch]
|
|
4840
5213
|
);
|
|
4841
|
-
const clear =
|
|
5214
|
+
const clear = React41__namespace.useCallback(() => {
|
|
4842
5215
|
if (debounceRef.current !== void 0) {
|
|
4843
5216
|
clearTimeout(debounceRef.current);
|
|
4844
5217
|
}
|
|
4845
5218
|
handleValueChange("");
|
|
4846
5219
|
setIsSearching(false);
|
|
4847
5220
|
}, [handleValueChange]);
|
|
4848
|
-
const api =
|
|
5221
|
+
const api = React41__namespace.useMemo(
|
|
4849
5222
|
() => createSearchBar({
|
|
4850
5223
|
value: currentValue,
|
|
4851
5224
|
onValueChange: handleValueChange,
|
|
@@ -4856,7 +5229,7 @@ function SearchBar({
|
|
|
4856
5229
|
}),
|
|
4857
5230
|
[currentValue, handleValueChange, onSearch, debounceMs, placeholder, loading]
|
|
4858
5231
|
);
|
|
4859
|
-
const handleKeyDown =
|
|
5232
|
+
const handleKeyDown = React41__namespace.useCallback(
|
|
4860
5233
|
(e) => {
|
|
4861
5234
|
if (e.key === "Escape") {
|
|
4862
5235
|
clear();
|
|
@@ -4870,18 +5243,18 @@ function SearchBar({
|
|
|
4870
5243
|
},
|
|
4871
5244
|
[clear, onSearch, currentValue]
|
|
4872
5245
|
);
|
|
4873
|
-
const ctx =
|
|
5246
|
+
const ctx = React41__namespace.useMemo(
|
|
4874
5247
|
() => ({ api, value: currentValue, isSearching, setValue: handleValueChange, clear }),
|
|
4875
5248
|
[api, currentValue, isSearching, handleValueChange, clear]
|
|
4876
5249
|
);
|
|
4877
|
-
return
|
|
5250
|
+
return React41__namespace.createElement(
|
|
4878
5251
|
SearchBarContext.Provider,
|
|
4879
5252
|
{ value: ctx },
|
|
4880
|
-
|
|
5253
|
+
React41__namespace.createElement(
|
|
4881
5254
|
"div",
|
|
4882
5255
|
{ className: cn(searchBarVariants(), className) },
|
|
4883
|
-
|
|
4884
|
-
|
|
5256
|
+
React41__namespace.createElement("span", { className: "rfr-search-icon", "aria-hidden": "true" }, "\u{1F50D}"),
|
|
5257
|
+
React41__namespace.createElement("input", {
|
|
4885
5258
|
...inputProps,
|
|
4886
5259
|
role: api.inputProps.role,
|
|
4887
5260
|
"aria-expanded": api.inputProps["aria-expanded"],
|
|
@@ -4893,8 +5266,8 @@ function SearchBar({
|
|
|
4893
5266
|
onKeyDown: handleKeyDown,
|
|
4894
5267
|
className: "rfr-search-input flex-1 bg-transparent outline-none"
|
|
4895
5268
|
}),
|
|
4896
|
-
isSearching &&
|
|
4897
|
-
currentValue.length > 0 && !isSearching &&
|
|
5269
|
+
isSearching && React41__namespace.createElement("span", { className: "rfr-search-spinner", "aria-label": "Loading" }, "\u23F3"),
|
|
5270
|
+
currentValue.length > 0 && !isSearching && React41__namespace.createElement(
|
|
4898
5271
|
"button",
|
|
4899
5272
|
{
|
|
4900
5273
|
type: "button",
|
|
@@ -4909,11 +5282,11 @@ function SearchBar({
|
|
|
4909
5282
|
);
|
|
4910
5283
|
}
|
|
4911
5284
|
SearchBar.displayName = "SearchBar";
|
|
4912
|
-
var SearchResults =
|
|
5285
|
+
var SearchResults = React41__namespace.forwardRef(
|
|
4913
5286
|
({ className, children, ...props }, ref) => {
|
|
4914
5287
|
const { api, value } = useSearchBarContext();
|
|
4915
5288
|
if (value.length === 0) return null;
|
|
4916
|
-
return
|
|
5289
|
+
return React41__namespace.createElement(
|
|
4917
5290
|
"ul",
|
|
4918
5291
|
{
|
|
4919
5292
|
ref,
|
|
@@ -4927,9 +5300,9 @@ var SearchResults = React40__namespace.forwardRef(
|
|
|
4927
5300
|
}
|
|
4928
5301
|
);
|
|
4929
5302
|
SearchResults.displayName = "SearchResults";
|
|
4930
|
-
var SearchResultItem =
|
|
5303
|
+
var SearchResultItem = React41__namespace.forwardRef(
|
|
4931
5304
|
({ className, children, ...props }, ref) => {
|
|
4932
|
-
return
|
|
5305
|
+
return React41__namespace.createElement(
|
|
4933
5306
|
"li",
|
|
4934
5307
|
{
|
|
4935
5308
|
ref,
|
|
@@ -4990,7 +5363,7 @@ var sidebarItemVariants = cva({
|
|
|
4990
5363
|
active: "false"
|
|
4991
5364
|
}
|
|
4992
5365
|
});
|
|
4993
|
-
var Sidebar =
|
|
5366
|
+
var Sidebar = React41__namespace.forwardRef(
|
|
4994
5367
|
({
|
|
4995
5368
|
sections = [],
|
|
4996
5369
|
currentPath,
|
|
@@ -5060,7 +5433,7 @@ var skeletonVariants = cva({
|
|
|
5060
5433
|
});
|
|
5061
5434
|
|
|
5062
5435
|
// ../react-skeleton/dist/index.js
|
|
5063
|
-
var Skeleton =
|
|
5436
|
+
var Skeleton = React41__namespace.forwardRef(
|
|
5064
5437
|
({ shape, width, height, animate, className, style, ...props }, ref) => {
|
|
5065
5438
|
const api = createSkeleton({ shape, animate });
|
|
5066
5439
|
const classes = cn(skeletonVariants({ shape }), className);
|
|
@@ -5069,7 +5442,7 @@ var Skeleton = React40__namespace.forwardRef(
|
|
|
5069
5442
|
...width !== void 0 ? { width } : {},
|
|
5070
5443
|
...height !== void 0 ? { height } : {}
|
|
5071
5444
|
};
|
|
5072
|
-
return
|
|
5445
|
+
return React41__namespace.createElement("div", {
|
|
5073
5446
|
ref,
|
|
5074
5447
|
className: classes,
|
|
5075
5448
|
style: Object.keys(mergedStyle).length > 0 ? mergedStyle : void 0,
|
|
@@ -5081,13 +5454,13 @@ var Skeleton = React40__namespace.forwardRef(
|
|
|
5081
5454
|
);
|
|
5082
5455
|
Skeleton.displayName = "Skeleton";
|
|
5083
5456
|
var lineWidths = ["100%", "92%", "85%", "96%", "78%", "88%", "94%", "82%"];
|
|
5084
|
-
var SkeletonText =
|
|
5457
|
+
var SkeletonText = React41__namespace.forwardRef(
|
|
5085
5458
|
({ lines = 3, animate, className, ...props }, ref) => {
|
|
5086
5459
|
const children = [];
|
|
5087
5460
|
for (let i = 0; i < lines; i++) {
|
|
5088
5461
|
const width = lineWidths[i % lineWidths.length];
|
|
5089
5462
|
children.push(
|
|
5090
|
-
|
|
5463
|
+
React41__namespace.createElement(Skeleton, {
|
|
5091
5464
|
key: i,
|
|
5092
5465
|
shape: "text",
|
|
5093
5466
|
width,
|
|
@@ -5095,7 +5468,7 @@ var SkeletonText = React40__namespace.forwardRef(
|
|
|
5095
5468
|
})
|
|
5096
5469
|
);
|
|
5097
5470
|
}
|
|
5098
|
-
return
|
|
5471
|
+
return React41__namespace.createElement(
|
|
5099
5472
|
"div",
|
|
5100
5473
|
{
|
|
5101
5474
|
ref,
|
|
@@ -5196,16 +5569,16 @@ function createTabs(props = {}) {
|
|
|
5196
5569
|
};
|
|
5197
5570
|
}
|
|
5198
5571
|
var tabsListVariants = cva({
|
|
5199
|
-
base: "inline-flex items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground"
|
|
5572
|
+
base: "inline-flex max-w-full overflow-x-auto items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground"
|
|
5200
5573
|
});
|
|
5201
5574
|
var tabsTriggerVariants = cva({
|
|
5202
5575
|
base: "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow"
|
|
5203
5576
|
});
|
|
5204
5577
|
|
|
5205
5578
|
// ../react-tabs/dist/index.js
|
|
5206
|
-
var TabsContext =
|
|
5579
|
+
var TabsContext = React41__namespace.createContext(null);
|
|
5207
5580
|
function useTabsContext() {
|
|
5208
|
-
const ctx =
|
|
5581
|
+
const ctx = React41__namespace.useContext(TabsContext);
|
|
5209
5582
|
if (!ctx) {
|
|
5210
5583
|
throw new Error("Tabs compound components must be used within <Tabs>");
|
|
5211
5584
|
}
|
|
@@ -5219,10 +5592,10 @@ function Tabs({
|
|
|
5219
5592
|
className,
|
|
5220
5593
|
children
|
|
5221
5594
|
}) {
|
|
5222
|
-
const [uncontrolledValue, setUncontrolledValue] =
|
|
5595
|
+
const [uncontrolledValue, setUncontrolledValue] = React41__namespace.useState(defaultValue);
|
|
5223
5596
|
const isControlled = controlledValue !== void 0;
|
|
5224
5597
|
const value = isControlled ? controlledValue : uncontrolledValue;
|
|
5225
|
-
const handleValueChange =
|
|
5598
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
5226
5599
|
(next) => {
|
|
5227
5600
|
if (!isControlled) {
|
|
5228
5601
|
setUncontrolledValue(next);
|
|
@@ -5231,12 +5604,12 @@ function Tabs({
|
|
|
5231
5604
|
},
|
|
5232
5605
|
[isControlled, onValueChange]
|
|
5233
5606
|
);
|
|
5234
|
-
const apiRef =
|
|
5607
|
+
const apiRef = React41__namespace.useRef(null);
|
|
5235
5608
|
if (apiRef.current === null) {
|
|
5236
5609
|
apiRef.current = createTabs({ value, orientation });
|
|
5237
5610
|
}
|
|
5238
5611
|
const api = apiRef.current;
|
|
5239
|
-
const ctx =
|
|
5612
|
+
const ctx = React41__namespace.useMemo(
|
|
5240
5613
|
() => ({
|
|
5241
5614
|
value,
|
|
5242
5615
|
onValueChange: handleValueChange,
|
|
@@ -5245,17 +5618,17 @@ function Tabs({
|
|
|
5245
5618
|
}),
|
|
5246
5619
|
[value, handleValueChange, orientation, api.idPrefix]
|
|
5247
5620
|
);
|
|
5248
|
-
return
|
|
5621
|
+
return React41__namespace.createElement(
|
|
5249
5622
|
"div",
|
|
5250
5623
|
{ className, "data-orientation": orientation },
|
|
5251
|
-
|
|
5624
|
+
React41__namespace.createElement(TabsContext.Provider, { value: ctx }, children)
|
|
5252
5625
|
);
|
|
5253
5626
|
}
|
|
5254
5627
|
Tabs.displayName = "Tabs";
|
|
5255
|
-
var TabsList =
|
|
5628
|
+
var TabsList = React41__namespace.forwardRef(
|
|
5256
5629
|
({ className, ...props }, ref) => {
|
|
5257
5630
|
const { orientation } = useTabsContext();
|
|
5258
|
-
return
|
|
5631
|
+
return React41__namespace.createElement("div", {
|
|
5259
5632
|
ref,
|
|
5260
5633
|
role: "tablist",
|
|
5261
5634
|
"aria-orientation": orientation,
|
|
@@ -5265,7 +5638,7 @@ var TabsList = React40__namespace.forwardRef(
|
|
|
5265
5638
|
}
|
|
5266
5639
|
);
|
|
5267
5640
|
TabsList.displayName = "TabsList";
|
|
5268
|
-
var TabsTrigger =
|
|
5641
|
+
var TabsTrigger = React41__namespace.forwardRef(
|
|
5269
5642
|
({ value, className, onClick, onKeyDown, children, ...props }, ref) => {
|
|
5270
5643
|
const { value: activeValue, onValueChange, orientation, idPrefix } = useTabsContext();
|
|
5271
5644
|
const isSelected = activeValue === value;
|
|
@@ -5278,7 +5651,7 @@ var TabsTrigger = React40__namespace.forwardRef(
|
|
|
5278
5651
|
const handleKeyDown = (e) => {
|
|
5279
5652
|
onKeyDown?.(e);
|
|
5280
5653
|
};
|
|
5281
|
-
return
|
|
5654
|
+
return React41__namespace.createElement(
|
|
5282
5655
|
"button",
|
|
5283
5656
|
{
|
|
5284
5657
|
ref,
|
|
@@ -5299,14 +5672,14 @@ var TabsTrigger = React40__namespace.forwardRef(
|
|
|
5299
5672
|
}
|
|
5300
5673
|
);
|
|
5301
5674
|
TabsTrigger.displayName = "TabsTrigger";
|
|
5302
|
-
var TabsContent =
|
|
5675
|
+
var TabsContent = React41__namespace.forwardRef(
|
|
5303
5676
|
({ value, className, children, ...props }, ref) => {
|
|
5304
5677
|
const { value: activeValue, idPrefix } = useTabsContext();
|
|
5305
5678
|
const isSelected = activeValue === value;
|
|
5306
5679
|
const tabId = `${idPrefix}-tab-${value}`;
|
|
5307
5680
|
const panelId = `${idPrefix}-panel-${value}`;
|
|
5308
5681
|
if (!isSelected) return null;
|
|
5309
|
-
return
|
|
5682
|
+
return React41__namespace.createElement(
|
|
5310
5683
|
"div",
|
|
5311
5684
|
{
|
|
5312
5685
|
ref,
|
|
@@ -5370,7 +5743,7 @@ var textareaVariants = cva({
|
|
|
5370
5743
|
size: "default"
|
|
5371
5744
|
}
|
|
5372
5745
|
});
|
|
5373
|
-
var Textarea =
|
|
5746
|
+
var Textarea = React41__namespace.forwardRef(
|
|
5374
5747
|
({ size, className, disabled, readOnly, required, rows, maxRows, "aria-invalid": ariaInvalid, ...props }, ref) => {
|
|
5375
5748
|
const api = createTextarea({
|
|
5376
5749
|
disabled,
|
|
@@ -5527,30 +5900,30 @@ var toastVariants = cva({
|
|
|
5527
5900
|
});
|
|
5528
5901
|
|
|
5529
5902
|
// ../react-toast/dist/index.js
|
|
5530
|
-
var ToastContext =
|
|
5903
|
+
var ToastContext = React41__namespace.createContext(null);
|
|
5531
5904
|
function useToastContext() {
|
|
5532
|
-
const ctx =
|
|
5905
|
+
const ctx = React41__namespace.useContext(ToastContext);
|
|
5533
5906
|
if (!ctx) {
|
|
5534
5907
|
throw new Error("useToast must be used within a <ToastProvider>");
|
|
5535
5908
|
}
|
|
5536
5909
|
return ctx;
|
|
5537
5910
|
}
|
|
5538
5911
|
function ToastProvider({ children }) {
|
|
5539
|
-
const managerRef =
|
|
5912
|
+
const managerRef = React41__namespace.useRef(null);
|
|
5540
5913
|
if (managerRef.current === null) {
|
|
5541
5914
|
managerRef.current = createToastManager();
|
|
5542
5915
|
}
|
|
5543
|
-
const ctx =
|
|
5916
|
+
const ctx = React41__namespace.useMemo(
|
|
5544
5917
|
() => ({ manager: managerRef.current }),
|
|
5545
5918
|
[]
|
|
5546
5919
|
);
|
|
5547
|
-
return
|
|
5920
|
+
return React41__namespace.createElement(ToastContext.Provider, { value: ctx }, children);
|
|
5548
5921
|
}
|
|
5549
5922
|
ToastProvider.displayName = "ToastProvider";
|
|
5550
5923
|
function useToast() {
|
|
5551
5924
|
const { manager } = useToastContext();
|
|
5552
|
-
const [toasts, setToasts] =
|
|
5553
|
-
|
|
5925
|
+
const [toasts, setToasts] = React41__namespace.useState(manager.toasts);
|
|
5926
|
+
React41__namespace.useEffect(() => {
|
|
5554
5927
|
setToasts(manager.toasts);
|
|
5555
5928
|
const unsub = manager.subscribe(setToasts);
|
|
5556
5929
|
return unsub;
|
|
@@ -5561,13 +5934,13 @@ function useToast() {
|
|
|
5561
5934
|
toasts
|
|
5562
5935
|
};
|
|
5563
5936
|
}
|
|
5564
|
-
var Toast =
|
|
5937
|
+
var Toast = React41__namespace.forwardRef(
|
|
5565
5938
|
({ entry, onDismiss, className, children, onMouseEnter, onMouseLeave, ...props }, ref) => {
|
|
5566
|
-
const api =
|
|
5939
|
+
const api = React41__namespace.useMemo(
|
|
5567
5940
|
() => createToast({ variant: entry.variant, duration: entry.duration }),
|
|
5568
5941
|
[entry.variant, entry.duration]
|
|
5569
5942
|
);
|
|
5570
|
-
|
|
5943
|
+
React41__namespace.useEffect(() => {
|
|
5571
5944
|
api.startTimer();
|
|
5572
5945
|
return () => api.pauseTimer();
|
|
5573
5946
|
}, [api]);
|
|
@@ -5579,7 +5952,7 @@ var Toast = React40__namespace.forwardRef(
|
|
|
5579
5952
|
api.resumeTimer();
|
|
5580
5953
|
onMouseLeave?.(e);
|
|
5581
5954
|
};
|
|
5582
|
-
return
|
|
5955
|
+
return React41__namespace.createElement(
|
|
5583
5956
|
"div",
|
|
5584
5957
|
{
|
|
5585
5958
|
ref,
|
|
@@ -5589,9 +5962,9 @@ var Toast = React40__namespace.forwardRef(
|
|
|
5589
5962
|
onMouseLeave: handleMouseLeave,
|
|
5590
5963
|
...props
|
|
5591
5964
|
},
|
|
5592
|
-
|
|
5965
|
+
React41__namespace.createElement("div", { className: "flex-1" }, entry.message),
|
|
5593
5966
|
children,
|
|
5594
|
-
onDismiss &&
|
|
5967
|
+
onDismiss && React41__namespace.createElement(
|
|
5595
5968
|
"button",
|
|
5596
5969
|
{
|
|
5597
5970
|
type: "button",
|
|
@@ -5605,10 +5978,10 @@ var Toast = React40__namespace.forwardRef(
|
|
|
5605
5978
|
}
|
|
5606
5979
|
);
|
|
5607
5980
|
Toast.displayName = "Toast";
|
|
5608
|
-
var Toaster =
|
|
5981
|
+
var Toaster = React41__namespace.forwardRef(
|
|
5609
5982
|
({ className, ...props }, ref) => {
|
|
5610
5983
|
const { toasts, dismiss } = useToast();
|
|
5611
|
-
return
|
|
5984
|
+
return React41__namespace.createElement(
|
|
5612
5985
|
"div",
|
|
5613
5986
|
{
|
|
5614
5987
|
ref,
|
|
@@ -5619,7 +5992,7 @@ var Toaster = React40__namespace.forwardRef(
|
|
|
5619
5992
|
...props
|
|
5620
5993
|
},
|
|
5621
5994
|
toasts.map(
|
|
5622
|
-
(entry) =>
|
|
5995
|
+
(entry) => React41__namespace.createElement(Toast, {
|
|
5623
5996
|
key: entry.id,
|
|
5624
5997
|
entry,
|
|
5625
5998
|
onDismiss: dismiss
|
|
@@ -5706,9 +6079,9 @@ var tooltipContentVariants = cva({
|
|
|
5706
6079
|
side: "top"
|
|
5707
6080
|
}
|
|
5708
6081
|
});
|
|
5709
|
-
var TooltipContext =
|
|
6082
|
+
var TooltipContext = React41__namespace.createContext(null);
|
|
5710
6083
|
function useTooltipContext() {
|
|
5711
|
-
const ctx =
|
|
6084
|
+
const ctx = React41__namespace.useContext(TooltipContext);
|
|
5712
6085
|
if (!ctx) {
|
|
5713
6086
|
throw new Error("Tooltip compound components must be used within <Tooltip>");
|
|
5714
6087
|
}
|
|
@@ -5722,11 +6095,11 @@ function Tooltip({
|
|
|
5722
6095
|
delayDuration = 300,
|
|
5723
6096
|
children
|
|
5724
6097
|
}) {
|
|
5725
|
-
const [internalOpen, setInternalOpen] =
|
|
6098
|
+
const [internalOpen, setInternalOpen] = React41__namespace.useState(controlledOpen ?? defaultOpen);
|
|
5726
6099
|
const isControlled = controlledOpen !== void 0;
|
|
5727
6100
|
const isOpen = isControlled ? controlledOpen : internalOpen;
|
|
5728
|
-
const timerRef =
|
|
5729
|
-
const handleOpenChange =
|
|
6101
|
+
const timerRef = React41__namespace.useRef(null);
|
|
6102
|
+
const handleOpenChange = React41__namespace.useCallback(
|
|
5730
6103
|
(value) => {
|
|
5731
6104
|
if (!isControlled) {
|
|
5732
6105
|
setInternalOpen(value);
|
|
@@ -5735,17 +6108,17 @@ function Tooltip({
|
|
|
5735
6108
|
},
|
|
5736
6109
|
[isControlled, onOpenChange]
|
|
5737
6110
|
);
|
|
5738
|
-
const api =
|
|
6111
|
+
const api = React41__namespace.useMemo(
|
|
5739
6112
|
() => createTooltip({ open: isOpen, onOpenChange: handleOpenChange, placement, delayDuration }),
|
|
5740
6113
|
[isOpen, handleOpenChange, placement, delayDuration]
|
|
5741
6114
|
);
|
|
5742
|
-
const cancelDelay =
|
|
6115
|
+
const cancelDelay = React41__namespace.useCallback(() => {
|
|
5743
6116
|
if (timerRef.current !== null) {
|
|
5744
6117
|
clearTimeout(timerRef.current);
|
|
5745
6118
|
timerRef.current = null;
|
|
5746
6119
|
}
|
|
5747
6120
|
}, []);
|
|
5748
|
-
const openWithDelay =
|
|
6121
|
+
const openWithDelay = React41__namespace.useCallback(() => {
|
|
5749
6122
|
cancelDelay();
|
|
5750
6123
|
if (delayDuration <= 0) {
|
|
5751
6124
|
handleOpenChange(true);
|
|
@@ -5756,21 +6129,21 @@ function Tooltip({
|
|
|
5756
6129
|
timerRef.current = null;
|
|
5757
6130
|
}, delayDuration);
|
|
5758
6131
|
}, [cancelDelay, delayDuration, handleOpenChange]);
|
|
5759
|
-
|
|
6132
|
+
React41__namespace.useEffect(() => {
|
|
5760
6133
|
return () => {
|
|
5761
6134
|
if (timerRef.current !== null) {
|
|
5762
6135
|
clearTimeout(timerRef.current);
|
|
5763
6136
|
}
|
|
5764
6137
|
};
|
|
5765
6138
|
}, []);
|
|
5766
|
-
const ctx =
|
|
6139
|
+
const ctx = React41__namespace.useMemo(
|
|
5767
6140
|
() => ({ api, open: isOpen, setOpen: handleOpenChange, openWithDelay, cancelDelay }),
|
|
5768
6141
|
[api, isOpen, handleOpenChange, openWithDelay, cancelDelay]
|
|
5769
6142
|
);
|
|
5770
|
-
return
|
|
6143
|
+
return React41__namespace.createElement(TooltipContext.Provider, { value: ctx }, children);
|
|
5771
6144
|
}
|
|
5772
6145
|
Tooltip.displayName = "Tooltip";
|
|
5773
|
-
var TooltipTrigger =
|
|
6146
|
+
var TooltipTrigger = React41__namespace.forwardRef(
|
|
5774
6147
|
({ onMouseEnter, onMouseLeave, onFocus, onBlur, children, ...props }, ref) => {
|
|
5775
6148
|
const { api, setOpen, openWithDelay, cancelDelay } = useTooltipContext();
|
|
5776
6149
|
const handleMouseEnter = (e) => {
|
|
@@ -5807,7 +6180,7 @@ var TooltipTrigger = React40__namespace.forwardRef(
|
|
|
5807
6180
|
}
|
|
5808
6181
|
);
|
|
5809
6182
|
TooltipTrigger.displayName = "TooltipTrigger";
|
|
5810
|
-
var TooltipContent =
|
|
6183
|
+
var TooltipContent = React41__namespace.forwardRef(
|
|
5811
6184
|
({ side, className, children, ...props }, ref) => {
|
|
5812
6185
|
const { api, open } = useTooltipContext();
|
|
5813
6186
|
if (!open) return null;
|
|
@@ -5927,7 +6300,7 @@ var overlayVariants = cva({
|
|
|
5927
6300
|
visibility: "visible"
|
|
5928
6301
|
}
|
|
5929
6302
|
});
|
|
5930
|
-
var VideoPlayer =
|
|
6303
|
+
var VideoPlayer = React41__namespace.forwardRef(
|
|
5931
6304
|
({
|
|
5932
6305
|
src,
|
|
5933
6306
|
poster,
|
|
@@ -5937,9 +6310,9 @@ var VideoPlayer = React40__namespace.forwardRef(
|
|
|
5937
6310
|
className,
|
|
5938
6311
|
...props
|
|
5939
6312
|
}, ref) => {
|
|
5940
|
-
const [, setTick] =
|
|
5941
|
-
const rerender =
|
|
5942
|
-
const apiRef =
|
|
6313
|
+
const [, setTick] = React41__namespace.useState(0);
|
|
6314
|
+
const rerender = React41__namespace.useCallback(() => setTick((t) => t + 1), []);
|
|
6315
|
+
const apiRef = React41__namespace.useRef(
|
|
5943
6316
|
createVideoPlayer({ muted: initialMuted})
|
|
5944
6317
|
);
|
|
5945
6318
|
const api = apiRef.current;
|
|
@@ -6106,7 +6479,7 @@ var progressBarVariants = cva({
|
|
|
6106
6479
|
size: "md"
|
|
6107
6480
|
}
|
|
6108
6481
|
});
|
|
6109
|
-
var StatsGrid =
|
|
6482
|
+
var StatsGrid = React41__namespace.forwardRef(
|
|
6110
6483
|
({ stats, badges = [], className, ...props }, ref) => {
|
|
6111
6484
|
const api = createProgressDisplay({ stats, badges });
|
|
6112
6485
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -6135,7 +6508,7 @@ var StatsGrid = React40__namespace.forwardRef(
|
|
|
6135
6508
|
}
|
|
6136
6509
|
);
|
|
6137
6510
|
StatsGrid.displayName = "StatsGrid";
|
|
6138
|
-
var ProgressBar =
|
|
6511
|
+
var ProgressBar = React41__namespace.forwardRef(
|
|
6139
6512
|
({ value, max = 100, size, className, ...props }, ref) => {
|
|
6140
6513
|
const percent = Math.min(100, Math.max(0, value / max * 100));
|
|
6141
6514
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -6160,7 +6533,7 @@ var ProgressBar = React40__namespace.forwardRef(
|
|
|
6160
6533
|
}
|
|
6161
6534
|
);
|
|
6162
6535
|
ProgressBar.displayName = "ProgressBar";
|
|
6163
|
-
var BadgeDisplay =
|
|
6536
|
+
var BadgeDisplay = React41__namespace.forwardRef(
|
|
6164
6537
|
({ badges, className, ...props }, ref) => {
|
|
6165
6538
|
const api = createProgressDisplay({ stats: [], badges });
|
|
6166
6539
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -6328,7 +6701,7 @@ var slideTypeBadgeVariants = cva({
|
|
|
6328
6701
|
type: "lesson"
|
|
6329
6702
|
}
|
|
6330
6703
|
});
|
|
6331
|
-
var SlideViewer =
|
|
6704
|
+
var SlideViewer = React41__namespace.forwardRef(
|
|
6332
6705
|
({
|
|
6333
6706
|
slides,
|
|
6334
6707
|
initialSlide,
|
|
@@ -6338,9 +6711,9 @@ var SlideViewer = React40__namespace.forwardRef(
|
|
|
6338
6711
|
size,
|
|
6339
6712
|
renderSlide
|
|
6340
6713
|
}, ref) => {
|
|
6341
|
-
const [, setTick] =
|
|
6714
|
+
const [, setTick] = React41__namespace.useState(0);
|
|
6342
6715
|
const rerender = () => setTick((t) => t + 1);
|
|
6343
|
-
const apiRef =
|
|
6716
|
+
const apiRef = React41__namespace.useRef(
|
|
6344
6717
|
createSlideViewer({ slides, initialSlide, onSlideChange, onComplete })
|
|
6345
6718
|
);
|
|
6346
6719
|
const api = apiRef.current;
|
|
@@ -6542,7 +6915,7 @@ var optionVariants = cva({
|
|
|
6542
6915
|
});
|
|
6543
6916
|
|
|
6544
6917
|
// ../react-language-selector/dist/index.js
|
|
6545
|
-
var LanguageSelectorContext =
|
|
6918
|
+
var LanguageSelectorContext = React41__namespace.createContext(null);
|
|
6546
6919
|
function LanguageSelector({
|
|
6547
6920
|
value: controlledValue,
|
|
6548
6921
|
onValueChange,
|
|
@@ -6552,10 +6925,10 @@ function LanguageSelector({
|
|
|
6552
6925
|
className
|
|
6553
6926
|
}) {
|
|
6554
6927
|
const initialValues = Array.isArray(controlledValue) ? controlledValue : controlledValue ? [controlledValue] : [];
|
|
6555
|
-
const [selectedValues, setSelectedValues] =
|
|
6556
|
-
const [isOpen, setIsOpen] =
|
|
6557
|
-
const containerRef =
|
|
6558
|
-
const handleValueChange =
|
|
6928
|
+
const [selectedValues, setSelectedValues] = React41__namespace.useState(initialValues);
|
|
6929
|
+
const [isOpen, setIsOpen] = React41__namespace.useState(false);
|
|
6930
|
+
const containerRef = React41__namespace.useRef(null);
|
|
6931
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
6559
6932
|
(val) => {
|
|
6560
6933
|
const arr = Array.isArray(val) ? val : [val];
|
|
6561
6934
|
setSelectedValues(arr);
|
|
@@ -6563,7 +6936,7 @@ function LanguageSelector({
|
|
|
6563
6936
|
},
|
|
6564
6937
|
[onValueChange]
|
|
6565
6938
|
);
|
|
6566
|
-
const api =
|
|
6939
|
+
const api = React41__namespace.useMemo(
|
|
6567
6940
|
() => createLanguageSelector({
|
|
6568
6941
|
value: multiple ? selectedValues : selectedValues[0],
|
|
6569
6942
|
onValueChange: handleValueChange,
|
|
@@ -6571,7 +6944,7 @@ function LanguageSelector({
|
|
|
6571
6944
|
}),
|
|
6572
6945
|
[selectedValues, handleValueChange, options, multiple]
|
|
6573
6946
|
);
|
|
6574
|
-
const handleToggle =
|
|
6947
|
+
const handleToggle = React41__namespace.useCallback(
|
|
6575
6948
|
(val) => {
|
|
6576
6949
|
if (multiple) {
|
|
6577
6950
|
const index = selectedValues.indexOf(val);
|
|
@@ -6586,10 +6959,10 @@ function LanguageSelector({
|
|
|
6586
6959
|
},
|
|
6587
6960
|
[multiple, selectedValues, onValueChange]
|
|
6588
6961
|
);
|
|
6589
|
-
const handleTriggerClick =
|
|
6962
|
+
const handleTriggerClick = React41__namespace.useCallback(() => {
|
|
6590
6963
|
setIsOpen((prev) => !prev);
|
|
6591
6964
|
}, []);
|
|
6592
|
-
const handleKeyDown =
|
|
6965
|
+
const handleKeyDown = React41__namespace.useCallback(
|
|
6593
6966
|
(e) => {
|
|
6594
6967
|
if (e.key === "Escape") {
|
|
6595
6968
|
setIsOpen(false);
|
|
@@ -6604,7 +6977,7 @@ function LanguageSelector({
|
|
|
6604
6977
|
},
|
|
6605
6978
|
[isOpen]
|
|
6606
6979
|
);
|
|
6607
|
-
|
|
6980
|
+
React41__namespace.useEffect(() => {
|
|
6608
6981
|
if (!isOpen) return;
|
|
6609
6982
|
function handleClickOutside(e) {
|
|
6610
6983
|
if (containerRef.current && !containerRef.current.contains(e.target)) {
|
|
@@ -6614,7 +6987,7 @@ function LanguageSelector({
|
|
|
6614
6987
|
document.addEventListener("mousedown", handleClickOutside);
|
|
6615
6988
|
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
6616
6989
|
}, [isOpen]);
|
|
6617
|
-
const ctx =
|
|
6990
|
+
const ctx = React41__namespace.useMemo(
|
|
6618
6991
|
() => ({
|
|
6619
6992
|
api,
|
|
6620
6993
|
isOpen,
|
|
@@ -6625,7 +6998,7 @@ function LanguageSelector({
|
|
|
6625
6998
|
}),
|
|
6626
6999
|
[api, isOpen, handleToggle, options, multiple]
|
|
6627
7000
|
);
|
|
6628
|
-
const grouped =
|
|
7001
|
+
const grouped = React41__namespace.useMemo(() => {
|
|
6629
7002
|
const groups = /* @__PURE__ */ new Map();
|
|
6630
7003
|
const ungrouped = [];
|
|
6631
7004
|
for (const opt of options) {
|
|
@@ -6640,14 +7013,14 @@ function LanguageSelector({
|
|
|
6640
7013
|
return { groups, ungrouped };
|
|
6641
7014
|
}, [options]);
|
|
6642
7015
|
const displayLabel = selectedValues.length > 0 ? options.filter((o) => selectedValues.includes(o.value)).map((o) => o.label).join(", ") : placeholder;
|
|
6643
|
-
return
|
|
7016
|
+
return React41__namespace.createElement(
|
|
6644
7017
|
LanguageSelectorContext.Provider,
|
|
6645
7018
|
{ value: ctx },
|
|
6646
|
-
|
|
7019
|
+
React41__namespace.createElement(
|
|
6647
7020
|
"div",
|
|
6648
7021
|
{ ref: containerRef, className: cn("rfr-language-selector relative inline-block", className) },
|
|
6649
7022
|
// Trigger
|
|
6650
|
-
|
|
7023
|
+
React41__namespace.createElement(
|
|
6651
7024
|
"button",
|
|
6652
7025
|
{
|
|
6653
7026
|
type: "button",
|
|
@@ -6659,11 +7032,11 @@ function LanguageSelector({
|
|
|
6659
7032
|
onClick: handleTriggerClick,
|
|
6660
7033
|
onKeyDown: handleKeyDown
|
|
6661
7034
|
},
|
|
6662
|
-
|
|
6663
|
-
|
|
7035
|
+
React41__namespace.createElement("span", null, displayLabel),
|
|
7036
|
+
React41__namespace.createElement("span", { "aria-hidden": "true", className: "ml-2" }, "\u25BE")
|
|
6664
7037
|
),
|
|
6665
7038
|
// Dropdown
|
|
6666
|
-
isOpen &&
|
|
7039
|
+
isOpen && React41__namespace.createElement(
|
|
6667
7040
|
"ul",
|
|
6668
7041
|
{
|
|
6669
7042
|
role: api.contentProps.role,
|
|
@@ -6672,21 +7045,21 @@ function LanguageSelector({
|
|
|
6672
7045
|
className: "absolute top-full left-0 w-full mt-1 rounded-md border bg-popover text-popover-foreground shadow-md z-50 overflow-auto max-h-60"
|
|
6673
7046
|
},
|
|
6674
7047
|
...[...grouped.groups.entries()].map(
|
|
6675
|
-
([group, opts]) =>
|
|
7048
|
+
([group, opts]) => React41__namespace.createElement(
|
|
6676
7049
|
"li",
|
|
6677
7050
|
{ key: group, role: "presentation" },
|
|
6678
|
-
|
|
7051
|
+
React41__namespace.createElement(
|
|
6679
7052
|
"div",
|
|
6680
7053
|
{ className: "px-3 py-1 text-xs font-semibold text-muted-foreground uppercase" },
|
|
6681
7054
|
group
|
|
6682
7055
|
),
|
|
6683
|
-
|
|
7056
|
+
React41__namespace.createElement(
|
|
6684
7057
|
"ul",
|
|
6685
7058
|
{ role: "group", "aria-label": group },
|
|
6686
7059
|
...opts.map((opt) => {
|
|
6687
7060
|
const optProps = api.getOptionProps(opt.value);
|
|
6688
7061
|
const isSelected = selectedValues.includes(opt.value);
|
|
6689
|
-
return
|
|
7062
|
+
return React41__namespace.createElement(
|
|
6690
7063
|
"li",
|
|
6691
7064
|
{
|
|
6692
7065
|
key: opt.value,
|
|
@@ -6694,8 +7067,8 @@ function LanguageSelector({
|
|
|
6694
7067
|
className: optionVariants({ selected: isSelected ? "true" : "false" }),
|
|
6695
7068
|
onClick: () => handleToggle(opt.value)
|
|
6696
7069
|
},
|
|
6697
|
-
isSelected &&
|
|
6698
|
-
|
|
7070
|
+
isSelected && React41__namespace.createElement("span", { "aria-hidden": "true" }, "\u2713"),
|
|
7071
|
+
React41__namespace.createElement("span", null, opt.label)
|
|
6699
7072
|
);
|
|
6700
7073
|
})
|
|
6701
7074
|
)
|
|
@@ -6704,7 +7077,7 @@ function LanguageSelector({
|
|
|
6704
7077
|
...grouped.ungrouped.map((opt) => {
|
|
6705
7078
|
const optProps = api.getOptionProps(opt.value);
|
|
6706
7079
|
const isSelected = selectedValues.includes(opt.value);
|
|
6707
|
-
return
|
|
7080
|
+
return React41__namespace.createElement(
|
|
6708
7081
|
"li",
|
|
6709
7082
|
{
|
|
6710
7083
|
key: opt.value,
|
|
@@ -6712,8 +7085,8 @@ function LanguageSelector({
|
|
|
6712
7085
|
className: optionVariants({ selected: isSelected ? "true" : "false" }),
|
|
6713
7086
|
onClick: () => handleToggle(opt.value)
|
|
6714
7087
|
},
|
|
6715
|
-
isSelected &&
|
|
6716
|
-
|
|
7088
|
+
isSelected && React41__namespace.createElement("span", { "aria-hidden": "true" }, "\u2713"),
|
|
7089
|
+
React41__namespace.createElement("span", null, opt.label)
|
|
6717
7090
|
);
|
|
6718
7091
|
})
|
|
6719
7092
|
)
|
|
@@ -6838,7 +7211,7 @@ var latestBadgeVariants = cva({
|
|
|
6838
7211
|
});
|
|
6839
7212
|
|
|
6840
7213
|
// ../react-version-selector/dist/index.js
|
|
6841
|
-
var VersionSelectorContext =
|
|
7214
|
+
var VersionSelectorContext = React41__namespace.createContext(null);
|
|
6842
7215
|
function VersionSelector({
|
|
6843
7216
|
value: controlledValue,
|
|
6844
7217
|
onValueChange,
|
|
@@ -6846,17 +7219,17 @@ function VersionSelector({
|
|
|
6846
7219
|
placeholder = "Select version...",
|
|
6847
7220
|
className
|
|
6848
7221
|
}) {
|
|
6849
|
-
const [selectedVersion, setSelectedVersion] =
|
|
6850
|
-
const [isOpen, setIsOpen] =
|
|
6851
|
-
const containerRef =
|
|
6852
|
-
const handleValueChange =
|
|
7222
|
+
const [selectedVersion, setSelectedVersion] = React41__namespace.useState(controlledValue ?? "");
|
|
7223
|
+
const [isOpen, setIsOpen] = React41__namespace.useState(false);
|
|
7224
|
+
const containerRef = React41__namespace.useRef(null);
|
|
7225
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
6853
7226
|
(val) => {
|
|
6854
7227
|
setSelectedVersion(val);
|
|
6855
7228
|
onValueChange?.(val);
|
|
6856
7229
|
},
|
|
6857
7230
|
[onValueChange]
|
|
6858
7231
|
);
|
|
6859
|
-
const api =
|
|
7232
|
+
const api = React41__namespace.useMemo(
|
|
6860
7233
|
() => createVersionSelector({
|
|
6861
7234
|
value: selectedVersion,
|
|
6862
7235
|
onValueChange: handleValueChange,
|
|
@@ -6864,7 +7237,7 @@ function VersionSelector({
|
|
|
6864
7237
|
}),
|
|
6865
7238
|
[selectedVersion, handleValueChange, versions]
|
|
6866
7239
|
);
|
|
6867
|
-
const handleSelect =
|
|
7240
|
+
const handleSelect = React41__namespace.useCallback(
|
|
6868
7241
|
(val) => {
|
|
6869
7242
|
setSelectedVersion(val);
|
|
6870
7243
|
onValueChange?.(val);
|
|
@@ -6872,10 +7245,10 @@ function VersionSelector({
|
|
|
6872
7245
|
},
|
|
6873
7246
|
[onValueChange]
|
|
6874
7247
|
);
|
|
6875
|
-
const handleTriggerClick =
|
|
7248
|
+
const handleTriggerClick = React41__namespace.useCallback(() => {
|
|
6876
7249
|
setIsOpen((prev) => !prev);
|
|
6877
7250
|
}, []);
|
|
6878
|
-
const handleKeyDown =
|
|
7251
|
+
const handleKeyDown = React41__namespace.useCallback(
|
|
6879
7252
|
(e) => {
|
|
6880
7253
|
if (e.key === "Escape") {
|
|
6881
7254
|
setIsOpen(false);
|
|
@@ -6890,7 +7263,7 @@ function VersionSelector({
|
|
|
6890
7263
|
},
|
|
6891
7264
|
[isOpen]
|
|
6892
7265
|
);
|
|
6893
|
-
|
|
7266
|
+
React41__namespace.useEffect(() => {
|
|
6894
7267
|
if (!isOpen) return;
|
|
6895
7268
|
function handleClickOutside(e) {
|
|
6896
7269
|
if (containerRef.current && !containerRef.current.contains(e.target)) {
|
|
@@ -6900,7 +7273,7 @@ function VersionSelector({
|
|
|
6900
7273
|
document.addEventListener("mousedown", handleClickOutside);
|
|
6901
7274
|
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
6902
7275
|
}, [isOpen]);
|
|
6903
|
-
const ctx =
|
|
7276
|
+
const ctx = React41__namespace.useMemo(
|
|
6904
7277
|
() => ({
|
|
6905
7278
|
api,
|
|
6906
7279
|
isOpen,
|
|
@@ -6912,14 +7285,14 @@ function VersionSelector({
|
|
|
6912
7285
|
);
|
|
6913
7286
|
const selectedOpt = versions.find((v) => v.value === selectedVersion);
|
|
6914
7287
|
const displayLabel = selectedOpt ? selectedOpt.label : placeholder;
|
|
6915
|
-
return
|
|
7288
|
+
return React41__namespace.createElement(
|
|
6916
7289
|
VersionSelectorContext.Provider,
|
|
6917
7290
|
{ value: ctx },
|
|
6918
|
-
|
|
7291
|
+
React41__namespace.createElement(
|
|
6919
7292
|
"div",
|
|
6920
7293
|
{ ref: containerRef, className: cn("rfr-version-selector relative inline-block", className) },
|
|
6921
7294
|
// Trigger
|
|
6922
|
-
|
|
7295
|
+
React41__namespace.createElement(
|
|
6923
7296
|
"button",
|
|
6924
7297
|
{
|
|
6925
7298
|
type: "button",
|
|
@@ -6931,16 +7304,16 @@ function VersionSelector({
|
|
|
6931
7304
|
onClick: handleTriggerClick,
|
|
6932
7305
|
onKeyDown: handleKeyDown
|
|
6933
7306
|
},
|
|
6934
|
-
|
|
6935
|
-
selectedOpt?.isLatest &&
|
|
7307
|
+
React41__namespace.createElement("span", null, displayLabel),
|
|
7308
|
+
selectedOpt?.isLatest && React41__namespace.createElement(
|
|
6936
7309
|
"span",
|
|
6937
7310
|
{ className: cn(latestBadgeVariants(), "ml-2") },
|
|
6938
7311
|
"Latest"
|
|
6939
7312
|
),
|
|
6940
|
-
|
|
7313
|
+
React41__namespace.createElement("span", { "aria-hidden": "true", className: "ml-2" }, "\u25BE")
|
|
6941
7314
|
),
|
|
6942
7315
|
// Dropdown
|
|
6943
|
-
isOpen &&
|
|
7316
|
+
isOpen && React41__namespace.createElement(
|
|
6944
7317
|
"ul",
|
|
6945
7318
|
{
|
|
6946
7319
|
role: api.contentProps.role,
|
|
@@ -6950,7 +7323,7 @@ function VersionSelector({
|
|
|
6950
7323
|
...versions.map((ver) => {
|
|
6951
7324
|
const optProps = api.getOptionProps(ver.value);
|
|
6952
7325
|
const isSelected = selectedVersion === ver.value;
|
|
6953
|
-
return
|
|
7326
|
+
return React41__namespace.createElement(
|
|
6954
7327
|
"li",
|
|
6955
7328
|
{
|
|
6956
7329
|
key: ver.value,
|
|
@@ -6958,8 +7331,8 @@ function VersionSelector({
|
|
|
6958
7331
|
className: optionVariants2({ selected: isSelected ? "true" : "false" }),
|
|
6959
7332
|
onClick: () => handleSelect(ver.value)
|
|
6960
7333
|
},
|
|
6961
|
-
|
|
6962
|
-
ver.isLatest &&
|
|
7334
|
+
React41__namespace.createElement("span", null, ver.label),
|
|
7335
|
+
ver.isLatest && React41__namespace.createElement(
|
|
6963
7336
|
"span",
|
|
6964
7337
|
{ className: latestBadgeVariants() },
|
|
6965
7338
|
"Latest"
|
|
@@ -7102,15 +7475,15 @@ var resizablePaneVariants = cva({
|
|
|
7102
7475
|
orientation: "horizontal"
|
|
7103
7476
|
}
|
|
7104
7477
|
});
|
|
7105
|
-
var ResizableLayoutContext =
|
|
7478
|
+
var ResizableLayoutContext = React41__namespace.createContext(null);
|
|
7106
7479
|
function useResizableLayoutContext() {
|
|
7107
|
-
const ctx =
|
|
7480
|
+
const ctx = React41__namespace.useContext(ResizableLayoutContext);
|
|
7108
7481
|
if (!ctx) {
|
|
7109
7482
|
throw new Error("Resizable compound components must be used within <ResizableLayout>");
|
|
7110
7483
|
}
|
|
7111
7484
|
return ctx;
|
|
7112
7485
|
}
|
|
7113
|
-
var ResizableLayout =
|
|
7486
|
+
var ResizableLayout = React41__namespace.forwardRef(
|
|
7114
7487
|
({
|
|
7115
7488
|
orientation = "horizontal",
|
|
7116
7489
|
defaultSizes = [50, 50],
|
|
@@ -7123,7 +7496,7 @@ var ResizableLayout = React40__namespace.forwardRef(
|
|
|
7123
7496
|
children,
|
|
7124
7497
|
...props
|
|
7125
7498
|
}, ref) => {
|
|
7126
|
-
const apiRef =
|
|
7499
|
+
const apiRef = React41__namespace.useRef(null);
|
|
7127
7500
|
if (!apiRef.current) {
|
|
7128
7501
|
apiRef.current = createResizableLayout({
|
|
7129
7502
|
orientation,
|
|
@@ -7134,22 +7507,22 @@ var ResizableLayout = React40__namespace.forwardRef(
|
|
|
7134
7507
|
});
|
|
7135
7508
|
}
|
|
7136
7509
|
const api = apiRef.current;
|
|
7137
|
-
const [sizes, setSizesState] =
|
|
7138
|
-
const setSizes =
|
|
7510
|
+
const [sizes, setSizesState] = React41__namespace.useState(api.sizes);
|
|
7511
|
+
const setSizes = React41__namespace.useCallback(
|
|
7139
7512
|
(newSizes) => {
|
|
7140
7513
|
setSizesState([...newSizes]);
|
|
7141
7514
|
onSizesChange?.(newSizes);
|
|
7142
7515
|
},
|
|
7143
7516
|
[onSizesChange]
|
|
7144
7517
|
);
|
|
7145
|
-
const cssVars =
|
|
7518
|
+
const cssVars = React41__namespace.useMemo(() => {
|
|
7146
7519
|
const vars = {};
|
|
7147
7520
|
for (let i = 0; i < sizes.length; i++) {
|
|
7148
7521
|
vars[`--rfr-pane-${i}-size`] = `${sizes[i]}%`;
|
|
7149
7522
|
}
|
|
7150
7523
|
return vars;
|
|
7151
7524
|
}, [sizes]);
|
|
7152
|
-
const contextValue =
|
|
7525
|
+
const contextValue = React41__namespace.useMemo(
|
|
7153
7526
|
() => ({ api, orientation, sizes, setSizes }),
|
|
7154
7527
|
[api, orientation, sizes, setSizes]
|
|
7155
7528
|
);
|
|
@@ -7167,7 +7540,7 @@ var ResizableLayout = React40__namespace.forwardRef(
|
|
|
7167
7540
|
}
|
|
7168
7541
|
);
|
|
7169
7542
|
ResizableLayout.displayName = "ResizableLayout";
|
|
7170
|
-
var ResizablePane =
|
|
7543
|
+
var ResizablePane = React41__namespace.forwardRef(
|
|
7171
7544
|
({ index, className, style, children, ...props }, ref) => {
|
|
7172
7545
|
const { orientation, sizes } = useResizableLayoutContext();
|
|
7173
7546
|
const size = sizes[index] ?? 50;
|
|
@@ -7191,12 +7564,12 @@ var ResizablePane = React40__namespace.forwardRef(
|
|
|
7191
7564
|
}
|
|
7192
7565
|
);
|
|
7193
7566
|
ResizablePane.displayName = "ResizablePane";
|
|
7194
|
-
var ResizableDivider =
|
|
7567
|
+
var ResizableDivider = React41__namespace.forwardRef(
|
|
7195
7568
|
({ index, className, ...props }, ref) => {
|
|
7196
7569
|
const { api, orientation, setSizes } = useResizableLayoutContext();
|
|
7197
|
-
const startPosRef =
|
|
7198
|
-
const containerSizeRef =
|
|
7199
|
-
const onPointerDown =
|
|
7570
|
+
const startPosRef = React41__namespace.useRef(0);
|
|
7571
|
+
const containerSizeRef = React41__namespace.useRef(0);
|
|
7572
|
+
const onPointerDown = React41__namespace.useCallback(
|
|
7200
7573
|
(e) => {
|
|
7201
7574
|
e.preventDefault();
|
|
7202
7575
|
const target = e.currentTarget;
|
|
@@ -7210,7 +7583,7 @@ var ResizableDivider = React40__namespace.forwardRef(
|
|
|
7210
7583
|
},
|
|
7211
7584
|
[api, index, orientation]
|
|
7212
7585
|
);
|
|
7213
|
-
const onPointerMove =
|
|
7586
|
+
const onPointerMove = React41__namespace.useCallback(
|
|
7214
7587
|
(e) => {
|
|
7215
7588
|
if (containerSizeRef.current === 0) return;
|
|
7216
7589
|
const currentPos = orientation === "horizontal" ? e.clientX : e.clientY;
|
|
@@ -7221,7 +7594,7 @@ var ResizableDivider = React40__namespace.forwardRef(
|
|
|
7221
7594
|
},
|
|
7222
7595
|
[api, orientation, setSizes]
|
|
7223
7596
|
);
|
|
7224
|
-
const onPointerUp =
|
|
7597
|
+
const onPointerUp = React41__namespace.useCallback(
|
|
7225
7598
|
(e) => {
|
|
7226
7599
|
e.currentTarget.releasePointerCapture(e.pointerId);
|
|
7227
7600
|
containerSizeRef.current = 0;
|
|
@@ -7474,26 +7847,26 @@ function createAuthShell(config) {
|
|
|
7474
7847
|
}
|
|
7475
7848
|
|
|
7476
7849
|
// ../react-app-shell/dist/index.js
|
|
7477
|
-
var AppShellContext =
|
|
7850
|
+
var AppShellContext = React41__namespace.createContext(null);
|
|
7478
7851
|
function useAppShell() {
|
|
7479
|
-
const ctx =
|
|
7852
|
+
const ctx = React41__namespace.useContext(AppShellContext);
|
|
7480
7853
|
if (!ctx) {
|
|
7481
7854
|
throw new Error("useAppShell must be used within <AppShell>");
|
|
7482
7855
|
}
|
|
7483
7856
|
return ctx;
|
|
7484
7857
|
}
|
|
7485
7858
|
function AppShellRoot({ config, children, className }) {
|
|
7486
|
-
const apiRef =
|
|
7859
|
+
const apiRef = React41__namespace.useRef(null);
|
|
7487
7860
|
if (apiRef.current === null) {
|
|
7488
7861
|
apiRef.current = createAppShell(config);
|
|
7489
7862
|
}
|
|
7490
7863
|
const api = apiRef.current;
|
|
7491
|
-
const [state, setState] =
|
|
7492
|
-
|
|
7864
|
+
const [state, setState] = React41__namespace.useState(() => api.state);
|
|
7865
|
+
React41__namespace.useEffect(() => {
|
|
7493
7866
|
setState(api.state);
|
|
7494
7867
|
return api.subscribe((s) => setState(s));
|
|
7495
7868
|
}, [api]);
|
|
7496
|
-
|
|
7869
|
+
React41__namespace.useEffect(() => {
|
|
7497
7870
|
if (typeof window === "undefined") return;
|
|
7498
7871
|
const { mobileBreakpoint, tabletBreakpoint } = api.config;
|
|
7499
7872
|
const mobileQuery = window.matchMedia(`(max-width: ${mobileBreakpoint - 1}px)`);
|
|
@@ -7514,14 +7887,14 @@ function AppShellRoot({ config, children, className }) {
|
|
|
7514
7887
|
};
|
|
7515
7888
|
}, [api]);
|
|
7516
7889
|
const cssVars = api.getCSSVariables();
|
|
7517
|
-
const ctxValue =
|
|
7890
|
+
const ctxValue = React41__namespace.useMemo(
|
|
7518
7891
|
() => ({ api, state }),
|
|
7519
7892
|
[api, state]
|
|
7520
7893
|
);
|
|
7521
|
-
return
|
|
7894
|
+
return React41__namespace.createElement(
|
|
7522
7895
|
AppShellContext.Provider,
|
|
7523
7896
|
{ value: ctxValue },
|
|
7524
|
-
|
|
7897
|
+
React41__namespace.createElement(
|
|
7525
7898
|
"div",
|
|
7526
7899
|
{
|
|
7527
7900
|
className: cn("flex h-screen w-full overflow-hidden", className),
|
|
@@ -7551,7 +7924,7 @@ function Sidebar2({ children, className }) {
|
|
|
7551
7924
|
"w-[var(--shell-sidebar-full-width)]",
|
|
7552
7925
|
state.sidebarOpen ? "translate-x-0" : isRight ? "translate-x-full" : "-translate-x-full"
|
|
7553
7926
|
] : ["relative", "w-[var(--shell-sidebar-width)]"];
|
|
7554
|
-
return
|
|
7927
|
+
return React41__namespace.createElement(
|
|
7555
7928
|
"aside",
|
|
7556
7929
|
{
|
|
7557
7930
|
...api.sidebarAriaProps,
|
|
@@ -7564,7 +7937,7 @@ function Sidebar2({ children, className }) {
|
|
|
7564
7937
|
}
|
|
7565
7938
|
Sidebar2.displayName = "AppShell.Sidebar";
|
|
7566
7939
|
function Main({ children, className }) {
|
|
7567
|
-
return
|
|
7940
|
+
return React41__namespace.createElement(
|
|
7568
7941
|
"div",
|
|
7569
7942
|
{
|
|
7570
7943
|
className: cn("flex flex-1 flex-col min-w-0 h-full", className)
|
|
@@ -7575,7 +7948,7 @@ function Main({ children, className }) {
|
|
|
7575
7948
|
Main.displayName = "AppShell.Main";
|
|
7576
7949
|
function Header({ children, className }) {
|
|
7577
7950
|
const { api, state } = useAppShell();
|
|
7578
|
-
const hamburger = state.isMobile ?
|
|
7951
|
+
const hamburger = state.isMobile ? React41__namespace.createElement(
|
|
7579
7952
|
"button",
|
|
7580
7953
|
{
|
|
7581
7954
|
type: "button",
|
|
@@ -7585,7 +7958,7 @@ function Header({ children, className }) {
|
|
|
7585
7958
|
onClick: () => api.toggleSidebar(),
|
|
7586
7959
|
className: "inline-flex items-center justify-center p-2 mr-2"
|
|
7587
7960
|
},
|
|
7588
|
-
|
|
7961
|
+
React41__namespace.createElement(
|
|
7589
7962
|
"svg",
|
|
7590
7963
|
{
|
|
7591
7964
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -7599,12 +7972,12 @@ function Header({ children, className }) {
|
|
|
7599
7972
|
strokeLinejoin: "round",
|
|
7600
7973
|
"aria-hidden": "true"
|
|
7601
7974
|
},
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
7975
|
+
React41__namespace.createElement("line", { x1: 3, y1: 6, x2: 21, y2: 6 }),
|
|
7976
|
+
React41__namespace.createElement("line", { x1: 3, y1: 12, x2: 21, y2: 12 }),
|
|
7977
|
+
React41__namespace.createElement("line", { x1: 3, y1: 18, x2: 21, y2: 18 })
|
|
7605
7978
|
)
|
|
7606
7979
|
) : null;
|
|
7607
|
-
return
|
|
7980
|
+
return React41__namespace.createElement(
|
|
7608
7981
|
"header",
|
|
7609
7982
|
{
|
|
7610
7983
|
...api.headerAriaProps,
|
|
@@ -7623,7 +7996,7 @@ Header.displayName = "AppShell.Header";
|
|
|
7623
7996
|
function Content({ children, className, maxWidth }) {
|
|
7624
7997
|
const { api } = useAppShell();
|
|
7625
7998
|
const mwClass = maxWidth ? `max-w-${maxWidth}` : "";
|
|
7626
|
-
return
|
|
7999
|
+
return React41__namespace.createElement(
|
|
7627
8000
|
"main",
|
|
7628
8001
|
{
|
|
7629
8002
|
...api.mainAriaProps,
|
|
@@ -7642,7 +8015,7 @@ function MobileNav2({ children, className }) {
|
|
|
7642
8015
|
const { api, state } = useAppShell();
|
|
7643
8016
|
if (!state.isMobile) return null;
|
|
7644
8017
|
if (api.config.mobileNavPosition === "none") return null;
|
|
7645
|
-
return
|
|
8018
|
+
return React41__namespace.createElement(
|
|
7646
8019
|
"nav",
|
|
7647
8020
|
{
|
|
7648
8021
|
...api.mobileNavAriaProps,
|
|
@@ -7661,7 +8034,7 @@ MobileNav2.displayName = "AppShell.MobileNav";
|
|
|
7661
8034
|
function Overlay({ className }) {
|
|
7662
8035
|
const { api, state } = useAppShell();
|
|
7663
8036
|
if (!state.isMobile || !state.sidebarOpen) return null;
|
|
7664
|
-
return
|
|
8037
|
+
return React41__namespace.createElement("div", {
|
|
7665
8038
|
...api.overlayAriaProps,
|
|
7666
8039
|
className: cn(
|
|
7667
8040
|
"fixed inset-0 z-30 bg-black/50 transition-opacity",
|
|
@@ -7680,29 +8053,29 @@ var AppShell = Object.assign(AppShellRoot, {
|
|
|
7680
8053
|
MobileNav: MobileNav2,
|
|
7681
8054
|
Overlay
|
|
7682
8055
|
});
|
|
7683
|
-
var PageShellContext =
|
|
8056
|
+
var PageShellContext = React41__namespace.createContext(null);
|
|
7684
8057
|
function usePageShell() {
|
|
7685
|
-
const ctx =
|
|
8058
|
+
const ctx = React41__namespace.useContext(PageShellContext);
|
|
7686
8059
|
if (!ctx) {
|
|
7687
8060
|
throw new Error("PageShell compound components must be used within <PageShell>");
|
|
7688
8061
|
}
|
|
7689
8062
|
return ctx;
|
|
7690
8063
|
}
|
|
7691
8064
|
function PageShellRoot({ config, children, className }) {
|
|
7692
|
-
const apiRef =
|
|
8065
|
+
const apiRef = React41__namespace.useRef(null);
|
|
7693
8066
|
if (apiRef.current === null) {
|
|
7694
8067
|
apiRef.current = createPageShell(config);
|
|
7695
8068
|
}
|
|
7696
8069
|
const api = apiRef.current;
|
|
7697
8070
|
const cssVars = api.getCSSVariables();
|
|
7698
|
-
const ctxValue =
|
|
8071
|
+
const ctxValue = React41__namespace.useMemo(
|
|
7699
8072
|
() => ({ api }),
|
|
7700
8073
|
[api]
|
|
7701
8074
|
);
|
|
7702
|
-
return
|
|
8075
|
+
return React41__namespace.createElement(
|
|
7703
8076
|
PageShellContext.Provider,
|
|
7704
8077
|
{ value: ctxValue },
|
|
7705
|
-
|
|
8078
|
+
React41__namespace.createElement(
|
|
7706
8079
|
"div",
|
|
7707
8080
|
{
|
|
7708
8081
|
className: cn("flex min-h-screen flex-col", className),
|
|
@@ -7718,7 +8091,7 @@ function Nav({ children, className }) {
|
|
|
7718
8091
|
const { api } = usePageShell();
|
|
7719
8092
|
const stickyClass = api.config.navSticky ? "sticky top-0 z-40" : "";
|
|
7720
8093
|
const transparentClass = api.config.navTransparent ? "bg-transparent" : "bg-background border-b";
|
|
7721
|
-
return
|
|
8094
|
+
return React41__namespace.createElement(
|
|
7722
8095
|
"nav",
|
|
7723
8096
|
{
|
|
7724
8097
|
...api.navAriaProps,
|
|
@@ -7743,7 +8116,7 @@ function Section({
|
|
|
7743
8116
|
}) {
|
|
7744
8117
|
const { api } = usePageShell();
|
|
7745
8118
|
const sectionClasses = api.getSectionClasses({ fullWidth, maxWidth, padding, background });
|
|
7746
|
-
return
|
|
8119
|
+
return React41__namespace.createElement(
|
|
7747
8120
|
"section",
|
|
7748
8121
|
{
|
|
7749
8122
|
className: cn("py-12", sectionClasses, className)
|
|
@@ -7755,7 +8128,7 @@ Section.displayName = "PageShell.Section";
|
|
|
7755
8128
|
function Footer2({ children, className, columns }) {
|
|
7756
8129
|
const { api } = usePageShell();
|
|
7757
8130
|
const cols = columns ?? api.config.footerColumns;
|
|
7758
|
-
return
|
|
8131
|
+
return React41__namespace.createElement(
|
|
7759
8132
|
"footer",
|
|
7760
8133
|
{
|
|
7761
8134
|
...api.footerAriaProps,
|
|
@@ -7764,7 +8137,7 @@ function Footer2({ children, className, columns }) {
|
|
|
7764
8137
|
className
|
|
7765
8138
|
)
|
|
7766
8139
|
},
|
|
7767
|
-
|
|
8140
|
+
React41__namespace.createElement(
|
|
7768
8141
|
"div",
|
|
7769
8142
|
{
|
|
7770
8143
|
className: `mx-auto max-w-[var(--page-max-width)] grid gap-8`,
|
|
@@ -7782,28 +8155,28 @@ Object.assign(PageShellRoot, {
|
|
|
7782
8155
|
Section,
|
|
7783
8156
|
Footer: Footer2
|
|
7784
8157
|
});
|
|
7785
|
-
var AuthShellContext =
|
|
8158
|
+
var AuthShellContext = React41__namespace.createContext(null);
|
|
7786
8159
|
function useAuthShell() {
|
|
7787
|
-
const ctx =
|
|
8160
|
+
const ctx = React41__namespace.useContext(AuthShellContext);
|
|
7788
8161
|
if (!ctx) {
|
|
7789
8162
|
throw new Error("AuthShell compound components must be used within <AuthShell>");
|
|
7790
8163
|
}
|
|
7791
8164
|
return ctx;
|
|
7792
8165
|
}
|
|
7793
8166
|
function AuthShellRoot({ config, children, className }) {
|
|
7794
|
-
const apiRef =
|
|
8167
|
+
const apiRef = React41__namespace.useRef(null);
|
|
7795
8168
|
if (apiRef.current === null) {
|
|
7796
8169
|
apiRef.current = createAuthShell(config);
|
|
7797
8170
|
}
|
|
7798
8171
|
const api = apiRef.current;
|
|
7799
|
-
const ctxValue =
|
|
8172
|
+
const ctxValue = React41__namespace.useMemo(
|
|
7800
8173
|
() => ({ api }),
|
|
7801
8174
|
[api]
|
|
7802
8175
|
);
|
|
7803
|
-
return
|
|
8176
|
+
return React41__namespace.createElement(
|
|
7804
8177
|
AuthShellContext.Provider,
|
|
7805
8178
|
{ value: ctxValue },
|
|
7806
|
-
|
|
8179
|
+
React41__namespace.createElement(
|
|
7807
8180
|
"div",
|
|
7808
8181
|
{
|
|
7809
8182
|
...api.ariaProps,
|
|
@@ -7817,7 +8190,7 @@ function AuthShellRoot({ config, children, className }) {
|
|
|
7817
8190
|
AuthShellRoot.displayName = "AuthShell";
|
|
7818
8191
|
function Card({ children, className }) {
|
|
7819
8192
|
const { api } = useAuthShell();
|
|
7820
|
-
return
|
|
8193
|
+
return React41__namespace.createElement(
|
|
7821
8194
|
"div",
|
|
7822
8195
|
{
|
|
7823
8196
|
className: cn(api.cardClasses, className),
|
|
@@ -7905,7 +8278,7 @@ var avatarFallbackVariants = cva({
|
|
|
7905
8278
|
size: "md"
|
|
7906
8279
|
}
|
|
7907
8280
|
});
|
|
7908
|
-
var AvatarContext =
|
|
8281
|
+
var AvatarContext = React41__namespace.createContext({
|
|
7909
8282
|
size: "md",
|
|
7910
8283
|
imageLoaded: false,
|
|
7911
8284
|
imageError: false,
|
|
@@ -7914,10 +8287,10 @@ var AvatarContext = React40__namespace.createContext({
|
|
|
7914
8287
|
setImageError: () => {
|
|
7915
8288
|
}
|
|
7916
8289
|
});
|
|
7917
|
-
var Avatar =
|
|
8290
|
+
var Avatar = React41__namespace.forwardRef(
|
|
7918
8291
|
({ size = "md", className, children, ...props }, ref) => {
|
|
7919
|
-
const [imageLoaded, setImageLoaded] =
|
|
7920
|
-
const [imageError, setImageError] =
|
|
8292
|
+
const [imageLoaded, setImageLoaded] = React41__namespace.useState(false);
|
|
8293
|
+
const [imageError, setImageError] = React41__namespace.useState(false);
|
|
7921
8294
|
const api = createAvatar({ size });
|
|
7922
8295
|
return /* @__PURE__ */ jsxRuntime.jsx(AvatarContext.Provider, { value: { size, imageLoaded, imageError, setImageLoaded, setImageError }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
7923
8296
|
"span",
|
|
@@ -7933,9 +8306,9 @@ var Avatar = React40__namespace.forwardRef(
|
|
|
7933
8306
|
}
|
|
7934
8307
|
);
|
|
7935
8308
|
Avatar.displayName = "Avatar";
|
|
7936
|
-
var AvatarImage =
|
|
8309
|
+
var AvatarImage = React41__namespace.forwardRef(
|
|
7937
8310
|
({ className, src, alt = "", onLoad, onError, ...props }, ref) => {
|
|
7938
|
-
const { setImageLoaded, setImageError } =
|
|
8311
|
+
const { setImageLoaded, setImageError } = React41__namespace.useContext(AvatarContext);
|
|
7939
8312
|
const handleLoad = (e) => {
|
|
7940
8313
|
setImageLoaded(true);
|
|
7941
8314
|
onLoad?.(e);
|
|
@@ -7959,9 +8332,9 @@ var AvatarImage = React40__namespace.forwardRef(
|
|
|
7959
8332
|
}
|
|
7960
8333
|
);
|
|
7961
8334
|
AvatarImage.displayName = "AvatarImage";
|
|
7962
|
-
var AvatarFallback =
|
|
8335
|
+
var AvatarFallback = React41__namespace.forwardRef(
|
|
7963
8336
|
({ className, children, ...props }, ref) => {
|
|
7964
|
-
const { size } =
|
|
8337
|
+
const { size } = React41__namespace.useContext(AvatarContext);
|
|
7965
8338
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7966
8339
|
"span",
|
|
7967
8340
|
{
|
|
@@ -8078,28 +8451,28 @@ var avatarPresenceDotVariants = cva({
|
|
|
8078
8451
|
// ../react-avatar-group/dist/index.js
|
|
8079
8452
|
function AvatarGroup({ users, max, size = "md", className }) {
|
|
8080
8453
|
const api = createAvatarGroup({ users, max});
|
|
8081
|
-
return
|
|
8454
|
+
return React41__namespace.createElement(
|
|
8082
8455
|
"div",
|
|
8083
8456
|
{ ...api.ariaProps, className: cn(avatarGroupStyles, className) },
|
|
8084
8457
|
api.visibleUsers.map(
|
|
8085
|
-
(user) =>
|
|
8458
|
+
(user) => React41__namespace.createElement(
|
|
8086
8459
|
"div",
|
|
8087
8460
|
{
|
|
8088
8461
|
key: user.id,
|
|
8089
8462
|
className: avatarVariants2({ size }),
|
|
8090
8463
|
...api.getAvatarAriaProps(user)
|
|
8091
8464
|
},
|
|
8092
|
-
user.src ?
|
|
8465
|
+
user.src ? React41__namespace.createElement("img", {
|
|
8093
8466
|
src: user.src,
|
|
8094
8467
|
alt: user.name,
|
|
8095
8468
|
className: avatarImageStyles
|
|
8096
|
-
}) :
|
|
8097
|
-
user.status &&
|
|
8469
|
+
}) : React41__namespace.createElement("span", null, api.getInitials(user.name)),
|
|
8470
|
+
user.status && React41__namespace.createElement("span", {
|
|
8098
8471
|
className: avatarPresenceDotVariants({ size, status: user.status })
|
|
8099
8472
|
})
|
|
8100
8473
|
)
|
|
8101
8474
|
),
|
|
8102
|
-
api.overflowCount > 0 &&
|
|
8475
|
+
api.overflowCount > 0 && React41__namespace.createElement(
|
|
8103
8476
|
"div",
|
|
8104
8477
|
{
|
|
8105
8478
|
className: avatarOverflowBadgeVariants({ size }),
|
|
@@ -8183,7 +8556,7 @@ var cardContentVariants = cva({
|
|
|
8183
8556
|
var cardFooterVariants = cva({
|
|
8184
8557
|
base: "flex items-center p-6 pt-0"
|
|
8185
8558
|
});
|
|
8186
|
-
var Card2 =
|
|
8559
|
+
var Card2 = React41__namespace.forwardRef(
|
|
8187
8560
|
({ className, ...props }, ref) => {
|
|
8188
8561
|
const api = createCard();
|
|
8189
8562
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8199,7 +8572,7 @@ var Card2 = React40__namespace.forwardRef(
|
|
|
8199
8572
|
}
|
|
8200
8573
|
);
|
|
8201
8574
|
Card2.displayName = "Card";
|
|
8202
|
-
var CardHeader =
|
|
8575
|
+
var CardHeader = React41__namespace.forwardRef(
|
|
8203
8576
|
({ className, ...props }, ref) => {
|
|
8204
8577
|
const api = createCardHeader();
|
|
8205
8578
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8214,7 +8587,7 @@ var CardHeader = React40__namespace.forwardRef(
|
|
|
8214
8587
|
}
|
|
8215
8588
|
);
|
|
8216
8589
|
CardHeader.displayName = "CardHeader";
|
|
8217
|
-
var CardTitle =
|
|
8590
|
+
var CardTitle = React41__namespace.forwardRef(
|
|
8218
8591
|
({ className, ...props }, ref) => {
|
|
8219
8592
|
const api = createCardTitle();
|
|
8220
8593
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8229,7 +8602,7 @@ var CardTitle = React40__namespace.forwardRef(
|
|
|
8229
8602
|
}
|
|
8230
8603
|
);
|
|
8231
8604
|
CardTitle.displayName = "CardTitle";
|
|
8232
|
-
var CardDescription =
|
|
8605
|
+
var CardDescription = React41__namespace.forwardRef(
|
|
8233
8606
|
({ className, ...props }, ref) => {
|
|
8234
8607
|
const api = createCardDescription();
|
|
8235
8608
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8244,7 +8617,7 @@ var CardDescription = React40__namespace.forwardRef(
|
|
|
8244
8617
|
}
|
|
8245
8618
|
);
|
|
8246
8619
|
CardDescription.displayName = "CardDescription";
|
|
8247
|
-
var CardContent =
|
|
8620
|
+
var CardContent = React41__namespace.forwardRef(
|
|
8248
8621
|
({ className, ...props }, ref) => {
|
|
8249
8622
|
const api = createCardContent();
|
|
8250
8623
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8259,7 +8632,7 @@ var CardContent = React40__namespace.forwardRef(
|
|
|
8259
8632
|
}
|
|
8260
8633
|
);
|
|
8261
8634
|
CardContent.displayName = "CardContent";
|
|
8262
|
-
var CardFooter =
|
|
8635
|
+
var CardFooter = React41__namespace.forwardRef(
|
|
8263
8636
|
({ className, ...props }, ref) => {
|
|
8264
8637
|
const api = createCardFooter();
|
|
8265
8638
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8340,7 +8713,7 @@ var checkboxVariants = cva({
|
|
|
8340
8713
|
size: "default"
|
|
8341
8714
|
}
|
|
8342
8715
|
});
|
|
8343
|
-
var Checkbox =
|
|
8716
|
+
var Checkbox = React41__namespace.forwardRef(
|
|
8344
8717
|
({ checked = false, onCheckedChange, disabled = false, size = "default", className, ...props }, ref) => {
|
|
8345
8718
|
const api = createCheckbox({ checked, disabled });
|
|
8346
8719
|
const checkedVariant = checked === "indeterminate" ? "indeterminate" : checked ? "true" : "false";
|
|
@@ -8651,13 +9024,13 @@ function DatePicker({
|
|
|
8651
9024
|
className,
|
|
8652
9025
|
disabled = false
|
|
8653
9026
|
}) {
|
|
8654
|
-
const [open, setOpen] =
|
|
8655
|
-
const [currentMonth, setCurrentMonth] =
|
|
9027
|
+
const [open, setOpen] = React41__namespace.useState(false);
|
|
9028
|
+
const [currentMonth, setCurrentMonth] = React41__namespace.useState(
|
|
8656
9029
|
() => value ? new Date(value.getFullYear(), value.getMonth(), 1) : new Date((/* @__PURE__ */ new Date()).getFullYear(), (/* @__PURE__ */ new Date()).getMonth(), 1)
|
|
8657
9030
|
);
|
|
8658
|
-
const [view, setView] =
|
|
8659
|
-
const containerRef =
|
|
8660
|
-
const api =
|
|
9031
|
+
const [view, setView] = React41__namespace.useState("calendar");
|
|
9032
|
+
const containerRef = React41__namespace.useRef(null);
|
|
9033
|
+
const api = React41__namespace.useMemo(
|
|
8661
9034
|
() => createDatePicker({
|
|
8662
9035
|
value,
|
|
8663
9036
|
onChange,
|
|
@@ -8671,7 +9044,7 @@ function DatePicker({
|
|
|
8671
9044
|
}),
|
|
8672
9045
|
[value, onChange, minDate, maxDate, showTime, format, placeholder, open]
|
|
8673
9046
|
);
|
|
8674
|
-
|
|
9047
|
+
React41__namespace.useMemo(() => {
|
|
8675
9048
|
createDatePicker({
|
|
8676
9049
|
value,
|
|
8677
9050
|
minDate,
|
|
@@ -8686,7 +9059,7 @@ function DatePicker({
|
|
|
8686
9059
|
});
|
|
8687
9060
|
return tempApi.days;
|
|
8688
9061
|
}, [value, minDate, maxDate, currentMonth]);
|
|
8689
|
-
|
|
9062
|
+
React41__namespace.useEffect(() => {
|
|
8690
9063
|
if (!open) return;
|
|
8691
9064
|
function handleClick(e) {
|
|
8692
9065
|
if (containerRef.current && !containerRef.current.contains(e.target)) {
|
|
@@ -8696,7 +9069,7 @@ function DatePicker({
|
|
|
8696
9069
|
document.addEventListener("mousedown", handleClick);
|
|
8697
9070
|
return () => document.removeEventListener("mousedown", handleClick);
|
|
8698
9071
|
}, [open]);
|
|
8699
|
-
|
|
9072
|
+
React41__namespace.useEffect(() => {
|
|
8700
9073
|
if (!open) return;
|
|
8701
9074
|
function handleKeyDown(e) {
|
|
8702
9075
|
if (e.key === "Escape") {
|
|
@@ -8734,10 +9107,10 @@ function DatePicker({
|
|
|
8734
9107
|
onChange?.(newDate);
|
|
8735
9108
|
};
|
|
8736
9109
|
const monthLabel = currentMonth.toLocaleDateString("en-US", { month: "long", year: "numeric" });
|
|
8737
|
-
return
|
|
9110
|
+
return React41__namespace.createElement(
|
|
8738
9111
|
"div",
|
|
8739
9112
|
{ ref: containerRef, className: cn("relative inline-block", className) },
|
|
8740
|
-
|
|
9113
|
+
React41__namespace.createElement(
|
|
8741
9114
|
"button",
|
|
8742
9115
|
{
|
|
8743
9116
|
type: "button",
|
|
@@ -8749,17 +9122,17 @@ function DatePicker({
|
|
|
8749
9122
|
},
|
|
8750
9123
|
displayValue
|
|
8751
9124
|
),
|
|
8752
|
-
open &&
|
|
9125
|
+
open && React41__namespace.createElement(
|
|
8753
9126
|
"div",
|
|
8754
9127
|
{
|
|
8755
9128
|
className: datePickerDropdownStyles,
|
|
8756
9129
|
role: "dialog",
|
|
8757
9130
|
"aria-modal": true
|
|
8758
9131
|
},
|
|
8759
|
-
|
|
9132
|
+
React41__namespace.createElement(
|
|
8760
9133
|
"div",
|
|
8761
9134
|
{ className: "flex items-center justify-between mb-3" },
|
|
8762
|
-
|
|
9135
|
+
React41__namespace.createElement(
|
|
8763
9136
|
"button",
|
|
8764
9137
|
{
|
|
8765
9138
|
type: "button",
|
|
@@ -8769,8 +9142,8 @@ function DatePicker({
|
|
|
8769
9142
|
},
|
|
8770
9143
|
"\u2039"
|
|
8771
9144
|
),
|
|
8772
|
-
|
|
8773
|
-
|
|
9145
|
+
React41__namespace.createElement("span", { className: "text-sm font-medium" }, monthLabel),
|
|
9146
|
+
React41__namespace.createElement(
|
|
8774
9147
|
"button",
|
|
8775
9148
|
{
|
|
8776
9149
|
type: "button",
|
|
@@ -8781,11 +9154,11 @@ function DatePicker({
|
|
|
8781
9154
|
"\u203A"
|
|
8782
9155
|
)
|
|
8783
9156
|
),
|
|
8784
|
-
|
|
9157
|
+
React41__namespace.createElement(
|
|
8785
9158
|
"div",
|
|
8786
9159
|
{ className: "grid grid-cols-7 gap-0 text-center", role: "grid" },
|
|
8787
9160
|
["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"].map(
|
|
8788
|
-
(d) =>
|
|
9161
|
+
(d) => React41__namespace.createElement("div", { key: d, className: "text-xs text-muted-foreground py-1 font-medium" }, d)
|
|
8789
9162
|
),
|
|
8790
9163
|
api.days.map((day, i) => {
|
|
8791
9164
|
let state = "default";
|
|
@@ -8793,7 +9166,7 @@ function DatePicker({
|
|
|
8793
9166
|
else if (day.isSelected) state = "selected";
|
|
8794
9167
|
else if (day.isToday) state = "today";
|
|
8795
9168
|
else if (!day.isCurrentMonth) state = "outside";
|
|
8796
|
-
return
|
|
9169
|
+
return React41__namespace.createElement(
|
|
8797
9170
|
"button",
|
|
8798
9171
|
{
|
|
8799
9172
|
key: i,
|
|
@@ -8808,11 +9181,11 @@ function DatePicker({
|
|
|
8808
9181
|
);
|
|
8809
9182
|
})
|
|
8810
9183
|
),
|
|
8811
|
-
showTime &&
|
|
9184
|
+
showTime && React41__namespace.createElement(
|
|
8812
9185
|
"div",
|
|
8813
9186
|
{ className: datePickerTimeStyles },
|
|
8814
|
-
|
|
8815
|
-
|
|
9187
|
+
React41__namespace.createElement("span", { className: "text-sm text-muted-foreground" }, "Time:"),
|
|
9188
|
+
React41__namespace.createElement("input", {
|
|
8816
9189
|
type: "number",
|
|
8817
9190
|
min: 0,
|
|
8818
9191
|
max: 23,
|
|
@@ -8821,8 +9194,8 @@ function DatePicker({
|
|
|
8821
9194
|
className: datePickerTimeInputStyles,
|
|
8822
9195
|
"aria-label": "Hours"
|
|
8823
9196
|
}),
|
|
8824
|
-
|
|
8825
|
-
|
|
9197
|
+
React41__namespace.createElement("span", { className: "text-muted-foreground" }, ":"),
|
|
9198
|
+
React41__namespace.createElement("input", {
|
|
8826
9199
|
type: "number",
|
|
8827
9200
|
min: 0,
|
|
8828
9201
|
max: 59,
|
|
@@ -9094,10 +9467,10 @@ var statusBarVariants = cva({
|
|
|
9094
9467
|
theme: "dark"
|
|
9095
9468
|
}
|
|
9096
9469
|
});
|
|
9097
|
-
var MonacoDiffEditor =
|
|
9470
|
+
var MonacoDiffEditor = React41__namespace.lazy(
|
|
9098
9471
|
() => import('@monaco-editor/react').then((m) => ({ default: m.DiffEditor }))
|
|
9099
9472
|
);
|
|
9100
|
-
var DiffViewer =
|
|
9473
|
+
var DiffViewer = React41__namespace.forwardRef(
|
|
9101
9474
|
({
|
|
9102
9475
|
files,
|
|
9103
9476
|
original = "",
|
|
@@ -9118,12 +9491,12 @@ var DiffViewer = React40__namespace.forwardRef(
|
|
|
9118
9491
|
className,
|
|
9119
9492
|
editorOptions
|
|
9120
9493
|
}, ref) => {
|
|
9121
|
-
const [activeIdx, setActiveIdx] =
|
|
9122
|
-
const [sidebarOpen, setSidebarOpen] =
|
|
9123
|
-
const [viewMode, setViewMode] =
|
|
9124
|
-
|
|
9125
|
-
|
|
9126
|
-
const api =
|
|
9494
|
+
const [activeIdx, setActiveIdx] = React41__namespace.useState(controlledIndex);
|
|
9495
|
+
const [sidebarOpen, setSidebarOpen] = React41__namespace.useState(showSidebar);
|
|
9496
|
+
const [viewMode, setViewMode] = React41__namespace.useState(controlledViewMode);
|
|
9497
|
+
React41__namespace.useEffect(() => setActiveIdx(controlledIndex), [controlledIndex]);
|
|
9498
|
+
React41__namespace.useEffect(() => setViewMode(controlledViewMode), [controlledViewMode]);
|
|
9499
|
+
const api = React41__namespace.useMemo(
|
|
9127
9500
|
() => createDiffViewer({
|
|
9128
9501
|
files,
|
|
9129
9502
|
activeFileIndex: activeIdx,
|
|
@@ -9145,7 +9518,7 @@ var DiffViewer = React40__namespace.forwardRef(
|
|
|
9145
9518
|
);
|
|
9146
9519
|
const activeFile = files[activeIdx];
|
|
9147
9520
|
const detectedLang = language || (activeFile ? api.getLanguageForFile(activeFile.path) : "plaintext");
|
|
9148
|
-
|
|
9521
|
+
React41__namespace.useEffect(() => {
|
|
9149
9522
|
function onKey(e) {
|
|
9150
9523
|
if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement) return;
|
|
9151
9524
|
if (e.key === "j") {
|
|
@@ -9237,7 +9610,7 @@ var DiffViewer = React40__namespace.forwardRef(
|
|
|
9237
9610
|
);
|
|
9238
9611
|
}) }),
|
|
9239
9612
|
/* @__PURE__ */ jsxRuntime.jsx("div", { style: { flex: 1 }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
9240
|
-
|
|
9613
|
+
React41__namespace.Suspense,
|
|
9241
9614
|
{
|
|
9242
9615
|
fallback: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center h-full text-xs opacity-50", children: "Loading editor..." }),
|
|
9243
9616
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -9670,10 +10043,10 @@ var emojiPickerSectionLabelStyles = "px-2 py-1 text-xs font-medium text-muted-fo
|
|
|
9670
10043
|
|
|
9671
10044
|
// ../react-emoji-picker/dist/index.js
|
|
9672
10045
|
function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className }) {
|
|
9673
|
-
const [search, setSearch] =
|
|
9674
|
-
const [activeCategory, setActiveCategory] =
|
|
9675
|
-
const [recentEmojis, setRecentEmojis] =
|
|
9676
|
-
const api =
|
|
10046
|
+
const [search, setSearch] = React41__namespace.useState("");
|
|
10047
|
+
const [activeCategory, setActiveCategory] = React41__namespace.useState("smileys");
|
|
10048
|
+
const [recentEmojis, setRecentEmojis] = React41__namespace.useState(initialRecent);
|
|
10049
|
+
const api = React41__namespace.useMemo(
|
|
9677
10050
|
() => createEmojiPicker({
|
|
9678
10051
|
onSelect: void 0,
|
|
9679
10052
|
search,
|
|
@@ -9681,7 +10054,7 @@ function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className })
|
|
|
9681
10054
|
}),
|
|
9682
10055
|
[search, recentEmojis]
|
|
9683
10056
|
);
|
|
9684
|
-
const filteredEmojis =
|
|
10057
|
+
const filteredEmojis = React41__namespace.useMemo(() => {
|
|
9685
10058
|
if (search.trim()) {
|
|
9686
10059
|
const query = search.toLowerCase().trim();
|
|
9687
10060
|
const allEmojis = EMOJI_CATEGORIES.flatMap((cat) => EMOJI_DATA[cat]);
|
|
@@ -9701,22 +10074,22 @@ function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className })
|
|
|
9701
10074
|
setActiveCategory(cat);
|
|
9702
10075
|
setSearch("");
|
|
9703
10076
|
};
|
|
9704
|
-
return
|
|
10077
|
+
return React41__namespace.createElement(
|
|
9705
10078
|
"div",
|
|
9706
10079
|
{ className: cn(emojiPickerContainerStyles, className), ...api.ariaProps },
|
|
9707
10080
|
// Search input
|
|
9708
|
-
|
|
10081
|
+
React41__namespace.createElement("input", {
|
|
9709
10082
|
...api.searchInputProps,
|
|
9710
10083
|
className: emojiPickerSearchStyles,
|
|
9711
10084
|
value: search,
|
|
9712
10085
|
onChange: (e) => setSearch(e.target.value)
|
|
9713
10086
|
}),
|
|
9714
10087
|
// Category tabs
|
|
9715
|
-
!search &&
|
|
10088
|
+
!search && React41__namespace.createElement(
|
|
9716
10089
|
"div",
|
|
9717
10090
|
{ className: emojiPickerCategoryBarStyles },
|
|
9718
10091
|
api.categoryTabs.map(
|
|
9719
|
-
(tab) =>
|
|
10092
|
+
(tab) => React41__namespace.createElement(
|
|
9720
10093
|
"button",
|
|
9721
10094
|
{
|
|
9722
10095
|
key: tab.category,
|
|
@@ -9733,15 +10106,15 @@ function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className })
|
|
|
9733
10106
|
)
|
|
9734
10107
|
),
|
|
9735
10108
|
// Recent emojis section
|
|
9736
|
-
!search && recentEmojis.length > 0 &&
|
|
10109
|
+
!search && recentEmojis.length > 0 && React41__namespace.createElement(
|
|
9737
10110
|
"div",
|
|
9738
10111
|
null,
|
|
9739
|
-
|
|
9740
|
-
|
|
10112
|
+
React41__namespace.createElement("div", { className: emojiPickerSectionLabelStyles }, "Recent"),
|
|
10113
|
+
React41__namespace.createElement(
|
|
9741
10114
|
"div",
|
|
9742
10115
|
{ className: emojiPickerGridStyles },
|
|
9743
10116
|
recentEmojis.map(
|
|
9744
|
-
(emoji, i) =>
|
|
10117
|
+
(emoji, i) => React41__namespace.createElement(
|
|
9745
10118
|
"button",
|
|
9746
10119
|
{
|
|
9747
10120
|
key: `recent-${emoji.emoji}-${i}`,
|
|
@@ -9756,19 +10129,19 @@ function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className })
|
|
|
9756
10129
|
)
|
|
9757
10130
|
),
|
|
9758
10131
|
// Emoji grid
|
|
9759
|
-
|
|
10132
|
+
React41__namespace.createElement(
|
|
9760
10133
|
"div",
|
|
9761
10134
|
null,
|
|
9762
|
-
!search &&
|
|
10135
|
+
!search && React41__namespace.createElement(
|
|
9763
10136
|
"div",
|
|
9764
10137
|
{ className: emojiPickerSectionLabelStyles },
|
|
9765
10138
|
CATEGORY_LABELS[activeCategory]
|
|
9766
10139
|
),
|
|
9767
|
-
|
|
10140
|
+
React41__namespace.createElement(
|
|
9768
10141
|
"div",
|
|
9769
10142
|
{ className: emojiPickerGridStyles },
|
|
9770
10143
|
filteredEmojis.map(
|
|
9771
|
-
(emoji, i) =>
|
|
10144
|
+
(emoji, i) => React41__namespace.createElement(
|
|
9772
10145
|
"button",
|
|
9773
10146
|
{
|
|
9774
10147
|
key: `${emoji.emoji}-${i}`,
|
|
@@ -9780,7 +10153,7 @@ function EmojiPicker({ onSelect, recentEmojis: initialRecent = [], className })
|
|
|
9780
10153
|
emoji.emoji
|
|
9781
10154
|
)
|
|
9782
10155
|
),
|
|
9783
|
-
filteredEmojis.length === 0 &&
|
|
10156
|
+
filteredEmojis.length === 0 && React41__namespace.createElement(
|
|
9784
10157
|
"div",
|
|
9785
10158
|
{ className: "col-span-8 text-center text-sm text-muted-foreground py-4" },
|
|
9786
10159
|
"No emojis found"
|
|
@@ -9980,10 +10353,10 @@ function FileUpload({
|
|
|
9980
10353
|
className,
|
|
9981
10354
|
children
|
|
9982
10355
|
}) {
|
|
9983
|
-
const [files, setFiles] =
|
|
9984
|
-
const [isDragging, setIsDragging] =
|
|
9985
|
-
const inputRef =
|
|
9986
|
-
const api =
|
|
10356
|
+
const [files, setFiles] = React41__namespace.useState([]);
|
|
10357
|
+
const [isDragging, setIsDragging] = React41__namespace.useState(false);
|
|
10358
|
+
const inputRef = React41__namespace.useRef(null);
|
|
10359
|
+
const api = React41__namespace.useMemo(
|
|
9987
10360
|
() => createFileUpload({
|
|
9988
10361
|
accept,
|
|
9989
10362
|
maxSize,
|
|
@@ -10048,17 +10421,17 @@ function FileUpload({
|
|
|
10048
10421
|
handleClick();
|
|
10049
10422
|
}
|
|
10050
10423
|
};
|
|
10051
|
-
return
|
|
10424
|
+
return React41__namespace.createElement(
|
|
10052
10425
|
"div",
|
|
10053
10426
|
{ className },
|
|
10054
10427
|
// Hidden file input
|
|
10055
|
-
|
|
10428
|
+
React41__namespace.createElement("input", {
|
|
10056
10429
|
ref: inputRef,
|
|
10057
10430
|
...api.inputProps,
|
|
10058
10431
|
onChange: handleInputChange
|
|
10059
10432
|
}),
|
|
10060
10433
|
// Drop zone
|
|
10061
|
-
|
|
10434
|
+
React41__namespace.createElement(
|
|
10062
10435
|
"div",
|
|
10063
10436
|
{
|
|
10064
10437
|
...api.dropZoneProps,
|
|
@@ -10072,21 +10445,21 @@ function FileUpload({
|
|
|
10072
10445
|
onDragOver: handleDragOver,
|
|
10073
10446
|
onDrop: handleDrop
|
|
10074
10447
|
},
|
|
10075
|
-
children ??
|
|
10076
|
-
|
|
10448
|
+
children ?? React41__namespace.createElement(
|
|
10449
|
+
React41__namespace.Fragment,
|
|
10077
10450
|
null,
|
|
10078
|
-
|
|
10079
|
-
|
|
10451
|
+
React41__namespace.createElement("div", { className: "text-2xl mb-2" }, "\u{1F4C1}"),
|
|
10452
|
+
React41__namespace.createElement(
|
|
10080
10453
|
"p",
|
|
10081
10454
|
{ className: "text-sm text-muted-foreground" },
|
|
10082
10455
|
"Drag & drop files here, or click to select"
|
|
10083
10456
|
),
|
|
10084
|
-
accept &&
|
|
10457
|
+
accept && React41__namespace.createElement(
|
|
10085
10458
|
"p",
|
|
10086
10459
|
{ className: "text-xs text-muted-foreground mt-1" },
|
|
10087
10460
|
`Accepted: ${accept}`
|
|
10088
10461
|
),
|
|
10089
|
-
maxSize &&
|
|
10462
|
+
maxSize && React41__namespace.createElement(
|
|
10090
10463
|
"p",
|
|
10091
10464
|
{ className: "text-xs text-muted-foreground" },
|
|
10092
10465
|
`Max size: ${formatFileSize(maxSize)}`
|
|
@@ -10094,37 +10467,37 @@ function FileUpload({
|
|
|
10094
10467
|
)
|
|
10095
10468
|
),
|
|
10096
10469
|
// File list
|
|
10097
|
-
files.length > 0 &&
|
|
10470
|
+
files.length > 0 && React41__namespace.createElement(
|
|
10098
10471
|
"div",
|
|
10099
10472
|
{ className: fileUploadFileListStyles },
|
|
10100
10473
|
files.map(
|
|
10101
|
-
(file) =>
|
|
10474
|
+
(file) => React41__namespace.createElement(
|
|
10102
10475
|
"div",
|
|
10103
10476
|
{ key: file.id, className: fileUploadFileItemStyles },
|
|
10104
|
-
|
|
10477
|
+
React41__namespace.createElement(
|
|
10105
10478
|
"div",
|
|
10106
10479
|
{ className: "flex-1 min-w-0" },
|
|
10107
|
-
|
|
10108
|
-
|
|
10480
|
+
React41__namespace.createElement("div", { className: "font-medium truncate" }, file.name),
|
|
10481
|
+
React41__namespace.createElement(
|
|
10109
10482
|
"div",
|
|
10110
10483
|
{ className: "text-xs text-muted-foreground" },
|
|
10111
10484
|
formatFileSize(file.size)
|
|
10112
10485
|
),
|
|
10113
|
-
file.status === "uploading" &&
|
|
10486
|
+
file.status === "uploading" && React41__namespace.createElement(
|
|
10114
10487
|
"div",
|
|
10115
10488
|
{ className: cn(fileUploadProgressStyles, "mt-1") },
|
|
10116
|
-
|
|
10489
|
+
React41__namespace.createElement("div", {
|
|
10117
10490
|
className: fileUploadProgressBarStyles,
|
|
10118
10491
|
style: { width: `${file.progress}%` }
|
|
10119
10492
|
})
|
|
10120
10493
|
),
|
|
10121
|
-
file.error &&
|
|
10494
|
+
file.error && React41__namespace.createElement(
|
|
10122
10495
|
"div",
|
|
10123
10496
|
{ className: "text-xs text-destructive mt-0.5" },
|
|
10124
10497
|
file.error
|
|
10125
10498
|
)
|
|
10126
10499
|
),
|
|
10127
|
-
|
|
10500
|
+
React41__namespace.createElement(
|
|
10128
10501
|
"button",
|
|
10129
10502
|
{
|
|
10130
10503
|
type: "button",
|
|
@@ -10259,13 +10632,13 @@ function KeyboardShortcut({
|
|
|
10259
10632
|
enabled = true,
|
|
10260
10633
|
preventDefault = true
|
|
10261
10634
|
}) {
|
|
10262
|
-
const apiRef =
|
|
10635
|
+
const apiRef = React41__namespace.useRef(
|
|
10263
10636
|
createKeyboardShortcut({ keys, onTrigger, enabled, preventDefault })
|
|
10264
10637
|
);
|
|
10265
|
-
|
|
10638
|
+
React41__namespace.useEffect(() => {
|
|
10266
10639
|
apiRef.current = createKeyboardShortcut({ keys, onTrigger, enabled, preventDefault });
|
|
10267
10640
|
}, [keys, onTrigger, enabled, preventDefault]);
|
|
10268
|
-
|
|
10641
|
+
React41__namespace.useEffect(() => {
|
|
10269
10642
|
if (!enabled) return;
|
|
10270
10643
|
const handleKeyDown = (e) => {
|
|
10271
10644
|
apiRef.current.handler(e);
|
|
@@ -10281,15 +10654,15 @@ function ShortcutBadge({ keys, platform = true, className }) {
|
|
|
10281
10654
|
}, enabled: false });
|
|
10282
10655
|
const displayKeys = platform ? api.platformDisplay : api.display;
|
|
10283
10656
|
const isMacDisplay = platform && displayKeys !== api.display;
|
|
10284
|
-
return
|
|
10657
|
+
return React41__namespace.createElement(
|
|
10285
10658
|
"kbd",
|
|
10286
10659
|
{ ...api.badgeAriaProps, className: cn(shortcutBadgeStyles, className) },
|
|
10287
|
-
isMacDisplay ?
|
|
10288
|
-
(key, i) =>
|
|
10289
|
-
|
|
10660
|
+
isMacDisplay ? React41__namespace.createElement("span", null, displayKeys) : keys.map(
|
|
10661
|
+
(key, i) => React41__namespace.createElement(
|
|
10662
|
+
React41__namespace.Fragment,
|
|
10290
10663
|
{ key: i },
|
|
10291
|
-
i > 0 &&
|
|
10292
|
-
|
|
10664
|
+
i > 0 && React41__namespace.createElement("span", { className: shortcutSeparatorStyles }, "+"),
|
|
10665
|
+
React41__namespace.createElement(
|
|
10293
10666
|
"span",
|
|
10294
10667
|
{ className: shortcutKeyStyles },
|
|
10295
10668
|
formatShortcut([key], false)
|
|
@@ -10465,7 +10838,7 @@ var otpInputSlotVariants = cva({
|
|
|
10465
10838
|
filled: "false"
|
|
10466
10839
|
}
|
|
10467
10840
|
});
|
|
10468
|
-
var OtpInput =
|
|
10841
|
+
var OtpInput = React41__namespace.forwardRef(
|
|
10469
10842
|
({
|
|
10470
10843
|
length = 6,
|
|
10471
10844
|
value = "",
|
|
@@ -10477,15 +10850,15 @@ var OtpInput = React40__namespace.forwardRef(
|
|
|
10477
10850
|
className,
|
|
10478
10851
|
...props
|
|
10479
10852
|
}, ref) => {
|
|
10480
|
-
const inputRefs =
|
|
10481
|
-
const [focusedIndex, setFocusedIndex] =
|
|
10482
|
-
const [values, setValues] =
|
|
10853
|
+
const inputRefs = React41__namespace.useRef([]);
|
|
10854
|
+
const [focusedIndex, setFocusedIndex] = React41__namespace.useState(autoFocus ? 0 : -1);
|
|
10855
|
+
const [values, setValues] = React41__namespace.useState(
|
|
10483
10856
|
() => Array.from({ length }, (_, i) => value.charAt(i) || "")
|
|
10484
10857
|
);
|
|
10485
|
-
|
|
10858
|
+
React41__namespace.useEffect(() => {
|
|
10486
10859
|
setValues(Array.from({ length }, (_, i) => value.charAt(i) || ""));
|
|
10487
10860
|
}, [value, length]);
|
|
10488
|
-
|
|
10861
|
+
React41__namespace.useEffect(() => {
|
|
10489
10862
|
if (autoFocus && inputRefs.current[0]) {
|
|
10490
10863
|
inputRefs.current[0].focus();
|
|
10491
10864
|
}
|
|
@@ -10665,13 +11038,13 @@ function PresenceIndicator({
|
|
|
10665
11038
|
className
|
|
10666
11039
|
}) {
|
|
10667
11040
|
const api = createPresence({ status, showLabel, label });
|
|
10668
|
-
return
|
|
11041
|
+
return React41__namespace.createElement(
|
|
10669
11042
|
"span",
|
|
10670
11043
|
{ ...api.ariaProps, className: cn(presenceContainerStyles, className) },
|
|
10671
|
-
|
|
11044
|
+
React41__namespace.createElement("span", {
|
|
10672
11045
|
className: presenceDotVariants({ status, size })
|
|
10673
11046
|
}),
|
|
10674
|
-
api.showLabel &&
|
|
11047
|
+
api.showLabel && React41__namespace.createElement("span", { className: presenceLabelStyles }, api.label)
|
|
10675
11048
|
);
|
|
10676
11049
|
}
|
|
10677
11050
|
PresenceIndicator.displayName = "PresenceIndicator";
|
|
@@ -10759,7 +11132,7 @@ var radioCircleVariants = cva({
|
|
|
10759
11132
|
});
|
|
10760
11133
|
|
|
10761
11134
|
// ../react-radio/dist/index.js
|
|
10762
|
-
var RadioContext =
|
|
11135
|
+
var RadioContext = React41__namespace.createContext(null);
|
|
10763
11136
|
function RadioGroup({
|
|
10764
11137
|
children,
|
|
10765
11138
|
className,
|
|
@@ -10770,25 +11143,25 @@ function RadioGroup({
|
|
|
10770
11143
|
disabled = false,
|
|
10771
11144
|
orientation = "vertical"
|
|
10772
11145
|
}) {
|
|
10773
|
-
const [internalValue, setInternalValue] =
|
|
11146
|
+
const [internalValue, setInternalValue] = React41__namespace.useState(defaultValue);
|
|
10774
11147
|
const isControlled = controlledValue !== void 0;
|
|
10775
11148
|
const currentValue = isControlled ? controlledValue : internalValue;
|
|
10776
11149
|
const api = createRadioGroup({ value: currentValue, name, disabled, orientation });
|
|
10777
|
-
const handleChange =
|
|
11150
|
+
const handleChange = React41__namespace.useCallback(
|
|
10778
11151
|
(val) => {
|
|
10779
11152
|
if (!isControlled) setInternalValue(val);
|
|
10780
11153
|
onValueChange?.(val);
|
|
10781
11154
|
},
|
|
10782
11155
|
[isControlled, onValueChange]
|
|
10783
11156
|
);
|
|
10784
|
-
const ctx =
|
|
11157
|
+
const ctx = React41__namespace.useMemo(
|
|
10785
11158
|
() => ({ value: currentValue, onValueChange: handleChange, name, disabled }),
|
|
10786
11159
|
[currentValue, handleChange, name, disabled]
|
|
10787
11160
|
);
|
|
10788
|
-
return
|
|
11161
|
+
return React41__namespace.createElement(
|
|
10789
11162
|
RadioContext.Provider,
|
|
10790
11163
|
{ value: ctx },
|
|
10791
|
-
|
|
11164
|
+
React41__namespace.createElement(
|
|
10792
11165
|
"div",
|
|
10793
11166
|
{ ...api.groupProps, className: cn(radioGroupVariants({ orientation }), className) },
|
|
10794
11167
|
children
|
|
@@ -10796,17 +11169,17 @@ function RadioGroup({
|
|
|
10796
11169
|
);
|
|
10797
11170
|
}
|
|
10798
11171
|
function RadioItem({ value, children, disabled = false, className }) {
|
|
10799
|
-
const ctx =
|
|
11172
|
+
const ctx = React41__namespace.useContext(RadioContext);
|
|
10800
11173
|
if (!ctx) throw new Error("RadioItem must be used within RadioGroup");
|
|
10801
11174
|
const isChecked = ctx.value === value;
|
|
10802
11175
|
const isDisabled = ctx.disabled || disabled;
|
|
10803
|
-
return
|
|
11176
|
+
return React41__namespace.createElement(
|
|
10804
11177
|
"label",
|
|
10805
11178
|
{
|
|
10806
11179
|
className: cn(radioItemVariants({ disabled: isDisabled ? "true" : "false" }), className),
|
|
10807
11180
|
"data-state": isChecked ? "checked" : "unchecked"
|
|
10808
11181
|
},
|
|
10809
|
-
|
|
11182
|
+
React41__namespace.createElement(
|
|
10810
11183
|
"button",
|
|
10811
11184
|
{
|
|
10812
11185
|
type: "button",
|
|
@@ -10818,12 +11191,12 @@ function RadioItem({ value, children, disabled = false, className }) {
|
|
|
10818
11191
|
className: cn(radioCircleVariants({ checked: isChecked ? "true" : "false" })),
|
|
10819
11192
|
onClick: () => !isDisabled && ctx.onValueChange(value)
|
|
10820
11193
|
},
|
|
10821
|
-
isChecked &&
|
|
11194
|
+
isChecked && React41__namespace.createElement(
|
|
10822
11195
|
"span",
|
|
10823
11196
|
{ className: "block h-2 w-2 rounded-full bg-primary-foreground mx-auto" }
|
|
10824
11197
|
)
|
|
10825
11198
|
),
|
|
10826
|
-
children &&
|
|
11199
|
+
children && React41__namespace.createElement("span", { className: "text-sm" }, children)
|
|
10827
11200
|
);
|
|
10828
11201
|
}
|
|
10829
11202
|
RadioGroup.displayName = "RadioGroup";
|
|
@@ -10895,11 +11268,11 @@ function ReactionBar({
|
|
|
10895
11268
|
className
|
|
10896
11269
|
}) {
|
|
10897
11270
|
const api = createReactionBar({ reactions, onToggle, onAdd });
|
|
10898
|
-
return
|
|
11271
|
+
return React41__namespace.createElement(
|
|
10899
11272
|
"div",
|
|
10900
11273
|
{ ...api.ariaProps, className: cn(reactionBarStyles, className) },
|
|
10901
11274
|
api.reactions.map(
|
|
10902
|
-
(reaction, i) =>
|
|
11275
|
+
(reaction, i) => React41__namespace.createElement(
|
|
10903
11276
|
"button",
|
|
10904
11277
|
{
|
|
10905
11278
|
key: `${reaction.emoji}-${i}`,
|
|
@@ -10910,11 +11283,11 @@ function ReactionBar({
|
|
|
10910
11283
|
onClick: () => api.toggle(reaction.emoji),
|
|
10911
11284
|
...api.getReactionAriaProps(reaction)
|
|
10912
11285
|
},
|
|
10913
|
-
|
|
10914
|
-
|
|
11286
|
+
React41__namespace.createElement("span", { className: reactionEmojiStyles }, reaction.emoji),
|
|
11287
|
+
React41__namespace.createElement("span", { className: reactionCountStyles }, reaction.count)
|
|
10915
11288
|
)
|
|
10916
11289
|
),
|
|
10917
|
-
showAddButton &&
|
|
11290
|
+
showAddButton && React41__namespace.createElement(
|
|
10918
11291
|
"button",
|
|
10919
11292
|
{
|
|
10920
11293
|
type: "button",
|
|
@@ -11063,7 +11436,7 @@ var selectItemVariants = cva({
|
|
|
11063
11436
|
selected: "false"
|
|
11064
11437
|
}
|
|
11065
11438
|
});
|
|
11066
|
-
var SelectContext =
|
|
11439
|
+
var SelectContext = React41__namespace.createContext({
|
|
11067
11440
|
value: void 0,
|
|
11068
11441
|
onValueChange: () => {
|
|
11069
11442
|
},
|
|
@@ -11083,7 +11456,7 @@ function Select({
|
|
|
11083
11456
|
children,
|
|
11084
11457
|
placeholder = "Select an option"
|
|
11085
11458
|
}) {
|
|
11086
|
-
const [open, setOpen] =
|
|
11459
|
+
const [open, setOpen] = React41__namespace.useState(false);
|
|
11087
11460
|
const api = createSelect({ value, disabled, open, placeholder });
|
|
11088
11461
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11089
11462
|
SelectContext.Provider,
|
|
@@ -11106,9 +11479,9 @@ function Select({
|
|
|
11106
11479
|
}
|
|
11107
11480
|
);
|
|
11108
11481
|
}
|
|
11109
|
-
var SelectTrigger =
|
|
11482
|
+
var SelectTrigger = React41__namespace.forwardRef(
|
|
11110
11483
|
({ className, children, size = "default", ...props }, ref) => {
|
|
11111
|
-
const { open, setOpen, disabled, triggerId, contentId } =
|
|
11484
|
+
const { open, setOpen, disabled, triggerId, contentId } = React41__namespace.useContext(SelectContext);
|
|
11112
11485
|
const api = createSelect({ disabled, open });
|
|
11113
11486
|
const handleClick = () => {
|
|
11114
11487
|
if (!disabled) {
|
|
@@ -11165,9 +11538,9 @@ var SelectTrigger = React40__namespace.forwardRef(
|
|
|
11165
11538
|
}
|
|
11166
11539
|
);
|
|
11167
11540
|
SelectTrigger.displayName = "SelectTrigger";
|
|
11168
|
-
var SelectContent =
|
|
11541
|
+
var SelectContent = React41__namespace.forwardRef(
|
|
11169
11542
|
({ className, children, ...props }, ref) => {
|
|
11170
|
-
const { open, contentId, triggerId } =
|
|
11543
|
+
const { open, contentId, triggerId } = React41__namespace.useContext(SelectContext);
|
|
11171
11544
|
if (!open) return null;
|
|
11172
11545
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
11173
11546
|
"div",
|
|
@@ -11185,9 +11558,9 @@ var SelectContent = React40__namespace.forwardRef(
|
|
|
11185
11558
|
}
|
|
11186
11559
|
);
|
|
11187
11560
|
SelectContent.displayName = "SelectContent";
|
|
11188
|
-
var SelectItem =
|
|
11561
|
+
var SelectItem = React41__namespace.forwardRef(
|
|
11189
11562
|
({ className, children, value: itemValue, disabled: itemDisabled = false, ...props }, ref) => {
|
|
11190
|
-
const { value, onValueChange, setOpen } =
|
|
11563
|
+
const { value, onValueChange, setOpen } = React41__namespace.useContext(SelectContext);
|
|
11191
11564
|
const isSelected = value === itemValue;
|
|
11192
11565
|
const handleClick = () => {
|
|
11193
11566
|
if (!itemDisabled) {
|
|
@@ -11319,11 +11692,11 @@ function StatusIndicator({
|
|
|
11319
11692
|
}) {
|
|
11320
11693
|
const api = createStatusIndicator({ type, label, pulse });
|
|
11321
11694
|
const dotClassName = api.pulse ? statusPulseVariants({ type }) : statusDotVariants({ type });
|
|
11322
|
-
return
|
|
11695
|
+
return React41__namespace.createElement(
|
|
11323
11696
|
"span",
|
|
11324
11697
|
{ ...api.ariaProps, className: cn(statusContainerStyles, className) },
|
|
11325
|
-
|
|
11326
|
-
showLabel &&
|
|
11698
|
+
React41__namespace.createElement("span", { className: dotClassName }),
|
|
11699
|
+
showLabel && React41__namespace.createElement("span", { className: statusLabelStyles }, api.label)
|
|
11327
11700
|
);
|
|
11328
11701
|
}
|
|
11329
11702
|
StatusIndicator.displayName = "StatusIndicator";
|
|
@@ -11410,7 +11783,7 @@ var switchThumbVariants = cva({
|
|
|
11410
11783
|
{ checked: "true", size: "lg", class: "translate-x-5" }
|
|
11411
11784
|
]
|
|
11412
11785
|
});
|
|
11413
|
-
var Switch =
|
|
11786
|
+
var Switch = React41__namespace.forwardRef(
|
|
11414
11787
|
({ checked = false, onCheckedChange, disabled = false, size = "default", className, ...props }, ref) => {
|
|
11415
11788
|
const api = createSwitch({ checked, disabled });
|
|
11416
11789
|
const handleClick = () => {
|
|
@@ -11549,41 +11922,41 @@ function MessageComponent({
|
|
|
11549
11922
|
message,
|
|
11550
11923
|
api
|
|
11551
11924
|
}) {
|
|
11552
|
-
return
|
|
11925
|
+
return React41__namespace.createElement(
|
|
11553
11926
|
"div",
|
|
11554
11927
|
{ className: threadMessageStyles, ...api.getMessageAriaProps(message) },
|
|
11555
11928
|
// Avatar
|
|
11556
|
-
|
|
11929
|
+
React41__namespace.createElement(
|
|
11557
11930
|
"div",
|
|
11558
11931
|
{ className: threadAvatarStyles },
|
|
11559
|
-
message.author.avatarUrl ?
|
|
11932
|
+
message.author.avatarUrl ? React41__namespace.createElement("img", {
|
|
11560
11933
|
src: message.author.avatarUrl,
|
|
11561
11934
|
alt: message.author.name,
|
|
11562
11935
|
className: "h-full w-full object-cover"
|
|
11563
11936
|
}) : message.author.name.charAt(0).toUpperCase()
|
|
11564
11937
|
),
|
|
11565
11938
|
// Content
|
|
11566
|
-
|
|
11939
|
+
React41__namespace.createElement(
|
|
11567
11940
|
"div",
|
|
11568
11941
|
{ className: threadContentStyles },
|
|
11569
|
-
|
|
11942
|
+
React41__namespace.createElement(
|
|
11570
11943
|
"div",
|
|
11571
11944
|
{ className: "flex items-baseline" },
|
|
11572
|
-
|
|
11573
|
-
|
|
11945
|
+
React41__namespace.createElement("span", { className: threadAuthorStyles }, message.author.name),
|
|
11946
|
+
React41__namespace.createElement(
|
|
11574
11947
|
"span",
|
|
11575
11948
|
{ className: threadTimestampStyles },
|
|
11576
11949
|
api.formatTimestamp(message.timestamp)
|
|
11577
11950
|
),
|
|
11578
|
-
message.edited &&
|
|
11951
|
+
message.edited && React41__namespace.createElement("span", { className: threadEditedStyles }, "(edited)")
|
|
11579
11952
|
),
|
|
11580
|
-
|
|
11953
|
+
React41__namespace.createElement("div", { className: threadBodyStyles }, message.content),
|
|
11581
11954
|
// Reactions
|
|
11582
|
-
message.reactions && message.reactions.length > 0 &&
|
|
11955
|
+
message.reactions && message.reactions.length > 0 && React41__namespace.createElement(
|
|
11583
11956
|
"div",
|
|
11584
11957
|
{ className: threadReactionsStyles },
|
|
11585
11958
|
message.reactions.map(
|
|
11586
|
-
(reaction, i) =>
|
|
11959
|
+
(reaction, i) => React41__namespace.createElement(
|
|
11587
11960
|
"button",
|
|
11588
11961
|
{
|
|
11589
11962
|
key: `${reaction.emoji}-${i}`,
|
|
@@ -11599,25 +11972,25 @@ function MessageComponent({
|
|
|
11599
11972
|
)
|
|
11600
11973
|
),
|
|
11601
11974
|
// Reply indicator
|
|
11602
|
-
message.replies && message.replies.length > 0 &&
|
|
11975
|
+
message.replies && message.replies.length > 0 && React41__namespace.createElement(
|
|
11603
11976
|
"div",
|
|
11604
11977
|
{ className: threadReplyIndicatorStyles },
|
|
11605
11978
|
`${message.replies.length} ${message.replies.length === 1 ? "reply" : "replies"}`
|
|
11606
11979
|
),
|
|
11607
11980
|
// Attachments
|
|
11608
11981
|
message.attachments && message.attachments.map(
|
|
11609
|
-
(attachment) =>
|
|
11982
|
+
(attachment) => React41__namespace.createElement(
|
|
11610
11983
|
"div",
|
|
11611
11984
|
{ key: attachment.id, className: threadAttachmentStyles },
|
|
11612
|
-
|
|
11613
|
-
|
|
11985
|
+
React41__namespace.createElement("span", null, "\u{1F4CE}"),
|
|
11986
|
+
React41__namespace.createElement("span", { className: "truncate" }, attachment.name)
|
|
11614
11987
|
)
|
|
11615
11988
|
),
|
|
11616
11989
|
// Actions (reply button)
|
|
11617
|
-
|
|
11990
|
+
React41__namespace.createElement(
|
|
11618
11991
|
"div",
|
|
11619
11992
|
{ className: threadActionsStyles },
|
|
11620
|
-
|
|
11993
|
+
React41__namespace.createElement(
|
|
11621
11994
|
"button",
|
|
11622
11995
|
{
|
|
11623
11996
|
type: "button",
|
|
@@ -11639,11 +12012,11 @@ function ThreadView({
|
|
|
11639
12012
|
className
|
|
11640
12013
|
}) {
|
|
11641
12014
|
const api = createThreadView({ messages, onReply, onReact, currentUserId });
|
|
11642
|
-
return
|
|
12015
|
+
return React41__namespace.createElement(
|
|
11643
12016
|
"div",
|
|
11644
12017
|
{ ...api.ariaProps, className: cn(threadContainerStyles, className) },
|
|
11645
12018
|
messages.map(
|
|
11646
|
-
(message) =>
|
|
12019
|
+
(message) => React41__namespace.createElement(MessageComponent, {
|
|
11647
12020
|
key: message.id,
|
|
11648
12021
|
message,
|
|
11649
12022
|
api
|
|
@@ -11653,6 +12026,306 @@ function ThreadView({
|
|
|
11653
12026
|
}
|
|
11654
12027
|
ThreadView.displayName = "ThreadView";
|
|
11655
12028
|
|
|
12029
|
+
// ../table-of-contents/dist/index.js
|
|
12030
|
+
function parseHeadings(container, selectors = "h2, h3, h4") {
|
|
12031
|
+
const headings = Array.from(container.querySelectorAll(selectors));
|
|
12032
|
+
return headings.map((h) => ({
|
|
12033
|
+
id: h.id || h.textContent?.toLowerCase().replace(/\s+/g, "-") || "",
|
|
12034
|
+
text: h.textContent || "",
|
|
12035
|
+
level: parseInt(h.tagName.charAt(1), 10)
|
|
12036
|
+
})).filter((h) => h.id !== "");
|
|
12037
|
+
}
|
|
12038
|
+
function observeHeadings(headingIds, callback, options) {
|
|
12039
|
+
const observer = new IntersectionObserver((entries) => {
|
|
12040
|
+
for (const entry of entries) {
|
|
12041
|
+
if (entry.isIntersecting) {
|
|
12042
|
+
callback(entry.target.id);
|
|
12043
|
+
break;
|
|
12044
|
+
}
|
|
12045
|
+
}
|
|
12046
|
+
}, { rootMargin: "0px 0px -80% 0px", ...options });
|
|
12047
|
+
headingIds.forEach((id) => {
|
|
12048
|
+
const el = document.getElementById(id);
|
|
12049
|
+
if (el) observer.observe(el);
|
|
12050
|
+
});
|
|
12051
|
+
return () => observer.disconnect();
|
|
12052
|
+
}
|
|
12053
|
+
var TableOfContents = React41__namespace.forwardRef(
|
|
12054
|
+
({ className, containerRef, selectors = "h2, h3, h4", onActiveIdChange, ...props }, ref) => {
|
|
12055
|
+
const [headings, setHeadings] = React41__namespace.useState([]);
|
|
12056
|
+
const [activeId, setActiveId] = React41__namespace.useState("");
|
|
12057
|
+
React41__namespace.useEffect(() => {
|
|
12058
|
+
const container = containerRef?.current || document.body;
|
|
12059
|
+
if (!container) return;
|
|
12060
|
+
const parsedHeadings = parseHeadings(container, selectors);
|
|
12061
|
+
setHeadings(parsedHeadings);
|
|
12062
|
+
if (parsedHeadings.length === 0) return;
|
|
12063
|
+
const disconnect = observeHeadings(parsedHeadings.map((h) => h.id), (id) => {
|
|
12064
|
+
setActiveId(id);
|
|
12065
|
+
onActiveIdChange?.(id);
|
|
12066
|
+
});
|
|
12067
|
+
return () => disconnect();
|
|
12068
|
+
}, [containerRef, selectors, onActiveIdChange]);
|
|
12069
|
+
if (headings.length === 0) {
|
|
12070
|
+
return null;
|
|
12071
|
+
}
|
|
12072
|
+
return /* @__PURE__ */ jsxRuntime.jsx("nav", { ref, className: cn("space-y-1", className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "m-0 list-none p-0", children: headings.map((heading) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
12073
|
+
"li",
|
|
12074
|
+
{
|
|
12075
|
+
className: cn(
|
|
12076
|
+
"py-1",
|
|
12077
|
+
heading.level === 3 ? "pl-4" : heading.level === 4 ? "pl-8" : ""
|
|
12078
|
+
),
|
|
12079
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
12080
|
+
"a",
|
|
12081
|
+
{
|
|
12082
|
+
href: `#${heading.id}`,
|
|
12083
|
+
className: cn(
|
|
12084
|
+
"block text-sm transition-colors hover:text-foreground",
|
|
12085
|
+
activeId === heading.id ? "font-medium text-foreground" : "text-muted-foreground"
|
|
12086
|
+
),
|
|
12087
|
+
children: heading.text
|
|
12088
|
+
}
|
|
12089
|
+
)
|
|
12090
|
+
},
|
|
12091
|
+
heading.id
|
|
12092
|
+
)) }) });
|
|
12093
|
+
}
|
|
12094
|
+
);
|
|
12095
|
+
TableOfContents.displayName = "TableOfContents";
|
|
12096
|
+
var CarouselContext = React41__namespace.createContext(null);
|
|
12097
|
+
var Carousel = React41__namespace.forwardRef(
|
|
12098
|
+
({ className, type = "single", collapsible, value: controlledValue, defaultValue, onValueChange, ...props }, ref) => {
|
|
12099
|
+
const [uncontrolledValue, setUncontrolledValue] = React41__namespace.useState(
|
|
12100
|
+
defaultValue ?? (type === "multiple" ? [] : "")
|
|
12101
|
+
);
|
|
12102
|
+
const value = controlledValue !== void 0 ? controlledValue : uncontrolledValue;
|
|
12103
|
+
const handleValueChange = React41__namespace.useCallback(
|
|
12104
|
+
(itemValue) => {
|
|
12105
|
+
if (type === "single") {
|
|
12106
|
+
const newValue = value === itemValue && collapsible ? "" : itemValue;
|
|
12107
|
+
setUncontrolledValue(newValue);
|
|
12108
|
+
onValueChange?.(newValue);
|
|
12109
|
+
} else {
|
|
12110
|
+
const arrValue = Array.isArray(value) ? value : [];
|
|
12111
|
+
const newValue = arrValue.includes(itemValue) ? arrValue.filter((v) => v !== itemValue) : [...arrValue, itemValue];
|
|
12112
|
+
setUncontrolledValue(newValue);
|
|
12113
|
+
onValueChange?.(newValue);
|
|
12114
|
+
}
|
|
12115
|
+
},
|
|
12116
|
+
[type, collapsible, value, onValueChange]
|
|
12117
|
+
);
|
|
12118
|
+
return /* @__PURE__ */ jsxRuntime.jsx(CarouselContext.Provider, { value: { type, value, onValueChange: handleValueChange }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex flex-col w-full", className), ...props }) });
|
|
12119
|
+
}
|
|
12120
|
+
);
|
|
12121
|
+
Carousel.displayName = "Carousel";
|
|
12122
|
+
var CarouselItemContext = React41__namespace.createContext(null);
|
|
12123
|
+
var CarouselItem = React41__namespace.forwardRef(
|
|
12124
|
+
({ className, value, ...props }, ref) => {
|
|
12125
|
+
const context = React41__namespace.useContext(CarouselContext);
|
|
12126
|
+
if (!context) throw new Error("CarouselItem must be within Carousel");
|
|
12127
|
+
const isOpen = context.type === "single" ? context.value === value : Array.isArray(context.value) && context.value.includes(value);
|
|
12128
|
+
return /* @__PURE__ */ jsxRuntime.jsx(CarouselItemContext.Provider, { value: { value, isOpen }, children: /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("border-b border-border", className), "data-state": isOpen ? "open" : "closed", ...props }) });
|
|
12129
|
+
}
|
|
12130
|
+
);
|
|
12131
|
+
CarouselItem.displayName = "CarouselItem";
|
|
12132
|
+
var CarouselTrigger = React41__namespace.forwardRef(
|
|
12133
|
+
({ className, children, ...props }, ref) => {
|
|
12134
|
+
const carouselContext = React41__namespace.useContext(CarouselContext);
|
|
12135
|
+
const itemContext = React41__namespace.useContext(CarouselItemContext);
|
|
12136
|
+
if (!carouselContext || !itemContext) throw new Error("CarouselTrigger missing context");
|
|
12137
|
+
return /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "flex m-0 p-0", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
12138
|
+
"button",
|
|
12139
|
+
{
|
|
12140
|
+
ref,
|
|
12141
|
+
type: "button",
|
|
12142
|
+
"aria-expanded": itemContext.isOpen,
|
|
12143
|
+
className: cn(
|
|
12144
|
+
"flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",
|
|
12145
|
+
className
|
|
12146
|
+
),
|
|
12147
|
+
"data-state": itemContext.isOpen ? "open" : "closed",
|
|
12148
|
+
onClick: () => carouselContext.onValueChange(itemContext.value),
|
|
12149
|
+
...props,
|
|
12150
|
+
children: [
|
|
12151
|
+
children,
|
|
12152
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
12153
|
+
"svg",
|
|
12154
|
+
{
|
|
12155
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
12156
|
+
width: "24",
|
|
12157
|
+
height: "24",
|
|
12158
|
+
viewBox: "0 0 24 24",
|
|
12159
|
+
fill: "none",
|
|
12160
|
+
stroke: "currentColor",
|
|
12161
|
+
strokeWidth: "2",
|
|
12162
|
+
strokeLinecap: "round",
|
|
12163
|
+
strokeLinejoin: "round",
|
|
12164
|
+
className: "h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200",
|
|
12165
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m6 9 6 6 6-6" })
|
|
12166
|
+
}
|
|
12167
|
+
)
|
|
12168
|
+
]
|
|
12169
|
+
}
|
|
12170
|
+
) });
|
|
12171
|
+
}
|
|
12172
|
+
);
|
|
12173
|
+
CarouselTrigger.displayName = "CarouselTrigger";
|
|
12174
|
+
var CarouselContent = React41__namespace.forwardRef(
|
|
12175
|
+
({ className, children, ...props }, ref) => {
|
|
12176
|
+
const itemContext = React41__namespace.useContext(CarouselItemContext);
|
|
12177
|
+
if (!itemContext) throw new Error("CarouselContent missing context");
|
|
12178
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12179
|
+
"div",
|
|
12180
|
+
{
|
|
12181
|
+
ref,
|
|
12182
|
+
className: cn(
|
|
12183
|
+
"overflow-hidden text-sm",
|
|
12184
|
+
className
|
|
12185
|
+
),
|
|
12186
|
+
"data-state": itemContext.isOpen ? "open" : "closed",
|
|
12187
|
+
hidden: !itemContext.isOpen,
|
|
12188
|
+
...props,
|
|
12189
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pb-4 pt-0 text-muted-foreground leading-relaxed", children })
|
|
12190
|
+
}
|
|
12191
|
+
);
|
|
12192
|
+
}
|
|
12193
|
+
);
|
|
12194
|
+
CarouselContent.displayName = "CarouselContent";
|
|
12195
|
+
var Pagination = React41__namespace.forwardRef(
|
|
12196
|
+
({ className, ...props }, ref) => {
|
|
12197
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("", className), ...props });
|
|
12198
|
+
}
|
|
12199
|
+
);
|
|
12200
|
+
Pagination.displayName = "Pagination";
|
|
12201
|
+
var Callout = () => /* @__PURE__ */ jsxRuntime.jsx("div", {});
|
|
12202
|
+
var Steps = () => /* @__PURE__ */ jsxRuntime.jsx("div", {});
|
|
12203
|
+
|
|
12204
|
+
// src/index.ts
|
|
12205
|
+
__reExport(index_exports, __toESM(require_dist()));
|
|
12206
|
+
__reExport(index_exports, __toESM(require_dist2()));
|
|
12207
|
+
|
|
12208
|
+
// ../react-skip-to-content/dist/index.js
|
|
12209
|
+
var SkipToContent = () => {
|
|
12210
|
+
return null;
|
|
12211
|
+
};
|
|
12212
|
+
|
|
12213
|
+
// ../react-code-block/dist/index.js
|
|
12214
|
+
var CodeBlock = () => {
|
|
12215
|
+
return null;
|
|
12216
|
+
};
|
|
12217
|
+
|
|
12218
|
+
// ../link-card/dist/index.js
|
|
12219
|
+
function createLinkCard(props = {}) {
|
|
12220
|
+
return {
|
|
12221
|
+
dataAttributes: { "data-slot": "link-card" }
|
|
12222
|
+
};
|
|
12223
|
+
}
|
|
12224
|
+
var LinkCard = React41__namespace.forwardRef(
|
|
12225
|
+
({ className, ...props }, ref) => {
|
|
12226
|
+
const api = createLinkCard(props);
|
|
12227
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12228
|
+
"a",
|
|
12229
|
+
{
|
|
12230
|
+
ref,
|
|
12231
|
+
className: cn(className),
|
|
12232
|
+
...api.dataAttributes,
|
|
12233
|
+
...props
|
|
12234
|
+
}
|
|
12235
|
+
);
|
|
12236
|
+
}
|
|
12237
|
+
);
|
|
12238
|
+
LinkCard.displayName = "LinkCard";
|
|
12239
|
+
|
|
12240
|
+
// ../card-grid/dist/index.js
|
|
12241
|
+
function createCardGrid(props = {}) {
|
|
12242
|
+
return {
|
|
12243
|
+
dataAttributes: { "data-slot": "card-grid" }
|
|
12244
|
+
};
|
|
12245
|
+
}
|
|
12246
|
+
var CardGrid = React41__namespace.forwardRef(
|
|
12247
|
+
({ className, columns = 3, ...props }, ref) => {
|
|
12248
|
+
const api = createCardGrid({ });
|
|
12249
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12250
|
+
"div",
|
|
12251
|
+
{
|
|
12252
|
+
ref,
|
|
12253
|
+
className: cn(className),
|
|
12254
|
+
...api.dataAttributes,
|
|
12255
|
+
...props
|
|
12256
|
+
}
|
|
12257
|
+
);
|
|
12258
|
+
}
|
|
12259
|
+
);
|
|
12260
|
+
CardGrid.displayName = "CardGrid";
|
|
12261
|
+
|
|
12262
|
+
// ../payment/dist/index.js
|
|
12263
|
+
function createPayment(props = {}) {
|
|
12264
|
+
return {
|
|
12265
|
+
props: {
|
|
12266
|
+
...props,
|
|
12267
|
+
"data-slot": "payment"
|
|
12268
|
+
}
|
|
12269
|
+
};
|
|
12270
|
+
}
|
|
12271
|
+
var Payment = React41__namespace.forwardRef(
|
|
12272
|
+
({ className, disabled, ...props }, ref) => {
|
|
12273
|
+
const api = createPayment({ disabled });
|
|
12274
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12275
|
+
"div",
|
|
12276
|
+
{
|
|
12277
|
+
ref,
|
|
12278
|
+
className: cn(
|
|
12279
|
+
"w-full max-w-md mx-auto p-6 border border-border rounded-xl bg-card text-card-foreground shadow-sm",
|
|
12280
|
+
disabled && "opacity-50 pointer-events-none",
|
|
12281
|
+
className
|
|
12282
|
+
),
|
|
12283
|
+
...api.props,
|
|
12284
|
+
...props
|
|
12285
|
+
}
|
|
12286
|
+
);
|
|
12287
|
+
}
|
|
12288
|
+
);
|
|
12289
|
+
Payment.displayName = "Payment";
|
|
12290
|
+
var PaymentHeader = React41__namespace.forwardRef(
|
|
12291
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("mb-6 flex flex-col gap-1.5", className), ...props })
|
|
12292
|
+
);
|
|
12293
|
+
PaymentHeader.displayName = "PaymentHeader";
|
|
12294
|
+
var PaymentTitle = React41__namespace.forwardRef(
|
|
12295
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("h3", { ref, className: cn("text-xl font-semibold leading-none tracking-tight", className), ...props })
|
|
12296
|
+
);
|
|
12297
|
+
PaymentTitle.displayName = "PaymentTitle";
|
|
12298
|
+
var PaymentDescription = React41__namespace.forwardRef(
|
|
12299
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("p", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
|
|
12300
|
+
);
|
|
12301
|
+
PaymentDescription.displayName = "PaymentDescription";
|
|
12302
|
+
var PaymentContent = React41__namespace.forwardRef(
|
|
12303
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex flex-col gap-4", className), ...props })
|
|
12304
|
+
);
|
|
12305
|
+
PaymentContent.displayName = "PaymentContent";
|
|
12306
|
+
var PaymentFooter = React41__namespace.forwardRef(
|
|
12307
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("mt-6 flex flex-col gap-3", className), ...props })
|
|
12308
|
+
);
|
|
12309
|
+
PaymentFooter.displayName = "PaymentFooter";
|
|
12310
|
+
var PaymentButton = React41__namespace.forwardRef(
|
|
12311
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
12312
|
+
"button",
|
|
12313
|
+
{
|
|
12314
|
+
ref,
|
|
12315
|
+
className: cn(
|
|
12316
|
+
"inline-flex w-full items-center justify-center whitespace-nowrap rounded-md bg-primary px-4 py-2.5 text-sm font-medium text-primary-foreground shadow transition-colors hover:bg-primary/90 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",
|
|
12317
|
+
className
|
|
12318
|
+
),
|
|
12319
|
+
...props
|
|
12320
|
+
}
|
|
12321
|
+
)
|
|
12322
|
+
);
|
|
12323
|
+
PaymentButton.displayName = "PaymentButton";
|
|
12324
|
+
|
|
12325
|
+
exports.Accordion = Accordion;
|
|
12326
|
+
exports.AccordionContent = AccordionContent;
|
|
12327
|
+
exports.AccordionItem = AccordionItem;
|
|
12328
|
+
exports.AccordionTrigger = AccordionTrigger;
|
|
11656
12329
|
exports.AnimatedText = AnimatedText;
|
|
11657
12330
|
exports.AppShell = AppShell;
|
|
11658
12331
|
exports.AuthGuard = AuthGuard;
|
|
@@ -11669,13 +12342,20 @@ exports.Button = Button;
|
|
|
11669
12342
|
exports.CATEGORY_LABELS = CATEGORY_LABELS;
|
|
11670
12343
|
exports.Calendar = Calendar;
|
|
11671
12344
|
exports.CalendarHeader = CalendarHeader;
|
|
12345
|
+
exports.Callout = Callout;
|
|
11672
12346
|
exports.Card = Card2;
|
|
11673
12347
|
exports.CardContent = CardContent;
|
|
11674
12348
|
exports.CardDescription = CardDescription;
|
|
11675
12349
|
exports.CardFooter = CardFooter;
|
|
12350
|
+
exports.CardGrid = CardGrid;
|
|
11676
12351
|
exports.CardHeader = CardHeader;
|
|
11677
12352
|
exports.CardTitle = CardTitle;
|
|
12353
|
+
exports.Carousel = Carousel;
|
|
12354
|
+
exports.CarouselContent = CarouselContent;
|
|
12355
|
+
exports.CarouselItem = CarouselItem;
|
|
12356
|
+
exports.CarouselTrigger = CarouselTrigger;
|
|
11678
12357
|
exports.Checkbox = Checkbox;
|
|
12358
|
+
exports.CodeBlock = CodeBlock;
|
|
11679
12359
|
exports.CodeEditor = CodeEditor;
|
|
11680
12360
|
exports.Collapsible = Collapsible;
|
|
11681
12361
|
exports.CollapsibleContent = CollapsibleContent;
|
|
@@ -11723,6 +12403,7 @@ exports.InputGroupText = InputGroupText;
|
|
|
11723
12403
|
exports.InstallPrompt = InstallPrompt;
|
|
11724
12404
|
exports.KeyboardShortcut = KeyboardShortcut;
|
|
11725
12405
|
exports.LanguageSelector = LanguageSelector;
|
|
12406
|
+
exports.LinkCard = LinkCard;
|
|
11726
12407
|
exports.MarkdownRenderer = MarkdownRenderer;
|
|
11727
12408
|
exports.MobileNav = MobileNav;
|
|
11728
12409
|
exports.MobileNavContent = MobileNavContent;
|
|
@@ -11732,6 +12413,8 @@ exports.Navbar = Navbar;
|
|
|
11732
12413
|
exports.OtpInput = OtpInput;
|
|
11733
12414
|
exports.PRESENCE_STATUS_COLORS = STATUS_COLORS;
|
|
11734
12415
|
exports.PRESENCE_STATUS_LABELS = STATUS_LABELS;
|
|
12416
|
+
exports.Pagination = Pagination;
|
|
12417
|
+
exports.Payment = Payment;
|
|
11735
12418
|
exports.Popover = Popover;
|
|
11736
12419
|
exports.PopoverClose = PopoverClose;
|
|
11737
12420
|
exports.PopoverContent = PopoverContent;
|
|
@@ -11757,10 +12440,13 @@ exports.ShortcutBadge = ShortcutBadge;
|
|
|
11757
12440
|
exports.Sidebar = Sidebar;
|
|
11758
12441
|
exports.Skeleton = Skeleton;
|
|
11759
12442
|
exports.SkeletonText = SkeletonText;
|
|
12443
|
+
exports.SkipToContent = SkipToContent;
|
|
11760
12444
|
exports.SlideViewer = SlideViewer;
|
|
11761
12445
|
exports.StatsGrid = StatsGrid;
|
|
11762
12446
|
exports.StatusIndicator = StatusIndicator;
|
|
12447
|
+
exports.Steps = Steps;
|
|
11763
12448
|
exports.Switch = Switch;
|
|
12449
|
+
exports.TableOfContents = TableOfContents;
|
|
11764
12450
|
exports.Tabs = Tabs;
|
|
11765
12451
|
exports.TabsContent = TabsContent;
|
|
11766
12452
|
exports.TabsList = TabsList;
|