From d05a24683f4ceb0f89c6e18deb9548624fcfa78e Mon Sep 17 00:00:00 2001 From: Nils Wrenger Date: Sun, 17 Nov 2024 20:32:00 +0100 Subject: [PATCH] :sparkles: Updated to svelte 5 && reworked styling && skills list --- bun.lockb | Bin 117103 -> 121853 bytes components.json | 9 +- package.json | 44 ++++----- src/{app.pcss => app.css} | 0 .../ui/alert/alert-description.svelte | 19 ++-- .../components/ui/alert/alert-title.svelte | 36 ++++--- src/lib/components/ui/alert/alert.svelte | 46 ++++++--- src/lib/components/ui/alert/index.ts | 29 +----- .../ui/avatar/avatar-fallback.svelte | 22 ++--- .../components/ui/avatar/avatar-image.svelte | 22 ++--- src/lib/components/ui/avatar/avatar.svelte | 20 ++-- src/lib/components/ui/avatar/index.ts | 8 +- src/lib/components/ui/badge/badge.svelte | 50 ++++++++-- src/lib/components/ui/badge/index.ts | 22 +---- src/lib/components/ui/button/button.svelte | 91 ++++++++++++++---- src/lib/components/ui/button/index.ts | 53 +++------- .../components/ui/card/card-content.svelte | 19 ++-- .../ui/card/card-description.svelte | 19 ++-- src/lib/components/ui/card/card-footer.svelte | 19 ++-- src/lib/components/ui/card/card-header.svelte | 19 ++-- src/lib/components/ui/card/card-title.svelte | 36 ++++--- src/lib/components/ui/card/card.svelte | 22 +++-- src/lib/components/ui/card/index.ts | 16 ++- src/lib/components/ui/skeleton/index.ts | 4 +- .../components/ui/skeleton/skeleton.svelte | 20 ++-- src/lib/index.ts | 17 ++++ src/lib/utils.ts | 54 +---------- src/routes/+layout.svelte | 43 +++++---- src/routes/+page.svelte | 36 ++++--- src/routes/ImageLoader.svelte | 29 ++++-- src/routes/projects/+page.svelte | 19 ++-- tailwind.config.js => tailwind.config.ts | 41 ++++++-- 32 files changed, 488 insertions(+), 396 deletions(-) rename src/{app.pcss => app.css} (100%) rename tailwind.config.js => tailwind.config.ts (59%) diff --git a/bun.lockb b/bun.lockb index 6a66b022c55155904853c781deba9fc85831ff98..e9b437c557b92f2e573f869114c3f83ea82e2ef4 100755 GIT binary patch delta 30631 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 diff --git a/components.json b/components.json index cbd2be4..79b6f65 100644 --- a/components.json +++ b/components.json @@ -1,5 +1,5 @@ { - "$schema": "https://shadcn-svelte.com/schema.json", + "$schema": "https://next.shadcn-svelte.com/schema.json", "style": "default", "tailwind": { "config": "tailwind.config.js", @@ -8,7 +8,10 @@ }, "aliases": { "components": "$lib/components", - "utils": "$lib/utils" + "utils": "$lib/utils", + "ui": "$lib/components/ui", + "hooks": "$lib/hooks" }, - "typescript": true + "typescript": true, + "registry": "https://next.shadcn-svelte.com/registry" } diff --git a/package.json b/package.json index 3974f83..d5b555a 100644 --- a/package.json +++ b/package.json @@ -12,32 +12,30 @@ "format": "prettier --write ." }, "devDependencies": { - "@sveltejs/adapter-auto": "^3.2.4", - "@sveltejs/kit": "^2.5.25", - "@sveltejs/vite-plugin-svelte": "^3.1.2", + "@sveltejs/adapter-auto": "^3.3.1", + "@sveltejs/adapter-static": "^3.0.6", + "@sveltejs/kit": "^2.8.1", + "@sveltejs/vite-plugin-svelte": "^4.0.1", "autoprefixer": "^10.4.20", - "postcss": "^8.4.41", - "postcss-load-config": "^5.1.0", - "prettier": "^3.3.3", - "prettier-plugin-svelte": "^3.2.6", - "prettier-plugin-tailwindcss": "^0.5.14", - "svelte": "^4.2.19", - "svelte-check": "^3.8.6", - "tailwindcss": "^3.4.10", - "tslib": "^2.7.0", - "typescript": "^5.5.4", - "vite": "^5.4.2" - }, - "type": "module", - "dependencies": { - "@sveltejs/adapter-static": "^3.0.4", - "bits-ui": "^0.21.13", + "bits-ui": "^1.0.0-next.59", "clsx": "^2.1.1", "install": "^0.13.0", "lucide-svelte": "^0.436.0", "mode-watcher": "^0.3.1", - "tailwind-merge": "^2.5.2", - "tailwind-variants": "^0.2.1", - "vaul-svelte": "^0.3.2" - } + "prettier": "^3.3.3", + "prettier-plugin-svelte": "^3.2.8", + "prettier-plugin-tailwindcss": "^0.5.14", + "svelte": "^5.2.2", + "svelte-check": "^4.0.9", + "tailwind-merge": "^2.5.4", + "tailwind-variants": "^0.3.0", + "tailwindcss": "^3.4.15", + "tailwindcss-animate": "^1.0.7", + "tslib": "^2.8.1", + "typescript": "^5.6.3", + "vaul-svelte": "^0.3.2", + "vite": "^5.4.11" + }, + "type": "module", + "dependencies": {} } diff --git a/src/app.pcss b/src/app.css similarity index 100% rename from src/app.pcss rename to src/app.css diff --git a/src/lib/components/ui/alert/alert-description.svelte b/src/lib/components/ui/alert/alert-description.svelte index 06d344c..ef74aa4 100644 --- a/src/lib/components/ui/alert/alert-description.svelte +++ b/src/lib/components/ui/alert/alert-description.svelte @@ -1,13 +1,16 @@ -
- +
+ {@render children?.()}
diff --git a/src/lib/components/ui/alert/alert-title.svelte b/src/lib/components/ui/alert/alert-title.svelte index c63089b..12ec9fc 100644 --- a/src/lib/components/ui/alert/alert-title.svelte +++ b/src/lib/components/ui/alert/alert-title.svelte @@ -1,21 +1,25 @@ - - - + {@render children?.()} +
diff --git a/src/lib/components/ui/alert/alert.svelte b/src/lib/components/ui/alert/alert.svelte index 0bf6eec..8b4528f 100644 --- a/src/lib/components/ui/alert/alert.svelte +++ b/src/lib/components/ui/alert/alert.svelte @@ -1,17 +1,39 @@ - + + -