From bab47bfa1dbaed1a6dce51261ef652fa9018dd00 Mon Sep 17 00:00:00 2001 From: lucasdevelop Date: Sat, 7 Aug 2021 18:44:57 +0200 Subject: [PATCH] del dist and gulpfile --- gulpfile.js | 20 -------------------- package.json | 10 ++++++---- src/engine.js | 11 +++++++---- src/scriptExecuter.js | 11 +++++++++-- test/core.render.test.js | 21 +++++++++++++++++++++ 5 files changed, 43 insertions(+), 30 deletions(-) delete mode 100644 gulpfile.js diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 70fd7d8..0000000 --- a/gulpfile.js +++ /dev/null @@ -1,20 +0,0 @@ -const gulp = require('gulp'); -const minify = require('gulp-minify'); - -gulp.task('build', function(done) { - var Src = './src/*js', - Dst = 'dist'; - gulp.src(Src) - .pipe(minify({ - ext:{ - - min:'.js' - }, - noSource: true, - exclude: ['tasks'], - ignoreFiles: ['.combo.js', '-min.js'] - })) - .pipe(gulp.dest(Dst)) - done(); - -}); diff --git a/package.json b/package.json index bee30a8..f65de5f 100644 --- a/package.json +++ b/package.json @@ -2,20 +2,19 @@ "name": "jsste", "version": "1.1.1", "description": "A Javascript Static Template Emgine", - "main": "dist/index.js", + "main": "src/index.js", "directories": { "test": "test" }, "files": [ - "dist", + "src", "package.json", "README.md", "LICENSE" ], "scripts": { "test": "mocha", - "build": "gulp build", - "publish": "npm run build && npm publish --access publish" + "publish": "npm publish --access publish" }, "repository": { "type": "git", @@ -34,6 +33,9 @@ "dependencies": { "jsdom": "^16.5.3" }, + "engines": { + "node": ">= 0.10.0" + }, "devDependencies": { "assert": "^2.0.0", "chai": "^4.3.4", diff --git a/src/engine.js b/src/engine.js index c3bded8..6186f94 100644 --- a/src/engine.js +++ b/src/engine.js @@ -3,7 +3,7 @@ const fs = require("fs"); //let appdir = path.join(__dirname, ".."); let app = {}; -app.__config = require("./config") +app.__config = require("./config"); app.config = app.__config.getConfig(); function escapeRegExp(string) { @@ -29,7 +29,7 @@ app.render = function (pagecode, templatecode) { if (pagecode != null || pagecode != undefined) { try { pagecode = JSON.parse(pagecode); - } catch{} + } catch {} } //TODO @@ -54,8 +54,11 @@ app.render = function (pagecode, templatecode) { for (let i in pagecode) { let value = undefined; - let re = new RegExp(/\d*_([A-Z]|[a-z])\w*_/g); - if (re.test(i)) continue; + if ( new RegExp(/\d*_([A-Z]|[a-z])\w*_/g).test(i)) continue; + if (new RegExp(/js\$([A-Z]*[a-z]*)\w+/g).test(i)) { + let SE = require("./scriptExecuter"); + pagecode[i] = SE(pagecode[i]); + } value = pagecode[i].toString(); templatecode = replaceAll(templatecode, "<[" + i + "]>", value); diff --git a/src/scriptExecuter.js b/src/scriptExecuter.js index 47f4cc6..570c49f 100644 --- a/src/scriptExecuter.js +++ b/src/scriptExecuter.js @@ -11,6 +11,8 @@ function Added() { } function exec(script) { + let result = undefined; + script = "".concat( Added.toString().replace(/^function\s*\S+\s*\([^)]*\)\s*\{|\}$/g, ""), script @@ -18,9 +20,14 @@ function exec(script) { script += "\n return outString;"; - let F = new Function(script); + try { + let F = new Function(script); - return F(); + result = F(); + } catch (error) { + result = error; + } + return result; } module.exports = exec; diff --git a/test/core.render.test.js b/test/core.render.test.js index b72d6bf..0b1e90c 100644 --- a/test/core.render.test.js +++ b/test/core.render.test.js @@ -38,6 +38,27 @@ function test() { result.should.equal("EXAMPLEEXAMPLE"); }); + it.skip("blub", function () { + let result = JSSTE_Engine.render( + { + js$test: `out('

'+ Date.now().toString() + '

')`, + test: "hallo", + js$test2: `test2`, + _STYLES_: ["./test/style"], + }, + ` + + <[test]> + + + + + <[js$test2]> + + ` + ); + console.log(result); + }); it("should not rendern _VAR_", function () { let template = "<[_VAR_]>";