Viewing file: InstallsBladeStack.php (3.23 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Laravel\Breeze\Console;
use Illuminate\Filesystem\Filesystem; use Symfony\Component\Finder\Finder;
trait InstallsBladeStack { /** * Install the Blade Breeze stack. * * @return void */ protected function installBladeStack() { // NPM Packages... $this->updateNodePackages(function ($packages) { return [ '@tailwindcss/forms' => '^0.5.2', 'alpinejs' => '^3.4.2', 'autoprefixer' => '^10.4.2', 'postcss' => '^8.4.6', 'tailwindcss' => '^3.1.0', ] + $packages; });
// Controllers... (new Filesystem)->ensureDirectoryExists(app_path('Http/Controllers')); (new Filesystem)->copyDirectory(__DIR__.'/../../stubs/default/app/Http/Controllers', app_path('Http/Controllers'));
// Requests... (new Filesystem)->ensureDirectoryExists(app_path('Http/Requests')); (new Filesystem)->copyDirectory(__DIR__.'/../../stubs/default/app/Http/Requests', app_path('Http/Requests'));
// Views... (new Filesystem)->ensureDirectoryExists(resource_path('views')); (new Filesystem)->copyDirectory(__DIR__.'/../../stubs/default/resources/views', resource_path('views'));
if (! $this->option('dark')) { $this->removeDarkClasses((new Finder) ->in(resource_path('views')) ->name('*.blade.php') ->notName('welcome.blade.php') ); }
// Components... (new Filesystem)->ensureDirectoryExists(app_path('View/Components')); (new Filesystem)->copyDirectory(__DIR__.'/../../stubs/default/app/View/Components', app_path('View/Components'));
// Tests... $this->installTests();
// Routes... copy(__DIR__.'/../../stubs/default/routes/web.php', base_path('routes/web.php')); copy(__DIR__.'/../../stubs/default/routes/auth.php', base_path('routes/auth.php'));
// "Dashboard" Route... $this->replaceInFile('/home', '/dashboard', resource_path('views/welcome.blade.php')); $this->replaceInFile('Home', 'Dashboard', resource_path('views/welcome.blade.php')); $this->replaceInFile('/home', '/dashboard', app_path('Providers/RouteServiceProvider.php'));
// Tailwind / Vite... copy(__DIR__.'/../../stubs/default/tailwind.config.js', base_path('tailwind.config.js')); copy(__DIR__.'/../../stubs/default/postcss.config.js', base_path('postcss.config.js')); copy(__DIR__.'/../../stubs/default/vite.config.js', base_path('vite.config.js')); copy(__DIR__.'/../../stubs/default/resources/css/app.css', resource_path('css/app.css')); copy(__DIR__.'/../../stubs/default/resources/js/app.js', resource_path('js/app.js'));
if (file_exists(base_path('pnpm-lock.yaml'))) { $this->runCommands(['pnpm install', 'pnpm run build']); } elseif (file_exists(base_path('yarn.lock'))) { $this->runCommands(['yarn install', 'yarn run build']); } else { $this->runCommands(['npm install', 'npm run build']); }
$this->line(''); $this->components->info('Breeze scaffolding installed successfully.'); } }
|