**/vendor/
/_gh_pages/
/js/coverage/
+/site/sw.js
/package.js
{
"root": true,
- "parser": "babel-eslint",
- "env": {
- "browser": true,
- "es6": true
- },
- "extends": ["eslint:recommended"],
+ "extends": [
+ "plugin:import/errors",
+ "plugin:import/warnings",
+ "plugin:unicorn/recommended",
+ "xo/esnext",
+ "xo/browser"
+ ],
"rules": {
- // Possible Errors
- "no-await-in-loop": "error",
- "no-extra-parens": "error",
- "no-prototype-builtins": "error",
- "no-template-curly-in-string": "error",
- "valid-jsdoc": "error",
-
- // Best Practices
- "accessor-pairs": "error",
- "array-callback-return": "error",
- "block-scoped-var": "error",
- "class-methods-use-this": "off",
- "complexity": "error",
- "consistent-return": "error",
- "curly": "error",
- "default-case": "error",
- "dot-location": ["error", "property"],
- "dot-notation": "error",
- "eqeqeq": "error",
- "guard-for-in": "error",
- "no-alert": "error",
- "no-caller": "error",
- "no-console": "error",
- "no-div-regex": "error",
- "no-else-return": "error",
- "no-empty-function": "error",
- "no-eq-null": "error",
- "no-eval": "error",
- "no-extend-native": "error",
- "no-extra-bind": "error",
- "no-extra-label": "error",
- "no-floating-decimal": "error",
- "no-implicit-coercion": "error",
- "no-implicit-globals": "error",
- "no-implied-eval": "error",
- "no-invalid-this": "off",
- "no-iterator": "error",
- "no-labels": "error",
- "no-lone-blocks": "error",
- "no-loop-func": "error",
- "no-magic-numbers": ["error", {
- "ignore": [-1, 0, 1],
- "ignoreArrayIndexes": true
+ "capitalized-comments": "off",
+ "indent": [
+ "error",
+ 2,
+ {
+ "MemberExpression": "off",
+ "SwitchCase": 1
}
],
- "no-multi-spaces": ["error", {
- "ignoreEOLComments": true,
- "exceptions": {
- "AssignmentExpression": true,
- "ArrowFunctionExpression": true,
- "CallExpression": true,
- "VariableDeclarator": true
- }
- }
+ "max-params": [
+ "warn",
+ 5
],
- "no-multi-str": "error",
- "no-new": "error",
- "no-new-func": "error",
- "no-new-wrappers": "error",
- "no-octal-escape": "error",
- "no-param-reassign": "off",
- "no-proto": "error",
- "no-restricted-properties": "error",
- "no-return-assign": "error",
- "no-return-await": "error",
- "no-script-url": "error",
- "no-self-compare": "error",
- "no-sequences": "error",
- "no-throw-literal": "error",
- "no-unmodified-loop-condition": "error",
- "no-unused-expressions": "error",
- "no-useless-call": "error",
- "no-useless-concat": "error",
- "no-useless-return": "error",
- "no-void": "error",
- "no-warning-comments": "off",
- "no-with": "error",
- "prefer-promise-reject-errors": "error",
- "radix": "error",
- "require-await": "error",
- "vars-on-top": "error",
- "wrap-iife": "error",
- "yoda": "error",
-
- // Strict Mode
- "strict": "error",
-
- // Variables
- "init-declarations": "off",
- "no-catch-shadow": "error",
- "no-label-var": "error",
- "no-restricted-globals": "error",
- "no-shadow": "off",
- "no-shadow-restricted-names": "error",
- "no-undef-init": "error",
- "no-use-before-define": "off",
-
- // Node.js and CommonJS
- "callback-return": "off",
- "global-require": "error",
- "handle-callback-err": "error",
- "no-mixed-requires": "error",
- "no-new-require": "error",
- "no-path-concat": "error",
- "no-process-exit": "error",
- "no-restricted-modules": "error",
- "no-sync": "error",
-
- // Stylistic Issues
- "array-bracket-spacing": "error",
- "block-spacing": "error",
- "brace-style": "error",
- "camelcase": "error",
- "capitalized-comments": "off",
- "comma-dangle": "error",
- "comma-spacing": "error",
- "comma-style": "error",
- "computed-property-spacing": "error",
- "consistent-this": "error",
- "eol-last": "error",
- "func-call-spacing": "error",
- "func-name-matching": "error",
- "func-names": "off",
- "func-style": ["error", "declaration"],
- "id-blacklist": "error",
- "id-length": "off",
- "id-match": "error",
- "indent": ["error", 2, { "SwitchCase": 1 }],
- "jsx-quotes": "error",
- "key-spacing": "off",
- "keyword-spacing": "error",
- "linebreak-style": ["error", "unix"],
- "line-comment-position": "off",
- "lines-around-comment": "off",
- "lines-around-directive": "error",
- "max-depth": ["error", 10],
- "max-len": "off",
- "max-lines": "off",
- "max-nested-callbacks": "error",
- "max-params": "off",
- "max-statements": "off",
- "max-statements-per-line": "error",
- "multiline-ternary": "off",
- "new-cap": ["error", { "capIsNewExceptionPattern": "$.*" }],
- "newline-after-var": "off",
- "newline-per-chained-call": ["error", { "ignoreChainWithDepth": 5 }],
- "new-parens": "error",
- "no-array-constructor": "error",
- "no-bitwise": "error",
- "no-continue": "off",
- "no-inline-comments": "off",
- "no-lonely-if": "error",
+ "new-cap": "off",
+ "no-console": "error",
"no-mixed-operators": "off",
- "no-multi-assign": "error",
- "no-multiple-empty-lines": "error",
- "nonblock-statement-body-position": "error",
"no-negated-condition": "off",
- "no-nested-ternary": "error",
- "no-new-object": "error",
- "no-plusplus": "off",
- "no-restricted-syntax": "error",
- "no-tabs": "error",
- "no-ternary": "off",
- "no-trailing-spaces": "error",
- "no-underscore-dangle": "off",
- "no-unneeded-ternary": "error",
- "no-whitespace-before-property": "error",
- "object-curly-spacing": ["error", "always"],
- "object-property-newline": "error",
- "one-var": ["error", "never"],
- "one-var-declaration-per-line": "error",
- "operator-assignment": "error",
- "operator-linebreak": "error",
- "padded-blocks": ["error", "never"],
- "padding-line-between-statements": "off",
- "quote-props": ["error", "as-needed"],
- "quotes": ["error", "single"],
- "require-jsdoc": "off",
- "semi": ["error", "never"],
- "semi-spacing": "error",
- "sort-keys": "off",
- "sort-vars": "error",
- "space-before-blocks": "error",
- "space-before-function-paren": ["error", {
- "anonymous": "always",
- "named": "never"
- }],
- "space-in-parens": "error",
- "space-infix-ops": "error",
- "space-unary-ops": "error",
- "spaced-comment": "error",
- "template-tag-spacing": "error",
- "unicode-bom": "error",
- "wrap-regex": "off",
-
- // ECMAScript 6
- "arrow-body-style": ["error", "as-needed"],
- "arrow-parens": "error",
- "arrow-spacing": "error",
- "generator-star-spacing": "error",
- "no-confusing-arrow": "error",
- "no-duplicate-imports": "error",
- "no-restricted-imports": "error",
- "no-useless-computed-key": "error",
- "no-useless-constructor": "error",
- "no-useless-rename": "error",
- "no-var": "error",
- "object-shorthand": "error",
- "prefer-arrow-callback": "error",
- "prefer-const": "error",
- "prefer-destructuring": "off",
- "prefer-numeric-literals": "error",
- "prefer-rest-params": "error",
- "prefer-spread": "error",
- "prefer-template": "error",
- "rest-spread-spacing": "error",
- "sort-imports": "error",
- "symbol-description": "error",
- "template-curly-spacing": "error",
- "yield-star-spacing": "error"
+ "object-curly-spacing": [
+ "error",
+ "always"
+ ],
+ "prefer-named-capture-group": "off",
+ "semi": [
+ "error",
+ "never"
+ ],
+ "unicorn/consistent-function-scoping": "off",
+ "unicorn/explicit-length-check": "off",
+ "unicorn/import-index": "off",
+ "unicorn/no-fn-reference-in-iterator": "off",
+ "unicorn/no-for-loop": "off",
+ "unicorn/no-null": "off",
+ "unicorn/no-unused-properties": "error",
+ "unicorn/no-useless-undefined": "off",
+ "unicorn/prefer-array-find": "off",
+ "unicorn/prefer-dataset": "off",
+ "unicorn/prefer-includes": "off",
+ "unicorn/prefer-node-append": "off",
+ "unicorn/prefer-node-remove": "off",
+ "unicorn/prefer-number-properties": "off",
+ "unicorn/prefer-optional-catch-binding": "off",
+ "unicorn/prefer-query-selector": "off",
+ "unicorn/prefer-reflect-apply": "off",
+ "unicorn/prefer-set-has": "off",
+ "unicorn/prevent-abbreviations": "off"
}
}
},
"extends": "../.eslintrc.json",
"rules": {
- "consistent-return": "off",
- "func-style": "off",
"no-console": "off",
- "no-magic-numbers": "off",
- "no-process-exit": "off",
- "no-sync": "off",
- "spaced-comment": "off"
+ "strict": "error"
}
}
{
- "env": {
- "es6": false,
- "jquery": true,
- "qunit": true
- },
- "globals": {
- "bootstrap": false,
- "sinon": false,
- "Util": false,
- "Alert": false,
- "Button": false,
- "Carousel": false,
- "Simulator": false,
- "Toast": false
- },
- "parserOptions": {
- "ecmaVersion": 5,
- "sourceType": "script"
- },
- "extends": "../../../.eslintrc.json",
- "rules": {
- "no-console": "error",
- // Best Practices
- "consistent-return": "off",
- "no-magic-numbers": "off",
- "vars-on-top": "off",
-
- // Stylistic Issues
- "func-style": "off",
- "spaced-comment": "off",
-
- // ECMAScript 6
- "no-var": "off",
- "object-shorthand": "off",
- "prefer-arrow-callback": "off",
- "prefer-template": "off",
- "prefer-rest-params": "off"
- }
+ "extends": [
+ "../../../.eslintrc.json"
+ ],
+ "overrides": [
+ {
+ "files": [
+ "*.js"
+ ],
+ "env": {
+ "es6": false,
+ "jquery": true,
+ "qunit": true
+ },
+ "globals": {
+ "bootstrap": false,
+ "sinon": false,
+ "Util": false,
+ "Alert": false,
+ "Button": false,
+ "Carousel": false,
+ "Simulator": false,
+ "Toast": false
+ },
+ "rules": {
+ // ES6
+ "no-var": "off",
+ "object-shorthand": "off",
+ "prefer-arrow-callback": "off",
+ "prefer-template": "off",
+ "prefer-rest-params": "off"
+ }
+ }
+ ]
}
"integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
"dev": true
},
+ "@types/json5": {
+ "version": "0.0.29",
+ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+ "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=",
+ "dev": true
+ },
"@types/minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=",
"dev": true
},
+ "array-includes": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz",
+ "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.17.0",
+ "is-string": "^1.0.5"
+ }
+ },
"array-union": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
"dev": true,
"optional": true
},
+ "array.prototype.flat": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz",
+ "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.17.0-next.1"
+ }
+ },
"arraybuffer.slice": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz",
}
}
},
+ "clean-regexp": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz",
+ "integrity": "sha1-jffHquUf02h06PjQW5GAvBGj/tc=",
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "^1.0.5"
+ }
+ },
"cli-boxes": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz",
}
}
},
+ "confusing-browser-globals": {
+ "version": "1.0.9",
+ "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz",
+ "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==",
+ "dev": true
+ },
"connect": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
"dev": true
},
+ "contains-path": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz",
+ "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=",
+ "dev": true
+ },
"content-type": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
}
}
},
+ "eslint-ast-utils": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-ast-utils/-/eslint-ast-utils-1.1.0.tgz",
+ "integrity": "sha512-otzzTim2/1+lVrlH19EfQQJEhVJSu0zOb9ygb3iapN6UlyaDtyRq4b5U1FuW0v1lRa9Fp/GJyHkSwm6NqABgCA==",
+ "dev": true,
+ "requires": {
+ "lodash.get": "^4.4.2",
+ "lodash.zip": "^4.2.0"
+ }
+ },
+ "eslint-config-xo": {
+ "version": "0.32.1",
+ "resolved": "https://registry.npmjs.org/eslint-config-xo/-/eslint-config-xo-0.32.1.tgz",
+ "integrity": "sha512-achnYLilUTtljR1CGRikVj9HRAf5GplJeGgeyQMvph7mKo+AqTkNuig4EO/IrNOChcjoazgw9YT4cW/3+69i3Q==",
+ "dev": true,
+ "requires": {
+ "confusing-browser-globals": "1.0.9"
+ }
+ },
+ "eslint-import-resolver-node": {
+ "version": "0.3.4",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz",
+ "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==",
+ "dev": true,
+ "requires": {
+ "debug": "^2.6.9",
+ "resolve": "^1.13.1"
+ }
+ },
+ "eslint-module-utils": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz",
+ "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==",
+ "dev": true,
+ "requires": {
+ "debug": "^2.6.9",
+ "pkg-dir": "^2.0.0"
+ }
+ },
+ "eslint-plugin-import": {
+ "version": "2.22.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz",
+ "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==",
+ "dev": true,
+ "requires": {
+ "array-includes": "^3.1.1",
+ "array.prototype.flat": "^1.2.3",
+ "contains-path": "^0.1.0",
+ "debug": "^2.6.9",
+ "doctrine": "1.5.0",
+ "eslint-import-resolver-node": "^0.3.3",
+ "eslint-module-utils": "^2.6.0",
+ "has": "^1.0.3",
+ "minimatch": "^3.0.4",
+ "object.values": "^1.1.1",
+ "read-pkg-up": "^2.0.0",
+ "resolve": "^1.17.0",
+ "tsconfig-paths": "^3.9.0"
+ },
+ "dependencies": {
+ "doctrine": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz",
+ "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=",
+ "dev": true,
+ "requires": {
+ "esutils": "^2.0.2",
+ "isarray": "^1.0.0"
+ }
+ },
+ "find-up": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
+ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^2.0.0"
+ }
+ },
+ "load-json-file": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
+ "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "strip-bom": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
+ "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^2.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
+ "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
+ "dev": true,
+ "requires": {
+ "p-try": "^1.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
+ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^1.1.0"
+ }
+ },
+ "p-try": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
+ "dev": true
+ },
+ "parse-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
+ "dev": true,
+ "requires": {
+ "error-ex": "^1.2.0"
+ }
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "path-type": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz",
+ "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=",
+ "dev": true,
+ "requires": {
+ "pify": "^2.0.0"
+ }
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ },
+ "read-pkg": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz",
+ "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=",
+ "dev": true,
+ "requires": {
+ "load-json-file": "^2.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^2.0.0"
+ }
+ },
+ "read-pkg-up": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz",
+ "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=",
+ "dev": true,
+ "requires": {
+ "find-up": "^2.0.0",
+ "read-pkg": "^2.0.0"
+ }
+ },
+ "strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+ "dev": true
+ }
+ }
+ },
+ "eslint-plugin-unicorn": {
+ "version": "21.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-21.0.0.tgz",
+ "integrity": "sha512-S8v7+v4gZTQPj4pKKvexhgSUaLQSyItvxW2SVZDaX9Iu5IjlAmF2eni+L6w8a2aqshxgU8Lle4FIAVDtuejSKQ==",
+ "dev": true,
+ "requires": {
+ "ci-info": "^2.0.0",
+ "clean-regexp": "^1.0.0",
+ "eslint-ast-utils": "^1.1.0",
+ "eslint-template-visitor": "^2.0.0",
+ "eslint-utils": "^2.1.0",
+ "import-modules": "^2.0.0",
+ "lodash": "^4.17.15",
+ "pluralize": "^8.0.0",
+ "read-pkg-up": "^7.0.1",
+ "regexp-tree": "^0.1.21",
+ "reserved-words": "^0.1.2",
+ "safe-regex": "^2.1.1",
+ "semver": "^7.3.2"
+ },
+ "dependencies": {
+ "safe-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz",
+ "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==",
+ "dev": true,
+ "requires": {
+ "regexp-tree": "~0.1.1"
+ }
+ },
+ "semver": {
+ "version": "7.3.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
+ "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
+ "dev": true
+ }
+ }
+ },
"eslint-scope": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz",
"estraverse": "^4.1.1"
}
},
+ "eslint-template-visitor": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/eslint-template-visitor/-/eslint-template-visitor-2.2.1.tgz",
+ "integrity": "sha512-q3SxoBXz0XjPGkUpwGVAwIwIPIxzCAJX1uwfVc8tW3v7u/zS7WXNH3I2Mu2MDz2NgSITAyKLRaQFPHu/iyKxDQ==",
+ "dev": true,
+ "requires": {
+ "babel-eslint": "^10.1.0",
+ "eslint-visitor-keys": "^1.3.0",
+ "esquery": "^1.3.1",
+ "multimap": "^1.1.0"
+ }
+ },
"eslint-utils": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
"integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=",
"dev": true
},
+ "import-modules": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/import-modules/-/import-modules-2.0.0.tgz",
+ "integrity": "sha512-iczM/v9drffdNnABOKwj0f9G3cFDon99VcG1mxeBsdqnbd+vnQ5c2uAiCHNQITqFTOPaEvwg3VjoWCur0uHLEw==",
+ "dev": true
+ },
"imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
"integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
"dev": true
},
+ "is-string": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz",
+ "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==",
+ "dev": true
+ },
"is-symbol": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
"dev": true
},
+ "lodash.get": {
+ "version": "4.4.2",
+ "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
+ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=",
+ "dev": true
+ },
"lodash.merge": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
"integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
"dev": true
},
+ "lodash.zip": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/lodash.zip/-/lodash.zip-4.2.0.tgz",
+ "integrity": "sha1-7GZi5IlkCO1KtsVCo5kLcswIACA=",
+ "dev": true
+ },
"log-symbols": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
"dev": true
},
+ "multimap": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/multimap/-/multimap-1.1.0.tgz",
+ "integrity": "sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==",
+ "dev": true
+ },
"mute-stream": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
"isobject": "^3.0.1"
}
},
+ "object.values": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz",
+ "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.3",
+ "es-abstract": "^1.17.0-next.1",
+ "function-bind": "^1.1.1",
+ "has": "^1.0.3"
+ }
+ },
"on-finished": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
"pinkie": "^2.0.0"
}
},
+ "pkg-dir": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz",
+ "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=",
+ "dev": true,
+ "requires": {
+ "find-up": "^2.1.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
+ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=",
+ "dev": true,
+ "requires": {
+ "locate-path": "^2.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
+ "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=",
+ "dev": true,
+ "requires": {
+ "p-locate": "^2.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
+ "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
+ "dev": true,
+ "requires": {
+ "p-try": "^1.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
+ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=",
+ "dev": true,
+ "requires": {
+ "p-limit": "^1.1.0"
+ }
+ },
+ "p-try": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=",
+ "dev": true
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ }
+ }
+ },
+ "pluralize": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz",
+ "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==",
+ "dev": true
+ },
"popper.js": {
"version": "1.16.1",
"resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz",
"safe-regex": "^1.1.0"
}
},
+ "regexp-tree": {
+ "version": "0.1.21",
+ "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.21.tgz",
+ "integrity": "sha512-kUUXjX4AnqnR8KRTCrayAo9PzYMRKmVoGgaz2tBuz0MF3g1ZbGebmtW0yFHfFK9CmBjQKeYIgoL22pFLBJY7sw==",
+ "dev": true
+ },
"regexpp": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
"integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
"dev": true
},
+ "reserved-words": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/reserved-words/-/reserved-words-0.1.2.tgz",
+ "integrity": "sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE=",
+ "dev": true
+ },
"resolve": {
"version": "1.17.0",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
"glob": "^7.1.2"
}
},
+ "tsconfig-paths": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz",
+ "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==",
+ "dev": true,
+ "requires": {
+ "@types/json5": "^0.0.29",
+ "json5": "^1.0.1",
+ "minimist": "^1.2.0",
+ "strip-bom": "^3.0.0"
+ },
+ "dependencies": {
+ "json5": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
+ "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.0"
+ }
+ },
+ "strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
+ "dev": true
+ }
+ }
+ },
"tunnel-agent": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
"@rollup/plugin-commonjs": "^14.0.0",
"@rollup/plugin-node-resolve": "^8.4.0",
"autoprefixer": "^9.8.6",
- "babel-eslint": "^10.1.0",
"babel-plugin-istanbul": "^6.0.0",
"bundlewatch": "^0.2.7",
"clean-css-cli": "^4.3.0",
"cross-env": "^7.0.2",
"eslint": "^7.6.0",
+ "eslint-config-xo": "^0.32.1",
+ "eslint-plugin-import": "^2.22.0",
+ "eslint-plugin-unicorn": "^21.0.0",
"find-unused-sass-variables": "^2.0.0",
"glob": "^7.1.6",
"hammer-simulator": "0.0.1",
{
+ "root": true,
"env": {
"es6": false,
"jquery": true
"ecmaVersion": 5,
"sourceType": "script"
},
- "extends": "../.eslintrc.json",
+ "extends": [
+ "plugin:unicorn/recommended",
+ "xo",
+ "xo/browser"
+ ],
"rules": {
- // Best Practices
- "no-magic-numbers": "off",
- "vars-on-top": "off",
-
- // Stylistic Issues
- "spaced-comment": "off",
-
- // ECMAScript 6
- "no-var": "off",
- "object-shorthand": "off",
- "prefer-arrow-callback": "off",
- "prefer-template": "off",
- "prefer-rest-params": "off"
+ "capitalized-comments": "off",
+ "indent": [
+ "error",
+ 2,
+ {
+ "MemberExpression": "off",
+ "SwitchCase": 1
+ }
+ ],
+ "object-curly-spacing": [
+ "error",
+ "always"
+ ],
+ "semi": [
+ "error",
+ "never"
+ ],
+ "strict": "error",
+ "unicorn/no-for-loop": "off",
+ "unicorn/no-null": "off",
+ "unicorn/prefer-array-find": "off",
+ "unicorn/prefer-dataset": "off",
+ "unicorn/prefer-includes": "off",
+ "unicorn/prefer-number-properties": "off",
+ "unicorn/prefer-node-append": "off",
+ "unicorn/prefer-query-selector": "off",
+ "unicorn/prevent-abbreviations": "off"
}
}