mirror of
https://github.com/AnimeThemes/animethemes-server.git
synced 2026-07-11 01:24:46 +02:00
chore: updating dependencies (#475)
This commit is contained in:
+2
-2
@@ -3,9 +3,9 @@ root = true
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
indent_style = space
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
|
||||
@@ -6,11 +6,13 @@
|
||||
/vendor
|
||||
.env
|
||||
.env.backup
|
||||
.env.production
|
||||
.phpunit.result.cache
|
||||
Homestead.json
|
||||
Homestead.yaml
|
||||
npm-debug.log
|
||||
yarn-error.log
|
||||
/.fleet
|
||||
.vscode
|
||||
.idea
|
||||
auth.json
|
||||
|
||||
@@ -5,12 +5,10 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Lenses\Anime;
|
||||
|
||||
use App\Enums\Models\Wiki\ImageFacet;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Anime;
|
||||
use App\Models\Wiki\Image;
|
||||
use App\Nova\Actions\Models\Wiki\Anime\BackfillAnimeAction;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
|
||||
/**
|
||||
@@ -65,11 +63,7 @@ abstract class AnimeImageLens extends AnimeLens
|
||||
->confirmButtonText(__('nova.actions.anime.backfill.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update anime');
|
||||
}),
|
||||
->canSeeWhen('update', Anime::class),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,12 +5,10 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Lenses\Anime;
|
||||
|
||||
use App\Enums\Models\Wiki\ResourceSite;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Anime;
|
||||
use App\Models\Wiki\ExternalResource;
|
||||
use App\Nova\Actions\Models\Wiki\Anime\AttachAnimeResourceAction;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
|
||||
/**
|
||||
@@ -65,11 +63,7 @@ abstract class AnimeResourceLens extends AnimeLens
|
||||
->confirmButtonText(__('nova.actions.models.wiki.attach_resource.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create external resource');
|
||||
}),
|
||||
->canSeeWhen('create', ExternalResource::class),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,12 +4,10 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Nova\Lenses\Anime\Studio;
|
||||
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Anime;
|
||||
use App\Nova\Actions\Models\Wiki\Anime\BackfillAnimeAction;
|
||||
use App\Nova\Lenses\Anime\AnimeLens;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
|
||||
/**
|
||||
@@ -55,11 +53,7 @@ class AnimeStudioLens extends AnimeLens
|
||||
->confirmButtonText(__('nova.actions.anime.backfill.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update anime');
|
||||
}),
|
||||
->canSeeWhen('update', Anime::class),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -5,12 +5,10 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Lenses\Artist;
|
||||
|
||||
use App\Enums\Models\Wiki\ResourceSite;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Artist;
|
||||
use App\Models\Wiki\ExternalResource;
|
||||
use App\Nova\Actions\Models\Wiki\Artist\AttachArtistResourceAction;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
|
||||
/**
|
||||
@@ -65,11 +63,7 @@ abstract class ArtistResourceLens extends ArtistLens
|
||||
->confirmButtonText(__('nova.actions.models.wiki.attach_resource.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create external resource');
|
||||
}),
|
||||
->canSeeWhen('create', ExternalResource::class),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,14 +4,12 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Nova\Lenses\Audio;
|
||||
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\BaseModel;
|
||||
use App\Models\Wiki\Audio;
|
||||
use App\Nova\Actions\Storage\Wiki\Audio\DeleteAudioAction;
|
||||
use App\Nova\Lenses\BaseLens;
|
||||
use Exception;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\DateTime;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Number;
|
||||
@@ -106,11 +104,7 @@ class AudioVideoLens extends BaseLens
|
||||
->confirmButtonText(__('nova.actions.audio.delete.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('delete audio');
|
||||
}),
|
||||
->canSeeWhen('delete', Audio::class),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -5,13 +5,11 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Lenses\Studio\Image;
|
||||
|
||||
use App\Enums\Models\Wiki\ImageFacet;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Image;
|
||||
use App\Models\Wiki\Studio;
|
||||
use App\Nova\Actions\Models\Wiki\Studio\BackfillStudioAction;
|
||||
use App\Nova\Lenses\Studio\StudioLens;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
|
||||
/**
|
||||
@@ -59,11 +57,7 @@ class StudioCoverLargeLens extends StudioLens
|
||||
->confirmButtonText(__('nova.actions.studio.backfill.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update studio');
|
||||
}),
|
||||
->canSeeWhen('update', Studio::class),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Lenses\Studio;
|
||||
|
||||
use App\Enums\Models\Wiki\ResourceSite;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\ExternalResource;
|
||||
use App\Models\Wiki\Studio;
|
||||
use App\Nova\Actions\Models\Wiki\Studio\AttachStudioResourceAction;
|
||||
@@ -64,11 +63,7 @@ abstract class StudioResourceLens extends StudioLens
|
||||
->confirmButtonText(__('nova.actions.models.wiki.attach_resource.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create external resource');
|
||||
}),
|
||||
->canSeeWhen('create', ExternalResource::class),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ namespace App\Nova\Lenses\Video;
|
||||
use App\Enums\Http\Api\Filter\ComparisonOperator;
|
||||
use App\Enums\Models\Wiki\VideoOverlap;
|
||||
use App\Enums\Models\Wiki\VideoSource;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\BaseModel;
|
||||
use App\Models\Wiki\Video;
|
||||
use App\Nova\Actions\Models\Wiki\Video\BackfillAudioAction;
|
||||
@@ -15,7 +14,6 @@ use App\Nova\Lenses\BaseLens;
|
||||
use BenSampo\Enum\Enum;
|
||||
use Exception;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Boolean;
|
||||
use Laravel\Nova\Fields\DateTime;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
@@ -137,11 +135,7 @@ class VideoAudioLens extends BaseLens
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update video');
|
||||
}),
|
||||
->canSeeWhen('update', Video::class),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -112,7 +112,8 @@ class Announcement extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), AnnouncementModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Code::make(__('nova.fields.announcement.content'), AnnouncementModel::ATTRIBUTE_CONTENT)
|
||||
->rules(['required', 'max:65535'])
|
||||
|
||||
@@ -5,14 +5,12 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Resources\Admin;
|
||||
|
||||
use App\Models\Admin\Dump as DumpModel;
|
||||
use App\Models\Auth\User;
|
||||
use App\Nova\Actions\Repositories\Storage\Admin\Dump\ReconcileDumpAction;
|
||||
use App\Nova\Actions\Storage\Admin\DumpDocumentAction;
|
||||
use App\Nova\Actions\Storage\Admin\DumpWikiAction;
|
||||
use App\Nova\Actions\Storage\Admin\PruneDumpAction;
|
||||
use App\Nova\Resources\BaseResource;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||
@@ -120,12 +118,15 @@ class Dump extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), DumpModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.dump.path'), DumpModel::ATTRIBUTE_PATH)
|
||||
->copyable()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Panel::make(__('nova.fields.base.timestamps'), $this->timestamps()),
|
||||
];
|
||||
@@ -147,44 +148,28 @@ class Dump extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create dump');
|
||||
}),
|
||||
->canSeeWhen('create', DumpModel::class),
|
||||
|
||||
(new DumpDocumentAction())
|
||||
->confirmButtonText(__('nova.actions.dump.dump.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create dump');
|
||||
}),
|
||||
->canSeeWhen('create', DumpModel::class),
|
||||
|
||||
(new PruneDumpAction())
|
||||
->confirmButtonText(__('nova.actions.storage.prune.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('delete dump');
|
||||
}),
|
||||
->canSeeWhen('delete', DumpModel::class),
|
||||
|
||||
(new ReconcileDumpAction())
|
||||
->confirmButtonText(__('nova.actions.repositories.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create dump');
|
||||
}),
|
||||
->canSeeWhen('create', DumpModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -113,21 +113,26 @@ class Setting extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), SettingModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.setting.key'), SettingModel::ATTRIBUTE_KEY)
|
||||
->sortable()
|
||||
->copyable()
|
||||
->rules(['required', 'max:192'])
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.setting.value'), SettingModel::ATTRIBUTE_VALUE)
|
||||
->sortable()
|
||||
->copyable()
|
||||
->rules(['required', 'max:65535'])
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(65535)
|
||||
->showWhenPeeking(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,14 +116,17 @@ class Permission extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), PermissionModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.permission.name'), PermissionModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
->copyable()
|
||||
->rules(['required', 'max:192'])
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.roles'), PermissionModel::RELATION_ROLES, Role::class)
|
||||
->filterable(),
|
||||
@@ -149,16 +152,14 @@ class Permission extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canRun(fn (NovaRequest $novaRequest) => $novaRequest->user()->can('view permission')),
|
||||
->showInline(),
|
||||
|
||||
(new RevokeRoleAction())
|
||||
->confirmButtonText(__('nova.actions.base.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canRun(fn (NovaRequest $novaRequest) => $novaRequest->user()->can('view permission')),
|
||||
->showInline(),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -116,14 +116,17 @@ class Role extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), RoleModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.role.name'), RoleModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
->copyable()
|
||||
->rules(['required', 'max:192'])
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.permissions'), RoleModel::RELATION_PERMISSIONS, Permission::class)
|
||||
->filterable(),
|
||||
|
||||
@@ -130,17 +130,21 @@ class User extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), UserModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Gravatar::make()->maxWidth(50)
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.user.name'), UserModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
->copyable()
|
||||
->rules(['required', 'max:192', 'alpha_dash'])
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Email::make(__('nova.fields.user.email'), UserModel::ATTRIBUTE_EMAIL)
|
||||
->sortable()
|
||||
@@ -152,7 +156,8 @@ class User extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.roles'), UserModel::RELATION_ROLES, Role::class)
|
||||
->filterable(),
|
||||
|
||||
@@ -54,21 +54,24 @@ abstract class BaseResource extends NovaResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
DateTime::make(__('nova.fields.base.updated_at'), BaseModel::ATTRIBUTE_UPDATED_AT)
|
||||
->hideFromIndex()
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
DateTime::make(__('nova.fields.base.deleted_at'), BaseModel::ATTRIBUTE_DELETED_AT)
|
||||
->hideFromIndex()
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,13 +6,11 @@ namespace App\Nova\Resources\Billing;
|
||||
|
||||
use App\Enums\Models\Billing\BalanceFrequency;
|
||||
use App\Enums\Models\Billing\Service;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Billing\Balance as BalanceModel;
|
||||
use App\Nova\Actions\Repositories\Billing\Balance\ReconcileBalanceAction;
|
||||
use App\Nova\Resources\BaseResource;
|
||||
use BenSampo\Enum\Enum;
|
||||
use BenSampo\Enum\Rules\EnumValue;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Currency;
|
||||
use Laravel\Nova\Fields\Date;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
@@ -120,14 +118,16 @@ class Balance extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), BalanceModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Date::make(__('nova.fields.balance.date.name'), BalanceModel::ATTRIBUTE_DATE)
|
||||
->sortable()
|
||||
->rules('required')
|
||||
->help(__('nova.fields.balance.date.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.balance.service.name'), BalanceModel::ATTRIBUTE_SERVICE)
|
||||
->options(Service::asSelectArray())
|
||||
@@ -136,7 +136,8 @@ class Balance extends BaseResource
|
||||
->rules(['required', new EnumValue(Service::class, false)])
|
||||
->help(__('nova.fields.balance.service.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.balance.frequency.name'), BalanceModel::ATTRIBUTE_FREQUENCY)
|
||||
->options(BalanceFrequency::asSelectArray())
|
||||
@@ -145,21 +146,24 @@ class Balance extends BaseResource
|
||||
->rules(['required', new EnumValue(BalanceFrequency::class, false)])
|
||||
->help(__('nova.fields.balance.frequency.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Currency::make(__('nova.fields.balance.usage.name'), BalanceModel::ATTRIBUTE_USAGE)
|
||||
->sortable()
|
||||
->rules('required')
|
||||
->help(__('nova.fields.balance.usage.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Currency::make(__('nova.fields.balance.balance.name'), BalanceModel::ATTRIBUTE_BALANCE)
|
||||
->sortable()
|
||||
->rules('required')
|
||||
->help(__('nova.fields.balance.balance.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Panel::make(__('nova.fields.base.timestamps'), $this->timestamps())
|
||||
->collapsable(),
|
||||
@@ -182,11 +186,7 @@ class Balance extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create balance');
|
||||
}),
|
||||
->canSeeWhen('create', BalanceModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -5,14 +5,12 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Resources\Billing;
|
||||
|
||||
use App\Enums\Models\Billing\Service;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Billing\Transaction as TransactionModel;
|
||||
use App\Nova\Actions\Repositories\Billing\Transaction\ReconcileTransactionAction;
|
||||
use App\Nova\Resources\BaseResource;
|
||||
use BenSampo\Enum\Enum;
|
||||
use BenSampo\Enum\Rules\EnumValue;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\Currency;
|
||||
use Laravel\Nova\Fields\Date;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
@@ -123,14 +121,16 @@ class Transaction extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), TransactionModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Date::make(__('nova.fields.transaction.date.name'), TransactionModel::ATTRIBUTE_DATE)
|
||||
->sortable()
|
||||
->rules('required')
|
||||
->help(__('nova.fields.transaction.date.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.transaction.service.name'), TransactionModel::ATTRIBUTE_SERVICE)
|
||||
->options(Service::asSelectArray())
|
||||
@@ -139,7 +139,8 @@ class Transaction extends BaseResource
|
||||
->rules(['required', new EnumValue(Service::class, false)])
|
||||
->help(__('nova.fields.transaction.service.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.transaction.description.name'), TransactionModel::ATTRIBUTE_DESCRIPTION)
|
||||
->sortable()
|
||||
@@ -147,14 +148,17 @@ class Transaction extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.transaction.description.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Currency::make(__('nova.fields.transaction.amount.name'), TransactionModel::ATTRIBUTE_AMOUNT)
|
||||
->sortable()
|
||||
->rules('required')
|
||||
->help(__('nova.fields.transaction.amount.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.transaction.external_id.name'), TransactionModel::ATTRIBUTE_EXTERNAL_ID)
|
||||
->nullable()
|
||||
@@ -163,7 +167,9 @@ class Transaction extends BaseResource
|
||||
->rules(['nullable', 'max:192'])
|
||||
->help(__('nova.fields.transaction.external_id.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Panel::make(__('nova.fields.base.timestamps'), $this->timestamps())
|
||||
->collapsable(),
|
||||
@@ -186,11 +192,7 @@ class Transaction extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create transaction');
|
||||
}),
|
||||
->canSeeWhen('create', TransactionModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -123,7 +123,8 @@ class Page extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), PageModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.page.name.name'), PageModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -131,7 +132,9 @@ class Page extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.page.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Slug::make(__('nova.fields.page.slug.name'), PageModel::ATTRIBUTE_SLUG)
|
||||
->from(PageModel::ATTRIBUTE_NAME)
|
||||
@@ -145,7 +148,8 @@ class Page extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->help(__('nova.fields.page.slug.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Markdown::make(__('nova.fields.page.body.name'), PageModel::ATTRIBUTE_BODY)
|
||||
->rules(['required', 'max:16777215'])
|
||||
|
||||
@@ -172,7 +172,8 @@ class Playlist extends BaseResource
|
||||
|
||||
ID::make(__('nova.fields.base.id'), PlaylistModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.playlist.name.name'), PlaylistModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -180,7 +181,9 @@ class Playlist extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.playlist.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.playlist.visibility.name'), PlaylistModel::ATTRIBUTE_VISIBILITY)
|
||||
->options(PlaylistVisibility::asSelectArray())
|
||||
@@ -189,7 +192,8 @@ class Playlist extends BaseResource
|
||||
->rules(['required', new EnumValue(PlaylistVisibility::class, false)])
|
||||
->help(__('nova.fields.playlist.visibility.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsTo::make(__('nova.fields.playlist.first.name'), PlaylistModel::RELATION_FIRST, Track::class)
|
||||
->hideFromIndex()
|
||||
|
||||
@@ -189,7 +189,8 @@ class Track extends BaseResource
|
||||
|
||||
ID::make(__('nova.fields.base.id'), PlaylistTrack::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsTo::make(__('nova.fields.playlist_track.previous.name'), PlaylistTrack::RELATION_PREVIOUS, Track::class)
|
||||
->hideFromIndex()
|
||||
|
||||
@@ -5,7 +5,6 @@ declare(strict_types=1);
|
||||
namespace App\Nova\Resources\Wiki;
|
||||
|
||||
use App\Enums\Models\Wiki\AnimeSeason;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Anime as AnimeModel;
|
||||
use App\Nova\Actions\Models\Wiki\Anime\BackfillAnimeAction;
|
||||
use App\Nova\Lenses\Anime\Image\AnimeCoverLargeLens;
|
||||
@@ -27,7 +26,6 @@ use App\Pivots\Wiki\AnimeResource;
|
||||
use BenSampo\Enum\Enum;
|
||||
use BenSampo\Enum\Rules\EnumValue;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Laravel\Nova\Card;
|
||||
use Laravel\Nova\Fields\BelongsToMany;
|
||||
@@ -149,7 +147,8 @@ class Anime extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), AnimeModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime.name.name'), AnimeModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -157,7 +156,9 @@ class Anime extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.anime.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Slug::make(__('nova.fields.anime.slug.name'), AnimeModel::ATTRIBUTE_SLUG)
|
||||
->from(AnimeModel::ATTRIBUTE_NAME)
|
||||
@@ -170,7 +171,8 @@ class Anime extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->help(__('nova.fields.anime.slug.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.anime.year.name'), AnimeModel::ATTRIBUTE_YEAR)
|
||||
->sortable()
|
||||
@@ -179,7 +181,8 @@ class Anime extends BaseResource
|
||||
->rules(['required', 'digits:4', 'integer'])
|
||||
->help(__('nova.fields.anime.year.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.anime.season.name'), AnimeModel::ATTRIBUTE_SEASON)
|
||||
->options(AnimeSeason::asSelectArray())
|
||||
@@ -188,13 +191,16 @@ class Anime extends BaseResource
|
||||
->rules(['required', new EnumValue(AnimeSeason::class, false)])
|
||||
->help(__('nova.fields.anime.season.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Textarea::make(__('nova.fields.anime.synopsis.name'), AnimeModel::ATTRIBUTE_SYNOPSIS)
|
||||
->rules('max:65535')
|
||||
->nullable()
|
||||
->help(__('nova.fields.anime.synopsis.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->maxlength(65535)
|
||||
->showWhenPeeking(),
|
||||
|
||||
HasMany::make(__('nova.resources.label.anime_synonyms'), AnimeModel::RELATION_SYNONYMS, Synonym::class),
|
||||
|
||||
@@ -282,11 +288,7 @@ class Anime extends BaseResource
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update anime');
|
||||
}),
|
||||
->canSeeWhen('update', AnimeModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -133,14 +133,17 @@ class Synonym extends BaseResource
|
||||
|
||||
ID::make(__('nova.fields.base.id'), AnimeSynonym::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime_synonym.text.name'), AnimeSynonym::ATTRIBUTE_TEXT)
|
||||
->sortable()
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.anime_synonym.text.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Panel::make(__('nova.fields.base.timestamps'), $this->timestamps())
|
||||
->collapsable(),
|
||||
|
||||
@@ -166,7 +166,8 @@ class Theme extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), AnimeTheme::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsTo::make(__('nova.resources.singularLabel.anime'), AnimeTheme::RELATION_ANIME, Anime::class)
|
||||
->sortable()
|
||||
@@ -185,7 +186,8 @@ class Theme extends BaseResource
|
||||
->rules(['required', new EnumValue(ThemeType::class, false)])
|
||||
->help(__('nova.fields.anime_theme.type.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.anime_theme.sequence.name'), AnimeTheme::ATTRIBUTE_SEQUENCE)
|
||||
->sortable()
|
||||
@@ -193,7 +195,8 @@ class Theme extends BaseResource
|
||||
->rules(['nullable', 'integer'])
|
||||
->help(__('nova.fields.anime_theme.sequence.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime_theme.group.name'), AnimeTheme::ATTRIBUTE_GROUP)
|
||||
->sortable()
|
||||
@@ -201,7 +204,9 @@ class Theme extends BaseResource
|
||||
->rules(['nullable', 'max:192'])
|
||||
->help(__('nova.fields.anime_theme.group.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime_theme.slug.name'), AnimeTheme::ATTRIBUTE_SLUG)
|
||||
->sortable()
|
||||
@@ -209,6 +214,8 @@ class Theme extends BaseResource
|
||||
->help(__('nova.fields.anime_theme.slug.help'))
|
||||
->showOnPreview()
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking()
|
||||
->dependsOn(
|
||||
[AnimeTheme::ATTRIBUTE_TYPE, AnimeTheme::ATTRIBUTE_SEQUENCE],
|
||||
function (Text $field, NovaRequest $novaRequest, FormData $formData) {
|
||||
|
||||
@@ -193,7 +193,8 @@ class Entry extends BaseResource
|
||||
|
||||
ID::make(__('nova.fields.base.id'), AnimeThemeEntry::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.anime_theme_entry.version.name'), AnimeThemeEntry::ATTRIBUTE_VERSION)
|
||||
->sortable()
|
||||
@@ -201,7 +202,8 @@ class Entry extends BaseResource
|
||||
->rules(['nullable', 'integer'])
|
||||
->help(__('nova.fields.anime_theme_entry.version.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime_theme_entry.episodes.name'), AnimeThemeEntry::ATTRIBUTE_EPISODES)
|
||||
->sortable()
|
||||
@@ -209,7 +211,9 @@ class Entry extends BaseResource
|
||||
->rules(['nullable', 'max:192'])
|
||||
->help(__('nova.fields.anime_theme_entry.episodes.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.anime_theme_entry.nsfw.name'), AnimeThemeEntry::ATTRIBUTE_NSFW)
|
||||
->sortable()
|
||||
@@ -217,7 +221,8 @@ class Entry extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.anime_theme_entry.nsfw.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.anime_theme_entry.spoiler.name'), AnimeThemeEntry::ATTRIBUTE_SPOILER)
|
||||
->sortable()
|
||||
@@ -225,7 +230,8 @@ class Entry extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.anime_theme_entry.spoiler.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.anime_theme_entry.notes.name'), AnimeThemeEntry::ATTRIBUTE_NOTES)
|
||||
->sortable()
|
||||
@@ -233,7 +239,9 @@ class Entry extends BaseResource
|
||||
->rules(['nullable', 'max:192'])
|
||||
->help(__('nova.fields.anime_theme_entry.notes.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.videos'), AnimeThemeEntry::RELATION_VIDEOS, Video::class)
|
||||
->searchable()
|
||||
|
||||
@@ -126,7 +126,8 @@ class Artist extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), ArtistModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.artist.name.name'), ArtistModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -134,7 +135,9 @@ class Artist extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.artist.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->maxlength(192)
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Slug::make(__('nova.fields.artist.slug.name'), ArtistModel::ATTRIBUTE_SLUG)
|
||||
->from(ArtistModel::ATTRIBUTE_NAME)
|
||||
@@ -147,7 +150,8 @@ class Artist extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->help(__('nova.fields.artist.slug.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.songs'), ArtistModel::RELATION_SONGS, Song::class)
|
||||
->searchable()
|
||||
|
||||
@@ -4,7 +4,6 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Nova\Resources\Wiki;
|
||||
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Audio as AudioModel;
|
||||
use App\Nova\Actions\Repositories\Storage\Wiki\Audio\ReconcileAudioAction;
|
||||
use App\Nova\Actions\Storage\Wiki\Audio\DeleteAudioAction;
|
||||
@@ -13,7 +12,6 @@ use App\Nova\Actions\Storage\Wiki\Audio\UploadAudioAction;
|
||||
use App\Nova\Lenses\Audio\AudioVideoLens;
|
||||
use App\Nova\Resources\BaseResource;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\HasMany;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Number;
|
||||
@@ -104,7 +102,8 @@ class Audio extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), AudioModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
HasMany::make(__('nova.resources.label.videos'), AudioModel::RELATION_VIDEOS, Video::class),
|
||||
|
||||
@@ -132,7 +131,8 @@ class Audio extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.audio.filename.name'), AudioModel::ATTRIBUTE_FILENAME)
|
||||
->sortable()
|
||||
@@ -140,7 +140,8 @@ class Audio extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.audio.path.name'), AudioModel::ATTRIBUTE_PATH)
|
||||
->copyable()
|
||||
@@ -148,14 +149,16 @@ class Audio extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.audio.size.name'), AudioModel::ATTRIBUTE_SIZE)
|
||||
->hideFromIndex()
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.audio.mimetype.name'), AudioModel::ATTRIBUTE_MIMETYPE)
|
||||
->copyable()
|
||||
@@ -163,7 +166,8 @@ class Audio extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -183,43 +187,27 @@ class Audio extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create audio');
|
||||
}),
|
||||
->canSeeWhen('create', AudioModel::class),
|
||||
|
||||
(new MoveAudioAction())
|
||||
->confirmButtonText(__('nova.actions.storage.move.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create audio');
|
||||
}),
|
||||
->canSeeWhen('create', AudioModel::class),
|
||||
|
||||
(new DeleteAudioAction())
|
||||
->confirmText(__('nova.actions.audio.delete.confirmText'))
|
||||
->confirmButtonText(__('nova.actions.storage.delete.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('delete audio');
|
||||
}),
|
||||
->canSeeWhen('delete', AudioModel::class),
|
||||
|
||||
(new ReconcileAudioAction())
|
||||
->confirmButtonText(__('nova.actions.repositories.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create audio');
|
||||
}),
|
||||
->canSeeWhen('create', AudioModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -133,7 +133,8 @@ class ExternalResource extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), ExternalResourceModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.external_resource.site.name'), ExternalResourceModel::ATTRIBUTE_SITE)
|
||||
->options(ResourceSite::asSelectArray())
|
||||
@@ -143,6 +144,7 @@ class ExternalResource extends BaseResource
|
||||
->help(__('nova.fields.external_resource.site.help'))
|
||||
->showOnPreview()
|
||||
->filterable()
|
||||
->showWhenPeeking()
|
||||
->dependsOn(
|
||||
[ExternalResourceModel::ATTRIBUTE_LINK],
|
||||
function (Select $field, NovaRequest $novaRequest, FormData $formData) {
|
||||
@@ -166,6 +168,7 @@ class ExternalResource extends BaseResource
|
||||
->displayUsing(fn (mixed $value, mixed $resource, string $attribute) => $value)
|
||||
->help(__('nova.fields.external_resource.link.help'))
|
||||
->showOnPreview()
|
||||
->showWhenPeeking()
|
||||
->filterable(),
|
||||
|
||||
Number::make(__('nova.fields.external_resource.external_id.name'), ExternalResourceModel::ATTRIBUTE_EXTERNAL_ID)
|
||||
@@ -175,6 +178,7 @@ class ExternalResource extends BaseResource
|
||||
->help(__('nova.fields.external_resource.external_id.help'))
|
||||
->showOnPreview()
|
||||
->filterable()
|
||||
->showWhenPeeking()
|
||||
->dependsOn(
|
||||
[ExternalResourceModel::ATTRIBUTE_LINK],
|
||||
function (Text $field, NovaRequest $novaRequest, FormData $formData) {
|
||||
|
||||
@@ -131,7 +131,8 @@ class Image extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), ImageModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.image.facet.name'), ImageModel::ATTRIBUTE_FACET)
|
||||
->options(ImageFacet::asSelectArray())
|
||||
@@ -140,11 +141,13 @@ class Image extends BaseResource
|
||||
->rules(['required', new EnumValue(ImageFacet::class, false)])
|
||||
->help(__('nova.fields.image.facet.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
NovaImage::make(__('nova.fields.image.image.name'), ImageModel::ATTRIBUTE_PATH, Config::get('image.disk'))
|
||||
->creationRules('required')
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.anime'), ImageModel::RELATION_ANIME, Anime::class)
|
||||
->searchable()
|
||||
@@ -220,7 +223,8 @@ class Image extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@@ -116,7 +116,8 @@ class Series extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), SeriesModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.series.name.name'), SeriesModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -124,7 +125,9 @@ class Series extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.series.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Slug::make(__('nova.fields.series.slug.name'), SeriesModel::ATTRIBUTE_SLUG)
|
||||
->from(SeriesModel::ATTRIBUTE_NAME)
|
||||
@@ -137,7 +140,8 @@ class Series extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->help(__('nova.fields.series.slug.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.anime'), SeriesModel::RELATION_ANIME, Anime::class)
|
||||
->searchable()
|
||||
|
||||
@@ -154,7 +154,8 @@ class Song extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), SongModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.song.title.name'), SongModel::ATTRIBUTE_TITLE)
|
||||
->sortable()
|
||||
@@ -163,7 +164,9 @@ class Song extends BaseResource
|
||||
->rules(['nullable', 'max:192'])
|
||||
->help(__('nova.fields.song.title.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.artists'), SongModel::RELATION_ARTISTS, Artist::class)
|
||||
->searchable()
|
||||
|
||||
@@ -4,7 +4,6 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Nova\Resources\Wiki;
|
||||
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Studio as StudioModel;
|
||||
use App\Nova\Actions\Models\Wiki\Studio\BackfillStudioAction;
|
||||
use App\Nova\Lenses\Studio\Image\StudioCoverLargeLens;
|
||||
@@ -18,7 +17,6 @@ use App\Nova\Resources\BaseResource;
|
||||
use App\Pivots\BasePivot;
|
||||
use App\Pivots\Wiki\StudioResource;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Laravel\Nova\Fields\BelongsToMany;
|
||||
use Laravel\Nova\Fields\DateTime;
|
||||
@@ -124,7 +122,8 @@ class Studio extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), StudioModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.studio.name.name'), StudioModel::ATTRIBUTE_NAME)
|
||||
->sortable()
|
||||
@@ -132,7 +131,9 @@ class Studio extends BaseResource
|
||||
->rules(['required', 'max:192'])
|
||||
->help(__('nova.fields.studio.name.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Slug::make(__('nova.fields.studio.slug.name'), StudioModel::ATTRIBUTE_SLUG)
|
||||
->from(StudioModel::ATTRIBUTE_NAME)
|
||||
@@ -145,7 +146,8 @@ class Studio extends BaseResource
|
||||
->__toString()
|
||||
)
|
||||
->help(__('nova.fields.studio.slug.help'))
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsToMany::make(__('nova.resources.label.anime'), StudioModel::RELATION_ANIME, Anime::class)
|
||||
->searchable()
|
||||
@@ -215,11 +217,7 @@ class Studio extends BaseResource
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update studio');
|
||||
}),
|
||||
->canSeeWhen('update', StudioModel::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -6,8 +6,8 @@ namespace App\Nova\Resources\Wiki;
|
||||
|
||||
use App\Enums\Models\Wiki\VideoOverlap;
|
||||
use App\Enums\Models\Wiki\VideoSource;
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Video as VideoModel;
|
||||
use App\Models\Wiki\Video\VideoScript;
|
||||
use App\Nova\Actions\Models\Wiki\Video\BackfillAudioAction;
|
||||
use App\Nova\Actions\Repositories\Storage\Wiki\Video\ReconcileVideoAction;
|
||||
use App\Nova\Actions\Storage\Wiki\Video\DeleteVideoAction;
|
||||
@@ -29,7 +29,6 @@ use App\Pivots\BasePivot;
|
||||
use BenSampo\Enum\Enum;
|
||||
use BenSampo\Enum\Rules\EnumValue;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Card;
|
||||
use Laravel\Nova\Fields\BelongsTo;
|
||||
use Laravel\Nova\Fields\BelongsToMany;
|
||||
@@ -127,7 +126,8 @@ class Video extends BaseResource
|
||||
return [
|
||||
ID::make(__('nova.fields.base.id'), VideoModel::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.video.resolution.name'), VideoModel::ATTRIBUTE_RESOLUTION)
|
||||
->sortable()
|
||||
@@ -137,7 +137,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', 'integer'])
|
||||
->help(__('nova.fields.video.resolution.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.video.nc.name'), VideoModel::ATTRIBUTE_NC)
|
||||
->sortable()
|
||||
@@ -145,7 +146,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.video.nc.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.video.subbed.name'), VideoModel::ATTRIBUTE_SUBBED)
|
||||
->sortable()
|
||||
@@ -153,7 +155,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.video.subbed.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.video.lyrics.name'), VideoModel::ATTRIBUTE_LYRICS)
|
||||
->sortable()
|
||||
@@ -161,7 +164,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.video.lyrics.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Boolean::make(__('nova.fields.video.uncen.name'), VideoModel::ATTRIBUTE_UNCEN)
|
||||
->sortable()
|
||||
@@ -169,7 +173,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', 'boolean'])
|
||||
->help(__('nova.fields.video.uncen.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.video.overlap.name'), VideoModel::ATTRIBUTE_OVERLAP)
|
||||
->options(VideoOverlap::asSelectArray())
|
||||
@@ -179,7 +184,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', new EnumValue(VideoOverlap::class, false)])
|
||||
->help(__('nova.fields.video.overlap.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Select::make(__('nova.fields.video.source.name'), VideoModel::ATTRIBUTE_SOURCE)
|
||||
->options(VideoSource::asSelectArray())
|
||||
@@ -189,7 +195,8 @@ class Video extends BaseResource
|
||||
->rules(['nullable', new EnumValue(VideoSource::class, false)])
|
||||
->help(__('nova.fields.video.source.help'))
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
BelongsTo::make(__('nova.resources.singularLabel.audio'), VideoModel::RELATION_AUDIO, Audio::class)
|
||||
->hideFromIndex()
|
||||
@@ -241,7 +248,9 @@ class Video extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.video.filename.name'), VideoModel::ATTRIBUTE_FILENAME)
|
||||
->sortable()
|
||||
@@ -249,7 +258,9 @@ class Video extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.video.path.name'), VideoModel::ATTRIBUTE_PATH)
|
||||
->copyable()
|
||||
@@ -257,14 +268,17 @@ class Video extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Number::make(__('nova.fields.video.size.name'), VideoModel::ATTRIBUTE_SIZE)
|
||||
->hideFromIndex()
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.video.mimetype.name'), VideoModel::ATTRIBUTE_MIMETYPE)
|
||||
->copyable()
|
||||
@@ -272,7 +286,9 @@ class Video extends BaseResource
|
||||
->hideWhenCreating()
|
||||
->hideWhenUpdating()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
];
|
||||
}
|
||||
|
||||
@@ -293,64 +309,40 @@ class Video extends BaseResource
|
||||
->showOnIndex()
|
||||
->showOnDetail()
|
||||
->showInline()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('update video');
|
||||
}),
|
||||
->canSeeWhen('update', VideoModel::class),
|
||||
|
||||
(new UploadVideoAction())
|
||||
->confirmButtonText(__('nova.actions.storage.upload.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video');
|
||||
}),
|
||||
->canSeeWhen('create', VideoModel::class),
|
||||
|
||||
(new MoveVideoAction())
|
||||
->confirmButtonText(__('nova.actions.storage.move.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create audio');
|
||||
}),
|
||||
->canSeeWhen('create', VideoModel::class),
|
||||
|
||||
(new DeleteVideoAction())
|
||||
->confirmText(__('nova.actions.video.delete.confirmText'))
|
||||
->confirmButtonText(__('nova.actions.storage.delete.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('delete video');
|
||||
}),
|
||||
->canSeeWhen('delete', VideoModel::class),
|
||||
|
||||
(new ReconcileVideoAction())
|
||||
->confirmButtonText(__('nova.actions.repositories.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video');
|
||||
}),
|
||||
->canSeeWhen('create', VideoModel::class),
|
||||
|
||||
(new UploadScriptAction())
|
||||
->confirmButtonText(__('nova.actions.storage.upload.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnDetail()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video script');
|
||||
}),
|
||||
->canSeeWhen('create', VideoScript::class),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Nova\Resources\Wiki\Video;
|
||||
|
||||
use App\Models\Auth\User;
|
||||
use App\Models\Wiki\Video\VideoScript;
|
||||
use App\Nova\Actions\Repositories\Storage\Wiki\Video\Script\ReconcileScriptAction;
|
||||
use App\Nova\Actions\Storage\Wiki\Video\Script\DeleteScriptAction;
|
||||
@@ -14,7 +13,6 @@ use App\Nova\Resources\BaseResource;
|
||||
use App\Nova\Resources\Wiki\Video;
|
||||
use Exception;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Http\Request;
|
||||
use Laravel\Nova\Fields\BelongsTo;
|
||||
use Laravel\Nova\Fields\ID;
|
||||
use Laravel\Nova\Fields\Text;
|
||||
@@ -139,12 +137,15 @@ class Script extends BaseResource
|
||||
|
||||
ID::make(__('nova.fields.base.id'), VideoScript::ATTRIBUTE_ID)
|
||||
->sortable()
|
||||
->showOnPreview(),
|
||||
->showOnPreview()
|
||||
->showWhenPeeking(),
|
||||
|
||||
Text::make(__('nova.fields.video_script.path'), VideoScript::ATTRIBUTE_PATH)
|
||||
->copyable()
|
||||
->showOnPreview()
|
||||
->filterable(),
|
||||
->filterable()
|
||||
->maxlength(192)
|
||||
->showWhenPeeking(),
|
||||
|
||||
Panel::make(__('nova.fields.base.timestamps'), $this->timestamps()),
|
||||
];
|
||||
@@ -166,43 +167,27 @@ class Script extends BaseResource
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video script');
|
||||
}),
|
||||
->canSeeWhen('create', VideoScript::class),
|
||||
|
||||
(new MoveScriptAction())
|
||||
->confirmButtonText(__('nova.actions.storage.move.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video script');
|
||||
}),
|
||||
->canSeeWhen('create', VideoScript::class),
|
||||
|
||||
(new DeleteScriptAction())
|
||||
->confirmText(__('nova.actions.video_script.delete.confirmText'))
|
||||
->confirmButtonText(__('nova.actions.storage.delete.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->exceptOnIndex()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('delete video script');
|
||||
}),
|
||||
->canSeeWhen('delete', VideoScript::class),
|
||||
|
||||
(new ReconcileScriptAction())
|
||||
->confirmButtonText(__('nova.actions.repositories.confirmButtonText'))
|
||||
->cancelButtonText(__('nova.actions.base.cancelButtonText'))
|
||||
->onlyOnIndex()
|
||||
->standalone()
|
||||
->canSee(function (Request $request) {
|
||||
$user = $request->user();
|
||||
|
||||
return $user instanceof User && $user->can('create video script');
|
||||
}),
|
||||
->canSeeWhen('create', VideoScript::class),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
@@ -39,7 +39,15 @@ class AppServiceProvider extends ServiceProvider
|
||||
Model::handleLazyLoadingViolationUsing(function (Model $model, string $relation) {
|
||||
$class = get_class($model);
|
||||
|
||||
Log::info("Attempted to lazy load [$relation] on model [$class]");
|
||||
Log::error("Attempted to lazy load [$relation] on model [$class]");
|
||||
});
|
||||
|
||||
Model::preventsAccessingMissingAttributes();
|
||||
|
||||
Model::handleMissingAttributeViolationUsing(function (Model $model, string $key) {
|
||||
$class = get_class($model);
|
||||
|
||||
Log::error("Attribute $key does not exist or was not retrieved for model [$class]");
|
||||
});
|
||||
|
||||
AboutCommand::add('Audios', [
|
||||
|
||||
Generated
+223
-219
File diff suppressed because it is too large
Load Diff
@@ -38,7 +38,7 @@ return [
|
||||
'secret' => env('PUSHER_APP_SECRET'),
|
||||
'app_id' => env('PUSHER_APP_ID'),
|
||||
'options' => [
|
||||
'host' => env('PUSHER_HOST', 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com',
|
||||
'host' => env('PUSHER_HOST') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com',
|
||||
'port' => env('PUSHER_PORT', 443),
|
||||
'scheme' => env('PUSHER_SCHEME', 'https'),
|
||||
'encrypted' => true,
|
||||
|
||||
@@ -22,7 +22,6 @@ parameters:
|
||||
- '#Strict comparison using === between class-string<Laravel\\Nova\\Resource> and null will always evaluate to false.#'
|
||||
- '#Call to an undefined method ProtoneMedia\\LaravelFFMpeg\\Drivers\\PHPFFMpeg::export\(\).#'
|
||||
- '#Call to an undefined method ProtoneMedia\\LaravelFFMpeg\\Drivers\\PHPFFMpeg::getProcessOutput\(\).#'
|
||||
- '#Call to an undefined static method Illuminate\\Support\\Facades\\Config::bool\(\).#'
|
||||
-
|
||||
message: '#Unreachable statement - code above always terminates.#'
|
||||
path: app/Http/Middleware/ThrottleRequestsWithService.php
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"/app.js": "/app.js?id=6caa5316e06082f6a22b0687b88b3ab0",
|
||||
"/app.js": "/app.js?id=2aa9e010923514dc7ac8eb52c320246e",
|
||||
"/app-dark.css": "/app-dark.css?id=ff172044c4efc9f08f12c0eb824b0226",
|
||||
"/app.css": "/app.css?id=a38514598173eedd6b8575a77bc1ead4",
|
||||
"/img/favicon.png": "/img/favicon.png?id=1542bfe8a0010dcbee710da13cce367f"
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+3
-3
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"/app.js": "/app.js?id=207ac6476549e584f9870be360cead08",
|
||||
"/app.js": "/app.js?id=c0b645aac9d8cdece5f28fcfdab66739",
|
||||
"/manifest.js": "/manifest.js?id=d75058ce2144a4049857d3ff9e02de1e",
|
||||
"/app.css": "/app.css?id=a4c58b3dbf2ee1f03b9a3fab8e304cf5",
|
||||
"/vendor.js": "/vendor.js?id=e15854a5c71630925db0da9393d8055c",
|
||||
"/app.css": "/app.css?id=23bddb78d6d670d7768880f61ea35270",
|
||||
"/vendor.js": "/vendor.js?id=de86bde8857e857b607852d11627d8e4",
|
||||
"/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty10iurt9w6fk2a.woff2": "/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty10iurt9w6fk2a.woff2?id=c8390e146be0a3c8a5498355dec892ae",
|
||||
"/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty14iurt9w6fk2a.woff2": "/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty14iurt9w6fk2a.woff2?id=b0735c7dd6126471acbaf9d6e9f5e41a",
|
||||
"/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty1ciurt9w6fk2a.woff2": "/fonts/snunitosansv11pe01mimslybiv1o4x1m8cce4g1pty1ciurt9w6fk2a.woff2?id=7c1fb232e3050e36dcc1aee61f1d0c06",
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user