@next-vibe/checker 1.0.51 → 3.0.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.
- package/LICENSE +669 -5
- package/README.md +179 -200
- package/check.config.ts +85 -16
- package/generated/alias-map.ts +30 -0
- package/generated/endpoint.ts +75 -0
- package/{src/app/api/[locale]/system/check/oxlint/plugins/i18n/src/index.ts → oxlint-plugins/i18n.ts} +45 -9
- package/{src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/src/index.ts → oxlint-plugins/jsx-capitalization.ts} +84 -17
- package/{src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/src/index.ts → oxlint-plugins/restricted-syntax.ts} +40 -14
- package/package.json +28 -132
- package/.dist/LICENSE +0 -674
- package/.dist/README.md +0 -257
- package/.dist/bin/vibe-runtime.js +0 -58166
- package/.dist/bin/vibe-runtime.js.map +0 -451
- package/.dist/oxlint-plugins/i18n.js +0 -381
- package/.dist/oxlint-plugins/jsx-capitalization.js +0 -436
- package/.dist/oxlint-plugins/restricted-syntax.js +0 -409
- package/src/app/api/[locale]/LICENSE +0 -674
- package/src/app/api/[locale]/i18n/de/index.ts +0 -15
- package/src/app/api/[locale]/i18n/en/index.ts +0 -14
- package/src/app/api/[locale]/i18n/pl/index.ts +0 -13
- package/src/app/api/[locale]/shared/i18n/de/index.ts +0 -85
- package/src/app/api/[locale]/shared/i18n/en/index.ts +0 -83
- package/src/app/api/[locale]/shared/i18n/pl/index.ts +0 -85
- package/src/app/api/[locale]/shared/stats-filtering.ts +0 -174
- package/src/app/api/[locale]/shared/types/common.schema.ts +0 -55
- package/src/app/api/[locale]/shared/types/response.schema.ts +0 -411
- package/src/app/api/[locale]/shared/types/stats-filtering.schema.ts +0 -315
- package/src/app/api/[locale]/shared/types/utils.ts +0 -187
- package/src/app/api/[locale]/shared/utils/base64.ts +0 -46
- package/src/app/api/[locale]/shared/utils/env-util.ts +0 -36
- package/src/app/api/[locale]/shared/utils/i18n/de/index.ts +0 -21
- package/src/app/api/[locale]/shared/utils/i18n/en/index.ts +0 -19
- package/src/app/api/[locale]/shared/utils/i18n/pl/index.ts +0 -21
- package/src/app/api/[locale]/shared/utils/index.ts +0 -11
- package/src/app/api/[locale]/shared/utils/object-path.ts +0 -41
- package/src/app/api/[locale]/shared/utils/object.test.ts +0 -82
- package/src/app/api/[locale]/shared/utils/object.ts +0 -73
- package/src/app/api/[locale]/shared/utils/parse-error.ts +0 -134
- package/src/app/api/[locale]/shared/utils/parse-json.ts +0 -62
- package/src/app/api/[locale]/shared/utils/time.ts +0 -46
- package/src/app/api/[locale]/shared/utils/validation.ts +0 -117
- package/src/app/api/[locale]/shared/utils/zod-required-fields.ts +0 -115
- package/src/app/api/[locale]/system/builder/definition.ts +0 -1750
- package/src/app/api/[locale]/system/builder/enum.ts +0 -78
- package/src/app/api/[locale]/system/builder/i18n/de/index.ts +0 -645
- package/src/app/api/[locale]/system/builder/i18n/en/index.ts +0 -653
- package/src/app/api/[locale]/system/builder/i18n/pl/index.ts +0 -643
- package/src/app/api/[locale]/system/builder/repository/build-executor.test.ts +0 -178
- package/src/app/api/[locale]/system/builder/repository/build-executor.ts +0 -538
- package/src/app/api/[locale]/system/builder/repository/bun-compiler.ts +0 -250
- package/src/app/api/[locale]/system/builder/repository/bundle-analyzer.ts +0 -170
- package/src/app/api/[locale]/system/builder/repository/config-loader.ts +0 -146
- package/src/app/api/[locale]/system/builder/repository/config-validator.ts +0 -97
- package/src/app/api/[locale]/system/builder/repository/constants.ts +0 -125
- package/src/app/api/[locale]/system/builder/repository/error-suggester.ts +0 -67
- package/src/app/api/[locale]/system/builder/repository/file-copier.ts +0 -90
- package/src/app/api/[locale]/system/builder/repository/folder-cleaner.ts +0 -75
- package/src/app/api/[locale]/system/builder/repository/index.ts +0 -2
- package/src/app/api/[locale]/system/builder/repository/npm-package-generator.ts +0 -143
- package/src/app/api/[locale]/system/builder/repository/output-formatter.ts +0 -104
- package/src/app/api/[locale]/system/builder/repository/profile-service.ts +0 -79
- package/src/app/api/[locale]/system/builder/repository/report-generator.ts +0 -109
- package/src/app/api/[locale]/system/builder/repository/vite-compiler.ts +0 -277
- package/src/app/api/[locale]/system/builder/route.ts +0 -21
- package/src/app/api/[locale]/system/builder/test-files/file1.ts +0 -2
- package/src/app/api/[locale]/system/builder/test-files/file2.tsx +0 -10
- package/src/app/api/[locale]/system/builder/test-files/file3.tsx +0 -16
- package/src/app/api/[locale]/system/builder/test-files/folderToCopy/fileInFolder.ts +0 -2
- package/src/app/api/[locale]/system/builder/test-files/test-config.ts +0 -38
- package/src/app/api/[locale]/system/builder/test-files/test-delete-config.ts +0 -8
- package/src/app/api/[locale]/system/builder/test-files/test-project/package.json +0 -24
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/constants.ts +0 -6
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/greet.ts +0 -18
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/index.ts +0 -7
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/utils/calculate.ts +0 -27
- package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.json +0 -19
- package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.tsbuildinfo +0 -1
- package/src/app/api/[locale]/system/builder/test-files/test3.css +0 -1
- package/src/app/api/[locale]/system/check/config/create/definition.ts +0 -266
- package/src/app/api/[locale]/system/check/config/create/i18n/de/index.ts +0 -151
- package/src/app/api/[locale]/system/check/config/create/i18n/en/index.ts +0 -146
- package/src/app/api/[locale]/system/check/config/create/i18n/pl/index.ts +0 -148
- package/src/app/api/[locale]/system/check/config/create/repository.ts +0 -269
- package/src/app/api/[locale]/system/check/config/create/route.ts +0 -21
- package/src/app/api/[locale]/system/check/config/repository.ts +0 -846
- package/src/app/api/[locale]/system/check/config/shared.ts +0 -364
- package/src/app/api/[locale]/system/check/config/types.ts +0 -610
- package/src/app/api/[locale]/system/check/config/utils.ts +0 -155
- package/src/app/api/[locale]/system/check/i18n/de/index.ts +0 -19
- package/src/app/api/[locale]/system/check/i18n/en/index.ts +0 -18
- package/src/app/api/[locale]/system/check/i18n/pl/index.ts +0 -19
- package/src/app/api/[locale]/system/check/lint/definition.ts +0 -383
- package/src/app/api/[locale]/system/check/lint/enum.ts +0 -34
- package/src/app/api/[locale]/system/check/lint/i18n/de/index.ts +0 -160
- package/src/app/api/[locale]/system/check/lint/i18n/en/index.ts +0 -158
- package/src/app/api/[locale]/system/check/lint/i18n/pl/index.ts +0 -160
- package/src/app/api/[locale]/system/check/lint/repository.ts +0 -844
- package/src/app/api/[locale]/system/check/lint/route.ts +0 -21
- package/src/app/api/[locale]/system/check/oxlint/README.md +0 -190
- package/src/app/api/[locale]/system/check/oxlint/definition.ts +0 -375
- package/src/app/api/[locale]/system/check/oxlint/enum.ts +0 -34
- package/src/app/api/[locale]/system/check/oxlint/i18n/de/index.ts +0 -166
- package/src/app/api/[locale]/system/check/oxlint/i18n/en/index.ts +0 -164
- package/src/app/api/[locale]/system/check/oxlint/i18n/pl/index.ts +0 -166
- package/src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/README.md +0 -269
- package/src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/test.tsx +0 -74
- package/src/app/api/[locale]/system/check/oxlint/plugins/shared/config-loader.ts +0 -283
- package/src/app/api/[locale]/system/check/oxlint/repository.ts +0 -553
- package/src/app/api/[locale]/system/check/oxlint/route.ts +0 -21
- package/src/app/api/[locale]/system/check/oxlint/types.ts +0 -191
- package/src/app/api/[locale]/system/check/test-project/.vscode/settings.json +0 -48
- package/src/app/api/[locale]/system/check/test-project/bun.lock +0 -640
- package/src/app/api/[locale]/system/check/test-project/check.config.ts +0 -955
- package/src/app/api/[locale]/system/check/test-project/package.json +0 -17
- package/src/app/api/[locale]/system/check/test-project/src/constants.ts +0 -6
- package/src/app/api/[locale]/system/check/test-project/src/greet.ts +0 -18
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/a11y-issues.tsx +0 -107
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/eslint-issues.tsx +0 -37
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/general-issues.ts +0 -135
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/i18n-issues.tsx +0 -113
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/jsx-capitalization-issues.tsx +0 -127
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/nextjs-issues.tsx +0 -92
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/promise-issues.ts +0 -73
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/react-issues.tsx +0 -95
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/restricted-syntax-issues.tsx +0 -61
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/typescript-issues.ts +0 -78
- package/src/app/api/[locale]/system/check/test-project/src/utils/calculate.ts +0 -27
- package/src/app/api/[locale]/system/check/test-project/tsconfig.json +0 -22
- package/src/app/api/[locale]/system/check/test-project/tsconfig.tsbuildinfo +0 -1
- package/src/app/api/[locale]/system/check/typecheck/definition.ts +0 -328
- package/src/app/api/[locale]/system/check/typecheck/enum.ts +0 -34
- package/src/app/api/[locale]/system/check/typecheck/i18n/de/index.ts +0 -148
- package/src/app/api/[locale]/system/check/typecheck/i18n/en/index.ts +0 -145
- package/src/app/api/[locale]/system/check/typecheck/i18n/pl/index.ts +0 -148
- package/src/app/api/[locale]/system/check/typecheck/repository.ts +0 -863
- package/src/app/api/[locale]/system/check/typecheck/route.ts +0 -21
- package/src/app/api/[locale]/system/check/typecheck/utils.ts +0 -160
- package/src/app/api/[locale]/system/check/vibe-check/definition.ts +0 -448
- package/src/app/api/[locale]/system/check/vibe-check/enum.ts +0 -63
- package/src/app/api/[locale]/system/check/vibe-check/i18n/de/index.ts +0 -164
- package/src/app/api/[locale]/system/check/vibe-check/i18n/en/index.ts +0 -161
- package/src/app/api/[locale]/system/check/vibe-check/i18n/pl/index.ts +0 -163
- package/src/app/api/[locale]/system/check/vibe-check/repository.ts +0 -516
- package/src/app/api/[locale]/system/check/vibe-check/route.test.ts +0 -1010
- package/src/app/api/[locale]/system/check/vibe-check/route.ts +0 -21
- package/src/app/api/[locale]/system/generated/endpoint.ts +0 -274
- package/src/app/api/[locale]/system/generated/endpoints.ts +0 -138
- package/src/app/api/[locale]/system/generated/route-handlers.ts +0 -213
- package/src/app/api/[locale]/system/generators/endpoint/definition.ts +0 -167
- package/src/app/api/[locale]/system/generators/endpoint/i18n/de/index.ts +0 -48
- package/src/app/api/[locale]/system/generators/endpoint/i18n/en/index.ts +0 -48
- package/src/app/api/[locale]/system/generators/endpoint/i18n/pl/index.ts +0 -50
- package/src/app/api/[locale]/system/generators/endpoint/repository.ts +0 -286
- package/src/app/api/[locale]/system/generators/endpoint/route.ts +0 -18
- package/src/app/api/[locale]/system/generators/endpoints/definition.ts +0 -246
- package/src/app/api/[locale]/system/generators/endpoints/i18n/de/index.ts +0 -54
- package/src/app/api/[locale]/system/generators/endpoints/i18n/en/index.ts +0 -52
- package/src/app/api/[locale]/system/generators/endpoints/i18n/pl/index.ts +0 -54
- package/src/app/api/[locale]/system/generators/endpoints/options-repository.ts +0 -425
- package/src/app/api/[locale]/system/generators/endpoints/repository.ts +0 -368
- package/src/app/api/[locale]/system/generators/endpoints/route.ts +0 -17
- package/src/app/api/[locale]/system/generators/endpoints-index/definition.ts +0 -166
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/de/index.ts +0 -71
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/en/index.ts +0 -69
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/pl/index.ts +0 -71
- package/src/app/api/[locale]/system/generators/endpoints-index/repository.ts +0 -279
- package/src/app/api/[locale]/system/generators/endpoints-index/route.ts +0 -18
- package/src/app/api/[locale]/system/generators/generate-all/definition.ts +0 -327
- package/src/app/api/[locale]/system/generators/generate-all/i18n/de/index.ts +0 -96
- package/src/app/api/[locale]/system/generators/generate-all/i18n/en/index.ts +0 -94
- package/src/app/api/[locale]/system/generators/generate-all/i18n/pl/index.ts +0 -96
- package/src/app/api/[locale]/system/generators/generate-all/repository.ts +0 -240
- package/src/app/api/[locale]/system/generators/generate-all/route.ts +0 -19
- package/src/app/api/[locale]/system/generators/i18n/de/index.ts +0 -15
- package/src/app/api/[locale]/system/generators/i18n/en/index.ts +0 -14
- package/src/app/api/[locale]/system/generators/i18n/pl/index.ts +0 -15
- package/src/app/api/[locale]/system/generators/route-handlers/definition.ts +0 -178
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/de/index.ts +0 -48
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/en/index.ts +0 -48
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/pl/index.ts +0 -50
- package/src/app/api/[locale]/system/generators/route-handlers/repository.ts +0 -267
- package/src/app/api/[locale]/system/generators/route-handlers/route.ts +0 -14
- package/src/app/api/[locale]/system/generators/shared/utils.ts +0 -215
- package/src/app/api/[locale]/system/help/definition.ts +0 -433
- package/src/app/api/[locale]/system/help/i18n/de/index.ts +0 -263
- package/src/app/api/[locale]/system/help/i18n/en/index.ts +0 -259
- package/src/app/api/[locale]/system/help/i18n/pl/index.ts +0 -262
- package/src/app/api/[locale]/system/help/interactive/definition.ts +0 -122
- package/src/app/api/[locale]/system/help/interactive/i18n/de/index.ts +0 -21
- package/src/app/api/[locale]/system/help/interactive/i18n/en/index.ts +0 -19
- package/src/app/api/[locale]/system/help/interactive/i18n/pl/index.ts +0 -21
- package/src/app/api/[locale]/system/help/interactive/repository.ts +0 -1131
- package/src/app/api/[locale]/system/help/interactive/route.ts +0 -43
- package/src/app/api/[locale]/system/help/list/definition.ts +0 -362
- package/src/app/api/[locale]/system/help/list/repository.ts +0 -99
- package/src/app/api/[locale]/system/help/list/route.ts +0 -21
- package/src/app/api/[locale]/system/help/repository.ts +0 -238
- package/src/app/api/[locale]/system/help/route.ts +0 -16
- package/src/app/api/[locale]/system/i18n/de/index.ts +0 -67
- package/src/app/api/[locale]/system/i18n/en/index.ts +0 -66
- package/src/app/api/[locale]/system/i18n/pl/index.ts +0 -67
- package/src/app/api/[locale]/system/release-tool/definition.ts +0 -2925
- package/src/app/api/[locale]/system/release-tool/i18n/de/index.ts +0 -782
- package/src/app/api/[locale]/system/release-tool/i18n/en/index.ts +0 -779
- package/src/app/api/[locale]/system/release-tool/i18n/pl/index.ts +0 -781
- package/src/app/api/[locale]/system/release-tool/repository/asset-zipper.ts +0 -122
- package/src/app/api/[locale]/system/release-tool/repository/changelog-generator.ts +0 -205
- package/src/app/api/[locale]/system/release-tool/repository/ci-detector.ts +0 -540
- package/src/app/api/[locale]/system/release-tool/repository/config.ts +0 -106
- package/src/app/api/[locale]/system/release-tool/repository/constants.ts +0 -406
- package/src/app/api/[locale]/system/release-tool/repository/dependency-manager.ts +0 -496
- package/src/app/api/[locale]/system/release-tool/repository/git-service.ts +0 -378
- package/src/app/api/[locale]/system/release-tool/repository/hook-runner.ts +0 -96
- package/src/app/api/[locale]/system/release-tool/repository/index.ts +0 -1
- package/src/app/api/[locale]/system/release-tool/repository/notification-service.ts +0 -575
- package/src/app/api/[locale]/system/release-tool/repository/package-service.ts +0 -150
- package/src/app/api/[locale]/system/release-tool/repository/publisher.ts +0 -241
- package/src/app/api/[locale]/system/release-tool/repository/quality-runner.ts +0 -413
- package/src/app/api/[locale]/system/release-tool/repository/release-creator.ts +0 -283
- package/src/app/api/[locale]/system/release-tool/repository/release-executor.ts +0 -1084
- package/src/app/api/[locale]/system/release-tool/repository/snyk-service.ts +0 -132
- package/src/app/api/[locale]/system/release-tool/repository/utils.ts +0 -603
- package/src/app/api/[locale]/system/release-tool/repository/validation.ts +0 -265
- package/src/app/api/[locale]/system/release-tool/repository/version-service.ts +0 -275
- package/src/app/api/[locale]/system/release-tool/route.ts +0 -21
- package/src/app/api/[locale]/system/unified-interface/README.md +0 -328
- package/src/app/api/[locale]/system/unified-interface/cli/README.md +0 -349
- package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-handler.ts +0 -82
- package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-user.ts +0 -120
- package/src/app/api/[locale]/system/unified-interface/cli/auth/session-file.ts +0 -244
- package/src/app/api/[locale]/system/unified-interface/cli/env.ts +0 -24
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/de/index.ts +0 -159
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/en/index.ts +0 -158
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/pl/index.ts +0 -159
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/debug.ts +0 -573
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/entry-point.ts +0 -128
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/environment.ts +0 -155
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/execution-errors.ts +0 -423
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/parsing.ts +0 -252
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/route-executor.ts +0 -901
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/de/index.ts +0 -12
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/en/index.ts +0 -11
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/pl/index.ts +0 -12
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/definition.ts +0 -235
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/de/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/en/index.ts +0 -52
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/pl/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/repository.ts +0 -444
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/route.ts +0 -25
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/definition.ts +0 -159
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/de/index.ts +0 -61
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/en/index.ts +0 -59
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/pl/index.ts +0 -61
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/repository.ts +0 -181
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/route.ts +0 -22
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/definition.ts +0 -164
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/de/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/en/index.ts +0 -52
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/pl/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/repository.ts +0 -195
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/route.ts +0 -24
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/definition.ts +0 -180
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/de/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/en/index.ts +0 -52
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/pl/index.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/repository.ts +0 -105
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/route.ts +0 -22
- package/src/app/api/[locale]/system/unified-interface/cli/vibe-runtime.ts +0 -264
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/base-renderer.ts +0 -246
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/registry.ts +0 -305
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/types.ts +0 -116
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/de/index.ts +0 -67
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/en/index.ts +0 -65
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/pl/index.ts +0 -67
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/accordion.ts +0 -70
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/avatar.ts +0 -37
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/badge.ts +0 -52
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-output.ts +0 -285
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-files.ts +0 -71
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-list.ts +0 -281
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-summary.ts +0 -83
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/container.ts +0 -175
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-card.ts +0 -61
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-cards.ts +0 -518
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-list.ts +0 -75
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-table.ts +0 -357
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/editable-text.ts +0 -93
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/empty-state.ts +0 -49
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/errors.ts +0 -63
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/grouped-list.ts +0 -667
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-card.ts +0 -78
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-list.ts +0 -99
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link.ts +0 -54
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/loading.ts +0 -46
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/markdown.ts +0 -123
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/metric.ts +0 -269
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/section.ts +0 -114
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/stats-grid.ts +0 -138
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/tabs.ts +0 -59
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/text.ts +0 -76
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/title.ts +0 -37
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/response-renderer.ts +0 -403
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/schema-handler.ts +0 -504
- package/src/app/api/[locale]/system/unified-interface/i18n/de/index.ts +0 -39
- package/src/app/api/[locale]/system/unified-interface/i18n/en/index.ts +0 -37
- package/src/app/api/[locale]/system/unified-interface/i18n/pl/index.ts +0 -39
- package/src/app/api/[locale]/system/unified-interface/mcp/README.md +0 -114
- package/src/app/api/[locale]/system/unified-interface/mcp/converter.ts +0 -136
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/de/index.ts +0 -180
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/en/index.ts +0 -178
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/pl/index.ts +0 -180
- package/src/app/api/[locale]/system/unified-interface/mcp/registry.ts +0 -305
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/definition.ts +0 -124
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/repository.ts +0 -44
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/route.ts +0 -14
- package/src/app/api/[locale]/system/unified-interface/mcp/server/protocol-handler.ts +0 -291
- package/src/app/api/[locale]/system/unified-interface/mcp/server/server.ts +0 -155
- package/src/app/api/[locale]/system/unified-interface/mcp/server/stdio-transport.ts +0 -191
- package/src/app/api/[locale]/system/unified-interface/mcp/types.ts +0 -247
- package/src/app/api/[locale]/system/unified-interface/react/icons.tsx +0 -346
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create-form.ts +0 -1413
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create.ts +0 -525
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/endpoint-to-metadata.ts +0 -52
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/loader.ts +0 -144
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definitions/registry.ts +0 -262
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/permissions/registry.ts +0 -656
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/executor.ts +0 -220
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/handler.ts +0 -313
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/multi.ts +0 -182
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/request-validator.ts +0 -173
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/single.ts +0 -58
- package/src/app/api/[locale]/system/unified-interface/shared/env/define-env-client.ts +0 -45
- package/src/app/api/[locale]/system/unified-interface/shared/env/define-env.ts +0 -43
- package/src/app/api/[locale]/system/unified-interface/shared/env/validation-logger.ts +0 -58
- package/src/app/api/[locale]/system/unified-interface/shared/field/enum.ts +0 -107
- package/src/app/api/[locale]/system/unified-interface/shared/field/specialized.ts +0 -336
- package/src/app/api/[locale]/system/unified-interface/shared/field/utils.test.ts +0 -385
- package/src/app/api/[locale]/system/unified-interface/shared/field/utils.ts +0 -1827
- package/src/app/api/[locale]/system/unified-interface/shared/field-config/endpoint-field-types.ts +0 -108
- package/src/app/api/[locale]/system/unified-interface/shared/field-config/field-config-types.ts +0 -288
- package/src/app/api/[locale]/system/unified-interface/shared/logger/colors.ts +0 -114
- package/src/app/api/[locale]/system/unified-interface/shared/logger/endpoint.ts +0 -155
- package/src/app/api/[locale]/system/unified-interface/shared/logger/file-logger.ts +0 -85
- package/src/app/api/[locale]/system/unified-interface/shared/logger/formatters.ts +0 -167
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/base-auth-handler.ts +0 -82
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/factory.ts +0 -34
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/server-only.ts +0 -1
- package/src/app/api/[locale]/system/unified-interface/shared/types/actions.ts +0 -284
- package/src/app/api/[locale]/system/unified-interface/shared/types/endpoint.ts +0 -1101
- package/src/app/api/[locale]/system/unified-interface/shared/types/enums.ts +0 -383
- package/src/app/api/[locale]/system/unified-interface/shared/types/platform.ts +0 -34
- package/src/app/api/[locale]/system/unified-interface/shared/types/types.ts +0 -76
- package/src/app/api/[locale]/system/unified-interface/shared/types/ui-config.ts +0 -72
- package/src/app/api/[locale]/system/unified-interface/shared/utils/error-types.ts +0 -27
- package/src/app/api/[locale]/system/unified-interface/shared/utils/path.ts +0 -80
- package/src/app/api/[locale]/system/unified-interface/shared/utils/scanner.ts +0 -225
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/actions.ts +0 -251
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/configs.ts +0 -1060
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/helpers.ts +0 -70
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/accordion.ts +0 -75
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/avatar.ts +0 -69
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/badge.ts +0 -86
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-output.ts +0 -283
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-quality-list.ts +0 -190
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/container.ts +0 -114
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-card.ts +0 -71
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-cards.ts +0 -228
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-list.ts +0 -119
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-table.ts +0 -367
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/editable-text.ts +0 -81
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/empty-state.ts +0 -71
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/errors.ts +0 -79
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/grouped-list.ts +0 -426
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/index.ts +0 -38
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-card.ts +0 -112
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-list.ts +0 -110
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link.ts +0 -66
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/loading.ts +0 -79
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/markdown.ts +0 -159
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/metric-card.ts +0 -225
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/section.ts +0 -85
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/stats-grid.ts +0 -63
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/tabs.ts +0 -73
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/text.ts +0 -96
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/title.ts +0 -57
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/types.ts +0 -236
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/field-helpers.ts +0 -120
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/formatting.ts +0 -414
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/url.ts +0 -37
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/widget-helpers.ts +0 -427
- package/src/app/api/[locale]/user/auth/i18n/de/index.ts +0 -204
- package/src/app/api/[locale]/user/auth/i18n/en/index.ts +0 -199
- package/src/app/api/[locale]/user/auth/i18n/pl/index.ts +0 -203
- package/src/app/api/[locale]/user/auth/types.ts +0 -45
- package/src/app/api/[locale]/user/enum.ts +0 -64
- package/src/app/api/[locale]/user/i18n/de/index.ts +0 -75
- package/src/app/api/[locale]/user/i18n/en/index.ts +0 -74
- package/src/app/api/[locale]/user/i18n/pl/index.ts +0 -75
- package/src/app/api/[locale]/user/types.ts +0 -111
- package/src/app/api/[locale]/user/user-roles/enum.ts +0 -103
- package/src/app/api/[locale]/user/user-roles/i18n/de/index.ts +0 -85
- package/src/app/api/[locale]/user/user-roles/i18n/en/index.ts +0 -83
- package/src/app/api/[locale]/user/user-roles/i18n/pl/index.ts +0 -85
- package/src/app/api/[locale]/user/user-roles/types.ts +0 -32
- package/src/app/api/i18n/de/index.ts +0 -6
- package/src/app/api/i18n/en/index.ts +0 -5
- package/src/app/api/i18n/pl/index.ts +0 -5
- package/src/app/i18n/de/index.ts +0 -18
- package/src/app/i18n/en/index.ts +0 -18
- package/src/app/i18n/pl/index.ts +0 -17
- package/src/config/constants.ts +0 -8
- package/src/config/debug.ts +0 -30
- package/src/config/env-client.ts +0 -57
- package/src/config/env.ts +0 -56
- package/src/config/i18n/de/index.ts +0 -3
- package/src/config/i18n/en/index.ts +0 -51
- package/src/config/i18n/pl/index.ts +0 -3
- package/src/i18n/core/config.ts +0 -225
- package/src/i18n/core/language-utils.ts +0 -226
- package/src/i18n/core/localization-utils.ts +0 -394
- package/src/i18n/core/scoped-translation.ts +0 -104
- package/src/i18n/core/shared-component.tsx +0 -28
- package/src/i18n/core/shared-translation-utils.ts +0 -97
- package/src/i18n/core/shared.ts +0 -44
- package/src/i18n/core/static-types.ts +0 -64
- package/src/i18n/core/translation-utils.ts +0 -186
- package/src/i18n/de/index.ts +0 -8
- package/src/i18n/en/index.ts +0 -7
- package/src/i18n/index.ts +0 -100
- package/src/i18n/pl/index.ts +0 -7
package/README.md
CHANGED
|
@@ -1,257 +1,236 @@
|
|
|
1
|
-
# @next-vibe/checker
|
|
1
|
+
# @next-vibe/checker
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Standalone code quality checker for [next-vibe](https://github.com/next-vibe/next-vibe) projects - oxlint + ESLint + TypeScript in one command.
|
|
4
4
|
|
|
5
|
-
[
|
|
6
|
-
[](https://nodejs.org)
|
|
5
|
+
The same checker that powers [unbottled.ai](https://unbottled.ai) and the next-vibe framework, packaged as a standalone tool you can drop into any TypeScript project.
|
|
7
6
|
|
|
8
7
|
## Features
|
|
9
8
|
|
|
10
|
-
- **
|
|
11
|
-
- **
|
|
12
|
-
- **
|
|
13
|
-
- **
|
|
14
|
-
- **
|
|
15
|
-
- **
|
|
9
|
+
- **Fast** - oxlint, ESLint, and TypeScript run in parallel
|
|
10
|
+
- **TypeScript-aware** - full type checking via `tsc` or `tsgo`
|
|
11
|
+
- **MCP server** - expose checks as AI tools (Claude Code, Cursor, etc.)
|
|
12
|
+
- **Single config** - one `check.config.ts` controls everything
|
|
13
|
+
- **Auto-fix** - fixable issues auto-corrected on every run
|
|
14
|
+
- **VSCode integration** - auto-generates `.vscode/settings.json`
|
|
15
|
+
- **Extensive mode** - include test and generated files for release validation
|
|
16
16
|
|
|
17
|
-
##
|
|
17
|
+
## Installation
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
| Large | 41.24s | 4.29s | 10x |
|
|
24
|
-
|
|
25
|
-
Caching is automatic. Add `.tmp/` to `.gitignore`.
|
|
26
|
-
|
|
27
|
-
## Quick Start
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
npm install --save-dev @next-vibe/checker
|
|
31
|
-
npx @next-vibe/checker config-create
|
|
32
|
-
npm run check
|
|
19
|
+
```sh
|
|
20
|
+
bun add -D @next-vibe/checker
|
|
21
|
+
# or
|
|
22
|
+
npm install -D @next-vibe/checker
|
|
33
23
|
```
|
|
34
24
|
|
|
35
|
-
|
|
25
|
+
### Peer Dependencies
|
|
36
26
|
|
|
37
|
-
|
|
27
|
+
The checker invokes oxlint and ESLint from your project. Install them:
|
|
38
28
|
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
29
|
+
```sh
|
|
30
|
+
bun add -D oxlint eslint typescript \
|
|
31
|
+
eslint-plugin-react-compiler \
|
|
32
|
+
eslint-plugin-react-hooks \
|
|
33
|
+
eslint-plugin-simple-import-sort \
|
|
34
|
+
typescript-eslint
|
|
43
35
|
```
|
|
44
36
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
37
|
+
| Package | Version | Purpose |
|
|
38
|
+
| ---------------------------------- | ---------- | --------------------------- |
|
|
39
|
+
| `oxlint` | `>=1.0.0` | Fast Rust-based linter |
|
|
40
|
+
| `eslint` | `>=9.0.0` | Import sorting, react hooks |
|
|
41
|
+
| `typescript` | `>=5.0.0` | Type checking |
|
|
42
|
+
| `eslint-plugin-react-compiler` | `>=19.0.0` | React compiler lint rules |
|
|
43
|
+
| `eslint-plugin-react-hooks` | `>=5.0.0` | React hooks lint rules |
|
|
44
|
+
| `eslint-plugin-simple-import-sort` | `>=12.0.0` | Import sorting |
|
|
45
|
+
| `typescript-eslint` | `>=8.0.0` | TypeScript ESLint parser |
|
|
48
46
|
|
|
49
|
-
|
|
50
|
-
Migrate to @next-vibe/checker:
|
|
51
|
-
|
|
52
|
-
STEP 1: Ask user questions
|
|
53
|
-
- Strictness? (relaxed/balanced/strict/pedantic)
|
|
54
|
-
- Disable ESLint for max speed? (~3s faster, loses: import sorting, React hooks)
|
|
55
|
-
- Enable React rules? (react-hooks, jsx-a11y, react-compiler)
|
|
56
|
-
- Enable Next.js rules?
|
|
57
|
-
- Enable i18n rules?
|
|
58
|
-
- Enable pedantic rules?
|
|
59
|
-
- Enable restricted syntax? (no throw, unknown, any, object)
|
|
60
|
-
- Create .mcp.json?
|
|
61
|
-
- Install globally?
|
|
62
|
-
- VSCode integration?
|
|
63
|
-
|
|
64
|
-
STEP 2: Install and create config
|
|
65
|
-
1. Detect package manager (bun.lockb, package-lock.json, yarn.lock, pnpm-lock.yaml)
|
|
66
|
-
2. Install: npm add -D @next-vibe/checker (or equivalent for your package manager)
|
|
67
|
-
3. If global: npm install -g @next-vibe/checker
|
|
68
|
-
4. Run: npm exec @next-vibe/checker config-create
|
|
69
|
-
(or: npx @next-vibe/checker config-create)
|
|
70
|
-
|
|
71
|
-
STEP 3: Configure
|
|
72
|
-
1. Read check.config.ts
|
|
73
|
-
2. To disable ESLint: Change `skipEslint: false` to `skipEslint: true`
|
|
74
|
-
3. To enable pedantic: In the `features` object at line 46, change `pedantic: false` to `pedantic: true`
|
|
75
|
-
4. Analyze old .eslintrc, .prettierrc, eslint config files
|
|
76
|
-
5. Port custom rules to Oxlint plugins (oxlint-plugins/*.ts)
|
|
77
|
-
6. Add plugin paths to jsPlugins array in config (around line 124)
|
|
78
|
-
7. Setup editor:
|
|
79
|
-
- VSCode: .vscode/settings.json (oxc extension, tsgo)
|
|
80
|
-
- JetBrains: oxlint file watcher, tsgo for TypeScript
|
|
81
|
-
- Neovim/Vim: LSP for oxlint and tsgo
|
|
82
|
-
8. Remove old linter packages and configs
|
|
83
|
-
9. Test: npm exec @next-vibe/checker check (or: npx @next-vibe/checker check)
|
|
84
|
-
10. Report what was changed and migrated
|
|
85
|
-
|
|
86
|
-
Note: Oxlint plugins are much faster than ESLint rules - prefer them.
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
The AI will handle the complete migration automatically.
|
|
90
|
-
|
|
91
|
-
## Commands
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
vibe check [paths] # Run all checks
|
|
95
|
-
vibe check src # Check specific directory
|
|
96
|
-
vibe check src app.tsx # Check multiple paths
|
|
97
|
-
vibe check --limit=50 # Show first 50 issues (default: 200)
|
|
98
|
-
vibe check --fix # Auto-fix issues
|
|
99
|
-
vibe check --timeout=600 # Max execution time (seconds)
|
|
100
|
-
vibe check --page=2 # View page 2 of results
|
|
101
|
-
vibe config-create # Create/update configuration
|
|
102
|
-
vibe mcp # Start MCP server
|
|
103
|
-
vibe list # All available commands
|
|
104
|
-
```
|
|
47
|
+
## Quick Start
|
|
105
48
|
|
|
106
|
-
|
|
49
|
+
```sh
|
|
50
|
+
# Create a check.config.ts in your project root
|
|
51
|
+
vibe-check config
|
|
107
52
|
|
|
108
|
-
|
|
53
|
+
# Run all checks
|
|
54
|
+
vibe-check
|
|
109
55
|
|
|
110
|
-
|
|
56
|
+
# Auto-fix linting issues
|
|
57
|
+
vibe-check --fix
|
|
111
58
|
|
|
112
|
-
|
|
59
|
+
# Check specific paths only
|
|
60
|
+
vibe-check src/components src/lib
|
|
113
61
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
fix: true, // Auto-fix enabled by default
|
|
117
|
-
limit: 200, // Max issues per page
|
|
118
|
-
timeout: 3600, // Max execution time (seconds)
|
|
119
|
-
skipEslint: false, // Set to true to disable ESLint
|
|
120
|
-
skipOxlint: false, // Set to true to disable Oxlint
|
|
121
|
-
skipTypecheck: false, // Set to true to skip TypeScript
|
|
122
|
-
};
|
|
123
|
-
|
|
124
|
-
const features = {
|
|
125
|
-
pedantic: false, // Set to true for stricter rules
|
|
126
|
-
react: true,
|
|
127
|
-
nextjs: true,
|
|
128
|
-
i18n: true,
|
|
129
|
-
tsgo: true, // ~2-3x faster than tsc
|
|
130
|
-
// ... other feature flags
|
|
131
|
-
};
|
|
62
|
+
# Include test + generated files (release validation)
|
|
63
|
+
vibe-check --extensive
|
|
132
64
|
```
|
|
133
65
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
-
|
|
141
|
-
-
|
|
142
|
-
-
|
|
143
|
-
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
**TypeScript** (~0.05-5s) - Full type checking with tsgo
|
|
66
|
+
## CLI Reference
|
|
67
|
+
|
|
68
|
+
```sh
|
|
69
|
+
vibe-check [paths...] # Run all checks (oxlint + ESLint + TypeScript)
|
|
70
|
+
vibe-check --fix # Auto-fix linting issues
|
|
71
|
+
vibe-check --skip-eslint # Skip ESLint pass
|
|
72
|
+
vibe-check --skip-oxlint # Skip oxlint pass
|
|
73
|
+
vibe-check --skip-typecheck # Skip TypeScript type checking
|
|
74
|
+
vibe-check --extensive # Include test/generated files
|
|
75
|
+
vibe-check --timeout=60 # Timeout in seconds (default: 3600)
|
|
76
|
+
vibe-check --limit=100 # Max issues to display (default: 20000)
|
|
77
|
+
vibe-check config # Create check.config.ts in current directory
|
|
78
|
+
vibe-check mcp # Start MCP server
|
|
79
|
+
vibe-check help # List available commands
|
|
80
|
+
```
|
|
151
81
|
|
|
152
|
-
|
|
153
|
-
- Strict type rules (optional)
|
|
82
|
+
## MCP Server
|
|
154
83
|
|
|
155
|
-
|
|
84
|
+
The checker exposes two MCP tools:
|
|
156
85
|
|
|
157
|
-
|
|
86
|
+
- **`check`** - Run oxlint + ESLint + TypeScript checks
|
|
87
|
+
- **`config-create`** - Create a `check.config.ts` configuration file
|
|
158
88
|
|
|
159
|
-
|
|
89
|
+
Add to your MCP client config (e.g. `.claude.json` or Claude Desktop `config.json`):
|
|
160
90
|
|
|
161
91
|
```json
|
|
162
92
|
{
|
|
163
93
|
"mcpServers": {
|
|
164
|
-
"vibe": {
|
|
165
|
-
"command": "
|
|
166
|
-
"args": ["
|
|
167
|
-
"env": {
|
|
94
|
+
"vibe-check": {
|
|
95
|
+
"command": "vibe-check",
|
|
96
|
+
"args": ["mcp"],
|
|
97
|
+
"env": {
|
|
98
|
+
"PROJECT_ROOT": "/path/to/your/project"
|
|
99
|
+
}
|
|
168
100
|
}
|
|
169
101
|
}
|
|
170
102
|
}
|
|
171
103
|
```
|
|
172
104
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
## CI/CD Integration
|
|
176
|
-
|
|
177
|
-
### GitHub Actions
|
|
178
|
-
|
|
179
|
-
```yaml
|
|
180
|
-
- run: npm install
|
|
181
|
-
- run: npm exec @next-vibe/checker check
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### GitLab CI
|
|
105
|
+
## Configuration
|
|
185
106
|
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
107
|
+
Run `vibe-check config` to scaffold a `check.config.ts`, or create it manually.
|
|
108
|
+
|
|
109
|
+
The config exports a function (not a plain object) - run `vibe-check config` to scaffold the full template. Structure:
|
|
110
|
+
|
|
111
|
+
```ts
|
|
112
|
+
import type {
|
|
113
|
+
CheckConfig,
|
|
114
|
+
EslintFlatConfigItem,
|
|
115
|
+
EslintParser,
|
|
116
|
+
EslintPluginLike,
|
|
117
|
+
} from "@next-vibe/checker/system/check/config/types";
|
|
118
|
+
|
|
119
|
+
const config = (): CheckConfig => ({
|
|
120
|
+
vibeCheck: {
|
|
121
|
+
// default config for vibe check cli
|
|
122
|
+
fix: true,
|
|
123
|
+
timeout: 3600,
|
|
124
|
+
limit: 20000,
|
|
125
|
+
mcpLimit: 20, // max issues to display per page for MCP platform
|
|
126
|
+
extensive: false,
|
|
127
|
+
},
|
|
128
|
+
oxlint: {
|
|
129
|
+
enabled: true,
|
|
130
|
+
plugins: ["typescript", "oxc", "unicorn", "react", "jsx-a11y", "nextjs"],
|
|
131
|
+
jsPlugins: [
|
|
132
|
+
"@next-vibe/checker/oxlint-plugins/restricted-syntax.ts",
|
|
133
|
+
"@next-vibe/checker/oxlint-plugins/jsx-capitalization.ts",
|
|
134
|
+
"@next-vibe/checker/oxlint-plugins/i18n.ts",
|
|
135
|
+
],
|
|
136
|
+
categories: { correctness: "error", suspicious: "error" },
|
|
137
|
+
rules: { "typescript/no-explicit-any": "error" /* ... */ },
|
|
138
|
+
},
|
|
139
|
+
typecheck: { enabled: true, useTsgo: true },
|
|
140
|
+
eslint: {
|
|
141
|
+
enabled: true,
|
|
142
|
+
// handles import sorting + react hooks (things oxlint can't do)
|
|
143
|
+
buildFlatConfig(rc, hooks, importSort, tseslint): EslintFlatConfigItem[] {
|
|
144
|
+
return [
|
|
145
|
+
{
|
|
146
|
+
plugins: {
|
|
147
|
+
"simple-import-sort": importSort,
|
|
148
|
+
"react-hooks": hooks,
|
|
149
|
+
"react-compiler": rc,
|
|
150
|
+
},
|
|
151
|
+
rules: {
|
|
152
|
+
"simple-import-sort/imports": "error",
|
|
153
|
+
"react-hooks/rules-of-hooks": "error",
|
|
154
|
+
},
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
},
|
|
158
|
+
},
|
|
159
|
+
prettier: { enabled: true, singleQuote: false, trailingComma: "all" },
|
|
160
|
+
vscode: { enabled: true, autoGenerateSettings: true },
|
|
161
|
+
});
|
|
162
|
+
|
|
163
|
+
export default config;
|
|
190
164
|
```
|
|
191
165
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
Caching is automatic and enabled by default.
|
|
166
|
+
### Custom Oxlint Plugins
|
|
195
167
|
|
|
196
|
-
|
|
168
|
+
The checker ships three custom oxlint JS plugins you can enable via `jsPlugins`:
|
|
197
169
|
|
|
198
|
-
|
|
199
|
-
|
|
170
|
+
| Plugin path | What it checks |
|
|
171
|
+
| --------------------------------------------------------- | -------------------------------------------- |
|
|
172
|
+
| `@next-vibe/checker/oxlint-plugins/restricted-syntax.ts` | Bans `throw`, `unknown`, bare `object` types |
|
|
173
|
+
| `@next-vibe/checker/oxlint-plugins/jsx-capitalization.ts` | Enforces translated text in JSX elements |
|
|
174
|
+
| `@next-vibe/checker/oxlint-plugins/i18n.ts` | Catches untranslated literal strings |
|
|
200
175
|
|
|
201
|
-
|
|
176
|
+
Reference them in your oxlint config:
|
|
202
177
|
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
|
|
178
|
+
```ts
|
|
179
|
+
const oxlint: CheckConfig["oxlint"] = {
|
|
180
|
+
enabled: true,
|
|
181
|
+
jsPlugins: [
|
|
182
|
+
"@next-vibe/checker/oxlint-plugins/restricted-syntax.ts",
|
|
183
|
+
"@next-vibe/checker/oxlint-plugins/jsx-capitalization.ts",
|
|
184
|
+
"@next-vibe/checker/oxlint-plugins/i18n.ts",
|
|
185
|
+
],
|
|
186
|
+
// ...
|
|
187
|
+
};
|
|
206
188
|
```
|
|
207
189
|
|
|
208
|
-
|
|
190
|
+
### Extensive Mode
|
|
209
191
|
|
|
210
|
-
|
|
192
|
+
By default, `**/generated/**`, `**/*.test.ts`, and `**/*.test.tsx` are excluded from checks. Pass `--extensive` (or set `vibeCheck.extensive: true`) to include them - useful for release validation.
|
|
211
193
|
|
|
212
|
-
|
|
194
|
+
### VSCode Integration
|
|
213
195
|
|
|
214
|
-
|
|
215
|
-
- Check that checks aren't disabled (skipEslint, skipOxlint, skipTypecheck)
|
|
196
|
+
Set `vscode.enabled: true` and `vscode.autoGenerateSettings: true` in your config. On each run, `vibe-check` writes `.vscode/settings.json` with oxlint, formatter, and TypeScript settings pre-configured.
|
|
216
197
|
|
|
217
|
-
|
|
198
|
+
## Library API
|
|
218
199
|
|
|
219
|
-
|
|
200
|
+
Import the check repositories directly in your own scripts:
|
|
220
201
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
- Verify `.mcp.json` in project root
|
|
229
|
-
- Check `PROJECT_ROOT` environment variable
|
|
230
|
-
- Restart Claude/Cursor
|
|
231
|
-
|
|
232
|
-
**Command not found?**
|
|
233
|
-
|
|
234
|
-
- If no global install: Add "check": `vibe check` to your `package.json` and use with `npm run check`
|
|
235
|
-
- If globally installed: Ensure npm global bin is in PATH
|
|
202
|
+
```ts
|
|
203
|
+
import { VibeCheckRepository } from "@next-vibe/checker";
|
|
204
|
+
import { OxlintRepository } from "@next-vibe/checker/oxlint";
|
|
205
|
+
import { EslintRepository } from "@next-vibe/checker/lint";
|
|
206
|
+
import { TypecheckRepository } from "@next-vibe/checker/typecheck";
|
|
207
|
+
```
|
|
236
208
|
|
|
237
|
-
|
|
209
|
+
Config types:
|
|
210
|
+
|
|
211
|
+
```ts
|
|
212
|
+
import type {
|
|
213
|
+
CheckConfig,
|
|
214
|
+
OxlintConfig,
|
|
215
|
+
EslintConfig,
|
|
216
|
+
TypecheckConfig,
|
|
217
|
+
PrettierConfig,
|
|
218
|
+
VSCodeConfig,
|
|
219
|
+
VibeCheckConfig,
|
|
220
|
+
EslintFlatConfigItem,
|
|
221
|
+
EslintPluginLike,
|
|
222
|
+
EslintParser,
|
|
223
|
+
} from "@next-vibe/checker/system/check/config/types";
|
|
224
|
+
```
|
|
238
225
|
|
|
239
|
-
##
|
|
226
|
+
## Source
|
|
240
227
|
|
|
241
|
-
|
|
242
|
-
git clone https://github.com/techfreaque/next-vibe.git
|
|
243
|
-
cd next-vibe && git checkout vibe-check
|
|
244
|
-
bun install && vibe check --fix
|
|
245
|
-
```
|
|
228
|
+
Built from the [next-vibe](https://github.com/next-vibe/next-vibe) open-source monorepo.
|
|
246
229
|
|
|
247
|
-
|
|
230
|
+
- [Source code](https://github.com/next-vibe/next-vibe/tree/main/src/app/api/%5Blocale%5D/system/check)
|
|
231
|
+
- [Issues](https://github.com/next-vibe/next-vibe/issues)
|
|
232
|
+
- [next-vibe framework](https://github.com/next-vibe/next-vibe)
|
|
248
233
|
|
|
249
234
|
## License
|
|
250
235
|
|
|
251
236
|
GPL-3.0-only
|
|
252
|
-
|
|
253
|
-
## Links
|
|
254
|
-
|
|
255
|
-
- [GitHub](https://github.com/techfreaque/next-vibe/tree/vibe-check)
|
|
256
|
-
- [npm](https://www.npmjs.com/package/@next-vibe/checker)
|
|
257
|
-
- [Issues](https://github.com/techfreaque/next-vibe/issues)
|
package/check.config.ts
CHANGED
|
@@ -27,7 +27,12 @@ const vibeCheck: CheckConfig["vibeCheck"] = {
|
|
|
27
27
|
skipOxlint: false,
|
|
28
28
|
skipTypecheck: false,
|
|
29
29
|
timeout: 3600,
|
|
30
|
-
limit:
|
|
30
|
+
limit: 20000,
|
|
31
|
+
mcpLimit: 20, // Compact limit for MCP platform
|
|
32
|
+
editorUriScheme: "cursor://file/", // URI scheme for clickable file links
|
|
33
|
+
// Extensive mode: when false (default), test and generated files are excluded.
|
|
34
|
+
// use "vibe check --extensive" for release validation to catch issues in all files.
|
|
35
|
+
extensive: false,
|
|
31
36
|
};
|
|
32
37
|
|
|
33
38
|
// ============================================================
|
|
@@ -46,13 +51,32 @@ const features = {
|
|
|
46
51
|
pedantic: false, // Stricter/pedantic rules
|
|
47
52
|
// Custom plugins
|
|
48
53
|
i18n: true, // Check for untranslated strings
|
|
49
|
-
jsxCapitalization:
|
|
54
|
+
jsxCapitalization: true, // Enforce capitalized JSX components
|
|
50
55
|
restrictedSyntax: true, // No throw, unknown, object types
|
|
51
56
|
// TypeScript
|
|
52
57
|
tsgo: true, // Use tsgo instead of tsc for type checking
|
|
53
58
|
strictTypes: true, // Strict type checking rules
|
|
54
59
|
} as const;
|
|
55
60
|
|
|
61
|
+
// ============================================================
|
|
62
|
+
// Non-extensive ignore patterns (test + generated files)
|
|
63
|
+
// These are excluded by default; pass --extensive to include them.
|
|
64
|
+
// ============================================================
|
|
65
|
+
|
|
66
|
+
const nonExtensivePatterns = [
|
|
67
|
+
"**/generated/**",
|
|
68
|
+
"**/*.test.ts",
|
|
69
|
+
"**/*.test.tsx",
|
|
70
|
+
"src/app-tanstack/routes/**",
|
|
71
|
+
"src/app-tanstack/routeTree.gen.ts",
|
|
72
|
+
"**/registry/generated.ts",
|
|
73
|
+
"**/registry/generated.client.ts",
|
|
74
|
+
];
|
|
75
|
+
const {
|
|
76
|
+
oxlintIgnores: oxlintNonExtensiveIgnores,
|
|
77
|
+
eslintIgnores: eslintNonExtensiveIgnores,
|
|
78
|
+
} = formatIgnorePatterns(nonExtensivePatterns);
|
|
79
|
+
|
|
56
80
|
// ============================================================
|
|
57
81
|
// Shared Ignores (files, folders, globs - mixed)
|
|
58
82
|
// ============================================================
|
|
@@ -61,7 +85,12 @@ const { oxlintIgnores, eslintIgnores } = formatIgnorePatterns([
|
|
|
61
85
|
// Directories
|
|
62
86
|
"dist",
|
|
63
87
|
".dist",
|
|
88
|
+
".dist-tanstack",
|
|
64
89
|
".next",
|
|
90
|
+
".next-prod",
|
|
91
|
+
".next-rebuild",
|
|
92
|
+
".next-prod",
|
|
93
|
+
".next-old",
|
|
65
94
|
".tmp",
|
|
66
95
|
"node_modules",
|
|
67
96
|
".git",
|
|
@@ -78,6 +107,7 @@ const { oxlintIgnores, eslintIgnores } = formatIgnorePatterns([
|
|
|
78
107
|
"build",
|
|
79
108
|
"test-files",
|
|
80
109
|
"test-project",
|
|
110
|
+
"public/vibe-frame/**",
|
|
81
111
|
// Files
|
|
82
112
|
".DS_Store",
|
|
83
113
|
"thumbs.db",
|
|
@@ -99,6 +129,7 @@ const typecheck = {
|
|
|
99
129
|
enabled: true as const,
|
|
100
130
|
cachePath: ".tmp/typecheck-cache",
|
|
101
131
|
useTsgo: features.tsgo,
|
|
132
|
+
nonExtensiveIgnorePatterns: nonExtensivePatterns,
|
|
102
133
|
};
|
|
103
134
|
|
|
104
135
|
// --------------------------------------------------------
|
|
@@ -111,6 +142,7 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
111
142
|
lintableExtensions: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"],
|
|
112
143
|
$schema: "./node_modules/oxlint/configuration_schema.json",
|
|
113
144
|
ignorePatterns: oxlintIgnores,
|
|
145
|
+
nonExtensiveIgnorePatterns: oxlintNonExtensiveIgnores,
|
|
114
146
|
plugins: [
|
|
115
147
|
"typescript",
|
|
116
148
|
"oxc",
|
|
@@ -297,7 +329,9 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
297
329
|
|
|
298
330
|
// ── Pedantic rule overrides ─────────────────────────────────
|
|
299
331
|
"max-lines": "off",
|
|
300
|
-
...(features.pedantic
|
|
332
|
+
...(features.pedantic
|
|
333
|
+
? { "max-lines-per-function": ["warn", { max: 150 }] }
|
|
334
|
+
: {}),
|
|
301
335
|
// Disable rules that conflict with TypeScript strict null checks
|
|
302
336
|
// (.at() and .codePointAt() return T | undefined)
|
|
303
337
|
"unicorn/prefer-at": "off",
|
|
@@ -346,7 +380,7 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
346
380
|
"oxlint-plugin-jsx-capitalization/jsx-capitalization": [
|
|
347
381
|
"error",
|
|
348
382
|
{
|
|
349
|
-
excludedPaths: ["/src/packages/next-vibe-ui/
|
|
383
|
+
excludedPaths: ["/src/packages/next-vibe-ui/"],
|
|
350
384
|
excludedFilePatterns: [
|
|
351
385
|
"/email.tsx",
|
|
352
386
|
".email.tsx",
|
|
@@ -355,7 +389,15 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
355
389
|
".spec.tsx",
|
|
356
390
|
"/__tests__/",
|
|
357
391
|
],
|
|
358
|
-
typographyElements: [
|
|
392
|
+
typographyElements: [
|
|
393
|
+
"h1",
|
|
394
|
+
"h2",
|
|
395
|
+
"h3",
|
|
396
|
+
"h4",
|
|
397
|
+
"p",
|
|
398
|
+
"blockquote",
|
|
399
|
+
"code",
|
|
400
|
+
],
|
|
359
401
|
standaloneElements: ["span", "pre"],
|
|
360
402
|
svgElements: [
|
|
361
403
|
"svg",
|
|
@@ -525,6 +567,11 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
525
567
|
"aria-describedby",
|
|
526
568
|
"title",
|
|
527
569
|
"placeholder",
|
|
570
|
+
// HTML meta attributes - values are not user-facing text
|
|
571
|
+
"content",
|
|
572
|
+
"charSet",
|
|
573
|
+
"name",
|
|
574
|
+
"lang",
|
|
528
575
|
],
|
|
529
576
|
},
|
|
530
577
|
"object-properties": {
|
|
@@ -575,7 +622,7 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
575
622
|
"nextjs/no-duplicate-head": "error",
|
|
576
623
|
"nextjs/no-head-element": "error",
|
|
577
624
|
"nextjs/no-head-import-in-document": "error",
|
|
578
|
-
"nextjs/no-html-link-for-pages": "
|
|
625
|
+
"nextjs/no-html-link-for-pages": "off",
|
|
579
626
|
"nextjs/no-img-element": "warn",
|
|
580
627
|
"nextjs/no-page-custom-font": "error",
|
|
581
628
|
"nextjs/no-script-component-in-head": "error",
|
|
@@ -624,6 +671,7 @@ const oxlint: CheckConfig["oxlint"] = {
|
|
|
624
671
|
const prettier: CheckConfig["prettier"] = {
|
|
625
672
|
enabled: true,
|
|
626
673
|
configPath: ".tmp/.oxfmtrc.json",
|
|
674
|
+
ignoreFilePath: ".tmp/.prettierignore",
|
|
627
675
|
semi: true,
|
|
628
676
|
singleQuote: false,
|
|
629
677
|
trailingComma: "all",
|
|
@@ -708,11 +756,11 @@ const config = (): CheckConfig => {
|
|
|
708
756
|
// --------------------------------------------------------
|
|
709
757
|
const eslint: CheckConfig["eslint"] = {
|
|
710
758
|
enabled: !vibeCheck.skipEslint,
|
|
711
|
-
parallel: false, // Set to false for sequential execution (passes folders instead of files)
|
|
712
759
|
configPath: ".tmp/eslint.config.mjs",
|
|
713
760
|
cachePath: ".tmp/eslint-cache",
|
|
714
761
|
lintableExtensions: [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"],
|
|
715
762
|
ignores: oxlintIgnores,
|
|
763
|
+
nonExtensiveIgnorePatterns: eslintNonExtensiveIgnores,
|
|
716
764
|
// Build flatConfig with plugins (called from eslint.config.mjs which loads plugins)
|
|
717
765
|
buildFlatConfig(
|
|
718
766
|
reactCompilerPlugin: EslintPluginLike,
|
|
@@ -740,11 +788,15 @@ const config = (): CheckConfig => {
|
|
|
740
788
|
plugins: {
|
|
741
789
|
"simple-import-sort": simpleImportSortPlugin,
|
|
742
790
|
...(features.react ? { "react-hooks": reactHooksPlugin } : {}),
|
|
743
|
-
...(features.reactCompiler
|
|
791
|
+
...(features.reactCompiler
|
|
792
|
+
? { "react-compiler": reactCompilerPlugin }
|
|
793
|
+
: {}),
|
|
744
794
|
// Stubs for oxlint rules
|
|
745
795
|
i18next: createEslintStub(["no-literal-string"]),
|
|
746
796
|
"oxlint-plugin-restricted": createEslintStub(["restricted-syntax"]),
|
|
747
|
-
"oxlint-plugin-jsx-capitalization": createEslintStub([
|
|
797
|
+
"oxlint-plugin-jsx-capitalization": createEslintStub([
|
|
798
|
+
"jsx-capitalization",
|
|
799
|
+
]),
|
|
748
800
|
"oxlint-plugin-i18n": createEslintStub(["no-literal-string"]),
|
|
749
801
|
"@typescript-eslint": createEslintStub([
|
|
750
802
|
"no-explicit-any",
|
|
@@ -768,8 +820,13 @@ const config = (): CheckConfig => {
|
|
|
768
820
|
"no-unsafe-member-access",
|
|
769
821
|
"no-implied-eval",
|
|
770
822
|
]),
|
|
771
|
-
"typescript-eslint": createEslintStub([
|
|
772
|
-
|
|
823
|
+
"typescript-eslint": createEslintStub([
|
|
824
|
+
"no-explicit-any",
|
|
825
|
+
"no-unused-vars",
|
|
826
|
+
]),
|
|
827
|
+
"eslint-plugin-unicorn": createEslintStub([
|
|
828
|
+
"require-module-specifiers",
|
|
829
|
+
]),
|
|
773
830
|
prettier: createEslintStub(["prettier"]),
|
|
774
831
|
"eslint-plugin-promise": createEslintStub(["no-multiple-resolved"]),
|
|
775
832
|
"eslint-plugin-next": createEslintStub([
|
|
@@ -793,7 +850,9 @@ const config = (): CheckConfig => {
|
|
|
793
850
|
"react-hooks/exhaustive-deps": "error",
|
|
794
851
|
}
|
|
795
852
|
: {}),
|
|
796
|
-
...(features.reactCompiler
|
|
853
|
+
...(features.reactCompiler
|
|
854
|
+
? { "react-compiler/react-compiler": "error" }
|
|
855
|
+
: {}),
|
|
797
856
|
"no-unused-vars": "off",
|
|
798
857
|
"no-console": "off",
|
|
799
858
|
"no-template-curly-in-string": "off",
|
|
@@ -809,8 +868,13 @@ const config = (): CheckConfig => {
|
|
|
809
868
|
...(features.react ? { "react-hooks": reactHooksPlugin } : {}),
|
|
810
869
|
i18next: createEslintStub(["no-literal-string"]),
|
|
811
870
|
"oxlint-plugin-restricted": createEslintStub(["restricted-syntax"]),
|
|
812
|
-
"@typescript-eslint": createEslintStub([
|
|
813
|
-
|
|
871
|
+
"@typescript-eslint": createEslintStub([
|
|
872
|
+
"no-explicit-any",
|
|
873
|
+
"no-unused-vars",
|
|
874
|
+
]),
|
|
875
|
+
"eslint-plugin-unicorn": createEslintStub([
|
|
876
|
+
"require-module-specifiers",
|
|
877
|
+
]),
|
|
814
878
|
prettier: createEslintStub(["prettier"]),
|
|
815
879
|
"eslint-plugin-promise": createEslintStub(["no-multiple-resolved"]),
|
|
816
880
|
"eslint-plugin-next": createEslintStub([
|
|
@@ -935,8 +999,13 @@ export function createEslintStub(rules: string[]): EslintStubPlugin {
|
|
|
935
999
|
*/
|
|
936
1000
|
export function formatIgnorePatterns(patterns: string[]): IgnoreFormats {
|
|
937
1001
|
const eslintPatterns = patterns.map((pattern) => {
|
|
938
|
-
// Already a glob pattern - keep as-is
|
|
939
|
-
if (
|
|
1002
|
+
// Already a glob pattern or regex - keep as-is
|
|
1003
|
+
if (
|
|
1004
|
+
pattern.includes("*") ||
|
|
1005
|
+
pattern.includes("$") ||
|
|
1006
|
+
pattern.includes("^") ||
|
|
1007
|
+
pattern.includes("\\")
|
|
1008
|
+
) {
|
|
940
1009
|
return pattern;
|
|
941
1010
|
}
|
|
942
1011
|
// File with extension (but not dotfile) - wrap with **/ prefix only
|