/var/www/greso.tech/server/nsm/node_modules/jsdoc/lib/jsdoc
NameSizeModeActions
opts/-0755rm
src/-0755rm
tag/-0755rm
tutorial/-0755rm
util/-0755rm
app.js4500644editdlrm
augment.js218790644editdlrm
borrow.js17730644editdlrm
config.js17410644editdlrm
doclet.js171090644editdlrm
env.js17360644editdlrm
fs.js21440644editdlrm
name.js177300644editdlrm
package.js80300644editdlrm
path.js53580644editdlrm
plugins.js9000644editdlrm
readme.js5530644editdlrm
schema.js162060644editdlrm
tag.js63980644editdlrm
template.js23210644editdlrm
tutorial.js34640644editdlrm
Edit: /var/www/greso.tech/server/nsm/node_modules/jsdoc/lib/jsdoc/template.js (2321B)
/** * Wrapper for underscore's template utility to allow loading templates from files. * @module jsdoc/template */ const _ = require('underscore'); const fs = require('jsdoc/fs'); const path = require('path'); /** * Underscore template helper. */ class Template { /** * @param {string} filepath - Templates directory. */ constructor(filepath) { this.path = filepath; this.layout = null; this.cache = {}; // override default template tag settings this.settings = { evaluate: /<\?js([\s\S]+?)\?>/g, interpolate: /<\?js=([\s\S]+?)\?>/g, escape: /<\?js~([\s\S]+?)\?>/g }; } /** * Loads template from given file. * @param {string} file - Template filename. * @return {function} Returns template closure. */ load(file) { return _.template(fs.readFileSync(file, 'utf8'), null, this.settings); } /** * Renders template using given data. * * This is low-level function, for rendering full templates use {@link Template.render()}. * * @param {string} file - Template filename. * @param {object} data - Template variables (doesn't have to be object, but passing variables dictionary is best way and most common use). * @return {string} Rendered template. */ partial(file, data) { file = path.resolve(this.path, file); // load template into cache if (!(file in this.cache)) { this.cache[file] = this.load(file); } // keep template helper context return this.cache[file].call(this, data); } /** * Renders template with given data. * * This method automaticaly applies layout if set. * * @param {string} file - Template filename. * @param {object} data - Template variables (doesn't have to be object, but passing variables dictionary is best way and most common use). * @return {string} Rendered template. */ render(file, data) { // main content let content = this.partial(file, data); // apply layout if (this.layout) { data.content = content; content = this.partial(this.layout, data); } return content; } } exports.Template = Template;