From 37593de2df0e62d7055d0420ff79ef075f3e29c2 Mon Sep 17 00:00:00 2001 From: nodkz Date: Thu, 6 Sep 2018 14:47:54 +0600 Subject: [PATCH] test: fix flowtype checks Related #61 --- .eslintignore | 3 +++ src/definition.js | 6 ++++++ src/fetchWithMiddleware.js | 3 ++- src/relayMutation.js | 4 ++-- src/relayQueries.js | 8 ++++++-- 5 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 .eslintignore diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 0000000..cb40d31 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,3 @@ +lib/ +es/ +coverage/ \ No newline at end of file diff --git a/src/definition.js b/src/definition.js index 8889cd1..52759d5 100644 --- a/src/definition.js +++ b/src/definition.js @@ -2,6 +2,7 @@ import type { BatchRequestMap } from './middleware/batch'; +export type FetchWithMiddleware = (req: RRNLRequestObject) => Promise; export type MiddlewareNextFn = (req: RRNLRequestObject) => Promise; export type Middleware = (next: MiddlewareNextFn) => MiddlewareNextFn; // { @@ -53,6 +54,11 @@ export type GraphQLResponse = { errors?: GraphQLResponseErrors, }; +export type RRNLResponsePayload = {| + +data: ?mixed, + +errors?: ?mixed, +|}; + export type RRNLResponseObject = { ok: any, status: number, diff --git a/src/fetchWithMiddleware.js b/src/fetchWithMiddleware.js index 7427fcf..2965adb 100644 --- a/src/fetchWithMiddleware.js +++ b/src/fetchWithMiddleware.js @@ -8,6 +8,7 @@ import type { RRNLResponseObject, MiddlewareNextFn, RRNLOptions, + RRNLResponsePayload, } from './definition'; function runFetch(req: RRNLRequestObject): Promise { @@ -43,7 +44,7 @@ export default function fetchWithMiddleware( req: RRNLRequestObject, middlewares: Middleware[], options: RRNLOptions -): Promise { +): Promise { const wrappedFetch: MiddlewareNextFn = compose(...middlewares)(runFetch); return wrappedFetch(req).then(res => { diff --git a/src/relayMutation.js b/src/relayMutation.js index 5577126..958ac3f 100644 --- a/src/relayMutation.js +++ b/src/relayMutation.js @@ -4,12 +4,12 @@ import type { RRNLRequestObjectMutation, RelayClassicRequest, - MiddlewareNextFn, + FetchWithMiddleware, } from './definition'; export default function mutation( relayRequest: RelayClassicRequest, - fetchWithMiddleware: MiddlewareNextFn + fetchWithMiddleware: FetchWithMiddleware ): Promise { const commonReq: $Shape = { method: 'POST', diff --git a/src/relayQueries.js b/src/relayQueries.js index 40763f3..d2f9993 100644 --- a/src/relayQueries.js +++ b/src/relayQueries.js @@ -1,11 +1,15 @@ /* @flow */ /* eslint-disable no-param-reassign, prefer-template */ -import type { RelayClassicRequest, MiddlewareNextFn, RRNLRequestObjectQuery } from './definition'; +import type { + RelayClassicRequest, + FetchWithMiddleware, + RRNLRequestObjectQuery, +} from './definition'; export default function queries( relayRequestList: RelayClassicRequest[], - fetchWithMiddleware: MiddlewareNextFn + fetchWithMiddleware: FetchWithMiddleware ): Promise { return Promise.all( relayRequestList.map(relayRequest => {