From 021dfc85f98f683271f93fe86b0120076a2117c6 Mon Sep 17 00:00:00 2001 From: Kamil Niemczycki Date: Thu, 27 Jul 2023 20:49:26 +0200 Subject: [PATCH] - update login page --- app/Http/Controllers/Auth/LoginController.php | 7 ++- app/Http/Kernel.php | 3 +- app/Http/Middleware/HandleInertiaRequests.php | 12 ++++- resources/js/Pages/Login.vue | 45 +++++++++++++++++++ resources/js/Share/Layout/Guest.vue | 30 +++++++++++++ resources/js/app.js | 8 +++- resources/js/css/app.css | 6 +++ resources/views/app.blade.php | 2 + tailwind.config.js | 11 ++++- vite.config.js | 1 + 10 files changed, 116 insertions(+), 9 deletions(-) create mode 100644 resources/js/Pages/Login.vue create mode 100644 resources/js/Share/Layout/Guest.vue diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index cd4d0de..2502c0c 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -8,8 +8,7 @@ use App\Http\Controllers\Controller; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; -use Illuminate\Support\Facades\Hash; -use Illuminate\View\View; +use Inertia\Response as InertiaResponse; class LoginController extends Controller { @@ -43,12 +42,12 @@ class LoginController extends Controller return redirect()->route('admin.auth.login'); } - public function login(): View|RedirectResponse + public function login(): InertiaResponse|RedirectResponse { if (Auth::check()) return redirect()->route('admin.home'); - return view('auth.login'); + return inertia('Login'); } } diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 14af282..67c4b51 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -17,7 +17,8 @@ class Kernel extends HttpKernel \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class, \App\Http\Middleware\TrimStrings::class, \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, - Core::class + Core::class, + \App\Http\Middleware\HandleInertiaRequests::class, ]; protected $middlewareGroups = [ diff --git a/app/Http/Middleware/HandleInertiaRequests.php b/app/Http/Middleware/HandleInertiaRequests.php index 9bcecb0..28dcdc6 100644 --- a/app/Http/Middleware/HandleInertiaRequests.php +++ b/app/Http/Middleware/HandleInertiaRequests.php @@ -4,6 +4,7 @@ declare(strict_types=1); namespace App\Http\Middleware; +use Closure; use Illuminate\Http\Request; use Inertia\Middleware; @@ -12,7 +13,16 @@ class HandleInertiaRequests extends Middleware public function share(Request $request): array { return array_merge(parent::share($request), [ - // + 'messages' => $this->getFlashData($request), ]); } + + protected function getFlashData(Request $request): Closure + { + return fn(): array => [ + 'success' => $request->session()->get('success'), + 'error' => $request->session()->get('error'), + 'info' => $request->session()->get('info'), + ]; + } } diff --git a/resources/js/Pages/Login.vue b/resources/js/Pages/Login.vue new file mode 100644 index 0000000..f09160c --- /dev/null +++ b/resources/js/Pages/Login.vue @@ -0,0 +1,45 @@ + + + diff --git a/resources/js/Share/Layout/Guest.vue b/resources/js/Share/Layout/Guest.vue new file mode 100644 index 0000000..a489d78 --- /dev/null +++ b/resources/js/Share/Layout/Guest.vue @@ -0,0 +1,30 @@ + + + + + diff --git a/resources/js/app.js b/resources/js/app.js index cd916f9..834ffbf 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -1,9 +1,12 @@ import './bootstrap'; + +import { resolvePageComponent } from 'laravel-vite-plugin/inertia-helpers'; + import { createApp, h } from 'vue'; import { createInertiaApp, Head, Link } from '@inertiajs/inertia-vue3'; -import { resolvePageComponent } from 'laravel-vite-plugin/inertia-helpers'; -import App from '@/Share/Layout/App.vue'; + import './css/app.css'; +import App from '@/Share/Layout/App.vue'; createInertiaApp({ resolve: async (name) => { @@ -25,4 +28,5 @@ createInertiaApp({ .component('InertiaHead', Head) .mount(el) }, + title: title => `${title} | KamilCraft API` }); diff --git a/resources/js/css/app.css b/resources/js/css/app.css index b5c61c9..d9b5967 100644 --- a/resources/js/css/app.css +++ b/resources/js/css/app.css @@ -1,3 +1,9 @@ @tailwind base; @tailwind components; @tailwind utilities; + +@layer base { + :root { + --color-logo-green: 162, 207, 0; + } +} diff --git a/resources/views/app.blade.php b/resources/views/app.blade.php index d02076f..23e1011 100644 --- a/resources/views/app.blade.php +++ b/resources/views/app.blade.php @@ -3,6 +3,8 @@ + + @vite('resources/js/app.js') @inertiaHead diff --git a/tailwind.config.js b/tailwind.config.js index 3d410c9..c22a863 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -6,7 +6,16 @@ module.exports = { "./resources/views/**/*.blade.php" ], theme: { - extend: {}, + extend: { + fontFamily: { + 'arial': ['Arial', 'sans-serif'], + 'roboto': ['Roboto', 'sans-serif'], + 'thasadith': ['Thasadith', 'sans-serif'] + }, + colors: { + 'logo-green': 'rgb(var(--color-logo-green) / )' + } + }, }, plugins: [], } diff --git a/vite.config.js b/vite.config.js index 0691975..1386a56 100644 --- a/vite.config.js +++ b/vite.config.js @@ -6,6 +6,7 @@ import { networkInterfaces } from 'os' export default defineConfig({ server: { host: Object.values(networkInterfaces()).flat().find(i => i.family === 'IPv4' && !i.internal).address, + port: 3001, hmr: { host: 'localhost', },