Skip to content

Commit

Permalink
Merge pull request #197 from Laravel-Backpack/pr/188
Browse files Browse the repository at this point in the history
Pr/188 - allow stub publish
  • Loading branch information
pxpm committed Jul 24, 2023
2 parents e2b4294 + ccbfc2e commit e531489
Show file tree
Hide file tree
Showing 14 changed files with 59 additions and 20 deletions.
4 changes: 3 additions & 1 deletion src/Console/Commands/ChartControllerBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

class ChartControllerBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -55,7 +57,7 @@ protected function getPath($name)
*/
protected function getStub()
{
return __DIR__.'/../stubs/chart-controller.stub';
return $this->getStubPath('chart-controller');
}

/**
Expand Down
4 changes: 3 additions & 1 deletion src/Console/Commands/ConfigBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

class ConfigBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -41,7 +43,7 @@ class ConfigBackpackCommand extends GeneratorCommand
*/
protected function getStub()
{
return __DIR__.'/../stubs/config.stub';
return $this->getStubPath('config');
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Console/Commands/CrudControllerBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
class CrudControllerBackpackCommand extends BackpackCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
Expand Down Expand Up @@ -94,7 +95,7 @@ protected function getPath($name)
*/
protected function getStub()
{
return __DIR__.'/../stubs/crud-controller.stub';
return $this->getStubPath('crud-controller');
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Console/Commands/CrudModelBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
class CrudModelBackpackCommand extends BackpackCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
Expand Down Expand Up @@ -145,7 +146,7 @@ public function handle()
*/
protected function getStub()
{
return __DIR__.'/../stubs/crud-model.stub';
return $this->getStubPath('crud-model');
}

/**
Expand Down
4 changes: 3 additions & 1 deletion src/Console/Commands/CrudOperationBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

class CrudOperationBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -55,7 +57,7 @@ protected function getPath($name)
*/
protected function getStub()
{
return __DIR__.'/../stubs/crud-operation.stub';
return $this->getStubPath('crud-operation');
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Console/Commands/CrudRequestBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
class CrudRequestBackpackCommand extends BackpackCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
Expand Down Expand Up @@ -93,7 +94,7 @@ protected function getPath($name)
*/
protected function getStub()
{
return __DIR__.'/../stubs/crud-request.stub';
return $this->getStubPath('crud-request');
}

/**
Expand Down
6 changes: 4 additions & 2 deletions src/Console/Commands/ModelBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

class ModelBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -43,10 +45,10 @@ class ModelBackpackCommand extends GeneratorCommand
protected function getStub()
{
if ($this->option('softdelete')) {
return __DIR__.'/../stubs/model-softdelete.stub';
return $this->getStubPath('model-softdelete');
}

return __DIR__.'/../stubs/model.stub';
return $this->getStubPath('model');
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Console/Commands/PageBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
class PageBackpackCommand extends GeneratorCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
Expand Down Expand Up @@ -120,7 +121,7 @@ public function handle()
*/
protected function getStub()
{
return __DIR__.'/../stubs/page.stub';
return $this->getStubPath('page');
}

/**
Expand Down
3 changes: 2 additions & 1 deletion src/Console/Commands/PageControllerBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
class PageControllerBackpackCommand extends GeneratorCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
Expand Down Expand Up @@ -111,7 +112,7 @@ protected function getPath($name)
*/
protected function getStub()
{
return __DIR__.'/../stubs/page-controller.stub';
return $this->getStubPath('page-controller');
}

/**
Expand Down
4 changes: 3 additions & 1 deletion src/Console/Commands/RequestBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

class RequestBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -41,7 +43,7 @@ class RequestBackpackCommand extends GeneratorCommand
*/
protected function getStub()
{
return __DIR__.'/../stubs/request.stub';
return $this->getStubPath('request');
}

/**
Expand Down
22 changes: 22 additions & 0 deletions src/Console/Commands/Traits/PublishableStubTrait.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?php

namespace Backpack\Generators\Console\Commands\Traits;

use Illuminate\Support\Str;

trait PublishableStubTrait
{
/**
* Return the path to the stub.
*/
public function getStubPath(string $path): string
{
$path = Str::finish($path, '.stub');

if (file_exists(base_path("stubs/backpack/generators/{$path}"))) {
return base_path("stubs/backpack/generators/{$path}");
}

return __DIR__."/../../stubs/{$path}";
}
}
6 changes: 4 additions & 2 deletions src/Console/Commands/ViewBackpackCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@

class ViewBackpackCommand extends GeneratorCommand
{
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The console command name.
*
Expand Down Expand Up @@ -42,10 +44,10 @@ class ViewBackpackCommand extends GeneratorCommand
protected function getStub()
{
if ($this->option('plain')) {
return __DIR__.'/../stubs/view-plain.stub';
return $this->getStubPath('view-plain');
}

return __DIR__.'/../stubs/view.stub';
return $this->getStubPath('view');
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
abstract class PublishOrCreateViewBackpackCommand extends GeneratorCommand
{
use \Backpack\CRUD\app\Console\Commands\Traits\PrettyCommandOutput;
use \Backpack\Generators\Console\Commands\Traits\PublishableStubTrait;

/**
* The source file to copy from.
Expand Down Expand Up @@ -41,7 +42,7 @@ abstract class PublishOrCreateViewBackpackCommand extends GeneratorCommand
*/
protected function getStub()
{
return __DIR__.'/../../stubs/'.$this->stub;
return $this->getStubPath($this->stub);
}

/**
Expand Down
11 changes: 5 additions & 6 deletions src/GeneratorsServiceProvider.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,12 @@ class GeneratorsServiceProvider extends ServiceProvider
WidgetBackpackCommand::class,
];

/**
* Register any package services.
*
* @return void
*/
public function register()
public function boot(): void
{
$this->commands($this->commands);

$this->publishes([
__DIR__.'/Console/stubs' => base_path('stubs/backpack/generators'),
], 'backpack-generators-stubs');
}
}

0 comments on commit e531489

Please sign in to comment.