@gitkraken/core-gitlens 0.1.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 (1375) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/LICENSE +30 -0
  3. package/LICENSE.plus +40 -0
  4. package/README.md +54 -0
  5. package/dist/git/cache.d.ts +140 -0
  6. package/dist/git/cache.d.ts.map +1 -0
  7. package/dist/git/cache.js +765 -0
  8. package/dist/git/cache.js.map +1 -0
  9. package/dist/git/context.d.ts +238 -0
  10. package/dist/git/context.d.ts.map +1 -0
  11. package/dist/git/context.js +11 -0
  12. package/dist/git/context.js.map +1 -0
  13. package/dist/git/errors.d.ts +419 -0
  14. package/dist/git/errors.d.ts.map +1 -0
  15. package/dist/git/errors.js +681 -0
  16. package/dist/git/errors.js.map +1 -0
  17. package/dist/git/exec.types.d.ts +66 -0
  18. package/dist/git/exec.types.d.ts.map +1 -0
  19. package/dist/git/exec.types.js +2 -0
  20. package/dist/git/exec.types.js.map +1 -0
  21. package/dist/git/features.d.ts +8 -0
  22. package/dist/git/features.d.ts.map +1 -0
  23. package/dist/git/features.js +18 -0
  24. package/dist/git/features.js.map +1 -0
  25. package/dist/git/models/author.d.ts +17 -0
  26. package/dist/git/models/author.d.ts.map +1 -0
  27. package/dist/git/models/author.js +2 -0
  28. package/dist/git/models/author.js.map +1 -0
  29. package/dist/git/models/autolink.d.ts +51 -0
  30. package/dist/git/models/autolink.d.ts.map +1 -0
  31. package/dist/git/models/autolink.js +2 -0
  32. package/dist/git/models/autolink.js.map +1 -0
  33. package/dist/git/models/blame.d.ts +41 -0
  34. package/dist/git/models/blame.d.ts.map +1 -0
  35. package/dist/git/models/blame.js +2 -0
  36. package/dist/git/models/blame.js.map +1 -0
  37. package/dist/git/models/branch.d.ts +85 -0
  38. package/dist/git/models/branch.d.ts.map +1 -0
  39. package/dist/git/models/branch.js +174 -0
  40. package/dist/git/models/branch.js.map +1 -0
  41. package/dist/git/models/commit.d.ts +163 -0
  42. package/dist/git/models/commit.d.ts.map +1 -0
  43. package/dist/git/models/commit.js +496 -0
  44. package/dist/git/models/commit.js.map +1 -0
  45. package/dist/git/models/contributor.d.ts +40 -0
  46. package/dist/git/models/contributor.d.ts.map +1 -0
  47. package/dist/git/models/contributor.js +67 -0
  48. package/dist/git/models/contributor.js.map +1 -0
  49. package/dist/git/models/defaultBranch.d.ts +6 -0
  50. package/dist/git/models/defaultBranch.d.ts.map +1 -0
  51. package/dist/git/models/defaultBranch.js +2 -0
  52. package/dist/git/models/defaultBranch.js.map +1 -0
  53. package/dist/git/models/diff.d.ts +73 -0
  54. package/dist/git/models/diff.d.ts.map +1 -0
  55. package/dist/git/models/diff.js +2 -0
  56. package/dist/git/models/diff.js.map +1 -0
  57. package/dist/git/models/file.d.ts +23 -0
  58. package/dist/git/models/file.d.ts.map +1 -0
  59. package/dist/git/models/file.js +2 -0
  60. package/dist/git/models/file.js.map +1 -0
  61. package/dist/git/models/fileChange.d.ts +50 -0
  62. package/dist/git/models/fileChange.d.ts.map +1 -0
  63. package/dist/git/models/fileChange.js +69 -0
  64. package/dist/git/models/fileChange.js.map +1 -0
  65. package/dist/git/models/fileStatus.d.ts +33 -0
  66. package/dist/git/models/fileStatus.d.ts.map +1 -0
  67. package/dist/git/models/fileStatus.js +29 -0
  68. package/dist/git/models/fileStatus.js.map +1 -0
  69. package/dist/git/models/graph.d.ts +171 -0
  70. package/dist/git/models/graph.d.ts.map +1 -0
  71. package/dist/git/models/graph.js +2 -0
  72. package/dist/git/models/graph.js.map +1 -0
  73. package/dist/git/models/graphSearch.d.ts +48 -0
  74. package/dist/git/models/graphSearch.d.ts.map +1 -0
  75. package/dist/git/models/graphSearch.js +2 -0
  76. package/dist/git/models/graphSearch.js.map +1 -0
  77. package/dist/git/models/issue.d.ts +69 -0
  78. package/dist/git/models/issue.d.ts.map +1 -0
  79. package/dist/git/models/issue.js +68 -0
  80. package/dist/git/models/issue.js.map +1 -0
  81. package/dist/git/models/issueOrPullRequest.d.ts +19 -0
  82. package/dist/git/models/issueOrPullRequest.d.ts.map +1 -0
  83. package/dist/git/models/issueOrPullRequest.js +2 -0
  84. package/dist/git/models/issueOrPullRequest.js.map +1 -0
  85. package/dist/git/models/lineRange.d.ts +8 -0
  86. package/dist/git/models/lineRange.d.ts.map +1 -0
  87. package/dist/git/models/lineRange.js +2 -0
  88. package/dist/git/models/lineRange.js.map +1 -0
  89. package/dist/git/models/log.d.ts +19 -0
  90. package/dist/git/models/log.d.ts.map +1 -0
  91. package/dist/git/models/log.js +2 -0
  92. package/dist/git/models/log.js.map +1 -0
  93. package/dist/git/models/mergeConflicts.d.ts +23 -0
  94. package/dist/git/models/mergeConflicts.d.ts.map +1 -0
  95. package/dist/git/models/mergeConflicts.js +2 -0
  96. package/dist/git/models/mergeConflicts.js.map +1 -0
  97. package/dist/git/models/patch.d.ts +22 -0
  98. package/dist/git/models/patch.d.ts.map +1 -0
  99. package/dist/git/models/patch.js +2 -0
  100. package/dist/git/models/patch.js.map +1 -0
  101. package/dist/git/models/pausedOperationStatus.d.ts +52 -0
  102. package/dist/git/models/pausedOperationStatus.d.ts.map +1 -0
  103. package/dist/git/models/pausedOperationStatus.js +2 -0
  104. package/dist/git/models/pausedOperationStatus.js.map +1 -0
  105. package/dist/git/models/pullRequest.d.ts +125 -0
  106. package/dist/git/models/pullRequest.d.ts.map +1 -0
  107. package/dist/git/models/pullRequest.js +127 -0
  108. package/dist/git/models/pullRequest.js.map +1 -0
  109. package/dist/git/models/rebase.d.ts +51 -0
  110. package/dist/git/models/rebase.d.ts.map +1 -0
  111. package/dist/git/models/rebase.js +2 -0
  112. package/dist/git/models/rebase.js.map +1 -0
  113. package/dist/git/models/reference.d.ts +48 -0
  114. package/dist/git/models/reference.d.ts.map +1 -0
  115. package/dist/git/models/reference.js +2 -0
  116. package/dist/git/models/reference.js.map +1 -0
  117. package/dist/git/models/reflog.d.ts +33 -0
  118. package/dist/git/models/reflog.d.ts.map +1 -0
  119. package/dist/git/models/reflog.js +85 -0
  120. package/dist/git/models/reflog.js.map +1 -0
  121. package/dist/git/models/remote.d.ts +37 -0
  122. package/dist/git/models/remote.d.ts.map +1 -0
  123. package/dist/git/models/remote.js +98 -0
  124. package/dist/git/models/remote.js.map +1 -0
  125. package/dist/git/models/remoteProvider.d.ts +112 -0
  126. package/dist/git/models/remoteProvider.d.ts.map +1 -0
  127. package/dist/git/models/remoteProvider.js +154 -0
  128. package/dist/git/models/remoteProvider.js.map +1 -0
  129. package/dist/git/models/remoteResource.d.ts +78 -0
  130. package/dist/git/models/remoteResource.d.ts.map +1 -0
  131. package/dist/git/models/remoteResource.js +13 -0
  132. package/dist/git/models/remoteResource.js.map +1 -0
  133. package/dist/git/models/repository.d.ts +106 -0
  134. package/dist/git/models/repository.d.ts.map +1 -0
  135. package/dist/git/models/repository.js +324 -0
  136. package/dist/git/models/repository.js.map +1 -0
  137. package/dist/git/models/repositoryChangeEvent.d.ts +17 -0
  138. package/dist/git/models/repositoryChangeEvent.d.ts.map +1 -0
  139. package/dist/git/models/repositoryChangeEvent.js +26 -0
  140. package/dist/git/models/repositoryChangeEvent.js.map +1 -0
  141. package/dist/git/models/repositoryIdentities.d.ts +72 -0
  142. package/dist/git/models/repositoryIdentities.d.ts.map +1 -0
  143. package/dist/git/models/repositoryIdentities.js +7 -0
  144. package/dist/git/models/repositoryIdentities.js.map +1 -0
  145. package/dist/git/models/repositoryMetadata.d.ts +12 -0
  146. package/dist/git/models/repositoryMetadata.d.ts.map +1 -0
  147. package/dist/git/models/repositoryMetadata.js +2 -0
  148. package/dist/git/models/repositoryMetadata.js.map +1 -0
  149. package/dist/git/models/resourceDescriptor.d.ts +12 -0
  150. package/dist/git/models/resourceDescriptor.d.ts.map +1 -0
  151. package/dist/git/models/resourceDescriptor.js +2 -0
  152. package/dist/git/models/resourceDescriptor.js.map +1 -0
  153. package/dist/git/models/revision.d.ts +7 -0
  154. package/dist/git/models/revision.d.ts.map +1 -0
  155. package/dist/git/models/revision.js +6 -0
  156. package/dist/git/models/revision.js.map +1 -0
  157. package/dist/git/models/search.d.ts +66 -0
  158. package/dist/git/models/search.d.ts.map +1 -0
  159. package/dist/git/models/search.js +48 -0
  160. package/dist/git/models/search.js.map +1 -0
  161. package/dist/git/models/shortlog.d.ts +6 -0
  162. package/dist/git/models/shortlog.d.ts.map +1 -0
  163. package/dist/git/models/shortlog.js +2 -0
  164. package/dist/git/models/shortlog.js.map +1 -0
  165. package/dist/git/models/signature.d.ts +26 -0
  166. package/dist/git/models/signature.d.ts.map +1 -0
  167. package/dist/git/models/signature.js +2 -0
  168. package/dist/git/models/signature.js.map +1 -0
  169. package/dist/git/models/staging.d.ts +24 -0
  170. package/dist/git/models/staging.d.ts.map +1 -0
  171. package/dist/git/models/staging.js +2 -0
  172. package/dist/git/models/staging.js.map +1 -0
  173. package/dist/git/models/stash.d.ts +6 -0
  174. package/dist/git/models/stash.d.ts.map +1 -0
  175. package/dist/git/models/stash.js +2 -0
  176. package/dist/git/models/stash.js.map +1 -0
  177. package/dist/git/models/status.d.ts +55 -0
  178. package/dist/git/models/status.d.ts.map +1 -0
  179. package/dist/git/models/status.js +208 -0
  180. package/dist/git/models/status.js.map +1 -0
  181. package/dist/git/models/statusFile.d.ts +28 -0
  182. package/dist/git/models/statusFile.d.ts.map +1 -0
  183. package/dist/git/models/statusFile.js +114 -0
  184. package/dist/git/models/statusFile.js.map +1 -0
  185. package/dist/git/models/tag.d.ts +26 -0
  186. package/dist/git/models/tag.d.ts.map +1 -0
  187. package/dist/git/models/tag.js +73 -0
  188. package/dist/git/models/tag.js.map +1 -0
  189. package/dist/git/models/tree.d.ts +10 -0
  190. package/dist/git/models/tree.d.ts.map +1 -0
  191. package/dist/git/models/tree.js +2 -0
  192. package/dist/git/models/tree.js.map +1 -0
  193. package/dist/git/models/user.d.ts +7 -0
  194. package/dist/git/models/user.d.ts.map +1 -0
  195. package/dist/git/models/user.js +2 -0
  196. package/dist/git/models/user.js.map +1 -0
  197. package/dist/git/models/worktree.d.ts +51 -0
  198. package/dist/git/models/worktree.d.ts.map +1 -0
  199. package/dist/git/models/worktree.js +136 -0
  200. package/dist/git/models/worktree.js.map +1 -0
  201. package/dist/git/parsers/diffParser.d.ts +45 -0
  202. package/dist/git/parsers/diffParser.d.ts.map +1 -0
  203. package/dist/git/parsers/diffParser.js +628 -0
  204. package/dist/git/parsers/diffParser.js.map +1 -0
  205. package/dist/git/parsers/rebaseTodoParser.d.ts +15 -0
  206. package/dist/git/parsers/rebaseTodoParser.d.ts.map +1 -0
  207. package/dist/git/parsers/rebaseTodoParser.js +215 -0
  208. package/dist/git/parsers/rebaseTodoParser.js.map +1 -0
  209. package/dist/git/providers/blame.d.ts +15 -0
  210. package/dist/git/providers/blame.d.ts.map +1 -0
  211. package/dist/git/providers/blame.js +2 -0
  212. package/dist/git/providers/blame.js.map +1 -0
  213. package/dist/git/providers/branches.d.ts +80 -0
  214. package/dist/git/providers/branches.d.ts.map +1 -0
  215. package/dist/git/providers/branches.js +2 -0
  216. package/dist/git/providers/branches.js.map +1 -0
  217. package/dist/git/providers/commits.d.ts +102 -0
  218. package/dist/git/providers/commits.d.ts.map +1 -0
  219. package/dist/git/providers/commits.js +2 -0
  220. package/dist/git/providers/commits.js.map +1 -0
  221. package/dist/git/providers/config.d.ts +64 -0
  222. package/dist/git/providers/config.d.ts.map +1 -0
  223. package/dist/git/providers/config.js +2 -0
  224. package/dist/git/providers/config.js.map +1 -0
  225. package/dist/git/providers/contributors.d.ts +26 -0
  226. package/dist/git/providers/contributors.d.ts.map +1 -0
  227. package/dist/git/providers/contributors.js +2 -0
  228. package/dist/git/providers/contributors.js.map +1 -0
  229. package/dist/git/providers/diff.d.ts +73 -0
  230. package/dist/git/providers/diff.d.ts.map +1 -0
  231. package/dist/git/providers/diff.js +2 -0
  232. package/dist/git/providers/diff.js.map +1 -0
  233. package/dist/git/providers/graph.d.ts +20 -0
  234. package/dist/git/providers/graph.d.ts.map +1 -0
  235. package/dist/git/providers/graph.js +2 -0
  236. package/dist/git/providers/graph.js.map +1 -0
  237. package/dist/git/providers/operations.d.ts +65 -0
  238. package/dist/git/providers/operations.d.ts.map +1 -0
  239. package/dist/git/providers/operations.js +2 -0
  240. package/dist/git/providers/operations.js.map +1 -0
  241. package/dist/git/providers/patch.d.ts +27 -0
  242. package/dist/git/providers/patch.d.ts.map +1 -0
  243. package/dist/git/providers/patch.js +2 -0
  244. package/dist/git/providers/patch.js.map +1 -0
  245. package/dist/git/providers/pausedOperations.d.ts +11 -0
  246. package/dist/git/providers/pausedOperations.d.ts.map +1 -0
  247. package/dist/git/providers/pausedOperations.js +2 -0
  248. package/dist/git/providers/pausedOperations.js.map +1 -0
  249. package/dist/git/providers/provider.d.ts +57 -0
  250. package/dist/git/providers/provider.d.ts.map +1 -0
  251. package/dist/git/providers/provider.js +2 -0
  252. package/dist/git/providers/provider.js.map +1 -0
  253. package/dist/git/providers/refs.d.ts +22 -0
  254. package/dist/git/providers/refs.d.ts.map +1 -0
  255. package/dist/git/providers/refs.js +2 -0
  256. package/dist/git/providers/refs.js.map +1 -0
  257. package/dist/git/providers/remotes.d.ts +25 -0
  258. package/dist/git/providers/remotes.d.ts.map +1 -0
  259. package/dist/git/providers/remotes.js +2 -0
  260. package/dist/git/providers/remotes.js.map +1 -0
  261. package/dist/git/providers/revision.d.ts +28 -0
  262. package/dist/git/providers/revision.d.ts.map +1 -0
  263. package/dist/git/providers/revision.js +2 -0
  264. package/dist/git/providers/revision.js.map +1 -0
  265. package/dist/git/providers/shared/remotes.d.ts +25 -0
  266. package/dist/git/providers/shared/remotes.d.ts.map +1 -0
  267. package/dist/git/providers/shared/remotes.js +79 -0
  268. package/dist/git/providers/shared/remotes.js.map +1 -0
  269. package/dist/git/providers/staging.d.ts +22 -0
  270. package/dist/git/providers/staging.d.ts.map +1 -0
  271. package/dist/git/providers/staging.js +2 -0
  272. package/dist/git/providers/staging.js.map +1 -0
  273. package/dist/git/providers/stash.d.ts +41 -0
  274. package/dist/git/providers/stash.d.ts.map +1 -0
  275. package/dist/git/providers/stash.js +2 -0
  276. package/dist/git/providers/stash.js.map +1 -0
  277. package/dist/git/providers/status.d.ts +30 -0
  278. package/dist/git/providers/status.d.ts.map +1 -0
  279. package/dist/git/providers/status.js +2 -0
  280. package/dist/git/providers/status.js.map +1 -0
  281. package/dist/git/providers/tags.d.ts +18 -0
  282. package/dist/git/providers/tags.d.ts.map +1 -0
  283. package/dist/git/providers/tags.js +2 -0
  284. package/dist/git/providers/tags.js.map +1 -0
  285. package/dist/git/providers/types.d.ts +28 -0
  286. package/dist/git/providers/types.d.ts.map +1 -0
  287. package/dist/git/providers/types.js +2 -0
  288. package/dist/git/providers/types.js.map +1 -0
  289. package/dist/git/providers/worktrees.d.ts +23 -0
  290. package/dist/git/providers/worktrees.d.ts.map +1 -0
  291. package/dist/git/providers/worktrees.js +2 -0
  292. package/dist/git/providers/worktrees.js.map +1 -0
  293. package/dist/git/remotes/azure-devops.d.ts +43 -0
  294. package/dist/git/remotes/azure-devops.d.ts.map +1 -0
  295. package/dist/git/remotes/azure-devops.js +248 -0
  296. package/dist/git/remotes/azure-devops.js.map +1 -0
  297. package/dist/git/remotes/bitbucket-server.d.ts +32 -0
  298. package/dist/git/remotes/bitbucket-server.d.ts.map +1 -0
  299. package/dist/git/remotes/bitbucket-server.js +145 -0
  300. package/dist/git/remotes/bitbucket-server.js.map +1 -0
  301. package/dist/git/remotes/bitbucket.d.ts +29 -0
  302. package/dist/git/remotes/bitbucket.d.ts.map +1 -0
  303. package/dist/git/remotes/bitbucket.js +114 -0
  304. package/dist/git/remotes/bitbucket.js.map +1 -0
  305. package/dist/git/remotes/custom.d.ts +26 -0
  306. package/dist/git/remotes/custom.d.ts.map +1 -0
  307. package/dist/git/remotes/custom.js +111 -0
  308. package/dist/git/remotes/custom.js.map +1 -0
  309. package/dist/git/remotes/gerrit.d.ts +31 -0
  310. package/dist/git/remotes/gerrit.d.ts.map +1 -0
  311. package/dist/git/remotes/gerrit.js +146 -0
  312. package/dist/git/remotes/gerrit.js.map +1 -0
  313. package/dist/git/remotes/gitea.d.ts +30 -0
  314. package/dist/git/remotes/gitea.d.ts.map +1 -0
  315. package/dist/git/remotes/gitea.js +148 -0
  316. package/dist/git/remotes/gitea.js.map +1 -0
  317. package/dist/git/remotes/github.d.ts +41 -0
  318. package/dist/git/remotes/github.d.ts.map +1 -0
  319. package/dist/git/remotes/github.js +198 -0
  320. package/dist/git/remotes/github.js.map +1 -0
  321. package/dist/git/remotes/gitlab.d.ts +35 -0
  322. package/dist/git/remotes/gitlab.d.ts.map +1 -0
  323. package/dist/git/remotes/gitlab.js +232 -0
  324. package/dist/git/remotes/gitlab.js.map +1 -0
  325. package/dist/git/remotes/google-source.d.ts +17 -0
  326. package/dist/git/remotes/google-source.d.ts.map +1 -0
  327. package/dist/git/remotes/google-source.js +32 -0
  328. package/dist/git/remotes/google-source.js.map +1 -0
  329. package/dist/git/remotes/matcher.d.ts +35 -0
  330. package/dist/git/remotes/matcher.d.ts.map +1 -0
  331. package/dist/git/remotes/matcher.js +140 -0
  332. package/dist/git/remotes/matcher.js.map +1 -0
  333. package/dist/git/repositoryService.d.ts +127 -0
  334. package/dist/git/repositoryService.d.ts.map +1 -0
  335. package/dist/git/repositoryService.js +54 -0
  336. package/dist/git/repositoryService.js.map +1 -0
  337. package/dist/git/service.d.ts +112 -0
  338. package/dist/git/service.d.ts.map +1 -0
  339. package/dist/git/service.js +303 -0
  340. package/dist/git/service.js.map +1 -0
  341. package/dist/git/utils/autolink.utils.d.ts +13 -0
  342. package/dist/git/utils/autolink.utils.d.ts.map +1 -0
  343. package/dist/git/utils/autolink.utils.js +147 -0
  344. package/dist/git/utils/autolink.utils.js.map +1 -0
  345. package/dist/git/utils/blame.utils.d.ts +47 -0
  346. package/dist/git/utils/blame.utils.d.ts.map +1 -0
  347. package/dist/git/utils/blame.utils.js +239 -0
  348. package/dist/git/utils/blame.utils.js.map +1 -0
  349. package/dist/git/utils/branch.utils.d.ts +22 -0
  350. package/dist/git/utils/branch.utils.d.ts.map +1 -0
  351. package/dist/git/utils/branch.utils.js +122 -0
  352. package/dist/git/utils/branch.utils.js.map +1 -0
  353. package/dist/git/utils/commit.utils.d.ts +26 -0
  354. package/dist/git/utils/commit.utils.d.ts.map +1 -0
  355. package/dist/git/utils/commit.utils.js +54 -0
  356. package/dist/git/utils/commit.utils.js.map +1 -0
  357. package/dist/git/utils/contributor.utils.d.ts +15 -0
  358. package/dist/git/utils/contributor.utils.d.ts.map +1 -0
  359. package/dist/git/utils/contributor.utils.js +55 -0
  360. package/dist/git/utils/contributor.utils.js.map +1 -0
  361. package/dist/git/utils/fetch.utils.d.ts +20 -0
  362. package/dist/git/utils/fetch.utils.d.ts.map +1 -0
  363. package/dist/git/utils/fetch.utils.js +47 -0
  364. package/dist/git/utils/fetch.utils.js.map +1 -0
  365. package/dist/git/utils/fileStatus.utils.d.ts +24 -0
  366. package/dist/git/utils/fileStatus.utils.d.ts.map +1 -0
  367. package/dist/git/utils/fileStatus.utils.js +45 -0
  368. package/dist/git/utils/fileStatus.utils.js.map +1 -0
  369. package/dist/git/utils/issue.utils.d.ts +4 -0
  370. package/dist/git/utils/issue.utils.d.ts.map +1 -0
  371. package/dist/git/utils/issue.utils.js +76 -0
  372. package/dist/git/utils/issue.utils.js.map +1 -0
  373. package/dist/git/utils/issueOrPullRequest.utils.d.ts +3 -0
  374. package/dist/git/utils/issueOrPullRequest.utils.d.ts.map +1 -0
  375. package/dist/git/utils/issueOrPullRequest.utils.js +22 -0
  376. package/dist/git/utils/issueOrPullRequest.utils.js.map +1 -0
  377. package/dist/git/utils/mergeConflicts.utils.d.ts +3 -0
  378. package/dist/git/utils/mergeConflicts.utils.d.ts.map +1 -0
  379. package/dist/git/utils/mergeConflicts.utils.js +19 -0
  380. package/dist/git/utils/mergeConflicts.utils.js.map +1 -0
  381. package/dist/git/utils/pausedOperationStatus.utils.d.ts +58 -0
  382. package/dist/git/utils/pausedOperationStatus.utils.d.ts.map +1 -0
  383. package/dist/git/utils/pausedOperationStatus.utils.js +133 -0
  384. package/dist/git/utils/pausedOperationStatus.utils.js.map +1 -0
  385. package/dist/git/utils/pullRequest.utils.d.ts +12 -0
  386. package/dist/git/utils/pullRequest.utils.d.ts.map +1 -0
  387. package/dist/git/utils/pullRequest.utils.js +124 -0
  388. package/dist/git/utils/pullRequest.utils.js.map +1 -0
  389. package/dist/git/utils/rebase.utils.d.ts +19 -0
  390. package/dist/git/utils/rebase.utils.d.ts.map +1 -0
  391. package/dist/git/utils/rebase.utils.js +93 -0
  392. package/dist/git/utils/rebase.utils.js.map +1 -0
  393. package/dist/git/utils/reference.utils.d.ts +56 -0
  394. package/dist/git/utils/reference.utils.d.ts.map +1 -0
  395. package/dist/git/utils/reference.utils.js +191 -0
  396. package/dist/git/utils/reference.utils.js.map +1 -0
  397. package/dist/git/utils/remote.utils.d.ts +17 -0
  398. package/dist/git/utils/remote.utils.d.ts.map +1 -0
  399. package/dist/git/utils/remote.utils.js +124 -0
  400. package/dist/git/utils/remote.utils.js.map +1 -0
  401. package/dist/git/utils/repository.utils.d.ts +5 -0
  402. package/dist/git/utils/repository.utils.d.ts.map +1 -0
  403. package/dist/git/utils/repository.utils.js +15 -0
  404. package/dist/git/utils/repository.utils.js.map +1 -0
  405. package/dist/git/utils/resourceDescriptor.utils.d.ts +4 -0
  406. package/dist/git/utils/resourceDescriptor.utils.d.ts.map +1 -0
  407. package/dist/git/utils/resourceDescriptor.utils.js +17 -0
  408. package/dist/git/utils/resourceDescriptor.utils.js.map +1 -0
  409. package/dist/git/utils/revision.utils.d.ts +36 -0
  410. package/dist/git/utils/revision.utils.d.ts.map +1 -0
  411. package/dist/git/utils/revision.utils.js +114 -0
  412. package/dist/git/utils/revision.utils.js.map +1 -0
  413. package/dist/git/utils/search.utils.d.ts +15 -0
  414. package/dist/git/utils/search.utils.d.ts.map +1 -0
  415. package/dist/git/utils/search.utils.js +422 -0
  416. package/dist/git/utils/search.utils.js.map +1 -0
  417. package/dist/git/utils/sorting.d.ts +34 -0
  418. package/dist/git/utils/sorting.d.ts.map +1 -0
  419. package/dist/git/utils/sorting.js +203 -0
  420. package/dist/git/utils/sorting.js.map +1 -0
  421. package/dist/git/utils/status.utils.d.ts +20 -0
  422. package/dist/git/utils/status.utils.d.ts.map +1 -0
  423. package/dist/git/utils/status.utils.js +82 -0
  424. package/dist/git/utils/status.utils.js.map +1 -0
  425. package/dist/git/utils/statusFile.utils.d.ts +8 -0
  426. package/dist/git/utils/statusFile.utils.d.ts.map +1 -0
  427. package/dist/git/utils/statusFile.utils.js +76 -0
  428. package/dist/git/utils/statusFile.utils.js.map +1 -0
  429. package/dist/git/utils/tag.utils.d.ts +7 -0
  430. package/dist/git/utils/tag.utils.d.ts.map +1 -0
  431. package/dist/git/utils/tag.utils.js +13 -0
  432. package/dist/git/utils/tag.utils.js.map +1 -0
  433. package/dist/git/utils/tooltip.utils.d.ts +14 -0
  434. package/dist/git/utils/tooltip.utils.d.ts.map +1 -0
  435. package/dist/git/utils/tooltip.utils.js +29 -0
  436. package/dist/git/utils/tooltip.utils.js.map +1 -0
  437. package/dist/git/utils/uriAuthority.d.ts +16 -0
  438. package/dist/git/utils/uriAuthority.d.ts.map +1 -0
  439. package/dist/git/utils/uriAuthority.js +20 -0
  440. package/dist/git/utils/uriAuthority.js.map +1 -0
  441. package/dist/git/utils/user.utils.d.ts +3 -0
  442. package/dist/git/utils/user.utils.d.ts.map +1 -0
  443. package/dist/git/utils/user.utils.js +12 -0
  444. package/dist/git/utils/user.utils.js.map +1 -0
  445. package/dist/git/utils/worktree.utils.d.ts +7 -0
  446. package/dist/git/utils/worktree.utils.d.ts.map +1 -0
  447. package/dist/git/utils/worktree.utils.js +15 -0
  448. package/dist/git/utils/worktree.utils.js.map +1 -0
  449. package/dist/git/watching/changeEvent.d.ts +47 -0
  450. package/dist/git/watching/changeEvent.d.ts.map +1 -0
  451. package/dist/git/watching/changeEvent.js +69 -0
  452. package/dist/git/watching/changeEvent.js.map +1 -0
  453. package/dist/git/watching/classifyChange.d.ts +16 -0
  454. package/dist/git/watching/classifyChange.d.ts.map +1 -0
  455. package/dist/git/watching/classifyChange.js +61 -0
  456. package/dist/git/watching/classifyChange.js.map +1 -0
  457. package/dist/git/watching/gitIgnoreFilter.d.ts +58 -0
  458. package/dist/git/watching/gitIgnoreFilter.d.ts.map +1 -0
  459. package/dist/git/watching/gitIgnoreFilter.js +109 -0
  460. package/dist/git/watching/gitIgnoreFilter.js.map +1 -0
  461. package/dist/git/watching/initWatcher.d.ts +33 -0
  462. package/dist/git/watching/initWatcher.d.ts.map +1 -0
  463. package/dist/git/watching/initWatcher.js +59 -0
  464. package/dist/git/watching/initWatcher.js.map +1 -0
  465. package/dist/git/watching/provider.d.ts +23 -0
  466. package/dist/git/watching/provider.d.ts.map +1 -0
  467. package/dist/git/watching/provider.js +2 -0
  468. package/dist/git/watching/provider.js.map +1 -0
  469. package/dist/git/watching/watchGroup.d.ts +54 -0
  470. package/dist/git/watching/watchGroup.d.ts.map +1 -0
  471. package/dist/git/watching/watchGroup.js +139 -0
  472. package/dist/git/watching/watchGroup.js.map +1 -0
  473. package/dist/git/watching/watchService.d.ts +79 -0
  474. package/dist/git/watching/watchService.d.ts.map +1 -0
  475. package/dist/git/watching/watchService.js +282 -0
  476. package/dist/git/watching/watchService.js.map +1 -0
  477. package/dist/git/watching/watchSession.d.ts +118 -0
  478. package/dist/git/watching/watchSession.d.ts.map +1 -0
  479. package/dist/git/watching/watchSession.js +274 -0
  480. package/dist/git/watching/watchSession.js.map +1 -0
  481. package/dist/git/watching/watcherPatterns.d.ts +21 -0
  482. package/dist/git/watching/watcherPatterns.d.ts.map +1 -0
  483. package/dist/git/watching/watcherPatterns.js +36 -0
  484. package/dist/git/watching/watcherPatterns.js.map +1 -0
  485. package/dist/git-cli/cliGitProvider.d.ts +133 -0
  486. package/dist/git-cli/cliGitProvider.d.ts.map +1 -0
  487. package/dist/git-cli/cliGitProvider.js +273 -0
  488. package/dist/git-cli/cliGitProvider.js.map +1 -0
  489. package/dist/git-cli/exec/exec.d.ts +4 -0
  490. package/dist/git-cli/exec/exec.d.ts.map +1 -0
  491. package/dist/git-cli/exec/exec.errors.d.ts +2 -0
  492. package/dist/git-cli/exec/exec.errors.d.ts.map +1 -0
  493. package/dist/git-cli/exec/exec.errors.js +2 -0
  494. package/dist/git-cli/exec/exec.errors.js.map +1 -0
  495. package/dist/git-cli/exec/exec.js +3 -0
  496. package/dist/git-cli/exec/exec.js.map +1 -0
  497. package/dist/git-cli/exec/exec.types.d.ts +2 -0
  498. package/dist/git-cli/exec/exec.types.d.ts.map +1 -0
  499. package/dist/git-cli/exec/exec.types.js +2 -0
  500. package/dist/git-cli/exec/exec.types.js.map +1 -0
  501. package/dist/git-cli/exec/features.d.ts +3 -0
  502. package/dist/git-cli/exec/features.d.ts.map +1 -0
  503. package/dist/git-cli/exec/features.js +2 -0
  504. package/dist/git-cli/exec/features.js.map +1 -0
  505. package/dist/git-cli/exec/git.d.ts +228 -0
  506. package/dist/git-cli/exec/git.d.ts.map +1 -0
  507. package/dist/git-cli/exec/git.js +823 -0
  508. package/dist/git-cli/exec/git.js.map +1 -0
  509. package/dist/git-cli/exec/gitQueue.d.ts +68 -0
  510. package/dist/git-cli/exec/gitQueue.d.ts.map +1 -0
  511. package/dist/git-cli/exec/gitQueue.js +207 -0
  512. package/dist/git-cli/exec/gitQueue.js.map +1 -0
  513. package/dist/git-cli/exec/locator.d.ts +14 -0
  514. package/dist/git-cli/exec/locator.d.ts.map +1 -0
  515. package/dist/git-cli/exec/locator.js +133 -0
  516. package/dist/git-cli/exec/locator.js.map +1 -0
  517. package/dist/git-cli/parsers/blameParser.d.ts +30 -0
  518. package/dist/git-cli/parsers/blameParser.d.ts.map +1 -0
  519. package/dist/git-cli/parsers/blameParser.js +339 -0
  520. package/dist/git-cli/parsers/blameParser.js.map +1 -0
  521. package/dist/git-cli/parsers/indexParser.d.ts +4 -0
  522. package/dist/git-cli/parsers/indexParser.d.ts.map +1 -0
  523. package/dist/git-cli/parsers/indexParser.js +226 -0
  524. package/dist/git-cli/parsers/indexParser.js.map +1 -0
  525. package/dist/git-cli/parsers/logParser.d.ts +178 -0
  526. package/dist/git-cli/parsers/logParser.d.ts.map +1 -0
  527. package/dist/git-cli/parsers/logParser.js +1166 -0
  528. package/dist/git-cli/parsers/logParser.js.map +1 -0
  529. package/dist/git-cli/parsers/mergeTreeParser.d.ts +7 -0
  530. package/dist/git-cli/parsers/mergeTreeParser.d.ts.map +1 -0
  531. package/dist/git-cli/parsers/mergeTreeParser.js +74 -0
  532. package/dist/git-cli/parsers/mergeTreeParser.js.map +1 -0
  533. package/dist/git-cli/parsers/refParser.d.ts +34 -0
  534. package/dist/git-cli/parsers/refParser.d.ts.map +1 -0
  535. package/dist/git-cli/parsers/refParser.js +148 -0
  536. package/dist/git-cli/parsers/refParser.js.map +1 -0
  537. package/dist/git-cli/parsers/reflogParser.d.ts +12 -0
  538. package/dist/git-cli/parsers/reflogParser.d.ts.map +1 -0
  539. package/dist/git-cli/parsers/reflogParser.js +181 -0
  540. package/dist/git-cli/parsers/reflogParser.js.map +1 -0
  541. package/dist/git-cli/parsers/remoteParser.d.ts +4 -0
  542. package/dist/git-cli/parsers/remoteParser.d.ts.map +1 -0
  543. package/dist/git-cli/parsers/remoteParser.js +128 -0
  544. package/dist/git-cli/parsers/remoteParser.js.map +1 -0
  545. package/dist/git-cli/parsers/shortlogParser.d.ts +4 -0
  546. package/dist/git-cli/parsers/shortlogParser.d.ts.map +1 -0
  547. package/dist/git-cli/parsers/shortlogParser.js +51 -0
  548. package/dist/git-cli/parsers/shortlogParser.js.map +1 -0
  549. package/dist/git-cli/parsers/signatureParser.d.ts +21 -0
  550. package/dist/git-cli/parsers/signatureParser.d.ts.map +1 -0
  551. package/dist/git-cli/parsers/signatureParser.js +139 -0
  552. package/dist/git-cli/parsers/signatureParser.js.map +1 -0
  553. package/dist/git-cli/parsers/statusParser.d.ts +4 -0
  554. package/dist/git-cli/parsers/statusParser.d.ts.map +1 -0
  555. package/dist/git-cli/parsers/statusParser.js +216 -0
  556. package/dist/git-cli/parsers/statusParser.js.map +1 -0
  557. package/dist/git-cli/parsers/treeParser.d.ts +3 -0
  558. package/dist/git-cli/parsers/treeParser.d.ts.map +1 -0
  559. package/dist/git-cli/parsers/treeParser.js +110 -0
  560. package/dist/git-cli/parsers/treeParser.js.map +1 -0
  561. package/dist/git-cli/parsers/worktreeParser.d.ts +5 -0
  562. package/dist/git-cli/parsers/worktreeParser.d.ts.map +1 -0
  563. package/dist/git-cli/parsers/worktreeParser.js +136 -0
  564. package/dist/git-cli/parsers/worktreeParser.js.map +1 -0
  565. package/dist/git-cli/providers/blame.d.ts +26 -0
  566. package/dist/git-cli/providers/blame.d.ts.map +1 -0
  567. package/dist/git-cli/providers/blame.js +426 -0
  568. package/dist/git-cli/providers/blame.js.map +1 -0
  569. package/dist/git-cli/providers/branches.d.ts +87 -0
  570. package/dist/git-cli/providers/branches.d.ts.map +1 -0
  571. package/dist/git-cli/providers/branches.js +1153 -0
  572. package/dist/git-cli/providers/branches.js.map +1 -0
  573. package/dist/git-cli/providers/commitFilesetUtils.d.ts +4 -0
  574. package/dist/git-cli/providers/commitFilesetUtils.d.ts.map +1 -0
  575. package/dist/git-cli/providers/commitFilesetUtils.js +20 -0
  576. package/dist/git-cli/providers/commitFilesetUtils.js.map +1 -0
  577. package/dist/git-cli/providers/commits.d.ts +49 -0
  578. package/dist/git-cli/providers/commits.d.ts.map +1 -0
  579. package/dist/git-cli/providers/commits.js +1151 -0
  580. package/dist/git-cli/providers/commits.js.map +1 -0
  581. package/dist/git-cli/providers/config.d.ts +74 -0
  582. package/dist/git-cli/providers/config.d.ts.map +1 -0
  583. package/dist/git-cli/providers/config.js +588 -0
  584. package/dist/git-cli/providers/config.js.map +1 -0
  585. package/dist/git-cli/providers/contributors.d.ts +31 -0
  586. package/dist/git-cli/providers/contributors.d.ts.map +1 -0
  587. package/dist/git-cli/providers/contributors.js +350 -0
  588. package/dist/git-cli/providers/contributors.js.map +1 -0
  589. package/dist/git-cli/providers/diff.d.ts +99 -0
  590. package/dist/git-cli/providers/diff.d.ts.map +1 -0
  591. package/dist/git-cli/providers/diff.js +786 -0
  592. package/dist/git-cli/providers/diff.js.map +1 -0
  593. package/dist/git-cli/providers/graph.d.ts +31 -0
  594. package/dist/git-cli/providers/graph.d.ts.map +1 -0
  595. package/dist/git-cli/providers/graph.js +703 -0
  596. package/dist/git-cli/providers/graph.js.map +1 -0
  597. package/dist/git-cli/providers/operations.d.ts +75 -0
  598. package/dist/git-cli/providers/operations.d.ts.map +1 -0
  599. package/dist/git-cli/providers/operations.js +564 -0
  600. package/dist/git-cli/providers/operations.js.map +1 -0
  601. package/dist/git-cli/providers/patch.d.ts +38 -0
  602. package/dist/git-cli/providers/patch.d.ts.map +1 -0
  603. package/dist/git-cli/providers/patch.js +324 -0
  604. package/dist/git-cli/providers/patch.js.map +1 -0
  605. package/dist/git-cli/providers/pausedOperations.d.ts +22 -0
  606. package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -0
  607. package/dist/git-cli/providers/pausedOperations.js +411 -0
  608. package/dist/git-cli/providers/pausedOperations.js.map +1 -0
  609. package/dist/git-cli/providers/refs.d.ts +32 -0
  610. package/dist/git-cli/providers/refs.d.ts.map +1 -0
  611. package/dist/git-cli/providers/refs.js +149 -0
  612. package/dist/git-cli/providers/refs.js.map +1 -0
  613. package/dist/git-cli/providers/remotes.d.ts +24 -0
  614. package/dist/git-cli/providers/remotes.d.ts.map +1 -0
  615. package/dist/git-cli/providers/remotes.js +94 -0
  616. package/dist/git-cli/providers/remotes.js.map +1 -0
  617. package/dist/git-cli/providers/revision.d.ts +27 -0
  618. package/dist/git-cli/providers/revision.d.ts.map +1 -0
  619. package/dist/git-cli/providers/revision.js +269 -0
  620. package/dist/git-cli/providers/revision.js.map +1 -0
  621. package/dist/git-cli/providers/staging.d.ts +24 -0
  622. package/dist/git-cli/providers/staging.d.ts.map +1 -0
  623. package/dist/git-cli/providers/staging.js +138 -0
  624. package/dist/git-cli/providers/staging.js.map +1 -0
  625. package/dist/git-cli/providers/stash.d.ts +55 -0
  626. package/dist/git-cli/providers/stash.d.ts.map +1 -0
  627. package/dist/git-cli/providers/stash.js +430 -0
  628. package/dist/git-cli/providers/stash.js.map +1 -0
  629. package/dist/git-cli/providers/status.d.ts +38 -0
  630. package/dist/git-cli/providers/status.d.ts.map +1 -0
  631. package/dist/git-cli/providers/status.js +352 -0
  632. package/dist/git-cli/providers/status.js.map +1 -0
  633. package/dist/git-cli/providers/tags.d.ts +29 -0
  634. package/dist/git-cli/providers/tags.d.ts.map +1 -0
  635. package/dist/git-cli/providers/tags.js +190 -0
  636. package/dist/git-cli/providers/tags.js.map +1 -0
  637. package/dist/git-cli/providers/worktrees.d.ts +33 -0
  638. package/dist/git-cli/providers/worktrees.d.ts.map +1 -0
  639. package/dist/git-cli/providers/worktrees.js +175 -0
  640. package/dist/git-cli/providers/worktrees.js.map +1 -0
  641. package/dist/git-cli/service.d.ts +52 -0
  642. package/dist/git-cli/service.d.ts.map +1 -0
  643. package/dist/git-cli/service.js +35 -0
  644. package/dist/git-cli/service.js.map +1 -0
  645. package/dist/plus/ai/constants.d.ts +21 -0
  646. package/dist/plus/ai/constants.d.ts.map +1 -0
  647. package/dist/plus/ai/constants.js +99 -0
  648. package/dist/plus/ai/constants.js.map +1 -0
  649. package/dist/plus/ai/errors.d.ts +25 -0
  650. package/dist/plus/ai/errors.d.ts.map +1 -0
  651. package/dist/plus/ai/errors.js +76 -0
  652. package/dist/plus/ai/errors.js.map +1 -0
  653. package/dist/plus/ai/models/conversation.d.ts +12 -0
  654. package/dist/plus/ai/models/conversation.d.ts.map +1 -0
  655. package/dist/plus/ai/models/conversation.js +27 -0
  656. package/dist/plus/ai/models/conversation.js.map +1 -0
  657. package/dist/plus/ai/models/model.d.ts +34 -0
  658. package/dist/plus/ai/models/model.d.ts.map +1 -0
  659. package/dist/plus/ai/models/model.js +379 -0
  660. package/dist/plus/ai/models/model.js.map +1 -0
  661. package/dist/plus/ai/models/promptTemplates.d.ts +74 -0
  662. package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -0
  663. package/dist/plus/ai/models/promptTemplates.js +2 -0
  664. package/dist/plus/ai/models/promptTemplates.js.map +1 -0
  665. package/dist/plus/ai/models/provider.d.ts +46 -0
  666. package/dist/plus/ai/models/provider.d.ts.map +1 -0
  667. package/dist/plus/ai/models/provider.js +2 -0
  668. package/dist/plus/ai/models/provider.js.map +1 -0
  669. package/dist/plus/ai/models/results.d.ts +5 -0
  670. package/dist/plus/ai/models/results.d.ts.map +1 -0
  671. package/dist/plus/ai/models/results.js +2 -0
  672. package/dist/plus/ai/models/results.js.map +1 -0
  673. package/dist/plus/ai/prompts.d.ts +13 -0
  674. package/dist/plus/ai/prompts.d.ts.map +1 -0
  675. package/dist/plus/ai/prompts.js +517 -0
  676. package/dist/plus/ai/prompts.js.map +1 -0
  677. package/dist/plus/ai/providers/anthropicProvider.d.ts +21 -0
  678. package/dist/plus/ai/providers/anthropicProvider.d.ts.map +1 -0
  679. package/dist/plus/ai/providers/anthropicProvider.js +257 -0
  680. package/dist/plus/ai/providers/anthropicProvider.js.map +1 -0
  681. package/dist/plus/ai/providers/azureProvider.d.ts +18 -0
  682. package/dist/plus/ai/providers/azureProvider.d.ts.map +1 -0
  683. package/dist/plus/ai/providers/azureProvider.js +54 -0
  684. package/dist/plus/ai/providers/azureProvider.js.map +1 -0
  685. package/dist/plus/ai/providers/context.d.ts +23 -0
  686. package/dist/plus/ai/providers/context.d.ts.map +1 -0
  687. package/dist/plus/ai/providers/context.js +2 -0
  688. package/dist/plus/ai/providers/context.js.map +1 -0
  689. package/dist/plus/ai/providers/deepSeekProvider.d.ts +15 -0
  690. package/dist/plus/ai/providers/deepSeekProvider.d.ts.map +1 -0
  691. package/dist/plus/ai/providers/deepSeekProvider.js +35 -0
  692. package/dist/plus/ai/providers/deepSeekProvider.js.map +1 -0
  693. package/dist/plus/ai/providers/geminiProvider.d.ts +15 -0
  694. package/dist/plus/ai/providers/geminiProvider.d.ts.map +1 -0
  695. package/dist/plus/ai/providers/geminiProvider.js +195 -0
  696. package/dist/plus/ai/providers/geminiProvider.js.map +1 -0
  697. package/dist/plus/ai/providers/githubModelsProvider.d.ts +19 -0
  698. package/dist/plus/ai/providers/githubModelsProvider.d.ts.map +1 -0
  699. package/dist/plus/ai/providers/githubModelsProvider.js +51 -0
  700. package/dist/plus/ai/providers/githubModelsProvider.js.map +1 -0
  701. package/dist/plus/ai/providers/gitkrakenProvider.d.ts +18 -0
  702. package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -0
  703. package/dist/plus/ai/providers/gitkrakenProvider.js +151 -0
  704. package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -0
  705. package/dist/plus/ai/providers/huggingFaceProvider.d.ts +15 -0
  706. package/dist/plus/ai/providers/huggingFaceProvider.d.ts.map +1 -0
  707. package/dist/plus/ai/providers/huggingFaceProvider.js +39 -0
  708. package/dist/plus/ai/providers/huggingFaceProvider.js.map +1 -0
  709. package/dist/plus/ai/providers/mistralProvider.d.ts +20 -0
  710. package/dist/plus/ai/providers/mistralProvider.d.ts.map +1 -0
  711. package/dist/plus/ai/providers/mistralProvider.js +118 -0
  712. package/dist/plus/ai/providers/mistralProvider.js.map +1 -0
  713. package/dist/plus/ai/providers/ollamaProvider.d.ts +25 -0
  714. package/dist/plus/ai/providers/ollamaProvider.d.ts.map +1 -0
  715. package/dist/plus/ai/providers/ollamaProvider.js +155 -0
  716. package/dist/plus/ai/providers/ollamaProvider.js.map +1 -0
  717. package/dist/plus/ai/providers/openAICompatibleProvider.d.ts +17 -0
  718. package/dist/plus/ai/providers/openAICompatibleProvider.d.ts.map +1 -0
  719. package/dist/plus/ai/providers/openAICompatibleProvider.js +47 -0
  720. package/dist/plus/ai/providers/openAICompatibleProvider.js.map +1 -0
  721. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +39 -0
  722. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -0
  723. package/dist/plus/ai/providers/openAICompatibleProviderBase.js +218 -0
  724. package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -0
  725. package/dist/plus/ai/providers/openRouterProvider.d.ts +17 -0
  726. package/dist/plus/ai/providers/openRouterProvider.d.ts.map +1 -0
  727. package/dist/plus/ai/providers/openRouterProvider.js +57 -0
  728. package/dist/plus/ai/providers/openRouterProvider.js.map +1 -0
  729. package/dist/plus/ai/providers/openaiProvider.d.ts +16 -0
  730. package/dist/plus/ai/providers/openaiProvider.d.ts.map +1 -0
  731. package/dist/plus/ai/providers/openaiProvider.js +34 -0
  732. package/dist/plus/ai/providers/openaiProvider.js.map +1 -0
  733. package/dist/plus/ai/providers/xaiProvider.d.ts +15 -0
  734. package/dist/plus/ai/providers/xaiProvider.d.ts.map +1 -0
  735. package/dist/plus/ai/providers/xaiProvider.js +27 -0
  736. package/dist/plus/ai/providers/xaiProvider.js.map +1 -0
  737. package/dist/plus/ai/utils/ai.utils.d.ts +18 -0
  738. package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -0
  739. package/dist/plus/ai/utils/ai.utils.js +70 -0
  740. package/dist/plus/ai/utils/ai.utils.js.map +1 -0
  741. package/dist/plus/ai/utils/results.utils.d.ts +9 -0
  742. package/dist/plus/ai/utils/results.utils.d.ts.map +1 -0
  743. package/dist/plus/ai/utils/results.utils.js +44 -0
  744. package/dist/plus/ai/utils/results.utils.js.map +1 -0
  745. package/dist/plus/ai/utils/truncation.utils.d.ts +13 -0
  746. package/dist/plus/ai/utils/truncation.utils.d.ts.map +1 -0
  747. package/dist/plus/ai/utils/truncation.utils.js +228 -0
  748. package/dist/plus/ai/utils/truncation.utils.js.map +1 -0
  749. package/dist/plus/git-github/api/config.d.ts +66 -0
  750. package/dist/plus/git-github/api/config.d.ts.map +1 -0
  751. package/dist/plus/git-github/api/config.js +2 -0
  752. package/dist/plus/git-github/api/config.js.map +1 -0
  753. package/dist/plus/git-github/api/github.d.ts +178 -0
  754. package/dist/plus/git-github/api/github.d.ts.map +1 -0
  755. package/dist/plus/git-github/api/github.js +2360 -0
  756. package/dist/plus/git-github/api/github.js.map +1 -0
  757. package/dist/plus/git-github/api/github.utils.d.ts +9 -0
  758. package/dist/plus/git-github/api/github.utils.d.ts.map +1 -0
  759. package/dist/plus/git-github/api/github.utils.js +22 -0
  760. package/dist/plus/git-github/api/github.utils.js.map +1 -0
  761. package/dist/plus/git-github/api/token.d.ts +16 -0
  762. package/dist/plus/git-github/api/token.d.ts.map +1 -0
  763. package/dist/plus/git-github/api/token.js +2 -0
  764. package/dist/plus/git-github/api/token.js.map +1 -0
  765. package/dist/plus/git-github/api/tokenUtils.d.ts +7 -0
  766. package/dist/plus/git-github/api/tokenUtils.d.ts.map +1 -0
  767. package/dist/plus/git-github/api/tokenUtils.js +13 -0
  768. package/dist/plus/git-github/api/tokenUtils.js.map +1 -0
  769. package/dist/plus/git-github/api/types.d.ts +100 -0
  770. package/dist/plus/git-github/api/types.d.ts.map +1 -0
  771. package/dist/plus/git-github/api/types.js +2 -0
  772. package/dist/plus/git-github/api/types.js.map +1 -0
  773. package/dist/plus/git-github/context.d.ts +102 -0
  774. package/dist/plus/git-github/context.d.ts.map +1 -0
  775. package/dist/plus/git-github/context.js +12 -0
  776. package/dist/plus/git-github/context.js.map +1 -0
  777. package/dist/plus/git-github/models.d.ts +204 -0
  778. package/dist/plus/git-github/models.d.ts.map +1 -0
  779. package/dist/plus/git-github/models.js +229 -0
  780. package/dist/plus/git-github/models.js.map +1 -0
  781. package/dist/plus/git-github/providers/github/blame.d.ts +34 -0
  782. package/dist/plus/git-github/providers/github/blame.d.ts.map +1 -0
  783. package/dist/plus/git-github/providers/github/blame.js +155 -0
  784. package/dist/plus/git-github/providers/github/blame.js.map +1 -0
  785. package/dist/plus/git-github/providers/github/branches.d.ts +38 -0
  786. package/dist/plus/git-github/providers/github/branches.d.ts.map +1 -0
  787. package/dist/plus/git-github/providers/github/branches.js +234 -0
  788. package/dist/plus/git-github/providers/github/branches.js.map +1 -0
  789. package/dist/plus/git-github/providers/github/commits.d.ts +36 -0
  790. package/dist/plus/git-github/providers/github/commits.d.ts.map +1 -0
  791. package/dist/plus/git-github/providers/github/commits.js +560 -0
  792. package/dist/plus/git-github/providers/github/commits.js.map +1 -0
  793. package/dist/plus/git-github/providers/github/config.d.ts +11 -0
  794. package/dist/plus/git-github/providers/github/config.d.ts.map +1 -0
  795. package/dist/plus/git-github/providers/github/config.js +47 -0
  796. package/dist/plus/git-github/providers/github/config.js.map +1 -0
  797. package/dist/plus/git-github/providers/github/contributors.d.ts +27 -0
  798. package/dist/plus/git-github/providers/github/contributors.d.ts.map +1 -0
  799. package/dist/plus/git-github/providers/github/contributors.js +218 -0
  800. package/dist/plus/git-github/providers/github/contributors.js.map +1 -0
  801. package/dist/plus/git-github/providers/github/diff.d.ts +33 -0
  802. package/dist/plus/git-github/providers/github/diff.d.ts.map +1 -0
  803. package/dist/plus/git-github/providers/github/diff.js +184 -0
  804. package/dist/plus/git-github/providers/github/diff.js.map +1 -0
  805. package/dist/plus/git-github/providers/github/graph.d.ts +25 -0
  806. package/dist/plus/git-github/providers/github/graph.d.ts.map +1 -0
  807. package/dist/plus/git-github/providers/github/graph.js +372 -0
  808. package/dist/plus/git-github/providers/github/graph.js.map +1 -0
  809. package/dist/plus/git-github/providers/github/refs.d.ts +26 -0
  810. package/dist/plus/git-github/providers/github/refs.d.ts.map +1 -0
  811. package/dist/plus/git-github/providers/github/refs.js +108 -0
  812. package/dist/plus/git-github/providers/github/refs.js.map +1 -0
  813. package/dist/plus/git-github/providers/github/remotes.d.ts +9 -0
  814. package/dist/plus/git-github/providers/github/remotes.d.ts.map +1 -0
  815. package/dist/plus/git-github/providers/github/remotes.js +37 -0
  816. package/dist/plus/git-github/providers/github/remotes.js.map +1 -0
  817. package/dist/plus/git-github/providers/github/revision.d.ts +14 -0
  818. package/dist/plus/git-github/providers/github/revision.d.ts.map +1 -0
  819. package/dist/plus/git-github/providers/github/revision.js +132 -0
  820. package/dist/plus/git-github/providers/github/revision.js.map +1 -0
  821. package/dist/plus/git-github/providers/github/status.d.ts +21 -0
  822. package/dist/plus/git-github/providers/github/status.d.ts.map +1 -0
  823. package/dist/plus/git-github/providers/github/status.js +49 -0
  824. package/dist/plus/git-github/providers/github/status.js.map +1 -0
  825. package/dist/plus/git-github/providers/github/tags.d.ts +22 -0
  826. package/dist/plus/git-github/providers/github/tags.d.ts.map +1 -0
  827. package/dist/plus/git-github/providers/github/tags.js +104 -0
  828. package/dist/plus/git-github/providers/github/tags.js.map +1 -0
  829. package/dist/plus/git-github/providers/githubGitProvider.d.ts +85 -0
  830. package/dist/plus/git-github/providers/githubGitProvider.d.ts.map +1 -0
  831. package/dist/plus/git-github/providers/githubGitProvider.js +130 -0
  832. package/dist/plus/git-github/providers/githubGitProvider.js.map +1 -0
  833. package/dist/plus/git-github/providers/githubProvider.d.ts +55 -0
  834. package/dist/plus/git-github/providers/githubProvider.d.ts.map +1 -0
  835. package/dist/plus/git-github/providers/githubProvider.js +2 -0
  836. package/dist/plus/git-github/providers/githubProvider.js.map +1 -0
  837. package/dist/utils/array.d.ts +27 -0
  838. package/dist/utils/array.d.ts.map +1 -0
  839. package/dist/utils/array.js +142 -0
  840. package/dist/utils/array.js.map +1 -0
  841. package/dist/utils/base64.d.ts +2 -0
  842. package/dist/utils/base64.d.ts.map +1 -0
  843. package/dist/utils/base64.js +2 -0
  844. package/dist/utils/base64.js.map +1 -0
  845. package/dist/utils/brand.d.ts +11 -0
  846. package/dist/utils/brand.d.ts.map +1 -0
  847. package/dist/utils/brand.js +2 -0
  848. package/dist/utils/brand.js.map +1 -0
  849. package/dist/utils/cancellation.d.ts +54 -0
  850. package/dist/utils/cancellation.d.ts.map +1 -0
  851. package/dist/utils/cancellation.js +133 -0
  852. package/dist/utils/cancellation.js.map +1 -0
  853. package/dist/utils/charCode.d.ts +39 -0
  854. package/dist/utils/charCode.d.ts.map +1 -0
  855. package/dist/utils/charCode.js +39 -0
  856. package/dist/utils/charCode.js.map +1 -0
  857. package/dist/utils/color.d.ts +177 -0
  858. package/dist/utils/color.d.ts.map +1 -0
  859. package/dist/utils/color.js +693 -0
  860. package/dist/utils/color.js.map +1 -0
  861. package/dist/utils/counter.d.ts +7 -0
  862. package/dist/utils/counter.d.ts.map +1 -0
  863. package/dist/utils/counter.js +19 -0
  864. package/dist/utils/counter.js.map +1 -0
  865. package/dist/utils/crypto.d.ts +2 -0
  866. package/dist/utils/crypto.d.ts.map +1 -0
  867. package/dist/utils/crypto.js +2 -0
  868. package/dist/utils/crypto.js.map +1 -0
  869. package/dist/utils/date.d.ts +20 -0
  870. package/dist/utils/date.d.ts.map +1 -0
  871. package/dist/utils/date.js +313 -0
  872. package/dist/utils/date.js.map +1 -0
  873. package/dist/utils/debounce.d.ts +108 -0
  874. package/dist/utils/debounce.d.ts.map +1 -0
  875. package/dist/utils/debounce.js +209 -0
  876. package/dist/utils/debounce.js.map +1 -0
  877. package/dist/utils/decorators/debounce.d.ts +3 -0
  878. package/dist/utils/decorators/debounce.d.ts.map +1 -0
  879. package/dist/utils/decorators/debounce.js +21 -0
  880. package/dist/utils/decorators/debounce.js.map +1 -0
  881. package/dist/utils/decorators/gate.d.ts +15 -0
  882. package/dist/utils/decorators/gate.d.ts.map +1 -0
  883. package/dist/utils/decorators/gate.js +129 -0
  884. package/dist/utils/decorators/gate.js.map +1 -0
  885. package/dist/utils/decorators/log.d.ts +46 -0
  886. package/dist/utils/decorators/log.d.ts.map +1 -0
  887. package/dist/utils/decorators/log.js +238 -0
  888. package/dist/utils/decorators/log.js.map +1 -0
  889. package/dist/utils/decorators/memoize.d.ts +17 -0
  890. package/dist/utils/decorators/memoize.d.ts.map +1 -0
  891. package/dist/utils/decorators/memoize.js +63 -0
  892. package/dist/utils/decorators/memoize.js.map +1 -0
  893. package/dist/utils/decorators/resolver.d.ts +12 -0
  894. package/dist/utils/decorators/resolver.d.ts.map +1 -0
  895. package/dist/utils/decorators/resolver.js +85 -0
  896. package/dist/utils/decorators/resolver.js.map +1 -0
  897. package/dist/utils/decorators/sequentialize.d.ts +29 -0
  898. package/dist/utils/decorators/sequentialize.d.ts.map +1 -0
  899. package/dist/utils/decorators/sequentialize.js +81 -0
  900. package/dist/utils/decorators/sequentialize.js.map +1 -0
  901. package/dist/utils/decorators/serializable.d.ts +13 -0
  902. package/dist/utils/decorators/serializable.d.ts.map +1 -0
  903. package/dist/utils/decorators/serializable.js +42 -0
  904. package/dist/utils/decorators/serializable.js.map +1 -0
  905. package/dist/utils/disposable.d.ts +40 -0
  906. package/dist/utils/disposable.d.ts.map +1 -0
  907. package/dist/utils/disposable.js +87 -0
  908. package/dist/utils/disposable.js.map +1 -0
  909. package/dist/utils/encoding.d.ts +3 -0
  910. package/dist/utils/encoding.d.ts.map +1 -0
  911. package/dist/utils/encoding.js +7 -0
  912. package/dist/utils/encoding.js.map +1 -0
  913. package/dist/utils/env/browser/base64.d.ts +9 -0
  914. package/dist/utils/env/browser/base64.d.ts.map +1 -0
  915. package/dist/utils/env/browser/base64.js +42 -0
  916. package/dist/utils/env/browser/base64.js.map +1 -0
  917. package/dist/utils/env/browser/crypto.d.ts +5 -0
  918. package/dist/utils/env/browser/crypto.d.ts.map +1 -0
  919. package/dist/utils/env/browser/crypto.js +18 -0
  920. package/dist/utils/env/browser/crypto.js.map +1 -0
  921. package/dist/utils/env/browser/fs.d.ts +2 -0
  922. package/dist/utils/env/browser/fs.d.ts.map +1 -0
  923. package/dist/utils/env/browser/fs.js +4 -0
  924. package/dist/utils/env/browser/fs.js.map +1 -0
  925. package/dist/utils/env/browser/hex.d.ts +4 -0
  926. package/dist/utils/env/browser/hex.d.ts.map +1 -0
  927. package/dist/utils/env/browser/hex.js +38 -0
  928. package/dist/utils/env/browser/hex.js.map +1 -0
  929. package/dist/utils/env/browser/hrtime.d.ts +2 -0
  930. package/dist/utils/env/browser/hrtime.d.ts.map +1 -0
  931. package/dist/utils/env/browser/hrtime.js +15 -0
  932. package/dist/utils/env/browser/hrtime.js.map +1 -0
  933. package/dist/utils/env/browser/logScope.d.ts +25 -0
  934. package/dist/utils/env/browser/logScope.d.ts.map +1 -0
  935. package/dist/utils/env/browser/logScope.js +53 -0
  936. package/dist/utils/env/browser/logScope.js.map +1 -0
  937. package/dist/utils/env/browser/md5.d.ts +2 -0
  938. package/dist/utils/env/browser/md5.d.ts.map +1 -0
  939. package/dist/utils/env/browser/md5.js +199 -0
  940. package/dist/utils/env/browser/md5.js.map +1 -0
  941. package/dist/utils/env/browser/platform.d.ts +4 -0
  942. package/dist/utils/env/browser/platform.d.ts.map +1 -0
  943. package/dist/utils/env/browser/platform.js +6 -0
  944. package/dist/utils/env/browser/platform.js.map +1 -0
  945. package/dist/utils/env/node/base64.d.ts +9 -0
  946. package/dist/utils/env/node/base64.d.ts.map +1 -0
  947. package/dist/utils/env/node/base64.js +14 -0
  948. package/dist/utils/env/node/base64.js.map +1 -0
  949. package/dist/utils/env/node/crypto.d.ts +5 -0
  950. package/dist/utils/env/node/crypto.d.ts.map +1 -0
  951. package/dist/utils/env/node/crypto.js +14 -0
  952. package/dist/utils/env/node/crypto.js.map +1 -0
  953. package/dist/utils/env/node/exec.d.ts +89 -0
  954. package/dist/utils/env/node/exec.d.ts.map +1 -0
  955. package/dist/utils/env/node/exec.js +277 -0
  956. package/dist/utils/env/node/exec.js.map +1 -0
  957. package/dist/utils/env/node/fs.d.ts +2 -0
  958. package/dist/utils/env/node/fs.d.ts.map +1 -0
  959. package/dist/utils/env/node/fs.js +5 -0
  960. package/dist/utils/env/node/fs.js.map +1 -0
  961. package/dist/utils/env/node/hex.d.ts +4 -0
  962. package/dist/utils/env/node/hex.d.ts.map +1 -0
  963. package/dist/utils/env/node/hex.js +10 -0
  964. package/dist/utils/env/node/hex.js.map +1 -0
  965. package/dist/utils/env/node/hrtime.d.ts +2 -0
  966. package/dist/utils/env/node/hrtime.d.ts.map +1 -0
  967. package/dist/utils/env/node/hrtime.js +2 -0
  968. package/dist/utils/env/node/hrtime.js.map +1 -0
  969. package/dist/utils/env/node/logScope.d.ts +34 -0
  970. package/dist/utils/env/node/logScope.d.ts.map +1 -0
  971. package/dist/utils/env/node/logScope.js +52 -0
  972. package/dist/utils/env/node/logScope.js.map +1 -0
  973. package/dist/utils/env/node/platform.d.ts +4 -0
  974. package/dist/utils/env/node/platform.d.ts.map +1 -0
  975. package/dist/utils/env/node/platform.js +5 -0
  976. package/dist/utils/env/node/platform.js.map +1 -0
  977. package/dist/utils/error.d.ts +18 -0
  978. package/dist/utils/error.d.ts.map +1 -0
  979. package/dist/utils/error.js +19 -0
  980. package/dist/utils/error.js.map +1 -0
  981. package/dist/utils/event.d.ts +59 -0
  982. package/dist/utils/event.d.ts.map +1 -0
  983. package/dist/utils/event.js +183 -0
  984. package/dist/utils/event.js.map +1 -0
  985. package/dist/utils/formatter.d.ts +21 -0
  986. package/dist/utils/formatter.d.ts.map +1 -0
  987. package/dist/utils/formatter.js +139 -0
  988. package/dist/utils/formatter.js.map +1 -0
  989. package/dist/utils/fs.d.ts +2 -0
  990. package/dist/utils/fs.d.ts.map +1 -0
  991. package/dist/utils/fs.js +2 -0
  992. package/dist/utils/fs.js.map +1 -0
  993. package/dist/utils/function.d.ts +24 -0
  994. package/dist/utils/function.d.ts.map +1 -0
  995. package/dist/utils/function.js +103 -0
  996. package/dist/utils/function.js.map +1 -0
  997. package/dist/utils/fuzzy.d.ts +68 -0
  998. package/dist/utils/fuzzy.d.ts.map +1 -0
  999. package/dist/utils/fuzzy.js +134 -0
  1000. package/dist/utils/fuzzy.js.map +1 -0
  1001. package/dist/utils/hash.d.ts +32 -0
  1002. package/dist/utils/hash.d.ts.map +1 -0
  1003. package/dist/utils/hash.js +53 -0
  1004. package/dist/utils/hash.js.map +1 -0
  1005. package/dist/utils/hex.d.ts +2 -0
  1006. package/dist/utils/hex.d.ts.map +1 -0
  1007. package/dist/utils/hex.js +2 -0
  1008. package/dist/utils/hex.js.map +1 -0
  1009. package/dist/utils/hrtime.d.ts +4 -0
  1010. package/dist/utils/hrtime.d.ts.map +1 -0
  1011. package/dist/utils/hrtime.js +7 -0
  1012. package/dist/utils/hrtime.js.map +1 -0
  1013. package/dist/utils/iterable.d.ts +65 -0
  1014. package/dist/utils/iterable.d.ts.map +1 -0
  1015. package/dist/utils/iterable.js +635 -0
  1016. package/dist/utils/iterable.js.map +1 -0
  1017. package/dist/utils/lazy.d.ts +18 -0
  1018. package/dist/utils/lazy.d.ts.map +1 -0
  1019. package/dist/utils/lazy.js +40 -0
  1020. package/dist/utils/lazy.js.map +1 -0
  1021. package/dist/utils/loggable.d.ts +5 -0
  1022. package/dist/utils/loggable.d.ts.map +1 -0
  1023. package/dist/utils/loggable.js +4 -0
  1024. package/dist/utils/loggable.js.map +1 -0
  1025. package/dist/utils/logger.d.ts +63 -0
  1026. package/dist/utils/logger.d.ts.map +1 -0
  1027. package/dist/utils/logger.js +316 -0
  1028. package/dist/utils/logger.js.map +1 -0
  1029. package/dist/utils/logger.scoped.d.ts +56 -0
  1030. package/dist/utils/logger.scoped.d.ts.map +1 -0
  1031. package/dist/utils/logger.scoped.js +166 -0
  1032. package/dist/utils/logger.scoped.js.map +1 -0
  1033. package/dist/utils/markdown.d.ts +9 -0
  1034. package/dist/utils/markdown.d.ts.map +1 -0
  1035. package/dist/utils/markdown.js +100 -0
  1036. package/dist/utils/markdown.js.map +1 -0
  1037. package/dist/utils/mru.d.ts +14 -0
  1038. package/dist/utils/mru.d.ts.map +1 -0
  1039. package/dist/utils/mru.js +63 -0
  1040. package/dist/utils/mru.js.map +1 -0
  1041. package/dist/utils/object.d.ts +62 -0
  1042. package/dist/utils/object.d.ts.map +1 -0
  1043. package/dist/utils/object.js +151 -0
  1044. package/dist/utils/object.js.map +1 -0
  1045. package/dist/utils/paging.d.ts +19 -0
  1046. package/dist/utils/paging.d.ts.map +1 -0
  1047. package/dist/utils/paging.js +32 -0
  1048. package/dist/utils/paging.js.map +1 -0
  1049. package/dist/utils/path.d.ts +17 -0
  1050. package/dist/utils/path.d.ts.map +1 -0
  1051. package/dist/utils/path.js +156 -0
  1052. package/dist/utils/path.js.map +1 -0
  1053. package/dist/utils/platform.d.ts +2 -0
  1054. package/dist/utils/platform.d.ts.map +1 -0
  1055. package/dist/utils/platform.js +2 -0
  1056. package/dist/utils/platform.js.map +1 -0
  1057. package/dist/utils/promise.d.ts +61 -0
  1058. package/dist/utils/promise.d.ts.map +1 -0
  1059. package/dist/utils/promise.js +337 -0
  1060. package/dist/utils/promise.js.map +1 -0
  1061. package/dist/utils/promiseCache.d.ts +337 -0
  1062. package/dist/utils/promiseCache.d.ts.map +1 -0
  1063. package/dist/utils/promiseCache.js +634 -0
  1064. package/dist/utils/promiseCache.js.map +1 -0
  1065. package/dist/utils/searchTree.d.ts +58 -0
  1066. package/dist/utils/searchTree.d.ts.map +1 -0
  1067. package/dist/utils/searchTree.js +394 -0
  1068. package/dist/utils/searchTree.js.map +1 -0
  1069. package/dist/utils/stopwatch.d.ts +41 -0
  1070. package/dist/utils/stopwatch.d.ts.map +1 -0
  1071. package/dist/utils/stopwatch.js +83 -0
  1072. package/dist/utils/stopwatch.js.map +1 -0
  1073. package/dist/utils/string.d.ts +91 -0
  1074. package/dist/utils/string.d.ts.map +1 -0
  1075. package/dist/utils/string.js +803 -0
  1076. package/dist/utils/string.js.map +1 -0
  1077. package/dist/utils/subscriptionManager.d.ts +18 -0
  1078. package/dist/utils/subscriptionManager.d.ts.map +1 -0
  1079. package/dist/utils/subscriptionManager.js +34 -0
  1080. package/dist/utils/subscriptionManager.js.map +1 -0
  1081. package/dist/utils/trie.d.ts +76 -0
  1082. package/dist/utils/trie.d.ts.map +1 -0
  1083. package/dist/utils/trie.js +584 -0
  1084. package/dist/utils/trie.js.map +1 -0
  1085. package/dist/utils/types.d.ts +21 -0
  1086. package/dist/utils/types.d.ts.map +1 -0
  1087. package/dist/utils/types.js +2 -0
  1088. package/dist/utils/types.js.map +1 -0
  1089. package/dist/utils/uri.d.ts +69 -0
  1090. package/dist/utils/uri.d.ts.map +1 -0
  1091. package/dist/utils/uri.js +66 -0
  1092. package/dist/utils/uri.js.map +1 -0
  1093. package/dist/utils/validation.d.ts +14 -0
  1094. package/dist/utils/validation.d.ts.map +1 -0
  1095. package/dist/utils/validation.js +26 -0
  1096. package/dist/utils/validation.js.map +1 -0
  1097. package/dist/utils/version.d.ts +15 -0
  1098. package/dist/utils/version.d.ts.map +1 -0
  1099. package/dist/utils/version.js +66 -0
  1100. package/dist/utils/version.js.map +1 -0
  1101. package/package.json +161 -0
  1102. package/src/git/cache.ts +1152 -0
  1103. package/src/git/context.ts +248 -0
  1104. package/src/git/errors.ts +1121 -0
  1105. package/src/git/exec.types.ts +78 -0
  1106. package/src/git/features.ts +45 -0
  1107. package/src/git/models/author.ts +19 -0
  1108. package/src/git/models/autolink.ts +59 -0
  1109. package/src/git/models/blame.ts +46 -0
  1110. package/src/git/models/branch.ts +236 -0
  1111. package/src/git/models/commit.ts +688 -0
  1112. package/src/git/models/contributor.ts +84 -0
  1113. package/src/git/models/defaultBranch.ts +6 -0
  1114. package/src/git/models/diff.ts +74 -0
  1115. package/src/git/models/file.ts +29 -0
  1116. package/src/git/models/fileChange.ts +82 -0
  1117. package/src/git/models/fileStatus.ts +35 -0
  1118. package/src/git/models/graph.ts +184 -0
  1119. package/src/git/models/graphSearch.ts +53 -0
  1120. package/src/git/models/issue.ts +88 -0
  1121. package/src/git/models/issueOrPullRequest.ts +20 -0
  1122. package/src/git/models/lineRange.ts +7 -0
  1123. package/src/git/models/log.ts +21 -0
  1124. package/src/git/models/mergeConflicts.ts +18 -0
  1125. package/src/git/models/patch.ts +25 -0
  1126. package/src/git/models/pausedOperationStatus.ts +63 -0
  1127. package/src/git/models/pullRequest.ts +161 -0
  1128. package/src/git/models/rebase.ts +60 -0
  1129. package/src/git/models/reference.ts +47 -0
  1130. package/src/git/models/reflog.ts +88 -0
  1131. package/src/git/models/remote.ts +99 -0
  1132. package/src/git/models/remoteProvider.ts +290 -0
  1133. package/src/git/models/remoteResource.ts +87 -0
  1134. package/src/git/models/repository.ts +417 -0
  1135. package/src/git/models/repositoryChangeEvent.ts +30 -0
  1136. package/src/git/models/repositoryIdentities.ts +99 -0
  1137. package/src/git/models/repositoryMetadata.ts +12 -0
  1138. package/src/git/models/resourceDescriptor.ts +11 -0
  1139. package/src/git/models/revision.ts +12 -0
  1140. package/src/git/models/search.ts +123 -0
  1141. package/src/git/models/shortlog.ts +6 -0
  1142. package/src/git/models/signature.ts +29 -0
  1143. package/src/git/models/staging.ts +27 -0
  1144. package/src/git/models/stash.ts +6 -0
  1145. package/src/git/models/status.ts +246 -0
  1146. package/src/git/models/statusFile.ts +116 -0
  1147. package/src/git/models/tag.ts +71 -0
  1148. package/src/git/models/tree.ts +10 -0
  1149. package/src/git/models/user.ts +7 -0
  1150. package/src/git/models/worktree.ts +152 -0
  1151. package/src/git/parsers/diffParser.ts +660 -0
  1152. package/src/git/parsers/rebaseTodoParser.ts +169 -0
  1153. package/src/git/providers/blame.ts +40 -0
  1154. package/src/git/providers/branches.ts +111 -0
  1155. package/src/git/providers/commits.ts +147 -0
  1156. package/src/git/providers/config.ts +104 -0
  1157. package/src/git/providers/contributors.ts +34 -0
  1158. package/src/git/providers/diff.ts +127 -0
  1159. package/src/git/providers/graph.ts +30 -0
  1160. package/src/git/providers/operations.ts +82 -0
  1161. package/src/git/providers/patch.ts +31 -0
  1162. package/src/git/providers/pausedOperations.ts +10 -0
  1163. package/src/git/providers/provider.ts +62 -0
  1164. package/src/git/providers/refs.ts +39 -0
  1165. package/src/git/providers/remotes.ts +33 -0
  1166. package/src/git/providers/revision.ts +28 -0
  1167. package/src/git/providers/shared/remotes.ts +95 -0
  1168. package/src/git/providers/staging.ts +22 -0
  1169. package/src/git/providers/stash.ts +51 -0
  1170. package/src/git/providers/status.ts +42 -0
  1171. package/src/git/providers/tags.ts +28 -0
  1172. package/src/git/providers/types.ts +33 -0
  1173. package/src/git/providers/worktrees.ts +23 -0
  1174. package/src/git/remotes/azure-devops.ts +309 -0
  1175. package/src/git/remotes/bitbucket-server.ts +191 -0
  1176. package/src/git/remotes/bitbucket.ts +144 -0
  1177. package/src/git/remotes/custom.ts +139 -0
  1178. package/src/git/remotes/gerrit.ts +188 -0
  1179. package/src/git/remotes/gitea.ts +186 -0
  1180. package/src/git/remotes/github.ts +238 -0
  1181. package/src/git/remotes/gitlab.ts +272 -0
  1182. package/src/git/remotes/google-source.ts +51 -0
  1183. package/src/git/remotes/matcher.ts +215 -0
  1184. package/src/git/repositoryService.ts +179 -0
  1185. package/src/git/service.ts +365 -0
  1186. package/src/git/utils/autolink.utils.ts +201 -0
  1187. package/src/git/utils/blame.utils.ts +296 -0
  1188. package/src/git/utils/branch.utils.ts +154 -0
  1189. package/src/git/utils/commit.utils.ts +89 -0
  1190. package/src/git/utils/contributor.utils.ts +81 -0
  1191. package/src/git/utils/fetch.utils.ts +48 -0
  1192. package/src/git/utils/fileStatus.utils.ts +49 -0
  1193. package/src/git/utils/issue.utils.ts +81 -0
  1194. package/src/git/utils/issueOrPullRequest.utils.ts +23 -0
  1195. package/src/git/utils/mergeConflicts.utils.ts +21 -0
  1196. package/src/git/utils/pausedOperationStatus.utils.ts +156 -0
  1197. package/src/git/utils/pullRequest.utils.ts +149 -0
  1198. package/src/git/utils/rebase.utils.ts +128 -0
  1199. package/src/git/utils/reference.utils.ts +267 -0
  1200. package/src/git/utils/remote.utils.ts +140 -0
  1201. package/src/git/utils/repository.utils.ts +18 -0
  1202. package/src/git/utils/resourceDescriptor.utils.ts +26 -0
  1203. package/src/git/utils/revision.utils.ts +149 -0
  1204. package/src/git/utils/search.utils.ts +498 -0
  1205. package/src/git/utils/sorting.ts +291 -0
  1206. package/src/git/utils/status.utils.ts +114 -0
  1207. package/src/git/utils/statusFile.utils.ts +182 -0
  1208. package/src/git/utils/tag.utils.ts +17 -0
  1209. package/src/git/utils/tooltip.utils.ts +37 -0
  1210. package/src/git/utils/uriAuthority.ts +34 -0
  1211. package/src/git/utils/user.utils.ts +20 -0
  1212. package/src/git/utils/worktree.utils.ts +21 -0
  1213. package/src/git/watching/changeEvent.ts +90 -0
  1214. package/src/git/watching/classifyChange.ts +81 -0
  1215. package/src/git/watching/gitIgnoreFilter.ts +134 -0
  1216. package/src/git/watching/initWatcher.ts +79 -0
  1217. package/src/git/watching/provider.ts +24 -0
  1218. package/src/git/watching/watchGroup.ts +182 -0
  1219. package/src/git/watching/watchService.ts +350 -0
  1220. package/src/git/watching/watchSession.ts +370 -0
  1221. package/src/git/watching/watcherPatterns.ts +51 -0
  1222. package/src/git-cli/cliGitProvider.ts +436 -0
  1223. package/src/git-cli/exec/exec.errors.ts +1 -0
  1224. package/src/git-cli/exec/exec.ts +11 -0
  1225. package/src/git-cli/exec/exec.types.ts +8 -0
  1226. package/src/git-cli/exec/features.ts +2 -0
  1227. package/src/git-cli/exec/git.ts +1092 -0
  1228. package/src/git-cli/exec/gitQueue.ts +251 -0
  1229. package/src/git-cli/exec/locator.ts +157 -0
  1230. package/src/git-cli/parsers/blameParser.ts +373 -0
  1231. package/src/git-cli/parsers/indexParser.ts +192 -0
  1232. package/src/git-cli/parsers/logParser.ts +1275 -0
  1233. package/src/git-cli/parsers/mergeTreeParser.ts +22 -0
  1234. package/src/git-cli/parsers/refParser.ts +111 -0
  1235. package/src/git-cli/parsers/reflogParser.ts +153 -0
  1236. package/src/git-cli/parsers/remoteParser.ts +95 -0
  1237. package/src/git-cli/parsers/shortlogParser.ts +59 -0
  1238. package/src/git-cli/parsers/signatureParser.ts +162 -0
  1239. package/src/git-cli/parsers/statusParser.ts +209 -0
  1240. package/src/git-cli/parsers/treeParser.ts +61 -0
  1241. package/src/git-cli/parsers/worktreeParser.ts +113 -0
  1242. package/src/git-cli/providers/blame.ts +602 -0
  1243. package/src/git-cli/providers/branches.ts +1491 -0
  1244. package/src/git-cli/providers/commitFilesetUtils.ts +45 -0
  1245. package/src/git-cli/providers/commits.ts +1517 -0
  1246. package/src/git-cli/providers/config.ts +724 -0
  1247. package/src/git-cli/providers/contributors.ts +361 -0
  1248. package/src/git-cli/providers/diff.ts +1084 -0
  1249. package/src/git-cli/providers/graph.ts +799 -0
  1250. package/src/git-cli/providers/operations.ts +776 -0
  1251. package/src/git-cli/providers/patch.ts +326 -0
  1252. package/src/git-cli/providers/pausedOperations.ts +538 -0
  1253. package/src/git-cli/providers/refs.ts +193 -0
  1254. package/src/git-cli/providers/remotes.ts +115 -0
  1255. package/src/git-cli/providers/revision.ts +334 -0
  1256. package/src/git-cli/providers/staging.ts +160 -0
  1257. package/src/git-cli/providers/stash.ts +626 -0
  1258. package/src/git-cli/providers/status.ts +373 -0
  1259. package/src/git-cli/providers/tags.ts +188 -0
  1260. package/src/git-cli/providers/worktrees.ts +229 -0
  1261. package/src/git-cli/service.ts +74 -0
  1262. package/src/plus/ai/constants.ts +121 -0
  1263. package/src/plus/ai/errors.ts +82 -0
  1264. package/src/plus/ai/models/conversation.ts +35 -0
  1265. package/src/plus/ai/models/model.ts +425 -0
  1266. package/src/plus/ai/models/promptTemplates.ts +122 -0
  1267. package/src/plus/ai/models/provider.ts +52 -0
  1268. package/src/plus/ai/models/results.ts +1 -0
  1269. package/src/plus/ai/prompts.ts +528 -0
  1270. package/src/plus/ai/providers/anthropicProvider.ts +308 -0
  1271. package/src/plus/ai/providers/azureProvider.ts +74 -0
  1272. package/src/plus/ai/providers/context.ts +29 -0
  1273. package/src/plus/ai/providers/deepSeekProvider.ts +40 -0
  1274. package/src/plus/ai/providers/geminiProvider.ts +207 -0
  1275. package/src/plus/ai/providers/githubModelsProvider.ts +92 -0
  1276. package/src/plus/ai/providers/gitkrakenProvider.ts +218 -0
  1277. package/src/plus/ai/providers/huggingFaceProvider.ts +51 -0
  1278. package/src/plus/ai/providers/mistralProvider.ts +160 -0
  1279. package/src/plus/ai/providers/ollamaProvider.ts +241 -0
  1280. package/src/plus/ai/providers/openAICompatibleProvider.ts +59 -0
  1281. package/src/plus/ai/providers/openAICompatibleProviderBase.ts +279 -0
  1282. package/src/plus/ai/providers/openRouterProvider.ts +84 -0
  1283. package/src/plus/ai/providers/openaiProvider.ts +46 -0
  1284. package/src/plus/ai/providers/xaiProvider.ts +32 -0
  1285. package/src/plus/ai/utils/ai.utils.ts +79 -0
  1286. package/src/plus/ai/utils/results.utils.ts +50 -0
  1287. package/src/plus/ai/utils/truncation.utils.ts +295 -0
  1288. package/src/plus/git-github/api/config.ts +78 -0
  1289. package/src/plus/git-github/api/github.ts +3424 -0
  1290. package/src/plus/git-github/api/github.utils.ts +36 -0
  1291. package/src/plus/git-github/api/token.ts +15 -0
  1292. package/src/plus/git-github/api/tokenUtils.ts +15 -0
  1293. package/src/plus/git-github/api/types.ts +182 -0
  1294. package/src/plus/git-github/context.ts +107 -0
  1295. package/src/plus/git-github/models.ts +524 -0
  1296. package/src/plus/git-github/providers/github/blame.ts +222 -0
  1297. package/src/plus/git-github/providers/github/branches.ts +356 -0
  1298. package/src/plus/git-github/providers/github/commits.ts +858 -0
  1299. package/src/plus/git-github/providers/github/config.ts +47 -0
  1300. package/src/plus/git-github/providers/github/contributors.ts +313 -0
  1301. package/src/plus/git-github/providers/github/diff.ts +267 -0
  1302. package/src/plus/git-github/providers/github/graph.ts +511 -0
  1303. package/src/plus/git-github/providers/github/refs.ts +137 -0
  1304. package/src/plus/git-github/providers/github/remotes.ts +44 -0
  1305. package/src/plus/git-github/providers/github/revision.ts +141 -0
  1306. package/src/plus/git-github/providers/github/status.ts +63 -0
  1307. package/src/plus/git-github/providers/github/tags.ts +147 -0
  1308. package/src/plus/git-github/providers/githubGitProvider.ts +167 -0
  1309. package/src/plus/git-github/providers/githubProvider.ts +65 -0
  1310. package/src/utils/array.ts +194 -0
  1311. package/src/utils/base64.ts +1 -0
  1312. package/src/utils/brand.ts +9 -0
  1313. package/src/utils/cancellation.ts +150 -0
  1314. package/src/utils/charCode.ts +38 -0
  1315. package/src/utils/color.ts +815 -0
  1316. package/src/utils/counter.ts +21 -0
  1317. package/src/utils/crypto.ts +1 -0
  1318. package/src/utils/date.ts +394 -0
  1319. package/src/utils/debounce.ts +303 -0
  1320. package/src/utils/decorators/debounce.ts +31 -0
  1321. package/src/utils/decorators/gate.ts +167 -0
  1322. package/src/utils/decorators/log.ts +320 -0
  1323. package/src/utils/decorators/memoize.ts +98 -0
  1324. package/src/utils/decorators/resolver.ts +95 -0
  1325. package/src/utils/decorators/sequentialize.ts +116 -0
  1326. package/src/utils/decorators/serializable.ts +42 -0
  1327. package/src/utils/disposable.ts +141 -0
  1328. package/src/utils/encoding.ts +8 -0
  1329. package/src/utils/env/browser/base64.ts +50 -0
  1330. package/src/utils/env/browser/crypto.ts +21 -0
  1331. package/src/utils/env/browser/fs.ts +3 -0
  1332. package/src/utils/env/browser/hex.ts +41 -0
  1333. package/src/utils/env/browser/hrtime.ts +14 -0
  1334. package/src/utils/env/browser/logScope.ts +57 -0
  1335. package/src/utils/env/browser/md5.ts +217 -0
  1336. package/src/utils/env/browser/platform.ts +10 -0
  1337. package/src/utils/env/node/base64.ts +17 -0
  1338. package/src/utils/env/node/crypto.ts +17 -0
  1339. package/src/utils/env/node/exec.ts +471 -0
  1340. package/src/utils/env/node/fs.ts +5 -0
  1341. package/src/utils/env/node/hex.ts +11 -0
  1342. package/src/utils/env/node/hrtime.ts +1 -0
  1343. package/src/utils/env/node/logScope.ts +63 -0
  1344. package/src/utils/env/node/platform.ts +5 -0
  1345. package/src/utils/error.ts +17 -0
  1346. package/src/utils/event.ts +236 -0
  1347. package/src/utils/formatter.ts +205 -0
  1348. package/src/utils/fs.ts +1 -0
  1349. package/src/utils/function.ts +141 -0
  1350. package/src/utils/fuzzy.ts +185 -0
  1351. package/src/utils/hash.ts +60 -0
  1352. package/src/utils/hex.ts +1 -0
  1353. package/src/utils/hrtime.ts +8 -0
  1354. package/src/utils/iterable.ts +787 -0
  1355. package/src/utils/lazy.ts +39 -0
  1356. package/src/utils/loggable.ts +7 -0
  1357. package/src/utils/logger.scoped.ts +237 -0
  1358. package/src/utils/logger.ts +402 -0
  1359. package/src/utils/markdown.ts +114 -0
  1360. package/src/utils/mru.ts +66 -0
  1361. package/src/utils/object.ts +227 -0
  1362. package/src/utils/paging.ts +51 -0
  1363. package/src/utils/path.ts +189 -0
  1364. package/src/utils/platform.ts +1 -0
  1365. package/src/utils/promise.ts +590 -0
  1366. package/src/utils/promiseCache.ts +803 -0
  1367. package/src/utils/searchTree.ts +442 -0
  1368. package/src/utils/stopwatch.ts +125 -0
  1369. package/src/utils/string.ts +964 -0
  1370. package/src/utils/subscriptionManager.ts +40 -0
  1371. package/src/utils/trie.ts +739 -0
  1372. package/src/utils/types.ts +31 -0
  1373. package/src/utils/uri.ts +117 -0
  1374. package/src/utils/validation.ts +38 -0
  1375. package/src/utils/version.ts +79 -0
@@ -0,0 +1,1121 @@
1
+ import { pluralize } from '../utils/string.js';
2
+ import type { GitPausedOperationStatus } from './models/pausedOperationStatus.js';
3
+
4
+ export interface GitCommandContext {
5
+ readonly repoPath: string;
6
+ readonly args: readonly (string | undefined)[];
7
+ }
8
+
9
+ export abstract class GitCommandError<Details extends { gitCommand?: GitCommandContext }> extends Error {
10
+ static is(ex: unknown): ex is GitCommandError<any> {
11
+ return ex instanceof GitCommandError;
12
+ }
13
+
14
+ private _details!: Details;
15
+ get details(): Details {
16
+ return this._details;
17
+ }
18
+ private set details(details: Details) {
19
+ this._details = details;
20
+ this.message = this.buildErrorMessage(details);
21
+ }
22
+
23
+ readonly original?: Error;
24
+
25
+ constructor(message: string, details: Details, original: Error | undefined) {
26
+ super(message);
27
+ this.original = original;
28
+ this.details = details;
29
+ Error.captureStackTrace?.(this, new.target);
30
+ }
31
+
32
+ protected abstract buildErrorMessage(details: Details): string;
33
+
34
+ update(changes: Details): this {
35
+ this.details = { ...this.details, ...changes };
36
+ return this;
37
+ }
38
+ }
39
+
40
+ export class GitSearchError extends Error {
41
+ static is(ex: unknown): ex is GitSearchError {
42
+ return ex instanceof GitSearchError;
43
+ }
44
+
45
+ constructor(public readonly original: Error) {
46
+ super(original.message);
47
+
48
+ Error.captureStackTrace?.(this, new.target);
49
+ }
50
+ }
51
+
52
+ export type ApplyPatchCommitErrorReason =
53
+ | 'appliedWithConflicts'
54
+ | 'applyFailed'
55
+ | 'checkoutFailed'
56
+ | 'createWorktreeFailed'
57
+ | 'stashFailed'
58
+ | 'wouldOverwriteChanges';
59
+ interface ApplyPatchCommitErrorDetails {
60
+ reason?: ApplyPatchCommitErrorReason;
61
+ branch?: string;
62
+ gitCommand?: GitCommandContext;
63
+ }
64
+
65
+ export class ApplyPatchCommitError extends GitCommandError<ApplyPatchCommitErrorDetails> {
66
+ static override is(ex: unknown): ex is ApplyPatchCommitError;
67
+ static override is<R extends ApplyPatchCommitErrorReason>(
68
+ ex: unknown,
69
+ reason: R,
70
+ ): ex is ApplyPatchCommitError & { details: { reason: R } };
71
+ static override is(ex: unknown, reason?: ApplyPatchCommitErrorReason): boolean {
72
+ return ex instanceof ApplyPatchCommitError && (reason == null || ex.details.reason === reason);
73
+ }
74
+
75
+ constructor(details: ApplyPatchCommitErrorDetails, original?: Error) {
76
+ super('Unable to apply patch', details, original);
77
+ }
78
+
79
+ override buildErrorMessage(details: ApplyPatchCommitErrorDetails): string {
80
+ const baseMessage = 'Unable to apply patch';
81
+ switch (details.reason) {
82
+ case 'applyFailed':
83
+ return `${baseMessage}${this.original instanceof CherryPickError ? `. ${this.original.message}` : ''}`;
84
+ case 'appliedWithConflicts':
85
+ return 'Patch applied with conflicts';
86
+ case 'checkoutFailed':
87
+ return `${baseMessage} as we were unable to checkout the branch '${details.branch}'${
88
+ this.original instanceof CheckoutError ? `. ${this.original.message}` : ''
89
+ }`;
90
+ case 'createWorktreeFailed':
91
+ return `${baseMessage} as we were unable to create a worktree${
92
+ this.original instanceof WorktreeCreateError ? `. ${this.original.message}` : ''
93
+ }`;
94
+ case 'stashFailed':
95
+ return `${baseMessage} as we were unable to stash your working changes${
96
+ this.original instanceof StashPushError ? `. ${this.original.message}` : ''
97
+ }`;
98
+ case 'wouldOverwriteChanges':
99
+ return `${baseMessage} as some local changes would be overwritten`;
100
+ default:
101
+ return baseMessage;
102
+ }
103
+ }
104
+ }
105
+
106
+ export type CommitErrorReason = 'nothingToCommit' | 'conflicts' | 'noUserNameConfigured' | 'other';
107
+ interface CommitErrorDetails {
108
+ reason?: CommitErrorReason;
109
+ gitCommand?: GitCommandContext;
110
+ }
111
+
112
+ export class CommitError extends GitCommandError<CommitErrorDetails> {
113
+ static override is(ex: unknown): ex is CommitError;
114
+ static override is<R extends CommitErrorReason>(
115
+ ex: unknown,
116
+ reason: R,
117
+ ): ex is CommitError & { details: { reason: R } };
118
+ static override is(ex: unknown, reason?: CommitErrorReason): boolean {
119
+ return ex instanceof CommitError && (reason == null || ex.details.reason === reason);
120
+ }
121
+
122
+ constructor(details: CommitErrorDetails, original?: Error) {
123
+ super('Unable to commit', details, original);
124
+ }
125
+
126
+ protected override buildErrorMessage(details: CommitErrorDetails): string {
127
+ const baseMessage = 'Unable to commit';
128
+ switch (details.reason) {
129
+ case 'nothingToCommit':
130
+ return `${baseMessage} because there are no staged changes`;
131
+ case 'conflicts':
132
+ return `${baseMessage} because there are unresolved merge conflicts`;
133
+ case 'noUserNameConfigured':
134
+ return 'Please configure your git user name and email before committing';
135
+ default:
136
+ return baseMessage;
137
+ }
138
+ }
139
+ }
140
+
141
+ export class BlameIgnoreRevsFileError extends Error {
142
+ static is(ex: unknown): ex is BlameIgnoreRevsFileError {
143
+ return ex instanceof BlameIgnoreRevsFileError;
144
+ }
145
+
146
+ constructor(
147
+ public readonly fileName: string,
148
+ public readonly original?: Error,
149
+ ) {
150
+ super(`Invalid blame.ignoreRevsFile: '${fileName}'`);
151
+
152
+ Error.captureStackTrace?.(this, new.target);
153
+ }
154
+ }
155
+
156
+ export class BlameIgnoreRevsFileBadRevisionError extends Error {
157
+ static is(ex: unknown): ex is BlameIgnoreRevsFileBadRevisionError {
158
+ return ex instanceof BlameIgnoreRevsFileBadRevisionError;
159
+ }
160
+
161
+ constructor(
162
+ public readonly revision: string,
163
+ public readonly original?: Error,
164
+ ) {
165
+ super(`Invalid revision in blame.ignoreRevsFile: '${revision}'`);
166
+
167
+ Error.captureStackTrace?.(this, new.target);
168
+ }
169
+ }
170
+
171
+ export type BranchErrorReason = 'alreadyExists' | 'notFullyMerged' | 'invalidName' | 'noRemoteReference' | 'other';
172
+ interface BranchErrorDetails {
173
+ reason?: BranchErrorReason;
174
+ action?: string;
175
+ branch?: string;
176
+ gitCommand?: GitCommandContext;
177
+ }
178
+
179
+ export class BranchError extends GitCommandError<BranchErrorDetails> {
180
+ static override is(ex: unknown): ex is BranchError;
181
+ static override is<R extends BranchErrorReason>(
182
+ ex: unknown,
183
+ reason: R,
184
+ ): ex is BranchError & { details: { reason: R } };
185
+ static override is(ex: unknown, reason?: BranchErrorReason): boolean {
186
+ return ex instanceof BranchError && (reason == null || ex.details.reason === reason);
187
+ }
188
+
189
+ constructor(details: BranchErrorDetails, original?: Error) {
190
+ super('Unable to perform action on branch', details, original);
191
+ }
192
+
193
+ protected override buildErrorMessage(details: BranchErrorDetails): string {
194
+ let baseMessage: string;
195
+ if (details.action != null) {
196
+ baseMessage = `Unable to ${details.action} branch ${details.branch ? `'${details.branch}'` : ''}`;
197
+ } else {
198
+ baseMessage = `Unable to perform action ${details.branch ? `with branch '${details.branch}'` : 'on branch'}`;
199
+ }
200
+ switch (details.reason) {
201
+ case 'alreadyExists':
202
+ return `${baseMessage} because it already exists`;
203
+ case 'notFullyMerged':
204
+ return `${baseMessage} because it is not fully merged`;
205
+ case 'invalidName':
206
+ return `${baseMessage} because the branch name is invalid`;
207
+ case 'noRemoteReference':
208
+ return `${baseMessage} because the remote reference does not exist`;
209
+ default:
210
+ return baseMessage;
211
+ }
212
+ }
213
+ }
214
+
215
+ export type CheckoutErrorReason = 'invalidRef' | 'pathspecNotFound' | 'wouldOverwriteChanges' | 'other';
216
+ interface CheckoutErrorDetails {
217
+ reason?: CheckoutErrorReason;
218
+ ref?: string;
219
+ gitCommand?: GitCommandContext;
220
+ }
221
+
222
+ export class CheckoutError extends GitCommandError<CheckoutErrorDetails> {
223
+ static override is(ex: unknown): ex is CheckoutError;
224
+ static override is<R extends CheckoutErrorReason>(
225
+ ex: unknown,
226
+ reason: R,
227
+ ): ex is CheckoutError & { details: { reason: R } };
228
+ static override is(ex: unknown, reason?: CheckoutErrorReason): boolean {
229
+ return ex instanceof CheckoutError && (reason == null || ex.details.reason === reason);
230
+ }
231
+
232
+ constructor(details: CheckoutErrorDetails, original?: Error) {
233
+ super('Unable to checkout', details, original);
234
+ }
235
+
236
+ protected override buildErrorMessage(details: CheckoutErrorDetails): string {
237
+ const baseMessage = `Unable to checkout${details.ref ? ` '${details.ref}'` : ''}`;
238
+ switch (details.reason) {
239
+ case 'invalidRef':
240
+ return `${baseMessage} because the reference is invalid`;
241
+ case 'pathspecNotFound':
242
+ return `${baseMessage} because the path or reference does not exist`;
243
+ case 'wouldOverwriteChanges':
244
+ return `${baseMessage}. Your local changes would be overwritten. Please commit or stash your changes before switching branches.`;
245
+ default:
246
+ return baseMessage;
247
+ }
248
+ }
249
+ }
250
+
251
+ export type CherryPickErrorReason =
252
+ | 'aborted'
253
+ | 'alreadyInProgress'
254
+ | 'conflicts'
255
+ | 'emptyCommit'
256
+ | 'wouldOverwriteChanges'
257
+ | 'other';
258
+ interface CherryPickErrorDetails {
259
+ reason?: CherryPickErrorReason;
260
+ revs?: string[];
261
+ gitCommand?: GitCommandContext;
262
+ }
263
+
264
+ export class CherryPickError extends GitCommandError<CherryPickErrorDetails> {
265
+ static override is(ex: unknown): ex is CherryPickError;
266
+ static override is<R extends CherryPickErrorReason>(
267
+ ex: unknown,
268
+ reason: R,
269
+ ): ex is CherryPickError & { details: { reason: R } };
270
+ static override is(ex: unknown, reason?: CherryPickErrorReason): boolean {
271
+ return ex instanceof CherryPickError && (reason == null || ex.details.reason === reason);
272
+ }
273
+
274
+ constructor(details: CherryPickErrorDetails, original?: Error) {
275
+ super('Unable to cherry-pick', details, original);
276
+ }
277
+
278
+ protected override buildErrorMessage(details: CherryPickErrorDetails): string {
279
+ const baseMessage = `Unable to cherry-pick${
280
+ details.revs?.length
281
+ ? details.revs.length === 1
282
+ ? ` commit '${details.revs[0]}'`
283
+ : ` ${pluralize('commit', details.revs.length)}`
284
+ : ''
285
+ }`;
286
+
287
+ switch (details.reason) {
288
+ case 'aborted':
289
+ return `${baseMessage} as it was aborted.`;
290
+ case 'alreadyInProgress':
291
+ return `${baseMessage} as a cherry-pick is already in progress.`;
292
+ case 'conflicts':
293
+ return `${baseMessage} due to conflicts.`;
294
+ case 'emptyCommit':
295
+ return `${baseMessage} because it is an empty commit.`;
296
+ case 'wouldOverwriteChanges':
297
+ return `${baseMessage} as some local changes would be overwritten.`;
298
+ default:
299
+ return baseMessage;
300
+ }
301
+ }
302
+ }
303
+
304
+ export type FetchErrorReason = 'noFastForward' | 'noRemote' | 'remoteConnectionFailed' | 'other';
305
+ interface FetchErrorDetails {
306
+ reason?: FetchErrorReason;
307
+ branch?: string;
308
+ remote?: string;
309
+ gitCommand?: GitCommandContext;
310
+ }
311
+
312
+ export class FetchError extends GitCommandError<FetchErrorDetails> {
313
+ static override is(ex: unknown): ex is FetchError;
314
+ static override is<R extends FetchErrorReason>(
315
+ ex: unknown,
316
+ reason: R,
317
+ ): ex is FetchError & { details: { reason: R } };
318
+ static override is(ex: unknown, reason?: FetchErrorReason): boolean {
319
+ return ex instanceof FetchError && (reason == null || ex.details.reason === reason);
320
+ }
321
+
322
+ constructor(details: FetchErrorDetails, original?: Error) {
323
+ super('Unable to fetch', details, original);
324
+ }
325
+
326
+ protected override buildErrorMessage(details: FetchErrorDetails): string {
327
+ const baseMessage = `Unable to fetch${details.branch ? ` branch '${details.branch}'` : ''}${
328
+ details.remote ? ` from ${details.remote}` : ''
329
+ }`;
330
+ switch (details.reason) {
331
+ case 'noFastForward':
332
+ return `${baseMessage} as it cannot be fast-forwarded`;
333
+ case 'noRemote':
334
+ return `${baseMessage} without a remote repository specified.`;
335
+ case 'remoteConnectionFailed':
336
+ return `${baseMessage}. Could not connect to the remote repository.`;
337
+ default:
338
+ return baseMessage;
339
+ }
340
+ }
341
+ }
342
+
343
+ export type MergeErrorReason =
344
+ | 'aborted'
345
+ | 'alreadyInProgress'
346
+ | 'conflicts'
347
+ | 'uncommittedChanges'
348
+ | 'wouldOverwriteChanges'
349
+ | 'other';
350
+ interface MergeErrorDetails {
351
+ reason?: MergeErrorReason;
352
+ ref?: string;
353
+ gitCommand?: GitCommandContext;
354
+ }
355
+ export class MergeError extends GitCommandError<MergeErrorDetails> {
356
+ static override is(ex: unknown): ex is MergeError;
357
+ static override is<R extends MergeErrorReason>(
358
+ ex: unknown,
359
+ reason: R,
360
+ ): ex is MergeError & { details: { reason: R } };
361
+ static override is(ex: unknown, reason?: MergeErrorReason): boolean {
362
+ return ex instanceof MergeError && (reason == null || ex.details.reason === reason);
363
+ }
364
+
365
+ constructor(details: MergeErrorDetails, original?: Error) {
366
+ super('Unable to merge', details, original);
367
+ }
368
+
369
+ protected override buildErrorMessage(details: MergeErrorDetails): string {
370
+ const baseMessage = `Unable to merge${details.ref ? ` '${details.ref}'` : ''}`;
371
+
372
+ switch (details.reason) {
373
+ case 'aborted':
374
+ return `Merge${details.ref ? ` of '${details.ref}'` : ''} was aborted`;
375
+ case 'alreadyInProgress':
376
+ return `${baseMessage} because a merge is already in progress`;
377
+ case 'conflicts':
378
+ return `${baseMessage} due to conflicts. Resolve the conflicts first and continue the merge`;
379
+ case 'uncommittedChanges':
380
+ return `${baseMessage} because there are uncommitted changes`;
381
+ case 'wouldOverwriteChanges':
382
+ return `${baseMessage} because some local changes would be overwritten`;
383
+ default:
384
+ return baseMessage;
385
+ }
386
+ }
387
+ }
388
+
389
+ export type PausedOperationAbortErrorReason = 'nothingToAbort';
390
+ interface PausedOperationAbortErrorDetails {
391
+ reason?: PausedOperationAbortErrorReason;
392
+ operation: GitPausedOperationStatus;
393
+ gitCommand?: GitCommandContext;
394
+ }
395
+
396
+ export class PausedOperationAbortError extends GitCommandError<PausedOperationAbortErrorDetails> {
397
+ static override is(ex: unknown): ex is PausedOperationAbortError;
398
+ static override is<R extends PausedOperationAbortErrorReason>(
399
+ ex: unknown,
400
+ reason: R,
401
+ ): ex is PausedOperationAbortError & { details: { reason: R } };
402
+ static override is(ex: unknown, reason?: PausedOperationAbortErrorReason): boolean {
403
+ return ex instanceof PausedOperationAbortError && (reason == null || ex.details.reason === reason);
404
+ }
405
+
406
+ constructor(details: PausedOperationAbortErrorDetails, original?: Error) {
407
+ super('Unable to abort operation', details, original);
408
+ }
409
+
410
+ protected override buildErrorMessage(details: PausedOperationAbortErrorDetails): string {
411
+ switch (details.reason) {
412
+ case 'nothingToAbort':
413
+ return `Cannot abort as there is no ${details.operation.type} operation in progress`;
414
+ default:
415
+ return `Unable to abort the ${details.operation.type} operation${this.original ? `: ${this.original.message}` : ''}`;
416
+ }
417
+ }
418
+ }
419
+
420
+ export type PausedOperationContinueErrorReason =
421
+ | 'conflicts'
422
+ | 'emptyCommit'
423
+ | 'nothingToContinue'
424
+ | 'uncommittedChanges'
425
+ | 'unmergedFiles'
426
+ | 'unstagedChanges'
427
+ | 'wouldOverwriteChanges';
428
+ interface PausedOperationContinueErrorDetails {
429
+ reason?: PausedOperationContinueErrorReason;
430
+ operation: GitPausedOperationStatus;
431
+ skip?: boolean;
432
+ gitCommand?: GitCommandContext;
433
+ }
434
+
435
+ export class PausedOperationContinueError extends GitCommandError<PausedOperationContinueErrorDetails> {
436
+ static override is(ex: unknown): ex is PausedOperationContinueError;
437
+ static override is<R extends PausedOperationContinueErrorReason>(
438
+ ex: unknown,
439
+ reason: R,
440
+ ): ex is PausedOperationContinueError & { details: { reason: R } };
441
+ static override is(ex: unknown, reason?: PausedOperationContinueErrorReason): boolean {
442
+ return ex instanceof PausedOperationContinueError && (reason == null || ex.details.reason === reason);
443
+ }
444
+
445
+ constructor(details: PausedOperationContinueErrorDetails, original?: Error) {
446
+ super('Unable to continue operation', details, original);
447
+ }
448
+
449
+ protected override buildErrorMessage(details: PausedOperationContinueErrorDetails): string {
450
+ switch (details.reason) {
451
+ case 'conflicts':
452
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as there are unresolved conflicts`;
453
+ case 'emptyCommit':
454
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as the previous commit is empty`;
455
+ case 'nothingToContinue':
456
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as there is no ${details.operation.type} in progress`;
457
+ case 'uncommittedChanges':
458
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as there are uncommitted changes`;
459
+ case 'unmergedFiles':
460
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as there are unmerged files`;
461
+ case 'unstagedChanges':
462
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as there are unstaged changes`;
463
+ case 'wouldOverwriteChanges':
464
+ return `Cannot ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation as some local changes would be overwritten`;
465
+ default:
466
+ return `Unable to ${details.skip ? 'skip' : 'continue'} the ${details.operation.type} operation${this.original ? `: ${this.original.message}` : ''}`;
467
+ }
468
+ }
469
+ }
470
+
471
+ export type PullErrorReason =
472
+ | 'conflict'
473
+ | 'gitIdentity'
474
+ | 'rebaseMultipleBranches'
475
+ | 'refLocked'
476
+ | 'remoteConnectionFailed'
477
+ | 'tagConflict'
478
+ | 'uncommittedChanges'
479
+ | 'unmergedFiles'
480
+ | 'unstagedChanges'
481
+ | 'wouldOverwriteChanges'
482
+ | 'other';
483
+ interface PullErrorDetails {
484
+ reason?: PullErrorReason;
485
+ gitCommand?: GitCommandContext;
486
+ }
487
+
488
+ export class PullError extends GitCommandError<PullErrorDetails> {
489
+ static override is(ex: unknown): ex is PullError;
490
+ static override is<R extends PullErrorReason>(ex: unknown, reason: R): ex is PullError & { details: { reason: R } };
491
+ static override is(ex: unknown, reason?: PullErrorReason): boolean {
492
+ return ex instanceof PullError && (reason == null || ex.details.reason === reason);
493
+ }
494
+
495
+ constructor(details: PullErrorDetails, original?: Error) {
496
+ super('Unable to pull', details, original);
497
+ }
498
+
499
+ protected override buildErrorMessage(details: PullErrorDetails): string {
500
+ const baseMessage = 'Unable to pull';
501
+ switch (details.reason) {
502
+ case 'conflict':
503
+ return 'Unable to complete pull due to conflicts which must be resolved.';
504
+ case 'gitIdentity':
505
+ return `${baseMessage} because you have not yet set up your Git identity.`;
506
+ case 'rebaseMultipleBranches':
507
+ return `${baseMessage} because you are trying to rebase onto multiple branches.`;
508
+ case 'refLocked':
509
+ return `${baseMessage} because a local ref could not be updated.`;
510
+ case 'remoteConnectionFailed':
511
+ return `${baseMessage} because the remote repository could not be reached.`;
512
+ case 'tagConflict':
513
+ return `${baseMessage} because a local tag would be overwritten.`;
514
+ case 'uncommittedChanges':
515
+ return `${baseMessage} because you have uncommitted changes.`;
516
+ case 'unmergedFiles':
517
+ return `${baseMessage} because you have unmerged files.`;
518
+ case 'unstagedChanges':
519
+ return `${baseMessage} because you have unstaged changes.`;
520
+ case 'wouldOverwriteChanges':
521
+ return `${baseMessage} because local changes to some files would be overwritten.`;
522
+ default:
523
+ return baseMessage;
524
+ }
525
+ }
526
+ }
527
+
528
+ export type PushErrorReason =
529
+ | 'noUpstream'
530
+ | 'permissionDenied'
531
+ | 'rejected'
532
+ | 'rejectedRefDoesNotExist'
533
+ | 'rejectedWithLease'
534
+ | 'rejectedWithLeaseIfIncludes'
535
+ | 'remoteAhead'
536
+ | 'remoteConnectionFailed'
537
+ | 'tipBehind'
538
+ | 'other';
539
+ interface PushErrorDetails {
540
+ reason?: PushErrorReason;
541
+ branch?: string;
542
+ remote?: string;
543
+ gitCommand?: GitCommandContext;
544
+ }
545
+
546
+ export class PushError extends GitCommandError<PushErrorDetails> {
547
+ static override is(ex: unknown): ex is PushError;
548
+ static override is<R extends PushErrorReason>(ex: unknown, reason: R): ex is PushError & { details: { reason: R } };
549
+ static override is(ex: unknown, reason?: PushErrorReason): boolean {
550
+ return ex instanceof PushError && (reason == null || ex.details.reason === reason);
551
+ }
552
+
553
+ constructor(details: PushErrorDetails, original?: Error) {
554
+ super('Unable to push', details, original);
555
+ }
556
+
557
+ protected override buildErrorMessage(details: PushErrorDetails): string {
558
+ const baseMessage = `Unable to push${details.branch ? ` branch '${details.branch}'` : ''}${
559
+ details.remote ? ` to ${details.remote}` : ''
560
+ }`;
561
+ switch (details.reason) {
562
+ case 'noUpstream':
563
+ return `${baseMessage} because it has no upstream branch.`;
564
+ case 'permissionDenied':
565
+ return `${baseMessage} because you don't have permission to push to this remote repository.`;
566
+ case 'rejected':
567
+ return `${baseMessage} because some refs failed to push or the push was rejected. Try pulling first.`;
568
+ case 'rejectedRefDoesNotExist':
569
+ return `Unable to delete remote branch${details.branch ? ` '${details.branch}'` : ''}${
570
+ details.remote ? ` from ${details.remote}` : ''
571
+ }, the remote reference does not exist`;
572
+ case 'rejectedWithLease':
573
+ case 'rejectedWithLeaseIfIncludes':
574
+ return `Unable to force push${details.branch ? ` branch '${details.branch}'` : ''}${
575
+ details.remote ? ` to ${details.remote}` : ''
576
+ } because some refs failed to push or the push was rejected. The tip of the remote-tracking branch has been updated since the last checkout. Try pulling first.`;
577
+ case 'remoteAhead':
578
+ return `${baseMessage} because the remote contains work that you do not have locally. Try fetching first.`;
579
+ case 'remoteConnectionFailed':
580
+ return `${baseMessage} because the remote repository could not be reached.`;
581
+ case 'tipBehind':
582
+ return `${baseMessage} as it is behind its remote counterpart. Try pulling first.`;
583
+ default:
584
+ return baseMessage;
585
+ }
586
+ }
587
+ }
588
+
589
+ export type RebaseErrorReason =
590
+ | 'aborted'
591
+ | 'alreadyInProgress'
592
+ | 'conflicts'
593
+ | 'uncommittedChanges'
594
+ | 'wouldOverwriteChanges'
595
+ | 'other';
596
+ interface RebaseErrorDetails {
597
+ reason?: RebaseErrorReason;
598
+ upstream?: string;
599
+ gitCommand?: GitCommandContext;
600
+ }
601
+
602
+ export class RebaseError extends GitCommandError<RebaseErrorDetails> {
603
+ static override is(ex: unknown): ex is RebaseError;
604
+ static override is<R extends RebaseErrorReason>(
605
+ ex: unknown,
606
+ reason: R,
607
+ ): ex is RebaseError & { details: { reason: R } };
608
+ static override is(ex: unknown, reason?: RebaseErrorReason): boolean {
609
+ return ex instanceof RebaseError && (reason == null || ex.details.reason === reason);
610
+ }
611
+
612
+ constructor(details: RebaseErrorDetails, original?: Error) {
613
+ super('Unable to rebase', details, original);
614
+ }
615
+
616
+ protected override buildErrorMessage(details: RebaseErrorDetails): string {
617
+ const baseMessage = `Unable to rebase${details.upstream ? ` onto '${details.upstream}'` : ''}`;
618
+
619
+ switch (details.reason) {
620
+ case 'aborted':
621
+ return `Rebase${details.upstream ? ` onto '${details.upstream}'` : ''} was aborted`;
622
+ case 'alreadyInProgress':
623
+ return `${baseMessage} because a rebase is already in progress`;
624
+ case 'conflicts':
625
+ return `${baseMessage} due to conflicts. Resolve the conflicts first and continue the rebase`;
626
+ case 'uncommittedChanges':
627
+ return `${baseMessage} because there are uncommitted changes`;
628
+ case 'wouldOverwriteChanges':
629
+ return `${baseMessage} because some local changes would be overwritten`;
630
+ default:
631
+ return baseMessage;
632
+ }
633
+ }
634
+ }
635
+
636
+ export type ResetErrorReason =
637
+ | 'ambiguousArgument'
638
+ | 'notUpToDate'
639
+ | 'detachedHead'
640
+ | 'permissionDenied'
641
+ | 'refLocked'
642
+ | 'unmergedChanges'
643
+ | 'wouldOverwriteChanges'
644
+ | 'other';
645
+ interface ResetErrorDetails {
646
+ reason?: ResetErrorReason;
647
+ gitCommand?: GitCommandContext;
648
+ }
649
+
650
+ export class ResetError extends GitCommandError<ResetErrorDetails> {
651
+ static override is(ex: unknown): ex is ResetError;
652
+ static override is<R extends ResetErrorReason>(
653
+ ex: unknown,
654
+ reason: R,
655
+ ): ex is ResetError & { details: { reason: R } };
656
+ static override is(ex: unknown, reason?: ResetErrorReason): boolean {
657
+ return ex instanceof ResetError && (reason == null || ex.details.reason === reason);
658
+ }
659
+
660
+ constructor(details: ResetErrorDetails, original?: Error) {
661
+ super('Unable to reset', details, original);
662
+ }
663
+
664
+ protected override buildErrorMessage(details: ResetErrorDetails): string {
665
+ const baseMessage = 'Unable to reset';
666
+ switch (details.reason) {
667
+ case 'ambiguousArgument':
668
+ return `${baseMessage} because the argument is ambiguous`;
669
+ case 'detachedHead':
670
+ return `${baseMessage} because you are in a detached HEAD state`;
671
+ case 'notUpToDate':
672
+ return `${baseMessage} because the index is not up to date (you may have unresolved merge conflicts)`;
673
+ case 'permissionDenied':
674
+ return `${baseMessage} because you don't have permission to modify affected files`;
675
+ case 'refLocked':
676
+ return `${baseMessage} because the ref is locked`;
677
+ case 'unmergedChanges':
678
+ return `${baseMessage} because there are unmerged changes`;
679
+ case 'wouldOverwriteChanges':
680
+ return `${baseMessage} because your local changes would be overwritten`;
681
+ default:
682
+ return baseMessage;
683
+ }
684
+ }
685
+ }
686
+
687
+ export type RevertErrorReason =
688
+ | 'aborted'
689
+ | 'alreadyInProgress'
690
+ | 'conflicts'
691
+ | 'uncommittedChanges'
692
+ | 'wouldOverwriteChanges'
693
+ | 'other';
694
+ interface RevertErrorDetails {
695
+ reason?: RevertErrorReason;
696
+ refs?: string[];
697
+ gitCommand?: GitCommandContext;
698
+ }
699
+
700
+ export class RevertError extends GitCommandError<RevertErrorDetails> {
701
+ static override is(ex: unknown): ex is RevertError;
702
+ static override is<R extends RevertErrorReason>(
703
+ ex: unknown,
704
+ reason: R,
705
+ ): ex is RevertError & { details: { reason: R } };
706
+ static override is(ex: unknown, reason?: RevertErrorReason): boolean {
707
+ return ex instanceof RevertError && (reason == null || ex.details.reason === reason);
708
+ }
709
+
710
+ constructor(details: RevertErrorDetails, original?: Error) {
711
+ super('Unable to revert', details, original);
712
+ }
713
+
714
+ protected override buildErrorMessage(details: RevertErrorDetails): string {
715
+ const baseMessage = `Unable to revert${details.refs?.length ? ` ${details.refs.join(', ')}` : ''}`;
716
+
717
+ switch (details.reason) {
718
+ case 'aborted':
719
+ return `Revert${details.refs?.length ? ` of ${details.refs.join(', ')}` : ''} was aborted`;
720
+ case 'alreadyInProgress':
721
+ return `${baseMessage} because a revert is already in progress`;
722
+ case 'conflicts':
723
+ return `${baseMessage} due to conflicts. Resolve the conflicts first and continue the revert`;
724
+ case 'uncommittedChanges':
725
+ return `${baseMessage} because there are uncommitted changes`;
726
+ case 'wouldOverwriteChanges':
727
+ return `${baseMessage} because some local changes would be overwritten`;
728
+ default:
729
+ return baseMessage;
730
+ }
731
+ }
732
+ }
733
+
734
+ export type StashApplyErrorReason = 'uncommittedChanges' | 'other';
735
+ interface StashApplyErrorDetails {
736
+ reason?: StashApplyErrorReason;
737
+ gitCommand?: GitCommandContext;
738
+ }
739
+
740
+ export class StashApplyError extends GitCommandError<StashApplyErrorDetails> {
741
+ static override is(ex: unknown): ex is StashApplyError;
742
+ static override is<R extends StashApplyErrorReason>(
743
+ ex: unknown,
744
+ reason: R,
745
+ ): ex is StashApplyError & { details: { reason: R } };
746
+ static override is(ex: unknown, reason?: StashApplyErrorReason): boolean {
747
+ return ex instanceof StashApplyError && (reason == null || ex.details.reason === reason);
748
+ }
749
+
750
+ constructor(details: StashApplyErrorDetails, original?: Error) {
751
+ super('Unable to apply stash', details, original);
752
+ }
753
+
754
+ protected override buildErrorMessage(details: StashApplyErrorDetails): string {
755
+ switch (details.reason) {
756
+ case 'uncommittedChanges':
757
+ return 'Unable to apply stash. Your working tree changes would be overwritten. Please commit or stash your changes before trying again';
758
+ default:
759
+ return 'Unable to apply stash';
760
+ }
761
+ }
762
+ }
763
+
764
+ export type StashPushErrorReason = 'conflictingStagedAndUnstagedLines' | 'nothingToSave' | 'other';
765
+ interface StashPushErrorDetails {
766
+ reason?: StashPushErrorReason;
767
+ gitCommand?: GitCommandContext;
768
+ }
769
+
770
+ export class StashPushError extends GitCommandError<StashPushErrorDetails> {
771
+ static override is(ex: unknown): ex is StashPushError;
772
+ static override is<R extends StashPushErrorReason>(
773
+ ex: unknown,
774
+ reason: R,
775
+ ): ex is StashPushError & { details: { reason: R } };
776
+ static override is(ex: unknown, reason?: StashPushErrorReason): boolean {
777
+ return ex instanceof StashPushError && (reason == null || ex.details.reason === reason);
778
+ }
779
+
780
+ constructor(details: StashPushErrorDetails, original?: Error) {
781
+ super('Unable to stash', details, original);
782
+ }
783
+
784
+ protected override buildErrorMessage(details: StashPushErrorDetails): string {
785
+ switch (details.reason) {
786
+ case 'conflictingStagedAndUnstagedLines':
787
+ return 'Changes were stashed, but the working tree cannot be updated because at least one file has staged and unstaged changes on the same line(s)';
788
+ case 'nothingToSave':
789
+ return 'No files to stash';
790
+ default:
791
+ return 'Unable to stash';
792
+ }
793
+ }
794
+ }
795
+
796
+ export type ShowErrorReason = 'invalidObject' | 'invalidRevision' | 'notFound' | 'notInRevision' | 'other';
797
+ interface ShowErrorDetails {
798
+ reason?: ShowErrorReason;
799
+ rev?: string;
800
+ path?: string;
801
+ gitCommand?: GitCommandContext;
802
+ }
803
+
804
+ export class ShowError extends GitCommandError<ShowErrorDetails> {
805
+ static override is(ex: unknown): ex is ShowError;
806
+ static override is<R extends ShowErrorReason>(ex: unknown, reason: R): ex is ShowError & { details: { reason: R } };
807
+ static override is(ex: unknown, reason?: ShowErrorReason): boolean {
808
+ return ex instanceof ShowError && (reason == null || ex.details.reason === reason);
809
+ }
810
+
811
+ constructor(details: ShowErrorDetails, original?: Error) {
812
+ super('Unable to show file', details, original);
813
+ }
814
+
815
+ protected override buildErrorMessage(details: ShowErrorDetails): string {
816
+ const baseMessage = `Unable to show${details.path ? ` '${details.path}'` : ' file'}${
817
+ details.rev ? ` at revision '${details.rev}'` : ''
818
+ }`;
819
+ switch (details.reason) {
820
+ case 'invalidObject':
821
+ return `${baseMessage} because the path is not a file`;
822
+ case 'invalidRevision':
823
+ return `${baseMessage} because the specified revision is invalid`;
824
+ case 'notFound':
825
+ return `${baseMessage} because the file does not exist`;
826
+ case 'notInRevision':
827
+ return `${baseMessage} because the file is not in the specified revision`;
828
+ default:
829
+ return baseMessage;
830
+ }
831
+ }
832
+ }
833
+
834
+ export type TagErrorReason =
835
+ | 'alreadyExists'
836
+ | 'invalidName'
837
+ | 'notFound'
838
+ | 'permissionDenied'
839
+ | 'remoteRejected'
840
+ | 'other';
841
+ interface TagErrorDetails {
842
+ reason?: TagErrorReason;
843
+ action?: string;
844
+ tag?: string;
845
+ gitCommand?: GitCommandContext;
846
+ }
847
+
848
+ export class TagError extends GitCommandError<TagErrorDetails> {
849
+ static override is(ex: unknown): ex is TagError;
850
+ static override is<R extends TagErrorReason>(ex: unknown, reason: R): ex is TagError & { details: { reason: R } };
851
+ static override is(ex: unknown, reason?: TagErrorReason): boolean {
852
+ return ex instanceof TagError && (reason == null || ex.details.reason === reason);
853
+ }
854
+
855
+ constructor(details: TagErrorDetails, original?: Error) {
856
+ super('Unable to perform action on tag', details, original);
857
+ }
858
+
859
+ protected override buildErrorMessage(details: TagErrorDetails): string {
860
+ let baseMessage: string;
861
+ if (details.action != null) {
862
+ baseMessage = `Unable to ${details.action} tag ${details.tag ? `'${details.tag}'` : ''}`;
863
+ } else {
864
+ baseMessage = `Unable to perform action${details.tag ? ` with tag '${details.tag}'` : 'on tag'}`;
865
+ }
866
+
867
+ switch (details.reason) {
868
+ case 'alreadyExists':
869
+ return `${baseMessage} because it already exists`;
870
+ case 'invalidName':
871
+ return `${baseMessage} because the tag name is invalid`;
872
+ case 'notFound':
873
+ return `${baseMessage} because it does not exist`;
874
+ case 'permissionDenied':
875
+ return `${baseMessage} because you don't have permission to push to this remote repository.`;
876
+ case 'remoteRejected':
877
+ return `${baseMessage} because the remote repository rejected the push.`;
878
+ default:
879
+ return baseMessage;
880
+ }
881
+ }
882
+ }
883
+
884
+ export class WorkspaceUntrustedError extends Error {
885
+ static is(ex: unknown): ex is WorkspaceUntrustedError {
886
+ return ex instanceof WorkspaceUntrustedError;
887
+ }
888
+
889
+ constructor() {
890
+ super('Unable to perform Git operations because the current workspace is untrusted');
891
+
892
+ Error.captureStackTrace?.(this, new.target);
893
+ }
894
+ }
895
+
896
+ export type WorktreeCreateErrorReason = 'alreadyCheckedOut' | 'alreadyExists';
897
+ interface WorktreeCreateErrorDetails {
898
+ reason?: WorktreeCreateErrorReason;
899
+ gitCommand?: GitCommandContext;
900
+ }
901
+
902
+ export class WorktreeCreateError extends GitCommandError<WorktreeCreateErrorDetails> {
903
+ static override is(ex: unknown): ex is WorktreeCreateError;
904
+ static override is<R extends WorktreeCreateErrorReason>(
905
+ ex: unknown,
906
+ reason: R,
907
+ ): ex is WorktreeCreateError & { details: { reason: R } };
908
+ static override is(ex: unknown, reason?: WorktreeCreateErrorReason): boolean {
909
+ return ex instanceof WorktreeCreateError && (reason == null || ex.details.reason === reason);
910
+ }
911
+
912
+ constructor(details: WorktreeCreateErrorDetails, original?: Error) {
913
+ super('Unable to create worktree', details, original);
914
+ }
915
+
916
+ protected override buildErrorMessage(details: WorktreeCreateErrorDetails): string {
917
+ switch (details.reason) {
918
+ case 'alreadyCheckedOut':
919
+ return 'Unable to create worktree because it is already checked out';
920
+ case 'alreadyExists':
921
+ return 'Unable to create worktree because it already exists';
922
+ default:
923
+ return 'Unable to create worktree';
924
+ }
925
+ }
926
+ }
927
+
928
+ export type WorktreeDeleteErrorReason = 'defaultWorkingTree' | 'directoryNotEmpty' | 'uncommittedChanges';
929
+ interface WorktreeDeleteErrorDetails {
930
+ reason?: WorktreeDeleteErrorReason;
931
+ gitCommand?: GitCommandContext;
932
+ }
933
+
934
+ export class WorktreeDeleteError extends GitCommandError<WorktreeDeleteErrorDetails> {
935
+ static override is(ex: unknown): ex is WorktreeDeleteError;
936
+ static override is<R extends WorktreeDeleteErrorReason>(
937
+ ex: unknown,
938
+ reason: R,
939
+ ): ex is WorktreeDeleteError & { details: { reason: R } };
940
+ static override is(ex: unknown, reason?: WorktreeDeleteErrorReason): boolean {
941
+ return ex instanceof WorktreeDeleteError && (reason == null || ex.details.reason === reason);
942
+ }
943
+
944
+ constructor(details: WorktreeDeleteErrorDetails, original?: Error) {
945
+ super('Unable to delete worktree', details, original);
946
+ }
947
+
948
+ protected override buildErrorMessage(details: WorktreeDeleteErrorDetails): string {
949
+ switch (details.reason) {
950
+ case 'defaultWorkingTree':
951
+ return 'Cannot delete worktree because it is the default working tree';
952
+ case 'directoryNotEmpty':
953
+ return 'Unable to delete worktree because the directory is not empty';
954
+ case 'uncommittedChanges':
955
+ return 'Unable to delete worktree because there are uncommitted changes';
956
+ default:
957
+ return 'Unable to delete worktree';
958
+ }
959
+ }
960
+ }
961
+
962
+ /**
963
+ * Token info accepted by {@link AuthenticationError}.
964
+ * Structurally compatible with both the extension's `TokenInfo` / `TokenWithInfo`
965
+ * and the package's `GitHubTokenInfo`.
966
+ */
967
+ export interface AuthTokenInfo {
968
+ readonly providerId: string;
969
+ readonly microHash?: string;
970
+ readonly cloud: boolean;
971
+ readonly type: string | undefined;
972
+ readonly scopes?: readonly string[];
973
+ readonly expiresAt?: Date;
974
+ }
975
+
976
+ export const enum AuthenticationErrorReason {
977
+ UserDidNotConsent = 1,
978
+ Unauthorized = 2,
979
+ Forbidden = 3,
980
+ }
981
+
982
+ export class AuthenticationError extends Error {
983
+ readonly id: string;
984
+ readonly original?: Error;
985
+ readonly reason: AuthenticationErrorReason | undefined;
986
+ readonly authInfo: string;
987
+
988
+ constructor(info: AuthTokenInfo, reason?: AuthenticationErrorReason, original?: Error);
989
+ constructor(info: AuthTokenInfo, message?: string, original?: Error);
990
+ constructor(
991
+ info: AuthTokenInfo,
992
+ messageOrReason: string | AuthenticationErrorReason | undefined,
993
+ original?: Error,
994
+ ) {
995
+ const { providerId: id, type, cloud, scopes, expiresAt } = info;
996
+ const tokenDetails = [
997
+ cloud ? 'cloud' : 'self-managed',
998
+ type,
999
+ info.microHash,
1000
+ expiresAt && `expiresAt=${isNaN(expiresAt.getTime()) ? expiresAt.toString() : expiresAt.toISOString()}`,
1001
+ scopes && `[${scopes.join(',')}]`,
1002
+ ]
1003
+ .filter(v => v)
1004
+ .join(', ');
1005
+ const authInfo = `(token details: ${tokenDetails})`;
1006
+ let message;
1007
+ let reason: AuthenticationErrorReason | undefined;
1008
+ if (messageOrReason == null) {
1009
+ message = `Unable to get required authentication session for '${id}'`;
1010
+ } else if (typeof messageOrReason === 'string') {
1011
+ message = messageOrReason;
1012
+ reason = undefined;
1013
+ } else {
1014
+ reason = messageOrReason;
1015
+ switch (reason) {
1016
+ case AuthenticationErrorReason.UserDidNotConsent:
1017
+ message = `'${id}' authentication is required for this operation`;
1018
+ break;
1019
+ case AuthenticationErrorReason.Unauthorized:
1020
+ message = `Your '${id}' credentials are either invalid or expired`;
1021
+ break;
1022
+ case AuthenticationErrorReason.Forbidden:
1023
+ message = `Your '${id}' credentials do not have the required access`;
1024
+ break;
1025
+ }
1026
+ }
1027
+ super(message);
1028
+
1029
+ this.id = id;
1030
+ this.original = original;
1031
+ this.reason = reason;
1032
+ this.authInfo = authInfo;
1033
+ Error.captureStackTrace?.(this, new.target);
1034
+ }
1035
+
1036
+ static is(ex: unknown): ex is AuthenticationError {
1037
+ return ex instanceof AuthenticationError;
1038
+ }
1039
+
1040
+ override toString(): string {
1041
+ return `${super.toString()} ${this.authInfo}`;
1042
+ }
1043
+ }
1044
+
1045
+ export class RequestClientError extends Error {
1046
+ static is(ex: unknown): ex is RequestClientError {
1047
+ return ex instanceof RequestClientError;
1048
+ }
1049
+
1050
+ constructor(public readonly original: Error) {
1051
+ super(original.message);
1052
+
1053
+ Error.captureStackTrace?.(this, new.target);
1054
+ }
1055
+ }
1056
+
1057
+ export class RequestNotFoundError extends Error {
1058
+ static is(ex: unknown): ex is RequestNotFoundError {
1059
+ return ex instanceof RequestNotFoundError;
1060
+ }
1061
+
1062
+ constructor(public readonly original: Error) {
1063
+ super(original.message);
1064
+
1065
+ Error.captureStackTrace?.(this, new.target);
1066
+ }
1067
+ }
1068
+
1069
+ export class RequestRateLimitError extends Error {
1070
+ static is(ex: unknown): ex is RequestRateLimitError {
1071
+ return ex instanceof RequestRateLimitError;
1072
+ }
1073
+
1074
+ constructor(
1075
+ public readonly original: Error,
1076
+ public readonly token: string | undefined,
1077
+ public readonly resetAt: number | undefined,
1078
+ ) {
1079
+ super(original.message);
1080
+
1081
+ Error.captureStackTrace?.(this, new.target);
1082
+ }
1083
+ }
1084
+
1085
+ export type SigningErrorReason = 'noKey' | 'gpgNotFound' | 'sshNotFound' | 'passphraseFailed' | 'unknown';
1086
+
1087
+ interface SigningErrorDetails {
1088
+ reason?: SigningErrorReason;
1089
+ gitCommand?: GitCommandContext;
1090
+ }
1091
+
1092
+ export class SigningError extends GitCommandError<SigningErrorDetails> {
1093
+ static override is(ex: unknown): ex is SigningError;
1094
+ static override is<R extends SigningErrorReason>(
1095
+ ex: unknown,
1096
+ reason: R,
1097
+ ): ex is SigningError & { details: { reason: R } };
1098
+ static override is(ex: unknown, reason?: SigningErrorReason): boolean {
1099
+ return ex instanceof SigningError && (reason == null || ex.details.reason === reason);
1100
+ }
1101
+
1102
+ constructor(details: SigningErrorDetails, original?: Error) {
1103
+ super('Unable to sign commit', details, original);
1104
+ }
1105
+
1106
+ protected override buildErrorMessage(details: SigningErrorDetails): string {
1107
+ const baseMessage = 'Unable to sign commit';
1108
+ switch (details.reason) {
1109
+ case 'noKey':
1110
+ return `${baseMessage} because no signing key is configured`;
1111
+ case 'gpgNotFound':
1112
+ return `${baseMessage} because GPG program was not found`;
1113
+ case 'sshNotFound':
1114
+ return `${baseMessage} because SSH program was not found`;
1115
+ case 'passphraseFailed':
1116
+ return `${baseMessage} because GPG passphrase failed or was cancelled`;
1117
+ default:
1118
+ return baseMessage;
1119
+ }
1120
+ }
1121
+ }