mirror of
https://github.com/docsifyjs/docsify.git
synced 2025-12-08 19:55:52 +00:00
* Update test environments and lint configuration Update Jest (unit + integration) and Playwright (e2e) test environments. Includes stability improvements for e2e tests using newer, more stable methods per the Playwright docs. - Update Jest 26 => 27 - Update Jest-related libs (babel parser) - Update Playwright 1.8 => Playwright Test 1.18 - Update GitHub CI (action versions, job parallelization, and matrices) - Update ESLint 5 => 8 - Update ESLint-related libs (parser, prettier, Jest, Playwright) - Fix test failures on M1-based Macs - Fix e2e stability issues by replacing PW $ method calls - Fix ESLint errors - Fix incorrect CI flag on Jest runs (-ci => --ci) - Refactor e2e test runner from Jest to Playwright Test - Refactor e2e test files for Playwright Test - Refactor fix-lint script name to lint:fix for consistency - Refactor npm scripts order for readability - Remove unnecessary configs and libs - Remove example image snapshots
78 lines
2.0 KiB
JavaScript
78 lines
2.0 KiB
JavaScript
const prettierConfig = require('./.prettierrc');
|
|
|
|
module.exports = {
|
|
root: true,
|
|
extends: [
|
|
'eslint:recommended',
|
|
'plugin:import/recommended',
|
|
'plugin:prettier/recommended', // Must be last
|
|
],
|
|
parser: '@babel/eslint-parser',
|
|
parserOptions: {
|
|
sourceType: 'module',
|
|
ecmaVersion: 2019,
|
|
},
|
|
plugins: ['prettier', 'import'],
|
|
env: {
|
|
browser: true,
|
|
es6: true,
|
|
node: true,
|
|
},
|
|
settings: {
|
|
'import/ignore': ['node_modules', '.json$'],
|
|
},
|
|
rules: {
|
|
camelcase: ['warn'],
|
|
curly: ['error', 'all'],
|
|
'dot-notation': ['error'],
|
|
eqeqeq: ['error'],
|
|
'handle-callback-err': ['error'],
|
|
'new-cap': ['error'],
|
|
'no-alert': ['error'],
|
|
'no-caller': ['error'],
|
|
'no-eval': ['error'],
|
|
'no-labels': ['error'],
|
|
'no-lonely-if': ['error'],
|
|
'no-new': ['error'],
|
|
'no-proto': ['error'],
|
|
'no-return-assign': ['error'],
|
|
'no-self-compare': ['error'],
|
|
'no-shadow-restricted-names': ['error'],
|
|
'no-shadow': [
|
|
'error',
|
|
{
|
|
allow: ['Events', 'Fetch', 'Lifecycle', 'Render', 'Router'],
|
|
},
|
|
],
|
|
'no-unused-vars': ['error', { args: 'none' }],
|
|
'no-useless-call': ['error'],
|
|
'no-useless-escape': ['warn'],
|
|
'no-var': ['error'],
|
|
'no-void': ['error'],
|
|
'no-with': ['error'],
|
|
radix: ['error'],
|
|
'spaced-comment': ['error', 'always'],
|
|
strict: ['error', 'global'],
|
|
yoda: ['error', 'never'],
|
|
|
|
// Import rules
|
|
// Search way how integrate with `lerna`
|
|
'import/imports-first': ['error'],
|
|
'import/newline-after-import': ['error'],
|
|
'import/no-duplicates': ['error'],
|
|
'import/no-mutable-exports': ['error'],
|
|
'import/no-named-as-default-member': ['error'],
|
|
'import/no-named-as-default': ['error'],
|
|
'import/no-unresolved': 'off',
|
|
'import/order': ['warn'],
|
|
|
|
// Prettier (Must be last)
|
|
'prettier/prettier': ['warn', prettierConfig],
|
|
},
|
|
globals: {
|
|
$docsify: 'writable',
|
|
Docsify: 'writable',
|
|
dom: 'writable',
|
|
},
|
|
};
|