Socket
Socket
Sign inDemoInstall

mithril-node-render

Package Overview
Dependencies
0
Maintainers
1
Versions
43
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.1.2 to 0.1.3

29

index.js
'use strict';
var omitAttrs = [
'config',
'onmousedown',
'onmousemove',
'onmouseover',
'onclick',
'onmouseout'
];
function isArray(thing) {

@@ -23,17 +14,17 @@ return Object.prototype.toString.call(thing) === '[object Array]';

if (!Object.keys(attrs).length) {
return '';
return;
}
return ' ' + Object.keys(attrs).map(function(name) {
if (omitAttrs.indexOf(name) >= 0) {
return '';
return Object.keys(attrs).map(function(name) {
if (typeof attrs[name] === 'function') {
return;
}
if (name === 'style') {
var styles = attrs.style;
return 'style="' + Object.keys(styles).map(function(property) {
return ' style="' + Object.keys(styles).map(function(property) {
return [camelToDash(property).toLowerCase(), styles[property]].join(':');
}).join(';') + '"';
}
return (name === 'className' ? 'class' : name) + '="' + attrs[name] + '"';
}).join(' ');
return ' ' + (name === 'className' ? 'class' : name) + '="' + attrs[name] + '"';
}).join('');
}

@@ -73,5 +64,9 @@

}
var children = createChildrenContent(view);
if (!children) {
return ['<', view.tag, createAttrString(view.attrs), ' />'].join('');
}
return [
'<', view.tag, createAttrString(view.attrs), '>',
createChildrenContent(view),
children,
'</', view.tag, '>',

@@ -78,0 +73,0 @@ ].join('');

{
"name": "mithril-node-render",
"version": "0.1.2",
"version": "0.1.3",
"description": "Node rending of mithril views",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -8,13 +8,21 @@ 'use strict';

test('render', function(t) {
t.equal(render(m('span')), '<span></span>', 'should render tag');
t.equal(render(m('.foo')), '<div class="foo"></div>', 'should render classname');
t.equal(render(m('#bar')), '<div id="bar"></div>', 'should render id');
t.equal(render(m('span', 'content')),
'<span>content</span>', 'should render tag');
t.equal(render(m('.foo', 'content')),
'<div class="foo">content</div>', 'should render classname');
t.equal(render(m('#bar', 'content')),
'<div id="bar">content</div>', 'should render id');
t.equal(render(m('br')), '<br />', 'should render short nodes when no children');
t.equal(render(m('span', {
'data-foo': 'bar',
selected: 'selected'
})), '<span data-foo="bar" selected="selected"></span>', 'should render attributes');
})), '<span data-foo="bar" selected="selected" />', 'should render attributes');
t.equal(render(m('ul', 'huhu')), '<ul>huhu</ul>', 'should render string');
t.equal(render([m('span'), m('div')]), '<span></span><div></div>', 'should render arrays');
t.equal(render(m('span', m('div'))), '<span><div></div></span>', 'should render children');
t.equal(render([m('span', 'foo'), m('div', 'bar')]),
'<span>foo</span><div>bar</div>', 'should render arrays');
t.equal(render(m('span', m('div'))), '<span><div /></span>', 'should render children');
t.equal(render(m('span', {
onmousemove: function(event) {}
})), '<span />', 'should not render events');
t.equal(render(m('span', {
style: {

@@ -24,4 +32,4 @@ paddingLeft: '10px',

}
})), '<span style="padding-left:10px;color:red"></span>', 'should render children');
})), '<span style="padding-left:10px;color:red" />', 'should render children');
t.end();
});
SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc