splitFilenameExtensions

This commit is contained in:
Mylloon 2024-09-18 17:15:13 +02:00
parent 23d3918459
commit b316734511
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 16 additions and 11 deletions

View file

@ -1,6 +1,7 @@
import { Player, PlayerEvents, useMainPlayer } from "discord-player"; import { Player, PlayerEvents, useMainPlayer } from "discord-player";
import { Client } from "discord.js"; import { Client } from "discord.js";
import { readdir } from "fs/promises"; import { readdir } from "fs/promises";
import { splitFilenameExtensions } from "../utils/misc";
/** Load all the events */ /** Load all the events */
export default async (client: Client) => { export default async (client: Client) => {
@ -20,13 +21,10 @@ export default async (client: Client) => {
); );
// Remove extension // Remove extension
// TODO: use utils functions const { file: event_type, ext } = splitFilenameExtensions(event_file);
const event_type_ext = event_file.split(".");
const ext = event_type_ext.pop();
if (!(ext === "js" || ext === "ts")) { if (!(ext === "js" || ext === "ts")) {
throw `Unknown file in ${event_category}: ${event_file}`; throw `Unknown file in ${event_category}: ${event_file}`;
} }
const event_type = event_type_ext.join(".");
if (event_category == "player") { if (event_category == "player") {
const player = useMainPlayer() as Player; const player = useMainPlayer() as Player;

View file

@ -28,16 +28,25 @@ export const getFilename = (path: string) => {
return removeExtension(filename_with_ext); return removeExtension(filename_with_ext);
}; };
/**
* Split a filename and his extension
* @param filename string of the filename
* @returns Object with filename and extension splitted
*/
export const splitFilenameExtensions = (filename: string) => {
const array = filename.split(".");
const ext = array.pop();
return { file: array.join("."), ext };
};
/** /**
* Remove extension from a filename * Remove extension from a filename
* @param filename string of the filename with an extension * @param filename string of the filename with an extension
* @returns string of the filename without an extension * @returns string of the filename without an extension
*/ */
export const removeExtension = (filename: string) => { export const removeExtension = (filename: string) => {
const array = filename.split("."); return splitFilenameExtensions(filename).file;
array.pop();
return array.join(".");
}; };
/** /**
@ -46,9 +55,7 @@ export const removeExtension = (filename: string) => {
* @returns string of the extension if it exists * @returns string of the extension if it exists
*/ */
export const getExtension = (filename: string) => { export const getExtension = (filename: string) => {
const array = filename.split("."); return splitFilenameExtensions(filename).ext;
return array.pop();
}; };
/** /**