ani-cli-npm
Version:
ani-cli tool rewritten as npm package
40 lines (39 loc) • 1.46 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.search = void 0;
const regex_1 = require("./core_utils/regex");
const curl_1 = require("./core_utils/curl");
const input_1 = require("./input");
const chalk_1 = __importDefault(require("chalk"));
async function search_anime(search) {
let filter = "*<ahref=\"/category/*\"title=\"*\">";
let html = (await (0, curl_1.curl)("https://gogoanime.dk//search.html?keyword=" + search)).split("\n");
let lines = [];
for (let x in html) {
html[x] = html[x].replaceAll(/ /g, '').replaceAll(/\t/g, '');
if ((0, regex_1.RegexParse)(html[x], filter)) {
html[x] = html[x].slice(html[x].indexOf("/category/") + 10);
html[x] = html[x].slice(0, html[x].indexOf("\"title="));
lines.push(html[x]);
}
}
if (!lines[0]) {
lines.pop();
}
return lines;
}
async function search() {
console.clear();
console.log(chalk_1.default.magenta("Search..."));
let _selection = await (0, input_1.input)();
let results = await search_anime(_selection);
if (results[0] === undefined) {
console.log(chalk_1.default.red("No results found."));
return 1;
}
return results[await (0, input_1.selection)(results)];
}
exports.search = search;
;