Skip to content

Commit 3c0fe7d

Browse files
committed
remove fetch dependency
1 parent 05f17e3 commit 3c0fe7d

File tree

2 files changed

+3
-40
lines changed

2 files changed

+3
-40
lines changed

package.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,6 @@
2929
},
3030
"homepage": "https://github.com/reaverart/redux-callapi-middleware",
3131
"license": "MIT",
32-
"dependencies": {
33-
"isomorphic-fetch": "^2.2.1"
34-
},
3532
"devDependencies": {
3633
"babel-cli": "^6.18.0",
3734
"babel-plugin-transform-object-rest-spread": "^6.20.2",

src/index.js

Lines changed: 3 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,5 @@
1-
import fetch from 'isomorphic-fetch';
2-
31
export const CALL_API = Symbol('Call API');
42

5-
export const checkStatus = (response) => {
6-
if (!response.ok) {
7-
const error = new Error(response.statusText || response.status);
8-
error.response = response;
9-
throw error;
10-
}
11-
return response;
12-
};
13-
14-
export const parseResponse = (response) => {
15-
const contentType = response.headers.get('Content-Type') || '';
16-
17-
if (contentType.indexOf('json') !== -1) {
18-
return response.json();
19-
} else if (contentType.indexOf('text') !== -1) {
20-
return response.text();
21-
}
22-
// return raw response if unexpected content type
23-
return response;
24-
};
25-
26-
const successInterceptor = (...args) => {
27-
const promise = Promise.resolve(...args);
28-
return promise.then(checkStatus).then(parseResponse);
29-
};
30-
const failureInterceptor = error => Promise.reject(error);
31-
32-
export const callApi = (endpoint, options, success, failure) => (
33-
fetch(endpoint, options).then(success, failure)
34-
);
35-
363
export const actionWith = (actionType, args, payload) => {
374
let nextAction;
385
if (typeof actionType === 'function') {
@@ -64,8 +31,7 @@ const normalize = (item, apiAction, getState) => {
6431
};
6532

6633
export const createMiddleware = ({
67-
responseSuccess = successInterceptor,
68-
responseFailure = failureInterceptor,
34+
callApi,
6935
}) => (
7036
({ dispatch, getState }) => next => (action) => {
7137
if (!action[CALL_API]) {
@@ -95,7 +61,7 @@ export const createMiddleware = ({
9561
));
9662

9763
const promises = batch.map(request =>
98-
callApi(request.endpoint, request.options, responseSuccess, responseFailure)
64+
callApi(request.endpoint, request.options)
9965
);
10066

10167
return Promise.all(promises)
@@ -110,4 +76,4 @@ export const createMiddleware = ({
11076
}
11177
);
11278

113-
export default createMiddleware({});
79+
export default createMiddleware;

0 commit comments

Comments
 (0)