diff --git a/src/modules/episode/controllers/getEpisodeDetails.controller.ts b/src/modules/episode/controllers/getEpisodeDetails.controller.ts index a1f83f1..35982cd 100644 --- a/src/modules/episode/controllers/getEpisodeDetails.controller.ts +++ b/src/modules/episode/controllers/getEpisodeDetails.controller.ts @@ -8,6 +8,39 @@ export interface GetEpisodeDetailsParams { episode?: string; } +/** + * @function getEpisodeDetailsController + * @description Controller to handle fetching episode details based on provided parameters. + * + * @param {Context & { params: GetEpisodeDetailsParams }} ctx + * The context object containing the request body. + * The params must include: + * - mediaSlug?: string - The slug of the media to which the episode belongs. + * - episode?: string - The identifier of the episode. + * + * @example + * Request route: GET /episodes/:mediaSlug/:episode + * + * @returns {Promise} + * A response object indicating success or failure. + * Return example: + * { + * success: true, + * status: 200, + * message: "Episode details fetched successfully.", + * data: { ...episodeDetails } // Data returned only if the env run on development mode + * } + * + * @throws {Object} + * An error response object if validation fails or an error occurs during bulk insert operation. + * Return example: + * { + * success: false, + * status: , + * message: "", + * error: { ...errorDetails } // Additional error details if available and the env run on development mode + * } + */ export const getEpisodeDetailsController = async ( ctx: Context & { params: GetEpisodeDetailsParams }, ) => {