chore: update package dependencies and improve Vite configuration for enhanced performance and compatibility

This commit is contained in:
Yoga Pangestu 2026-06-25 15:33:09 +07:00
parent e0e38c1298
commit cc77aa92d6
4 changed files with 517 additions and 379 deletions

824
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -19,16 +19,19 @@
"@stylistic/eslint-plugin": "^5.10.0", "@stylistic/eslint-plugin": "^5.10.0",
"@types/node": "^22.13.5", "@types/node": "^22.13.5",
"@vite-pwa/assets-generator": "^1.0.2", "@vite-pwa/assets-generator": "^1.0.2",
"@vitejs/plugin-vue": "^6.0.7",
"@vue/eslint-config-typescript": "^14.3.0", "@vue/eslint-config-typescript": "^14.3.0",
"eslint": "^9.17.0", "eslint": "^9.17.0",
"eslint-config-prettier": "^10.0.1", "eslint-config-prettier": "^10.0.1",
"eslint-import-resolver-typescript": "^4.4.4", "eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-import": "^2.32.0", "eslint-plugin-import": "^2.32.0",
"eslint-plugin-vue": "^9.32.0", "eslint-plugin-vue": "^9.32.0",
"laravel-vite-plugin": "^2.0.1",
"prettier": "^3.4.2", "prettier": "^3.4.2",
"prettier-plugin-tailwindcss": "^0.6.11", "prettier-plugin-tailwindcss": "^0.6.11",
"tw-animate-css": "^1.4.0", "tw-animate-css": "^1.4.0",
"typescript-eslint": "^8.23.0", "typescript-eslint": "^8.23.0",
"vite": "^7.3.6",
"vite-plugin-pwa": "^1.3.0", "vite-plugin-pwa": "^1.3.0",
"vue-tsc": "^2.2.4" "vue-tsc": "^2.2.4"
}, },
@ -48,18 +51,15 @@
"@tanstack/vue-table": "^8.21.3", "@tanstack/vue-table": "^8.21.3",
"@unovis/ts": "^1.6.6", "@unovis/ts": "^1.6.6",
"@unovis/vue": "^1.6.6", "@unovis/vue": "^1.6.6",
"@vitejs/plugin-vue": "^6.0.0",
"@vueuse/core": "^14.3.0", "@vueuse/core": "^14.3.0",
"class-variance-authority": "^0.7.1", "class-variance-authority": "^0.7.1",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"concurrently": "^9.0.1", "concurrently": "^9.0.1",
"dropzone-vue": "^0.1.11", "dropzone-vue": "^0.1.11",
"laravel-vite-plugin": "^3.1",
"reka-ui": "^2.10.0", "reka-ui": "^2.10.0",
"tailwind-merge": "^3.6.0", "tailwind-merge": "^3.6.0",
"tailwindcss": "^4.1.1", "tailwindcss": "^4.1.1",
"typescript": "^5.2.2", "typescript": "^5.2.2",
"vite": "^8.0.0",
"vue": "^3.5.13", "vue": "^3.5.13",
"vue-sonner": "^2.0.9" "vue-sonner": "^2.0.9"
}, },

View File

@ -1,38 +1,40 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}" @class(['dark' => ($appearance ?? 'system') == 'dark'])> <html lang="{{ str_replace('_', '-', app()->getLocale()) }}" @class(['dark' => ($appearance ?? 'system') == 'dark'])>
<head> <head>
<script> <script>
(function() { (function() {
const appearance = @json($appearance ?? 'system'); const appearance = @json($appearance ?? 'system');
if (appearance === 'dark' || (appearance === 'system' && window.matchMedia('(prefers-color-scheme: dark)') if (appearance === 'dark' || (appearance === 'system' && window.matchMedia('(prefers-color-scheme: dark)')
.matches)) { .matches)) {
document.documentElement.classList.add('dark'); document.documentElement.classList.add('dark');
} else { } else {
document.documentElement.classList.remove('dark'); document.documentElement.classList.remove('dark');
} }
})(); })();
</script> </script>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="csrf-token" content="{{ csrf_token() }}"> <meta name="csrf-token" content="{{ csrf_token() }}">
<meta name="description" content="{{ config('app.name', 'Laravel') }} - Progressive Web App"> <meta name="description" content="{{ config('app.name', 'Laravel') }} - Progressive Web App">
<meta name="theme-color" content="#171717"> <meta name="theme-color" content="#171717">
<link rel="icon" href="{{ $page['props']['favicon_url'] ?? $page['props']['logo_url'] ?? asset('assets/logo.png') }}" sizes="any"> <link rel="icon"
<link rel="manifest" href="/build/manifest.webmanifest"> href="{{ $page['props']['favicon_url'] ?? ($page['props']['logo_url'] ?? asset('assets/logo.png')) }}"
sizes="any">
<link rel="manifest" href="/build/manifest.webmanifest">
<link rel="preconnect" href="https://fonts.bunny.net">
<link href="https://fonts.bunny.net/css?family=instrument-sans:400,500,600" rel="stylesheet" />
@fonts @vite(['resources/css/app.css', 'resources/js/app.ts', "resources/js/pages/{$page['component']}.vue"])
<x-inertia::head>
<title>{{ config('app.name', 'Laravel') }}</title>
</x-inertia::head>
</head>
@vite(['resources/css/app.css', 'resources/js/app.ts', "resources/js/pages/{$page['component']}.vue"]) <body class="font-sans antialiased">
<x-inertia::head> <x-inertia::app />
<title>{{ config('app.name', 'Laravel') }}</title> </body>
</x-inertia::head>
</head>
<body class="font-sans antialiased">
<x-inertia::app />
</body>
</html> </html>

View File

@ -3,7 +3,6 @@ import { wayfinder } from '@laravel/vite-plugin-wayfinder';
import tailwindcss from '@tailwindcss/vite'; import tailwindcss from '@tailwindcss/vite';
import vue from '@vitejs/plugin-vue'; import vue from '@vitejs/plugin-vue';
import laravel from 'laravel-vite-plugin'; import laravel from 'laravel-vite-plugin';
import { bunny } from 'laravel-vite-plugin/fonts';
import { defineConfig, loadEnv } from 'vite'; import { defineConfig, loadEnv } from 'vite';
import { VitePWA } from 'vite-plugin-pwa'; import { VitePWA } from 'vite-plugin-pwa';
@ -41,11 +40,6 @@ export default defineConfig(({ mode }) => {
laravel({ laravel({
input: ['resources/css/app.css', 'resources/js/app.ts'], input: ['resources/css/app.css', 'resources/js/app.ts'],
refresh: false, refresh: false,
fonts: [
bunny('Instrument Sans', {
weights: [400, 500, 600],
}),
],
}), }),
inertia(), inertia(),
tailwindcss(), tailwindcss(),