code: def fields(self) -> GraphQLInputFieldMap:
          
          try:
              fields = resolve_thunk(self._fields)
          except GraphQLError:
              raise
          except Exception as error:
              raise TypeError(f"{self.name} fields cannot be resolved: {error}")
          if not isinstance(fields, dict) or not all(
              isinstance(key, str) for key in fields
          ):
              raise TypeError(
                  f"{self.name} fields must be a dict with field names as keys"
                  " or a function which returns such an object."
              )
          if not all(
              isinstance(value, GraphQLInputField) or is_input_type(value)
              for value in fields.values()
          ):
              raise TypeError(
                  f"{self.name} fields must be"
                  " GraphQLInputField or input type objects."
              )
          return {
              name: value
              if isinstance(value, GraphQLInputField)
              else GraphQLInputField(value)
              for name, value in fields.items()
          }
docs: Get provided fields, wrap them as GraphQLInputField if needed.