chore: update depdendencies to anticipate Laravel 10 update (#559)

* chore: update depdendencies to anticipate Laravel 10 update

* style: fix StyleCI findings
This commit is contained in:
paranarimasu
2023-03-19 23:37:43 -05:00
committed by GitHub
parent b6aca7b877
commit 8faf07d56f
68 changed files with 1167 additions and 948 deletions
+8 -5
View File
@@ -5,7 +5,6 @@ declare(strict_types=1);
namespace App\Actions\Fortify; namespace App\Actions\Fortify;
use App\Models\Auth\User; use App\Models\Auth\User;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Arr; use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Validator;
@@ -22,12 +21,12 @@ class CreateNewUser implements CreatesNewUsers
/** /**
* Validate and create a newly registered user. * Validate and create a newly registered user.
* *
* @param array $input * @param array<string, string> $input
* @return Model * @return User
* *
* @throws ValidationException * @throws ValidationException
*/ */
public function create(array $input): Model public function create(array $input): User
{ {
Validator::make($input, [ Validator::make($input, [
'name' => ['required', 'string', 'max:255', 'alpha_dash', Rule::unique(User::TABLE)], 'name' => ['required', 'string', 'max:255', 'alpha_dash', Rule::unique(User::TABLE)],
@@ -36,10 +35,14 @@ class CreateNewUser implements CreatesNewUsers
'terms' => ['required'], 'terms' => ['required'],
])->validate(); ])->validate();
return User::query()->create([ $user = new User([
User::ATTRIBUTE_NAME => Arr::get($input, 'name'), User::ATTRIBUTE_NAME => Arr::get($input, 'name'),
User::ATTRIBUTE_EMAIL => Arr::get($input, 'email'), User::ATTRIBUTE_EMAIL => Arr::get($input, 'email'),
User::ATTRIBUTE_PASSWORD => Hash::make(Arr::get($input, 'password')), User::ATTRIBUTE_PASSWORD => Hash::make(Arr::get($input, 'password')),
]); ]);
$user->save();
return $user;
} }
} }
+3 -3
View File
@@ -20,13 +20,13 @@ class ResetUserPassword implements ResetsUserPasswords
/** /**
* Validate and reset the user's forgotten password. * Validate and reset the user's forgotten password.
* *
* @param mixed $user * @param User $user
* @param array $input * @param array<string, string> $input
* @return void * @return void
* *
* @throws ValidationException * @throws ValidationException
*/ */
public function reset($user, array $input): void public function reset(User $user, array $input): void
{ {
Validator::make($input, [ Validator::make($input, [
'password' => Password::required(), 'password' => Password::required(),
+3 -3
View File
@@ -21,13 +21,13 @@ class UpdateUserPassword implements UpdatesUserPasswords
/** /**
* Validate and update the user's password. * Validate and update the user's password.
* *
* @param mixed $user * @param User $user
* @param array $input * @param array<string, string> $input
* @return void * @return void
* *
* @throws ValidationException * @throws ValidationException
*/ */
public function update($user, array $input): void public function update(User $user, array $input): void
{ {
Validator::make($input, [ Validator::make($input, [
'current_password' => ['required', 'string'], 'current_password' => ['required', 'string'],
@@ -5,7 +5,6 @@ declare(strict_types=1);
namespace App\Actions\Fortify; namespace App\Actions\Fortify;
use App\Models\Auth\User; use App\Models\Auth\User;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Support\Arr; use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
@@ -20,13 +19,13 @@ class UpdateUserProfileInformation implements UpdatesUserProfileInformation
/** /**
* Validate and update the given user's profile information. * Validate and update the given user's profile information.
* *
* @param mixed $user * @param User $user
* @param array $input * @param array<string, string> $input
* @return void * @return void
* *
* @throws ValidationException * @throws ValidationException
*/ */
public function update(mixed $user, array $input): void public function update(User $user, array $input): void
{ {
$validated = Validator::make($input, [ $validated = Validator::make($input, [
User::ATTRIBUTE_NAME => ['sometimes', 'required', 'string', 'max:255', 'alpha_dash', Rule::unique(User::TABLE)->ignore($user->id)], User::ATTRIBUTE_NAME => ['sometimes', 'required', 'string', 'max:255', 'alpha_dash', Rule::unique(User::TABLE)->ignore($user->id)],
@@ -34,7 +33,7 @@ class UpdateUserProfileInformation implements UpdatesUserProfileInformation
])->validate(); ])->validate();
$email = Arr::get($validated, User::ATTRIBUTE_EMAIL); $email = Arr::get($validated, User::ATTRIBUTE_EMAIL);
if ($email !== $user->email && $user instanceof MustVerifyEmail) { if ($email !== $user->email) {
$validated = $validated + [User::ATTRIBUTE_EMAIL_VERIFIED_AT => null]; $validated = $validated + [User::ATTRIBUTE_EMAIL_VERIFIED_AT => null];
$user->update($validated); $user->update($validated);
@@ -44,7 +44,7 @@ class DumpDocumentAction extends DumpAction
return Str::of($filesystem->path('')) return Str::of($filesystem->path(''))
->append(DumpDocumentAction::FILENAME_PREFIX) ->append(DumpDocumentAction::FILENAME_PREFIX)
->append(intval(Date::now()->valueOf())) ->append(strval(Date::now()->valueOf()))
->append('.sql') ->append('.sql')
->__toString(); ->__toString();
} }
@@ -90,7 +90,7 @@ class DumpWikiAction extends DumpAction
return Str::of($filesystem->path('')) return Str::of($filesystem->path(''))
->append(DumpWikiAction::FILENAME_PREFIX) ->append(DumpWikiAction::FILENAME_PREFIX)
->append(intval(Date::now()->valueOf())) ->append(strval(Date::now()->valueOf()))
->append('.sql') ->append('.sql')
->__toString(); ->__toString();
} }
+1 -1
View File
@@ -54,7 +54,7 @@ class NovaServiceProvider extends NovaApplicationServiceProvider
} }
$lensSection = MenuSection::make(__('nova.menu.main.section.lenses'), $lenses, 'video-camera') $lensSection = MenuSection::make(__('nova.menu.main.section.lenses'), $lenses, 'video-camera')
->collapsable(); ->collapsedByDefault();
$menu->items[] = $lensSection; $menu->items[] = $lensSection;
+21 -18
View File
@@ -29,26 +29,26 @@
"ext-intl": "*", "ext-intl": "*",
"ext-pdo": "*", "ext-pdo": "*",
"akaunting/laravel-setting": "^1.2", "akaunting/laravel-setting": "^1.2",
"babenkoivan/elastic-migrations": "^3.0", "babenkoivan/elastic-migrations": "^3.3",
"babenkoivan/elastic-scout-driver-plus": "^4.0", "babenkoivan/elastic-scout-driver-plus": "^4.3",
"bensampo/laravel-enum": "^6.0", "bensampo/laravel-enum": "^6.3",
"bepsvpt/secure-headers": "^7.2", "bepsvpt/secure-headers": "^7.4",
"cyrildewit/eloquent-viewable": "^6.1", "cyrildewit/eloquent-viewable": "^6.1",
"fakerphp/faker": "^1.21", "fakerphp/faker": "^1.21",
"guzzlehttp/guzzle": "^7.5", "guzzlehttp/guzzle": "^7.5",
"laravel-notification-channels/discord": "^1.3", "laravel-notification-channels/discord": "^1.4",
"laravel/fortify": "^1.13", "laravel/fortify": "^1.16",
"laravel/framework": "^9.45", "laravel/framework": "^9.45",
"laravel/horizon": "^5.8", "laravel/horizon": "^5.12",
"laravel/nova": "^4.19", "laravel/nova": "^4.22.2",
"laravel/sanctum": "^3.0", "laravel/sanctum": "^3.2",
"laravel/scout": "^9.4", "laravel/scout": "^10.0",
"laravel/telescope": "^4.7", "laravel/telescope": "^4.12",
"laravel/tinker": "^2.7", "laravel/tinker": "^2.8",
"league/flysystem-aws-s3-v3": "^3.0", "league/flysystem-aws-s3-v3": "^3.0",
"pbmedia/laravel-ffmpeg": "^8.2", "pbmedia/laravel-ffmpeg": "^8.3",
"spatie/db-dumper": "^3.1.1", "spatie/db-dumper": "^3.1.1",
"spatie/laravel-permission": "^5.5", "spatie/laravel-permission": "^5.8",
"staudenmeir/belongs-to-through": "^2.12", "staudenmeir/belongs-to-through": "^2.12",
"staudenmeir/laravel-adjacency-list": "^1.12", "staudenmeir/laravel-adjacency-list": "^1.12",
"symfony/http-client": "^6.0", "symfony/http-client": "^6.0",
@@ -56,10 +56,10 @@
}, },
"require-dev": { "require-dev": {
"brianium/paratest": "^6.7", "brianium/paratest": "^6.7",
"laravel/pint": "^1.0", "laravel/pint": "^1.6",
"mockery/mockery": "^1.5.1", "mockery/mockery": "^1.5.1",
"nunomaduro/collision": "^6.1", "nunomaduro/collision": "^6.1",
"nunomaduro/larastan": "^2.0", "nunomaduro/larastan": "^2.4",
"phpunit/phpunit": "^9.5.10", "phpunit/phpunit": "^9.5.10",
"predis/predis": "^2.0", "predis/predis": "^2.0",
"spatie/laravel-ignition": "^1.6" "spatie/laravel-ignition": "^1.6"
@@ -71,7 +71,10 @@
"ext-posix": "8.2" "ext-posix": "8.2"
}, },
"preferred-install": "dist", "preferred-install": "dist",
"sort-packages": true "sort-packages": true,
"allow-plugins": {
"php-http/discovery": true
}
}, },
"extra": { "extra": {
"laravel": { "laravel": {
@@ -90,7 +93,7 @@
"Tests\\": "tests/" "Tests\\": "tests/"
} }
}, },
"minimum-stability": "dev", "minimum-stability": "stable",
"prefer-stable": true, "prefer-stable": true,
"scripts": { "scripts": {
"post-autoload-dump": [ "post-autoload-dump": [
Generated
+912 -878
View File
File diff suppressed because it is too large Load Diff
+11 -3
View File
@@ -3,7 +3,15 @@
declare(strict_types=1); declare(strict_types=1);
return [ return [
'table' => env('ELASTIC_MIGRATIONS_TABLE', 'elastic_migrations'), 'storage' => [
'storage_directory' => env('ELASTIC_MIGRATIONS_DIRECTORY', base_path('elastic/migrations')), 'default_path' => env('ELASTIC_MIGRATIONS_DEFAULT_PATH', base_path('elastic/migrations')),
'index_name_prefix' => env('ELASTIC_MIGRATIONS_INDEX_NAME_PREFIX', env('SCOUT_PREFIX', '')), ],
'database' => [
'table' => env('ELASTIC_MIGRATIONS_TABLE', 'elastic_migrations'),
'connection' => env('ELASTIC_MIGRATIONS_CONNECTION'),
],
'prefixes' => [
'index' => env('ELASTIC_MIGRATIONS_INDEX_PREFIX', env('SCOUT_PREFIX', '')),
'alias' => env('ELASTIC_MIGRATIONS_ALIAS_PREFIX', env('SCOUT_PREFIX', '')),
],
]; ];
+15
View File
@@ -109,6 +109,21 @@ return [
'monitored' => 10080, 'monitored' => 10080,
], ],
/*
|--------------------------------------------------------------------------
| Silenced Jobs
|--------------------------------------------------------------------------
|
| Silencing a job will instruct Horizon to not place the job in the list
| of completed jobs within the Horizon dashboard. This setting may be
| used to fully remove any noisy jobs from the completed jobs list.
|
*/
'silenced' => [
// App\Jobs\ExampleJob::class,
],
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| Metrics | Metrics
+15
View File
@@ -195,4 +195,19 @@ return [
'resource' => ActionResource::class, 'resource' => ActionResource::class,
], ],
/*
|--------------------------------------------------------------------------
| Nova Impersonation Redirection URLs
|--------------------------------------------------------------------------
|
| This configuration option allows you to specify a URL where Nova should
| redirect an administrator after impersonating another user and a URL
| to redirect the administrator after stopping impersonating a user.
|
*/
'impersonation' => [
'started' => '/',
'stopped' => '/',
],
]; ];
+2 -2
View File
@@ -44,8 +44,8 @@ return [
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
| |
| This value controls the number of minutes until an issued token will be | This value controls the number of minutes until an issued token will be
| considered expired. If this value is null, personal access tokens do | considered expired. This will override any values set in the token's
| not expire. This won't tweak the lifetime of first-party sessions. | "expires_at" attribute, but first-party sessions are not affected.
| |
*/ */
+25 -2
View File
@@ -13,7 +13,7 @@ return [
| using Laravel Scout. This connection is used when syncing all models | using Laravel Scout. This connection is used when syncing all models
| to the search service. You should adjust this based on your needs. | to the search service. You should adjust this based on your needs.
| |
| Supported: "algolia", "null" | Supported: "algolia", "meilisearch", "database", "collection", "null"
| |
*/ */
@@ -56,7 +56,7 @@ return [
| |
*/ */
'after_commit' => false, 'after_commit' => true,
/* /*
|-------------------------------------------------------------------------- |--------------------------------------------------------------------------
@@ -118,4 +118,27 @@ return [
'secret' => env('ALGOLIA_SECRET', ''), 'secret' => env('ALGOLIA_SECRET', ''),
], ],
/*
|--------------------------------------------------------------------------
| Meilisearch Configuration
|--------------------------------------------------------------------------
|
| Here you may configure your Meilisearch settings. Meilisearch is an open
| source search engine with minimal configuration. Below, you can state
| the host and key information for your own Meilisearch installation.
|
| See: https://docs.meilisearch.com/guides/advanced_guides/configuration.html
|
*/
'meilisearch' => [
'host' => env('MEILISEARCH_HOST', 'http://localhost:7700'),
'key' => env('MEILISEARCH_KEY'),
'index-settings' => [
// 'users' => [
// 'filterableAttributes'=> ['id', 'name', 'email'],
// ],
],
],
]; ];
+27
View File
@@ -83,6 +83,33 @@ return [
'referrer-policy' => 'no-referrer', 'referrer-policy' => 'no-referrer',
/*
* Cross-Origin-Embedder-Policy
*
* Reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Embedder-Policy
*
* Available Value: 'unsafe-none', 'require-corp'
*/
'cross-origin-embedder-policy' => 'unsafe-none',
/*
* Cross-Origin-Opener-Policy
*
* Reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy
*
* Available Value: 'unsafe-none', 'same-origin-allow-popups', 'same-origin'
*/
'cross-origin-opener-policy' => 'unsafe-none',
/*
* Cross-Origin-Resource-Policy
*
* Reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Resource-Policy
*
* Available Value: 'same-site', 'same-origin', 'cross-origin'
*/
'cross-origin-resource-policy' => 'cross-origin',
/* /*
* Clear-Site-Data * Clear-Site-Data
* *
+15 -4
View File
@@ -124,12 +124,17 @@ return [
'hidden' => [], 'hidden' => [],
], ],
Watchers\ClientRequestWatcher::class => env('TELESCOPE_CLIENT_REQUEST_WATCHER', true),
Watchers\CommandWatcher::class => [ Watchers\CommandWatcher::class => [
'enabled' => env('TELESCOPE_COMMAND_WATCHER', true), 'enabled' => env('TELESCOPE_COMMAND_WATCHER', true),
'ignore' => [], 'ignore' => [],
], ],
Watchers\DumpWatcher::class => env('TELESCOPE_DUMP_WATCHER', true), Watchers\DumpWatcher::class => [
'enabled' => env('TELESCOPE_DUMP_WATCHER', true),
'always' => env('TELESCOPE_DUMP_WATCHER_ALWAYS', false),
],
Watchers\EventWatcher::class => [ Watchers\EventWatcher::class => [
'enabled' => env('TELESCOPE_EVENT_WATCHER', true), 'enabled' => env('TELESCOPE_EVENT_WATCHER', true),
@@ -142,10 +147,16 @@ return [
'enabled' => env('TELESCOPE_GATE_WATCHER', true), 'enabled' => env('TELESCOPE_GATE_WATCHER', true),
'ignore_abilities' => [], 'ignore_abilities' => [],
'ignore_packages' => true, 'ignore_packages' => true,
'ignore_paths' => [],
], ],
Watchers\JobWatcher::class => env('TELESCOPE_JOB_WATCHER', true), Watchers\JobWatcher::class => env('TELESCOPE_JOB_WATCHER', true),
Watchers\LogWatcher::class => env('TELESCOPE_LOG_WATCHER', true),
Watchers\LogWatcher::class => [
'enabled' => env('TELESCOPE_LOG_WATCHER', true),
'level' => 'error',
],
Watchers\MailWatcher::class => env('TELESCOPE_MAIL_WATCHER', true), Watchers\MailWatcher::class => env('TELESCOPE_MAIL_WATCHER', true),
Watchers\ModelWatcher::class => [ Watchers\ModelWatcher::class => [
@@ -159,6 +170,7 @@ return [
Watchers\QueryWatcher::class => [ Watchers\QueryWatcher::class => [
'enabled' => env('TELESCOPE_QUERY_WATCHER', true), 'enabled' => env('TELESCOPE_QUERY_WATCHER', true),
'ignore_packages' => true, 'ignore_packages' => true,
'ignore_paths' => [],
'slow' => 100, 'slow' => 100,
], ],
@@ -167,12 +179,11 @@ return [
Watchers\RequestWatcher::class => [ Watchers\RequestWatcher::class => [
'enabled' => env('TELESCOPE_REQUEST_WATCHER', true), 'enabled' => env('TELESCOPE_REQUEST_WATCHER', true),
'size_limit' => env('TELESCOPE_RESPONSE_SIZE_LIMIT', 64), 'size_limit' => env('TELESCOPE_RESPONSE_SIZE_LIMIT', 64),
'ignore_http_methods' => [],
'ignore_status_codes' => [], 'ignore_status_codes' => [],
], ],
Watchers\ScheduleWatcher::class => env('TELESCOPE_SCHEDULE_WATCHER', true), Watchers\ScheduleWatcher::class => env('TELESCOPE_SCHEDULE_WATCHER', true),
Watchers\ViewWatcher::class => env('TELESCOPE_VIEW_WATCHER', true), Watchers\ViewWatcher::class => env('TELESCOPE_VIEW_WATCHER', true),
], ],
]; ];
@@ -17,7 +17,7 @@ return new class extends Migration
{ {
if (! Schema::hasTable('password_resets')) { if (! Schema::hasTable('password_resets')) {
Schema::create('password_resets', function (Blueprint $table) { Schema::create('password_resets', function (Blueprint $table) {
$table->string('email')->index(); $table->string('email')->primary();
$table->string('token'); $table->string('token');
$table->timestamp('created_at')->nullable(); $table->timestamp('created_at')->nullable();
}); });
+5
View File
@@ -110,6 +110,11 @@ return [
'string' => 'The :attribute must be at least :min characters.', 'string' => 'The :attribute must be at least :min characters.',
], ],
'min_digits' => 'The :attribute must have at least :min digits.', 'min_digits' => 'The :attribute must have at least :min digits.',
'missing' => 'The :attribute field must be missing.',
'missing_if' => 'The :attribute field must be missing when :other is :value.',
'missing_unless' => 'The :attribute field must be missing unless :other is :value.',
'missing_with' => 'The :attribute field must be missing when :values is present.',
'missing_with_all' => 'The :attribute field must be missing when :values are present.',
'multiple_of' => 'The :attribute must be a multiple of :value.', 'multiple_of' => 'The :attribute must be a multiple of :value.',
'not_in' => 'The selected :attribute is invalid.', 'not_in' => 'The selected :attribute is invalid.',
'not_regex' => 'The :attribute format is invalid.', 'not_regex' => 'The :attribute format is invalid.',
+2 -2
View File
File diff suppressed because one or more lines are too long
+2 -2
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,7 +1,7 @@
{ {
"/app.js": "/app.js?id=0f8def17167a0224d5704239fefc69ea", "/app.js": "/app.js?id=45904d8bd75c65ee5c136a52a5e8ead6",
"/app-dark.css": "/app-dark.css?id=23ca8adc130382f74688c6e36ce89407", "/app-dark.css": "/app-dark.css?id=15c72df05e2b1147fa3e4b0670cfb435",
"/app.css": "/app.css?id=7357f6239c73ee903eba42be0458d3ab", "/app.css": "/app.css?id=4d6a1a7fe095eedc2cb2a4ce822ea8a5",
"/img/favicon.png": "/img/favicon.png?id=1542bfe8a0010dcbee710da13cce367f", "/img/favicon.png": "/img/favicon.png?id=1542bfe8a0010dcbee710da13cce367f",
"/img/horizon.svg": "/img/horizon.svg?id=904d5b5185fefb09035384e15bfca765", "/img/horizon.svg": "/img/horizon.svg?id=904d5b5185fefb09035384e15bfca765",
"/img/sprite.svg": "/img/sprite.svg?id=afc4952b74895bdef3ab4ebe9adb746f" "/img/sprite.svg": "/img/sprite.svg?id=afc4952b74895bdef3ab4ebe9adb746f"
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,5 +1,5 @@
{ {
"/app.js": "/app.js?id=08317cb3c83c7035246fe3d474db3454", "/app.js": "/app.js?id=a8713c727883a44917711340bf6c817a",
"/app-dark.css": "/app-dark.css?id=3ae28ef5f7b987d68dc611118c646308", "/app-dark.css": "/app-dark.css?id=b44bf369e5d39f6861be639ef866bf5a",
"/app.css": "/app.css?id=7c970f699ed9cf60d80b273b4ad2ad61" "/app.css": "/app.css?id=41c5661581f2614180d6d33c17470f08"
} }
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Admin\AnnouncementSchema; use App\Http\Api\Schema\Admin\AnnouncementSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Admin\Collection\AnnouncementCollection; use App\Http\Resources\Admin\Collection\AnnouncementCollection;
use App\Http\Resources\Admin\Resource\AnnouncementResource; use App\Http\Resources\Admin\Resource\AnnouncementResource;
use App\Models\Admin\Announcement; use App\Models\Admin\Announcement;
@@ -121,6 +122,7 @@ class AnnouncementIndexTest extends TestCase
{ {
$schema = new AnnouncementSchema(); $schema = new AnnouncementSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Admin\DumpSchema; use App\Http\Api\Schema\Admin\DumpSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Admin\Collection\DumpCollection; use App\Http\Resources\Admin\Collection\DumpCollection;
use App\Http\Resources\Admin\Resource\DumpResource; use App\Http\Resources\Admin\Resource\DumpResource;
use App\Models\Admin\Dump; use App\Models\Admin\Dump;
@@ -121,6 +122,7 @@ class DumpIndexTest extends TestCase
{ {
$schema = new DumpSchema(); $schema = new DumpSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Billing\BalanceSchema; use App\Http\Api\Schema\Billing\BalanceSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Billing\Collection\BalanceCollection; use App\Http\Resources\Billing\Collection\BalanceCollection;
use App\Http\Resources\Billing\Resource\BalanceResource; use App\Http\Resources\Billing\Resource\BalanceResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -121,6 +122,7 @@ class BalanceIndexTest extends TestCase
{ {
$schema = new BalanceSchema(); $schema = new BalanceSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Billing\TransactionSchema; use App\Http\Api\Schema\Billing\TransactionSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Billing\Collection\TransactionCollection; use App\Http\Resources\Billing\Collection\TransactionCollection;
use App\Http\Resources\Billing\Resource\TransactionResource; use App\Http\Resources\Billing\Resource\TransactionResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -121,6 +122,7 @@ class TransactionIndexTest extends TestCase
{ {
$schema = new TransactionSchema(); $schema = new TransactionSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Document\PageSchema; use App\Http\Api\Schema\Document\PageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Document\Collection\PageCollection; use App\Http\Resources\Document\Collection\PageCollection;
use App\Http\Resources\Document\Resource\PageResource; use App\Http\Resources\Document\Resource\PageResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -121,6 +122,7 @@ class PageIndexTest extends TestCase
{ {
$schema = new PageSchema(); $schema = new PageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema; use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Playlist\Collection\TrackCollection; use App\Http\Resources\List\Playlist\Collection\TrackCollection;
use App\Http\Resources\List\Playlist\Resource\TrackResource; use App\Http\Resources\List\Playlist\Resource\TrackResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -296,6 +297,7 @@ class PlaylistBackwardIndexTest extends TestCase
{ {
$schema = new ForwardBackwardSchema(); $schema = new ForwardBackwardSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema; use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Playlist\Collection\TrackCollection; use App\Http\Resources\List\Playlist\Collection\TrackCollection;
use App\Http\Resources\List\Playlist\Resource\TrackResource; use App\Http\Resources\List\Playlist\Resource\TrackResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -296,6 +297,7 @@ class PlaylistForwardIndexTest extends TestCase
{ {
$schema = new ForwardBackwardSchema(); $schema = new ForwardBackwardSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\PlaylistSchema; use App\Http\Api\Schema\List\PlaylistSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Collection\PlaylistCollection; use App\Http\Resources\List\Collection\PlaylistCollection;
use App\Http\Resources\List\Resource\PlaylistResource; use App\Http\Resources\List\Resource\PlaylistResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -197,6 +198,7 @@ class PlaylistIndexTest extends TestCase
{ {
$schema = new PlaylistSchema(); $schema = new PlaylistSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema; use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Playlist\Collection\TrackCollection; use App\Http\Resources\List\Playlist\Collection\TrackCollection;
use App\Http\Resources\List\Playlist\Resource\TrackResource; use App\Http\Resources\List\Playlist\Resource\TrackResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -312,6 +313,7 @@ class TrackBackwardIndexTest extends TestCase
{ {
$schema = new ForwardBackwardSchema(); $schema = new ForwardBackwardSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema; use App\Http\Api\Schema\List\Playlist\ForwardBackwardSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Playlist\Collection\TrackCollection; use App\Http\Resources\List\Playlist\Collection\TrackCollection;
use App\Http\Resources\List\Playlist\Resource\TrackResource; use App\Http\Resources\List\Playlist\Resource\TrackResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -312,6 +313,7 @@ class TrackForwardIndexTest extends TestCase
{ {
$schema = new ForwardBackwardSchema(); $schema = new ForwardBackwardSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\List\Playlist\TrackSchema; use App\Http\Api\Schema\List\Playlist\TrackSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\List\Playlist\Collection\TrackCollection; use App\Http\Resources\List\Playlist\Collection\TrackCollection;
use App\Http\Resources\List\Playlist\Resource\TrackResource; use App\Http\Resources\List\Playlist\Resource\TrackResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -309,6 +310,7 @@ class TrackIndexTest extends TestCase
{ {
$schema = new TrackSchema(); $schema = new TrackSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -20,6 +20,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\List\PlaylistImageSchema; use App\Http\Api\Schema\Pivot\List\PlaylistImageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\List\Collection\PlaylistImageCollection; use App\Http\Resources\Pivot\List\Collection\PlaylistImageCollection;
use App\Http\Resources\Pivot\List\Resource\PlaylistImageResource; use App\Http\Resources\Pivot\List\Resource\PlaylistImageResource;
use App\Models\Auth\User; use App\Models\Auth\User;
@@ -248,6 +249,7 @@ class PlaylistImageIndexTest extends TestCase
{ {
$schema = new PlaylistImageSchema(); $schema = new PlaylistImageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -20,6 +20,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\AnimeImageSchema; use App\Http\Api\Schema\Pivot\Wiki\AnimeImageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\AnimeImageCollection; use App\Http\Resources\Pivot\Wiki\Collection\AnimeImageCollection;
use App\Http\Resources\Pivot\Wiki\Resource\AnimeImageResource; use App\Http\Resources\Pivot\Wiki\Resource\AnimeImageResource;
use App\Models\Wiki\Anime; use App\Models\Wiki\Anime;
@@ -188,6 +189,7 @@ class AnimeImageIndexTest extends TestCase
{ {
$schema = new AnimeImageSchema(); $schema = new AnimeImageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -20,6 +20,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\AnimeResourceSchema; use App\Http\Api\Schema\Pivot\Wiki\AnimeResourceSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\AnimeResourceCollection; use App\Http\Resources\Pivot\Wiki\Collection\AnimeResourceCollection;
use App\Http\Resources\Pivot\Wiki\Resource\AnimeResourceResource; use App\Http\Resources\Pivot\Wiki\Resource\AnimeResourceResource;
use App\Models\Wiki\Anime; use App\Models\Wiki\Anime;
@@ -188,6 +189,7 @@ class AnimeResourceIndexTest extends TestCase
{ {
$schema = new AnimeResourceSchema(); $schema = new AnimeResourceSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\AnimeSeriesSchema; use App\Http\Api\Schema\Pivot\Wiki\AnimeSeriesSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\AnimeSeriesCollection; use App\Http\Resources\Pivot\Wiki\Collection\AnimeSeriesCollection;
use App\Http\Resources\Pivot\Wiki\Resource\AnimeSeriesResource; use App\Http\Resources\Pivot\Wiki\Resource\AnimeSeriesResource;
use App\Models\Wiki\Anime; use App\Models\Wiki\Anime;
@@ -187,6 +188,7 @@ class AnimeSeriesIndexTest extends TestCase
{ {
$schema = new AnimeSeriesSchema(); $schema = new AnimeSeriesSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\AnimeStudioSchema; use App\Http\Api\Schema\Pivot\Wiki\AnimeStudioSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\AnimeStudioCollection; use App\Http\Resources\Pivot\Wiki\Collection\AnimeStudioCollection;
use App\Http\Resources\Pivot\Wiki\Resource\AnimeStudioResource; use App\Http\Resources\Pivot\Wiki\Resource\AnimeStudioResource;
use App\Models\Wiki\Anime; use App\Models\Wiki\Anime;
@@ -187,6 +188,7 @@ class AnimeStudioIndexTest extends TestCase
{ {
$schema = new AnimeStudioSchema(); $schema = new AnimeStudioSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -20,6 +20,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\AnimeThemeEntryVideoSchema; use App\Http\Api\Schema\Pivot\Wiki\AnimeThemeEntryVideoSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\AnimeThemeEntryVideoCollection; use App\Http\Resources\Pivot\Wiki\Collection\AnimeThemeEntryVideoCollection;
use App\Http\Resources\Pivot\Wiki\Resource\AnimeThemeEntryVideoResource; use App\Http\Resources\Pivot\Wiki\Resource\AnimeThemeEntryVideoResource;
use App\Models\Wiki\Anime; use App\Models\Wiki\Anime;
@@ -190,6 +191,7 @@ class AnimeThemeEntryVideoIndexTest extends TestCase
{ {
$schema = new AnimeThemeEntryVideoSchema(); $schema = new AnimeThemeEntryVideoSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\ArtistImageSchema; use App\Http\Api\Schema\Pivot\Wiki\ArtistImageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\ArtistImageCollection; use App\Http\Resources\Pivot\Wiki\Collection\ArtistImageCollection;
use App\Http\Resources\Pivot\Wiki\Resource\ArtistImageResource; use App\Http\Resources\Pivot\Wiki\Resource\ArtistImageResource;
use App\Models\Wiki\Artist; use App\Models\Wiki\Artist;
@@ -187,6 +188,7 @@ class ArtistImageIndexTest extends TestCase
{ {
$schema = new ArtistImageSchema(); $schema = new ArtistImageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\ArtistMemberSchema; use App\Http\Api\Schema\Pivot\Wiki\ArtistMemberSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\ArtistMemberCollection; use App\Http\Resources\Pivot\Wiki\Collection\ArtistMemberCollection;
use App\Http\Resources\Pivot\Wiki\Resource\ArtistMemberResource; use App\Http\Resources\Pivot\Wiki\Resource\ArtistMemberResource;
use App\Models\Wiki\Artist; use App\Models\Wiki\Artist;
@@ -184,6 +185,7 @@ class ArtistMemberIndexTest extends TestCase
{ {
$schema = new ArtistMemberSchema(); $schema = new ArtistMemberSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\ArtistResourceSchema; use App\Http\Api\Schema\Pivot\Wiki\ArtistResourceSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\ArtistResourceCollection; use App\Http\Resources\Pivot\Wiki\Collection\ArtistResourceCollection;
use App\Http\Resources\Pivot\Wiki\Resource\ArtistResourceResource; use App\Http\Resources\Pivot\Wiki\Resource\ArtistResourceResource;
use App\Models\Wiki\Artist; use App\Models\Wiki\Artist;
@@ -187,6 +188,7 @@ class ArtistResourceIndexTest extends TestCase
{ {
$schema = new ArtistResourceSchema(); $schema = new ArtistResourceSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -18,6 +18,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\ArtistSongSchema; use App\Http\Api\Schema\Pivot\Wiki\ArtistSongSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\ArtistSongCollection; use App\Http\Resources\Pivot\Wiki\Collection\ArtistSongCollection;
use App\Http\Resources\Pivot\Wiki\Resource\ArtistSongResource; use App\Http\Resources\Pivot\Wiki\Resource\ArtistSongResource;
use App\Models\Wiki\Artist; use App\Models\Wiki\Artist;
@@ -185,6 +186,7 @@ class ArtistSongIndexTest extends TestCase
{ {
$schema = new ArtistSongSchema(); $schema = new ArtistSongSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\StudioImageSchema; use App\Http\Api\Schema\Pivot\Wiki\StudioImageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\StudioImageCollection; use App\Http\Resources\Pivot\Wiki\Collection\StudioImageCollection;
use App\Http\Resources\Pivot\Wiki\Resource\StudioImageResource; use App\Http\Resources\Pivot\Wiki\Resource\StudioImageResource;
use App\Models\Wiki\Image; use App\Models\Wiki\Image;
@@ -187,6 +188,7 @@ class StudioImageIndexTest extends TestCase
{ {
$schema = new StudioImageSchema(); $schema = new StudioImageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -19,6 +19,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Pivot\Wiki\StudioResourceSchema; use App\Http\Api\Schema\Pivot\Wiki\StudioResourceSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Pivot\Wiki\Collection\StudioResourceCollection; use App\Http\Resources\Pivot\Wiki\Collection\StudioResourceCollection;
use App\Http\Resources\Pivot\Wiki\Resource\StudioResourceResource; use App\Http\Resources\Pivot\Wiki\Resource\StudioResourceResource;
use App\Models\Wiki\ExternalResource; use App\Models\Wiki\ExternalResource;
@@ -187,6 +188,7 @@ class StudioResourceIndexTest extends TestCase
{ {
$schema = new StudioResourceSchema(); $schema = new StudioResourceSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -26,6 +26,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\AnimeSchema; use App\Http\Api\Schema\Wiki\AnimeSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\AnimeCollection; use App\Http\Resources\Wiki\Collection\AnimeCollection;
use App\Http\Resources\Wiki\Resource\AnimeResource; use App\Http\Resources\Wiki\Resource\AnimeResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -173,6 +174,7 @@ class AnimeIndexTest extends TestCase
{ {
$schema = new AnimeSchema(); $schema = new AnimeSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -21,6 +21,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\Anime\SynonymSchema; use App\Http\Api\Schema\Wiki\Anime\SynonymSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Anime\Collection\SynonymCollection; use App\Http\Resources\Wiki\Anime\Collection\SynonymCollection;
use App\Http\Resources\Wiki\Anime\Resource\SynonymResource; use App\Http\Resources\Wiki\Anime\Resource\SynonymResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -179,6 +180,7 @@ class SynonymIndexTest extends TestCase
{ {
$schema = new SynonymSchema(); $schema = new SynonymSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\Anime\Theme\EntrySchema; use App\Http\Api\Schema\Wiki\Anime\Theme\EntrySchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Anime\Theme\Collection\EntryCollection; use App\Http\Resources\Wiki\Anime\Theme\Collection\EntryCollection;
use App\Http\Resources\Wiki\Anime\Theme\Resource\EntryResource; use App\Http\Resources\Wiki\Anime\Theme\Resource\EntryResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -180,6 +181,7 @@ class EntryIndexTest extends TestCase
{ {
$schema = new EntrySchema(); $schema = new EntrySchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -25,6 +25,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\Anime\ThemeSchema; use App\Http\Api\Schema\Wiki\Anime\ThemeSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Anime\Collection\ThemeCollection; use App\Http\Resources\Wiki\Anime\Collection\ThemeCollection;
use App\Http\Resources\Wiki\Anime\Resource\ThemeResource; use App\Http\Resources\Wiki\Anime\Resource\ThemeResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -197,6 +198,7 @@ class ThemeIndexTest extends TestCase
{ {
$schema = new ThemeSchema(); $schema = new ThemeSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -24,6 +24,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\ArtistSchema; use App\Http\Api\Schema\Wiki\ArtistSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\ArtistCollection; use App\Http\Resources\Wiki\Collection\ArtistCollection;
use App\Http\Resources\Wiki\Resource\ArtistResource; use App\Http\Resources\Wiki\Resource\ArtistResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -175,6 +176,7 @@ class ArtistIndexTest extends TestCase
{ {
$schema = new ArtistSchema(); $schema = new ArtistSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -20,6 +20,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\AudioSchema; use App\Http\Api\Schema\Wiki\AudioSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\AudioCollection; use App\Http\Resources\Wiki\Collection\AudioCollection;
use App\Http\Resources\Wiki\Resource\AudioResource; use App\Http\Resources\Wiki\Resource\AudioResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -170,6 +171,7 @@ class AudioIndexTest extends TestCase
{ {
$schema = new AudioSchema(); $schema = new AudioSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\ExternalResourceSchema; use App\Http\Api\Schema\Wiki\ExternalResourceSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\ExternalResourceCollection; use App\Http\Resources\Wiki\Collection\ExternalResourceCollection;
use App\Http\Resources\Wiki\Resource\ExternalResourceResource; use App\Http\Resources\Wiki\Resource\ExternalResourceResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -173,6 +174,7 @@ class ExternalResourceIndexTest extends TestCase
{ {
$schema = new ExternalResourceSchema(); $schema = new ExternalResourceSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\ImageSchema; use App\Http\Api\Schema\Wiki\ImageSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\ImageCollection; use App\Http\Resources\Wiki\Collection\ImageCollection;
use App\Http\Resources\Wiki\Resource\ImageResource; use App\Http\Resources\Wiki\Resource\ImageResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -173,6 +174,7 @@ class ImageIndexTest extends TestCase
{ {
$schema = new ImageSchema(); $schema = new ImageSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -21,6 +21,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\SeriesSchema; use App\Http\Api\Schema\Wiki\SeriesSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\SeriesCollection; use App\Http\Resources\Wiki\Collection\SeriesCollection;
use App\Http\Resources\Wiki\Resource\SeriesResource; use App\Http\Resources\Wiki\Resource\SeriesResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -167,6 +168,7 @@ class SeriesIndexTest extends TestCase
{ {
$schema = new SeriesSchema(); $schema = new SeriesSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\SongSchema; use App\Http\Api\Schema\Wiki\SongSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\SongCollection; use App\Http\Resources\Wiki\Collection\SongCollection;
use App\Http\Resources\Wiki\Resource\SongResource; use App\Http\Resources\Wiki\Resource\SongResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -172,6 +173,7 @@ class SongIndexTest extends TestCase
{ {
$schema = new SongSchema(); $schema = new SongSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -23,6 +23,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\StudioSchema; use App\Http\Api\Schema\Wiki\StudioSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\StudioCollection; use App\Http\Resources\Wiki\Collection\StudioCollection;
use App\Http\Resources\Wiki\Resource\StudioResource; use App\Http\Resources\Wiki\Resource\StudioResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -171,6 +172,7 @@ class StudioIndexTest extends TestCase
{ {
$schema = new StudioSchema(); $schema = new StudioSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -22,6 +22,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\Video\ScriptSchema; use App\Http\Api\Schema\Wiki\Video\ScriptSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Video\Collection\ScriptCollection; use App\Http\Resources\Wiki\Video\Collection\ScriptCollection;
use App\Http\Resources\Wiki\Video\Resource\ScriptResource; use App\Http\Resources\Wiki\Video\Resource\ScriptResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -173,6 +174,7 @@ class ScriptIndexTest extends TestCase
{ {
$schema = new ScriptSchema(); $schema = new ScriptSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -24,6 +24,7 @@ use App\Http\Api\Parser\PagingParser;
use App\Http\Api\Parser\SortParser; use App\Http\Api\Parser\SortParser;
use App\Http\Api\Query\Query; use App\Http\Api\Query\Query;
use App\Http\Api\Schema\Wiki\VideoSchema; use App\Http\Api\Schema\Wiki\VideoSchema;
use App\Http\Api\Sort\Sort;
use App\Http\Resources\Wiki\Collection\VideoCollection; use App\Http\Resources\Wiki\Collection\VideoCollection;
use App\Http\Resources\Wiki\Resource\VideoResource; use App\Http\Resources\Wiki\Resource\VideoResource;
use App\Models\BaseModel; use App\Models\BaseModel;
@@ -187,6 +188,7 @@ class VideoIndexTest extends TestCase
{ {
$schema = new VideoSchema(); $schema = new VideoSchema();
/** @var Sort $sort */
$sort = collect($schema->fields()) $sort = collect($schema->fields())
->filter(fn (Field $field) => $field instanceof SortableField) ->filter(fn (Field $field) => $field instanceof SortableField)
->map(fn (SortableField $field) => $field->getSort()) ->map(fn (SortableField $field) => $field->getSort())
@@ -81,7 +81,7 @@ class HasCriteriaTest extends TestCase
{ {
$count = $this->faker->randomDigitNotNull(); $count = $this->faker->randomDigitNotNull();
$filterParam = Str::of(HasCriteria::PARAM_VALUE)->append(Criteria::PARAM_SEPARATOR)->append($count)->__toString(); $filterParam = Str::of(HasCriteria::PARAM_VALUE)->append(Criteria::PARAM_SEPARATOR)->append(strval($count))->__toString();
$criteria = HasCriteria::make(new GlobalScope(), $filterParam, $this->faker->word()); $criteria = HasCriteria::make(new GlobalScope(), $filterParam, $this->faker->word());
+4 -1
View File
@@ -124,7 +124,10 @@ class HasFilterTest extends TestCase
fn () => new AllowedInclude($schema, $this->faker->word()) fn () => new AllowedInclude($schema, $this->faker->word())
); );
$criteria = FakeCriteria::make(new GlobalScope(), HasCriteria::PARAM_VALUE, $allowedIncludes->random()->path()); /** @var AllowedInclude $selectedInclude */
$selectedInclude = $allowedIncludes->random();
$criteria = FakeCriteria::make(new GlobalScope(), HasCriteria::PARAM_VALUE, $selectedInclude->path());
$filter = new HasFilter($allowedIncludes->all()); $filter = new HasFilter($allowedIncludes->all());