@tarsilla/eslint-config 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1 +1,89 @@
1
- # eslint-config
1
+ # @tarsilla/eslint-config
2
+
3
+ This package provides a custom ESLint configuration built for ESLint v9. It enforces a consistent coding style and quality across Next.js, React and TypeScript library.
4
+
5
+ ## Features
6
+
7
+ - **Custom Rule Sets**: Leverages recommended rules from @eslint/js, typescript-eslint, and various plugins.
8
+ - **Multiple Environments**: Offers tailored configurations for Next.js, React, and TypeScript library code.
9
+ - **Prettier**: Enforces consistent formatting with Prettier rules.
10
+ - **Unused Imports**: Detects and removes dead code using `eslint-plugin-unused-imports`.
11
+ - **Import Ordering**: Ensures a consistent and organized import structure using `eslint-plugin-import`.
12
+ - **Jest**: Ensures a consistent and organized tests using `eslint-plugin-jest`.
13
+
14
+ ## Installation
15
+
16
+ Install the configuration as a development dependency:
17
+
18
+ ```sh
19
+ npm install --save-dev @tarsilla/eslint-config
20
+ ```
21
+
22
+ or
23
+
24
+ ```sh
25
+ yarn add --dev @tarsilla/eslint-config
26
+ ```
27
+
28
+ ## Usage
29
+
30
+ In your ESLint configuration (see .eslintrc.mjs), add the plugin to your plugins array:
31
+
32
+ **Next.js Projects**
33
+ ```js
34
+ import { eslintNextConfig } from '@tarsilla/eslint-config/next';
35
+
36
+ export default [
37
+ // ...other plugins...
38
+ ...eslintNextConfig(),
39
+ ];
40
+ ```
41
+ **React Projects**
42
+ ```js
43
+ import { eslintReactConfig } from '@tarsilla/eslint-config/react';
44
+
45
+ export default [
46
+ // ...other plugins...
47
+ ...eslintReactConfig(),
48
+ ];
49
+ ```
50
+ **Typescript Library Projects**
51
+ ```js
52
+ import { eslintLibraryConfig } from '@tarsilla/eslint-config/library';
53
+
54
+ export default [
55
+ // ...other plugins...
56
+ ...eslintLibraryConfig(),
57
+ ];
58
+ ```
59
+
60
+ ## Configuration Options
61
+
62
+ You can pass options to adjust the behavior of the config. For example, in the Next.js configuration:
63
+ ```js
64
+ import { eslintNextConfig } from '@tarsilla/eslint-config/next';
65
+
66
+ export default [
67
+ // ...other plugins...
68
+ ...eslintNextConfig({
69
+ ignores: ['**/node_modules/'],
70
+ }),
71
+ ];
72
+ ```
73
+
74
+ ## Options
75
+
76
+ The plugin accepts an options object of type `EslintOptions`:
77
+
78
+ | Option | Type | Description | Default |
79
+ |----------|--------|--------------------------------------------------------------|-------------|
80
+ | ignores | string array | Array of paths to ignore during lint check. If not provided, the plugin will run in all files. | `undefined` |
81
+
82
+
83
+ ## Contributing
84
+
85
+ Contributions are welcome! Please ensure your pull request adheres to the project's linting and testing guidelines.
86
+
87
+ ## License
88
+
89
+ This project is licensed under the [MIT License](LICENSE).
package/lib/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("globals"),r=require("typescript-eslint"),t=require("@eslint/js"),i=require("eslint-plugin-import"),s=require("eslint-plugin-jest"),n=require("eslint-plugin-prettier/recommended"),o=require("eslint-plugin-react-hooks"),l=require("eslint-plugin-unused-imports"),a=require("path"),p=require("url"),u=require("@eslint/eslintrc"),c=require("eslint-plugin-react"),g="undefined"!=typeof document?document.currentScript:null;const f=r.config([t.configs.recommended,...r.configs.stylistic,...r.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),d=r.config([i.flatConfigs.recommended,i.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),m=r.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[r.configs.disableTypeChecked]}),b=r.config({files:["**/*.test.{js,ts,jsx,tsx}"],...s.configs["flat/recommended"]}),x=r.config([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=r.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":o},rules:{...o.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),h=r.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),j=r.config({plugins:{"unused-imports":l},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});const q=p.fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:g&&"SCRIPT"===g.tagName.toUpperCase()&&g.src||new URL("index.cjs",document.baseURI).href),w=a.dirname(q),C=new u.FlatCompat({baseDirectory:w});exports.eslintLibraryConfig=function({ignores:t}){return r.config(...r.config({ignores:t,languageOptions:{globals:{...e.node}}}),...f,...j,...h,...d,...m,...b,...x)},exports.eslintNextConfig=function({ignores:t}){return r.config(...r.config({ignores:t,languageOptions:{globals:{...e.node,...e.browser}}}),...f,...C.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...j,...h,...m,...b,...x)},exports.eslintReactConfig=function({ignores:t}){return r.config(...r.config({ignores:t,languageOptions:{globals:{...e.browser}}}),...f,...r.config({files:["**/*.{jsx,tsx}"],...c.configs.flat.recommended,...c.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...y,...j,...h,...d,...m,...b,...x)};
1
+ "use strict";var e=require("globals"),r=require("typescript-eslint"),t=require("@eslint/js"),i=require("eslint-plugin-import"),n=require("eslint-plugin-jest"),s=require("eslint-plugin-prettier/recommended"),o=require("eslint-plugin-react-hooks"),l=require("eslint-plugin-unused-imports"),a=require("path"),p=require("url"),c=require("@eslint/eslintrc"),u=require("eslint-plugin-react"),g="undefined"!=typeof document?document.currentScript:null;const f=r.config([t.configs.recommended,...r.configs.stylistic,...r.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),d=r.config([i.flatConfigs.recommended,i.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),m=r.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[r.configs.disableTypeChecked]}),b=r.config({files:["**/*.test.{js,ts,jsx,tsx}"],...n.configs["flat/recommended"]}),x=r.config([s,{rules:{...s.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=r.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":o},rules:{...o.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),h=r.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),j=r.config({plugins:{"unused-imports":l},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});const q=p.fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:g&&"SCRIPT"===g.tagName.toUpperCase()&&g.src||new URL("index.cjs",document.baseURI).href),w=a.dirname(q),C=new c.FlatCompat({baseDirectory:w});exports.eslintLibraryConfig=function({ignores:t}){return r.config(...r.config({ignores:t}),...r.config({languageOptions:{globals:{...e.node}}}),...f,...j,...h,...d,...m,...b,...x)},exports.eslintNextConfig=function({ignores:t}){return r.config(...r.config({ignores:t}),...r.config({languageOptions:{globals:{...e.node,...e.browser}}}),...f,...C.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...j,...h,...m,...b,...x)},exports.eslintReactConfig=function({ignores:t}){return r.config(...r.config({ignores:t}),...r.config({languageOptions:{globals:{...e.browser}}}),...f,...r.config({files:["**/*.{jsx,tsx}"],...u.configs.flat.recommended,...u.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...y,...j,...h,...d,...m,...b,...x)};
2
2
  //# sourceMappingURL=index.cjs.map
package/lib/index.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/commons/all.ts","../src/commons/imports.ts","../src/commons/javascript.ts","../src/commons/jest.ts","../src/commons/prettier.ts","../src/commons/react-hooks.ts","../src/commons/sortImports.ts","../src/commons/unusedImports.ts","../src/next/eslintNextConfig.ts","../src/library/eslintLibraryConfig.ts","../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","__filename","fileURLToPath","__dirname","dirname","compat","FlatCompat","baseDirectory","ignores","browser","reactPlugin","flat","react","version"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/commons/all.ts","../src/commons/imports.ts","../src/commons/javascript.ts","../src/commons/jest.ts","../src/commons/prettier.ts","../src/commons/react-hooks.ts","../src/commons/sortImports.ts","../src/commons/unusedImports.ts","../src/next/eslintNextConfig.ts","../src/library/eslintLibraryConfig.ts","../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","__filename","fileURLToPath","__dirname","dirname","compat","FlatCompat","baseDirectory","ignores","browser","reactPlugin","flat","react","version"],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,19 +1,13 @@
1
- import type { TSESLint } from '@typescript-eslint/utils';
1
+ import { TSESLint } from '@typescript-eslint/utils';
2
2
 
3
3
  type EslintOptions = {
4
4
  ignores: string[];
5
5
  };
6
6
 
7
-
8
-
9
7
  declare function eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
10
8
 
11
-
12
-
13
9
  declare function eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
14
10
 
15
-
16
-
17
11
  declare function eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
18
12
 
19
13
  export { eslintLibraryConfig, eslintNextConfig, eslintReactConfig };
package/lib/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import e from"globals";import{config as r,configs as t}from"typescript-eslint";import s from"@eslint/js";import o from"eslint-plugin-import";import i from"eslint-plugin-jest";import n from"eslint-plugin-prettier/recommended";import l from"eslint-plugin-react-hooks";import p from"eslint-plugin-unused-imports";import{dirname as a}from"path";import{fileURLToPath as u}from"url";import{FlatCompat as c}from"@eslint/eslintrc";import m from"eslint-plugin-react";const g=r([s.configs.recommended,...t.stylistic,...t.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),f=r([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),d=r({files:["**/*.{cjs,mjs,js,jsx}"],extends:[t.disableTypeChecked]}),b=r({files:["**/*.test.{js,ts,jsx,tsx}"],...i.configs["flat/recommended"]}),x=r([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=r({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),j=r({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),h=r({plugins:{"unused-imports":p},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function w({ignores:t}){return r(...r({ignores:t,languageOptions:{globals:{...e.node}}}),...g,...h,...j,...f,...d,...b,...x)}const v=new c({baseDirectory:a(u(import.meta.url))});function I({ignores:t}){return r(...r({ignores:t,languageOptions:{globals:{...e.node,...e.browser}}}),...g,...v.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...h,...j,...d,...b,...x)}function C({ignores:t}){return r(...r({ignores:t,languageOptions:{globals:{...e.browser}}}),...g,...r({files:["**/*.{jsx,tsx}"],...m.configs.flat.recommended,...m.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...y,...h,...j,...f,...d,...b,...x)}export{w as eslintLibraryConfig,I as eslintNextConfig,C as eslintReactConfig};
1
+ import e from"globals";import{config as r,configs as t}from"typescript-eslint";import s from"@eslint/js";import o from"eslint-plugin-import";import i from"eslint-plugin-jest";import n from"eslint-plugin-prettier/recommended";import l from"eslint-plugin-react-hooks";import p from"eslint-plugin-unused-imports";import{dirname as a}from"path";import{fileURLToPath as u}from"url";import{FlatCompat as c}from"@eslint/eslintrc";import m from"eslint-plugin-react";const g=r([s.configs.recommended,...t.stylistic,...t.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),f=r([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),d=r({files:["**/*.{cjs,mjs,js,jsx}"],extends:[t.disableTypeChecked]}),b=r({files:["**/*.test.{js,ts,jsx,tsx}"],...i.configs["flat/recommended"]}),x=r([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=r({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),j=r({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),h=r({plugins:{"unused-imports":p},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function w({ignores:t}){return r(...r({ignores:t}),...r({languageOptions:{globals:{...e.node}}}),...g,...h,...j,...f,...d,...b,...x)}const v=new c({baseDirectory:a(u(import.meta.url))});function I({ignores:t}){return r(...r({ignores:t}),...r({languageOptions:{globals:{...e.node,...e.browser}}}),...g,...v.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...h,...j,...d,...b,...x)}function C({ignores:t}){return r(...r({ignores:t}),...r({languageOptions:{globals:{...e.browser}}}),...g,...r({files:["**/*.{jsx,tsx}"],...m.configs.flat.recommended,...m.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...y,...h,...j,...f,...d,...b,...x)}export{w as eslintLibraryConfig,I as eslintNextConfig,C as eslintReactConfig};
2
2
  //# sourceMappingURL=index.mjs.map
package/lib/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/commons/all.ts","../src/commons/imports.ts","../src/commons/javascript.ts","../src/commons/jest.ts","../src/commons/prettier.ts","../src/commons/react-hooks.ts","../src/commons/sortImports.ts","../src/commons/unusedImports.ts","../src/library/eslintLibraryConfig.ts","../src/next/eslintNextConfig.ts","../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintLibraryConfig","ignores","compat","FlatCompat","baseDirectory","dirname","fileURLToPath","url","eslintNextConfig","browser","eslintReactConfig","reactPlugin","flat","react","version"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/commons/all.ts","../src/commons/imports.ts","../src/commons/javascript.ts","../src/commons/jest.ts","../src/commons/prettier.ts","../src/commons/react-hooks.ts","../src/commons/sortImports.ts","../src/commons/unusedImports.ts","../src/library/eslintLibraryConfig.ts","../src/next/eslintNextConfig.ts","../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintLibraryConfig","ignores","compat","FlatCompat","baseDirectory","dirname","fileURLToPath","url","eslintNextConfig","browser","eslintReactConfig","reactPlugin","flat","react","version"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("globals"),r=require("typescript-eslint"),s=require("@eslint/js"),t=require("eslint-plugin-import"),i=require("eslint-plugin-jest"),n=require("eslint-plugin-prettier/recommended"),o=require("eslint-plugin-react-hooks"),l=require("eslint-plugin-unused-imports");const p=r.config([s.configs.recommended,...r.configs.stylistic,...r.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),a=r.config([t.flatConfigs.recommended,t.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),u=r.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[r.configs.disableTypeChecked]}),c=r.config({files:["**/*.test.{js,ts,jsx,tsx}"],...i.configs["flat/recommended"]}),g=r.config([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]);r.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":o},rules:{...o.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}});const f=r.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),d=r.config({plugins:{"unused-imports":l},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});exports.eslintLibraryConfig=function({ignores:s}){return r.config(...r.config({ignores:s,languageOptions:{globals:{...e.node}}}),...p,...d,...f,...a,...u,...c,...g)};
1
+ "use strict";var e=require("globals"),r=require("typescript-eslint"),s=require("@eslint/js"),i=require("eslint-plugin-import"),t=require("eslint-plugin-jest"),n=require("eslint-plugin-prettier/recommended"),o=require("eslint-plugin-react-hooks"),l=require("eslint-plugin-unused-imports");const p=r.config([s.configs.recommended,...r.configs.stylistic,...r.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),a=r.config([i.flatConfigs.recommended,i.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),u=r.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[r.configs.disableTypeChecked]}),c=r.config({files:["**/*.test.{js,ts,jsx,tsx}"],...t.configs["flat/recommended"]}),g=r.config([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]);r.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":o},rules:{...o.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}});const f=r.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),d=r.config({plugins:{"unused-imports":l},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});exports.eslintLibraryConfig=function({ignores:s}){return r.config(...r.config({ignores:s}),...r.config({languageOptions:{globals:{...e.node}}}),...p,...d,...f,...a,...u,...c,...g)};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/library/eslintLibraryConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","ignores"],"mappings":"gSAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAAA,OAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,UAAQgC,sBCDdC,EAA8CnC,EAAAA,OAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAAA,OAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClB6B/C,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,kBACRgB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCT5B,MAAMmC,EAAqDlD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAAA,OAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,sCCH3B,UAA6BC,QAAEA,IAC7B,OAAO5D,EAAAA,UACFA,SAAO,CACR4D,UACAtD,gBAAiB,CACfM,QAAS,IACJA,EAAQkB,YAId/B,KACAuD,KACAJ,KACAlC,KACAe,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/library/eslintLibraryConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","ignores"],"mappings":"gSAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAAA,OAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,UAAQgC,sBCDdC,EAA8CnC,EAAAA,OAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAAA,OAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClB6B/C,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,kBACRgB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCT5B,MAAMmC,EAAqDlD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAAA,OAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,sCCH3B,UAA6BC,QAAEA,IAC7B,OAAO5D,EAAAA,UACFA,SAAO,CACR4D,eAEC5D,EAAAA,OAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQkB,YAId/B,KACAuD,KACAJ,KACAlC,KACAe,KACAI,KACAE,EAEP"}
@@ -1,11 +1,9 @@
1
- import type { TSESLint } from '@typescript-eslint/utils';
1
+ import { TSESLint } from '@typescript-eslint/utils';
2
2
 
3
3
  type EslintOptions = {
4
4
  ignores: string[];
5
5
  };
6
6
 
7
-
8
-
9
7
  declare function eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
10
8
 
11
9
  export { eslintLibraryConfig };
@@ -1,2 +1,2 @@
1
- import e from"globals";import{config as r,configs as t}from"typescript-eslint";import s from"@eslint/js";import o from"eslint-plugin-import";import i from"eslint-plugin-jest";import n from"eslint-plugin-prettier/recommended";import l from"eslint-plugin-react-hooks";import p from"eslint-plugin-unused-imports";const a=r([s.configs.recommended,...t.stylistic,...t.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),u=r([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),c=r({files:["**/*.{cjs,mjs,js,jsx}"],extends:[t.disableTypeChecked]}),m=r({files:["**/*.test.{js,ts,jsx,tsx}"],...i.configs["flat/recommended"]}),d=r([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]);r({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}});const g=r({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),f=r({plugins:{"unused-imports":p},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function y({ignores:t}){return r(...r({ignores:t,languageOptions:{globals:{...e.node}}}),...a,...f,...g,...u,...c,...m,...d)}export{y as eslintLibraryConfig};
1
+ import e from"globals";import{config as r,configs as t}from"typescript-eslint";import s from"@eslint/js";import o from"eslint-plugin-import";import i from"eslint-plugin-jest";import n from"eslint-plugin-prettier/recommended";import l from"eslint-plugin-react-hooks";import p from"eslint-plugin-unused-imports";const a=r([s.configs.recommended,...t.stylistic,...t.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...e.builtin,...e.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),u=r([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),c=r({files:["**/*.{cjs,mjs,js,jsx}"],extends:[t.disableTypeChecked]}),m=r({files:["**/*.test.{js,ts,jsx,tsx}"],...i.configs["flat/recommended"]}),d=r([n,{rules:{...n.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]);r({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}});const g=r({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),f=r({plugins:{"unused-imports":p},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function y({ignores:t}){return r(...r({ignores:t}),...r({languageOptions:{globals:{...e.node}}}),...a,...f,...g,...u,...c,...m,...d)}export{y as eslintLibraryConfig};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/library/eslintLibraryConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintLibraryConfig","ignores"],"mappings":"sTAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,EAAQgC,sBCDdC,EAA8CnC,EAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClB6B/C,EAAO,CAC/DgC,MAAO,CAAC,kBACRgB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCT5B,MAAMmC,EAAqDlD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCH3B,SAASC,GAAoBC,QAAEA,IAC7B,OAAO7D,KACFA,EAAO,CACR6D,UACAvD,gBAAiB,CACfM,QAAS,IACJA,EAAQkB,YAId/B,KACAuD,KACAJ,KACAlC,KACAe,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/library/eslintLibraryConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n },\n },\n }),\n ...allConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintLibraryConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintLibraryConfig","ignores"],"mappings":"sTAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,EAAQgC,sBCDdC,EAA8CnC,EAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClB6B/C,EAAO,CAC/DgC,MAAO,CAAC,kBACRgB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCT5B,MAAMmC,EAAqDlD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCH3B,SAASC,GAAoBC,QAAEA,IAC7B,OAAO7D,KACFA,EAAO,CACR6D,eAEC7D,EAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQkB,YAId/B,KACAuD,KACAJ,KACAlC,KACAe,KACAI,KACAE,EAEP"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("path"),r=require("url"),t=require("@eslint/eslintrc"),s=require("globals"),i=require("typescript-eslint"),n=require("@eslint/js"),o=require("eslint-plugin-import"),l=require("eslint-plugin-jest"),a=require("eslint-plugin-prettier/recommended"),p=require("eslint-plugin-react-hooks"),u=require("eslint-plugin-unused-imports"),c="undefined"!=typeof document?document.currentScript:null;const g=i.config([n.configs.recommended,...i.configs.stylistic,...i.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...s.builtin,...s.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]);i.config([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]);const d=i.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[i.configs.disableTypeChecked]}),f=i.config({files:["**/*.test.{js,ts,jsx,tsx}"],...l.configs["flat/recommended"]}),m=i.config([a,{rules:{...a.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=i.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":p},rules:{...p.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),b=i.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=i.config({plugins:{"unused-imports":u},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}}),h=r.fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:c&&"SCRIPT"===c.tagName.toUpperCase()&&c.src||new URL("index.cjs",document.baseURI).href),j=e.dirname(h),q=new t.FlatCompat({baseDirectory:j});exports.eslintNextConfig=function({ignores:e}){return i.config(...i.config({ignores:e,languageOptions:{globals:{...s.node,...s.browser}}}),...g,...q.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...x,...b,...d,...f,...m)};
1
+ "use strict";var e=require("path"),r=require("url"),t=require("@eslint/eslintrc"),s=require("globals"),i=require("typescript-eslint"),n=require("@eslint/js"),o=require("eslint-plugin-import"),l=require("eslint-plugin-jest"),a=require("eslint-plugin-prettier/recommended"),p=require("eslint-plugin-react-hooks"),u=require("eslint-plugin-unused-imports"),c="undefined"!=typeof document?document.currentScript:null;const g=i.config([n.configs.recommended,...i.configs.stylistic,...i.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...s.builtin,...s.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]);i.config([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]);const f=i.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[i.configs.disableTypeChecked]}),d=i.config({files:["**/*.test.{js,ts,jsx,tsx}"],...l.configs["flat/recommended"]}),m=i.config([a,{rules:{...a.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),y=i.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":p},rules:{...p.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),b=i.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=i.config({plugins:{"unused-imports":u},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}}),h=r.fileURLToPath("undefined"==typeof document?require("url").pathToFileURL(__filename).href:c&&"SCRIPT"===c.tagName.toUpperCase()&&c.src||new URL("index.cjs",document.baseURI).href),j=e.dirname(h),q=new t.FlatCompat({baseDirectory:j});exports.eslintNextConfig=function({ignores:e}){return i.config(...i.config({ignores:e}),...i.config({languageOptions:{globals:{...s.node,...s.browser}}}),...g,...q.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...y,...x,...b,...f,...d,...m)};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/next/eslintNextConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","__filename","fileURLToPath","__dirname","dirname","compat","FlatCompat","baseDirectory","ignores","browser"],"mappings":"4ZAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBWf,EAAAA,OAAO,CAC5DgB,EAAQC,YAAYd,YACpBa,EAAQC,YAAYC,WACpB,CACEH,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCd,MAAMC,EAAoD9B,EAAAA,OAAO,CAC/D+B,MAAO,CAAC,yBACRC,QAAS,CAAC9B,UAAQ+B,sBCDdC,EAA8ClC,EAAAA,OAAO,CACzD+B,MAAO,CAAC,gCACLI,EAAKjC,QAAQ,sBCFZkC,EAAkDpC,EAAAA,OAAO,CAC7DqC,EACA,CACEtB,MAAO,IACFsB,EAAoBtB,MACvB,oBAAqB,CACnB,QACA,CACEuB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoD/C,EAAAA,OAAO,CAC/D+B,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBmC,EAAqDlD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAAA,OAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCCrBC,EAAaC,EAAcA,mLAC3BC,EAAYC,EAAQH,QAAAA,GAEpBI,EAAS,IAAIC,EAAAA,WAAW,CAC5BC,cAAeJ,6BAGjB,UAA0BK,QAAEA,IAC1B,OAAOnE,EAAAA,UACFA,SAAO,CACRmE,UACA7D,gBAAiB,CACfM,QAAS,IACJA,EAAQiB,QACRjB,EAAQwD,eAIdrE,KACAiE,EAAOhE,OAAO,CACfgC,QAAS,CAAC,uBAAwB,mBAClCjB,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,WAMxBoB,KACAO,KACAJ,KACApB,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/next/eslintNextConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","__filename","fileURLToPath","__dirname","dirname","compat","FlatCompat","baseDirectory","ignores","browser"],"mappings":"4ZAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBWf,EAAAA,OAAO,CAC5DgB,EAAQC,YAAYd,YACpBa,EAAQC,YAAYC,WACpB,CACEH,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCd,MAAMC,EAAoD9B,EAAAA,OAAO,CAC/D+B,MAAO,CAAC,yBACRC,QAAS,CAAC9B,UAAQ+B,sBCDdC,EAA8ClC,EAAAA,OAAO,CACzD+B,MAAO,CAAC,gCACLI,EAAKjC,QAAQ,sBCFZkC,EAAkDpC,EAAAA,OAAO,CAC7DqC,EACA,CACEtB,MAAO,IACFsB,EAAoBtB,MACvB,oBAAqB,CACnB,QACA,CACEuB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoD/C,EAAAA,OAAO,CAC/D+B,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBmC,EAAqDlD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAAA,OAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCCrBC,EAAaC,EAAcA,mLAC3BC,EAAYC,EAAQH,QAAAA,GAEpBI,EAAS,IAAIC,EAAAA,WAAW,CAC5BC,cAAeJ,6BAGjB,UAA0BK,QAAEA,IAC1B,OAAOnE,EAAAA,UACFA,SAAO,CACRmE,eAECnE,EAAAA,OAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQiB,QACRjB,EAAQwD,eAIdrE,KACAiE,EAAOhE,OAAO,CACfgC,QAAS,CAAC,uBAAwB,mBAClCjB,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,WAMxBoB,KACAO,KACAJ,KACApB,KACAI,KACAE,EAEP"}
@@ -1,11 +1,9 @@
1
- import type { TSESLint } from '@typescript-eslint/utils';
1
+ import { TSESLint } from '@typescript-eslint/utils';
2
2
 
3
3
  type EslintOptions = {
4
4
  ignores: string[];
5
5
  };
6
6
 
7
-
8
-
9
7
  declare function eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
10
8
 
11
9
  export { eslintNextConfig };
@@ -1,2 +1,2 @@
1
- import{dirname as e}from"path";import{fileURLToPath as r}from"url";import{FlatCompat as t}from"@eslint/eslintrc";import s from"globals";import{config as o,configs as i}from"typescript-eslint";import n from"@eslint/js";import p from"eslint-plugin-import";import l from"eslint-plugin-jest";import a from"eslint-plugin-prettier/recommended";import u from"eslint-plugin-react-hooks";import c from"eslint-plugin-unused-imports";const m=o([n.configs.recommended,...i.stylistic,...i.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...s.builtin,...s.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]);o([p.flatConfigs.recommended,p.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]);const d=o({files:["**/*.{cjs,mjs,js,jsx}"],extends:[i.disableTypeChecked]}),g=o({files:["**/*.test.{js,ts,jsx,tsx}"],...l.configs["flat/recommended"]}),f=o([a,{rules:{...a.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),b=o({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":u},rules:{...u.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),y=o({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=o({plugins:{"unused-imports":c},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}}),h=new t({baseDirectory:e(r(import.meta.url))});function j({ignores:e}){return o(...o({ignores:e,languageOptions:{globals:{...s.node,...s.browser}}}),...m,...h.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...b,...x,...y,...d,...g,...f)}export{j as eslintNextConfig};
1
+ import{dirname as e}from"path";import{fileURLToPath as r}from"url";import{FlatCompat as t}from"@eslint/eslintrc";import s from"globals";import{config as o,configs as i}from"typescript-eslint";import n from"@eslint/js";import p from"eslint-plugin-import";import l from"eslint-plugin-jest";import a from"eslint-plugin-prettier/recommended";import u from"eslint-plugin-react-hooks";import c from"eslint-plugin-unused-imports";const m=o([n.configs.recommended,...i.stylistic,...i.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...s.builtin,...s.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]);o([p.flatConfigs.recommended,p.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]);const d=o({files:["**/*.{cjs,mjs,js,jsx}"],extends:[i.disableTypeChecked]}),g=o({files:["**/*.test.{js,ts,jsx,tsx}"],...l.configs["flat/recommended"]}),f=o([a,{rules:{...a.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),b=o({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":u},rules:{...u.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),y=o({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=o({plugins:{"unused-imports":c},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}}),h=new t({baseDirectory:e(r(import.meta.url))});function j({ignores:e}){return o(...o({ignores:e}),...o({languageOptions:{globals:{...s.node,...s.browser}}}),...m,...h.config({extends:["next/core-web-vitals","next/typescript"],rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]}}),...b,...x,...y,...d,...g,...f)}export{j as eslintNextConfig};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/next/eslintNextConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","compat","FlatCompat","baseDirectory","dirname","fileURLToPath","url","eslintNextConfig","ignores","browser"],"mappings":"uaAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBWf,EAAO,CAC5DgB,EAAQC,YAAYd,YACpBa,EAAQC,YAAYC,WACpB,CACEH,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCd,MAAMC,EAAoD9B,EAAO,CAC/D+B,MAAO,CAAC,yBACRC,QAAS,CAAC9B,EAAQ+B,sBCDdC,EAA8ClC,EAAO,CACzD+B,MAAO,CAAC,gCACLI,EAAKjC,QAAQ,sBCFZkC,EAAkDpC,EAAO,CAC7DqC,EACA,CACEtB,MAAO,IACFsB,EAAoBtB,MACvB,oBAAqB,CACnB,QACA,CACEuB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoD/C,EAAO,CAC/D+B,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBmC,EAAqDlD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCIrBC,EAAS,IAAIC,EAAW,CAC5BC,cAHgBC,EADCC,cAA0BC,QAO7C,SAASC,GAAiBC,QAAEA,IAC1B,OAAOnE,KACFA,EAAO,CACRmE,UACA7D,gBAAiB,CACfM,QAAS,IACJA,EAAQiB,QACRjB,EAAQwD,eAIdrE,KACA6D,EAAO5D,OAAO,CACfgC,QAAS,CAAC,uBAAwB,mBAClCjB,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,WAMxBoB,KACAO,KACAJ,KACApB,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/next/eslintNextConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import { dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nimport { FlatCompat } from '@eslint/eslintrc';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst compat = new FlatCompat({\n baseDirectory: __dirname,\n});\n\nfunction eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.node,\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...compat.config({\n extends: ['next/core-web-vitals', 'next/typescript'],\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintNextConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","compat","FlatCompat","baseDirectory","dirname","fileURLToPath","url","eslintNextConfig","ignores","browser"],"mappings":"uaAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBWf,EAAO,CAC5DgB,EAAQC,YAAYd,YACpBa,EAAQC,YAAYC,WACpB,CACEH,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCd,MAAMC,EAAoD9B,EAAO,CAC/D+B,MAAO,CAAC,yBACRC,QAAS,CAAC9B,EAAQ+B,sBCDdC,EAA8ClC,EAAO,CACzD+B,MAAO,CAAC,gCACLI,EAAKjC,QAAQ,sBCFZkC,EAAkDpC,EAAO,CAC7DqC,EACA,CACEtB,MAAO,IACFsB,EAAoBtB,MACvB,oBAAqB,CACnB,QACA,CACEuB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoD/C,EAAO,CAC/D+B,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBlC,MAAO,IACFkC,EAAW/C,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBmC,EAAqDlD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEoC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDtD,EAAO,CAClEgD,QAAS,CACP,iBAAkBO,GAEpBxC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACEyC,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCIrBC,EAAS,IAAIC,EAAW,CAC5BC,cAHgBC,EADCC,cAA0BC,QAO7C,SAASC,GAAiBC,QAAEA,IAC1B,OAAOnE,KACFA,EAAO,CACRmE,eAECnE,EAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQiB,QACRjB,EAAQwD,eAIdrE,KACA6D,EAAO5D,OAAO,CACfgC,QAAS,CAAC,uBAAwB,mBAClCjB,MAAO,CACL,eAAgB,CACd,QACA,CACEI,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,WAMxBoB,KACAO,KACAJ,KACApB,KACAI,KACAE,EAEP"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("eslint-plugin-react"),r=require("globals"),s=require("typescript-eslint"),t=require("@eslint/js"),i=require("eslint-plugin-import"),n=require("eslint-plugin-jest"),o=require("eslint-plugin-prettier/recommended"),l=require("eslint-plugin-react-hooks"),a=require("eslint-plugin-unused-imports");const p=s.config([t.configs.recommended,...s.configs.stylistic,...s.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...r.builtin,...r.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),c=s.config([i.flatConfigs.recommended,i.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),u=s.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[s.configs.disableTypeChecked]}),g=s.config({files:["**/*.test.{js,ts,jsx,tsx}"],...n.configs["flat/recommended"]}),f=s.config([o,{rules:{...o.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),d=s.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),m=s.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),y=s.config({plugins:{"unused-imports":a},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});exports.eslintReactConfig=function({ignores:t}){return s.config(...s.config({ignores:t,languageOptions:{globals:{...r.browser}}}),...p,...s.config({files:["**/*.{jsx,tsx}"],...e.configs.flat.recommended,...e.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...d,...y,...m,...c,...u,...g,...f)};
1
+ "use strict";var e=require("eslint-plugin-react"),r=require("globals"),s=require("typescript-eslint"),t=require("@eslint/js"),i=require("eslint-plugin-import"),n=require("eslint-plugin-jest"),o=require("eslint-plugin-prettier/recommended"),l=require("eslint-plugin-react-hooks"),a=require("eslint-plugin-unused-imports");const c=s.config([t.configs.recommended,...s.configs.stylistic,...s.configs.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...r.builtin,...r.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),p=s.config([i.flatConfigs.recommended,i.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),u=s.config({files:["**/*.{cjs,mjs,js,jsx}"],extends:[s.configs.disableTypeChecked]}),g=s.config({files:["**/*.test.{js,ts,jsx,tsx}"],...n.configs["flat/recommended"]}),f=s.config([o,{rules:{...o.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),d=s.config({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":l},rules:{...l.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),m=s.config({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),y=s.config({plugins:{"unused-imports":a},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});exports.eslintReactConfig=function({ignores:t}){return s.config(...s.config({ignores:t}),...s.config({languageOptions:{globals:{...r.browser}}}),...c,...s.config({files:["**/*.{jsx,tsx}"],...e.configs.flat.recommended,...e.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...d,...y,...m,...p,...u,...g,...f)};
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","ignores","browser","reactPlugin","flat","react","version"],"mappings":"iUAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAAA,OAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,UAAQgC,sBCDdC,EAA8CnC,EAAAA,OAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAAA,OAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoDhD,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBnC,MAAO,IACFmC,EAAWhD,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBoC,EAAqDnD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEqC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDvD,EAAAA,OAAO,CAClEiD,QAAS,CACP,iBAAkBO,GAEpBzC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACE0C,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,oCCD3B,UAA2BC,QAAEA,IAC3B,OAAO7D,EAAAA,UACFA,SAAO,CACR6D,UACAvD,gBAAiB,CACfM,QAAS,IACJA,EAAQkD,eAId/D,KACAC,SAAO,CACRgC,MAAO,CAAC,qBACL+B,EAAY7D,QAAQ8D,KAAK7D,eACzB4D,EAAY7D,QAAQ8D,KAAK,eAC5BnC,SAAU,CACRoC,MAAO,CACLC,QAAS,gBAIZlB,KACAO,KACAJ,KACAnC,KACAe,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.cjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","ignores","browser","reactPlugin","flat","react","version"],"mappings":"iUAKA,MAAMA,EAA6CC,EAAAA,OAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAAA,QAAQE,aACRF,EAAAA,QAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAAA,OAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,UAAQgC,sBCDdC,EAA8CnC,EAAAA,OAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAAA,OAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoDhD,EAAAA,OAAO,CAC/DgC,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBnC,MAAO,IACFmC,EAAWhD,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBoC,EAAqDnD,EAAAA,OAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEqC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDvD,EAAAA,OAAO,CAClEiD,QAAS,CACP,iBAAkBO,GAEpBzC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACE0C,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,oCCD3B,UAA2BC,QAAEA,IAC3B,OAAO7D,EAAAA,UACFA,SAAO,CACR6D,eAEC7D,EAAAA,OAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQkD,eAId/D,KACAC,SAAO,CACRgC,MAAO,CAAC,qBACL+B,EAAY7D,QAAQ8D,KAAK7D,eACzB4D,EAAY7D,QAAQ8D,KAAK,eAC5BnC,SAAU,CACRoC,MAAO,CACLC,QAAS,gBAIZlB,KACAO,KACAJ,KACAnC,KACAe,KACAI,KACAE,EAEP"}
@@ -1,11 +1,9 @@
1
- import type { TSESLint } from '@typescript-eslint/utils';
1
+ import { TSESLint } from '@typescript-eslint/utils';
2
2
 
3
3
  type EslintOptions = {
4
4
  ignores: string[];
5
5
  };
6
6
 
7
-
8
-
9
7
  declare function eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray;
10
8
 
11
9
  export { eslintReactConfig };
@@ -1,2 +1,2 @@
1
- import e from"eslint-plugin-react";import r from"globals";import{config as t,configs as s}from"typescript-eslint";import i from"@eslint/js";import o from"eslint-plugin-import";import n from"eslint-plugin-jest";import l from"eslint-plugin-prettier/recommended";import p from"eslint-plugin-react-hooks";import a from"eslint-plugin-unused-imports";const u=t([i.configs.recommended,...s.stylistic,...s.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...r.builtin,...r.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),c=t([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),m=t({files:["**/*.{cjs,mjs,js,jsx}"],extends:[s.disableTypeChecked]}),f=t({files:["**/*.test.{js,ts,jsx,tsx}"],...n.configs["flat/recommended"]}),g=t([l,{rules:{...l.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),d=t({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":p},rules:{...p.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),y=t({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=t({plugins:{"unused-imports":a},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function b({ignores:s}){return t(...t({ignores:s,languageOptions:{globals:{...r.browser}}}),...u,...t({files:["**/*.{jsx,tsx}"],...e.configs.flat.recommended,...e.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...d,...x,...y,...c,...m,...f,...g)}export{b as eslintReactConfig};
1
+ import e from"eslint-plugin-react";import r from"globals";import{config as t,configs as s}from"typescript-eslint";import i from"@eslint/js";import o from"eslint-plugin-import";import n from"eslint-plugin-jest";import l from"eslint-plugin-prettier/recommended";import p from"eslint-plugin-react-hooks";import a from"eslint-plugin-unused-imports";const u=t([i.configs.recommended,...s.stylistic,...s.stylisticTypeChecked,{languageOptions:{parserOptions:{ecmaVersion:"latest",sourceType:"module",project:!0,tsconfigRootDir:"./"},globals:{...r.builtin,...r.es2021}},rules:{"@typescript-eslint/consistent-type-definitions":["error","type"],"@typescript-eslint/explicit-module-boundary-types":"error","@typescript-eslint/no-explicit-any":"error"}}]),c=t([o.flatConfigs.recommended,o.flatConfigs.typescript,{rules:{"import/order":["error",{groups:["builtin","external","internal",["parent","sibling"]],pathGroups:[{pattern:"react",group:"external",position:"before"},{pattern:"@tarsilla/**",group:"internal",position:"before"}],pathGroupsExcludedImportTypes:["react","@tarsilla"],"newlines-between":"always",alphabetize:{order:"asc",caseInsensitive:!0}}]},settings:{"import/resolver":{typescript:!0,node:!0}}}]),m=t({files:["**/*.{cjs,mjs,js,jsx}"],extends:[s.disableTypeChecked]}),f=t({files:["**/*.test.{js,ts,jsx,tsx}"],...n.configs["flat/recommended"]}),g=t([l,{rules:{...l.rules,"prettier/prettier":["error",{semi:!0,trailingComma:"all",singleQuote:!0,jsxSingleQuote:!0,printWidth:120,tabWidth:2},{usePrettierrc:!1,fileInfoOptions:{withNodeModules:!0}}]}}]),d=t({files:["**/*.{jsx,tsx}"],plugins:{"react-hooks":p},rules:{...p.configs.recommended.rules,"react/react-in-jsx-scope":"off","react/jsx-uses-react":"off"}}),y=t({rules:{"sort-imports":["error",{ignoreCase:!0,ignoreDeclarationSort:!0,ignoreMemberSort:!1}]}}),x=t({plugins:{"unused-imports":a},rules:{"@typescript-eslint/no-unused-vars":"off","no-unused-vars":"off","unused-imports/no-unused-imports":"error","unused-imports/no-unused-vars":["error",{vars:"all",varsIgnorePattern:"^_",args:"after-used",argsIgnorePattern:"^_"}]}});function b({ignores:s}){return t(...t({ignores:s}),...t({languageOptions:{globals:{...r.browser}}}),...u,...t({files:["**/*.{jsx,tsx}"],...e.configs.flat.recommended,...e.configs.flat["jsx-runtime"],settings:{react:{version:"detect"}}}),...d,...x,...y,...c,...m,...f,...g)}export{b as eslintReactConfig};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintReactConfig","ignores","browser","reactPlugin","flat","react","version"],"mappings":"yVAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,EAAQgC,sBCDdC,EAA8CnC,EAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoDhD,EAAO,CAC/DgC,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBnC,MAAO,IACFmC,EAAWhD,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBoC,EAAqDnD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEqC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDvD,EAAO,CAClEiD,QAAS,CACP,iBAAkBO,GAEpBzC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACE0C,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCD3B,SAASC,GAAkBC,QAAEA,IAC3B,OAAO9D,KACFA,EAAO,CACR8D,UACAxD,gBAAiB,CACfM,QAAS,IACJA,EAAQmD,eAIdhE,KACAC,EAAO,CACRgC,MAAO,CAAC,qBACLgC,EAAY9D,QAAQ+D,KAAK9D,eACzB6D,EAAY9D,QAAQ+D,KAAK,eAC5BpC,SAAU,CACRqC,MAAO,CACLC,QAAS,gBAIZnB,KACAO,KACAJ,KACAnC,KACAe,KACAI,KACAE,EAEP"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/commons/all.ts","../../src/commons/imports.ts","../../src/commons/javascript.ts","../../src/commons/jest.ts","../../src/commons/prettier.ts","../../src/commons/react-hooks.ts","../../src/commons/sortImports.ts","../../src/commons/unusedImports.ts","../../src/react/eslintReactConfig.ts"],"sourcesContent":["import js from '@eslint/js';\nimport type { TSESLint } from '@typescript-eslint/utils';\nimport globals from 'globals';\nimport { config, configs } from 'typescript-eslint';\n\nconst allConfig: TSESLint.FlatConfig.ConfigArray = config([\n js.configs.recommended,\n ...configs.stylistic,\n ...configs.stylisticTypeChecked,\n {\n languageOptions: {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n project: true,\n tsconfigRootDir: './',\n },\n globals: {\n ...globals.builtin,\n ...globals.es2021,\n },\n },\n rules: {\n '@typescript-eslint/consistent-type-definitions': ['error', 'type'],\n '@typescript-eslint/explicit-module-boundary-types': 'error',\n '@typescript-eslint/no-explicit-any': 'error',\n },\n },\n]);\n\nexport { allConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport imports from 'eslint-plugin-import';\nimport { config } from 'typescript-eslint';\n\nconst importsConfig: TSESLint.FlatConfig.ConfigArray = config([\n imports.flatConfigs.recommended,\n imports.flatConfigs.typescript,\n {\n rules: {\n 'import/order': [\n 'error',\n {\n groups: ['builtin', 'external', 'internal', ['parent', 'sibling']],\n pathGroups: [\n {\n pattern: 'react',\n group: 'external',\n position: 'before',\n },\n {\n pattern: '@tarsilla/**',\n group: 'internal',\n position: 'before',\n },\n ],\n pathGroupsExcludedImportTypes: ['react', '@tarsilla'],\n 'newlines-between': 'always',\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: true,\n node: true,\n },\n },\n },\n]);\n\nexport { importsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config, configs } from 'typescript-eslint';\n\nconst javascriptConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{cjs,mjs,js,jsx}'],\n extends: [configs.disableTypeChecked],\n});\n\nexport { javascriptConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport jest from 'eslint-plugin-jest';\nimport { config } from 'typescript-eslint';\n\nconst jestConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.test.{js,ts,jsx,tsx}'],\n ...jest.configs['flat/recommended'],\n});\n\nexport { jestConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport prettierRecommended from 'eslint-plugin-prettier/recommended';\nimport { config } from 'typescript-eslint';\n\nconst prettierConfig: TSESLint.FlatConfig.ConfigArray = config([\n prettierRecommended,\n {\n rules: {\n ...prettierRecommended.rules,\n 'prettier/prettier': [\n 'error',\n {\n semi: true,\n trailingComma: 'all',\n singleQuote: true,\n jsxSingleQuote: true,\n printWidth: 120,\n tabWidth: 2,\n },\n {\n usePrettierrc: false,\n fileInfoOptions: {\n withNodeModules: true,\n },\n },\n ],\n },\n },\n]);\n\nexport { prettierConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactHooks from 'eslint-plugin-react-hooks';\nimport { config } from 'typescript-eslint';\n\nconst reactHooksConfig: TSESLint.FlatConfig.ConfigArray = config({\n files: ['**/*.{jsx,tsx}'],\n plugins: {\n 'react-hooks': reactHooks,\n },\n rules: {\n ...reactHooks.configs.recommended.rules,\n 'react/react-in-jsx-scope': 'off',\n 'react/jsx-uses-react': 'off',\n },\n});\n\nexport { reactHooksConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport { config } from 'typescript-eslint';\n\nconst sortImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n rules: {\n 'sort-imports': [\n 'error',\n {\n ignoreCase: true,\n ignoreDeclarationSort: true,\n ignoreMemberSort: false,\n },\n ],\n },\n});\n\nexport { sortImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport unusedImports from 'eslint-plugin-unused-imports';\nimport { config } from 'typescript-eslint';\n\nconst unusedImportsConfig: TSESLint.FlatConfig.ConfigArray = config({\n plugins: {\n 'unused-imports': unusedImports,\n },\n rules: {\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-unused-vars': 'off',\n 'unused-imports/no-unused-imports': 'error',\n 'unused-imports/no-unused-vars': [\n 'error',\n {\n vars: 'all',\n varsIgnorePattern: '^_',\n args: 'after-used',\n argsIgnorePattern: '^_',\n },\n ],\n },\n});\n\nexport { unusedImportsConfig };\n","import type { TSESLint } from '@typescript-eslint/utils';\nimport reactPlugin from 'eslint-plugin-react';\nimport globals from 'globals';\nimport { config } from 'typescript-eslint';\n\nimport {\n allConfig,\n importsConfig,\n javascriptConfig,\n jestConfig,\n prettierConfig,\n reactHooksConfig,\n sortImportsConfig,\n unusedImportsConfig,\n} from '../commons/index.js';\nimport { EslintOptions } from '../types/index.js';\n\nfunction eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.ConfigArray {\n return config(\n ...config({\n ignores,\n }),\n ...config({\n languageOptions: {\n globals: {\n ...globals.browser,\n },\n },\n }),\n ...allConfig,\n ...config({\n files: ['**/*.{jsx,tsx}'],\n ...reactPlugin.configs.flat.recommended,\n ...reactPlugin.configs.flat['jsx-runtime'],\n settings: {\n react: {\n version: 'detect',\n },\n },\n }),\n ...reactHooksConfig,\n ...unusedImportsConfig,\n ...sortImportsConfig,\n ...importsConfig,\n ...javascriptConfig,\n ...jestConfig,\n ...prettierConfig,\n );\n}\n\nexport { eslintReactConfig };\n"],"names":["allConfig","config","js","configs","recommended","stylistic","stylisticTypeChecked","languageOptions","parserOptions","ecmaVersion","sourceType","project","tsconfigRootDir","globals","builtin","es2021","rules","importsConfig","imports","flatConfigs","typescript","groups","pathGroups","pattern","group","position","pathGroupsExcludedImportTypes","alphabetize","order","caseInsensitive","settings","node","javascriptConfig","files","extends","disableTypeChecked","jestConfig","jest","prettierConfig","prettierRecommended","semi","trailingComma","singleQuote","jsxSingleQuote","printWidth","tabWidth","usePrettierrc","fileInfoOptions","withNodeModules","reactHooksConfig","plugins","reactHooks","sortImportsConfig","ignoreCase","ignoreDeclarationSort","ignoreMemberSort","unusedImportsConfig","unusedImports","vars","varsIgnorePattern","args","argsIgnorePattern","eslintReactConfig","ignores","browser","reactPlugin","flat","react","version"],"mappings":"yVAKA,MAAMA,EAA6CC,EAAO,CACxDC,EAAGC,QAAQC,eACRD,EAAQE,aACRF,EAAQG,qBACX,CACEC,gBAAiB,CACfC,cAAe,CACbC,YAAa,SACbC,WAAY,SACZC,SAAS,EACTC,gBAAiB,MAEnBC,QAAS,IACJA,EAAQC,WACRD,EAAQE,SAGfC,MAAO,CACL,iDAAkD,CAAC,QAAS,QAC5D,oDAAqD,QACrD,qCAAsC,YCrBtCC,EAAiDhB,EAAO,CAC5DiB,EAAQC,YAAYf,YACpBc,EAAQC,YAAYC,WACpB,CACEJ,MAAO,CACL,eAAgB,CACd,QACA,CACEK,OAAQ,CAAC,UAAW,WAAY,WAAY,CAAC,SAAU,YACvDC,WAAY,CACV,CACEC,QAAS,QACTC,MAAO,WACPC,SAAU,UAEZ,CACEF,QAAS,eACTC,MAAO,WACPC,SAAU,WAGdC,8BAA+B,CAAC,QAAS,aACzC,mBAAoB,SACpBC,YAAa,CACXC,MAAO,MACPC,iBAAiB,MAKzBC,SAAU,CACR,kBAAmB,CACjBV,YAAY,EACZW,MAAM,OClCRC,EAAoD/B,EAAO,CAC/DgC,MAAO,CAAC,yBACRC,QAAS,CAAC/B,EAAQgC,sBCDdC,EAA8CnC,EAAO,CACzDgC,MAAO,CAAC,gCACLI,EAAKlC,QAAQ,sBCFZmC,EAAkDrC,EAAO,CAC7DsC,EACA,CACEvB,MAAO,IACFuB,EAAoBvB,MACvB,oBAAqB,CACnB,QACA,CACEwB,MAAM,EACNC,cAAe,MACfC,aAAa,EACbC,gBAAgB,EAChBC,WAAY,IACZC,SAAU,GAEZ,CACEC,eAAe,EACfC,gBAAiB,CACfC,iBAAiB,SClBvBC,EAAoDhD,EAAO,CAC/DgC,MAAO,CAAC,kBACRiB,QAAS,CACP,cAAeC,GAEjBnC,MAAO,IACFmC,EAAWhD,QAAQC,YAAYY,MAClC,2BAA4B,MAC5B,uBAAwB,SCTtBoC,EAAqDnD,EAAO,CAChEe,MAAO,CACL,eAAgB,CACd,QACA,CACEqC,YAAY,EACZC,uBAAuB,EACvBC,kBAAkB,OCNpBC,EAAuDvD,EAAO,CAClEiD,QAAS,CACP,iBAAkBO,GAEpBzC,MAAO,CACL,oCAAqC,MACrC,iBAAkB,MAClB,mCAAoC,QACpC,gCAAiC,CAC/B,QACA,CACE0C,KAAM,MACNC,kBAAmB,KACnBC,KAAM,aACNC,kBAAmB,UCD3B,SAASC,GAAkBC,QAAEA,IAC3B,OAAO9D,KACFA,EAAO,CACR8D,eAEC9D,EAAO,CACRM,gBAAiB,CACfM,QAAS,IACJA,EAAQmD,eAIdhE,KACAC,EAAO,CACRgC,MAAO,CAAC,qBACLgC,EAAY9D,QAAQ+D,KAAK9D,eACzB6D,EAAY9D,QAAQ+D,KAAK,eAC5BpC,SAAU,CACRqC,MAAO,CACLC,QAAS,gBAIZnB,KACAO,KACAJ,KACAnC,KACAe,KACAI,KACAE,EAEP"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tarsilla/eslint-config",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -67,17 +67,17 @@
67
67
  "eslint-plugin-react-hooks": "^5.2.0",
68
68
  "eslint-plugin-unused-imports": "^4.1.4",
69
69
  "prettier": "^3.5.3",
70
- "typescript-eslint": "^8.26.1"
70
+ "typescript-eslint": "^8.27.0"
71
71
  },
72
72
  "devDependencies": {
73
73
  "@rollup/plugin-commonjs": "^28.0.3",
74
74
  "@rollup/plugin-node-resolve": "^16.0.1",
75
75
  "@rollup/plugin-swc": "^0.4.0",
76
76
  "@rollup/plugin-terser": "^0.4.4",
77
- "@tarsilla/commit-wizard": "^1.0.1",
77
+ "@tarsilla/commit-wizard": "^1.0.4",
78
78
  "husky": "^9.1.7",
79
79
  "rollup": "^4.36.0",
80
- "rollup-plugin-dts": "^6.2.0",
80
+ "rollup-plugin-dts": "^6.2.1",
81
81
  "rollup-plugin-peer-deps-external": "^2.2.4",
82
82
  "typescript": "^5.8.2"
83
83
  }
@@ -17,6 +17,8 @@ function eslintLibraryConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.Co
17
17
  return config(
18
18
  ...config({
19
19
  ignores,
20
+ }),
21
+ ...config({
20
22
  languageOptions: {
21
23
  globals: {
22
24
  ...globals.node,
@@ -28,6 +28,8 @@ function eslintNextConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.Confi
28
28
  return config(
29
29
  ...config({
30
30
  ignores,
31
+ }),
32
+ ...config({
31
33
  languageOptions: {
32
34
  globals: {
33
35
  ...globals.node,
@@ -19,6 +19,8 @@ function eslintReactConfig({ ignores }: EslintOptions): TSESLint.FlatConfig.Conf
19
19
  return config(
20
20
  ...config({
21
21
  ignores,
22
+ }),
23
+ ...config({
22
24
  languageOptions: {
23
25
  globals: {
24
26
  ...globals.browser,