Set up Grunt

Fixing up Grunt file to watch for directories

Exclude node modules folder from Jekyll built site
This commit is contained in:
Tetsuro
2015-07-25 13:48:45 -04:00
parent ae3d14bef5
commit 82249c99b3
2143 changed files with 389848 additions and 26 deletions
+122
View File
@@ -0,0 +1,122 @@
(function() {
var capitalize, names, prefix;
capitalize = function(str) {
return str.slice(0, 1).toUpperCase() + str.slice(1);
};
names = {
ie: 'IE',
ie_mob: 'IE Mobile',
ios_saf: 'iOS',
op_mini: 'Opera Mini',
op_mob: 'Opera Mobile',
and_chr: 'Chrome for Android',
and_ff: 'Firefox for Android',
and_uc: 'UC for Android'
};
prefix = function(name, transition, prefixes) {
var out;
out = ' ' + name + (transition ? '*' : '') + ': ';
out += prefixes.map(function(i) {
return i.replace(/^-(.*)-$/g, '$1');
}).join(', ');
out += "\n";
return out;
};
module.exports = function(prefixes) {
var atrules, browser, data, j, k, l, len, len1, len2, list, name, needTransition, out, props, ref, ref1, ref2, ref3, ref4, ref5, ref6, selector, selectors, string, transitionProp, useTransition, value, values, version, versions;
if (prefixes.browsers.selected.length === 0) {
return "No browsers selected";
}
versions = [];
ref = prefixes.browsers.selected;
for (j = 0, len = ref.length; j < len; j++) {
browser = ref[j];
ref1 = browser.split(' '), name = ref1[0], version = ref1[1];
name = names[name] || capitalize(name);
if (versions[name]) {
versions[name].push(version);
} else {
versions[name] = [version];
}
}
out = "Browsers:\n";
for (browser in versions) {
list = versions[browser];
list = list.sort(function(a, b) {
return parseFloat(b) - parseFloat(a);
});
out += ' ' + browser + ': ' + list.join(', ') + "\n";
}
atrules = '';
ref2 = prefixes.add;
for (name in ref2) {
data = ref2[name];
if (name[0] === '@' && data.prefixes) {
atrules += prefix(name, false, data.prefixes);
}
}
if (atrules !== '') {
out += "\nAt-Rules:\n" + atrules;
}
selectors = '';
ref3 = prefixes.add.selectors;
for (k = 0, len1 = ref3.length; k < len1; k++) {
selector = ref3[k];
if (selector.prefixes) {
selectors += prefix(selector.name, false, selector.prefixes);
}
}
if (selectors !== '') {
out += "\nSelectors:\n" + selectors;
}
values = '';
props = '';
useTransition = false;
needTransition = (ref4 = prefixes.add.transition) != null ? ref4.prefixes : void 0;
ref5 = prefixes.add;
for (name in ref5) {
data = ref5[name];
if (name[0] !== '@' && data.prefixes) {
transitionProp = needTransition && prefixes.data[name].transition;
if (transitionProp) {
useTransition = true;
}
props += prefix(name, transitionProp, data.prefixes);
}
if (!data.values) {
continue;
}
if (prefixes.transitionProps.some(function(i) {
return i === name;
})) {
continue;
}
ref6 = data.values;
for (l = 0, len2 = ref6.length; l < len2; l++) {
value = ref6[l];
string = prefix(value.name, false, value.prefixes);
if (values.indexOf(string) === -1) {
values += string;
}
}
}
if (useTransition) {
props += " * - can be used in transition\n";
}
if (props !== '') {
out += "\nProperties:\n" + props;
}
if (values !== '') {
out += "\nValues:\n" + values;
}
if (atrules === '' && selectors === '' && props === '' && values === '') {
out += '\nAwesome! Your browsers don\'t require any vendor prefixes.' + '\nNow you can remove Autoprefixer from build steps.';
}
return out;
};
}).call(this);