eslint-config-neon
Version:
The ultimate ESLint shareable config
1 lines • 5.96 kB
Source Map (JSON)
{"version":3,"file":"react.jsplugins.mjs","names":[],"sources":["../../../src/oxlint/react.jsplugins.ts"],"sourcesContent":["import type { OxlintConfig } from 'oxlint';\n\nconst config = {\n\tjsPlugins: [\n\t\t{\n\t\t\tname: '@neon/eslint-react',\n\t\t\tspecifier: 'eslint-plugin-react',\n\t\t},\n\t\t{\n\t\t\tname: '@neon/eslint-stylistic',\n\t\t\tspecifier: '@stylistic/eslint-plugin',\n\t\t},\n\t],\n\toverrides: [\n\t\t{\n\t\t\tfiles: ['**/*.{js,jsx,ts,tsx,cjs,mjs,cts,mts}'],\n\t\t\trules: {\n\t\t\t\t'@neon/eslint-react/boolean-prop-naming': 2,\n\t\t\t\t'@neon/eslint-react/default-props-match-prop-types': 2,\n\t\t\t\t'@neon/eslint-react/destructuring-assignment': 0,\n\t\t\t\t'@neon/eslint-react/forbid-foreign-prop-types': 0,\n\t\t\t\t'@neon/eslint-react/forbid-prop-types': 0,\n\t\t\t\t'@neon/eslint-react/function-component-definition': 0,\n\t\t\t\t'@neon/eslint-react/jsx-indent-props': [2, 'tab'],\n\t\t\t\t'@neon/eslint-react/jsx-no-bind': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tallowArrowFunctions: true,\n\t\t\t\t\t\tallowBind: false,\n\t\t\t\t\t\tignoreRefs: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-react/jsx-no-literals': 0,\n\t\t\t\t'@neon/eslint-react/jsx-uses-react': 2,\n\t\t\t\t'@neon/eslint-react/jsx-uses-vars': 2,\n\t\t\t\t'@neon/eslint-react/no-access-state-in-setstate': 2,\n\t\t\t\t'@neon/eslint-react/no-adjacent-inline-elements': 0,\n\t\t\t\t'@neon/eslint-react/no-arrow-function-lifecycle': 2,\n\t\t\t\t'@neon/eslint-react/no-deprecated': 2,\n\t\t\t\t'@neon/eslint-react/no-invalid-html-attribute': 2,\n\t\t\t\t'@neon/eslint-react/no-typos': 2,\n\t\t\t\t'@neon/eslint-react/no-unused-class-component-methods': 2,\n\t\t\t\t'@neon/eslint-react/no-unused-prop-types': 2,\n\t\t\t\t'@neon/eslint-react/no-unused-state': 2,\n\t\t\t\t'@neon/eslint-react/prefer-exact-props': 0,\n\t\t\t\t'@neon/eslint-react/prefer-read-only-props': 2,\n\t\t\t\t'@neon/eslint-react/prefer-stateless-function': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tignorePureComponents: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-react/prop-types': 2,\n\t\t\t\t'@neon/eslint-react/require-default-props': 0,\n\t\t\t\t'@neon/eslint-react/require-optimization': 0,\n\t\t\t\t'@neon/eslint-react/require-render-return': 2,\n\t\t\t\t'@neon/eslint-react/sort-comp': 2,\n\t\t\t\t'@neon/eslint-react/sort-default-props': 2,\n\t\t\t\t'@neon/eslint-react/sort-prop-types': 2,\n\t\t\t\t'@neon/eslint-react/static-property-placement': 2,\n\t\t\t\t'@neon/eslint-stylistic/jsx-child-element-spacing': 0,\n\t\t\t\t'@neon/eslint-stylistic/jsx-closing-bracket-location': [2, 'line-aligned'],\n\t\t\t\t'@neon/eslint-stylistic/jsx-closing-tag-location': 2,\n\t\t\t\t'@neon/eslint-stylistic/jsx-curly-brace-presence': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tchildren: 'never',\n\t\t\t\t\t\tprops: 'never',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-curly-newline': 2,\n\t\t\t\t'@neon/eslint-stylistic/jsx-curly-spacing': [\n\t\t\t\t\t2,\n\t\t\t\t\t'never',\n\t\t\t\t\t{\n\t\t\t\t\t\tallowMultiline: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-equals-spacing': [2, 'never'],\n\t\t\t\t'@neon/eslint-stylistic/jsx-first-prop-new-line': [2, 'multiline-multiprop'],\n\t\t\t\t'@neon/eslint-stylistic/jsx-indent': [2, 'tab'],\n\t\t\t\t'@neon/eslint-stylistic/jsx-max-props-per-line': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tmaximum: 3,\n\t\t\t\t\t\twhen: 'multiline',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-newline': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tprevent: true,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-one-expression-per-line': 0,\n\t\t\t\t'@neon/eslint-stylistic/jsx-pascal-case': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tignore: [\n\t\t\t\t\t\t\t'h{}',\n\t\t\t\t\t\t\t'h2',\n\t\t\t\t\t\t\t'h3',\n\t\t\t\t\t\t\t'h4',\n\t\t\t\t\t\t\t'h5',\n\t\t\t\t\t\t\t'h6',\n\t\t\t\t\t\t\t'p',\n\t\t\t\t\t\t\t'a',\n\t\t\t\t\t\t\t'ul',\n\t\t\t\t\t\t\t'ol',\n\t\t\t\t\t\t\t'li',\n\t\t\t\t\t\t\t'img',\n\t\t\t\t\t\t\t'div',\n\t\t\t\t\t\t\t'span',\n\t\t\t\t\t\t\t'dl',\n\t\t\t\t\t\t\t'dt',\n\t\t\t\t\t\t\t'dd',\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-props-no-multi-spaces': 2,\n\t\t\t\t'@neon/eslint-stylistic/jsx-sort-props': 2,\n\t\t\t\t'@neon/eslint-stylistic/jsx-tag-spacing': [\n\t\t\t\t\t2,\n\t\t\t\t\t{\n\t\t\t\t\t\tafterOpening: 'never',\n\t\t\t\t\t\tbeforeSelfClosing: 'always',\n\t\t\t\t\t\tclosingSlash: 'never',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t\t'@neon/eslint-stylistic/jsx-wrap-multilines': 0,\n\t\t\t},\n\t\t},\n\t],\n\trules: {},\n\tplugins: [],\n} satisfies OxlintConfig;\n\nexport default config;\n"],"mappings":";AAEA,MAAM,SAAS;CACd,WAAW,CACV;EACC,MAAM;EACN,WAAW;CACZ,GACA;EACC,MAAM;EACN,WAAW;CACZ,CACD;CACA,WAAW,CACV;EACC,OAAO,CAAC,sCAAsC;EAC9C,OAAO;GACN,0CAA0C;GAC1C,qDAAqD;GACrD,+CAA+C;GAC/C,gDAAgD;GAChD,wCAAwC;GACxC,oDAAoD;GACpD,uCAAuC,CAAC,GAAG,KAAK;GAChD,kCAAkC,CACjC,GACA;IACC,qBAAqB;IACrB,WAAW;IACX,YAAY;GACb,CACD;GACA,sCAAsC;GACtC,qCAAqC;GACrC,oCAAoC;GACpC,kDAAkD;GAClD,kDAAkD;GAClD,kDAAkD;GAClD,oCAAoC;GACpC,gDAAgD;GAChD,+BAA+B;GAC/B,wDAAwD;GACxD,2CAA2C;GAC3C,sCAAsC;GACtC,yCAAyC;GACzC,6CAA6C;GAC7C,gDAAgD,CAC/C,GACA,EACC,sBAAsB,KACvB,CACD;GACA,iCAAiC;GACjC,4CAA4C;GAC5C,2CAA2C;GAC3C,4CAA4C;GAC5C,gCAAgC;GAChC,yCAAyC;GACzC,sCAAsC;GACtC,gDAAgD;GAChD,oDAAoD;GACpD,uDAAuD,CAAC,GAAG,cAAc;GACzE,mDAAmD;GACnD,mDAAmD,CAClD,GACA;IACC,UAAU;IACV,OAAO;GACR,CACD;GACA,4CAA4C;GAC5C,4CAA4C;IAC3C;IACA;IACA,EACC,gBAAgB,KACjB;GACD;GACA,6CAA6C,CAAC,GAAG,OAAO;GACxD,kDAAkD,CAAC,GAAG,qBAAqB;GAC3E,qCAAqC,CAAC,GAAG,KAAK;GAC9C,iDAAiD,CAChD,GACA;IACC,SAAS;IACT,MAAM;GACP,CACD;GACA,sCAAsC,CACrC,GACA,EACC,SAAS,KACV,CACD;GACA,sDAAsD;GACtD,0CAA0C,CACzC,GACA,EACC,QAAQ;IACP;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;GACD,EACD,CACD;GACA,oDAAoD;GACpD,yCAAyC;GACzC,0CAA0C,CACzC,GACA;IACC,cAAc;IACd,mBAAmB;IACnB,cAAc;GACf,CACD;GACA,8CAA8C;EAC/C;CACD,CACD;CACA,OAAO,CAAC;CACR,SAAS,CAAC;AACX"}