v1.5.0: Complete documentation rewrite - 50+ files with AlisaReactionBot style

- Box-style header comments (Project, Author, License) on every file
- Section headers using double-line box decorators
- Feature markers (// ---- FEATURE: XYZ ----) before every major function
- JSDoc comments for EVERY function with @param, @returns, @example
- Inline notes (NOTE, WARNING, TIP) for non-obvious logic
- Footer END markers on every module
- Matched code style to AlisaReactionBot repository
- All files now searchable by feature name via grep

Author: Shinei Nouzen <157171073+Shineii86@users.noreply.github.com>
This commit is contained in:
Sʜɪɴᴇɪ Nᴏᴜᴢᴇɴ
2026-06-08 16:14:01 +05:30
parent 87d6d4dbf2
commit 0034617c3b
55 changed files with 2965 additions and 108 deletions
+135 -1
View File
@@ -1,3 +1,48 @@
/*
* ======= • ======= • ======= • ======= • =======• =======
* AniKatoAPI — ids.config.js
* Repository: https://github.com/Shineii86/AniKatoAPI
*
* @description
* Mapping configuration for anime metadata IDs used by the AniKato
* site's filtering system. Contains human-readable slugs mapped
* to numeric IDs for genres, types, statuses, ratings, and sort options.
*
* @exports
* GENRE_IDS, TYPE_IDS, STATUS_IDS, RATING_IDS, SORT_IDS
*
* @author Shinei Nouzen
* @license MIT
* ======= • ======= • ======= • ======= • =======• =======
*/
// ══════════════════════════════════════════════════════════════
// GENRE ID MAPPING
// ══════════════════════════════════════════════════════════════
// ---- FEATURE: Genre slug to numeric ID mapping ----
/**
* Maps human-readable genre slugs to their corresponding numeric IDs
* used in AniKato's filtering system. Contains 43 different anime genres
* from action to vampire.
*
* @type {Object}
* @property {string} action - ID for action genre
* @property {string} adventure - ID for adventure genre
* @property {string} comedy - ID for comedy genre
* @property {string} drama - ID for drama genre
* @property {string} fantasy - ID for fantasy genre
* @property {string} horror - ID for horror genre
* @property {string} romance - ID for romance genre
* @property {string} sci-fi - ID for science fiction genre
* @property {string} slice-of-life - ID for slice of life genre
* @property {string} supernatural - ID for supernatural genre
*
* @example
* // Get genre ID for filtering
* GENRE_IDS["action"] // "1"
* GENRE_IDS["comedy"] // "4"
*/
const GENRE_IDS = {
"action": "1",
"adventure": "2",
@@ -44,6 +89,29 @@ const GENRE_IDS = {
"vampire": "43"
};
// ══════════════════════════════════════════════════════════════
// ANIME TYPE ID MAPPING
// ══════════════════════════════════════════════════════════════
// ---- FEATURE: Anime type slug to numeric ID mapping ----
/**
* Maps anime type slugs to their corresponding numeric IDs.
* Covers all standard anime format types including TV series,
* movies, OVAs, ONAs, and special episodes.
*
* @type {Object}
* @property {string} movie - ID for movie format
* @property {string} music - ID for music video format
* @property {string} ona - ID for Original Net Animation
* @property {string} ova - ID for Original Video Animation
* @property {string} special - ID for special episodes
* @property {string} tv - ID for TV broadcast series
*
* @example
* // Get type ID for filtering
* TYPE_IDS["tv"] // "6"
* TYPE_IDS["movie"] // "1"
*/
const TYPE_IDS = {
"movie": "1",
"music": "2",
@@ -53,12 +121,52 @@ const TYPE_IDS = {
"tv": "6"
};
// ══════════════════════════════════════════════════════════════
// AIRING STATUS ID MAPPING
// ══════════════════════════════════════════════════════════════
// ---- FEATURE: Airing status slug to numeric ID mapping ----
/**
* Maps anime airing status slugs to their corresponding numeric IDs.
* Used to filter anime by their broadcast completion status.
*
* @type {Object}
* @property {string} currently-airing - ID for ongoing series
* @property {string} finished-airing - ID for completed series
* @property {string} not-yet-aired - ID for upcoming series
*
* @example
* // Get status ID for filtering
* STATUS_IDS["currently-airing"] // "1"
*/
const STATUS_IDS = {
"currently-airing": "1",
"finished-airing": "2",
"not-yet-aired": "3"
};
// ══════════════════════════════════════════════════════════════
// AGE RATING ID MAPPING
// ══════════════════════════════════════════════════════════════
// ---- FEATURE: Age rating slug to numeric ID mapping ----
/**
* Maps age rating slugs to their corresponding numeric IDs.
* Follows standard anime age rating classifications from
* general audience to restricted content.
*
* @type {Object}
* @property {string} g - ID for General Audiences
* @property {string} pg - ID for Parental Guidance
* @property {string} pg-13 - ID for Parents Strongly Cautioned
* @property {string} r - ID for Restricted
* @property {string} r+ - ID for Restricted Plus
* @property {string} rx - ID for Hentai (Adult)
*
* @example
* // Get rating ID for filtering
* RATING_IDS["pg-13"] // "3"
*/
const RATING_IDS = {
"g": "1",
"pg": "2",
@@ -68,6 +176,31 @@ const RATING_IDS = {
"rx": "6"
};
// ══════════════════════════════════════════════════════════════
// SORT ORDER ID MAPPING
// ══════════════════════════════════════════════════════════════
// ---- FEATURE: Sort order slug to query parameter mapping ----
/**
* Maps sort order slugs to their corresponding query parameter values.
* Used with the filter/search endpoint to control result ordering.
* Note: Default sort has empty string value.
*
* @type {Object}
* @property {string} default - Default sort order (empty string)
* @property {string} latest-updated - ID for most recently updated
* @property {string} latest-added - ID for most recently added
* @property {string} score - ID for highest rated
* @property {string} name-az - ID for alphabetical order
* @property {string} release-date - ID for newest release date
* @property {string} most-viewed - ID for most popular
* @property {string} number_of_episodes - ID for episode count
*
* @example
* // Get sort parameter value
* SORT_IDS["latest-updated"] // "1"
* SORT_IDS["score"] // "3"
*/
const SORT_IDS = {
"default": "",
"latest-updated": "1",
@@ -79,4 +212,5 @@ const SORT_IDS = {
"number_of_episodes": "7"
};
export { GENRE_IDS, TYPE_IDS, STATUS_IDS, RATING_IDS, SORT_IDS };
export { GENRE_IDS, TYPE_IDS, STATUS_IDS, RATING_IDS, SORT_IDS };
// ══════════════════════════════════════════════════════════════ END: ids.config.js