37 lines
1.8 KiB
TypeScript
37 lines
1.8 KiB
TypeScript
import { Thunder } from './helpers/graphql-zeus';
|
|
import fetch from 'node-fetch';
|
|
|
|
const url = 'http://localhost:4001';
|
|
const token =
|
|
'eyJhbGciOiJSUzI1NiIsImtpZCI6IjVmOTcxMmEwODczMTcyMGQ2NmZkNGEyYTU5MmU0ZGZjMmI1ZGU1OTUiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vc29mdHdhcmUtdGVhbS1zdGFnaW5nIiwiYXVkIjoic29mdHdhcmUtdGVhbS1zdGFnaW5nIiwiYXV0aF90aW1lIjoxNjEwNzE1ODA4LCJ1c2VyX2lkIjoiTDNpQ3RkZDRzb2djYVJ1Y1RXbVVJNjM0aWo1MyIsInN1YiI6IkwzaUN0ZGQ0c29nY2FSdWNUV21VSTYzNGlqNTMiLCJpYXQiOjE2MTA3MTU4MDgsImV4cCI6MTYxMDcxOTQwOCwiZW1haWwiOiJzc3llZC5tYWtlaXRAZ21haWwuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsic3N5ZWQubWFrZWl0QGdtYWlsLmNvbSJdfSwic2lnbl9pbl9wcm92aWRlciI6ImN1c3RvbSJ9fQ.o3HXVp5lrIk_bzaTqb-aA7bpRJLb-Jp7lPz7_O7PQdsOaw5-L066HFtp5I-meS2CdpvUXy1REvAntGEeTNFukBzOkcRjBYagaxwUd_KpZOOoru5wpvTW8jJXlzmQXmDbHm2zfmzSCxsmrdZz62p_mKKJgGw5QTZB_LxUqTo6v0rhboXOowTzvAaHf1iwSU84JfrZwKU4xd0031RZPFbi6NDgHprYIDx7L5Fsl6bQhXDEXELDe4RNYQ5b0CKXa8rdJE9rBuroGJAJhB42_iwDwCa07FwBLIJzXefKqI97s15s23RzVT5o81EtIDOlOI6nBhucsad4boxacT6VBuS_vw';
|
|
|
|
export const thunder = Thunder(async (query) => {
|
|
const headers: any = {
|
|
'Content-Type': 'application/json',
|
|
};
|
|
|
|
if (token) headers.authorization = token;
|
|
|
|
const response = await fetch(url, {
|
|
body: JSON.stringify({ query }),
|
|
method: 'POST',
|
|
headers: headers,
|
|
});
|
|
if (!response.ok) {
|
|
return new Promise((resolve, reject) => {
|
|
response
|
|
.text()
|
|
.then((text) => {
|
|
try {
|
|
reject(JSON.parse(text));
|
|
} catch (err) {
|
|
reject(text);
|
|
}
|
|
})
|
|
.catch(reject);
|
|
});
|
|
}
|
|
const json = await response.json();
|
|
return json.data;
|
|
});
|