reflux-state-mixin
Version:
Reflux stores mixin adding 'state' syntax similar to React components. es6 classes supported
56 lines (48 loc) • 1.37 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.object = object;
exports.setProp = setProp;
exports.extend = extend;
exports.isFunction = isFunction;
function _typeof(obj) { return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj; }
//var utils = {};
function object(keys, vals) {
var o = {},
i = 0;
for (; i < keys.length; i++) {
o[keys[i]] = vals[i];
}
return o;
}
function isObject(obj) {
var type = typeof obj === 'undefined' ? 'undefined' : _typeof(obj);
return type === 'function' || type === 'object' && !!obj;
}
function setProp(obj, source, prop) {
if (Object.getOwnPropertyDescriptor && Object.defineProperty) {
var propertyDescriptor = Object.getOwnPropertyDescriptor(source, prop);
Object.defineProperty(obj, prop, propertyDescriptor);
} else {
obj[prop] = source[prop];
}
return obj;
}
function extend(obj) {
if (!isObject(obj)) {
return obj;
}
var source, prop;
for (var i = 1, length = arguments.length; i < length; i++) {
source = arguments[i];
for (prop in source) {
obj = setProp(obj, source, prop);
}
}
return obj;
}
function isFunction(value) {
return typeof value === 'function';
}
//module.exports = utils;