woah
This commit is contained in:
@@ -1,8 +1,17 @@
|
||||
<x-layout>
|
||||
<h1 class="pb-2">Command Center</h1>
|
||||
<h1>Command Center</h1>
|
||||
<div class="pb-10 text-sm breadcrumbs">
|
||||
<ul>
|
||||
<li>
|
||||
Execute commands on your servers without leaving the browser.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
@if ($servers->count() > 0)
|
||||
<livewire:run-command :servers="$servers" />
|
||||
@else
|
||||
<div>No validated servers found.</div>
|
||||
<div>No validated servers found.
|
||||
<x-use-magic-bar />
|
||||
</div>
|
||||
@endif
|
||||
</x-layout>
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
</li>
|
||||
|
||||
|
||||
@if (auth()->user()->isPartOfRootTeam())
|
||||
@if (auth()->user()->isAdmin())
|
||||
<li title="Command Center">
|
||||
<a class="hover:bg-transparent" @if (!request()->is('command-center')) href="/command-center" @endif>
|
||||
<svg xmlns="http://www.w3.org/2000/svg"
|
||||
|
||||
2
resources/views/components/use-magic-bar.blade.php
Normal file
2
resources/views/components/use-magic-bar.blade.php
Normal file
@@ -0,0 +1,2 @@
|
||||
Use the magic
|
||||
bar (press <span class="kbd-custom">/</span>) to create a new one.
|
||||
@@ -1,7 +1,11 @@
|
||||
<x-layout>
|
||||
<h1 class="pb-2">Dashboard</h1>
|
||||
<div class="pb-10 text-sm">
|
||||
Something (more) useful will be here.
|
||||
<h1>Dashboard</h1>
|
||||
<div class="pb-10 text-sm breadcrumbs">
|
||||
<ul>
|
||||
<li>
|
||||
Something (more) useful will be here.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="w-full rounded shadow stats stats-vertical lg:stats-horizontal">
|
||||
<div class="stat">
|
||||
|
||||
@@ -1,5 +1,16 @@
|
||||
<x-layout>
|
||||
<div class="flex items-center justify-center">
|
||||
<div><a class="underline" href="{{ route('dashboard') }}">Go home</a></div>
|
||||
</div>
|
||||
<main class="grid min-h-full px-6 place-items-center lg:px-8">
|
||||
<div class="text-center">
|
||||
<p class="text-6xl font-semibold text-warning">404</p>
|
||||
<h1 class="mt-4 text-3xl font-bold tracking-tight text-white sm:text-5xl">Page not found</h1>
|
||||
<p class="mt-6 text-base leading-7 text-neutral-300">Sorry, we couldn’t find the page you’re looking for.</p>
|
||||
<div class="flex items-center justify-center mt-10 gap-x-6">
|
||||
<a href="/"
|
||||
class="rounded-md bg-coollabs px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm hover:bg-coollabs-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600 hover:no-underline">Go
|
||||
back home</a>
|
||||
<a href="https://docs.coollabs.io/contact.html" class="text-sm font-semibold text-white">Contact support
|
||||
<span aria-hidden="true">→</span></a>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</x-layout>
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
<x-naked-modal show="deleteEnvironment" message='Are you sure you would like to delete this environment?' />
|
||||
@if ($resource_count > 0)
|
||||
<x-forms.button tooltip="First delete all resources." disabled>
|
||||
Delete
|
||||
Delete Environment
|
||||
</x-forms.button>
|
||||
@else
|
||||
<x-forms.button x-on:click.prevent="deleteEnvironment = true">
|
||||
Delete
|
||||
Delete Environment
|
||||
</x-forms.button>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
<x-naked-modal show="deleteProject" message='Are you sure you would like to delete this project?' />
|
||||
@if ($resource_count > 0)
|
||||
<x-forms.button disabled="First delete all resources.">
|
||||
Delete
|
||||
Delete Project
|
||||
</x-forms.button>
|
||||
@else
|
||||
<x-forms.button x-on:click.prevent="deleteProject = true">
|
||||
Delete
|
||||
Delete Project
|
||||
</x-forms.button>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
<div>
|
||||
<div class="pb-4 text-sm">Outputs are not saved at the moment, only available until you refresh or navigate.</div>
|
||||
<form class="flex items-end justify-center gap-2" wire:submit.prevent='runCommand'>
|
||||
<x-forms.input placeholder="ls -l" autofocus noDirty id="command" label="Command" required />
|
||||
<x-forms.select label="Server" id="server" required>
|
||||
|
||||
@@ -9,9 +9,16 @@
|
||||
Delete
|
||||
</x-forms.button>
|
||||
@endif
|
||||
@if (!$server->settings->is_validated)
|
||||
<div class="w-full">
|
||||
<x-forms.button isHighlighted wire:click.prevent='validateServer'>
|
||||
Validate Server
|
||||
</x-forms.button>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
<div class="flex flex-col gap-2 xl:flex-row">
|
||||
<div class="flex flex-col w-96">
|
||||
<div class="flex flex-col w-full">
|
||||
@if ($server->id === 0)
|
||||
<x-forms.input id="server.name" label="Name" readonly required />
|
||||
<x-forms.input id="server.description" label="Description" readonly />
|
||||
@@ -23,7 +30,7 @@
|
||||
{{-- <x-forms.checkbox disabled type="checkbox" id="server.settings.is_part_of_swarm"
|
||||
label="Is it part of a Swarm cluster?" /> --}}
|
||||
</div>
|
||||
<div class="flex flex-col">
|
||||
<div class="flex flex-col w-full">
|
||||
@if ($server->id === 0)
|
||||
<x-forms.input id="server.ip" label="IP Address" readonly required />
|
||||
<x-forms.input id="server.user" label="User" readonly required />
|
||||
@@ -37,13 +44,7 @@
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@if (!$server->settings->is_validated)
|
||||
<div class="w-full pt-4">
|
||||
<x-forms.button isHighlighted wire:click.prevent='validateServer'>
|
||||
Validate Server
|
||||
</x-forms.button>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($server->settings->is_validated)
|
||||
<h3 class="pt-8 pb-4">Quick Actions</h3>
|
||||
<div class="flex items-center gap-2">
|
||||
@@ -53,17 +54,18 @@
|
||||
{{-- <x-forms.button wire:click.prevent='installDocker'>Install Docker</x-forms.button> --}}
|
||||
</div>
|
||||
@endif
|
||||
<div class="pt-3 text-sm">
|
||||
@isset($uptime)
|
||||
@isset($uptime)
|
||||
<h3>Server Info</h3>
|
||||
<div class="pt-3 text-sm">
|
||||
<p>Uptime: {{ $uptime }}</p>
|
||||
@endisset
|
||||
@isset($dockerVersion)
|
||||
<p>Docker Engine {{ $dockerVersion }}</p>
|
||||
@endisset
|
||||
@isset($dockerComposeVersion)
|
||||
<p>{{ $dockerComposeVersion }}</p>
|
||||
@endisset
|
||||
</div>
|
||||
@isset($dockerVersion)
|
||||
<p>Docker Engine {{ $dockerVersion }}</p>
|
||||
@endisset
|
||||
@isset($dockerComposeVersion)
|
||||
<p>{{ $dockerComposeVersion }}</p>
|
||||
@endisset
|
||||
</div>
|
||||
@endisset
|
||||
</form>
|
||||
<div class="flex items-center gap-2 py-4">
|
||||
<h3>Private Key</h3>
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
<div>
|
||||
<form class="flex flex-col gap-1" wire:submit.prevent='submit'>
|
||||
<div class="flex items-center gap-2">
|
||||
<h1>New Server</h1>
|
||||
<x-forms.button type="submit">
|
||||
Save
|
||||
</x-forms.button>
|
||||
</div>
|
||||
<h1>New Server</h1>
|
||||
<x-forms.input id="name" label="Name" required />
|
||||
<x-forms.input id="description" label="Description" />
|
||||
<x-forms.input id="ip" label="IP Address" required
|
||||
@@ -24,6 +19,8 @@
|
||||
@endforeach
|
||||
</x-forms.select>
|
||||
<x-forms.checkbox instantSave noDirty id="is_part_of_swarm" label="Is it part of a Swarm cluster?" />
|
||||
|
||||
<x-forms.button type="submit">
|
||||
Save
|
||||
</x-forms.button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<div class="flex flex-wrap gap-2">
|
||||
<div class="grid grid-cols-2">
|
||||
@forelse ($private_keys as $private_key)
|
||||
<div class="w-64 box">
|
||||
<button wire:click='setPrivateKey({{ $private_key->id }})'>{{ $private_key->name }}
|
||||
</button>
|
||||
</div>
|
||||
<x-forms.button wire:click='setPrivateKey({{ $private_key->id }})'>{{ $private_key->name }}
|
||||
</x-forms.button>
|
||||
@empty
|
||||
<p>No private keys found</p>
|
||||
<div>No private keys found.
|
||||
<x-use-magic-bar />
|
||||
</div>
|
||||
@endforelse
|
||||
</div>
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
<div>
|
||||
<form wire:submit.prevent='submit' class="flex flex-col">
|
||||
<h1>Settings</h1>
|
||||
<div class="pt-2 pb-4 text-sm">Instance wide settings for Coolify. </div>
|
||||
<div class="pb-10 text-sm breadcrumbs">
|
||||
<ul>
|
||||
<li>
|
||||
Instance wide settings for Coolify.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="flex items-center gap-2">
|
||||
<h3>General</h3>
|
||||
<x-forms.button type="submit">
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<x-layout>
|
||||
<h1>New Private Key</h1>
|
||||
<h1>Add Private Key</h1>
|
||||
<livewire:private-key.create />
|
||||
</x-layout>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
@if ($environment->applications->count() === 0)
|
||||
<p>No resources found.</p>
|
||||
@endif
|
||||
<div class="flex flex-col gap-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
@foreach ($environment->applications->sortBy('name') as $application)
|
||||
<a class="box"
|
||||
href="{{ route('project.application.configuration', [$project->uuid, $environment->name, $application->uuid]) }}">
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<li>{{ $project->name }} </li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="flex flex-col gap-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
@forelse ($project->environments as $environment)
|
||||
<a class="box" href="{{ route('project.resources', [$project->uuid, $environment->name]) }}">
|
||||
{{ $environment->name }}
|
||||
|
||||
@@ -7,15 +7,14 @@
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="flex flex-col gap-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
@forelse ($projects as $project)
|
||||
<a href="{{ route('project.show', ['project_uuid' => data_get($project, 'uuid')]) }}"
|
||||
class="box">{{ $project->name }}</a>
|
||||
@empty
|
||||
<div>
|
||||
No project found. Use the magic
|
||||
bar (press <span class="kbd-custom">/</span>) to create a new
|
||||
project.
|
||||
No project found.
|
||||
<x-use-magic-bar />
|
||||
</div>
|
||||
<div>
|
||||
If you do not have a project yet, just create a resource (application, database, etc.) first, it will
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<x-layout>
|
||||
<h1 class="py-0">Servers</h1>
|
||||
<h1>Servers</h1>
|
||||
<div class="pb-10 text-sm breadcrumbs">
|
||||
<ul>
|
||||
<li>
|
||||
@@ -7,7 +7,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="grid grid-cols-2">
|
||||
<div class="grid grid-cols-2 gap-2">
|
||||
@forelse ($servers as $server)
|
||||
<a class="text-center hover:no-underline box group"
|
||||
href="{{ route('server.show', ['server_uuid' => data_get($server, 'uuid')]) }}">
|
||||
@@ -21,7 +21,7 @@
|
||||
@empty
|
||||
<div class="flex flex-col">
|
||||
<div>Without a server, you won't be able to do much.</div>
|
||||
<div>Let's <a class="text-lg underline text-warning" href="{{ route('server.new') }}">create</a> your
|
||||
<div>Let's <a class="text-lg underline text-warning" href="{{ route('server.create') }}">create</a> your
|
||||
first one.</div>
|
||||
</div>
|
||||
@endforelse
|
||||
@@ -1,4 +1,4 @@
|
||||
<x-layout>
|
||||
<h1>Select a private Key</h1>
|
||||
<h1 class="pb-2">Select a private Key</h1>
|
||||
<livewire:server.private-key />
|
||||
</x-layout>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<livewire:settings.email :settings="$settings" />
|
||||
|
||||
<h3 class='pb-4'>Actions</h3>
|
||||
@if (auth()->user()->isPartOfRootTeam())
|
||||
@if (auth()->user()->isAdmin())
|
||||
<livewire:force-upgrade />
|
||||
@endif
|
||||
</x-layout>
|
||||
|
||||
Reference in New Issue
Block a user