From d2b549b6e6c1820194c4a4541c09018d60034493 Mon Sep 17 00:00:00 2001 From: Daeng Deni Mardaeni Date: Mon, 5 Aug 2024 14:26:06 +0700 Subject: [PATCH] Feature #3 : jQuery and Sweetalert2 --- package.json | 5 ++++- resources/js/app.js | 3 +++ resources/views/layouts/base.blade.php | 11 ++++++++--- tailwind.config.js | 1 + vite.config.js | 21 +++++++++++++++++---- 5 files changed, 33 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index a966d50..7df964a 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "build": "vite build" }, "devDependencies": { + "@rollup/plugin-inject": "^5.0.5", "autoprefixer": "^10.4.19", "axios": "^1.6.4", "laravel-vite-plugin": "^1.0", @@ -16,6 +17,8 @@ }, "dependencies": { "@popperjs/core": "^2.11.8", - "mini-svg-data-uri": "^1.4.4" + "jquery": "^3.7.1", + "mini-svg-data-uri": "^1.4.4", + "sweetalert2": "^11.12.4" } } diff --git a/resources/js/app.js b/resources/js/app.js index f44bf37..7b92800 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -3,3 +3,6 @@ import "./bootstrap"; import "../metronic/core/index"; import "../metronic/app/layouts/base.js"; +import $ from 'jquery'; +window.$ = $; +let dataTable; diff --git a/resources/views/layouts/base.blade.php b/resources/views/layouts/base.blade.php index 487c358..6b54e8d 100644 --- a/resources/views/layouts/base.blade.php +++ b/resources/views/layouts/base.blade.php @@ -1,4 +1,6 @@ -@php use Nwidart\Modules\Module; @endphp +@php + use Nwidart\Modules\Module; +@endphp @@ -8,7 +10,7 @@ - @vite(Module::getAssets()) + @vite('resources/css/app.scss') @@ -26,7 +28,8 @@ themeMode = defaultThemeMode; } - if (themeMode === 'system') {ß + if (themeMode === 'system') { + ß themeMode = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'; } @@ -36,6 +39,8 @@ @yield('main') +@vite('resources/js/app.js') +@stack('scripts') diff --git a/tailwind.config.js b/tailwind.config.js index 3a0cd2d..f9d9f51 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -4,6 +4,7 @@ export default { "./resources/**/*.blade.php", "./resources/**/*.js", "./resources/**/*.vue", + "./modules/**/*.php", ], safelist: [ 'metronic', diff --git a/vite.config.js b/vite.config.js index e7680f4..9a7c618 100644 --- a/vite.config.js +++ b/vite.config.js @@ -1,18 +1,31 @@ -import { defineConfig } from 'vite'; +import {defineConfig} from 'vite'; import laravel from 'laravel-vite-plugin'; import collectModuleAssetsPaths from './vite-module-loader.js'; +import inject from "@rollup/plugin-inject"; -const paths = [ +const allPaths = [ 'resources/css/app.scss', 'resources/js/app.js', ]; -const allPaths = await collectModuleAssetsPaths(paths, 'Modules'); export default defineConfig({ + build: { + sourcemap: true, + rollupOptions: { + output: { + chunkFileNames: 'js/[name].js', + entryFileNames: 'js/[name].js', + }, + } + }, plugins: [ + inject({ // => that should be first under plugins array + $: 'jquery', + jQuery: 'jquery', + }), laravel({ input: allPaths, - refresh: true, + refresh: true }), ], });