@next-vibe/checker 1.0.52 → 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.
Files changed (430) hide show
  1. package/LICENSE +669 -5
  2. package/README.md +179 -200
  3. package/check.config.ts +85 -16
  4. package/generated/alias-map.ts +30 -0
  5. package/generated/endpoint.ts +75 -0
  6. package/{src/app/api/[locale]/system/check/oxlint/plugins/i18n/src/index.ts → oxlint-plugins/i18n.ts} +45 -9
  7. package/{src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/src/index.ts → oxlint-plugins/jsx-capitalization.ts} +84 -17
  8. package/{src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/src/index.ts → oxlint-plugins/restricted-syntax.ts} +40 -14
  9. package/package.json +28 -132
  10. package/.dist/LICENSE +0 -674
  11. package/.dist/README.md +0 -257
  12. package/.dist/bin/vibe-runtime.js +0 -58166
  13. package/.dist/bin/vibe-runtime.js.map +0 -451
  14. package/.dist/oxlint-plugins/i18n.js +0 -381
  15. package/.dist/oxlint-plugins/jsx-capitalization.js +0 -436
  16. package/.dist/oxlint-plugins/restricted-syntax.js +0 -409
  17. package/src/app/api/[locale]/LICENSE +0 -674
  18. package/src/app/api/[locale]/i18n/de/index.ts +0 -15
  19. package/src/app/api/[locale]/i18n/en/index.ts +0 -14
  20. package/src/app/api/[locale]/i18n/pl/index.ts +0 -13
  21. package/src/app/api/[locale]/shared/i18n/de/index.ts +0 -85
  22. package/src/app/api/[locale]/shared/i18n/en/index.ts +0 -83
  23. package/src/app/api/[locale]/shared/i18n/pl/index.ts +0 -85
  24. package/src/app/api/[locale]/shared/stats-filtering.ts +0 -174
  25. package/src/app/api/[locale]/shared/types/common.schema.ts +0 -55
  26. package/src/app/api/[locale]/shared/types/response.schema.ts +0 -411
  27. package/src/app/api/[locale]/shared/types/stats-filtering.schema.ts +0 -315
  28. package/src/app/api/[locale]/shared/types/utils.ts +0 -187
  29. package/src/app/api/[locale]/shared/utils/base64.ts +0 -46
  30. package/src/app/api/[locale]/shared/utils/env-util.ts +0 -36
  31. package/src/app/api/[locale]/shared/utils/i18n/de/index.ts +0 -21
  32. package/src/app/api/[locale]/shared/utils/i18n/en/index.ts +0 -19
  33. package/src/app/api/[locale]/shared/utils/i18n/pl/index.ts +0 -21
  34. package/src/app/api/[locale]/shared/utils/index.ts +0 -11
  35. package/src/app/api/[locale]/shared/utils/object-path.ts +0 -41
  36. package/src/app/api/[locale]/shared/utils/object.test.ts +0 -82
  37. package/src/app/api/[locale]/shared/utils/object.ts +0 -73
  38. package/src/app/api/[locale]/shared/utils/parse-error.ts +0 -134
  39. package/src/app/api/[locale]/shared/utils/parse-json.ts +0 -62
  40. package/src/app/api/[locale]/shared/utils/time.ts +0 -46
  41. package/src/app/api/[locale]/shared/utils/validation.ts +0 -117
  42. package/src/app/api/[locale]/shared/utils/zod-required-fields.ts +0 -115
  43. package/src/app/api/[locale]/system/builder/definition.ts +0 -1750
  44. package/src/app/api/[locale]/system/builder/enum.ts +0 -78
  45. package/src/app/api/[locale]/system/builder/i18n/de/index.ts +0 -645
  46. package/src/app/api/[locale]/system/builder/i18n/en/index.ts +0 -653
  47. package/src/app/api/[locale]/system/builder/i18n/pl/index.ts +0 -643
  48. package/src/app/api/[locale]/system/builder/repository/build-executor.test.ts +0 -178
  49. package/src/app/api/[locale]/system/builder/repository/build-executor.ts +0 -538
  50. package/src/app/api/[locale]/system/builder/repository/bun-compiler.ts +0 -250
  51. package/src/app/api/[locale]/system/builder/repository/bundle-analyzer.ts +0 -170
  52. package/src/app/api/[locale]/system/builder/repository/config-loader.ts +0 -146
  53. package/src/app/api/[locale]/system/builder/repository/config-validator.ts +0 -97
  54. package/src/app/api/[locale]/system/builder/repository/constants.ts +0 -125
  55. package/src/app/api/[locale]/system/builder/repository/error-suggester.ts +0 -67
  56. package/src/app/api/[locale]/system/builder/repository/file-copier.ts +0 -90
  57. package/src/app/api/[locale]/system/builder/repository/folder-cleaner.ts +0 -75
  58. package/src/app/api/[locale]/system/builder/repository/index.ts +0 -2
  59. package/src/app/api/[locale]/system/builder/repository/npm-package-generator.ts +0 -143
  60. package/src/app/api/[locale]/system/builder/repository/output-formatter.ts +0 -104
  61. package/src/app/api/[locale]/system/builder/repository/profile-service.ts +0 -79
  62. package/src/app/api/[locale]/system/builder/repository/report-generator.ts +0 -109
  63. package/src/app/api/[locale]/system/builder/repository/vite-compiler.ts +0 -277
  64. package/src/app/api/[locale]/system/builder/route.ts +0 -21
  65. package/src/app/api/[locale]/system/builder/test-files/file1.ts +0 -2
  66. package/src/app/api/[locale]/system/builder/test-files/file2.tsx +0 -10
  67. package/src/app/api/[locale]/system/builder/test-files/file3.tsx +0 -16
  68. package/src/app/api/[locale]/system/builder/test-files/folderToCopy/fileInFolder.ts +0 -2
  69. package/src/app/api/[locale]/system/builder/test-files/test-config.ts +0 -38
  70. package/src/app/api/[locale]/system/builder/test-files/test-delete-config.ts +0 -8
  71. package/src/app/api/[locale]/system/builder/test-files/test-project/package.json +0 -24
  72. package/src/app/api/[locale]/system/builder/test-files/test-project/src/constants.ts +0 -6
  73. package/src/app/api/[locale]/system/builder/test-files/test-project/src/greet.ts +0 -18
  74. package/src/app/api/[locale]/system/builder/test-files/test-project/src/index.ts +0 -7
  75. package/src/app/api/[locale]/system/builder/test-files/test-project/src/utils/calculate.ts +0 -27
  76. package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.json +0 -19
  77. package/src/app/api/[locale]/system/builder/test-files/test-project/tsconfig.tsbuildinfo +0 -1
  78. package/src/app/api/[locale]/system/builder/test-files/test3.css +0 -1
  79. package/src/app/api/[locale]/system/check/config/create/definition.ts +0 -266
  80. package/src/app/api/[locale]/system/check/config/create/i18n/de/index.ts +0 -151
  81. package/src/app/api/[locale]/system/check/config/create/i18n/en/index.ts +0 -146
  82. package/src/app/api/[locale]/system/check/config/create/i18n/pl/index.ts +0 -148
  83. package/src/app/api/[locale]/system/check/config/create/repository.ts +0 -269
  84. package/src/app/api/[locale]/system/check/config/create/route.ts +0 -21
  85. package/src/app/api/[locale]/system/check/config/repository.ts +0 -846
  86. package/src/app/api/[locale]/system/check/config/shared.ts +0 -364
  87. package/src/app/api/[locale]/system/check/config/types.ts +0 -610
  88. package/src/app/api/[locale]/system/check/config/utils.ts +0 -155
  89. package/src/app/api/[locale]/system/check/i18n/de/index.ts +0 -19
  90. package/src/app/api/[locale]/system/check/i18n/en/index.ts +0 -18
  91. package/src/app/api/[locale]/system/check/i18n/pl/index.ts +0 -19
  92. package/src/app/api/[locale]/system/check/lint/definition.ts +0 -383
  93. package/src/app/api/[locale]/system/check/lint/enum.ts +0 -34
  94. package/src/app/api/[locale]/system/check/lint/i18n/de/index.ts +0 -160
  95. package/src/app/api/[locale]/system/check/lint/i18n/en/index.ts +0 -158
  96. package/src/app/api/[locale]/system/check/lint/i18n/pl/index.ts +0 -160
  97. package/src/app/api/[locale]/system/check/lint/repository.ts +0 -844
  98. package/src/app/api/[locale]/system/check/lint/route.ts +0 -21
  99. package/src/app/api/[locale]/system/check/oxlint/README.md +0 -190
  100. package/src/app/api/[locale]/system/check/oxlint/definition.ts +0 -375
  101. package/src/app/api/[locale]/system/check/oxlint/enum.ts +0 -34
  102. package/src/app/api/[locale]/system/check/oxlint/i18n/de/index.ts +0 -166
  103. package/src/app/api/[locale]/system/check/oxlint/i18n/en/index.ts +0 -164
  104. package/src/app/api/[locale]/system/check/oxlint/i18n/pl/index.ts +0 -166
  105. package/src/app/api/[locale]/system/check/oxlint/plugins/jsx-capitalization/README.md +0 -269
  106. package/src/app/api/[locale]/system/check/oxlint/plugins/restricted-syntax/test.tsx +0 -74
  107. package/src/app/api/[locale]/system/check/oxlint/plugins/shared/config-loader.ts +0 -283
  108. package/src/app/api/[locale]/system/check/oxlint/repository.ts +0 -553
  109. package/src/app/api/[locale]/system/check/oxlint/route.ts +0 -21
  110. package/src/app/api/[locale]/system/check/oxlint/types.ts +0 -191
  111. package/src/app/api/[locale]/system/check/test-project/.vscode/settings.json +0 -48
  112. package/src/app/api/[locale]/system/check/test-project/bun.lock +0 -640
  113. package/src/app/api/[locale]/system/check/test-project/check.config.ts +0 -955
  114. package/src/app/api/[locale]/system/check/test-project/package.json +0 -17
  115. package/src/app/api/[locale]/system/check/test-project/src/constants.ts +0 -6
  116. package/src/app/api/[locale]/system/check/test-project/src/greet.ts +0 -18
  117. package/src/app/api/[locale]/system/check/test-project/src/test-issues/a11y-issues.tsx +0 -107
  118. package/src/app/api/[locale]/system/check/test-project/src/test-issues/eslint-issues.tsx +0 -37
  119. package/src/app/api/[locale]/system/check/test-project/src/test-issues/general-issues.ts +0 -135
  120. package/src/app/api/[locale]/system/check/test-project/src/test-issues/i18n-issues.tsx +0 -113
  121. package/src/app/api/[locale]/system/check/test-project/src/test-issues/jsx-capitalization-issues.tsx +0 -127
  122. package/src/app/api/[locale]/system/check/test-project/src/test-issues/nextjs-issues.tsx +0 -92
  123. package/src/app/api/[locale]/system/check/test-project/src/test-issues/promise-issues.ts +0 -73
  124. package/src/app/api/[locale]/system/check/test-project/src/test-issues/react-issues.tsx +0 -95
  125. package/src/app/api/[locale]/system/check/test-project/src/test-issues/restricted-syntax-issues.tsx +0 -61
  126. package/src/app/api/[locale]/system/check/test-project/src/test-issues/typescript-issues.ts +0 -78
  127. package/src/app/api/[locale]/system/check/test-project/src/utils/calculate.ts +0 -27
  128. package/src/app/api/[locale]/system/check/test-project/tsconfig.json +0 -22
  129. package/src/app/api/[locale]/system/check/test-project/tsconfig.tsbuildinfo +0 -1
  130. package/src/app/api/[locale]/system/check/typecheck/definition.ts +0 -328
  131. package/src/app/api/[locale]/system/check/typecheck/enum.ts +0 -34
  132. package/src/app/api/[locale]/system/check/typecheck/i18n/de/index.ts +0 -148
  133. package/src/app/api/[locale]/system/check/typecheck/i18n/en/index.ts +0 -145
  134. package/src/app/api/[locale]/system/check/typecheck/i18n/pl/index.ts +0 -148
  135. package/src/app/api/[locale]/system/check/typecheck/repository.ts +0 -863
  136. package/src/app/api/[locale]/system/check/typecheck/route.ts +0 -21
  137. package/src/app/api/[locale]/system/check/typecheck/utils.ts +0 -160
  138. package/src/app/api/[locale]/system/check/vibe-check/definition.ts +0 -448
  139. package/src/app/api/[locale]/system/check/vibe-check/enum.ts +0 -63
  140. package/src/app/api/[locale]/system/check/vibe-check/i18n/de/index.ts +0 -164
  141. package/src/app/api/[locale]/system/check/vibe-check/i18n/en/index.ts +0 -161
  142. package/src/app/api/[locale]/system/check/vibe-check/i18n/pl/index.ts +0 -163
  143. package/src/app/api/[locale]/system/check/vibe-check/repository.ts +0 -516
  144. package/src/app/api/[locale]/system/check/vibe-check/route.test.ts +0 -1010
  145. package/src/app/api/[locale]/system/check/vibe-check/route.ts +0 -21
  146. package/src/app/api/[locale]/system/generated/endpoint.ts +0 -274
  147. package/src/app/api/[locale]/system/generated/endpoints.ts +0 -138
  148. package/src/app/api/[locale]/system/generated/route-handlers.ts +0 -213
  149. package/src/app/api/[locale]/system/generators/endpoint/definition.ts +0 -167
  150. package/src/app/api/[locale]/system/generators/endpoint/i18n/de/index.ts +0 -48
  151. package/src/app/api/[locale]/system/generators/endpoint/i18n/en/index.ts +0 -48
  152. package/src/app/api/[locale]/system/generators/endpoint/i18n/pl/index.ts +0 -50
  153. package/src/app/api/[locale]/system/generators/endpoint/repository.ts +0 -286
  154. package/src/app/api/[locale]/system/generators/endpoint/route.ts +0 -18
  155. package/src/app/api/[locale]/system/generators/endpoints/definition.ts +0 -246
  156. package/src/app/api/[locale]/system/generators/endpoints/i18n/de/index.ts +0 -54
  157. package/src/app/api/[locale]/system/generators/endpoints/i18n/en/index.ts +0 -52
  158. package/src/app/api/[locale]/system/generators/endpoints/i18n/pl/index.ts +0 -54
  159. package/src/app/api/[locale]/system/generators/endpoints/options-repository.ts +0 -425
  160. package/src/app/api/[locale]/system/generators/endpoints/repository.ts +0 -368
  161. package/src/app/api/[locale]/system/generators/endpoints/route.ts +0 -17
  162. package/src/app/api/[locale]/system/generators/endpoints-index/definition.ts +0 -166
  163. package/src/app/api/[locale]/system/generators/endpoints-index/i18n/de/index.ts +0 -71
  164. package/src/app/api/[locale]/system/generators/endpoints-index/i18n/en/index.ts +0 -69
  165. package/src/app/api/[locale]/system/generators/endpoints-index/i18n/pl/index.ts +0 -71
  166. package/src/app/api/[locale]/system/generators/endpoints-index/repository.ts +0 -279
  167. package/src/app/api/[locale]/system/generators/endpoints-index/route.ts +0 -18
  168. package/src/app/api/[locale]/system/generators/generate-all/definition.ts +0 -327
  169. package/src/app/api/[locale]/system/generators/generate-all/i18n/de/index.ts +0 -96
  170. package/src/app/api/[locale]/system/generators/generate-all/i18n/en/index.ts +0 -94
  171. package/src/app/api/[locale]/system/generators/generate-all/i18n/pl/index.ts +0 -96
  172. package/src/app/api/[locale]/system/generators/generate-all/repository.ts +0 -240
  173. package/src/app/api/[locale]/system/generators/generate-all/route.ts +0 -19
  174. package/src/app/api/[locale]/system/generators/i18n/de/index.ts +0 -15
  175. package/src/app/api/[locale]/system/generators/i18n/en/index.ts +0 -14
  176. package/src/app/api/[locale]/system/generators/i18n/pl/index.ts +0 -15
  177. package/src/app/api/[locale]/system/generators/route-handlers/definition.ts +0 -178
  178. package/src/app/api/[locale]/system/generators/route-handlers/i18n/de/index.ts +0 -48
  179. package/src/app/api/[locale]/system/generators/route-handlers/i18n/en/index.ts +0 -48
  180. package/src/app/api/[locale]/system/generators/route-handlers/i18n/pl/index.ts +0 -50
  181. package/src/app/api/[locale]/system/generators/route-handlers/repository.ts +0 -267
  182. package/src/app/api/[locale]/system/generators/route-handlers/route.ts +0 -14
  183. package/src/app/api/[locale]/system/generators/shared/utils.ts +0 -215
  184. package/src/app/api/[locale]/system/help/definition.ts +0 -433
  185. package/src/app/api/[locale]/system/help/i18n/de/index.ts +0 -263
  186. package/src/app/api/[locale]/system/help/i18n/en/index.ts +0 -259
  187. package/src/app/api/[locale]/system/help/i18n/pl/index.ts +0 -262
  188. package/src/app/api/[locale]/system/help/interactive/definition.ts +0 -122
  189. package/src/app/api/[locale]/system/help/interactive/i18n/de/index.ts +0 -21
  190. package/src/app/api/[locale]/system/help/interactive/i18n/en/index.ts +0 -19
  191. package/src/app/api/[locale]/system/help/interactive/i18n/pl/index.ts +0 -21
  192. package/src/app/api/[locale]/system/help/interactive/repository.ts +0 -1131
  193. package/src/app/api/[locale]/system/help/interactive/route.ts +0 -43
  194. package/src/app/api/[locale]/system/help/list/definition.ts +0 -362
  195. package/src/app/api/[locale]/system/help/list/repository.ts +0 -99
  196. package/src/app/api/[locale]/system/help/list/route.ts +0 -21
  197. package/src/app/api/[locale]/system/help/repository.ts +0 -238
  198. package/src/app/api/[locale]/system/help/route.ts +0 -16
  199. package/src/app/api/[locale]/system/i18n/de/index.ts +0 -67
  200. package/src/app/api/[locale]/system/i18n/en/index.ts +0 -66
  201. package/src/app/api/[locale]/system/i18n/pl/index.ts +0 -67
  202. package/src/app/api/[locale]/system/release-tool/definition.ts +0 -2925
  203. package/src/app/api/[locale]/system/release-tool/i18n/de/index.ts +0 -782
  204. package/src/app/api/[locale]/system/release-tool/i18n/en/index.ts +0 -779
  205. package/src/app/api/[locale]/system/release-tool/i18n/pl/index.ts +0 -781
  206. package/src/app/api/[locale]/system/release-tool/repository/asset-zipper.ts +0 -122
  207. package/src/app/api/[locale]/system/release-tool/repository/changelog-generator.ts +0 -205
  208. package/src/app/api/[locale]/system/release-tool/repository/ci-detector.ts +0 -540
  209. package/src/app/api/[locale]/system/release-tool/repository/config.ts +0 -106
  210. package/src/app/api/[locale]/system/release-tool/repository/constants.ts +0 -406
  211. package/src/app/api/[locale]/system/release-tool/repository/dependency-manager.ts +0 -496
  212. package/src/app/api/[locale]/system/release-tool/repository/git-service.ts +0 -378
  213. package/src/app/api/[locale]/system/release-tool/repository/hook-runner.ts +0 -96
  214. package/src/app/api/[locale]/system/release-tool/repository/index.ts +0 -1
  215. package/src/app/api/[locale]/system/release-tool/repository/notification-service.ts +0 -575
  216. package/src/app/api/[locale]/system/release-tool/repository/package-service.ts +0 -150
  217. package/src/app/api/[locale]/system/release-tool/repository/publisher.ts +0 -241
  218. package/src/app/api/[locale]/system/release-tool/repository/quality-runner.ts +0 -413
  219. package/src/app/api/[locale]/system/release-tool/repository/release-creator.ts +0 -283
  220. package/src/app/api/[locale]/system/release-tool/repository/release-executor.ts +0 -1084
  221. package/src/app/api/[locale]/system/release-tool/repository/snyk-service.ts +0 -132
  222. package/src/app/api/[locale]/system/release-tool/repository/utils.ts +0 -603
  223. package/src/app/api/[locale]/system/release-tool/repository/validation.ts +0 -265
  224. package/src/app/api/[locale]/system/release-tool/repository/version-service.ts +0 -275
  225. package/src/app/api/[locale]/system/release-tool/route.ts +0 -21
  226. package/src/app/api/[locale]/system/unified-interface/README.md +0 -328
  227. package/src/app/api/[locale]/system/unified-interface/cli/README.md +0 -349
  228. package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-handler.ts +0 -82
  229. package/src/app/api/[locale]/system/unified-interface/cli/auth/cli-user.ts +0 -120
  230. package/src/app/api/[locale]/system/unified-interface/cli/auth/session-file.ts +0 -244
  231. package/src/app/api/[locale]/system/unified-interface/cli/env.ts +0 -24
  232. package/src/app/api/[locale]/system/unified-interface/cli/i18n/de/index.ts +0 -159
  233. package/src/app/api/[locale]/system/unified-interface/cli/i18n/en/index.ts +0 -158
  234. package/src/app/api/[locale]/system/unified-interface/cli/i18n/pl/index.ts +0 -159
  235. package/src/app/api/[locale]/system/unified-interface/cli/runtime/debug.ts +0 -573
  236. package/src/app/api/[locale]/system/unified-interface/cli/runtime/entry-point.ts +0 -128
  237. package/src/app/api/[locale]/system/unified-interface/cli/runtime/environment.ts +0 -155
  238. package/src/app/api/[locale]/system/unified-interface/cli/runtime/execution-errors.ts +0 -423
  239. package/src/app/api/[locale]/system/unified-interface/cli/runtime/parsing.ts +0 -252
  240. package/src/app/api/[locale]/system/unified-interface/cli/runtime/route-executor.ts +0 -901
  241. package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/de/index.ts +0 -12
  242. package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/en/index.ts +0 -11
  243. package/src/app/api/[locale]/system/unified-interface/cli/setup/i18n/pl/index.ts +0 -12
  244. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/definition.ts +0 -235
  245. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/de/index.ts +0 -54
  246. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/en/index.ts +0 -52
  247. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/i18n/pl/index.ts +0 -54
  248. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/repository.ts +0 -444
  249. package/src/app/api/[locale]/system/unified-interface/cli/setup/install/route.ts +0 -25
  250. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/definition.ts +0 -159
  251. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/de/index.ts +0 -61
  252. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/en/index.ts +0 -59
  253. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/i18n/pl/index.ts +0 -61
  254. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/repository.ts +0 -181
  255. package/src/app/api/[locale]/system/unified-interface/cli/setup/status/route.ts +0 -22
  256. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/definition.ts +0 -164
  257. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/de/index.ts +0 -54
  258. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/en/index.ts +0 -52
  259. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/i18n/pl/index.ts +0 -54
  260. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/repository.ts +0 -195
  261. package/src/app/api/[locale]/system/unified-interface/cli/setup/uninstall/route.ts +0 -24
  262. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/definition.ts +0 -180
  263. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/de/index.ts +0 -54
  264. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/en/index.ts +0 -52
  265. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/i18n/pl/index.ts +0 -54
  266. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/repository.ts +0 -105
  267. package/src/app/api/[locale]/system/unified-interface/cli/setup/update/route.ts +0 -22
  268. package/src/app/api/[locale]/system/unified-interface/cli/vibe-runtime.ts +0 -264
  269. package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/base-renderer.ts +0 -246
  270. package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/registry.ts +0 -305
  271. package/src/app/api/[locale]/system/unified-interface/cli/widgets/core/types.ts +0 -116
  272. package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/de/index.ts +0 -67
  273. package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/en/index.ts +0 -65
  274. package/src/app/api/[locale]/system/unified-interface/cli/widgets/i18n/pl/index.ts +0 -67
  275. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/accordion.ts +0 -70
  276. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/avatar.ts +0 -37
  277. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/badge.ts +0 -52
  278. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-output.ts +0 -285
  279. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-files.ts +0 -71
  280. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-list.ts +0 -281
  281. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/code-quality-summary.ts +0 -83
  282. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/container.ts +0 -175
  283. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-card.ts +0 -61
  284. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-cards.ts +0 -518
  285. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-list.ts +0 -75
  286. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/data-table.ts +0 -357
  287. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/editable-text.ts +0 -93
  288. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/empty-state.ts +0 -49
  289. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/errors.ts +0 -63
  290. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/grouped-list.ts +0 -667
  291. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-card.ts +0 -78
  292. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link-list.ts +0 -99
  293. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/link.ts +0 -54
  294. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/loading.ts +0 -46
  295. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/markdown.ts +0 -123
  296. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/metric.ts +0 -269
  297. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/section.ts +0 -114
  298. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/stats-grid.ts +0 -138
  299. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/tabs.ts +0 -59
  300. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/text.ts +0 -76
  301. package/src/app/api/[locale]/system/unified-interface/cli/widgets/implementations/title.ts +0 -37
  302. package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/response-renderer.ts +0 -403
  303. package/src/app/api/[locale]/system/unified-interface/cli/widgets/renderers/schema-handler.ts +0 -504
  304. package/src/app/api/[locale]/system/unified-interface/i18n/de/index.ts +0 -39
  305. package/src/app/api/[locale]/system/unified-interface/i18n/en/index.ts +0 -37
  306. package/src/app/api/[locale]/system/unified-interface/i18n/pl/index.ts +0 -39
  307. package/src/app/api/[locale]/system/unified-interface/mcp/README.md +0 -114
  308. package/src/app/api/[locale]/system/unified-interface/mcp/converter.ts +0 -136
  309. package/src/app/api/[locale]/system/unified-interface/mcp/i18n/de/index.ts +0 -180
  310. package/src/app/api/[locale]/system/unified-interface/mcp/i18n/en/index.ts +0 -178
  311. package/src/app/api/[locale]/system/unified-interface/mcp/i18n/pl/index.ts +0 -180
  312. package/src/app/api/[locale]/system/unified-interface/mcp/registry.ts +0 -305
  313. package/src/app/api/[locale]/system/unified-interface/mcp/serve/definition.ts +0 -124
  314. package/src/app/api/[locale]/system/unified-interface/mcp/serve/repository.ts +0 -44
  315. package/src/app/api/[locale]/system/unified-interface/mcp/serve/route.ts +0 -14
  316. package/src/app/api/[locale]/system/unified-interface/mcp/server/protocol-handler.ts +0 -291
  317. package/src/app/api/[locale]/system/unified-interface/mcp/server/server.ts +0 -155
  318. package/src/app/api/[locale]/system/unified-interface/mcp/server/stdio-transport.ts +0 -191
  319. package/src/app/api/[locale]/system/unified-interface/mcp/types.ts +0 -247
  320. package/src/app/api/[locale]/system/unified-interface/react/icons.tsx +0 -346
  321. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create-form.ts +0 -1413
  322. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/create.ts +0 -525
  323. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/endpoint-to-metadata.ts +0 -52
  324. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definition/loader.ts +0 -144
  325. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/definitions/registry.ts +0 -262
  326. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/permissions/registry.ts +0 -656
  327. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/executor.ts +0 -220
  328. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/handler.ts +0 -313
  329. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/multi.ts +0 -182
  330. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/request-validator.ts +0 -173
  331. package/src/app/api/[locale]/system/unified-interface/shared/endpoints/route/single.ts +0 -58
  332. package/src/app/api/[locale]/system/unified-interface/shared/env/define-env-client.ts +0 -45
  333. package/src/app/api/[locale]/system/unified-interface/shared/env/define-env.ts +0 -43
  334. package/src/app/api/[locale]/system/unified-interface/shared/env/validation-logger.ts +0 -58
  335. package/src/app/api/[locale]/system/unified-interface/shared/field/enum.ts +0 -107
  336. package/src/app/api/[locale]/system/unified-interface/shared/field/specialized.ts +0 -336
  337. package/src/app/api/[locale]/system/unified-interface/shared/field/utils.test.ts +0 -385
  338. package/src/app/api/[locale]/system/unified-interface/shared/field/utils.ts +0 -1827
  339. package/src/app/api/[locale]/system/unified-interface/shared/field-config/endpoint-field-types.ts +0 -108
  340. package/src/app/api/[locale]/system/unified-interface/shared/field-config/field-config-types.ts +0 -288
  341. package/src/app/api/[locale]/system/unified-interface/shared/logger/colors.ts +0 -114
  342. package/src/app/api/[locale]/system/unified-interface/shared/logger/endpoint.ts +0 -155
  343. package/src/app/api/[locale]/system/unified-interface/shared/logger/file-logger.ts +0 -85
  344. package/src/app/api/[locale]/system/unified-interface/shared/logger/formatters.ts +0 -167
  345. package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/base-auth-handler.ts +0 -82
  346. package/src/app/api/[locale]/system/unified-interface/shared/server-only/auth/factory.ts +0 -34
  347. package/src/app/api/[locale]/system/unified-interface/shared/server-only/server-only.ts +0 -1
  348. package/src/app/api/[locale]/system/unified-interface/shared/types/actions.ts +0 -284
  349. package/src/app/api/[locale]/system/unified-interface/shared/types/endpoint.ts +0 -1101
  350. package/src/app/api/[locale]/system/unified-interface/shared/types/enums.ts +0 -383
  351. package/src/app/api/[locale]/system/unified-interface/shared/types/platform.ts +0 -34
  352. package/src/app/api/[locale]/system/unified-interface/shared/types/types.ts +0 -76
  353. package/src/app/api/[locale]/system/unified-interface/shared/types/ui-config.ts +0 -72
  354. package/src/app/api/[locale]/system/unified-interface/shared/utils/error-types.ts +0 -27
  355. package/src/app/api/[locale]/system/unified-interface/shared/utils/path.ts +0 -80
  356. package/src/app/api/[locale]/system/unified-interface/shared/utils/scanner.ts +0 -225
  357. package/src/app/api/[locale]/system/unified-interface/shared/widgets/actions.ts +0 -251
  358. package/src/app/api/[locale]/system/unified-interface/shared/widgets/configs.ts +0 -1060
  359. package/src/app/api/[locale]/system/unified-interface/shared/widgets/helpers.ts +0 -70
  360. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/accordion.ts +0 -75
  361. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/avatar.ts +0 -69
  362. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/badge.ts +0 -86
  363. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-output.ts +0 -283
  364. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/code-quality-list.ts +0 -190
  365. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/container.ts +0 -114
  366. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-card.ts +0 -71
  367. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-cards.ts +0 -228
  368. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-list.ts +0 -119
  369. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/data-table.ts +0 -367
  370. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/editable-text.ts +0 -81
  371. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/empty-state.ts +0 -71
  372. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/errors.ts +0 -79
  373. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/grouped-list.ts +0 -426
  374. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/index.ts +0 -38
  375. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-card.ts +0 -112
  376. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link-list.ts +0 -110
  377. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/link.ts +0 -66
  378. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/loading.ts +0 -79
  379. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/markdown.ts +0 -159
  380. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/metric-card.ts +0 -225
  381. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/section.ts +0 -85
  382. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/stats-grid.ts +0 -63
  383. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/tabs.ts +0 -73
  384. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/text.ts +0 -96
  385. package/src/app/api/[locale]/system/unified-interface/shared/widgets/logic/title.ts +0 -57
  386. package/src/app/api/[locale]/system/unified-interface/shared/widgets/types.ts +0 -236
  387. package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/field-helpers.ts +0 -120
  388. package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/formatting.ts +0 -414
  389. package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/url.ts +0 -37
  390. package/src/app/api/[locale]/system/unified-interface/shared/widgets/utils/widget-helpers.ts +0 -427
  391. package/src/app/api/[locale]/user/auth/i18n/de/index.ts +0 -204
  392. package/src/app/api/[locale]/user/auth/i18n/en/index.ts +0 -199
  393. package/src/app/api/[locale]/user/auth/i18n/pl/index.ts +0 -203
  394. package/src/app/api/[locale]/user/auth/types.ts +0 -45
  395. package/src/app/api/[locale]/user/enum.ts +0 -64
  396. package/src/app/api/[locale]/user/i18n/de/index.ts +0 -75
  397. package/src/app/api/[locale]/user/i18n/en/index.ts +0 -74
  398. package/src/app/api/[locale]/user/i18n/pl/index.ts +0 -75
  399. package/src/app/api/[locale]/user/types.ts +0 -111
  400. package/src/app/api/[locale]/user/user-roles/enum.ts +0 -103
  401. package/src/app/api/[locale]/user/user-roles/i18n/de/index.ts +0 -85
  402. package/src/app/api/[locale]/user/user-roles/i18n/en/index.ts +0 -83
  403. package/src/app/api/[locale]/user/user-roles/i18n/pl/index.ts +0 -85
  404. package/src/app/api/[locale]/user/user-roles/types.ts +0 -32
  405. package/src/app/api/i18n/de/index.ts +0 -6
  406. package/src/app/api/i18n/en/index.ts +0 -5
  407. package/src/app/api/i18n/pl/index.ts +0 -5
  408. package/src/app/i18n/de/index.ts +0 -18
  409. package/src/app/i18n/en/index.ts +0 -18
  410. package/src/app/i18n/pl/index.ts +0 -17
  411. package/src/config/constants.ts +0 -8
  412. package/src/config/debug.ts +0 -30
  413. package/src/config/env-client.ts +0 -57
  414. package/src/config/env.ts +0 -56
  415. package/src/config/i18n/de/index.ts +0 -3
  416. package/src/config/i18n/en/index.ts +0 -51
  417. package/src/config/i18n/pl/index.ts +0 -3
  418. package/src/i18n/core/config.ts +0 -225
  419. package/src/i18n/core/language-utils.ts +0 -226
  420. package/src/i18n/core/localization-utils.ts +0 -394
  421. package/src/i18n/core/scoped-translation.ts +0 -104
  422. package/src/i18n/core/shared-component.tsx +0 -28
  423. package/src/i18n/core/shared-translation-utils.ts +0 -97
  424. package/src/i18n/core/shared.ts +0 -44
  425. package/src/i18n/core/static-types.ts +0 -64
  426. package/src/i18n/core/translation-utils.ts +0 -186
  427. package/src/i18n/de/index.ts +0 -8
  428. package/src/i18n/en/index.ts +0 -7
  429. package/src/i18n/index.ts +0 -100
  430. package/src/i18n/pl/index.ts +0 -7
@@ -0,0 +1,30 @@
1
+ /**
2
+ * AUTO-GENERATED FILE - DO NOT EDIT
3
+ * Generated by generators/package-endpoints
4
+ *
5
+ * Endpoints in package: 3
6
+ * Total paths (with aliases): 15
7
+ */
8
+
9
+ /* eslint-disable prettier/prettier */
10
+
11
+ /**
12
+ * Map of aliases to their canonical full paths (scoped to this package).
13
+ */
14
+ export const pathToAliasMap = {
15
+ "ai-tools": "tool-help",
16
+ c: "check",
17
+ cc: "config-create",
18
+ check: "check",
19
+ "config-create": "config-create",
20
+ "create-config": "config-create",
21
+ h: "tool-help",
22
+ help: "tool-help",
23
+ list: "tool-help",
24
+ ls: "tool-help",
25
+ system_check_config_create_POST: "config-create",
26
+ "system_check_vibe-check_POST": "check",
27
+ system_help_GET: "tool-help",
28
+ "tool-help": "tool-help",
29
+ "tools:list": "tool-help",
30
+ } as const;
@@ -0,0 +1,75 @@
1
+ /**
2
+ * AUTO-GENERATED FILE - DO NOT EDIT
3
+ * Generated by generators/package-endpoints
4
+ *
5
+ * Endpoints in package: 3
6
+ * Total paths (with aliases): 15
7
+ */
8
+
9
+ /* eslint-disable prettier/prettier */
10
+
11
+ import type { CreateApiEndpointAny } from "@/app/api/[locale]/system/unified-interface/shared/types/endpoint-base";
12
+
13
+ /**
14
+ * Dynamically import endpoint definition by path (scoped to this package).
15
+ */
16
+ export async function getEndpoint(
17
+ path: string,
18
+ ): Promise<CreateApiEndpointAny | null> {
19
+ switch (path) {
20
+ case "ai-tools":
21
+ return (await import("@/app/api/[locale]/system/help/definition")).default
22
+ .GET;
23
+ case "c":
24
+ return (
25
+ await import("@/app/api/[locale]/system/check/vibe-check/definition")
26
+ ).default.POST;
27
+ case "cc":
28
+ return (
29
+ await import("@/app/api/[locale]/system/check/config/create/definition")
30
+ ).default.POST;
31
+ case "check":
32
+ return (
33
+ await import("@/app/api/[locale]/system/check/vibe-check/definition")
34
+ ).default.POST;
35
+ case "config-create":
36
+ return (
37
+ await import("@/app/api/[locale]/system/check/config/create/definition")
38
+ ).default.POST;
39
+ case "create-config":
40
+ return (
41
+ await import("@/app/api/[locale]/system/check/config/create/definition")
42
+ ).default.POST;
43
+ case "h":
44
+ return (await import("@/app/api/[locale]/system/help/definition")).default
45
+ .GET;
46
+ case "help":
47
+ return (await import("@/app/api/[locale]/system/help/definition")).default
48
+ .GET;
49
+ case "list":
50
+ return (await import("@/app/api/[locale]/system/help/definition")).default
51
+ .GET;
52
+ case "ls":
53
+ return (await import("@/app/api/[locale]/system/help/definition")).default
54
+ .GET;
55
+ case "system_check_config_create_POST":
56
+ return (
57
+ await import("@/app/api/[locale]/system/check/config/create/definition")
58
+ ).default.POST;
59
+ case "system_check_vibe-check_POST":
60
+ return (
61
+ await import("@/app/api/[locale]/system/check/vibe-check/definition")
62
+ ).default.POST;
63
+ case "system_help_GET":
64
+ return (await import("@/app/api/[locale]/system/help/definition")).default
65
+ .GET;
66
+ case "tool-help":
67
+ return (await import("@/app/api/[locale]/system/help/definition")).default
68
+ .GET;
69
+ case "tools:list":
70
+ return (await import("@/app/api/[locale]/system/help/definition")).default
71
+ .GET;
72
+ default:
73
+ return null;
74
+ }
75
+ }
@@ -19,7 +19,10 @@ import type {
19
19
  OxlintASTNode,
20
20
  OxlintRuleContext,
21
21
  } from "../../../types";
22
- import type { createPluginMessages, loadPluginConfig } from "../../shared/config-loader";
22
+ import type {
23
+ createPluginMessages,
24
+ loadPluginConfig,
25
+ } from "../../shared/config-loader";
23
26
 
24
27
  // ============================================================
25
28
  // Types
@@ -82,8 +85,10 @@ const DEFAULT_CONFIG: I18nPluginConfig = {
82
85
 
83
86
  const DEFAULT_MESSAGES: I18nMessages = {
84
87
  jsxText: 'Literal string "{value}" should be translated using i18n.',
85
- jsxExpression: 'Literal string "{value}" in JSX expression should be translated.',
86
- jsxAttribute: 'Literal string "{value}" in JSX attribute should be translated.',
88
+ jsxExpression:
89
+ 'Literal string "{value}" in JSX expression should be translated.',
90
+ jsxAttribute:
91
+ 'Literal string "{value}" in JSX attribute should be translated.',
87
92
  };
88
93
 
89
94
  // ============================================================
@@ -129,7 +134,10 @@ function loadI18nConfig(): I18nPluginConfig {
129
134
  const loader = getConfigLoader();
130
135
 
131
136
  if (loader) {
132
- const result = loader.loadPluginConfig("oxlint-plugin-i18n/no-literal-string", DEFAULT_CONFIG);
137
+ const result = loader.loadPluginConfig(
138
+ "oxlint-plugin-i18n/no-literal-string",
139
+ DEFAULT_CONFIG,
140
+ );
133
141
  cachedConfig = result.config ?? DEFAULT_CONFIG;
134
142
  } else {
135
143
  // Fallback: try direct require of check.config.ts
@@ -147,9 +155,11 @@ function loadConfigFallback(): I18nPluginConfig {
147
155
  // eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-assignment -- Plugin fallback requires dynamic loading
148
156
  const config = require(`${process.cwd()}/check.config.ts`);
149
157
  const checkConfig = config.default ?? config;
150
- const exported = typeof checkConfig === "function" ? checkConfig() : checkConfig;
158
+ const exported =
159
+ typeof checkConfig === "function" ? checkConfig() : checkConfig;
151
160
 
152
- const ruleConfig = exported?.oxlint?.rules?.["oxlint-plugin-i18n/no-literal-string"];
161
+ const ruleConfig =
162
+ exported?.oxlint?.rules?.["oxlint-plugin-i18n/no-literal-string"];
153
163
  if (Array.isArray(ruleConfig) && ruleConfig[1]) {
154
164
  return ruleConfig[1] as I18nPluginConfig;
155
165
  }
@@ -216,7 +226,9 @@ const noLiteralStringRule = {
216
226
  },
217
227
  ],
218
228
  },
219
- create(context: I18nRuleContext): Record<string, (node: OxlintASTNode) => void> {
229
+ create(
230
+ context: I18nRuleContext,
231
+ ): Record<string, (node: OxlintASTNode) => void> {
220
232
  // Load config from check.config.ts (single source of truth)
221
233
  // Falls back to rule options if config file not available
222
234
  const configFromFile = loadI18nConfig();
@@ -292,6 +304,26 @@ const noLiteralStringRule = {
292
304
  "JSXExpressionContainer > Literal"(node: OxlintASTNode): void {
293
305
  const value = (node as JSXLiteral).value;
294
306
  if (typeof value === "string" && !shouldExcludeString(value)) {
307
+ // Check if this literal is inside a JSXAttribute with an excluded name
308
+ // Walk up the AST to find the parent JSXAttribute
309
+ let parent = node.parent;
310
+ while (parent) {
311
+ if (parent.type === "JSXAttribute") {
312
+ const attrNode = parent as JSXAttribute;
313
+ const nameNode = attrNode.name;
314
+ if (nameNode) {
315
+ const attrName: string =
316
+ (nameNode as JSXIdentifier).name ?? String(nameNode);
317
+ // Skip if this is an excluded attribute
318
+ if (isExcludedAttribute(attrName)) {
319
+ return;
320
+ }
321
+ }
322
+ break;
323
+ }
324
+ parent = parent.parent;
325
+ }
326
+
295
327
  context.report({
296
328
  node,
297
329
  message: formatMessage(messages.jsxExpression, value),
@@ -309,7 +341,8 @@ const noLiteralStringRule = {
309
341
  }
310
342
 
311
343
  // Get the attribute name string
312
- const attrName: string = (nameNode as JSXIdentifier).name ?? String(nameNode);
344
+ const attrName: string =
345
+ (nameNode as JSXIdentifier).name ?? String(nameNode);
313
346
 
314
347
  // Skip ALL excluded attributes
315
348
  if (isExcludedAttribute(attrName)) {
@@ -324,7 +357,10 @@ const noLiteralStringRule = {
324
357
 
325
358
  if (valueNode.type === "Literal") {
326
359
  const literalValue = (valueNode as JSXLiteral).value;
327
- if (typeof literalValue === "string" && !shouldExcludeString(literalValue)) {
360
+ if (
361
+ typeof literalValue === "string" &&
362
+ !shouldExcludeString(literalValue)
363
+ ) {
328
364
  context.report({
329
365
  node: valueNode,
330
366
  message: formatMessage(messages.jsxAttribute, literalValue),
@@ -20,7 +20,10 @@ import type {
20
20
  OxlintComment,
21
21
  OxlintRuleContext,
22
22
  } from "../../../types";
23
- import type { createPluginMessages, loadPluginConfig } from "../../shared/config-loader";
23
+ import type {
24
+ createPluginMessages,
25
+ loadPluginConfig,
26
+ } from "../../shared/config-loader";
24
27
 
25
28
  /** JSXOpeningElement AST node */
26
29
  interface JSXOpeningElement extends OxlintASTNode {
@@ -91,10 +94,38 @@ const DEFAULT_CONFIG: JsxCapitalizationPluginConfig = {
91
94
  "code",
92
95
  "pre",
93
96
  ],
94
- standaloneElements: ["div", "button", "input", "label", "form", "table", "ul", "ol", "li"],
95
- svgElements: ["svg", "path", "circle", "rect", "line", "polygon", "polyline", "ellipse", "g"],
97
+ standaloneElements: [
98
+ "div",
99
+ "button",
100
+ "input",
101
+ "label",
102
+ "form",
103
+ "table",
104
+ "ul",
105
+ "ol",
106
+ "li",
107
+ ],
108
+ svgElements: [
109
+ "svg",
110
+ "path",
111
+ "circle",
112
+ "rect",
113
+ "line",
114
+ "polygon",
115
+ "polyline",
116
+ "ellipse",
117
+ "g",
118
+ ],
96
119
  imageElements: ["img", "picture", "source", "video", "audio"],
97
- commonUiElements: ["nav", "header", "footer", "main", "section", "article", "aside"],
120
+ commonUiElements: [
121
+ "nav",
122
+ "header",
123
+ "footer",
124
+ "main",
125
+ "section",
126
+ "article",
127
+ "aside",
128
+ ],
98
129
  };
99
130
 
100
131
  const DEFAULT_MESSAGES: JsxCapitalizationMessages = {
@@ -179,10 +210,13 @@ function loadConfigFallback(): JsxCapitalizationPluginConfig {
179
210
  // eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-assignment -- Plugin fallback requires dynamic loading
180
211
  const config = require(`${process.cwd()}/check.config.ts`);
181
212
  const checkConfig = config.default ?? config;
182
- const exported = typeof checkConfig === "function" ? checkConfig() : checkConfig;
213
+ const exported =
214
+ typeof checkConfig === "function" ? checkConfig() : checkConfig;
183
215
 
184
216
  const ruleConfig =
185
- exported?.oxlint?.rules?.["oxlint-plugin-jsx-capitalization/jsx-capitalization"];
217
+ exported?.oxlint?.rules?.[
218
+ "oxlint-plugin-jsx-capitalization/jsx-capitalization"
219
+ ];
186
220
  if (Array.isArray(ruleConfig) && ruleConfig[1]) {
187
221
  return ruleConfig[1] as JsxCapitalizationPluginConfig;
188
222
  }
@@ -207,7 +241,11 @@ function getMessages(): JsxCapitalizationMessages {
207
241
  /**
208
242
  * Format a message with value substitution
209
243
  */
210
- function formatMessage(template: string, elementName: string, capitalizedName: string): string {
244
+ function formatMessage(
245
+ template: string,
246
+ elementName: string,
247
+ capitalizedName: string,
248
+ ): string {
211
249
  return template
212
250
  .replaceAll("{elementName}", elementName)
213
251
  .replaceAll("{capitalizedName}", capitalizedName);
@@ -223,7 +261,10 @@ function formatMessage(template: string, elementName: string, capitalizedName: s
223
261
  */
224
262
  function isLowercaseElement(elementName: string): boolean {
225
263
  const firstChar = elementName.charAt(0);
226
- return firstChar === firstChar.toLowerCase() && firstChar !== firstChar.toUpperCase();
264
+ return (
265
+ firstChar === firstChar.toLowerCase() &&
266
+ firstChar !== firstChar.toUpperCase()
267
+ );
227
268
  }
228
269
 
229
270
  /**
@@ -270,8 +311,12 @@ function isExcludedPath(
270
311
  /**
271
312
  * Check if the node has a disable comment
272
313
  */
273
- function hasDisableComment(context: JsxCapitalizationRuleContext, node: OxlintASTNode): boolean {
274
- const getComments = context.getCommentsBefore ?? context.sourceCode?.getCommentsBefore;
314
+ function hasDisableComment(
315
+ context: JsxCapitalizationRuleContext,
316
+ node: OxlintASTNode,
317
+ ): boolean {
318
+ const getComments =
319
+ context.getCommentsBefore ?? context.sourceCode?.getCommentsBefore;
275
320
  if (typeof getComments !== "function") {
276
321
  return false;
277
322
  }
@@ -290,7 +335,8 @@ function hasDisableComment(context: JsxCapitalizationRuleContext, node: OxlintAS
290
335
  if (
291
336
  (commentText.includes("eslint-disable-next-line") ||
292
337
  commentText.includes("oxlint-disable-next-line")) &&
293
- (commentText.includes("jsx-capitalization") || commentText.includes("no-lowercase-jsx"))
338
+ (commentText.includes("jsx-capitalization") ||
339
+ commentText.includes("no-lowercase-jsx"))
294
340
  ) {
295
341
  return true;
296
342
  }
@@ -391,7 +437,10 @@ function getExcludedPaths(context: JsxCapitalizationRuleContext): {
391
437
  /**
392
438
  * Get error message for lowercase JSX element with smart import suggestions
393
439
  */
394
- function getErrorMessage(elementName: string, elementSets: ElementSets): string {
440
+ function getErrorMessage(
441
+ elementName: string,
442
+ elementSets: ElementSets,
443
+ ): string {
395
444
  const capitalizedName = capitalize(elementName);
396
445
  const messages = getMessages();
397
446
 
@@ -407,12 +456,20 @@ function getErrorMessage(elementName: string, elementSets: ElementSets): string
407
456
 
408
457
  // Typography elements from typography.tsx
409
458
  if (elementSets.typography.has(elementName)) {
410
- return formatMessage(messages.typographyElement, elementName, capitalizedName);
459
+ return formatMessage(
460
+ messages.typographyElement,
461
+ elementName,
462
+ capitalizedName,
463
+ );
411
464
  }
412
465
 
413
466
  // Standalone UI elements with their own files
414
467
  if (elementSets.standalone.has(elementName)) {
415
- return formatMessage(messages.standaloneElement, elementName, capitalizedName);
468
+ return formatMessage(
469
+ messages.standaloneElement,
470
+ elementName,
471
+ capitalizedName,
472
+ );
416
473
  }
417
474
 
418
475
  // SVG elements - suggest using icons instead
@@ -427,7 +484,11 @@ function getErrorMessage(elementName: string, elementSets: ElementSets): string
427
484
 
428
485
  // Common UI elements with known wrappers
429
486
  if (elementSets.commonUi.has(elementName)) {
430
- return formatMessage(messages.commonUiElement, elementName, capitalizedName);
487
+ return formatMessage(
488
+ messages.commonUiElement,
489
+ elementName,
490
+ capitalizedName,
491
+ );
431
492
  }
432
493
 
433
494
  // Generic/unknown elements - guide to create platform-specific components
@@ -462,14 +523,20 @@ const jsxCapitalizationRule = {
462
523
  },
463
524
  ],
464
525
  },
465
- create(context: JsxCapitalizationRuleContext): Record<string, (node: OxlintASTNode) => void> {
526
+ create(
527
+ context: JsxCapitalizationRuleContext,
528
+ ): Record<string, (node: OxlintASTNode) => void> {
466
529
  // Load config from check.config.ts (single source of truth)
467
530
  // Falls back to rule options if config file not available
468
531
  const { excludedPaths, excludedFilePatterns } = getExcludedPaths(context);
469
532
  const elementSets = getElementSets(context);
470
533
 
471
534
  // Check if file is in excluded path
472
- const isExcluded = isExcludedPath(context, excludedPaths, excludedFilePatterns);
535
+ const isExcluded = isExcludedPath(
536
+ context,
537
+ excludedPaths,
538
+ excludedFilePatterns,
539
+ );
473
540
 
474
541
  return {
475
542
  JSXOpeningElement(node: OxlintASTNode): void {
@@ -17,8 +17,15 @@
17
17
  */
18
18
 
19
19
  import type { RestrictedSyntaxPluginConfig } from "../../../../config/types";
20
- import type { OxlintASTNode, OxlintComment, OxlintRuleContext } from "../../../types";
21
- import type { createPluginMessages, loadPluginConfig } from "../../shared/config-loader";
20
+ import type {
21
+ OxlintASTNode,
22
+ OxlintComment,
23
+ OxlintRuleContext,
24
+ } from "../../../types";
25
+ import type {
26
+ createPluginMessages,
27
+ loadPluginConfig,
28
+ } from "../../shared/config-loader";
22
29
 
23
30
  // ============================================================
24
31
  // Types
@@ -100,9 +107,9 @@ const DEFAULT_CONFIG: RestrictedSyntaxPluginConfig = {
100
107
 
101
108
  const DEFAULT_MESSAGES: RestrictedSyntaxMessages = {
102
109
  unknownType:
103
- "Usage of the 'unknown' type isn't allowed. Consider using the inferred types from the unified interface system based on definition.ts",
110
+ "Replace 'unknown' with existing typed interface. align with codebase types rather than converting or recreating.",
104
111
  objectType:
105
- "Usage of the 'object' type isn't allowed. Consider using the inferred types from the unified interface system based on definition.ts",
112
+ "Replace 'object' with existing typed interface. align with codebase types rather than converting or recreating.",
106
113
  throwStatement:
107
114
  "Usage of 'throw' statements is not allowed. Use proper ResponseType<T> patterns instead.",
108
115
  jsxInObjectLiteral:
@@ -173,9 +180,11 @@ function loadConfigFallback(): RestrictedSyntaxPluginConfig {
173
180
  // eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-unsafe-assignment -- Plugin fallback requires dynamic loading
174
181
  const config = require(`${process.cwd()}/check.config.ts`);
175
182
  const checkConfig = config.default ?? config;
176
- const exported = typeof checkConfig === "function" ? checkConfig() : checkConfig;
183
+ const exported =
184
+ typeof checkConfig === "function" ? checkConfig() : checkConfig;
177
185
 
178
- const ruleConfig = exported?.oxlint?.rules?.["oxlint-plugin-restricted/restricted-syntax"];
186
+ const ruleConfig =
187
+ exported?.oxlint?.rules?.["oxlint-plugin-restricted/restricted-syntax"];
179
188
  if (Array.isArray(ruleConfig) && ruleConfig[1]) {
180
189
  return ruleConfig[1] as RestrictedSyntaxPluginConfig;
181
190
  }
@@ -205,7 +214,9 @@ function getMessages(): RestrictedSyntaxMessages {
205
214
  * Type guard to check if a node is a Property node
206
215
  */
207
216
  function isProperty(node: OxlintASTNode): node is Property {
208
- return node.type === "Property" && typeof (node as Property).method === "boolean";
217
+ return (
218
+ node.type === "Property" && typeof (node as Property).method === "boolean"
219
+ );
209
220
  }
210
221
 
211
222
  /**
@@ -231,9 +242,13 @@ function isAllowedPath(context: RestrictedSyntaxRuleContext): boolean {
231
242
  /**
232
243
  * Check if the node has a disable comment
233
244
  */
234
- function hasDisableComment(context: RestrictedSyntaxRuleContext, node: OxlintASTNode): boolean {
245
+ function hasDisableComment(
246
+ context: RestrictedSyntaxRuleContext,
247
+ node: OxlintASTNode,
248
+ ): boolean {
235
249
  // Try to get comments from context
236
- const getComments = context.getCommentsBefore ?? context.sourceCode?.getCommentsBefore;
250
+ const getComments =
251
+ context.getCommentsBefore ?? context.sourceCode?.getCommentsBefore;
237
252
  if (typeof getComments !== "function") {
238
253
  // If comment API is not available, allow the node (fail open)
239
254
  return false;
@@ -254,7 +269,8 @@ function hasDisableComment(context: RestrictedSyntaxRuleContext, node: OxlintAST
254
269
  if (
255
270
  (commentText.includes("eslint-disable-next-line") ||
256
271
  commentText.includes("oxlint-disable-next-line")) &&
257
- (commentText.includes("restricted-syntax") || commentText.includes("no-restricted-syntax"))
272
+ (commentText.includes("restricted-syntax") ||
273
+ commentText.includes("no-restricted-syntax"))
258
274
  ) {
259
275
  return true;
260
276
  }
@@ -277,7 +293,9 @@ function isObjectProperty(prop: OxlintASTNode): prop is Property {
277
293
  /**
278
294
  * Get the JSX allowed properties Set from rule options or config file
279
295
  */
280
- function getJsxAllowedProperties(context: RestrictedSyntaxRuleContext): Set<string> {
296
+ function getJsxAllowedProperties(
297
+ context: RestrictedSyntaxRuleContext,
298
+ ): Set<string> {
281
299
  // First try rule options (primary - passed via oxlint config)
282
300
  const ruleOptions = context.options?.[0];
283
301
  if (ruleOptions?.jsxAllowedProperties) {
@@ -297,7 +315,10 @@ function getJsxAllowedProperties(context: RestrictedSyntaxRuleContext): Set<stri
297
315
  /**
298
316
  * Check if a property key is in the allowlist for JSX values
299
317
  */
300
- function isJSXAllowedKey(prop: OxlintASTNode, jsxAllowedProperties: Set<string>): boolean {
318
+ function isJSXAllowedKey(
319
+ prop: OxlintASTNode,
320
+ jsxAllowedProperties: Set<string>,
321
+ ): boolean {
301
322
  const property = prop as Property;
302
323
  if (property.computed) {
303
324
  return false;
@@ -311,7 +332,10 @@ function isJSXAllowedKey(prop: OxlintASTNode, jsxAllowedProperties: Set<string>)
311
332
 
312
333
  if (key.type === "Identifier") {
313
334
  keyName = (key as Identifier).name;
314
- } else if (key.type === "Literal" && typeof (key as Literal).value === "string") {
335
+ } else if (
336
+ key.type === "Literal" &&
337
+ typeof (key as Literal).value === "string"
338
+ ) {
315
339
  keyName = (key as Literal).value as string;
316
340
  }
317
341
 
@@ -362,7 +386,9 @@ const restrictedSyntaxRule = {
362
386
  },
363
387
  ],
364
388
  },
365
- create(context: RestrictedSyntaxRuleContext): Record<string, (node: OxlintASTNode) => void> {
389
+ create(
390
+ context: RestrictedSyntaxRuleContext,
391
+ ): Record<string, (node: OxlintASTNode) => void> {
366
392
  // Check if file is in allowed path (applies to all rules)
367
393
  const isAllowed = isAllowedPath(context);
368
394