UNPKG

scathach-api

Version:

A NodeJS wrapper to interacts with Scathach bot

267 lines 15.7 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; const defaults_1 = __importDefault(require("./src/defaults")); const request_1 = __importDefault(require("./src/request")); class Scathach { config; useragent; apikey; static default; constructor(config) { this.config = config || defaults_1.default; this.useragent = this.config?.useragent ? `${defaults_1.default.useragent} ${this.config.useragent}` : defaults_1.default.useragent; this.apikey = this.config?.apikey ? this.config.apikey : ''; } /** * Get a random normalizes FGO sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/fgo</code> Response */ async getFgo() { const res = await (0, request_1.default)({ category: 'fgo', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Genshin impact sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/genshin</code> Response */ async getGenshin() { const res = await (0, request_1.default)({ category: 'genshin', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Azur lane sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/azur_lane</code> Response */ async getAzur() { const res = await (0, request_1.default)({ category: 'azur', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a Random Normalizes wholesome waifu data * @returns Unfiltered scathach.redsplit.org/v5/waifu Response */ async getWaifu() { const res = await (0, request_1.default)({ category: 'waifu', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Arknights sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/arknights</code> Response */ async getArknights() { const res = await (0, request_1.default)({ category: 'arknights', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Fire emblem sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/fire_emblem</code> Response */ async getFireEmblem() { const res = await (0, request_1.default)({ category: 'fire_emblem', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Girls' frontline sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/gfl</code> Response */ async getGirlsFrontline() { const res = await (0, request_1.default)({ category: 'gfl', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Hololive vtuber sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/hololive</code> Response */ async getHololive() { const res = await (0, request_1.default)({ category: 'hololive', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random normalizes Kancolle girls sex data * @returns Unfiltered <code>scathach.redsplit.org/v5/kancolle</code> Response */ async getKancolle() { const res = await (0, request_1.default)({ category: 'kancolle', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a random sex porn gif real shit * @returns Unfiltered scathach.redsplit.org/v5/sex Response */ async getSex() { const res = await (0, request_1.default)({ category: 'sex', useragent: this.useragent, apikey: this.apikey }).catch((err) => console.error(err)); return res; } /** * Get a reaction from servant fate * @param img The reaction to get * @example * getReaction("angry") * getReaction("bonk") * getReaction("cry") * getReaction("happy") * getReaction("hug") * getReaction("kiss") * getReaction("lol") * getReaction("nom") * getReaction("pat") * getReaction("pout") * getReaction("smug") * getReaction("uwu") * getReaction("wink") * @returns the random reaction that endpoints given */ async getReaction(img) { const res = await (0, request_1.default)({ category: 'reaction', img, useragent: this.useragent }).catch((err) => console.error(err)); return res; } /** * Get random anime sex * @param img The endpoints to get * @example * getAnimeSex("ass") * getAnimeSex("bdsm") * getAnimeSex("cum") * getAnimeSex("creampie") * getAnimeSex("manga") * getAnimeSex("femdom") * getAnimeSex("hentai") * getAnimeSex("incest") * getAnimeSex("masturbation") * getAnimeSex("public") * getAnimeSex("ero") * getAnimeSex("orgy") * getAnimeSex("elves") * getAnimeSex("yuri") * getAnimeSex("pantsu") * getAnimeSex("glasses") * getAnimeSex("blowjob") * getAnimeSex("boobjob") * getAnimeSex("foot") * getAnimeSex("thighs") * getAnimeSex("vagina") * getAnimeSex("ahegao") * getAnimeSex("uniform") * getAnimeSex("gangbang") * getAnimeSex("tentacles") * getAnimeSex("gif") * getAnimeSex("neko") * getAnimeSex("nsfwMobileWallpaper") * getAnimeSex("zettaiRyouiki") * @returns the random anime sex from endpoints given */ async getAnimeSex(img) { const res = await (0, request_1.default)({ category: 'animesex', img, useragent: this.useragent }).catch((err) => console.error(err)); return res; } /** * Bulk image request from gelbooru * @param tags The Tags your want to use for your Search * @param limit the amount of posts you want back * @param page the page you want to search on * @example * searchGelbooru("cat_girl") * searchGelbooru("cat_girl", 25) * searchGelbooru("cat_girl", 25, 2) * @returns A data that represents the proxied gelbooru response from scathach bot */ async searchGelbooru(tags, limit, page) { const res = await (0, request_1.default)({ category: 'gelbooru', limit, tags, page, useragent: this.useragent }).catch((err) => console.error(err)); return res; } /** * Bulk image request from r34 * @param tags The Tags your want to use for your Search * @param limit the amount of posts you want back * @param page the page you want to search on * @example * searchR34("futanari") * searchR34("futanari", 25) * searchR34("futanari", 25, 2) * @returns A data that represents the proxied r34 response from scathach bot */ async searchR34(tags, limit, page) { const res = await (0, request_1.default)({ category: 'r34', limit, tags, page, useragent: this.useragent }).catch((err) => console.error(err)); return res; } /** * Bulk image request from safebooru * @param tags The Tags your want to use for your Search * @param limit the amount of posts you want back * @param page the page you want to search on * @example * searchSafebooru("cat") * searchSafebooru("cat", 25) * searchSafebooru("cat", 25, 2) * @returns A data that represents the proxied safebooru response from scathach bot */ async searchSafe(tags, limit, page) { const res = await (0, request_1.default)({ category: 'safe', limit, tags, page, useragent: this.useragent }).catch((err) => console.error(err)); return res; } } Scathach.default = Scathach; module.exports = Scathach; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsOERBQXNDO0FBTXRDLDREQUFvQztBQUdwQyxNQUFNLFFBQVE7SUFDSixNQUFNLENBQVE7SUFDZCxTQUFTLENBQVE7SUFDakIsTUFBTSxDQUFRO0lBQ3RCLE1BQU0sQ0FBQyxPQUFPLENBQWtCO0lBR2hDLFlBQVksTUFBZTtRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxrQkFBUSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsa0JBQVEsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsa0JBQVEsQ0FBQyxTQUFTLENBQUM7UUFDaEgsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUM5RCxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLE1BQU07UUFFVixNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUEsaUJBQU8sRUFBQztZQUN4QixRQUFRLEVBQUUsS0FBSztZQUNmLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXRDLE9BQU8sR0FBZ0IsQ0FBQztJQUUxQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFVBQVU7UUFFZCxNQUFNLEdBQUcsR0FBRyxNQUFNLElB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