diff --git a/eslint.config.js b/eslint.config.js index c60925f..da4b4db 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -2,7 +2,12 @@ import antfu from '@antfu/eslint-config' export default antfu( - { vue: true }, + { + vue: true, + formatters: { + markdown: 'dprint', + }, + }, { ignores: [ 'test-out/**', diff --git a/package.json b/package.json index 44c2ccb..ee62ac0 100644 --- a/package.json +++ b/package.json @@ -60,6 +60,7 @@ "esbuild": "^0.25.2", "esbuild-plugin-copy": "^2.1.1", "eslint": "^9.23.0", + "eslint-plugin-format": "^1.0.1", "fast-glob": "^3.3.3", "fs-extra": "^11.3.0", "jiti": "^2.4.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c9d2f0b..ee5e0c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,7 +23,7 @@ importers: version: 2.3.0 '@antfu/eslint-config': specifier: ^4.11.0 - version: 4.11.0(@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(@vue/compiler-sfc@3.5.13)(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)(vitest@3.1.1(@types/debug@4.1.12)(@types/node@22.13.17)(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.1)) + version: 4.11.0(@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(@vue/compiler-sfc@3.5.13)(eslint-plugin-format@1.0.1(eslint@9.23.0(jiti@2.4.2)))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)(vitest@3.1.1(@types/debug@4.1.12)(@types/node@22.13.17)(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.1)) '@antfu/ni': specifier: ^24.3.0 version: 24.3.0 @@ -60,6 +60,9 @@ importers: eslint: specifier: ^9.23.0 version: 9.23.0(jiti@2.4.2) + eslint-plugin-format: + specifier: ^1.0.1 + version: 1.0.1(eslint@9.23.0(jiti@2.4.2)) fast-glob: specifier: ^3.3.3 version: 3.3.3 @@ -417,6 +420,15 @@ packages: search-insights: optional: true + '@dprint/formatter@0.3.0': + resolution: {integrity: sha512-N9fxCxbaBOrDkteSOzaCqwWjso5iAe+WJPsHC021JfHNj2ThInPNEF13ORDKta3llq5D1TlclODCvOvipH7bWQ==} + + '@dprint/markdown@0.17.8': + resolution: {integrity: sha512-ukHFOg+RpG284aPdIg7iPrCYmMs3Dqy43S1ejybnwlJoFiW02b+6Bbr5cfZKFRYNP3dKGM86BqHEnMzBOyLvvA==} + + '@dprint/toml@0.6.4': + resolution: {integrity: sha512-bZXIUjxr0LIuHWshZr/5mtUkOrnh0NKVZEF6ACojW5z7zkJu7s9sV2mMXm8XQDqN4cJzdHYUYzUyEGdfciaLJA==} + '@emnapi/core@1.4.0': resolution: {integrity: sha512-H+N/FqT07NmLmt6OFFtDfwe8PNygprzBikrEMyQfgqSmT0vzE515Pz7R8izwB9q/zsH/MA64AKoul3sA6/CzVg==} @@ -2630,6 +2642,11 @@ packages: eslint-flat-config-utils@2.0.1: resolution: {integrity: sha512-brf0eAgQ6JlKj3bKfOTuuI7VcCZvi8ZCD1MMTVoEvS/d38j8cByZViLFALH/36+eqB17ukmfmKq3bWzGvizejA==} + eslint-formatting-reporter@0.0.0: + resolution: {integrity: sha512-k9RdyTqxqN/wNYVaTk/ds5B5rA8lgoAmvceYN7bcZMBwU7TuXx5ntewJv81eF3pIL/CiJE+pJZm36llG8yhyyw==} + peerDependencies: + eslint: '>=8.40.0' + eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} @@ -2649,6 +2666,9 @@ packages: peerDependencies: eslint: '*' + eslint-parser-plain@0.1.1: + resolution: {integrity: sha512-KRgd6wuxH4U8kczqPp+Oyk4irThIhHWxgFgLDtpgjUGVIS3wGrJntvZW/p6hHq1T4FOwnOtCNkvAI4Kr+mQ/Hw==} + eslint-plugin-antfu@3.1.1: resolution: {integrity: sha512-7Q+NhwLfHJFvopI2HBZbSxWXngTwBLKxW1AGXLr2lEGxcEIK/AsDs8pn8fvIizl5aZjBbVbVK5ujmMpBe4Tvdg==} peerDependencies: @@ -2665,6 +2685,11 @@ packages: peerDependencies: eslint: '>=8' + eslint-plugin-format@1.0.1: + resolution: {integrity: sha512-Tdns+CDjS+m7QrM85wwRi2yLae88XiWVdIOXjp9mDII0pmTBQlczPCmjpKnjiUIY3yPZNLqb5Ms/A/JXcBF2Dw==} + peerDependencies: + eslint: ^8.40.0 || ^9.0.0 + eslint-plugin-import-x@4.10.0: resolution: {integrity: sha512-5ej+0WILhX3D6wkcdsyYmPp10SUIK6fmuZ6KS8nf9MD8CJ6/S/3Dl7m21g+MLeaTMsvcEXo3JunNAbgHwXxs/g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -2927,6 +2952,9 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + fast-glob@3.3.3: resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} engines: {node: '>=8.6.0'} @@ -4143,11 +4171,20 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} hasBin: true + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} + engines: {node: '>=14'} + hasBin: true + process-nextick-args@2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} @@ -5379,7 +5416,7 @@ snapshots: '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 - '@antfu/eslint-config@4.11.0(@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(@vue/compiler-sfc@3.5.13)(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)(vitest@3.1.1(@types/debug@4.1.12)(@types/node@22.13.17)(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.1))': + '@antfu/eslint-config@4.11.0(@typescript-eslint/utils@8.29.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2))(@vue/compiler-sfc@3.5.13)(eslint-plugin-format@1.0.1(eslint@9.23.0(jiti@2.4.2)))(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2)(vitest@3.1.1(@types/debug@4.1.12)(@types/node@22.13.17)(jiti@2.4.2)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.1))': dependencies: '@antfu/install-pkg': 1.0.0 '@clack/prompts': 0.10.0 @@ -5418,6 +5455,8 @@ snapshots: toml-eslint-parser: 0.10.0 vue-eslint-parser: 10.1.1(eslint@9.23.0(jiti@2.4.2)) yaml-eslint-parser: 1.3.0 + optionalDependencies: + eslint-plugin-format: 1.0.1(eslint@9.23.0(jiti@2.4.2)) transitivePeerDependencies: - '@eslint/json' - '@typescript-eslint/utils' @@ -5644,6 +5683,12 @@ snapshots: transitivePeerDependencies: - '@algolia/client-search' + '@dprint/formatter@0.3.0': {} + + '@dprint/markdown@0.17.8': {} + + '@dprint/toml@0.6.4': {} + '@emnapi/core@1.4.0': dependencies: '@emnapi/wasi-threads': 1.0.1 @@ -7869,6 +7914,11 @@ snapshots: dependencies: pathe: 2.0.3 + eslint-formatting-reporter@0.0.0(eslint@9.23.0(jiti@2.4.2)): + dependencies: + eslint: 9.23.0(jiti@2.4.2) + prettier-linter-helpers: 1.0.0 + eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 @@ -7887,6 +7937,8 @@ snapshots: dependencies: eslint: 9.23.0(jiti@2.4.2) + eslint-parser-plain@0.1.1: {} + eslint-plugin-antfu@3.1.1(eslint@9.23.0(jiti@2.4.2)): dependencies: eslint: 9.23.0(jiti@2.4.2) @@ -7903,6 +7955,17 @@ snapshots: eslint: 9.23.0(jiti@2.4.2) eslint-compat-utils: 0.5.1(eslint@9.23.0(jiti@2.4.2)) + eslint-plugin-format@1.0.1(eslint@9.23.0(jiti@2.4.2)): + dependencies: + '@dprint/formatter': 0.3.0 + '@dprint/markdown': 0.17.8 + '@dprint/toml': 0.6.4 + eslint: 9.23.0(jiti@2.4.2) + eslint-formatting-reporter: 0.0.0(eslint@9.23.0(jiti@2.4.2)) + eslint-parser-plain: 0.1.1 + prettier: 3.5.3 + synckit: 0.9.2 + eslint-plugin-import-x@4.10.0(eslint@9.23.0(jiti@2.4.2))(typescript@5.8.2): dependencies: '@pkgr/core': 0.2.0 @@ -8304,6 +8367,8 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-diff@1.3.0: {} + fast-glob@3.3.3: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -9706,8 +9771,14 @@ snapshots: prelude-ls@1.2.1: {} + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + prettier@2.8.8: {} + prettier@3.5.3: {} + process-nextick-args@2.0.1: {} property-information@7.0.0: {}