UNPKG

@jsprismarine/color-parser

Version:
26 lines (25 loc) 2.37 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const require_Colors = require("./Colors.cjs.cjs"); //#region src/Parser.ts /** * Parses a string with color codes. * @param {string} input - String to parse. * @param {string} [prefix='§'] - The prefix to use for color codes. * @param {boolean} [clearAtEnd=false] - Whether to clear the color at the end of the string. * @returns {string} The parsed string. * @example * ```typescript * const res = Parser('§cHello §eworld§r!'); * console.log(res); // 'Hello world!' * ``` */ var Parser = (input, prefix = "§", clearAtEnd = true) => `${input.replaceAll(new RegExp(`\\${prefix}[\\dabcdefklmnor]`, "gm"), (v) => { return require_Colors.toConsole[v.slice(1)]; })}${clearAtEnd && require_Colors.toConsole.r || ""}`; //#endregion exports.default = Parser; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyc2VyLmNqcy5janMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL1BhcnNlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjb2xvcnMgZnJvbSAnLi9Db2xvcnMnO1xuXG4vKipcbiAqIFBhcnNlcyBhIHN0cmluZyB3aXRoIGNvbG9yIGNvZGVzLlxuICogQHBhcmFtIHtzdHJpbmd9IGlucHV0IC0gU3RyaW5nIHRvIHBhcnNlLlxuICogQHBhcmFtIHtzdHJpbmd9IFtwcmVmaXg9J8KnJ10gLSBUaGUgcHJlZml4IHRvIHVzZSBmb3IgY29sb3IgY29kZXMuXG4gKiBAcGFyYW0ge2Jvb2xlYW59IFtjbGVhckF0RW5kPWZhbHNlXSAtIFdoZXRoZXIgdG8gY2xlYXIgdGhlIGNvbG9yIGF0IHRoZSBlbmQgb2YgdGhlIHN0cmluZy5cbiAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBwYXJzZWQgc3RyaW5nLlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlcyA9IFBhcnNlcignwqdjSGVsbG8gwqdld29ybGTCp3IhJyk7XG4gKiBjb25zb2xlLmxvZyhyZXMpOyAvLyAnSGVsbG8gd29ybGQhJ1xuICogYGBgXG4gKi9cbmNvbnN0IFBhcnNlciA9IChpbnB1dDogc3RyaW5nLCBwcmVmaXggPSAnwqcnLCBjbGVhckF0RW5kID0gdHJ1ZSkgPT5cbiAgICBgJHtpbnB1dC5yZXBsYWNlQWxsKG5ldyBSZWdFeHAoYFxcXFwke3ByZWZpeH1bXFxcXGRhYmNkZWZrbG1ub3JdYCwgJ2dtJyksICh2KSA9PiB7XG4gICAgICAgIHJldHVybiBjb2xvcnMudG9Db25zb2xlW3Yuc2xpY2UoMSldIGFzIHN0cmluZztcbiAgICB9KX0keyhjbGVhckF0RW5kICYmIGNvbG9ycy50b0NvbnNvbGUucikgfHwgJyd9YDtcblxuZXhwb3J0IGRlZmF1bHQgUGFyc2VyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBY0EsSUFBTSxVQUFVLE9BQWUsU0FBUyxLQUFLLGFBQWEsU0FDdEQsR0FBRyxNQUFNLFdBQVcsSUFBSSxPQUFPLEtBQUssT0FBTyxvQkFBb0IsSUFBSSxJQUFJLE1BQU07Q0FDekUsT0FBQSxlQUFBLFVBQXdCLEVBQUUsTUFBTSxDQUFDO0FBQ3JDLENBQUMsSUFBSyxjQUFBLGVBQUEsVUFBK0IsS0FBTSJ9