1. @override
List<APIOperation> documentOperations(PackagePathResolver resolver)

Returns all APIOperations this object knows about.

Source

@override
List<APIOperation> documentOperations(PackagePathResolver resolver) {
  var ops = super.documentOperations(resolver);
  ops.forEach((op) {
    op.parameters.forEach((param) {
      if (param.name == "username" ||
          param.name == "password" ||
          param.name == "client_id" ||
          param.name == "response_type" ||
          param.name == "state") {
        param.required = true;
      } else {
        param.required = false;
      }
    });
  });

  ops.firstWhere((op) => op.method == "get").produces = [ContentType.HTML];

  return ops;
}