@elsikora/commitizen-plugin-commitlint-ai 1.2.0 → 2.0.0-dev.1

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 (536) hide show
  1. package/README.md +245 -59
  2. package/dist/cjs/application/constant/config-file-directory.constant.d.ts +5 -0
  3. package/dist/cjs/application/constant/config-file-directory.constant.d.ts.map +1 -0
  4. package/dist/cjs/application/constant/config-file-directory.constant.js +9 -0
  5. package/dist/cjs/application/constant/config-file-directory.constant.js.map +1 -0
  6. package/dist/cjs/application/constant/config-module-name.constant.d.ts +5 -0
  7. package/dist/cjs/application/constant/config-module-name.constant.d.ts.map +1 -0
  8. package/dist/cjs/application/constant/config-module-name.constant.js +9 -0
  9. package/dist/cjs/application/constant/config-module-name.constant.js.map +1 -0
  10. package/dist/cjs/application/constant/index.d.ts +3 -0
  11. package/dist/cjs/application/constant/index.d.ts.map +1 -0
  12. package/dist/cjs/application/index.d.ts +3 -0
  13. package/dist/cjs/application/index.d.ts.map +1 -0
  14. package/dist/cjs/application/interface/cli-interface-service-select-options.interface.d.ts +22 -0
  15. package/dist/cjs/application/interface/cli-interface-service-select-options.interface.d.ts.map +1 -0
  16. package/dist/cjs/application/interface/cli-interface-service.interface.d.ts +106 -0
  17. package/dist/cjs/application/interface/cli-interface-service.interface.d.ts.map +1 -0
  18. package/dist/cjs/application/interface/command-service.interface.d.ts +20 -0
  19. package/dist/cjs/application/interface/command-service.interface.d.ts.map +1 -0
  20. package/dist/cjs/application/interface/commit-repository.interface.d.ts +33 -0
  21. package/dist/cjs/application/interface/commit-repository.interface.d.ts.map +1 -0
  22. package/dist/cjs/application/interface/commit-validator.interface.d.ts +30 -0
  23. package/dist/cjs/application/interface/commit-validator.interface.d.ts.map +1 -0
  24. package/dist/cjs/application/interface/config-service.interface.d.ts +48 -0
  25. package/dist/cjs/application/interface/config-service.interface.d.ts.map +1 -0
  26. package/dist/cjs/application/interface/config.interface.d.ts +28 -0
  27. package/dist/cjs/application/interface/config.interface.d.ts.map +1 -0
  28. package/dist/cjs/application/interface/file-system-service.interface.d.ts +62 -0
  29. package/dist/cjs/application/interface/file-system-service.interface.d.ts.map +1 -0
  30. package/dist/cjs/application/interface/index.d.ts +10 -0
  31. package/dist/cjs/application/interface/index.d.ts.map +1 -0
  32. package/dist/cjs/application/interface/llm-service.interface.d.ts +44 -0
  33. package/dist/cjs/application/interface/llm-service.interface.d.ts.map +1 -0
  34. package/dist/cjs/application/use-case/configure-llm.use-case.d.ts +39 -0
  35. package/dist/cjs/application/use-case/configure-llm.use-case.d.ts.map +1 -0
  36. package/dist/cjs/application/use-case/configure-llm.use-case.js +367 -0
  37. package/dist/cjs/application/use-case/configure-llm.use-case.js.map +1 -0
  38. package/dist/cjs/application/use-case/generate-commit-message.use-case.d.ts +19 -0
  39. package/dist/cjs/application/use-case/generate-commit-message.use-case.d.ts.map +1 -0
  40. package/dist/cjs/application/use-case/generate-commit-message.use-case.js +49 -0
  41. package/dist/cjs/application/use-case/generate-commit-message.use-case.js.map +1 -0
  42. package/dist/cjs/application/use-case/index.d.ts +5 -0
  43. package/dist/cjs/application/use-case/index.d.ts.map +1 -0
  44. package/dist/cjs/application/use-case/manual-commit.use-case.d.ts +17 -0
  45. package/dist/cjs/application/use-case/manual-commit.use-case.d.ts.map +1 -0
  46. package/dist/cjs/application/use-case/manual-commit.use-case.js +79 -0
  47. package/dist/cjs/application/use-case/manual-commit.use-case.js.map +1 -0
  48. package/dist/cjs/application/use-case/validate-commit-message.use-case.d.ts +27 -0
  49. package/dist/cjs/application/use-case/validate-commit-message.use-case.d.ts.map +1 -0
  50. package/dist/cjs/application/use-case/validate-commit-message.use-case.js +75 -0
  51. package/dist/cjs/application/use-case/validate-commit-message.use-case.js.map +1 -0
  52. package/dist/cjs/domain/constant/index.d.ts +2 -0
  53. package/dist/cjs/domain/constant/index.d.ts.map +1 -0
  54. package/dist/cjs/domain/constant/numeric.constant.d.ts +26 -0
  55. package/dist/cjs/domain/constant/numeric.constant.d.ts.map +1 -0
  56. package/dist/cjs/domain/constant/numeric.constant.js +42 -0
  57. package/dist/cjs/domain/constant/numeric.constant.js.map +1 -0
  58. package/dist/cjs/domain/entity/commit-message.entity.d.ts +35 -0
  59. package/dist/cjs/domain/entity/commit-message.entity.d.ts.map +1 -0
  60. package/dist/cjs/domain/entity/commit-message.entity.js +56 -0
  61. package/dist/cjs/domain/entity/commit-message.entity.js.map +1 -0
  62. package/dist/cjs/domain/entity/index.d.ts +3 -0
  63. package/dist/cjs/domain/entity/index.d.ts.map +1 -0
  64. package/dist/cjs/domain/entity/llm-configuration.entity.d.ts +66 -0
  65. package/dist/cjs/domain/entity/llm-configuration.entity.d.ts.map +1 -0
  66. package/dist/cjs/domain/entity/llm-configuration.entity.js +96 -0
  67. package/dist/cjs/domain/entity/llm-configuration.entity.js.map +1 -0
  68. package/dist/cjs/domain/enum/anthropic-model.enum.d.ts +19 -0
  69. package/dist/cjs/domain/enum/anthropic-model.enum.d.ts.map +1 -0
  70. package/dist/cjs/domain/enum/anthropic-model.enum.js +26 -0
  71. package/dist/cjs/domain/enum/anthropic-model.enum.js.map +1 -0
  72. package/dist/cjs/domain/enum/aws-bedrock-model.enum.d.ts +34 -0
  73. package/dist/cjs/domain/enum/aws-bedrock-model.enum.d.ts.map +1 -0
  74. package/dist/cjs/domain/enum/aws-bedrock-model.enum.js +47 -0
  75. package/dist/cjs/domain/enum/aws-bedrock-model.enum.js.map +1 -0
  76. package/dist/cjs/domain/enum/azure-openai-model.enum.d.ts +18 -0
  77. package/dist/cjs/domain/enum/azure-openai-model.enum.d.ts.map +1 -0
  78. package/dist/cjs/domain/enum/azure-openai-model.enum.js +26 -0
  79. package/dist/cjs/domain/enum/azure-openai-model.enum.js.map +1 -0
  80. package/dist/cjs/domain/enum/commit-mode.enum.d.ts +8 -0
  81. package/dist/cjs/domain/enum/commit-mode.enum.d.ts.map +1 -0
  82. package/dist/cjs/domain/enum/commit-mode.enum.js +11 -0
  83. package/dist/cjs/domain/enum/commit-mode.enum.js.map +1 -0
  84. package/dist/cjs/domain/enum/google-model.enum.d.ts +17 -0
  85. package/dist/cjs/domain/enum/google-model.enum.d.ts.map +1 -0
  86. package/dist/cjs/domain/enum/google-model.enum.js +25 -0
  87. package/dist/cjs/domain/enum/google-model.enum.js.map +1 -0
  88. package/dist/cjs/domain/enum/index.d.ts +10 -0
  89. package/dist/cjs/domain/enum/index.d.ts.map +1 -0
  90. package/dist/cjs/domain/enum/llm-provider.enum.d.ts +12 -0
  91. package/dist/cjs/domain/enum/llm-provider.enum.d.ts.map +1 -0
  92. package/dist/cjs/domain/enum/llm-provider.enum.js +15 -0
  93. package/dist/cjs/domain/enum/llm-provider.enum.js.map +1 -0
  94. package/dist/cjs/domain/enum/log-level.enum.d.ts +10 -0
  95. package/dist/cjs/domain/enum/log-level.enum.d.ts.map +1 -0
  96. package/dist/cjs/domain/enum/log-level.enum.js +13 -0
  97. package/dist/cjs/domain/enum/log-level.enum.js.map +1 -0
  98. package/dist/cjs/domain/enum/ollama-model.enum.d.ts +25 -0
  99. package/dist/cjs/domain/enum/ollama-model.enum.d.ts.map +1 -0
  100. package/dist/cjs/domain/enum/ollama-model.enum.js +30 -0
  101. package/dist/cjs/domain/enum/ollama-model.enum.js.map +1 -0
  102. package/dist/cjs/domain/enum/openai-model.enum.d.ts +26 -0
  103. package/dist/cjs/domain/enum/openai-model.enum.d.ts.map +1 -0
  104. package/dist/cjs/domain/enum/openai-model.enum.js +35 -0
  105. package/dist/cjs/domain/enum/openai-model.enum.js.map +1 -0
  106. package/dist/cjs/domain/index.d.ts +4 -0
  107. package/dist/cjs/domain/index.d.ts.map +1 -0
  108. package/dist/cjs/domain/value-object/api-key.value-object.d.ts +27 -0
  109. package/dist/cjs/domain/value-object/api-key.value-object.d.ts.map +1 -0
  110. package/dist/cjs/domain/value-object/api-key.value-object.js +49 -0
  111. package/dist/cjs/domain/value-object/api-key.value-object.js.map +1 -0
  112. package/dist/cjs/domain/value-object/commit-body.value-object.d.ts +33 -0
  113. package/dist/cjs/domain/value-object/commit-body.value-object.d.ts.map +1 -0
  114. package/dist/cjs/domain/value-object/commit-body.value-object.js +59 -0
  115. package/dist/cjs/domain/value-object/commit-body.value-object.js.map +1 -0
  116. package/dist/cjs/domain/value-object/commit-header.value-object.d.ts +30 -0
  117. package/dist/cjs/domain/value-object/commit-header.value-object.d.ts.map +1 -0
  118. package/dist/cjs/domain/value-object/commit-header.value-object.js +57 -0
  119. package/dist/cjs/domain/value-object/commit-header.value-object.js.map +1 -0
  120. package/dist/cjs/domain/value-object/index.d.ts +4 -0
  121. package/dist/cjs/domain/value-object/index.d.ts.map +1 -0
  122. package/dist/cjs/index.d.ts +4 -13
  123. package/dist/cjs/index.d.ts.map +1 -1
  124. package/dist/cjs/index.js +73 -85
  125. package/dist/cjs/index.js.map +1 -1
  126. package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.d.ts +39 -0
  127. package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.d.ts.map +1 -0
  128. package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.js +207 -0
  129. package/dist/cjs/infrastructure/commit-validator/commitlint-validator.service.js.map +1 -0
  130. package/dist/cjs/infrastructure/commit-validator/index.d.ts +2 -0
  131. package/dist/cjs/infrastructure/commit-validator/index.d.ts.map +1 -0
  132. package/dist/cjs/infrastructure/di/container.d.ts +18 -0
  133. package/dist/cjs/infrastructure/di/container.d.ts.map +1 -0
  134. package/dist/cjs/infrastructure/di/container.js +76 -0
  135. package/dist/cjs/infrastructure/di/container.js.map +1 -0
  136. package/dist/cjs/infrastructure/di/index.d.ts +2 -0
  137. package/dist/cjs/infrastructure/di/index.d.ts.map +1 -0
  138. package/dist/cjs/infrastructure/git/git-commit.repository.d.ts +37 -0
  139. package/dist/cjs/infrastructure/git/git-commit.repository.d.ts.map +1 -0
  140. package/dist/cjs/infrastructure/git/git-commit.repository.js +78 -0
  141. package/dist/cjs/infrastructure/git/git-commit.repository.js.map +1 -0
  142. package/dist/cjs/infrastructure/git/index.d.ts +2 -0
  143. package/dist/cjs/infrastructure/git/index.d.ts.map +1 -0
  144. package/dist/cjs/infrastructure/index.d.ts +5 -0
  145. package/dist/cjs/infrastructure/index.d.ts.map +1 -0
  146. package/dist/cjs/infrastructure/llm/anthropic-llm.service.d.ts +40 -0
  147. package/dist/cjs/infrastructure/llm/anthropic-llm.service.d.ts.map +1 -0
  148. package/dist/cjs/infrastructure/llm/anthropic-llm.service.js +310 -0
  149. package/dist/cjs/infrastructure/llm/anthropic-llm.service.js.map +1 -0
  150. package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.d.ts +61 -0
  151. package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.d.ts.map +1 -0
  152. package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.js +505 -0
  153. package/dist/cjs/infrastructure/llm/aws-bedrock-llm.service.js.map +1 -0
  154. package/dist/cjs/infrastructure/llm/azure-openai-llm.service.d.ts +46 -0
  155. package/dist/cjs/infrastructure/llm/azure-openai-llm.service.d.ts.map +1 -0
  156. package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js +338 -0
  157. package/dist/cjs/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
  158. package/dist/cjs/infrastructure/llm/google-llm.service.d.ts +46 -0
  159. package/dist/cjs/infrastructure/llm/google-llm.service.d.ts.map +1 -0
  160. package/dist/cjs/infrastructure/llm/google-llm.service.js +322 -0
  161. package/dist/cjs/infrastructure/llm/google-llm.service.js.map +1 -0
  162. package/dist/cjs/infrastructure/llm/index.d.ts +7 -0
  163. package/dist/cjs/infrastructure/llm/index.d.ts.map +1 -0
  164. package/dist/cjs/infrastructure/llm/ollama-llm.service.d.ts +46 -0
  165. package/dist/cjs/infrastructure/llm/ollama-llm.service.d.ts.map +1 -0
  166. package/dist/cjs/infrastructure/llm/ollama-llm.service.js +369 -0
  167. package/dist/cjs/infrastructure/llm/ollama-llm.service.js.map +1 -0
  168. package/dist/cjs/infrastructure/llm/openai-llm.service.d.ts +46 -0
  169. package/dist/cjs/infrastructure/llm/openai-llm.service.d.ts.map +1 -0
  170. package/dist/cjs/infrastructure/llm/openai-llm.service.js +326 -0
  171. package/dist/cjs/infrastructure/llm/openai-llm.service.js.map +1 -0
  172. package/dist/cjs/infrastructure/service/cosmic-config.service.d.ts +65 -0
  173. package/dist/cjs/infrastructure/service/cosmic-config.service.d.ts.map +1 -0
  174. package/dist/cjs/infrastructure/service/cosmic-config.service.js +174 -0
  175. package/dist/cjs/infrastructure/service/cosmic-config.service.js.map +1 -0
  176. package/dist/cjs/infrastructure/service/index.d.ts +5 -0
  177. package/dist/cjs/infrastructure/service/index.d.ts.map +1 -0
  178. package/dist/cjs/infrastructure/service/node-command.service.d.ts +44 -0
  179. package/dist/cjs/infrastructure/service/node-command.service.d.ts.map +1 -0
  180. package/dist/cjs/infrastructure/service/node-command.service.js +152 -0
  181. package/dist/cjs/infrastructure/service/node-command.service.js.map +1 -0
  182. package/dist/cjs/infrastructure/service/node-file-system.service.d.ts +63 -0
  183. package/dist/cjs/infrastructure/service/node-file-system.service.d.ts.map +1 -0
  184. package/dist/cjs/infrastructure/service/node-file-system.service.js +102 -0
  185. package/dist/cjs/infrastructure/service/node-file-system.service.js.map +1 -0
  186. package/dist/cjs/infrastructure/service/prompts-cli-interface.service.d.ts +115 -0
  187. package/dist/cjs/infrastructure/service/prompts-cli-interface.service.d.ts.map +1 -0
  188. package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js +315 -0
  189. package/dist/cjs/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
  190. package/dist/cjs/presentation/commitizen.adapter.d.ts +24 -0
  191. package/dist/cjs/presentation/commitizen.adapter.d.ts.map +1 -0
  192. package/dist/cjs/presentation/commitizen.adapter.js +292 -0
  193. package/dist/cjs/presentation/commitizen.adapter.js.map +1 -0
  194. package/dist/cjs/presentation/index.d.ts +2 -0
  195. package/dist/cjs/presentation/index.d.ts.map +1 -0
  196. package/dist/esm/application/constant/config-file-directory.constant.d.ts +5 -0
  197. package/dist/esm/application/constant/config-file-directory.constant.d.ts.map +1 -0
  198. package/dist/esm/application/constant/config-file-directory.constant.js +7 -0
  199. package/dist/esm/application/constant/config-file-directory.constant.js.map +1 -0
  200. package/dist/esm/application/constant/config-module-name.constant.d.ts +5 -0
  201. package/dist/esm/application/constant/config-module-name.constant.d.ts.map +1 -0
  202. package/dist/esm/application/constant/config-module-name.constant.js +7 -0
  203. package/dist/esm/application/constant/config-module-name.constant.js.map +1 -0
  204. package/dist/esm/application/constant/index.d.ts +3 -0
  205. package/dist/esm/application/constant/index.d.ts.map +1 -0
  206. package/dist/esm/application/index.d.ts +3 -0
  207. package/dist/esm/application/index.d.ts.map +1 -0
  208. package/dist/esm/application/interface/cli-interface-service-select-options.interface.d.ts +22 -0
  209. package/dist/esm/application/interface/cli-interface-service-select-options.interface.d.ts.map +1 -0
  210. package/dist/esm/application/interface/cli-interface-service.interface.d.ts +106 -0
  211. package/dist/esm/application/interface/cli-interface-service.interface.d.ts.map +1 -0
  212. package/dist/esm/application/interface/command-service.interface.d.ts +20 -0
  213. package/dist/esm/application/interface/command-service.interface.d.ts.map +1 -0
  214. package/dist/esm/application/interface/commit-repository.interface.d.ts +33 -0
  215. package/dist/esm/application/interface/commit-repository.interface.d.ts.map +1 -0
  216. package/dist/esm/application/interface/commit-validator.interface.d.ts +30 -0
  217. package/dist/esm/application/interface/commit-validator.interface.d.ts.map +1 -0
  218. package/dist/esm/application/interface/config-service.interface.d.ts +48 -0
  219. package/dist/esm/application/interface/config-service.interface.d.ts.map +1 -0
  220. package/dist/esm/application/interface/config.interface.d.ts +28 -0
  221. package/dist/esm/application/interface/config.interface.d.ts.map +1 -0
  222. package/dist/esm/application/interface/file-system-service.interface.d.ts +62 -0
  223. package/dist/esm/application/interface/file-system-service.interface.d.ts.map +1 -0
  224. package/dist/esm/application/interface/index.d.ts +10 -0
  225. package/dist/esm/application/interface/index.d.ts.map +1 -0
  226. package/dist/esm/application/interface/llm-service.interface.d.ts +44 -0
  227. package/dist/esm/application/interface/llm-service.interface.d.ts.map +1 -0
  228. package/dist/esm/application/use-case/configure-llm.use-case.d.ts +39 -0
  229. package/dist/esm/application/use-case/configure-llm.use-case.d.ts.map +1 -0
  230. package/dist/esm/application/use-case/configure-llm.use-case.js +365 -0
  231. package/dist/esm/application/use-case/configure-llm.use-case.js.map +1 -0
  232. package/dist/esm/application/use-case/generate-commit-message.use-case.d.ts +19 -0
  233. package/dist/esm/application/use-case/generate-commit-message.use-case.d.ts.map +1 -0
  234. package/dist/esm/application/use-case/generate-commit-message.use-case.js +47 -0
  235. package/dist/esm/application/use-case/generate-commit-message.use-case.js.map +1 -0
  236. package/dist/esm/application/use-case/index.d.ts +5 -0
  237. package/dist/esm/application/use-case/index.d.ts.map +1 -0
  238. package/dist/esm/application/use-case/manual-commit.use-case.d.ts +17 -0
  239. package/dist/esm/application/use-case/manual-commit.use-case.d.ts.map +1 -0
  240. package/dist/esm/application/use-case/manual-commit.use-case.js +77 -0
  241. package/dist/esm/application/use-case/manual-commit.use-case.js.map +1 -0
  242. package/dist/esm/application/use-case/validate-commit-message.use-case.d.ts +27 -0
  243. package/dist/esm/application/use-case/validate-commit-message.use-case.d.ts.map +1 -0
  244. package/dist/esm/application/use-case/validate-commit-message.use-case.js +73 -0
  245. package/dist/esm/application/use-case/validate-commit-message.use-case.js.map +1 -0
  246. package/dist/esm/domain/constant/index.d.ts +2 -0
  247. package/dist/esm/domain/constant/index.d.ts.map +1 -0
  248. package/dist/esm/domain/constant/numeric.constant.d.ts +26 -0
  249. package/dist/esm/domain/constant/numeric.constant.d.ts.map +1 -0
  250. package/dist/esm/domain/constant/numeric.constant.js +26 -0
  251. package/dist/esm/domain/constant/numeric.constant.js.map +1 -0
  252. package/dist/esm/domain/entity/commit-message.entity.d.ts +35 -0
  253. package/dist/esm/domain/entity/commit-message.entity.d.ts.map +1 -0
  254. package/dist/esm/domain/entity/commit-message.entity.js +54 -0
  255. package/dist/esm/domain/entity/commit-message.entity.js.map +1 -0
  256. package/dist/esm/domain/entity/index.d.ts +3 -0
  257. package/dist/esm/domain/entity/index.d.ts.map +1 -0
  258. package/dist/esm/domain/entity/llm-configuration.entity.d.ts +66 -0
  259. package/dist/esm/domain/entity/llm-configuration.entity.d.ts.map +1 -0
  260. package/dist/esm/domain/entity/llm-configuration.entity.js +94 -0
  261. package/dist/esm/domain/entity/llm-configuration.entity.js.map +1 -0
  262. package/dist/esm/domain/enum/anthropic-model.enum.d.ts +19 -0
  263. package/dist/esm/domain/enum/anthropic-model.enum.d.ts.map +1 -0
  264. package/dist/esm/domain/enum/anthropic-model.enum.js +26 -0
  265. package/dist/esm/domain/enum/anthropic-model.enum.js.map +1 -0
  266. package/dist/esm/domain/enum/aws-bedrock-model.enum.d.ts +34 -0
  267. package/dist/esm/domain/enum/aws-bedrock-model.enum.d.ts.map +1 -0
  268. package/dist/esm/domain/enum/aws-bedrock-model.enum.js +47 -0
  269. package/dist/esm/domain/enum/aws-bedrock-model.enum.js.map +1 -0
  270. package/dist/esm/domain/enum/azure-openai-model.enum.d.ts +18 -0
  271. package/dist/esm/domain/enum/azure-openai-model.enum.d.ts.map +1 -0
  272. package/dist/esm/domain/enum/azure-openai-model.enum.js +26 -0
  273. package/dist/esm/domain/enum/azure-openai-model.enum.js.map +1 -0
  274. package/dist/esm/domain/enum/commit-mode.enum.d.ts +8 -0
  275. package/dist/esm/domain/enum/commit-mode.enum.d.ts.map +1 -0
  276. package/dist/esm/domain/enum/commit-mode.enum.js +11 -0
  277. package/dist/esm/domain/enum/commit-mode.enum.js.map +1 -0
  278. package/dist/esm/domain/enum/google-model.enum.d.ts +17 -0
  279. package/dist/esm/domain/enum/google-model.enum.d.ts.map +1 -0
  280. package/dist/esm/domain/enum/google-model.enum.js +25 -0
  281. package/dist/esm/domain/enum/google-model.enum.js.map +1 -0
  282. package/dist/esm/domain/enum/index.d.ts +10 -0
  283. package/dist/esm/domain/enum/index.d.ts.map +1 -0
  284. package/dist/esm/domain/enum/llm-provider.enum.d.ts +12 -0
  285. package/dist/esm/domain/enum/llm-provider.enum.d.ts.map +1 -0
  286. package/dist/esm/domain/enum/llm-provider.enum.js +15 -0
  287. package/dist/esm/domain/enum/llm-provider.enum.js.map +1 -0
  288. package/dist/esm/domain/enum/log-level.enum.d.ts +10 -0
  289. package/dist/esm/domain/enum/log-level.enum.d.ts.map +1 -0
  290. package/dist/esm/domain/enum/log-level.enum.js +13 -0
  291. package/dist/esm/domain/enum/log-level.enum.js.map +1 -0
  292. package/dist/esm/domain/enum/ollama-model.enum.d.ts +25 -0
  293. package/dist/esm/domain/enum/ollama-model.enum.d.ts.map +1 -0
  294. package/dist/esm/domain/enum/ollama-model.enum.js +30 -0
  295. package/dist/esm/domain/enum/ollama-model.enum.js.map +1 -0
  296. package/dist/esm/domain/enum/openai-model.enum.d.ts +26 -0
  297. package/dist/esm/domain/enum/openai-model.enum.d.ts.map +1 -0
  298. package/dist/esm/domain/enum/openai-model.enum.js +35 -0
  299. package/dist/esm/domain/enum/openai-model.enum.js.map +1 -0
  300. package/dist/esm/domain/index.d.ts +4 -0
  301. package/dist/esm/domain/index.d.ts.map +1 -0
  302. package/dist/esm/domain/value-object/api-key.value-object.d.ts +27 -0
  303. package/dist/esm/domain/value-object/api-key.value-object.d.ts.map +1 -0
  304. package/dist/esm/domain/value-object/api-key.value-object.js +47 -0
  305. package/dist/esm/domain/value-object/api-key.value-object.js.map +1 -0
  306. package/dist/esm/domain/value-object/commit-body.value-object.d.ts +33 -0
  307. package/dist/esm/domain/value-object/commit-body.value-object.d.ts.map +1 -0
  308. package/dist/esm/domain/value-object/commit-body.value-object.js +57 -0
  309. package/dist/esm/domain/value-object/commit-body.value-object.js.map +1 -0
  310. package/dist/esm/domain/value-object/commit-header.value-object.d.ts +30 -0
  311. package/dist/esm/domain/value-object/commit-header.value-object.d.ts.map +1 -0
  312. package/dist/esm/domain/value-object/commit-header.value-object.js +55 -0
  313. package/dist/esm/domain/value-object/commit-header.value-object.js.map +1 -0
  314. package/dist/esm/domain/value-object/index.d.ts +4 -0
  315. package/dist/esm/domain/value-object/index.d.ts.map +1 -0
  316. package/dist/esm/index.d.ts +4 -13
  317. package/dist/esm/index.d.ts.map +1 -1
  318. package/dist/esm/index.js +29 -84
  319. package/dist/esm/index.js.map +1 -1
  320. package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.d.ts +39 -0
  321. package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.d.ts.map +1 -0
  322. package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.js +205 -0
  323. package/dist/esm/infrastructure/commit-validator/commitlint-validator.service.js.map +1 -0
  324. package/dist/esm/infrastructure/commit-validator/index.d.ts +2 -0
  325. package/dist/esm/infrastructure/commit-validator/index.d.ts.map +1 -0
  326. package/dist/esm/infrastructure/di/container.d.ts +18 -0
  327. package/dist/esm/infrastructure/di/container.d.ts.map +1 -0
  328. package/dist/esm/infrastructure/di/container.js +63 -0
  329. package/dist/esm/infrastructure/di/container.js.map +1 -0
  330. package/dist/esm/infrastructure/di/index.d.ts +2 -0
  331. package/dist/esm/infrastructure/di/index.d.ts.map +1 -0
  332. package/dist/esm/infrastructure/git/git-commit.repository.d.ts +37 -0
  333. package/dist/esm/infrastructure/git/git-commit.repository.d.ts.map +1 -0
  334. package/dist/esm/infrastructure/git/git-commit.repository.js +76 -0
  335. package/dist/esm/infrastructure/git/git-commit.repository.js.map +1 -0
  336. package/dist/esm/infrastructure/git/index.d.ts +2 -0
  337. package/dist/esm/infrastructure/git/index.d.ts.map +1 -0
  338. package/dist/esm/infrastructure/index.d.ts +5 -0
  339. package/dist/esm/infrastructure/index.d.ts.map +1 -0
  340. package/dist/esm/infrastructure/llm/anthropic-llm.service.d.ts +40 -0
  341. package/dist/esm/infrastructure/llm/anthropic-llm.service.d.ts.map +1 -0
  342. package/dist/esm/infrastructure/llm/anthropic-llm.service.js +308 -0
  343. package/dist/esm/infrastructure/llm/anthropic-llm.service.js.map +1 -0
  344. package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.d.ts +61 -0
  345. package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.d.ts.map +1 -0
  346. package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.js +503 -0
  347. package/dist/esm/infrastructure/llm/aws-bedrock-llm.service.js.map +1 -0
  348. package/dist/esm/infrastructure/llm/azure-openai-llm.service.d.ts +46 -0
  349. package/dist/esm/infrastructure/llm/azure-openai-llm.service.d.ts.map +1 -0
  350. package/dist/esm/infrastructure/llm/azure-openai-llm.service.js +336 -0
  351. package/dist/esm/infrastructure/llm/azure-openai-llm.service.js.map +1 -0
  352. package/dist/esm/infrastructure/llm/google-llm.service.d.ts +46 -0
  353. package/dist/esm/infrastructure/llm/google-llm.service.d.ts.map +1 -0
  354. package/dist/esm/infrastructure/llm/google-llm.service.js +320 -0
  355. package/dist/esm/infrastructure/llm/google-llm.service.js.map +1 -0
  356. package/dist/esm/infrastructure/llm/index.d.ts +7 -0
  357. package/dist/esm/infrastructure/llm/index.d.ts.map +1 -0
  358. package/dist/esm/infrastructure/llm/ollama-llm.service.d.ts +46 -0
  359. package/dist/esm/infrastructure/llm/ollama-llm.service.d.ts.map +1 -0
  360. package/dist/esm/infrastructure/llm/ollama-llm.service.js +367 -0
  361. package/dist/esm/infrastructure/llm/ollama-llm.service.js.map +1 -0
  362. package/dist/esm/infrastructure/llm/openai-llm.service.d.ts +46 -0
  363. package/dist/esm/infrastructure/llm/openai-llm.service.d.ts.map +1 -0
  364. package/dist/esm/infrastructure/llm/openai-llm.service.js +324 -0
  365. package/dist/esm/infrastructure/llm/openai-llm.service.js.map +1 -0
  366. package/dist/esm/infrastructure/service/cosmic-config.service.d.ts +65 -0
  367. package/dist/esm/infrastructure/service/cosmic-config.service.d.ts.map +1 -0
  368. package/dist/esm/infrastructure/service/cosmic-config.service.js +172 -0
  369. package/dist/esm/infrastructure/service/cosmic-config.service.js.map +1 -0
  370. package/dist/esm/infrastructure/service/index.d.ts +5 -0
  371. package/dist/esm/infrastructure/service/index.d.ts.map +1 -0
  372. package/dist/esm/infrastructure/service/node-command.service.d.ts +44 -0
  373. package/dist/esm/infrastructure/service/node-command.service.d.ts.map +1 -0
  374. package/dist/esm/infrastructure/service/node-command.service.js +150 -0
  375. package/dist/esm/infrastructure/service/node-command.service.js.map +1 -0
  376. package/dist/esm/infrastructure/service/node-file-system.service.d.ts +63 -0
  377. package/dist/esm/infrastructure/service/node-file-system.service.d.ts.map +1 -0
  378. package/dist/esm/infrastructure/service/node-file-system.service.js +100 -0
  379. package/dist/esm/infrastructure/service/node-file-system.service.js.map +1 -0
  380. package/dist/esm/infrastructure/service/prompts-cli-interface.service.d.ts +115 -0
  381. package/dist/esm/infrastructure/service/prompts-cli-interface.service.d.ts.map +1 -0
  382. package/dist/esm/infrastructure/service/prompts-cli-interface.service.js +313 -0
  383. package/dist/esm/infrastructure/service/prompts-cli-interface.service.js.map +1 -0
  384. package/dist/esm/presentation/commitizen.adapter.d.ts +24 -0
  385. package/dist/esm/presentation/commitizen.adapter.d.ts.map +1 -0
  386. package/dist/esm/presentation/commitizen.adapter.js +290 -0
  387. package/dist/esm/presentation/commitizen.adapter.js.map +1 -0
  388. package/dist/esm/presentation/index.d.ts +2 -0
  389. package/dist/esm/presentation/index.d.ts.map +1 -0
  390. package/dist/tsconfig.tsbuildinfo +1 -1
  391. package/index.cjs +1 -2
  392. package/package.json +33 -24
  393. package/dist/cjs/ManualProcess.d.ts +0 -6
  394. package/dist/cjs/ManualProcess.d.ts.map +0 -1
  395. package/dist/cjs/ManualProcess.js +0 -111
  396. package/dist/cjs/ManualProcess.js.map +0 -1
  397. package/dist/cjs/Process.d.ts +0 -6
  398. package/dist/cjs/Process.d.ts.map +0 -1
  399. package/dist/cjs/Process.js +0 -176
  400. package/dist/cjs/Process.js.map +0 -1
  401. package/dist/cjs/Question.d.ts +0 -46
  402. package/dist/cjs/Question.d.ts.map +0 -1
  403. package/dist/cjs/SectionBody.d.ts +0 -4
  404. package/dist/cjs/SectionBody.d.ts.map +0 -1
  405. package/dist/cjs/SectionFooter.d.ts +0 -13
  406. package/dist/cjs/SectionFooter.d.ts.map +0 -1
  407. package/dist/cjs/SectionHeader.d.ts +0 -15
  408. package/dist/cjs/SectionHeader.d.ts.map +0 -1
  409. package/dist/cjs/services/commitConfirmation.d.ts +0 -3
  410. package/dist/cjs/services/commitConfirmation.d.ts.map +0 -1
  411. package/dist/cjs/services/commitConfirmation.js +0 -122
  412. package/dist/cjs/services/commitConfirmation.js.map +0 -1
  413. package/dist/cjs/services/commitlintConfig.d.ts +0 -4
  414. package/dist/cjs/services/commitlintConfig.d.ts.map +0 -1
  415. package/dist/cjs/services/commitlintConfig.js +0 -198
  416. package/dist/cjs/services/commitlintConfig.js.map +0 -1
  417. package/dist/cjs/services/commitlintValidator.d.ts +0 -26
  418. package/dist/cjs/services/commitlintValidator.d.ts.map +0 -1
  419. package/dist/cjs/services/commitlintValidator.js +0 -146
  420. package/dist/cjs/services/commitlintValidator.js.map +0 -1
  421. package/dist/cjs/services/getRuleQuestionConfig.d.ts +0 -4
  422. package/dist/cjs/services/getRuleQuestionConfig.d.ts.map +0 -1
  423. package/dist/cjs/services/llm/anthropic.d.ts +0 -3
  424. package/dist/cjs/services/llm/anthropic.d.ts.map +0 -1
  425. package/dist/cjs/services/llm/anthropic.js +0 -118
  426. package/dist/cjs/services/llm/anthropic.js.map +0 -1
  427. package/dist/cjs/services/llm/config.d.ts +0 -5
  428. package/dist/cjs/services/llm/config.d.ts.map +0 -1
  429. package/dist/cjs/services/llm/config.js +0 -181
  430. package/dist/cjs/services/llm/config.js.map +0 -1
  431. package/dist/cjs/services/llm/index.d.ts +0 -6
  432. package/dist/cjs/services/llm/index.d.ts.map +0 -1
  433. package/dist/cjs/services/llm/index.js +0 -399
  434. package/dist/cjs/services/llm/index.js.map +0 -1
  435. package/dist/cjs/services/llm/models.d.ts +0 -34
  436. package/dist/cjs/services/llm/models.d.ts.map +0 -1
  437. package/dist/cjs/services/llm/models.js +0 -65
  438. package/dist/cjs/services/llm/models.js.map +0 -1
  439. package/dist/cjs/services/llm/openai.d.ts +0 -3
  440. package/dist/cjs/services/llm/openai.d.ts.map +0 -1
  441. package/dist/cjs/services/llm/openai.js +0 -111
  442. package/dist/cjs/services/llm/openai.js.map +0 -1
  443. package/dist/cjs/services/llm/types.d.ts +0 -71
  444. package/dist/cjs/services/llm/types.d.ts.map +0 -1
  445. package/dist/cjs/store/defaultPromptConfigs.d.ts +0 -33
  446. package/dist/cjs/store/defaultPromptConfigs.d.ts.map +0 -1
  447. package/dist/cjs/store/defaultPromptConfigs.js +0 -39
  448. package/dist/cjs/store/defaultPromptConfigs.js.map +0 -1
  449. package/dist/cjs/store/prompts.d.ts +0 -6
  450. package/dist/cjs/store/prompts.d.ts.map +0 -1
  451. package/dist/cjs/store/prompts.js +0 -40
  452. package/dist/cjs/store/prompts.js.map +0 -1
  453. package/dist/cjs/store/rules.d.ts +0 -7
  454. package/dist/cjs/store/rules.d.ts.map +0 -1
  455. package/dist/cjs/types.d.ts +0 -3
  456. package/dist/cjs/types.d.ts.map +0 -1
  457. package/dist/cjs/utils/case-function.d.ts +0 -9
  458. package/dist/cjs/utils/case-function.d.ts.map +0 -1
  459. package/dist/cjs/utils/full-stop-function.d.ts +0 -9
  460. package/dist/cjs/utils/full-stop-function.d.ts.map +0 -1
  461. package/dist/cjs/utils/leading-blank-function.d.ts +0 -8
  462. package/dist/cjs/utils/leading-blank-function.d.ts.map +0 -1
  463. package/dist/cjs/utils/rules.d.ts +0 -26
  464. package/dist/cjs/utils/rules.d.ts.map +0 -1
  465. package/dist/esm/ManualProcess.d.ts +0 -6
  466. package/dist/esm/ManualProcess.d.ts.map +0 -1
  467. package/dist/esm/ManualProcess.js +0 -107
  468. package/dist/esm/ManualProcess.js.map +0 -1
  469. package/dist/esm/Process.d.ts +0 -6
  470. package/dist/esm/Process.d.ts.map +0 -1
  471. package/dist/esm/Process.js +0 -172
  472. package/dist/esm/Process.js.map +0 -1
  473. package/dist/esm/Question.d.ts +0 -46
  474. package/dist/esm/Question.d.ts.map +0 -1
  475. package/dist/esm/SectionBody.d.ts +0 -4
  476. package/dist/esm/SectionBody.d.ts.map +0 -1
  477. package/dist/esm/SectionFooter.d.ts +0 -13
  478. package/dist/esm/SectionFooter.d.ts.map +0 -1
  479. package/dist/esm/SectionHeader.d.ts +0 -15
  480. package/dist/esm/SectionHeader.d.ts.map +0 -1
  481. package/dist/esm/services/commitConfirmation.d.ts +0 -3
  482. package/dist/esm/services/commitConfirmation.d.ts.map +0 -1
  483. package/dist/esm/services/commitConfirmation.js +0 -120
  484. package/dist/esm/services/commitConfirmation.js.map +0 -1
  485. package/dist/esm/services/commitlintConfig.d.ts +0 -4
  486. package/dist/esm/services/commitlintConfig.d.ts.map +0 -1
  487. package/dist/esm/services/commitlintConfig.js +0 -196
  488. package/dist/esm/services/commitlintConfig.js.map +0 -1
  489. package/dist/esm/services/commitlintValidator.d.ts +0 -26
  490. package/dist/esm/services/commitlintValidator.d.ts.map +0 -1
  491. package/dist/esm/services/commitlintValidator.js +0 -142
  492. package/dist/esm/services/commitlintValidator.js.map +0 -1
  493. package/dist/esm/services/getRuleQuestionConfig.d.ts +0 -4
  494. package/dist/esm/services/getRuleQuestionConfig.d.ts.map +0 -1
  495. package/dist/esm/services/llm/anthropic.d.ts +0 -3
  496. package/dist/esm/services/llm/anthropic.d.ts.map +0 -1
  497. package/dist/esm/services/llm/anthropic.js +0 -116
  498. package/dist/esm/services/llm/anthropic.js.map +0 -1
  499. package/dist/esm/services/llm/config.d.ts +0 -5
  500. package/dist/esm/services/llm/config.d.ts.map +0 -1
  501. package/dist/esm/services/llm/config.js +0 -178
  502. package/dist/esm/services/llm/config.js.map +0 -1
  503. package/dist/esm/services/llm/index.d.ts +0 -6
  504. package/dist/esm/services/llm/index.d.ts.map +0 -1
  505. package/dist/esm/services/llm/index.js +0 -394
  506. package/dist/esm/services/llm/index.js.map +0 -1
  507. package/dist/esm/services/llm/models.d.ts +0 -34
  508. package/dist/esm/services/llm/models.d.ts.map +0 -1
  509. package/dist/esm/services/llm/models.js +0 -60
  510. package/dist/esm/services/llm/models.js.map +0 -1
  511. package/dist/esm/services/llm/openai.d.ts +0 -3
  512. package/dist/esm/services/llm/openai.d.ts.map +0 -1
  513. package/dist/esm/services/llm/openai.js +0 -109
  514. package/dist/esm/services/llm/openai.js.map +0 -1
  515. package/dist/esm/services/llm/types.d.ts +0 -71
  516. package/dist/esm/services/llm/types.d.ts.map +0 -1
  517. package/dist/esm/store/defaultPromptConfigs.d.ts +0 -33
  518. package/dist/esm/store/defaultPromptConfigs.d.ts.map +0 -1
  519. package/dist/esm/store/defaultPromptConfigs.js +0 -35
  520. package/dist/esm/store/defaultPromptConfigs.js.map +0 -1
  521. package/dist/esm/store/prompts.d.ts +0 -6
  522. package/dist/esm/store/prompts.d.ts.map +0 -1
  523. package/dist/esm/store/prompts.js +0 -38
  524. package/dist/esm/store/prompts.js.map +0 -1
  525. package/dist/esm/store/rules.d.ts +0 -7
  526. package/dist/esm/store/rules.d.ts.map +0 -1
  527. package/dist/esm/types.d.ts +0 -3
  528. package/dist/esm/types.d.ts.map +0 -1
  529. package/dist/esm/utils/case-function.d.ts +0 -9
  530. package/dist/esm/utils/case-function.d.ts.map +0 -1
  531. package/dist/esm/utils/full-stop-function.d.ts +0 -9
  532. package/dist/esm/utils/full-stop-function.d.ts.map +0 -1
  533. package/dist/esm/utils/leading-blank-function.d.ts +0 -8
  534. package/dist/esm/utils/leading-blank-function.d.ts.map +0 -1
  535. package/dist/esm/utils/rules.d.ts +0 -26
  536. package/dist/esm/utils/rules.d.ts.map +0 -1
package/dist/esm/index.js CHANGED
@@ -1,88 +1,33 @@
1
- import { existsSync } from 'node:fs';
2
- import { join } from 'node:path';
3
- import load from '@commitlint/load';
4
- import chalk from 'chalk';
5
- import { config } from 'dotenv';
6
- import inquirer from 'inquirer';
7
- import Process from './Process.js';
8
- import './services/llm/index.js';
9
- import { getLLMConfig, setLLMConfig } from './services/llm/config.js';
1
+ import { createAppContainer } from './infrastructure/di/container.js';
2
+ import { CommitizenAdapter } from './presentation/commitizen.adapter.js';
3
+ import 'dotenv/config';
4
+ export { ConfigureLLMUseCase } from './application/use-case/configure-llm.use-case.js';
5
+ export { GenerateCommitMessageUseCase } from './application/use-case/generate-commit-message.use-case.js';
6
+ export { ManualCommitUseCase } from './application/use-case/manual-commit.use-case.js';
7
+ export { ValidateCommitMessageUseCase } from './application/use-case/validate-commit-message.use-case.js';
8
+ export { CommitMessage } from './domain/entity/commit-message.entity.js';
9
+ export { LLMConfiguration } from './domain/entity/llm-configuration.entity.js';
10
+ export { EAnthropicModel } from './domain/enum/anthropic-model.enum.js';
11
+ export { EAWSBedrockModel } from './domain/enum/aws-bedrock-model.enum.js';
12
+ export { EAzureOpenAIModel } from './domain/enum/azure-openai-model.enum.js';
13
+ export { ECommitMode } from './domain/enum/commit-mode.enum.js';
14
+ export { EGoogleModel } from './domain/enum/google-model.enum.js';
15
+ export { ELLMProvider } from './domain/enum/llm-provider.enum.js';
16
+ export { ELogLevel } from './domain/enum/log-level.enum.js';
17
+ export { EOllamaModel } from './domain/enum/ollama-model.enum.js';
18
+ export { EOpenAIModel } from './domain/enum/openai-model.enum.js';
19
+ export { ApiKey } from './domain/value-object/api-key.value-object.js';
20
+ export { CommitBody } from './domain/value-object/commit-body.value-object.js';
21
+ export { CommitHeader } from './domain/value-object/commit-header.value-object.js';
10
22
 
11
- // Load environment variables from .env file
12
- try {
13
- config();
14
- }
15
- catch {
16
- // Silently continue if .env file is not found or cannot be loaded
17
- }
18
- // Check what commit mode to use based on config, environment variable, and fallback file
19
- const getCommitMode = () => {
20
- try {
21
- // First check environment variable (highest priority)
22
- // Next check for manual flag file
23
- if (existsSync(join("./.elsikora", "manual"))) {
24
- return "manual";
25
- }
26
- // Finally check config file
27
- const config = getLLMConfig();
28
- if (config?.mode && // Validation is now done in config.ts to avoid duplicate messages
29
- (config.mode === "auto" || config.mode === "manual")) {
30
- return config.mode;
31
- }
32
- // Default to auto if not specified
33
- return "auto";
34
- }
35
- catch {
36
- // In case of any errors, default to auto
37
- return "auto";
38
- }
39
- };
40
- /**
41
- * Entry point for commitizen
42
- * @param inquirerIns instance passed by commitizen, unused
43
- * @param commit callback to execute with complete commit message
44
- * @return {void}
45
- */
46
- async function prompter(inquirerIns, commit) {
47
- // eslint-disable-next-line @elsikora-typescript/typedef
48
- await load().then(async ({ prompt = {}, rules }) => {
49
- // Use process (AI mode) unless manual mode is enabled
50
- const commitMode = getCommitMode();
51
- if (commitMode === "manual") {
52
- const { useExisting } = await inquirer.prompt([
53
- {
54
- // eslint-disable-next-line @elsikora-typescript/naming-convention
55
- default: true,
56
- message: `Use manual configuration?`,
57
- name: "useExisting",
58
- type: "confirm",
59
- },
60
- ]);
61
- if (useExisting) {
62
- console.log(chalk.blue("Using manual commit mode..."));
63
- // Import manualProcess dynamically to avoid loading AI deps when not needed
64
- // eslint-disable-next-line @elsikora-typescript/typedef
65
- await import('./ManualProcess.js').then(async ({ default: manualProcess }) => {
66
- await manualProcess(rules, prompt, inquirerIns).then(commit);
67
- });
68
- }
69
- else {
70
- console.log(chalk.blue("Using AI-powered commit mode..."));
71
- // eslint-disable-next-line @elsikora/typescript/no-non-null-assertion
72
- const oldConfig = getLLMConfig();
73
- setLLMConfig({
74
- ...oldConfig,
75
- mode: "auto",
76
- });
77
- await Process(rules, prompt, inquirerIns).then(commit);
78
- }
79
- }
80
- else {
81
- console.log(chalk.blue("Using AI-powered commit mode..."));
82
- await Process(rules, prompt, inquirerIns).then(commit);
83
- }
84
- });
23
+ // Initialize the DI container
24
+ createAppContainer();
25
+ // Create adapter instance
26
+ const adapter = new CommitizenAdapter();
27
+ // Main adapter function - explicitly typed for module export
28
+ function prompter(inquirerInstance, commit) {
29
+ void adapter.prompter(inquirerInstance, commit);
85
30
  }
86
31
 
87
- export { getLLMConfig, prompter, setLLMConfig };
32
+ export { prompter };
88
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":["loadDotEnvironment","process"],"mappings":";;;;;;;;;;AAeA;AACA,IAAI;AACH,IAAAA,MAAkB,EAAE;AACrB;AAAE,MAAM;;AAER;AASA;AACA,MAAM,aAAa,GAAG,MAAiB;AACtC,IAAA,IAAI;;;QAIH,IAAI,UAAU,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,EAAE;AAC9C,YAAA,OAAO,QAAQ;;;AAIhB,QAAA,MAAM,MAAM,GAAmD,YAAY,EAAE;AAE7E,QAAA,IACC,MAAM,EAAE,IAAI;AACZ,aAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,EACnD;YACD,OAAO,MAAM,CAAC,IAAI;;;AAInB,QAAA,OAAO,MAAM;;AACZ,IAAA,MAAM;;AAEP,QAAA,OAAO,MAAM;;AAEf,CAAC;AAED;;;;;AAKG;AACI,eAAe,QAAQ,CAC7B,WAEC,EACD,MAAc,EAAA;;AAGd,IAAA,MAAM,IAAI,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,EAAE,EAAE,KAAK,EAAE,KAAI;;AAElD,QAAA,MAAM,UAAU,GAAsB,aAAa,EAAE;AAErD,QAAA,IAAI,UAAU,KAAK,QAAQ,EAAE;YAC5B,MAAM,EAAE,WAAW,EAAE,GAAQ,MAAM,QAAQ,CAAC,MAAM,CAAC;AAClD,gBAAA;;AAEC,oBAAA,OAAO,EAAE,IAAI;AACb,oBAAA,OAAO,EAAE,CAA2B,yBAAA,CAAA;AACpC,oBAAA,IAAI,EAAE,aAAa;AACnB,oBAAA,IAAI,EAAE,SAAS;AACf,iBAAA;AACD,aAAA,CAAC;YAEF,IAAI,WAAW,EAAE;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;;;AAGtD,gBAAA,MAAM,OAAO,oBAAoB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,KAAI;AAC5E,oBAAA,MAAM,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;AAC7D,iBAAC,CAAC;;iBACI;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;;AAE1D,gBAAA,MAAM,SAAS,GAAc,YAAY,EAAG;AAC5C,gBAAA,YAAY,CAAC;AACZ,oBAAA,GAAG,SAAS;AACZ,oBAAA,IAAI,EAAE,MAAM;AACZ,iBAAA,CAAC;AACF,gBAAA,MAAMC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;;;aAEjD;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;AAC1D,YAAA,MAAMA,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;;AAExD,KAAC,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAKA;AACA,kBAAkB,EAAE;AAEpB;AACA,MAAM,OAAO,GAAsB,IAAI,iBAAiB,EAAE;AAE1D;AACgB,SAAA,QAAQ,CAAC,gBAAyB,EAAE,MAAiC,EAAA;IACpF,KAAK,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;AAChD;;;;"}
@@ -0,0 +1,39 @@
1
+ import type { ICommitValidationResult, ICommitValidator } from "../../application/interface/commit-validator.interface.js";
2
+ import type { ILlmPromptContext, ILlmService } from "../../application/interface/llm-service.interface.js";
3
+ import type { CommitMessage } from "../../domain/entity/commit-message.entity.js";
4
+ import type { LLMConfiguration } from "../../domain/entity/llm-configuration.entity.js";
5
+ /**
6
+ * Commitlint implementation of the commit validator
7
+ */
8
+ export declare class CommitlintValidatorService implements ICommitValidator {
9
+ private readonly LLM_SERVICES?;
10
+ private llmConfiguration?;
11
+ constructor(llmServices?: Array<ILlmService>);
12
+ /**
13
+ * Attempt to fix a commit message based on validation errors
14
+ * @param message - The commit message to fix
15
+ * @param validationResult - The validation result containing errors
16
+ * @param context - Optional original context for LLM-based fixing
17
+ * @returns Promise resolving to the fixed commit message or null if unfixable
18
+ */
19
+ fix(message: CommitMessage, validationResult: ICommitValidationResult, context?: ILlmPromptContext): Promise<CommitMessage | null>;
20
+ /**
21
+ * Set the LLM configuration for context-aware fixing
22
+ * @param configuration - The LLM configuration
23
+ */
24
+ setLLMConfiguration(configuration: LLMConfiguration): void;
25
+ /**
26
+ * Validate a commit message using commitlint
27
+ * @param message - The commit message to validate
28
+ * @returns Promise resolving to the validation result
29
+ */
30
+ validate(message: CommitMessage): Promise<ICommitValidationResult>;
31
+ /**
32
+ * Wrap text to ensure no line exceeds the specified length
33
+ * @param text - The text to wrap
34
+ * @param maxLength - Maximum line length
35
+ * @returns The wrapped text
36
+ */
37
+ private wrapText;
38
+ }
39
+ //# sourceMappingURL=commitlint-validator.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commitlint-validator.service.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/commit-validator/commitlint-validator.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAC;AAC3H,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;AAC3G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AASxF;;GAEG;AACH,qBAAa,0BAA2B,YAAW,gBAAgB;IAClE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAqB;IAEnD,OAAO,CAAC,gBAAgB,CAAC,CAAmB;gBAEhC,WAAW,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IAI5C;;;;;;OAMG;IACG,GAAG,CAAC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA+IxI;;;OAGG;IACH,mBAAmB,CAAC,aAAa,EAAE,gBAAgB,GAAG,IAAI;IAI1D;;;;OAIG;IACG,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAYxE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;CAmChB"}
@@ -0,0 +1,205 @@
1
+ import lint from '@commitlint/lint';
2
+ import load from '@commitlint/load';
3
+ import { ELLIPSIS_LENGTH } from '../../domain/constant/numeric.constant.js';
4
+ import { CommitBody } from '../../domain/value-object/commit-body.value-object.js';
5
+ import { CommitHeader } from '../../domain/value-object/commit-header.value-object.js';
6
+
7
+ /**
8
+ * Commitlint implementation of the commit validator
9
+ */
10
+ class CommitlintValidatorService {
11
+ LLM_SERVICES;
12
+ llmConfiguration;
13
+ constructor(llmServices) {
14
+ this.LLM_SERVICES = llmServices;
15
+ }
16
+ /**
17
+ * Attempt to fix a commit message based on validation errors
18
+ * @param message - The commit message to fix
19
+ * @param validationResult - The validation result containing errors
20
+ * @param context - Optional original context for LLM-based fixing
21
+ * @returns Promise resolving to the fixed commit message or null if unfixable
22
+ */
23
+ async fix(message, validationResult, context) {
24
+ if (!validationResult.errors || validationResult.errors.length === 0) {
25
+ return message;
26
+ }
27
+ // If we have context and LLM services, use LLM to regenerate
28
+ if (context && this.LLM_SERVICES && this.llmConfiguration) {
29
+ const service = this.LLM_SERVICES.find((s) => {
30
+ const config = this.llmConfiguration;
31
+ return config ? s.supports(config) : false;
32
+ });
33
+ if (service) {
34
+ process.stdout.write("Using LLM to intelligently fix validation errors...\n");
35
+ try {
36
+ // Create a minimal context for fixing - no need to send diff again
37
+ const fixContext = {
38
+ body: context.body,
39
+ // Explicitly exclude diff and files
40
+ diff: undefined,
41
+ files: undefined,
42
+ rules: {
43
+ ...(typeof context.rules === "object" && !Array.isArray(context.rules) ? context.rules : {}),
44
+ instructions: "Fix the commit message to comply with the validation rules. Do not change the meaning or content, only fix the format to pass validation.",
45
+ previousAttempt: message.toString(),
46
+ validationErrors: validationResult.errors,
47
+ },
48
+ scopeDescription: context.scopeDescription,
49
+ subject: context.subject,
50
+ typeDescription: context.typeDescription,
51
+ typeDescriptions: context.typeDescriptions,
52
+ typeEnum: context.typeEnum,
53
+ };
54
+ // Generate a new commit message with the minimal context
55
+ const fixedMessage = await service.generateCommitMessage(fixContext, this.llmConfiguration);
56
+ // Validate the new message
57
+ const fixedValidation = await this.validate(fixedMessage);
58
+ if (fixedValidation.isValid) {
59
+ process.stdout.write("LLM fix successful!\n");
60
+ return fixedMessage;
61
+ }
62
+ else {
63
+ process.stdout.write("LLM fix still has validation errors, falling back to simple fixes\n");
64
+ }
65
+ }
66
+ catch (error) {
67
+ process.stderr.write(`Failed to fix commit message with LLM: ${error instanceof Error ? error.message : String(error)}\n`);
68
+ // Fall through to simple fixes
69
+ }
70
+ }
71
+ }
72
+ process.stdout.write("Attempting simple rule-based fixes...\n");
73
+ // Fallback to simple fixes
74
+ let fixedMessage = message;
75
+ // Try to fix common errors
76
+ for (const error of validationResult.errors) {
77
+ if (error.includes("subject may not be empty")) {
78
+ // Can't fix empty subject
79
+ return null;
80
+ }
81
+ if (error.includes("type may not be empty")) {
82
+ // Can't fix empty type
83
+ return null;
84
+ }
85
+ // Fix subject case issues
86
+ if (error.includes("subject must not be sentence-case")) {
87
+ const header = fixedMessage.getHeader();
88
+ const subject = header.getSubject();
89
+ const fixedSubject = subject.charAt(0).toLowerCase() + subject.slice(1);
90
+ const newHeader = new CommitHeader(header.getType(), fixedSubject, header.getScope());
91
+ fixedMessage = fixedMessage.withHeader(newHeader);
92
+ }
93
+ // Fix subject trailing period
94
+ if (error.includes("subject may not end with period")) {
95
+ const header = fixedMessage.getHeader();
96
+ const subject = header.getSubject();
97
+ const fixedSubject = subject.replace(/\.$/, "");
98
+ const newHeader = new CommitHeader(header.getType(), fixedSubject, header.getScope());
99
+ fixedMessage = fixedMessage.withHeader(newHeader);
100
+ }
101
+ // Fix header max length
102
+ if (error.includes("header must not be longer than")) {
103
+ const maxLengthNumbers = error.match(/\d+/g) ?? [];
104
+ if (maxLengthNumbers.length > 0) {
105
+ const maxLength = Number.parseInt(maxLengthNumbers[0], 10);
106
+ const header = fixedMessage.getHeader();
107
+ const currentLength = header.toString().length;
108
+ if (currentLength > maxLength) {
109
+ // Try to shorten the subject
110
+ const overhead = currentLength - maxLength;
111
+ const subject = header.getSubject();
112
+ const shortenedSubject = subject.slice(0, Math.max(0, subject.length - overhead - ELLIPSIS_LENGTH)) + "...";
113
+ const newHeader = new CommitHeader(header.getType(), shortenedSubject, header.getScope());
114
+ fixedMessage = fixedMessage.withHeader(newHeader);
115
+ }
116
+ }
117
+ }
118
+ // Fix body/footer line length
119
+ if (error.includes("footer's lines must not be longer than") || error.includes("body's lines must not be longer than")) {
120
+ const maxLengthNumbers = error.match(/\d+/g) ?? [];
121
+ if (maxLengthNumbers.length > 0) {
122
+ const maxLength = Number.parseInt(maxLengthNumbers[0], 10);
123
+ const body = fixedMessage.getBody();
124
+ // Wrap body lines
125
+ const wrappedBody = this.wrapText(body.getContent(), maxLength);
126
+ const wrappedBreaking = this.wrapText(body.getBreakingChange(), maxLength);
127
+ const newBody = new CommitBody(wrappedBody, wrappedBreaking);
128
+ fixedMessage = fixedMessage.withBody(newBody);
129
+ }
130
+ }
131
+ }
132
+ // Validate the fixed message
133
+ const fixedValidation = await this.validate(fixedMessage);
134
+ if (fixedValidation.isValid) {
135
+ process.stdout.write("Simple fixes successful!\n");
136
+ return fixedMessage;
137
+ }
138
+ // If still invalid, return null
139
+ process.stdout.write("Simple fixes failed to resolve all validation errors\n");
140
+ return null;
141
+ }
142
+ /**
143
+ * Set the LLM configuration for context-aware fixing
144
+ * @param configuration - The LLM configuration
145
+ */
146
+ setLLMConfiguration(configuration) {
147
+ this.llmConfiguration = configuration;
148
+ }
149
+ /**
150
+ * Validate a commit message using commitlint
151
+ * @param message - The commit message to validate
152
+ * @returns Promise resolving to the validation result
153
+ */
154
+ async validate(message) {
155
+ const loadResult = await load();
156
+ const { rules = {} } = loadResult;
157
+ const result = await lint(message.toString(), rules);
158
+ return {
159
+ errors: result.errors.map((error) => error.message),
160
+ isValid: result.valid,
161
+ warnings: result.warnings.map((warning) => warning.message),
162
+ };
163
+ }
164
+ /**
165
+ * Wrap text to ensure no line exceeds the specified length
166
+ * @param text - The text to wrap
167
+ * @param maxLength - Maximum line length
168
+ * @returns The wrapped text
169
+ */
170
+ wrapText(text, maxLength) {
171
+ if (!text) {
172
+ return text;
173
+ }
174
+ const lines = text.split("\n");
175
+ const wrappedLines = [];
176
+ for (const line of lines) {
177
+ if (line.length <= maxLength) {
178
+ wrappedLines.push(line);
179
+ }
180
+ else {
181
+ // Simple word wrap
182
+ const words = line.split(" ");
183
+ let currentLine = "";
184
+ for (const word of words) {
185
+ if (currentLine.length + word.length + 1 <= maxLength) {
186
+ currentLine += (currentLine ? " " : "") + word;
187
+ }
188
+ else {
189
+ if (currentLine) {
190
+ wrappedLines.push(currentLine);
191
+ }
192
+ currentLine = word;
193
+ }
194
+ }
195
+ if (currentLine) {
196
+ wrappedLines.push(currentLine);
197
+ }
198
+ }
199
+ }
200
+ return wrappedLines.join("\n");
201
+ }
202
+ }
203
+
204
+ export { CommitlintValidatorService };
205
+ //# sourceMappingURL=commitlint-validator.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commitlint-validator.service.js","sources":["../../../../../src/infrastructure/commit-validator/commitlint-validator.service.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./commitlint-validator.service.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/commit-validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { IContainer } from "@elsikora/cladi";
2
+ export declare const FileSystemServiceToken: symbol;
3
+ export declare const CliInterfaceServiceToken: symbol;
4
+ export declare const CommandServiceToken: symbol;
5
+ export declare const ConfigServiceToken: symbol;
6
+ export declare const CommitValidatorToken: symbol;
7
+ export declare const CommitRepositoryToken: symbol;
8
+ export declare const LLMServicesToken: symbol;
9
+ export declare const GenerateCommitMessageUseCaseToken: symbol;
10
+ export declare const ValidateCommitMessageUseCaseToken: symbol;
11
+ export declare const ConfigureLLMUseCaseToken: symbol;
12
+ export declare const ManualCommitUseCaseToken: symbol;
13
+ /**
14
+ * Create and configure the application DI container
15
+ * @returns The configured container
16
+ */
17
+ export declare function createAppContainer(): IContainer;
18
+ //# sourceMappingURL=container.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/di/container.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AA6BlD,eAAO,MAAM,sBAAsB,EAAE,MAAoC,CAAC;AAC1E,eAAO,MAAM,wBAAwB,EAAE,MAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,EAAE,MAAiC,CAAC;AACpE,eAAO,MAAM,kBAAkB,EAAE,MAAgC,CAAC;AAClE,eAAO,MAAM,oBAAoB,EAAE,MAAkC,CAAC;AACtE,eAAO,MAAM,qBAAqB,EAAE,MAAmC,CAAC;AACxE,eAAO,MAAM,gBAAgB,EAAE,MAA8B,CAAC;AAG9D,eAAO,MAAM,iCAAiC,EAAE,MAA+C,CAAC;AAChG,eAAO,MAAM,iCAAiC,EAAE,MAA+C,CAAC;AAChG,eAAO,MAAM,wBAAwB,EAAE,MAAsC,CAAC;AAC9E,eAAO,MAAM,wBAAwB,EAAE,MAAsC,CAAC;AAE9E;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,UAAU,CAkC/C"}
@@ -0,0 +1,63 @@
1
+ import { createContainer } from '@elsikora/cladi';
2
+ import { ConfigureLLMUseCase } from '../../application/use-case/configure-llm.use-case.js';
3
+ import { GenerateCommitMessageUseCase } from '../../application/use-case/generate-commit-message.use-case.js';
4
+ import { ManualCommitUseCase } from '../../application/use-case/manual-commit.use-case.js';
5
+ import { ValidateCommitMessageUseCase } from '../../application/use-case/validate-commit-message.use-case.js';
6
+ import { CommitlintValidatorService } from '../commit-validator/commitlint-validator.service.js';
7
+ import { GitCommitRepository } from '../git/git-commit.repository.js';
8
+ import { AnthropicLlmService } from '../llm/anthropic-llm.service.js';
9
+ import { AWSBedrockLlmService } from '../llm/aws-bedrock-llm.service.js';
10
+ import { AzureOpenAILlmService } from '../llm/azure-openai-llm.service.js';
11
+ import { GoogleLlmService } from '../llm/google-llm.service.js';
12
+ import { OllamaLlmService } from '../llm/ollama-llm.service.js';
13
+ import { OpenAILlmService } from '../llm/openai-llm.service.js';
14
+ import { CosmicConfigService } from '../service/cosmic-config.service.js';
15
+ import { NodeCommandService } from '../service/node-command.service.js';
16
+ import { NodeFileSystemService } from '../service/node-file-system.service.js';
17
+ import { PromptsCliInterface } from '../service/prompts-cli-interface.service.js';
18
+
19
+ // Service tokens
20
+ const FileSystemServiceToken = Symbol("FileSystemService");
21
+ const CliInterfaceServiceToken = Symbol("CliInterfaceService");
22
+ const CommandServiceToken = Symbol("CommandService");
23
+ const ConfigServiceToken = Symbol("ConfigService");
24
+ const CommitValidatorToken = Symbol("CommitValidator");
25
+ const CommitRepositoryToken = Symbol("CommitRepository");
26
+ const LLMServicesToken = Symbol("LLMServices");
27
+ // Use case tokens
28
+ const GenerateCommitMessageUseCaseToken = Symbol("GenerateCommitMessageUseCase");
29
+ const ValidateCommitMessageUseCaseToken = Symbol("ValidateCommitMessageUseCase");
30
+ const ConfigureLLMUseCaseToken = Symbol("ConfigureLLMUseCase");
31
+ const ManualCommitUseCaseToken = Symbol("ManualCommitUseCase");
32
+ /**
33
+ * Create and configure the application DI container
34
+ * @returns The configured container
35
+ */
36
+ function createAppContainer() {
37
+ const container = createContainer({});
38
+ // Register infrastructure services
39
+ container.register(FileSystemServiceToken, new NodeFileSystemService());
40
+ container.register(CliInterfaceServiceToken, new PromptsCliInterface());
41
+ const cliInterface = container.get(CliInterfaceServiceToken) ?? new PromptsCliInterface();
42
+ const fileSystem = container.get(FileSystemServiceToken) ?? new NodeFileSystemService();
43
+ container.register(ConfigServiceToken, new CosmicConfigService(fileSystem));
44
+ container.register(CommandServiceToken, new NodeCommandService(cliInterface));
45
+ const commandService = container.get(CommandServiceToken) ?? new NodeCommandService(cliInterface);
46
+ container.register(CommitRepositoryToken, new GitCommitRepository(commandService));
47
+ // Register LLM services
48
+ const llmServices = [new OpenAILlmService(), new AnthropicLlmService(), new GoogleLlmService(), new AzureOpenAILlmService(), new AWSBedrockLlmService(), new OllamaLlmService()];
49
+ container.register(LLMServicesToken, llmServices);
50
+ // Register commit validator with LLM services
51
+ container.register(CommitValidatorToken, new CommitlintValidatorService(llmServices));
52
+ const validator = container.get(CommitValidatorToken) ?? new CommitlintValidatorService([]);
53
+ const configService = container.get(ConfigServiceToken) ?? new CosmicConfigService(fileSystem);
54
+ // Register use cases
55
+ container.register(ConfigureLLMUseCaseToken, new ConfigureLLMUseCase(configService, cliInterface));
56
+ container.register(GenerateCommitMessageUseCaseToken, new GenerateCommitMessageUseCase(llmServices));
57
+ container.register(ValidateCommitMessageUseCaseToken, new ValidateCommitMessageUseCase(validator));
58
+ container.register(ManualCommitUseCaseToken, new ManualCommitUseCase(cliInterface));
59
+ return container;
60
+ }
61
+
62
+ export { CliInterfaceServiceToken, CommandServiceToken, CommitRepositoryToken, CommitValidatorToken, ConfigServiceToken, ConfigureLLMUseCaseToken, FileSystemServiceToken, GenerateCommitMessageUseCaseToken, LLMServicesToken, ManualCommitUseCaseToken, ValidateCommitMessageUseCaseToken, createAppContainer };
63
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","sources":["../../../../../src/infrastructure/di/container.ts"],"sourcesContent":[null],"names":["ConfigureLLMUseCaseImpl","GenerateCommitMessageUseCaseImpl","ValidateCommitMessageUseCaseImpl","ManualCommitUseCaseImpl"],"mappings":";;;;;;;;;;;;;;;;;;AA4BA;MACa,sBAAsB,GAAW,MAAM,CAAC,mBAAmB;MAC3D,wBAAwB,GAAW,MAAM,CAAC,qBAAqB;MAC/D,mBAAmB,GAAW,MAAM,CAAC,gBAAgB;MACrD,kBAAkB,GAAW,MAAM,CAAC,eAAe;MACnD,oBAAoB,GAAW,MAAM,CAAC,iBAAiB;MACvD,qBAAqB,GAAW,MAAM,CAAC,kBAAkB;MACzD,gBAAgB,GAAW,MAAM,CAAC,aAAa;AAE5D;MACa,iCAAiC,GAAW,MAAM,CAAC,8BAA8B;MACjF,iCAAiC,GAAW,MAAM,CAAC,8BAA8B;MACjF,wBAAwB,GAAW,MAAM,CAAC,qBAAqB;MAC/D,wBAAwB,GAAW,MAAM,CAAC,qBAAqB;AAE5E;;;AAGG;SACa,kBAAkB,GAAA;AACjC,IAAA,MAAM,SAAS,GAAe,eAAe,CAAC,EAAE,CAAC;;IAGjD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,IAAI,qBAAqB,EAAE,CAAC;IACvE,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,IAAI,mBAAmB,EAAE,CAAC;AAEvE,IAAA,MAAM,YAAY,GAAyB,SAAS,CAAC,GAAG,CAAuB,wBAAwB,CAAC,IAAI,IAAI,mBAAmB,EAAE;AACrI,IAAA,MAAM,UAAU,GAAuB,SAAS,CAAC,GAAG,CAAqB,sBAAsB,CAAC,IAAI,IAAI,qBAAqB,EAAE;IAE/H,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,IAAI,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC3E,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,IAAI,kBAAkB,CAAC,YAAY,CAAC,CAAC;AAE7E,IAAA,MAAM,cAAc,GAAoB,SAAS,CAAC,GAAG,CAAkB,mBAAmB,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC;IAEnI,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;;IAGlF,MAAM,WAAW,GAAuB,CAAC,IAAI,gBAAgB,EAAE,EAAE,IAAI,mBAAmB,EAAE,EAAE,IAAI,gBAAgB,EAAE,EAAE,IAAI,qBAAqB,EAAE,EAAE,IAAI,oBAAoB,EAAE,EAAE,IAAI,gBAAgB,EAAE,CAAC;AACpM,IAAA,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC;;IAGjD,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,0BAA0B,CAAC,WAAW,CAAC,CAAC;AAErF,IAAA,MAAM,SAAS,GAAqB,SAAS,CAAC,GAAG,CAAmB,oBAAoB,CAAC,IAAI,IAAI,0BAA0B,CAAC,EAAE,CAAC;AAC/H,IAAA,MAAM,aAAa,GAAmB,SAAS,CAAC,GAAG,CAAiB,kBAAkB,CAAC,IAAI,IAAI,mBAAmB,CAAC,UAAU,CAAC;;AAG9H,IAAA,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,IAAIA,mBAAuB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IACtG,SAAS,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAIC,4BAAgC,CAAC,WAAW,CAAC,CAAC;IACxG,SAAS,CAAC,QAAQ,CAAC,iCAAiC,EAAE,IAAIC,4BAAgC,CAAC,SAAS,CAAC,CAAC;IACtG,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,IAAIC,mBAAuB,CAAC,YAAY,CAAC,CAAC;AAEvF,IAAA,OAAO,SAAS;AACjB;;;;"}
@@ -0,0 +1,2 @@
1
+ export * from "./container.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/di/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,37 @@
1
+ import type { ICommandService } from "../../application/interface/command-service.interface.js";
2
+ import type { ICommitRepository } from "../../application/interface/commit-repository.interface.js";
3
+ import type { CommitMessage } from "../../domain/entity/commit-message.entity.js";
4
+ /**
5
+ * Git implementation of the commit repository
6
+ */
7
+ export declare class GitCommitRepository implements ICommitRepository {
8
+ private readonly COMMAND_SERVICE;
9
+ constructor(commandService: ICommandService);
10
+ /**
11
+ * Create a commit with the given message
12
+ * @param message - The commit message
13
+ * @returns Promise that resolves when the commit is created
14
+ */
15
+ commit(message: CommitMessage): Promise<void>;
16
+ /**
17
+ * Get the current branch name
18
+ * @returns Promise resolving to the current branch name
19
+ */
20
+ getCurrentBranch(): Promise<string>;
21
+ /**
22
+ * Get the staged diff
23
+ * @returns Promise resolving to the staged diff
24
+ */
25
+ getStagedDiff(): Promise<string>;
26
+ /**
27
+ * Get the list of staged files
28
+ * @returns Promise resolving to the list of staged files
29
+ */
30
+ getStagedFiles(): Promise<Array<string>>;
31
+ /**
32
+ * Check if there are staged changes
33
+ * @returns Promise resolving to true if there are staged changes
34
+ */
35
+ hasStagedChanges(): Promise<boolean>;
36
+ }
37
+ //# sourceMappingURL=git-commit.repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-commit.repository.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/git/git-commit.repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAC;AAChG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4DAA4D,CAAC;AACpG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAElF;;GAEG;AACH,qBAAa,mBAAoB,YAAW,iBAAiB;IAC5D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;gBAEtC,cAAc,EAAE,eAAe;IAI3C;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnD;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAMzC;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAiBtC;;;OAGG;IACG,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAU9C;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC;CAS1C"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Git implementation of the commit repository
3
+ */
4
+ class GitCommitRepository {
5
+ COMMAND_SERVICE;
6
+ constructor(commandService) {
7
+ this.COMMAND_SERVICE = commandService;
8
+ }
9
+ /**
10
+ * Create a commit with the given message
11
+ * @param message - The commit message
12
+ * @returns Promise that resolves when the commit is created
13
+ */
14
+ async commit(message) {
15
+ // Escape the commit message for shell
16
+ const escapedMessage = message.toString().replaceAll("'", String.raw `'\''`);
17
+ // Execute git commit
18
+ await this.COMMAND_SERVICE.execute(`git commit -m '${escapedMessage}'`);
19
+ }
20
+ /**
21
+ * Get the current branch name
22
+ * @returns Promise resolving to the current branch name
23
+ */
24
+ async getCurrentBranch() {
25
+ const branch = await this.COMMAND_SERVICE.executeWithOutput("git rev-parse --abbrev-ref HEAD");
26
+ return branch || "main";
27
+ }
28
+ /**
29
+ * Get the staged diff
30
+ * @returns Promise resolving to the staged diff
31
+ */
32
+ async getStagedDiff() {
33
+ try {
34
+ // Get a compact diff suitable for LLM context
35
+ const diff = await this.COMMAND_SERVICE.executeWithOutput("git diff --cached --stat -p --no-color");
36
+ // Limit diff size to avoid token limits
37
+ const maxLength = 3000;
38
+ if (diff.length > maxLength) {
39
+ return diff.slice(0, Math.max(0, maxLength)) + "\n... (truncated)";
40
+ }
41
+ return diff;
42
+ }
43
+ catch {
44
+ return "";
45
+ }
46
+ }
47
+ /**
48
+ * Get the list of staged files
49
+ * @returns Promise resolving to the list of staged files
50
+ */
51
+ async getStagedFiles() {
52
+ try {
53
+ const output = await this.COMMAND_SERVICE.executeWithOutput("git diff --cached --name-only");
54
+ return output.split("\n").filter((file) => file.trim().length > 0);
55
+ }
56
+ catch {
57
+ return [];
58
+ }
59
+ }
60
+ /**
61
+ * Check if there are staged changes
62
+ * @returns Promise resolving to true if there are staged changes
63
+ */
64
+ async hasStagedChanges() {
65
+ try {
66
+ const output = await this.COMMAND_SERVICE.executeWithOutput("git diff --cached --name-only");
67
+ return output.length > 0;
68
+ }
69
+ catch {
70
+ return false;
71
+ }
72
+ }
73
+ }
74
+
75
+ export { GitCommitRepository };
76
+ //# sourceMappingURL=git-commit.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-commit.repository.js","sources":["../../../../../src/infrastructure/git/git-commit.repository.ts"],"sourcesContent":[null],"names":[],"mappings":"AAIA;;AAEG;MACU,mBAAmB,CAAA;AACd,IAAA,eAAe;AAEhC,IAAA,WAAA,CAAY,cAA+B,EAAA;AAC1C,QAAA,IAAI,CAAC,eAAe,GAAG,cAAc;;AAGtC;;;;AAIG;IACH,MAAM,MAAM,CAAC,OAAsB,EAAA;;AAElC,QAAA,MAAM,cAAc,GAAW,OAAO,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAA,CAAA,IAAA,CAAM,CAAC;;QAGnF,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAkB,eAAA,EAAA,cAAc,CAAG,CAAA,CAAA,CAAC;;AAGxE;;;AAGG;AACH,IAAA,MAAM,gBAAgB,GAAA;QACrB,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,iCAAiC,CAAC;QAEtG,OAAO,MAAM,IAAI,MAAM;;AAGxB;;;AAGG;AACH,IAAA,MAAM,aAAa,GAAA;AAClB,QAAA,IAAI;;YAEH,MAAM,IAAI,GAAW,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,wCAAwC,CAAC;;YAE3G,MAAM,SAAS,GAAW,IAAI;AAE9B,YAAA,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE;AAC5B,gBAAA,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,mBAAmB;;AAGnE,YAAA,OAAO,IAAI;;AACV,QAAA,MAAM;AACP,YAAA,OAAO,EAAE;;;AAIX;;;AAGG;AACH,IAAA,MAAM,cAAc,GAAA;AACnB,QAAA,IAAI;YACH,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,+BAA+B,CAAC;YAEpG,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAY,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;;AACzE,QAAA,MAAM;AACP,YAAA,OAAO,EAAE;;;AAIX;;;AAGG;AACH,IAAA,MAAM,gBAAgB,GAAA;AACrB,QAAA,IAAI;YACH,MAAM,MAAM,GAAW,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,+BAA+B,CAAC;AAEpG,YAAA,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC;;AACvB,QAAA,MAAM;AACP,YAAA,OAAO,KAAK;;;AAGd;;;;"}
@@ -0,0 +1,2 @@
1
+ export * from "./git-commit.repository.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/git/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from "./commit-validator/index.js";
2
+ export * from "./git/index.js";
3
+ export * from "./llm/index.js";
4
+ export * from "./service/index.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC"}