Ajustes varios de permisos y visuales
This commit is contained in:
2587
.phpstorm.meta.php
2587
.phpstorm.meta.php
File diff suppressed because it is too large
Load Diff
@@ -5,7 +5,7 @@
|
||||
|
||||
/**
|
||||
* A helper file for Laravel, to provide autocomplete information to your IDE
|
||||
* Generated for Laravel 11.37.0.
|
||||
* Generated for Laravel 11.40.0.
|
||||
*
|
||||
* This file should not be included in your code, only analyzed by your IDE!
|
||||
*
|
||||
@@ -4765,9 +4765,9 @@ namespace Illuminate\Support\Facades {
|
||||
*
|
||||
* @template TCacheValue
|
||||
* @param string $key
|
||||
* @param \Illuminate\Cache\array{ 0: \DateTimeInterface|\DateInterval|int, 1: \DateTimeInterface|\DateInterval|int } $ttl
|
||||
* @param array{ 0: \DateTimeInterface|\DateInterval|int, 1: \DateTimeInterface|\DateInterval|int } $ttl
|
||||
* @param (callable(): TCacheValue) $callback
|
||||
* @param \Illuminate\Cache\array{ seconds?: int, owner?: string }|null $lock
|
||||
* @param array{ seconds?: int, owner?: string }|null $lock
|
||||
* @return TCacheValue
|
||||
* @static
|
||||
*/
|
||||
@@ -4850,6 +4850,18 @@ namespace Illuminate\Support\Facades {
|
||||
return $instance->tags($names);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the name of the cache store.
|
||||
*
|
||||
* @return string|null
|
||||
* @static
|
||||
*/
|
||||
public static function getName()
|
||||
{
|
||||
/** @var \Illuminate\Cache\Repository $instance */
|
||||
return $instance->getName();
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the current store supports tags.
|
||||
*
|
||||
@@ -14322,7 +14334,7 @@ namespace Illuminate\Support\Facades {
|
||||
*
|
||||
*
|
||||
* @internal
|
||||
* @param \Symfony\Component\HttpFoundation\callable(): SessionInterface $factory
|
||||
* @param callable(): SessionInterface $factory
|
||||
* @static
|
||||
*/
|
||||
public static function setSessionFactory($factory)
|
||||
@@ -15794,6 +15806,19 @@ namespace Illuminate\Support\Facades {
|
||||
return $instance->enums($key, $enumClass);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve data from the instance as an array.
|
||||
*
|
||||
* @param array|string|null $key
|
||||
* @return array
|
||||
* @static
|
||||
*/
|
||||
public static function array($key = null)
|
||||
{
|
||||
/** @var \Illuminate\Http\Request $instance */
|
||||
return $instance->array($key);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve data from the instance as a collection.
|
||||
*
|
||||
@@ -22161,7 +22186,7 @@ namespace Illuminate\Support\Facades {
|
||||
/**
|
||||
* Set the prefetching strategy.
|
||||
*
|
||||
* @param \Illuminate\Foundation\'waterfall'|\Illuminate\Foundation\'aggressive'|null $strategy
|
||||
* @param 'waterfall'|'aggressive'|null $strategy
|
||||
* @param array $config
|
||||
* @return \Illuminate\Foundation\Vite
|
||||
* @static
|
||||
@@ -22640,7 +22665,7 @@ namespace Barryvdh\Debugbar\Facades {
|
||||
/**
|
||||
* Returns an array of all data collectors
|
||||
*
|
||||
* @return \DebugBar\array[DataCollectorInterface]
|
||||
* @return array[DataCollectorInterface]
|
||||
* @static
|
||||
*/
|
||||
public static function getCollectors()
|
||||
@@ -24231,6 +24256,23 @@ namespace {
|
||||
return $instance->updateOrCreate($attributes, $values);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a record matching the attributes, or increment the existing record.
|
||||
*
|
||||
* @param array $attributes
|
||||
* @param string $column
|
||||
* @param int|float $default
|
||||
* @param int|float $step
|
||||
* @param array $extra
|
||||
* @return TModel
|
||||
* @static
|
||||
*/
|
||||
public static function incrementOrCreate($attributes, $column = 'count', $default = 1, $step = 1, $extra = [])
|
||||
{
|
||||
/** @var \Illuminate\Database\Eloquent\Builder $instance */
|
||||
return $instance->incrementOrCreate($attributes, $column, $default, $step, $extra);
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the query and get the first result or throw an exception.
|
||||
*
|
||||
@@ -24602,6 +24644,22 @@ namespace {
|
||||
return $instance->newModelInstance($attributes);
|
||||
}
|
||||
|
||||
/**
|
||||
* Specify attributes that should be added to any new models created by this builder.
|
||||
*
|
||||
* The given key / value pairs will also be added as where conditions to the query.
|
||||
*
|
||||
* @param \Illuminate\Contracts\Database\Query\Expression|array|string $attributes
|
||||
* @param mixed $value
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
public static function withAttributes($attributes, $value = null)
|
||||
{
|
||||
/** @var \Illuminate\Database\Eloquent\Builder $instance */
|
||||
return $instance->withAttributes($attributes, $value);
|
||||
}
|
||||
|
||||
/**
|
||||
* Apply query-time casts to the model instance.
|
||||
*
|
||||
@@ -24808,7 +24866,7 @@ namespace {
|
||||
* Chunk the results of the query.
|
||||
*
|
||||
* @param int $count
|
||||
* @param \Illuminate\Database\Eloquent\callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @return bool
|
||||
* @static
|
||||
*/
|
||||
@@ -24822,7 +24880,7 @@ namespace {
|
||||
* Run a map over each item while chunking.
|
||||
*
|
||||
* @template TReturn
|
||||
* @param \Illuminate\Database\Eloquent\callable(TValue): TReturn $callback
|
||||
* @param callable(TValue): TReturn $callback
|
||||
* @param int $count
|
||||
* @return \Illuminate\Support\Collection<int, TReturn>
|
||||
* @static
|
||||
@@ -24836,7 +24894,7 @@ namespace {
|
||||
/**
|
||||
* Execute a callback over each item while chunking.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\callable(TValue, int): mixed $callback
|
||||
* @param callable(TValue, int): mixed $callback
|
||||
* @param int $count
|
||||
* @return bool
|
||||
* @throws \RuntimeException
|
||||
@@ -24852,7 +24910,7 @@ namespace {
|
||||
* Chunk the results of a query by comparing IDs.
|
||||
*
|
||||
* @param int $count
|
||||
* @param \Illuminate\Database\Eloquent\callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param string|null $column
|
||||
* @param string|null $alias
|
||||
* @return bool
|
||||
@@ -24868,7 +24926,7 @@ namespace {
|
||||
* Chunk the results of a query by comparing IDs in descending order.
|
||||
*
|
||||
* @param int $count
|
||||
* @param \Illuminate\Database\Eloquent\callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param string|null $column
|
||||
* @param string|null $alias
|
||||
* @return bool
|
||||
@@ -24884,7 +24942,7 @@ namespace {
|
||||
* Chunk the results of a query by comparing IDs in a given order.
|
||||
*
|
||||
* @param int $count
|
||||
* @param \Illuminate\Database\Eloquent\callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param callable(\Illuminate\Support\Collection<int, TValue>, int): mixed $callback
|
||||
* @param string|null $column
|
||||
* @param string|null $alias
|
||||
* @param bool $descending
|
||||
@@ -24901,7 +24959,7 @@ namespace {
|
||||
/**
|
||||
* Execute a callback over each item while chunking by ID.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\callable(TValue, int): mixed $callback
|
||||
* @param callable(TValue, int): mixed $callback
|
||||
* @param int $count
|
||||
* @param string|null $column
|
||||
* @param string|null $alias
|
||||
@@ -24991,7 +25049,7 @@ namespace {
|
||||
/**
|
||||
* Pass the query to a given callback.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\callable($this): mixed $callback
|
||||
* @param callable($this): mixed $callback
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
@@ -25438,7 +25496,7 @@ namespace {
|
||||
* Add a morph-to relationship condition to the query.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\Relations\MorphTo<*, *>|string $relation
|
||||
* @param \Illuminate\Database\Eloquent\Model|string|null $model
|
||||
* @param \Illuminate\Database\Eloquent\Model|iterable<int, \Illuminate\Database\Eloquent\Model>|string|null $model
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
@@ -25452,7 +25510,7 @@ namespace {
|
||||
* Add a not morph-to relationship condition to the query.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\Relations\MorphTo<*, *>|string $relation
|
||||
* @param \Illuminate\Database\Eloquent\Model|string $model
|
||||
* @param \Illuminate\Database\Eloquent\Model|iterable<int, \Illuminate\Database\Eloquent\Model>|string $model
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
@@ -25466,7 +25524,7 @@ namespace {
|
||||
* Add a morph-to relationship condition to the query with an "or where" clause.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\Relations\MorphTo<*, *>|string $relation
|
||||
* @param \Illuminate\Database\Eloquent\Model|string|null $model
|
||||
* @param \Illuminate\Database\Eloquent\Model|iterable<int, \Illuminate\Database\Eloquent\Model>|string|null $model
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
@@ -25480,7 +25538,7 @@ namespace {
|
||||
* Add a not morph-to relationship condition to the query with an "or where" clause.
|
||||
*
|
||||
* @param \Illuminate\Database\Eloquent\Relations\MorphTo<*, *>|string $relation
|
||||
* @param \Illuminate\Database\Eloquent\Model|string $model
|
||||
* @param \Illuminate\Database\Eloquent\Model|iterable<int, \Illuminate\Database\Eloquent\Model>|string $model
|
||||
* @return \Illuminate\Database\Eloquent\Builder<static>
|
||||
* @static
|
||||
*/
|
||||
|
||||
33
app/Console/Commands/CreateAdmin.php
Normal file
33
app/Console/Commands/CreateAdmin.php
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use App\Enums\RoleName;
|
||||
use App\Models\Role;
|
||||
use App\Models\User;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Contracts\Console\PromptsForMissingInput;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class CreateAdmin extends Command implements PromptsForMissingInput
|
||||
{
|
||||
protected $signature = 'app:create-admin {user : E-Mail for the admin account} {password : Password for the admin account}';
|
||||
protected $description = 'Creates a super admin for the system';
|
||||
|
||||
public function handle(): void
|
||||
{
|
||||
$user = $this->argument('user');
|
||||
$password = $this->argument('password');
|
||||
|
||||
$user = User::create([
|
||||
'name' => $user,
|
||||
'email' => $user,
|
||||
'password' => Hash::make($password),
|
||||
]);
|
||||
|
||||
$role = Role::where('name', RoleName::SuperAdmin)->first();
|
||||
$user->roles()->attach($role);
|
||||
|
||||
$this->info("Admin account created");
|
||||
}
|
||||
}
|
||||
@@ -58,7 +58,7 @@ class ResetPassword extends Component
|
||||
);
|
||||
|
||||
if ($status === Password::PASSWORD_RESET) {
|
||||
Session::flash('toast', ['type' => 'success', 'message' => __($status)]);
|
||||
$this->toast()->success("Éxito", __($status))->flash()->send();
|
||||
$this->redirectRoute('login', navigate: true);
|
||||
} else {
|
||||
throw ValidationException::withMessages(['email' => __($status)]);
|
||||
|
||||
@@ -82,7 +82,7 @@ class Index extends Component
|
||||
'diez' => 0,
|
||||
]);
|
||||
|
||||
Session::flash('toast', ['type' => 'success', 'message' => 'Caja registrada correctamente']);
|
||||
$this->toast()->success("Éxito", "Caja registrada correctamente")->flash()->send();
|
||||
|
||||
$this->redirectRoute('cajas.edit', $turno, navigate: true);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ use App\Models\Role;
|
||||
use App\Models\User;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Support\Collection;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
use Illuminate\Validation\Rule;
|
||||
@@ -53,7 +54,7 @@ class Edit extends Component
|
||||
{
|
||||
return [
|
||||
'name' => 'required|string',
|
||||
'email' => ['required', 'email', Rule::unique('users', 'email')->ignore($this->user->id)],
|
||||
'email' => ['required', 'email', Rule::unique('users', 'email')->ignore($this->user?->id)],
|
||||
'password' => $this->change_password ? 'required|string|min:8|confirmed' : 'nullable|string|min:8|confirmed',
|
||||
'password_confirmation' => $this->change_password ? 'required' : 'nullable',
|
||||
'roles' => 'nullable',
|
||||
@@ -86,19 +87,26 @@ class Edit extends Component
|
||||
|
||||
$this->user->save();
|
||||
|
||||
$isSuperAdmin = $this->user->roles()->where('name', RoleName::SuperAdmin)->exists();
|
||||
$this->user->roles()->sync($this->roles);
|
||||
if ($isSuperAdmin) {
|
||||
$this->user->roles()->attach(Role::where('name', RoleName::SuperAdmin)->first()->id);
|
||||
$isSuperAdmin = $this->user->isAn(RoleName::SuperAdmin);
|
||||
if($isSuperAdmin) {
|
||||
$this->roles[] = Role::where('name', RoleName::SuperAdmin)->first()->id;
|
||||
}
|
||||
|
||||
Session::flash('toast', ['type' => 'success', 'message' => 'Usuario modificado correctamente']);
|
||||
$this->user->roles()->sync($this->roles);
|
||||
|
||||
$this->toast()->success("Éxito", "Usuario modificado correctamente")->flash()->send();
|
||||
}
|
||||
|
||||
public function store(): void
|
||||
{
|
||||
$this->authorize('create', User::class);
|
||||
|
||||
$superadmin = Role::whereName(RoleName::SuperAdmin)->first();
|
||||
|
||||
if(collect($this->roles)->contains($superadmin->id)) {
|
||||
Gate::authorize('create-super-admin', User::class);
|
||||
}
|
||||
|
||||
$user = User::create([
|
||||
'name' => $this->name,
|
||||
'email' => $this->email,
|
||||
@@ -107,12 +115,16 @@ class Edit extends Component
|
||||
|
||||
$user->roles()->sync($this->roles);
|
||||
|
||||
Session::flash('toast', ['type' => 'success', 'message' => 'Usuario registrado correctamente']);
|
||||
$this->toast()->success("Éxito", "Usuario registrado correctamente")->flash()->send();
|
||||
}
|
||||
|
||||
#[Computed]
|
||||
public function availableRoles(): Collection
|
||||
{
|
||||
return Role::whereNot('name', RoleName::SuperAdmin)->get();
|
||||
if(Gate::allows('create-super-admin', User::class)) {
|
||||
return Role::all();
|
||||
} else {
|
||||
return Role::whereNot('name', RoleName::SuperAdmin)->get();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,6 +51,7 @@ class Index extends Component
|
||||
return [
|
||||
['index' => 'name', 'label' => 'Nombre'],
|
||||
['index' => 'email', 'label' => 'Email'],
|
||||
['index' => 'roles', 'label' => 'Roles'],
|
||||
['index' => 'action', 'label' => 'Acciones'],
|
||||
];
|
||||
}
|
||||
@@ -58,6 +59,6 @@ class Index extends Component
|
||||
#[Computed]
|
||||
public function rows(): LengthAwarePaginator
|
||||
{
|
||||
return User::paginate();
|
||||
return User::filterSuperadmin()->with('roles')->paginate();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use App\Enums\RoleName;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Concerns\HasUlids;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
@@ -30,6 +32,23 @@ class User extends Authenticatable
|
||||
return $this->belongsToMany(Role::class, 'user_roles', 'user_id', 'role_id');
|
||||
}
|
||||
|
||||
public function isAn(...$roles): bool
|
||||
{
|
||||
return $this->roles()->whereIn('name', $roles)->exists();
|
||||
}
|
||||
|
||||
public function scopeFilterSuperadmin(Builder $query) {
|
||||
if(!auth()->check()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!auth()->user()->isAn(RoleName::SuperAdmin)) {
|
||||
$query->whereDoesntHave('roles', function (Builder $builder) {
|
||||
$builder->where('name', RoleName::SuperAdmin);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@@ -10,68 +10,65 @@ class UserPolicy
|
||||
{
|
||||
public function before(User $user, string $ability): bool|null
|
||||
{
|
||||
$isAdmin = $user->roles()->whereIn('name', [RoleName::SuperAdmin, RoleName::Admin])->exists();
|
||||
|
||||
if (!$isAdmin) {
|
||||
if (!$user->isAn(RoleName::SuperAdmin, RoleName::Admin)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can view any models.
|
||||
*/
|
||||
public function viewAny(User $user): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can view the model.
|
||||
*/
|
||||
public function view(User $user, User $model): bool
|
||||
{
|
||||
if($model->isAn(RoleName::SuperAdmin)) {
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can create models.
|
||||
*/
|
||||
public function create(User $user): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can update the model.
|
||||
*/
|
||||
public function createSuperAdmin(User $user): bool
|
||||
{
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
|
||||
public function update(User $user, User $model): bool
|
||||
{
|
||||
if($model->isAn(RoleName::SuperAdmin)) {
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can delete the model.
|
||||
*/
|
||||
public function delete(User $user, User $model): bool
|
||||
{
|
||||
if($model->isAn(RoleName::SuperAdmin)) {
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can restore the model.
|
||||
*/
|
||||
public function restore(User $user, User $model): bool
|
||||
{
|
||||
if($model->isAn(RoleName::SuperAdmin)) {
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine whether the user can permanently delete the model.
|
||||
*/
|
||||
public function forceDelete(User $user, User $model): bool
|
||||
{
|
||||
if($model->isAn(RoleName::SuperAdmin)) {
|
||||
return $user->isAn(RoleName::SuperAdmin);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
186
composer.lock
generated
186
composer.lock
generated
@@ -2563,16 +2563,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel-lang/publisher",
|
||||
"version": "16.4.0",
|
||||
"version": "16.4.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/Laravel-Lang/publisher.git",
|
||||
"reference": "7812e7a07e6f2fdb7d258f3ab1d481d1cbf7f32c"
|
||||
"reference": "fc33816edbb13e9fd032243afd565efec265926d"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Laravel-Lang/publisher/zipball/7812e7a07e6f2fdb7d258f3ab1d481d1cbf7f32c",
|
||||
"reference": "7812e7a07e6f2fdb7d258f3ab1d481d1cbf7f32c",
|
||||
"url": "https://api.github.com/repos/Laravel-Lang/publisher/zipball/fc33816edbb13e9fd032243afd565efec265926d",
|
||||
"reference": "fc33816edbb13e9fd032243afd565efec265926d",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2657,7 +2657,7 @@
|
||||
"issues": "https://github.com/Laravel-Lang/publisher/issues",
|
||||
"source": "https://github.com/Laravel-Lang/publisher"
|
||||
},
|
||||
"time": "2024-06-02T00:22:33+00:00"
|
||||
"time": "2025-01-17T10:45:02+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel-lang/routes",
|
||||
@@ -2738,16 +2738,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/framework",
|
||||
"version": "v11.37.0",
|
||||
"version": "v11.40.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/framework.git",
|
||||
"reference": "6cb103d2024b087eae207654b3f4b26646119ba5"
|
||||
"reference": "599a28196d284fee158cc10086fd56ac625ad7a3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/6cb103d2024b087eae207654b3f4b26646119ba5",
|
||||
"reference": "6cb103d2024b087eae207654b3f4b26646119ba5",
|
||||
"url": "https://api.github.com/repos/laravel/framework/zipball/599a28196d284fee158cc10086fd56ac625ad7a3",
|
||||
"reference": "599a28196d284fee158cc10086fd56ac625ad7a3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -2773,7 +2773,7 @@
|
||||
"league/flysystem-local": "^3.25.1",
|
||||
"league/uri": "^7.5.1",
|
||||
"monolog/monolog": "^3.0",
|
||||
"nesbot/carbon": "^2.72.2|^3.4",
|
||||
"nesbot/carbon": "^2.72.6|^3.8.4",
|
||||
"nunomaduro/termwind": "^2.0",
|
||||
"php": "^8.2",
|
||||
"psr/container": "^1.1.1|^2.0.1",
|
||||
@@ -2848,6 +2848,7 @@
|
||||
"fakerphp/faker": "^1.24",
|
||||
"guzzlehttp/promises": "^2.0.3",
|
||||
"guzzlehttp/psr7": "^2.4",
|
||||
"laravel/pint": "^1.18",
|
||||
"league/flysystem-aws-s3-v3": "^3.25.1",
|
||||
"league/flysystem-ftp": "^3.25.1",
|
||||
"league/flysystem-path-prefixing": "^3.25.1",
|
||||
@@ -2948,7 +2949,7 @@
|
||||
"issues": "https://github.com/laravel/framework/issues",
|
||||
"source": "https://github.com/laravel/framework"
|
||||
},
|
||||
"time": "2025-01-02T20:10:21+00:00"
|
||||
"time": "2025-01-24T16:17:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/octane",
|
||||
@@ -3042,16 +3043,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/prompts",
|
||||
"version": "v0.3.2",
|
||||
"version": "v0.3.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/prompts.git",
|
||||
"reference": "0e0535747c6b8d6d10adca8b68293cf4517abb0f"
|
||||
"reference": "749395fcd5f8f7530fe1f00dfa84eb22c83d94ea"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/prompts/zipball/0e0535747c6b8d6d10adca8b68293cf4517abb0f",
|
||||
"reference": "0e0535747c6b8d6d10adca8b68293cf4517abb0f",
|
||||
"url": "https://api.github.com/repos/laravel/prompts/zipball/749395fcd5f8f7530fe1f00dfa84eb22c83d94ea",
|
||||
"reference": "749395fcd5f8f7530fe1f00dfa84eb22c83d94ea",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3095,9 +3096,9 @@
|
||||
"description": "Add beautiful and user-friendly forms to your command-line applications.",
|
||||
"support": {
|
||||
"issues": "https://github.com/laravel/prompts/issues",
|
||||
"source": "https://github.com/laravel/prompts/tree/v0.3.2"
|
||||
"source": "https://github.com/laravel/prompts/tree/v0.3.3"
|
||||
},
|
||||
"time": "2024-11-12T14:59:47+00:00"
|
||||
"time": "2024-12-30T15:53:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/serializable-closure",
|
||||
@@ -3162,16 +3163,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/telescope",
|
||||
"version": "v5.2.6",
|
||||
"version": "v5.3.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/telescope.git",
|
||||
"reference": "7ee46fbea8e3b01108575c8edf7377abddfe8bb9"
|
||||
"reference": "216fd8d41eb17b49469bea9359b4f0f711b882b3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/telescope/zipball/7ee46fbea8e3b01108575c8edf7377abddfe8bb9",
|
||||
"reference": "7ee46fbea8e3b01108575c8edf7377abddfe8bb9",
|
||||
"url": "https://api.github.com/repos/laravel/telescope/zipball/216fd8d41eb17b49469bea9359b4f0f711b882b3",
|
||||
"reference": "216fd8d41eb17b49469bea9359b4f0f711b882b3",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -3225,9 +3226,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/laravel/telescope/issues",
|
||||
"source": "https://github.com/laravel/telescope/tree/v5.2.6"
|
||||
"source": "https://github.com/laravel/telescope/tree/v5.3.0"
|
||||
},
|
||||
"time": "2024-11-25T20:34:58+00:00"
|
||||
"time": "2024-12-26T21:37:35+00:00"
|
||||
},
|
||||
{
|
||||
"name": "laravel/tinker",
|
||||
@@ -8032,16 +8033,16 @@
|
||||
},
|
||||
{
|
||||
"name": "barryvdh/laravel-ide-helper",
|
||||
"version": "v3.5.3",
|
||||
"version": "v3.5.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/barryvdh/laravel-ide-helper.git",
|
||||
"reference": "271682a2a6d57691e1c7ff378f44e4ae6ac2aba0"
|
||||
"reference": "980a87e250fc2a7558bc46e07f61c7594500ea53"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/271682a2a6d57691e1c7ff378f44e4ae6ac2aba0",
|
||||
"reference": "271682a2a6d57691e1c7ff378f44e4ae6ac2aba0",
|
||||
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/980a87e250fc2a7558bc46e07f61c7594500ea53",
|
||||
"reference": "980a87e250fc2a7558bc46e07f61c7594500ea53",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -8110,7 +8111,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/barryvdh/laravel-ide-helper/issues",
|
||||
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v3.5.3"
|
||||
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v3.5.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -8122,20 +8123,20 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2025-01-08T10:01:30+00:00"
|
||||
"time": "2025-01-14T09:07:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "barryvdh/reflection-docblock",
|
||||
"version": "v2.3.0",
|
||||
"version": "v2.3.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/barryvdh/ReflectionDocBlock.git",
|
||||
"reference": "818be8de6af4d16ef3ad51ea9234b3d37026ee5f"
|
||||
"reference": "b6ff9f93603561f50e53b64310495d20b8dff5d8"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/818be8de6af4d16ef3ad51ea9234b3d37026ee5f",
|
||||
"reference": "818be8de6af4d16ef3ad51ea9234b3d37026ee5f",
|
||||
"url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/b6ff9f93603561f50e53b64310495d20b8dff5d8",
|
||||
"reference": "b6ff9f93603561f50e53b64310495d20b8dff5d8",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -8172,9 +8173,9 @@
|
||||
}
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.3.0"
|
||||
"source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.3.1"
|
||||
},
|
||||
"time": "2024-12-30T10:35:04+00:00"
|
||||
"time": "2025-01-18T19:26:32+00:00"
|
||||
},
|
||||
{
|
||||
"name": "brianium/paratest",
|
||||
@@ -8440,16 +8441,16 @@
|
||||
},
|
||||
{
|
||||
"name": "filp/whoops",
|
||||
"version": "2.16.0",
|
||||
"version": "2.17.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/filp/whoops.git",
|
||||
"reference": "befcdc0e5dce67252aa6322d82424be928214fa2"
|
||||
"reference": "075bc0c26631110584175de6523ab3f1652eb28e"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/filp/whoops/zipball/befcdc0e5dce67252aa6322d82424be928214fa2",
|
||||
"reference": "befcdc0e5dce67252aa6322d82424be928214fa2",
|
||||
"url": "https://api.github.com/repos/filp/whoops/zipball/075bc0c26631110584175de6523ab3f1652eb28e",
|
||||
"reference": "075bc0c26631110584175de6523ab3f1652eb28e",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -8499,7 +8500,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/filp/whoops/issues",
|
||||
"source": "https://github.com/filp/whoops/tree/2.16.0"
|
||||
"source": "https://github.com/filp/whoops/tree/2.17.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -8507,7 +8508,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-25T12:00:00+00:00"
|
||||
"time": "2025-01-25T12:00:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "hamcrest/hamcrest-php",
|
||||
@@ -8621,16 +8622,16 @@
|
||||
},
|
||||
{
|
||||
"name": "laravel/pint",
|
||||
"version": "v1.19.0",
|
||||
"version": "v1.20.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/laravel/pint.git",
|
||||
"reference": "8169513746e1bac70c85d6ea1524d9225d4886f0"
|
||||
"reference": "53072e8ea22213a7ed168a8a15b96fbb8b82d44b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/laravel/pint/zipball/8169513746e1bac70c85d6ea1524d9225d4886f0",
|
||||
"reference": "8169513746e1bac70c85d6ea1524d9225d4886f0",
|
||||
"url": "https://api.github.com/repos/laravel/pint/zipball/53072e8ea22213a7ed168a8a15b96fbb8b82d44b",
|
||||
"reference": "53072e8ea22213a7ed168a8a15b96fbb8b82d44b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -8683,7 +8684,7 @@
|
||||
"issues": "https://github.com/laravel/pint/issues",
|
||||
"source": "https://github.com/laravel/pint"
|
||||
},
|
||||
"time": "2024-12-30T16:20:10+00:00"
|
||||
"time": "2025-01-14T16:20:53+00:00"
|
||||
},
|
||||
{
|
||||
"name": "maximebf/debugbar",
|
||||
@@ -8898,37 +8899,37 @@
|
||||
},
|
||||
{
|
||||
"name": "nunomaduro/collision",
|
||||
"version": "v8.5.0",
|
||||
"version": "v8.6.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/nunomaduro/collision.git",
|
||||
"reference": "f5c101b929c958e849a633283adff296ed5f38f5"
|
||||
"reference": "86f003c132143d5a2ab214e19933946409e0cae7"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/nunomaduro/collision/zipball/f5c101b929c958e849a633283adff296ed5f38f5",
|
||||
"reference": "f5c101b929c958e849a633283adff296ed5f38f5",
|
||||
"url": "https://api.github.com/repos/nunomaduro/collision/zipball/86f003c132143d5a2ab214e19933946409e0cae7",
|
||||
"reference": "86f003c132143d5a2ab214e19933946409e0cae7",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"filp/whoops": "^2.16.0",
|
||||
"nunomaduro/termwind": "^2.1.0",
|
||||
"nunomaduro/termwind": "^2.3.0",
|
||||
"php": "^8.2.0",
|
||||
"symfony/console": "^7.1.5"
|
||||
"symfony/console": "^7.2.1"
|
||||
},
|
||||
"conflict": {
|
||||
"laravel/framework": "<11.0.0 || >=12.0.0",
|
||||
"phpunit/phpunit": "<10.5.1 || >=12.0.0"
|
||||
"laravel/framework": "<11.39.1 || >=13.0.0",
|
||||
"phpunit/phpunit": "<11.5.3 || >=12.0.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"larastan/larastan": "^2.9.8",
|
||||
"laravel/framework": "^11.28.0",
|
||||
"laravel/pint": "^1.18.1",
|
||||
"laravel/sail": "^1.36.0",
|
||||
"laravel/sanctum": "^4.0.3",
|
||||
"larastan/larastan": "^2.9.12",
|
||||
"laravel/framework": "^11.39.1",
|
||||
"laravel/pint": "^1.20.0",
|
||||
"laravel/sail": "^1.40.0",
|
||||
"laravel/sanctum": "^4.0.7",
|
||||
"laravel/tinker": "^2.10.0",
|
||||
"orchestra/testbench-core": "^9.5.3",
|
||||
"pestphp/pest": "^2.36.0 || ^3.4.0",
|
||||
"orchestra/testbench-core": "^9.9.2",
|
||||
"pestphp/pest": "^3.7.3",
|
||||
"sebastian/environment": "^6.1.0 || ^7.2.0"
|
||||
},
|
||||
"type": "library",
|
||||
@@ -8966,6 +8967,7 @@
|
||||
"cli",
|
||||
"command-line",
|
||||
"console",
|
||||
"dev",
|
||||
"error",
|
||||
"handling",
|
||||
"laravel",
|
||||
@@ -8991,41 +8993,41 @@
|
||||
"type": "patreon"
|
||||
}
|
||||
],
|
||||
"time": "2024-10-15T16:06:32+00:00"
|
||||
"time": "2025-01-23T13:41:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pestphp/pest",
|
||||
"version": "v3.7.1",
|
||||
"version": "v3.7.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/pestphp/pest.git",
|
||||
"reference": "bf3178473dcaa53b0458f21dfdb271306ea62512"
|
||||
"reference": "4a987d3d5c4e3ba36c76fecbf56113baac2d1b2b"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/pestphp/pest/zipball/bf3178473dcaa53b0458f21dfdb271306ea62512",
|
||||
"reference": "bf3178473dcaa53b0458f21dfdb271306ea62512",
|
||||
"url": "https://api.github.com/repos/pestphp/pest/zipball/4a987d3d5c4e3ba36c76fecbf56113baac2d1b2b",
|
||||
"reference": "4a987d3d5c4e3ba36c76fecbf56113baac2d1b2b",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"brianium/paratest": "^7.7.0",
|
||||
"nunomaduro/collision": "^8.5.0",
|
||||
"nunomaduro/collision": "^8.6.1",
|
||||
"nunomaduro/termwind": "^2.3.0",
|
||||
"pestphp/pest-plugin": "^3.0.0",
|
||||
"pestphp/pest-plugin-arch": "^3.0.0",
|
||||
"pestphp/pest-plugin-mutate": "^3.0.5",
|
||||
"php": "^8.2.0",
|
||||
"phpunit/phpunit": "^11.5.1"
|
||||
"phpunit/phpunit": "^11.5.3"
|
||||
},
|
||||
"conflict": {
|
||||
"filp/whoops": "<2.16.0",
|
||||
"phpunit/phpunit": ">11.5.1",
|
||||
"phpunit/phpunit": ">11.5.3",
|
||||
"sebastian/exporter": "<6.0.0",
|
||||
"webmozart/assert": "<1.11.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"pestphp/pest-dev-tools": "^3.3.0",
|
||||
"pestphp/pest-plugin-type-coverage": "^3.2.0",
|
||||
"pestphp/pest-plugin-type-coverage": "^3.2.3",
|
||||
"symfony/process": "^7.2.0"
|
||||
},
|
||||
"bin": [
|
||||
@@ -9091,7 +9093,7 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/pestphp/pest/issues",
|
||||
"source": "https://github.com/pestphp/pest/tree/v3.7.1"
|
||||
"source": "https://github.com/pestphp/pest/tree/v3.7.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -9103,7 +9105,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-12-12T11:52:01+00:00"
|
||||
"time": "2025-01-23T14:03:29+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pestphp/pest-plugin",
|
||||
@@ -9247,27 +9249,27 @@
|
||||
},
|
||||
{
|
||||
"name": "pestphp/pest-plugin-laravel",
|
||||
"version": "v3.0.0",
|
||||
"version": "v3.1.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/pestphp/pest-plugin-laravel.git",
|
||||
"reference": "7dd98c0c3b3542970ec21fce80ec5c88916ac469"
|
||||
"reference": "1c4e994476375c72aa7aebaaa97aa98f5d5378cd"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/pestphp/pest-plugin-laravel/zipball/7dd98c0c3b3542970ec21fce80ec5c88916ac469",
|
||||
"reference": "7dd98c0c3b3542970ec21fce80ec5c88916ac469",
|
||||
"url": "https://api.github.com/repos/pestphp/pest-plugin-laravel/zipball/1c4e994476375c72aa7aebaaa97aa98f5d5378cd",
|
||||
"reference": "1c4e994476375c72aa7aebaaa97aa98f5d5378cd",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"laravel/framework": "^11.22.0",
|
||||
"pestphp/pest": "^3.0.0",
|
||||
"laravel/framework": "^11.39.1|^12.0.0",
|
||||
"pestphp/pest": "^3.7.4",
|
||||
"php": "^8.2.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"laravel/dusk": "^8.2.5",
|
||||
"orchestra/testbench": "^9.4.0",
|
||||
"pestphp/pest-dev-tools": "^3.0.0"
|
||||
"laravel/dusk": "^8.2.13|dev-develop",
|
||||
"orchestra/testbench": "^9.9.0|^10.0.0",
|
||||
"pestphp/pest-dev-tools": "^3.3.0"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
@@ -9305,7 +9307,7 @@
|
||||
"unit"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/pestphp/pest-plugin-laravel/tree/v3.0.0"
|
||||
"source": "https://github.com/pestphp/pest-plugin-laravel/tree/v3.1.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -9317,7 +9319,7 @@
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-08T23:32:52+00:00"
|
||||
"time": "2025-01-24T13:22:39+00:00"
|
||||
},
|
||||
{
|
||||
"name": "pestphp/pest-plugin-mutate",
|
||||
@@ -10056,16 +10058,16 @@
|
||||
},
|
||||
{
|
||||
"name": "phpunit/phpunit",
|
||||
"version": "11.5.1",
|
||||
"version": "11.5.3",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||
"reference": "2b94d4f2450b9869fa64a46fd8a6a41997aef56a"
|
||||
"reference": "30e319e578a7b5da3543073e30002bf82042f701"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2b94d4f2450b9869fa64a46fd8a6a41997aef56a",
|
||||
"reference": "2b94d4f2450b9869fa64a46fd8a6a41997aef56a",
|
||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/30e319e578a7b5da3543073e30002bf82042f701",
|
||||
"reference": "30e319e578a7b5da3543073e30002bf82042f701",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
@@ -10079,14 +10081,14 @@
|
||||
"phar-io/manifest": "^2.0.4",
|
||||
"phar-io/version": "^3.2.1",
|
||||
"php": ">=8.2",
|
||||
"phpunit/php-code-coverage": "^11.0.7",
|
||||
"phpunit/php-code-coverage": "^11.0.8",
|
||||
"phpunit/php-file-iterator": "^5.1.0",
|
||||
"phpunit/php-invoker": "^5.0.1",
|
||||
"phpunit/php-text-template": "^4.0.1",
|
||||
"phpunit/php-timer": "^7.0.1",
|
||||
"sebastian/cli-parser": "^3.0.2",
|
||||
"sebastian/code-unit": "^3.0.1",
|
||||
"sebastian/comparator": "^6.2.1",
|
||||
"sebastian/code-unit": "^3.0.2",
|
||||
"sebastian/comparator": "^6.3.0",
|
||||
"sebastian/diff": "^6.0.2",
|
||||
"sebastian/environment": "^7.2.0",
|
||||
"sebastian/exporter": "^6.3.0",
|
||||
@@ -10137,7 +10139,7 @@
|
||||
"support": {
|
||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.1"
|
||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/11.5.3"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
@@ -10153,7 +10155,7 @@
|
||||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-12-11T10:52:48+00:00"
|
||||
"time": "2025-01-13T09:36:00+00:00"
|
||||
},
|
||||
{
|
||||
"name": "sebastian/cli-parser",
|
||||
|
||||
@@ -19,9 +19,8 @@
|
||||
<body class="flex flex-col min-h-screen">
|
||||
<x-dialog/>
|
||||
<x-toast/>
|
||||
<x-flash/>
|
||||
|
||||
<x-navbar/>
|
||||
|
||||
<div class="flex-1 bg-secondary-50 overflow-x-auto">
|
||||
<main class="container mx-auto px-4 py-8">
|
||||
{{ $slot }}
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<x-input label="Total" wire:model="valor" invalidate/>
|
||||
<x-input label="Descripción" wire:model="descripcion" invalidate/>
|
||||
|
||||
<x-button type="submit">
|
||||
<x-button type="submit" icon="{{$this->currentCalculo ? 'device-floppy' : 'plus'}}">
|
||||
@if($this->currentCalculo)
|
||||
Guardar
|
||||
@else
|
||||
@@ -25,8 +25,12 @@
|
||||
{{Number::currency($row->valor)}}
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
<x-button.circle icon="edit" wire:click="edit('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm wire:click="edit('{{$row->id}}')" :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endinteract
|
||||
</x-table>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<x-input label="Descripción" wire:model="descripcion" invalidate/>
|
||||
<x-input label="Total" wire:model="valor" invalidate/>
|
||||
|
||||
<x-button type="submit">
|
||||
<x-button type="submit" icon="{{$this->currentDocumento ? 'device-floppy' : 'plus'}}">
|
||||
@if($this->currentDocumento)
|
||||
Guardar
|
||||
@else
|
||||
@@ -31,8 +31,12 @@
|
||||
{{Number::currency($row->valor)}}
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
<x-button.circle icon="edit" wire:click="edit('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm wire:click="edit('{{$row->id}}')" :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endinteract
|
||||
</x-table>
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<x-input label="Descripción" wire:model="descripcion" invalidate/>
|
||||
<x-input label="Total" wire:model="valor" invalidate/>
|
||||
|
||||
<x-button type="submit">
|
||||
<x-button type="submit" icon="{{$this->currentEgreso ? 'device-floppy' : 'plus'}}">
|
||||
@if($this->currentEgreso)
|
||||
Guardar
|
||||
@else
|
||||
@@ -35,8 +35,12 @@
|
||||
{{Number::currency($row->valor)}}
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
<x-button.circle icon="edit" wire:click="edit('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm wire:click="edit('{{$row->id}}')" :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endinteract
|
||||
</x-table>
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<x-input type="number" label="Documento Final" wire:model="ingreso_final" min="0" invalidate/>
|
||||
<x-input type="number" label="Total" wire:model="total" min="0" invalidate/>
|
||||
|
||||
<x-button type="submit">
|
||||
<x-button type="submit" icon="{{$this->currentIngreso ? 'device-floppy' : 'plus'}}">
|
||||
@if($this->currentIngreso)
|
||||
Guardar
|
||||
@else
|
||||
@@ -40,8 +40,12 @@
|
||||
{{\Illuminate\Support\Number::currency($row->total)}}
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
<x-button.circle icon="edit" wire:click="edit('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm wire:click="edit('{{$row->id}}')" :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endinteract
|
||||
</x-table>
|
||||
|
||||
|
||||
@@ -27,8 +27,12 @@
|
||||
</span>
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
<x-button.circle icon="edit" :href="route('cajas.edit', $row->id)" wire:navigate :key="uniqid()"/>
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm :href="route('cajas.edit', $row->id)" wire:navigate :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endinteract
|
||||
</x-table>
|
||||
</div>
|
||||
|
||||
@@ -9,12 +9,19 @@
|
||||
|
||||
<div class="mt-4">
|
||||
<x-table striped :headers="$this->headers" :rows="$this->rows" paginate>
|
||||
@interact('column_roles', $row)
|
||||
{{$row->roles->pluck('title')->join(', ')}}
|
||||
@endinteract
|
||||
@interact('column_action', $row)
|
||||
@can('update', $row)
|
||||
<x-button.circle icon="edit" :href="route('usuarios.edit', $row->id)" wire:navigate :key="uniqid()"/>
|
||||
<x-button sm :href="route('usuarios.edit', $row->id)" wire:navigate :key="uniqid()">
|
||||
Editar
|
||||
</x-button>
|
||||
@endcan
|
||||
@can('delete', $row)
|
||||
<x-button.circle icon="trash" color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()"/>
|
||||
<x-button sm color="red" wire:click="confirmDelete('{{$row->id}}')" :key="uniqid()">
|
||||
Eliminar
|
||||
</x-button>
|
||||
@endcan
|
||||
@endinteract
|
||||
</x-table>
|
||||
|
||||
Reference in New Issue
Block a user