Socket
Socket
Sign inDemoInstall

ejs-prerender-loader

Package Overview
Dependencies
34
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.1.0-alpha.2 to 1.0.0

28

index.js

@@ -5,6 +5,3 @@ const ejs = require('ejs');

const merge = require('merge');
const path = require('path');
const pkg = require('./package.json');
const {

@@ -16,18 +13,13 @@ getBaseComponentsDir,

module.exports = function (source) {
console.log(`Invoking ejs-render-loader@${pkg.version}`, Object.keys(ejsPrerender));
// console.log('ejs-render-loader source', source);
this.cacheable && this.cacheable();
const config = getConfig();
// console.log('ejs-render-loader config', config);
const baseComponentsDir = getBaseComponentsDir(config);
// console.log('ejs-render-loader baseComponentsDir', baseComponentsDir);
const options = merge({
// Default options here
const defaultOptions = {
views: [baseComponentsDir],
}, utils.getOptions(this));
// options.client = true; // Messes with the include function
};
// console.log('ejs-render-loader options', options);
const options = merge(defaultOptions, utils.getOptions(this));
// options.client = true; // Removes the include() function in favor of a callback

@@ -39,6 +31,14 @@ const filename = utils.getRemainingRequest(this).replace(/^!/, "");

// Most plugins return this template function. I can't do that because the internal referenced
// are no longer in closure.
const template = ejs.compile(source, options);
console.log('template fn in loader', template.toString());
return 'module.exports = ' + template;
// Go ahead and invoke template function while it has closure.
const renderedTemplate = template();
// Create my own template function to return the rendered html.
// I may need to do something to protect backticks being used in the .ejs.
const templateFn = new Function(`return \`${renderedTemplate}\``);
return 'module.exports = ' + templateFn;
};
{
"name": "ejs-prerender-loader",
"version": "0.1.0-alpha.2",
"version": "1.0.0",
"description": "",

@@ -12,3 +12,2 @@ "main": "index.js",

"dependencies": {
"@piuccio/ejs-compiled-loader": "^3.0.0",
"ejs": "^3.0.1",

@@ -19,3 +18,3 @@ "ejs-prerender": "^1.1.0-beta.1",

},
"gitHead": "a04007753a61f0f363b1579d8e0277e2a7d6cbf4"
"gitHead": "7689b8076e625a5cf0c7c6b62e96f9de2e43306a"
}
SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc