32 lines
693 B
JavaScript
32 lines
693 B
JavaScript
import Base from 'ember-simple-auth/authenticators/base';
|
|
|
|
function makeRequest({ url, key }) {
|
|
const headers = new Headers({
|
|
'Content-Type': 'application/json',
|
|
});
|
|
|
|
if (key) {
|
|
headers.append('Authorization', `Bearer ${key}`);
|
|
}
|
|
|
|
// TODO: how to check session?
|
|
const req = new Request(new URL('/version', url), { headers });
|
|
|
|
return fetch(req).then((response) => {
|
|
if (response.ok) {
|
|
return { url, key };
|
|
} else {
|
|
throw new Error('Network response was not OK');
|
|
}
|
|
});
|
|
}
|
|
|
|
export default class MeilisearchAuthenticator extends Base {
|
|
restore(data) {
|
|
return makeRequest(data);
|
|
}
|
|
|
|
authenticate(data) {
|
|
return makeRequest(data);
|
|
}
|
|
}
|