"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = applyMixins;

/**
 * mixins
 *
 * @export
 * @param {*} derivedCtor
 * @param {any[]} baseCtors
 */
function applyMixins(derivedCtor, baseCtors) {
  baseCtors.forEach(function (baseCtor) {
    Object.getOwnPropertyNames(baseCtor.prototype).forEach(function (name) {
      derivedCtor.prototype[name] = baseCtor.prototype[name];
    });
  });
}