badge-urls
Version:
Helper functions to generate URLs for all badges / shields from shields.io
34 lines (33 loc) • 1.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var scrapeUrl_1 = tslib_1.__importDefault(require("../../utils/scrapeUrl"));
var constants_1 = require("../constants");
var findCategories = function (document) {
var categories = [];
document
.querySelectorAll("#app > div a")
.forEach(function (_a) {
var href = _a.href;
if (!href.startsWith(constants_1.SHIELDS_IO_CATEGORY_PAGE_PREFIX)) {
throw new Error("URL does not start with " + constants_1.SHIELDS_IO_CATEGORY_PAGE_PREFIX);
}
var category = href.substr(constants_1.SHIELDS_IO_CATEGORY_PAGE_PREFIX.length);
categories.push(category);
});
return categories;
};
function scrapeCategories() {
return tslib_1.__awaiter(this, void 0, void 0, function () {
var _a;
return tslib_1.__generator(this, function (_b) {
switch (_b.label) {
case 0:
_a = findCategories;
return [4 /*yield*/, scrapeUrl_1.default(constants_1.SHIELDS_IO_BASE_URL)];
case 1: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
}
});
});
}
exports.default = scrapeCategories;