all files / src/ options.js

100% Statements 19/19
100% Branches 14/14
100% Functions 2/2
100% Lines 16/16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46    11×   11×           11×                         8863× 8863×     3569× 3569×     3569× 3569×       1626× 1626× 272×     11×  
'use strict';
 
exports.__esModule = true;
 
var _util = require('./util');
 
/** Global options
 *	@public
 *	@namespace options {Object}
 */
exports['default'] = {
 
	/** If `true`, `prop` changes trigger synchronous component updates.
  *	@name syncComponentUpdates
  *	@type Boolean
  *	@default true
  */
	//syncComponentUpdates: true,
 
	/** Processes all created VNodes.
  *	@param {VNode} vnode	A newly-created VNode to normalize/process
  */
	vnode: function vnode(n) {
		var attrs = n.attributes;
		if (!attrs || _util.isFunction(n.nodeName)) return;
 
		// normalize className to class.
		var p = attrs.className;
		if (p) {
			attrs['class'] = p;
			delete attrs.className;
		}
 
		if (attrs['class']) normalize(attrs, 'class', _util.hashToClassName);
		if (attrs.style) normalize(attrs, 'style', _util.styleObjToCss);
	}
};
 
function normalize(obj, prop, fn) {
	var v = obj[prop];
	if (v && !_util.isString(v)) {
		obj[prop] = fn(v);
	}
}
module.exports = exports['default'];