{
    "parserOptions": {
        "ecmaVersion": 6,
        "sourceType": "module",
        "ecmaFeatures": {
            "jsx": true,
            "experimentalObjectRestSpread": true 
        }
    },
    "env": {
        "browser": true,
        "jquery": true
    },
    "extends": "eslint:recommended",
    "globals": {
        "Promise": false,
        "require": false,
        "__DEV__": false,
        "module": false,
        "process": false
    },
    "plugins": [
        "react"
    ],
    "root": true,
    "rules": {
        "array-bracket-spacing": ["error", "never"],
        "block-scoped-var": ["error"],
        "block-spacing": ["error", "always"],
        "brace-style": ["error", "1tbs", { "allowSingleLine": true }],
        "comma-spacing": ["error", { "before": false, "after": true }],
        "comma-style": ["error", "last"],
        "computed-property-spacing": ["error", "never"],
        "dot-location": ["error", "property"],
        "eol-last": ["error", "unix"],
        "indent": ["error", 4, { "SwitchCase": 1, "VariableDeclarator": { "var": 1, "let": 1, "const": 3 } }],
        "key-spacing": ["error", { "beforeColon": false, "afterColon": true }],
        "keyword-spacing": ["error", { "before": true, "after": true, "overrides": { "else": { "after": true }  } }],
        "linebreak-style": ["error", "unix"],
        "new-cap": ["error", { "newIsCap": true, "capIsNew": false }],
        "new-parens": ["error"],
        "no-alert": ["error"],
        "no-array-constructor": ["error"],
        "no-caller": ["error"],
        "no-eval": ["error"],
        "no-extra-bind": ["error"],
        "no-floating-decimal": ["error"],
        "no-implied-eval": ["error"],
        "no-labels": ["error"],
        "no-lone-blocks": ["error"],
        "no-lonely-if": ["error"],
        "no-loop-func": ["error"],
        "no-multi-spaces": ["error"],
        "no-multiple-empty-lines": ["error", { "max": 1, "maxBOF": 0, "maxEOF": 0 }],
        "no-native-reassign": ["error"],
        "no-new": ["error"],
        "no-new-func": ["error"],
        "no-new-wrappers": ["error"],
        "no-octal-escape": ["error"],
        "no-return-assign": ["error"],
        "no-script-url": ["error"],
        "no-self-compare": ["error"],
        "no-sequences": ["error"],
        "no-shadow": ["error"],
        "no-shadow-restricted-names": ["error"],
        "no-spaced-func": ["error"],
        "no-trailing-spaces": ["error"],
        "no-undef-init": ["error"],
        "no-unneeded-ternary": ["error"],
        "no-unused-vars": ["error", { "vars": "all", "args": "all", "argsIgnorePattern": "^_" }],
        "no-use-before-define": ["error", { "functions": true, "classes": false }],
        "no-useless-call": ["error"],
        "no-useless-concat": ["error"],
        "no-useless-escape": ["error"],
        "no-void": ["error"],
        "no-whitespace-before-property": ["error"],
        "no-with": ["error"],
        "object-curly-spacing": ["error", "always"],
        "operator-assignment": ["error", "always"],
        "operator-linebreak": ["error", "after"],
        "padded-blocks": ["error", "never"],
        "quote-props": ["error", "consistent"],
        "quotes": ["error", "single"],
        "radix": ["error"],
        "no-console": [1],
        "react/jsx-uses-react": "error",
        "react/jsx-uses-vars": "error",
        "semi": ["error", "always"],
        "semi-spacing": ["error", { "before": false, "after": true }],
        "space-before-blocks": ["error", "always"],
        "space-before-function-paren": ["error", "never"],
        "space-in-parens": ["error", "never"],
        "space-infix-ops": ["error"],
        "space-unary-ops": ["error", { "words": true, "nonwords": false }],
        "wrap-iife": ["error", "inside"]
    }
}
