scathach-api
Version:
A NodeJS wrapper to interacts with Scathach bot
267 lines • 15.7 kB
JavaScript
"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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