@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.
- package/CHANGELOG.md +20 -1
- package/README.md +13 -10
- package/dist/git/cache.d.ts +12 -6
- package/dist/git/cache.d.ts.map +1 -1
- package/dist/git/cache.js +40 -39
- package/dist/git/cache.js.map +1 -1
- package/dist/git/context.d.ts +23 -3
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/context.js.map +1 -1
- package/dist/git/features.d.ts +1 -1
- package/dist/git/features.d.ts.map +1 -1
- package/dist/git/features.js +1 -0
- package/dist/git/features.js.map +1 -1
- package/dist/git/models/graph.d.ts +96 -0
- package/dist/git/models/graph.d.ts.map +1 -1
- package/dist/git/models/graph.js +24 -1
- package/dist/git/models/graph.js.map +1 -1
- package/dist/git/models/remoteProvider.d.ts +1 -0
- package/dist/git/models/remoteProvider.d.ts.map +1 -1
- package/dist/git/models/remoteProvider.js.map +1 -1
- package/dist/git/models/repository.d.ts +21 -12
- package/dist/git/models/repository.d.ts.map +1 -1
- package/dist/git/models/repository.js +70 -84
- package/dist/git/models/repository.js.map +1 -1
- package/dist/git/models/statusFile.d.ts +9 -0
- package/dist/git/models/statusFile.d.ts.map +1 -1
- package/dist/git/models/statusFile.js +11 -0
- package/dist/git/models/statusFile.js.map +1 -1
- package/dist/git/providers/commits.d.ts +4 -0
- package/dist/git/providers/commits.d.ts.map +1 -1
- package/dist/git/providers/config.d.ts +1 -3
- package/dist/git/providers/config.d.ts.map +1 -1
- package/dist/git/providers/operations.d.ts +40 -13
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/worktrees.d.ts +2 -0
- package/dist/git/providers/worktrees.d.ts.map +1 -1
- package/dist/git/remotes/custom.d.ts +2 -0
- package/dist/git/remotes/custom.d.ts.map +1 -1
- package/dist/git/remotes/custom.js +20 -0
- package/dist/git/remotes/custom.js.map +1 -1
- package/dist/git/utils/conflictResolution.utils.d.ts +32 -0
- package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -1
- package/dist/git/utils/conflictResolution.utils.js +95 -0
- package/dist/git/utils/conflictResolution.utils.js.map +1 -1
- package/dist/git/utils/contributor.utils.d.ts +3 -0
- package/dist/git/utils/contributor.utils.d.ts.map +1 -1
- package/dist/git/utils/contributor.utils.js +22 -0
- package/dist/git/utils/contributor.utils.js.map +1 -1
- package/dist/git/utils/reachability.utils.d.ts +37 -0
- package/dist/git/utils/reachability.utils.d.ts.map +1 -0
- package/dist/git/utils/reachability.utils.js +96 -0
- package/dist/git/utils/reachability.utils.js.map +1 -0
- package/dist/git/watching/watchService.d.ts +4 -2
- package/dist/git/watching/watchService.d.ts.map +1 -1
- package/dist/git/watching/watchService.js +8 -3
- package/dist/git/watching/watchService.js.map +1 -1
- package/dist/git/watching/watchSession.d.ts +14 -12
- package/dist/git/watching/watchSession.d.ts.map +1 -1
- package/dist/git/watching/watchSession.js +56 -55
- package/dist/git/watching/watchSession.js.map +1 -1
- package/dist/git-cli/providers/branches.d.ts.map +1 -1
- package/dist/git-cli/providers/branches.js +1 -0
- package/dist/git-cli/providers/branches.js.map +1 -1
- package/dist/git-cli/providers/commits.d.ts +1 -0
- package/dist/git-cli/providers/commits.d.ts.map +1 -1
- package/dist/git-cli/providers/commits.js +12 -0
- package/dist/git-cli/providers/commits.js.map +1 -1
- package/dist/git-cli/providers/config.d.ts +8 -4
- package/dist/git-cli/providers/config.d.ts.map +1 -1
- package/dist/git-cli/providers/config.js +62 -39
- package/dist/git-cli/providers/config.js.map +1 -1
- package/dist/git-cli/providers/diff.d.ts.map +1 -1
- package/dist/git-cli/providers/diff.js +1 -1
- package/dist/git-cli/providers/diff.js.map +1 -1
- package/dist/git-cli/providers/graph.d.ts.map +1 -1
- package/dist/git-cli/providers/graph.js +132 -14
- package/dist/git-cli/providers/graph.js.map +1 -1
- package/dist/git-cli/providers/operations.d.ts +7 -5
- package/dist/git-cli/providers/operations.d.ts.map +1 -1
- package/dist/git-cli/providers/operations.js +118 -95
- package/dist/git-cli/providers/operations.js.map +1 -1
- package/dist/git-cli/providers/stash.d.ts.map +1 -1
- package/dist/git-cli/providers/stash.js +20 -2
- package/dist/git-cli/providers/stash.js.map +1 -1
- package/dist/git-cli/providers/status.d.ts.map +1 -1
- package/dist/git-cli/providers/status.js +5 -2
- package/dist/git-cli/providers/status.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts +2 -0
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +3 -0
- package/dist/git-cli/providers/worktrees.js.map +1 -1
- package/dist/ipc/discovery.d.ts +22 -0
- package/dist/ipc/discovery.d.ts.map +1 -1
- package/dist/ipc/discovery.js +111 -2
- package/dist/ipc/discovery.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts +73 -20
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.js +394 -88
- package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
- package/dist/plus/agents/types.d.ts +62 -11
- package/dist/plus/agents/types.d.ts.map +1 -1
- package/dist/plus/ai/models/model.d.ts +1 -1
- package/dist/plus/ai/models/model.d.ts.map +1 -1
- package/dist/plus/ai/models/model.js.map +1 -1
- package/dist/plus/ai/models/provider.d.ts +3 -0
- package/dist/plus/ai/models/provider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js +4 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +4 -3
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js +9 -6
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +6 -4
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +8 -13
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +96 -14
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/git-github/providers/github/refs.js +1 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts +11 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js +90 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts +67 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js +295 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts +92 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js +185 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts +62 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js +122 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts +15 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js +49 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/models.d.ts +87 -0
- package/dist/plus/integrations/authentication/models.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/models.js +64 -0
- package/dist/plus/integrations/authentication/models.js.map +1 -0
- package/dist/plus/integrations/constants.d.ts +47 -0
- package/dist/plus/integrations/constants.d.ts.map +1 -0
- package/dist/plus/integrations/constants.js +128 -0
- package/dist/plus/integrations/constants.js.map +1 -0
- package/dist/plus/integrations/context.d.ts +354 -0
- package/dist/plus/integrations/context.d.ts.map +1 -0
- package/dist/plus/integrations/context.js +2 -0
- package/dist/plus/integrations/context.js.map +1 -0
- package/dist/plus/integrations/errors.d.ts +14 -0
- package/dist/plus/integrations/errors.d.ts.map +1 -0
- package/dist/plus/integrations/errors.js +19 -0
- package/dist/plus/integrations/errors.js.map +1 -0
- package/dist/plus/integrations/index.d.ts +32 -0
- package/dist/plus/integrations/index.d.ts.map +1 -0
- package/dist/plus/integrations/index.js +62 -0
- package/dist/plus/integrations/index.js.map +1 -0
- package/dist/plus/integrations/integrationService.d.ts +98 -0
- package/dist/plus/integrations/integrationService.d.ts.map +1 -0
- package/dist/plus/integrations/integrationService.js +627 -0
- package/dist/plus/integrations/integrationService.js.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +82 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.js +522 -0
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -0
- package/dist/plus/integrations/models/integration.d.ts +127 -0
- package/dist/plus/integrations/models/integration.d.ts.map +1 -0
- package/dist/plus/integrations/models/integration.js +456 -0
- package/dist/plus/integrations/models/integration.js.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts +28 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.js +101 -0
- package/dist/plus/integrations/models/issuesIntegration.js.map +1 -0
- package/dist/plus/integrations/providers/apiClients.d.ts +25 -0
- package/dist/plus/integrations/providers/apiClients.d.ts.map +1 -0
- package/dist/plus/integrations/providers/apiClients.js +39 -0
- package/dist/plus/integrations/providers/apiClients.js.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts +47 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.js +444 -0
- package/dist/plus/integrations/providers/azure/azure.js.map +1 -0
- package/dist/plus/integrations/providers/azure/models.d.ts +286 -0
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/models.js +203 -0
- package/dist/plus/integrations/providers/azure/models.js.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts +95 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.js +432 -0
- package/dist/plus/integrations/providers/azureDevOps.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts +42 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js +513 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts +222 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.js +158 -0
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts +120 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js +111 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts +60 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.js +138 -0
- package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts +50 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.js +181 -0
- package/dist/plus/integrations/providers/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.d.ts +5 -0
- package/dist/plus/integrations/providers/github/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.js +47 -0
- package/dist/plus/integrations/providers/github/github.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts +11 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.js +6 -0
- package/dist/plus/integrations/providers/github/github.utils.js.map +1 -0
- package/dist/plus/integrations/providers/github/models.d.ts +3 -0
- package/dist/plus/integrations/providers/github/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/models.js +2 -0
- package/dist/plus/integrations/providers/github/models.js.map +1 -0
- package/dist/plus/integrations/providers/github.d.ts +73 -0
- package/dist/plus/integrations/providers/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github.js +160 -0
- package/dist/plus/integrations/providers/github.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts +63 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js +828 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts +21 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js +45 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts +128 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.js +96 -0
- package/dist/plus/integrations/providers/gitlab/models.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab.d.ts +79 -0
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab.js +253 -0
- package/dist/plus/integrations/providers/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/jira.d.ts +46 -0
- package/dist/plus/integrations/providers/jira.d.ts.map +1 -0
- package/dist/plus/integrations/providers/jira.js +255 -0
- package/dist/plus/integrations/providers/jira.js.map +1 -0
- package/dist/plus/integrations/providers/linear.d.ts +47 -0
- package/dist/plus/integrations/providers/linear.d.ts.map +1 -0
- package/dist/plus/integrations/providers/linear.js +198 -0
- package/dist/plus/integrations/providers/linear.js.map +1 -0
- package/dist/plus/integrations/providers/models.d.ts +433 -0
- package/dist/plus/integrations/providers/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/models.js +602 -0
- package/dist/plus/integrations/providers/models.js.map +1 -0
- package/dist/plus/integrations/providers/providersApi.d.ts +129 -0
- package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -0
- package/dist/plus/integrations/providers/providersApi.js +602 -0
- package/dist/plus/integrations/providers/providersApi.js.map +1 -0
- package/dist/plus/integrations/providers/utils.d.ts +54 -0
- package/dist/plus/integrations/providers/utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/utils.js +262 -0
- package/dist/plus/integrations/providers/utils.js.map +1 -0
- package/dist/plus/integrations/telemetry.d.ts +26 -0
- package/dist/plus/integrations/telemetry.d.ts.map +1 -0
- package/dist/plus/integrations/telemetry.js +11 -0
- package/dist/plus/integrations/telemetry.js.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts +14 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.js +111 -0
- package/dist/plus/integrations/utils/integration.utils.js.map +1 -0
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +6 -0
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/debounce.js +1 -1
- package/dist/utils/disposable.d.ts +15 -2
- package/dist/utils/disposable.d.ts.map +1 -1
- package/dist/utils/disposable.js.map +1 -1
- package/dist/utils/iterable.d.ts +7 -1
- package/dist/utils/iterable.d.ts.map +1 -1
- package/dist/utils/iterable.js +12 -4
- package/dist/utils/iterable.js.map +1 -1
- package/dist/utils/object.d.ts +22 -1
- package/dist/utils/object.d.ts.map +1 -1
- package/dist/utils/object.js +56 -3
- package/dist/utils/object.js.map +1 -1
- package/dist/utils/paging.js +14 -15
- package/dist/utils/paging.js.map +1 -1
- package/dist/utils/promiseCache.d.ts.map +1 -1
- package/dist/utils/promiseCache.js +12 -4
- package/dist/utils/promiseCache.js.map +1 -1
- package/dist/utils/string.js +1 -1
- package/package.json +43 -2
- package/src/git/cache.ts +58 -70
- package/src/git/context.ts +25 -3
- package/src/git/features.ts +2 -0
- package/src/git/models/graph.ts +97 -0
- package/src/git/models/remoteProvider.ts +1 -0
- package/src/git/models/repository.ts +84 -93
- package/src/git/models/statusFile.ts +12 -0
- package/src/git/providers/commits.ts +4 -0
- package/src/git/providers/config.ts +1 -5
- package/src/git/providers/operations.ts +42 -22
- package/src/git/providers/worktrees.ts +14 -2
- package/src/git/remotes/custom.ts +23 -0
- package/src/git/utils/conflictResolution.utils.ts +126 -0
- package/src/git/utils/contributor.utils.ts +24 -0
- package/src/git/utils/reachability.utils.ts +109 -0
- package/src/git/watching/watchService.ts +9 -4
- package/src/git/watching/watchSession.ts +61 -55
- package/src/git-cli/providers/branches.ts +1 -0
- package/src/git-cli/providers/commits.ts +24 -0
- package/src/git-cli/providers/config.ts +63 -49
- package/src/git-cli/providers/diff.ts +2 -1
- package/src/git-cli/providers/graph.ts +145 -14
- package/src/git-cli/providers/operations.ts +138 -130
- package/src/git-cli/providers/stash.ts +20 -2
- package/src/git-cli/providers/status.ts +11 -3
- package/src/git-cli/providers/worktrees.ts +17 -2
- package/src/ipc/discovery.ts +132 -2
- package/src/plus/agents/providers/claudeCodeProvider.ts +430 -90
- package/src/plus/agents/types.ts +59 -11
- package/src/plus/ai/models/model.ts +1 -0
- package/src/plus/ai/models/provider.ts +7 -1
- package/src/plus/ai/providers/gitkrakenProvider.ts +4 -0
- package/src/plus/ai/providers/openAICompatibleProviderBase.ts +21 -4
- package/src/plus/ai/utils/ai.utils.ts +6 -4
- package/src/plus/git-github/api/github.ts +131 -31
- package/src/plus/git-github/providers/github/refs.ts +1 -1
- package/src/plus/integrations/authentication/cloudIntegrationService.ts +120 -0
- package/src/plus/integrations/authentication/configuredIntegrationService.ts +414 -0
- package/src/plus/integrations/authentication/integrationAuthenticationProvider.ts +289 -0
- package/src/plus/integrations/authentication/integrationAuthenticationService.ts +144 -0
- package/src/plus/integrations/authentication/manualTokenProvider.ts +72 -0
- package/src/plus/integrations/authentication/models.ts +168 -0
- package/src/plus/integrations/constants.ts +169 -0
- package/src/plus/integrations/context.ts +383 -0
- package/src/plus/integrations/errors.ts +35 -0
- package/src/plus/integrations/index.ts +119 -0
- package/src/plus/integrations/integrationService.ts +924 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +738 -0
- package/src/plus/integrations/models/integration.ts +657 -0
- package/src/plus/integrations/models/issuesIntegration.ts +124 -0
- package/src/plus/integrations/providers/apiClients.ts +72 -0
- package/src/plus/integrations/providers/azure/azure.ts +691 -0
- package/src/plus/integrations/providers/azure/models.ts +605 -0
- package/src/plus/integrations/providers/azureDevOps.ts +677 -0
- package/src/plus/integrations/providers/bitbucket/bitbucket.ts +774 -0
- package/src/plus/integrations/providers/bitbucket/models.ts +445 -0
- package/src/plus/integrations/providers/bitbucket-server/models.ts +252 -0
- package/src/plus/integrations/providers/bitbucket-server.ts +282 -0
- package/src/plus/integrations/providers/bitbucket.ts +350 -0
- package/src/plus/integrations/providers/github/github.ts +64 -0
- package/src/plus/integrations/providers/github/github.utils.ts +23 -0
- package/src/plus/integrations/providers/github/models.ts +29 -0
- package/src/plus/integrations/providers/github.ts +366 -0
- package/src/plus/integrations/providers/gitlab/gitlab.ts +1210 -0
- package/src/plus/integrations/providers/gitlab/gitlab.utils.ts +71 -0
- package/src/plus/integrations/providers/gitlab/models.ts +257 -0
- package/src/plus/integrations/providers/gitlab.ts +473 -0
- package/src/plus/integrations/providers/jira.ts +359 -0
- package/src/plus/integrations/providers/linear.ts +275 -0
- package/src/plus/integrations/providers/models.ts +1114 -0
- package/src/plus/integrations/providers/providersApi.ts +1126 -0
- package/src/plus/integrations/providers/utils.ts +359 -0
- package/src/plus/integrations/telemetry.ts +29 -0
- package/src/plus/integrations/utils/integration.utils.ts +138 -0
- package/src/utils/date.ts +5 -0
- package/src/utils/debounce.ts +1 -1
- package/src/utils/disposable.ts +15 -2
- package/src/utils/iterable.ts +14 -3
- package/src/utils/object.ts +55 -4
- package/src/utils/paging.ts +14 -14
- package/src/utils/promiseCache.ts +24 -16
- package/src/utils/string.ts +1 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { GraphReachabilityTable } from '../models/graph.js';
|
|
2
|
+
import type { GitCommitReachability } from '../providers/commits.js';
|
|
3
|
+
type ReachableRef = GitCommitReachability['refs'][number];
|
|
4
|
+
/**
|
|
5
|
+
* Canonical dictionary key for a reachable ref. The `r`/`l` discriminator keeps a remote branch from
|
|
6
|
+
* colliding with a local branch of the same name; the `refType` prefix separates tags from branches.
|
|
7
|
+
* Single-sourced here so the encoder ({@link createReachabilityTableBuilder}) and any future consumer
|
|
8
|
+
* can't drift on the convention.
|
|
9
|
+
*/
|
|
10
|
+
export declare function reachableRefKey(ref: ReachableRef): string;
|
|
11
|
+
/**
|
|
12
|
+
* Builds a {@link GraphReachabilityTable} incrementally: interns refs into a shared dictionary and
|
|
13
|
+
* distinct membership bitmaps into a deduplicated set list. Kept next to {@link decodeReachabilitySet}
|
|
14
|
+
* (its exact inverse) so the wire format — first-seen dictionary indexing, LSB-first bit packing,
|
|
15
|
+
* base64 — has a single owner and a round-trippable test, rather than an encoder and decoder that can
|
|
16
|
+
* silently diverge across packages.
|
|
17
|
+
*
|
|
18
|
+
* Append-only by construction: an index, once assigned, is never reused — so a builder kept alive
|
|
19
|
+
* across paginated loads accumulates a table whose existing indices stay valid as it grows.
|
|
20
|
+
*/
|
|
21
|
+
export declare function createReachabilityTableBuilder(): {
|
|
22
|
+
intern: (refs: Iterable<ReachableRef> | undefined) => number | undefined;
|
|
23
|
+
build: () => GraphReachabilityTable | undefined;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Decodes the membership bitmap at `index` in a {@link GraphReachabilityTable} back into its list of
|
|
27
|
+
* reachable refs. Refs come back in the table's first-seen dictionary order — callers that need the
|
|
28
|
+
* canonical display order (current-first / local-before-remote / tags newest-first) sort the result
|
|
29
|
+
* with `compareReachableRefs`. Returns an empty array for an out-of-range/missing set index.
|
|
30
|
+
*
|
|
31
|
+
* The bitmap is at most `ceil(dictionary.length / 8)` bytes; earlier (shorter) bitmaps packed against
|
|
32
|
+
* a smaller dictionary stay valid — only bits actually present can be set, so the loop stops at the
|
|
33
|
+
* shorter of the dictionary length and the bitmap's bit count rather than scanning a guaranteed-zero tail.
|
|
34
|
+
*/
|
|
35
|
+
export declare function decodeReachabilitySet(table: GraphReachabilityTable, index: number): GitCommitReachability['refs'];
|
|
36
|
+
export {};
|
|
37
|
+
//# sourceMappingURL=reachability.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reachability.utils.d.ts","sourceRoot":"","sources":["../../src/utils/reachability.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,KAAK,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CAEzD;AAOD;;;;;;;;;GASG;AACH,wBAAgB,8BAA8B,IAAI;IACjD,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,SAAS,KAAK,MAAM,GAAG,SAAS,CAAC;IACzE,KAAK,EAAE,MAAM,sBAAsB,GAAG,SAAS,CAAC;CAChD,CAgDA;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAcjH"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { base64, fromBase64 } from '../../utils/base64.js';
|
|
2
|
+
/**
|
|
3
|
+
* Canonical dictionary key for a reachable ref. The `r`/`l` discriminator keeps a remote branch from
|
|
4
|
+
* colliding with a local branch of the same name; the `refType` prefix separates tags from branches.
|
|
5
|
+
* Single-sourced here so the encoder ({@link createReachabilityTableBuilder}) and any future consumer
|
|
6
|
+
* can't drift on the convention.
|
|
7
|
+
*/
|
|
8
|
+
export function reachableRefKey(ref) {
|
|
9
|
+
return `${ref.refType}:${ref.refType === 'branch' && ref.remote ? 'r' : 'l'}:${ref.name}`;
|
|
10
|
+
}
|
|
11
|
+
// Monotonic generation counter — each builder (i.e. each fresh graph walk) gets a distinct id, while a
|
|
12
|
+
// builder reused across `more()` pagination keeps its id. Only ever incremented host-side (the encoder);
|
|
13
|
+
// the webview treats the id as opaque. Module-scoped so ids are unique across a session's builders.
|
|
14
|
+
let nextReachabilityTableId = 0;
|
|
15
|
+
/**
|
|
16
|
+
* Builds a {@link GraphReachabilityTable} incrementally: interns refs into a shared dictionary and
|
|
17
|
+
* distinct membership bitmaps into a deduplicated set list. Kept next to {@link decodeReachabilitySet}
|
|
18
|
+
* (its exact inverse) so the wire format — first-seen dictionary indexing, LSB-first bit packing,
|
|
19
|
+
* base64 — has a single owner and a round-trippable test, rather than an encoder and decoder that can
|
|
20
|
+
* silently diverge across packages.
|
|
21
|
+
*
|
|
22
|
+
* Append-only by construction: an index, once assigned, is never reused — so a builder kept alive
|
|
23
|
+
* across paginated loads accumulates a table whose existing indices stay valid as it grows.
|
|
24
|
+
*/
|
|
25
|
+
export function createReachabilityTableBuilder() {
|
|
26
|
+
const id = ++nextReachabilityTableId;
|
|
27
|
+
const dictionary = [];
|
|
28
|
+
const refKeyToIndex = new Map();
|
|
29
|
+
const sets = [];
|
|
30
|
+
const setKeyToIndex = new Map();
|
|
31
|
+
return {
|
|
32
|
+
/** Interns a ref set, returning its index into `sets`, or undefined when the set is empty. */
|
|
33
|
+
intern: (refs) => {
|
|
34
|
+
if (refs == null)
|
|
35
|
+
return undefined;
|
|
36
|
+
let maxIndex = -1;
|
|
37
|
+
const indices = [];
|
|
38
|
+
for (const ref of refs) {
|
|
39
|
+
const key = reachableRefKey(ref);
|
|
40
|
+
let index = refKeyToIndex.get(key);
|
|
41
|
+
if (index == null) {
|
|
42
|
+
index = dictionary.length;
|
|
43
|
+
refKeyToIndex.set(key, index);
|
|
44
|
+
dictionary.push(ref);
|
|
45
|
+
}
|
|
46
|
+
indices.push(index);
|
|
47
|
+
if (index > maxIndex) {
|
|
48
|
+
maxIndex = index;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (indices.length === 0)
|
|
52
|
+
return undefined;
|
|
53
|
+
// Pack into a bitset sized to this set's high-water dictionary index, then intern by base64.
|
|
54
|
+
const bytes = new Uint8Array((maxIndex >> 3) + 1);
|
|
55
|
+
for (const index of indices) {
|
|
56
|
+
bytes[index >> 3] |= 1 << (index & 7);
|
|
57
|
+
}
|
|
58
|
+
const encoded = base64(bytes);
|
|
59
|
+
let setIndex = setKeyToIndex.get(encoded);
|
|
60
|
+
if (setIndex == null) {
|
|
61
|
+
setIndex = sets.length;
|
|
62
|
+
setKeyToIndex.set(encoded, setIndex);
|
|
63
|
+
sets.push(encoded);
|
|
64
|
+
}
|
|
65
|
+
return setIndex;
|
|
66
|
+
},
|
|
67
|
+
/** The accumulated table, or undefined when nothing was interned. */
|
|
68
|
+
build: () => dictionary.length ? { id: id, dictionary: dictionary, sets: sets } : undefined,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Decodes the membership bitmap at `index` in a {@link GraphReachabilityTable} back into its list of
|
|
73
|
+
* reachable refs. Refs come back in the table's first-seen dictionary order — callers that need the
|
|
74
|
+
* canonical display order (current-first / local-before-remote / tags newest-first) sort the result
|
|
75
|
+
* with `compareReachableRefs`. Returns an empty array for an out-of-range/missing set index.
|
|
76
|
+
*
|
|
77
|
+
* The bitmap is at most `ceil(dictionary.length / 8)` bytes; earlier (shorter) bitmaps packed against
|
|
78
|
+
* a smaller dictionary stay valid — only bits actually present can be set, so the loop stops at the
|
|
79
|
+
* shorter of the dictionary length and the bitmap's bit count rather than scanning a guaranteed-zero tail.
|
|
80
|
+
*/
|
|
81
|
+
export function decodeReachabilitySet(table, index) {
|
|
82
|
+
const { dictionary, sets } = table;
|
|
83
|
+
const encoded = sets[index];
|
|
84
|
+
if (encoded == null)
|
|
85
|
+
return [];
|
|
86
|
+
const bytes = fromBase64(encoded);
|
|
87
|
+
const refs = [];
|
|
88
|
+
const count = Math.min(dictionary.length, bytes.length * 8);
|
|
89
|
+
for (let i = 0; i < count; i++) {
|
|
90
|
+
if ((bytes[i >> 3] ?? 0) & (1 << (i & 7))) {
|
|
91
|
+
refs.push(dictionary[i]);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return refs;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=reachability.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reachability.utils.js","sourceRoot":"","sources":["../../src/utils/reachability.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,8 @@ export declare class RepositoryWatchService implements UnifiedDisposable {
|
|
|
49
49
|
private readonly watchGroups;
|
|
50
50
|
private readonly wtWatchers;
|
|
51
51
|
private _disposed;
|
|
52
|
+
/** Global suspend state (driven by window focus); inherited by sessions created via {@link watch}. */
|
|
53
|
+
private _suspended;
|
|
52
54
|
constructor(options: WatchServiceOptions);
|
|
53
55
|
[Symbol.dispose](): void;
|
|
54
56
|
dispose(): void;
|
|
@@ -63,9 +65,9 @@ export declare class RepositoryWatchService implements UnifiedDisposable {
|
|
|
63
65
|
watch(repoPath: string, gitDir: GitDir, watchHooks?: WatchHooks): WatchHandle | undefined;
|
|
64
66
|
/** Get an existing session by repo path */
|
|
65
67
|
getSession(repoPath: string): RepositoryWatchSession | undefined;
|
|
66
|
-
/** Suspend all sessions */
|
|
68
|
+
/** Suspend all sessions and mark the service suspended so late-joining sessions start suspended */
|
|
67
69
|
suspendAll(): void;
|
|
68
|
-
/** Resume all sessions, with optional per-session delay */
|
|
70
|
+
/** Resume all sessions (clearing the global suspend state), with optional per-session delay */
|
|
69
71
|
resumeAll(getDelay?: (session: RepositoryWatchSession) => number): void;
|
|
70
72
|
private getOrCreateWatchGroup;
|
|
71
73
|
private maybeDisposeWatchGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../src/watching/watchService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAGrD,OAAO,KAAK,EAAE,MAAM,EAAoB,MAAM,yBAAyB,CAAC;AACxE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAe,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAIvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IAChD,wFAAwF;IACxF,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,iGAAiG;IACjG,QAAQ,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAC5C,oHAAoH;IACpH,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,CAAC;CACjG;AAED,MAAM,WAAW,UAAU;IAC1B,iEAAiE;IACjE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,4CAA4C;IAC5C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,6FAA6F;IAC7F,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,OAAO,IAAI,IAAI,CAAC;CAChB;AAkBD;;;;;;;;;;GAUG;AACH,qBAAa,sBAAuB,YAAW,iBAAiB;IAC/D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyC;IAChF,qDAAqD;IACrD,IAAI,qBAAqB,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAEzD;IAED,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAS;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwE;IACzG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuB;IAEhD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoC;IAC/D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyE;IACpG,OAAO,CAAC,SAAS,CAAS;
|
|
1
|
+
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../src/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ export class RepositoryWatchService {
|
|
|
28
28
|
watchGroups = new Map();
|
|
29
29
|
wtWatchers = new Map();
|
|
30
30
|
_disposed = false;
|
|
31
|
+
/** Global suspend state (driven by window focus); inherited by sessions created via {@link watch}. */
|
|
32
|
+
_suspended = false;
|
|
31
33
|
constructor(options) {
|
|
32
34
|
this.provider = options.watchingProvider;
|
|
33
35
|
this.defaultRepoDelayMs = options.defaultRepoDelayMs;
|
|
@@ -78,6 +80,7 @@ export class RepositoryWatchService {
|
|
|
78
80
|
repoPath: repoPath,
|
|
79
81
|
defaultRepoDelayMs: this.defaultRepoDelayMs,
|
|
80
82
|
defaultWorkingTreeDelayMs: this.defaultWorkingTreeDelayMs,
|
|
83
|
+
suspended: this._suspended,
|
|
81
84
|
lifecycle: {
|
|
82
85
|
onFirstRepoSubscriber: () => {
|
|
83
86
|
const rec = this.sessionMap.get(repoPath);
|
|
@@ -143,14 +146,16 @@ export class RepositoryWatchService {
|
|
|
143
146
|
getSession(repoPath) {
|
|
144
147
|
return this.sessionMap.get(repoPath)?.session;
|
|
145
148
|
}
|
|
146
|
-
/** Suspend all sessions */
|
|
149
|
+
/** Suspend all sessions and mark the service suspended so late-joining sessions start suspended */
|
|
147
150
|
suspendAll() {
|
|
151
|
+
this._suspended = true;
|
|
148
152
|
for (const record of this.sessionMap.values()) {
|
|
149
153
|
record.session.suspend();
|
|
150
154
|
}
|
|
151
155
|
}
|
|
152
|
-
/** Resume all sessions, with optional per-session delay */
|
|
156
|
+
/** Resume all sessions (clearing the global suspend state), with optional per-session delay */
|
|
153
157
|
resumeAll(getDelay) {
|
|
158
|
+
this._suspended = false;
|
|
154
159
|
for (const record of this.sessionMap.values()) {
|
|
155
160
|
const delayMs = getDelay?.(record.session);
|
|
156
161
|
record.session.resume(delayMs);
|
|
@@ -183,7 +188,7 @@ export class RepositoryWatchService {
|
|
|
183
188
|
},
|
|
184
189
|
onFetchHeadChanged: function (repoPath) {
|
|
185
190
|
// Iterate at fire time so callers that joined after the group was wired up
|
|
186
|
-
// still receive events (e.g. a `Repository.
|
|
191
|
+
// still receive events (e.g. a `Repository.watch()` whose hooks landed
|
|
187
192
|
// after a hookless `GitRepositoryService.watch` registered first).
|
|
188
193
|
for (const h of watchHooks) {
|
|
189
194
|
h.onFetchHeadChanged?.(repoPath);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../src/watching/watchService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAKhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AA0C3D;;;;;;;;;;GAUG;AACH,MAAM,OAAO,sBAAsB;IACjB,sBAAsB,GAAG,IAAI,OAAO,EAA0B,CAAC;IAChF,qDAAqD;IACrD,IAAI,qBAAqB;QACxB,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC;IAC1C,CAAC;IAEgB,kBAAkB,CAAU;IAC5B,yBAAyB,CAAU;IACnC,eAAe,CAAyE;IACxF,QAAQ,CAAuB;IAE/B,UAAU,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC9C,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,UAAU,GAAG,IAAI,GAAG,EAA8D,CAAC;IAC5F,SAAS,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../src/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,8 @@ export interface WatchSessionOptions {
|
|
|
31
31
|
/** Default debounce for working tree changes. Default: 2500ms */
|
|
32
32
|
readonly defaultWorkingTreeDelayMs?: number;
|
|
33
33
|
readonly lifecycle?: WatchSessionLifecycle;
|
|
34
|
+
/** Initial suspended state — new sessions inherit the service-global suspend state. Default: false */
|
|
35
|
+
readonly suspended?: boolean;
|
|
34
36
|
/**
|
|
35
37
|
* Called whenever a debounced repo change event is dispatched to subscribers.
|
|
36
38
|
* Does NOT count as a subscriber — used by WatchService for
|
|
@@ -54,13 +56,13 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
54
56
|
private repoTimer;
|
|
55
57
|
private effectiveRepoMs;
|
|
56
58
|
private readonly defaultRepoMs;
|
|
57
|
-
private readonly
|
|
58
|
-
private readonly
|
|
59
|
-
private
|
|
60
|
-
private
|
|
61
|
-
private
|
|
62
|
-
private
|
|
63
|
-
private readonly
|
|
59
|
+
private readonly workingTreeEmitter;
|
|
60
|
+
private readonly workingTreeDelays;
|
|
61
|
+
private workingTreeNextId;
|
|
62
|
+
private pendingWorkingTreePaths;
|
|
63
|
+
private workingTreeTimer;
|
|
64
|
+
private effectiveWorkingTreeMs;
|
|
65
|
+
private readonly defaultWorkingTreeMs;
|
|
64
66
|
private _etagWorkingTree;
|
|
65
67
|
private _suspended;
|
|
66
68
|
private _disposed;
|
|
@@ -105,14 +107,14 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
105
107
|
pushWorkingTreeChanges(paths: Iterable<string>): void;
|
|
106
108
|
private static minDelay;
|
|
107
109
|
private recalcRepoDelay;
|
|
108
|
-
private
|
|
110
|
+
private recalcWorkingTreeDelay;
|
|
109
111
|
private flushRepo;
|
|
110
112
|
private scheduleRepoFlush;
|
|
111
113
|
private coalesceRepo;
|
|
112
|
-
private
|
|
113
|
-
private
|
|
114
|
-
private
|
|
114
|
+
private flushWorkingTree;
|
|
115
|
+
private scheduleWorkingTreeFlush;
|
|
116
|
+
private coalesceWorkingTrees;
|
|
115
117
|
private cancelRepoTimer;
|
|
116
|
-
private
|
|
118
|
+
private cancelWorkingTreeTimer;
|
|
117
119
|
}
|
|
118
120
|
//# sourceMappingURL=watchSession.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../src/watching/watchSession.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAChE,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,sBAAsB,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC,yDAAyD;IACzD,qBAAqB,CAAC,IAAI,IAAI,CAAC;IAC/B,yDAAyD;IACzD,oBAAoB,CAAC,IAAI,IAAI,CAAC;IAC9B,0DAA0D;IAC1D,4BAA4B,CAAC,IAAI,IAAI,CAAC;IACtC,0DAA0D;IAC1D,2BAA2B,CAAC,IAAI,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wDAAwD;IACxD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,iEAAiE;IACjE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACvE;AAKD;;;;;;GAMG;AACH,qBAAa,sBAAuB,YAAW,iBAAiB;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAyC;IACrE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA6B;IACxD,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,gBAAgB,CAAqC;IAC7D,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,OAAO,CAAC,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../src/watching/watchSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,26 +19,27 @@ export class RepositoryWatchSession {
|
|
|
19
19
|
repoTimer;
|
|
20
20
|
effectiveRepoMs;
|
|
21
21
|
defaultRepoMs;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
workingTreeEmitter = new Emitter();
|
|
23
|
+
workingTreeDelays = new Map();
|
|
24
|
+
workingTreeNextId = 0;
|
|
25
|
+
pendingWorkingTreePaths = new Set();
|
|
26
|
+
workingTreeTimer;
|
|
27
|
+
effectiveWorkingTreeMs;
|
|
28
|
+
defaultWorkingTreeMs;
|
|
29
29
|
_etagWorkingTree = 0;
|
|
30
|
-
_suspended
|
|
30
|
+
_suspended;
|
|
31
31
|
_disposed = false;
|
|
32
32
|
lifecycle;
|
|
33
33
|
onDidFireRepoChangeCallback;
|
|
34
34
|
constructor(options) {
|
|
35
35
|
this.repoPath = options.repoPath;
|
|
36
36
|
this.defaultRepoMs = options.defaultRepoDelayMs ?? defaultRepoDelay;
|
|
37
|
-
this.
|
|
37
|
+
this.defaultWorkingTreeMs = options.defaultWorkingTreeDelayMs ?? defaultWorkingTreeDelay;
|
|
38
38
|
this.effectiveRepoMs = this.defaultRepoMs;
|
|
39
|
-
this.
|
|
39
|
+
this.effectiveWorkingTreeMs = this.defaultWorkingTreeMs;
|
|
40
40
|
this.lifecycle = options.lifecycle;
|
|
41
41
|
this.onDidFireRepoChangeCallback = options.onDidFireRepoChange;
|
|
42
|
+
this._suspended = options.suspended ?? false;
|
|
42
43
|
}
|
|
43
44
|
[Symbol.dispose]() {
|
|
44
45
|
this.dispose();
|
|
@@ -48,25 +49,25 @@ export class RepositoryWatchSession {
|
|
|
48
49
|
return;
|
|
49
50
|
this._disposed = true;
|
|
50
51
|
this.cancelRepoTimer();
|
|
51
|
-
this.
|
|
52
|
+
this.cancelWorkingTreeTimer();
|
|
52
53
|
this.pendingRepoEvent = undefined;
|
|
53
|
-
this.
|
|
54
|
+
this.pendingWorkingTreePaths.clear();
|
|
54
55
|
this.repoDelays.clear();
|
|
55
|
-
this.
|
|
56
|
+
this.workingTreeDelays.clear();
|
|
56
57
|
this.repoEmitter.dispose();
|
|
57
|
-
this.
|
|
58
|
+
this.workingTreeEmitter.dispose();
|
|
58
59
|
}
|
|
59
60
|
get suspended() {
|
|
60
61
|
return this._suspended;
|
|
61
62
|
}
|
|
62
63
|
get hasPendingChanges() {
|
|
63
|
-
return this.pendingRepoEvent != null || this.
|
|
64
|
+
return this.pendingRepoEvent != null || this.pendingWorkingTreePaths.size > 0;
|
|
64
65
|
}
|
|
65
66
|
get repoSubscriberCount() {
|
|
66
67
|
return this.repoDelays.size;
|
|
67
68
|
}
|
|
68
69
|
get workingTreeSubscriberCount() {
|
|
69
|
-
return this.
|
|
70
|
+
return this.workingTreeDelays.size;
|
|
70
71
|
}
|
|
71
72
|
/**
|
|
72
73
|
* Monotonic counter incremented immediately when working tree changes
|
|
@@ -120,41 +121,41 @@ export class RepositoryWatchSession {
|
|
|
120
121
|
subscribeToWorkingTree(opts) {
|
|
121
122
|
if (this._disposed) {
|
|
122
123
|
return Object.assign(createDisposable(() => { }), {
|
|
123
|
-
onDidChangeWorkingTree: this.
|
|
124
|
+
onDidChangeWorkingTree: this.workingTreeEmitter.event,
|
|
124
125
|
});
|
|
125
126
|
}
|
|
126
|
-
const id = this.
|
|
127
|
-
const delay = opts?.delayMs ?? this.
|
|
128
|
-
const wasEmpty = this.
|
|
129
|
-
const prevDelay = this.
|
|
130
|
-
this.
|
|
131
|
-
this.
|
|
127
|
+
const id = this.workingTreeNextId++;
|
|
128
|
+
const delay = opts?.delayMs ?? this.defaultWorkingTreeMs;
|
|
129
|
+
const wasEmpty = this.workingTreeDelays.size === 0;
|
|
130
|
+
const prevDelay = this.effectiveWorkingTreeMs;
|
|
131
|
+
this.workingTreeDelays.set(id, delay);
|
|
132
|
+
this.recalcWorkingTreeDelay();
|
|
132
133
|
if (wasEmpty) {
|
|
133
134
|
this.lifecycle?.onFirstWorkingTreeSubscriber?.();
|
|
134
135
|
}
|
|
135
136
|
// If the effective delay got shorter while a timer is running, reschedule sooner
|
|
136
|
-
if (this.
|
|
137
|
-
this.
|
|
137
|
+
if (this.effectiveWorkingTreeMs < prevDelay && this.workingTreeTimer != null) {
|
|
138
|
+
this.scheduleWorkingTreeFlush();
|
|
138
139
|
}
|
|
139
140
|
let subDisposed = false;
|
|
140
141
|
return Object.assign(createDisposable(() => {
|
|
141
142
|
if (subDisposed)
|
|
142
143
|
return;
|
|
143
144
|
subDisposed = true;
|
|
144
|
-
this.
|
|
145
|
-
this.
|
|
146
|
-
if (this.
|
|
147
|
-
this.
|
|
148
|
-
this.
|
|
145
|
+
this.workingTreeDelays.delete(id);
|
|
146
|
+
this.recalcWorkingTreeDelay();
|
|
147
|
+
if (this.workingTreeDelays.size === 0) {
|
|
148
|
+
this.cancelWorkingTreeTimer();
|
|
149
|
+
this.pendingWorkingTreePaths.clear();
|
|
149
150
|
this.lifecycle?.onLastWorkingTreeSubscriber?.();
|
|
150
151
|
}
|
|
151
|
-
}), { onDidChangeWorkingTree: this.
|
|
152
|
+
}), { onDidChangeWorkingTree: this.workingTreeEmitter.event });
|
|
152
153
|
}
|
|
153
154
|
suspend() {
|
|
154
155
|
this._suspended = true;
|
|
155
156
|
// Cancel active timers — events continue to coalesce but don't fire
|
|
156
157
|
this.cancelRepoTimer();
|
|
157
|
-
this.
|
|
158
|
+
this.cancelWorkingTreeTimer();
|
|
158
159
|
}
|
|
159
160
|
resume(delayMs) {
|
|
160
161
|
if (!this._suspended)
|
|
@@ -164,8 +165,8 @@ export class RepositoryWatchSession {
|
|
|
164
165
|
if (this.pendingRepoEvent != null) {
|
|
165
166
|
this.scheduleRepoFlush(delayMs);
|
|
166
167
|
}
|
|
167
|
-
if (this.
|
|
168
|
-
this.
|
|
168
|
+
if (this.pendingWorkingTreePaths.size > 0) {
|
|
169
|
+
this.scheduleWorkingTreeFlush(delayMs);
|
|
169
170
|
}
|
|
170
171
|
}
|
|
171
172
|
/** Inject changes (e.g., after a git operation the caller performed). Goes through debounce + suspend. */
|
|
@@ -191,7 +192,7 @@ export class RepositoryWatchSession {
|
|
|
191
192
|
if (this._disposed)
|
|
192
193
|
return;
|
|
193
194
|
this._etagWorkingTree++;
|
|
194
|
-
this.
|
|
195
|
+
this.coalesceWorkingTrees(paths);
|
|
195
196
|
}
|
|
196
197
|
static minDelay(delays, fallback) {
|
|
197
198
|
if (delays.size === 0)
|
|
@@ -207,8 +208,8 @@ export class RepositoryWatchSession {
|
|
|
207
208
|
recalcRepoDelay() {
|
|
208
209
|
this.effectiveRepoMs = RepositoryWatchSession.minDelay(this.repoDelays, this.defaultRepoMs);
|
|
209
210
|
}
|
|
210
|
-
|
|
211
|
-
this.
|
|
211
|
+
recalcWorkingTreeDelay() {
|
|
212
|
+
this.effectiveWorkingTreeMs = RepositoryWatchSession.minDelay(this.workingTreeDelays, this.defaultWorkingTreeMs);
|
|
212
213
|
}
|
|
213
214
|
flushRepo() {
|
|
214
215
|
this.repoTimer = undefined;
|
|
@@ -236,27 +237,27 @@ export class RepositoryWatchSession {
|
|
|
236
237
|
: this.pendingRepoEvent.with(changes);
|
|
237
238
|
this.scheduleRepoFlush();
|
|
238
239
|
}
|
|
239
|
-
|
|
240
|
-
this.
|
|
241
|
-
if (this.
|
|
240
|
+
flushWorkingTree() {
|
|
241
|
+
this.workingTreeTimer = undefined;
|
|
242
|
+
if (this.pendingWorkingTreePaths.size === 0)
|
|
242
243
|
return;
|
|
243
|
-
const paths = this.
|
|
244
|
-
this.
|
|
245
|
-
this.
|
|
244
|
+
const paths = this.pendingWorkingTreePaths;
|
|
245
|
+
this.pendingWorkingTreePaths = new Set();
|
|
246
|
+
this.workingTreeEmitter.fire({ repoPath: this.repoPath, paths: paths });
|
|
246
247
|
}
|
|
247
|
-
|
|
248
|
-
if (this._suspended || this.
|
|
248
|
+
scheduleWorkingTreeFlush(delayOverride) {
|
|
249
|
+
if (this._suspended || this.pendingWorkingTreePaths.size === 0)
|
|
249
250
|
return;
|
|
250
|
-
if (this.
|
|
251
|
-
clearTimeout(this.
|
|
251
|
+
if (this.workingTreeTimer != null) {
|
|
252
|
+
clearTimeout(this.workingTreeTimer);
|
|
252
253
|
}
|
|
253
|
-
this.
|
|
254
|
+
this.workingTreeTimer = setTimeout(() => this.flushWorkingTree(), delayOverride ?? this.effectiveWorkingTreeMs);
|
|
254
255
|
}
|
|
255
|
-
|
|
256
|
+
coalesceWorkingTrees(paths) {
|
|
256
257
|
for (const p of paths) {
|
|
257
|
-
this.
|
|
258
|
+
this.pendingWorkingTreePaths.add(p);
|
|
258
259
|
}
|
|
259
|
-
this.
|
|
260
|
+
this.scheduleWorkingTreeFlush();
|
|
260
261
|
}
|
|
261
262
|
cancelRepoTimer() {
|
|
262
263
|
if (this.repoTimer != null) {
|
|
@@ -264,10 +265,10 @@ export class RepositoryWatchSession {
|
|
|
264
265
|
this.repoTimer = undefined;
|
|
265
266
|
}
|
|
266
267
|
}
|
|
267
|
-
|
|
268
|
-
if (this.
|
|
269
|
-
clearTimeout(this.
|
|
270
|
-
this.
|
|
268
|
+
cancelWorkingTreeTimer() {
|
|
269
|
+
if (this.workingTreeTimer != null) {
|
|
270
|
+
clearTimeout(this.workingTreeTimer);
|
|
271
|
+
this.workingTreeTimer = undefined;
|
|
271
272
|
}
|
|
272
273
|
}
|
|
273
274
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchSession.js","sourceRoot":"","sources":["../../src/watching/watchSession.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"watchSession.js","sourceRoot":"","sources":["../../src/watching/watchSession.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/providers/branches.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAA6B,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAC1G,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,iBAAiB,EAAkB,MAAM,+BAA+B,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AACrF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,KAAK,EACX,2BAA2B,EAC3B,sBAAsB,EACtB,qBAAqB,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAapE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAQvE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAM3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAO1C,qBAAa,sBAAuB,YAAW,sBAAsB;IAEnE,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAHR,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,sBAAsB;IAI5C,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;YA6B9F,gBAAgB;IA6DxB,WAAW,CAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,OAAO,CAAC;QACnC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,IAAI,CAAC;QAClD,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,CAAC,EAAE,OAAO,GAAG,iBAAiB,CAAC;KACnC,EACD,YAAY,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"branches.d.ts","sourceRoot":"","sources":["../../src/providers/branches.ts"],"names":[],"mappings":"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"}
|