refactor(graphql): move paginator to pagination (#947)

This commit is contained in:
Kyrch
2025-09-01 11:01:40 -03:00
committed by GitHub
parent b220154cd3
commit ab572e951c
35 changed files with 167 additions and 168 deletions
+1 -1
View File
@@ -8,6 +8,6 @@ enum PaginationType
{
case NONE;
case SIMPLE;
case PAGINATOR;
case PAGINATION;
case CONNECTION;
}
@@ -8,7 +8,7 @@ use App\Contracts\GraphQL\Fields\DisplayableField;
use App\Contracts\GraphQL\Fields\HasArgumentsField;
use App\GraphQL\Controllers\Wiki\Anime\AnimeYearsController;
use App\GraphQL\Definition\Fields\Field;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\AnimePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\AnimePaginationQuery;
use App\GraphQL\Definition\Types\Wiki\AnimeType;
use App\GraphQL\Support\Argument\Argument;
use GraphQL\Type\Definition\ResolveInfo;
@@ -59,7 +59,7 @@ class AnimeYearSeasonAnimeField extends Field implements DisplayableField, HasAr
*/
public function arguments(): array
{
return new AnimePaginatorQuery()->arguments();
return new AnimePaginationQuery()->arguments();
}
/**
+3 -3
View File
@@ -7,7 +7,7 @@ namespace App\GraphQL\Definition\Queries;
use App\Concerns\Actions\GraphQL\ConstrainsEagerLoads;
use App\Concerns\Actions\GraphQL\FiltersModels;
use App\Concerns\GraphQL\ResolvesArguments;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\BaseType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\FirstArgument;
@@ -59,7 +59,7 @@ abstract class BaseQuery extends Query
$baseType = $this->baseRebingType();
if ($this instanceof EloquentPaginatorQuery) {
if ($this instanceof EloquentPaginationQuery) {
$arguments[] = new FirstArgument();
$arguments[] = new PageArgument();
}
@@ -68,7 +68,7 @@ abstract class BaseQuery extends Query
$arguments[] = $this->resolveFilterArguments($baseType->fieldClasses());
}
if ($baseType instanceof BaseType && $this instanceof EloquentPaginatorQuery) {
if ($baseType instanceof BaseType && $this instanceof EloquentPaginationQuery) {
$arguments[] = $this->resolveSortArguments($baseType);
}
@@ -2,17 +2,17 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Admin;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Admin;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Admin\AnnouncementType;
use Illuminate\Database\Eloquent\Builder;
class AnnouncementPaginatorQuery extends EloquentPaginatorQuery
class AnnouncementPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('announcementPaginator');
parent::__construct('announcementPagination');
}
public function description(): string
@@ -2,17 +2,17 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Admin;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Admin;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Admin\DumpType;
use Illuminate\Database\Eloquent\Builder;
class DumpPaginatorQuery extends EloquentPaginatorQuery
class DumpPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('dumpPaginator');
parent::__construct('dumpPagination');
}
public function description(): string
@@ -2,19 +2,19 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Admin;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Admin;
use App\Constants\FeatureConstants;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Admin\FeatureType;
use App\Models\Admin\Feature;
use Illuminate\Database\Eloquent\Builder;
class FeaturePaginatorQuery extends EloquentPaginatorQuery
class FeaturePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('featurePaginator');
parent::__construct('featurePagination');
}
public function description(): string
@@ -2,20 +2,20 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Admin;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Admin;
use App\Enums\Http\Api\Filter\ComparisonOperator;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Admin\FeaturedThemeType;
use App\Models\Admin\FeaturedTheme;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\Date;
class FeaturedThemePaginatorQuery extends EloquentPaginatorQuery
class FeaturedThemePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('featuredthemePaginator');
parent::__construct('featuredthemePagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Document;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Document;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Document\PageType;
class PagePaginatorQuery extends EloquentPaginatorQuery
class PagePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('pagePaginator');
parent::__construct('pagePagination');
}
public function description(): string
@@ -2,7 +2,7 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator;
namespace App\GraphQL\Definition\Queries\Models\Pagination;
use App\Concerns\Actions\GraphQL\PaginatesModels;
use App\Concerns\Actions\GraphQL\SearchModels;
@@ -21,7 +21,7 @@ use Rebing\GraphQL\Support\Facades\GraphQL;
use Rebing\GraphQL\Support\SelectFields;
use RuntimeException;
abstract class EloquentPaginatorQuery extends EloquentQuery
abstract class EloquentPaginationQuery extends EloquentQuery
{
use PaginatesModels;
use SearchModels;
@@ -52,7 +52,7 @@ abstract class EloquentPaginatorQuery extends EloquentQuery
}
/**
* Resolve the paginator query.
* Resolve the pagination query.
*
* @return Paginator
*/
@@ -2,17 +2,17 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\List;
namespace App\GraphQL\Definition\Queries\Models\Pagination\List;
use App\Enums\Models\List\ExternalProfileVisibility;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\List\ExternalProfileType;
use App\Http\Middleware\Api\EnabledOnlyOnLocalhost;
use App\Models\List\ExternalProfile;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\Auth;
class ExternalProfilePaginatorQuery extends EloquentPaginatorQuery
class ExternalProfilePaginationQuery extends EloquentPaginationQuery
{
protected $middleware = [
EnabledOnlyOnLocalhost::class,
@@ -20,7 +20,7 @@ class ExternalProfilePaginatorQuery extends EloquentPaginatorQuery
public function __construct()
{
parent::__construct('externalprofilePaginator');
parent::__construct('externalprofilePagination');
}
public function description(): string
@@ -2,10 +2,10 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\List\Playlist;
namespace App\GraphQL\Definition\Queries\Models\Pagination\List\Playlist;
use App\GraphQL\Definition\Fields\List\Playlist\PlaylistTrack\PlaylistTrackPlaylistField;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\List\Playlist\PlaylistTrackType;
use App\GraphQL\Support\Argument\Argument;
use App\Models\List\Playlist;
@@ -13,11 +13,11 @@ use App\Models\List\Playlist\PlaylistTrack;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Arr;
class PlaylistTrackPaginatorQuery extends EloquentPaginatorQuery
class PlaylistTrackPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('playlisttrackPaginator');
parent::__construct('playlisttrackPagination');
}
public function description(): string
@@ -2,10 +2,10 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\List;
namespace App\GraphQL\Definition\Queries\Models\Pagination\List;
use App\Enums\Models\List\PlaylistVisibility;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\List\PlaylistType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
@@ -13,11 +13,11 @@ use App\Models\List\Playlist;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Facades\Auth;
class PlaylistPaginatorQuery extends EloquentPaginatorQuery
class PlaylistPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('playlistPaginator');
parent::__construct('playlistPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Anime\AnimeSynonymType;
class AnimeSynonymPaginatorQuery extends EloquentPaginatorQuery
class AnimeSynonymPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('animesynonymPaginator');
parent::__construct('animesynonymPagination');
}
public function description(): string
@@ -2,18 +2,18 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Anime\AnimeThemeType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
class AnimeThemePaginatorQuery extends EloquentPaginatorQuery
class AnimeThemePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('animethemePaginator');
parent::__construct('animethemePagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime\Theme;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime\Theme;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Anime\Theme\AnimeThemeEntryType;
class AnimeThemeEntryPaginatorQuery extends EloquentPaginatorQuery
class AnimeThemeEntryPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('animethemeentryPaginator');
parent::__construct('animethemeentryPagination');
}
public function description(): string
@@ -2,18 +2,18 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\AnimeType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
class AnimePaginatorQuery extends EloquentPaginatorQuery
class AnimePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('animePaginator');
parent::__construct('animePagination');
}
public function description(): string
@@ -2,18 +2,18 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\ArtistType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
class ArtistPaginatorQuery extends EloquentPaginatorQuery
class ArtistPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('artistPaginator');
parent::__construct('artistPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\AudioType;
class AudioPaginatorQuery extends EloquentPaginatorQuery
class AudioPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('audioPaginator');
parent::__construct('audioPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\ExternalResourceType;
class ExternalResourcePaginatorQuery extends EloquentPaginatorQuery
class ExternalResourcePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('externalresourcePaginator');
parent::__construct('externalresourcePagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\ImageType;
class ImagePaginatorQuery extends EloquentPaginatorQuery
class ImagePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('imagePaginator');
parent::__construct('imagePagination');
}
public function description(): string
@@ -2,18 +2,18 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\SeriesType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
class SeriesPaginatorQuery extends EloquentPaginatorQuery
class SeriesPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('seriesPaginator');
parent::__construct('seriesPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Song;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Song;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Song\MembershipType;
class MembershipPaginatorQuery extends EloquentPaginatorQuery
class MembershipPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('membershipPaginator');
parent::__construct('membershipPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Song;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Song;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Song\PerformanceType;
class PerformancePaginatorQuery extends EloquentPaginatorQuery
class PerformancePaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('performancePaginator');
parent::__construct('performancePagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\SongType;
class SongPaginatorQuery extends EloquentPaginatorQuery
class SongPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('songPaginator');
parent::__construct('songPagination');
}
public function description(): string
@@ -2,18 +2,18 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\StudioType;
use App\GraphQL\Support\Argument\Argument;
use App\GraphQL\Support\Argument\SearchArgument;
class StudioPaginatorQuery extends EloquentPaginatorQuery
class StudioPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('studioPaginator');
parent::__construct('studioPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\ThemeGroupType;
class ThemeGroupPaginatorQuery extends EloquentPaginatorQuery
class ThemeGroupPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('themegroupPaginator');
parent::__construct('themegroupPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Video;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Video;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\Video\VideoScriptType;
class VideoScriptPaginatorQuery extends EloquentPaginatorQuery
class VideoScriptPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('videoscriptPaginator');
parent::__construct('videoscriptPagination');
}
public function description(): string
@@ -2,16 +2,16 @@
declare(strict_types=1);
namespace App\GraphQL\Definition\Queries\Models\Paginator\Wiki;
namespace App\GraphQL\Definition\Queries\Models\Pagination\Wiki;
use App\GraphQL\Definition\Queries\Models\Paginator\EloquentPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\EloquentPaginationQuery;
use App\GraphQL\Definition\Types\Wiki\VideoType;
class VideoPaginatorQuery extends EloquentPaginatorQuery
class VideoPaginationQuery extends EloquentPaginationQuery
{
public function __construct()
{
parent::__construct('videoPaginator');
parent::__construct('videoPagination');
}
public function description(): string
@@ -8,10 +8,10 @@ use App\GraphQL\Definition\Types\BaseType;
use GraphQL\Type\Definition\Type as GraphQLType;
use Illuminate\Pagination\LengthAwarePaginator;
class PaginatorInfoType extends BaseType
class PaginationInfoType extends BaseType
{
protected $attributes = [
'name' => 'PaginatorInfo',
'name' => 'PaginationInfo',
];
public function fields(): array
@@ -9,7 +9,7 @@ use GraphQL\Type\Definition\Type as GraphQLType;
use Illuminate\Pagination\LengthAwarePaginator;
use Rebing\GraphQL\Support\Facades\GraphQL;
class PaginatorType extends ObjectType
class PaginationType extends ObjectType
{
public function __construct(string $typeName, ?string $customName = null)
{
@@ -37,8 +37,8 @@ class PaginatorType extends ObjectType
'description' => 'List of items on the current page',
'resolve' => fn (LengthAwarePaginator $data) => $data->getCollection(),
],
'paginatorInfo' => [
'type' => GraphQLType::nonNull(GraphQL::type('PaginatorInfo')),
'paginationInfo' => [
'type' => GraphQLType::nonNull(GraphQL::type('PaginationInfo')),
'description' => 'Pagination information about the list of items.',
'resolve' => fn (LengthAwarePaginator $data) => $data,
],
@@ -16,7 +16,7 @@ class FirstArgument extends Argument
$this->required();
// Default count set to unlimited for relations for everyone
// and set to config value for paginator queries.
// and set to config value for pagination queries.
$this->withDefaultValue(
$isRelation
? Config::get('graphql.pagination_values.relation.default_count')
+2 -2
View File
@@ -4,7 +4,7 @@ declare(strict_types=1);
namespace App\GraphQL\Support;
use App\GraphQL\Definition\Types\Base\PaginatorInfoType;
use App\GraphQL\Definition\Types\Base\PaginationInfoType;
use App\GraphQL\Definition\Types\Pivot\PivotType;
use GraphQL\Type\Definition\Type;
use Illuminate\Database\Eloquent\Model;
@@ -43,7 +43,7 @@ class EdgeConnectionType extends RebingType
{
return [
'pageInfo' => [
'type' => Type::nonNull(GraphQL::type(new PaginatorInfoType()->getName())),
'type' => Type::nonNull(GraphQL::type(new PaginationInfoType()->getName())),
'description' => 'Pagination information about the list of edges.',
'resolve' => fn ($paginator) => $paginator,
],
@@ -23,6 +23,6 @@ class HasManyRelation extends Relation
*/
public function paginationType(): PaginationType
{
return PaginationType::PAGINATOR;
return PaginationType::PAGINATION;
}
}
@@ -23,6 +23,6 @@ class MorphManyRelation extends Relation
*/
public function paginationType(): PaginationType
{
return PaginationType::PAGINATOR;
return PaginationType::PAGINATION;
}
}
+52 -53
View File
@@ -10,30 +10,30 @@ use App\GraphQL\Definition\Mutations\Models\List\Playlist\Track\UpdatePlaylistTr
use App\GraphQL\Definition\Mutations\Models\List\Playlist\UpdatePlaylistMutation;
use App\GraphQL\Definition\Queries\Admin\CurrentFeaturedThemeQuery;
use App\GraphQL\Definition\Queries\Auth\MeQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Admin\AnnouncementPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Admin\DumpPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Admin\FeaturedThemePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Admin\FeaturePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Document\PagePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\List\ExternalProfilePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\List\Playlist\PlaylistTrackPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\List\PlaylistPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime\AnimeSynonymPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime\AnimeThemePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Anime\Theme\AnimeThemeEntryPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\AnimePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\ArtistPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\AudioPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\ExternalResourcePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\ImagePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\SeriesPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Song\MembershipPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Song\PerformancePaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\SongPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\StudioPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\ThemeGroupPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\Video\VideoScriptPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Paginator\Wiki\VideoPaginatorQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Admin\AnnouncementPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Admin\DumpPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Admin\FeaturedThemePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Admin\FeaturePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Document\PagePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\List\ExternalProfilePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\List\Playlist\PlaylistTrackPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\List\PlaylistPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime\AnimeSynonymPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime\AnimeThemePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Anime\Theme\AnimeThemeEntryPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\AnimePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\ArtistPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\AudioPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\ExternalResourcePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\ImagePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\SeriesPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Song\MembershipPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Song\PerformancePaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\SongPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\StudioPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\ThemeGroupPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\Video\VideoScriptPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Pagination\Wiki\VideoPaginationQuery;
use App\GraphQL\Definition\Queries\Models\Singular\Document\PageQuery;
use App\GraphQL\Definition\Queries\Models\Singular\List\Playlist\PlaylistTrackQuery;
use App\GraphQL\Definition\Queries\Models\Singular\List\PlaylistQuery;
@@ -52,14 +52,13 @@ use App\GraphQL\Definition\Types\Auth\PermissionType;
use App\GraphQL\Definition\Types\Auth\RoleType;
use App\GraphQL\Definition\Types\Auth\User\MeType;
use App\GraphQL\Definition\Types\Auth\UserType;
use App\GraphQL\Definition\Types\Base\PaginatorInfoType;
use App\GraphQL\Definition\Types\Base\PaginationInfoType;
use App\GraphQL\Definition\Types\Document\PageType;
use App\GraphQL\Definition\Types\List\External\ExternalEntryType;
use App\GraphQL\Definition\Types\List\ExternalProfileType;
use App\GraphQL\Definition\Types\List\Playlist\PlaylistTrackType;
use App\GraphQL\Definition\Types\List\PlaylistType;
use App\GraphQL\Definition\Types\MessageResponseType;
use App\GraphQL\Definition\Types\Pivot\Morph\ResourceableType;
use App\GraphQL\Definition\Types\SearchType;
use App\GraphQL\Definition\Types\User\Notification\ExternalProfileSyncedNotificationType;
use App\GraphQL\Definition\Types\Wiki\Anime\AnimeSynonymType;
@@ -154,10 +153,10 @@ return [
'default' => [
'query' => [
// Admin
AnnouncementPaginatorQuery::class,
DumpPaginatorQuery::class,
FeaturePaginatorQuery::class,
FeaturedThemePaginatorQuery::class,
AnnouncementPaginationQuery::class,
DumpPaginationQuery::class,
FeaturePaginationQuery::class,
FeaturedThemePaginationQuery::class,
CurrentFeaturedThemeQuery::class,
// Auth
@@ -165,36 +164,36 @@ return [
// Document
PageQuery::class,
PagePaginatorQuery::class,
PagePaginationQuery::class,
// List
ExternalProfilePaginatorQuery::class,
ExternalProfilePaginationQuery::class,
PlaylistQuery::class,
PlaylistTrackQuery::class,
PlaylistPaginatorQuery::class,
PlaylistTrackPaginatorQuery::class,
PlaylistPaginationQuery::class,
PlaylistTrackPaginationQuery::class,
// Wiki
AnimeQuery::class,
AnimePaginatorQuery::class,
AnimeSynonymPaginatorQuery::class,
AnimeThemePaginatorQuery::class,
AnimeThemeEntryPaginatorQuery::class,
AnimePaginationQuery::class,
AnimeSynonymPaginationQuery::class,
AnimeThemePaginationQuery::class,
AnimeThemeEntryPaginationQuery::class,
ArtistQuery::class,
ArtistPaginatorQuery::class,
AudioPaginatorQuery::class,
ExternalResourcePaginatorQuery::class,
ImagePaginatorQuery::class,
MembershipPaginatorQuery::class,
PerformancePaginatorQuery::class,
ArtistPaginationQuery::class,
AudioPaginationQuery::class,
ExternalResourcePaginationQuery::class,
ImagePaginationQuery::class,
MembershipPaginationQuery::class,
PerformancePaginationQuery::class,
SeriesQuery::class,
SeriesPaginatorQuery::class,
SongPaginatorQuery::class,
SeriesPaginationQuery::class,
SongPaginationQuery::class,
StudioQuery::class,
StudioPaginatorQuery::class,
ThemeGroupPaginatorQuery::class,
VideoPaginatorQuery::class,
VideoScriptPaginatorQuery::class,
StudioPaginationQuery::class,
ThemeGroupPaginationQuery::class,
VideoPaginationQuery::class,
VideoScriptPaginationQuery::class,
// Others
AnimeYearsQuery::class,
@@ -298,8 +297,8 @@ return [
// The global types available to all schemas.
// You can then access it from the facade like this: GraphQL::type('user')
'types' => [
// Paginator
PaginatorInfoType::class,
// Pagination
PaginationInfoType::class,
// ExampleType::class,
// ExampleRelationType::class,
// \Rebing\GraphQL\Support\UploadType::class,
@@ -348,7 +347,7 @@ return [
* You can define your own pagination type.
* Reference \Rebing\GraphQL\Support\PaginationType::class
*/
'pagination_type' => App\GraphQL\Definition\Types\Base\PaginatorType::class,
'pagination_type' => App\GraphQL\Definition\Types\Base\PaginationType::class,
/*
* You can define your own simple pagination type.