* feat: configure eslint rules by replicating those in the twenty-front package and introduce scripts for linting, formatting code and removing build output * fix: ensure each file of the extension package satisfies linting rules and disable some rules where necessary * fix: update relative imports to absolute imports throughout extension code with the defined tilde and at symbols * fix: import the updated ui module from the front package to the chrome extension package to prevent eslint rules from breaking subject to the recent merged changes into main * fix: commit the case change for files that were missed by Git in the earlier commits due to default configuration
32 lines
783 B
TypeScript
32 lines
783 B
TypeScript
const requestDb = async (query: string) => {
|
|
const { apiKey } = await chrome.storage.local.get('apiKey');
|
|
const { serverBaseUrl } = await chrome.storage.local.get('serverBaseUrl');
|
|
|
|
const options = {
|
|
method: 'POST',
|
|
body: JSON.stringify({ query }),
|
|
headers: {
|
|
'Content-Type': 'application/json',
|
|
Accept: 'application/json',
|
|
Authorization: `Bearer ${apiKey}`,
|
|
},
|
|
};
|
|
|
|
const response = await fetch(
|
|
`${
|
|
serverBaseUrl ? serverBaseUrl : import.meta.env.VITE_SERVER_BASE_URL
|
|
}/graphql`,
|
|
options,
|
|
);
|
|
|
|
if (!response.ok) {
|
|
// TODO: Handle error gracefully and remove the console statement.
|
|
/* eslint-disable no-console */
|
|
console.error(response);
|
|
}
|
|
|
|
return await response.json();
|
|
};
|
|
|
|
export default requestDb;
|