@douglasneuroinformatics/libui 2.0.2 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Accordion/Accordion.d.ts +7 -0
- package/dist/components/Accordion/Accordion.d.ts.map +1 -0
- package/dist/components/Accordion/Accordion.js +9 -0
- package/dist/components/Accordion/AccordionContent.d.ts +4 -0
- package/dist/components/Accordion/AccordionContent.d.ts.map +1 -0
- package/dist/components/Accordion/AccordionContent.js +7 -0
- package/dist/components/Accordion/AccordionItem.d.ts +4 -0
- package/dist/components/Accordion/AccordionItem.d.ts.map +1 -0
- package/dist/components/Accordion/AccordionItem.js +6 -0
- package/dist/components/Accordion/AccordionRoot.d.ts +4 -0
- package/dist/components/Accordion/AccordionRoot.d.ts.map +1 -0
- package/dist/components/Accordion/AccordionRoot.js +5 -0
- package/dist/components/Accordion/AccordionTrigger.d.ts +4 -0
- package/dist/components/Accordion/AccordionTrigger.d.ts.map +1 -0
- package/dist/components/Accordion/AccordionTrigger.js +10 -0
- package/dist/components/AlertDialog/AlertDialog.d.ts +13 -0
- package/dist/components/AlertDialog/AlertDialog.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialog.js +20 -0
- package/dist/components/AlertDialog/AlertDialogAction.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogAction.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogAction.js +7 -0
- package/dist/components/AlertDialog/AlertDialogCancel.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogCancel.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogCancel.js +7 -0
- package/dist/components/AlertDialog/AlertDialogContent.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogContent.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogContent.js +9 -0
- package/dist/components/AlertDialog/AlertDialogDescription.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogDescription.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogDescription.js +6 -0
- package/dist/components/AlertDialog/AlertDialogFooter.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogFooter.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogFooter.js +3 -0
- package/dist/components/AlertDialog/AlertDialogHeader.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogHeader.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogHeader.js +3 -0
- package/dist/components/AlertDialog/AlertDialogOverlay.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogOverlay.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogOverlay.js +6 -0
- package/dist/components/AlertDialog/AlertDialogTitle.d.ts +3 -0
- package/dist/components/AlertDialog/AlertDialogTitle.d.ts.map +1 -0
- package/dist/components/AlertDialog/AlertDialogTitle.js +6 -0
- package/dist/components/ArrowToggle/ArrowToggle.d.ts +287 -0
- package/dist/components/ArrowToggle/ArrowToggle.d.ts.map +1 -0
- package/dist/components/ArrowToggle/ArrowToggle.js +22 -0
- package/dist/components/Avatar/Avatar.d.ts +6 -0
- package/dist/components/Avatar/Avatar.d.ts.map +1 -0
- package/dist/components/Avatar/Avatar.js +7 -0
- package/dist/components/Avatar/AvatarFallback.d.ts +4 -0
- package/dist/components/Avatar/AvatarFallback.d.ts.map +1 -0
- package/dist/components/Avatar/AvatarFallback.js +6 -0
- package/dist/components/Avatar/AvatarImage.d.ts +4 -0
- package/dist/components/Avatar/AvatarImage.d.ts.map +1 -0
- package/dist/components/Avatar/AvatarImage.js +6 -0
- package/dist/components/Avatar/AvatarRoot.d.ts +4 -0
- package/dist/components/Avatar/AvatarRoot.d.ts.map +1 -0
- package/dist/components/Avatar/AvatarRoot.js +6 -0
- package/dist/components/Badge/Badge.d.ts +9 -0
- package/dist/components/Badge/Badge.d.ts.map +1 -0
- package/dist/components/Badge/Badge.js +20 -0
- package/dist/components/Breadcrumb/Breadcrumb.d.ts +14 -0
- package/dist/components/Breadcrumb/Breadcrumb.d.ts.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.js +15 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.d.ts +3 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.js +5 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.d.ts +3 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.js +5 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.d.ts +5 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.js +7 -0
- package/dist/components/Breadcrumb/BreadcrumbList.d.ts +3 -0
- package/dist/components/Breadcrumb/BreadcrumbList.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbList.js +5 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.d.ts +3 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.js +5 -0
- package/dist/components/Breadcrumb/BreadcrumbRoot.d.ts +5 -0
- package/dist/components/Breadcrumb/BreadcrumbRoot.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbRoot.js +4 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.d.ts +3 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.d.ts.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.js +4 -0
- package/dist/components/Button/Button.d.ts +299 -0
- package/dist/components/Button/Button.d.ts.map +1 -0
- package/dist/components/Button/Button.js +37 -0
- package/dist/components/Card/Card.d.ts +9 -0
- package/dist/components/Card/Card.d.ts.map +1 -0
- package/dist/components/Card/Card.js +14 -0
- package/dist/components/Checkbox/Checkbox.d.ts +4 -0
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
- package/dist/components/Checkbox/Checkbox.js +9 -0
- package/dist/components/Collapsible/Collapsible.d.ts +6 -0
- package/dist/components/Collapsible/Collapsible.d.ts.map +1 -0
- package/dist/components/Collapsible/Collapsible.js +6 -0
- package/dist/components/Collapsible/CollapsibleRoot.d.ts +3 -0
- package/dist/components/Collapsible/CollapsibleRoot.d.ts.map +1 -0
- package/dist/components/Collapsible/CollapsibleRoot.js +5 -0
- package/dist/components/Command/Command.d.ts +336 -0
- package/dist/components/Command/Command.d.ts.map +1 -0
- package/dist/components/Command/Command.js +22 -0
- package/dist/components/Command/CommandEmpty.d.ts +9 -0
- package/dist/components/Command/CommandEmpty.d.ts.map +1 -0
- package/dist/components/Command/CommandEmpty.js +5 -0
- package/dist/components/Command/CommandGroup.d.ts +13 -0
- package/dist/components/Command/CommandGroup.d.ts.map +1 -0
- package/dist/components/Command/CommandGroup.js +6 -0
- package/dist/components/Command/CommandInput.d.ts +10 -0
- package/dist/components/Command/CommandInput.d.ts.map +1 -0
- package/dist/components/Command/CommandInput.js +11 -0
- package/dist/components/Command/CommandItem.d.ts +15 -0
- package/dist/components/Command/CommandItem.d.ts.map +1 -0
- package/dist/components/Command/CommandItem.js +6 -0
- package/dist/components/Command/CommandList.d.ts +11 -0
- package/dist/components/Command/CommandList.d.ts.map +1 -0
- package/dist/components/Command/CommandList.js +6 -0
- package/dist/components/Command/CommandSeparator.d.ts +9 -0
- package/dist/components/Command/CommandSeparator.d.ts.map +1 -0
- package/dist/components/Command/CommandSeparator.js +6 -0
- package/dist/components/Command/CommandShortcut.d.ts +3 -0
- package/dist/components/Command/CommandShortcut.d.ts.map +1 -0
- package/dist/components/Command/CommandShortcut.js +5 -0
- package/dist/components/ContextMenu/ContextMenu.d.ts +24 -0
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.js +26 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.d.ts +4 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.js +11 -0
- package/dist/components/ContextMenu/ContextMenuContent.d.ts +4 -0
- package/dist/components/ContextMenu/ContextMenuContent.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuContent.js +7 -0
- package/dist/components/ContextMenu/ContextMenuItem.d.ts +6 -0
- package/dist/components/ContextMenu/ContextMenuItem.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuItem.js +6 -0
- package/dist/components/ContextMenu/ContextMenuLabel.d.ts +6 -0
- package/dist/components/ContextMenu/ContextMenuLabel.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuLabel.js +6 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.d.ts +4 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.js +11 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.d.ts +4 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.js +6 -0
- package/dist/components/ContextMenu/ContextMenuShortcut.d.ts +3 -0
- package/dist/components/ContextMenu/ContextMenuShortcut.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuShortcut.js +5 -0
- package/dist/components/ContextMenu/ContextMenuSubContent.d.ts +4 -0
- package/dist/components/ContextMenu/ContextMenuSubContent.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuSubContent.js +6 -0
- package/dist/components/ContextMenu/ContextMenuSubTrigger.d.ts +6 -0
- package/dist/components/ContextMenu/ContextMenuSubTrigger.d.ts.map +1 -0
- package/dist/components/ContextMenu/ContextMenuSubTrigger.js +9 -0
- package/dist/components/DatePicker/Calendar.d.ts +9 -0
- package/dist/components/DatePicker/Calendar.d.ts.map +1 -0
- package/dist/components/DatePicker/Calendar.js +28 -0
- package/dist/components/DatePicker/DatePicker.d.ts +8 -0
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -0
- package/dist/components/DatePicker/DatePicker.js +79 -0
- package/dist/components/DatePicker/YearSelector.d.ts +7 -0
- package/dist/components/DatePicker/YearSelector.d.ts.map +1 -0
- package/dist/components/DatePicker/YearSelector.js +20 -0
- package/dist/components/Dialog/Dialog.d.ts +10 -0
- package/dist/components/Dialog/Dialog.d.ts.map +1 -0
- package/dist/components/Dialog/Dialog.js +14 -0
- package/dist/components/Dialog/DialogContent.d.ts +3 -0
- package/dist/components/Dialog/DialogContent.d.ts.map +1 -0
- package/dist/components/Dialog/DialogContent.js +13 -0
- package/dist/components/Dialog/DialogDescription.d.ts +3 -0
- package/dist/components/Dialog/DialogDescription.d.ts.map +1 -0
- package/dist/components/Dialog/DialogDescription.js +6 -0
- package/dist/components/Dialog/DialogFooter.d.ts +3 -0
- package/dist/components/Dialog/DialogFooter.d.ts.map +1 -0
- package/dist/components/Dialog/DialogFooter.js +3 -0
- package/dist/components/Dialog/DialogHeader.d.ts +3 -0
- package/dist/components/Dialog/DialogHeader.d.ts.map +1 -0
- package/dist/components/Dialog/DialogHeader.js +3 -0
- package/dist/components/Dialog/DialogOverlay.d.ts +3 -0
- package/dist/components/Dialog/DialogOverlay.d.ts.map +1 -0
- package/dist/components/Dialog/DialogOverlay.js +6 -0
- package/dist/components/Dialog/DialogTitle.d.ts +3 -0
- package/dist/components/Dialog/DialogTitle.d.ts.map +1 -0
- package/dist/components/Dialog/DialogTitle.js +6 -0
- package/dist/components/Drawer/Drawer.d.ts +14 -0
- package/dist/components/Drawer/Drawer.d.ts.map +1 -0
- package/dist/components/Drawer/Drawer.js +17 -0
- package/dist/components/Drawer/DrawerContent.d.ts +5 -0
- package/dist/components/Drawer/DrawerContent.d.ts.map +1 -0
- package/dist/components/Drawer/DrawerContent.js +10 -0
- package/dist/components/Drawer/DrawerDescription.d.ts +3 -0
- package/dist/components/Drawer/DrawerDescription.d.ts.map +1 -0
- package/dist/components/Drawer/DrawerDescription.js +6 -0
- package/dist/components/Drawer/DrawerFooter.d.ts +3 -0
- package/dist/components/Drawer/DrawerFooter.d.ts.map +1 -0
- package/dist/components/Drawer/DrawerFooter.js +3 -0
- package/dist/components/Drawer/DrawerHeader.d.ts +3 -0
- package/dist/components/Drawer/DrawerHeader.d.ts.map +1 -0
- package/dist/components/Drawer/DrawerHeader.js +3 -0
- package/dist/components/Drawer/DrawerTitle.d.ts +3 -0
- package/dist/components/Drawer/DrawerTitle.d.ts.map +1 -0
- package/dist/components/Drawer/DrawerTitle.js +6 -0
- package/dist/components/DropdownButton/DropdownButton.d.ts +3 -0
- package/dist/components/DropdownButton/DropdownButton.d.ts.map +1 -0
- package/dist/components/DropdownButton/DropdownButton.js +8 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts +27 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.js +26 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.d.ts +4 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.js +11 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.d.ts +9 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.js +7 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts +6 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.js +6 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.d.ts +6 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.js +6 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.d.ts +4 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.js +11 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.d.ts +4 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.js +6 -0
- package/dist/components/DropdownMenu/DropdownMenuShortcut.d.ts +3 -0
- package/dist/components/DropdownMenu/DropdownMenuShortcut.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuShortcut.js +5 -0
- package/dist/components/DropdownMenu/DropdownMenuSubContent.d.ts +4 -0
- package/dist/components/DropdownMenu/DropdownMenuSubContent.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuSubContent.js +6 -0
- package/dist/components/DropdownMenu/DropdownMenuSubTrigger.d.ts +6 -0
- package/dist/components/DropdownMenu/DropdownMenuSubTrigger.d.ts.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuSubTrigger.js +9 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts +5 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.js +6 -0
- package/dist/components/ErrorFallback/ErrorFallback.d.ts +8 -0
- package/dist/components/ErrorFallback/ErrorFallback.d.ts.map +1 -0
- package/dist/components/ErrorFallback/ErrorFallback.js +16 -0
- package/dist/components/Form/BaseRadioField.d.ts +13 -0
- package/dist/components/Form/BaseRadioField.d.ts.map +1 -0
- package/dist/components/Form/BaseRadioField.js +27 -0
- package/dist/components/Form/BooleanField/BooleanField.d.ts +6 -0
- package/dist/components/Form/BooleanField/BooleanField.d.ts.map +1 -0
- package/dist/components/Form/BooleanField/BooleanField.js +10 -0
- package/dist/components/Form/BooleanField/BooleanFieldCheckbox.d.ts +9 -0
- package/dist/components/Form/BooleanField/BooleanFieldCheckbox.d.ts.map +1 -0
- package/dist/components/Form/BooleanField/BooleanFieldCheckbox.js +15 -0
- package/dist/components/Form/BooleanField/BooleanFieldRadio.d.ts +9 -0
- package/dist/components/Form/BooleanField/BooleanFieldRadio.d.ts.map +1 -0
- package/dist/components/Form/BooleanField/BooleanFieldRadio.js +31 -0
- package/dist/components/Form/DateField/DateField.d.ts +7 -0
- package/dist/components/Form/DateField/DateField.d.ts.map +1 -0
- package/dist/components/Form/DateField/DateField.js +40 -0
- package/dist/components/Form/DynamicField.d.ts +13 -0
- package/dist/components/Form/DynamicField.d.ts.map +1 -0
- package/dist/components/Form/DynamicField.js +21 -0
- package/dist/components/Form/ErrorMessage.d.ts +5 -0
- package/dist/components/Form/ErrorMessage.d.ts.map +1 -0
- package/dist/components/Form/ErrorMessage.js +5 -0
- package/dist/components/Form/FieldGroup/FieldGroup.d.ts +15 -0
- package/dist/components/Form/FieldGroup/FieldGroup.d.ts.map +1 -0
- package/dist/components/Form/FieldGroup/FieldGroup.js +9 -0
- package/dist/components/Form/FieldGroup/FieldGroupDescription.d.ts +5 -0
- package/dist/components/Form/FieldGroup/FieldGroupDescription.d.ts.map +1 -0
- package/dist/components/Form/FieldGroup/FieldGroupDescription.js +8 -0
- package/dist/components/Form/FieldGroup/FieldGroupRoot.d.ts +5 -0
- package/dist/components/Form/FieldGroup/FieldGroupRoot.d.ts.map +1 -0
- package/dist/components/Form/FieldGroup/FieldGroupRoot.js +2 -0
- package/dist/components/Form/FieldGroup/FieldGroupRow.d.ts +5 -0
- package/dist/components/Form/FieldGroup/FieldGroupRow.d.ts.map +1 -0
- package/dist/components/Form/FieldGroup/FieldGroupRow.js +2 -0
- package/dist/components/Form/FieldsComponent.d.ts +13 -0
- package/dist/components/Form/FieldsComponent.d.ts.map +1 -0
- package/dist/components/Form/FieldsComponent.js +13 -0
- package/dist/components/Form/Form.d.ts +18 -0
- package/dist/components/Form/Form.d.ts.map +1 -0
- package/dist/components/Form/Form.js +64 -0
- package/dist/components/Form/NumberField/NumberField.d.ts +7 -0
- package/dist/components/Form/NumberField/NumberField.d.ts.map +1 -0
- package/dist/components/Form/NumberField/NumberField.js +12 -0
- package/dist/components/Form/NumberField/NumberFieldInput.d.ts +9 -0
- package/dist/components/Form/NumberField/NumberFieldInput.d.ts.map +1 -0
- package/dist/components/Form/NumberField/NumberFieldInput.js +21 -0
- package/dist/components/Form/NumberField/NumberFieldRadio.d.ts +9 -0
- package/dist/components/Form/NumberField/NumberFieldRadio.d.ts.map +1 -0
- package/dist/components/Form/NumberField/NumberFieldRadio.js +19 -0
- package/dist/components/Form/NumberField/NumberFieldSlider.d.ts +9 -0
- package/dist/components/Form/NumberField/NumberFieldSlider.d.ts.map +1 -0
- package/dist/components/Form/NumberField/NumberFieldSlider.js +14 -0
- package/dist/components/Form/NumberRecordField.d.ts +7 -0
- package/dist/components/Form/NumberRecordField.d.ts.map +1 -0
- package/dist/components/Form/NumberRecordField.js +17 -0
- package/dist/components/Form/RecordArrayField.d.ts +23 -0
- package/dist/components/Form/RecordArrayField.d.ts.map +1 -0
- package/dist/components/Form/RecordArrayField.js +56 -0
- package/dist/components/Form/ScalarField.d.ts +8 -0
- package/dist/components/Form/ScalarField.d.ts.map +1 -0
- package/dist/components/Form/ScalarField.js +22 -0
- package/dist/components/Form/SetField/SetField.d.ts +7 -0
- package/dist/components/Form/SetField/SetField.d.ts.map +1 -0
- package/dist/components/Form/SetField/SetField.js +27 -0
- package/dist/components/Form/SetField/SetFieldListbox.d.ts +7 -0
- package/dist/components/Form/SetField/SetFieldListbox.d.ts.map +1 -0
- package/dist/components/Form/SetField/SetFieldListbox.js +16 -0
- package/dist/components/Form/SetField/SetFieldSelect.d.ts +7 -0
- package/dist/components/Form/SetField/SetFieldSelect.d.ts.map +1 -0
- package/dist/components/Form/SetField/SetFieldSelect.js +23 -0
- package/dist/components/Form/StaticField.d.ts +14 -0
- package/dist/components/Form/StaticField.d.ts.map +1 -0
- package/dist/components/Form/StaticField.js +17 -0
- package/dist/components/Form/StringField/StringField.d.ts +8 -0
- package/dist/components/Form/StringField/StringField.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringField.js +16 -0
- package/dist/components/Form/StringField/StringFieldInput.d.ts +6 -0
- package/dist/components/Form/StringField/StringFieldInput.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringFieldInput.js +12 -0
- package/dist/components/Form/StringField/StringFieldPassword.d.ts +6 -0
- package/dist/components/Form/StringField/StringFieldPassword.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringFieldPassword.js +19 -0
- package/dist/components/Form/StringField/StringFieldRadio.d.ts +9 -0
- package/dist/components/Form/StringField/StringFieldRadio.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringFieldRadio.js +5 -0
- package/dist/components/Form/StringField/StringFieldSelect.d.ts +9 -0
- package/dist/components/Form/StringField/StringFieldSelect.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringFieldSelect.js +16 -0
- package/dist/components/Form/StringField/StringFieldTextArea.d.ts +6 -0
- package/dist/components/Form/StringField/StringFieldTextArea.d.ts.map +1 -0
- package/dist/components/Form/StringField/StringFieldTextArea.js +12 -0
- package/dist/components/Form/types.d.ts +23 -0
- package/dist/components/Form/types.d.ts.map +1 -0
- package/dist/components/Form/types.js +1 -0
- package/dist/components/Form/utils.d.ts +10 -0
- package/dist/components/Form/utils.d.ts.map +1 -0
- package/dist/components/Form/utils.js +44 -0
- package/dist/components/Heading/Heading.d.ts +8 -0
- package/dist/components/Heading/Heading.d.ts.map +1 -0
- package/dist/components/Heading/Heading.js +18 -0
- package/dist/components/HoverCard/HoverCard.d.ts +6 -0
- package/dist/components/HoverCard/HoverCard.d.ts.map +1 -0
- package/dist/components/HoverCard/HoverCard.js +6 -0
- package/dist/components/HoverCard/HoverCardContent.d.ts +3 -0
- package/dist/components/HoverCard/HoverCardContent.d.ts.map +1 -0
- package/dist/components/HoverCard/HoverCardContent.js +6 -0
- package/dist/components/Input/Input.d.ts +4 -0
- package/dist/components/Input/Input.d.ts.map +1 -0
- package/dist/components/Input/Input.js +5 -0
- package/dist/components/Label/Label.d.ts +6 -0
- package/dist/components/Label/Label.d.ts.map +1 -0
- package/dist/components/Label/Label.js +8 -0
- package/dist/components/LanguageToggle/LanguageToggle.d.ts +12 -0
- package/dist/components/LanguageToggle/LanguageToggle.d.ts.map +1 -0
- package/dist/components/LanguageToggle/LanguageToggle.js +13 -0
- package/dist/components/LegacyDropdown/LegacyDropdown.d.ts +21 -0
- package/dist/components/LegacyDropdown/LegacyDropdown.d.ts.map +1 -0
- package/dist/components/LegacyDropdown/LegacyDropdown.js +17 -0
- package/dist/components/LegacyModal/LegacyModal.d.ts +13 -0
- package/dist/components/LegacyModal/LegacyModal.d.ts.map +1 -0
- package/dist/components/LegacyModal/LegacyModal.js +25 -0
- package/dist/components/LegacySelectDropdown/LegacySelectDropdown.d.ts +21 -0
- package/dist/components/LegacySelectDropdown/LegacySelectDropdown.d.ts.map +1 -0
- package/dist/components/LegacySelectDropdown/LegacySelectDropdown.js +18 -0
- package/dist/components/LegacySlider/LegacySlider.d.ts +11 -0
- package/dist/components/LegacySlider/LegacySlider.d.ts.map +1 -0
- package/dist/components/LegacySlider/LegacySlider.js +24 -0
- package/dist/components/LegacyStepper/LegacyStepper.d.ts +15 -0
- package/dist/components/LegacyStepper/LegacyStepper.d.ts.map +1 -0
- package/dist/components/LegacyStepper/LegacyStepper.js +46 -0
- package/dist/components/LegacyTable/LegacyClientTable.d.ts +5 -0
- package/dist/components/LegacyTable/LegacyClientTable.d.ts.map +1 -0
- package/dist/components/LegacyTable/LegacyClientTable.js +29 -0
- package/dist/components/LegacyTable/LegacyTable.d.ts +29 -0
- package/dist/components/LegacyTable/LegacyTable.d.ts.map +1 -0
- package/dist/components/LegacyTable/LegacyTable.js +54 -0
- package/dist/components/LegacyTable/LegacyTableColumnHeader.d.ts +16 -0
- package/dist/components/LegacyTable/LegacyTableColumnHeader.d.ts.map +1 -0
- package/dist/components/LegacyTable/LegacyTableColumnHeader.js +20 -0
- package/dist/components/LineGraph/LineGraph.d.ts +28 -0
- package/dist/components/LineGraph/LineGraph.d.ts.map +1 -0
- package/dist/components/LineGraph/LineGraph.js +42 -0
- package/dist/components/MenuBar/MenuBar.d.ts +28 -0
- package/dist/components/MenuBar/MenuBar.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBar.js +29 -0
- package/dist/components/MenuBar/MenuBarCheckboxItem.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarCheckboxItem.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarCheckboxItem.js +11 -0
- package/dist/components/MenuBar/MenuBarContent.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarContent.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarContent.js +7 -0
- package/dist/components/MenuBar/MenuBarItem.d.ts +5 -0
- package/dist/components/MenuBar/MenuBarItem.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarItem.js +6 -0
- package/dist/components/MenuBar/MenuBarLabel.d.ts +5 -0
- package/dist/components/MenuBar/MenuBarLabel.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarLabel.js +6 -0
- package/dist/components/MenuBar/MenuBarRadioItem.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarRadioItem.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarRadioItem.js +11 -0
- package/dist/components/MenuBar/MenuBarRoot.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarRoot.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarRoot.js +6 -0
- package/dist/components/MenuBar/MenuBarSeparator.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarSeparator.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarSeparator.js +6 -0
- package/dist/components/MenuBar/MenuBarShortcut.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarShortcut.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarShortcut.js +5 -0
- package/dist/components/MenuBar/MenuBarSubContent.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarSubContent.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarSubContent.js +6 -0
- package/dist/components/MenuBar/MenuBarSubTrigger.d.ts +5 -0
- package/dist/components/MenuBar/MenuBarSubTrigger.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarSubTrigger.js +9 -0
- package/dist/components/MenuBar/MenuBarTrigger.d.ts +3 -0
- package/dist/components/MenuBar/MenuBarTrigger.d.ts.map +1 -0
- package/dist/components/MenuBar/MenuBarTrigger.js +6 -0
- package/dist/components/NotificationHub/NotificationHub.d.ts +8 -0
- package/dist/components/NotificationHub/NotificationHub.d.ts.map +1 -0
- package/dist/components/NotificationHub/NotificationHub.js +28 -0
- package/dist/components/NotificationHub/NotificationIcon.d.ts +7 -0
- package/dist/components/NotificationHub/NotificationIcon.d.ts.map +1 -0
- package/dist/components/NotificationHub/NotificationIcon.js +15 -0
- package/dist/components/Pagination/Pagination.d.ts +845 -0
- package/dist/components/Pagination/Pagination.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.js +15 -0
- package/dist/components/Pagination/PaginationContent.d.ts +3 -0
- package/dist/components/Pagination/PaginationContent.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationContent.js +3 -0
- package/dist/components/Pagination/PaginationEllipsis.d.ts +3 -0
- package/dist/components/Pagination/PaginationEllipsis.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationEllipsis.js +6 -0
- package/dist/components/Pagination/PaginationItem.d.ts +3 -0
- package/dist/components/Pagination/PaginationItem.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationItem.js +2 -0
- package/dist/components/Pagination/PaginationLink.d.ts +8 -0
- package/dist/components/Pagination/PaginationLink.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationLink.js +7 -0
- package/dist/components/Pagination/PaginationNext.d.ts +4 -0
- package/dist/components/Pagination/PaginationNext.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationNext.js +11 -0
- package/dist/components/Pagination/PaginationPrevious.d.ts +4 -0
- package/dist/components/Pagination/PaginationPrevious.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationPrevious.js +11 -0
- package/dist/components/Pagination/PaginationRoot.d.ts +3 -0
- package/dist/components/Pagination/PaginationRoot.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationRoot.js +3 -0
- package/dist/components/Popover/Popover.d.ts +6 -0
- package/dist/components/Popover/Popover.d.ts.map +1 -0
- package/dist/components/Popover/Popover.js +6 -0
- package/dist/components/Popover/PopoverContent.d.ts +19 -0
- package/dist/components/Popover/PopoverContent.d.ts.map +1 -0
- package/dist/components/Popover/PopoverContent.js +7 -0
- package/dist/components/Progress/Progress.d.ts +4 -0
- package/dist/components/Progress/Progress.d.ts.map +1 -0
- package/dist/components/Progress/Progress.js +7 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts +8 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.js +10 -0
- package/dist/components/RadioGroup/RadioGroupItem.d.ts +4 -0
- package/dist/components/RadioGroup/RadioGroupItem.d.ts.map +1 -0
- package/dist/components/RadioGroup/RadioGroupItem.js +9 -0
- package/dist/components/Resizable/Resizable.d.ts +15 -0
- package/dist/components/Resizable/Resizable.d.ts.map +1 -0
- package/dist/components/Resizable/Resizable.js +11 -0
- package/dist/components/Resizable/ResizableHandle.d.ts +7 -0
- package/dist/components/Resizable/ResizableHandle.d.ts.map +1 -0
- package/dist/components/Resizable/ResizableHandle.js +6 -0
- package/dist/components/Resizable/ResizablePanelGroup.d.ts +5 -0
- package/dist/components/Resizable/ResizablePanelGroup.d.ts.map +1 -0
- package/dist/components/Resizable/ResizablePanelGroup.js +4 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts +3 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.js +10 -0
- package/dist/components/ScrollArea/ScrollBar.d.ts +3 -0
- package/dist/components/ScrollArea/ScrollBar.d.ts.map +1 -0
- package/dist/components/ScrollArea/ScrollBar.js +7 -0
- package/dist/components/SearchBar/SearchBar.d.ts +23 -0
- package/dist/components/SearchBar/SearchBar.d.ts.map +1 -0
- package/dist/components/SearchBar/SearchBar.js +13 -0
- package/dist/components/Select/Select.d.ts +14 -0
- package/dist/components/Select/Select.d.ts.map +1 -0
- package/dist/components/Select/Select.js +19 -0
- package/dist/components/Select/SelectContent.d.ts +4 -0
- package/dist/components/Select/SelectContent.d.ts.map +1 -0
- package/dist/components/Select/SelectContent.js +14 -0
- package/dist/components/Select/SelectItem.d.ts +4 -0
- package/dist/components/Select/SelectItem.d.ts.map +1 -0
- package/dist/components/Select/SelectItem.js +11 -0
- package/dist/components/Select/SelectLabel.d.ts +4 -0
- package/dist/components/Select/SelectLabel.d.ts.map +1 -0
- package/dist/components/Select/SelectLabel.js +6 -0
- package/dist/components/Select/SelectScrollDownButton.d.ts +4 -0
- package/dist/components/Select/SelectScrollDownButton.d.ts.map +1 -0
- package/dist/components/Select/SelectScrollDownButton.js +8 -0
- package/dist/components/Select/SelectScrollUpButton.d.ts +4 -0
- package/dist/components/Select/SelectScrollUpButton.d.ts.map +1 -0
- package/dist/components/Select/SelectScrollUpButton.js +8 -0
- package/dist/components/Select/SelectSeparator.d.ts +4 -0
- package/dist/components/Select/SelectSeparator.d.ts.map +1 -0
- package/dist/components/Select/SelectSeparator.js +6 -0
- package/dist/components/Select/SelectTrigger.d.ts +4 -0
- package/dist/components/Select/SelectTrigger.d.ts.map +1 -0
- package/dist/components/Select/SelectTrigger.js +7 -0
- package/dist/components/Separator/Separator.d.ts +4 -0
- package/dist/components/Separator/Separator.d.ts.map +1 -0
- package/dist/components/Separator/Separator.js +6 -0
- package/dist/components/Sheet/Sheet.d.ts +15 -0
- package/dist/components/Sheet/Sheet.d.ts.map +1 -0
- package/dist/components/Sheet/Sheet.js +18 -0
- package/dist/components/Sheet/SheetContent.d.ts +11 -0
- package/dist/components/Sheet/SheetContent.d.ts.map +1 -0
- package/dist/components/Sheet/SheetContent.js +27 -0
- package/dist/components/Sheet/SheetDescription.d.ts +3 -0
- package/dist/components/Sheet/SheetDescription.d.ts.map +1 -0
- package/dist/components/Sheet/SheetDescription.js +6 -0
- package/dist/components/Sheet/SheetFooter.d.ts +3 -0
- package/dist/components/Sheet/SheetFooter.d.ts.map +1 -0
- package/dist/components/Sheet/SheetFooter.js +3 -0
- package/dist/components/Sheet/SheetHeader.d.ts +3 -0
- package/dist/components/Sheet/SheetHeader.d.ts.map +1 -0
- package/dist/components/Sheet/SheetHeader.js +3 -0
- package/dist/components/Sheet/SheetOverlay.d.ts +3 -0
- package/dist/components/Sheet/SheetOverlay.d.ts.map +1 -0
- package/dist/components/Sheet/SheetOverlay.js +6 -0
- package/dist/components/Sheet/SheetTitle.d.ts +3 -0
- package/dist/components/Sheet/SheetTitle.d.ts.map +1 -0
- package/dist/components/Sheet/SheetTitle.js +6 -0
- package/dist/components/Slider/Slider.d.ts +3 -0
- package/dist/components/Slider/Slider.d.ts.map +1 -0
- package/dist/components/Slider/Slider.js +9 -0
- package/dist/components/Spinner/Spinner.d.ts +4 -0
- package/dist/components/Spinner/Spinner.d.ts.map +1 -0
- package/dist/components/Spinner/Spinner.js +13 -0
- package/dist/components/SpinnerIcon/SpinnerIcon.d.ts +3 -0
- package/dist/components/SpinnerIcon/SpinnerIcon.d.ts.map +1 -0
- package/dist/components/SpinnerIcon/SpinnerIcon.js +4 -0
- package/dist/components/Switch/Switch.d.ts +4 -0
- package/dist/components/Switch/Switch.d.ts.map +1 -0
- package/dist/components/Switch/Switch.js +7 -0
- package/dist/components/Table/Table.d.ts +11 -0
- package/dist/components/Table/Table.d.ts.map +1 -0
- package/dist/components/Table/Table.js +17 -0
- package/dist/components/Table/TableBody.d.ts +3 -0
- package/dist/components/Table/TableBody.d.ts.map +1 -0
- package/dist/components/Table/TableBody.js +5 -0
- package/dist/components/Table/TableCaption.d.ts +3 -0
- package/dist/components/Table/TableCaption.d.ts.map +1 -0
- package/dist/components/Table/TableCaption.js +5 -0
- package/dist/components/Table/TableCell.d.ts +3 -0
- package/dist/components/Table/TableCell.d.ts.map +1 -0
- package/dist/components/Table/TableCell.js +5 -0
- package/dist/components/Table/TableFooter.d.ts +3 -0
- package/dist/components/Table/TableFooter.d.ts.map +1 -0
- package/dist/components/Table/TableFooter.js +5 -0
- package/dist/components/Table/TableHead.d.ts +3 -0
- package/dist/components/Table/TableHead.d.ts.map +1 -0
- package/dist/components/Table/TableHead.js +5 -0
- package/dist/components/Table/TableHeader.d.ts +3 -0
- package/dist/components/Table/TableHeader.d.ts.map +1 -0
- package/dist/components/Table/TableHeader.js +5 -0
- package/dist/components/Table/TableRoot.d.ts +3 -0
- package/dist/components/Table/TableRoot.d.ts.map +1 -0
- package/dist/components/Table/TableRoot.js +6 -0
- package/dist/components/Table/TableRow.d.ts +3 -0
- package/dist/components/Table/TableRow.d.ts.map +1 -0
- package/dist/components/Table/TableRow.js +5 -0
- package/dist/components/Tabs/Tabs.d.ts +7 -0
- package/dist/components/Tabs/Tabs.d.ts.map +1 -0
- package/dist/components/Tabs/Tabs.js +9 -0
- package/dist/components/Tabs/TabsContent.d.ts +4 -0
- package/dist/components/Tabs/TabsContent.d.ts.map +1 -0
- package/dist/components/Tabs/TabsContent.js +6 -0
- package/dist/components/Tabs/TabsList.d.ts +4 -0
- package/dist/components/Tabs/TabsList.d.ts.map +1 -0
- package/dist/components/Tabs/TabsList.js +6 -0
- package/dist/components/Tabs/TabsRoot.d.ts +3 -0
- package/dist/components/Tabs/TabsRoot.d.ts.map +1 -0
- package/dist/components/Tabs/TabsRoot.js +5 -0
- package/dist/components/Tabs/TabsTrigger.d.ts +4 -0
- package/dist/components/Tabs/TabsTrigger.d.ts.map +1 -0
- package/dist/components/Tabs/TabsTrigger.js +6 -0
- package/dist/components/TextArea/TextArea.d.ts +4 -0
- package/dist/components/TextArea/TextArea.d.ts.map +1 -0
- package/dist/components/TextArea/TextArea.js +5 -0
- package/dist/components/ThemeToggle/ThemeToggle.d.ts +5 -0
- package/dist/components/ThemeToggle/ThemeToggle.d.ts.map +1 -0
- package/dist/components/ThemeToggle/ThemeToggle.js +16 -0
- package/dist/components/Tooltip/Tooltip.d.ts +6 -0
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -0
- package/dist/components/Tooltip/Tooltip.js +7 -0
- package/dist/components/Tooltip/TooltipContent.d.ts +15 -0
- package/dist/components/Tooltip/TooltipContent.d.ts.map +1 -0
- package/dist/components/Tooltip/TooltipContent.js +6 -0
- package/dist/components/Tooltip/TooltipRoot.d.ts +11 -0
- package/dist/components/Tooltip/TooltipRoot.d.ts.map +1 -0
- package/dist/components/Tooltip/TooltipRoot.js +6 -0
- package/dist/components/Tooltip/TooltipTrigger.d.ts +5 -0
- package/dist/components/Tooltip/TooltipTrigger.d.ts.map +1 -0
- package/dist/components/Tooltip/TooltipTrigger.js +7 -0
- package/dist/components.d.ts +55 -0
- package/dist/components.d.ts.map +1 -0
- package/dist/components.js +54 -0
- package/dist/context/LegacyStepperContext.d.ts +7 -0
- package/dist/context/LegacyStepperContext.d.ts.map +1 -0
- package/dist/context/LegacyStepperContext.js +3 -0
- package/dist/hooks/useDownload.d.ts +13 -0
- package/dist/hooks/useDownload.d.ts.map +1 -0
- package/dist/hooks/useDownload.js +42 -0
- package/dist/hooks/useEventCallback.d.ts +2 -0
- package/dist/hooks/useEventCallback.d.ts.map +1 -0
- package/dist/hooks/useEventCallback.js +11 -0
- package/dist/hooks/useEventListener.d.ts +7 -0
- package/dist/hooks/useEventListener.d.ts.map +1 -0
- package/dist/hooks/useEventListener.js +23 -0
- package/dist/hooks/useInterval.d.ts +2 -0
- package/dist/hooks/useInterval.d.ts.map +1 -0
- package/dist/hooks/useInterval.js +19 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
- package/dist/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
- package/dist/hooks/useIsomorphicLayoutEffect.js +3 -0
- package/dist/hooks/useLegacyStepper.d.ts +7 -0
- package/dist/hooks/useLegacyStepper.d.ts.map +1 -0
- package/dist/hooks/useLegacyStepper.js +6 -0
- package/dist/hooks/useMediaQuery.d.ts +11 -0
- package/dist/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/hooks/useMediaQuery.js +34 -0
- package/dist/hooks/useNotificationsStore.d.ts +14 -0
- package/dist/hooks/useNotificationsStore.d.ts.map +1 -0
- package/dist/hooks/useNotificationsStore.js +14 -0
- package/dist/hooks/useOnClickOutside.d.ts +5 -0
- package/dist/hooks/useOnClickOutside.d.ts.map +1 -0
- package/dist/hooks/useOnClickOutside.js +12 -0
- package/dist/hooks/useSessionStorage.d.ts +38 -0
- package/dist/hooks/useSessionStorage.d.ts.map +1 -0
- package/dist/hooks/useSessionStorage.js +99 -0
- package/dist/hooks/useTheme.d.ts +19 -0
- package/dist/hooks/useTheme.d.ts.map +1 -0
- package/dist/hooks/useTheme.js +60 -0
- package/dist/hooks/useWindowSize.d.ts +6 -0
- package/dist/hooks/useWindowSize.d.ts.map +1 -0
- package/dist/hooks/useWindowSize.js +21 -0
- package/dist/hooks.d.ts +13 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +12 -0
- package/dist/i18n.d.ts +13 -14
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +46 -211
- package/dist/testing/mocks.d.ts +16 -0
- package/dist/testing/mocks.d.ts.map +1 -0
- package/dist/testing/mocks.js +46 -0
- package/dist/testing/setup-tests.d.ts +2 -0
- package/dist/testing/setup-tests.d.ts.map +1 -0
- package/dist/testing/setup-tests.js +8 -0
- package/dist/translations/libui.json +154 -0
- package/dist/utils.d.ts +4 -6
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +8 -9
- package/package.json +13 -10
- package/src/assets/libui-logo.svg +113 -0
- package/src/components/Accordion/Accordion.tsx +10 -0
- package/src/components/Accordion/AccordionContent.tsx +20 -0
- package/src/components/Accordion/AccordionItem.tsx +12 -0
- package/src/components/Accordion/AccordionRoot.tsx +10 -0
- package/src/components/Accordion/AccordionTrigger.tsx +27 -0
- package/src/components/AlertDialog/AlertDialog.tsx +22 -0
- package/src/components/AlertDialog/AlertDialogAction.tsx +13 -0
- package/src/components/AlertDialog/AlertDialogCancel.tsx +15 -0
- package/src/components/AlertDialog/AlertDialogContent.tsx +25 -0
- package/src/components/AlertDialog/AlertDialogDescription.tsx +12 -0
- package/src/components/AlertDialog/AlertDialogFooter.tsx +7 -0
- package/src/components/AlertDialog/AlertDialogHeader.tsx +7 -0
- package/src/components/AlertDialog/AlertDialogOverlay.tsx +21 -0
- package/src/components/AlertDialog/AlertDialogTitle.tsx +12 -0
- package/src/components/ArrowToggle/ArrowToggle.tsx +63 -0
- package/src/components/Avatar/Avatar.tsx +8 -0
- package/src/components/Avatar/AvatarFallback.tsx +18 -0
- package/src/components/Avatar/AvatarImage.tsx +12 -0
- package/src/components/Avatar/AvatarRoot.tsx +19 -0
- package/src/components/Badge/Badge.tsx +30 -0
- package/src/components/Breadcrumb/Breadcrumb.tsx +16 -0
- package/src/components/Breadcrumb/BreadcrumbEllipsis.tsx +16 -0
- package/src/components/Breadcrumb/BreadcrumbItem.tsx +9 -0
- package/src/components/Breadcrumb/BreadcrumbLink.tsx +15 -0
- package/src/components/Breadcrumb/BreadcrumbList.tsx +18 -0
- package/src/components/Breadcrumb/BreadcrumbPage.tsx +18 -0
- package/src/components/Breadcrumb/BreadcrumbRoot.tsx +10 -0
- package/src/components/Breadcrumb/BreadcrumbSeparator.tsx +11 -0
- package/src/components/Button/Button.tsx +61 -0
- package/src/components/Card/Card.tsx +37 -0
- package/src/components/Checkbox/Checkbox.tsx +27 -0
- package/src/components/Collapsible/Collapsible.tsx +8 -0
- package/src/components/Collapsible/CollapsibleRoot.tsx +10 -0
- package/src/components/Command/Command.tsx +41 -0
- package/src/components/Command/CommandEmpty.tsx +10 -0
- package/src/components/Command/CommandGroup.tsx +21 -0
- package/src/components/Command/CommandInput.tsx +26 -0
- package/src/components/Command/CommandItem.tsx +21 -0
- package/src/components/Command/CommandList.tsx +18 -0
- package/src/components/Command/CommandSeparator.tsx +12 -0
- package/src/components/Command/CommandShortcut.tsx +7 -0
- package/src/components/ContextMenu/ContextMenu.tsx +28 -0
- package/src/components/ContextMenu/ContextMenuCheckboxItem.tsx +30 -0
- package/src/components/ContextMenu/ContextMenuContent.tsx +23 -0
- package/src/components/ContextMenu/ContextMenuItem.tsx +24 -0
- package/src/components/ContextMenu/ContextMenuLabel.tsx +20 -0
- package/src/components/ContextMenu/ContextMenuRadioItem.tsx +29 -0
- package/src/components/ContextMenu/ContextMenuSeparator.tsx +12 -0
- package/src/components/ContextMenu/ContextMenuShortcut.tsx +7 -0
- package/src/components/ContextMenu/ContextMenuSubContent.tsx +21 -0
- package/src/components/ContextMenu/ContextMenuSubTrigger.tsx +28 -0
- package/src/components/DatePicker/Calendar.tsx +64 -0
- package/src/components/DatePicker/DatePicker.tsx +156 -0
- package/src/components/DatePicker/YearSelector.tsx +49 -0
- package/src/components/Dialog/Dialog.tsx +16 -0
- package/src/components/Dialog/DialogContent.tsx +31 -0
- package/src/components/Dialog/DialogDescription.tsx +12 -0
- package/src/components/Dialog/DialogFooter.tsx +7 -0
- package/src/components/Dialog/DialogHeader.tsx +7 -0
- package/src/components/Dialog/DialogOverlay.tsx +21 -0
- package/src/components/Dialog/DialogTitle.tsx +12 -0
- package/src/components/Drawer/Drawer.tsx +23 -0
- package/src/components/Drawer/DrawerContent.tsx +27 -0
- package/src/components/Drawer/DrawerDescription.tsx +14 -0
- package/src/components/Drawer/DrawerFooter.tsx +7 -0
- package/src/components/Drawer/DrawerHeader.tsx +7 -0
- package/src/components/Drawer/DrawerTitle.tsx +18 -0
- package/src/components/DropdownButton/DropdownButton.tsx +25 -0
- package/src/components/DropdownMenu/DropdownMenu.tsx +28 -0
- package/src/components/DropdownMenu/DropdownMenuCheckboxItem.tsx +30 -0
- package/src/components/DropdownMenu/DropdownMenuContent.tsx +29 -0
- package/src/components/DropdownMenu/DropdownMenuItem.tsx +24 -0
- package/src/components/DropdownMenu/DropdownMenuLabel.tsx +20 -0
- package/src/components/DropdownMenu/DropdownMenuRadioItem.tsx +29 -0
- package/src/components/DropdownMenu/DropdownMenuSeparator.tsx +12 -0
- package/src/components/DropdownMenu/DropdownMenuShortcut.tsx +7 -0
- package/src/components/DropdownMenu/DropdownMenuSubContent.tsx +21 -0
- package/src/components/DropdownMenu/DropdownMenuSubTrigger.tsx +28 -0
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +9 -0
- package/src/components/ErrorFallback/ErrorFallback.tsx +34 -0
- package/src/components/Form/BaseRadioField.tsx +68 -0
- package/src/components/Form/BooleanField/BooleanField.tsx +15 -0
- package/src/components/Form/BooleanField/BooleanFieldCheckbox.tsx +35 -0
- package/src/components/Form/BooleanField/BooleanFieldRadio.tsx +59 -0
- package/src/components/Form/DateField/DateField.tsx +68 -0
- package/src/components/Form/DynamicField.tsx +45 -0
- package/src/components/Form/ErrorMessage.tsx +11 -0
- package/src/components/Form/FieldGroup/FieldGroup.tsx +10 -0
- package/src/components/Form/FieldGroup/FieldGroupDescription.tsx +17 -0
- package/src/components/Form/FieldGroup/FieldGroupRoot.tsx +5 -0
- package/src/components/Form/FieldGroup/FieldGroupRow.tsx +5 -0
- package/src/components/Form/FieldsComponent.tsx +27 -0
- package/src/components/Form/Form.tsx +145 -0
- package/src/components/Form/NumberField/NumberField.tsx +17 -0
- package/src/components/Form/NumberField/NumberFieldInput.tsx +44 -0
- package/src/components/Form/NumberField/NumberFieldRadio.tsx +58 -0
- package/src/components/Form/NumberField/NumberFieldSlider.tsx +41 -0
- package/src/components/Form/NumberRecordField.tsx +60 -0
- package/src/components/Form/RecordArrayField.tsx +99 -0
- package/src/components/Form/ScalarField.tsx +39 -0
- package/src/components/Form/SetField/SetField.tsx +37 -0
- package/src/components/Form/SetField/SetFieldListbox.tsx +45 -0
- package/src/components/Form/SetField/SetFieldSelect.tsx +64 -0
- package/src/components/Form/StaticField.tsx +83 -0
- package/src/components/Form/StringField/StringField.tsx +25 -0
- package/src/components/Form/StringField/StringFieldInput.tsx +24 -0
- package/src/components/Form/StringField/StringFieldPassword.tsx +42 -0
- package/src/components/Form/StringField/StringFieldRadio.tsx +16 -0
- package/src/components/Form/StringField/StringFieldSelect.tsx +45 -0
- package/src/components/Form/StringField/StringFieldTextArea.tsx +24 -0
- package/src/components/Form/types.ts +26 -0
- package/src/components/Form/utils.ts +53 -0
- package/src/components/Heading/Heading.tsx +26 -0
- package/src/components/HoverCard/HoverCard.tsx +8 -0
- package/src/components/HoverCard/HoverCardContent.tsx +23 -0
- package/src/components/Input/Input.tsx +21 -0
- package/src/components/Label/Label.tsx +17 -0
- package/src/components/LanguageToggle/LanguageToggle.tsx +41 -0
- package/src/components/LegacyDropdown/LegacyDropdown.tsx +79 -0
- package/src/components/LegacyModal/LegacyModal.tsx +77 -0
- package/src/components/LegacySelectDropdown/LegacySelectDropdown.tsx +87 -0
- package/src/components/LegacySlider/LegacySlider.tsx +67 -0
- package/src/components/LegacyStepper/LegacyStepper.tsx +91 -0
- package/src/components/LegacyTable/LegacyClientTable.tsx +55 -0
- package/src/components/LegacyTable/LegacyTable.tsx +118 -0
- package/src/components/LegacyTable/LegacyTableColumnHeader.tsx +71 -0
- package/src/components/LineGraph/LineGraph.tsx +133 -0
- package/src/components/MenuBar/MenuBar.tsx +31 -0
- package/src/components/MenuBar/MenuBarCheckboxItem.tsx +30 -0
- package/src/components/MenuBar/MenuBarContent.tsx +25 -0
- package/src/components/MenuBar/MenuBarItem.tsx +24 -0
- package/src/components/MenuBar/MenuBarLabel.tsx +14 -0
- package/src/components/MenuBar/MenuBarRadioItem.tsx +29 -0
- package/src/components/MenuBar/MenuBarRoot.tsx +17 -0
- package/src/components/MenuBar/MenuBarSeparator.tsx +12 -0
- package/src/components/MenuBar/MenuBarShortcut.tsx +7 -0
- package/src/components/MenuBar/MenuBarSubContent.tsx +21 -0
- package/src/components/MenuBar/MenuBarSubTrigger.tsx +28 -0
- package/src/components/MenuBar/MenuBarTrigger.tsx +20 -0
- package/src/components/NotificationHub/NotificationHub.tsx +70 -0
- package/src/components/NotificationHub/NotificationIcon.tsx +22 -0
- package/src/components/Pagination/Pagination.tsx +16 -0
- package/src/components/Pagination/PaginationContent.tsx +7 -0
- package/src/components/Pagination/PaginationEllipsis.tsx +12 -0
- package/src/components/Pagination/PaginationItem.tsx +5 -0
- package/src/components/Pagination/PaginationLink.tsx +29 -0
- package/src/components/Pagination/PaginationNext.tsx +17 -0
- package/src/components/Pagination/PaginationPrevious.tsx +17 -0
- package/src/components/Pagination/PaginationRoot.tsx +12 -0
- package/src/components/Popover/Popover.tsx +8 -0
- package/src/components/Popover/PopoverContent.tsx +47 -0
- package/src/components/Progress/Progress.tsx +23 -0
- package/src/components/RadioGroup/RadioGroup.tsx +23 -0
- package/src/components/RadioGroup/RadioGroupItem.tsx +29 -0
- package/src/components/Resizable/Resizable.tsx +22 -0
- package/src/components/Resizable/ResizableHandle.tsx +26 -0
- package/src/components/Resizable/ResizablePanelGroup.tsx +14 -0
- package/src/components/ScrollArea/ScrollArea.tsx +18 -0
- package/src/components/ScrollArea/ScrollBar.tsx +26 -0
- package/src/components/SearchBar/SearchBar.tsx +49 -0
- package/src/components/Select/Select.tsx +21 -0
- package/src/components/Select/SelectContent.tsx +40 -0
- package/src/components/Select/SelectItem.tsx +29 -0
- package/src/components/Select/SelectLabel.tsx +12 -0
- package/src/components/Select/SelectScrollDownButton.tsx +21 -0
- package/src/components/Select/SelectScrollUpButton.tsx +21 -0
- package/src/components/Select/SelectSeparator.tsx +12 -0
- package/src/components/Select/SelectTrigger.tsx +16 -0
- package/src/components/Separator/Separator.tsx +25 -0
- package/src/components/Sheet/Sheet.tsx +20 -0
- package/src/components/Sheet/SheetContent.tsx +46 -0
- package/src/components/Sheet/SheetDescription.tsx +12 -0
- package/src/components/Sheet/SheetFooter.tsx +7 -0
- package/src/components/Sheet/SheetHeader.tsx +7 -0
- package/src/components/Sheet/SheetOverlay.tsx +21 -0
- package/src/components/Sheet/SheetTitle.tsx +12 -0
- package/src/components/Slider/Slider.tsx +22 -0
- package/src/components/Spinner/Spinner.tsx +22 -0
- package/src/components/SpinnerIcon/SpinnerIcon.tsx +21 -0
- package/src/components/Switch/Switch.tsx +27 -0
- package/src/components/Table/Table.tsx +18 -0
- package/src/components/Table/TableBody.tsx +9 -0
- package/src/components/Table/TableCaption.tsx +9 -0
- package/src/components/Table/TableCell.tsx +9 -0
- package/src/components/Table/TableFooter.tsx +15 -0
- package/src/components/Table/TableHead.tsx +18 -0
- package/src/components/Table/TableHeader.tsx +9 -0
- package/src/components/Table/TableRoot.tsx +14 -0
- package/src/components/Table/TableRow.tsx +15 -0
- package/src/components/Tabs/Tabs.tsx +10 -0
- package/src/components/Tabs/TabsContent.tsx +21 -0
- package/src/components/Tabs/TabsList.tsx +21 -0
- package/src/components/Tabs/TabsRoot.tsx +9 -0
- package/src/components/Tabs/TabsTrigger.tsx +21 -0
- package/src/components/TextArea/TextArea.tsx +23 -0
- package/src/components/ThemeToggle/ThemeToggle.tsx +31 -0
- package/src/components/Tooltip/Tooltip.tsx +8 -0
- package/src/components/Tooltip/TooltipContent.tsx +35 -0
- package/src/components/Tooltip/TooltipRoot.tsx +20 -0
- package/src/components/Tooltip/TooltipTrigger.tsx +17 -0
- package/src/components.ts +54 -0
- package/src/context/LegacyStepperContext.tsx +7 -0
- package/src/hooks/useDownload.ts +61 -0
- package/src/hooks/useEventCallback.ts +15 -0
- package/src/hooks/useEventListener.ts +73 -0
- package/src/hooks/useInterval.ts +25 -0
- package/src/hooks/useIsomorphicLayoutEffect.ts +5 -0
- package/src/hooks/useLegacyStepper.ts +8 -0
- package/src/hooks/useMediaQuery.ts +43 -0
- package/src/hooks/useNotificationsStore.ts +29 -0
- package/src/hooks/useOnClickOutside.ts +22 -0
- package/src/hooks/useSessionStorage.ts +155 -0
- package/src/hooks/useTheme.ts +75 -0
- package/src/hooks/useWindowSize.ts +32 -0
- package/src/hooks.ts +12 -0
- package/src/i18n.ts +78 -0
- package/src/styles/globals.css +86 -0
- package/src/testing/mocks.ts +53 -0
- package/src/testing/setup-tests.ts +11 -0
- package/src/translations/libui.json +154 -0
- package/src/typings/i18next.d.ts +21 -0
- package/src/utils.ts +10 -0
- package/dist/chunk-IP3LSCUG.js +0 -129
- package/dist/chunk-IP3LSCUG.js.map +0 -1
- package/dist/chunk-PAAJ5AH3.js +0 -15
- package/dist/chunk-PAAJ5AH3.js.map +0 -1
- package/dist/components/index.d.ts +0 -2043
- package/dist/components/index.js +0 -4141
- package/dist/components/index.js.map +0 -1
- package/dist/hooks/index.d.ts +0 -122
- package/dist/hooks/index.js +0 -219
- package/dist/hooks/index.js.map +0 -1
- package/dist/i18n.js.map +0 -1
- package/dist/utils.js.map +0 -1
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Menu, Transition } from '@headlessui/react';
|
|
4
|
+
import { ChevronDownIcon } from '@heroicons/react/24/solid';
|
|
5
|
+
import { clsx } from 'clsx';
|
|
6
|
+
|
|
7
|
+
import type { LegacyTableColumn, LegacyTableEntry } from './LegacyTable.js';
|
|
8
|
+
|
|
9
|
+
/** @deprecated */
|
|
10
|
+
export type LegacyColumnDropdownOptions<T extends LegacyTableEntry> = {
|
|
11
|
+
icon?: React.ComponentType<Omit<React.SVGProps<SVGSVGElement>, 'ref'>>;
|
|
12
|
+
label: string;
|
|
13
|
+
onSelection: (column: LegacyTableColumn<T>) => void;
|
|
14
|
+
}[];
|
|
15
|
+
|
|
16
|
+
/** @deprecated */
|
|
17
|
+
export type LegacyTableColumnProps<T extends LegacyTableEntry> = {
|
|
18
|
+
column: LegacyTableColumn<T>;
|
|
19
|
+
dropdownOptions?: LegacyColumnDropdownOptions<T>;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/** @deprecated */
|
|
23
|
+
export const LegacyTableColumnHeader = <T extends LegacyTableEntry>({
|
|
24
|
+
column,
|
|
25
|
+
dropdownOptions
|
|
26
|
+
}: LegacyTableColumnProps<T>) => {
|
|
27
|
+
return (
|
|
28
|
+
<Menu as="div" className="relative">
|
|
29
|
+
<Menu.Button
|
|
30
|
+
className={clsx(
|
|
31
|
+
'flex min-w-[10rem] flex-shrink-0 items-center justify-between px-6 py-3 text-sm font-semibold text-slate-800 dark:text-slate-200',
|
|
32
|
+
{ 'cursor-default': !dropdownOptions }
|
|
33
|
+
)}
|
|
34
|
+
>
|
|
35
|
+
{column.label}
|
|
36
|
+
{dropdownOptions && <ChevronDownIcon className="ml-3" height={16} width={16} />}
|
|
37
|
+
</Menu.Button>
|
|
38
|
+
{dropdownOptions && (
|
|
39
|
+
<Transition
|
|
40
|
+
as={React.Fragment}
|
|
41
|
+
enter="transition ease-out duration-100"
|
|
42
|
+
enterFrom="transform opacity-0 scale-95"
|
|
43
|
+
enterTo="transform opacity-100 scale-100"
|
|
44
|
+
leave="transition ease-in duration-75"
|
|
45
|
+
leaveFrom="transform opacity-100 scale-100"
|
|
46
|
+
leaveTo="transform opacity-0 scale-95"
|
|
47
|
+
>
|
|
48
|
+
<Menu.Items className="absolute right-4 z-50 mt-2 w-32 origin-top-right overflow-hidden rounded-md bg-slate-50 shadow-sm ring-1 ring-black ring-opacity-5 focus:outline-none dark:bg-slate-700">
|
|
49
|
+
{dropdownOptions.map((option) => {
|
|
50
|
+
const Icon = option.icon;
|
|
51
|
+
return (
|
|
52
|
+
<Menu.Item
|
|
53
|
+
as="button"
|
|
54
|
+
className="flex w-full items-center text-ellipsis whitespace-nowrap px-3 py-2 hover:backdrop-brightness-95 dark:hover:backdrop-brightness-150"
|
|
55
|
+
key={option.label}
|
|
56
|
+
type="button"
|
|
57
|
+
onClick={() => {
|
|
58
|
+
option.onSelection(column);
|
|
59
|
+
}}
|
|
60
|
+
>
|
|
61
|
+
{Icon && <Icon className="mr-2" height={16} width={16} />}
|
|
62
|
+
{option.label}
|
|
63
|
+
</Menu.Item>
|
|
64
|
+
);
|
|
65
|
+
})}
|
|
66
|
+
</Menu.Items>
|
|
67
|
+
</Transition>
|
|
68
|
+
)}
|
|
69
|
+
</Menu>
|
|
70
|
+
);
|
|
71
|
+
};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { toBasicISOString } from '@douglasneuroinformatics/libjs';
|
|
4
|
+
import { useTranslation } from 'react-i18next';
|
|
5
|
+
import {
|
|
6
|
+
CartesianGrid,
|
|
7
|
+
ErrorBar,
|
|
8
|
+
Label,
|
|
9
|
+
Legend,
|
|
10
|
+
Line,
|
|
11
|
+
LineChart,
|
|
12
|
+
type LineProps,
|
|
13
|
+
ResponsiveContainer,
|
|
14
|
+
Tooltip,
|
|
15
|
+
XAxis,
|
|
16
|
+
YAxis
|
|
17
|
+
} from 'recharts';
|
|
18
|
+
import type { ConditionalKeys } from 'type-fest';
|
|
19
|
+
|
|
20
|
+
import { type Theme, useTheme } from '../../hooks/useTheme.js';
|
|
21
|
+
|
|
22
|
+
/** An array of arbitrary objects with data to graph */
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
24
|
+
type LineGraphData = readonly { [key: string]: any }[];
|
|
25
|
+
|
|
26
|
+
/** Extract string keys from items in `T` where the value of `T[K]` extends `K` */
|
|
27
|
+
type ExtractValidKeys<T extends LineGraphData, K> = Extract<ConditionalKeys<T[number], K>, string>;
|
|
28
|
+
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
30
|
+
type LineGraphLine<T extends LineGraphData = { [key: string]: any }[]> = Pick<
|
|
31
|
+
LineProps,
|
|
32
|
+
'legendType' | 'stroke' | 'strokeDasharray' | 'strokeWidth' | 'type'
|
|
33
|
+
> & {
|
|
34
|
+
err?: ExtractValidKeys<T, number>;
|
|
35
|
+
name: string;
|
|
36
|
+
val: ExtractValidKeys<T, number>;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const strokeColors = {
|
|
40
|
+
dark: '#cbd5e1', // slate-300
|
|
41
|
+
light: '#475569' // slate-600
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const tooltipStyles: { [K in Theme]: React.CSSProperties } = {
|
|
45
|
+
dark: {
|
|
46
|
+
backgroundColor: '#0f172a', // slate-900
|
|
47
|
+
borderColor: strokeColors.light,
|
|
48
|
+
borderRadius: '2px'
|
|
49
|
+
},
|
|
50
|
+
light: {
|
|
51
|
+
backgroundColor: '#f1f5f9', // slate-100
|
|
52
|
+
borderColor: strokeColors.dark,
|
|
53
|
+
borderRadius: '2px'
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
// eslint-disable-next-line react/function-component-definition
|
|
58
|
+
function LineGraphComponent<const T extends LineGraphData>({
|
|
59
|
+
data,
|
|
60
|
+
lines,
|
|
61
|
+
xAxis
|
|
62
|
+
}: {
|
|
63
|
+
/** An array of objects, where each object represents one point on the x-axis */
|
|
64
|
+
data: T;
|
|
65
|
+
lines: LineGraphLine<T>[];
|
|
66
|
+
xAxis?: {
|
|
67
|
+
key?: ExtractValidKeys<T, number>; // unix time
|
|
68
|
+
label?: string;
|
|
69
|
+
};
|
|
70
|
+
}) {
|
|
71
|
+
const { i18n } = useTranslation('libui');
|
|
72
|
+
const [theme] = useTheme();
|
|
73
|
+
|
|
74
|
+
return (
|
|
75
|
+
<ResponsiveContainer height={400} width="100%">
|
|
76
|
+
<LineChart data={[...data]} margin={{ bottom: 5, left: 15, right: 15, top: 5 }}>
|
|
77
|
+
<CartesianGrid stroke="#64748b" strokeDasharray="5 5" />
|
|
78
|
+
<XAxis
|
|
79
|
+
axisLine={{ stroke: '#64748b' }}
|
|
80
|
+
dataKey={xAxis?.key}
|
|
81
|
+
domain={['auto', 'auto']}
|
|
82
|
+
height={50}
|
|
83
|
+
interval="preserveStartEnd"
|
|
84
|
+
padding={{ left: 20, right: 20 }}
|
|
85
|
+
stroke={strokeColors[theme]}
|
|
86
|
+
tickFormatter={(time: number) => toBasicISOString(new Date(time))}
|
|
87
|
+
tickLine={{ stroke: '#64748b' }}
|
|
88
|
+
tickMargin={8}
|
|
89
|
+
tickSize={8}
|
|
90
|
+
type={'number'}
|
|
91
|
+
>
|
|
92
|
+
<Label fill={strokeColors[theme]} offset={0} position="insideBottom" value={xAxis?.label} />
|
|
93
|
+
</XAxis>
|
|
94
|
+
<YAxis
|
|
95
|
+
axisLine={{ stroke: '#64748b' }}
|
|
96
|
+
stroke={strokeColors[theme]}
|
|
97
|
+
tickLine={{ stroke: '#64748b' }}
|
|
98
|
+
tickMargin={5}
|
|
99
|
+
tickSize={8}
|
|
100
|
+
width={40}
|
|
101
|
+
/>
|
|
102
|
+
<Tooltip
|
|
103
|
+
contentStyle={tooltipStyles[theme]}
|
|
104
|
+
labelFormatter={(time: number) => {
|
|
105
|
+
const date = new Date(time);
|
|
106
|
+
return new Intl.DateTimeFormat(i18n.resolvedLanguage, {
|
|
107
|
+
dateStyle: 'full',
|
|
108
|
+
timeStyle: 'medium'
|
|
109
|
+
}).format(date);
|
|
110
|
+
}}
|
|
111
|
+
labelStyle={{ color: strokeColors[theme], fontWeight: 500, whiteSpace: 'pre-wrap' }}
|
|
112
|
+
/>
|
|
113
|
+
{lines.map(({ err, name, stroke, type, val, ...props }) => (
|
|
114
|
+
<Line
|
|
115
|
+
{...props}
|
|
116
|
+
dataKey={val}
|
|
117
|
+
key={val}
|
|
118
|
+
name={name}
|
|
119
|
+
stroke={stroke ?? strokeColors[theme]}
|
|
120
|
+
type={type ?? 'linear'}
|
|
121
|
+
>
|
|
122
|
+
{err && <ErrorBar dataKey={err} stroke="#64748b" />}
|
|
123
|
+
</Line>
|
|
124
|
+
))}
|
|
125
|
+
<Legend wrapperStyle={{ paddingLeft: 40, paddingTop: 10 }} />
|
|
126
|
+
</LineChart>
|
|
127
|
+
</ResponsiveContainer>
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export const LineGraph = React.memo(LineGraphComponent) as typeof LineGraphComponent;
|
|
132
|
+
|
|
133
|
+
export type { LineGraphData, LineGraphLine };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Group, Menu, Portal, RadioGroup, Sub } from '@radix-ui/react-menubar';
|
|
2
|
+
|
|
3
|
+
import { MenuBarCheckboxItem } from './MenuBarCheckboxItem.js';
|
|
4
|
+
import { MenuBarContent } from './MenuBarContent.js';
|
|
5
|
+
import { MenuBarItem } from './MenuBarItem.js';
|
|
6
|
+
import { MenuBarLabel } from './MenuBarLabel.js';
|
|
7
|
+
import { MenuBarRadioItem } from './MenuBarRadioItem.js';
|
|
8
|
+
import { MenuBarRoot } from './MenuBarRoot.js';
|
|
9
|
+
import { MenuBarSeparator } from './MenuBarSeparator.js';
|
|
10
|
+
import { MenuBarShortcut } from './MenuBarShortcut.js';
|
|
11
|
+
import { MenuBarSubContent } from './MenuBarSubContent.js';
|
|
12
|
+
import { MenuBarSubTrigger } from './MenuBarSubTrigger.js';
|
|
13
|
+
import { MenuBarTrigger } from './MenuBarTrigger.js';
|
|
14
|
+
|
|
15
|
+
export const MenuBar = Object.assign(MenuBarRoot, {
|
|
16
|
+
CheckboxItem: MenuBarCheckboxItem,
|
|
17
|
+
Content: MenuBarContent,
|
|
18
|
+
Group: Group,
|
|
19
|
+
Item: MenuBarItem,
|
|
20
|
+
Label: MenuBarLabel,
|
|
21
|
+
Menu: Menu,
|
|
22
|
+
Portal: Portal,
|
|
23
|
+
RadioGroup: RadioGroup,
|
|
24
|
+
RadioItem: MenuBarRadioItem,
|
|
25
|
+
Separator: MenuBarSeparator,
|
|
26
|
+
Shortcut: MenuBarShortcut,
|
|
27
|
+
Sub: Sub,
|
|
28
|
+
SubContent: MenuBarSubContent,
|
|
29
|
+
SubTrigger: MenuBarSubTrigger,
|
|
30
|
+
Trigger: MenuBarTrigger
|
|
31
|
+
});
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { CheckboxItem, ItemIndicator } from '@radix-ui/react-menubar';
|
|
4
|
+
import { CheckIcon } from 'lucide-react';
|
|
5
|
+
|
|
6
|
+
import { cn } from '../../utils.js';
|
|
7
|
+
|
|
8
|
+
export const MenuBarCheckboxItem = React.forwardRef<
|
|
9
|
+
React.ElementRef<typeof CheckboxItem>,
|
|
10
|
+
React.ComponentPropsWithoutRef<typeof CheckboxItem>
|
|
11
|
+
>(function MenuBarCheckboxItem({ checked, children, className, ...props }, ref) {
|
|
12
|
+
return (
|
|
13
|
+
<CheckboxItem
|
|
14
|
+
checked={checked}
|
|
15
|
+
className={cn(
|
|
16
|
+
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
17
|
+
className
|
|
18
|
+
)}
|
|
19
|
+
ref={ref}
|
|
20
|
+
{...props}
|
|
21
|
+
>
|
|
22
|
+
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
23
|
+
<ItemIndicator>
|
|
24
|
+
<CheckIcon className="h-4 w-4" />
|
|
25
|
+
</ItemIndicator>
|
|
26
|
+
</span>
|
|
27
|
+
{children}
|
|
28
|
+
</CheckboxItem>
|
|
29
|
+
);
|
|
30
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Content, Portal } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
export const MenuBarContent = React.forwardRef<
|
|
7
|
+
React.ElementRef<typeof Content>,
|
|
8
|
+
React.ComponentPropsWithoutRef<typeof Content>
|
|
9
|
+
>(function MenuBarContent({ align = 'start', alignOffset = -4, className, sideOffset = 8, ...props }, ref) {
|
|
10
|
+
return (
|
|
11
|
+
<Portal>
|
|
12
|
+
<Content
|
|
13
|
+
align={align}
|
|
14
|
+
alignOffset={alignOffset}
|
|
15
|
+
className={cn(
|
|
16
|
+
'z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',
|
|
17
|
+
className
|
|
18
|
+
)}
|
|
19
|
+
ref={ref}
|
|
20
|
+
sideOffset={sideOffset}
|
|
21
|
+
{...props}
|
|
22
|
+
/>
|
|
23
|
+
</Portal>
|
|
24
|
+
);
|
|
25
|
+
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Item } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const MenuBarItem = React.forwardRef<
|
|
8
|
+
React.ElementRef<typeof Item>,
|
|
9
|
+
React.ComponentPropsWithoutRef<typeof Item> & {
|
|
10
|
+
inset?: boolean;
|
|
11
|
+
}
|
|
12
|
+
>(function MenuBarItem({ className, inset, ...props }, ref) {
|
|
13
|
+
return (
|
|
14
|
+
<Item
|
|
15
|
+
className={cn(
|
|
16
|
+
'relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
17
|
+
inset && 'pl-8',
|
|
18
|
+
className
|
|
19
|
+
)}
|
|
20
|
+
ref={ref}
|
|
21
|
+
{...props}
|
|
22
|
+
/>
|
|
23
|
+
);
|
|
24
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Label } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const MenuBarLabel = React.forwardRef<
|
|
8
|
+
React.ElementRef<typeof Label>,
|
|
9
|
+
React.ComponentPropsWithoutRef<typeof Label> & {
|
|
10
|
+
inset?: boolean;
|
|
11
|
+
}
|
|
12
|
+
>(function MenuBarLabel({ className, inset, ...props }, ref) {
|
|
13
|
+
return <Label className={cn('px-2 py-1.5 text-sm font-semibold', inset && 'pl-8', className)} ref={ref} {...props} />;
|
|
14
|
+
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { ItemIndicator, RadioItem } from '@radix-ui/react-menubar';
|
|
4
|
+
import { CircleIcon } from 'lucide-react';
|
|
5
|
+
|
|
6
|
+
import { cn } from '../../utils.js';
|
|
7
|
+
|
|
8
|
+
export const MenuBarRadioItem = React.forwardRef<
|
|
9
|
+
React.ElementRef<typeof RadioItem>,
|
|
10
|
+
React.ComponentPropsWithoutRef<typeof RadioItem>
|
|
11
|
+
>(function MenuBarRadioItem({ children, className, ...props }, ref) {
|
|
12
|
+
return (
|
|
13
|
+
<RadioItem
|
|
14
|
+
className={cn(
|
|
15
|
+
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
16
|
+
className
|
|
17
|
+
)}
|
|
18
|
+
ref={ref}
|
|
19
|
+
{...props}
|
|
20
|
+
>
|
|
21
|
+
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
22
|
+
<ItemIndicator>
|
|
23
|
+
<CircleIcon className="fill-current" style={{ height: 8, width: 8 }} />
|
|
24
|
+
</ItemIndicator>
|
|
25
|
+
</span>
|
|
26
|
+
{children}
|
|
27
|
+
</RadioItem>
|
|
28
|
+
);
|
|
29
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Root } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const MenuBarRoot = React.forwardRef<React.ElementRef<typeof Root>, React.ComponentPropsWithoutRef<typeof Root>>(
|
|
8
|
+
function MenuBarRoot({ className, ...props }, ref) {
|
|
9
|
+
return (
|
|
10
|
+
<Root
|
|
11
|
+
className={cn('flex h-9 items-center space-x-1 rounded-md border bg-background p-1 shadow-sm', className)}
|
|
12
|
+
ref={ref}
|
|
13
|
+
{...props}
|
|
14
|
+
/>
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Separator } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const MenuBarSeparator = React.forwardRef<
|
|
8
|
+
React.ElementRef<typeof Separator>,
|
|
9
|
+
React.ComponentPropsWithoutRef<typeof Separator>
|
|
10
|
+
>(function MenuBarSeparator({ className, ...props }, ref) {
|
|
11
|
+
return <Separator className={cn('-mx-1 my-1 h-px bg-muted', className)} ref={ref} {...props} />;
|
|
12
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { cn } from '../../utils.js';
|
|
4
|
+
|
|
5
|
+
export const MenuBarShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {
|
|
6
|
+
return <span className={cn('ml-auto text-xs tracking-widest text-muted-foreground', className)} {...props} />;
|
|
7
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { SubContent } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const MenuBarSubContent = React.forwardRef<
|
|
8
|
+
React.ElementRef<typeof SubContent>,
|
|
9
|
+
React.ComponentPropsWithoutRef<typeof SubContent>
|
|
10
|
+
>(function MenuBarSubContent({ className, ...props }, ref) {
|
|
11
|
+
return (
|
|
12
|
+
<SubContent
|
|
13
|
+
className={cn(
|
|
14
|
+
'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',
|
|
15
|
+
className
|
|
16
|
+
)}
|
|
17
|
+
ref={ref}
|
|
18
|
+
{...props}
|
|
19
|
+
/>
|
|
20
|
+
);
|
|
21
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { SubTrigger } from '@radix-ui/react-menubar';
|
|
4
|
+
import { ChevronRightIcon } from 'lucide-react';
|
|
5
|
+
|
|
6
|
+
import { cn } from '../../utils.js';
|
|
7
|
+
|
|
8
|
+
export const MenuBarSubTrigger = React.forwardRef<
|
|
9
|
+
React.ElementRef<typeof SubTrigger>,
|
|
10
|
+
React.ComponentPropsWithoutRef<typeof SubTrigger> & {
|
|
11
|
+
inset?: boolean;
|
|
12
|
+
}
|
|
13
|
+
>(function MenuBarSubTrigger({ children, className, inset, ...props }, ref) {
|
|
14
|
+
return (
|
|
15
|
+
<SubTrigger
|
|
16
|
+
className={cn(
|
|
17
|
+
'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',
|
|
18
|
+
inset && 'pl-8',
|
|
19
|
+
className
|
|
20
|
+
)}
|
|
21
|
+
ref={ref}
|
|
22
|
+
{...props}
|
|
23
|
+
>
|
|
24
|
+
{children}
|
|
25
|
+
<ChevronRightIcon className="ml-auto h-4 w-4" />
|
|
26
|
+
</SubTrigger>
|
|
27
|
+
);
|
|
28
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { Trigger } from '@radix-ui/react-menubar';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
export const MenuBarTrigger = React.forwardRef<
|
|
7
|
+
React.ElementRef<typeof Trigger>,
|
|
8
|
+
React.ComponentPropsWithoutRef<typeof Trigger>
|
|
9
|
+
>(function MenuBarTrigger({ className, ...props }, ref) {
|
|
10
|
+
return (
|
|
11
|
+
<Trigger
|
|
12
|
+
className={cn(
|
|
13
|
+
'flex cursor-default select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',
|
|
14
|
+
className
|
|
15
|
+
)}
|
|
16
|
+
ref={ref}
|
|
17
|
+
{...props}
|
|
18
|
+
/>
|
|
19
|
+
);
|
|
20
|
+
});
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { AnimatePresence, motion } from 'framer-motion';
|
|
4
|
+
import { XIcon } from 'lucide-react';
|
|
5
|
+
import { useTranslation } from 'react-i18next';
|
|
6
|
+
|
|
7
|
+
import { useNotificationsStore } from '../../hooks/useNotificationsStore.js';
|
|
8
|
+
import { Card } from '../Card/Card.js';
|
|
9
|
+
import { NotificationIcon } from './NotificationIcon.js';
|
|
10
|
+
|
|
11
|
+
type NotificationHubProps = {
|
|
12
|
+
/** The number of milliseconds before the notification is automatically cleared */
|
|
13
|
+
timeout?: number;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const NotificationHub = ({ timeout = 5000 }: NotificationHubProps) => {
|
|
17
|
+
const { t } = useTranslation('libui');
|
|
18
|
+
const { dismissNotification, notifications } = useNotificationsStore();
|
|
19
|
+
|
|
20
|
+
return (
|
|
21
|
+
<div className="fixed bottom-0 z-50 w-full print:hidden">
|
|
22
|
+
<AnimatePresence>
|
|
23
|
+
{notifications.map((item) => (
|
|
24
|
+
<motion.div
|
|
25
|
+
animate={{ height: 'auto', opacity: 1 }}
|
|
26
|
+
className="relative max-w-sm"
|
|
27
|
+
exit={{ height: 0, opacity: 0 }}
|
|
28
|
+
initial={{ height: 0, opacity: 0 }}
|
|
29
|
+
key={item.id}
|
|
30
|
+
transition={{ bounce: 0.1, type: 'spring' }}
|
|
31
|
+
>
|
|
32
|
+
<div className="w-full p-2">
|
|
33
|
+
<Card className="w-full rounded-lg p-0">
|
|
34
|
+
<div className="p-4">
|
|
35
|
+
<div className="mb-2 flex items-center">
|
|
36
|
+
<NotificationIcon type={item.type} />
|
|
37
|
+
<h5 className="ml-3 flex-grow font-medium text-slate-900 dark:text-slate-100">
|
|
38
|
+
{item.title ?? t(`notifications.types.${item.type}`)}
|
|
39
|
+
</h5>
|
|
40
|
+
<button
|
|
41
|
+
className="inline-flex rounded-md text-slate-400 hover:text-slate-500 focus:outline-none focus:ring-1 focus:ring-sky-500 dark:focus:ring-sky-600"
|
|
42
|
+
type="button"
|
|
43
|
+
onClick={() => {
|
|
44
|
+
dismissNotification(item.id);
|
|
45
|
+
}}
|
|
46
|
+
>
|
|
47
|
+
<XIcon aria-hidden="true" className="h-5 w-5" />
|
|
48
|
+
</button>
|
|
49
|
+
</div>
|
|
50
|
+
<p className="my-2 text-muted-foreground">{item.message}</p>
|
|
51
|
+
</div>
|
|
52
|
+
<motion.div
|
|
53
|
+
animate={{ width: '100%' }}
|
|
54
|
+
className="h-1 bg-slate-500"
|
|
55
|
+
initial={{ width: '0%' }}
|
|
56
|
+
transition={{ duration: timeout / 1000, ease: 'linear' }}
|
|
57
|
+
onAnimationComplete={() => {
|
|
58
|
+
dismissNotification(item.id);
|
|
59
|
+
}}
|
|
60
|
+
/>
|
|
61
|
+
</Card>
|
|
62
|
+
</div>
|
|
63
|
+
</motion.div>
|
|
64
|
+
))}
|
|
65
|
+
</AnimatePresence>
|
|
66
|
+
</div>
|
|
67
|
+
);
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export { NotificationHub, type NotificationHubProps };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { CheckCircleIcon, ExclamationCircleIcon, InformationCircleIcon, XCircleIcon } from '@heroicons/react/24/solid';
|
|
4
|
+
|
|
5
|
+
import { type NotificationInterface } from '../../hooks/useNotificationsStore.js';
|
|
6
|
+
|
|
7
|
+
export type NotificationIconProps = {
|
|
8
|
+
type: NotificationInterface['type'];
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export const NotificationIcon = ({ type }: NotificationIconProps) => {
|
|
12
|
+
switch (type) {
|
|
13
|
+
case 'info':
|
|
14
|
+
return <InformationCircleIcon aria-hidden="true" className="h-6 w-6 text-blue-500" />;
|
|
15
|
+
case 'success':
|
|
16
|
+
return <CheckCircleIcon aria-hidden="true" className="h-6 w-6 text-green-500" />;
|
|
17
|
+
case 'warning':
|
|
18
|
+
return <ExclamationCircleIcon aria-hidden="true" className="h-6 w-6 text-yellow-500" />;
|
|
19
|
+
case 'error':
|
|
20
|
+
return <XCircleIcon aria-hidden="true" className="h-6 w-6 text-red-500" />;
|
|
21
|
+
}
|
|
22
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PaginationContent } from './PaginationContent.js';
|
|
2
|
+
import { PaginationEllipsis } from './PaginationEllipsis.js';
|
|
3
|
+
import { PaginationItem } from './PaginationItem.js';
|
|
4
|
+
import { PaginationLink } from './PaginationLink.js';
|
|
5
|
+
import { PaginationNext } from './PaginationNext.js';
|
|
6
|
+
import { PaginationPrevious } from './PaginationPrevious.js';
|
|
7
|
+
import { PaginationRoot } from './PaginationRoot.js';
|
|
8
|
+
|
|
9
|
+
export const Pagination = Object.assign(PaginationRoot, {
|
|
10
|
+
Content: PaginationContent,
|
|
11
|
+
Ellipsis: PaginationEllipsis,
|
|
12
|
+
Item: PaginationItem,
|
|
13
|
+
Link: PaginationLink,
|
|
14
|
+
Next: PaginationNext,
|
|
15
|
+
Previous: PaginationPrevious
|
|
16
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { MoreHorizontalIcon } from 'lucide-react';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
|
|
7
|
+
export const PaginationEllipsis = ({ className, ...props }: React.ComponentProps<'span'>) => (
|
|
8
|
+
<span aria-hidden className={cn('flex h-9 w-9 items-center justify-center', className)} {...props}>
|
|
9
|
+
<MoreHorizontalIcon className="h-4 w-4" />
|
|
10
|
+
<span className="sr-only">More pages</span>
|
|
11
|
+
</span>
|
|
12
|
+
);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import type { Simplify } from 'type-fest';
|
|
4
|
+
|
|
5
|
+
import { cn } from '../../utils.js';
|
|
6
|
+
import { type ButtonProps, buttonVariants } from '../Button/Button.js';
|
|
7
|
+
|
|
8
|
+
export type PaginationLinkProps = Simplify<
|
|
9
|
+
Pick<ButtonProps, 'size'> &
|
|
10
|
+
React.ComponentProps<'a'> & {
|
|
11
|
+
isActive?: boolean;
|
|
12
|
+
}
|
|
13
|
+
>;
|
|
14
|
+
|
|
15
|
+
export const PaginationLink = ({ children, className, isActive, size = 'icon', ...props }: PaginationLinkProps) => (
|
|
16
|
+
<a
|
|
17
|
+
aria-current={isActive ? 'page' : undefined}
|
|
18
|
+
className={cn(
|
|
19
|
+
buttonVariants({
|
|
20
|
+
size,
|
|
21
|
+
variant: isActive ? 'outline' : 'ghost'
|
|
22
|
+
}),
|
|
23
|
+
className
|
|
24
|
+
)}
|
|
25
|
+
{...props}
|
|
26
|
+
>
|
|
27
|
+
{children}
|
|
28
|
+
</a>
|
|
29
|
+
);
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
import { ChevronRightIcon } from 'lucide-react';
|
|
4
|
+
import { useTranslation } from 'react-i18next';
|
|
5
|
+
|
|
6
|
+
import { cn } from '../../utils.js';
|
|
7
|
+
import { PaginationLink } from './PaginationLink.js';
|
|
8
|
+
|
|
9
|
+
export const PaginationNext = ({ className, ...props }: React.ComponentProps<typeof PaginationLink>) => {
|
|
10
|
+
const { t } = useTranslation('libui');
|
|
11
|
+
return (
|
|
12
|
+
<PaginationLink aria-label="Go to next page" className={cn('gap-1 pr-2.5', className)} size="md" {...props}>
|
|
13
|
+
<span>{t('pagination.next')}</span>
|
|
14
|
+
<ChevronRightIcon className="h-4 w-4" />
|
|
15
|
+
</PaginationLink>
|
|
16
|
+
);
|
|
17
|
+
};
|