do not use Rule (deprecated), changed to Validate

This commit is contained in:
Andras Bacsai
2024-11-05 09:36:40 +01:00
parent d24d1394f7
commit 9b578b2003
26 changed files with 201 additions and 198 deletions

View File

@@ -6,7 +6,7 @@ use App\Models\Server;
use App\Models\StandaloneDocker;
use App\Models\SwarmDocker;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
use Visus\Cuid2\Cuid2;
@@ -18,16 +18,16 @@ class Docker extends Component
#[Locked]
public Server $selectedServer;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $name;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $network;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $serverId;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $isSwarm = false;
public function mount(?string $server_id = null)

View File

@@ -6,7 +6,7 @@ use App\Models\Server;
use App\Models\StandaloneDocker;
use App\Models\SwarmDocker;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Show extends Component
@@ -14,13 +14,13 @@ class Show extends Component
#[Locked]
public $destination;
#[Rule(['string', 'required'])]
#[Validate(['string', 'required'])]
public string $name;
#[Rule(['string', 'required'])]
#[Validate(['string', 'required'])]
public string $network;
#[Rule(['string', 'required'])]
#[Validate(['string', 'required'])]
public string $serverIp;
public function mount(string $destination_uuid)

View File

@@ -5,17 +5,17 @@ namespace App\Livewire;
use DanHarrin\LivewireRateLimiting\WithRateLimiting;
use Illuminate\Notifications\Messages\MailMessage;
use Illuminate\Support\Facades\Http;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Help extends Component
{
use WithRateLimiting;
#[Rule(['required', 'min:10', 'max:1000'])]
#[Validate(['required', 'min:10', 'max:1000'])]
public string $description;
#[Rule(['required', 'min:3'])]
#[Validate(['required', 'min:3'])]
public string $subject;
public function submit()

View File

@@ -4,35 +4,35 @@ namespace App\Livewire\Notifications;
use App\Models\Team;
use App\Notifications\Test;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Discord extends Component
{
public Team $team;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordEnabled = false;
#[Rule(['url', 'nullable'])]
#[Validate(['url', 'nullable'])]
public ?string $discordWebhookUrl = null;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsTest = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsDeployments = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsStatusChanges = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsDatabaseBackups = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsScheduledTasks = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $discordNotificationsServerDiskUsage = false;
public function mount()

View File

@@ -5,6 +5,7 @@ namespace App\Livewire\Notifications;
use App\Models\Team;
use App\Notifications\Test;
use Illuminate\Support\Facades\RateLimiter;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Email extends Component
@@ -15,6 +16,9 @@ class Email extends Component
public bool $sharedEmailEnabled = false;
#[Validate(['boolean'])]
public bool $smtpEnabled = false;
protected $rules = [
'team.smtp_enabled' => 'nullable|boolean',
'team.smtp_from_address' => 'required|email',

View File

@@ -4,53 +4,53 @@ namespace App\Livewire\Notifications;
use App\Models\Team;
use App\Notifications\Test;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Telegram extends Component
{
public Team $team;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramEnabled = false;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramToken = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramChatId = null;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsTest = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsDeployments = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsStatusChanges = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsDatabaseBackups = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsScheduledTasks = false;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramNotificationsTestMessageThreadId = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramNotificationsDeploymentsMessageThreadId = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramNotificationsStatusChangesMessageThreadId = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramNotificationsDatabaseBackupsMessageThreadId = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $telegramNotificationsScheduledTasksThreadId = null;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $telegramNotificationsServerDiskUsage = false;
public function mount()

View File

@@ -3,15 +3,15 @@
namespace App\Livewire\Project;
use App\Models\Project;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class AddEmpty extends Component
{
#[Rule(['required', 'string', 'min:3'])]
#[Validate(['required', 'string', 'min:3'])]
public string $name;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public string $description = '';
public function submit()

View File

@@ -3,7 +3,6 @@
namespace App\Livewire\Project\Application\Preview;
use App\Models\Application;
use Livewire\Attributes\Rule;
use Livewire\Component;
use Spatie\Url\Url;
@@ -11,7 +10,7 @@ class Form extends Component
{
public Application $application;
#[Rule('required')]
#[Validate('required')]
public string $previewUrlTemplate;
public function mount()

View File

@@ -5,7 +5,7 @@ namespace App\Livewire\Project\Application;
use App\Models\Application;
use App\Models\PrivateKey;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Source extends Component
@@ -15,19 +15,19 @@ class Source extends Component
#[Locked]
public $privateKeys;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $privateKeyName = null;
#[Rule(['nullable', 'integer'])]
#[Validate(['nullable', 'integer'])]
public ?int $privateKeyId = null;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $gitRepository;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $gitBranch;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $gitCommitSha = null;
public function mount()

View File

@@ -3,20 +3,20 @@
namespace App\Livewire\Project\Application;
use App\Models\Application;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Swarm extends Component
{
public Application $application;
#[Rule('required')]
#[Validate('required')]
public int $swarmReplicas;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $swarmPlacementConstraints = null;
#[Rule('required')]
#[Validate('required')]
public bool $isSwarmOnlyWorkerNodes;
public function mount()

View File

@@ -8,7 +8,7 @@ use Exception;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
use Spatie\Url\Url;
@@ -22,37 +22,37 @@ class BackupEdit extends Component
#[Locked]
public $parameters;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $delete_associated_backups_locally = false;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $delete_associated_backups_s3 = false;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $delete_associated_backups_sftp = false;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $status = null;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $backupEnabled = false;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $frequency = '';
#[Rule(['required', 'integer', 'min:1'])]
#[Validate(['required', 'integer', 'min:1'])]
public int $numberOfBackupsLocally = 1;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $saveS3 = false;
#[Rule(['required', 'integer'])]
#[Validate(['required', 'integer'])]
public int $s3StorageId = 1;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $databasesToBackup = null;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $dumpAll = false;
public function mount()

View File

@@ -8,7 +8,7 @@ use App\Models\Server;
use App\Models\StandaloneClickhouse;
use Exception;
use Illuminate\Support\Facades\Auth;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class General extends Component
@@ -17,40 +17,40 @@ class General extends Component
public StandaloneClickhouse $database;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $name;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $description = null;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $clickhouseAdminUser;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $clickhouseAdminPassword;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $image;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $portsMappings = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public ?bool $isPublic = null;
#[Rule(['nullable', 'integer'])]
#[Validate(['nullable', 'integer'])]
public ?int $publicPort = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $customDockerRunOptions = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrl = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrlPublic = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public bool $isLogDrainEnabled = false;
public function getListeners()

View File

@@ -5,15 +5,15 @@ namespace App\Livewire\Project\Database;
use App\Models\ScheduledDatabaseBackup;
use Illuminate\Support\Collection;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class CreateScheduledBackup extends Component
{
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public $frequency;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $saveToS3 = false;
#[Locked]
@@ -21,7 +21,7 @@ class CreateScheduledBackup extends Component
public bool $enabled = true;
#[Rule(['required', 'integer'])]
#[Validate(['required', 'integer'])]
public int $s3StorageId;
public Collection $definedS3s;

View File

@@ -8,7 +8,7 @@ use App\Models\Server;
use App\Models\StandaloneDragonfly;
use Exception;
use Illuminate\Support\Facades\Auth;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class General extends Component
@@ -17,37 +17,37 @@ class General extends Component
public StandaloneDragonfly $database;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $name;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $description = null;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $dragonflyPassword;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $image;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $portsMappings = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public ?bool $isPublic = null;
#[Rule(['nullable', 'integer'])]
#[Validate(['nullable', 'integer'])]
public ?int $publicPort = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $customDockerRunOptions = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrl = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrlPublic = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public bool $isLogDrainEnabled = false;
public function getListeners()

View File

@@ -4,7 +4,7 @@ namespace App\Livewire\Project\Database;
use Exception;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class InitScript extends Component
@@ -15,10 +15,10 @@ class InitScript extends Component
#[Locked]
public int $index;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $filename = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $content = null;
public function mount()

View File

@@ -8,7 +8,7 @@ use App\Models\Server;
use App\Models\StandaloneKeydb;
use Exception;
use Illuminate\Support\Facades\Auth;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class General extends Component
@@ -17,40 +17,40 @@ class General extends Component
public StandaloneKeydb $database;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $name;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $description = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $keydbConf = null;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $keydbPassword;
#[Rule(['required', 'string'])]
#[Validate(['required', 'string'])]
public string $image;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $portsMappings = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public ?bool $isPublic = null;
#[Rule(['nullable', 'integer'])]
#[Validate(['nullable', 'integer'])]
public ?int $publicPort = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $customDockerRunOptions = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrl = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $dbUrlPublic = null;
#[Rule(['nullable', 'boolean'])]
#[Validate(['nullable', 'boolean'])]
public bool $isLogDrainEnabled = false;
public function getListeners()

View File

@@ -3,17 +3,17 @@
namespace App\Livewire\Project;
use App\Models\Project;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Edit extends Component
{
public Project $project;
#[Rule(['required', 'string', 'min:3', 'max:255'])]
#[Validate(['required', 'string', 'min:3', 'max:255'])]
public string $name;
#[Rule(['nullable', 'string', 'max:255'])]
#[Validate(['nullable', 'string', 'max:255'])]
public ?string $description = null;
public function mount(string $project_uuid)

View File

@@ -5,7 +5,7 @@ namespace App\Livewire\Project;
use App\Models\Application;
use App\Models\Project;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class EnvironmentEdit extends Component
@@ -17,10 +17,10 @@ class EnvironmentEdit extends Component
#[Locked]
public $environment;
#[Rule(['required', 'string', 'min:3', 'max:255'])]
#[Validate(['required', 'string', 'min:3', 'max:255'])]
public string $name;
#[Rule(['nullable', 'string', 'max:255'])]
#[Validate(['nullable', 'string', 'max:255'])]
public ?string $description = null;
public function mount(string $project_uuid, string $environment_name)

View File

@@ -4,17 +4,17 @@ namespace App\Livewire\Project;
use App\Models\Environment;
use App\Models\Project;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Show extends Component
{
public Project $project;
#[Rule(['required', 'string', 'min:3'])]
#[Validate(['required', 'string', 'min:3'])]
public string $name;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $description = null;
public function mount(string $project_uuid)

View File

@@ -4,7 +4,7 @@ namespace App\Livewire\Server;
use App\Jobs\DockerCleanupJob;
use App\Models\Server;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Advanced extends Component
@@ -13,28 +13,28 @@ class Advanced extends Component
public array $parameters = [];
#[Rule(['integer', 'min:1'])]
#[Validate(['integer', 'min:1'])]
public int $concurrentBuilds = 1;
#[Rule(['integer', 'min:1'])]
#[Validate(['integer', 'min:1'])]
public int $dynamicTimeout = 1;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $forceDockerCleanup = false;
#[Rule('string')]
#[Validate('string')]
public string $dockerCleanupFrequency = '*/10 * * * *';
#[Rule(['integer', 'min:1', 'max:99'])]
#[Validate(['integer', 'min:1', 'max:99'])]
public int $dockerCleanupThreshold = 10;
#[Rule(['integer', 'min:1', 'max:99'])]
#[Validate(['integer', 'min:1', 'max:99'])]
public int $serverDiskUsageNotificationThreshold = 50;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $deleteUnusedVolumes = false;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $deleteUnusedNetworks = false;
public function mount(string $server_uuid)

View File

@@ -3,14 +3,14 @@
namespace App\Livewire\Server;
use App\Models\Server;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class CloudflareTunnels extends Component
{
public Server $server;
#[Rule(['required', 'boolean'])]
#[Validate(['required', 'boolean'])]
public bool $isCloudflareTunnelsEnabled;
public function mount(string $server_uuid)

View File

@@ -5,38 +5,38 @@ namespace App\Livewire\Server;
use App\Actions\Server\StartLogDrain;
use App\Actions\Server\StopLogDrain;
use App\Models\Server;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class LogDrains extends Component
{
public Server $server;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $isLogDrainNewRelicEnabled = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $isLogDrainCustomEnabled = false;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $isLogDrainAxiomEnabled = false;
#[Rule(['string', 'nullable'])]
#[Validate(['string', 'nullable'])]
public ?string $logDrainNewRelicLicenseKey = null;
#[Rule(['url', 'nullable'])]
#[Validate(['url', 'nullable'])]
public ?string $logDrainNewRelicBaseUri = null;
#[Rule(['string', 'nullable'])]
#[Validate(['string', 'nullable'])]
public ?string $logDrainAxiomDatasetName = null;
#[Rule(['string', 'nullable'])]
#[Validate(['string', 'nullable'])]
public ?string $logDrainAxiomApiKey = null;
#[Rule(['string', 'nullable'])]
#[Validate(['string', 'nullable'])]
public ?string $logDrainCustomConfig = null;
#[Rule(['string', 'nullable'])]
#[Validate(['string', 'nullable'])]
public ?string $logDrainCustomConfigParser = null;
public function mount(string $server_uuid)

View File

@@ -5,77 +5,77 @@ namespace App\Livewire\Server;
use App\Actions\Server\StartSentinel;
use App\Actions\Server\StopSentinel;
use App\Models\Server;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Show extends Component
{
public Server $server;
#[Rule(['required'])]
#[Validate(['required'])]
public string $name;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $description;
#[Rule(['required'])]
#[Validate(['required'])]
public string $ip;
#[Rule(['required'])]
#[Validate(['required'])]
public string $user;
#[Rule(['required'])]
#[Validate(['required'])]
public string $port;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $validationLogs = null;
#[Rule(['nullable', 'url'])]
#[Validate(['nullable', 'url'])]
public ?string $wildcardDomain;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isReachable;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isUsable;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isSwarmManager;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isSwarmWorker;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isBuildServer;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isMetricsEnabled;
#[Rule(['required'])]
#[Validate(['required'])]
public string $sentinelToken;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $sentinelUpdatedAt;
#[Rule(['required', 'integer', 'min:1'])]
#[Validate(['required', 'integer', 'min:1'])]
public int $sentinelMetricsRefreshRateSeconds;
#[Rule(['required', 'integer', 'min:1'])]
#[Validate(['required', 'integer', 'min:1'])]
public int $sentinelMetricsHistoryDays;
#[Rule(['required', 'integer', 'min:10'])]
#[Validate(['required', 'integer', 'min:10'])]
public int $sentinelPushIntervalSeconds;
#[Rule(['nullable', 'url'])]
#[Validate(['nullable', 'url'])]
public ?string $sentinelCustomUrl;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isSentinelEnabled;
#[Rule(['required'])]
#[Validate(['required'])]
public bool $isSentinelDebugEnabled;
#[Rule(['required'])]
#[Validate(['required'])]
public string $serverTimezone;
public array $timezones;

View File

@@ -8,7 +8,7 @@ use App\Models\Server;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class Index extends Component
@@ -20,58 +20,58 @@ class Index extends Component
#[Locked]
public $timezones;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $is_auto_update_enabled;
#[Rule('nullable|string|max:255')]
#[Validate('nullable|string|max:255')]
public ?string $fqdn = null;
#[Rule('nullable|string|max:255')]
#[Validate('nullable|string|max:255')]
public ?string $resale_license = null;
#[Rule('required|integer|min:1025|max:65535')]
#[Validate('required|integer|min:1025|max:65535')]
public int $public_port_min;
#[Rule('required|integer|min:1025|max:65535')]
#[Validate('required|integer|min:1025|max:65535')]
public int $public_port_max;
#[Rule('nullable|string')]
#[Validate('nullable|string')]
public ?string $custom_dns_servers = null;
#[Rule('nullable|string|max:255')]
#[Validate('nullable|string|max:255')]
public ?string $instance_name = null;
#[Rule('nullable|string')]
#[Validate('nullable|string')]
public ?string $allowed_ips = null;
#[Rule('nullable|string')]
#[Validate('nullable|string')]
public ?string $public_ipv4 = null;
#[Rule('nullable|string')]
#[Validate('nullable|string')]
public ?string $public_ipv6 = null;
#[Rule('string')]
#[Validate('string')]
public string $auto_update_frequency;
#[Rule('string')]
#[Validate('string')]
public string $update_check_frequency;
#[Rule('required|string|timezone')]
#[Validate('required|string|timezone')]
public string $instance_timezone;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $do_not_track;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $is_registration_enabled;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $is_dns_validation_enabled;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $is_api_enabled;
#[Rule('boolean')]
#[Validate('boolean')]
public bool $disable_two_step_confirmation;
public function render()

View File

@@ -8,7 +8,7 @@ use App\Models\ScheduledDatabaseBackup;
use App\Models\Server;
use App\Models\StandalonePostgresql;
use Livewire\Attributes\Locked;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class SettingsBackup extends Component
@@ -25,19 +25,19 @@ class SettingsBackup extends Component
#[Locked]
public $executions = [];
#[Rule(['required'])]
#[Validate(['required'])]
public string $uuid;
#[Rule(['required'])]
#[Validate(['required'])]
public string $name;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $description = null;
#[Rule(['required'])]
#[Validate(['required'])]
public string $postgres_user;
#[Rule(['required'])]
#[Validate(['required'])]
public string $postgres_password;
public function mount()

View File

@@ -3,44 +3,44 @@
namespace App\Livewire;
use App\Models\InstanceSettings;
use Livewire\Attributes\Rule;
use Livewire\Attributes\Validate;
use Livewire\Component;
class SettingsEmail extends Component
{
public InstanceSettings $settings;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $smtpEnabled = false;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $smtpHost = null;
#[Rule(['nullable', 'numeric', 'min:1', 'max:65535'])]
#[Validate(['nullable', 'numeric', 'min:1', 'max:65535'])]
public ?int $smtpPort = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $smtpEncryption = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $smtpUsername = null;
#[Rule(['nullable'])]
#[Validate(['nullable'])]
public ?string $smtpPassword = null;
#[Rule(['nullable', 'numeric'])]
#[Validate(['nullable', 'numeric'])]
public ?int $smtpTimeout = null;
#[Rule(['nullable', 'email'])]
#[Validate(['nullable', 'email'])]
public ?string $smtpFromAddress = null;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $smtpFromName = null;
#[Rule(['boolean'])]
#[Validate(['boolean'])]
public bool $resendEnabled = false;
#[Rule(['nullable', 'string'])]
#[Validate(['nullable', 'string'])]
public ?string $resendApiKey = null;
public function mount()