@santi020k/eslint-config-integrations 2.1.1 → 3.1.0

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.
Files changed (207) hide show
  1. package/CHANGELOG.md +469 -0
  2. package/README.md +4 -0
  3. package/dist/compose.d.ts +5 -15
  4. package/dist/compose.js +18 -130
  5. package/dist/compose.js.map +1 -1
  6. package/dist/extensions.d.ts +5 -0
  7. package/dist/extensions.js +37 -0
  8. package/dist/extensions.js.map +1 -0
  9. package/dist/formats.d.ts +1 -0
  10. package/dist/formats.js +23 -0
  11. package/dist/formats.js.map +1 -0
  12. package/dist/index.d.ts +5 -56
  13. package/dist/index.js +6 -111
  14. package/dist/index.js.map +1 -1
  15. package/dist/libraries.d.ts +1 -0
  16. package/dist/libraries.js +47 -0
  17. package/dist/libraries.js.map +1 -0
  18. package/dist/testing.d.ts +1 -0
  19. package/dist/testing.js +17 -0
  20. package/dist/testing.js.map +1 -0
  21. package/dist/tools.d.ts +1 -0
  22. package/dist/tools.js +23 -0
  23. package/dist/tools.js.map +1 -0
  24. package/package.json +25 -77
  25. package/dist/extensions/a11y.d.ts +0 -9
  26. package/dist/extensions/a11y.js +0 -25
  27. package/dist/extensions/a11y.js.map +0 -1
  28. package/dist/extensions/best-practices.d.ts +0 -16
  29. package/dist/extensions/best-practices.js +0 -27
  30. package/dist/extensions/best-practices.js.map +0 -1
  31. package/dist/extensions/biome.d.ts +0 -9
  32. package/dist/extensions/biome.js +0 -18
  33. package/dist/extensions/biome.js.map +0 -1
  34. package/dist/extensions/boundaries.d.ts +0 -12
  35. package/dist/extensions/boundaries.js +0 -40
  36. package/dist/extensions/boundaries.js.map +0 -1
  37. package/dist/extensions/compat.d.ts +0 -9
  38. package/dist/extensions/compat.js +0 -16
  39. package/dist/extensions/compat.js.map +0 -1
  40. package/dist/extensions/de-morgan.d.ts +0 -9
  41. package/dist/extensions/de-morgan.js +0 -16
  42. package/dist/extensions/de-morgan.js.map +0 -1
  43. package/dist/extensions/depend.d.ts +0 -10
  44. package/dist/extensions/depend.js +0 -16
  45. package/dist/extensions/depend.js.map +0 -1
  46. package/dist/extensions/index.d.ts +0 -16
  47. package/dist/extensions/index.js +0 -33
  48. package/dist/extensions/index.js.map +0 -1
  49. package/dist/extensions/no-only-tests.d.ts +0 -9
  50. package/dist/extensions/no-only-tests.js +0 -21
  51. package/dist/extensions/no-only-tests.js.map +0 -1
  52. package/dist/extensions/node.d.ts +0 -11
  53. package/dist/extensions/node.js +0 -25
  54. package/dist/extensions/node.js.map +0 -1
  55. package/dist/extensions/oxlint.d.ts +0 -10
  56. package/dist/extensions/oxlint.js +0 -14
  57. package/dist/extensions/oxlint.js.map +0 -1
  58. package/dist/extensions/perfectionist.d.ts +0 -9
  59. package/dist/extensions/perfectionist.js +0 -25
  60. package/dist/extensions/perfectionist.js.map +0 -1
  61. package/dist/extensions/regexp.d.ts +0 -10
  62. package/dist/extensions/regexp.js +0 -27
  63. package/dist/extensions/regexp.js.map +0 -1
  64. package/dist/extensions/security.d.ts +0 -9
  65. package/dist/extensions/security.js +0 -21
  66. package/dist/extensions/security.js.map +0 -1
  67. package/dist/extensions/sonarjs.d.ts +0 -5
  68. package/dist/extensions/sonarjs.js +0 -16
  69. package/dist/extensions/sonarjs.js.map +0 -1
  70. package/dist/extensions/unicorn.d.ts +0 -9
  71. package/dist/extensions/unicorn.js +0 -47
  72. package/dist/extensions/unicorn.js.map +0 -1
  73. package/dist/formats/css.d.ts +0 -9
  74. package/dist/formats/css.js +0 -21
  75. package/dist/formats/css.js.map +0 -1
  76. package/dist/formats/graphql.d.ts +0 -9
  77. package/dist/formats/graphql.js +0 -41
  78. package/dist/formats/graphql.js.map +0 -1
  79. package/dist/formats/html.d.ts +0 -9
  80. package/dist/formats/html.js +0 -29
  81. package/dist/formats/html.js.map +0 -1
  82. package/dist/formats/index.d.ts +0 -10
  83. package/dist/formats/index.js +0 -21
  84. package/dist/formats/index.js.map +0 -1
  85. package/dist/formats/jsonc.d.ts +0 -9
  86. package/dist/formats/jsonc.js +0 -73
  87. package/dist/formats/jsonc.js.map +0 -1
  88. package/dist/formats/markdown.d.ts +0 -9
  89. package/dist/formats/markdown.js +0 -73
  90. package/dist/formats/markdown.js.map +0 -1
  91. package/dist/formats/mdx.d.ts +0 -9
  92. package/dist/formats/mdx.js +0 -55
  93. package/dist/formats/mdx.js.map +0 -1
  94. package/dist/formats/package-json.d.ts +0 -9
  95. package/dist/formats/package-json.js +0 -16
  96. package/dist/formats/package-json.js.map +0 -1
  97. package/dist/formats/toml.d.ts +0 -9
  98. package/dist/formats/toml.js +0 -14
  99. package/dist/formats/toml.js.map +0 -1
  100. package/dist/formats/yaml.d.ts +0 -9
  101. package/dist/formats/yaml.js +0 -28
  102. package/dist/formats/yaml.js.map +0 -1
  103. package/dist/lazy.d.ts +0 -24
  104. package/dist/lazy.js +0 -46
  105. package/dist/lazy.js.map +0 -1
  106. package/dist/libraries/ai.d.ts +0 -8
  107. package/dist/libraries/ai.js +0 -29
  108. package/dist/libraries/ai.js.map +0 -1
  109. package/dist/libraries/autogen.d.ts +0 -8
  110. package/dist/libraries/autogen.js +0 -24
  111. package/dist/libraries/autogen.js.map +0 -1
  112. package/dist/libraries/google-genai.d.ts +0 -8
  113. package/dist/libraries/google-genai.js +0 -30
  114. package/dist/libraries/google-genai.js.map +0 -1
  115. package/dist/libraries/i18next.d.ts +0 -9
  116. package/dist/libraries/i18next.js +0 -29
  117. package/dist/libraries/i18next.js.map +0 -1
  118. package/dist/libraries/index.d.ts +0 -17
  119. package/dist/libraries/index.js +0 -38
  120. package/dist/libraries/index.js.map +0 -1
  121. package/dist/libraries/langchain.d.ts +0 -8
  122. package/dist/libraries/langchain.js +0 -30
  123. package/dist/libraries/langchain.js.map +0 -1
  124. package/dist/libraries/llamaindex.d.ts +0 -8
  125. package/dist/libraries/llamaindex.js +0 -30
  126. package/dist/libraries/llamaindex.js.map +0 -1
  127. package/dist/libraries/mastra.d.ts +0 -8
  128. package/dist/libraries/mastra.js +0 -30
  129. package/dist/libraries/mastra.js.map +0 -1
  130. package/dist/libraries/mcp.d.ts +0 -8
  131. package/dist/libraries/mcp.js +0 -33
  132. package/dist/libraries/mcp.js.map +0 -1
  133. package/dist/libraries/openai-agents.d.ts +0 -8
  134. package/dist/libraries/openai-agents.js +0 -32
  135. package/dist/libraries/openai-agents.js.map +0 -1
  136. package/dist/libraries/orm.d.ts +0 -31
  137. package/dist/libraries/orm.js +0 -104
  138. package/dist/libraries/orm.js.map +0 -1
  139. package/dist/libraries/stencil.d.ts +0 -9
  140. package/dist/libraries/stencil.js +0 -49
  141. package/dist/libraries/stencil.js.map +0 -1
  142. package/dist/libraries/storybook.d.ts +0 -9
  143. package/dist/libraries/storybook.js +0 -11
  144. package/dist/libraries/storybook.js.map +0 -1
  145. package/dist/libraries/tailwind.d.ts +0 -9
  146. package/dist/libraries/tailwind.js +0 -21
  147. package/dist/libraries/tailwind.js.map +0 -1
  148. package/dist/libraries/tanstack.d.ts +0 -12
  149. package/dist/libraries/tanstack.js +0 -37
  150. package/dist/libraries/tanstack.js.map +0 -1
  151. package/dist/libraries/turbo.d.ts +0 -9
  152. package/dist/libraries/turbo.js +0 -25
  153. package/dist/libraries/turbo.js.map +0 -1
  154. package/dist/libraries/zod.d.ts +0 -9
  155. package/dist/libraries/zod.js +0 -21
  156. package/dist/libraries/zod.js.map +0 -1
  157. package/dist/testing/cypress.d.ts +0 -9
  158. package/dist/testing/cypress.js +0 -26
  159. package/dist/testing/cypress.js.map +0 -1
  160. package/dist/testing/index.d.ts +0 -7
  161. package/dist/testing/index.js +0 -15
  162. package/dist/testing/index.js.map +0 -1
  163. package/dist/testing/jest-dom.d.ts +0 -9
  164. package/dist/testing/jest-dom.js +0 -21
  165. package/dist/testing/jest-dom.js.map +0 -1
  166. package/dist/testing/jest.d.ts +0 -9
  167. package/dist/testing/jest.js +0 -24
  168. package/dist/testing/jest.js.map +0 -1
  169. package/dist/testing/playwright.d.ts +0 -9
  170. package/dist/testing/playwright.js +0 -24
  171. package/dist/testing/playwright.js.map +0 -1
  172. package/dist/testing/testing-library.d.ts +0 -9
  173. package/dist/testing/testing-library.js +0 -34
  174. package/dist/testing/testing-library.js.map +0 -1
  175. package/dist/testing/vitest.d.ts +0 -9
  176. package/dist/testing/vitest.js +0 -57
  177. package/dist/testing/vitest.js.map +0 -1
  178. package/dist/tools/command.d.ts +0 -9
  179. package/dist/tools/command.js +0 -16
  180. package/dist/tools/command.js.map +0 -1
  181. package/dist/tools/cspell.d.ts +0 -9
  182. package/dist/tools/cspell.js +0 -26
  183. package/dist/tools/cspell.js.map +0 -1
  184. package/dist/tools/docker.d.ts +0 -10
  185. package/dist/tools/docker.js +0 -21
  186. package/dist/tools/docker.js.map +0 -1
  187. package/dist/tools/github-actions.d.ts +0 -10
  188. package/dist/tools/github-actions.js +0 -16
  189. package/dist/tools/github-actions.js.map +0 -1
  190. package/dist/tools/index.d.ts +0 -10
  191. package/dist/tools/index.js +0 -21
  192. package/dist/tools/index.js.map +0 -1
  193. package/dist/tools/jsdoc.d.ts +0 -9
  194. package/dist/tools/jsdoc.js +0 -36
  195. package/dist/tools/jsdoc.js.map +0 -1
  196. package/dist/tools/nx.d.ts +0 -9
  197. package/dist/tools/nx.js +0 -18
  198. package/dist/tools/nx.js.map +0 -1
  199. package/dist/tools/pnpm.d.ts +0 -10
  200. package/dist/tools/pnpm.js +0 -12
  201. package/dist/tools/pnpm.js.map +0 -1
  202. package/dist/tools/prettier.d.ts +0 -9
  203. package/dist/tools/prettier.js +0 -14
  204. package/dist/tools/prettier.js.map +0 -1
  205. package/dist/tools/swagger.d.ts +0 -9
  206. package/dist/tools/swagger.js +0 -22
  207. package/dist/tools/swagger.js.map +0 -1
@@ -1,25 +0,0 @@
1
- import { GLOB_JS_TS } from "@santi020k/eslint-config-core";
2
- import { defineLazyConfig, loadDefault } from "../lazy.js";
3
- const perfectionist = defineLazyConfig("perfectionist", async () => {
4
- const pluginPerfectionist = await loadDefault("eslint-plugin-perfectionist");
5
- return [
6
- {
7
- files: GLOB_JS_TS,
8
- name: "eslint-config-integrations/perfectionist",
9
- plugins: {
10
- perfectionist: pluginPerfectionist
11
- },
12
- rules: {
13
- ...pluginPerfectionist.configs["recommended-natural"].rules,
14
- "perfectionist/sort-imports": "off",
15
- "perfectionist/sort-named-imports": "off",
16
- // Disable simple-import-sort/exports so that perfectionist can handle export sorting without conflicts
17
- "simple-import-sort/exports": "off"
18
- }
19
- }
20
- ];
21
- });
22
- export {
23
- perfectionist
24
- };
25
- //# sourceMappingURL=perfectionist.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/extensions/perfectionist.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\nimport type PluginPerfectionist from 'eslint-plugin-perfectionist'\n\nimport { defineLazyConfig, loadDefault } from '../lazy.js'\n\n/**\n * Perfectionist ESLint configuration\n * Provides rules for sorting and organizing code (imports, exports, object keys, etc.)\n */\nexport const perfectionist: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('perfectionist', async () => {\n const pluginPerfectionist = await loadDefault<typeof PluginPerfectionist>('eslint-plugin-perfectionist')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'eslint-config-integrations/perfectionist',\n plugins: {\n perfectionist: pluginPerfectionist\n },\n rules: {\n ...pluginPerfectionist.configs['recommended-natural'].rules,\n 'perfectionist/sort-imports': 'off',\n 'perfectionist/sort-named-imports': 'off',\n // Disable simple-import-sort/exports so that perfectionist can handle export sorting without conflicts\n 'simple-import-sort/exports': 'off'\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAK3B,SAAS,kBAAkB,mBAAmB;AAMvC,MAAM,gBAAgE,iBAAiB,iBAAiB,YAAY;AACzH,QAAM,sBAAsB,MAAM,YAAwC,6BAA6B;AAEvG,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,eAAe;AAAA,MACjB;AAAA,MACA,OAAO;AAAA,QACL,GAAG,oBAAoB,QAAQ,qBAAqB,EAAE;AAAA,QACtD,8BAA8B;AAAA,QAC9B,oCAAoC;AAAA;AAAA,QAEpC,8BAA8B;AAAA,MAChC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,10 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * RegExp ESLint configuration
5
- * Catches common regex mistakes like exponential backtracking,
6
- * unnecessary escapes, and optimizable character classes
7
- */
8
- declare const regexp: () => Promise<TSESLint.FlatConfig.ConfigArray>;
9
-
10
- export { regexp };
@@ -1,27 +0,0 @@
1
- import { GLOB_JS_TS } from "@santi020k/eslint-config-core";
2
- import { defineLazyConfig, loadModule } from "../lazy.js";
3
- const regexp = defineLazyConfig("regexp", async () => {
4
- const pluginRegexp = await loadModule("eslint-plugin-regexp");
5
- return [
6
- {
7
- files: GLOB_JS_TS,
8
- name: "integrations/regexp",
9
- plugins: {
10
- regexp: pluginRegexp
11
- },
12
- rules: {
13
- // Use recommended rules as base
14
- ...pluginRegexp.configs["flat/recommended"].rules,
15
- "regexp/no-super-linear-backtracking": "error",
16
- // Downgrade some rules to warnings for a smoother adoption
17
- "regexp/no-unused-capturing-group": "warn",
18
- "regexp/no-useless-escape": "warn",
19
- "regexp/prefer-character-class": "warn"
20
- }
21
- }
22
- ];
23
- });
24
- export {
25
- regexp
26
- };
27
- //# sourceMappingURL=regexp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/extensions/regexp.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\nimport type PluginRegexp from 'eslint-plugin-regexp'\n\nimport { defineLazyConfig, loadModule } from '../lazy.js'\n\n/**\n * RegExp ESLint configuration\n * Catches common regex mistakes like exponential backtracking,\n * unnecessary escapes, and optimizable character classes\n */\nexport const regexp: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('regexp', async () => {\n const pluginRegexp = await loadModule<typeof PluginRegexp>('eslint-plugin-regexp')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'integrations/regexp',\n plugins: {\n regexp: pluginRegexp\n },\n rules: {\n // Use recommended rules as base\n ...pluginRegexp.configs['flat/recommended'].rules,\n\n 'regexp/no-super-linear-backtracking': 'error',\n // Downgrade some rules to warnings for a smoother adoption\n 'regexp/no-unused-capturing-group': 'warn',\n 'regexp/no-useless-escape': 'warn',\n 'regexp/prefer-character-class': 'warn'\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAK3B,SAAS,kBAAkB,kBAAkB;AAOtC,MAAM,SAAyD,iBAAiB,UAAU,YAAY;AAC3G,QAAM,eAAe,MAAM,WAAgC,sBAAsB;AAEjF,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,QAAQ;AAAA,MACV;AAAA,MACA,OAAO;AAAA;AAAA,QAEL,GAAG,aAAa,QAAQ,kBAAkB,EAAE;AAAA,QAE5C,uCAAuC;AAAA;AAAA,QAEvC,oCAAoC;AAAA,QACpC,4BAA4B;AAAA,QAC5B,iCAAiC;AAAA,MACnC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * Security ESLint configuration
5
- * Provides rules for catching common security vulnerabilities.
6
- */
7
- declare const security: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { security };
@@ -1,21 +0,0 @@
1
- import { GLOB_JS_TS } from "@santi020k/eslint-config-core";
2
- import { defineLazyConfig, loadDefault } from "../lazy.js";
3
- const security = defineLazyConfig("security", async () => {
4
- const pluginSecurity = await loadDefault("eslint-plugin-security");
5
- return [
6
- {
7
- files: GLOB_JS_TS,
8
- name: "eslint-config-integrations/security",
9
- plugins: {
10
- security: pluginSecurity
11
- },
12
- rules: {
13
- ...pluginSecurity.configs.recommended.rules
14
- }
15
- }
16
- ];
17
- });
18
- export {
19
- security
20
- };
21
- //# sourceMappingURL=security.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/extensions/security.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, type PluginWithConfigs } from '../lazy.js'\n\n/**\n * Security ESLint configuration\n * Provides rules for catching common security vulnerabilities.\n */\nexport const security: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('security', async () => {\n const pluginSecurity = await loadDefault<PluginWithConfigs<'recommended'>>('eslint-plugin-security')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'eslint-config-integrations/security',\n plugins: {\n security: pluginSecurity\n },\n rules: {\n ...pluginSecurity.configs.recommended.rules\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAI3B,SAAS,kBAAkB,mBAA2C;AAM/D,MAAM,WAA2D,iBAAiB,YAAY,YAAY;AAC/G,QAAM,iBAAiB,MAAM,YAA8C,wBAAwB;AAEnG,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,MACA,OAAO;AAAA,QACL,GAAG,eAAe,QAAQ,YAAY;AAAA,MACxC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,5 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- declare const sonarjs: () => Promise<TSESLint.FlatConfig.ConfigArray>;
4
-
5
- export { sonarjs };
@@ -1,16 +0,0 @@
1
- import { GLOB_JS_TS } from "@santi020k/eslint-config-core";
2
- import { defineLazyConfig, loadDefault } from "../lazy.js";
3
- const sonarjs = defineLazyConfig("sonarjs", async () => {
4
- const sonarjsPlugin = await loadDefault("eslint-plugin-sonarjs");
5
- return [
6
- {
7
- ...sonarjsPlugin.configs.recommended,
8
- files: GLOB_JS_TS,
9
- name: "eslint-config/sonarjs"
10
- }
11
- ];
12
- });
13
- export {
14
- sonarjs
15
- };
16
- //# sourceMappingURL=sonarjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/extensions/sonarjs.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, type PluginWithConfigs } from '../lazy.js'\n\nexport const sonarjs: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('sonarjs', async () => {\n const sonarjsPlugin = await loadDefault<PluginWithConfigs<'recommended'>>('eslint-plugin-sonarjs')\n\n return [\n {\n ...sonarjsPlugin.configs.recommended,\n files: GLOB_JS_TS,\n name: 'eslint-config/sonarjs'\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAI3B,SAAS,kBAAkB,mBAA2C;AAE/D,MAAM,UAA0D,iBAAiB,WAAW,YAAY;AAC7G,QAAM,gBAAgB,MAAM,YAA8C,uBAAuB;AAEjG,SAAO;AAAA,IACL;AAAA,MACE,GAAG,cAAc,QAAQ;AAAA,MACzB,OAAO;AAAA,MACP,MAAM;AAAA,IACR;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * Unicorn ESLint configuration
5
- * Modern JavaScript best practices from eslint-plugin-unicorn
6
- */
7
- declare const unicorn: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { unicorn };
@@ -1,47 +0,0 @@
1
- import { GLOB_JS_TS } from "@santi020k/eslint-config-core";
2
- import { defineLazyConfig, loadDefault } from "../lazy.js";
3
- const unicorn = defineLazyConfig("unicorn", async () => {
4
- const pluginUnicorn = await loadDefault("eslint-plugin-unicorn");
5
- return [
6
- {
7
- files: GLOB_JS_TS,
8
- name: "eslint-config/unicorn",
9
- plugins: {
10
- unicorn: pluginUnicorn
11
- },
12
- rules: {
13
- "unicorn/catch-error-name": "warn",
14
- "unicorn/consistent-destructuring": "warn",
15
- "unicorn/consistent-function-scoping": "warn",
16
- "unicorn/no-abusive-eslint-disable": "warn",
17
- "unicorn/no-array-for-each": "warn",
18
- "unicorn/no-for-loop": "warn",
19
- "unicorn/no-lonely-if": "warn",
20
- "unicorn/no-negated-condition": "warn",
21
- "unicorn/no-typeof-undefined": "warn",
22
- "unicorn/no-useless-spread": "warn",
23
- "unicorn/no-useless-undefined": "warn",
24
- "unicorn/prefer-array-find": "warn",
25
- "unicorn/prefer-array-flat": "warn",
26
- "unicorn/prefer-array-flat-map": "warn",
27
- "unicorn/prefer-array-some": "warn",
28
- "unicorn/prefer-includes": "warn",
29
- "unicorn/prefer-logical-operator-over-ternary": "warn",
30
- "unicorn/prefer-number-properties": "warn",
31
- "unicorn/prefer-optional-catch-binding": "warn",
32
- "unicorn/prefer-spread": "warn",
33
- "unicorn/prefer-string-replace-all": "warn",
34
- "unicorn/prefer-string-slice": "warn",
35
- "unicorn/prefer-string-starts-ends-with": "warn",
36
- "unicorn/prefer-string-trim-start-end": "warn",
37
- "unicorn/prefer-switch": "warn",
38
- "unicorn/prefer-ternary": "warn",
39
- "unicorn/throw-new-error": "warn"
40
- }
41
- }
42
- ];
43
- });
44
- export {
45
- unicorn
46
- };
47
- //# sourceMappingURL=unicorn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/extensions/unicorn.ts"],"sourcesContent":["import { GLOB_JS_TS } from '@santi020k/eslint-config-core'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\nimport type PluginUnicorn from 'eslint-plugin-unicorn'\n\nimport { defineLazyConfig, loadDefault } from '../lazy.js'\n\n/**\n * Unicorn ESLint configuration\n * Modern JavaScript best practices from eslint-plugin-unicorn\n */\nexport const unicorn: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('unicorn', async () => {\n const pluginUnicorn = await loadDefault<typeof PluginUnicorn>('eslint-plugin-unicorn')\n\n return [\n {\n files: GLOB_JS_TS,\n name: 'eslint-config/unicorn',\n plugins: {\n unicorn: pluginUnicorn\n },\n rules: {\n 'unicorn/catch-error-name': 'warn',\n 'unicorn/consistent-destructuring': 'warn',\n 'unicorn/consistent-function-scoping': 'warn',\n 'unicorn/no-abusive-eslint-disable': 'warn',\n 'unicorn/no-array-for-each': 'warn',\n 'unicorn/no-for-loop': 'warn',\n 'unicorn/no-lonely-if': 'warn',\n 'unicorn/no-negated-condition': 'warn',\n 'unicorn/no-typeof-undefined': 'warn',\n 'unicorn/no-useless-spread': 'warn',\n 'unicorn/no-useless-undefined': 'warn',\n 'unicorn/prefer-array-find': 'warn',\n 'unicorn/prefer-array-flat': 'warn',\n 'unicorn/prefer-array-flat-map': 'warn',\n 'unicorn/prefer-array-some': 'warn',\n 'unicorn/prefer-includes': 'warn',\n 'unicorn/prefer-logical-operator-over-ternary': 'warn',\n 'unicorn/prefer-number-properties': 'warn',\n 'unicorn/prefer-optional-catch-binding': 'warn',\n 'unicorn/prefer-spread': 'warn',\n 'unicorn/prefer-string-replace-all': 'warn',\n 'unicorn/prefer-string-slice': 'warn',\n 'unicorn/prefer-string-starts-ends-with': 'warn',\n 'unicorn/prefer-string-trim-start-end': 'warn',\n 'unicorn/prefer-switch': 'warn',\n 'unicorn/prefer-ternary': 'warn',\n 'unicorn/throw-new-error': 'warn'\n }\n }\n ]\n})\n"],"mappings":"AAAA,SAAS,kBAAkB;AAK3B,SAAS,kBAAkB,mBAAmB;AAMvC,MAAM,UAA0D,iBAAiB,WAAW,YAAY;AAC7G,QAAM,gBAAgB,MAAM,YAAkC,uBAAuB;AAErF,SAAO;AAAA,IACL;AAAA,MACE,OAAO;AAAA,MACP,MAAM;AAAA,MACN,SAAS;AAAA,QACP,SAAS;AAAA,MACX;AAAA,MACA,OAAO;AAAA,QACL,4BAA4B;AAAA,QAC5B,oCAAoC;AAAA,QACpC,uCAAuC;AAAA,QACvC,qCAAqC;AAAA,QACrC,6BAA6B;AAAA,QAC7B,uBAAuB;AAAA,QACvB,wBAAwB;AAAA,QACxB,gCAAgC;AAAA,QAChC,+BAA+B;AAAA,QAC/B,6BAA6B;AAAA,QAC7B,gCAAgC;AAAA,QAChC,6BAA6B;AAAA,QAC7B,6BAA6B;AAAA,QAC7B,iCAAiC;AAAA,QACjC,6BAA6B;AAAA,QAC7B,2BAA2B;AAAA,QAC3B,gDAAgD;AAAA,QAChD,oCAAoC;AAAA,QACpC,yCAAyC;AAAA,QACzC,yBAAyB;AAAA,QACzB,qCAAqC;AAAA,QACrC,+BAA+B;AAAA,QAC/B,0CAA0C;AAAA,QAC1C,wCAAwC;AAAA,QACxC,yBAAyB;AAAA,QACzB,0BAA0B;AAAA,QAC1B,2BAA2B;AAAA,MAC7B;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * CSS ESLint configuration
5
- * Lints plain CSS files using the official `@eslint/css` language plugin
6
- */
7
- declare const css: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { css };
@@ -1,21 +0,0 @@
1
- import { defineLazyConfig, loadDefault } from "../lazy.js";
2
- const css = defineLazyConfig("css", async () => {
3
- const pluginCss = await loadDefault("@eslint/css");
4
- return [
5
- {
6
- files: ["**/*.css"],
7
- language: "css/css",
8
- name: "integrations/css/recommended",
9
- plugins: {
10
- css: pluginCss
11
- },
12
- rules: {
13
- ...pluginCss.configs.recommended.rules
14
- }
15
- }
16
- ];
17
- });
18
- export {
19
- css
20
- };
21
- //# sourceMappingURL=css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/css.ts"],"sourcesContent":["import type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, type PluginWithConfigs } from '../lazy.js'\n\n/**\n * CSS ESLint configuration\n * Lints plain CSS files using the official `@eslint/css` language plugin\n */\nexport const css: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('css', async () => {\n const pluginCss = await loadDefault<PluginWithConfigs<'recommended'>>('@eslint/css')\n\n return [\n {\n files: ['**/*.css'],\n language: 'css/css',\n name: 'integrations/css/recommended',\n plugins: {\n css: pluginCss\n },\n rules: {\n ...pluginCss.configs.recommended.rules\n }\n }\n ]\n})\n"],"mappings":"AAEA,SAAS,kBAAkB,mBAA2C;AAM/D,MAAM,MAAsD,iBAAiB,OAAO,YAAY;AACrG,QAAM,YAAY,MAAM,YAA8C,aAAa;AAEnF,SAAO;AAAA,IACL;AAAA,MACE,OAAO,CAAC,UAAU;AAAA,MAClB,UAAU;AAAA,MACV,MAAM;AAAA,MACN,SAAS;AAAA,QACP,KAAK;AAAA,MACP;AAAA,MACA,OAAO;AAAA,QACL,GAAG,UAAU,QAAQ,YAAY;AAAA,MACnC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * GraphQL ESLint configuration
5
- * Provides linting rules for GraphQL schema and operations
6
- */
7
- declare const graphql: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { graphql };
@@ -1,41 +0,0 @@
1
- import {
2
- defineLazyConfig,
3
- loadDefault
4
- } from "../lazy.js";
5
- const graphql = defineLazyConfig("graphql", async () => {
6
- const graphqlPlugin = await loadDefault("@graphql-eslint/eslint-plugin");
7
- return [
8
- {
9
- files: ["**/*.schema.graphql", "**/*.schema.gql", "**/schema.graphql", "**/schema.gql"],
10
- languageOptions: {
11
- parser: graphqlPlugin.parser
12
- },
13
- name: "integrations/graphql/schema",
14
- plugins: {
15
- "@graphql-eslint": graphqlPlugin
16
- },
17
- rules: {
18
- ...graphqlPlugin.configs["flat/schema-recommended"].rules,
19
- "@graphql-eslint/no-unreachable-types": "off"
20
- }
21
- },
22
- {
23
- files: ["**/*.graphql", "**/*.gql"],
24
- ignores: ["**/*.schema.graphql", "**/*.schema.gql", "**/schema.graphql", "**/schema.gql"],
25
- languageOptions: {
26
- parser: graphqlPlugin.parser
27
- },
28
- name: "integrations/graphql/operations",
29
- plugins: {
30
- "@graphql-eslint": graphqlPlugin
31
- },
32
- rules: {
33
- ...graphqlPlugin.configs["flat/operations-recommended"].rules
34
- }
35
- }
36
- ];
37
- });
38
- export {
39
- graphql
40
- };
41
- //# sourceMappingURL=graphql.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/graphql.ts"],"sourcesContent":["import {\n defineLazyConfig,\n type FlatParser,\n loadDefault,\n type PluginWithConfigs\n} from '../lazy.js'\n\nimport type { TSESLint } from '@typescript-eslint/utils'\n\ntype GraphqlPlugin = PluginWithConfigs<\n 'flat/operations-recommended' | 'flat/schema-recommended'\n> & {\n parser: FlatParser\n}\n\n/**\n * GraphQL ESLint configuration\n * Provides linting rules for GraphQL schema and operations\n */\nexport const graphql: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('graphql', async () => {\n const graphqlPlugin = await loadDefault<GraphqlPlugin>('@graphql-eslint/eslint-plugin')\n\n return [\n {\n files: ['**/*.schema.graphql', '**/*.schema.gql', '**/schema.graphql', '**/schema.gql'],\n languageOptions: {\n parser: graphqlPlugin.parser\n },\n name: 'integrations/graphql/schema',\n plugins: {\n '@graphql-eslint': graphqlPlugin\n },\n rules: {\n ...graphqlPlugin.configs['flat/schema-recommended'].rules,\n '@graphql-eslint/no-unreachable-types': 'off'\n }\n },\n {\n files: ['**/*.graphql', '**/*.gql'],\n ignores: ['**/*.schema.graphql', '**/*.schema.gql', '**/schema.graphql', '**/schema.gql'],\n languageOptions: {\n parser: graphqlPlugin.parser\n },\n name: 'integrations/graphql/operations',\n plugins: {\n '@graphql-eslint': graphqlPlugin\n },\n rules: {\n ...graphqlPlugin.configs['flat/operations-recommended'].rules\n }\n }\n ]\n})\n"],"mappings":"AAAA;AAAA,EACE;AAAA,EAEA;AAAA,OAEK;AAcA,MAAM,UAA0D,iBAAiB,WAAW,YAAY;AAC7G,QAAM,gBAAgB,MAAM,YAA2B,+BAA+B;AAEtF,SAAO;AAAA,IACL;AAAA,MACE,OAAO,CAAC,uBAAuB,mBAAmB,qBAAqB,eAAe;AAAA,MACtF,iBAAiB;AAAA,QACf,QAAQ,cAAc;AAAA,MACxB;AAAA,MACA,MAAM;AAAA,MACN,SAAS;AAAA,QACP,mBAAmB;AAAA,MACrB;AAAA,MACA,OAAO;AAAA,QACL,GAAG,cAAc,QAAQ,yBAAyB,EAAE;AAAA,QACpD,wCAAwC;AAAA,MAC1C;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAO,CAAC,gBAAgB,UAAU;AAAA,MAClC,SAAS,CAAC,uBAAuB,mBAAmB,qBAAqB,eAAe;AAAA,MACxF,iBAAiB;AAAA,QACf,QAAQ,cAAc;AAAA,MACxB;AAAA,MACA,MAAM;AAAA,MACN,SAAS;AAAA,QACP,mBAAmB;AAAA,MACrB;AAAA,MACA,OAAO;AAAA,QACL,GAAG,cAAc,QAAQ,6BAA6B,EAAE;AAAA,MAC1D;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * HTML ESLint configuration
5
- * Lints plain HTML files using `@html-eslint/eslint-plugin` and its parser
6
- */
7
- declare const html: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { html };
@@ -1,29 +0,0 @@
1
- import { defineLazyConfig, loadDefault, loadModule } from "../lazy.js";
2
- const html = defineLazyConfig("html", async () => {
3
- const pluginHtml = await loadDefault("@html-eslint/eslint-plugin");
4
- const parserHtml = await loadModule("@html-eslint/parser");
5
- const recommended = pluginHtml.configs["flat/recommended"];
6
- return [
7
- {
8
- ...recommended,
9
- files: ["**/*.html"],
10
- languageOptions: {
11
- ...recommended.languageOptions,
12
- parser: parserHtml
13
- },
14
- name: "integrations/html/recommended"
15
- },
16
- {
17
- files: ["**/*.html"],
18
- name: "integrations/html/rules",
19
- rules: {
20
- "@html-eslint/no-inline-styles": "warn",
21
- "@html-eslint/require-button-type": "warn"
22
- }
23
- }
24
- ];
25
- });
26
- export {
27
- html
28
- };
29
- //# sourceMappingURL=html.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/html.ts"],"sourcesContent":["import type { TSESLint } from '@typescript-eslint/utils'\n\nimport { defineLazyConfig, loadDefault, loadModule } from '../lazy.js'\n\ninterface HtmlPlugin {\n configs: Record<'flat/recommended', TSESLint.FlatConfig.Config>\n}\n\n/**\n * HTML ESLint configuration\n * Lints plain HTML files using `@html-eslint/eslint-plugin` and its parser\n */\nexport const html: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('html', async () => {\n const pluginHtml = await loadDefault<HtmlPlugin>('@html-eslint/eslint-plugin')\n const parserHtml = await loadModule<TSESLint.FlatConfig.Parser>('@html-eslint/parser')\n const recommended = pluginHtml.configs['flat/recommended']\n\n return [\n {\n ...recommended,\n files: ['**/*.html'],\n languageOptions: {\n ...recommended.languageOptions,\n parser: parserHtml\n },\n name: 'integrations/html/recommended'\n },\n {\n files: ['**/*.html'],\n name: 'integrations/html/rules',\n rules: {\n '@html-eslint/no-inline-styles': 'warn',\n '@html-eslint/require-button-type': 'warn'\n }\n }\n ]\n})\n"],"mappings":"AAEA,SAAS,kBAAkB,aAAa,kBAAkB;AAUnD,MAAM,OAAuD,iBAAiB,QAAQ,YAAY;AACvG,QAAM,aAAa,MAAM,YAAwB,4BAA4B;AAC7E,QAAM,aAAa,MAAM,WAAuC,qBAAqB;AACrF,QAAM,cAAc,WAAW,QAAQ,kBAAkB;AAEzD,SAAO;AAAA,IACL;AAAA,MACE,GAAG;AAAA,MACH,OAAO,CAAC,WAAW;AAAA,MACnB,iBAAiB;AAAA,QACf,GAAG,YAAY;AAAA,QACf,QAAQ;AAAA,MACV;AAAA,MACA,MAAM;AAAA,IACR;AAAA,IACA;AAAA,MACE,OAAO,CAAC,WAAW;AAAA,MACnB,MAAM;AAAA,MACN,OAAO;AAAA,QACL,iCAAiC;AAAA,QACjC,oCAAoC;AAAA,MACtC;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,10 +0,0 @@
1
- export { css } from './css.js';
2
- export { graphql } from './graphql.js';
3
- export { html } from './html.js';
4
- export { jsonc } from './jsonc.js';
5
- export { markdown } from './markdown.js';
6
- export { mdx } from './mdx.js';
7
- export { packageJson } from './package-json.js';
8
- export { toml } from './toml.js';
9
- export { yaml } from './yaml.js';
10
- import '@typescript-eslint/utils';
@@ -1,21 +0,0 @@
1
- import { css } from "./css.js";
2
- import { graphql } from "./graphql.js";
3
- import { html } from "./html.js";
4
- import { jsonc } from "./jsonc.js";
5
- import { markdown } from "./markdown.js";
6
- import { mdx } from "./mdx.js";
7
- import { packageJson } from "./package-json.js";
8
- import { toml } from "./toml.js";
9
- import { yaml } from "./yaml.js";
10
- export {
11
- css,
12
- graphql,
13
- html,
14
- jsonc,
15
- markdown,
16
- mdx,
17
- packageJson,
18
- toml,
19
- yaml
20
- };
21
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/index.ts"],"sourcesContent":["export { css } from './css.js'\nexport { graphql } from './graphql.js'\nexport { html } from './html.js'\nexport { jsonc } from './jsonc.js'\nexport { markdown } from './markdown.js'\nexport { mdx } from './mdx.js'\nexport { packageJson } from './package-json.js'\nexport { toml } from './toml.js'\nexport { yaml } from './yaml.js'\n"],"mappings":"AAAA,SAAS,WAAW;AACpB,SAAS,eAAe;AACxB,SAAS,YAAY;AACrB,SAAS,aAAa;AACtB,SAAS,gBAAgB;AACzB,SAAS,WAAW;AACpB,SAAS,mBAAmB;AAC5B,SAAS,YAAY;AACrB,SAAS,YAAY;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * JSON/JSONC ESLint configuration
5
- * Provides rules for JSON file linting and package.json key sorting
6
- */
7
- declare const jsonc: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { jsonc };
@@ -1,73 +0,0 @@
1
- import { defineLazyConfig, loadDefault } from "../lazy.js";
2
- const jsonc = defineLazyConfig("jsonc", async () => {
3
- const pluginJsonc = await loadDefault("eslint-plugin-jsonc");
4
- const recommended = pluginJsonc.configs["flat/recommended-with-jsonc"].map((config) => {
5
- if (config.rules && !config.files) {
6
- return {
7
- ...config,
8
- files: [
9
- "*.json",
10
- "**/*.json",
11
- "*.json5",
12
- "**/*.json5",
13
- "*.jsonc",
14
- "**/*.jsonc"
15
- ]
16
- };
17
- }
18
- return config;
19
- });
20
- return [
21
- ...recommended,
22
- {
23
- files: ["**/package.json"],
24
- name: "integrations/jsonc/sorting",
25
- rules: {
26
- "jsonc/sort-keys": ["warn", {
27
- order: [
28
- "name",
29
- "version",
30
- "private",
31
- "publishConfig",
32
- "description",
33
- "type",
34
- "main",
35
- "module",
36
- "types",
37
- "exports",
38
- "files",
39
- "bin",
40
- "scripts",
41
- "dependencies",
42
- "devDependencies",
43
- "peerDependencies",
44
- "peerDependenciesMeta",
45
- "engines",
46
- "packageManager",
47
- "repository",
48
- "homepage",
49
- "bugs",
50
- "keywords",
51
- "author",
52
- "license"
53
- ],
54
- pathPattern: "^$"
55
- }]
56
- }
57
- },
58
- {
59
- files: ["**/tsconfig.json", "**/tsconfig.*.json"],
60
- name: "integrations/jsonc/tsconfig-sorting",
61
- rules: {
62
- "jsonc/sort-keys": ["warn", {
63
- order: ["extends", "compilerOptions", "include", "exclude", "references"],
64
- pathPattern: "^$"
65
- }]
66
- }
67
- }
68
- ];
69
- });
70
- export {
71
- jsonc
72
- };
73
- //# sourceMappingURL=jsonc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/jsonc.ts"],"sourcesContent":["import type { TSESLint } from '@typescript-eslint/utils'\nimport type PluginJsonc from 'eslint-plugin-jsonc'\n\nimport { defineLazyConfig, loadDefault } from '../lazy.js'\n\n/**\n * JSON/JSONC ESLint configuration\n * Provides rules for JSON file linting and package.json key sorting\n */\nexport const jsonc: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('jsonc', async () => {\n const pluginJsonc = await loadDefault<typeof PluginJsonc>('eslint-plugin-jsonc')\n\n const recommended = (pluginJsonc.configs['flat/recommended-with-jsonc'] as TSESLint.FlatConfig.ConfigArray).map((config) => {\n if (config.rules && !config.files) {\n return {\n ...config,\n files: [\n '*.json',\n '**/*.json',\n '*.json5',\n '**/*.json5',\n '*.jsonc',\n '**/*.jsonc'\n ]\n }\n }\n\n return config\n })\n\n return [\n ...recommended,\n {\n files: ['**/package.json'],\n name: 'integrations/jsonc/sorting',\n rules: {\n 'jsonc/sort-keys': ['warn', {\n order: [\n 'name',\n 'version',\n 'private',\n 'publishConfig',\n 'description',\n 'type',\n 'main',\n 'module',\n 'types',\n 'exports',\n 'files',\n 'bin',\n 'scripts',\n 'dependencies',\n 'devDependencies',\n 'peerDependencies',\n 'peerDependenciesMeta',\n 'engines',\n 'packageManager',\n 'repository',\n 'homepage',\n 'bugs',\n 'keywords',\n 'author',\n 'license'\n ],\n pathPattern: '^$'\n }]\n }\n },\n {\n files: ['**/tsconfig.json', '**/tsconfig.*.json'],\n name: 'integrations/jsonc/tsconfig-sorting',\n rules: {\n 'jsonc/sort-keys': ['warn', {\n order: ['extends', 'compilerOptions', 'include', 'exclude', 'references'],\n pathPattern: '^$'\n }]\n }\n }\n ]\n})\n"],"mappings":"AAGA,SAAS,kBAAkB,mBAAmB;AAMvC,MAAM,QAAwD,iBAAiB,SAAS,YAAY;AACzG,QAAM,cAAc,MAAM,YAAgC,qBAAqB;AAE/E,QAAM,cAAe,YAAY,QAAQ,6BAA6B,EAAsC,IAAI,CAAC,WAAW;AAC1H,QAAI,OAAO,SAAS,CAAC,OAAO,OAAO;AACjC,aAAO;AAAA,QACL,GAAG;AAAA,QACH,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,WAAO;AAAA,EACT,CAAC;AAED,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,MACE,OAAO,CAAC,iBAAiB;AAAA,MACzB,MAAM;AAAA,MACN,OAAO;AAAA,QACL,mBAAmB,CAAC,QAAQ;AAAA,UAC1B,OAAO;AAAA,YACL;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UACA,aAAa;AAAA,QACf,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAO,CAAC,oBAAoB,oBAAoB;AAAA,MAChD,MAAM;AAAA,MACN,OAAO;AAAA,QACL,mBAAmB,CAAC,QAAQ;AAAA,UAC1B,OAAO,CAAC,WAAW,mBAAmB,WAAW,WAAW,YAAY;AAAA,UACxE,aAAa;AAAA,QACf,CAAC;AAAA,MACH;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * Markdown ESLint configuration
5
- * Lints markdown files for common issues
6
- */
7
- declare const markdown: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { markdown };
@@ -1,73 +0,0 @@
1
- import { defineLazyConfig, loadDefault } from "../lazy.js";
2
- const markdown = defineLazyConfig("markdown", async () => {
3
- const pluginMarkdown = await loadDefault("@eslint/markdown");
4
- const tsEslint = await loadDefault("typescript-eslint");
5
- return [
6
- ...pluginMarkdown.configs.recommended,
7
- {
8
- files: ["**/*.md"],
9
- language: "markdown/commonmark",
10
- name: "integrations/markdown",
11
- rules: {
12
- "@stylistic/indent": "off",
13
- "@stylistic/jsx-closing-bracket-location": "off",
14
- "@stylistic/jsx-tag-spacing": "off",
15
- "@stylistic/lines-around-comment": "off",
16
- "@stylistic/no-multi-spaces": "off",
17
- "comma-dangle": "off",
18
- // Disable js/ts Eslint rules that conflict with markdown
19
- indent: "off",
20
- "markdown/fenced-code-language": "error",
21
- "markdown/heading-increment": "error",
22
- "markdown/no-duplicate-headings": "off",
23
- "markdown/no-empty-links": "error",
24
- "markdown/no-html": "off",
25
- "markdown/no-invalid-label-refs": "error",
26
- "markdown/no-missing-label-refs": "off",
27
- "no-irregular-whitespace": "off",
28
- "no-multi-spaces": "off",
29
- "no-unused-vars": "off"
30
- }
31
- },
32
- {
33
- files: ["**/*.md/*.ts", "**/*.md/*.tsx", "**/*.md/*.js", "**/*.md/*.jsx"],
34
- languageOptions: {
35
- parserOptions: {
36
- allowDefaultProject: true,
37
- program: null,
38
- project: null,
39
- projectService: false
40
- }
41
- },
42
- name: "integrations/markdown-code-blocks",
43
- rules: {
44
- "@typescript-eslint/await-thenable": "off",
45
- "@typescript-eslint/no-floating-promises": "off",
46
- "@typescript-eslint/no-misused-promises": "off",
47
- "@typescript-eslint/no-unnecessary-type-assertion": "off",
48
- "@typescript-eslint/no-unsafe-argument": "off",
49
- // Disable type-aware rules — code blocks in markdown have no tsconfig
50
- "@typescript-eslint/no-unsafe-assignment": "off",
51
- "@typescript-eslint/no-unsafe-call": "off",
52
- "@typescript-eslint/no-unsafe-member-access": "off",
53
- "@typescript-eslint/no-unsafe-return": "off",
54
- "@typescript-eslint/require-await": "off",
55
- "@typescript-eslint/restrict-template-expressions": "off",
56
- "@typescript-eslint/unbound-method": "off",
57
- // Disable other rules that don't make sense for code snippets
58
- ...tsEslint.configs.disableTypeChecked.rules,
59
- "@typescript-eslint/consistent-type-imports": "off",
60
- "@typescript-eslint/no-explicit-any": "off",
61
- "@typescript-eslint/no-unused-expressions": "off",
62
- "@typescript-eslint/no-unused-vars": "off",
63
- "no-undef": "off",
64
- "no-unused-expressions": "off",
65
- "no-unused-vars": "off"
66
- }
67
- }
68
- ];
69
- });
70
- export {
71
- markdown
72
- };
73
- //# sourceMappingURL=markdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/formats/markdown.ts"],"sourcesContent":["import type { TSESLint } from '@typescript-eslint/utils'\n\nimport { type ConfigWithRules, defineLazyConfig, loadDefault } from '../lazy.js'\n\ninterface MarkdownPlugin {\n configs: {\n recommended: TSESLint.FlatConfig.ConfigArray\n }\n}\n\ninterface TypescriptEslint {\n configs: {\n disableTypeChecked: ConfigWithRules\n }\n}\n\n/**\n * Markdown ESLint configuration\n * Lints markdown files for common issues\n */\nexport const markdown: () => Promise<TSESLint.FlatConfig.ConfigArray> = defineLazyConfig('markdown', async () => {\n const pluginMarkdown = await loadDefault<MarkdownPlugin>('@eslint/markdown')\n const tsEslint = await loadDefault<TypescriptEslint>('typescript-eslint')\n\n return [\n ...(pluginMarkdown.configs.recommended),\n {\n files: ['**/*.md'],\n language: 'markdown/commonmark',\n name: 'integrations/markdown',\n rules: {\n '@stylistic/indent': 'off',\n '@stylistic/jsx-closing-bracket-location': 'off',\n '@stylistic/jsx-tag-spacing': 'off',\n '@stylistic/lines-around-comment': 'off',\n '@stylistic/no-multi-spaces': 'off',\n 'comma-dangle': 'off',\n // Disable js/ts Eslint rules that conflict with markdown\n indent: 'off',\n 'markdown/fenced-code-language': 'error',\n 'markdown/heading-increment': 'error',\n 'markdown/no-duplicate-headings': 'off',\n 'markdown/no-empty-links': 'error',\n 'markdown/no-html': 'off',\n 'markdown/no-invalid-label-refs': 'error',\n 'markdown/no-missing-label-refs': 'off',\n 'no-irregular-whitespace': 'off',\n 'no-multi-spaces': 'off',\n 'no-unused-vars': 'off'\n }\n },\n {\n files: ['**/*.md/*.ts', '**/*.md/*.tsx', '**/*.md/*.js', '**/*.md/*.jsx'],\n languageOptions: {\n parserOptions: {\n allowDefaultProject: true,\n program: null,\n project: null,\n projectService: false\n }\n },\n name: 'integrations/markdown-code-blocks',\n rules: {\n '@typescript-eslint/await-thenable': 'off',\n '@typescript-eslint/no-floating-promises': 'off',\n '@typescript-eslint/no-misused-promises': 'off',\n '@typescript-eslint/no-unnecessary-type-assertion': 'off',\n '@typescript-eslint/no-unsafe-argument': 'off',\n // Disable type-aware rules — code blocks in markdown have no tsconfig\n '@typescript-eslint/no-unsafe-assignment': 'off',\n '@typescript-eslint/no-unsafe-call': 'off',\n '@typescript-eslint/no-unsafe-member-access': 'off',\n '@typescript-eslint/no-unsafe-return': 'off',\n '@typescript-eslint/require-await': 'off',\n '@typescript-eslint/restrict-template-expressions': 'off',\n '@typescript-eslint/unbound-method': 'off',\n // Disable other rules that don't make sense for code snippets\n ...tsEslint.configs.disableTypeChecked.rules,\n '@typescript-eslint/consistent-type-imports': 'off',\n '@typescript-eslint/no-explicit-any': 'off',\n '@typescript-eslint/no-unused-expressions': 'off',\n '@typescript-eslint/no-unused-vars': 'off',\n 'no-undef': 'off',\n 'no-unused-expressions': 'off',\n 'no-unused-vars': 'off'\n }\n }\n ]\n})\n"],"mappings":"AAEA,SAA+B,kBAAkB,mBAAmB;AAkB7D,MAAM,WAA2D,iBAAiB,YAAY,YAAY;AAC/G,QAAM,iBAAiB,MAAM,YAA4B,kBAAkB;AAC3E,QAAM,WAAW,MAAM,YAA8B,mBAAmB;AAExE,SAAO;AAAA,IACL,GAAI,eAAe,QAAQ;AAAA,IAC3B;AAAA,MACE,OAAO,CAAC,SAAS;AAAA,MACjB,UAAU;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,QACL,qBAAqB;AAAA,QACrB,2CAA2C;AAAA,QAC3C,8BAA8B;AAAA,QAC9B,mCAAmC;AAAA,QACnC,8BAA8B;AAAA,QAC9B,gBAAgB;AAAA;AAAA,QAEhB,QAAQ;AAAA,QACR,iCAAiC;AAAA,QACjC,8BAA8B;AAAA,QAC9B,kCAAkC;AAAA,QAClC,2BAA2B;AAAA,QAC3B,oBAAoB;AAAA,QACpB,kCAAkC;AAAA,QAClC,kCAAkC;AAAA,QAClC,2BAA2B;AAAA,QAC3B,mBAAmB;AAAA,QACnB,kBAAkB;AAAA,MACpB;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAO,CAAC,gBAAgB,iBAAiB,gBAAgB,eAAe;AAAA,MACxE,iBAAiB;AAAA,QACf,eAAe;AAAA,UACb,qBAAqB;AAAA,UACrB,SAAS;AAAA,UACT,SAAS;AAAA,UACT,gBAAgB;AAAA,QAClB;AAAA,MACF;AAAA,MACA,MAAM;AAAA,MACN,OAAO;AAAA,QACL,qCAAqC;AAAA,QACrC,2CAA2C;AAAA,QAC3C,0CAA0C;AAAA,QAC1C,oDAAoD;AAAA,QACpD,yCAAyC;AAAA;AAAA,QAEzC,2CAA2C;AAAA,QAC3C,qCAAqC;AAAA,QACrC,8CAA8C;AAAA,QAC9C,uCAAuC;AAAA,QACvC,oCAAoC;AAAA,QACpC,oDAAoD;AAAA,QACpD,qCAAqC;AAAA;AAAA,QAErC,GAAG,SAAS,QAAQ,mBAAmB;AAAA,QACvC,8CAA8C;AAAA,QAC9C,sCAAsC;AAAA,QACtC,4CAA4C;AAAA,QAC5C,qCAAqC;AAAA,QACrC,YAAY;AAAA,QACZ,yBAAyB;AAAA,QACzB,kBAAkB;AAAA,MACpB;AAAA,IACF;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,9 +0,0 @@
1
- import { TSESLint } from '@typescript-eslint/utils';
2
-
3
- /**
4
- * MDX ESLint configuration
5
- * Lints MDX files with proper code block handling
6
- */
7
- declare const mdx: () => Promise<TSESLint.FlatConfig.ConfigArray>;
8
-
9
- export { mdx };