New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

tpjs

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tpjs - npm Package Compare versions

Comparing version 3.6.8 to 3.6.9

test/tmpl.js

4

lib/compile.js
/**
* tp.js - 最简洁高效的js模板引擎!
* @version v3.6.8
* @version v3.6.9
* @link http://houfeng.net/tp

@@ -9,2 +9,2 @@ * @license MIT

*/
var tp=require("../"),fs=require("fs"),path=require("path"),pkg=require("../package.json"),compileTmpl=tp.compile(fs.readFileSync(path.normalize(__dirname+"/compile.tp")).toString()),createHandler=tp._createHandler.toString(),controlledExecute=tp._controlledExecute.toString(),extend=tp.extend.toString(),inArray=tp._inArray.toString();module.exports=function(e,r){var t=tp.compile(r),n=compileTmpl({name:e||"unknown",src:t.src,createHandler:createHandler,controlledExecute:controlledExecute,extend:extend,inArray:inArray,engine:pkg.rawName+" "+pkg.version});return n};
var tp=require("../"),fs=require("fs"),path=require("path"),uglifyJs=require("uglify-js"),pkg=require("../package.json"),compileTmpl=tp.compile(fs.readFileSync(path.normalize(__dirname+"/compile.tp")).toString()),createHandler=tp._createHandler.toString(),controlledExecute=tp._controlledExecute.toString(),extend=tp.extend.toString(),inArray=tp._inArray.toString();module.exports=function(e,r){var t=tp.compile(r),n=compileTmpl({name:e||"unknown",src:t.src,createHandler:createHandler,controlledExecute:controlledExecute,extend:extend,inArray:inArray,engine:pkg.rawName+" "+pkg.version}),i=uglifyJs.minify(n,{fromString:!0});return"/* compiled by tp */\n"+i.code};
/**
* tp.js - 最简洁高效的js模板引擎!
* @version v3.6.8
* @version v3.6.9
* @link http://houfeng.net/tp

@@ -9,2 +9,2 @@ * @license MIT

*/
!function(e){"use strict";function n(e){return e?(e=e.replace(new RegExp("\\{1}","gim"),"\\\\"),e=e.replace(new RegExp("\r{1}","gim"),""),e=e.replace(new RegExp("\n{1}","gim"),"\\n"),e=e.replace(new RegExp("\r{1}","gim"),"\\r"),e=e.replace(new RegExp('"{1}',"gim"),'\\"')):""}function r(e){return e?e.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&"):""}function t(e,n){for(var r in e)if(e[r]===n)return!0;return!1}function u(e,n){try{return e()}catch(r){throw r.message=r.message||"",r.stack=r.stack||"",r.message=n+" : "+r.message+"\r\n "+r.stack,r}}function c(e,n){if(e){n=n||p;for(var r in e){if(t(["func","push","model","buffer"],r))throw'Can not expand "'+r+' function"';n[r]=e[r]}}}function i(e,n,r){var t=function(e){t.push(e)};t.push=function(e){t.buffer.push(e)};for(var u in r)r[u]&&c(r[u],t);return t.func=e,t.model=n||{},t.buffer=[],t}function o(r,t){r=r||"",t=t||{};for(var c=t.codeBegin||e.codeBegin,o=t.codeEnd||e.codeEnd,l=new RegExp(c,"gim"),a=new RegExp(o,"gim"),f=new RegExp("("+c+"(.|\\\n|\\\r)*?"+o+")","gim"),d=new RegExp(c+"\\s*=","gim"),s=[],g=r.match(f)||[],m=r.replace(f,"▎").split("▎")||[],v=0;v<m.length;v++){var x=n(m[v]),h=g[v];s.push('$.push("'+x+'")'),null!==h&&"undefined"!=typeof h&&(d.lastIndex=0,h=d.test(h)?"$.push("+h.replace(d,"").replace(a,"")+")":h.replace(l,"").replace(a,""),s.push(h))}s.push('return $.buffer.join("");');var w=function(e,n){return w.exec(e,n)};return u(function(){w.src=new Function("$","$$",s.join(";"))},"Template compile error"),w.exec=function(e,n){n=n||{};var r=i(w,e,[p,t.extend,n.extend]);return u(function(){return r.result=r.func.src.call(r.model,r,r.model)||"",n.returnHandler?r:r.result},"Template execute error")},w}e.version="3.6.8";var p={};e.codeBegin="<%",e.codeEnd="%>",e.extend=c,e.compile=function(e,n){return o(e,n)},e.parse=function(e,n,r,t){var u=o(e,r);return u(n,t)},e._createHandler=i,e._controlledExecute=u,e._inArray=t,"undefined"!=typeof window&&window.document&&(e.query=function(e){return window.document.getElementById(e)},e.bind=function(n){n=n||{};var t=n.query||e.query;if(n.el=n.el||n.element,n.el="string"==typeof n.el?t(n.el):n.el,n.tp=n.tp||n.template||n.el,n.tp="string"==typeof n.tp?t(n.tp)||n.tp:n.tp,n.tp&&n.el){var u=o(r(n.tp.innerHTML||n.tp),n);n.append?n.el.innerHTML+=u(n.model):n.el.innerHTML=u(n.model)}})}(function(){var e={};return"undefined"!=typeof exports&&(e=exports,e.env=e.env||[],e.env.push("commaonjs")),"function"==typeof define&&define.amd&&(e.env=e.env||[],e.env.push("amd"),define("tp",[],function(){return e})),(null==e.env||e.env.length<1)&&(e.env=e.env||[],e.env.push("general"),this.tp=e),e}());
!function(e){"use strict";function n(e){return e?(e=e.replace(new RegExp("\\{1}","gim"),"\\\\"),e=e.replace(new RegExp("\r{1}","gim"),""),e=e.replace(new RegExp("\n{1}","gim"),"\\n"),e=e.replace(new RegExp("\r{1}","gim"),"\\r"),e=e.replace(new RegExp('"{1}',"gim"),'\\"')):""}function r(e){return e?e.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&"):""}function t(e,n){for(var r in e)if(e[r]===n)return!0;return!1}function u(e,n){try{return e()}catch(r){throw r.message=r.message||"",r.stack=r.stack||"",r.message=n+" : "+r.message+"\r\n "+r.stack,r}}function i(e,n){if(e){n=n||p;for(var r in e){if(t(["func","push","model","buffer"],r))throw'Can not expand "'+r+' function"';n[r]=e[r]}}}function o(e,n,r){var t=function(e){t.push(e)};t.push=function(e){t.buffer.push(e)};for(var u in r)r[u]&&i(r[u],t);return t.func=e,t.model=null!==n&&void 0!=n?n:"",t.buffer=[],t}function c(r,t){r=r||"",t=t||{};for(var i=t.codeBegin||e.codeBegin,c=t.codeEnd||e.codeEnd,l=new RegExp(i,"gim"),a=new RegExp(c,"gim"),f=new RegExp("("+i+"(.|\\\n|\\\r)*?"+c+")","gim"),d=new RegExp(i+"\\s*=","gim"),s=[],g=r.match(f)||[],m=r.replace(f,"▎").split("▎")||[],v=0;v<m.length;v++){var x=n(m[v]),h=g[v];s.push('$.push("'+x+'")'),null!==h&&"undefined"!=typeof h&&(d.lastIndex=0,h=d.test(h)?"$.push("+h.replace(d,"").replace(a,"")+")":h.replace(l,"").replace(a,""),s.push(h))}s.push('return $.buffer.join("");');var w=function(e,n){return w.exec(e,n)};return u(function(){w.src=new Function("$","$$",s.join(";"))},"Template compile error"),w.exec=function(e,n){n=n||{};var r=o(w,e,[p,t.extend,n.extend]);return u(function(){return r.result=r.func.src.call(r.model,r,r.model)||"",n.returnHandler?r:r.result},"Template execute error")},w}e.version="3.6.9";var p={};e.codeBegin="<%",e.codeEnd="%>",e.extend=i,e.compile=function(e,n){return c(e,n)},e.parse=function(e,n,r,t){var u=c(e,r);return u(n,t)},e._createHandler=o,e._controlledExecute=u,e._inArray=t,"undefined"!=typeof window&&window.document&&(e.query=function(e){return window.document.getElementById(e)},e.bind=function(n){n=n||{};var t=n.query||e.query;if(n.el=n.el||n.element,n.el="string"==typeof n.el?t(n.el):n.el,n.tp=n.tp||n.template||n.el,n.tp="string"==typeof n.tp?t(n.tp)||n.tp:n.tp,n.tp&&n.el){var u=c(r(n.tp.innerHTML||n.tp),n);n.append?n.el.innerHTML+=u(n.model):n.el.innerHTML=u(n.model)}})}(function(){var e={};return"undefined"!=typeof exports&&(e=exports,e.env=e.env||[],e.env.push("commaonjs")),"function"==typeof define&&define.amd&&(e.env=e.env||[],e.env.push("amd"),define("tp",[],function(){return e})),(null==e.env||e.env.length<1)&&(e.env=e.env||[],e.env.push("general"),this.tp=e),e}());
{
"name": "tpjs",
"rawName": "tp",
"version": "3.6.8",
"version": "3.6.9",
"description": "最简洁高效的js模板引擎!",

@@ -37,3 +37,4 @@ "main": "./lib/tp.js",

"cmdline": "0.0.4",
"real-utils": "0.0.1"
"real-utils": "0.0.1",
"uglify-js": "^2.4.24"
},

@@ -40,0 +41,0 @@ "devDependencies": {

### TP 模板引擎
>欢迎使用tp! 最轻量,简洁,高效的javascript模板引擎!
>如同“tp”的名字,“轻量、简洁、高效”是tp的哲学!
>Tp 是一个 “轻量,简洁,高效” 的 javascript 模板引擎!
[![npm version](https://badge.fury.io/js/tpjs.svg)](http://badge.fury.io/js/tpjs)
### 简介
```
+ 轻量,tp是目前能见到最轻量的javascript模板引擎,只有一个不足1.5k的文件。
+ 简洁,tp的语法非常简单,对于一个熟悉html、js的开发人员来说学习难度为0。
+ 简洁,tp的语法非常简单,对于一个熟悉html、js的开发人员来说学习难度为 0。
+ 高效,tp支持模板预编译,快于任何一个你所见过的javascript模板引擎。

@@ -13,9 +14,3 @@ + 另外,tp同时支持在浏览器环境使用及服务端javascript环境(Node.js)使用。

### 最新版本
>v 3.6.8
### 许可协议
>[请您遵守LGPL协议,(点击可查看LGPL协议)](http://www.gnu.org/licenses/lgpl.html)
### 支持
### 联系作者
```

@@ -27,5 +22,5 @@ + 您可以发邮件到 admin@xhou.net

### 使用指南
### 在浏览器中吏用
##### 如何使用?
#### 在页面中引入
```

@@ -37,2 +32,7 @@ + 下载tp

#### AMD/CMD 方式引用
```javascript
var tp = require('相对路径');
```
#### 解析(tp.parse)

@@ -49,7 +49,7 @@ 代码:

#### 编译(tp.complite)
#### 编译(tp.compile)
代码:
```javascript
var html='<div>My name is <% $(name) %></div>';
var fn=tp.complite(html);
var fn=tp.compile(html);
var rs=fn({name:'tp'});

@@ -98,2 +98,31 @@ ```

</ul>
```
```
### 在 Node.js 中使用
#### 安装
```javascript
[sudo] npm install tpjs [-g]
```
#### 引用
```javascript
var tp = require('tpjs');
//解析
var rs = tp.parse(html,options);
//预编译
var fn = tp.compile(html,options);
```
#### 命令行工具
使用命令行工具需要全局安装 tpjs,如下
```javascript
[sudo] npm install tpjs -g
```
CLI 说明
```javascript
tp <src> <dst>
```
1. src: 源文件路径,相对于当前工作目录
2. dst: 输出的目标路径,相对于当前工作目录

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc