51 lines
1.1 KiB
JavaScript
51 lines
1.1 KiB
JavaScript
/*
|
|
* JavaScript Templates Runtime
|
|
* https://github.com/blueimp/JavaScript-Templates
|
|
*
|
|
* Copyright 2011, Sebastian Tschan
|
|
* https://blueimp.net
|
|
*
|
|
* Licensed under the MIT license:
|
|
* https://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
/* global define */
|
|
|
|
/* eslint-disable strict */
|
|
|
|
;(function ($) {
|
|
'use strict'
|
|
var tmpl = function (id, data) {
|
|
var f = tmpl.cache[id]
|
|
return data
|
|
? f(data, tmpl)
|
|
: function (data) {
|
|
return f(data, tmpl)
|
|
}
|
|
}
|
|
tmpl.cache = {}
|
|
tmpl.encReg = /[<>&"'\x00]/g // eslint-disable-line no-control-regex
|
|
tmpl.encMap = {
|
|
'<': '<',
|
|
'>': '>',
|
|
'&': '&',
|
|
'"': '"',
|
|
"'": '''
|
|
}
|
|
tmpl.encode = function (s) {
|
|
// eslint-disable-next-line eqeqeq
|
|
return (s == null ? '' : '' + s).replace(tmpl.encReg, function (c) {
|
|
return tmpl.encMap[c] || ''
|
|
})
|
|
}
|
|
if (typeof define === 'function' && define.amd) {
|
|
define(function () {
|
|
return tmpl
|
|
})
|
|
} else if (typeof module === 'object' && module.exports) {
|
|
module.exports = tmpl
|
|
} else {
|
|
$.tmpl = tmpl
|
|
}
|
|
})(this)
|