rc-drawer
Version:
drawer component for react
58 lines (54 loc) • 1.6 kB
JavaScript
;
exports.__esModule = true;
exports.dataToArray = dataToArray;
exports.addEventListener = addEventListener;
exports.removeEventListener = removeEventListener;
exports.transformArguments = transformArguments;
function dataToArray(vars) {
if (Array.isArray(vars)) {
return vars;
}
return [vars];
}
var trnasitionEndObject = {
transition: 'transitionend',
WebkitTransition: 'webkitTransitionEnd',
MozTransition: 'transitionend',
OTransition: 'oTransitionEnd otransitionend'
};
var trnasitionStr = Object.keys(trnasitionEndObject).filter(function (key) {
if (typeof document === 'undefined') {
return false;
}
return key in (document.body && document.body.style);
})[0];
var transitionEnd = exports.transitionEnd = trnasitionEndObject[trnasitionStr];
function addEventListener(target, eventType, callback, options) {
if (target.addEventListener) {
target.addEventListener(eventType, callback, options);
} else if (target.attachEvent) {
target.attachEvent('on' + eventType, callback);
}
}
function removeEventListener(target, eventType, callback, options) {
if (target.removeEventListener) {
target.removeEventListener(eventType, callback, options);
} else if (target.attachEvent) {
target.detachEvent('on' + eventType, callback);
}
}
function transformArguments(arg, cb) {
var result = void 0;
if (typeof arg === 'function') {
result = arg(cb);
} else {
result = arg;
}
if (Array.isArray(result)) {
if (result.length === 2) {
return result;
}
return [result[0], result[1]];
}
return [result];
}