@gitkraken/core-gitlens 0.3.0 → 0.4.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 (378) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/README.md +13 -10
  3. package/dist/git/cache.d.ts +12 -6
  4. package/dist/git/cache.d.ts.map +1 -1
  5. package/dist/git/cache.js +40 -39
  6. package/dist/git/cache.js.map +1 -1
  7. package/dist/git/context.d.ts +23 -3
  8. package/dist/git/context.d.ts.map +1 -1
  9. package/dist/git/context.js.map +1 -1
  10. package/dist/git/features.d.ts +1 -1
  11. package/dist/git/features.d.ts.map +1 -1
  12. package/dist/git/features.js +1 -0
  13. package/dist/git/features.js.map +1 -1
  14. package/dist/git/models/graph.d.ts +96 -0
  15. package/dist/git/models/graph.d.ts.map +1 -1
  16. package/dist/git/models/graph.js +24 -1
  17. package/dist/git/models/graph.js.map +1 -1
  18. package/dist/git/models/remoteProvider.d.ts +1 -0
  19. package/dist/git/models/remoteProvider.d.ts.map +1 -1
  20. package/dist/git/models/remoteProvider.js.map +1 -1
  21. package/dist/git/models/repository.d.ts +21 -12
  22. package/dist/git/models/repository.d.ts.map +1 -1
  23. package/dist/git/models/repository.js +70 -84
  24. package/dist/git/models/repository.js.map +1 -1
  25. package/dist/git/models/statusFile.d.ts +9 -0
  26. package/dist/git/models/statusFile.d.ts.map +1 -1
  27. package/dist/git/models/statusFile.js +11 -0
  28. package/dist/git/models/statusFile.js.map +1 -1
  29. package/dist/git/providers/commits.d.ts +4 -0
  30. package/dist/git/providers/commits.d.ts.map +1 -1
  31. package/dist/git/providers/config.d.ts +1 -3
  32. package/dist/git/providers/config.d.ts.map +1 -1
  33. package/dist/git/providers/operations.d.ts +40 -13
  34. package/dist/git/providers/operations.d.ts.map +1 -1
  35. package/dist/git/providers/worktrees.d.ts +2 -0
  36. package/dist/git/providers/worktrees.d.ts.map +1 -1
  37. package/dist/git/remotes/custom.d.ts +2 -0
  38. package/dist/git/remotes/custom.d.ts.map +1 -1
  39. package/dist/git/remotes/custom.js +20 -0
  40. package/dist/git/remotes/custom.js.map +1 -1
  41. package/dist/git/utils/conflictResolution.utils.d.ts +32 -0
  42. package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -1
  43. package/dist/git/utils/conflictResolution.utils.js +95 -0
  44. package/dist/git/utils/conflictResolution.utils.js.map +1 -1
  45. package/dist/git/utils/contributor.utils.d.ts +3 -0
  46. package/dist/git/utils/contributor.utils.d.ts.map +1 -1
  47. package/dist/git/utils/contributor.utils.js +22 -0
  48. package/dist/git/utils/contributor.utils.js.map +1 -1
  49. package/dist/git/utils/reachability.utils.d.ts +37 -0
  50. package/dist/git/utils/reachability.utils.d.ts.map +1 -0
  51. package/dist/git/utils/reachability.utils.js +96 -0
  52. package/dist/git/utils/reachability.utils.js.map +1 -0
  53. package/dist/git/watching/watchService.d.ts +4 -2
  54. package/dist/git/watching/watchService.d.ts.map +1 -1
  55. package/dist/git/watching/watchService.js +8 -3
  56. package/dist/git/watching/watchService.js.map +1 -1
  57. package/dist/git/watching/watchSession.d.ts +14 -12
  58. package/dist/git/watching/watchSession.d.ts.map +1 -1
  59. package/dist/git/watching/watchSession.js +56 -55
  60. package/dist/git/watching/watchSession.js.map +1 -1
  61. package/dist/git-cli/providers/branches.d.ts.map +1 -1
  62. package/dist/git-cli/providers/branches.js +1 -0
  63. package/dist/git-cli/providers/branches.js.map +1 -1
  64. package/dist/git-cli/providers/commits.d.ts +1 -0
  65. package/dist/git-cli/providers/commits.d.ts.map +1 -1
  66. package/dist/git-cli/providers/commits.js +12 -0
  67. package/dist/git-cli/providers/commits.js.map +1 -1
  68. package/dist/git-cli/providers/config.d.ts +8 -4
  69. package/dist/git-cli/providers/config.d.ts.map +1 -1
  70. package/dist/git-cli/providers/config.js +62 -39
  71. package/dist/git-cli/providers/config.js.map +1 -1
  72. package/dist/git-cli/providers/diff.d.ts.map +1 -1
  73. package/dist/git-cli/providers/diff.js +1 -1
  74. package/dist/git-cli/providers/diff.js.map +1 -1
  75. package/dist/git-cli/providers/graph.d.ts.map +1 -1
  76. package/dist/git-cli/providers/graph.js +132 -14
  77. package/dist/git-cli/providers/graph.js.map +1 -1
  78. package/dist/git-cli/providers/operations.d.ts +7 -5
  79. package/dist/git-cli/providers/operations.d.ts.map +1 -1
  80. package/dist/git-cli/providers/operations.js +118 -95
  81. package/dist/git-cli/providers/operations.js.map +1 -1
  82. package/dist/git-cli/providers/stash.d.ts.map +1 -1
  83. package/dist/git-cli/providers/stash.js +20 -2
  84. package/dist/git-cli/providers/stash.js.map +1 -1
  85. package/dist/git-cli/providers/status.d.ts.map +1 -1
  86. package/dist/git-cli/providers/status.js +5 -2
  87. package/dist/git-cli/providers/status.js.map +1 -1
  88. package/dist/git-cli/providers/worktrees.d.ts +2 -0
  89. package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
  90. package/dist/git-cli/providers/worktrees.js +3 -0
  91. package/dist/git-cli/providers/worktrees.js.map +1 -1
  92. package/dist/ipc/discovery.d.ts +22 -0
  93. package/dist/ipc/discovery.d.ts.map +1 -1
  94. package/dist/ipc/discovery.js +111 -2
  95. package/dist/ipc/discovery.js.map +1 -1
  96. package/dist/plus/agents/providers/claudeCodeProvider.d.ts +73 -20
  97. package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
  98. package/dist/plus/agents/providers/claudeCodeProvider.js +394 -88
  99. package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
  100. package/dist/plus/agents/types.d.ts +62 -11
  101. package/dist/plus/agents/types.d.ts.map +1 -1
  102. package/dist/plus/ai/models/model.d.ts +1 -1
  103. package/dist/plus/ai/models/model.d.ts.map +1 -1
  104. package/dist/plus/ai/models/model.js.map +1 -1
  105. package/dist/plus/ai/models/provider.d.ts +3 -0
  106. package/dist/plus/ai/models/provider.d.ts.map +1 -1
  107. package/dist/plus/ai/providers/gitkrakenProvider.d.ts +1 -1
  108. package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
  109. package/dist/plus/ai/providers/gitkrakenProvider.js +4 -1
  110. package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
  111. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +4 -3
  112. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
  113. package/dist/plus/ai/providers/openAICompatibleProviderBase.js +9 -6
  114. package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
  115. package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
  116. package/dist/plus/ai/utils/ai.utils.js +6 -4
  117. package/dist/plus/ai/utils/ai.utils.js.map +1 -1
  118. package/dist/plus/git-github/api/github.d.ts +8 -13
  119. package/dist/plus/git-github/api/github.d.ts.map +1 -1
  120. package/dist/plus/git-github/api/github.js +96 -14
  121. package/dist/plus/git-github/api/github.js.map +1 -1
  122. package/dist/plus/git-github/providers/github/refs.js +1 -1
  123. package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts +11 -0
  124. package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts.map +1 -0
  125. package/dist/plus/integrations/authentication/cloudIntegrationService.js +90 -0
  126. package/dist/plus/integrations/authentication/cloudIntegrationService.js.map +1 -0
  127. package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts +67 -0
  128. package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts.map +1 -0
  129. package/dist/plus/integrations/authentication/configuredIntegrationService.js +295 -0
  130. package/dist/plus/integrations/authentication/configuredIntegrationService.js.map +1 -0
  131. package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts +92 -0
  132. package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts.map +1 -0
  133. package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js +185 -0
  134. package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js.map +1 -0
  135. package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts +62 -0
  136. package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts.map +1 -0
  137. package/dist/plus/integrations/authentication/integrationAuthenticationService.js +122 -0
  138. package/dist/plus/integrations/authentication/integrationAuthenticationService.js.map +1 -0
  139. package/dist/plus/integrations/authentication/manualTokenProvider.d.ts +15 -0
  140. package/dist/plus/integrations/authentication/manualTokenProvider.d.ts.map +1 -0
  141. package/dist/plus/integrations/authentication/manualTokenProvider.js +49 -0
  142. package/dist/plus/integrations/authentication/manualTokenProvider.js.map +1 -0
  143. package/dist/plus/integrations/authentication/models.d.ts +87 -0
  144. package/dist/plus/integrations/authentication/models.d.ts.map +1 -0
  145. package/dist/plus/integrations/authentication/models.js +64 -0
  146. package/dist/plus/integrations/authentication/models.js.map +1 -0
  147. package/dist/plus/integrations/constants.d.ts +47 -0
  148. package/dist/plus/integrations/constants.d.ts.map +1 -0
  149. package/dist/plus/integrations/constants.js +128 -0
  150. package/dist/plus/integrations/constants.js.map +1 -0
  151. package/dist/plus/integrations/context.d.ts +354 -0
  152. package/dist/plus/integrations/context.d.ts.map +1 -0
  153. package/dist/plus/integrations/context.js +2 -0
  154. package/dist/plus/integrations/context.js.map +1 -0
  155. package/dist/plus/integrations/errors.d.ts +14 -0
  156. package/dist/plus/integrations/errors.d.ts.map +1 -0
  157. package/dist/plus/integrations/errors.js +19 -0
  158. package/dist/plus/integrations/errors.js.map +1 -0
  159. package/dist/plus/integrations/index.d.ts +32 -0
  160. package/dist/plus/integrations/index.d.ts.map +1 -0
  161. package/dist/plus/integrations/index.js +62 -0
  162. package/dist/plus/integrations/index.js.map +1 -0
  163. package/dist/plus/integrations/integrationService.d.ts +98 -0
  164. package/dist/plus/integrations/integrationService.d.ts.map +1 -0
  165. package/dist/plus/integrations/integrationService.js +627 -0
  166. package/dist/plus/integrations/integrationService.js.map +1 -0
  167. package/dist/plus/integrations/models/gitHostIntegration.d.ts +82 -0
  168. package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -0
  169. package/dist/plus/integrations/models/gitHostIntegration.js +522 -0
  170. package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -0
  171. package/dist/plus/integrations/models/integration.d.ts +127 -0
  172. package/dist/plus/integrations/models/integration.d.ts.map +1 -0
  173. package/dist/plus/integrations/models/integration.js +456 -0
  174. package/dist/plus/integrations/models/integration.js.map +1 -0
  175. package/dist/plus/integrations/models/issuesIntegration.d.ts +28 -0
  176. package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -0
  177. package/dist/plus/integrations/models/issuesIntegration.js +101 -0
  178. package/dist/plus/integrations/models/issuesIntegration.js.map +1 -0
  179. package/dist/plus/integrations/providers/apiClients.d.ts +25 -0
  180. package/dist/plus/integrations/providers/apiClients.d.ts.map +1 -0
  181. package/dist/plus/integrations/providers/apiClients.js +39 -0
  182. package/dist/plus/integrations/providers/apiClients.js.map +1 -0
  183. package/dist/plus/integrations/providers/azure/azure.d.ts +47 -0
  184. package/dist/plus/integrations/providers/azure/azure.d.ts.map +1 -0
  185. package/dist/plus/integrations/providers/azure/azure.js +444 -0
  186. package/dist/plus/integrations/providers/azure/azure.js.map +1 -0
  187. package/dist/plus/integrations/providers/azure/models.d.ts +286 -0
  188. package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -0
  189. package/dist/plus/integrations/providers/azure/models.js +203 -0
  190. package/dist/plus/integrations/providers/azure/models.js.map +1 -0
  191. package/dist/plus/integrations/providers/azureDevOps.d.ts +95 -0
  192. package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -0
  193. package/dist/plus/integrations/providers/azureDevOps.js +432 -0
  194. package/dist/plus/integrations/providers/azureDevOps.js.map +1 -0
  195. package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts +42 -0
  196. package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts.map +1 -0
  197. package/dist/plus/integrations/providers/bitbucket/bitbucket.js +513 -0
  198. package/dist/plus/integrations/providers/bitbucket/bitbucket.js.map +1 -0
  199. package/dist/plus/integrations/providers/bitbucket/models.d.ts +222 -0
  200. package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -0
  201. package/dist/plus/integrations/providers/bitbucket/models.js +158 -0
  202. package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -0
  203. package/dist/plus/integrations/providers/bitbucket-server/models.d.ts +120 -0
  204. package/dist/plus/integrations/providers/bitbucket-server/models.d.ts.map +1 -0
  205. package/dist/plus/integrations/providers/bitbucket-server/models.js +111 -0
  206. package/dist/plus/integrations/providers/bitbucket-server/models.js.map +1 -0
  207. package/dist/plus/integrations/providers/bitbucket-server.d.ts +60 -0
  208. package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -0
  209. package/dist/plus/integrations/providers/bitbucket-server.js +138 -0
  210. package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -0
  211. package/dist/plus/integrations/providers/bitbucket.d.ts +50 -0
  212. package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -0
  213. package/dist/plus/integrations/providers/bitbucket.js +181 -0
  214. package/dist/plus/integrations/providers/bitbucket.js.map +1 -0
  215. package/dist/plus/integrations/providers/github/github.d.ts +5 -0
  216. package/dist/plus/integrations/providers/github/github.d.ts.map +1 -0
  217. package/dist/plus/integrations/providers/github/github.js +47 -0
  218. package/dist/plus/integrations/providers/github/github.js.map +1 -0
  219. package/dist/plus/integrations/providers/github/github.utils.d.ts +11 -0
  220. package/dist/plus/integrations/providers/github/github.utils.d.ts.map +1 -0
  221. package/dist/plus/integrations/providers/github/github.utils.js +6 -0
  222. package/dist/plus/integrations/providers/github/github.utils.js.map +1 -0
  223. package/dist/plus/integrations/providers/github/models.d.ts +3 -0
  224. package/dist/plus/integrations/providers/github/models.d.ts.map +1 -0
  225. package/dist/plus/integrations/providers/github/models.js +2 -0
  226. package/dist/plus/integrations/providers/github/models.js.map +1 -0
  227. package/dist/plus/integrations/providers/github.d.ts +73 -0
  228. package/dist/plus/integrations/providers/github.d.ts.map +1 -0
  229. package/dist/plus/integrations/providers/github.js +160 -0
  230. package/dist/plus/integrations/providers/github.js.map +1 -0
  231. package/dist/plus/integrations/providers/gitlab/gitlab.d.ts +63 -0
  232. package/dist/plus/integrations/providers/gitlab/gitlab.d.ts.map +1 -0
  233. package/dist/plus/integrations/providers/gitlab/gitlab.js +828 -0
  234. package/dist/plus/integrations/providers/gitlab/gitlab.js.map +1 -0
  235. package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts +21 -0
  236. package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts.map +1 -0
  237. package/dist/plus/integrations/providers/gitlab/gitlab.utils.js +45 -0
  238. package/dist/plus/integrations/providers/gitlab/gitlab.utils.js.map +1 -0
  239. package/dist/plus/integrations/providers/gitlab/models.d.ts +128 -0
  240. package/dist/plus/integrations/providers/gitlab/models.d.ts.map +1 -0
  241. package/dist/plus/integrations/providers/gitlab/models.js +96 -0
  242. package/dist/plus/integrations/providers/gitlab/models.js.map +1 -0
  243. package/dist/plus/integrations/providers/gitlab.d.ts +79 -0
  244. package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -0
  245. package/dist/plus/integrations/providers/gitlab.js +253 -0
  246. package/dist/plus/integrations/providers/gitlab.js.map +1 -0
  247. package/dist/plus/integrations/providers/jira.d.ts +46 -0
  248. package/dist/plus/integrations/providers/jira.d.ts.map +1 -0
  249. package/dist/plus/integrations/providers/jira.js +255 -0
  250. package/dist/plus/integrations/providers/jira.js.map +1 -0
  251. package/dist/plus/integrations/providers/linear.d.ts +47 -0
  252. package/dist/plus/integrations/providers/linear.d.ts.map +1 -0
  253. package/dist/plus/integrations/providers/linear.js +198 -0
  254. package/dist/plus/integrations/providers/linear.js.map +1 -0
  255. package/dist/plus/integrations/providers/models.d.ts +433 -0
  256. package/dist/plus/integrations/providers/models.d.ts.map +1 -0
  257. package/dist/plus/integrations/providers/models.js +602 -0
  258. package/dist/plus/integrations/providers/models.js.map +1 -0
  259. package/dist/plus/integrations/providers/providersApi.d.ts +129 -0
  260. package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -0
  261. package/dist/plus/integrations/providers/providersApi.js +602 -0
  262. package/dist/plus/integrations/providers/providersApi.js.map +1 -0
  263. package/dist/plus/integrations/providers/utils.d.ts +54 -0
  264. package/dist/plus/integrations/providers/utils.d.ts.map +1 -0
  265. package/dist/plus/integrations/providers/utils.js +262 -0
  266. package/dist/plus/integrations/providers/utils.js.map +1 -0
  267. package/dist/plus/integrations/telemetry.d.ts +26 -0
  268. package/dist/plus/integrations/telemetry.d.ts.map +1 -0
  269. package/dist/plus/integrations/telemetry.js +11 -0
  270. package/dist/plus/integrations/telemetry.js.map +1 -0
  271. package/dist/plus/integrations/utils/integration.utils.d.ts +14 -0
  272. package/dist/plus/integrations/utils/integration.utils.d.ts.map +1 -0
  273. package/dist/plus/integrations/utils/integration.utils.js +111 -0
  274. package/dist/plus/integrations/utils/integration.utils.js.map +1 -0
  275. package/dist/utils/date.d.ts.map +1 -1
  276. package/dist/utils/date.js +6 -0
  277. package/dist/utils/date.js.map +1 -1
  278. package/dist/utils/debounce.js +1 -1
  279. package/dist/utils/disposable.d.ts +15 -2
  280. package/dist/utils/disposable.d.ts.map +1 -1
  281. package/dist/utils/disposable.js.map +1 -1
  282. package/dist/utils/iterable.d.ts +7 -1
  283. package/dist/utils/iterable.d.ts.map +1 -1
  284. package/dist/utils/iterable.js +12 -4
  285. package/dist/utils/iterable.js.map +1 -1
  286. package/dist/utils/object.d.ts +22 -1
  287. package/dist/utils/object.d.ts.map +1 -1
  288. package/dist/utils/object.js +56 -3
  289. package/dist/utils/object.js.map +1 -1
  290. package/dist/utils/paging.js +14 -15
  291. package/dist/utils/paging.js.map +1 -1
  292. package/dist/utils/promiseCache.d.ts.map +1 -1
  293. package/dist/utils/promiseCache.js +12 -4
  294. package/dist/utils/promiseCache.js.map +1 -1
  295. package/dist/utils/string.js +1 -1
  296. package/package.json +43 -2
  297. package/src/git/cache.ts +58 -70
  298. package/src/git/context.ts +25 -3
  299. package/src/git/features.ts +2 -0
  300. package/src/git/models/graph.ts +97 -0
  301. package/src/git/models/remoteProvider.ts +1 -0
  302. package/src/git/models/repository.ts +84 -93
  303. package/src/git/models/statusFile.ts +12 -0
  304. package/src/git/providers/commits.ts +4 -0
  305. package/src/git/providers/config.ts +1 -5
  306. package/src/git/providers/operations.ts +42 -22
  307. package/src/git/providers/worktrees.ts +14 -2
  308. package/src/git/remotes/custom.ts +23 -0
  309. package/src/git/utils/conflictResolution.utils.ts +126 -0
  310. package/src/git/utils/contributor.utils.ts +24 -0
  311. package/src/git/utils/reachability.utils.ts +109 -0
  312. package/src/git/watching/watchService.ts +9 -4
  313. package/src/git/watching/watchSession.ts +61 -55
  314. package/src/git-cli/providers/branches.ts +1 -0
  315. package/src/git-cli/providers/commits.ts +24 -0
  316. package/src/git-cli/providers/config.ts +63 -49
  317. package/src/git-cli/providers/diff.ts +2 -1
  318. package/src/git-cli/providers/graph.ts +145 -14
  319. package/src/git-cli/providers/operations.ts +138 -130
  320. package/src/git-cli/providers/stash.ts +20 -2
  321. package/src/git-cli/providers/status.ts +11 -3
  322. package/src/git-cli/providers/worktrees.ts +17 -2
  323. package/src/ipc/discovery.ts +132 -2
  324. package/src/plus/agents/providers/claudeCodeProvider.ts +430 -90
  325. package/src/plus/agents/types.ts +59 -11
  326. package/src/plus/ai/models/model.ts +1 -0
  327. package/src/plus/ai/models/provider.ts +7 -1
  328. package/src/plus/ai/providers/gitkrakenProvider.ts +4 -0
  329. package/src/plus/ai/providers/openAICompatibleProviderBase.ts +21 -4
  330. package/src/plus/ai/utils/ai.utils.ts +6 -4
  331. package/src/plus/git-github/api/github.ts +131 -31
  332. package/src/plus/git-github/providers/github/refs.ts +1 -1
  333. package/src/plus/integrations/authentication/cloudIntegrationService.ts +120 -0
  334. package/src/plus/integrations/authentication/configuredIntegrationService.ts +414 -0
  335. package/src/plus/integrations/authentication/integrationAuthenticationProvider.ts +289 -0
  336. package/src/plus/integrations/authentication/integrationAuthenticationService.ts +144 -0
  337. package/src/plus/integrations/authentication/manualTokenProvider.ts +72 -0
  338. package/src/plus/integrations/authentication/models.ts +168 -0
  339. package/src/plus/integrations/constants.ts +169 -0
  340. package/src/plus/integrations/context.ts +383 -0
  341. package/src/plus/integrations/errors.ts +35 -0
  342. package/src/plus/integrations/index.ts +119 -0
  343. package/src/plus/integrations/integrationService.ts +924 -0
  344. package/src/plus/integrations/models/gitHostIntegration.ts +738 -0
  345. package/src/plus/integrations/models/integration.ts +657 -0
  346. package/src/plus/integrations/models/issuesIntegration.ts +124 -0
  347. package/src/plus/integrations/providers/apiClients.ts +72 -0
  348. package/src/plus/integrations/providers/azure/azure.ts +691 -0
  349. package/src/plus/integrations/providers/azure/models.ts +605 -0
  350. package/src/plus/integrations/providers/azureDevOps.ts +677 -0
  351. package/src/plus/integrations/providers/bitbucket/bitbucket.ts +774 -0
  352. package/src/plus/integrations/providers/bitbucket/models.ts +445 -0
  353. package/src/plus/integrations/providers/bitbucket-server/models.ts +252 -0
  354. package/src/plus/integrations/providers/bitbucket-server.ts +282 -0
  355. package/src/plus/integrations/providers/bitbucket.ts +350 -0
  356. package/src/plus/integrations/providers/github/github.ts +64 -0
  357. package/src/plus/integrations/providers/github/github.utils.ts +23 -0
  358. package/src/plus/integrations/providers/github/models.ts +29 -0
  359. package/src/plus/integrations/providers/github.ts +366 -0
  360. package/src/plus/integrations/providers/gitlab/gitlab.ts +1210 -0
  361. package/src/plus/integrations/providers/gitlab/gitlab.utils.ts +71 -0
  362. package/src/plus/integrations/providers/gitlab/models.ts +257 -0
  363. package/src/plus/integrations/providers/gitlab.ts +473 -0
  364. package/src/plus/integrations/providers/jira.ts +359 -0
  365. package/src/plus/integrations/providers/linear.ts +275 -0
  366. package/src/plus/integrations/providers/models.ts +1114 -0
  367. package/src/plus/integrations/providers/providersApi.ts +1126 -0
  368. package/src/plus/integrations/providers/utils.ts +359 -0
  369. package/src/plus/integrations/telemetry.ts +29 -0
  370. package/src/plus/integrations/utils/integration.utils.ts +138 -0
  371. package/src/utils/date.ts +5 -0
  372. package/src/utils/debounce.ts +1 -1
  373. package/src/utils/disposable.ts +15 -2
  374. package/src/utils/iterable.ts +14 -3
  375. package/src/utils/object.ts +55 -4
  376. package/src/utils/paging.ts +14 -14
  377. package/src/utils/promiseCache.ts +24 -16
  378. package/src/utils/string.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"promiseCache.js","sourceRoot":"","sources":["../../src/utils/promiseCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promiseCache.js","sourceRoot":"","sources":["../../src/utils/promiseCache.ts"],"names":[],"mappings":"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"}
@@ -630,7 +630,7 @@ export function pluralize(s, count, options) {
630
630
  return `${result}${options.infix ?? ' '}${suffix}`;
631
631
  }
632
632
  // Removes \ / : * ? " < > | and C0 and C1 control codes
633
- // eslint-disable-next-line no-control-regex
633
+ // oxlint-disable-next-line no-control-regex
634
634
  const illegalCharsForFSRegex = /[\\/:*?"<>|\x00-\x1f\x80-\x9f]/g;
635
635
  export function sanitizeForFileSystem(s, replacement = '_') {
636
636
  if (!s)
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gitkraken/core-gitlens",
3
3
  "description": "GitLens core — shared Git / AI / GitHub primitives for internal GitKraken consumption",
4
- "version": "0.3.0",
4
+ "version": "0.4.0",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "author": {
7
7
  "name": "GitKraken",
@@ -138,6 +138,46 @@
138
138
  "types": "./dist/plus/git-github/providers/github/*.d.ts",
139
139
  "default": "./dist/plus/git-github/providers/github/*.js"
140
140
  },
141
+ "./plus/integrations/*.js": {
142
+ "types": "./dist/plus/integrations/*.d.ts",
143
+ "default": "./dist/plus/integrations/*.js"
144
+ },
145
+ "./plus/integrations/authentication/*.js": {
146
+ "types": "./dist/plus/integrations/authentication/*.d.ts",
147
+ "default": "./dist/plus/integrations/authentication/*.js"
148
+ },
149
+ "./plus/integrations/models/*.js": {
150
+ "types": "./dist/plus/integrations/models/*.d.ts",
151
+ "default": "./dist/plus/integrations/models/*.js"
152
+ },
153
+ "./plus/integrations/providers/*.js": {
154
+ "types": "./dist/plus/integrations/providers/*.d.ts",
155
+ "default": "./dist/plus/integrations/providers/*.js"
156
+ },
157
+ "./plus/integrations/providers/azure/*.js": {
158
+ "types": "./dist/plus/integrations/providers/azure/*.d.ts",
159
+ "default": "./dist/plus/integrations/providers/azure/*.js"
160
+ },
161
+ "./plus/integrations/providers/bitbucket-server/*.js": {
162
+ "types": "./dist/plus/integrations/providers/bitbucket-server/*.d.ts",
163
+ "default": "./dist/plus/integrations/providers/bitbucket-server/*.js"
164
+ },
165
+ "./plus/integrations/providers/bitbucket/*.js": {
166
+ "types": "./dist/plus/integrations/providers/bitbucket/*.d.ts",
167
+ "default": "./dist/plus/integrations/providers/bitbucket/*.js"
168
+ },
169
+ "./plus/integrations/providers/github/*.js": {
170
+ "types": "./dist/plus/integrations/providers/github/*.d.ts",
171
+ "default": "./dist/plus/integrations/providers/github/*.js"
172
+ },
173
+ "./plus/integrations/providers/gitlab/*.js": {
174
+ "types": "./dist/plus/integrations/providers/gitlab/*.d.ts",
175
+ "default": "./dist/plus/integrations/providers/gitlab/*.js"
176
+ },
177
+ "./plus/integrations/utils/*.js": {
178
+ "types": "./dist/plus/integrations/utils/*.d.ts",
179
+ "default": "./dist/plus/integrations/utils/*.js"
180
+ },
141
181
  "./utils/*.js": {
142
182
  "types": "./dist/utils/*.d.ts",
143
183
  "default": "./dist/utils/*.js"
@@ -156,8 +196,9 @@
156
196
  }
157
197
  },
158
198
  "dependencies": {
199
+ "@gitkraken/provider-apis": "0.40.0",
159
200
  "@octokit/graphql": "9.0.3",
160
- "@octokit/request": "10.0.8",
201
+ "@octokit/request": "10.0.10",
161
202
  "@octokit/request-error": "7.1.0",
162
203
  "@octokit/types": "16.0.0",
163
204
  "fast-string-truncated-width": "3.0.3",
package/src/git/cache.ts CHANGED
@@ -115,8 +115,7 @@ interface SharedCaches {
115
115
  contributorsStats: RepoPromiseCacheMap<string, GitContributorsStats | undefined> | undefined;
116
116
  defaultBranchName: RepoPromiseCacheMap<string, string | undefined> | undefined;
117
117
  gitResults: RepoPromiseCacheMap<string, GitResult> | undefined;
118
- gkConfigKeys: RepoPromiseCacheMap<string, string | undefined> | undefined;
119
- gkConfigPatterns: RepoPromiseCacheMap<string, Map<string, string>> | undefined;
118
+ gkConfigMap: PromiseMap<RepoPath, Map<string, string>> | undefined;
120
119
  initialCommitSha: PromiseMap<RepoPath, string | undefined> | undefined;
121
120
  /** Keyed by commonPath — `FETCH_HEAD` lives in the common git dir, shared across worktrees. */
122
121
  lastFetched: PromiseCache<RepoPath, number | undefined> | undefined;
@@ -147,8 +146,7 @@ const sharedCacheKeys: ReadonlySet<keyof AllCaches> = new Set(
147
146
  'contributorsStats',
148
147
  'defaultBranchName',
149
148
  'gitResults',
150
- 'gkConfigKeys',
151
- 'gkConfigPatterns',
149
+ 'gkConfigMap',
152
150
  'initialCommitSha',
153
151
  'lastFetched',
154
152
  'logShas',
@@ -192,8 +190,7 @@ function createEmptyCaches(): AllCaches {
192
190
  gitDir: undefined,
193
191
  gitIgnore: undefined,
194
192
  gitResults: undefined,
195
- gkConfigKeys: undefined,
196
- gkConfigPatterns: undefined,
193
+ gkConfigMap: undefined,
197
194
  initialCommitSha: undefined,
198
195
  lastFetched: undefined,
199
196
  logShas: undefined,
@@ -301,12 +298,8 @@ export class Cache implements Disposable {
301
298
  }));
302
299
  }
303
300
 
304
- private get gkConfigKeys(): RepoPromiseCacheMap<string, string | undefined> {
305
- return (this._caches.gkConfigKeys ??= new RepoPromiseCacheMap<string, string | undefined>());
306
- }
307
-
308
- private get gkConfigPatterns(): RepoPromiseCacheMap<string, Map<string, string>> {
309
- return (this._caches.gkConfigPatterns ??= new RepoPromiseCacheMap<string, Map<string, string>>());
301
+ private get gkConfigMap(): PromiseMap<RepoPath, Map<string, string>> {
302
+ return (this._caches.gkConfigMap ??= new PromiseMap<RepoPath, Map<string, string>>());
310
303
  }
311
304
 
312
305
  get currentBranchReference(): PromiseCache<RepoPath, GitBranchReference | undefined> {
@@ -548,7 +541,10 @@ export class Cache implements Disposable {
548
541
  keysToClear.add('configPatterns');
549
542
  keysToClear.add('currentBranchReference');
550
543
  keysToClear.add('currentUser');
551
- keysToClear.add('gitDir');
544
+ // `gitDir` is immutable repo topology (toplevel/git-dir/common-dir/superproject) — a
545
+ // `.git/config` content change never relocates it, and it's owned by the repo lifecycle
546
+ // (registerRepoPath/unregisterRepoPath). Clearing it here forced a redundant `git rev-parse`
547
+ // re-spawn (gitDir is read by getGkConfigPath→getGitDir on every gk op), so leave it warm.
552
548
  }
553
549
 
554
550
  if (types.includes('contributors')) {
@@ -563,8 +559,7 @@ export class Cache implements Disposable {
563
559
  }
564
560
 
565
561
  if (types.includes('gkConfig')) {
566
- keysToClear.add('gkConfigKeys');
567
- keysToClear.add('gkConfigPatterns');
562
+ keysToClear.add('gkConfigMap');
568
563
  // Derived from `branch.<ref>.gk-merge-base`/`vscode-merge-base`; clear so external
569
564
  // gkConfig mutations don't leave stale base-branch resolutions cached.
570
565
  keysToClear.add('baseBranchName');
@@ -875,14 +870,18 @@ export class Cache implements Disposable {
875
870
  // On factory invalidation, propagate to the derived per-worktree mapper entries
876
871
  // via soft-invalidate — existing waiters on the mapper complete, and the entry
877
872
  // self-evicts on mapper settle so the next callers build fresh derived entries.
878
- void p.finally(() => {
879
- if (cacheable.invalidated) {
880
- this.branches.invalidate(commonPath);
881
- for (const worktreePath of this.getWorktreePaths(commonPath)) {
882
- this.branches.invalidate(worktreePath);
873
+ void p
874
+ .finally(() => {
875
+ if (cacheable.invalidated) {
876
+ this.branches.invalidate(commonPath);
877
+ for (const worktreePath of this.getWorktreePaths(commonPath)) {
878
+ this.branches.invalidate(worktreePath);
879
+ }
883
880
  }
884
- }
885
- });
881
+ })
882
+ // Swallow the cleanup chain's rejection so a rejected factory (e.g. cancellation)
883
+ // doesn't surface as an unhandled rejection; the caller-facing promise handles it.
884
+ .catch(() => {});
886
885
  return p;
887
886
  },
888
887
  cancellation,
@@ -944,43 +943,25 @@ export class Cache implements Disposable {
944
943
  this._caches.configPatterns?.delete(cacheKey);
945
944
  }
946
945
 
947
- getGkConfig(
948
- repoPath: string,
949
- key: string,
950
- factory: () => PromiseOrValue<string | undefined>,
951
- ): Promise<string | undefined> {
952
- const cacheKey = this.getCommonPath(repoPath);
953
-
954
- const result = this.gkConfigKeys.get(cacheKey, key);
955
- if (result != null) return result;
956
-
957
- const factoryPromise = Promise.resolve(factory());
958
- this.gkConfigKeys.set(cacheKey, key, factoryPromise);
959
- return factoryPromise;
960
- }
961
-
962
- getGkConfigRegex(
963
- repoPath: string,
964
- pattern: string,
965
- factory: () => PromiseOrValue<Map<string, string>>,
966
- ): Promise<Map<string, string>> {
967
- const cacheKey = this.getCommonPath(repoPath);
968
-
969
- const result = this.gkConfigPatterns.get(cacheKey, pattern);
970
- if (result != null) return result;
971
-
972
- const factoryPromise = Promise.resolve(factory());
973
- this.gkConfigPatterns.set(cacheKey, pattern, factoryPromise);
974
- return factoryPromise;
946
+ /**
947
+ * The whole `.git/gk/config` is read once and cached as a single map per commonPath; per-key and
948
+ * per-namespace gk lookups are served from it in-memory (see `getGkConfigMap` in the CLI config
949
+ * sub-provider). Invalidated by `deleteGkConfig` (write) and the coarse `'gkConfig'` clear (watcher).
950
+ */
951
+ getGkConfigMap(repoPath: string, factory: () => PromiseOrValue<Map<string, string>>): Promise<Map<string, string>> {
952
+ return this.getSharedSimple(this.gkConfigMap, repoPath, factory);
975
953
  }
976
954
 
977
955
  /**
956
+ * Clears the cached `.git/gk/config` map and invalidates the derived caches
957
+ * (`baseBranchName`/`branchOverviews`) for the written key's ref.
958
+ *
978
959
  * @param options.skipInvalidation Downstream caches the caller wants preserved despite this
979
960
  * write. Use when the value being written is exactly what was just resolved — e.g. the Tier 2
980
961
  * `storeMergeTargetBranchName` self-write inside `getBranchContributionsOverview` (skip
981
962
  * `'branchOverviews'`) or the Tier 3 `storeBaseBranchName` self-write inside `getBaseBranchName`
982
- * (skip both `'baseBranchName'` and `'branchOverviews'`). The upstream caches (`gkConfigKeys`,
983
- * `gkConfigPatterns`) always invalidate so subsequent reads of this key see the new value.
963
+ * (skip both `'baseBranchName'` and `'branchOverviews'`). The bulk `gkConfigMap` map always
964
+ * invalidates so subsequent reads see the new value.
984
965
  */
985
966
  deleteGkConfig(
986
967
  repoPath: string,
@@ -988,8 +969,7 @@ export class Cache implements Disposable {
988
969
  options?: { skipInvalidation?: readonly GkConfigInvalidationTarget[] },
989
970
  ): void {
990
971
  const cacheKey = this.getCommonPath(repoPath);
991
- this._caches.gkConfigKeys?.delete(cacheKey, key);
992
- this._caches.gkConfigPatterns?.delete(cacheKey);
972
+ this._caches.gkConfigMap?.delete(cacheKey);
993
973
 
994
974
  const refMatch = key.match(branchOverviewGkConfigKeysRegex);
995
975
  if (refMatch == null) return;
@@ -1308,15 +1288,19 @@ export class Cache implements Disposable {
1308
1288
  // On factory invalidation (without rejection), propagate to the derived per-worktree
1309
1289
  // mapper entries so they don't persist past the shared factory's settle. Mapper
1310
1290
  // entries cached via `cache.set()` have no controller, so `invalidate` hard-deletes.
1311
- void p.finally(() => {
1312
- if (cacheable.invalidated) {
1313
- for (const worktreePath of this.getWorktreePaths(commonPath)) {
1314
- if (worktreePath === commonPath) continue;
1315
-
1316
- cache.invalidate(worktreePath);
1291
+ void p
1292
+ .finally(() => {
1293
+ if (cacheable.invalidated) {
1294
+ for (const worktreePath of this.getWorktreePaths(commonPath)) {
1295
+ if (worktreePath === commonPath) continue;
1296
+
1297
+ cache.invalidate(worktreePath);
1298
+ }
1317
1299
  }
1318
- }
1319
- });
1300
+ })
1301
+ // Swallow the cleanup chain's rejection so a rejected factory (e.g. cancellation)
1302
+ // doesn't surface as an unhandled rejection; the caller-facing promise handles it.
1303
+ .catch(() => {});
1320
1304
  return p;
1321
1305
  },
1322
1306
  cancellation,
@@ -1365,15 +1349,19 @@ export class Cache implements Disposable {
1365
1349
  // mapper entries for this `cacheKey` so they don't persist past the shared factory's
1366
1350
  // settle. Mapper entries cached via `cache.set()` have no controller, so `invalidate`
1367
1351
  // hard-deletes.
1368
- void p.finally(() => {
1369
- if (cacheable.invalidated) {
1370
- for (const worktreePath of this.getWorktreePaths(commonPath)) {
1371
- if (worktreePath === commonPath) continue;
1372
-
1373
- cache.invalidate(worktreePath, cacheKey);
1352
+ void p
1353
+ .finally(() => {
1354
+ if (cacheable.invalidated) {
1355
+ for (const worktreePath of this.getWorktreePaths(commonPath)) {
1356
+ if (worktreePath === commonPath) continue;
1357
+
1358
+ cache.invalidate(worktreePath, cacheKey);
1359
+ }
1374
1360
  }
1375
- }
1376
- });
1361
+ })
1362
+ // Swallow the cleanup chain's rejection so a rejected factory (e.g. cancellation)
1363
+ // doesn't surface as an unhandled rejection; the caller-facing promise handles it.
1364
+ .catch(() => {});
1377
1365
  return p;
1378
1366
  },
1379
1367
  options,
@@ -85,6 +85,27 @@ export interface GitServiceConfig {
85
85
  /** Maximum search items (0 = unlimited). */
86
86
  readonly maxSearchItems?: number;
87
87
  };
88
+
89
+ /** Force-push preferences. */
90
+ readonly push?: {
91
+ /** Whether to use `--force-with-lease` instead of a plain `--force` when force-pushing. Defaults to `true`. */
92
+ readonly useForceWithLease?: boolean;
93
+ /**
94
+ * Whether to add `--force-if-includes` when force-pushing. Only applies when `useForceWithLease` is `true`
95
+ * and the installed Git supports it. Defaults to `true`.
96
+ */
97
+ readonly useForceIfIncludes?: boolean;
98
+ };
99
+
100
+ /** Commit-signing preferences. */
101
+ readonly signing?: {
102
+ /**
103
+ * Host-level override for whether commit signing is enabled (e.g. VS Code's `git.enableCommitSigning`).
104
+ * When `true`, signing is treated as enabled even if the repo's `commit.gpgsign` is unset/false. It never
105
+ * forces signing off.
106
+ */
107
+ readonly enabled?: boolean;
108
+ };
88
109
  }
89
110
 
90
111
  /** Git command types that can produce conflicts. */
@@ -116,9 +137,10 @@ export interface GitServiceHooks {
116
137
  /**
117
138
  * Called when a commit is signed successfully.
118
139
  *
119
- * Note: currently fired only from explicit-sign paths in the patch provider
120
- * (where signing is requested via `-S` and confirmed up front). Operations
121
- * that sign implicitly via `commit.gpgsign=true` (`commit`, `merge`, `pull`,
140
+ * Note: currently fired only from explicit-sign paths the patch provider's
141
+ * `commit-tree -S` and the commit operation when the host signing override
142
+ * (`config.signing.enabled`) adds `-S`. Operations that sign implicitly via
143
+ * `commit.gpgsign=true` (`commit` without the override, `merge`, `pull`,
122
144
  * `rebase`, `revert`, `cherryPick`) do not fire this hook because the
123
145
  * library cannot cheaply confirm that signing actually occurred without an
124
146
  * extra `git config`/`log --show-signature` call.
@@ -1,5 +1,6 @@
1
1
  // GitFeature's must start with `git:` to be recognized in all usages
2
2
  export type GitFeatures =
3
+ | 'git:checkout:pathspec-from-file'
3
4
  | 'git:for-each-ref:worktreePath'
4
5
  | 'git:ignoreRevsFile'
5
6
  | 'git:merge-tree'
@@ -28,6 +29,7 @@ export type FilteredGitFeatures<T extends GitFeatureOrPrefix> = T extends GitFea
28
29
 
29
30
  export const gitMinimumVersion = '2.7.2';
30
31
  export const gitFeaturesByVersion = new Map<GitFeatures, string>([
32
+ ['git:checkout:pathspec-from-file', '2.26'],
31
33
  ['git:for-each-ref:worktreePath', '2.23'],
32
34
  ['git:ignoreRevsFile', '2.23'],
33
35
  ['git:merge-tree', '2.33'],
@@ -19,6 +19,14 @@ export interface GitGraphRowHead {
19
19
  isCurrentHead: boolean;
20
20
  context?: string | object;
21
21
  upstream?: { name: string; id: string };
22
+ /** Set when this branch is checked out in a (non-default) worktree. Grouped so producers can't
23
+ * half-populate id-without-path or vice versa. GitLens consumers should read this field. */
24
+ worktree?: { id: string; path: string };
25
+ /** Upstream-component-compatibility mirror of `worktree?.id`. The bundled
26
+ * `@gitkraken/gitkraken-components` library still reads `worktreeId` to switch between
27
+ * WORKTREE and HEAD ref-badge styling — keeping it populated preserves the visual cue.
28
+ * Producers MUST set this whenever they set `worktree`; do not read it from GitLens code,
29
+ * read `worktree.id` instead. */
22
30
  worktreeId?: string;
23
31
  }
24
32
 
@@ -40,11 +48,43 @@ export interface GitGraphRowTag {
40
48
  context?: string | object;
41
49
  }
42
50
 
51
+ /**
52
+ * Compact, host-computed flags for a commit/stash row, shipped instead of the bulky serialized
53
+ * `contexts.row`/`contexts.avatar` blobs (which duplicated sha/message/repoPath already on the row).
54
+ * The webview reconstructs the full webview-item contexts from these flags + row fields + repoPath.
55
+ * Bit 0: reachable-from-HEAD (`+current`); Bit 1: unique-to-one-local-branch (`+unique`);
56
+ * Bit 2: has-children — set ONLY on undo-eligible tip rows (active HEAD + worktree HEADs) that have a
57
+ * child, to gate Undo Commit to leaf tips (undoing a commit other work is stacked on is unsafe). It is
58
+ * NOT a general has-children signal: non-tip rows never carry it (the host only computes it for tips);
59
+ * Bit 3: unpushed/ahead-of-upstream (`+unpublished`).
60
+ * Bit 4: history-rewriteable (`+rewriteable`) — on the first-parent chain from HEAD up to (excluding)
61
+ * the first merge commit, so a plain (non-`--rebase-merges`) interactive rebase can safely rewrite it;
62
+ * gates squash/drop/reword/modify. Strictly narrower than `+current` (reachable-from-HEAD includes a
63
+ * merge's other-parent ancestry, which is NOT safely rewriteable).
64
+ * (`+HEAD` derives from `row.heads[].isCurrentHead`; contributor `+current` from `row.isCurrentUser`.)
65
+ */
66
+ export const enum GitGraphRowContextFlags {
67
+ None = 0,
68
+ ReachableFromHead = 1 << 0,
69
+ UniqueToBranch = 1 << 1,
70
+ HasChildren = 1 << 2,
71
+ Unpublished = 1 << 3,
72
+ RewriteableFromHead = 1 << 4,
73
+ }
74
+
43
75
  /**
44
76
  * Context data attached to graph row regions for command/menu handling.
45
77
  * Structurally compatible with @gitkraken/gitkraken-components RowContexts.
46
78
  */
47
79
  export interface GitGraphRowContexts {
80
+ /** Compact replacement for the serialized commit `row`/`avatar` contexts; see {@link GitGraphRowContextFlags}. */
81
+ flags?: GitGraphRowContextFlags;
82
+ /**
83
+ * Index into the per-graph `GraphReachabilityTable.sets` for this row's reachable-refs set,
84
+ * shipped instead of the per-row `reachability` object (which dominated the graph payload). The
85
+ * webview rebuilds `row.reachability` from the shared table. Absent ⇒ no reachability for this row.
86
+ */
87
+ reachabilityIndex?: number;
48
88
  row?: string | object;
49
89
  ref?: string | object;
50
90
  refGroups?: Record<string, string | object>;
@@ -63,6 +103,28 @@ export interface GitGraphRowStats {
63
103
  deletions: number;
64
104
  }
65
105
 
106
+ /**
107
+ * Wire encoding for per-row reachability, shipped once per graph payload instead of inline on every
108
+ * row. Git reachability is monotone (adjacent commits share ref-sets), so the rows collapse to a
109
+ * relatively small number of distinct sets over the repo's ref universe — `dictionary` (the shared
110
+ * ref list) + `sets` (distinct membership bitmaps, base64; bit i ⇒ `dictionary[i]` reachable) + a
111
+ * per-row index (`GitGraphRowContexts.reachabilityIndex`) reconstructs every row's `reachability`
112
+ * client-side for a fraction of the bytes the inline objects cost. `current` is a per-ref property
113
+ * (the checked-out HEAD branch) and lives in the dictionary entry.
114
+ *
115
+ * The table is append-only within a graph generation, so the host ships only the entries appended
116
+ * since its last push (a delta) on same-generation pagination and the full table on a new generation;
117
+ * `id` lets the webview tell the two apart (same `id` ⇒ append the delta, new `id` ⇒ replace + reset
118
+ * its decode cache). A fresh `getGraph` walk mints a new `id`; `more()` keeps the same one.
119
+ */
120
+ export interface GraphReachabilityTable {
121
+ /** Generation id — stable across `more()` pagination, new per fresh graph walk. */
122
+ readonly id: number;
123
+ readonly dictionary: GitCommitReachability['refs'];
124
+ /** Distinct ref-membership bitmaps, base64-encoded `Uint8Array` of `ceil(dictionary.length/8)` bytes. */
125
+ readonly sets: string[];
126
+ }
127
+
66
128
  /** Library-owned graph row type. Structurally compatible with @gitkraken/gitkraken-components GraphRow. */
67
129
  export interface GitGraphRow {
68
130
  sha: string;
@@ -78,6 +140,12 @@ export interface GitGraphRow {
78
140
  tags?: GitGraphRowTag[];
79
141
  contexts?: GitGraphRowContexts;
80
142
  stats?: GitGraphRowStats;
143
+ /**
144
+ * Transient, set only for the duration of {@link GraphRowProcessor.processRow} (the row processor's
145
+ * `+unique` decision reads it). The provider strips it before pushing the row and records the
146
+ * reachable-ref set into the shared {@link GitGraph.reachability} table instead (see
147
+ * {@link GitGraphRowContexts.reachabilityIndex}), so emitted rows do NOT retain the per-row arrays.
148
+ */
81
149
  reachability?: GitCommitReachability;
82
150
  isCurrentUser?: boolean;
83
151
  }
@@ -99,6 +167,22 @@ export interface GitGraph {
99
167
  /** SHAs reachable from HEAD (for enrichment: marking commits on the current branch) */
100
168
  readonly reachableFromHEAD?: ReadonlySet<string>;
101
169
 
170
+ /**
171
+ * SHAs on the first-parent chain from HEAD up to (excluding) the first merge commit — i.e. the
172
+ * commits a plain interactive rebase can safely rewrite. Empty when HEAD itself is a merge. Used by
173
+ * the graph's history-rewriting commands (squash/drop/reword/modify) to validate selections.
174
+ */
175
+ readonly rewriteableFromHEAD?: ReadonlySet<string>;
176
+
177
+ /**
178
+ * Shared, append-only reachability table for the loaded rows (the primary representation — rows
179
+ * carry only a {@link GitGraphRowContexts.reachabilityIndex} into it, not per-row ref arrays).
180
+ * Grows monotonically across {@link more} pagination within a graph session: indices already
181
+ * assigned never change, so consumers can decode any row on demand and cache by index. Absent ⇒
182
+ * no row in the graph has reachability. See {@link GraphReachabilityTable}.
183
+ */
184
+ readonly reachability?: GraphReachabilityTable;
185
+
102
186
  /** The rows for the set of commits requested */
103
187
  readonly rows: GitGraphRow[];
104
188
  readonly id?: string;
@@ -178,5 +262,18 @@ export interface GraphContext {
178
262
  readonly branchIdOfMainWorktree: string | undefined;
179
263
  readonly stashes: ReadonlyMap<string, GitStashCommit> | undefined;
180
264
  readonly reachableFromHEAD: ReadonlySet<string>;
265
+ /** SHAs on the first-parent chain from HEAD up to (excluding) the first merge commit — the commits
266
+ * a plain interactive rebase can safely rewrite. Empty when HEAD is a merge. Sets the
267
+ * {@link GitGraphRowContextFlags.RewriteableFromHead} flag, gating squash/drop/reword/modify. */
268
+ readonly rewriteableFromHEAD: ReadonlySet<string>;
269
+ /** The subset of undo-eligible tip shas (active HEAD + worktree HEADs) that have at least one
270
+ * child — i.e. are NOT leaves. Scoped to tips (not all commits) for performance; do not treat as
271
+ * a general has-children signal. Sets the {@link GitGraphRowContextFlags.HasChildren} flag, which
272
+ * gates Undo Commit to leaf tips. */
273
+ readonly tipShasWithChildren: ReadonlySet<string>;
274
+ /** SHAs reachable from HEAD's tracking-upstream tip, or `undefined` when HEAD has no upstream.
275
+ * A commit reachable from HEAD but NOT from this set is unpushed (`+unpublished`); `undefined`
276
+ * means there's no upstream to be ahead of, so nothing is flagged. */
277
+ readonly reachableFromHeadUpstream: ReadonlySet<string> | undefined;
181
278
  readonly avatars: Map<string, string>;
182
279
  }
@@ -74,6 +74,7 @@ export interface RemotesUrlsConfig {
74
74
  readonly fileInCommit: string;
75
75
  readonly fileLine: string;
76
76
  readonly fileRange: string;
77
+ readonly avatar?: string;
77
78
  }
78
79
 
79
80
  export abstract class RemoteProvider<T extends ResourceDescriptor = ResourceDescriptor> implements ProviderReference {