1+ require ( "babel-register" ) ;
12const reactDom = require ( 'react-dom' ) ;
23const React = require ( 'react' ) ;
3- var ReactDOMServer = require ( 'react-dom/server' ) ;
4- require ( "babel-register" ) ;
4+ const ReactDOMServer = require ( 'react-dom/server' ) ;
5+ const escapeHtml = require ( 'escape-html' ) ;
56
67module . exports . register = function ( component ) {
7- var componentName = Object . keys ( component ) [ 0 ] ;
8- var dest = document . getElementById ( 'react-helper-component-' + componentName . toLowerCase ( ) ) ;
8+ const componentName = Object . keys ( component ) [ 0 ] ;
9+ const dest = document . getElementById ( 'react-helper-component-' + componentName . toLowerCase ( ) ) ;
910 if ( dest ) {
10- var propString = dest . getAttribute ( 'data-component-properties' ) ;
11- var props = { } ;
11+ const propString = dest . getAttribute ( 'data-component-properties' ) ;
12+ let props = { } ;
1213 if ( propString ) {
1314 props = JSON . parse ( propString ) ;
1415 }
@@ -19,8 +20,8 @@ module.exports.register = function(component) {
1920} ;
2021
2122module . exports . renderComponent = function ( component , props ) {
22- var propsString = JSON . stringify ( props ) || '' ;
23- var content = '' ;
23+ const propsString = escapeHtml ( JSON . stringify ( props ) ) || '' ;
24+ let content = '' ;
2425 if ( typeof component === 'function' ) {
2526 content = ReactDOMServer . renderToString ( React . createElement ( component , props ) )
2627 component = component . name
@@ -31,5 +32,5 @@ module.exports.renderComponent = function(component, props) {
3132 component = component . name
3233 }
3334 }
34- return '<div id="react-helper-component-' + component . toLowerCase ( ) + '" data-component-properties=' + propsString + '>' + content + '</div>' ;
35+ return '<div id="react-helper-component-' + component . toLowerCase ( ) + '" data-component-properties=" ' + propsString + '" >' + content + '</div>' ;
3536} ;
0 commit comments