From 609d0deba5b0b9edfe7d7a7c5005dede2a53f053 Mon Sep 17 00:00:00 2001 From: Christoph Stockinger Date: Tue, 25 Feb 2025 21:28:25 +0100 Subject: [PATCH 01/13] Move to custom declariton file for tsconfig --- resources/js/app.ts | 13 ------------- resources/js/types/vite.d.ts | 11 +++++++++++ 2 files changed, 11 insertions(+), 13 deletions(-) create mode 100644 resources/js/types/vite.d.ts diff --git a/resources/js/app.ts b/resources/js/app.ts index 5670d9e8..939aca3d 100644 --- a/resources/js/app.ts +++ b/resources/js/app.ts @@ -7,19 +7,6 @@ import { createApp, h } from 'vue'; import { ZiggyVue } from 'ziggy-js'; import { initializeTheme } from './composables/useAppearance'; -// Extend ImportMeta interface for Vite... -declare module 'vite/client' { - interface ImportMetaEnv { - readonly VITE_APP_NAME: string; - [key: string]: string | boolean | undefined; - } - - interface ImportMeta { - readonly env: ImportMetaEnv; - readonly glob: (pattern: string) => Record Promise>; - } -} - const appName = import.meta.env.VITE_APP_NAME || 'Laravel'; createInertiaApp({ diff --git a/resources/js/types/vite.d.ts b/resources/js/types/vite.d.ts new file mode 100644 index 00000000..09cdd836 --- /dev/null +++ b/resources/js/types/vite.d.ts @@ -0,0 +1,11 @@ +declare module 'vite/client' { + interface ImportMetaEnv { + readonly VITE_APP_NAME: string; + [key: string]: string | boolean | undefined; + } + + interface ImportMeta { + readonly env: ImportMetaEnv; + readonly glob: (pattern: string) => Record Promise>; + } +} From cca987558a80fe4ab0b5ee28697035d54ea53927 Mon Sep 17 00:00:00 2001 From: Christoph Stockinger Date: Tue, 25 Feb 2025 21:29:25 +0100 Subject: [PATCH 02/13] Modify tsconfig --- tsconfig.json | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index b404281d..87a26af2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -40,9 +40,7 @@ // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */ // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */ "types": [ - "vite/client", - "vue/tsx", - "./resources/js/types" + "vite/client" ] /* Specify type package names to be included without being referenced in a source file. */, // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */ @@ -122,7 +120,8 @@ "include": [ "resources/js/**/*.ts", "resources/js/**/*.d.ts", - "resources/js/**/*.tsx", - "resources/js/**/*.vue" + "resources/js/**/*.tsx", + "resources/js/**/*.vue", + "node_modules/vite/client.d.ts" ] } From b195ce7c287fcf94e0a80d1b27273fde60a7852c Mon Sep 17 00:00:00 2001 From: Christoph Stockinger Date: Tue, 25 Feb 2025 21:29:45 +0100 Subject: [PATCH 03/13] Fix typescript build error --- resources/js/components/AppHeader.vue | 4 ++-- resources/js/components/AppSidebarHeader.vue | 2 +- resources/js/components/TextLink.vue | 9 +++------ resources/js/components/UserInfo.vue | 8 ++------ resources/js/layouts/auth/AuthSplitLayout.vue | 5 +++-- resources/js/pages/Welcome.vue | 10 +++++++++- 6 files changed, 20 insertions(+), 18 deletions(-) diff --git a/resources/js/components/AppHeader.vue b/resources/js/components/AppHeader.vue index 84902b2e..ddff76b6 100644 --- a/resources/js/components/AppHeader.vue +++ b/resources/js/components/AppHeader.vue @@ -16,7 +16,7 @@ import { Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from '@/co import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'; import UserMenuContent from '@/components/UserMenuContent.vue'; import { getInitials } from '@/composables/useInitials'; -import type { BreadcrumbItem, NavItem } from '@/types'; +import type { BreadcrumbItem, NavItem, SharedData } from '@/types'; import { Link, usePage } from '@inertiajs/vue3'; import { BookOpen, Folder, LayoutGrid, Menu, Search } from 'lucide-vue-next'; import { computed } from 'vue'; @@ -29,7 +29,7 @@ const props = withDefaults(defineProps(), { breadcrumbs: () => [], }); -const page = usePage(); +const page = usePage(); const auth = computed(() => page.props.auth); const isCurrentRoute = computed(() => (url: string) => page.url === url); diff --git a/resources/js/components/AppSidebarHeader.vue b/resources/js/components/AppSidebarHeader.vue index 1ff2baa7..d2f88596 100644 --- a/resources/js/components/AppSidebarHeader.vue +++ b/resources/js/components/AppSidebarHeader.vue @@ -14,7 +14,7 @@ defineProps<{ >
-