This commit is contained in:
DABH 2018-12-09 17:28:46 -08:00
parent 2631877f88
commit f487e8ebad
3 changed files with 19 additions and 12 deletions

View File

@ -2,3 +2,4 @@
/tests/
/.travis.yml
/screenshots
*.sw*

View File

@ -73,16 +73,22 @@ module['exports'] = function() {
} else {
if (typeof(theme[prop]) === 'string') {
colors[prop] = colors[theme[prop]];
} else {
var tmp = colors[theme[prop][0]];
for (var t = 1; t < theme[prop].length; t++) {
tmp = tmp[theme[prop][t]];
}
colors[prop] = tmp;
}
addProperty(prop, function() {
return colors[prop](this);
});
} else {
var themePropApplicator = function(str) {
var ret = str || this;
for (var t = 0; t < theme[prop].length; t++) {
ret = colors[theme[prop][t]](ret);
}
return ret;
};
addProperty(prop, themePropApplicator);
colors[prop] = function(str){
return themePropApplicator(str);
};
}
}
});
}

View File

@ -64,10 +64,10 @@ assert.equal(s, 'string');
colors.setTheme({custom: ['blue', 'bold', 'underline']});
assert.equal(colors.custom(s),
'\x1b[34m' + '\x1b[1m' + '\x1b[4m' + s +
'\x1b[24m' + '\x1b[22m' + '\x1b[39m' );
'\x1b[4m' + '\x1b[1m' + '\x1b[34m' + s +
'\x1b[39m' + '\x1b[22m' + '\x1b[24m' );
colors.setTheme({custom: ['red', 'italic', 'inverse']});
assert.equal(colors.custom(s),
'\x1b[31m' + '\x1b[3m' + '\x1b[7m' + s +
'\x1b[27m' + '\x1b[23m' + '\x1b[39m' );
'\x1b[7m' + '\x1b[3m' + '\x1b[31m' + s +
'\x1b[39m' + '\x1b[23m' + '\x1b[27m' );