var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
import state from '../state';
const endpoint = process.env.NODE_ENV === 'development'
    ? 'https://dev-api.r2u.io'
    : 'https://api.r2u.io';
export function get(path) {
    return __awaiter(this, void 0, void 0, function* () {
        const headers = {};
        if (state.refreshCache) {
            headers['Cache-Control'] = 'max-age=0';
        }
        const response = yield fetch(`${endpoint}${path}`, {
            method: 'get',
            headers,
        });
        return response.json();
    });
}
export function post(path, body) {
    return __awaiter(this, void 0, void 0, function* () {
        const response = yield fetch(`${endpoint}${path}`, {
            method: 'POST',
            body: JSON.stringify(body),
        });
        return response.json();
    });
}
export function fileExists(url) {
    return __awaiter(this, void 0, void 0, function* () {
        try {
            const { status } = yield fetch(url, {
                method: 'HEAD',
            });
            return status === 200;
        }
        catch (err) {
            console.error(err);
            return false;
        }
    });
}
export const getRoute = () => {
    return process.env.NODE_ENV === 'development'
        ? 'http://localhost:8080'
        : 'https://sdk.r2u.io';
};
//# sourceMappingURL=requests.js.map