Skip to content

Commit

Permalink
eslintrc + some lint fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
Eduárd Pocstár committed May 15, 2016
1 parent 3a1963b commit c5d5c7f
Show file tree
Hide file tree
Showing 3 changed files with 163 additions and 21 deletions.
152 changes: 152 additions & 0 deletions .eslintrc
@@ -0,0 +1,152 @@
{
"env": {
"node": true
},
"rules": {
"accessor-pairs": [2],
"block-scoped-var": [2],
"callback-return": [2],
"complexity": [2, 20],
"consistent-return": [2],
"consistent-this": [2, "self"],
"constructor-super": [2],
"default-case": [2],
"eqeqeq": [2],
"func-style": [0],
"global-require": [2],
"guard-for-in": [0],
"handle-callback-err": [2, "^err(or)?$"],
"id-length": [0],
"id-match": [0],
"init-declarations": [0],
"max-depth": [2, 6],
"max-nested-callbacks": [0],
"max-params": [2, 3],
"max-statements": [0],
"new-parens": [0],
"no-alert": [2],
"no-array-constructor": [0],
"no-bitwise": [0],
"no-caller": [2],
"no-case-declarations": [2],
"no-catch-shadow": [2],
"no-class-assign": [2],
"no-cond-assign": [2],
"no-console": [0],
"no-const-assign": [2],
"no-constant-condition": [0],
"no-continue": [0],
"no-control-regex": [2],
"no-debugger": [2],
"no-delete-var": [2],
"no-div-regex": [0],
"no-dupe-args": [2],
"no-dupe-class-members": [2],
"no-dupe-keys": [2],
"no-duplicate-case": [2],
"no-else-return": [0],
"no-empty-character-class": [2],
"no-empty-pattern": [2],
"no-empty": [2],
"no-eq-null": [2],
"no-eval": [2],
"no-ex-assign": [2],
"no-extend-native": [0],
"no-extra-bind": [2],
"no-extra-boolean-cast": [2],
"no-extra-parens": [2],
"no-extra-semi": [2],
"no-fallthrough": [2],
"no-floating-decimal": [2],
"no-func-assign": [2],
"no-implicit-coercion": [2],
"no-implicit-globals": [0],
"no-implied-eval": [2],
"no-inline-comments": [0],
"no-inner-declarations": [2],
"no-invalid-regexp": [2],
"no-invalid-this": [0],
"no-irregular-whitespace": [2],
"no-iterator": [2],
"no-label-var": [2],
"no-labels": [0],
"no-lone-blocks": [2],
"no-lonely-if": [2],
"no-loop-func": [2],
"no-magic-numbers": [0],
"no-mixed-requires": [0],
"no-multi-str": [2],
"no-native-reassign": [2],
"no-negated-condition": [0],
"no-negated-in-lhs": [2],
"no-nested-ternary": [0],
"no-new-func": [0],
"no-new-object": [2],
"no-new-require": [0],
"no-new-wrappers": [2],
"no-new": [2],
"no-obj-calls": [2],
"no-octal-escape": [2],
"no-octal": [2],
"no-param-reassign": [2],
"no-path-concat": [2],
"no-plusplus": [0],
"no-process-env": [2],
"no-process-exit": [0],
"no-proto": [2],
"no-redeclare": [2],
"no-regex-spaces": [0],
"no-restricted-imports": [0],
"no-restricted-syntax": [0],
"no-return-assign": [2],
"no-script-url": [0],
"no-self-compare": [2],
"no-sequences": [2],
"no-shadow-restricted-names": [2],
"no-shadow": [2],
"no-sparse-arrays": [2],
"no-sync": [0],
"no-ternary": [0],
"no-this-before-super": [2],
"no-throw-literal": [2],
"no-undef-init": [0],
"no-undef": [2],
"no-undefined": [0],
"no-unneeded-ternary": [2],
"no-unreachable": [2],
"no-unused-expressions": [2],
"no-unused-vars": [2],
"no-use-before-define": [0],
"no-useless-call": [2],
"no-useless-concat": [2],
"no-var": [0],
"no-void": [0],
"no-with": [2],
"object-shorthand": [0],
"one-var": [0],
"operator-assignment": [2, "always"],
"prefer-arrow-callback": [0],
"prefer-const": [0],
"prefer-reflect": [0],
"prefer-rest-params": [0],
"prefer-spread": [0],
"prefer-template": [0],
"quotes": [0],
"radix": [2, "as-needed"],
"require-yield": [0],
"sort-imports": [0],
"sort-vars": [0],
"strict": [0],
"use-isnan": [2],
"valid-typeof": [2],
"vars-on-top": [0],
"wrap-iife": [2, "inside"],
"wrap-regex": [0],
"yoda": [0],

"camelcase": [0],
"key-spacing": [0],
"quote-props": [0],
"spaced-comment": [0]
}
}
31 changes: 10 additions & 21 deletions index.js
Expand Up @@ -3,23 +3,17 @@ var extend = require('util')._extend;

module.exports = postcss.plugin('postcss-high-contrast', function (opts) {
opts = extend({

aggressiveHC: true,
aggressiveHCDefaultSelectorList: ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'li', 'th', 'td'],
aggressiveHCCustomSelectorList: ['div', 'span'],

backgroundColor: '#000',
altBgColor: '#fff',

textColor: '#fff',

linkColor: '#fcff3c',
linkHoverColor: '#000',

borderColor: '#fff',
disableShadow: true

}, opts);
});

var pattern = /(#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})|(rgb|rgba)\((?:\s*\d{1,3}\s*%?\s*,?\s*){3,4}\))/;

Expand All @@ -29,27 +23,27 @@ module.exports = postcss.plugin('postcss-high-contrast', function (opts) {
var selectors = prop.split(SELECTOR_SPLIT_PATTERN);

for (var i=0; i < selectors.length; i++){
if(array.indexOf(selectors[i]) != -1){
if(array.indexOf(selectors[i]) !== -1){
retValue = true;
break;
}
}
return retValue;
};
}

return function (css, result) {
return function (css) {

if (opts.aggressiveHC) {
css.walkRules( function (rule) {

var hasColor = rule.nodes.filter( function (node) {
var props = ['color'];
return props.indexOf(node.prop) !== -1;
}).length;

// Aggressive HC
if (propInArray(opts.aggressiveHCDefaultSelectorList, rule.selector)) {

var hasColor = rule.nodes.filter( function (node) {
var props = ['color'];
return props.indexOf(node.prop) != -1;
}).length;

if (!hasColor) {
rule.append({prop: 'color', value: opts.textColor});
} else {
Expand All @@ -63,11 +57,6 @@ module.exports = postcss.plugin('postcss-high-contrast', function (opts) {

if (propInArray(opts.aggressiveHCCustomSelectorList, rule.selector)) {

var hasColor = rule.nodes.filter( function (node) {
var props = ['color'];
return props.indexOf(node.prop) != -1;
}).length;

if (!hasColor) {
rule.append({prop: 'color', value: opts.textColor});
} else {
Expand All @@ -84,7 +73,7 @@ module.exports = postcss.plugin('postcss-high-contrast', function (opts) {
// Check if body has background or background-color
var hasBg = rule.nodes.filter( function (node) {
var props = ['background', 'background-color'];
return props.indexOf(node.prop) != -1;
return props.indexOf(node.prop) !== -1;
}).length;

// Set background color of body
Expand Down
1 change: 1 addition & 0 deletions package.json
Expand Up @@ -25,6 +25,7 @@
"eslint-config-postcss": "^2.0.2"
},
"scripts": {
"lint": "eslint *.js --ignore-path .gitignore && jscs *.js",
"test": "ava && eslint test/test.js"
},
"eslintConfig": {
Expand Down

0 comments on commit c5d5c7f

Please sign in to comment.