UNPKG

figlet

Version:

Creates ASCII Art from text. A full implementation of the FIGfont spec.

93 lines (92 loc) 3.36 kB
//#region \0rolldown/runtime.js var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) { key = keys[i]; if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: ((k) => from[k]).bind(null, key), enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod)); //#endregion const require_figlet = require("./figlet-C0Gv96ma.cjs"); let fs = require("fs"); fs = __toESM(fs, 1); let path = require("path"); path = __toESM(path, 1); //#region src/node-figlet.ts var __filename$1 = (0, require("url").fileURLToPath)({}.url); var __dirname$1 = path.dirname(__filename$1); var fontPath = path.join(__dirname$1, "/../fonts/"); var nodeFiglet = require_figlet.figlet; nodeFiglet.defaults({ fontPath }); nodeFiglet.loadFont = function(name, callback) { const actualFontName = require_figlet.getFontName(name); return new Promise((resolve, reject) => { if (nodeFiglet.figFonts[actualFontName]) { if (callback) callback(null, nodeFiglet.figFonts[actualFontName].options); resolve(nodeFiglet.figFonts[actualFontName].options); return; } fs.readFile(path.join(nodeFiglet.defaults().fontPath, actualFontName + ".flf"), { encoding: "utf-8" }, (err, fontData) => { if (err) { if (callback) callback(err); reject(err); return; } fontData = fontData + ""; try { const font = nodeFiglet.parseFont(actualFontName, fontData); if (callback) callback(null, font); resolve(font); } catch (error) { const typedError = error instanceof Error ? error : new Error(String(error)); if (callback) callback(typedError); reject(typedError); } }); }); }; nodeFiglet.loadFontSync = function(font) { const actualFontName = require_figlet.getFontName(font); if (nodeFiglet.figFonts[actualFontName]) return nodeFiglet.figFonts[actualFontName].options; const fontData = fs.readFileSync(path.join(nodeFiglet.defaults().fontPath, actualFontName + ".flf"), { encoding: "utf-8" }) + ""; return nodeFiglet.parseFont(actualFontName, fontData); }; nodeFiglet.fonts = function(next) { return new Promise((resolve, reject) => { const fontList = []; fs.readdir(nodeFiglet.defaults().fontPath, (err, files) => { if (err) { next && next(err); reject(err); return; } files.forEach((file) => { if (/\.flf$/.test(file)) fontList.push(file.replace(/\.flf$/, "")); }); next && next(null, fontList); resolve(fontList); }); }); }; nodeFiglet.fontsSync = function() { const fontList = []; fs.readdirSync(nodeFiglet.defaults().fontPath).forEach((file) => { if (/\.flf$/.test(file)) fontList.push(file.replace(/\.flf$/, "")); }); return fontList; }; //#endregion module.exports = nodeFiglet;