UNPKG

scathach-api

Version:

A NodeJS wrapper to interacts with Scathach bot

80 lines 13 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.randomArray = exports.get = exports.ratelimit = void 0; const consts_1 = __importDefault(require("./consts")); const utils_1 = require("./utils"); Object.defineProperty(exports, "get", { enumerable: true, get: function () { return utils_1.get; } }); Object.defineProperty(exports, "randomArray", { enumerable: true, get: function () { return utils_1.randomArray; } }); Object.defineProperty(exports, "ratelimit", { enumerable: true, get: function () { return utils_1.ratelimit; } }); async function request(options) { switch (options.category) { case 'fgo': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.fgo, options.useragent || '').then(res => res.body)); case 'genshin': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.genshin, options.useragent || '').then(res => res.body)); case 'azur': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.azur, options.useragent || '').then(res => res.body)); case 'waifu': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.waifu, options.useragent || '').then(res => res.body)); case 'arknights': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.arknights, options.useragent || '').then(res => res.body)); case 'fire_emblem': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.fire_emblem, options.useragent || '').then(res => res.body)); case 'gfl': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.gfl, options.useragent || '').then(res => res.body)); case 'hololive': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.hololive, options.useragent || '').then(res => res.body)); case 'kancolle': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.kancolle, options.useragent || '').then(res => res.body)); case 'sex': return (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(consts_1.default.endpoint.sex, options.useragent || '').then(res => res.body)); case 'reaction': if (!options.img) throw Error('No Tags provided'); if (!consts_1.default.endpoint.reaction.includes(options.img)) throw Error('Invalid parameter, please use one of the following: ' + consts_1.default.endpoint.reaction.join(', ')); const res = await (0, utils_1.get)(`https://gitlab.com/d0g/servant/-/raw/master/_constant/${options.img}.json`, options.useragent || '').then(res => res.body); return { url: (0, utils_1.randomArray)(res, `https://gitlab.com/d0g/servant/-/raw/master/${options.img}`) }; case 'animesex': if (!options.img) throw Error('No Tags provided'); if (!consts_1.default.endpoint.animesex.includes(options.img)) throw Error('Invalid parameter, please use one of the following: ' + consts_1.default.endpoint.animesex.join(', ')); const gitlab = await (0, utils_1.get)(`https://gitlab.com/d0g/lewd/-/raw/master/${options.img}.json`, options.useragent || '').then(res => res.body); return { url: (0, utils_1.randomArray)(gitlab) }; case 'gelbooru': if (!options.tags) throw Error('No Tags provided'); if (options.limit && (options.limit > 100 || options.limit < 25)) throw Error('Limit must be between 25 and 100'); const geltags = options.tags instanceof Array ? options.tags.join('+') : options.tags; const gelres = (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(`${consts_1.default.endpoint.gelbooru}/?tags=${geltags}&limit=${options.limit || 50}&page=${options.page || 1}&shuffle=true`, options.useragent || '').then(res => res.body)); return gelres; case 'r34': if (!options.tags) throw Error('No Tags provided'); if (options.limit && (options.limit > 100 || options.limit < 25)) throw Error('Limit must be between 25 and 100'); const r34tags = options.tags instanceof Array ? options.tags.join('+') : options.tags; const r34res = (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(`${consts_1.default.endpoint.r34}/?tags=${r34tags}&limit=${options.limit || 50}&page=${options.page || 1}&shuffle=true`, options.useragent || '').then(res => res.body)); return r34res; case 'safe': if (!options.tags) throw Error('No Tags provided'); if (options.limit && (options.limit > 100 || options.limit < 25)) throw Error('Limit must be between 25 and 100'); const safetags = options.tags instanceof Array ? options.tags.join('+') : options.tags; const saferes = (0, utils_1.ratelimit)(utils_1.delay, await (0, utils_1.get)(`${consts_1.default.endpoint.safe}/?tags=${safetags}&limit=${options.limit || 50}&page=${options.page || 1}&shuffle=true`, options.useragent || '').then(res => res.body)); return saferes; default: return { success: false, message: 'No URL provided' }; } } exports.default = request; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHNEQUF5QjtBQUN6QixtQ0FBNkQ7QUF5RnpDLG9GQXpGWCxXQUFHLE9BeUZXO0FBQUUsNEZBekZYLG1CQUFXLE9BeUZXO0FBQTNCLDBGQXpGa0IsaUJBQVMsT0F5RmxCO0FBdkZILEtBQUssVUFBVSxPQUFPLENBQUMsT0FVakM7SUFHSCxRQUFRLE9BQU8sQ0FBQyxRQUFRLEVBQUU7UUFJMUIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxJQUFBLGlCQUFTLEVBQUMsYUFBSyxFQUFFLE1BQU0sSUFBQSxXQUFHLEVBQUMsZ0JBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQWMsQ0FBQyxDQUFDLENBQUM7UUFDOUcsS0FBSyxTQUFTO1lBQ1osT0FBTyxJQUFBLGlCQUFTLEVBQUMsYUFBSyxFQUFFLE1BQU0sSUFBQSxXQUFHLEVBQUMsZ0JBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQWMsQ0FBQyxDQUFDLENBQUM7UUFDbEgsS0FBSyxNQUFNO1lBQ1QsT0FBTyxJQUFBLGlCQUFTLEVBQUMsYUFBSyxFQUFFLE1BQU0sSUFBQSxXQUFHLEVBQUMsZ0JBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQWMsQ0FBQyxDQUFDLENBQUM7UUFDL0csS0FBSyxPQUFPO1lBQ1YsT0FBTyxJQUFB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