openf1-sdk
Version:
an sdk for interacting with openf1 api
22 lines (21 loc) • 930 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.OpenF1Request = void 0;
const axios_1 = __importDefault(require("axios"));
const api_doc_1 = require("./api.doc");
const OpenF1Request = (endpoint, request) => {
if (!api_doc_1.endpoints.includes(endpoint))
throw new Error("Invalid endpoint");
const { queryParams } = request;
const stringifiedQueryParams = Object.fromEntries(Object.entries(queryParams).map(([key, value]) => [
key,
typeof value === "number" ? value : String(value),
]));
const queryString = new URLSearchParams(stringifiedQueryParams).toString();
const url = `${api_doc_1.BASE_URL}${endpoint}?${queryString}`;
return axios_1.default.get(url);
};
exports.OpenF1Request = OpenF1Request;