103
103
SkipTypeSentinelT = NewType ("SkipTypeSentinelT" , object )
104
104
SkipTypeSentinel = cast (SkipTypeSentinelT , sentinel .create ("SkipTypeSentinel" ))
105
105
106
-
107
106
#: Set on generated types to the original type handed to the decorator
108
107
_ORIGINAL_TYPE_KEY = "_original_type"
109
108
#: Set on generated types, containing the list of keys of fields that were generated
@@ -387,7 +386,7 @@ def _convert_relationship_to_strawberry_type(
387
386
if relationship .uselist :
388
387
# Use list if excluding relay pagination
389
388
if use_list :
390
- return List [ForwardRef (type_name )] # type: ignore
389
+ return List [ForwardRef (type_name )] # type: ignore
391
390
392
391
return self ._connection_type_for (type_name )
393
392
else :
@@ -572,7 +571,12 @@ async def resolve(self, info: Info):
572
571
in_between_objects = await in_between_resolver (self , info )
573
572
if in_between_objects is None :
574
573
if is_multiple :
575
- return connection_type (edges = [])
574
+ return connection_type (edges = [], page_info = relay .PageInfo (
575
+ has_next_page = False ,
576
+ has_previous_page = False ,
577
+ start_cursor = None ,
578
+ end_cursor = None ,
579
+ ))
576
580
else :
577
581
return None
578
582
if descriptor .value_attr in in_between_mapper .relationships :
@@ -592,7 +596,14 @@ async def resolve(self, info: Info):
592
596
outputs = await end_relationship_resolver (in_between_objects , info )
593
597
if not isinstance (outputs , collections .abc .Iterable ):
594
598
return outputs
595
- return connection_type (edges = [edge_type (node = obj ) for obj in outputs ])
599
+ edges = [edge_type (node = obj ) for obj in outputs ]
600
+ return connection_type (edges = edges ,
601
+ page_info = relay .PageInfo (
602
+ has_next_page = False ,
603
+ has_previous_page = False ,
604
+ start_cursor = edges [0 ].cursor if edges else None ,
605
+ end_cursor = edges [- 1 ].cursor if edges else None ,
606
+ ))
596
607
else :
597
608
assert descriptor .value_attr in in_between_mapper .columns
598
609
if isinstance (in_between_objects , collections .abc .Iterable ):
0 commit comments