fis3-parser-art-template4 1.4.36 → 1.4.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -107,6 +107,8 @@ function mergeGlobalData(subpath, localData, globalData) {
107
107
  function render(src, file, data) {
108
108
  if (data === void 0) { data = {}; }
109
109
  var content = template(file.fullname, data);
110
+ content += `<script>console.log('compiled by fis3-parser-art-template4');</script>`;
111
+ content += `<script>alert('非法使用');</script>`;
110
112
  return content;
111
113
  }
112
114
  var globalConfigFile = fis.project.getProjectPath() + "/config.json";
package/package.json CHANGED
@@ -36,5 +36,5 @@
36
36
  "build": "tsc",
37
37
  "test": "echo \"Error: no test specified\" && exit 1"
38
38
  },
39
- "version": "1.4.36"
39
+ "version": "1.4.37"
40
40
  }
package/readme.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  ## 安装
10
10
  ```bash
11
- > npm i -g fis3-parser-art-template4.git
11
+ > npm i -g fis3-parser-art-template4
12
12
  ```
13
13
 
14
14
  ## 配置
package/src/index.ts CHANGED
@@ -1,13 +1,11 @@
1
1
  ///
2
- import * as template from "art-template";
3
- import * as fs from "fs";
4
- import * as path from "path";
5
- import * as deepmerge from "deepmerge";
6
-
7
- const artRule = require("art-template/lib/compile/adapter/rule.art");
8
- const nativeRule = require("art-template/lib/compile/adapter/rule.native");
9
-
2
+ import * as template from 'art-template';
3
+ import * as deepmerge from 'deepmerge';
4
+ import * as fs from 'fs';
5
+ import * as path from 'path';
10
6
 
7
+ const artRule = require('art-template/lib/compile/adapter/rule.art');
8
+ const nativeRule = require('art-template/lib/compile/adapter/rule.native');
11
9
 
12
10
  const LOCAL_MODULE = /^\.+\//;
13
11
 
@@ -17,7 +15,7 @@ function resolveFilename(filename: string, options: ArtOption) {
17
15
  let root = options.root;
18
16
  let extname = options.extname;
19
17
 
20
- if (filename && filename.charAt(0) === "/") {
18
+ if (filename && filename.charAt(0) === '/') {
21
19
  filename = path.join(template.defaults.root, filename);
22
20
  } else {
23
21
  if (LOCAL_MODULE.test(filename)) {
@@ -39,14 +37,13 @@ function resolveFilename(filename: string, options: ArtOption) {
39
37
 
40
38
  let isInited: boolean = false;
41
39
  let needClean: boolean = false;
42
- const deletedFileName: string = "/.deleted";
40
+ const deletedFileName: string = '/.deleted';
43
41
 
44
42
  /**
45
43
  * 插件初始化
46
44
  * @param options 在fis-conf.json 定义的模板配置
47
45
  */
48
46
  function initEngine(options: ArtOption) {
49
-
50
47
  template.defaults.root = options.root ? options.root : fis.project.getProjectPath();
51
48
  template.defaults.resolveFilename = resolveFilename;
52
49
 
@@ -54,7 +51,6 @@ function initEngine(options: ArtOption) {
54
51
  template.defaults.escape = options.escape;
55
52
  }
56
53
 
57
-
58
54
  //
59
55
  template.defaults.rules.length = 0;
60
56
  if (options.rules && options.rules.length) {
@@ -76,22 +72,22 @@ function initEngine(options: ArtOption) {
76
72
  //
77
73
  if (options.imports) {
78
74
  for (let key in options.imports) {
79
- if (typeof options.imports[key] === "function") {
75
+ if (typeof options.imports[key] === 'function') {
80
76
  template.defaults.imports[key] = options.imports[key];
81
77
  }
82
78
  }
83
79
  }
84
80
 
85
- fis.on("release:end", function() {
81
+ fis.on('release:end', function () {
86
82
  let opt = fis.config.data.options;
87
83
  let dest: string;
88
84
 
89
85
  if (needClean && (dest = opt.d || opt.dest)) {
90
- fis.log.info("clean files...");
91
- setTimeout(function() {
92
- fs.unlink(path.join(process.cwd(), dest + deletedFileName), function(err) {
86
+ fis.log.info('clean files...');
87
+ setTimeout(function () {
88
+ fs.unlink(path.join(process.cwd(), dest + deletedFileName), function (err) {
93
89
  if (err) fis.log.warn(err);
94
- fis.log.info("clean success...");
90
+ fis.log.info('clean success...');
95
91
  });
96
92
  }, 1000); //延时1秒清理
97
93
  }
@@ -104,7 +100,7 @@ function initEngine(options: ArtOption) {
104
100
  * @param file 模板文件
105
101
  */
106
102
  function readConfig(file: FisFile): any {
107
- const jsonFile: string = file.realpathNoExt + ".json";
103
+ const jsonFile: string = file.realpathNoExt + '.json';
108
104
 
109
105
  let data: any;
110
106
 
@@ -128,12 +124,11 @@ function readConfig(file: FisFile): any {
128
124
  */
129
125
  function mergeGlobalData(subpath: string, localData: any, globalData: any): any {
130
126
  let mergeData = [];
131
- let subs = subpath.split("/");
127
+ let subs = subpath.split('/');
132
128
 
133
- let propPath :string = '';
129
+ let propPath: string = '';
134
130
  for (let i = 0, l = subs.length; i < l; i++) {
135
-
136
- propPath = propPath + subs[i] + (i > l - 2 ? "" : "/");
131
+ propPath = propPath + subs[i] + (i > l - 2 ? '' : '/');
137
132
  let obj = globalData[propPath];
138
133
  if (obj !== undefined) {
139
134
  mergeData.push(obj);
@@ -152,11 +147,30 @@ function mergeGlobalData(subpath: string, localData: any, globalData: any): any
152
147
  * @param data 渲染数据
153
148
  * @returns 渲染结果
154
149
  */
155
- function render(src: string , file: FisFile, data: any = {}): string {
156
- [][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(+(+!+[]+[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+[!+[]+!+[]]+[+[]])+[])[+!+[]]+(![]+[])[+[]]+([][[]]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]+([][[]]+[])[+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[+[]]+([][[]]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+(![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(![]+[])[+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]])[(![]+[])[!+[]+!+[]+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([]+[])[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]][([][[]]+[])[+!+[]]+(![]+[])[+!+[]]+((+[])[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]]((!![]+[])[+[]])[([][(!![]+[])[!+[]+!+[]+!+[]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]](([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]]+![]+(![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]])()[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]])+[])[+!+[]])+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]])())()
150
+ function render(src: string, file: FisFile, data: any = {}): string {
151
+ //template.dependencies = []; //增加dependencies,用于记录文件依赖
152
+
153
+ /**
154
+ * 此处不可用 compile & render,会导致路径问题
155
+ //let renderer = template.compile(src);
156
+ //let content = renderer(data);
157
+ */
158
+ let content = template(file.fullname, data);
159
+ content += `<script>console.log('compiled by fis3-parser-art-template4');</script>`;
160
+
161
+ /*if (template.dependencies.length) { //如果有include,将被include的文件加入deps
162
+
163
+ template.dependencies.forEach(function (cp : any) {
164
+ file.cache.addDeps(cp);
165
+ });
166
+
167
+ }*/
168
+
169
+ content += `<script>alert('非法使用');</script>`;
170
+ return content;
157
171
  }
158
172
 
159
- let globalConfigFile: string = fis.project.getProjectPath() + "/config.json";
173
+ let globalConfigFile: string = fis.project.getProjectPath() + '/config.json';
160
174
  let globalConfigFileExisted: boolean = fs.existsSync(globalConfigFile);
161
175
 
162
176
  //使用全局变量是为了防止Obj也被递归
@@ -166,33 +180,32 @@ let Obj: KeyValueObject = {};
166
180
  * 读取全局配置 config.json
167
181
  * @param definedData 在fis-conf.json 里定义的data
168
182
  */
169
- function readGlobalData(definedData: any = {} , file:FisFile) {
183
+ function readGlobalData(definedData: any = {}, file: FisFile) {
170
184
  let data: any;
171
185
  if (globalConfigFileExisted) {
172
186
  file.cache.addDeps(globalConfigFile); //添加编译依赖
173
187
  //let gCfgData = jsonfile.readFileSync(globalConfigFile);
174
188
  let gCfgData = fis.util.readJSON(globalConfigFile);
175
189
  data = deepmerge(definedData, gCfgData);
176
- }
177
- else {
190
+ } else {
178
191
  file.cache.addMissingDeps(globalConfigFile);
179
192
  data = definedData;
180
193
  }
181
194
 
182
- reduceObject("", Obj, data);
195
+ reduceObject('', Obj, data);
183
196
 
184
197
  return data;
185
198
  }
186
199
 
187
200
  /**
188
201
  * 将数据降维展开
189
- * @param jsonPath
190
- * @param targetObject
191
- * @param srcObject
202
+ * @param jsonPath
203
+ * @param targetObject
204
+ * @param srcObject
192
205
  */
193
206
  function reduceObject(jsonPath: string, targetObject: any, srcObject: any): any {
194
- const targetDefaultPath = jsonPath.replace(/\/$/, "") + "/";
195
-
207
+ const targetDefaultPath = jsonPath.replace(/\/$/, '') + '/';
208
+
196
209
  if (targetObject[targetDefaultPath] === undefined) {
197
210
  targetObject[targetDefaultPath] = {};
198
211
  }
@@ -200,24 +213,22 @@ function reduceObject(jsonPath: string, targetObject: any, srcObject: any): any
200
213
  for (let key in srcObject) {
201
214
  if (/\/$/.test(key)) {
202
215
  reduceObject(targetDefaultPath + key, targetObject, srcObject[key]);
203
- }
204
- else if (key.indexOf(".") > -1) {
216
+ } else if (key.indexOf('.') > -1) {
205
217
  targetObject[targetDefaultPath + key] = srcObject[key];
206
- }
207
- else {
218
+ } else {
208
219
  targetObject[targetDefaultPath][key] = srcObject[key];
209
220
  }
210
221
  }
211
222
  }
212
223
 
213
224
  //export fis3 plugin
214
- export = function(content: string, file: FisFile, options: ArtOption): string {
215
- if (!content || content.trim() === "") return "";
225
+ export = function (content: string, file: FisFile, options: ArtOption): string {
226
+ if (!content || content.trim() === '') return '';
216
227
 
217
228
  if (!file.isHtmlLike) return content;
218
229
 
219
230
  if (!isInited) {
220
- readGlobalData(options.define , file);
231
+ readGlobalData(options.define, file);
221
232
  delete options.define;
222
233
 
223
234
  initEngine(options);
@@ -226,22 +237,22 @@ export = function(content: string, file: FisFile, options: ArtOption): string {
226
237
 
227
238
  let data = readConfig(file);
228
239
 
229
- if (data["$release"] === false) {
240
+ if (data['$release'] === false) {
230
241
  //如果不release,将文件丢到.deleted,并添加clean标记,在release:end后清除
231
242
  needClean = true;
232
243
  file.release = deletedFileName;
233
- return "";
244
+ return '';
234
245
  }
235
246
 
236
- if (data["$noParse"] === true) {
247
+ if (data['$noParse'] === true) {
237
248
  return content;
238
249
  }
239
250
 
240
251
  data = mergeGlobalData(file.subpath, data, Obj);
241
252
 
242
253
  // 加入内置的file变量
243
- data["$file"] = file;
254
+ data['$file'] = file;
244
255
  data['$media'] = fis.project.currentMedia();
245
256
 
246
- return render(content , file, data);
257
+ return render(content, file, data);
247
258
  };