@@ -34,19 +34,19 @@ public extension EventLoopFuture where Value : Sequence, Value.Element : Encodab
3434}
3535
3636public extension EventLoopFuture where Value: Sequence , Value. Element: Encodable {
37- func connection( from arguments: Paginatable , makeCursor: @escaping ( Value . Element ) -> String ) -> EventLoopFuture < Connection < Value . Element > > {
37+ func connection( from arguments: Paginatable , makeCursor: @escaping ( Value . Element ) throws -> String ) -> EventLoopFuture < Connection < Value . Element > > {
3838 flatMapThrowing { value in
3939 try value. connection ( from: arguments, makeCursor: makeCursor)
4040 }
4141 }
4242
43- func connection( from arguments: ForwardPaginatable , makeCursor: @escaping ( Value . Element ) -> String ) -> EventLoopFuture < Connection < Value . Element > > {
43+ func connection( from arguments: ForwardPaginatable , makeCursor: @escaping ( Value . Element ) throws -> String ) -> EventLoopFuture < Connection < Value . Element > > {
4444 flatMapThrowing { value in
4545 try value. connection ( from: arguments, makeCursor: makeCursor)
4646 }
4747 }
4848
49- func connection( from arguments: BackwardPaginatable , makeCursor: @escaping ( Value . Element ) -> String ) -> EventLoopFuture < Connection < Value . Element > > {
49+ func connection( from arguments: BackwardPaginatable , makeCursor: @escaping ( Value . Element ) throws -> String ) -> EventLoopFuture < Connection < Value . Element > > {
5050 flatMapThrowing { value in
5151 try value. connection ( from: arguments, makeCursor: makeCursor)
5252 }
@@ -69,26 +69,26 @@ public extension Sequence where Element : Encodable & Identifiable, Element.ID :
6969}
7070
7171public extension Sequence where Element : Encodable {
72- func connection( from arguments: Paginatable , makeCursor: @escaping ( Element ) -> String ) throws -> Connection < Element > {
72+ func connection( from arguments: Paginatable , makeCursor: @escaping ( Element ) throws -> String ) throws -> Connection < Element > {
7373 try connect ( to: Array ( self ) , arguments: PaginationArguments ( arguments) , makeCursor: makeCursor)
7474 }
7575
76- func connection( from arguments: ForwardPaginatable , makeCursor: @escaping ( Element ) -> String ) throws -> Connection < Element > {
76+ func connection( from arguments: ForwardPaginatable , makeCursor: @escaping ( Element ) throws -> String ) throws -> Connection < Element > {
7777 try connect ( to: Array ( self ) , arguments: PaginationArguments ( arguments) , makeCursor: makeCursor)
7878 }
7979
80- func connection( from arguments: BackwardPaginatable , makeCursor: @escaping ( Element ) -> String ) throws -> Connection < Element > {
80+ func connection( from arguments: BackwardPaginatable , makeCursor: @escaping ( Element ) throws -> String ) throws -> Connection < Element > {
8181 try connect ( to: Array ( self ) , arguments: PaginationArguments ( arguments) , makeCursor: makeCursor)
8282 }
8383}
8484
8585func connect< Node> (
8686 to elements: [ Node ] ,
8787 arguments: PaginationArguments ,
88- makeCursor: @escaping ( Node ) -> String
88+ makeCursor: @escaping ( Node ) throws -> String
8989) throws -> Connection < Node > where Node : Encodable {
90- let edges = elements. map { element in
91- Edge < Node > ( node: element, cursor: makeCursor ( element) )
90+ let edges = try elements. map { element in
91+ Edge < Node > ( node: element, cursor: try makeCursor ( element) )
9292 }
9393
9494 let cursorEdges = slicingCursor ( edges: edges, arguments: arguments)
0 commit comments