1
0
mirror of https://github.com/S2-/minifyfromhtml.git synced 2025-08-03 04:10:04 +02:00

update node modules

This commit is contained in:
s2
2019-03-29 15:56:41 +01:00
parent f114871153
commit 89c32fb4e6
8347 changed files with 390123 additions and 159877 deletions

View File

@@ -3,8 +3,8 @@
module.exports = function mergeOptions(defaults, options) {
options = options || Object.create(null);
return [defaults, options].reduce(function (merged, optObj) {
Object.keys(optObj).forEach(function (key) {
return [defaults, options].reduce((merged, optObj) => {
Object.keys(optObj).forEach(key => {
merged[key] = optObj[key];
});

View File

@@ -1,18 +1,39 @@
'use strict';
var Mixin = module.exports = function (host) {
var originalMethods = {},
overriddenMethods = this._getOverriddenMethods(this, originalMethods);
class Mixin {
constructor(host) {
const originalMethods = {};
const overriddenMethods = this._getOverriddenMethods(this, originalMethods);
Object.keys(overriddenMethods).forEach(function (key) {
if (typeof overriddenMethods[key] === 'function') {
originalMethods[key] = host[key];
host[key] = overriddenMethods[key];
for (const key of Object.keys(overriddenMethods)) {
if (typeof overriddenMethods[key] === 'function') {
originalMethods[key] = host[key];
host[key] = overriddenMethods[key];
}
}
});
};
Mixin.prototype._getOverriddenMethods = function () {
throw new Error('Not implemented');
}
_getOverriddenMethods() {
throw new Error('Not implemented');
}
}
Mixin.install = function(host, Ctor, opts) {
if (!host.__mixins) {
host.__mixins = [];
}
for (let i = 0; i < host.__mixins.length; i++) {
if (host.__mixins[i].constructor === Ctor) {
return host.__mixins[i];
}
}
const mixin = new Ctor(host, opts);
host.__mixins.push(mixin);
return mixin;
};
module.exports = Mixin;