Hasura changes to add searching + indexing. Header and card changes.

This commit is contained in:
Patrick Fic
2020-01-23 17:20:26 -08:00
parent d1323bed7f
commit fbf8931f68
49 changed files with 2756 additions and 92 deletions

View File

@@ -28,47 +28,56 @@ const errorLink = onError(
console.log("We need a new token!");
if (access_token && access_token !== "undefined") {
// Let's refresh token through async request
return new Observable(observer => {
const unsubscribeFromAuth = auth.onAuthStateChanged(async user => {
console.log("Auth change in error handling.");
if (user) {
user
.getIdToken(true)
.then(function(idToken) {
if (!idToken) {
window.localStorage.removeItem("token");
return console.log("Refresh token has expired");
}
console.log("Got a new token", idToken);
window.localStorage.setItem("token", idToken);
// reset the headers
operation.setContext(({ headers = {} }) => ({
headers: {
// Re-add old headers
...headers,
// Switch out old access token for new one
authorization: idToken ? `Bearer ${idToken}` : ""
}
}));
const subscriber = {
next: observer.next.bind(observer),
error: observer.error.bind(observer),
complete: observer.complete.bind(observer)
};
console.log("About to resend the request.");
// Retry last failed request
forward(operation).subscribe(subscriber);
})
.catch(error => {
// No refresh or client token available, we force user to login
console.log("Hit an error.");
observer.error(error);
});
}
});
auth.currentUser.getIdToken(true).then(token => {
if (token) {
window.localStorage.setItem("token", token);
operation.setContext(({ headers = {} }) => ({
headers: {
...headers,
authorization: token ? `Bearer ${token}` : ""
}
}));
return forward(operation);
}
});
// return new Observable(observer => {
// auth.currentUser
// .getIdToken(true)
// .then(function(idToken) {
// if (!idToken) {
// window.localStorage.removeItem("token");
// return console.log("Refresh token has expired");
// }
// console.log("Got a new token", idToken);
// window.localStorage.setItem("token", idToken);
// // reset the headers
// operation.setContext(({ headers = {} }) => ({
// headers: {
// // Re-add old headers
// ...headers,
// // Switch out old access token for new one
// authorization: idToken ? `Bearer ${idToken}` : ""
// }
// }));
// const subscriber = {
// next: observer.next.bind(observer),
// error: observer.error.bind(observer),
// complete: observer.complete.bind(observer)
// };
// console.log("About to resend the request.");
// // Retry last failed request
// forward(operation).subscribe(subscriber);
// })
// .catch(error => {
// // No refresh or client token available, we force user to login
// console.log("Hit an error.");
// observer.error(error);
// });
// });
}
}
}