strawberry-graphql 0.233.0__py3-none-any.whl → 0.233.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -178,6 +178,61 @@ class CustomGraphQLEnumType(GraphQLEnumType):
178
178
  return self.wrapped_cls(super().parse_literal(value_node, _variables))
179
179
 
180
180
 
181
+ def get_arguments(
182
+ *,
183
+ field: StrawberryField,
184
+ source: Any,
185
+ info: Info,
186
+ kwargs: Any,
187
+ config: StrawberryConfig,
188
+ scalar_registry: Dict[object, Union[ScalarWrapper, ScalarDefinition]],
189
+ ) -> Tuple[List[Any], Dict[str, Any]]:
190
+ # TODO: An extension might have changed the resolver arguments,
191
+ # but we need them here since we are calling it.
192
+ # This is a bit of a hack, but it's the easiest way to get the arguments
193
+ # This happens in mutation.InputMutationExtension
194
+ field_arguments = field.arguments[:]
195
+ if field.base_resolver:
196
+ existing = {arg.python_name for arg in field_arguments}
197
+ field_arguments.extend(
198
+ [
199
+ arg
200
+ for arg in field.base_resolver.arguments
201
+ if arg.python_name not in existing
202
+ ]
203
+ )
204
+
205
+ kwargs = convert_arguments(
206
+ kwargs,
207
+ field_arguments,
208
+ scalar_registry=scalar_registry,
209
+ config=config,
210
+ )
211
+
212
+ # the following code allows to omit info and root arguments
213
+ # by inspecting the original resolver arguments,
214
+ # if it asks for self, the source will be passed as first argument
215
+ # if it asks for root or parent, the source will be passed as kwarg
216
+ # if it asks for info, the info will be passed as kwarg
217
+
218
+ args = []
219
+
220
+ if field.base_resolver:
221
+ if field.base_resolver.self_parameter:
222
+ args.append(source)
223
+
224
+ if parent_parameter := field.base_resolver.parent_parameter:
225
+ kwargs[parent_parameter.name] = source
226
+
227
+ if root_parameter := field.base_resolver.root_parameter:
228
+ kwargs[root_parameter.name] = source
229
+
230
+ if info_parameter := field.base_resolver.info_parameter:
231
+ kwargs[info_parameter.name] = info
232
+
233
+ return args, kwargs
234
+
235
+
181
236
  class GraphQLCoreConverter:
182
237
  # TODO: Make abstract
183
238
 
@@ -608,56 +663,6 @@ class GraphQLCoreConverter:
608
663
 
609
664
  return _get_basic_result
610
665
 
611
- def _get_arguments(
612
- source: Any,
613
- info: Info,
614
- kwargs: Any,
615
- ) -> Tuple[List[Any], Dict[str, Any]]:
616
- # TODO: An extension might have changed the resolver arguments,
617
- # but we need them here since we are calling it.
618
- # This is a bit of a hack, but it's the easiest way to get the arguments
619
- # This happens in mutation.InputMutationExtension
620
- field_arguments = field.arguments[:]
621
- if field.base_resolver:
622
- existing = {arg.python_name for arg in field_arguments}
623
- field_arguments.extend(
624
- [
625
- arg
626
- for arg in field.base_resolver.arguments
627
- if arg.python_name not in existing
628
- ]
629
- )
630
-
631
- kwargs = convert_arguments(
632
- kwargs,
633
- field_arguments,
634
- scalar_registry=self.scalar_registry,
635
- config=self.config,
636
- )
637
-
638
- # the following code allows to omit info and root arguments
639
- # by inspecting the original resolver arguments,
640
- # if it asks for self, the source will be passed as first argument
641
- # if it asks for root or parent, the source will be passed as kwarg
642
- # if it asks for info, the info will be passed as kwarg
643
-
644
- args = []
645
-
646
- if field.base_resolver:
647
- if field.base_resolver.self_parameter:
648
- args.append(source)
649
-
650
- if parent_parameter := field.base_resolver.parent_parameter:
651
- kwargs[parent_parameter.name] = source
652
-
653
- if root_parameter := field.base_resolver.root_parameter:
654
- kwargs[root_parameter.name] = source
655
-
656
- if info_parameter := field.base_resolver.info_parameter:
657
- kwargs[info_parameter.name] = info
658
-
659
- return args, kwargs
660
-
661
666
  def _strawberry_info_from_graphql(info: GraphQLResolveInfo) -> Info:
662
667
  return Info(
663
668
  _raw_info=info,
@@ -689,8 +694,13 @@ class GraphQLCoreConverter:
689
694
  ) -> Any:
690
695
  # parse field arguments into Strawberry input types and convert
691
696
  # field names to Python equivalents
692
- field_args, field_kwargs = _get_arguments(
693
- source=_source, info=info, kwargs=kwargs
697
+ field_args, field_kwargs = get_arguments(
698
+ field=field,
699
+ source=_source,
700
+ info=info,
701
+ kwargs=kwargs,
702
+ config=self.config,
703
+ scalar_registry=self.scalar_registry,
694
704
  )
695
705
 
696
706
  resolver_requested_info = False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strawberry-graphql
3
- Version: 0.233.0
3
+ Version: 0.233.1
4
4
  Summary: A library for creating GraphQL APIs
5
5
  Home-page: https://strawberry.rocks/
6
6
  License: MIT
@@ -190,7 +190,7 @@ strawberry/schema/exceptions.py,sha256=T-DsvBtjx9svkegIm1YrVPGPswpVEpMTFc0_7flLE
190
190
  strawberry/schema/execute.py,sha256=dwxMrJrR2Qdd1nPGcIS9-Viq7h5qtPfsD6qdujALoMw,11153
191
191
  strawberry/schema/name_converter.py,sha256=UdNyd-QtqF2HsDCQK-nsOcLGxDTj4hJwYFNvMtZnpq4,6533
192
192
  strawberry/schema/schema.py,sha256=ooZYWqy_LWQwbrIbvuoxHFPzOG8o3Ybv7nSZf2RlNrA,14276
193
- strawberry/schema/schema_converter.py,sha256=dszExcSpy1pakPMePp69Yp3Zcj6AG7ReRQ8URG_EkzM,36822
193
+ strawberry/schema/schema_converter.py,sha256=_kufIUo71mWCAC7QaXcW8KxKXa86vdvh75mBdjbJE7Y,36795
194
194
  strawberry/schema/types/__init__.py,sha256=oHO3COWhL3L1KLYCJNY1XFf5xt2GGtHiMC-UaYbFfnA,68
195
195
  strawberry/schema/types/base_scalars.py,sha256=NzGQmDtHdCcBeJpRpyeZQ6EgYRpQBTd8fUf1p9cMWlQ,1847
196
196
  strawberry/schema/types/concrete_type.py,sha256=HB30G1hMUuuvjAvfSe6ADS35iI_T_wKO-EprVOWTMSs,746
@@ -245,8 +245,8 @@ strawberry/utils/logging.py,sha256=flS7hV0JiIOEdXcrIjda4WyIWix86cpHHFNJL8gl1y4,7
245
245
  strawberry/utils/operation.py,sha256=Um-tBCPl3_bVFN2Ph7o1mnrxfxBes4HFCj6T0x4kZxE,1135
246
246
  strawberry/utils/str_converters.py,sha256=avIgPVLg98vZH9mA2lhzVdyyjqzLsK2NdBw9mJQ02Xk,813
247
247
  strawberry/utils/typing.py,sha256=G92wuT2WhEGQrwjek_On2K8l0nyVFtBW3P7I_cfjG-8,13870
248
- strawberry_graphql-0.233.0.dist-info/LICENSE,sha256=m-XnIVUKqlG_AWnfi9NReh9JfKhYOB-gJfKE45WM1W8,1072
249
- strawberry_graphql-0.233.0.dist-info/METADATA,sha256=sVmRsJs4RGDdmCJjatgqaicCRFhDB1ALTblDfV7uKQs,7821
250
- strawberry_graphql-0.233.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
251
- strawberry_graphql-0.233.0.dist-info/entry_points.txt,sha256=Nk7-aT3_uEwCgyqtHESV9H6Mc31cK-VAvhnQNTzTb4k,49
252
- strawberry_graphql-0.233.0.dist-info/RECORD,,
248
+ strawberry_graphql-0.233.1.dist-info/LICENSE,sha256=m-XnIVUKqlG_AWnfi9NReh9JfKhYOB-gJfKE45WM1W8,1072
249
+ strawberry_graphql-0.233.1.dist-info/METADATA,sha256=pKJFvHG2HXUG4efVRmtEtmWcTl_VOdm4Ch8y4ccK76o,7821
250
+ strawberry_graphql-0.233.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
251
+ strawberry_graphql-0.233.1.dist-info/entry_points.txt,sha256=Nk7-aT3_uEwCgyqtHESV9H6Mc31cK-VAvhnQNTzTb4k,49
252
+ strawberry_graphql-0.233.1.dist-info/RECORD,,