UNPKG

cnpmcore

Version:
62 lines 5.26 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.NodeBinary = void 0; const tegg_1 = require("@eggjs/tegg"); const Binary_1 = require("../../enum/Binary"); const binaries_1 = __importDefault(require("../../../../config/binaries")); const AbstractBinary_1 = require("./AbstractBinary"); let NodeBinary = class NodeBinary extends AbstractBinary_1.AbstractBinary { async initFetch() { // do nothing return; } async fetch(dir, binaryName) { const binaryConfig = binaries_1.default[binaryName]; const url = `${binaryConfig.distUrl}${dir}`; const html = await this.requestXml(url); // <a href="v9.8.0/">v9.8.0/</a> 08-Mar-2018 01:55 - // <a href="v9.9.0/">v9.9.0/</a> 21-Mar-2018 15:47 - // <a href="index.json">index.json</a> 17-Dec-2021 23:16 219862 // <a href="index.tab">index.tab</a> 17-Dec-2021 23:16 136319 // <a href="node-0.0.1.tar.gz">node-0.0.1.tar.gz</a> 26-Aug-2011 16:22 2846972 // <a href="node-v14.0.0-nightly20200119b318926634-linux-armv7l.tar.xz">node-v14.0.0-nightly20200119b318926634-linux-ar..&gt;</a> 19-Jan-2020 06:07 18565976 const re = /<a href="([^\"]+?)"[^>]*?>[^<]+?<\/a>\s+?([\w\-]+? \w{2}\:\d{2})\s+?(\d+|\-)/ig; const matchs = html.matchAll(re); const items = []; for (const m of matchs) { const name = m[1]; const isDir = name.endsWith('/'); const fileUrl = isDir ? '' : `${url}${name}`; const date = m[2]; const size = m[3]; if (size === '0') continue; if (binaryConfig.ignoreFiles?.includes(`${dir}${name}`)) continue; items.push({ name, isDir, url: fileUrl, size, date, ignoreDownloadStatuses: binaryConfig.options?.ignoreDownloadStatuses, }); } return { items, nextParams: null }; } }; exports.NodeBinary = NodeBinary; exports.NodeBinary = NodeBinary = __decorate([ (0, tegg_1.SingletonProto)(), (0, AbstractBinary_1.BinaryAdapter)(Binary_1.BinaryType.Node) ], NodeBinary); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTm9kZUJpbmFyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2FwcC9jb21tb24vYWRhcHRlci9iaW5hcnkvTm9kZUJpbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxzQ0FBNkM7QUFDN0MsOENBQStDO0FBQy9DLDJFQUFtRTtBQUNuRSxxREFBMEY7QUFJbkYsSUFBTSxVQUFVLEdBQWhCLE1BQU0sVUFBVyxTQUFRLCtCQUFjO0lBQzVDLEtBQUssQ0FBQyxTQUFTO1FBQ2IsYUFBYTtRQUNiLE9BQU87SUFDVCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFXLEVBQUUsVUFBc0I7UUFDN0MsTUFBTSxZQUFZLEdBQUcsa0JBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMxQyxNQUFNLEdBQUcsR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFLENBQUM7UUFDNUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLGlIQUFpSDtRQUNqSCxpSEFBaUg7UUFDakgsb0hBQW9IO1FBQ3BILG1IQUFtSDtRQUNuSCwySEFBMkg7UUFDM0gsdUtBQXVLO1FBQ3ZLLE1BQU0sRUFBRSxHQUFHLGdGQUFnRixDQUFDO1FBQzVGLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakMsTUFBTSxLQUFLLEdBQWlCLEVBQUUsQ0FBQztRQUMvQixLQUFLLE1BQU0sQ0FBQyxJQUFJLE1BQU0sRUFBRTtZQUN0QixNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNqQyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xCLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNsQixJQUFJLElBQUksS0FBSyxHQUFHO2dCQUFFLFNBQVM7WUFDM0IsSUFBSSxZQUFZLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLEVBQUUsQ0FBQztnQkFBRSxTQUFTO1lBRWxFLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ1QsSUFBSTtnQkFDSixLQUFLO2dCQUNMLEdBQUcsRUFBRSxPQUFPO2dCQUNaLElBQUk7Z0JBQ0osSUFBSTtnQkFDSixzQkFBc0IsRUFBRSxZQUFZLENBQUMsT0FBTyxFQUFFLHNCQUFzQjthQUNyRSxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3JDLENBQUM7Q0FDRixDQUFBO0FBdkNZLGdDQUFVO3FCQUFWLFVBQVU7SUFGdEIsSUFBQSxxQkFBYyxHQUFFO0lBQ2hCLElBQUEsOEJBQWEsRUFBQyxtQkFBVSxDQUFDLElBQUksQ0FBQztHQUNsQixVQUFVLENBdUN0QiJ9