From 092bce0f2442cef9a79125860d6f3f41704cdc8b Mon Sep 17 00:00:00 2001 From: Jesse Wierzbinski Date: Fri, 28 Mar 2025 01:16:24 +0100 Subject: [PATCH] chore: :arrow_up: Upgrade to the latest Shadcn-Vue version --- app.vue | 18 +- bun.lock | 12 +- components.json | 9 +- components/composer/composer.vue | 26 ++- components/composer/dialog.vue | 2 +- components/composer/file-preview.vue | 25 ++- components/errors/AuthRequired.vue | 29 +++ components/errors/NoPosts.vue | 15 ++ components/errors/NotFound.vue | 15 ++ components/errors/ReachedEnd.vue | 15 ++ components/graphics/spinner.vue | 12 + components/navigation/mobile-navbar.vue | 27 ++- components/notes/note.vue | 89 ++++++-- components/notes/thread.vue | 15 +- components/notifications/notification.vue | 45 +++- components/oauth/login.vue | 57 ++++- components/preferences/code.vue | 25 ++- components/preferences/emojis/emoji.vue | 4 +- components/preferences/emojis/uploader.vue | 12 +- components/preferences/profile/editor.vue | 36 +-- .../preferences/profile/image-uploader.vue | 12 +- components/profiles/avatar.vue | 5 +- components/profiles/profile-badges.vue | 47 ++++ components/profiles/profile-header.vue | 26 ++- components/profiles/profile.vue | 69 +++--- components/profiles/small-card.vue | 44 +++- components/profiles/tiny-card.vue | 32 +++ components/sidebars/account-switcher.vue | 128 ----------- .../sidebars/account/account-switcher.vue | 92 ++++++++ components/sidebars/footer/footer-actions.vue | 60 +++++ .../sidebars/instance/instance-header.vue | 49 ++++ components/sidebars/left-sidebar.vue | 210 ++---------------- components/sidebars/navigation/nav-group.vue | 59 +++++ components/sidebars/navigation/nav-items.vue | 25 +++ components/sidebars/right-sidebar.vue | 16 +- components/sidebars/sidebar.ts | 74 ++++++ components/sidebars/sidebar.vue | 25 ++- components/timelines/timeline.vue | 98 ++++---- components/ui/alert-dialog/AlertDialog.vue | 2 +- .../ui/alert-dialog/AlertDialogAction.vue | 4 +- .../ui/alert-dialog/AlertDialogCancel.vue | 4 +- .../ui/alert-dialog/AlertDialogContent.vue | 6 +- .../alert-dialog/AlertDialogDescription.vue | 2 +- .../ui/alert-dialog/AlertDialogTitle.vue | 2 +- .../ui/alert-dialog/AlertDialogTrigger.vue | 2 +- components/ui/alert/index.ts | 2 +- components/ui/avatar/Avatar.vue | 2 +- components/ui/avatar/AvatarFallback.vue | 2 +- components/ui/avatar/AvatarImage.vue | 7 +- components/ui/avatar/index.ts | 2 +- components/ui/button/Button.vue | 3 +- components/ui/button/index.ts | 20 +- components/ui/card/Card.vue | 25 +-- components/ui/card/CardContent.vue | 6 +- components/ui/card/CardFooter.vue | 6 +- components/ui/card/CardHeader.vue | 14 +- components/ui/checkbox/Checkbox.vue | 28 +-- components/ui/collapsible/Collapsible.vue | 4 +- .../ui/collapsible/CollapsibleContent.vue | 2 +- .../ui/collapsible/CollapsibleTrigger.vue | 2 +- components/ui/command/Command.vue | 91 +++++++- components/ui/command/CommandDialog.vue | 6 +- components/ui/command/CommandEmpty.vue | 16 +- components/ui/command/CommandGroup.vue | 54 +++-- components/ui/command/CommandInput.vue | 25 ++- components/ui/command/CommandItem.vue | 89 +++++++- components/ui/command/CommandList.vue | 20 +- components/ui/command/CommandSeparator.vue | 10 +- components/ui/command/index.ts | 20 ++ components/ui/dialog/Dialog.vue | 2 +- components/ui/dialog/DialogClose.vue | 2 +- components/ui/dialog/DialogContent.vue | 26 ++- components/ui/dialog/DialogDescription.vue | 2 +- components/ui/dialog/DialogFooter.vue | 2 +- components/ui/dialog/DialogScrollContent.vue | 6 +- components/ui/dialog/DialogTitle.vue | 2 +- components/ui/dialog/DialogTrigger.vue | 2 +- components/ui/drawer/Drawer.vue | 2 +- components/ui/drawer/DrawerContent.vue | 4 +- components/ui/drawer/DrawerOverlay.vue | 2 +- components/ui/dropdown-menu/DropdownMenu.vue | 2 +- .../DropdownMenuCheckboxItem.vue | 27 ++- .../ui/dropdown-menu/DropdownMenuContent.vue | 2 +- .../ui/dropdown-menu/DropdownMenuGroup.vue | 2 +- .../ui/dropdown-menu/DropdownMenuItem.vue | 17 +- .../ui/dropdown-menu/DropdownMenuLabel.vue | 12 +- .../dropdown-menu/DropdownMenuRadioGroup.vue | 2 +- .../dropdown-menu/DropdownMenuRadioItem.vue | 27 ++- .../dropdown-menu/DropdownMenuSeparator.vue | 2 +- .../ui/dropdown-menu/DropdownMenuSub.vue | 2 +- .../dropdown-menu/DropdownMenuSubContent.vue | 2 +- .../dropdown-menu/DropdownMenuSubTrigger.vue | 4 +- .../ui/dropdown-menu/DropdownMenuTrigger.vue | 2 +- components/ui/dropdown-menu/index.ts | 2 +- components/ui/form/FormControl.vue | 2 +- components/ui/form/FormItem.vue | 21 +- components/ui/form/FormLabel.vue | 4 +- components/ui/form/index.ts | 2 +- components/ui/hover-card/HoverCard.vue | 2 +- components/ui/hover-card/HoverCardContent.vue | 2 +- components/ui/hover-card/HoverCardTrigger.vue | 2 +- components/ui/input/Input.vue | 3 +- components/ui/label/Label.vue | 2 +- components/ui/popover/Popover.vue | 4 +- components/ui/popover/PopoverContent.vue | 2 +- components/ui/popover/PopoverTrigger.vue | 2 +- components/ui/select/Select.vue | 10 +- components/ui/select/SelectContent.vue | 4 +- components/ui/select/SelectGroup.vue | 2 +- components/ui/select/SelectItem.vue | 40 ++-- components/ui/select/SelectItemText.vue | 2 +- components/ui/select/SelectLabel.vue | 2 +- .../ui/select/SelectScrollDownButton.vue | 4 +- components/ui/select/SelectScrollUpButton.vue | 4 +- components/ui/select/SelectSeparator.vue | 2 +- components/ui/select/SelectTrigger.vue | 35 +-- components/ui/select/SelectValue.vue | 2 +- components/ui/separator/Separator.vue | 2 +- components/ui/sheet/Sheet.vue | 2 +- components/ui/sheet/SheetClose.vue | 2 +- components/ui/sheet/SheetContent.vue | 6 +- components/ui/sheet/SheetDescription.vue | 2 +- components/ui/sheet/SheetTitle.vue | 2 +- components/ui/sheet/SheetTrigger.vue | 2 +- components/ui/sidebar/Sidebar.vue | 106 +++++++-- components/ui/sidebar/SidebarGroupAction.vue | 5 +- components/ui/sidebar/SidebarGroupLabel.vue | 4 +- components/ui/sidebar/SidebarInput.vue | 2 +- components/ui/sidebar/SidebarInset.vue | 26 +-- components/ui/sidebar/SidebarMenuAction.vue | 3 +- components/ui/sidebar/SidebarMenuButton.vue | 8 +- .../ui/sidebar/SidebarMenuButtonChild.vue | 2 +- components/ui/sidebar/SidebarMenuSkeleton.vue | 2 +- .../ui/sidebar/SidebarMenuSubButton.vue | 4 +- components/ui/sidebar/SidebarProvider.vue | 5 +- components/ui/sidebar/SidebarSeparator.vue | 2 +- components/ui/sidebar/SidebarTrigger.vue | 4 +- components/ui/sidebar/index.ts | 14 +- components/ui/sidebar/utils.ts | 2 +- components/ui/sonner/Sonner.vue | 24 +- components/ui/switch/Switch.vue | 4 +- components/ui/tabs/Tabs.vue | 4 +- components/ui/tabs/TabsContent.vue | 3 +- components/ui/tabs/TabsList.vue | 2 +- components/ui/tabs/TabsTrigger.vue | 2 +- components/ui/toggle/Toggle.vue | 14 +- components/ui/toggle/index.ts | 8 +- components/ui/tooltip/Tooltip.vue | 2 +- components/ui/tooltip/TooltipContent.vue | 2 +- components/ui/tooltip/TooltipProvider.vue | 2 +- components/ui/tooltip/TooltipTrigger.vue | 2 +- layouts/app.vue | 37 +-- package.json | 2 +- pages/[username]/[uuid].vue | 18 +- pages/[username]/index.vue | 22 +- pages/global.vue | 8 +- pages/home.vue | 8 +- pages/index.vue | 11 +- pages/local.vue | 9 +- pages/notifications.vue | 12 +- pages/oauth/authorize.vue | 60 +++-- pages/oauth/code.vue | 2 +- pages/oauth/consent.vue | 6 +- pages/oauth/reset.vue | 14 +- pages/preferences/account.vue | 37 ++- pages/preferences/emojis.vue | 6 +- pages/public.vue | 8 +- tailwind.config.ts | 32 ++- types/sidebar.ts | 31 +++ 169 files changed, 1860 insertions(+), 1088 deletions(-) create mode 100644 components/errors/AuthRequired.vue create mode 100644 components/errors/NoPosts.vue create mode 100644 components/errors/NotFound.vue create mode 100644 components/errors/ReachedEnd.vue create mode 100644 components/graphics/spinner.vue create mode 100644 components/profiles/profile-badges.vue create mode 100644 components/profiles/tiny-card.vue delete mode 100644 components/sidebars/account-switcher.vue create mode 100644 components/sidebars/account/account-switcher.vue create mode 100644 components/sidebars/footer/footer-actions.vue create mode 100644 components/sidebars/instance/instance-header.vue create mode 100644 components/sidebars/navigation/nav-group.vue create mode 100644 components/sidebars/navigation/nav-items.vue create mode 100644 components/sidebars/sidebar.ts create mode 100644 types/sidebar.ts diff --git a/app.vue b/app.vue index 9edadb3..9aeb003 100644 --- a/app.vue +++ b/app.vue @@ -18,9 +18,9 @@ import "~/styles/index.css"; import { convert } from "html-to-text"; import ConfirmationModal from "./components/modals/confirm.vue"; import { Toaster } from "./components/ui/sonner"; +import { TooltipProvider } from "./components/ui/tooltip"; import { overwriteGetLocale } from "./paraglide/runtime"; import { type EnumSetting, SettingIds } from "./settings"; -import { TooltipProvider } from "./components/ui/tooltip"; // Sin //import "~/styles/mcdonalds.css"; @@ -58,7 +58,7 @@ useSeoMeta({ ogImage: computed(() => instance.value?.banner?.url), twitterTitle: computed(() => instance.value?.title ?? ""), twitterDescription: computed(() => - convert(description.value?.content ?? "") + convert(description.value?.content ?? ""), ), twitterImage: computed(() => instance.value?.banner?.url), description: computed(() => convert(description.value?.content ?? "")), @@ -76,7 +76,7 @@ useHead({ if (code && origin && appData.value && route.path !== "/oauth/code") { const newOrigin = new URL( - URL.canParse(origin) ? origin : `https://${origin}` + URL.canParse(origin) ? origin : `https://${origin}`, ); signInWithCode(code, appData.value, newOrigin); @@ -84,7 +84,7 @@ if (code && origin && appData.value && route.path !== "/oauth/code") { if (origin && !code) { const newOrigin = new URL( - URL.canParse(origin) ? origin : `https://${origin}` + URL.canParse(origin) ? origin : `https://${origin}`, ); signIn(appData, newOrigin); @@ -108,4 +108,14 @@ html.theme-changing * { transition: background-color 1s ease, border 1s ease, color 1s ease, box-shadow 1s ease !important; } + +.slide-down-enter-active, +.slide-down-leave-active { + transition: transform 0.3s ease; +} + +.slide-down-enter-from, +.slide-down-leave-to { + transform: translateY(-100%); +} diff --git a/bun.lock b/bun.lock index 2c9cb84..f65aab8 100644 --- a/bun.lock +++ b/bun.lock @@ -38,7 +38,7 @@ "nanoid": "^5.1.5", "nuxt": "^3.16.1", "nuxt-security": "^2.2.0", - "radix-vue": "^1.9.17", + "reka-ui": "^2.1.1", "shadcn-nuxt": "1.0.3", "tailwind-merge": "^3.0.2", "tailwindcss-animate": "^1.0.7", @@ -1768,8 +1768,6 @@ "queue-microtask": ["queue-microtask@1.2.3", "", {}, "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="], - "radix-vue": ["radix-vue@1.9.17", "", { "dependencies": { "@floating-ui/dom": "^1.6.7", "@floating-ui/vue": "^1.1.0", "@internationalized/date": "^3.5.4", "@internationalized/number": "^3.5.3", "@tanstack/vue-virtual": "^3.8.1", "@vueuse/core": "^10.11.0", "@vueuse/shared": "^10.11.0", "aria-hidden": "^1.2.4", "defu": "^6.1.4", "fast-deep-equal": "^3.1.3", "nanoid": "^5.0.7" }, "peerDependencies": { "vue": ">= 3.2.0" } }, "sha512-mVCu7I2vXt1L2IUYHTt0sZMz7s1K2ZtqKeTIxG3yC5mMFfLBG4FtE1FDeRMpDd+Hhg/ybi9+iXmAP1ISREndoQ=="], - "radix3": ["radix3@1.1.2", "", {}, "sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA=="], "randombytes": ["randombytes@2.1.0", "", { "dependencies": { "safe-buffer": "^5.1.0" } }, "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ=="], @@ -2426,10 +2424,6 @@ "prosemirror-trailing-node/escape-string-regexp": ["escape-string-regexp@4.0.0", "", {}, "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="], - "radix-vue/@vueuse/core": ["@vueuse/core@10.11.1", "", { "dependencies": { "@types/web-bluetooth": "^0.0.20", "@vueuse/metadata": "10.11.1", "@vueuse/shared": "10.11.1", "vue-demi": ">=0.14.8" } }, "sha512-guoy26JQktXPcz+0n3GukWIy/JDNKti9v6VEMu6kV2sYBsWuGiTU8OWdg+ADfUbHg3/3DlqySDe7JmdHrktiww=="], - - "radix-vue/@vueuse/shared": ["@vueuse/shared@10.11.1", "", { "dependencies": { "vue-demi": ">=0.14.8" } }, "sha512-LHpC8711VFZlDaYUXEBbFBCQ7GS3dVU9mjOhhMhXP6txTV4EhYQg/KGnQuvt/sPAtoUKq7VVUnL6mVtFoL42sA=="], - "randombytes/safe-buffer": ["safe-buffer@5.2.1", "", {}, "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="], "readdir-glob/minimatch": ["minimatch@5.1.6", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g=="], @@ -2590,10 +2584,6 @@ "nypm/pkg-types/confbox": ["confbox@0.2.1", "", {}, "sha512-hkT3yDPFbs95mNCy1+7qNKC6Pro+/ibzYxtM2iqEigpf0sVw+bg4Zh9/snjsBcf990vfIsg5+1U7VyiyBb3etg=="], - "radix-vue/@vueuse/core/@types/web-bluetooth": ["@types/web-bluetooth@0.0.20", "", {}, "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow=="], - - "radix-vue/@vueuse/core/@vueuse/metadata": ["@vueuse/metadata@10.11.1", "", {}, "sha512-IGa5FXd003Ug1qAZmyE8wF3sJ81xGLSqTqtQ6jaVfkeZ4i5kS2mwQF61yhVqojRnenVew5PldLyRgvdl4YYuSw=="], - "reka-ui/@vueuse/core/@vueuse/metadata": ["@vueuse/metadata@12.8.2", "", {}, "sha512-rAyLGEuoBJ/Il5AmFHiziCPdQzRt88VxR+Y/A/QhJ1EWtWqPBBAxTAFaSkviwEuOEZNtW8pvkPgoCZQ+HxqW1A=="], "resolve-path/http-errors/depd": ["depd@1.1.2", "", {}, "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ=="], diff --git a/components.json b/components.json index 2fc290f..8e030ff 100644 --- a/components.json +++ b/components.json @@ -2,7 +2,6 @@ "$schema": "https://shadcn-vue.com/schema.json", "style": "default", "typescript": true, - "tsConfigPath": ".nuxt/tsconfig.json", "tailwind": { "config": "tailwind.config.ts", "css": "styles/index.css", @@ -10,9 +9,11 @@ "cssVariables": true, "prefix": "" }, - "framework": "nuxt", "aliases": { - "components": "~/components", - "utils": "@/lib/utils" + "components": "@/components", + "utils": "@/lib/utils", + "ui": "@/components/ui", + "lib": "@/lib", + "composables": "@/composables" } } diff --git a/components/composer/composer.vue b/components/composer/composer.vue index 128042f..bcaa043 100644 --- a/components/composer/composer.vue +++ b/components/composer/composer.vue @@ -44,8 +44,8 @@