mirror of
https://github.com/coollabsio/coolify.git
synced 2026-11-04 18:52:49 +00:00
74 lines
1.8 KiB
PHP
74 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace App\Livewire\Project\Shared\EnvironmentVariable;
|
|
|
|
use App\Models\EnvironmentVariable;
|
|
use Livewire\Attributes\Locked;
|
|
use Livewire\Component;
|
|
|
|
class ShowHardcoded extends Component
|
|
{
|
|
public bool $showEnvironmentType = true;
|
|
|
|
public array $env;
|
|
|
|
public string $key;
|
|
|
|
#[Locked]
|
|
public ?string $value = null;
|
|
|
|
#[Locked]
|
|
public bool $isValueHidden = true;
|
|
|
|
public ?string $comment = null;
|
|
|
|
public ?string $serviceName = null;
|
|
|
|
#[Locked]
|
|
public bool $isPreview = false;
|
|
|
|
public string $composeType = 'literal';
|
|
|
|
/** @var list<string> */
|
|
public array $references = [];
|
|
|
|
#[Locked]
|
|
public ?string $resourceableType = null;
|
|
|
|
#[Locked]
|
|
public ?int $resourceableId = null;
|
|
|
|
public function mount()
|
|
{
|
|
$this->key = $this->env['key'];
|
|
$this->value = $this->env['value'] ?? null;
|
|
$this->isValueHidden = $this->env['is_value_hidden'] ?? true;
|
|
$this->comment = $this->env['comment'] ?? null;
|
|
$this->serviceName = $this->env['service_name'] ?? null;
|
|
$this->composeType = $this->env['compose_type'] ?? 'literal';
|
|
$this->references = $this->env['references'] ?? [];
|
|
}
|
|
|
|
public function copyValue(): ?string
|
|
{
|
|
$environmentVariable = EnvironmentVariable::make([
|
|
'value' => $this->value,
|
|
'is_preview' => $this->isPreview,
|
|
'resourceable_type' => $this->resourceableType,
|
|
'resourceable_id' => $this->resourceableId,
|
|
]);
|
|
$resource = $environmentVariable->resourceable;
|
|
|
|
if (! $resource || auth()->user()->cannot('update', $resource)) {
|
|
return null;
|
|
}
|
|
|
|
return $environmentVariable->resolveReferencedValue();
|
|
}
|
|
|
|
public function render()
|
|
{
|
|
return view('livewire.project.shared.environment-variable.show-hardcoded');
|
|
}
|
|
}
|