@netlify/content-engine
Version:
34 lines • 1.36 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getLatestAPIs = void 0;
const path_1 = __importDefault(require("path"));
const fs_extra_1 = __importDefault(require("fs-extra"));
const axios_1 = __importDefault(require("axios"));
const API_FILE = `https://unpkg.com/@netlify/content-engine/apis.json`;
const ROOT = path_1.default.join(__dirname, `..`, `..`);
const OUTPUT_FILE = path_1.default.join(ROOT, `latest-apis.json`);
const getLatestAPIs = async () => {
try {
const { data } = await axios_1.default.get(API_FILE, { timeout: 5000 });
await fs_extra_1.default.writeFile(OUTPUT_FILE, JSON.stringify(data, null, 2), `utf8`);
return data;
}
catch (e) {
if (await fs_extra_1.default.pathExists(OUTPUT_FILE)) {
return fs_extra_1.default.readJSON(OUTPUT_FILE);
}
// possible offline/network issue
return fs_extra_1.default.readJSON(path_1.default.join(ROOT, `apis.json`)).catch(() => {
return {
browser: {},
node: {},
ssr: {},
};
});
}
};
exports.getLatestAPIs = getLatestAPIs;
//# sourceMappingURL=get-latest-apis.js.map
;