cfgs.filter(function(cfg) { return is.hash(cfg); }).map(function(cfg, idx) { return _parseCompontent(cfg, idx, handler); })
parseSize(size, cfg, idx) { if (is.string(size)) { return size; } else if (is.fn(size)) { return size(cfg, idx); } else if (is.hash(size)) { return this.parseSize(size[idx], cfg, idx); } else { return null; } }
parseClassName(classNames) { if (!classNames) { return ''; } if (is.array(classNames)) { return classNames.join(' '); } else if (is.hash(classNames)) { return Object.keys(classNames).filter(function(className) { return classNames[className]; }).join(' '); } else { return Array.prototype.filter.call(arguments, _arrayEmptyFilter).join(' '); } }
function _assign(target, keyFilter, ...sources) { target = target || {}; sources.forEach(function(source) { if (is.hash(source)) { var keys = Object.keys(source); if (keyFilter) { keys = keys.filter(keyFilter); } keys.forEach(function(key) { target[key] = source[key]; }); } }); return target; }
css(el, attr, value) { checkEl(el); if (arguments.length === 2) { if (is.hash(attr)) { Object.keys(attr).forEach(function(att) { setStyle(el, att, attr[att]); }); } else { return getStyle(el, attr); } } else if (arguments.length === 3) { setStyle(el, attr, value); } else { throw 'Invalid Css Name'; } }
function registerAnimate(processor, parseTransition, option) { if (arguments.length === 1) { if (is.array(processor)) { processor.forEach(function(pro) { registerAnimate(pro); }) } else if (is.hash(processor)) { registerAnimate(processor.processor, processor.parseTransition, processor.option); } else { throw 'Invalid Param' } } else { /*if (!(AnimateProcessor.isPrototypeOf(processor))) { throw 'Invalid Processor'; }*/ if (transitionProcessorDefined.indexOf(processor) != -1) { throw 'Animate is Registered ' + processor; } if (!is.fn(parseTransition)) { throw 'Invalid Animate parseTransition'; } transitionDefines.push({ processor: processor, parseTransition: parseTransition, option: option }); transitionProcessorDefined.push(processor); } }
registerAnimate([{ processor: ClassNameAnimateProcessor, parseTransition(tran) { if (is.string(tran) && tran.trim()) { return tran; } else if (is.array(tran) && tran.filter(function(n) { return is.string(n) && n.trim(); }).length > 0) { return tran; } else if (is.hash(tran) && tran['class']) { return this.parseTransition(tran['class']); } return false; } }, { processor: StyleAnimateProcessor, parseTransition(tran) { if (is.hash(tran) && is.hash(tran['css'])) { return tran['css']; } } }, { processor: TweenFrameProcessor, parseTransition(tran) { if (is.hash(tran) && is.hash(tran['tween'])) { return tran['tween']; } } }]);
on(evt, callback) { if (is.string(evt) && is.fn(callback)) { if (this._eventTypes.indexOf(evt) === -1) { console.warn('event name is undefined.', this, arguments); } if (!is.array(this._listeners[evt])) { this._listeners[evt] = []; } array.uniquePush(this._listeners[evt], callback); return this.un.bind(this, evt, callback); } else if (arguments.length === 1) { if (is.array(evt)) { return Util.chainedFunc(evt.map(function(evt) { return this.on(evt.type, evt.handler); }.bind(this)), this); } else if (is.hash(evt)) { return Util.chainedFunc(Object.keys(evt).map(function(type) { return this.on(type, evt[type]); }.bind(this)), this); } } throw 'Invalid Param'; }
eq(source, target, deep) { if (source === target) { return true; } if (is.array(source) && is.array(target)) { return !source.some((v, i) => { var tv = target[i]; if (deep) { return !core.eq(v, tv, deep); } else { return tv !== v; } }); } else if (is.hash(source) && is.hash(target)) { Object.keys(source).some((key) => { var v = source[key], tv = target[key]; if (deep) { return !core.eq(v, tv, deep); } else { return tv !== v; } }); } return false; }
parseIconClassName(iconCls) { let iconClasses, isFa = false, i; if (!iconCls) { return ''; } if (is.string(iconCls)) { iconClasses = iconCls ? iconCls.split(/\s+/g) : [] } else if (is.array(iconCls)) { iconClasses = iconCls; } else if (is.hash(iconCls)) { iconClasses = Object.keys(classNames).filter(function(className) { return classNames[className]; }); } else { throw new Error('Invalid param', arguments); } for (i = 0; i < iconClasses.length; i++) { if (iconClasses[i].indexOf('fa-') == 0) { isFa = true; } } if (isFa && iconClasses.indexOf('fa') === -1) { iconClasses.splice(0, 0, 'fa'); } return iconClasses.join(' '); }