From 10d581dbff662117b5070d38e9c8e1fd7023f1ff Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Thu, 1 Feb 2024 11:44:18 +0400 Subject: [PATCH 01/13] `HandlerDirective::getArgumentTypeDefinitionNode()` arguments order changed. --- .../graphql/src/Builder/Directives/HandlerDirective.php | 6 +++--- packages/graphql/src/SearchBy/Directives/Directive.php | 2 +- packages/graphql/src/SortBy/Directives/Directive.php | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/graphql/src/Builder/Directives/HandlerDirective.php b/packages/graphql/src/Builder/Directives/HandlerDirective.php index f1f0d9f70..a62b346e1 100644 --- a/packages/graphql/src/Builder/Directives/HandlerDirective.php +++ b/packages/graphql/src/Builder/Directives/HandlerDirective.php @@ -260,15 +260,15 @@ protected function getArgumentTypeDefinitionNode( Manipulator $manipulator, DocumentAST $document, ObjectFieldArgumentSource|InterfaceFieldArgumentSource $argument, - string $operator, ContextContract $context, + string $operator, ): ListTypeNode|NamedTypeNode|NonNullTypeNode|null { $definition = $context->get(HandlerContextImplicit::class)?->value ? $manipulator->getTypeDefinition($manipulator->getOriginType($argument->getField())) : $argument->getTypeDefinition(); $operator = $manipulator->getOperator(static::getScope(), $operator); - $node = $manipulator->getTypeSource($definition); - $type = $operator->getFieldType($manipulator, $node, $context); + $source = $manipulator->getTypeSource($definition); + $type = $operator->getFieldType($manipulator, $source, $context); $type = Parser::typeReference($type); return $type; diff --git a/packages/graphql/src/SearchBy/Directives/Directive.php b/packages/graphql/src/SearchBy/Directives/Directive.php index 8f70f082c..32ac80776 100644 --- a/packages/graphql/src/SearchBy/Directives/Directive.php +++ b/packages/graphql/src/SearchBy/Directives/Directive.php @@ -66,8 +66,8 @@ protected function getArgDefinitionType( $manipulator, $document, $argument, - SearchByOperatorConditionDirective::class, $context, + SearchByOperatorConditionDirective::class, ); if (!$type) { diff --git a/packages/graphql/src/SortBy/Directives/Directive.php b/packages/graphql/src/SortBy/Directives/Directive.php index e1ec379f4..5ba5ef481 100644 --- a/packages/graphql/src/SortBy/Directives/Directive.php +++ b/packages/graphql/src/SortBy/Directives/Directive.php @@ -63,8 +63,8 @@ protected function getArgDefinitionType( $manipulator, $document, $argument, - SortByOperatorClauseDirective::class, $context, + SortByOperatorClauseDirective::class, ); if (!$type) { From 7df3fefa9b8612b1e3ae85fd62bed7e2c5e1fe99 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Thu, 1 Feb 2024 13:15:00 +0400 Subject: [PATCH 02/13] Trait `PropertyOperator` renamed to `HandlerOperator`. --- packages/graphql/UPGRADE.md | 2 ++ .../Builder/Directives/PropertyDirective.php | 4 ++-- ...opertyOperator.php => HandlerOperator.php} | 20 +++++++++++++++++-- .../src/SortBy/Operators/Extra/NullsFirst.php | 4 ++-- .../src/SortBy/Operators/Extra/NullsLast.php | 4 ++-- 5 files changed, 26 insertions(+), 8 deletions(-) rename packages/graphql/src/Builder/Traits/{PropertyOperator.php => HandlerOperator.php} (77%) diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index 8ce729463..bca91e7ae 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -112,6 +112,8 @@ This section is actual only if you are extending the package. Please review and * [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Sources\*` +* [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Traits\PropertyOperator` => `LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator` + * [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Types\InputObject` * [ ] `LastDragon_ru\LaraASP\GraphQL\SortBy\Builders\*` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Sorters\*` diff --git a/packages/graphql/src/Builder/Directives/PropertyDirective.php b/packages/graphql/src/Builder/Directives/PropertyDirective.php index 332ce6379..232bb5ecb 100644 --- a/packages/graphql/src/Builder/Directives/PropertyDirective.php +++ b/packages/graphql/src/Builder/Directives/PropertyDirective.php @@ -7,12 +7,12 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\PropertyOperator; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; abstract class PropertyDirective extends OperatorDirective { - use PropertyOperator; + use HandlerOperator; #[Override] public static function getName(): string { diff --git a/packages/graphql/src/Builder/Traits/PropertyOperator.php b/packages/graphql/src/Builder/Traits/HandlerOperator.php similarity index 77% rename from packages/graphql/src/Builder/Traits/PropertyOperator.php rename to packages/graphql/src/Builder/Traits/HandlerOperator.php index 4a1395fde..36cc6b9a3 100644 --- a/packages/graphql/src/Builder/Traits/PropertyOperator.php +++ b/packages/graphql/src/Builder/Traits/HandlerOperator.php @@ -4,6 +4,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; +use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Operator; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\Client\ConditionEmpty; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\Client\ConditionTooManyOperators; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\HandlerInvalidConditions; @@ -11,10 +12,25 @@ use LastDragon_ru\LaraASP\GraphQL\Utils\ArgumentFactory; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Nuwave\Lighthouse\Execution\Arguments\ArgumentSet; +use Override; use function count; -trait PropertyOperator { +/** + * @phpstan-require-implements Operator + */ +trait HandlerOperator { + #[Override] + public function call( + Handler $handler, + object $builder, + Property $property, + Argument $argument, + Context $context, + ): object { + return $this->handle($handler, $builder, $property, $argument, $context); + } + /** * @template TBuilder of object * @@ -22,7 +38,7 @@ trait PropertyOperator { * * @return TBuilder */ - protected function handle( + private function handle( Handler $handler, object $builder, Property $property, diff --git a/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php b/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php index 306c56b17..662ecd342 100644 --- a/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php +++ b/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php @@ -8,7 +8,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\PropertyOperator; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\SorterFactory; use LastDragon_ru\LaraASP\GraphQL\SortBy\Enums\Nulls; use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator; @@ -18,7 +18,7 @@ use Override; class NullsFirst extends BaseOperator { - use PropertyOperator; + use HandlerOperator; /** * @param SorterFactory $factory diff --git a/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php b/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php index 89c5163da..b9c36b2aa 100644 --- a/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php +++ b/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php @@ -8,7 +8,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\PropertyOperator; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\SorterFactory; use LastDragon_ru\LaraASP\GraphQL\SortBy\Enums\Nulls; use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator; @@ -18,7 +18,7 @@ use Override; class NullsLast extends BaseOperator { - use PropertyOperator; + use HandlerOperator; /** * @param SorterFactory $factory From e18a6042a82f2195df047101782d7124dbe4f55f Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Thu, 1 Feb 2024 13:51:06 +0400 Subject: [PATCH 03/13] Removed `PropertyDirective`. --- packages/graphql/UPGRADE.md | 2 +- .../Builder/Directives/PropertyDirective.php | 42 ------------------- .../src/SearchBy/Operators/Condition.php | 12 +++++- .../src/SearchBy/Operators/Property.php | 18 ++++++-- .../graphql/src/SortBy/Operators/Clause.php | 10 ++++- .../graphql/src/SortBy/Operators/Property.php | 12 ++++-- 6 files changed, 45 insertions(+), 51 deletions(-) delete mode 100644 packages/graphql/src/Builder/Directives/PropertyDirective.php diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index bca91e7ae..6e6e85380 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -108,7 +108,7 @@ This section is actual only if you are extending the package. Please review and * [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Directives\HandlerDirective` -* [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Directives\PropertyDirective` +* [ ] Removed `LastDragon_ru\LaraASP\GraphQL\Builder\Directives\PropertyDirective` * [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Sources\*` diff --git a/packages/graphql/src/Builder/Directives/PropertyDirective.php b/packages/graphql/src/Builder/Directives/PropertyDirective.php deleted file mode 100644 index 232bb5ecb..000000000 --- a/packages/graphql/src/Builder/Directives/PropertyDirective.php +++ /dev/null @@ -1,42 +0,0 @@ -getTypeName(); - } - - #[Override] - public function isAvailable(string $builder, Context $context): bool { - return true; - } - - #[Override] - public function call( - Handler $handler, - object $builder, - Property $property, - Argument $argument, - Context $context, - ): object { - return $this->handle($handler, $builder, $property, $argument, $context); - } -} diff --git a/packages/graphql/src/SearchBy/Operators/Condition.php b/packages/graphql/src/SearchBy/Operators/Condition.php index 5dfa684b4..2113110b0 100644 --- a/packages/graphql/src/SearchBy/Operators/Condition.php +++ b/packages/graphql/src/SearchBy/Operators/Condition.php @@ -5,10 +5,15 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Condition as ConditionType; use Override; -class Condition extends Property { +class Condition extends BaseOperator { + use HandlerOperator; + use ScoutSupport; + #[Override] public static function getName(): string { return 'Condition'; @@ -18,4 +23,9 @@ public static function getName(): string { public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { return $provider->getType(ConditionType::class, $source, $context); } + + #[Override] + public function getFieldDescription(): string { + return 'Property condition.'; + } } diff --git a/packages/graphql/src/SearchBy/Operators/Property.php b/packages/graphql/src/SearchBy/Operators/Property.php index b2ee9b711..347337894 100644 --- a/packages/graphql/src/SearchBy/Operators/Property.php +++ b/packages/graphql/src/SearchBy/Operators/Property.php @@ -2,13 +2,25 @@ namespace LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators; -use LastDragon_ru\LaraASP\GraphQL\Builder\Directives\PropertyDirective; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Contracts\Operator as Marker; +use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use Override; -class Property extends PropertyDirective implements Marker { +class Property extends BaseOperator { + use HandlerOperator; + + #[Override] + public static function getName(): string { + return 'property'; + } + #[Override] public function getFieldDescription(): string { return 'Property condition.'; } + + #[Override] + public function isAvailable(string $builder, Context $context): bool { + return true; + } } diff --git a/packages/graphql/src/SortBy/Operators/Clause.php b/packages/graphql/src/SortBy/Operators/Clause.php index 1f804e2d4..9197885a8 100644 --- a/packages/graphql/src/SortBy/Operators/Clause.php +++ b/packages/graphql/src/SortBy/Operators/Clause.php @@ -5,10 +5,13 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause as ClauseType; use Override; -class Clause extends Property { +class Clause extends BaseOperator { + use HandlerOperator; + #[Override] public static function getName(): string { return 'condition'; @@ -18,4 +21,9 @@ public static function getName(): string { public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { return '['.$provider->getType(ClauseType::class, $source, $context).'!]'; } + + #[Override] + public function getFieldDescription(): string { + return 'Field clause.'; + } } diff --git a/packages/graphql/src/SortBy/Operators/Property.php b/packages/graphql/src/SortBy/Operators/Property.php index cd1b26634..a1236b502 100644 --- a/packages/graphql/src/SortBy/Operators/Property.php +++ b/packages/graphql/src/SortBy/Operators/Property.php @@ -7,14 +7,20 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; -use LastDragon_ru\LaraASP\GraphQL\Builder\Directives\PropertyDirective; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\Operator; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause; use Override; use function is_a; -class Property extends PropertyDirective implements Operator { +class Property extends BaseOperator { + use HandlerOperator; + + #[Override] + public static function getName(): string { + return 'property'; + } + #[Override] public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { return $provider->getType(Clause::class, $source, $context); From 5f937366bf29982ae089cbb3635324834ab46375 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 10:11:51 +0400 Subject: [PATCH 04/13] `@searchByOperatorProperty` renamed to `@searchByOperatorField`. --- packages/graphql/README.md | 20 +- packages/graphql/UPGRADE.md | 2 + ...php => SearchByOperatorFieldDirective.php} | 4 +- .../AllowedDirectives.expected.graphql | 10 +- .../CustomComplexOperator.expected.graphql | 16 +- .../DirectiveTest/Example.expected.graphql | 36 +-- .../DirectiveTest/Explicit.expected.graphql | 24 +- .../DirectiveTest/Ignored.expected.graphql | 16 +- .../DirectiveTest/Implicit.expected.graphql | 52 ++-- .../InterfaceUpdate.expected.graphql | 10 +- .../ScalarOperators.expected.graphql | 24 +- .../DirectiveTest/Scout.expected.graphql | 238 ++++++++--------- .../Scout.expected.v10.3.0.graphql | 240 +++++++++--------- .../TypeRegistry.expected.graphql | 28 +- .../Operators/Complex/Relationship.php | 6 +- .../Operators/Complex/RelationshipTest.php | 2 +- .../Operators/{Property.php => Field.php} | 14 +- .../SearchBy/Operators/Logical/AllOfTest.php | 8 +- .../SearchBy/Operators/Logical/AnyOfTest.php | 4 +- .../SearchBy/Operators/Logical/NotTest.php | 4 +- .../Operators/Traits/ScoutSupport.php | 4 +- .../graphql/src/SearchBy/Types/Condition.php | 4 +- .../DirectiveTest~schema-expected.graphql | 8 +- .../DirectiveTest~scout-expected.graphql | 6 +- 24 files changed, 389 insertions(+), 391 deletions(-) rename packages/graphql/src/SearchBy/Definitions/{SearchByOperatorPropertyDirective.php => SearchByOperatorFieldDirective.php} (71%) rename packages/graphql/src/SearchBy/Operators/{Property.php => Field.php} (55%) diff --git a/packages/graphql/README.md b/packages/graphql/README.md index afe09c291..e31e7f3d1 100644 --- a/packages/graphql/README.md +++ b/packages/graphql/README.md @@ -282,6 +282,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorIn on | ENUM @@ -336,12 +342,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorStartsWith on | ENUM @@ -365,16 +365,16 @@ input SearchByConditionUser { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index 6e6e85380..e6d7bb473 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -53,6 +53,8 @@ Please also see [changelog](https://github.com/LastDragon-ru/lara-asp/releases) * [ ] `@searchByOperatorRelation` => `@searchByOperatorRelationship` (and class too; generated types will be named as `SearchByRelationship*` instead of `SearchByComplex*`). +* [ ] `@searchByOperatorProperty` => `@searchByOperatorField` (and class too) + * [ ] `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators::Condition` => `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators::Object`. * [ ] `scalar SearchByCondition` => `scalar SearchByObject`. diff --git a/packages/graphql/src/SearchBy/Definitions/SearchByOperatorPropertyDirective.php b/packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldDirective.php similarity index 71% rename from packages/graphql/src/SearchBy/Definitions/SearchByOperatorPropertyDirective.php rename to packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldDirective.php index e7aafbc81..2fb7788e5 100644 --- a/packages/graphql/src/SearchBy/Definitions/SearchByOperatorPropertyDirective.php +++ b/packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldDirective.php @@ -2,9 +2,9 @@ namespace LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Property; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Field; -class SearchByOperatorPropertyDirective extends Property { +class SearchByOperatorFieldDirective extends Field { // Lighthouse loads all classes from directive namespace this leads to // 'Class "Orchestra\Testbench\TestCase" not found' error for our *Test // classes. This class required to avoid this error. diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql index b2219dfb1..5384d3b04 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql @@ -11,7 +11,7 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION @@ -22,10 +22,10 @@ Available conditions for `type A` (only one property allowed at a time). """ input SearchByConditionA { """ - Property condition. + Field condition. """ a: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) @@ -36,10 +36,10 @@ Available conditions for `interface B` (only one property allowed at a time). """ input SearchByConditionB { """ - Property condition. + Field condition. """ b: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/CustomComplexOperator.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/CustomComplexOperator.expected.graphql index 97cb75ba7..65f738af8 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/CustomComplexOperator.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/CustomComplexOperator.expected.graphql @@ -77,6 +77,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorGreaterThan on | ENUM @@ -173,12 +179,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorRelationship on | ENUM @@ -231,10 +231,10 @@ input SearchByConditionChild { @searchByOperatorNot """ - Property condition. + Field condition. """ value: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Example.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Example.expected.graphql index 194639ad9..7bc7b81df 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Example.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Example.expected.graphql @@ -71,6 +71,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorGreaterThan on | ENUM @@ -167,12 +173,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorRelationship on | ENUM @@ -220,10 +220,10 @@ input SearchByConditionCommentsQuery { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ date: SearchByScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -232,10 +232,10 @@ input SearchByConditionCommentsQuery { @searchByOperatorNot """ - Property condition. + Field condition. """ text: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Relationship condition. @@ -261,16 +261,16 @@ input SearchByConditionUser { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -296,16 +296,16 @@ input SearchByConditionUsersQuery { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Explicit.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Explicit.expected.graphql index fd8de2151..c525cff5b 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Explicit.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Explicit.expected.graphql @@ -71,6 +71,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorGreaterThan on | ENUM @@ -167,12 +173,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorRelationship on | ENUM @@ -249,13 +249,13 @@ input SearchByConditionA { Description should be copied. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -284,13 +284,13 @@ input SearchByConditionB { Description should be copied. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ Not. diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Ignored.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Ignored.expected.graphql index e68bf962c..37d72ef17 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Ignored.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Ignored.expected.graphql @@ -23,7 +23,7 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION @@ -74,13 +74,13 @@ input SearchByConditionA { Not ignored """ a: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ b: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -88,16 +88,16 @@ Available conditions for `interface B` (only one property allowed at a time). """ input SearchByConditionB { """ - Property condition. + Field condition. """ a: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ b: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Implicit.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Implicit.expected.graphql index 28b4d4430..d06287786 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Implicit.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Implicit.expected.graphql @@ -71,6 +71,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorGreaterThan on | ENUM @@ -167,12 +173,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorRelationship on | ENUM @@ -280,16 +280,16 @@ input SearchByConditionA { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -346,19 +346,19 @@ input SearchByConditionA { @searchByOperatorRelationship """ - Property condition. + Field condition. """ renamed: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "internal" ) """ - Property condition. + Field condition. """ renamedList: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "internal" ) @@ -381,16 +381,16 @@ input SearchByConditionB { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -422,16 +422,16 @@ input SearchByConditionC { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -488,19 +488,19 @@ input SearchByConditionC { @searchByOperatorRelationship """ - Property condition. + Field condition. """ renamed: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "internal" ) """ - Property condition. + Field condition. """ renamedList: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "internal" ) diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql index ede9c74df..39c1a7d16 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql @@ -11,7 +11,7 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION @@ -26,10 +26,10 @@ Available conditions for `input A` (only one property allowed at a time). """ input SearchByConditionA { """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField } """ @@ -37,10 +37,10 @@ Available conditions for `type B` (only one property allowed at a time). """ input SearchByConditionB { """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/ScalarOperators.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/ScalarOperators.expected.graphql index 8e2ce73b3..dcbc31da9 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/ScalarOperators.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/ScalarOperators.expected.graphql @@ -17,6 +17,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorIn on | ENUM @@ -53,12 +59,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - """ Extends the list of operators by the operators from the specified `type`. """ @@ -89,10 +89,10 @@ Available conditions for `input A` (only one property allowed at a time). """ input SearchByConditionA { """ - Property condition. + Field condition. """ a: SearchByScalarMixed - @searchByOperatorProperty + @searchByOperatorField """ All of the conditions must be true. @@ -101,16 +101,16 @@ input SearchByConditionA { @searchByOperatorAllOf """ - Property condition. + Field condition. """ b: SearchByScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ c: SearchByEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.graphql index 177596a9e..e16a045f7 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.graphql @@ -35,25 +35,25 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorIn +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorLessThan +directive @searchByOperatorIn on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorLessThanOrEqual +directive @searchByOperatorLessThan on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorLessThanOrEqual on | ENUM | INPUT_FIELD_DEFINITION @@ -91,103 +91,103 @@ input SearchByScoutConditionInputA { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ Description should be used. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -202,22 +202,22 @@ input SearchByScoutConditionInputA { @searchByOperatorCondition """ - Property condition. + Field condition. """ resolver: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -231,10 +231,10 @@ input SearchByScoutConditionInputB { @searchByOperatorAllOf """ - Property condition. + Field condition. """ id: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField } """ @@ -254,10 +254,10 @@ input SearchByScoutConditionNestedA { @searchByOperatorCondition """ - Property condition. + Field condition. """ value: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField } """ @@ -305,103 +305,103 @@ input SearchByScoutConditionObject { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -416,16 +416,16 @@ input SearchByScoutConditionObject { @searchByOperatorCondition """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -439,103 +439,103 @@ input SearchByScoutConditionObjectInterface { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -550,16 +550,16 @@ input SearchByScoutConditionObjectInterface { @searchByOperatorCondition """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -573,10 +573,10 @@ input SearchByScoutConditionObjectNested { @searchByOperatorAllOf """ - Property condition. + Field condition. """ value: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.v10.3.0.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.v10.3.0.graphql index 18b591525..c7500e990 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.v10.3.0.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Scout.expected.v10.3.0.graphql @@ -35,31 +35,31 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorIn +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorLessThan +directive @searchByOperatorIn on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorLessThanOrEqual +directive @searchByOperatorLessThan on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorNotIn +directive @searchByOperatorLessThanOrEqual on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorNotIn on | ENUM | INPUT_FIELD_DEFINITION @@ -97,103 +97,103 @@ input SearchByScoutConditionInputA { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ Description should be used. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -208,22 +208,22 @@ input SearchByScoutConditionInputA { @searchByOperatorCondition """ - Property condition. + Field condition. """ resolver: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -237,10 +237,10 @@ input SearchByScoutConditionInputB { @searchByOperatorAllOf """ - Property condition. + Field condition. """ id: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField } """ @@ -260,10 +260,10 @@ input SearchByScoutConditionNestedA { @searchByOperatorCondition """ - Property condition. + Field condition. """ value: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField } """ @@ -311,103 +311,103 @@ input SearchByScoutConditionObject { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -422,16 +422,16 @@ input SearchByScoutConditionObject { @searchByOperatorCondition """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -445,103 +445,103 @@ input SearchByScoutConditionObjectInterface { @searchByOperatorAllOf """ - Property condition. + Field condition. """ booleanScalar: SearchByScoutScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ booleanScalarNotNull: SearchByScoutScalarBoolean - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalar: SearchByScoutScalarDateOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarList: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarNonNull: SearchByScoutScalarDate - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ customScalarOperators: SearchByScoutScalarScalarCustomOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ description: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enum: SearchByScoutEnumEnumAOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ enumNotNull: SearchByScoutEnumEnumA - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ fieldRenamed: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField @rename( attribute: "renamed" ) """ - Property condition. + Field condition. """ floatScalar: SearchByScoutScalarFloatOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ floatScalarNotNull: SearchByScoutScalarFloat - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalar: SearchByScoutScalarIDOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ idScalarNotNull: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalar: SearchByScoutScalarIntOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ intScalarNotNull: SearchByScoutScalarInt - @searchByOperatorProperty + @searchByOperatorField """ Property condition. @@ -556,16 +556,16 @@ input SearchByScoutConditionObjectInterface { @searchByOperatorCondition """ - Property condition. + Field condition. """ stringScalar: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ stringScalarNotNull: SearchByScoutScalarString - @searchByOperatorProperty + @searchByOperatorField } """ @@ -579,10 +579,10 @@ input SearchByScoutConditionObjectNested { @searchByOperatorAllOf """ - Property condition. + Field condition. """ value: SearchByScoutScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField } """ diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/TypeRegistry.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/TypeRegistry.expected.graphql index 33af867cb..738e8eb20 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest/TypeRegistry.expected.graphql +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/TypeRegistry.expected.graphql @@ -71,6 +71,12 @@ on | INPUT_FIELD_DEFINITION | SCALAR +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + directive @searchByOperatorGreaterThan on | ENUM @@ -167,12 +173,6 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty -on - | ENUM - | INPUT_FIELD_DEFINITION - | SCALAR - directive @searchByOperatorRelationship on | ENUM @@ -219,16 +219,16 @@ input SearchByConditionTestTypeA { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ flag: SearchByScalarBooleanOrNull - @searchByOperatorProperty + @searchByOperatorField """ - Property condition. + Field condition. """ name: SearchByScalarStringOrNull - @searchByOperatorProperty + @searchByOperatorField """ Not. @@ -237,10 +237,10 @@ input SearchByConditionTestTypeA { @searchByOperatorNot """ - Property condition. + Field condition. """ value: SearchByEnumTestEnumOrNull - @searchByOperatorProperty + @searchByOperatorField } """ @@ -266,10 +266,10 @@ input SearchByConditionTestTypeB { @searchByOperatorRelationship """ - Property condition. + Field condition. """ name: SearchByScalarString - @searchByOperatorProperty + @searchByOperatorField """ Not. diff --git a/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php b/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php index 687ca78c8..25ac15557 100644 --- a/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php +++ b/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php @@ -14,7 +14,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorPropertyDirective; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorFieldDirective; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Exceptions\OperatorInvalidArgumentValue; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; use Nuwave\Lighthouse\Execution\Arguments\Argument; @@ -27,7 +27,7 @@ class Relationship extends BaseOperator { public function __construct( - protected SearchByOperatorPropertyDirective $property, + protected readonly SearchByOperatorFieldDirective $field, BuilderPropertyResolver $resolver, ) { parent::__construct($resolver); @@ -105,7 +105,7 @@ public function call( if ($hasCount instanceof Argument) { $query = $builder->getQuery()->newQuery(); - $query = $this->property->call($handler, $query, new Property(), $hasCount, $context); + $query = $this->field->call($handler, $query, new Property(), $hasCount, $context); $where = reset($query->wheres); $count = $where['value'] ?? $count; $operator = $where['operator'] ?? $operator; diff --git a/packages/graphql/src/SearchBy/Operators/Complex/RelationshipTest.php b/packages/graphql/src/SearchBy/Operators/Complex/RelationshipTest.php index 347d5b65f..40fe087e4 100644 --- a/packages/graphql/src/SearchBy/Operators/Complex/RelationshipTest.php +++ b/packages/graphql/src/SearchBy/Operators/Complex/RelationshipTest.php @@ -68,7 +68,7 @@ public static function dataProviderCall(): array { $graphql = <<<'GRAPHQL' input TestInput { property: TestOperators - @searchByOperatorProperty + @searchByOperatorField user: TestRelation @searchByOperatorRelationship diff --git a/packages/graphql/src/SearchBy/Operators/Property.php b/packages/graphql/src/SearchBy/Operators/Field.php similarity index 55% rename from packages/graphql/src/SearchBy/Operators/Property.php rename to packages/graphql/src/SearchBy/Operators/Field.php index 347337894..12e6fa1ac 100644 --- a/packages/graphql/src/SearchBy/Operators/Property.php +++ b/packages/graphql/src/SearchBy/Operators/Field.php @@ -2,25 +2,21 @@ namespace LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators; -use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use Override; -class Property extends BaseOperator { +class Field extends BaseOperator { use HandlerOperator; + use ScoutSupport; #[Override] public static function getName(): string { - return 'property'; + return 'field'; } #[Override] public function getFieldDescription(): string { - return 'Property condition.'; - } - - #[Override] - public function isAvailable(string $builder, Context $context): bool { - return true; + return 'Field condition.'; } } diff --git a/packages/graphql/src/SearchBy/Operators/Logical/AllOfTest.php b/packages/graphql/src/SearchBy/Operators/Logical/AllOfTest.php index 8fe1a06a4..4ecc63779 100644 --- a/packages/graphql/src/SearchBy/Operators/Logical/AllOfTest.php +++ b/packages/graphql/src/SearchBy/Operators/Logical/AllOfTest.php @@ -116,10 +116,10 @@ public static function dataProviderCall(): array { <<<'GRAPHQL' input TestInput { a: TestOperators - @searchByOperatorProperty + @searchByOperatorField b: TestOperators - @searchByOperatorProperty + @searchByOperatorField } input TestOperators { @@ -265,10 +265,10 @@ public static function dataProviderCallScout(): array { <<<'GRAPHQL' input TestInput { a: TestOperators - @searchByOperatorProperty + @searchByOperatorField b: TestOperators - @searchByOperatorProperty + @searchByOperatorField } input TestOperators { diff --git a/packages/graphql/src/SearchBy/Operators/Logical/AnyOfTest.php b/packages/graphql/src/SearchBy/Operators/Logical/AnyOfTest.php index 9278d7198..bd9c35d93 100644 --- a/packages/graphql/src/SearchBy/Operators/Logical/AnyOfTest.php +++ b/packages/graphql/src/SearchBy/Operators/Logical/AnyOfTest.php @@ -75,10 +75,10 @@ public static function dataProviderCall(): array { <<<'GRAPHQL' input TestInput { a: TestOperators - @searchByOperatorProperty + @searchByOperatorField b: TestOperators - @searchByOperatorProperty + @searchByOperatorField } input TestOperators { diff --git a/packages/graphql/src/SearchBy/Operators/Logical/NotTest.php b/packages/graphql/src/SearchBy/Operators/Logical/NotTest.php index 1be1b109b..0768d4b34 100644 --- a/packages/graphql/src/SearchBy/Operators/Logical/NotTest.php +++ b/packages/graphql/src/SearchBy/Operators/Logical/NotTest.php @@ -76,10 +76,10 @@ public static function dataProviderCall(): array { <<<'GRAPHQL' input TestInput { a: TestOperators - @searchByOperatorProperty + @searchByOperatorField b: TestOperators - @searchByOperatorProperty + @searchByOperatorField } input TestOperators { diff --git a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php b/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php index 265f01e5c..16cae0b07 100644 --- a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php +++ b/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php @@ -6,13 +6,13 @@ use Composer\Semver\VersionParser; use Laravel\Scout\Builder as ScoutBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorPropertyDirective; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; use Override; use function is_a; /** - * @mixin SearchByOperatorPropertyDirective + * @mixin BaseOperator */ trait ScoutSupport { #[Override] diff --git a/packages/graphql/src/SearchBy/Types/Condition.php b/packages/graphql/src/SearchBy/Types/Condition.php index e4bc656f7..80ce91349 100644 --- a/packages/graphql/src/SearchBy/Types/Condition.php +++ b/packages/graphql/src/SearchBy/Types/Condition.php @@ -17,7 +17,7 @@ use LastDragon_ru\LaraASP\GraphQL\Exceptions\NotImplemented; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Contracts\Ignored; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Contracts\Operator; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorPropertyDirective; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorFieldDirective; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Directives\Directive; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators; use Override; @@ -87,7 +87,7 @@ protected function getFieldOperator( if (is_string($operator)) { $type = $manipulator->getType($operator, $field, $context); $source = $manipulator->getTypeSource(Parser::typeReference($type)); - $operator = $manipulator->getOperator($this->getScope(), SearchByOperatorPropertyDirective::class); + $operator = $manipulator->getOperator($this->getScope(), SearchByOperatorFieldDirective::class); $operator = [$operator, $source]; } diff --git a/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql b/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql index 0cdc042d2..def04a5c8 100644 --- a/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql +++ b/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql @@ -23,13 +23,13 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorNot +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorNot on | ENUM | INPUT_FIELD_DEFINITION @@ -143,10 +143,10 @@ input SearchByConditionTestObject { @searchByOperatorAnyOf """ - Property condition. + Field condition. """ id: SearchByScalarID - @searchByOperatorProperty + @searchByOperatorField """ Not. diff --git a/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql b/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql index 082a365db..75c0def68 100644 --- a/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql +++ b/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql @@ -17,7 +17,7 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @searchByOperatorProperty +directive @searchByOperatorField on | ENUM | INPUT_FIELD_DEFINITION @@ -125,10 +125,10 @@ input SearchByScoutConditionTestObject { @searchByOperatorAllOf """ - Property condition. + Field condition. """ id: SearchByScoutScalarID - @searchByOperatorProperty + @searchByOperatorField } """ From e55101d5b60ec923c9af80ba482325a50b64b1c2 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 11:01:23 +0400 Subject: [PATCH 05/13] `@searchByOperatorCondition` replaced by `@searchByOperatorFieldObject`. --- packages/graphql/UPGRADE.md | 2 + .../SearchByOperatorFieldObjectDirective.php | 11 +++++ .../DirectiveTest/Scout.expected.graphql | 42 +++++++++---------- .../Scout.expected.v10.3.0.graphql | 42 +++++++++---------- packages/graphql/src/SearchBy/Operators.php | 4 +- .../src/SearchBy/Operators/FieldObject.php | 37 ++++++++++++++++ 6 files changed, 94 insertions(+), 44 deletions(-) create mode 100644 packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldObjectDirective.php create mode 100644 packages/graphql/src/SearchBy/Operators/FieldObject.php diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index e6d7bb473..99bfade30 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -55,6 +55,8 @@ Please also see [changelog](https://github.com/LastDragon-ru/lara-asp/releases) * [ ] `@searchByOperatorProperty` => `@searchByOperatorField` (and class too) +* [ ] `@searchByOperatorCondition` => `@searchByOperatorFieldObject` + * [ ] `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators::Condition` => `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators::Object`. * [ ] `scalar SearchByCondition` => `scalar SearchByObject`. diff --git a/packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldObjectDirective.php b/packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldObjectDirective.php new file mode 100644 index 000000000..889aab6e6 --- /dev/null +++ b/packages/graphql/src/SearchBy/Definitions/SearchByOperatorFieldObjectDirective.php @@ -0,0 +1,11 @@ + [ SearchByOperatorRelationshipDirective::class, - SearchByOperatorConditionDirective::class, + SearchByOperatorFieldObjectDirective::class, ], // Lighthouse diff --git a/packages/graphql/src/SearchBy/Operators/FieldObject.php b/packages/graphql/src/SearchBy/Operators/FieldObject.php new file mode 100644 index 000000000..e56f92b5b --- /dev/null +++ b/packages/graphql/src/SearchBy/Operators/FieldObject.php @@ -0,0 +1,37 @@ +getType(Condition::class, $source, $context); + } + + #[Override] + public function getFieldDescription(): string { + return 'Field condition.'; + } + + #[Override] + public function isAvailable(string $builder, Context $context): bool { + return is_a($builder, ScoutBuilder::class, true); + } +} From f49bffbef9b0bb823db0d6af590b8fe74947d0d1 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 11:28:21 +0400 Subject: [PATCH 06/13] Field names/descriptions fix. --- .../AllowedDirectives.expected.graphql | 4 +- .../DirectiveTest/Example.expected.graphql | 10 +- .../DirectiveTest/Explicit.expected.graphql | 6 +- .../DirectiveTest/Explicit.schema.graphql | 2 +- .../DirectiveTest/Ignored.expected.graphql | 2 +- .../DirectiveTest/Implicit.expected.graphql | 22 ++-- .../DirectiveTest/Implicit.schema.graphql | 6 +- .../InterfaceUpdate.expected.graphql | 4 +- .../DirectiveTest/Query.expected.graphql | 8 +- .../DirectiveTest/Scout.expected.graphql | 92 +++++++------- .../TypeRegistry.expected.graphql | 117 +++++++----------- .../graphql/src/SortBy/Operators/Field.php | 2 +- .../DirectiveTest~schema-expected.graphql | 2 +- .../DirectiveTest~scout-expected.graphql | 2 +- 14 files changed, 129 insertions(+), 150 deletions(-) diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql index 0466f17f1..3b0608eb8 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/AllowedDirectives.expected.graphql @@ -34,7 +34,7 @@ Sort clause for `type A` (only one property allowed at a time). """ input SortByClauseA { """ - Property clause. + Field clause. """ a: SortByTypeDirection @sortByOperatorField @@ -48,7 +48,7 @@ Sort clause for `interface B` (only one property allowed at a time). """ input SortByClauseB { """ - Property clause. + Field clause. """ b: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql index 09d102fed..11c1982df 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql @@ -64,7 +64,7 @@ input SortByClauseComment { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ text: SortByTypeDirection @sortByOperatorField @@ -81,13 +81,13 @@ Sort clause for `type User` (only one property allowed at a time). """ input SortByClauseUser { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -110,13 +110,13 @@ Sort clause for `input UsersSort` (only one property allowed at a time). """ input SortByClauseUsersSort { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql index 2a2b1cb3e..be321bed3 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql @@ -92,7 +92,7 @@ input SortByClauseA { @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -121,7 +121,7 @@ input SortByClauseB { @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -223,7 +223,7 @@ type Query { @all b( - where: [SortByClauseA!] + order: [SortByClauseA!] @sortBy """ diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.schema.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.schema.graphql index 540afc328..e0c08f627 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.schema.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.schema.graphql @@ -1,6 +1,6 @@ type Query { a(order: A @sortBy): ID! @all - b(where: A @sortBy): [A!]! @paginate( + b(order: A @sortBy): [A!]! @paginate( model: "LastDragon_ru\\LaraASP\\GraphQL\\Testing\\Package\\Data\\Models\\TestObject" ) } diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Ignored.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Ignored.expected.graphql index 6b9bfcf92..9c277de5b 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Ignored.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Ignored.expected.graphql @@ -103,7 +103,7 @@ Sort clause for `interface B` (only one property allowed at a time). """ input SortByClauseB { """ - Property clause. + Field clause. """ a: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql index cbb45f64b..961713de4 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql @@ -120,13 +120,13 @@ Sort clause for `type A` (only one property allowed at a time). """ input SortByClauseA { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -192,7 +192,7 @@ input SortByClauseA { @sortByOperatorProperty """ - Property clause. + Field clause. """ renamed: SortByTypeDirection @sortByOperatorField @@ -206,13 +206,13 @@ Sort clause for `type B` (only one property allowed at a time). """ input SortByClauseB { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -241,13 +241,13 @@ Sort clause for `interface C` (only one property allowed at a time). """ input SortByClauseC { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -313,7 +313,7 @@ input SortByClauseC { @sortByOperatorProperty """ - Property clause. + Field clause. """ renamed: SortByTypeDirection @sortByOperatorField @@ -738,13 +738,13 @@ type PaginatorInfo { type Query { a( - where: [SortByClauseA!] + order: [SortByClauseA!] @sortBy ): [A!]! @all b( - where: [SortByClauseA!] + order: [SortByClauseA!] @sortBy """ @@ -762,7 +762,7 @@ type Query { ) c( - where: [SortByClauseC!] + order: [SortByClauseC!] @sortBy ): [C!]! @all diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql index eed207cf6..853ed05c5 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql @@ -1,9 +1,9 @@ type Query { - a(where: _ @sortBy): [A!]! @all - b(where: _ @sortBy): [A!]! @paginate( + a(order: _ @sortBy): [A!]! @all + b(order: _ @sortBy): [A!]! @paginate( model: "LastDragon_ru\\LaraASP\\GraphQL\\Testing\\Package\\Data\\Models\\TestObject" ) - c(where: _ @sortBy): [C!]! @all + c(order: _ @sortBy): [C!]! @all } type A { diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql index 221790bab..a9c5e4285 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/InterfaceUpdate.expected.graphql @@ -38,7 +38,7 @@ Sort clause for `input A` (only one property allowed at a time). """ input SortByClauseA { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField @@ -49,7 +49,7 @@ Sort clause for `type B` (only one property allowed at a time). """ input SortByClauseB { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.expected.graphql index 7ad229588..5ef079362 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.expected.graphql @@ -46,13 +46,13 @@ Sort clause for `input InputA` (only one property allowed at a time). """ input SortByQueryClauseInputA { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -75,13 +75,13 @@ Sort clause for `input TypeB` (only one property allowed at a time). """ input SortByQueryClauseTypeB { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql index ce0e941b6..9a138f442 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql @@ -115,7 +115,7 @@ input SortByClauseNested { @sortByOperatorRandom """ - Property clause. + Field clause. """ value: SortByTypeDirection @sortByOperatorField @@ -126,37 +126,37 @@ Sort clause for `type Object` (only one property allowed at a time). """ input SortByClauseObject { """ - Property clause. + Field clause. """ customScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarNonNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ description: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enum: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enumNotNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ fieldRenamed: SortByTypeDirection @sortByOperatorField @@ -165,13 +165,13 @@ input SortByClauseObject { ) """ - Property clause. + Field clause. """ idScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ idScalarNotNull: SortByTypeDirection @sortByOperatorField @@ -212,37 +212,37 @@ Sort clause for `interface ObjectInterface` (only one property allowed at a time """ input SortByClauseObjectInterface { """ - Property clause. + Field clause. """ customScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarNonNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ description: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enum: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enumNotNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ fieldRenamed: SortByTypeDirection @sortByOperatorField @@ -251,13 +251,13 @@ input SortByClauseObjectInterface { ) """ - Property clause. + Field clause. """ idScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ idScalarNotNull: SortByTypeDirection @sortByOperatorField @@ -316,7 +316,7 @@ input SortByClauseObjectNested { @sortByOperatorRandom """ - Property clause. + Field clause. """ value: SortByTypeDirection @sortByOperatorField @@ -327,19 +327,19 @@ Sort clause for `input Properties` (only one property allowed at a time). """ input SortByClauseProperties { """ - Property clause. + Field clause. """ customScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarList: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarNonNull: SortByTypeDirection @sortByOperatorField @@ -351,19 +351,19 @@ input SortByClauseProperties { @sortByOperatorField """ - Property clause. + Field clause. """ enum: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enumNotNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ fieldRenamed: SortByTypeDirection @sortByOperatorField @@ -372,13 +372,13 @@ input SortByClauseProperties { ) """ - Property clause. + Field clause. """ idScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ idScalarNotNull: SortByTypeDirection @sortByOperatorField @@ -414,7 +414,7 @@ input SortByClauseProperties { @sortByOperatorRandom """ - Property clause. + Field clause. """ resolver: SortByTypeDirection @sortByOperatorField @@ -425,19 +425,19 @@ Sort clause for `input Properties` (only one property allowed at a time). """ input SortByQueryClauseProperties { """ - Property clause. + Field clause. """ customScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarList: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarNonNull: SortByTypeDirection @sortByOperatorField @@ -449,19 +449,19 @@ input SortByQueryClauseProperties { @sortByOperatorField """ - Property clause. + Field clause. """ enum: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enumNotNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ fieldRenamed: SortByTypeDirection @sortByOperatorField @@ -470,13 +470,13 @@ input SortByQueryClauseProperties { ) """ - Property clause. + Field clause. """ idScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ idScalarNotNull: SortByTypeDirection @sortByOperatorField @@ -500,7 +500,7 @@ input SortByQueryClauseProperties { @sortByOperatorRandom """ - Property clause. + Field clause. """ resolver: SortByTypeDirection @sortByOperatorField @@ -529,7 +529,7 @@ input SortByScoutClauseNested { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ value: SortByTypeDirection @sortByOperatorField @@ -540,19 +540,19 @@ Sort clause for `input Properties` (only one property allowed at a time). """ input SortByScoutClauseProperties { """ - Property clause. + Field clause. """ customScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarList: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ customScalarNonNull: SortByTypeDirection @sortByOperatorField @@ -564,19 +564,19 @@ input SortByScoutClauseProperties { @sortByOperatorField """ - Property clause. + Field clause. """ enum: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ enumNotNull: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ fieldRenamed: SortByTypeDirection @sortByOperatorField @@ -585,13 +585,13 @@ input SortByScoutClauseProperties { ) """ - Property clause. + Field clause. """ idScalar: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ idScalarNotNull: SortByTypeDirection @sortByOperatorField @@ -621,7 +621,7 @@ input SortByScoutClauseProperties { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ resolver: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql index 19f4a1c05..11c1982df 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql @@ -48,75 +48,46 @@ enum SortByTypeDirection { } """ -Sort clause for `input A` (only one property allowed at a time). +Sort clause for `type Comment` (only one property allowed at a time). """ -input SortByClauseA { - """ - Property clause. - """ - flag: SortByTypeDirection - @sortByOperatorField - - """ - Property clause. - """ - name: SortByTypeDirection - @sortByOperatorField - +input SortByClauseComment { """ NULLs first """ - nullsFirst: SortByClauseA + nullsFirst: SortByClauseComment @sortByOperatorNullsFirst """ NULLs last """ - nullsLast: SortByClauseA + nullsLast: SortByClauseComment @sortByOperatorNullsLast -} - -""" -Sort clause for `input B` (only one property allowed at a time). -""" -input SortByClauseB { - """ - Property clause. - """ - child: SortByClauseA - @sortByOperatorProperty """ - Property clause. + Field clause. """ - name: SortByTypeDirection + text: SortByTypeDirection @sortByOperatorField """ - NULLs first - """ - nullsFirst: SortByClauseB - @sortByOperatorNullsFirst - - """ - NULLs last + Property clause. """ - nullsLast: SortByClauseB - @sortByOperatorNullsLast + user: SortByClauseUser + @sortByOperatorProperty } """ -Sort clause for `type C` (only one property allowed at a time). +Sort clause for `type User` (only one property allowed at a time). """ -input SortByClauseC { +input SortByClauseUser { """ - Property clause. + Field clause. """ - flag: SortByTypeDirection + id: SortByTypeDirection @sortByOperatorField """ - Property clause. + Field clause. """ name: SortByTypeDirection @sortByOperatorField @@ -124,65 +95,73 @@ input SortByClauseC { """ NULLs first """ - nullsFirst: SortByClauseC + nullsFirst: SortByClauseUser @sortByOperatorNullsFirst """ NULLs last """ - nullsLast: SortByClauseC + nullsLast: SortByClauseUser @sortByOperatorNullsLast } """ -Sort clause for `type D` (only one property allowed at a time). +Sort clause for `input UsersSort` (only one property allowed at a time). """ -input SortByClauseD { +input SortByClauseUsersSort { """ - Property clause. + Field clause. """ - child: SortByClauseC - @sortByOperatorProperty + id: SortByTypeDirection + @sortByOperatorField + + """ + Field clause. + """ + name: SortByTypeDirection + @sortByOperatorField """ NULLs first """ - nullsFirst: SortByClauseD + nullsFirst: SortByClauseUsersSort @sortByOperatorNullsFirst """ NULLs last """ - nullsLast: SortByClauseD + nullsLast: SortByClauseUsersSort @sortByOperatorNullsLast } -type C { - flag: Boolean! - list: [Boolean!]! - name: String -} +type Comment { + text: String -type D { - child: C! + user: User + @belongsTo } type Query { - a( - order: [SortByClauseA!] + """ + or `_` to generate type automatically 😛 + """ + comments( + order: [SortByClauseComment!] @sortBy - ): ID! + ): [Comment!]! @all - b( - order: [SortByClauseB!] + """ + You can use normal input type + """ + users( + order: [SortByClauseUsersSort!] @sortBy ): ID! @all +} - c( - order: [SortByClauseD!] - @sortBy - ): D! - @all +type User { + id: ID! + name: String! } diff --git a/packages/graphql/src/SortBy/Operators/Field.php b/packages/graphql/src/SortBy/Operators/Field.php index 288cbeb92..264d31125 100644 --- a/packages/graphql/src/SortBy/Operators/Field.php +++ b/packages/graphql/src/SortBy/Operators/Field.php @@ -44,7 +44,7 @@ public function getFieldType(TypeProvider $provider, TypeSource $source, Context #[Override] public function getFieldDescription(): string { - return 'Property clause.'; + return 'Field clause.'; } #[Override] diff --git a/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql b/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql index def04a5c8..d4d5d5e50 100644 --- a/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql +++ b/packages/graphql/src/Stream/Directives/DirectiveTest~schema-expected.graphql @@ -171,7 +171,7 @@ Sort clause for `type TestObject` (only one property allowed at a time). """ input SortByClauseTestObject { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField diff --git a/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql b/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql index 75c0def68..3bee4437d 100644 --- a/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql +++ b/packages/graphql/src/Stream/Directives/DirectiveTest~scout-expected.graphql @@ -147,7 +147,7 @@ Sort clause for `type TestObject` (only one property allowed at a time). """ input SortByScoutClauseTestObject { """ - Property clause. + Field clause. """ id: SortByTypeDirection @sortByOperatorField From 58f33c098c8c8ceaece116df78a05ea4e9630e3e Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 11:44:21 +0400 Subject: [PATCH 07/13] `@sortByOperatorProperty` renamed to `@sortByOperatorFieldObject`. --- packages/graphql/UPGRADE.md | 2 + ...=> SortByOperatorFieldObjectDirective.php} | 4 +- .../src/SortBy/Directives/DirectiveTest.php | 2 +- .../DirectiveTest/Example.expected.graphql | 10 +-- .../DirectiveTest/Explicit.expected.graphql | 18 ++-- .../DirectiveTest/Implicit.expected.graphql | 82 +++++++++---------- .../DirectiveTest/Implicit.schema.graphql | 8 +- .../DirectiveTest/Scout.expected.graphql | 46 +++++------ .../TypeRegistry.expected.graphql | 10 +-- packages/graphql/src/SortBy/Operators.php | 4 +- .../{Property.php => FieldObject.php} | 6 +- 11 files changed, 97 insertions(+), 95 deletions(-) rename packages/graphql/src/SortBy/Definitions/{SortByOperatorPropertyDirective.php => SortByOperatorFieldObjectDirective.php} (70%) rename packages/graphql/src/SortBy/Operators/{Property.php => FieldObject.php} (91%) diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index 99bfade30..6416dddb8 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -86,6 +86,8 @@ Please also see [changelog](https://github.com/LastDragon-ru/lara-asp/releases) * [ ] If you are using `LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Scout\FieldResolver`, use `LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\BuilderPropertyResolver` instead. 🤝 +* [ ] `@sortByOperatorProperty` => `@sortByOperatorFieldObject` (and class too) + ## API This section is actual only if you are extending the package. Please review and update (listed the most significant changes only): diff --git a/packages/graphql/src/SortBy/Definitions/SortByOperatorPropertyDirective.php b/packages/graphql/src/SortBy/Definitions/SortByOperatorFieldObjectDirective.php similarity index 70% rename from packages/graphql/src/SortBy/Definitions/SortByOperatorPropertyDirective.php rename to packages/graphql/src/SortBy/Definitions/SortByOperatorFieldObjectDirective.php index 8d950e8cc..17f27f5f3 100644 --- a/packages/graphql/src/SortBy/Definitions/SortByOperatorPropertyDirective.php +++ b/packages/graphql/src/SortBy/Definitions/SortByOperatorFieldObjectDirective.php @@ -2,9 +2,9 @@ namespace LastDragon_ru\LaraASP\GraphQL\SortBy\Definitions; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Property; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\FieldObject; -class SortByOperatorPropertyDirective extends Property { +class SortByOperatorFieldObjectDirective extends FieldObject { // Lighthouse loads all classes from directive namespace this leads to // 'Class "Orchestra\Testbench\TestCase" not found' error for our *Test // classes. This class required to avoid this error. diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest.php b/packages/graphql/src/SortBy/Directives/DirectiveTest.php index 74e90f7e2..cd496a63f 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest.php +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest.php @@ -494,7 +494,7 @@ static function (): void { $registry->register($i); }, ], - 'example' => [ + 'Example' => [ 'Example.expected.graphql', 'Example.schema.graphql', null, diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql index 11c1982df..e268dc67d 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Example.expected.graphql @@ -11,19 +11,19 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsFirst +directive @sortByOperatorFieldObject on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsLast +directive @sortByOperatorNullsFirst on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorProperty +directive @sortByOperatorNullsLast on | ENUM | INPUT_FIELD_DEFINITION @@ -70,10 +70,10 @@ input SortByClauseComment { @sortByOperatorField """ - Property clause. + Field clause. """ user: SortByClauseUser - @sortByOperatorProperty + @sortByOperatorFieldObject } """ diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql index be321bed3..570805e91 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Explicit.expected.graphql @@ -11,19 +11,19 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsFirst +directive @sortByOperatorFieldObject on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsLast +directive @sortByOperatorNullsFirst on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorProperty +directive @sortByOperatorNullsLast on | ENUM | INPUT_FIELD_DEFINITION @@ -74,16 +74,16 @@ Sort clause for `input A` (only one property allowed at a time). """ input SortByClauseA { """ - Property clause. + Field clause. """ field: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ fields: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ Description should be copied. @@ -139,10 +139,10 @@ input SortByClauseB { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ parent: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject } """ diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql index 961713de4..d8de869e5 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.expected.graphql @@ -11,19 +11,19 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsFirst +directive @sortByOperatorFieldObject on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsLast +directive @sortByOperatorNullsFirst on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorProperty +directive @sortByOperatorNullsLast on | ENUM | INPUT_FIELD_DEFINITION @@ -144,52 +144,52 @@ input SortByClauseA { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ operator: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ operators: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relation: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationWithArgs: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relations: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsPaginated: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsPaginatedWithArgs: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsWithArgs: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject """ Field clause. @@ -230,10 +230,10 @@ input SortByClauseB { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ parent: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject } """ @@ -265,52 +265,52 @@ input SortByClauseC { @sortByOperatorNullsLast """ - Property clause. + Field clause. """ operator: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ operators: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relation: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationWithArgs: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relations: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsPaginated: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsPaginatedWithArgs: SortByClauseB - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ relationsWithArgs: SortByClauseA - @sortByOperatorProperty + @sortByOperatorFieldObject """ Field clause. @@ -355,10 +355,10 @@ interface C { name: String! operator: B! - @sortByOperatorProperty + @sortByOperatorFieldObject operators: [B!] - @sortByOperatorProperty + @sortByOperatorFieldObject property( arg: String @@ -498,10 +498,10 @@ type A { name: String! operator: B! - @sortByOperatorProperty + @sortByOperatorFieldObject operators: [B!] - @sortByOperatorProperty + @sortByOperatorFieldObject property( arg: String diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql index 853ed05c5..8abe0f9a0 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Implicit.schema.graphql @@ -11,8 +11,8 @@ type A { "Description should be ignored." id: ID! name: String! - operator: B! @sortByOperatorProperty - operators: [B!] @sortByOperatorProperty + operator: B! @sortByOperatorFieldObject + operators: [B!] @sortByOperatorFieldObject relation: B! @hasOne relations: [B!]! @hasMany relationWithArgs(arg: String): A! @hasOne @@ -51,8 +51,8 @@ interface C { "Description should be ignored." id: ID! name: String! - operator: B! @sortByOperatorProperty - operators: [B!] @sortByOperatorProperty + operator: B! @sortByOperatorFieldObject + operators: [B!] @sortByOperatorFieldObject relation: B! @hasOne relations: [B!]! @hasMany relationWithArgs(arg: String): A! @hasOne diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql index 9a138f442..d4f491809 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Scout.expected.graphql @@ -23,19 +23,19 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsFirst +directive @sortByOperatorFieldObject on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsLast +directive @sortByOperatorNullsFirst on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorProperty +directive @sortByOperatorNullsLast on | ENUM | INPUT_FIELD_DEFINITION @@ -91,10 +91,10 @@ Sort clause for `input Nested` (only one property allowed at a time). """ input SortByClauseNested { """ - Property clause. + Field clause. """ nested: SortByClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first @@ -177,16 +177,16 @@ input SortByClauseObject { @sortByOperatorField """ - Property clause. + Field clause. """ nested: SortByClauseObjectNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ nestedNotNull: SortByClauseObjectNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first @@ -263,16 +263,16 @@ input SortByClauseObjectInterface { @sortByOperatorField """ - Property clause. + Field clause. """ nested: SortByClauseObjectNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ nestedNotNull: SortByClauseObjectNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first @@ -384,16 +384,16 @@ input SortByClauseProperties { @sortByOperatorField """ - Property clause. + Field clause. """ nested: SortByClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ nestedNotNull: SortByClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first @@ -511,10 +511,10 @@ Sort clause for `input Nested` (only one property allowed at a time). """ input SortByScoutClauseNested { """ - Property clause. + Field clause. """ nested: SortByScoutClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first @@ -597,16 +597,16 @@ input SortByScoutClauseProperties { @sortByOperatorField """ - Property clause. + Field clause. """ nested: SortByScoutClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ - Property clause. + Field clause. """ nestedNotNull: SortByScoutClauseNested - @sortByOperatorProperty + @sortByOperatorFieldObject """ NULLs first diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql index 11c1982df..e268dc67d 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/TypeRegistry.expected.graphql @@ -11,19 +11,19 @@ on | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsFirst +directive @sortByOperatorFieldObject on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorNullsLast +directive @sortByOperatorNullsFirst on | ENUM | INPUT_FIELD_DEFINITION | SCALAR -directive @sortByOperatorProperty +directive @sortByOperatorNullsLast on | ENUM | INPUT_FIELD_DEFINITION @@ -70,10 +70,10 @@ input SortByClauseComment { @sortByOperatorField """ - Property clause. + Field clause. """ user: SortByClauseUser - @sortByOperatorProperty + @sortByOperatorFieldObject } """ diff --git a/packages/graphql/src/SortBy/Operators.php b/packages/graphql/src/SortBy/Operators.php index 2e669dbe6..7e3a7389c 100644 --- a/packages/graphql/src/SortBy/Operators.php +++ b/packages/graphql/src/SortBy/Operators.php @@ -5,9 +5,9 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Operator as BuilderOperator; use LastDragon_ru\LaraASP\GraphQL\Builder\Operators as BuilderOperators; use LastDragon_ru\LaraASP\GraphQL\Package; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Definitions\SortByOperatorFieldObjectDirective; use LastDragon_ru\LaraASP\GraphQL\SortBy\Definitions\SortByOperatorNullsFirstDirective; use LastDragon_ru\LaraASP\GraphQL\SortBy\Definitions\SortByOperatorNullsLastDirective; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Definitions\SortByOperatorPropertyDirective; use LastDragon_ru\LaraASP\GraphQL\SortBy\Directives\Directive; use Override; @@ -26,7 +26,7 @@ class Operators extends BuilderOperators { SortByOperatorNullsLastDirective::class, ], self::Object => [ - SortByOperatorPropertyDirective::class, + SortByOperatorFieldObjectDirective::class, ], ]; diff --git a/packages/graphql/src/SortBy/Operators/Property.php b/packages/graphql/src/SortBy/Operators/FieldObject.php similarity index 91% rename from packages/graphql/src/SortBy/Operators/Property.php rename to packages/graphql/src/SortBy/Operators/FieldObject.php index a1236b502..e7defca83 100644 --- a/packages/graphql/src/SortBy/Operators/Property.php +++ b/packages/graphql/src/SortBy/Operators/FieldObject.php @@ -13,12 +13,12 @@ use function is_a; -class Property extends BaseOperator { +class FieldObject extends BaseOperator { use HandlerOperator; #[Override] public static function getName(): string { - return 'property'; + return 'field'; } #[Override] @@ -28,7 +28,7 @@ public function getFieldType(TypeProvider $provider, TypeSource $source, Context #[Override] public function getFieldDescription(): string { - return 'Property clause.'; + return 'Field clause.'; } #[Override] From 5195b9fab9d656f50e17f56b955f82031313342c Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 11:55:18 +0400 Subject: [PATCH 08/13] `BaseOperator` => `Operator`. --- packages/graphql/UPGRADE.md | 4 ++++ packages/graphql/src/SearchBy/Directives/DirectiveTest.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/Between.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/BitwiseAnd.php | 4 ++-- .../src/SearchBy/Operators/Comparison/BitwiseLeftShift.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/BitwiseOr.php | 4 ++-- .../src/SearchBy/Operators/Comparison/BitwiseRightShift.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/BitwiseXor.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/Contains.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/Equal.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/GreaterThan.php | 4 ++-- .../src/SearchBy/Operators/Comparison/GreaterThanOrEqual.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/In.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/IsNotNull.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/IsNull.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/LessThan.php | 4 ++-- .../src/SearchBy/Operators/Comparison/LessThanOrEqual.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/Like.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/NotEqual.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/NotIn.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/NotLike.php | 4 ++-- .../graphql/src/SearchBy/Operators/Complex/Relationship.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Condition.php | 2 +- packages/graphql/src/SearchBy/Operators/Field.php | 2 +- packages/graphql/src/SearchBy/Operators/FieldObject.php | 2 +- packages/graphql/src/SearchBy/Operators/Logical/Logical.php | 4 ++-- .../src/SearchBy/Operators/{BaseOperator.php => Operator.php} | 3 +-- .../graphql/src/SearchBy/Operators/Traits/ScoutSupport.php | 4 ++-- packages/graphql/src/SortBy/Operators/Clause.php | 2 +- packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php | 4 ++-- packages/graphql/src/SortBy/Operators/Extra/NullsLast.php | 4 ++-- packages/graphql/src/SortBy/Operators/Extra/Random.php | 4 ++-- packages/graphql/src/SortBy/Operators/Field.php | 2 +- packages/graphql/src/SortBy/Operators/FieldObject.php | 2 +- .../src/SortBy/Operators/{BaseOperator.php => Operator.php} | 4 ++-- 35 files changed, 65 insertions(+), 62 deletions(-) rename packages/graphql/src/SearchBy/Operators/{BaseOperator.php => Operator.php} (86%) rename packages/graphql/src/SortBy/Operators/{BaseOperator.php => Operator.php} (80%) diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index 6416dddb8..cda821304 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -123,3 +123,7 @@ This section is actual only if you are extending the package. Please review and * [ ] `LastDragon_ru\LaraASP\GraphQL\Builder\Types\InputObject` * [ ] `LastDragon_ru\LaraASP\GraphQL\SortBy\Builders\*` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Sorters\*` + +* [ ] `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator` + +* [ ] `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator` diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest.php b/packages/graphql/src/SearchBy/Directives/DirectiveTest.php index e25976482..4b6c226d2 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest.php +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest.php @@ -34,7 +34,7 @@ use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorBetweenDirective; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorEqualDirective; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\Testing\Package\Data\Models\WithTestObject; use LastDragon_ru\LaraASP\GraphQL\Testing\Package\DataProviders\BuilderDataProvider; use LastDragon_ru\LaraASP\GraphQL\Testing\Package\DataProviders\EloquentBuilderDataProvider; @@ -882,7 +882,7 @@ public function __invoke(): mixed { * @internal * @noinspection PhpMultipleClassesDeclarationsInOneFile */ -class DirectiveTest__CustomComplexOperator extends BaseOperator implements TypeDefinition { +class DirectiveTest__CustomComplexOperator extends Operator implements TypeDefinition { #[Override] public static function getName(): string { return 'custom'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/Between.php b/packages/graphql/src/SearchBy/Operators/Comparison/Between.php index a053dd224..d066c0ad3 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/Between.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/Between.php @@ -11,12 +11,12 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Range; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class Between extends BaseOperator { +class Between extends Operator { #[Override] public static function getName(): string { return 'between'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseAnd.php b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseAnd.php index 1b1882b14..15274813d 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseAnd.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseAnd.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class BitwiseAnd extends BaseOperator { +class BitwiseAnd extends Operator { #[Override] public static function getName(): string { return 'bitwiseAnd'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseLeftShift.php b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseLeftShift.php index 75b32a798..2fe078173 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseLeftShift.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseLeftShift.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class BitwiseLeftShift extends BaseOperator { +class BitwiseLeftShift extends Operator { #[Override] public static function getName(): string { return 'bitwiseLeftShift'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseOr.php b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseOr.php index f4e1f69f6..747eb0955 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseOr.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseOr.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class BitwiseOr extends BaseOperator { +class BitwiseOr extends Operator { #[Override] public static function getName(): string { return 'bitwiseOr'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseRightShift.php b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseRightShift.php index 8fba88636..98e6989c6 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseRightShift.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseRightShift.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class BitwiseRightShift extends BaseOperator { +class BitwiseRightShift extends Operator { #[Override] public static function getName(): string { return 'bitwiseRightShift'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseXor.php b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseXor.php index 0e1e3f0b7..ec43de260 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseXor.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/BitwiseXor.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class BitwiseXor extends BaseOperator { +class BitwiseXor extends Operator { #[Override] public static function getName(): string { return 'bitwiseXor'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/Contains.php b/packages/graphql/src/SearchBy/Operators/Comparison/Contains.php index 1a75a0c3e..af180eb72 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/Contains.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/Contains.php @@ -11,13 +11,13 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; use function strtr; -class Contains extends BaseOperator { +class Contains extends Operator { #[Override] public static function getName(): string { return 'contains'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/Equal.php b/packages/graphql/src/SearchBy/Operators/Comparison/Equal.php index cb3498595..aeb577ef4 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/Equal.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/Equal.php @@ -9,12 +9,12 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class Equal extends BaseOperator { +class Equal extends Operator { use ScoutSupport; #[Override] diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThan.php b/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThan.php index f8d87e29b..5778cf647 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThan.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThan.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class GreaterThan extends BaseOperator { +class GreaterThan extends Operator { #[Override] public static function getName(): string { return 'greaterThan'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThanOrEqual.php b/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThanOrEqual.php index b56bbe2bf..c58a5400e 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThanOrEqual.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/GreaterThanOrEqual.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class GreaterThanOrEqual extends BaseOperator { +class GreaterThanOrEqual extends Operator { #[Override] public static function getName(): string { return 'greaterThanOrEqual'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/In.php b/packages/graphql/src/SearchBy/Operators/Comparison/In.php index 822bb6dc3..1ad68e422 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/In.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/In.php @@ -11,12 +11,12 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class In extends BaseOperator { +class In extends Operator { use ScoutSupport; #[Override] diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/IsNotNull.php b/packages/graphql/src/SearchBy/Operators/Comparison/IsNotNull.php index 287ed531e..5074edb2e 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/IsNotNull.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/IsNotNull.php @@ -10,7 +10,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Flag; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; @@ -18,7 +18,7 @@ /** * @internal Must not be used directly. */ -class IsNotNull extends BaseOperator { +class IsNotNull extends Operator { #[Override] public static function getName(): string { return 'isNotNull'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/IsNull.php b/packages/graphql/src/SearchBy/Operators/Comparison/IsNull.php index 4a8d8205a..79c17ca65 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/IsNull.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/IsNull.php @@ -10,7 +10,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Flag; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; @@ -18,7 +18,7 @@ /** * @internal Must not be used directly. */ -class IsNull extends BaseOperator { +class IsNull extends Operator { #[Override] public static function getName(): string { return 'isNull'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/LessThan.php b/packages/graphql/src/SearchBy/Operators/Comparison/LessThan.php index 329ae7a4e..09945da6e 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/LessThan.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/LessThan.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class LessThan extends BaseOperator { +class LessThan extends Operator { #[Override] public static function getName(): string { return 'lessThan'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/LessThanOrEqual.php b/packages/graphql/src/SearchBy/Operators/Comparison/LessThanOrEqual.php index ed32b1556..fad4d1d5e 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/LessThanOrEqual.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/LessThanOrEqual.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class LessThanOrEqual extends BaseOperator { +class LessThanOrEqual extends Operator { #[Override] public static function getName(): string { return 'lessThanOrEqual'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/Like.php b/packages/graphql/src/SearchBy/Operators/Comparison/Like.php index a9b22dae5..bfc2be694 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/Like.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/Like.php @@ -9,11 +9,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class Like extends BaseOperator { +class Like extends Operator { #[Override] public static function getName(): string { return 'like'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/NotEqual.php b/packages/graphql/src/SearchBy/Operators/Comparison/NotEqual.php index d6d7c432f..a5df90af0 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/NotEqual.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/NotEqual.php @@ -8,11 +8,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class NotEqual extends BaseOperator { +class NotEqual extends Operator { #[Override] public static function getName(): string { return 'notEqual'; diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/NotIn.php b/packages/graphql/src/SearchBy/Operators/Comparison/NotIn.php index d910efe29..4a2fd97e0 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/NotIn.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/NotIn.php @@ -11,12 +11,12 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class NotIn extends BaseOperator { +class NotIn extends Operator { use ScoutSupport; #[Override] diff --git a/packages/graphql/src/SearchBy/Operators/Comparison/NotLike.php b/packages/graphql/src/SearchBy/Operators/Comparison/NotLike.php index 96924b362..5cd284a85 100644 --- a/packages/graphql/src/SearchBy/Operators/Comparison/NotLike.php +++ b/packages/graphql/src/SearchBy/Operators/Comparison/NotLike.php @@ -9,11 +9,11 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Handler; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class NotLike extends BaseOperator { +class NotLike extends Operator { #[Override] public static function getName(): string { return 'notLike'; diff --git a/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php b/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php index 25ac15557..625858787 100644 --- a/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php +++ b/packages/graphql/src/SearchBy/Operators/Complex/Relationship.php @@ -16,7 +16,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Property; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Definitions\SearchByOperatorFieldDirective; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Exceptions\OperatorInvalidArgumentValue; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Nuwave\Lighthouse\Execution\Arguments\ArgumentSet; use Override; @@ -25,7 +25,7 @@ use function is_a; use function reset; -class Relationship extends BaseOperator { +class Relationship extends Operator { public function __construct( protected readonly SearchByOperatorFieldDirective $field, BuilderPropertyResolver $resolver, diff --git a/packages/graphql/src/SearchBy/Operators/Condition.php b/packages/graphql/src/SearchBy/Operators/Condition.php index 2113110b0..a849017a6 100644 --- a/packages/graphql/src/SearchBy/Operators/Condition.php +++ b/packages/graphql/src/SearchBy/Operators/Condition.php @@ -10,7 +10,7 @@ use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Condition as ConditionType; use Override; -class Condition extends BaseOperator { +class Condition extends Operator { use HandlerOperator; use ScoutSupport; diff --git a/packages/graphql/src/SearchBy/Operators/Field.php b/packages/graphql/src/SearchBy/Operators/Field.php index 12e6fa1ac..9802a6b91 100644 --- a/packages/graphql/src/SearchBy/Operators/Field.php +++ b/packages/graphql/src/SearchBy/Operators/Field.php @@ -6,7 +6,7 @@ use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport; use Override; -class Field extends BaseOperator { +class Field extends Operator { use HandlerOperator; use ScoutSupport; diff --git a/packages/graphql/src/SearchBy/Operators/FieldObject.php b/packages/graphql/src/SearchBy/Operators/FieldObject.php index e56f92b5b..a0f667e8c 100644 --- a/packages/graphql/src/SearchBy/Operators/FieldObject.php +++ b/packages/graphql/src/SearchBy/Operators/FieldObject.php @@ -12,7 +12,7 @@ use function is_a; -class FieldObject extends BaseOperator { +class FieldObject extends Operator { use HandlerOperator; #[Override] diff --git a/packages/graphql/src/SearchBy/Operators/Logical/Logical.php b/packages/graphql/src/SearchBy/Operators/Logical/Logical.php index 168f31130..e23737c14 100644 --- a/packages/graphql/src/SearchBy/Operators/Logical/Logical.php +++ b/packages/graphql/src/SearchBy/Operators/Logical/Logical.php @@ -11,7 +11,7 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Exceptions\OperatorInvalidArgumentValue; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Condition; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Nuwave\Lighthouse\Execution\Arguments\ArgumentSet; @@ -21,7 +21,7 @@ use function count; use function is_array; -abstract class Logical extends BaseOperator { +abstract class Logical extends Operator { #[Override] public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { return $provider->getType(Condition::class, $source, $context); diff --git a/packages/graphql/src/SearchBy/Operators/BaseOperator.php b/packages/graphql/src/SearchBy/Operators/Operator.php similarity index 86% rename from packages/graphql/src/SearchBy/Operators/BaseOperator.php rename to packages/graphql/src/SearchBy/Operators/Operator.php index 914e4affd..2efe9451d 100644 --- a/packages/graphql/src/SearchBy/Operators/BaseOperator.php +++ b/packages/graphql/src/SearchBy/Operators/Operator.php @@ -5,7 +5,6 @@ use Illuminate\Database\Eloquent\Builder as EloquentBuilder; use Illuminate\Database\Query\Builder as QueryBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; -use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Operator; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Directives\OperatorDirective; @@ -14,7 +13,7 @@ use function is_a; -abstract class BaseOperator extends OperatorDirective implements Operator, Marker { +abstract class Operator extends OperatorDirective implements Marker { #[Override] public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { return $source->getTypeName(); diff --git a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php b/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php index 16cae0b07..c5d6dd9ea 100644 --- a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php +++ b/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php @@ -6,13 +6,13 @@ use Composer\Semver\VersionParser; use Laravel\Scout\Builder as ScoutBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Operator; use Override; use function is_a; /** - * @mixin BaseOperator + * @mixin Operator */ trait ScoutSupport { #[Override] diff --git a/packages/graphql/src/SortBy/Operators/Clause.php b/packages/graphql/src/SortBy/Operators/Clause.php index 9197885a8..02c8c3f45 100644 --- a/packages/graphql/src/SortBy/Operators/Clause.php +++ b/packages/graphql/src/SortBy/Operators/Clause.php @@ -9,7 +9,7 @@ use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause as ClauseType; use Override; -class Clause extends BaseOperator { +class Clause extends Operator { use HandlerOperator; #[Override] diff --git a/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php b/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php index 662ecd342..ead7d7f31 100644 --- a/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php +++ b/packages/graphql/src/SortBy/Operators/Extra/NullsFirst.php @@ -11,13 +11,13 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\SorterFactory; use LastDragon_ru\LaraASP\GraphQL\SortBy\Enums\Nulls; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\FieldContextNulls; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class NullsFirst extends BaseOperator { +class NullsFirst extends Operator { use HandlerOperator; /** diff --git a/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php b/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php index b9c36b2aa..1838a42a4 100644 --- a/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php +++ b/packages/graphql/src/SortBy/Operators/Extra/NullsLast.php @@ -11,13 +11,13 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\SorterFactory; use LastDragon_ru\LaraASP\GraphQL\SortBy\Enums\Nulls; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\FieldContextNulls; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; -class NullsLast extends BaseOperator { +class NullsLast extends Operator { use HandlerOperator; /** diff --git a/packages/graphql/src/SortBy/Operators/Extra/Random.php b/packages/graphql/src/SortBy/Operators/Extra/Random.php index 777bc3175..b10065b73 100644 --- a/packages/graphql/src/SortBy/Operators/Extra/Random.php +++ b/packages/graphql/src/SortBy/Operators/Extra/Random.php @@ -11,14 +11,14 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Exceptions\OperatorUnsupportedBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Property; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Flag; use Nuwave\Lighthouse\Execution\Arguments\Argument; use Override; use function array_merge; -class Random extends BaseOperator { +class Random extends Operator { // // ========================================================================= /** diff --git a/packages/graphql/src/SortBy/Operators/Field.php b/packages/graphql/src/SortBy/Operators/Field.php index 264d31125..0b28285eb 100644 --- a/packages/graphql/src/SortBy/Operators/Field.php +++ b/packages/graphql/src/SortBy/Operators/Field.php @@ -21,7 +21,7 @@ use function config; use function is_array; -class Field extends BaseOperator { +class Field extends Operator { /** * @param SorterFactory $factory */ diff --git a/packages/graphql/src/SortBy/Operators/FieldObject.php b/packages/graphql/src/SortBy/Operators/FieldObject.php index e7defca83..3d421f357 100644 --- a/packages/graphql/src/SortBy/Operators/FieldObject.php +++ b/packages/graphql/src/SortBy/Operators/FieldObject.php @@ -13,7 +13,7 @@ use function is_a; -class FieldObject extends BaseOperator { +class FieldObject extends Operator { use HandlerOperator; #[Override] diff --git a/packages/graphql/src/SortBy/Operators/BaseOperator.php b/packages/graphql/src/SortBy/Operators/Operator.php similarity index 80% rename from packages/graphql/src/SortBy/Operators/BaseOperator.php rename to packages/graphql/src/SortBy/Operators/Operator.php index ea48c0c2e..2a4c56dd0 100644 --- a/packages/graphql/src/SortBy/Operators/BaseOperator.php +++ b/packages/graphql/src/SortBy/Operators/Operator.php @@ -6,12 +6,12 @@ use Illuminate\Database\Query\Builder as QueryBuilder; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\Context; use LastDragon_ru\LaraASP\GraphQL\Builder\Directives\OperatorDirective; -use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\Operator; +use LastDragon_ru\LaraASP\GraphQL\SortBy\Contracts\Operator as Marker; use Override; use function is_a; -abstract class BaseOperator extends OperatorDirective implements Operator { +abstract class Operator extends OperatorDirective implements Marker { #[Override] public function isAvailable(string $builder, Context $context): bool { return is_a($builder, EloquentBuilder::class, true) From 180bff47514063f76d41249515ae33454fb39f82 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 13:44:30 +0400 Subject: [PATCH 09/13] `ScoutSupport` trait moved to `LastDragon_ru\LaraASP\GraphQL\Builder\Traits\WithScoutSupport`. --- packages/graphql/UPGRADE.md | 2 ++ .../Traits/WithScoutSupport.php} | 6 +++--- .../graphql/src/SearchBy/Operators/Comparison/Equal.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Comparison/In.php | 4 ++-- .../graphql/src/SearchBy/Operators/Comparison/NotIn.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Condition.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Field.php | 4 ++-- packages/graphql/src/SearchBy/Operators/Logical/AllOf.php | 4 ++-- 8 files changed, 17 insertions(+), 15 deletions(-) rename packages/graphql/src/{SearchBy/Operators/Traits/ScoutSupport.php => Builder/Traits/WithScoutSupport.php} (84%) diff --git a/packages/graphql/UPGRADE.md b/packages/graphql/UPGRADE.md index cda821304..a7dc7d2d4 100644 --- a/packages/graphql/UPGRADE.md +++ b/packages/graphql/UPGRADE.md @@ -127,3 +127,5 @@ This section is actual only if you are extending the package. Please review and * [ ] `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\BaseOperator` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator` * [ ] `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\BaseOperator` => `LastDragon_ru\LaraASP\GraphQL\SortBy\Operators\Operator` + +* [ ] `LastDragon_ru\LaraASP\GraphQL\SearchBy\Operators\Traits\ScoutSupport` => `LastDragon_ru\LaraASP\GraphQL\Builder\Traits\WithScoutSupport` diff --git a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php b/packages/graphql/src/Builder/Traits/WithScoutSupport.php similarity index 84% rename from packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php rename to packages/graphql/src/Builder/Traits/WithScoutSupport.php index c5d6dd9ea..d474a3cd4 100644 --- a/packages/graphql/src/SearchBy/Operators/Traits/ScoutSupport.php +++ b/packages/graphql/src/Builder/Traits/WithScoutSupport.php @@ -1,12 +1,12 @@ Date: Fri, 2 Feb 2024 13:50:35 +0400 Subject: [PATCH 10/13] `HandlerDirective::getArgumentTypeDefinitionNode()` will check that operator available for the builder. --- .../src/Builder/Directives/HandlerDirective.php | 10 +++++++++- packages/graphql/src/SortBy/Operators/Clause.php | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/graphql/src/Builder/Directives/HandlerDirective.php b/packages/graphql/src/Builder/Directives/HandlerDirective.php index a62b346e1..f1dcf7529 100644 --- a/packages/graphql/src/Builder/Directives/HandlerDirective.php +++ b/packages/graphql/src/Builder/Directives/HandlerDirective.php @@ -263,10 +263,18 @@ protected function getArgumentTypeDefinitionNode( ContextContract $context, string $operator, ): ListTypeNode|NamedTypeNode|NonNullTypeNode|null { + // Supported? + $operator = $manipulator->getOperator(static::getScope(), $operator); + $builder = $context->get(HandlerContextBuilderInfo::class)?->value->getBuilder(); + + if (!$builder || !$operator->isAvailable($builder, $context)) { + return null; + } + + // Type $definition = $context->get(HandlerContextImplicit::class)?->value ? $manipulator->getTypeDefinition($manipulator->getOriginType($argument->getField())) : $argument->getTypeDefinition(); - $operator = $manipulator->getOperator(static::getScope(), $operator); $source = $manipulator->getTypeSource($definition); $type = $operator->getFieldType($manipulator, $source, $context); $type = Parser::typeReference($type); diff --git a/packages/graphql/src/SortBy/Operators/Clause.php b/packages/graphql/src/SortBy/Operators/Clause.php index 02c8c3f45..983f6efc1 100644 --- a/packages/graphql/src/SortBy/Operators/Clause.php +++ b/packages/graphql/src/SortBy/Operators/Clause.php @@ -6,11 +6,13 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeProvider; use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; +use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\WithScoutSupport; use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause as ClauseType; use Override; class Clause extends Operator { use HandlerOperator; + use WithScoutSupport; #[Override] public static function getName(): string { From 0a29c8420ce95a85913404238849e6db97a68e79 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 14:14:18 +0400 Subject: [PATCH 11/13] `Condition` => `Root` operator (`@searchBy`). --- .../SearchByOperatorConditionDirective.php | 11 ----------- .../graphql/src/SearchBy/Directives/Directive.php | 10 ++-------- .../SearchBy/Operators/{Condition.php => Root.php} | 10 +++++----- 3 files changed, 7 insertions(+), 24 deletions(-) delete mode 100644 packages/graphql/src/SearchBy/Definitions/SearchByOperatorConditionDirective.php rename packages/graphql/src/SearchBy/Operators/{Condition.php => Root.php} (74%) diff --git a/packages/graphql/src/SearchBy/Definitions/SearchByOperatorConditionDirective.php b/packages/graphql/src/SearchBy/Definitions/SearchByOperatorConditionDirective.php deleted file mode 100644 index 1902b8c44..000000000 --- a/packages/graphql/src/SearchBy/Definitions/SearchByOperatorConditionDirective.php +++ /dev/null @@ -1,11 +0,0 @@ -getArgumentTypeDefinitionNode( - $manipulator, - $document, - $argument, - $context, - SearchByOperatorConditionDirective::class, - ); + $type = $this->getArgumentTypeDefinitionNode($manipulator, $document, $argument, $context, Root::class); if (!$type) { throw new FailedToCreateSearchCondition($argument); diff --git a/packages/graphql/src/SearchBy/Operators/Condition.php b/packages/graphql/src/SearchBy/Operators/Root.php similarity index 74% rename from packages/graphql/src/SearchBy/Operators/Condition.php rename to packages/graphql/src/SearchBy/Operators/Root.php index b658b8f95..0012cabe4 100644 --- a/packages/graphql/src/SearchBy/Operators/Condition.php +++ b/packages/graphql/src/SearchBy/Operators/Root.php @@ -7,25 +7,25 @@ use LastDragon_ru\LaraASP\GraphQL\Builder\Contracts\TypeSource; use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\HandlerOperator; use LastDragon_ru\LaraASP\GraphQL\Builder\Traits\WithScoutSupport; -use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Condition as ConditionType; +use LastDragon_ru\LaraASP\GraphQL\SearchBy\Types\Condition; use Override; -class Condition extends Operator { +class Root extends Operator { use HandlerOperator; use WithScoutSupport; #[Override] public static function getName(): string { - return 'Condition'; + return 'root'; } #[Override] public function getFieldType(TypeProvider $provider, TypeSource $source, Context $context): string { - return $provider->getType(ConditionType::class, $source, $context); + return $provider->getType(Condition::class, $source, $context); } #[Override] public function getFieldDescription(): string { - return 'Property condition.'; + return 'Directive root.'; } } From 7d44edb9d5510c327f68993509339b798735c45b Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 14:16:57 +0400 Subject: [PATCH 12/13] `Clause` => `Root` operator (`@sortBy`). --- .../Definitions/SortByOperatorClauseDirective.php | 11 ----------- packages/graphql/src/SortBy/Directives/Directive.php | 10 ++-------- .../src/SortBy/Operators/{Clause.php => Root.php} | 6 +++--- 3 files changed, 5 insertions(+), 22 deletions(-) delete mode 100644 packages/graphql/src/SortBy/Definitions/SortByOperatorClauseDirective.php rename packages/graphql/src/SortBy/Operators/{Clause.php => Root.php} (90%) diff --git a/packages/graphql/src/SortBy/Definitions/SortByOperatorClauseDirective.php b/packages/graphql/src/SortBy/Definitions/SortByOperatorClauseDirective.php deleted file mode 100644 index 4706e2c02..000000000 --- a/packages/graphql/src/SortBy/Definitions/SortByOperatorClauseDirective.php +++ /dev/null @@ -1,11 +0,0 @@ -getArgumentTypeDefinitionNode( - $manipulator, - $document, - $argument, - $context, - SortByOperatorClauseDirective::class, - ); + $type = $this->getArgumentTypeDefinitionNode($manipulator, $document, $argument, $context, Root::class); if (!$type) { throw new FailedToCreateSortClause($argument); diff --git a/packages/graphql/src/SortBy/Operators/Clause.php b/packages/graphql/src/SortBy/Operators/Root.php similarity index 90% rename from packages/graphql/src/SortBy/Operators/Clause.php rename to packages/graphql/src/SortBy/Operators/Root.php index 983f6efc1..699f5f42b 100644 --- a/packages/graphql/src/SortBy/Operators/Clause.php +++ b/packages/graphql/src/SortBy/Operators/Root.php @@ -10,13 +10,13 @@ use LastDragon_ru\LaraASP\GraphQL\SortBy\Types\Clause as ClauseType; use Override; -class Clause extends Operator { +class Root extends Operator { use HandlerOperator; use WithScoutSupport; #[Override] public static function getName(): string { - return 'condition'; + return 'root'; } #[Override] @@ -26,6 +26,6 @@ public function getFieldType(TypeProvider $provider, TypeSource $source, Context #[Override] public function getFieldDescription(): string { - return 'Field clause.'; + return 'Directive root.'; } } From 70c2b9e2d91543b494c4488ed386fd8b1f71a329 Mon Sep 17 00:00:00 2001 From: Aleksei Lebedev <1329824+LastDragon-ru@users.noreply.github.com> Date: Fri, 2 Feb 2024 14:36:35 +0400 Subject: [PATCH 13/13] More tests. --- .../src/SearchBy/Directives/DirectiveTest.php | 15 + .../DirectiveTest/Query.expected.graphql | 418 ++++++++++++++++++ .../DirectiveTest/Query.schema.graphql | 32 ++ .../DirectiveTest/Query.schema.graphql | 2 +- 4 files changed, 466 insertions(+), 1 deletion(-) create mode 100644 packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.expected.graphql create mode 100644 packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.schema.graphql diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest.php b/packages/graphql/src/SearchBy/Directives/DirectiveTest.php index 4b6c226d2..e79e6b704 100644 --- a/packages/graphql/src/SearchBy/Directives/DirectiveTest.php +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest.php @@ -339,6 +339,11 @@ static function (MockInterface $mock) use ($resolver): void { */ public static function dataProviderManipulateArgDefinition(): array { return [ + 'Query' => [ + 'Query.expected.graphql', + 'Query.schema.graphql', + null, + ], 'Explicit' => [ 'Explicit.expected.graphql', 'Explicit.schema.graphql', @@ -878,6 +883,16 @@ public function __invoke(): mixed { } } +/** + * @internal + * @noinspection PhpMultipleClassesDeclarationsInOneFile + */ +class DirectiveTest__QueryBuilderResolver { + public function __invoke(): QueryBuilder { + throw new Exception('Should not be called.'); + } +} + /** * @internal * @noinspection PhpMultipleClassesDeclarationsInOneFile diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.expected.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.expected.graphql new file mode 100644 index 000000000..8463abcd9 --- /dev/null +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.expected.graphql @@ -0,0 +1,418 @@ +""" +Use Input as Search Conditions for the current Builder. +""" +directive @searchBy +on + | ARGUMENT_DEFINITION + +directive @searchByOperatorAllOf +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorAnyOf +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorContains +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorEndsWith +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorEqual +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorField +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorIn +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorIsNotNull +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorIsNull +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorLike +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNot +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotContains +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotEndsWith +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotEqual +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotIn +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotLike +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorNotStartsWith +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +directive @searchByOperatorStartsWith +on + | ENUM + | INPUT_FIELD_DEFINITION + | SCALAR + +enum SearchByTypeFlag { + Yes + + yes + @deprecated( + reason: "Please use `Yes` instead." + ) +} + +""" +Available conditions for `input InputA` (only one property allowed at a time). +""" +input SearchByQueryConditionInputA { + """ + All of the conditions must be true. + """ + allOf: [SearchByQueryConditionInputA!] + @searchByOperatorAllOf + + """ + Any of the conditions must be true. + """ + anyOf: [SearchByQueryConditionInputA!] + @searchByOperatorAnyOf + + """ + Field condition. + """ + id: SearchByQueryScalarID + @searchByOperatorField + + """ + Field condition. + """ + name: SearchByQueryScalarString + @searchByOperatorField + + """ + Not. + """ + not: SearchByQueryConditionInputA + @searchByOperatorNot +} + +""" +Available conditions for `input TypeB` (only one property allowed at a time). +""" +input SearchByQueryConditionTypeB { + """ + All of the conditions must be true. + """ + allOf: [SearchByQueryConditionTypeB!] + @searchByOperatorAllOf + + """ + Any of the conditions must be true. + """ + anyOf: [SearchByQueryConditionTypeB!] + @searchByOperatorAnyOf + + """ + Field condition. + """ + id: SearchByQueryScalarID + @searchByOperatorField + + """ + Field condition. + """ + name: SearchByQueryScalarStringOrNull + @searchByOperatorField + + """ + Not. + """ + not: SearchByQueryConditionTypeB + @searchByOperatorNot +} + +""" +Available operators for `scalar ID` (only one operator allowed at a time). +""" +input SearchByQueryScalarID { + """ + Equal (`=`). + """ + equal: ID + @searchByOperatorEqual + + """ + Within a set of values. + """ + in: [ID!] + @searchByOperatorIn + + """ + Not Equal (`!=`). + """ + notEqual: ID + @searchByOperatorNotEqual + + """ + Outside a set of values. + """ + notIn: [ID!] + @searchByOperatorNotIn +} + +""" +Available operators for `scalar String` (only one operator allowed at a time). +""" +input SearchByQueryScalarString { + """ + Contains. + """ + contains: String + @searchByOperatorContains + + """ + Ends with a string. + """ + endsWith: String + @searchByOperatorEndsWith + + """ + Equal (`=`). + """ + equal: String + @searchByOperatorEqual + + """ + Within a set of values. + """ + in: [String!] + @searchByOperatorIn + + """ + Like. + """ + like: String + @searchByOperatorLike + + """ + Not contains. + """ + notContains: String + @searchByOperatorNotContains + + """ + Not ends with a string. + """ + notEndsWith: String + @searchByOperatorNotEndsWith + + """ + Not Equal (`!=`). + """ + notEqual: String + @searchByOperatorNotEqual + + """ + Outside a set of values. + """ + notIn: [String!] + @searchByOperatorNotIn + + """ + Not like. + """ + notLike: String + @searchByOperatorNotLike + + """ + Not starts with a string. + """ + notStartsWith: String + @searchByOperatorNotStartsWith + + """ + Starts with a string. + """ + startsWith: String + @searchByOperatorStartsWith +} + +""" +Available operators for `scalar String` (only one operator allowed at a time). +""" +input SearchByQueryScalarStringOrNull { + """ + Contains. + """ + contains: String + @searchByOperatorContains + + """ + Ends with a string. + """ + endsWith: String + @searchByOperatorEndsWith + + """ + Equal (`=`). + """ + equal: String + @searchByOperatorEqual + + """ + Within a set of values. + """ + in: [String!] + @searchByOperatorIn + + """ + Is NOT NULL? + """ + isNotNull: SearchByTypeFlag + @searchByOperatorIsNotNull + + """ + Is NULL? + """ + isNull: SearchByTypeFlag + @searchByOperatorIsNull + + """ + Like. + """ + like: String + @searchByOperatorLike + + """ + Not contains. + """ + notContains: String + @searchByOperatorNotContains + + """ + Not ends with a string. + """ + notEndsWith: String + @searchByOperatorNotEndsWith + + """ + Not Equal (`!=`). + """ + notEqual: String + @searchByOperatorNotEqual + + """ + Outside a set of values. + """ + notIn: [String!] + @searchByOperatorNotIn + + """ + Not like. + """ + notLike: String + @searchByOperatorNotLike + + """ + Not starts with a string. + """ + notStartsWith: String + @searchByOperatorNotStartsWith + + """ + Starts with a string. + """ + startsWith: String + @searchByOperatorStartsWith +} + +input TypeA { + child: TypeB! + id: ID! + name: String! +} + +input TypeB { + id: ID! + name: String + parent: TypeA! +} + +type Query { + a( + where: SearchByQueryConditionInputA + @searchBy + ): ID! + @all( + builder: "\\LastDragon_ru\\LaraASP\\GraphQL\\SearchBy\\Directives\\DirectiveTest__QueryBuilderResolver" + ) + + b( + where: SearchByQueryConditionTypeB + @searchBy + ): [TypeB!]! + @all( + builder: "\\LastDragon_ru\\LaraASP\\GraphQL\\SearchBy\\Directives\\DirectiveTest__QueryBuilderResolver" + ) +} diff --git a/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.schema.graphql b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.schema.graphql new file mode 100644 index 000000000..3b9066a07 --- /dev/null +++ b/packages/graphql/src/SearchBy/Directives/DirectiveTest/Query.schema.graphql @@ -0,0 +1,32 @@ +type Query { + a(where: InputA @searchBy): ID! @all( + builder: "\\LastDragon_ru\\LaraASP\\GraphQL\\SearchBy\\Directives\\DirectiveTest__QueryBuilderResolver" + ) + b(where: _ @searchBy): [TypeB!]! @all( + builder: "\\LastDragon_ru\\LaraASP\\GraphQL\\SearchBy\\Directives\\DirectiveTest__QueryBuilderResolver" + ) +} + +input InputA { + id: ID! + name: String! + child: InputB! @hasOne +} + +input InputB { + id: ID! + name: String + parent: InputA! +} + +input TypeA { + id: ID! + name: String! + child: TypeB! +} + +input TypeB { + id: ID! + name: String + parent: TypeA! +} diff --git a/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.schema.graphql b/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.schema.graphql index 7af84528d..f65e121c7 100644 --- a/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.schema.graphql +++ b/packages/graphql/src/SortBy/Directives/DirectiveTest/Query.schema.graphql @@ -10,7 +10,7 @@ type Query { input InputA { id: ID! name: String! - child: InputB! + child: InputB! @hasOne } input InputB {