@next-vibe/checker 1.0.11 → 1.0.13
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/.dist/bin/vibe-runtime.js +26 -22
- package/.dist/bin/vibe-runtime.js.map +5 -5
- package/.dist/oxlint-plugins/i18n.js +4 -0
- package/.dist/oxlint-plugins/i18n.js.map +1 -0
- package/.dist/oxlint-plugins/jsx-capitalization.js +4 -0
- package/.dist/oxlint-plugins/jsx-capitalization.js.map +1 -0
- package/.dist/oxlint-plugins/restricted-syntax.js +4 -0
- package/.dist/oxlint-plugins/restricted-syntax.js.map +1 -0
- package/check.config.ts +4 -12
- package/package.json +2 -9
- package/src/app/api/[locale]/LICENSE +674 -0
- package/src/app/api/[locale]/i18n/de/index.ts +13 -0
- package/src/app/api/[locale]/i18n/en/index.ts +12 -0
- package/src/app/api/[locale]/i18n/pl/index.ts +11 -0
- package/src/app/api/[locale]/shared/i18n/de/index.ts +85 -0
- package/src/app/api/[locale]/shared/i18n/en/index.ts +83 -0
- package/src/app/api/[locale]/shared/i18n/pl/index.ts +85 -0
- package/src/app/api/[locale]/shared/stats-filtering.ts +202 -0
- package/src/app/api/[locale]/shared/types/common.schema.ts +55 -0
- package/src/app/api/[locale]/shared/types/response.schema.ts +372 -0
- package/src/app/api/[locale]/shared/types/stats-filtering.schema.ts +375 -0
- package/src/app/api/[locale]/shared/types/utils.ts +190 -0
- package/src/app/api/[locale]/shared/utils/base64.ts +49 -0
- package/src/app/api/[locale]/shared/utils/env-util.ts +40 -0
- package/src/app/api/[locale]/shared/utils/i18n/de/index.ts +21 -0
- package/src/app/api/[locale]/shared/utils/i18n/en/index.ts +19 -0
- package/src/app/api/[locale]/shared/utils/i18n/pl/index.ts +21 -0
- package/src/app/api/[locale]/shared/utils/index.ts +11 -0
- package/src/app/api/[locale]/shared/utils/object-path.ts +41 -0
- package/src/app/api/[locale]/shared/utils/object.test.ts +82 -0
- package/src/app/api/[locale]/shared/utils/object.ts +75 -0
- package/src/app/api/[locale]/shared/utils/parse-error.ts +134 -0
- package/src/app/api/[locale]/shared/utils/parse-json.ts +70 -0
- package/src/app/api/[locale]/shared/utils/time.ts +53 -0
- package/src/app/api/[locale]/shared/utils/validation.ts +127 -0
- package/src/app/api/[locale]/shared/utils/zod-required-fields.ts +116 -0
- package/src/app/api/[locale]/system/builder/definition.ts +1942 -0
- package/src/app/api/[locale]/system/builder/enum.ts +78 -0
- package/src/app/api/[locale]/system/builder/i18n/de/index.ts +677 -0
- package/src/app/api/[locale]/system/builder/i18n/en/index.ts +665 -0
- package/src/app/api/[locale]/system/builder/i18n/pl/index.ts +668 -0
- package/src/app/api/[locale]/system/builder/repository/build-executor.test.ts +182 -0
- package/src/app/api/[locale]/system/builder/repository/build-executor.ts +583 -0
- package/src/app/api/[locale]/system/builder/repository/bun-compiler.ts +261 -0
- package/src/app/api/[locale]/system/builder/repository/bundle-analyzer.ts +197 -0
- package/src/app/api/[locale]/system/builder/repository/config-loader.ts +159 -0
- package/src/app/api/[locale]/system/builder/repository/config-validator.ts +97 -0
- package/src/app/api/[locale]/system/builder/repository/constants.ts +125 -0
- package/src/app/api/[locale]/system/builder/repository/error-suggester.ts +75 -0
- package/src/app/api/[locale]/system/builder/repository/file-copier.ts +98 -0
- package/src/app/api/[locale]/system/builder/repository/folder-cleaner.ts +80 -0
- package/src/app/api/[locale]/system/builder/repository/index.ts +2 -0
- package/src/app/api/[locale]/system/builder/repository/npm-package-generator.ts +146 -0
- package/src/app/api/[locale]/system/builder/repository/output-formatter.ts +104 -0
- package/src/app/api/[locale]/system/builder/repository/profile-service.ts +79 -0
- package/src/app/api/[locale]/system/builder/repository/report-generator.ts +125 -0
- package/src/app/api/[locale]/system/builder/repository/vite-compiler.ts +291 -0
- package/src/app/api/[locale]/system/builder/route.ts +21 -0
- package/src/app/api/[locale]/system/builder/test-files/file1.ts +2 -0
- package/src/app/api/[locale]/system/builder/test-files/file2.tsx +10 -0
- package/src/app/api/[locale]/system/builder/test-files/file3.tsx +16 -0
- package/src/app/api/[locale]/system/builder/test-files/folderToCopy/fileInFolder.ts +2 -0
- package/src/app/api/[locale]/system/builder/test-files/test-config.ts +38 -0
- package/src/app/api/[locale]/system/builder/test-files/test-delete-config.ts +8 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/package.json +24 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/constants.ts +6 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/greet.ts +18 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/index.ts +7 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/src/utils/calculate.ts +27 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.json +19 -0
- package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.tsbuildinfo +1 -0
- package/src/app/api/[locale]/system/builder/test-files/test3.css +1 -0
- package/src/app/api/[locale]/system/check/config/repository.ts +886 -0
- package/src/app/api/[locale]/system/check/config/shared.ts +396 -0
- package/src/app/api/[locale]/system/check/config/types.ts +616 -0
- package/src/app/api/[locale]/system/check/config/utils.ts +171 -0
- package/src/app/api/[locale]/system/check/i18n/de/index.ts +15 -0
- package/src/app/api/[locale]/system/check/i18n/en/index.ts +14 -0
- package/src/app/api/[locale]/system/check/i18n/pl/index.ts +15 -0
- package/src/app/api/[locale]/system/check/lint/definition.ts +414 -0
- package/src/app/api/[locale]/system/check/lint/enum.ts +37 -0
- package/src/app/api/[locale]/system/check/lint/i18n/de/index.ts +164 -0
- package/src/app/api/[locale]/system/check/lint/i18n/en/index.ts +162 -0
- package/src/app/api/[locale]/system/check/lint/i18n/pl/index.ts +164 -0
- package/src/app/api/[locale]/system/check/lint/repository.ts +753 -0
- package/src/app/api/[locale]/system/check/lint/route.ts +21 -0
- package/src/app/api/[locale]/system/check/oxlint/README.md +190 -0
- package/src/app/api/[locale]/system/check/oxlint/definition.ts +414 -0
- package/src/app/api/[locale]/system/check/oxlint/enum.ts +37 -0
- package/src/app/api/[locale]/system/check/oxlint/i18n/de/index.ts +171 -0
- package/src/app/api/[locale]/system/check/oxlint/i18n/en/index.ts +168 -0
- package/src/app/api/[locale]/system/check/oxlint/i18n/pl/index.ts +172 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/i18n/src/index.ts +372 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/README.md +246 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/src/index.ts +583 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/src/index.ts +500 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/test.tsx +74 -0
- package/src/app/api/[locale]/system/check/oxlint/plugins/shared/config-loader.ts +305 -0
- package/src/app/api/[locale]/system/check/oxlint/repository.ts +959 -0
- package/src/app/api/[locale]/system/check/oxlint/route.ts +21 -0
- package/src/app/api/[locale]/system/check/oxlint/types.ts +193 -0
- package/src/app/api/[locale]/system/check/test-project/bun.lock +532 -0
- package/src/app/api/[locale]/system/check/test-project/check.config.ts +981 -0
- package/src/app/api/[locale]/system/check/test-project/package.json +12 -0
- package/src/app/api/[locale]/system/check/test-project/src/constants.ts +6 -0
- package/src/app/api/[locale]/system/check/test-project/src/greet.ts +18 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/a11y-issues.tsx +107 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/eslint-issues.tsx +37 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/general-issues.ts +137 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/i18n-issues.tsx +129 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/jsx-capitalization-issues.tsx +131 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/nextjs-issues.tsx +95 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/promise-issues.ts +76 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/react-issues.tsx +95 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/restricted-syntax-issues.tsx +61 -0
- package/src/app/api/[locale]/system/check/test-project/src/test-issues/typescript-issues.ts +80 -0
- package/src/app/api/[locale]/system/check/test-project/src/utils/calculate.ts +27 -0
- package/src/app/api/[locale]/system/check/test-project/tsconfig.json +34 -0
- package/src/app/api/[locale]/system/check/test-project/tsconfig.tsbuildinfo +1 -0
- package/src/app/api/[locale]/system/check/typecheck/definition.ts +369 -0
- package/src/app/api/[locale]/system/check/typecheck/enum.ts +37 -0
- package/src/app/api/[locale]/system/check/typecheck/i18n/de/index.ts +159 -0
- package/src/app/api/[locale]/system/check/typecheck/i18n/en/index.ts +150 -0
- package/src/app/api/[locale]/system/check/typecheck/i18n/pl/index.ts +155 -0
- package/src/app/api/[locale]/system/check/typecheck/repository.ts +919 -0
- package/src/app/api/[locale]/system/check/typecheck/route.ts +22 -0
- package/src/app/api/[locale]/system/check/typecheck/utils.ts +168 -0
- package/src/app/api/[locale]/system/check/vibe-check/definition.ts +568 -0
- package/src/app/api/[locale]/system/check/vibe-check/enum.ts +69 -0
- package/src/app/api/[locale]/system/check/vibe-check/i18n/de/index.ts +192 -0
- package/src/app/api/[locale]/system/check/vibe-check/i18n/en/index.ts +189 -0
- package/src/app/api/[locale]/system/check/vibe-check/i18n/pl/index.ts +192 -0
- package/src/app/api/[locale]/system/check/vibe-check/repository.ts +545 -0
- package/src/app/api/[locale]/system/check/vibe-check/route.test.ts +1142 -0
- package/src/app/api/[locale]/system/check/vibe-check/route.ts +21 -0
- package/src/app/api/[locale]/system/generated/endpoint.ts +313 -0
- package/src/app/api/[locale]/system/generated/endpoints.ts +156 -0
- package/src/app/api/[locale]/system/generated/route-handlers.ts +224 -0
- package/src/app/api/[locale]/system/generators/endpoint/definition.ts +193 -0
- package/src/app/api/[locale]/system/generators/endpoint/i18n/de/index.ts +48 -0
- package/src/app/api/[locale]/system/generators/endpoint/i18n/en/index.ts +48 -0
- package/src/app/api/[locale]/system/generators/endpoint/i18n/pl/index.ts +50 -0
- package/src/app/api/[locale]/system/generators/endpoint/repository.ts +291 -0
- package/src/app/api/[locale]/system/generators/endpoint/route.ts +21 -0
- package/src/app/api/[locale]/system/generators/endpoints/definition.ts +246 -0
- package/src/app/api/[locale]/system/generators/endpoints/i18n/de/index.ts +54 -0
- package/src/app/api/[locale]/system/generators/endpoints/i18n/en/index.ts +52 -0
- package/src/app/api/[locale]/system/generators/endpoints/i18n/pl/index.ts +54 -0
- package/src/app/api/[locale]/system/generators/endpoints/options-repository.ts +463 -0
- package/src/app/api/[locale]/system/generators/endpoints/repository.ts +383 -0
- package/src/app/api/[locale]/system/generators/endpoints/route.ts +18 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/definition.ts +194 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/de/index.ts +71 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/en/index.ts +69 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/i18n/pl/index.ts +71 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/repository.ts +294 -0
- package/src/app/api/[locale]/system/generators/endpoints-index/route.ts +18 -0
- package/src/app/api/[locale]/system/generators/generate-all/definition.ts +355 -0
- package/src/app/api/[locale]/system/generators/generate-all/i18n/de/index.ts +96 -0
- package/src/app/api/[locale]/system/generators/generate-all/i18n/en/index.ts +94 -0
- package/src/app/api/[locale]/system/generators/generate-all/i18n/pl/index.ts +96 -0
- package/src/app/api/[locale]/system/generators/generate-all/repository.ts +257 -0
- package/src/app/api/[locale]/system/generators/generate-all/route.ts +20 -0
- package/src/app/api/[locale]/system/generators/i18n/de/index.ts +15 -0
- package/src/app/api/[locale]/system/generators/i18n/en/index.ts +14 -0
- package/src/app/api/[locale]/system/generators/i18n/pl/index.ts +15 -0
- package/src/app/api/[locale]/system/generators/route-handlers/definition.ts +198 -0
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/de/index.ts +48 -0
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/en/index.ts +48 -0
- package/src/app/api/[locale]/system/generators/route-handlers/i18n/pl/index.ts +50 -0
- package/src/app/api/[locale]/system/generators/route-handlers/repository.ts +277 -0
- package/src/app/api/[locale]/system/generators/route-handlers/route.ts +17 -0
- package/src/app/api/[locale]/system/generators/shared/utils.ts +233 -0
- package/src/app/api/[locale]/system/help/definition.ts +445 -0
- package/src/app/api/[locale]/system/help/i18n/de/index.ts +267 -0
- package/src/app/api/[locale]/system/help/i18n/en/index.ts +262 -0
- package/src/app/api/[locale]/system/help/i18n/pl/index.ts +265 -0
- package/src/app/api/[locale]/system/help/interactive/definition.ts +125 -0
- package/src/app/api/[locale]/system/help/interactive/i18n/de/index.ts +22 -0
- package/src/app/api/[locale]/system/help/interactive/i18n/en/index.ts +19 -0
- package/src/app/api/[locale]/system/help/interactive/i18n/pl/index.ts +22 -0
- package/src/app/api/[locale]/system/help/interactive/repository.ts +1025 -0
- package/src/app/api/[locale]/system/help/interactive/route.ts +53 -0
- package/src/app/api/[locale]/system/help/list/definition.ts +372 -0
- package/src/app/api/[locale]/system/help/list/repository.ts +110 -0
- package/src/app/api/[locale]/system/help/list/route.ts +21 -0
- package/src/app/api/[locale]/system/help/repository.ts +212 -0
- package/src/app/api/[locale]/system/help/route.ts +16 -0
- package/src/app/api/[locale]/system/i18n/de/index.ts +68 -0
- package/src/app/api/[locale]/system/i18n/en/index.ts +65 -0
- package/src/app/api/[locale]/system/i18n/pl/index.ts +66 -0
- package/src/app/api/[locale]/system/release-tool/definition.ts +3104 -0
- package/src/app/api/[locale]/system/release-tool/i18n/de/index.ts +813 -0
- package/src/app/api/[locale]/system/release-tool/i18n/en/index.ts +797 -0
- package/src/app/api/[locale]/system/release-tool/i18n/pl/index.ts +810 -0
- package/src/app/api/[locale]/system/release-tool/repository/asset-zipper.ts +128 -0
- package/src/app/api/[locale]/system/release-tool/repository/changelog-generator.ts +212 -0
- package/src/app/api/[locale]/system/release-tool/repository/ci-detector.ts +566 -0
- package/src/app/api/[locale]/system/release-tool/repository/config.ts +113 -0
- package/src/app/api/[locale]/system/release-tool/repository/constants.ts +407 -0
- package/src/app/api/[locale]/system/release-tool/repository/dependency-manager.ts +527 -0
- package/src/app/api/[locale]/system/release-tool/repository/git-service.ts +403 -0
- package/src/app/api/[locale]/system/release-tool/repository/hook-runner.ts +100 -0
- package/src/app/api/[locale]/system/release-tool/repository/index.ts +1 -0
- package/src/app/api/[locale]/system/release-tool/repository/notification-service.ts +638 -0
- package/src/app/api/[locale]/system/release-tool/repository/package-service.ts +169 -0
- package/src/app/api/[locale]/system/release-tool/repository/publisher.ts +253 -0
- package/src/app/api/[locale]/system/release-tool/repository/quality-runner.ts +428 -0
- package/src/app/api/[locale]/system/release-tool/repository/release-creator.ts +293 -0
- package/src/app/api/[locale]/system/release-tool/repository/release-executor.ts +1198 -0
- package/src/app/api/[locale]/system/release-tool/repository/snyk-service.ts +136 -0
- package/src/app/api/[locale]/system/release-tool/repository/utils.ts +642 -0
- package/src/app/api/[locale]/system/release-tool/repository/validation.ts +288 -0
- package/src/app/api/[locale]/system/release-tool/repository/version-service.ts +297 -0
- package/src/app/api/[locale]/system/release-tool/route.ts +21 -0
- package/src/app/api/[locale]/system/unified-interface/README.md +328 -0
- package/src/app/api/[locale]/system/unified-interface/cli/README.md +349 -0
- package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-handler.ts +95 -0
- package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-user.ts +146 -0
- package/src/app/api/[locale]/system/unified-interface/cli/auth/session-file.ts +266 -0
- package/src/app/api/[locale]/system/unified-interface/cli/env.ts +26 -0
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/de/index.ts +157 -0
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/en/index.ts +155 -0
- package/src/app/api/[locale]/system/unified-interface/cli/i18n/pl/index.ts +158 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/debug.ts +595 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/entry-point.ts +129 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/environment.ts +155 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/execution-errors.ts +452 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/parsing.ts +297 -0
- package/src/app/api/[locale]/system/unified-interface/cli/runtime/route-executor.ts +859 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/de/index.ts +12 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/en/index.ts +11 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/pl/index.ts +12 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/definition.ts +262 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/de/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/en/index.ts +52 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/pl/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/repository.ts +421 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/install/route.ts +25 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/definition.ts +181 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/de/index.ts +61 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/en/index.ts +59 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/pl/index.ts +61 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/repository.ts +195 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/status/route.ts +22 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/definition.ts +188 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/de/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/en/index.ts +52 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/pl/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/repository.ts +209 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/route.ts +24 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/definition.ts +200 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/de/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/en/index.ts +52 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/pl/index.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/repository.ts +113 -0
- package/src/app/api/[locale]/system/unified-interface/cli/setup/update/route.ts +22 -0
- package/src/app/api/[locale]/system/unified-interface/cli/vibe-runtime.ts +304 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/base-renderer.ts +270 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/registry.ts +309 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/types.ts +126 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/de/index.ts +67 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/en/index.ts +65 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/pl/index.ts +67 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/accordion.ts +74 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/avatar.ts +39 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/badge.ts +54 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-output.ts +298 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-files.ts +89 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-list.ts +298 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-summary.ts +96 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/container.ts +186 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-card.ts +65 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-cards.ts +570 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-list.ts +80 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-table.ts +385 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/editable-text.ts +99 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/empty-state.ts +55 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/errors.ts +67 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/grouped-list.ts +729 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-card.ts +87 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-list.ts +112 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link.ts +59 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/loading.ts +50 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/markdown.ts +131 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/metric.ts +291 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/section.ts +120 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/stats-grid.ts +149 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/tabs.ts +61 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/text.ts +78 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/title.ts +42 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/response-renderer.ts +418 -0
- package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/schema-handler.ts +534 -0
- package/src/app/api/[locale]/system/unified-interface/i18n/de/index.ts +42 -0
- package/src/app/api/[locale]/system/unified-interface/i18n/en/index.ts +40 -0
- package/src/app/api/[locale]/system/unified-interface/i18n/pl/index.ts +43 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/README.md +114 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/converter.ts +146 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/de/index.ts +182 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/en/index.ts +179 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/i18n/pl/index.ts +181 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/registry.ts +343 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/definition.ts +147 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/repository.ts +38 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/serve/route.ts +14 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/server/protocol-handler.ts +309 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/server/server.ts +154 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/server/stdio-transport.ts +193 -0
- package/src/app/api/[locale]/system/unified-interface/mcp/types.ts +246 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create-form.ts +1510 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create.ts +581 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/endpoint-to-metadata.ts +52 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/loader.ts +152 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definitions/registry.ts +265 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/permissions/registry.ts +680 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/executor.ts +220 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/handler.ts +325 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/multi.ts +184 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/request-validator.ts +201 -0
- package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/single.ts +58 -0
- package/src/app/api/[locale]/system/unified-interface/shared/env/define-env-client.ts +49 -0
- package/src/app/api/[locale]/system/unified-interface/shared/env/define-env.ts +47 -0
- package/src/app/api/[locale]/system/unified-interface/shared/env/validation-logger.ts +58 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field/enum.ts +110 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field/specialized.ts +339 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field/utils.test.ts +408 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field/utils.ts +1349 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field-config/endpoint-field-types.ts +107 -0
- package/src/app/api/[locale]/system/unified-interface/shared/field-config/field-config-types.ts +268 -0
- package/src/app/api/[locale]/system/unified-interface/shared/logger/colors.ts +114 -0
- package/src/app/api/[locale]/system/unified-interface/shared/logger/endpoint.ts +169 -0
- package/src/app/api/[locale]/system/unified-interface/shared/logger/file-logger.ts +88 -0
- package/src/app/api/[locale]/system/unified-interface/shared/logger/formatters.ts +177 -0
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/base-auth-handler.ts +82 -0
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/factory.ts +33 -0
- package/src/app/api/[locale]/system/unified-interface/shared/server-only/server-only.ts +4 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/actions.ts +289 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/endpoint.ts +1167 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/enums.ts +382 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/platform.ts +34 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/types.ts +80 -0
- package/src/app/api/[locale]/system/unified-interface/shared/types/ui-config.ts +76 -0
- package/src/app/api/[locale]/system/unified-interface/shared/utils/error-types.ts +27 -0
- package/src/app/api/[locale]/system/unified-interface/shared/utils/path.ts +63 -0
- package/src/app/api/[locale]/system/unified-interface/shared/utils/scanner.ts +241 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/actions.ts +256 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/configs.ts +1158 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/helpers.ts +80 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/accordion.ts +82 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/avatar.ts +75 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/badge.ts +89 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-output.ts +302 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-quality-list.ts +202 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/container.ts +129 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-card.ts +81 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-cards.ts +258 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-list.ts +123 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-table.ts +387 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/editable-text.ts +89 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/empty-state.ts +78 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/errors.ts +93 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/grouped-list.ts +448 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/index.ts +38 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-card.ts +130 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-list.ts +127 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link.ts +68 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/loading.ts +81 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/markdown.ts +176 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/metric-card.ts +241 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/section.ts +90 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/stats-grid.ts +71 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/tabs.ts +80 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/text.ts +105 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/title.ts +72 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/types.ts +240 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/field-helpers.ts +137 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/formatting.ts +437 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/url.ts +40 -0
- package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/widget-helpers.ts +465 -0
- package/src/app/api/[locale]/user/auth/enum.ts +16 -0
- package/src/app/api/[locale]/user/auth/i18n/de/index.ts +227 -0
- package/src/app/api/[locale]/user/auth/i18n/en/index.ts +205 -0
- package/src/app/api/[locale]/user/auth/i18n/pl/index.ts +219 -0
- package/src/app/api/[locale]/user/auth/types.ts +110 -0
- package/src/app/api/[locale]/user/enum.ts +64 -0
- package/src/app/api/[locale]/user/private/i18n/de/index.ts +3 -0
- package/src/app/api/[locale]/user/private/i18n/en/index.ts +1 -0
- package/src/app/api/[locale]/user/private/i18n/pl/index.ts +3 -0
- package/src/app/api/[locale]/user/types.ts +118 -0
- package/src/app/api/[locale]/user/user-roles/enum.ts +112 -0
- package/src/app/api/[locale]/user/user-roles/i18n/de/index.ts +85 -0
- package/src/app/api/[locale]/user/user-roles/i18n/en/index.ts +83 -0
- package/src/app/api/[locale]/user/user-roles/i18n/pl/index.ts +86 -0
- package/src/app/api/[locale]/user/user-roles/types.ts +34 -0
- package/src/app/api/i18n/de/index.ts +6 -0
- package/src/app/api/i18n/en/index.ts +5 -0
- package/src/app/api/i18n/pl/index.ts +5 -0
- package/src/app/i18n/de/index.ts +6 -0
- package/src/app/i18n/en/index.ts +5 -0
- package/src/app/i18n/pl/index.ts +5 -0
|
@@ -0,0 +1,616 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Check Configuration Types
|
|
3
|
+
*
|
|
4
|
+
* Centralized type definitions for all code quality tools:
|
|
5
|
+
* - Oxlint (fast Rust linter)
|
|
6
|
+
* - Prettier (code formatting)
|
|
7
|
+
* - TypeScript (type checking)
|
|
8
|
+
* - Testing (vitest/jest)
|
|
9
|
+
* - VSCode integration
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
// ============================================================
|
|
13
|
+
// Common Types
|
|
14
|
+
// ============================================================
|
|
15
|
+
|
|
16
|
+
export type Severity = "off" | "warn" | "error" | "allow" | "deny";
|
|
17
|
+
|
|
18
|
+
export type LintPrimitive = string | number | boolean;
|
|
19
|
+
|
|
20
|
+
export type LintConfigValue =
|
|
21
|
+
| LintPrimitive
|
|
22
|
+
| LintPrimitive[]
|
|
23
|
+
| readonly LintPrimitive[]
|
|
24
|
+
| LintConfigObject
|
|
25
|
+
| readonly LintConfigObject[]
|
|
26
|
+
| LintConfigObject[]
|
|
27
|
+
| (LintPrimitive | LintConfigObject)[]
|
|
28
|
+
| readonly (LintPrimitive | LintConfigObject)[]
|
|
29
|
+
| I18nPluginConfig;
|
|
30
|
+
|
|
31
|
+
export interface LintConfigObject {
|
|
32
|
+
[key: string]: LintConfigValue;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export type LintConfigElement = Record<string, LintConfigValue>;
|
|
36
|
+
|
|
37
|
+
/** JSON-compatible value type for settings files */
|
|
38
|
+
export type JsonValue =
|
|
39
|
+
| string
|
|
40
|
+
| number
|
|
41
|
+
| boolean
|
|
42
|
+
| null
|
|
43
|
+
| JsonObject
|
|
44
|
+
| JsonArray;
|
|
45
|
+
export interface JsonObject {
|
|
46
|
+
[key: string]: JsonValue;
|
|
47
|
+
}
|
|
48
|
+
export type JsonArray = JsonValue[];
|
|
49
|
+
|
|
50
|
+
// Forward declaration for circular reference
|
|
51
|
+
export interface I18nPluginConfig {
|
|
52
|
+
words?: {
|
|
53
|
+
exclude?: readonly string[] | string[];
|
|
54
|
+
};
|
|
55
|
+
"jsx-attributes"?: {
|
|
56
|
+
exclude?: readonly string[] | string[];
|
|
57
|
+
};
|
|
58
|
+
"object-properties"?: {
|
|
59
|
+
exclude?: readonly string[] | string[];
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface RestrictedSyntaxPluginConfig {
|
|
64
|
+
/** Properties that commonly accept JSX/React nodes as values */
|
|
65
|
+
jsxAllowedProperties?: readonly string[] | string[];
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface JsxCapitalizationPluginConfig {
|
|
69
|
+
/** Paths to exclude from jsx-capitalization rule */
|
|
70
|
+
excludedPaths?: readonly string[] | string[];
|
|
71
|
+
/** File patterns to exclude (email templates, test files) */
|
|
72
|
+
excludedFilePatterns?: readonly string[] | string[];
|
|
73
|
+
/** Typography elements that should import from typography module */
|
|
74
|
+
typographyElements?: readonly string[] | string[];
|
|
75
|
+
/** Elements with dedicated component files */
|
|
76
|
+
standaloneElements?: readonly string[] | string[];
|
|
77
|
+
/** SVG elements that need platform-independent handling */
|
|
78
|
+
svgElements?: readonly string[] | string[];
|
|
79
|
+
/** Image-related elements */
|
|
80
|
+
imageElements?: readonly string[] | string[];
|
|
81
|
+
/** Common UI elements that should have wrapper components */
|
|
82
|
+
commonUiElements?: readonly string[] | string[];
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// ============================================================
|
|
86
|
+
// Oxlint Configuration
|
|
87
|
+
// ============================================================
|
|
88
|
+
|
|
89
|
+
/** JS plugin configuration with path and options */
|
|
90
|
+
export interface OxlintJsPlugin {
|
|
91
|
+
/** Path to the JS plugin file (e.g., "next-vibe/src/.../plugin/src/index.ts") */
|
|
92
|
+
path: string;
|
|
93
|
+
/** Plugin options - will be used when oxlint supports options natively */
|
|
94
|
+
options?:
|
|
95
|
+
| I18nPluginConfig
|
|
96
|
+
| RestrictedSyntaxPluginConfig
|
|
97
|
+
| JsxCapitalizationPluginConfig
|
|
98
|
+
| LintConfigElement;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/** Optional oxlint settings (shared between enabled/disabled) */
|
|
102
|
+
interface OxlintConfigOptions {
|
|
103
|
+
$schema?: string;
|
|
104
|
+
/** File patterns to ignore (globs) - resolves relative to config file */
|
|
105
|
+
ignorePatterns?: string[];
|
|
106
|
+
/** Built-in oxlint plugins (e.g., "react", "typescript", "jsx-a11y") */
|
|
107
|
+
plugins?: string[];
|
|
108
|
+
/** Custom JS plugins - string paths or objects with path+options for future oxlint native support */
|
|
109
|
+
jsPlugins?: (string | OxlintJsPlugin)[];
|
|
110
|
+
categories?: {
|
|
111
|
+
correctness?: Severity;
|
|
112
|
+
suspicious?: Severity;
|
|
113
|
+
pedantic?: Severity;
|
|
114
|
+
style?: Severity;
|
|
115
|
+
nursery?: Severity;
|
|
116
|
+
restriction?: Severity;
|
|
117
|
+
};
|
|
118
|
+
rules?: LintConfigElement;
|
|
119
|
+
settings?: {
|
|
120
|
+
"jsx-a11y"?: {
|
|
121
|
+
polymorphicPropName?: string | null;
|
|
122
|
+
components?: Record<string, string>;
|
|
123
|
+
attributes?: Record<string, string>;
|
|
124
|
+
};
|
|
125
|
+
next?: {
|
|
126
|
+
rootDir?: string[];
|
|
127
|
+
};
|
|
128
|
+
react?: {
|
|
129
|
+
formComponents?: string[];
|
|
130
|
+
linkComponents?: string[];
|
|
131
|
+
};
|
|
132
|
+
jsdoc?: {
|
|
133
|
+
ignorePrivate?: boolean;
|
|
134
|
+
ignoreInternal?: boolean;
|
|
135
|
+
ignoreReplacesDocs?: boolean;
|
|
136
|
+
overrideReplacesDocs?: boolean;
|
|
137
|
+
augmentsExtendsReplacesDocs?: boolean;
|
|
138
|
+
implementsReplacesDocs?: boolean;
|
|
139
|
+
exemptDestructuredRootsFromChecks?: boolean;
|
|
140
|
+
tagNamePreference?: Record<string, string>;
|
|
141
|
+
};
|
|
142
|
+
};
|
|
143
|
+
env?: {
|
|
144
|
+
builtin?: boolean;
|
|
145
|
+
};
|
|
146
|
+
globals?: Record<string, "readonly" | "writable" | "off">;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/** Oxlint disabled - no other settings required */
|
|
150
|
+
interface OxlintConfigDisabled {
|
|
151
|
+
enabled: false;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/** Oxlint enabled - required paths */
|
|
155
|
+
interface OxlintConfigEnabled extends OxlintConfigOptions {
|
|
156
|
+
enabled: true;
|
|
157
|
+
/** Path to generated oxlint config file */
|
|
158
|
+
configPath: string;
|
|
159
|
+
/** Path to cache directory for oxlint */
|
|
160
|
+
cachePath: string;
|
|
161
|
+
/** File extensions to lint (e.g., [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"]) */
|
|
162
|
+
lintableExtensions: string[];
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
export type OxlintConfig = OxlintConfigDisabled | OxlintConfigEnabled;
|
|
166
|
+
|
|
167
|
+
// ============================================================
|
|
168
|
+
// Prettier Configuration
|
|
169
|
+
// ============================================================
|
|
170
|
+
|
|
171
|
+
/** Optional prettier settings */
|
|
172
|
+
interface PrettierConfigOptions {
|
|
173
|
+
semi?: boolean;
|
|
174
|
+
singleQuote?: boolean;
|
|
175
|
+
trailingComma?: "none" | "es5" | "all";
|
|
176
|
+
tabWidth?: number;
|
|
177
|
+
useTabs?: boolean;
|
|
178
|
+
printWidth?: number;
|
|
179
|
+
arrowParens?: "avoid" | "always";
|
|
180
|
+
endOfLine?: "lf" | "crlf" | "cr" | "auto";
|
|
181
|
+
bracketSpacing?: boolean;
|
|
182
|
+
jsxSingleQuote?: boolean;
|
|
183
|
+
jsxBracketSameLine?: boolean;
|
|
184
|
+
proseWrap?: "always" | "never" | "preserve";
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
/** Prettier disabled */
|
|
188
|
+
interface PrettierConfigDisabled {
|
|
189
|
+
enabled: false;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
/** Prettier enabled - required config path */
|
|
193
|
+
interface PrettierConfigEnabled extends PrettierConfigOptions {
|
|
194
|
+
enabled: true;
|
|
195
|
+
/** Path to generated prettier/oxfmt config file */
|
|
196
|
+
configPath: string;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
export type PrettierConfig = PrettierConfigDisabled | PrettierConfigEnabled;
|
|
200
|
+
|
|
201
|
+
// ============================================================
|
|
202
|
+
// TypeScript/TypeCheck Configuration
|
|
203
|
+
// ============================================================
|
|
204
|
+
|
|
205
|
+
/** Typecheck disabled */
|
|
206
|
+
interface TypecheckConfigDisabled {
|
|
207
|
+
enabled: false;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/** Typecheck enabled */
|
|
211
|
+
interface TypecheckConfigEnabled {
|
|
212
|
+
enabled: true;
|
|
213
|
+
/** Path to directory for tsbuildinfo cache files */
|
|
214
|
+
cachePath: string;
|
|
215
|
+
/** Use tsgo instead of tsc for type checking (default: false uses tsc) */
|
|
216
|
+
useTsgo?: boolean;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
export type TypecheckConfig = TypecheckConfigDisabled | TypecheckConfigEnabled;
|
|
220
|
+
|
|
221
|
+
// ============================================================
|
|
222
|
+
// ESLint Configuration
|
|
223
|
+
// ============================================================
|
|
224
|
+
|
|
225
|
+
/** ESLint flat config item */
|
|
226
|
+
export interface EslintFlatConfigItem {
|
|
227
|
+
/** File patterns to match */
|
|
228
|
+
files?: string[];
|
|
229
|
+
/** Patterns to ignore */
|
|
230
|
+
ignores?: string[];
|
|
231
|
+
/** Language options including parser */
|
|
232
|
+
languageOptions?: {
|
|
233
|
+
parser?: EslintParser;
|
|
234
|
+
parserOptions?: EslintParserOptions;
|
|
235
|
+
ecmaVersion?: number | "latest";
|
|
236
|
+
sourceType?: "module" | "script" | "commonjs";
|
|
237
|
+
globals?: Record<string, "readonly" | "writable" | "off" | boolean>;
|
|
238
|
+
};
|
|
239
|
+
/** Linter options */
|
|
240
|
+
linterOptions?: {
|
|
241
|
+
reportUnusedDisableDirectives?: "off" | "warn" | "error" | boolean;
|
|
242
|
+
noInlineConfig?: boolean;
|
|
243
|
+
};
|
|
244
|
+
/**
|
|
245
|
+
* ESLint plugins - accepts any plugin shape.
|
|
246
|
+
*
|
|
247
|
+
* ESLint plugins have diverse type signatures across the ecosystem.
|
|
248
|
+
* We use object type for compatibility with all plugin packages.
|
|
249
|
+
*/
|
|
250
|
+
plugins?: Record<string, EslintPluginLike>;
|
|
251
|
+
/** ESLint rules */
|
|
252
|
+
rules?: LintConfigElement;
|
|
253
|
+
/** Settings */
|
|
254
|
+
settings?: LintConfigElement;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* ESLint plugin interface - accepts any valid plugin.
|
|
259
|
+
*
|
|
260
|
+
* ESLint plugins from different packages have incompatible types.
|
|
261
|
+
* This is a structural interface that all plugins satisfy.
|
|
262
|
+
*/
|
|
263
|
+
export interface EslintPluginLike {
|
|
264
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- ESLint plugin types are too diverse
|
|
265
|
+
rules?: Record<string, { create: (...args: any[]) => any }>;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* ESLint parser interface - accepts any valid parser.
|
|
270
|
+
*
|
|
271
|
+
* Parsers must have parseForESLint method that returns AST.
|
|
272
|
+
*/
|
|
273
|
+
export interface EslintParser {
|
|
274
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Parser types vary across packages
|
|
275
|
+
parseForESLint?: (...args: any[]) => { ast: any; scopeManager?: any };
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
/** ESLint parser options */
|
|
279
|
+
export interface EslintParserOptions {
|
|
280
|
+
ecmaVersion?: number | "latest";
|
|
281
|
+
sourceType?: "module" | "script" | "commonjs";
|
|
282
|
+
ecmaFeatures?: {
|
|
283
|
+
jsx?: boolean;
|
|
284
|
+
globalReturn?: boolean;
|
|
285
|
+
impliedStrict?: boolean;
|
|
286
|
+
};
|
|
287
|
+
project?: string | string[];
|
|
288
|
+
tsconfigRootDir?: string;
|
|
289
|
+
[key: string]: LintConfigValue | undefined;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
/** ESLint parse result */
|
|
293
|
+
export interface EslintParseResult {
|
|
294
|
+
ast?: LintConfigElement;
|
|
295
|
+
services?: LintConfigElement;
|
|
296
|
+
scopeManager?: LintConfigElement;
|
|
297
|
+
visitorKeys?: LintConfigElement;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
/** ESLint plugin interface - matches ESLint's Plugin type */
|
|
301
|
+
export interface EslintPlugin {
|
|
302
|
+
rules?: Record<string, EslintRule>;
|
|
303
|
+
configs?: Record<string, EslintPluginConfig>;
|
|
304
|
+
processors?: Record<string, EslintProcessor>;
|
|
305
|
+
meta?: EslintPluginMeta;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
/** ESLint plugin metadata */
|
|
309
|
+
export interface EslintPluginMeta {
|
|
310
|
+
name?: string;
|
|
311
|
+
version?: string;
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
/** ESLint plugin config (shareable config) */
|
|
315
|
+
export interface EslintPluginConfig {
|
|
316
|
+
plugins?: Record<string, EslintPlugin>;
|
|
317
|
+
rules?: LintConfigElement;
|
|
318
|
+
languageOptions?: LintConfigElement;
|
|
319
|
+
settings?: LintConfigElement;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
/** ESLint processor interface */
|
|
323
|
+
export interface EslintProcessor {
|
|
324
|
+
preprocess?: (
|
|
325
|
+
text: string,
|
|
326
|
+
filename: string,
|
|
327
|
+
) => Array<string | { text: string; filename: string }>;
|
|
328
|
+
postprocess?: (
|
|
329
|
+
messages: LintConfigElement[][],
|
|
330
|
+
filename: string,
|
|
331
|
+
) => LintConfigElement[];
|
|
332
|
+
supportsAutofix?: boolean;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
/** ESLint rule interface - matches ESLint's LooseRuleDefinition */
|
|
336
|
+
export type EslintRule = EslintRuleFunction | EslintRuleModule;
|
|
337
|
+
|
|
338
|
+
/** ESLint rule as a function */
|
|
339
|
+
export type EslintRuleFunction = (
|
|
340
|
+
context: EslintRuleContext,
|
|
341
|
+
) => EslintRuleListener;
|
|
342
|
+
|
|
343
|
+
/** ESLint rule as a module with create function */
|
|
344
|
+
export interface EslintRuleModule {
|
|
345
|
+
create: EslintRuleFunction;
|
|
346
|
+
meta?: EslintRuleMeta;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
/** ESLint rule context (simplified) */
|
|
350
|
+
export interface EslintRuleContext {
|
|
351
|
+
report: (descriptor: EslintReportDescriptor) => void;
|
|
352
|
+
options: LintConfigValue[];
|
|
353
|
+
getSourceCode: () => EslintSourceCode;
|
|
354
|
+
getFilename: () => string;
|
|
355
|
+
getCwd: () => string;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
/** ESLint report descriptor */
|
|
359
|
+
export interface EslintReportDescriptor {
|
|
360
|
+
node?: LintConfigElement;
|
|
361
|
+
message?: string;
|
|
362
|
+
messageId?: string;
|
|
363
|
+
data?: Record<string, string | number>;
|
|
364
|
+
loc?: { line: number; column: number };
|
|
365
|
+
fix?: (fixer: EslintFixer) => EslintFix | EslintFix[] | null;
|
|
366
|
+
suggest?: EslintSuggestion[];
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
/** ESLint fixer */
|
|
370
|
+
export interface EslintFixer {
|
|
371
|
+
insertTextAfter: (node: LintConfigElement, text: string) => EslintFix;
|
|
372
|
+
insertTextBefore: (node: LintConfigElement, text: string) => EslintFix;
|
|
373
|
+
remove: (node: LintConfigElement) => EslintFix;
|
|
374
|
+
replaceText: (node: LintConfigElement, text: string) => EslintFix;
|
|
375
|
+
replaceTextRange: (range: [number, number], text: string) => EslintFix;
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
/** ESLint fix */
|
|
379
|
+
export interface EslintFix {
|
|
380
|
+
range: [number, number];
|
|
381
|
+
text: string;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
/** ESLint suggestion */
|
|
385
|
+
export interface EslintSuggestion {
|
|
386
|
+
desc?: string;
|
|
387
|
+
messageId?: string;
|
|
388
|
+
data?: Record<string, string | number>;
|
|
389
|
+
fix: (fixer: EslintFixer) => EslintFix | EslintFix[] | null;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
/** ESLint source code */
|
|
393
|
+
export interface EslintSourceCode {
|
|
394
|
+
getText: (node?: LintConfigElement) => string;
|
|
395
|
+
getLines: () => string[];
|
|
396
|
+
getAllComments: () => LintConfigElement[];
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
/** ESLint rule listener */
|
|
400
|
+
export interface EslintRuleListener {
|
|
401
|
+
[selector: string]: ((node: LintConfigElement) => void) | undefined;
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
/** ESLint rule meta */
|
|
405
|
+
export interface EslintRuleMeta {
|
|
406
|
+
type?: "problem" | "suggestion" | "layout";
|
|
407
|
+
docs?: {
|
|
408
|
+
description?: string;
|
|
409
|
+
recommended?: boolean | "error" | "warn";
|
|
410
|
+
url?: string;
|
|
411
|
+
};
|
|
412
|
+
fixable?: "code" | "whitespace";
|
|
413
|
+
hasSuggestions?: boolean;
|
|
414
|
+
schema?: LintConfigValue[];
|
|
415
|
+
deprecated?: boolean;
|
|
416
|
+
replacedBy?: string[];
|
|
417
|
+
messages?: Record<string, string>;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
/** Optional ESLint settings */
|
|
421
|
+
interface EslintConfigOptions {
|
|
422
|
+
/** ESLint flat config array - directly used by eslint.config.mjs */
|
|
423
|
+
flatConfig?: EslintFlatConfigItem[];
|
|
424
|
+
/** Patterns to ignore */
|
|
425
|
+
ignores?: string[];
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
/** ESLint disabled */
|
|
429
|
+
interface EslintConfigDisabled {
|
|
430
|
+
enabled: false;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
/** ESLint enabled - required paths */
|
|
434
|
+
interface EslintConfigEnabled extends EslintConfigOptions {
|
|
435
|
+
enabled: true;
|
|
436
|
+
/** Path to generated ESLint config file */
|
|
437
|
+
configPath: string;
|
|
438
|
+
/** Path to cache directory for ESLint */
|
|
439
|
+
cachePath: string;
|
|
440
|
+
/** File extensions to lint (e.g., [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"]) */
|
|
441
|
+
lintableExtensions: string[];
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
export type EslintConfig = EslintConfigDisabled | EslintConfigEnabled;
|
|
445
|
+
|
|
446
|
+
// ============================================================
|
|
447
|
+
// Testing Configuration
|
|
448
|
+
// ============================================================
|
|
449
|
+
|
|
450
|
+
/** Optional testing settings */
|
|
451
|
+
interface TestingConfigOptions {
|
|
452
|
+
/** Command to run tests (default: "bunx vitest") */
|
|
453
|
+
command?: string;
|
|
454
|
+
/** Timeout for test runs in milliseconds */
|
|
455
|
+
timeout?: number;
|
|
456
|
+
/** Test file patterns */
|
|
457
|
+
include?: string[];
|
|
458
|
+
/** Patterns to exclude from testing */
|
|
459
|
+
exclude?: string[];
|
|
460
|
+
/** Coverage configuration */
|
|
461
|
+
coverage?: {
|
|
462
|
+
enabled?: boolean;
|
|
463
|
+
provider?: "v8" | "istanbul";
|
|
464
|
+
thresholds?: {
|
|
465
|
+
lines?: number;
|
|
466
|
+
branches?: number;
|
|
467
|
+
functions?: number;
|
|
468
|
+
statements?: number;
|
|
469
|
+
};
|
|
470
|
+
};
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
/** Testing disabled */
|
|
474
|
+
interface TestingConfigDisabled {
|
|
475
|
+
enabled: false;
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
/** Testing enabled */
|
|
479
|
+
interface TestingConfigEnabled extends TestingConfigOptions {
|
|
480
|
+
enabled: true;
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
export type TestingConfig = TestingConfigDisabled | TestingConfigEnabled;
|
|
484
|
+
|
|
485
|
+
// ============================================================
|
|
486
|
+
// VSCode Integration Configuration
|
|
487
|
+
// ============================================================
|
|
488
|
+
|
|
489
|
+
/** Optional VSCode settings */
|
|
490
|
+
interface VSCodeConfigOptions {
|
|
491
|
+
/** Whether to auto-generate VSCode settings */
|
|
492
|
+
autoGenerateSettings?: boolean;
|
|
493
|
+
/** Path to VSCode settings file */
|
|
494
|
+
settingsPath?: string;
|
|
495
|
+
/** Custom VSCode settings to merge */
|
|
496
|
+
settings?: {
|
|
497
|
+
/** Oxc extension settings */
|
|
498
|
+
oxc?: {
|
|
499
|
+
enable?: boolean;
|
|
500
|
+
lintRun?: "onSave" | "onType";
|
|
501
|
+
configPath?: string;
|
|
502
|
+
fmtConfigPath?: string;
|
|
503
|
+
fmtExperimental?: boolean;
|
|
504
|
+
typeAware?: boolean;
|
|
505
|
+
traceServer?: "off" | "messages" | "verbose";
|
|
506
|
+
};
|
|
507
|
+
/** Editor settings */
|
|
508
|
+
editor?: {
|
|
509
|
+
formatOnSave?: boolean;
|
|
510
|
+
defaultFormatter?: string;
|
|
511
|
+
codeActionsOnSave?: Record<string, "explicit" | "always" | "never">;
|
|
512
|
+
};
|
|
513
|
+
/** TypeScript settings */
|
|
514
|
+
typescript?: {
|
|
515
|
+
validateEnable?: boolean;
|
|
516
|
+
suggestAutoImports?: boolean;
|
|
517
|
+
preferTypeOnlyAutoImports?: boolean;
|
|
518
|
+
experimentalUseTsgo?: boolean;
|
|
519
|
+
};
|
|
520
|
+
/** File settings */
|
|
521
|
+
files?: {
|
|
522
|
+
eol?: "\n" | "\r\n";
|
|
523
|
+
exclude?: Record<string, boolean>;
|
|
524
|
+
};
|
|
525
|
+
/** Search settings */
|
|
526
|
+
search?: {
|
|
527
|
+
exclude?: Record<string, boolean>;
|
|
528
|
+
};
|
|
529
|
+
};
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
/** VSCode disabled */
|
|
533
|
+
interface VSCodeConfigDisabled {
|
|
534
|
+
enabled: false;
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
/** VSCode enabled */
|
|
538
|
+
interface VSCodeConfigEnabled extends VSCodeConfigOptions {
|
|
539
|
+
enabled: true;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
export type VSCodeConfig = VSCodeConfigDisabled | VSCodeConfigEnabled;
|
|
543
|
+
|
|
544
|
+
// ============================================================
|
|
545
|
+
// Feature Switches
|
|
546
|
+
// ============================================================
|
|
547
|
+
|
|
548
|
+
export interface FeatureSwitches {
|
|
549
|
+
/** Enable i18n literal string checking */
|
|
550
|
+
i18n?: boolean;
|
|
551
|
+
/** Enable React-specific rules */
|
|
552
|
+
react?: boolean;
|
|
553
|
+
/** Enable accessibility rules (jsx-a11y) */
|
|
554
|
+
accessibility?: boolean;
|
|
555
|
+
/** Enable import rules */
|
|
556
|
+
import?: boolean;
|
|
557
|
+
/** Enable promise rules */
|
|
558
|
+
promise?: boolean;
|
|
559
|
+
/** Enable Node.js rules */
|
|
560
|
+
node?: boolean;
|
|
561
|
+
/** Enable pedantic rules (stricter checks) */
|
|
562
|
+
pedantic?: boolean;
|
|
563
|
+
/** Use tsgo instead of tsc for type checking */
|
|
564
|
+
tsgo?: boolean;
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
// ============================================================
|
|
568
|
+
// Vibe Check Configuration
|
|
569
|
+
// ============================================================
|
|
570
|
+
|
|
571
|
+
/** Vibe Check defaults */
|
|
572
|
+
export interface VibeCheckConfig {
|
|
573
|
+
/** Auto-fix issues (default: false) */
|
|
574
|
+
fix?: boolean;
|
|
575
|
+
/** Skip all linting checks (default: false) */
|
|
576
|
+
skipLint?: boolean;
|
|
577
|
+
/** Skip ESLint checks (default: false) */
|
|
578
|
+
skipEslint?: boolean;
|
|
579
|
+
/** Skip Oxlint checks (default: false) */
|
|
580
|
+
skipOxlint?: boolean;
|
|
581
|
+
/** Skip TypeScript checks (default: false) */
|
|
582
|
+
skipTypecheck?: boolean;
|
|
583
|
+
/** Timeout in seconds (default: 3600) */
|
|
584
|
+
timeout?: number;
|
|
585
|
+
/** Max issues to display per page (default: 200) */
|
|
586
|
+
limit?: number;
|
|
587
|
+
/** Max files to show in summary (default: 50) */
|
|
588
|
+
maxFilesInSummary?: number;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
// ============================================================
|
|
592
|
+
// Unified Check Configuration
|
|
593
|
+
// ============================================================
|
|
594
|
+
|
|
595
|
+
export interface CheckConfig {
|
|
596
|
+
/** Oxlint linter configuration */
|
|
597
|
+
oxlint: OxlintConfig;
|
|
598
|
+
|
|
599
|
+
/** ESLint linter configuration (for rules oxlint doesn't support) */
|
|
600
|
+
eslint: EslintConfig;
|
|
601
|
+
|
|
602
|
+
/** Prettier formatter configuration */
|
|
603
|
+
prettier: PrettierConfig;
|
|
604
|
+
|
|
605
|
+
/** TypeScript type checking configuration */
|
|
606
|
+
typecheck: TypecheckConfig;
|
|
607
|
+
|
|
608
|
+
/** Testing configuration */
|
|
609
|
+
testing?: TestingConfig;
|
|
610
|
+
|
|
611
|
+
/** VSCode integration settings */
|
|
612
|
+
vscode: VSCodeConfig;
|
|
613
|
+
|
|
614
|
+
/** Vibe Check defaults */
|
|
615
|
+
vibeCheck?: VibeCheckConfig;
|
|
616
|
+
}
|