@gxp-dev/app-ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.storybook/main.ts +31 -0
- package/.storybook/preview.ts +26 -0
- package/README.md +440 -0
- package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/components/domain/audio-visualizer/AudioVisualizer.vue.js +106 -0
- package/dist/components/domain/audio-visualizer/AudioVisualizer.vue2.js +4 -0
- package/dist/components/domain/barcode-scanner/BarcodeScanner.vue.js +88 -0
- package/dist/components/domain/barcode-scanner/BarcodeScanner.vue2.js +4 -0
- package/dist/components/domain/chat-transcript/ChatTranscript.vue.js +7 -0
- package/dist/components/domain/chat-transcript/ChatTranscript.vue2.js +148 -0
- package/dist/components/domain/connection-status/ConnectionStatus.vue.js +7 -0
- package/dist/components/domain/connection-status/ConnectionStatus.vue2.js +107 -0
- package/dist/components/domain/countdown/Countdown.vue.js +50 -0
- package/dist/components/domain/countdown/Countdown.vue2.js +4 -0
- package/dist/components/domain/countdown-timer/CountdownTimer.vue.js +7 -0
- package/dist/components/domain/countdown-timer/CountdownTimer.vue2.js +89 -0
- package/dist/components/domain/download-button/DownloadButton.vue.js +74 -0
- package/dist/components/domain/download-button/DownloadButton.vue2.js +4 -0
- package/dist/components/domain/file-uploader/FileUploader.vue.js +96 -0
- package/dist/components/domain/file-uploader/FileUploader.vue2.js +4 -0
- package/dist/components/domain/header/Header.vue.js +42 -0
- package/dist/components/domain/header/Header.vue2.js +4 -0
- package/dist/components/domain/leaderboard/ActivityNotifications.vue.js +7 -0
- package/dist/components/domain/leaderboard/ActivityNotifications.vue2.js +74 -0
- package/dist/components/domain/leaderboard/AwardIcon.vue.js +44 -0
- package/dist/components/domain/leaderboard/AwardIcon.vue2.js +4 -0
- package/dist/components/domain/leaderboard/Leaderboard.vue.js +7 -0
- package/dist/components/domain/leaderboard/Leaderboard.vue2.js +131 -0
- package/dist/components/domain/leaderboard/RecentActivity.vue.js +7 -0
- package/dist/components/domain/leaderboard/RecentActivity.vue2.js +101 -0
- package/dist/components/domain/live-countdown/LiveCountdown.vue.js +7 -0
- package/dist/components/domain/live-countdown/LiveCountdown.vue2.js +80 -0
- package/dist/components/domain/live-countdown-sync/LiveCountdownSync.vue.js +126 -0
- package/dist/components/domain/live-countdown-sync/LiveCountdownSync.vue2.js +4 -0
- package/dist/components/domain/local-preview/LocalPreview.vue.js +7 -0
- package/dist/components/domain/local-preview/LocalPreview.vue2.js +135 -0
- package/dist/components/domain/media-control-bar/MediaControlBar.vue.js +7 -0
- package/dist/components/domain/media-control-bar/MediaControlBar.vue2.js +109 -0
- package/dist/components/domain/message-composer/MessageComposer.vue.js +162 -0
- package/dist/components/domain/message-composer/MessageComposer.vue2.js +4 -0
- package/dist/components/domain/message-list/MessageList.vue.js +59 -0
- package/dist/components/domain/message-list/MessageList.vue2.js +4 -0
- package/dist/components/domain/on-screen-keyboard/OnScreenKeyboard.vue.js +106 -0
- package/dist/components/domain/on-screen-keyboard/OnScreenKeyboard.vue2.js +4 -0
- package/dist/components/domain/on-screen-keyboard/layouts.js +31 -0
- package/dist/components/domain/participant-item/ParticipantItem.vue.js +100 -0
- package/dist/components/domain/participant-item/ParticipantItem.vue2.js +4 -0
- package/dist/components/domain/pin-pad/PinPad.vue.js +7 -0
- package/dist/components/domain/pin-pad/PinPad.vue2.js +166 -0
- package/dist/components/domain/signature-pad/SignaturePad.vue.js +100 -0
- package/dist/components/domain/signature-pad/SignaturePad.vue2.js +4 -0
- package/dist/components/domain/social-stream-post/SocialStreamPost.vue.js +63 -0
- package/dist/components/domain/social-stream-post/SocialStreamPost.vue2.js +4 -0
- package/dist/components/domain/social-stream-post/SocialStreamPostBody.vue.js +120 -0
- package/dist/components/domain/social-stream-post/SocialStreamPostBody.vue2.js +4 -0
- package/dist/components/domain/spinner/Spinner.vue.js +38 -0
- package/dist/components/domain/spinner/Spinner.vue2.js +4 -0
- package/dist/components/domain/step-progress/StepProgress.vue.js +85 -0
- package/dist/components/domain/step-progress/StepProgress.vue2.js +4 -0
- package/dist/components/domain/theme-wrapper/ThemeWrapper.vue.js +63 -0
- package/dist/components/domain/theme-wrapper/ThemeWrapper.vue2.js +4 -0
- package/dist/components/domain/video-grid/VideoGrid.vue.js +62 -0
- package/dist/components/domain/video-grid/VideoGrid.vue2.js +4 -0
- package/dist/components/domain/video-player/VideoPlayer.vue.js +49 -0
- package/dist/components/domain/video-player/VideoPlayer.vue2.js +4 -0
- package/dist/components/domain/video-tile/VideoTile.vue.js +7 -0
- package/dist/components/domain/video-tile/VideoTile.vue2.js +105 -0
- package/dist/components/ui/accordion/Accordion.vue.js +31 -0
- package/dist/components/ui/accordion/Accordion.vue2.js +4 -0
- package/dist/components/ui/accordion/AccordionContent.vue.js +29 -0
- package/dist/components/ui/accordion/AccordionContent.vue2.js +4 -0
- package/dist/components/ui/accordion/AccordionItem.vue.js +30 -0
- package/dist/components/ui/accordion/AccordionItem.vue2.js +4 -0
- package/dist/components/ui/accordion/AccordionTrigger.vue.js +39 -0
- package/dist/components/ui/accordion/AccordionTrigger.vue2.js +4 -0
- package/dist/components/ui/alert/Alert.vue.js +22 -0
- package/dist/components/ui/alert/Alert.vue2.js +4 -0
- package/dist/components/ui/alert/AlertDescription.vue.js +19 -0
- package/dist/components/ui/alert/AlertDescription.vue2.js +4 -0
- package/dist/components/ui/alert/AlertTitle.vue.js +19 -0
- package/dist/components/ui/alert/AlertTitle.vue2.js +4 -0
- package/dist/components/ui/alert/index.js +19 -0
- package/dist/components/ui/alert-dialog/AlertDialog.vue.js +23 -0
- package/dist/components/ui/alert-dialog/AlertDialog.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogAction.vue.js +27 -0
- package/dist/components/ui/alert-dialog/AlertDialogAction.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogCancel.vue.js +31 -0
- package/dist/components/ui/alert-dialog/AlertDialogCancel.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogContent.vue.js +41 -0
- package/dist/components/ui/alert-dialog/AlertDialogContent.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogDescription.vue.js +26 -0
- package/dist/components/ui/alert-dialog/AlertDialogDescription.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogFooter.vue.js +24 -0
- package/dist/components/ui/alert-dialog/AlertDialogFooter.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogHeader.vue.js +19 -0
- package/dist/components/ui/alert-dialog/AlertDialogHeader.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogTitle.vue.js +26 -0
- package/dist/components/ui/alert-dialog/AlertDialogTitle.vue2.js +4 -0
- package/dist/components/ui/alert-dialog/AlertDialogTrigger.vue.js +21 -0
- package/dist/components/ui/alert-dialog/AlertDialogTrigger.vue2.js +4 -0
- package/dist/components/ui/aspect-ratio/AspectRatio.vue.js +22 -0
- package/dist/components/ui/aspect-ratio/AspectRatio.vue2.js +4 -0
- package/dist/components/ui/avatar/Avatar.vue.js +26 -0
- package/dist/components/ui/avatar/Avatar.vue2.js +4 -0
- package/dist/components/ui/avatar/AvatarFallback.vue.js +22 -0
- package/dist/components/ui/avatar/AvatarFallback.vue2.js +4 -0
- package/dist/components/ui/avatar/AvatarImage.vue.js +24 -0
- package/dist/components/ui/avatar/AvatarImage.vue2.js +4 -0
- package/dist/components/ui/avatar/index.js +21 -0
- package/dist/components/ui/badge/Badge.vue.js +21 -0
- package/dist/components/ui/badge/Badge.vue2.js +4 -0
- package/dist/components/ui/badge/index.js +21 -0
- package/dist/components/ui/button/Button.vue.js +30 -0
- package/dist/components/ui/button/Button.vue2.js +4 -0
- package/dist/components/ui/button/index.js +32 -0
- package/dist/components/ui/calendar/Calendar.vue.js +120 -0
- package/dist/components/ui/calendar/Calendar.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarCell.vue.js +28 -0
- package/dist/components/ui/calendar/CalendarCell.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarCellTrigger.vue.js +43 -0
- package/dist/components/ui/calendar/CalendarCellTrigger.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarGrid.vue.js +27 -0
- package/dist/components/ui/calendar/CalendarGrid.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarGridBody.vue.js +21 -0
- package/dist/components/ui/calendar/CalendarGridBody.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarGridHead.vue.js +21 -0
- package/dist/components/ui/calendar/CalendarGridHead.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarGridRow.vue.js +27 -0
- package/dist/components/ui/calendar/CalendarGridRow.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarHeadCell.vue.js +27 -0
- package/dist/components/ui/calendar/CalendarHeadCell.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarHeader.vue.js +27 -0
- package/dist/components/ui/calendar/CalendarHeader.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarHeading.vue.js +29 -0
- package/dist/components/ui/calendar/CalendarHeading.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarNextButton.vue.js +36 -0
- package/dist/components/ui/calendar/CalendarNextButton.vue2.js +4 -0
- package/dist/components/ui/calendar/CalendarPrevButton.vue.js +36 -0
- package/dist/components/ui/calendar/CalendarPrevButton.vue2.js +4 -0
- package/dist/components/ui/card/Card.vue.js +24 -0
- package/dist/components/ui/card/Card.vue2.js +4 -0
- package/dist/components/ui/card/CardContent.vue.js +19 -0
- package/dist/components/ui/card/CardContent.vue2.js +4 -0
- package/dist/components/ui/card/CardDescription.vue.js +19 -0
- package/dist/components/ui/card/CardDescription.vue2.js +4 -0
- package/dist/components/ui/card/CardFooter.vue.js +19 -0
- package/dist/components/ui/card/CardFooter.vue2.js +4 -0
- package/dist/components/ui/card/CardHeader.vue.js +19 -0
- package/dist/components/ui/card/CardHeader.vue2.js +4 -0
- package/dist/components/ui/card/CardTitle.vue.js +21 -0
- package/dist/components/ui/card/CardTitle.vue2.js +4 -0
- package/dist/components/ui/checkbox/Checkbox.vue.js +49 -0
- package/dist/components/ui/checkbox/Checkbox.vue2.js +4 -0
- package/dist/components/ui/collapsible/Collapsible.vue.js +27 -0
- package/dist/components/ui/collapsible/Collapsible.vue2.js +4 -0
- package/dist/components/ui/collapsible/CollapsibleContent.vue.js +22 -0
- package/dist/components/ui/collapsible/CollapsibleContent.vue2.js +4 -0
- package/dist/components/ui/collapsible/CollapsibleTrigger.vue.js +21 -0
- package/dist/components/ui/collapsible/CollapsibleTrigger.vue2.js +4 -0
- package/dist/components/ui/command/Command.vue.js +76 -0
- package/dist/components/ui/command/Command.vue2.js +4 -0
- package/dist/components/ui/command/CommandDialog.vue.js +36 -0
- package/dist/components/ui/command/CommandDialog.vue2.js +4 -0
- package/dist/components/ui/command/CommandEmpty.vue.js +29 -0
- package/dist/components/ui/command/CommandEmpty.vue2.js +4 -0
- package/dist/components/ui/command/CommandGroup.vue.js +45 -0
- package/dist/components/ui/command/CommandGroup.vue2.js +4 -0
- package/dist/components/ui/command/CommandInput.vue.js +37 -0
- package/dist/components/ui/command/CommandInput.vue2.js +4 -0
- package/dist/components/ui/command/CommandItem.vue.js +54 -0
- package/dist/components/ui/command/CommandItem.vue2.js +4 -0
- package/dist/components/ui/command/CommandList.vue.js +29 -0
- package/dist/components/ui/command/CommandList.vue2.js +4 -0
- package/dist/components/ui/command/CommandSeparator.vue.js +28 -0
- package/dist/components/ui/command/CommandSeparator.vue2.js +4 -0
- package/dist/components/ui/command/CommandShortcut.vue.js +19 -0
- package/dist/components/ui/command/CommandShortcut.vue2.js +4 -0
- package/dist/components/ui/command/index.js +9 -0
- package/dist/components/ui/context-menu/ContextMenu.vue.js +24 -0
- package/dist/components/ui/context-menu/ContextMenu.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuCheckboxItem.vue.js +44 -0
- package/dist/components/ui/context-menu/ContextMenuCheckboxItem.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuContent.vue.js +52 -0
- package/dist/components/ui/context-menu/ContextMenuContent.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuGroup.vue.js +21 -0
- package/dist/components/ui/context-menu/ContextMenuGroup.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuItem.vue.js +35 -0
- package/dist/components/ui/context-menu/ContextMenuItem.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuLabel.vue.js +31 -0
- package/dist/components/ui/context-menu/ContextMenuLabel.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuPortal.vue.js +23 -0
- package/dist/components/ui/context-menu/ContextMenuPortal.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuRadioGroup.vue.js +24 -0
- package/dist/components/ui/context-menu/ContextMenuRadioGroup.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuRadioItem.vue.js +44 -0
- package/dist/components/ui/context-menu/ContextMenuRadioItem.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuSeparator.vue.js +21 -0
- package/dist/components/ui/context-menu/ContextMenuSeparator.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuShortcut.vue.js +19 -0
- package/dist/components/ui/context-menu/ContextMenuShortcut.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuSub.vue.js +23 -0
- package/dist/components/ui/context-menu/ContextMenuSub.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuSubContent.vue.js +49 -0
- package/dist/components/ui/context-menu/ContextMenuSubContent.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuSubTrigger.vue.js +36 -0
- package/dist/components/ui/context-menu/ContextMenuSubTrigger.vue2.js +4 -0
- package/dist/components/ui/context-menu/ContextMenuTrigger.vue.js +23 -0
- package/dist/components/ui/context-menu/ContextMenuTrigger.vue2.js +4 -0
- package/dist/components/ui/dialog/Dialog.vue.js +24 -0
- package/dist/components/ui/dialog/Dialog.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogClose.vue.js +21 -0
- package/dist/components/ui/dialog/DialogClose.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogContent.vue.js +50 -0
- package/dist/components/ui/dialog/DialogContent.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogDescription.vue.js +27 -0
- package/dist/components/ui/dialog/DialogDescription.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogFooter.vue.js +24 -0
- package/dist/components/ui/dialog/DialogFooter.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogHeader.vue.js +19 -0
- package/dist/components/ui/dialog/DialogHeader.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogScrollContent.vue.js +59 -0
- package/dist/components/ui/dialog/DialogScrollContent.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogTitle.vue.js +30 -0
- package/dist/components/ui/dialog/DialogTitle.vue2.js +4 -0
- package/dist/components/ui/dialog/DialogTrigger.vue.js +21 -0
- package/dist/components/ui/dialog/DialogTrigger.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenu.vue.js +25 -0
- package/dist/components/ui/dropdown-menu/DropdownMenu.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue.js +44 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.js +54 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuGroup.vue.js +21 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuGroup.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuItem.vue.js +34 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuItem.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuLabel.vue.js +28 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuLabel.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue.js +24 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuRadioItem.vue.js +44 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuRadioItem.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSeparator.vue.js +21 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSeparator.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuShortcut.vue.js +19 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuShortcut.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSub.vue.js +23 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSub.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubContent.vue.js +46 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubContent.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue.js +34 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue2.js +4 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuTrigger.vue.js +23 -0
- package/dist/components/ui/dropdown-menu/DropdownMenuTrigger.vue2.js +4 -0
- package/dist/components/ui/form/FormControl.vue.js +22 -0
- package/dist/components/ui/form/FormControl.vue2.js +4 -0
- package/dist/components/ui/form/FormDescription.vue.js +21 -0
- package/dist/components/ui/form/FormDescription.vue2.js +4 -0
- package/dist/components/ui/form/FormItem.vue.js +21 -0
- package/dist/components/ui/form/FormItem.vue2.js +4 -0
- package/dist/components/ui/form/FormLabel.vue.js +31 -0
- package/dist/components/ui/form/FormLabel.vue2.js +4 -0
- package/dist/components/ui/form/FormMessage.vue.js +18 -0
- package/dist/components/ui/form/FormMessage.vue2.js +4 -0
- package/dist/components/ui/form/injectionKeys.js +4 -0
- package/dist/components/ui/form/useFormField.js +25 -0
- package/dist/components/ui/hover-card/HoverCard.vue.js +25 -0
- package/dist/components/ui/hover-card/HoverCard.vue2.js +4 -0
- package/dist/components/ui/hover-card/HoverCardContent.vue.js +55 -0
- package/dist/components/ui/hover-card/HoverCardContent.vue2.js +4 -0
- package/dist/components/ui/hover-card/HoverCardTrigger.vue.js +22 -0
- package/dist/components/ui/hover-card/HoverCardTrigger.vue2.js +4 -0
- package/dist/components/ui/input/Input.vue.js +30 -0
- package/dist/components/ui/input/Input.vue2.js +4 -0
- package/dist/components/ui/label/Label.vue.js +30 -0
- package/dist/components/ui/label/Label.vue2.js +4 -0
- package/dist/components/ui/menubar/Menubar.vue.js +33 -0
- package/dist/components/ui/menubar/Menubar.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarCheckboxItem.vue.js +44 -0
- package/dist/components/ui/menubar/MenubarCheckboxItem.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarContent.vue.js +56 -0
- package/dist/components/ui/menubar/MenubarContent.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarGroup.vue.js +21 -0
- package/dist/components/ui/menubar/MenubarGroup.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarItem.vue.js +35 -0
- package/dist/components/ui/menubar/MenubarItem.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarLabel.vue.js +26 -0
- package/dist/components/ui/menubar/MenubarLabel.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarMenu.vue.js +20 -0
- package/dist/components/ui/menubar/MenubarMenu.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarRadioGroup.vue.js +24 -0
- package/dist/components/ui/menubar/MenubarRadioGroup.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarRadioItem.vue.js +44 -0
- package/dist/components/ui/menubar/MenubarRadioItem.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarSeparator.vue.js +22 -0
- package/dist/components/ui/menubar/MenubarSeparator.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarShortcut.vue.js +19 -0
- package/dist/components/ui/menubar/MenubarShortcut.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarSub.vue.js +23 -0
- package/dist/components/ui/menubar/MenubarSub.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarSubContent.vue.js +55 -0
- package/dist/components/ui/menubar/MenubarSubContent.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarSubTrigger.vue.js +36 -0
- package/dist/components/ui/menubar/MenubarSubTrigger.vue2.js +4 -0
- package/dist/components/ui/menubar/MenubarTrigger.vue.js +31 -0
- package/dist/components/ui/menubar/MenubarTrigger.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenu.vue.js +40 -0
- package/dist/components/ui/navigation-menu/NavigationMenu.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuContent.vue.js +33 -0
- package/dist/components/ui/navigation-menu/NavigationMenuContent.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuIndicator.vue.js +28 -0
- package/dist/components/ui/navigation-menu/NavigationMenuIndicator.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuItem.vue.js +22 -0
- package/dist/components/ui/navigation-menu/NavigationMenuItem.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuLink.vue.js +24 -0
- package/dist/components/ui/navigation-menu/NavigationMenuLink.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuList.vue.js +30 -0
- package/dist/components/ui/navigation-menu/NavigationMenuList.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuTrigger.vue.js +34 -0
- package/dist/components/ui/navigation-menu/NavigationMenuTrigger.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/NavigationMenuViewport.vue.js +29 -0
- package/dist/components/ui/navigation-menu/NavigationMenuViewport.vue2.js +4 -0
- package/dist/components/ui/navigation-menu/index.js +8 -0
- package/dist/components/ui/pagination/Pagination.vue.js +35 -0
- package/dist/components/ui/pagination/Pagination.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationContent.vue.js +26 -0
- package/dist/components/ui/pagination/PaginationContent.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationEllipsis.vue.js +30 -0
- package/dist/components/ui/pagination/PaginationEllipsis.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationFirst.vue.js +34 -0
- package/dist/components/ui/pagination/PaginationFirst.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationItem.vue.js +36 -0
- package/dist/components/ui/pagination/PaginationItem.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationLast.vue.js +34 -0
- package/dist/components/ui/pagination/PaginationLast.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationNext.vue.js +34 -0
- package/dist/components/ui/pagination/PaginationNext.vue2.js +4 -0
- package/dist/components/ui/pagination/PaginationPrevious.vue.js +34 -0
- package/dist/components/ui/pagination/PaginationPrevious.vue2.js +4 -0
- package/dist/components/ui/popover/Popover.vue.js +24 -0
- package/dist/components/ui/popover/Popover.vue2.js +4 -0
- package/dist/components/ui/popover/PopoverContent.vue.js +58 -0
- package/dist/components/ui/popover/PopoverContent.vue2.js +4 -0
- package/dist/components/ui/popover/PopoverTrigger.vue.js +21 -0
- package/dist/components/ui/popover/PopoverTrigger.vue2.js +4 -0
- package/dist/components/ui/progress/Progress.vue.js +37 -0
- package/dist/components/ui/progress/Progress.vue2.js +4 -0
- package/dist/components/ui/radio-group/RadioGroup.vue.js +36 -0
- package/dist/components/ui/radio-group/RadioGroup.vue2.js +4 -0
- package/dist/components/ui/radio-group/RadioGroupItem.vue.js +42 -0
- package/dist/components/ui/radio-group/RadioGroupItem.vue2.js +4 -0
- package/dist/components/ui/scroll-area/ScrollArea.vue.js +39 -0
- package/dist/components/ui/scroll-area/ScrollArea.vue2.js +4 -0
- package/dist/components/ui/scroll-area/ScrollBar.vue.js +34 -0
- package/dist/components/ui/scroll-area/ScrollBar.vue2.js +4 -0
- package/dist/components/ui/select/Select.vue.js +32 -0
- package/dist/components/ui/select/Select.vue2.js +4 -0
- package/dist/components/ui/select/SelectContent.vue.js +73 -0
- package/dist/components/ui/select/SelectContent.vue2.js +4 -0
- package/dist/components/ui/select/SelectGroup.vue.js +26 -0
- package/dist/components/ui/select/SelectGroup.vue2.js +4 -0
- package/dist/components/ui/select/SelectItem.vue.js +49 -0
- package/dist/components/ui/select/SelectItem.vue2.js +4 -0
- package/dist/components/ui/select/SelectItemText.vue.js +21 -0
- package/dist/components/ui/select/SelectItemText.vue2.js +4 -0
- package/dist/components/ui/select/SelectLabel.vue.js +26 -0
- package/dist/components/ui/select/SelectLabel.vue2.js +4 -0
- package/dist/components/ui/select/SelectScrollDownButton.vue.js +30 -0
- package/dist/components/ui/select/SelectScrollDownButton.vue2.js +4 -0
- package/dist/components/ui/select/SelectScrollUpButton.vue.js +30 -0
- package/dist/components/ui/select/SelectScrollUpButton.vue2.js +4 -0
- package/dist/components/ui/select/SelectSeparator.vue.js +21 -0
- package/dist/components/ui/select/SelectSeparator.vue2.js +4 -0
- package/dist/components/ui/select/SelectTrigger.vue.js +40 -0
- package/dist/components/ui/select/SelectTrigger.vue2.js +4 -0
- package/dist/components/ui/select/SelectValue.vue.js +22 -0
- package/dist/components/ui/select/SelectValue.vue2.js +4 -0
- package/dist/components/ui/separator/Separator.vue.js +27 -0
- package/dist/components/ui/separator/Separator.vue2.js +4 -0
- package/dist/components/ui/sheet/Sheet.vue.js +24 -0
- package/dist/components/ui/sheet/Sheet.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetClose.vue.js +21 -0
- package/dist/components/ui/sheet/SheetClose.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetContent.vue.js +49 -0
- package/dist/components/ui/sheet/SheetContent.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetDescription.vue.js +26 -0
- package/dist/components/ui/sheet/SheetDescription.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetFooter.vue.js +24 -0
- package/dist/components/ui/sheet/SheetFooter.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetHeader.vue.js +21 -0
- package/dist/components/ui/sheet/SheetHeader.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetTitle.vue.js +26 -0
- package/dist/components/ui/sheet/SheetTitle.vue2.js +4 -0
- package/dist/components/ui/sheet/SheetTrigger.vue.js +21 -0
- package/dist/components/ui/sheet/SheetTrigger.vue2.js +4 -0
- package/dist/components/ui/sheet/index.js +21 -0
- package/dist/components/ui/skeleton/Skeleton.vue.js +17 -0
- package/dist/components/ui/skeleton/Skeleton.vue2.js +4 -0
- package/dist/components/ui/slider/Slider.vue.js +56 -0
- package/dist/components/ui/slider/Slider.vue2.js +4 -0
- package/dist/components/ui/sonner/Sonner.vue.js +74 -0
- package/dist/components/ui/sonner/Sonner.vue2.js +4 -0
- package/dist/components/ui/switch/Switch.vue.js +48 -0
- package/dist/components/ui/switch/Switch.vue2.js +4 -0
- package/dist/components/ui/table/Table.vue.js +21 -0
- package/dist/components/ui/table/Table.vue2.js +4 -0
- package/dist/components/ui/table/TableBody.vue.js +19 -0
- package/dist/components/ui/table/TableBody.vue2.js +4 -0
- package/dist/components/ui/table/TableCaption.vue.js +19 -0
- package/dist/components/ui/table/TableCaption.vue2.js +4 -0
- package/dist/components/ui/table/TableCell.vue.js +24 -0
- package/dist/components/ui/table/TableCell.vue2.js +4 -0
- package/dist/components/ui/table/TableEmpty.vue.js +36 -0
- package/dist/components/ui/table/TableEmpty.vue2.js +4 -0
- package/dist/components/ui/table/TableFooter.vue.js +19 -0
- package/dist/components/ui/table/TableFooter.vue2.js +4 -0
- package/dist/components/ui/table/TableHead.vue.js +19 -0
- package/dist/components/ui/table/TableHead.vue2.js +4 -0
- package/dist/components/ui/table/TableHeader.vue.js +19 -0
- package/dist/components/ui/table/TableHeader.vue2.js +4 -0
- package/dist/components/ui/table/TableRow.vue.js +19 -0
- package/dist/components/ui/table/TableRow.vue2.js +4 -0
- package/dist/components/ui/tabs/Tabs.vue.js +29 -0
- package/dist/components/ui/tabs/Tabs.vue2.js +4 -0
- package/dist/components/ui/tabs/TabsContent.vue.js +28 -0
- package/dist/components/ui/tabs/TabsContent.vue2.js +4 -0
- package/dist/components/ui/tabs/TabsList.vue.js +30 -0
- package/dist/components/ui/tabs/TabsList.vue2.js +4 -0
- package/dist/components/ui/tabs/TabsTrigger.vue.js +34 -0
- package/dist/components/ui/tabs/TabsTrigger.vue2.js +4 -0
- package/dist/components/ui/textarea/Textarea.vue.js +27 -0
- package/dist/components/ui/textarea/Textarea.vue2.js +4 -0
- package/dist/components/ui/tooltip/Tooltip.vue.js +28 -0
- package/dist/components/ui/tooltip/Tooltip.vue2.js +4 -0
- package/dist/components/ui/tooltip/TooltipContent.vue.js +49 -0
- package/dist/components/ui/tooltip/TooltipContent.vue2.js +4 -0
- package/dist/components/ui/tooltip/TooltipProvider.vue.js +26 -0
- package/dist/components/ui/tooltip/TooltipProvider.vue2.js +4 -0
- package/dist/components/ui/tooltip/TooltipTrigger.vue.js +22 -0
- package/dist/components/ui/tooltip/TooltipTrigger.vue2.js +4 -0
- package/dist/composables/useAnimations.js +49 -0
- package/dist/composables/useCameraBorder.js +32 -0
- package/dist/composables/useChatMedia.js +101 -0
- package/dist/composables/useChatMessages.js +107 -0
- package/dist/composables/useErrors.js +19 -0
- package/dist/composables/useMedia.js +302 -0
- package/dist/composables/useNfcListener.js +42 -0
- package/dist/composables/useQuestion.js +32 -0
- package/dist/composables/useScanning.js +26 -0
- package/dist/composables/useStreamingAudio.js +121 -0
- package/dist/composables/useToast.js +16 -0
- package/dist/composables/useWebSocket.js +114 -0
- package/dist/experience/ExperienceFlow.vue.js +7 -0
- package/dist/experience/ExperienceFlow.vue2.js +94 -0
- package/dist/experience/pages/audio-capture/AudioCapturePage.vue.js +86 -0
- package/dist/experience/pages/audio-capture/AudioCapturePage.vue2.js +4 -0
- package/dist/experience/pages/audio-capture/index.js +8 -0
- package/dist/experience/pages/audio-review/AudioReviewPage.vue.js +102 -0
- package/dist/experience/pages/audio-review/AudioReviewPage.vue2.js +4 -0
- package/dist/experience/pages/audio-review/index.js +9 -0
- package/dist/experience/pages/camera/CameraPage.vue.js +139 -0
- package/dist/experience/pages/camera/CameraPage.vue2.js +4 -0
- package/dist/experience/pages/camera/index.js +8 -0
- package/dist/experience/pages/camera-review/CameraReviewPage.vue.js +104 -0
- package/dist/experience/pages/camera-review/CameraReviewPage.vue2.js +4 -0
- package/dist/experience/pages/camera-review/index.js +9 -0
- package/dist/experience/pages/drawing/DrawingPage.vue.js +185 -0
- package/dist/experience/pages/drawing/DrawingPage.vue2.js +4 -0
- package/dist/experience/pages/drawing/index.js +8 -0
- package/dist/experience/pages/final/FinalPage.vue.js +109 -0
- package/dist/experience/pages/final/FinalPage.vue2.js +4 -0
- package/dist/experience/pages/final/index.js +6 -0
- package/dist/experience/pages/form/FormPage.vue.js +175 -0
- package/dist/experience/pages/form/FormPage.vue2.js +4 -0
- package/dist/experience/pages/form/index.js +8 -0
- package/dist/experience/pages/instructions/InstructionsPage.vue.js +89 -0
- package/dist/experience/pages/instructions/InstructionsPage.vue2.js +4 -0
- package/dist/experience/pages/instructions/index.js +6 -0
- package/dist/experience/pages/loading/LoadingPage.vue.js +59 -0
- package/dist/experience/pages/loading/LoadingPage.vue2.js +4 -0
- package/dist/experience/pages/loading/index.js +11 -0
- package/dist/experience/pages/notepad/NotepadPage.vue.js +149 -0
- package/dist/experience/pages/notepad/NotepadPage.vue2.js +4 -0
- package/dist/experience/pages/notepad/index.js +8 -0
- package/dist/experience/pages/options/OptionsPage.vue.js +77 -0
- package/dist/experience/pages/options/OptionsPage.vue2.js +4 -0
- package/dist/experience/pages/options/index.js +8 -0
- package/dist/experience/pages/photo-edit/PhotoEditPage.vue.js +172 -0
- package/dist/experience/pages/photo-edit/PhotoEditPage.vue2.js +4 -0
- package/dist/experience/pages/photo-edit/index.js +8 -0
- package/dist/experience/pages/prompt/PromptPage.vue.js +110 -0
- package/dist/experience/pages/prompt/PromptPage.vue2.js +4 -0
- package/dist/experience/pages/prompt/index.js +8 -0
- package/dist/experience/pages/results-gallery/ResultsGalleryPage.vue.js +105 -0
- package/dist/experience/pages/results-gallery/ResultsGalleryPage.vue2.js +4 -0
- package/dist/experience/pages/results-gallery/index.js +8 -0
- package/dist/experience/pages/share/SharePage.vue.js +154 -0
- package/dist/experience/pages/share/SharePage.vue2.js +4 -0
- package/dist/experience/pages/share/index.js +6 -0
- package/dist/experience/pages/terms/TermsPage.vue.js +80 -0
- package/dist/experience/pages/terms/TermsPage.vue2.js +4 -0
- package/dist/experience/pages/terms/index.js +8 -0
- package/dist/experience/pages/text/TextPage.vue.js +79 -0
- package/dist/experience/pages/text/TextPage.vue2.js +4 -0
- package/dist/experience/pages/text/index.js +8 -0
- package/dist/experience/pages/video-capture/VideoCapturePage.vue.js +107 -0
- package/dist/experience/pages/video-capture/VideoCapturePage.vue2.js +4 -0
- package/dist/experience/pages/video-capture/index.js +8 -0
- package/dist/experience/pages/video-review/VideoReviewPage.vue.js +102 -0
- package/dist/experience/pages/video-review/VideoReviewPage.vue2.js +4 -0
- package/dist/experience/pages/video-review/index.js +9 -0
- package/dist/experience/pages/welcome/WelcomePage.vue.js +48 -0
- package/dist/experience/pages/welcome/WelcomePage.vue2.js +4 -0
- package/dist/experience/pages/welcome/index.js +6 -0
- package/dist/experience/useExperience.js +99 -0
- package/dist/experience/useExperienceApi.js +37 -0
- package/dist/experience/withDefaults.js +11 -0
- package/dist/index.d.ts +12193 -0
- package/dist/index.js +538 -0
- package/dist/lib/imageToBlob.js +31 -0
- package/dist/lib/utils.js +104 -0
- package/dist/node_modules/.pnpm/@floating-ui_core@1.7.5/node_modules/@floating-ui/core/dist/floating-ui.core.js +532 -0
- package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.6/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +403 -0
- package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.11/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +136 -0
- package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.11/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +128 -0
- package/dist/node_modules/.pnpm/@floating-ui_vue@1.1.11_vue@3.5.35_typescript@5.9.3_/node_modules/@floating-ui/vue/dist/floating-ui.vue.js +133 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/CalendarDate.js +186 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/DateFormatter.js +99 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/BuddhistCalendar.js +32 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/EthiopicCalendar.js +110 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/GregorianCalendar.js +104 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/HebrewCalendar.js +86 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/IndianCalendar.js +40 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/IslamicCalendar.js +122 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/JapaneseCalendar.js +128 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/PersianCalendar.js +53 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/calendars/TaiwanCalendar.js +54 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/conversion.js +135 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/createCalendar.js +43 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/manipulation.js +205 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/queries.js +127 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/string.js +27 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/utils.js +6 -0
- package/dist/node_modules/.pnpm/@internationalized_date@3.12.1/node_modules/@internationalized/date/dist/private/weekStartData.js +100 -0
- package/dist/node_modules/.pnpm/@vueuse_core@14.3.0_vue@3.5.35_typescript@5.9.3_/node_modules/@vueuse/core/dist/index.js +152 -0
- package/dist/node_modules/.pnpm/@vueuse_shared@14.3.0_vue@3.5.35_typescript@5.9.3_/node_modules/@vueuse/shared/dist/index.js +291 -0
- package/dist/node_modules/.pnpm/aria-hidden@1.2.6/node_modules/aria-hidden/dist/es2015/index.js +52 -0
- package/dist/node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.js +35 -0
- package/dist/node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.js +16 -0
- package/dist/node_modules/.pnpm/defu@6.1.7/node_modules/defu/dist/defu.js +35 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/createLucideIcon.js +26 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/defaultAttributes.js +20 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/alert-circle.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/alert-octagon.js +21 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/alert-triangle.js +21 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/check-circle-2.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/check.js +11 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/chevron-down.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/chevron-left.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/chevron-right.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/chevron-up.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/circle.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/clock.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/delete.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/flag.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/hand.js +22 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/info.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/loader-2.js +13 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/log-out.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/mic-off.js +18 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/mic.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/monitor.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/more-horizontal.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/paperclip.js +19 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/screen-share.js +17 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/search.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/send.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/user.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/users.js +16 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/video-off.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/video.js +14 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/volume-x.js +15 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/wifi-off.js +19 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/wifi.js +16 -0
- package/dist/node_modules/.pnpm/lucide-vue-next@0.344.0_vue@3.5.35_typescript@5.9.3_/node_modules/lucide-vue-next/dist/esm/icons/x.js +14 -0
- package/dist/node_modules/.pnpm/ohash@2.0.11/node_modules/ohash/dist/shared/ohash.D__AXeF1.js +107 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Accordion/AccordionContent.js +54 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Accordion/AccordionHeader.js +41 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Accordion/AccordionItem.js +98 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Accordion/AccordionRoot.js +82 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Accordion/AccordionTrigger.js +56 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogAction.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogCancel.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogContent.js +65 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogDescription.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogOverlay.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogRoot.js +28 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogTitle.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AlertDialog/AlertDialogTrigger.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/AspectRatio/AspectRatio.js +43 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Avatar/AvatarFallback.js +48 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Avatar/AvatarImage.js +62 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Avatar/AvatarRoot.js +32 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Avatar/utils.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarCell.js +47 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarCellTrigger.js +146 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarGrid.js +39 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarGridBody.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarGridHead.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarGridRow.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarHeadCell.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarHeader.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarHeading.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarNext.js +50 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarPrev.js +50 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/CalendarRoot.js +292 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Calendar/useCalendar.js +208 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Checkbox/CheckboxGroupRoot.js +6 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Checkbox/CheckboxIndicator.js +49 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Checkbox/CheckboxRoot.js +153 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Checkbox/utils.js +10 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Collapsible/CollapsibleContent.js +92 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Collapsible/CollapsibleRoot.js +71 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Collapsible/CollapsibleTrigger.js +53 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Collection/Collection.js +63 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ConfigProvider/ConfigProvider.js +6 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuCheckboxItem.js +43 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuContent.js +121 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuGroup.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuItem.js +39 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuItemIndicator.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuLabel.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuRadioGroup.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuRadioItem.js +43 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuRoot.js +60 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuSeparator.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuSub.js +37 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuSubContent.js +114 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuSubTrigger.js +34 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/ContextMenuTrigger.js +91 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ContextMenu/utils.js +6 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogClose.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogContent.js +66 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogContentImpl.js +94 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogContentModal.js +67 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogContentNonModal.js +66 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogDescription.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogOverlay.js +45 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogOverlayImpl.js +39 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogRoot.js +57 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogTitle.js +28 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/DialogTrigger.js +45 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Dialog/utils.js +18 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DismissableLayer/DismissableLayer.js +85 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DismissableLayer/utils.js +66 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuCheckboxItem.js +43 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuContent.js +144 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuGroup.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuItem.js +39 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuItemIndicator.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuLabel.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuRadioGroup.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuRadioItem.js +40 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuRoot.js +69 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuSeparator.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuSub.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuSubContent.js +114 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuSubTrigger.js +34 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/DropdownMenu/DropdownMenuTrigger.js +76 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/FocusScope/FocusScope.js +110 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/FocusScope/stack.js +23 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/FocusScope/utils.js +52 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/HoverCardContent.js +118 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/HoverCardContentImpl.js +165 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/HoverCardPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/HoverCardRoot.js +69 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/HoverCardTrigger.js +60 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/HoverCard/utils.js +12 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Label/Label.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxContent.js +65 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxFilter.js +88 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxGroup.js +29 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxGroupLabel.js +31 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxItem.js +89 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxRoot.js +280 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/utils.js +11 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuAnchor.js +29 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuCheckboxItem.js +50 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuContent.js +130 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuContentImpl.js +306 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuGroup.js +29 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuItem.js +63 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuItemImpl.js +80 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuItemIndicator.js +46 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuLabel.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuRadioGroup.js +42 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuRadioItem.js +49 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuRoot.js +56 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuRootContentModal.js +121 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuRootContentNonModal.js +117 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuSeparator.js +28 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuSub.js +47 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuSubContent.js +150 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/MenuSubTrigger.js +126 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menu/utils.js +64 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarCheckboxItem.js +43 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarContent.js +160 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarGroup.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarItem.js +39 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarItemIndicator.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarLabel.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarMenu.js +42 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarRadioGroup.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarRadioItem.js +40 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarRoot.js +82 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarSeparator.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarSub.js +37 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarSubContent.js +132 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarSubTrigger.js +34 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Menubar/MenubarTrigger.js +98 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuContent.js +74 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuContentImpl.js +131 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuIndicator.js +65 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuItem.js +107 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuLink.js +64 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuList.js +45 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuRoot.js +152 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuTrigger.js +112 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/NavigationMenuViewport.js +121 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/NavigationMenu/utils.js +47 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationEllipsis.js +26 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationFirst.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationLast.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationList.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationListItem.js +48 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationNext.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationPrev.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/PaginationRoot.js +84 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Pagination/utils.js +49 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverContent.js +125 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverContentImpl.js +157 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverContentModal.js +131 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverContentNonModal.js +124 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverRoot.js +56 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popover/PopoverTrigger.js +55 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popper/PopperAnchor.js +37 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popper/PopperContent.js +240 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popper/PopperRoot.js +18 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Popper/utils.js +31 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Presence/Presence.js +42 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Presence/usePresence.js +64 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Primitive/Primitive.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Primitive/Slot.js +24 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Primitive/usePrimitiveElement.js +15 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Progress/ProgressIndicator.js +38 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Progress/ProgressRoot.js +100 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RadioGroup/Radio.js +110 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RadioGroup/RadioGroupIndicator.js +47 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RadioGroup/RadioGroupItem.js +116 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RadioGroup/RadioGroupRoot.js +123 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RadioGroup/utils.js +11 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RovingFocus/RovingFocusGroup.js +121 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RovingFocus/RovingFocusItem.js +94 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/RovingFocus/utils.js +38 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaCorner.js +27 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaCornerImpl.js +40 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaRoot.js +111 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbar.js +84 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarAuto.js +36 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarGlimpse.js +95 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarHover.js +45 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarImpl.js +89 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarScroll.js +67 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarVisible.js +86 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarX.js +34 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaScrollbarY.js +35 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaThumb.js +68 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/ScrollAreaViewport.js +61 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/ScrollArea/utils.js +53 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/BubbleSelect.js +67 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectContent.js +153 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectContentImpl.js +274 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectGroup.js +29 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectIcon.js +29 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectItem.js +122 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectItemAlignedPosition.js +93 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectItemIndicator.js +30 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectItemText.js +48 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectLabel.js +31 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectPopperPosition.js +108 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectProvider.js +17 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectRoot.js +158 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectScrollButtonImpl.js +49 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectScrollDownButton.js +47 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectScrollUpButton.js +46 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectSeparator.js +25 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectTrigger.js +109 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectValue.js +59 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/SelectViewport.js +73 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Select/utils.js +24 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Separator/Separator.js +34 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderHorizontal.js +80 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderImpl.js +51 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderRange.js +46 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderRoot.js +185 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderThumb.js +28 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderThumbImpl.js +84 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderTrack.js +38 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/SliderVertical.js +73 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Slider/utils.js +93 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Switch/SwitchRoot.js +134 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Switch/SwitchThumb.js +38 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tabs/TabsContent.js +70 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tabs/TabsList.js +55 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tabs/TabsRoot.js +94 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tabs/TabsTrigger.js +78 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tabs/utils.js +10 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Teleport/Teleport.js +40 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipContent.js +90 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipContentHoverable.js +84 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipContentImpl.js +142 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipPortal.js +33 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipProvider.js +70 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipRoot.js +101 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/TooltipTrigger.js +89 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/Tooltip/utils.js +4 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/VisuallyHidden/VisuallyHidden.js +57 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/VisuallyHidden/VisuallyHiddenInput.js +65 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/VisuallyHidden/VisuallyHiddenInputBubble.js +55 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/component/BaseSeparator.js +49 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/date/calendar.js +61 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/date/comparators.js +61 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/date/utils.js +17 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/arrays.js +10 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/clamp.js +6 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/createContext.js +12 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/getActiveElement.js +9 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/handleAndDispatchCustomEvent.js +11 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/isValueEqualOrExist.js +8 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/nullish.js +6 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/renderSlotFragments.js +7 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useArrowNavigation.js +32 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useBodyScrollLock.js +66 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useDateFormatter.js +124 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useDirection.js +12 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useEmitAsProps.js +10 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFilter.js +25 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFocusGuards.js +19 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFormControl.js +11 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useForwardExpose.js +50 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useForwardProps.js +19 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useForwardPropsEmits.js +13 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useGraceArea.js +168 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useHideOthers.js +19 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useId.js +17 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useIsUsingKeyboard.js +23 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useKbd.js +41 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useLocale.js +12 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useNonce.js +12 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useSingleOrMultipleValue.js +45 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useSize.js +41 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useStateMachine.js +16 -0
- package/dist/node_modules/.pnpm/reka-ui@2.9.8_vue@3.5.35_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useTypeahead.js +39 -0
- package/dist/node_modules/.pnpm/tailwind-merge@3.6.0/node_modules/tailwind-merge/dist/bundle-mjs.js +2993 -0
- package/dist/style.css +1 -0
- package/dist/styles/index.css +2 -0
- package/package.json +135 -0
- package/src/__mocks__/@ericblade/quagga2.ts +7 -0
- package/src/components/domain/audio-visualizer/AudioVisualizer.stories.ts +162 -0
- package/src/components/domain/audio-visualizer/AudioVisualizer.test.ts +291 -0
- package/src/components/domain/audio-visualizer/AudioVisualizer.vue +225 -0
- package/src/components/domain/audio-visualizer/index.ts +2 -0
- package/src/components/domain/barcode-scanner/BarcodeScanner.stories.ts +139 -0
- package/src/components/domain/barcode-scanner/BarcodeScanner.test.ts +93 -0
- package/src/components/domain/barcode-scanner/BarcodeScanner.vue +145 -0
- package/src/components/domain/barcode-scanner/index.ts +2 -0
- package/src/components/domain/chat-transcript/ChatTranscript.stories.ts +283 -0
- package/src/components/domain/chat-transcript/ChatTranscript.test.ts +462 -0
- package/src/components/domain/chat-transcript/ChatTranscript.vue +330 -0
- package/src/components/domain/chat-transcript/index.ts +2 -0
- package/src/components/domain/connection-status/ConnectionStatus.stories.ts +120 -0
- package/src/components/domain/connection-status/ConnectionStatus.test.ts +133 -0
- package/src/components/domain/connection-status/ConnectionStatus.vue +136 -0
- package/src/components/domain/connection-status/index.ts +2 -0
- package/src/components/domain/countdown/Countdown.stories.ts +96 -0
- package/src/components/domain/countdown/Countdown.test.ts +99 -0
- package/src/components/domain/countdown/Countdown.vue +118 -0
- package/src/components/domain/countdown/index.ts +2 -0
- package/src/components/domain/countdown-timer/CountdownTimer.stories.ts +150 -0
- package/src/components/domain/countdown-timer/CountdownTimer.test.ts +172 -0
- package/src/components/domain/countdown-timer/CountdownTimer.vue +196 -0
- package/src/components/domain/countdown-timer/index.ts +2 -0
- package/src/components/domain/download-button/DownloadButton.stories.ts +131 -0
- package/src/components/domain/download-button/DownloadButton.test.ts +364 -0
- package/src/components/domain/download-button/DownloadButton.vue +119 -0
- package/src/components/domain/download-button/index.ts +2 -0
- package/src/components/domain/file-uploader/FileUploader.stories.ts +78 -0
- package/src/components/domain/file-uploader/FileUploader.test.ts +157 -0
- package/src/components/domain/file-uploader/FileUploader.vue +182 -0
- package/src/components/domain/file-uploader/index.ts +2 -0
- package/src/components/domain/header/Header.stories.ts +48 -0
- package/src/components/domain/header/Header.test.ts +92 -0
- package/src/components/domain/header/Header.vue +48 -0
- package/src/components/domain/header/index.ts +2 -0
- package/src/components/domain/leaderboard/ActivityNotifications.stories.ts +206 -0
- package/src/components/domain/leaderboard/ActivityNotifications.test.ts +306 -0
- package/src/components/domain/leaderboard/ActivityNotifications.vue +152 -0
- package/src/components/domain/leaderboard/AwardIcon.stories.ts +63 -0
- package/src/components/domain/leaderboard/AwardIcon.test.ts +42 -0
- package/src/components/domain/leaderboard/AwardIcon.vue +48 -0
- package/src/components/domain/leaderboard/Leaderboard.stories.ts +225 -0
- package/src/components/domain/leaderboard/Leaderboard.test.ts +320 -0
- package/src/components/domain/leaderboard/Leaderboard.vue +314 -0
- package/src/components/domain/leaderboard/RecentActivity.stories.ts +152 -0
- package/src/components/domain/leaderboard/RecentActivity.test.ts +398 -0
- package/src/components/domain/leaderboard/RecentActivity.vue +169 -0
- package/src/components/domain/leaderboard/index.ts +11 -0
- package/src/components/domain/live-countdown/LiveCountdown.stories.ts +117 -0
- package/src/components/domain/live-countdown/LiveCountdown.test.ts +170 -0
- package/src/components/domain/live-countdown/LiveCountdown.vue +183 -0
- package/src/components/domain/live-countdown/index.ts +2 -0
- package/src/components/domain/live-countdown-sync/LiveCountdownSync.stories.ts +180 -0
- package/src/components/domain/live-countdown-sync/LiveCountdownSync.test.ts +74 -0
- package/src/components/domain/live-countdown-sync/LiveCountdownSync.vue +196 -0
- package/src/components/domain/live-countdown-sync/index.ts +2 -0
- package/src/components/domain/local-preview/LocalPreview.stories.ts +53 -0
- package/src/components/domain/local-preview/LocalPreview.test.ts +73 -0
- package/src/components/domain/local-preview/LocalPreview.vue +196 -0
- package/src/components/domain/local-preview/index.ts +2 -0
- package/src/components/domain/media-control-bar/MediaControlBar.stories.ts +81 -0
- package/src/components/domain/media-control-bar/MediaControlBar.test.ts +110 -0
- package/src/components/domain/media-control-bar/MediaControlBar.vue +163 -0
- package/src/components/domain/media-control-bar/index.ts +2 -0
- package/src/components/domain/message-composer/MessageComposer.stories.ts +64 -0
- package/src/components/domain/message-composer/MessageComposer.test.ts +195 -0
- package/src/components/domain/message-composer/MessageComposer.vue +220 -0
- package/src/components/domain/message-composer/index.ts +2 -0
- package/src/components/domain/message-list/MessageList.stories.ts +103 -0
- package/src/components/domain/message-list/MessageList.test.ts +121 -0
- package/src/components/domain/message-list/MessageList.vue +96 -0
- package/src/components/domain/message-list/index.ts +2 -0
- package/src/components/domain/on-screen-keyboard/OnScreenKeyboard.stories.ts +150 -0
- package/src/components/domain/on-screen-keyboard/OnScreenKeyboard.test.ts +148 -0
- package/src/components/domain/on-screen-keyboard/OnScreenKeyboard.vue +155 -0
- package/src/components/domain/on-screen-keyboard/index.ts +4 -0
- package/src/components/domain/on-screen-keyboard/layouts.ts +43 -0
- package/src/components/domain/participant-item/ParticipantItem.stories.ts +129 -0
- package/src/components/domain/participant-item/ParticipantItem.test.ts +163 -0
- package/src/components/domain/participant-item/ParticipantItem.vue +128 -0
- package/src/components/domain/participant-item/index.ts +2 -0
- package/src/components/domain/pin-pad/PinPad.stories.ts +150 -0
- package/src/components/domain/pin-pad/PinPad.test.ts +171 -0
- package/src/components/domain/pin-pad/PinPad.vue +235 -0
- package/src/components/domain/pin-pad/index.ts +2 -0
- package/src/components/domain/signature-pad/SignaturePad.stories.ts +125 -0
- package/src/components/domain/signature-pad/SignaturePad.test.ts +149 -0
- package/src/components/domain/signature-pad/SignaturePad.vue +180 -0
- package/src/components/domain/signature-pad/index.ts +2 -0
- package/src/components/domain/social-stream-post/SocialStreamPost.stories.ts +187 -0
- package/src/components/domain/social-stream-post/SocialStreamPost.test.ts +403 -0
- package/src/components/domain/social-stream-post/SocialStreamPost.vue +105 -0
- package/src/components/domain/social-stream-post/SocialStreamPostBody.vue +139 -0
- package/src/components/domain/social-stream-post/index.ts +9 -0
- package/src/components/domain/spinner/Spinner.stories.ts +88 -0
- package/src/components/domain/spinner/Spinner.test.ts +87 -0
- package/src/components/domain/spinner/Spinner.vue +42 -0
- package/src/components/domain/spinner/index.ts +2 -0
- package/src/components/domain/step-progress/StepProgress.stories.ts +173 -0
- package/src/components/domain/step-progress/StepProgress.test.ts +194 -0
- package/src/components/domain/step-progress/StepProgress.vue +151 -0
- package/src/components/domain/step-progress/index.ts +2 -0
- package/src/components/domain/theme-wrapper/ThemeWrapper.stories.ts +163 -0
- package/src/components/domain/theme-wrapper/ThemeWrapper.test.ts +284 -0
- package/src/components/domain/theme-wrapper/ThemeWrapper.vue +122 -0
- package/src/components/domain/theme-wrapper/index.ts +2 -0
- package/src/components/domain/video-grid/VideoGrid.stories.ts +77 -0
- package/src/components/domain/video-grid/VideoGrid.test.ts +97 -0
- package/src/components/domain/video-grid/VideoGrid.vue +87 -0
- package/src/components/domain/video-grid/index.ts +2 -0
- package/src/components/domain/video-player/VideoPlayer.stories.ts +66 -0
- package/src/components/domain/video-player/VideoPlayer.test.ts +180 -0
- package/src/components/domain/video-player/VideoPlayer.vue +82 -0
- package/src/components/domain/video-player/index.ts +2 -0
- package/src/components/domain/video-tile/VideoTile.stories.ts +68 -0
- package/src/components/domain/video-tile/VideoTile.test.ts +116 -0
- package/src/components/domain/video-tile/VideoTile.vue +134 -0
- package/src/components/domain/video-tile/index.ts +2 -0
- package/src/components/ui/accordion/Accordion.stories.ts +68 -0
- package/src/components/ui/accordion/Accordion.test.ts +105 -0
- package/src/components/ui/accordion/Accordion.vue +24 -0
- package/src/components/ui/accordion/AccordionContent.vue +22 -0
- package/src/components/ui/accordion/AccordionItem.vue +22 -0
- package/src/components/ui/accordion/AccordionTrigger.vue +36 -0
- package/src/components/ui/accordion/index.ts +4 -0
- package/src/components/ui/alert/Alert.stories.ts +98 -0
- package/src/components/ui/alert/Alert.test.ts +164 -0
- package/src/components/ui/alert/Alert.vue +23 -0
- package/src/components/ui/alert/AlertDescription.vue +14 -0
- package/src/components/ui/alert/AlertTitle.vue +14 -0
- package/src/components/ui/alert/index.ts +24 -0
- package/src/components/ui/alert-dialog/AlertDialog.stories.ts +59 -0
- package/src/components/ui/alert-dialog/AlertDialog.test.ts +255 -0
- package/src/components/ui/alert-dialog/AlertDialog.vue +21 -0
- package/src/components/ui/alert-dialog/AlertDialogAction.vue +18 -0
- package/src/components/ui/alert-dialog/AlertDialogCancel.vue +25 -0
- package/src/components/ui/alert-dialog/AlertDialogContent.vue +38 -0
- package/src/components/ui/alert-dialog/AlertDialogDescription.vue +22 -0
- package/src/components/ui/alert-dialog/AlertDialogFooter.vue +21 -0
- package/src/components/ui/alert-dialog/AlertDialogHeader.vue +16 -0
- package/src/components/ui/alert-dialog/AlertDialogTitle.vue +20 -0
- package/src/components/ui/alert-dialog/AlertDialogTrigger.vue +12 -0
- package/src/components/ui/alert-dialog/index.ts +9 -0
- package/src/components/ui/aspect-ratio/AspectRatio.stories.ts +54 -0
- package/src/components/ui/aspect-ratio/AspectRatio.test.ts +73 -0
- package/src/components/ui/aspect-ratio/AspectRatio.vue +18 -0
- package/src/components/ui/aspect-ratio/index.ts +1 -0
- package/src/components/ui/avatar/Avatar.stories.ts +138 -0
- package/src/components/ui/avatar/Avatar.test.ts +136 -0
- package/src/components/ui/avatar/Avatar.vue +27 -0
- package/src/components/ui/avatar/AvatarFallback.vue +12 -0
- package/src/components/ui/avatar/AvatarImage.vue +12 -0
- package/src/components/ui/avatar/index.ts +25 -0
- package/src/components/ui/badge/Badge.stories.ts +103 -0
- package/src/components/ui/badge/Badge.test.ts +119 -0
- package/src/components/ui/badge/Badge.vue +22 -0
- package/src/components/ui/badge/index.ts +26 -0
- package/src/components/ui/button/Button.stories.ts +312 -0
- package/src/components/ui/button/Button.test.ts +307 -0
- package/src/components/ui/button/Button.vue +35 -0
- package/src/components/ui/button/index.ts +37 -0
- package/src/components/ui/calendar/Calendar.stories.ts +65 -0
- package/src/components/ui/calendar/Calendar.test.ts +64 -0
- package/src/components/ui/calendar/Calendar.vue +64 -0
- package/src/components/ui/calendar/CalendarCell.vue +22 -0
- package/src/components/ui/calendar/CalendarCellTrigger.vue +36 -0
- package/src/components/ui/calendar/CalendarGrid.vue +22 -0
- package/src/components/ui/calendar/CalendarGridBody.vue +12 -0
- package/src/components/ui/calendar/CalendarGridHead.vue +12 -0
- package/src/components/ui/calendar/CalendarGridRow.vue +19 -0
- package/src/components/ui/calendar/CalendarHeadCell.vue +19 -0
- package/src/components/ui/calendar/CalendarHeader.vue +19 -0
- package/src/components/ui/calendar/CalendarHeading.vue +29 -0
- package/src/components/ui/calendar/CalendarNextButton.vue +30 -0
- package/src/components/ui/calendar/CalendarPrevButton.vue +30 -0
- package/src/components/ui/calendar/index.ts +12 -0
- package/src/components/ui/card/Card.stories.ts +168 -0
- package/src/components/ui/card/Card.test.ts +213 -0
- package/src/components/ui/card/Card.vue +27 -0
- package/src/components/ui/card/CardContent.vue +14 -0
- package/src/components/ui/card/CardDescription.vue +14 -0
- package/src/components/ui/card/CardFooter.vue +14 -0
- package/src/components/ui/card/CardHeader.vue +14 -0
- package/src/components/ui/card/CardTitle.vue +18 -0
- package/src/components/ui/card/index.ts +6 -0
- package/src/components/ui/checkbox/Checkbox.stories.ts +132 -0
- package/src/components/ui/checkbox/Checkbox.test.ts +72 -0
- package/src/components/ui/checkbox/Checkbox.vue +35 -0
- package/src/components/ui/checkbox/index.ts +1 -0
- package/src/components/ui/collapsible/Collapsible.stories.ts +49 -0
- package/src/components/ui/collapsible/Collapsible.test.ts +44 -0
- package/src/components/ui/collapsible/Collapsible.vue +20 -0
- package/src/components/ui/collapsible/CollapsibleContent.vue +12 -0
- package/src/components/ui/collapsible/CollapsibleTrigger.vue +12 -0
- package/src/components/ui/collapsible/index.ts +3 -0
- package/src/components/ui/command/Command.stories.ts +272 -0
- package/src/components/ui/command/Command.test.ts +127 -0
- package/src/components/ui/command/Command.vue +86 -0
- package/src/components/ui/command/CommandDialog.vue +21 -0
- package/src/components/ui/command/CommandEmpty.vue +23 -0
- package/src/components/ui/command/CommandGroup.vue +44 -0
- package/src/components/ui/command/CommandInput.vue +35 -0
- package/src/components/ui/command/CommandItem.vue +75 -0
- package/src/components/ui/command/CommandList.vue +21 -0
- package/src/components/ui/command/CommandSeparator.vue +20 -0
- package/src/components/ui/command/CommandShortcut.vue +14 -0
- package/src/components/ui/command/index.ts +25 -0
- package/src/components/ui/context-menu/ContextMenu.stories.ts +240 -0
- package/src/components/ui/context-menu/ContextMenu.test.ts +66 -0
- package/src/components/ui/context-menu/ContextMenu.vue +21 -0
- package/src/components/ui/context-menu/ContextMenuCheckboxItem.vue +36 -0
- package/src/components/ui/context-menu/ContextMenuContent.vue +32 -0
- package/src/components/ui/context-menu/ContextMenuGroup.vue +12 -0
- package/src/components/ui/context-menu/ContextMenuItem.vue +30 -0
- package/src/components/ui/context-menu/ContextMenuLabel.vue +23 -0
- package/src/components/ui/context-menu/ContextMenuPortal.vue +12 -0
- package/src/components/ui/context-menu/ContextMenuRadioGroup.vue +18 -0
- package/src/components/ui/context-menu/ContextMenuRadioItem.vue +36 -0
- package/src/components/ui/context-menu/ContextMenuSeparator.vue +17 -0
- package/src/components/ui/context-menu/ContextMenuShortcut.vue +14 -0
- package/src/components/ui/context-menu/ContextMenuSub.vue +18 -0
- package/src/components/ui/context-menu/ContextMenuSubContent.vue +31 -0
- package/src/components/ui/context-menu/ContextMenuSubTrigger.vue +31 -0
- package/src/components/ui/context-menu/ContextMenuTrigger.vue +14 -0
- package/src/components/ui/context-menu/index.ts +15 -0
- package/src/components/ui/dialog/Dialog.stories.ts +339 -0
- package/src/components/ui/dialog/Dialog.test.ts +342 -0
- package/src/components/ui/dialog/Dialog.vue +20 -0
- package/src/components/ui/dialog/DialogClose.vue +12 -0
- package/src/components/ui/dialog/DialogContent.vue +46 -0
- package/src/components/ui/dialog/DialogDescription.vue +22 -0
- package/src/components/ui/dialog/DialogFooter.vue +19 -0
- package/src/components/ui/dialog/DialogHeader.vue +16 -0
- package/src/components/ui/dialog/DialogScrollContent.vue +55 -0
- package/src/components/ui/dialog/DialogTitle.vue +27 -0
- package/src/components/ui/dialog/DialogTrigger.vue +12 -0
- package/src/components/ui/dialog/index.ts +9 -0
- package/src/components/ui/dropdown-menu/DropdownMenu.stories.ts +316 -0
- package/src/components/ui/dropdown-menu/DropdownMenu.test.ts +193 -0
- package/src/components/ui/dropdown-menu/DropdownMenu.vue +21 -0
- package/src/components/ui/dropdown-menu/DropdownMenuCheckboxItem.vue +36 -0
- package/src/components/ui/dropdown-menu/DropdownMenuContent.vue +34 -0
- package/src/components/ui/dropdown-menu/DropdownMenuGroup.vue +12 -0
- package/src/components/ui/dropdown-menu/DropdownMenuItem.vue +26 -0
- package/src/components/ui/dropdown-menu/DropdownMenuLabel.vue +22 -0
- package/src/components/ui/dropdown-menu/DropdownMenuRadioGroup.vue +18 -0
- package/src/components/ui/dropdown-menu/DropdownMenuRadioItem.vue +37 -0
- package/src/components/ui/dropdown-menu/DropdownMenuSeparator.vue +19 -0
- package/src/components/ui/dropdown-menu/DropdownMenuShortcut.vue +14 -0
- package/src/components/ui/dropdown-menu/DropdownMenuSub.vue +18 -0
- package/src/components/ui/dropdown-menu/DropdownMenuSubContent.vue +26 -0
- package/src/components/ui/dropdown-menu/DropdownMenuSubTrigger.vue +30 -0
- package/src/components/ui/dropdown-menu/DropdownMenuTrigger.vue +14 -0
- package/src/components/ui/dropdown-menu/index.ts +16 -0
- package/src/components/ui/form/Form.stories.ts +150 -0
- package/src/components/ui/form/Form.test.ts +45 -0
- package/src/components/ui/form/FormControl.vue +16 -0
- package/src/components/ui/form/FormDescription.vue +20 -0
- package/src/components/ui/form/FormItem.vue +20 -0
- package/src/components/ui/form/FormLabel.vue +23 -0
- package/src/components/ui/form/FormMessage.vue +16 -0
- package/src/components/ui/form/index.ts +12 -0
- package/src/components/ui/form/injectionKeys.ts +4 -0
- package/src/components/ui/form/useFormField.ts +30 -0
- package/src/components/ui/hover-card/HoverCard.stories.ts +48 -0
- package/src/components/ui/hover-card/HoverCard.test.ts +124 -0
- package/src/components/ui/hover-card/HoverCard.vue +21 -0
- package/src/components/ui/hover-card/HoverCardContent.vue +38 -0
- package/src/components/ui/hover-card/HoverCardTrigger.vue +12 -0
- package/src/components/ui/hover-card/index.ts +3 -0
- package/src/components/ui/input/Input.stories.ts +472 -0
- package/src/components/ui/input/Input.test.ts +317 -0
- package/src/components/ui/input/Input.vue +35 -0
- package/src/components/ui/input/index.ts +1 -0
- package/src/components/ui/label/Label.stories.ts +48 -0
- package/src/components/ui/label/Label.test.ts +75 -0
- package/src/components/ui/label/Label.vue +30 -0
- package/src/components/ui/label/index.ts +1 -0
- package/src/components/ui/menubar/Menubar.stories.ts +296 -0
- package/src/components/ui/menubar/Menubar.test.ts +135 -0
- package/src/components/ui/menubar/Menubar.vue +37 -0
- package/src/components/ui/menubar/MenubarCheckboxItem.vue +36 -0
- package/src/components/ui/menubar/MenubarContent.vue +40 -0
- package/src/components/ui/menubar/MenubarGroup.vue +12 -0
- package/src/components/ui/menubar/MenubarItem.vue +31 -0
- package/src/components/ui/menubar/MenubarLabel.vue +14 -0
- package/src/components/ui/menubar/MenubarMenu.vue +12 -0
- package/src/components/ui/menubar/MenubarRadioGroup.vue +19 -0
- package/src/components/ui/menubar/MenubarRadioItem.vue +36 -0
- package/src/components/ui/menubar/MenubarSeparator.vue +17 -0
- package/src/components/ui/menubar/MenubarShortcut.vue +14 -0
- package/src/components/ui/menubar/MenubarSub.vue +20 -0
- package/src/components/ui/menubar/MenubarSubContent.vue +35 -0
- package/src/components/ui/menubar/MenubarSubTrigger.vue +28 -0
- package/src/components/ui/menubar/MenubarTrigger.vue +27 -0
- package/src/components/ui/menubar/index.ts +15 -0
- package/src/components/ui/navigation-menu/NavigationMenu.stories.ts +212 -0
- package/src/components/ui/navigation-menu/NavigationMenu.test.ts +107 -0
- package/src/components/ui/navigation-menu/NavigationMenu.vue +34 -0
- package/src/components/ui/navigation-menu/NavigationMenuContent.vue +30 -0
- package/src/components/ui/navigation-menu/NavigationMenuIndicator.vue +22 -0
- package/src/components/ui/navigation-menu/NavigationMenuItem.vue +12 -0
- package/src/components/ui/navigation-menu/NavigationMenuLink.vue +18 -0
- package/src/components/ui/navigation-menu/NavigationMenuList.vue +27 -0
- package/src/components/ui/navigation-menu/NavigationMenuTrigger.vue +31 -0
- package/src/components/ui/navigation-menu/NavigationMenuViewport.vue +30 -0
- package/src/components/ui/navigation-menu/index.ts +14 -0
- package/src/components/ui/pagination/Pagination.stories.ts +83 -0
- package/src/components/ui/pagination/Pagination.test.ts +152 -0
- package/src/components/ui/pagination/Pagination.vue +31 -0
- package/src/components/ui/pagination/PaginationContent.vue +22 -0
- package/src/components/ui/pagination/PaginationEllipsis.vue +25 -0
- package/src/components/ui/pagination/PaginationFirst.vue +33 -0
- package/src/components/ui/pagination/PaginationItem.vue +34 -0
- package/src/components/ui/pagination/PaginationLast.vue +33 -0
- package/src/components/ui/pagination/PaginationNext.vue +33 -0
- package/src/components/ui/pagination/PaginationPrevious.vue +33 -0
- package/src/components/ui/pagination/index.ts +8 -0
- package/src/components/ui/popover/Popover.stories.ts +47 -0
- package/src/components/ui/popover/Popover.test.ts +85 -0
- package/src/components/ui/popover/Popover.vue +20 -0
- package/src/components/ui/popover/PopoverContent.vue +44 -0
- package/src/components/ui/popover/PopoverTrigger.vue +12 -0
- package/src/components/ui/popover/index.ts +3 -0
- package/src/components/ui/progress/Progress.stories.ts +84 -0
- package/src/components/ui/progress/Progress.test.ts +95 -0
- package/src/components/ui/progress/Progress.vue +41 -0
- package/src/components/ui/progress/index.ts +1 -0
- package/src/components/ui/radio-group/RadioGroup.stories.ts +112 -0
- package/src/components/ui/radio-group/RadioGroup.test.ts +124 -0
- package/src/components/ui/radio-group/RadioGroup.vue +28 -0
- package/src/components/ui/radio-group/RadioGroupItem.vue +36 -0
- package/src/components/ui/radio-group/index.ts +2 -0
- package/src/components/ui/scroll-area/ScrollArea.stories.ts +61 -0
- package/src/components/ui/scroll-area/ScrollArea.test.ts +69 -0
- package/src/components/ui/scroll-area/ScrollArea.vue +31 -0
- package/src/components/ui/scroll-area/ScrollBar.vue +28 -0
- package/src/components/ui/scroll-area/index.ts +2 -0
- package/src/components/ui/select/Select.stories.ts +312 -0
- package/src/components/ui/select/Select.test.ts +290 -0
- package/src/components/ui/select/Select.vue +20 -0
- package/src/components/ui/select/SelectContent.vue +49 -0
- package/src/components/ui/select/SelectGroup.vue +17 -0
- package/src/components/ui/select/SelectItem.vue +41 -0
- package/src/components/ui/select/SelectItemText.vue +12 -0
- package/src/components/ui/select/SelectLabel.vue +14 -0
- package/src/components/ui/select/SelectScrollDownButton.vue +22 -0
- package/src/components/ui/select/SelectScrollUpButton.vue +22 -0
- package/src/components/ui/select/SelectSeparator.vue +15 -0
- package/src/components/ui/select/SelectTrigger.vue +29 -0
- package/src/components/ui/select/SelectValue.vue +12 -0
- package/src/components/ui/select/index.ts +11 -0
- package/src/components/ui/separator/Separator.stories.ts +100 -0
- package/src/components/ui/separator/Separator.test.ts +82 -0
- package/src/components/ui/separator/Separator.vue +34 -0
- package/src/components/ui/separator/index.ts +1 -0
- package/src/components/ui/sheet/Sheet.stories.ts +158 -0
- package/src/components/ui/sheet/Sheet.test.ts +345 -0
- package/src/components/ui/sheet/Sheet.vue +21 -0
- package/src/components/ui/sheet/SheetClose.vue +12 -0
- package/src/components/ui/sheet/SheetContent.vue +53 -0
- package/src/components/ui/sheet/SheetDescription.vue +20 -0
- package/src/components/ui/sheet/SheetFooter.vue +19 -0
- package/src/components/ui/sheet/SheetHeader.vue +16 -0
- package/src/components/ui/sheet/SheetTitle.vue +20 -0
- package/src/components/ui/sheet/SheetTrigger.vue +12 -0
- package/src/components/ui/sheet/index.ts +32 -0
- package/src/components/ui/skeleton/Skeleton.stories.ts +117 -0
- package/src/components/ui/skeleton/Skeleton.test.ts +63 -0
- package/src/components/ui/skeleton/Skeleton.vue +19 -0
- package/src/components/ui/skeleton/index.ts +1 -0
- package/src/components/ui/slider/Slider.stories.ts +96 -0
- package/src/components/ui/slider/Slider.test.ts +91 -0
- package/src/components/ui/slider/Slider.vue +38 -0
- package/src/components/ui/slider/index.ts +1 -0
- package/src/components/ui/sonner/Sonner.stories.ts +255 -0
- package/src/components/ui/sonner/Sonner.test.ts +37 -0
- package/src/components/ui/sonner/Sonner.vue +52 -0
- package/src/components/ui/sonner/index.ts +1 -0
- package/src/components/ui/switch/Switch.stories.ts +66 -0
- package/src/components/ui/switch/Switch.test.ts +78 -0
- package/src/components/ui/switch/Switch.vue +40 -0
- package/src/components/ui/switch/index.ts +1 -0
- package/src/components/ui/table/Table.stories.ts +193 -0
- package/src/components/ui/table/Table.test.ts +414 -0
- package/src/components/ui/table/Table.vue +22 -0
- package/src/components/ui/table/TableBody.vue +14 -0
- package/src/components/ui/table/TableCaption.vue +14 -0
- package/src/components/ui/table/TableCell.vue +21 -0
- package/src/components/ui/table/TableEmpty.vue +34 -0
- package/src/components/ui/table/TableFooter.vue +14 -0
- package/src/components/ui/table/TableHead.vue +14 -0
- package/src/components/ui/table/TableHeader.vue +14 -0
- package/src/components/ui/table/TableRow.vue +14 -0
- package/src/components/ui/table/index.ts +9 -0
- package/src/components/ui/tabs/Tabs.stories.ts +251 -0
- package/src/components/ui/tabs/Tabs.test.ts +127 -0
- package/src/components/ui/tabs/Tabs.vue +20 -0
- package/src/components/ui/tabs/TabsContent.vue +20 -0
- package/src/components/ui/tabs/TabsList.vue +23 -0
- package/src/components/ui/tabs/TabsTrigger.vue +27 -0
- package/src/components/ui/tabs/index.ts +4 -0
- package/src/components/ui/textarea/Textarea.stories.ts +114 -0
- package/src/components/ui/textarea/Textarea.test.ts +146 -0
- package/src/components/ui/textarea/Textarea.vue +29 -0
- package/src/components/ui/textarea/index.ts +1 -0
- package/src/components/ui/tooltip/Tooltip.stories.ts +30 -0
- package/src/components/ui/tooltip/Tooltip.test.ts +97 -0
- package/src/components/ui/tooltip/Tooltip.vue +20 -0
- package/src/components/ui/tooltip/TooltipContent.vue +29 -0
- package/src/components/ui/tooltip/TooltipProvider.vue +12 -0
- package/src/components/ui/tooltip/TooltipTrigger.vue +12 -0
- package/src/components/ui/tooltip/index.ts +4 -0
- package/src/composables/__demo__/UseAnimationsDemo.vue +60 -0
- package/src/composables/__demo__/UseCameraBorderDemo.vue +65 -0
- package/src/composables/__demo__/UseChatMediaDemo.vue +105 -0
- package/src/composables/__demo__/UseChatMessagesDemo.vue +95 -0
- package/src/composables/__demo__/UseErrorsDemo.vue +41 -0
- package/src/composables/__demo__/UseExperienceDemo.vue +72 -0
- package/src/composables/__demo__/UseMediaDemo.vue +100 -0
- package/src/composables/__demo__/UseNfcListenerDemo.vue +36 -0
- package/src/composables/__demo__/UseQuestionDemo.vue +72 -0
- package/src/composables/__demo__/UseScanningDemo.vue +40 -0
- package/src/composables/__demo__/UseStreamingAudioDemo.vue +101 -0
- package/src/composables/__demo__/UseToastDemo.vue +39 -0
- package/src/composables/__demo__/UseWebSocketDemo.vue +59 -0
- package/src/composables/index.ts +58 -0
- package/src/composables/useAnimations.stories.ts +64 -0
- package/src/composables/useAnimations.test.ts +480 -0
- package/src/composables/useAnimations.ts +108 -0
- package/src/composables/useCameraBorder.stories.ts +45 -0
- package/src/composables/useCameraBorder.test.ts +192 -0
- package/src/composables/useCameraBorder.ts +69 -0
- package/src/composables/useChatMedia.stories.ts +57 -0
- package/src/composables/useChatMedia.test.ts +120 -0
- package/src/composables/useChatMedia.ts +298 -0
- package/src/composables/useChatMessages.stories.ts +52 -0
- package/src/composables/useChatMessages.test.ts +105 -0
- package/src/composables/useChatMessages.ts +295 -0
- package/src/composables/useErrors.stories.ts +44 -0
- package/src/composables/useErrors.test.ts +79 -0
- package/src/composables/useErrors.ts +36 -0
- package/src/composables/useExperience.stories.ts +68 -0
- package/src/composables/useMedia.stories.ts +58 -0
- package/src/composables/useMedia.test.ts +106 -0
- package/src/composables/useMedia.ts +664 -0
- package/src/composables/useNfcListener.stories.ts +42 -0
- package/src/composables/useNfcListener.test.ts +311 -0
- package/src/composables/useNfcListener.ts +90 -0
- package/src/composables/useQuestion.stories.ts +118 -0
- package/src/composables/useQuestion.test.ts +113 -0
- package/src/composables/useQuestion.ts +130 -0
- package/src/composables/useScanning.stories.ts +40 -0
- package/src/composables/useScanning.test.ts +135 -0
- package/src/composables/useScanning.ts +50 -0
- package/src/composables/useStreamingAudio.stories.ts +69 -0
- package/src/composables/useStreamingAudio.test.ts +134 -0
- package/src/composables/useStreamingAudio.ts +308 -0
- package/src/composables/useToast.stories.ts +46 -0
- package/src/composables/useToast.test.ts +138 -0
- package/src/composables/useToast.ts +60 -0
- package/src/composables/useWebSocket.stories.ts +60 -0
- package/src/composables/useWebSocket.test.ts +443 -0
- package/src/composables/useWebSocket.ts +303 -0
- package/src/experience/ExperienceFlow.stories.ts +79 -0
- package/src/experience/ExperienceFlow.vue +100 -0
- package/src/experience/index.ts +81 -0
- package/src/experience/pages/audio-capture/AudioCapturePage.stories.ts +21 -0
- package/src/experience/pages/audio-capture/AudioCapturePage.vue +120 -0
- package/src/experience/pages/audio-capture/index.ts +7 -0
- package/src/experience/pages/audio-review/AudioReviewPage.stories.ts +21 -0
- package/src/experience/pages/audio-review/AudioReviewPage.vue +114 -0
- package/src/experience/pages/audio-review/index.ts +8 -0
- package/src/experience/pages/camera/CameraPage.stories.ts +25 -0
- package/src/experience/pages/camera/CameraPage.vue +186 -0
- package/src/experience/pages/camera/index.ts +7 -0
- package/src/experience/pages/camera-review/CameraReviewPage.stories.ts +27 -0
- package/src/experience/pages/camera-review/CameraReviewPage.test.ts +56 -0
- package/src/experience/pages/camera-review/CameraReviewPage.vue +129 -0
- package/src/experience/pages/camera-review/index.ts +8 -0
- package/src/experience/pages/drawing/DrawingPage.stories.ts +19 -0
- package/src/experience/pages/drawing/DrawingPage.vue +249 -0
- package/src/experience/pages/drawing/index.ts +7 -0
- package/src/experience/pages/final/FinalPage.stories.ts +30 -0
- package/src/experience/pages/final/FinalPage.vue +120 -0
- package/src/experience/pages/final/index.ts +5 -0
- package/src/experience/pages/form/FormPage.stories.ts +40 -0
- package/src/experience/pages/form/FormPage.test.ts +40 -0
- package/src/experience/pages/form/FormPage.vue +200 -0
- package/src/experience/pages/form/index.ts +7 -0
- package/src/experience/pages/instructions/InstructionsPage.stories.ts +24 -0
- package/src/experience/pages/instructions/InstructionsPage.vue +105 -0
- package/src/experience/pages/instructions/index.ts +5 -0
- package/src/experience/pages/loading/LoadingPage.stories.ts +24 -0
- package/src/experience/pages/loading/LoadingPage.vue +97 -0
- package/src/experience/pages/loading/index.ts +10 -0
- package/src/experience/pages/notepad/NotepadPage.stories.ts +19 -0
- package/src/experience/pages/notepad/NotepadPage.test.ts +24 -0
- package/src/experience/pages/notepad/NotepadPage.vue +190 -0
- package/src/experience/pages/notepad/index.ts +7 -0
- package/src/experience/pages/options/OptionsPage.stories.ts +28 -0
- package/src/experience/pages/options/OptionsPage.test.ts +28 -0
- package/src/experience/pages/options/OptionsPage.vue +79 -0
- package/src/experience/pages/options/index.ts +7 -0
- package/src/experience/pages/photo-edit/PhotoEditPage.stories.ts +31 -0
- package/src/experience/pages/photo-edit/PhotoEditPage.vue +204 -0
- package/src/experience/pages/photo-edit/index.ts +7 -0
- package/src/experience/pages/prompt/PromptPage.stories.ts +38 -0
- package/src/experience/pages/prompt/PromptPage.test.ts +70 -0
- package/src/experience/pages/prompt/PromptPage.vue +141 -0
- package/src/experience/pages/prompt/index.ts +7 -0
- package/src/experience/pages/results-gallery/ResultsGalleryPage.stories.ts +30 -0
- package/src/experience/pages/results-gallery/ResultsGalleryPage.test.ts +39 -0
- package/src/experience/pages/results-gallery/ResultsGalleryPage.vue +128 -0
- package/src/experience/pages/results-gallery/index.ts +7 -0
- package/src/experience/pages/share/SharePage.stories.ts +29 -0
- package/src/experience/pages/share/SharePage.test.ts +57 -0
- package/src/experience/pages/share/SharePage.vue +182 -0
- package/src/experience/pages/share/index.ts +5 -0
- package/src/experience/pages/terms/TermsPage.stories.ts +24 -0
- package/src/experience/pages/terms/TermsPage.test.ts +43 -0
- package/src/experience/pages/terms/TermsPage.vue +91 -0
- package/src/experience/pages/terms/index.ts +7 -0
- package/src/experience/pages/text/TextPage.stories.ts +21 -0
- package/src/experience/pages/text/TextPage.test.ts +34 -0
- package/src/experience/pages/text/TextPage.vue +98 -0
- package/src/experience/pages/text/index.ts +7 -0
- package/src/experience/pages/video-capture/VideoCapturePage.stories.ts +21 -0
- package/src/experience/pages/video-capture/VideoCapturePage.vue +153 -0
- package/src/experience/pages/video-capture/index.ts +7 -0
- package/src/experience/pages/video-review/VideoReviewPage.stories.ts +21 -0
- package/src/experience/pages/video-review/VideoReviewPage.vue +117 -0
- package/src/experience/pages/video-review/index.ts +8 -0
- package/src/experience/pages/welcome/WelcomePage.stories.ts +25 -0
- package/src/experience/pages/welcome/WelcomePage.test.ts +27 -0
- package/src/experience/pages/welcome/WelcomePage.vue +52 -0
- package/src/experience/pages/welcome/index.ts +5 -0
- package/src/experience/types.ts +79 -0
- package/src/experience/useExperience.test.ts +275 -0
- package/src/experience/useExperience.ts +168 -0
- package/src/experience/useExperienceApi.test.ts +71 -0
- package/src/experience/useExperienceApi.ts +96 -0
- package/src/experience/withDefaults.ts +22 -0
- package/src/index.ts +532 -0
- package/src/lib/imageToBlob.ts +53 -0
- package/src/lib/utils.test.ts +537 -0
- package/src/lib/utils.ts +225 -0
- package/src/shims.d.ts +10 -0
- package/src/styles/base.css +2 -0
- package/src/styles/tailwind.css +91 -0
- package/src/styles/themes/default.css +72 -0
- package/tsconfig.json +28 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Page-transition animation helpers. Maps a `page_animation_speed` +
|
|
3
|
+
* `page_animation_type` global setting to the matching `animate.css`
|
|
4
|
+
* classes and exposes `animatePage()` to drive the in/out transition
|
|
5
|
+
* between portal pages.
|
|
6
|
+
*/
|
|
7
|
+
import { ref, computed, type Ref, type ComputedRef } from 'vue'
|
|
8
|
+
|
|
9
|
+
export interface AnimationSettings {
|
|
10
|
+
page_animation_speed?: string
|
|
11
|
+
page_animation_type?: string
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface UseAnimationsReturn {
|
|
15
|
+
animatingClasses: ComputedRef<string[]>
|
|
16
|
+
pageAnimation: Ref<string>
|
|
17
|
+
init: (props: { globalSettings?: AnimationSettings }) => void
|
|
18
|
+
animatePage: (vars?: AnimationVars, reverse?: boolean) => Promise<void>
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
interface AnimationVars {
|
|
22
|
+
pluginVars: {
|
|
23
|
+
animate_next?: boolean
|
|
24
|
+
animate_prev?: boolean
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const timingLookup: Record<string, number> = {
|
|
29
|
+
animate__slower: 3000,
|
|
30
|
+
animate__slow: 2000,
|
|
31
|
+
animate__normal: 1000,
|
|
32
|
+
animate__fast: 800,
|
|
33
|
+
animate__faster: 500,
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const correspondingAnimationLookup: Record<string, string> = {
|
|
37
|
+
animate__fadeIn: 'animate__fadeOut',
|
|
38
|
+
animate__flipInX: 'animate__flipOutX',
|
|
39
|
+
animate__backInRight: 'animate__backOutLeft',
|
|
40
|
+
animate__slideInUp: 'animate__slideOutUp',
|
|
41
|
+
animate__zoomIn: 'animate__zoomOut',
|
|
42
|
+
animate__slideInDown: 'animate__slideOutDown',
|
|
43
|
+
animate__backInLeft: 'animate__backOutRight',
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
const reverseAnimationLookup: Record<string, string> = {
|
|
47
|
+
animate__fadeIn: 'animate__fadeIn',
|
|
48
|
+
animate__flipInX: 'animate__flipInX',
|
|
49
|
+
animate__backInRight: 'animate__backInLeft',
|
|
50
|
+
animate__slideInUp: 'animate__slideInDown',
|
|
51
|
+
animate__zoomIn: 'animate__zoomIn',
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const delay = (ms: number) => new Promise<void>((resolve) => setTimeout(resolve, ms))
|
|
55
|
+
|
|
56
|
+
const pageAnimation = ref('')
|
|
57
|
+
const speed = ref('')
|
|
58
|
+
const type = ref('')
|
|
59
|
+
|
|
60
|
+
const animatingClasses = computed(() => [
|
|
61
|
+
'animate__animated',
|
|
62
|
+
speed.value,
|
|
63
|
+
pageAnimation.value,
|
|
64
|
+
])
|
|
65
|
+
|
|
66
|
+
let currentVars: AnimationVars | undefined
|
|
67
|
+
|
|
68
|
+
export function useAnimations(): UseAnimationsReturn {
|
|
69
|
+
const init = (props: { globalSettings?: AnimationSettings }) => {
|
|
70
|
+
if (props.globalSettings) {
|
|
71
|
+
speed.value = props.globalSettings.page_animation_speed ?? ''
|
|
72
|
+
type.value = props.globalSettings.page_animation_type ?? ''
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
const animateNextPage = async (animationType: string) => {
|
|
77
|
+
pageAnimation.value = animationType
|
|
78
|
+
await delay(timingLookup[speed.value] ?? 1000)
|
|
79
|
+
pageAnimation.value = ''
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
const animatePage = async (vars?: AnimationVars, reverse = false) => {
|
|
83
|
+
if (vars) currentVars = vars
|
|
84
|
+
if (!currentVars) return
|
|
85
|
+
if (type.value === 'none') return
|
|
86
|
+
|
|
87
|
+
const shouldAnimate = type.value && speed.value && (
|
|
88
|
+
(!reverse && (currentVars.pluginVars.animate_next ?? true)) ||
|
|
89
|
+
(reverse && (currentVars.pluginVars.animate_prev ?? true))
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
if (shouldAnimate) {
|
|
93
|
+
const finalType = reverse
|
|
94
|
+
? reverseAnimationLookup[type.value] ?? type.value
|
|
95
|
+
: type.value
|
|
96
|
+
pageAnimation.value = correspondingAnimationLookup[finalType] ?? ''
|
|
97
|
+
await delay(timingLookup[speed.value] ?? 1000)
|
|
98
|
+
await animateNextPage(finalType)
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return {
|
|
103
|
+
init,
|
|
104
|
+
animatingClasses,
|
|
105
|
+
pageAnimation,
|
|
106
|
+
animatePage,
|
|
107
|
+
}
|
|
108
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
+
import UseCameraBorderDemo from './__demo__/UseCameraBorderDemo.vue'
|
|
3
|
+
|
|
4
|
+
const meta = {
|
|
5
|
+
title: 'Composables/useCameraBorder',
|
|
6
|
+
component: UseCameraBorderDemo,
|
|
7
|
+
tags: ['autodocs', 'category:composable', 'pattern:canvas', 'pattern:image'],
|
|
8
|
+
parameters: {
|
|
9
|
+
layout: 'centered',
|
|
10
|
+
docs: {
|
|
11
|
+
description: {
|
|
12
|
+
component: `
|
|
13
|
+
\`useCameraBorder()\` composites a transparent PNG border on top of a captured
|
|
14
|
+
image using a canvas. State: \`selectedBorder\` (mutable), \`canvasDimensions\`
|
|
15
|
+
(set the output size). Method: \`drawBorder(imageSrc)\` returns a data URL of
|
|
16
|
+
the composed image.
|
|
17
|
+
|
|
18
|
+
Useful for photo booths and kiosk experiences with branded frame overlays. Set
|
|
19
|
+
\`canvasDimensions\` once when you know the image size; switch
|
|
20
|
+
\`selectedBorder\` between frames as the user picks.
|
|
21
|
+
`,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
usage: {
|
|
25
|
+
whenToUse: [
|
|
26
|
+
'Photo-booth flows with selectable branded frames',
|
|
27
|
+
'Compositing a logo / watermark onto a user-captured image',
|
|
28
|
+
],
|
|
29
|
+
whenNotToUse: [
|
|
30
|
+
'Real-time video overlay — this composables operates on a static still',
|
|
31
|
+
'Complex multi-layer compositing — use a dedicated canvas library',
|
|
32
|
+
],
|
|
33
|
+
related: ['CameraPage', 'CameraReviewPage', 'PhotoEditPage'],
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
} satisfies Meta<typeof UseCameraBorderDemo>
|
|
37
|
+
|
|
38
|
+
export default meta
|
|
39
|
+
type Story = StoryObj<typeof meta>
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Pick a frame, click `drawBorder()` to composite it onto a sample photo, see
|
|
43
|
+
* the result. The reactive state is shown below.
|
|
44
|
+
*/
|
|
45
|
+
export const FrameComposite: Story = {}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest'
|
|
2
|
+
import { useCameraBorder } from './useCameraBorder'
|
|
3
|
+
|
|
4
|
+
// Mock canvas context
|
|
5
|
+
const mockContext = {
|
|
6
|
+
drawImage: vi.fn(),
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
// Mock canvas element
|
|
10
|
+
const mockCanvas = {
|
|
11
|
+
width: 0,
|
|
12
|
+
height: 0,
|
|
13
|
+
getContext: vi.fn(() => mockContext),
|
|
14
|
+
toDataURL: vi.fn(() => 'data:image/png;base64,mockdata'),
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// Track Image instances to resolve their onload
|
|
18
|
+
let imageInstances: Array<{ src: string; crossOrigin: string; onload: (() => void) | null; onerror: ((err: unknown) => void) | null }> = []
|
|
19
|
+
|
|
20
|
+
describe('useCameraBorder', () => {
|
|
21
|
+
beforeEach(() => {
|
|
22
|
+
vi.restoreAllMocks()
|
|
23
|
+
imageInstances = []
|
|
24
|
+
|
|
25
|
+
vi.spyOn(document, 'createElement').mockImplementation((tagName: string) => {
|
|
26
|
+
if (tagName === 'canvas') {
|
|
27
|
+
return mockCanvas as unknown as HTMLCanvasElement
|
|
28
|
+
}
|
|
29
|
+
// Fall through for other elements
|
|
30
|
+
return document.createElement.call(document, tagName) as HTMLElement
|
|
31
|
+
})
|
|
32
|
+
|
|
33
|
+
// Mock the global Image constructor
|
|
34
|
+
vi.stubGlobal('Image', class MockImage {
|
|
35
|
+
src = ''
|
|
36
|
+
crossOrigin = ''
|
|
37
|
+
onload: (() => void) | null = null
|
|
38
|
+
onerror: ((err: unknown) => void) | null = null
|
|
39
|
+
|
|
40
|
+
constructor() {
|
|
41
|
+
imageInstances.push(this)
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
mockContext.drawImage.mockClear()
|
|
46
|
+
mockCanvas.getContext.mockClear()
|
|
47
|
+
mockCanvas.toDataURL.mockClear()
|
|
48
|
+
mockCanvas.width = 0
|
|
49
|
+
mockCanvas.height = 0
|
|
50
|
+
})
|
|
51
|
+
|
|
52
|
+
it('returns all expected properties', () => {
|
|
53
|
+
const result = useCameraBorder()
|
|
54
|
+
expect(result).toHaveProperty('selectedBorder')
|
|
55
|
+
expect(result).toHaveProperty('canvasDimensions')
|
|
56
|
+
expect(result).toHaveProperty('drawBorder')
|
|
57
|
+
expect(result).toHaveProperty('reset')
|
|
58
|
+
})
|
|
59
|
+
|
|
60
|
+
it('has correct initial state', () => {
|
|
61
|
+
const { selectedBorder, canvasDimensions } = useCameraBorder()
|
|
62
|
+
expect(selectedBorder.value).toBeNull()
|
|
63
|
+
expect(canvasDimensions.value).toEqual({ width: 0, height: 0 })
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
describe('reset', () => {
|
|
67
|
+
it('clears selectedBorder and canvasDimensions', () => {
|
|
68
|
+
const { selectedBorder, canvasDimensions, reset } = useCameraBorder()
|
|
69
|
+
|
|
70
|
+
selectedBorder.value = { src: 'https://example.com/border.png', label: 'Gold' }
|
|
71
|
+
canvasDimensions.value = { width: 1920, height: 1080 }
|
|
72
|
+
|
|
73
|
+
reset()
|
|
74
|
+
|
|
75
|
+
expect(selectedBorder.value).toBeNull()
|
|
76
|
+
expect(canvasDimensions.value).toEqual({ width: 0, height: 0 })
|
|
77
|
+
})
|
|
78
|
+
})
|
|
79
|
+
|
|
80
|
+
describe('drawBorder', () => {
|
|
81
|
+
it('creates a canvas with correct dimensions', async () => {
|
|
82
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
83
|
+
canvasDimensions.value = { width: 800, height: 600 }
|
|
84
|
+
|
|
85
|
+
const promise = drawBorder('https://example.com/photo.png')
|
|
86
|
+
|
|
87
|
+
// Resolve the base image onload
|
|
88
|
+
expect(imageInstances.length).toBe(1)
|
|
89
|
+
expect(imageInstances[0].src).toBe('https://example.com/photo.png')
|
|
90
|
+
expect(imageInstances[0].crossOrigin).toBe('Anonymous')
|
|
91
|
+
imageInstances[0].onload!()
|
|
92
|
+
|
|
93
|
+
await promise
|
|
94
|
+
|
|
95
|
+
expect(mockCanvas.width).toBe(800)
|
|
96
|
+
expect(mockCanvas.height).toBe(600)
|
|
97
|
+
})
|
|
98
|
+
|
|
99
|
+
it('draws base image onto canvas', async () => {
|
|
100
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
101
|
+
canvasDimensions.value = { width: 400, height: 300 }
|
|
102
|
+
|
|
103
|
+
const promise = drawBorder('https://example.com/base.png')
|
|
104
|
+
|
|
105
|
+
imageInstances[0].onload!()
|
|
106
|
+
await promise
|
|
107
|
+
|
|
108
|
+
expect(mockContext.drawImage).toHaveBeenCalledTimes(1)
|
|
109
|
+
expect(mockContext.drawImage).toHaveBeenCalledWith(
|
|
110
|
+
imageInstances[0],
|
|
111
|
+
0,
|
|
112
|
+
0,
|
|
113
|
+
400,
|
|
114
|
+
300,
|
|
115
|
+
)
|
|
116
|
+
})
|
|
117
|
+
|
|
118
|
+
it('draws border overlay when selectedBorder is set', async () => {
|
|
119
|
+
const { selectedBorder, canvasDimensions, drawBorder } = useCameraBorder()
|
|
120
|
+
selectedBorder.value = { src: 'https://example.com/border.png', label: 'Fancy' }
|
|
121
|
+
canvasDimensions.value = { width: 400, height: 300 }
|
|
122
|
+
|
|
123
|
+
const promise = drawBorder('https://example.com/base.png')
|
|
124
|
+
|
|
125
|
+
// First image is the base
|
|
126
|
+
imageInstances[0].onload!()
|
|
127
|
+
// Wait for the base image promise to resolve, which triggers border load
|
|
128
|
+
await new Promise((r) => setTimeout(r, 0))
|
|
129
|
+
// Second image is the border
|
|
130
|
+
expect(imageInstances.length).toBe(2)
|
|
131
|
+
expect(imageInstances[1].src).toBe('https://example.com/border.png')
|
|
132
|
+
imageInstances[1].onload!()
|
|
133
|
+
|
|
134
|
+
await promise
|
|
135
|
+
|
|
136
|
+
expect(mockContext.drawImage).toHaveBeenCalledTimes(2)
|
|
137
|
+
// Second call is the border overlay
|
|
138
|
+
expect(mockContext.drawImage).toHaveBeenCalledWith(
|
|
139
|
+
imageInstances[1],
|
|
140
|
+
0,
|
|
141
|
+
0,
|
|
142
|
+
400,
|
|
143
|
+
300,
|
|
144
|
+
)
|
|
145
|
+
})
|
|
146
|
+
|
|
147
|
+
it('skips border overlay when selectedBorder is null', async () => {
|
|
148
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
149
|
+
canvasDimensions.value = { width: 400, height: 300 }
|
|
150
|
+
|
|
151
|
+
const promise = drawBorder('https://example.com/base.png')
|
|
152
|
+
imageInstances[0].onload!()
|
|
153
|
+
await promise
|
|
154
|
+
|
|
155
|
+
// Only one drawImage call (base image only)
|
|
156
|
+
expect(mockContext.drawImage).toHaveBeenCalledTimes(1)
|
|
157
|
+
})
|
|
158
|
+
|
|
159
|
+
it('returns a data URL', async () => {
|
|
160
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
161
|
+
canvasDimensions.value = { width: 100, height: 100 }
|
|
162
|
+
|
|
163
|
+
const promise = drawBorder('https://example.com/base.png')
|
|
164
|
+
imageInstances[0].onload!()
|
|
165
|
+
const result = await promise
|
|
166
|
+
|
|
167
|
+
expect(result).toBe('data:image/png;base64,mockdata')
|
|
168
|
+
expect(mockCanvas.toDataURL).toHaveBeenCalledWith('image/png')
|
|
169
|
+
})
|
|
170
|
+
|
|
171
|
+
it('throws when canvas context is null', async () => {
|
|
172
|
+
mockCanvas.getContext.mockReturnValueOnce(null)
|
|
173
|
+
|
|
174
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
175
|
+
canvasDimensions.value = { width: 100, height: 100 }
|
|
176
|
+
|
|
177
|
+
await expect(drawBorder('https://example.com/base.png')).rejects.toThrow(
|
|
178
|
+
'Could not get canvas context',
|
|
179
|
+
)
|
|
180
|
+
})
|
|
181
|
+
|
|
182
|
+
it('rejects when image fails to load', async () => {
|
|
183
|
+
const { canvasDimensions, drawBorder } = useCameraBorder()
|
|
184
|
+
canvasDimensions.value = { width: 100, height: 100 }
|
|
185
|
+
|
|
186
|
+
const promise = drawBorder('https://example.com/bad.png')
|
|
187
|
+
imageInstances[0].onerror!(new Error('Load failed'))
|
|
188
|
+
|
|
189
|
+
await expect(promise).rejects.toThrow('Load failed')
|
|
190
|
+
})
|
|
191
|
+
})
|
|
192
|
+
})
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Draws a selected camera-overlay border onto a captured image and emits
|
|
3
|
+
* the composited result as a data URL. Used by the portal's
|
|
4
|
+
* photo-capture flow when the active experience has a branded border.
|
|
5
|
+
*/
|
|
6
|
+
import { ref, type Ref } from 'vue'
|
|
7
|
+
|
|
8
|
+
export interface CameraBorder {
|
|
9
|
+
src: string
|
|
10
|
+
label?: string
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface CanvasDimensions {
|
|
14
|
+
width: number
|
|
15
|
+
height: number
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface UseCameraBorderReturn {
|
|
19
|
+
selectedBorder: Ref<CameraBorder | null>
|
|
20
|
+
canvasDimensions: Ref<CanvasDimensions>
|
|
21
|
+
drawBorder: (imageSrc: string) => Promise<string>
|
|
22
|
+
reset: () => void
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const decodeImage = (src: string): Promise<HTMLImageElement> => {
|
|
26
|
+
const img = new Image()
|
|
27
|
+
img.crossOrigin = 'Anonymous'
|
|
28
|
+
img.src = src
|
|
29
|
+
return new Promise((resolve, reject) => {
|
|
30
|
+
img.onload = () => resolve(img)
|
|
31
|
+
img.onerror = reject
|
|
32
|
+
})
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export function useCameraBorder(): UseCameraBorderReturn {
|
|
36
|
+
const selectedBorder = ref<CameraBorder | null>(null)
|
|
37
|
+
const canvasDimensions = ref<CanvasDimensions>({ width: 0, height: 0 })
|
|
38
|
+
|
|
39
|
+
const reset = () => {
|
|
40
|
+
selectedBorder.value = null
|
|
41
|
+
canvasDimensions.value = { width: 0, height: 0 }
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const drawBorder = async (imageSrc: string): Promise<string> => {
|
|
45
|
+
const canvas = document.createElement('canvas')
|
|
46
|
+
canvas.width = canvasDimensions.value.width
|
|
47
|
+
canvas.height = canvasDimensions.value.height
|
|
48
|
+
|
|
49
|
+
const context = canvas.getContext('2d')
|
|
50
|
+
if (!context) throw new Error('Could not get canvas context')
|
|
51
|
+
|
|
52
|
+
const baseImage = await decodeImage(imageSrc)
|
|
53
|
+
context.drawImage(baseImage, 0, 0, canvas.width, canvas.height)
|
|
54
|
+
|
|
55
|
+
if (selectedBorder.value) {
|
|
56
|
+
const borderImage = await decodeImage(selectedBorder.value.src)
|
|
57
|
+
context.drawImage(borderImage, 0, 0, canvas.width, canvas.height)
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return canvas.toDataURL('image/png')
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return {
|
|
64
|
+
selectedBorder,
|
|
65
|
+
canvasDimensions,
|
|
66
|
+
drawBorder,
|
|
67
|
+
reset,
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/vue3'
|
|
2
|
+
import UseChatMediaDemo from './__demo__/UseChatMediaDemo.vue'
|
|
3
|
+
|
|
4
|
+
const meta = {
|
|
5
|
+
title: 'Composables/useChatMedia',
|
|
6
|
+
component: UseChatMediaDemo,
|
|
7
|
+
tags: ['autodocs', 'category:composable', 'pattern:webrtc', 'pattern:multi-participant'],
|
|
8
|
+
parameters: {
|
|
9
|
+
layout: 'centered',
|
|
10
|
+
docs: {
|
|
11
|
+
description: {
|
|
12
|
+
component: `
|
|
13
|
+
\`useChatMedia({ handlers })\` is a **transport-agnostic** local media manager
|
|
14
|
+
plus a registry of remote participant streams. It handles \`getUserMedia\` for
|
|
15
|
+
audio and video, \`getDisplayMedia\` for screen sharing, track lifecycle (start
|
|
16
|
+
/ stop / mute / video-off), and tracks remote participants in a
|
|
17
|
+
\`Map<participantId, MediaStream>\`.
|
|
18
|
+
|
|
19
|
+
It does **not** know about Mediasoup, peer connections, or signaling — those
|
|
20
|
+
plug in via the optional \`handlers\` object. When a local track starts,
|
|
21
|
+
\`onTrackStarted(track, kind)\` fires; pipe the track into your producer
|
|
22
|
+
there. When a remote track arrives, call \`addParticipantTrack(participantId,
|
|
23
|
+
track)\` and the registry updates.
|
|
24
|
+
|
|
25
|
+
The composable cleans up on unmount automatically. Stop everything early with
|
|
26
|
+
\`cleanup()\`.
|
|
27
|
+
`,
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
usage: {
|
|
31
|
+
whenToUse: [
|
|
32
|
+
'Multi-participant audio/video chat with WebRTC',
|
|
33
|
+
'You want one place for camera/mic/screen lifecycle',
|
|
34
|
+
'You need a participant-stream registry that updates reactively',
|
|
35
|
+
'You want transport-agnostic media handling (Mediasoup, peer-to-peer, …)',
|
|
36
|
+
],
|
|
37
|
+
whenNotToUse: [
|
|
38
|
+
'Single-user camera capture for photo/video — use useMedia instead',
|
|
39
|
+
'Just an audio analyser for visualization — use AudioVisualizer + useMedia',
|
|
40
|
+
],
|
|
41
|
+
related: ['useMedia', 'useStreamingAudio', 'VideoGrid', 'VideoTile', 'LocalPreview', 'MediaControlBar'],
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
} satisfies Meta<typeof UseChatMediaDemo>
|
|
45
|
+
|
|
46
|
+
export default meta
|
|
47
|
+
type Story = StoryObj<typeof meta>
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Click the buttons to exercise each part of the API. The "handler log" shows
|
|
51
|
+
* which transport hooks fired — wire those to your producer creation /
|
|
52
|
+
* close / pause / resume calls.
|
|
53
|
+
*
|
|
54
|
+
* Permissions: the demo asks for camera/mic/screen the moment you tap a Start
|
|
55
|
+
* button. Use a browser session you can grant temporary permissions to.
|
|
56
|
+
*/
|
|
57
|
+
export const InteractiveSandbox: Story = {}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from 'vitest'
|
|
2
|
+
import { useChatMedia } from './useChatMedia'
|
|
3
|
+
|
|
4
|
+
class MockTrack {
|
|
5
|
+
enabled = true
|
|
6
|
+
kind: string
|
|
7
|
+
onended: (() => void) | null = null
|
|
8
|
+
constructor(kind: string) {
|
|
9
|
+
this.kind = kind
|
|
10
|
+
}
|
|
11
|
+
stop = vi.fn()
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const makeStream = (kinds: string[]): MediaStream => {
|
|
15
|
+
const tracks = kinds.map((k) => new MockTrack(k))
|
|
16
|
+
return {
|
|
17
|
+
getTracks: () => tracks,
|
|
18
|
+
getAudioTracks: () => tracks.filter((t) => t.kind === 'audio'),
|
|
19
|
+
getVideoTracks: () => tracks.filter((t) => t.kind === 'video'),
|
|
20
|
+
addTrack: vi.fn(),
|
|
21
|
+
} as unknown as MediaStream
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
beforeEach(() => {
|
|
25
|
+
const audioStream = makeStream(['audio'])
|
|
26
|
+
const videoStream = makeStream(['video'])
|
|
27
|
+
const screenStream = makeStream(['video'])
|
|
28
|
+
;(navigator as any).mediaDevices = {
|
|
29
|
+
getUserMedia: vi.fn(async (constraints: MediaStreamConstraints) =>
|
|
30
|
+
constraints.video ? videoStream : audioStream,
|
|
31
|
+
),
|
|
32
|
+
getDisplayMedia: vi.fn(async () => screenStream),
|
|
33
|
+
}
|
|
34
|
+
// jsdom doesn't ship MediaStream; provide a minimal shim for addParticipantTrack
|
|
35
|
+
if (typeof (globalThis as any).MediaStream === 'undefined') {
|
|
36
|
+
;(globalThis as any).MediaStream = class {
|
|
37
|
+
private tracks: MediaStreamTrack[] = []
|
|
38
|
+
getTracks() {
|
|
39
|
+
return this.tracks
|
|
40
|
+
}
|
|
41
|
+
addTrack(t: MediaStreamTrack) {
|
|
42
|
+
this.tracks.push(t)
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
describe('useChatMedia', () => {
|
|
49
|
+
it('startAudioCapture sets localAudioStream and fires onTrackStarted', async () => {
|
|
50
|
+
const onTrackStarted = vi.fn()
|
|
51
|
+
const media = useChatMedia({ handlers: { onTrackStarted } })
|
|
52
|
+
await media.startAudioCapture()
|
|
53
|
+
expect(media.localAudioStream.value).toBeTruthy()
|
|
54
|
+
expect(media.hasAudio.value).toBe(true)
|
|
55
|
+
expect(onTrackStarted).toHaveBeenCalledWith(expect.any(Object), 'audio')
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
it('toggleMute toggles the audio track and fires the right handlers', async () => {
|
|
59
|
+
const onAudioPaused = vi.fn()
|
|
60
|
+
const onAudioResumed = vi.fn()
|
|
61
|
+
const media = useChatMedia({ handlers: { onAudioPaused, onAudioResumed } })
|
|
62
|
+
await media.startAudioCapture()
|
|
63
|
+
await media.toggleMute()
|
|
64
|
+
expect(media.isMuted.value).toBe(true)
|
|
65
|
+
expect(onAudioPaused).toHaveBeenCalled()
|
|
66
|
+
await media.toggleMute()
|
|
67
|
+
expect(media.isMuted.value).toBe(false)
|
|
68
|
+
expect(onAudioResumed).toHaveBeenCalled()
|
|
69
|
+
})
|
|
70
|
+
|
|
71
|
+
it('startVideoCapture sets the stream and clears isVideoOff', async () => {
|
|
72
|
+
const media = useChatMedia()
|
|
73
|
+
await media.startVideoCapture()
|
|
74
|
+
expect(media.localVideoStream.value).toBeTruthy()
|
|
75
|
+
expect(media.isVideoOff.value).toBe(false)
|
|
76
|
+
expect(media.hasVideo.value).toBe(true)
|
|
77
|
+
})
|
|
78
|
+
|
|
79
|
+
it('toggleVideo starts capture when off and no stream exists', async () => {
|
|
80
|
+
const media = useChatMedia()
|
|
81
|
+
await media.toggleVideo()
|
|
82
|
+
expect(media.isVideoOff.value).toBe(false)
|
|
83
|
+
expect(media.localVideoStream.value).toBeTruthy()
|
|
84
|
+
})
|
|
85
|
+
|
|
86
|
+
it('toggleVideo disables tracks when on', async () => {
|
|
87
|
+
const onVideoPaused = vi.fn()
|
|
88
|
+
const media = useChatMedia({ handlers: { onVideoPaused } })
|
|
89
|
+
await media.startVideoCapture()
|
|
90
|
+
await media.toggleVideo()
|
|
91
|
+
expect(media.isVideoOff.value).toBe(true)
|
|
92
|
+
expect(onVideoPaused).toHaveBeenCalled()
|
|
93
|
+
})
|
|
94
|
+
|
|
95
|
+
it('startScreenShare sets the screen stream', async () => {
|
|
96
|
+
const media = useChatMedia()
|
|
97
|
+
await media.startScreenShare()
|
|
98
|
+
expect(media.isScreenSharing.value).toBe(true)
|
|
99
|
+
expect(media.localScreenStream.value).toBeTruthy()
|
|
100
|
+
})
|
|
101
|
+
|
|
102
|
+
it('participant registry add/get/remove', () => {
|
|
103
|
+
const media = useChatMedia()
|
|
104
|
+
const track = new MockTrack('audio') as unknown as MediaStreamTrack
|
|
105
|
+
media.addParticipantTrack('p1', track)
|
|
106
|
+
expect(media.getParticipantStream('p1')).toBeTruthy()
|
|
107
|
+
media.removeParticipant('p1')
|
|
108
|
+
expect(media.getParticipantStream('p1')).toBeUndefined()
|
|
109
|
+
})
|
|
110
|
+
|
|
111
|
+
it('cleanup stops all tracks and clears state', async () => {
|
|
112
|
+
const media = useChatMedia()
|
|
113
|
+
await media.startAudioCapture()
|
|
114
|
+
await media.startVideoCapture()
|
|
115
|
+
media.cleanup()
|
|
116
|
+
expect(media.localAudioStream.value).toBeNull()
|
|
117
|
+
expect(media.localVideoStream.value).toBeNull()
|
|
118
|
+
expect(media.isVideoOff.value).toBe(true)
|
|
119
|
+
})
|
|
120
|
+
})
|