esqueleto basico
This commit is contained in:
parent
8eb441e5f5
commit
0dc723713d
350 changed files with 90726 additions and 0 deletions
64
bower_components/jsrender/tmplify/index.js
vendored
Normal file
64
bower_components/jsrender/tmplify/index.js
vendored
Normal file
|
@ -0,0 +1,64 @@
|
|||
/*! JsRender tmplify submodule v0.9.84 (Beta): http://jsviews.com/#jsrender */
|
||||
/*! Browserify transform for JsRender templates */
|
||||
/*
|
||||
* Copyright 2017, Boris Moore
|
||||
* Released under the MIT License.
|
||||
*/
|
||||
|
||||
(function() {
|
||||
"use strict";
|
||||
var jsrender = require('./../jsrender-node.js'),
|
||||
fs = require('fs'),
|
||||
path = require('path'),
|
||||
pathSep = path.sep,
|
||||
through = require('through2'),
|
||||
rootDirPath = path.resolve("./"),
|
||||
rootDirPathLen = rootDirPath.length + 1;
|
||||
|
||||
function isTemplate(fileExt, extensions) {
|
||||
extensions = typeof extensions === "string"
|
||||
? extensions
|
||||
: "html jsrender jsr"; // Default extensions
|
||||
return new RegExp("\\s" + fileExt + "\\s").test(" " + extensions + " ");
|
||||
}
|
||||
|
||||
module.exports = function(file, options) {
|
||||
var nodeFileDirName = path.dirname(file);
|
||||
|
||||
if (!isTemplate(path.extname(file).slice(1), options && (options.extensions || options.e))) {
|
||||
return through();
|
||||
}
|
||||
return through(function(buf, enc, next) {
|
||||
var createTmplCode, ref, pathFromFileDir,
|
||||
markup = buf.toString().replace(/^\uFEFF/, ''), // Remove BOM if necessary
|
||||
tmpl = jsrender.templates(markup),
|
||||
bundledFile = 'var tmplRefs = [],\n'
|
||||
+ " mkup = '" + markup.replace(/['"\\]/g, "\\$&").replace(/[ \t]*(\r\n|\n|\r)/g, '\\n') + "',\n" // Normalize newlines, and escape quotes and \ character
|
||||
+ ' $ = global.jsrender || global.jQuery;\n\n',
|
||||
templateName = './' + file.slice(rootDirPathLen).split(pathSep).join('/');
|
||||
|
||||
for (ref in tmpl.refs) {
|
||||
// Recursively bundle any nested template references, e.g. {{include tmpl="./some/template.html/}}"
|
||||
fs.stat(ref, function(err, stat) {
|
||||
// Async check that file exists
|
||||
if(err && err.code == 'ENOENT') {
|
||||
throw new Error("Template '" + ref + "' not found at '" + err.path + "'. Use path relative to '" + rootDirPath + "'.");
|
||||
}
|
||||
});
|
||||
pathFromFileDir = './' + path.relative(nodeFileDirName, ref).split(pathSep).join('/');
|
||||
bundledFile += 'tmplRefs.push(require("' + pathFromFileDir + '"));\n';
|
||||
}
|
||||
|
||||
createTmplCode = '$.templates("' + templateName + '", mkup)';
|
||||
bundledFile +=
|
||||
'module.exports = $ ? ' + createTmplCode
|
||||
+ ' :\n function($) {\n'
|
||||
+ ' if (!$ || !$.views) {throw "Requires jsrender/jQuery";}\n'
|
||||
+ ' while (tmplRefs.length) {\n tmplRefs.pop()($); // compile nested template\n }\n\n'
|
||||
+ ' return ' + createTmplCode
|
||||
+ '\n };';
|
||||
this.push(bundledFile);
|
||||
next();
|
||||
});
|
||||
};
|
||||
}());
|
Loading…
Add table
Add a link
Reference in a new issue