(projectId, connection)
| 108 | } |
| 109 | |
| 110 | export function addConnection(projectId, connection) { |
| 111 | return (dispatch) => { |
| 112 | if (!cookie.load("brewToken")) { |
| 113 | return new Promise((resolve, reject) => reject(new Error("No Token"))); |
| 114 | } |
| 115 | const token = cookie.load("brewToken"); |
| 116 | const url = `${API_HOST}/project/${projectId}/connection`; |
| 117 | const method = "POST"; |
| 118 | const body = JSON.stringify(connection); |
| 119 | const headers = new Headers({ |
| 120 | "Accept": "application/json", |
| 121 | "Content-Type": "application/json", |
| 122 | "authorization": `Bearer ${token}`, |
| 123 | }); |
| 124 | |
| 125 | dispatch({ type: FETCHING_CONNECTION }); |
| 126 | return fetch(url, { method, body, headers }) |
| 127 | .then((response) => { |
| 128 | if (!response.ok) { |
| 129 | dispatch(addError(response.status)); |
| 130 | throw new Error(response.status); |
| 131 | } |
| 132 | |
| 133 | return response.json(); |
| 134 | }) |
| 135 | .then((newConnection) => { |
| 136 | dispatch({ type: FETCH_CONNECTION_SUCCESS, connection: newConnection }); |
| 137 | dispatch(getProject(newConnection.project_id, true)); |
| 138 | return new Promise(resolve => resolve(newConnection)); |
| 139 | }) |
| 140 | .catch((error) => { |
| 141 | return new Promise((resolve, reject) => reject(error)); |
| 142 | }); |
| 143 | }; |
| 144 | } |
| 145 | |
| 146 | export function saveConnection(projectId, connection) { |
| 147 | return (dispatch) => { |
no test coverage detected