mirror of
https://github.com/vitodeploy/vito.git
synced 2025-07-02 14:36:17 +00:00
refactoring
This commit is contained in:
@ -11,8 +11,12 @@ class Bitbucket extends Component
|
||||
{
|
||||
public string $token;
|
||||
|
||||
public ?string $url;
|
||||
|
||||
public function mount(): void
|
||||
{
|
||||
$this->url = request()->input('redirect') ?? null;
|
||||
|
||||
$this->token = SourceControl::query()
|
||||
->where('provider', \App\Enums\SourceControl::BITBUCKET)
|
||||
->first()?->access_token ?? '';
|
||||
@ -23,6 +27,10 @@ public function connect(): void
|
||||
app(ConnectSourceControl::class)->connect(\App\Enums\SourceControl::BITBUCKET, $this->all());
|
||||
|
||||
session()->flash('status', 'bitbucket-updated');
|
||||
|
||||
if ($this->url) {
|
||||
$this->redirect($this->url);
|
||||
}
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
|
38
app/Http/Livewire/SourceControls/Connect.php
Normal file
38
app/Http/Livewire/SourceControls/Connect.php
Normal file
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\SourceControls;
|
||||
|
||||
use App\Actions\SourceControl\ConnectSourceControl;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Livewire\Component;
|
||||
|
||||
class Connect extends Component
|
||||
{
|
||||
public string $provider = '';
|
||||
|
||||
public string $name;
|
||||
|
||||
public string $token;
|
||||
|
||||
public string $url;
|
||||
|
||||
public function connect(): void
|
||||
{
|
||||
app(ConnectSourceControl::class)->connect($this->all());
|
||||
|
||||
$this->emitTo(SourceControlsList::class, '$refresh');
|
||||
|
||||
$this->dispatchBrowserEvent('connected', true);
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
{
|
||||
if (request()->query('provider')) {
|
||||
$this->provider = request()->query('provider');
|
||||
}
|
||||
|
||||
return view('livewire.source-controls.connect', [
|
||||
'open' => ! is_null(request()->query('provider')),
|
||||
]);
|
||||
}
|
||||
}
|
@ -11,8 +11,12 @@ class Github extends Component
|
||||
{
|
||||
public string $token;
|
||||
|
||||
public ?string $url;
|
||||
|
||||
public function mount(): void
|
||||
{
|
||||
$this->url = request()->input('redirect') ?? null;
|
||||
|
||||
$this->token = SourceControl::query()
|
||||
->where('provider', \App\Enums\SourceControl::GITHUB)
|
||||
->first()?->access_token ?? '';
|
||||
@ -20,9 +24,13 @@ public function mount(): void
|
||||
|
||||
public function connect(): void
|
||||
{
|
||||
app(ConnectSourceControl::class)->connect(\App\Enums\SourceControl::GITHUB, $this->all());
|
||||
app(ConnectSourceControl::class)->connect(\App\Enums\SourceControl::GITHUB, array_merge($this->all()));
|
||||
|
||||
session()->flash('status', 'github-updated');
|
||||
|
||||
if ($this->url) {
|
||||
$this->redirect($this->url);
|
||||
}
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
|
@ -11,8 +11,12 @@ class Gitlab extends Component
|
||||
{
|
||||
public string $token;
|
||||
|
||||
public ?string $url;
|
||||
|
||||
public function mount(): void
|
||||
{
|
||||
$this->url = request()->input('redirect') ?? null;
|
||||
|
||||
$this->token = SourceControl::query()
|
||||
->where('provider', \App\Enums\SourceControl::GITLAB)
|
||||
->first()?->access_token ?? '';
|
||||
@ -23,6 +27,10 @@ public function connect(): void
|
||||
app(ConnectSourceControl::class)->connect(\App\Enums\SourceControl::GITLAB, $this->all());
|
||||
|
||||
session()->flash('status', 'gitlab-updated');
|
||||
|
||||
if ($this->url) {
|
||||
$this->redirect($this->url);
|
||||
}
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
|
37
app/Http/Livewire/SourceControls/SourceControlsList.php
Normal file
37
app/Http/Livewire/SourceControls/SourceControlsList.php
Normal file
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Livewire\SourceControls;
|
||||
|
||||
use App\Models\SourceControl;
|
||||
use App\Traits\RefreshComponentOnBroadcast;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Livewire\Component;
|
||||
|
||||
class SourceControlsList extends Component
|
||||
{
|
||||
use RefreshComponentOnBroadcast;
|
||||
|
||||
public int $deleteId;
|
||||
|
||||
protected $listeners = [
|
||||
'$refresh',
|
||||
];
|
||||
|
||||
public function delete(): void
|
||||
{
|
||||
$provider = SourceControl::query()->findOrFail($this->deleteId);
|
||||
|
||||
$provider->delete();
|
||||
|
||||
$this->refreshComponent([]);
|
||||
|
||||
$this->dispatchBrowserEvent('confirmed', true);
|
||||
}
|
||||
|
||||
public function render(): View
|
||||
{
|
||||
return view('livewire.source-controls.source-controls-list', [
|
||||
'sourceControls' => SourceControl::query()->latest()->get(),
|
||||
]);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user