@gitkraken/core-gitlens 0.5.109 → 0.5.111
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 +48 -1
- package/dist/git/cache.d.ts +111 -6
- package/dist/git/cache.d.ts.map +1 -1
- package/dist/git/cache.js +312 -43
- package/dist/git/cache.js.map +1 -1
- package/dist/git/context.d.ts +11 -0
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/context.js.map +1 -1
- package/dist/git/models/fileStatus.d.ts +1 -0
- package/dist/git/models/fileStatus.d.ts.map +1 -1
- package/dist/git/models/fileStatus.js +1 -0
- package/dist/git/models/fileStatus.js.map +1 -1
- package/dist/git/models/issue.d.ts +4 -0
- package/dist/git/models/issue.d.ts.map +1 -1
- package/dist/git/models/mergeConflicts.d.ts +2 -0
- package/dist/git/models/mergeConflicts.d.ts.map +1 -1
- package/dist/git/models/pullRequest.d.ts +119 -2
- package/dist/git/models/pullRequest.d.ts.map +1 -1
- package/dist/git/models/pullRequest.js +27 -1
- package/dist/git/models/pullRequest.js.map +1 -1
- package/dist/git/models/repository.d.ts +32 -5
- package/dist/git/models/repository.d.ts.map +1 -1
- package/dist/git/models/repository.js +58 -12
- package/dist/git/models/repository.js.map +1 -1
- package/dist/git/models/statusFile.d.ts.map +1 -1
- package/dist/git/models/statusFile.js +3 -0
- package/dist/git/models/statusFile.js.map +1 -1
- package/dist/git/providers/branches.d.ts +2 -0
- package/dist/git/providers/branches.d.ts.map +1 -1
- package/dist/git/providers/commits.d.ts +8 -0
- package/dist/git/providers/commits.d.ts.map +1 -1
- package/dist/git/providers/config.d.ts +19 -1
- package/dist/git/providers/config.d.ts.map +1 -1
- package/dist/git/providers/operations.d.ts +1 -0
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/pausedOperations.d.ts +2 -0
- package/dist/git/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git/providers/status.d.ts +1 -0
- package/dist/git/providers/status.d.ts.map +1 -1
- package/dist/git/utils/config.utils.d.ts +3 -0
- package/dist/git/utils/config.utils.d.ts.map +1 -0
- package/dist/git/utils/config.utils.js +8 -0
- package/dist/git/utils/config.utils.js.map +1 -0
- package/dist/git/utils/issue.utils.d.ts.map +1 -1
- package/dist/git/utils/issue.utils.js +2 -0
- package/dist/git/utils/issue.utils.js.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.d.ts +14 -0
- package/dist/git/utils/pausedOperationStatus.utils.d.ts.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.js +23 -0
- package/dist/git/utils/pausedOperationStatus.utils.js.map +1 -1
- package/dist/git/utils/pullRequest.utils.d.ts +24 -1
- package/dist/git/utils/pullRequest.utils.d.ts.map +1 -1
- package/dist/git/utils/pullRequest.utils.js +71 -0
- package/dist/git/utils/pullRequest.utils.js.map +1 -1
- package/dist/git/watching/changeEvent.d.ts +6 -1
- package/dist/git/watching/changeEvent.d.ts.map +1 -1
- package/dist/git/watching/classifyChange.d.ts.map +1 -1
- package/dist/git/watching/classifyChange.js +14 -1
- package/dist/git/watching/classifyChange.js.map +1 -1
- package/dist/git/watching/watchService.d.ts.map +1 -1
- package/dist/git/watching/watchService.js +18 -3
- package/dist/git/watching/watchService.js.map +1 -1
- package/dist/git/watching/watchSession.d.ts +8 -1
- package/dist/git/watching/watchSession.d.ts.map +1 -1
- package/dist/git/watching/watchSession.js +38 -6
- package/dist/git/watching/watchSession.js.map +1 -1
- package/dist/git/watching/watcherPatterns.d.ts +2 -2
- package/dist/git/watching/watcherPatterns.d.ts.map +1 -1
- package/dist/git/watching/watcherPatterns.js +1 -1
- package/dist/git/watching/watcherPatterns.js.map +1 -1
- package/dist/git-cli/exec/git.d.ts +1 -1
- package/dist/git-cli/exec/git.d.ts.map +1 -1
- package/dist/git-cli/exec/git.js +13 -3
- package/dist/git-cli/exec/git.js.map +1 -1
- package/dist/git-cli/providers/branches.d.ts +19 -0
- package/dist/git-cli/providers/branches.d.ts.map +1 -1
- package/dist/git-cli/providers/branches.js +282 -78
- package/dist/git-cli/providers/branches.js.map +1 -1
- package/dist/git-cli/providers/commits.d.ts +4 -0
- package/dist/git-cli/providers/commits.d.ts.map +1 -1
- package/dist/git-cli/providers/commits.js +84 -11
- package/dist/git-cli/providers/commits.js.map +1 -1
- package/dist/git-cli/providers/config.d.ts +42 -0
- package/dist/git-cli/providers/config.d.ts.map +1 -1
- package/dist/git-cli/providers/config.js +186 -5
- package/dist/git-cli/providers/config.js.map +1 -1
- package/dist/git-cli/providers/contributors.d.ts.map +1 -1
- package/dist/git-cli/providers/contributors.js +1 -1
- package/dist/git-cli/providers/contributors.js.map +1 -1
- package/dist/git-cli/providers/graph.d.ts +2 -2
- package/dist/git-cli/providers/graph.d.ts.map +1 -1
- package/dist/git-cli/providers/graph.js +27 -9
- package/dist/git-cli/providers/graph.js.map +1 -1
- package/dist/git-cli/providers/operations.d.ts.map +1 -1
- package/dist/git-cli/providers/operations.js +40 -12
- package/dist/git-cli/providers/operations.js.map +1 -1
- package/dist/git-cli/providers/pausedOperations.d.ts +5 -0
- package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git-cli/providers/pausedOperations.js +87 -16
- package/dist/git-cli/providers/pausedOperations.js.map +1 -1
- package/dist/git-cli/providers/refs.d.ts +5 -3
- package/dist/git-cli/providers/refs.d.ts.map +1 -1
- package/dist/git-cli/providers/refs.js +33 -4
- package/dist/git-cli/providers/refs.js.map +1 -1
- package/dist/git-cli/providers/status.d.ts +1 -0
- package/dist/git-cli/providers/status.d.ts.map +1 -1
- package/dist/git-cli/providers/status.js +18 -3
- package/dist/git-cli/providers/status.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +4 -0
- package/dist/git-cli/providers/worktrees.js.map +1 -1
- package/dist/git-cli/service.d.ts.map +1 -1
- package/dist/git-cli/service.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts +39 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.js +978 -71
- package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts +24 -2
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.js +84 -9
- package/dist/plus/agents/providers/claudeCodeTranscript.js.map +1 -1
- package/dist/plus/agents/types.d.ts +37 -2
- package/dist/plus/agents/types.d.ts.map +1 -1
- package/dist/plus/agents/types.js +2 -0
- package/dist/plus/agents/types.js.map +1 -1
- package/dist/plus/ai/errors.d.ts +10 -0
- package/dist/plus/ai/errors.d.ts.map +1 -1
- package/dist/plus/ai/errors.js +29 -0
- package/dist/plus/ai/errors.js.map +1 -1
- package/dist/plus/ai/models/model.d.ts +4 -0
- package/dist/plus/ai/models/model.d.ts.map +1 -1
- package/dist/plus/ai/models/model.js +51 -6
- package/dist/plus/ai/models/model.js.map +1 -1
- package/dist/plus/ai/models/promptTemplates.d.ts +1 -1
- package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -1
- package/dist/plus/ai/models/provider.d.ts +60 -2
- package/dist/plus/ai/models/provider.d.ts.map +1 -1
- package/dist/plus/ai/prompts.d.ts +12 -0
- package/dist/plus/ai/prompts.d.ts.map +1 -1
- package/dist/plus/ai/prompts.js +177 -61
- package/dist/plus/ai/prompts.js.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.d.ts +10 -2
- package/dist/plus/ai/providers/anthropicProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.js +139 -46
- package/dist/plus/ai/providers/anthropicProvider.js.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.d.ts +2 -0
- package/dist/plus/ai/providers/deepSeekProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.js +10 -21
- package/dist/plus/ai/providers/deepSeekProvider.js.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/geminiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.js +19 -0
- package/dist/plus/ai/providers/geminiProvider.js.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts +5 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js +118 -3
- package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts +1 -0
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.js +5 -0
- package/dist/plus/ai/providers/huggingFaceProvider.js.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.d.ts +3 -1
- package/dist/plus/ai/providers/mistralProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.js +99 -19
- package/dist/plus/ai/providers/mistralProvider.js.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.d.ts +4 -3
- package/dist/plus/ai/providers/ollamaProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.js +38 -3
- package/dist/plus/ai/providers/ollamaProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.d.ts +1 -0
- package/dist/plus/ai/providers/openAICompatibleProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.js +4 -0
- package/dist/plus/ai/providers/openAICompatibleProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +154 -5
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js +259 -10
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.d.ts +4 -0
- package/dist/plus/ai/providers/openRouterProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.js +9 -0
- package/dist/plus/ai/providers/openRouterProvider.js.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/openaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.js +1 -0
- package/dist/plus/ai/providers/openaiProvider.js.map +1 -1
- package/dist/plus/ai/providers/responseFormatCache.d.ts +8 -0
- package/dist/plus/ai/providers/responseFormatCache.d.ts.map +1 -0
- package/dist/plus/ai/providers/responseFormatCache.js +25 -0
- package/dist/plus/ai/providers/responseFormatCache.js.map +1 -0
- package/dist/plus/ai/providers/xaiProvider.d.ts +1 -0
- package/dist/plus/ai/providers/xaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/xaiProvider.js +10 -1
- package/dist/plus/ai/providers/xaiProvider.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.d.ts +3 -0
- package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +13 -0
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/ai/utils/results.utils.d.ts +16 -2
- package/dist/plus/ai/utils/results.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/results.utils.js +204 -28
- package/dist/plus/ai/utils/results.utils.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +92 -4
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +324 -20
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/git-github/api/pullRequestSearchQuery.d.ts +27 -1
- package/dist/plus/git-github/api/pullRequestSearchQuery.d.ts.map +1 -1
- package/dist/plus/git-github/api/pullRequestSearchQuery.js +73 -6
- package/dist/plus/git-github/api/pullRequestSearchQuery.js.map +1 -1
- package/dist/plus/git-github/models.d.ts +33 -5
- package/dist/plus/git-github/models.d.ts.map +1 -1
- package/dist/plus/git-github/models.js +43 -4
- package/dist/plus/git-github/models.js.map +1 -1
- package/dist/plus/git-github/providers/github/status.d.ts +1 -0
- package/dist/plus/git-github/providers/github/status.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/status.js.map +1 -1
- package/dist/plus/integrations/context.d.ts +4 -0
- package/dist/plus/integrations/context.d.ts.map +1 -1
- package/dist/plus/integrations/index.d.ts.map +1 -1
- package/dist/plus/integrations/index.js +2 -0
- package/dist/plus/integrations/index.js.map +1 -1
- package/dist/plus/integrations/integrationService.d.ts +16 -1
- package/dist/plus/integrations/integrationService.d.ts.map +1 -1
- package/dist/plus/integrations/integrationService.js +9 -1
- package/dist/plus/integrations/integrationService.js.map +1 -1
- package/dist/plus/integrations/manager.d.ts +45 -5
- package/dist/plus/integrations/manager.d.ts.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +18 -3
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.js +30 -2
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -1
- package/dist/plus/integrations/models/integration.d.ts +4 -2
- package/dist/plus/integrations/models/integration.d.ts.map +1 -1
- package/dist/plus/integrations/models/integration.js +2 -2
- package/dist/plus/integrations/models/integration.js.map +1 -1
- package/dist/plus/integrations/providerFilters.d.ts +1 -1
- package/dist/plus/integrations/providerFilters.d.ts.map +1 -1
- package/dist/plus/integrations/providers/accounts.d.ts +6 -0
- package/dist/plus/integrations/providers/accounts.d.ts.map +1 -0
- package/dist/plus/integrations/providers/accounts.js +34 -0
- package/dist/plus/integrations/providers/accounts.js.map +1 -0
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/azure/models.js +3 -0
- package/dist/plus/integrations/providers/azure/models.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.js +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -1
- package/dist/plus/integrations/providers/github.d.ts +23 -2
- package/dist/plus/integrations/providers/github.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github.js +169 -138
- package/dist/plus/integrations/providers/github.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab.d.ts +9 -0
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab.js +23 -4
- package/dist/plus/integrations/providers/gitlab.js.map +1 -1
- package/dist/plus/integrations/providers/models.d.ts +14 -32
- package/dist/plus/integrations/providers/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/models.js +66 -109
- package/dist/plus/integrations/providers/models.js.map +1 -1
- package/dist/plus/integrations/providers/pullRequestReviews.d.ts +50 -0
- package/dist/plus/integrations/providers/pullRequestReviews.d.ts.map +1 -0
- package/dist/plus/integrations/providers/pullRequestReviews.js +99 -0
- package/dist/plus/integrations/providers/pullRequestReviews.js.map +1 -0
- package/dist/plus/integrations/reads/broaden.d.ts.map +1 -1
- package/dist/plus/integrations/reads/broaden.js +6 -1
- package/dist/plus/integrations/reads/broaden.js.map +1 -1
- package/dist/plus/integrations/reads/counts.d.ts +55 -0
- package/dist/plus/integrations/reads/counts.d.ts.map +1 -1
- package/dist/plus/integrations/reads/counts.js +146 -2
- package/dist/plus/integrations/reads/counts.js.map +1 -1
- package/dist/plus/integrations/reads/drains.d.ts +7 -1
- package/dist/plus/integrations/reads/drains.d.ts.map +1 -1
- package/dist/plus/integrations/reads/drains.js +20 -6
- package/dist/plus/integrations/reads/drains.js.map +1 -1
- package/dist/plus/integrations/reads/filters.d.ts.map +1 -1
- package/dist/plus/integrations/reads/filters.js +22 -0
- package/dist/plus/integrations/reads/filters.js.map +1 -1
- package/dist/plus/integrations/reads/hierarchy.d.ts.map +1 -1
- package/dist/plus/integrations/reads/hierarchy.js +3 -1
- package/dist/plus/integrations/reads/hierarchy.js.map +1 -1
- package/dist/plus/integrations/reads/issueTracker.d.ts.map +1 -1
- package/dist/plus/integrations/reads/issueTracker.js +8 -3
- package/dist/plus/integrations/reads/issueTracker.js.map +1 -1
- package/dist/plus/integrations/reads/issues.d.ts.map +1 -1
- package/dist/plus/integrations/reads/issues.js +9 -4
- package/dist/plus/integrations/reads/issues.js.map +1 -1
- package/dist/plus/integrations/reads/pullRequests.d.ts.map +1 -1
- package/dist/plus/integrations/reads/pullRequests.js +9 -4
- package/dist/plus/integrations/reads/pullRequests.js.map +1 -1
- package/dist/plus/integrations/reads/searchPullRequests.d.ts +4 -3
- package/dist/plus/integrations/reads/searchPullRequests.d.ts.map +1 -1
- package/dist/plus/integrations/reads/searchPullRequests.js +6 -4
- package/dist/plus/integrations/reads/searchPullRequests.js.map +1 -1
- package/dist/plus/integrations/reads/sweeps.js +1 -1
- package/dist/plus/integrations/reads/sweeps.js.map +1 -1
- package/dist/plus/integrations/reads/warnings.d.ts +2 -2
- package/dist/plus/integrations/reads/warnings.d.ts.map +1 -1
- package/dist/plus/integrations/reads/warnings.js +11 -2
- package/dist/plus/integrations/reads/warnings.js.map +1 -1
- package/dist/plus/integrations/results.d.ts +6 -1
- package/dist/plus/integrations/results.d.ts.map +1 -1
- package/dist/plus/integrations/results.js.map +1 -1
- package/dist/utils/env/browser/base64.d.ts +1 -1
- package/dist/utils/env/browser/base64.d.ts.map +1 -1
- package/dist/utils/env/node/base64.d.ts +1 -1
- package/dist/utils/env/node/base64.d.ts.map +1 -1
- package/dist/utils/env/node/base64.js +2 -0
- package/dist/utils/env/node/base64.js.map +1 -1
- package/dist/utils/keys/chord.d.ts +52 -0
- package/dist/utils/keys/chord.d.ts.map +1 -0
- package/dist/utils/keys/chord.js +135 -0
- package/dist/utils/keys/chord.js.map +1 -0
- package/dist/utils/keys/keybinding.d.ts +53 -0
- package/dist/utils/keys/keybinding.d.ts.map +1 -0
- package/dist/utils/keys/keybinding.js +58 -0
- package/dist/utils/keys/keybinding.js.map +1 -0
- package/dist/utils/path.d.ts +11 -0
- package/dist/utils/path.d.ts.map +1 -1
- package/dist/utils/path.js +13 -0
- package/dist/utils/path.js.map +1 -1
- package/docs/integrations.md +76 -10
- package/docs/kepler-read-api-parity.md +9 -0
- package/package.json +13 -5
- package/src/git/cache.ts +383 -47
- package/src/git/context.ts +11 -0
- package/src/git/models/fileStatus.ts +1 -0
- package/src/git/models/issue.ts +4 -0
- package/src/git/models/mergeConflicts.ts +3 -2
- package/src/git/models/pullRequest.ts +117 -1
- package/src/git/models/repository.ts +58 -17
- package/src/git/models/statusFile.ts +3 -0
- package/src/git/providers/branches.ts +6 -0
- package/src/git/providers/commits.ts +11 -0
- package/src/git/providers/config.ts +18 -0
- package/src/git/providers/operations.ts +1 -0
- package/src/git/providers/pausedOperations.ts +2 -0
- package/src/git/providers/status.ts +1 -0
- package/src/git/utils/config.utils.ts +8 -0
- package/src/git/utils/issue.utils.ts +2 -0
- package/src/git/utils/pausedOperationStatus.utils.ts +28 -0
- package/src/git/utils/pullRequest.utils.ts +86 -0
- package/src/git/watching/changeEvent.ts +6 -1
- package/src/git/watching/classifyChange.ts +15 -1
- package/src/git/watching/watchService.ts +20 -3
- package/src/git/watching/watchSession.ts +41 -6
- package/src/git/watching/watcherPatterns.ts +1 -1
- package/src/git-cli/exec/git.ts +13 -3
- package/src/git-cli/providers/branches.ts +384 -132
- package/src/git-cli/providers/commits.ts +106 -15
- package/src/git-cli/providers/config.ts +229 -8
- package/src/git-cli/providers/contributors.ts +5 -1
- package/src/git-cli/providers/graph.ts +26 -13
- package/src/git-cli/providers/operations.ts +45 -20
- package/src/git-cli/providers/pausedOperations.ts +109 -17
- package/src/git-cli/providers/refs.ts +33 -3
- package/src/git-cli/providers/status.ts +25 -4
- package/src/git-cli/providers/worktrees.ts +5 -0
- package/src/git-cli/service.ts +0 -1
- package/src/plus/agents/providers/claudeCodeProvider.ts +1130 -87
- package/src/plus/agents/providers/claudeCodeTranscript.ts +95 -9
- package/src/plus/agents/types.ts +46 -2
- package/src/plus/ai/errors.ts +30 -0
- package/src/plus/ai/models/model.ts +56 -6
- package/src/plus/ai/models/promptTemplates.ts +1 -1
- package/src/plus/ai/models/provider.ts +69 -2
- package/src/plus/ai/prompts.ts +186 -61
- package/src/plus/ai/providers/anthropicProvider.ts +155 -47
- package/src/plus/ai/providers/deepSeekProvider.ts +11 -21
- package/src/plus/ai/providers/geminiProvider.ts +19 -0
- package/src/plus/ai/providers/gitkrakenProvider.ts +126 -3
- package/src/plus/ai/providers/huggingFaceProvider.ts +6 -0
- package/src/plus/ai/providers/mistralProvider.ts +102 -19
- package/src/plus/ai/providers/ollamaProvider.ts +55 -4
- package/src/plus/ai/providers/openAICompatibleProvider.ts +5 -0
- package/src/plus/ai/providers/openAICompatibleProviderBase.ts +360 -17
- package/src/plus/ai/providers/openRouterProvider.ts +17 -0
- package/src/plus/ai/providers/openaiProvider.ts +1 -0
- package/src/plus/ai/providers/responseFormatCache.ts +39 -0
- package/src/plus/ai/providers/xaiProvider.ts +10 -1
- package/src/plus/ai/utils/ai.utils.ts +14 -0
- package/src/plus/ai/utils/results.utils.ts +255 -31
- package/src/plus/git-github/api/github.ts +467 -23
- package/src/plus/git-github/api/pullRequestSearchQuery.ts +81 -7
- package/src/plus/git-github/models.ts +77 -7
- package/src/plus/git-github/providers/github/status.ts +1 -0
- package/src/plus/integrations/context.ts +4 -0
- package/src/plus/integrations/index.ts +2 -0
- package/src/plus/integrations/integrationService.ts +25 -2
- package/src/plus/integrations/manager.ts +50 -5
- package/src/plus/integrations/models/gitHostIntegration.ts +54 -2
- package/src/plus/integrations/models/integration.ts +24 -13
- package/src/plus/integrations/providerFilters.ts +6 -1
- package/src/plus/integrations/providers/accounts.ts +38 -0
- package/src/plus/integrations/providers/azure/models.ts +3 -0
- package/src/plus/integrations/providers/bitbucket/models.ts +1 -0
- package/src/plus/integrations/providers/github.ts +218 -145
- package/src/plus/integrations/providers/gitlab.ts +30 -20
- package/src/plus/integrations/providers/models.ts +99 -127
- package/src/plus/integrations/providers/pullRequestReviews.ts +122 -0
- package/src/plus/integrations/reads/broaden.ts +6 -1
- package/src/plus/integrations/reads/counts.ts +273 -2
- package/src/plus/integrations/reads/drains.ts +19 -6
- package/src/plus/integrations/reads/filters.ts +22 -0
- package/src/plus/integrations/reads/hierarchy.ts +3 -1
- package/src/plus/integrations/reads/issueTracker.ts +9 -3
- package/src/plus/integrations/reads/issues.ts +9 -4
- package/src/plus/integrations/reads/pullRequests.ts +9 -4
- package/src/plus/integrations/reads/searchPullRequests.ts +12 -4
- package/src/plus/integrations/reads/sweeps.ts +1 -1
- package/src/plus/integrations/reads/warnings.ts +12 -1
- package/src/plus/integrations/results.ts +6 -1
- package/src/utils/env/browser/base64.ts +1 -1
- package/src/utils/env/node/base64.ts +3 -1
- package/src/utils/keys/chord.ts +184 -0
- package/src/utils/keys/keybinding.ts +116 -0
- package/src/utils/path.ts +14 -0
|
@@ -13,29 +13,43 @@ export declare function getConflictIncomingRef(status: GitPausedOperationStatus)
|
|
|
13
13
|
* For rebase, falls back to `onto` when no branch/tag points at the onto commit
|
|
14
14
|
*/
|
|
15
15
|
export declare function getConflictCurrentRef(status: GitPausedOperationStatus): GitReference | undefined;
|
|
16
|
+
/** `name` is the Title Case form for buttons/actions; `prose` is the sentence form ("Cherry-pick paused"). */
|
|
16
17
|
export declare const pausedOperationStatusStringsByType: {
|
|
17
18
|
readonly 'cherry-pick': {
|
|
19
|
+
readonly name: 'Cherry Pick';
|
|
20
|
+
readonly prose: 'Cherry-pick';
|
|
18
21
|
readonly label: 'Cherry picking';
|
|
19
22
|
readonly conflicts: 'Resolve conflicts to continue cherry picking';
|
|
20
23
|
readonly directionality: 'into';
|
|
21
24
|
};
|
|
22
25
|
readonly merge: {
|
|
26
|
+
readonly name: 'Merge';
|
|
27
|
+
readonly prose: 'Merge';
|
|
23
28
|
readonly label: 'Merging';
|
|
24
29
|
readonly conflicts: 'Resolve conflicts to continue merging';
|
|
25
30
|
readonly directionality: 'into';
|
|
26
31
|
};
|
|
27
32
|
readonly rebase: {
|
|
33
|
+
readonly name: 'Rebase';
|
|
34
|
+
readonly prose: 'Rebase';
|
|
28
35
|
readonly label: 'Rebasing';
|
|
29
36
|
readonly conflicts: 'Resolve conflicts to continue rebasing';
|
|
30
37
|
readonly directionality: 'onto';
|
|
31
38
|
readonly pending: 'Pending rebase of';
|
|
32
39
|
};
|
|
33
40
|
readonly revert: {
|
|
41
|
+
readonly name: 'Revert';
|
|
42
|
+
readonly prose: 'Revert';
|
|
34
43
|
readonly label: 'Reverting';
|
|
35
44
|
readonly conflicts: 'Resolve conflicts to continue reverting';
|
|
36
45
|
readonly directionality: 'in';
|
|
37
46
|
};
|
|
38
47
|
};
|
|
48
|
+
export type PausedOperationVariant = 'conflicts' | 'pending' | 'ready';
|
|
49
|
+
/** Codicon per variant — shared so the bar and the WIP badge can't drift. */
|
|
50
|
+
export declare const pausedOperationVariantIcons: Record<PausedOperationVariant, string>;
|
|
51
|
+
/** Unresolved conflicts outrank a rebase that hasn't reached its first step — neither can continue, but only conflicts are actionable. */
|
|
52
|
+
export declare function getPausedOperationVariant(status: GitPausedOperationStatus, hasConflicts: boolean): PausedOperationVariant;
|
|
39
53
|
/**
|
|
40
54
|
* Resolves the correct file paths for each side of a merge conflict diff when the file may have been renamed.
|
|
41
55
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pausedOperationStatus.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,GAAG,SAAS,CAI3F;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,wBAAwB,GAAG,YAAY,GAAG,SAAS,CAGhG;AAED,eAAO,MAAM,kCAAkC;aAC9C,aAAa;iBACZ,KAAK,EAAE,gBAAgB;iBACvB,SAAS,EAAE,8CAA8C;iBACzD,cAAc,EAAE,MAAM;;aAEvB,KAAK;iBACJ,KAAK,EAAE,SAAS;iBAChB,SAAS,EAAE,uCAAuC;iBAClD,cAAc,EAAE,MAAM;;aAEvB,MAAM;iBACL,KAAK,EAAE,UAAU;iBACjB,SAAS,EAAE,wCAAwC;iBACnD,cAAc,EAAE,MAAM;iBACtB,OAAO,EAAE,mBAAmB;;aAE7B,MAAM;iBACL,KAAK,EAAE,WAAW;iBAClB,SAAS,EAAE,yCAAyC;iBACpD,cAAc,EAAE,IAAI;;CAEZ,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,OAAO,EAAE,GAAG,SAAS,EACnC,aAAa,EAAE,OAAO,EAAE,GAAG,SAAS,EACpC,QAAQ,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CA0CtC"}
|
|
1
|
+
{"version":3,"file":"pausedOperationStatus.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM,GAAG,SAAS,CAI3F;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,wBAAwB,GAAG,YAAY,GAAG,SAAS,CAGhG;AAED,8GAA8G;AAC9G,eAAO,MAAM,kCAAkC;aAC9C,aAAa;iBACZ,IAAI,EAAE,aAAa;iBACnB,KAAK,EAAE,aAAa;iBACpB,KAAK,EAAE,gBAAgB;iBACvB,SAAS,EAAE,8CAA8C;iBACzD,cAAc,EAAE,MAAM;;aAEvB,KAAK;iBACJ,IAAI,EAAE,OAAO;iBACb,KAAK,EAAE,OAAO;iBACd,KAAK,EAAE,SAAS;iBAChB,SAAS,EAAE,uCAAuC;iBAClD,cAAc,EAAE,MAAM;;aAEvB,MAAM;iBACL,IAAI,EAAE,QAAQ;iBACd,KAAK,EAAE,QAAQ;iBACf,KAAK,EAAE,UAAU;iBACjB,SAAS,EAAE,wCAAwC;iBACnD,cAAc,EAAE,MAAM;iBACtB,OAAO,EAAE,mBAAmB;;aAE7B,MAAM;iBACL,IAAI,EAAE,QAAQ;iBACd,KAAK,EAAE,QAAQ;iBACf,KAAK,EAAE,WAAW;iBAClB,SAAS,EAAE,yCAAyC;iBACpD,cAAc,EAAE,IAAI;;CAEZ,CAAC;AAEX,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AAEvE,6EAA6E;AAC7E,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,sBAAsB,EAAE,MAAM,CAI9E,CAAC;AAEF,0IAA0I;AAC1I,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,wBAAwB,EAChC,YAAY,EAAE,OAAO,GACnB,sBAAsB,CAIxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACvC,YAAY,EAAE,OAAO,EAAE,GAAG,SAAS,EACnC,aAAa,EAAE,OAAO,EAAE,GAAG,SAAS,EACpC,QAAQ,EAAE,MAAM,GACd;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CA0CtC"}
|
|
@@ -20,29 +20,52 @@ export function getConflictCurrentRef(status) {
|
|
|
20
20
|
return status.current ?? status.onto;
|
|
21
21
|
return status.current;
|
|
22
22
|
}
|
|
23
|
+
/** `name` is the Title Case form for buttons/actions; `prose` is the sentence form ("Cherry-pick paused"). */
|
|
23
24
|
export const pausedOperationStatusStringsByType = {
|
|
24
25
|
'cherry-pick': {
|
|
26
|
+
name: 'Cherry Pick',
|
|
27
|
+
prose: 'Cherry-pick',
|
|
25
28
|
label: 'Cherry picking',
|
|
26
29
|
conflicts: 'Resolve conflicts to continue cherry picking',
|
|
27
30
|
directionality: 'into',
|
|
28
31
|
},
|
|
29
32
|
merge: {
|
|
33
|
+
name: 'Merge',
|
|
34
|
+
prose: 'Merge',
|
|
30
35
|
label: 'Merging',
|
|
31
36
|
conflicts: 'Resolve conflicts to continue merging',
|
|
32
37
|
directionality: 'into',
|
|
33
38
|
},
|
|
34
39
|
rebase: {
|
|
40
|
+
name: 'Rebase',
|
|
41
|
+
prose: 'Rebase',
|
|
35
42
|
label: 'Rebasing',
|
|
36
43
|
conflicts: 'Resolve conflicts to continue rebasing',
|
|
37
44
|
directionality: 'onto',
|
|
38
45
|
pending: 'Pending rebase of',
|
|
39
46
|
},
|
|
40
47
|
revert: {
|
|
48
|
+
name: 'Revert',
|
|
49
|
+
prose: 'Revert',
|
|
41
50
|
label: 'Reverting',
|
|
42
51
|
conflicts: 'Resolve conflicts to continue reverting',
|
|
43
52
|
directionality: 'in',
|
|
44
53
|
},
|
|
45
54
|
};
|
|
55
|
+
/** Codicon per variant — shared so the bar and the WIP badge can't drift. */
|
|
56
|
+
export const pausedOperationVariantIcons = {
|
|
57
|
+
conflicts: 'warning',
|
|
58
|
+
pending: 'circle-outline',
|
|
59
|
+
ready: 'check',
|
|
60
|
+
};
|
|
61
|
+
/** Unresolved conflicts outrank a rebase that hasn't reached its first step — neither can continue, but only conflicts are actionable. */
|
|
62
|
+
export function getPausedOperationVariant(status, hasConflicts) {
|
|
63
|
+
if (hasConflicts)
|
|
64
|
+
return 'conflicts';
|
|
65
|
+
if (status.type === 'rebase' && status.steps.total === 0)
|
|
66
|
+
return 'pending';
|
|
67
|
+
return 'ready';
|
|
68
|
+
}
|
|
46
69
|
/**
|
|
47
70
|
* Resolves the correct file paths for each side of a merge conflict diff when the file may have been renamed.
|
|
48
71
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pausedOperationStatus.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAgC;IACtE,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IACzF,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAAgC;IACrE,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC;IACnE,OAAO,MAAM,CAAC,OAAO,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,MAAM,kCAAkC,GAAG;IACjD,aAAa,EAAE;QACd,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,8CAA8C;QACzD,cAAc,EAAE,MAAM;KACtB;IACD,KAAK,EAAE;QACN,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,uCAAuC;QAClD,cAAc,EAAE,MAAM;KACtB;IACD,MAAM,EAAE;QACP,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,wCAAwC;QACnD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,mBAAmB;KAC5B;IACD,MAAM,EAAE;QACP,KAAK,EAAE,WAAW;QAClB,SAAS,EAAE,yCAAyC;QACpD,cAAc,EAAE,IAAI;KACpB;CACQ,CAAC;
|
|
1
|
+
{"version":3,"file":"pausedOperationStatus.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pausedOperationStatus.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,22 @@
|
|
|
1
|
-
import type { PullRequest, PullRequestComparisonRefs, PullRequestRefs, PullRequestRepositoryIdentityDescriptor, PullRequestShape } from '../models/pullRequest.js';
|
|
1
|
+
import type { PullRequest, PullRequestComparisonRefs, PullRequestRefs, PullRequestRepositoryIdentityDescriptor, PullRequestShape, PullRequestSorting, PullRequestStackInfo } from '../models/pullRequest.js';
|
|
2
|
+
/** How many pull requests a merge action affects — unstacked is always 1; a stacked merge lands either
|
|
3
|
+
* just this layer and everything below it (`position`), or the whole stack (`wholeStack`). The one
|
|
4
|
+
* source every merge-confirmation and merge-action label counts from, so they can't drift apart.
|
|
5
|
+
* Takes only the two fields it needs (not the full {@link PullRequestStackInfo}) since callers on the
|
|
6
|
+
* webview side carry narrower serialized stack shapes. */
|
|
7
|
+
export declare function getStackedMergeCount(stack: Pick<PullRequestStackInfo, 'position' | 'size'> | undefined, options?: {
|
|
8
|
+
wholeStack?: boolean;
|
|
9
|
+
}): number;
|
|
10
|
+
/**
|
|
11
|
+
* A comparator for one sort key over normalized pull requests, or `undefined` when the field isn't derivable
|
|
12
|
+
* from a {@link PullRequestShape} — the signal that the key is only honorable on a SINGLE-origin read where the
|
|
13
|
+
* provider already ordered the page. Missing values sort LAST in both directions (partitioned before any
|
|
14
|
+
* arithmetic so two missing values compare equal, exactly as `getIssueComparator` does).
|
|
15
|
+
*
|
|
16
|
+
* Note it orders whatever it is handed. Sorting a page already capped at the result ceiling does not make it the
|
|
17
|
+
* top N.
|
|
18
|
+
*/
|
|
19
|
+
export declare function getPullRequestComparator(sort: PullRequestSorting): ((a: PullRequestShape, b: PullRequestShape) => number) | undefined;
|
|
2
20
|
export interface PullRequestUrlIdentity<TProvider extends string = string> {
|
|
3
21
|
provider?: TProvider;
|
|
4
22
|
ownerAndRepo?: string;
|
|
@@ -6,6 +24,11 @@ export interface PullRequestUrlIdentity<TProvider extends string = string> {
|
|
|
6
24
|
}
|
|
7
25
|
export declare function getComparisonRefsForPullRequest(repoPath: string, prRefs: PullRequestRefs): PullRequestComparisonRefs;
|
|
8
26
|
export declare function getPullRequestIdentityFromMaybeUrl(search: string): PullRequestUrlIdentity | undefined;
|
|
27
|
+
/** A pull request's display number from its url, or `undefined` for a url naming no pull request. Anchors
|
|
28
|
+
* on the provider's pull request path segment (GitHub `pull`, Bitbucket `pull-requests`, GitLab
|
|
29
|
+
* `merge_requests`, Azure `pullrequest`) so a digit-leading owner (`github.com/1Password/x/pull/123`)
|
|
30
|
+
* can't win. */
|
|
31
|
+
export declare function getPullRequestNumberFromUrl(url: string): string | undefined;
|
|
9
32
|
export declare function getRepositoryIdentityForPullRequest(pr: PullRequest, headRepo?: boolean): PullRequestRepositoryIdentityDescriptor;
|
|
10
33
|
export declare function isMaybeNonSpecificPullRequestSearchUrl(search: string): boolean;
|
|
11
34
|
export declare function serializePullRequest(value: PullRequest): PullRequestShape;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pullRequest.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,uCAAuC,EACvC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"pullRequest.utils.d.ts","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,yBAAyB,EACzB,eAAe,EACf,uCAAuC,EACvC,gBAAgB,EAEhB,kBAAkB,EAClB,oBAAoB,EACpB,MAAM,0BAA0B,CAAC;AAGlC;;;;2DAI2D;AAC3D,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,MAAM,CAAC,GAAG,SAAS,EAClE,OAAO,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,MAAM,CAGR;AAeD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACvC,IAAI,EAAE,kBAAkB,GACtB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,KAAK,MAAM,CAAC,GAAG,SAAS,CAiBpE;AAMD,MAAM,WAAW,sBAAsB,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM;IACxE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,yBAAyB,CAOpH;AAED,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS,CAgBrG;AAED;;;iBAGiB;AACjB,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAM3E;AAED,wBAAgB,mCAAmC,CAClD,EAAE,EAAE,WAAW,EACf,QAAQ,GAAE,OAAc,GACtB,uCAAuC,CA+BzC;AAED,wBAAgB,sCAAsC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE9E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAqFzE"}
|
|
@@ -1,4 +1,53 @@
|
|
|
1
1
|
import { shortenRevision } from './revision.utils.js';
|
|
2
|
+
/** How many pull requests a merge action affects — unstacked is always 1; a stacked merge lands either
|
|
3
|
+
* just this layer and everything below it (`position`), or the whole stack (`wholeStack`). The one
|
|
4
|
+
* source every merge-confirmation and merge-action label counts from, so they can't drift apart.
|
|
5
|
+
* Takes only the two fields it needs (not the full {@link PullRequestStackInfo}) since callers on the
|
|
6
|
+
* webview side carry narrower serialized stack shapes. */
|
|
7
|
+
export function getStackedMergeCount(stack, options) {
|
|
8
|
+
if (stack == null)
|
|
9
|
+
return 1;
|
|
10
|
+
return options?.wholeStack ? stack.size : stack.position;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* How each sort field is read off a {@link PullRequestShape}, for the filtered PR search, which MERGES its
|
|
14
|
+
* relationship × state facets in the facade and so has to order the union itself instead of trusting the
|
|
15
|
+
* per-facet server order. Only the fields the shape carries appear — the same rule as `getIssueComparator`, and
|
|
16
|
+
* the reason {@link PullRequestSortField} is just these two.
|
|
17
|
+
*/
|
|
18
|
+
const pullRequestSortValues = {
|
|
19
|
+
created: pr => pr.createdDate,
|
|
20
|
+
updated: pr => pr.updatedDate,
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* A comparator for one sort key over normalized pull requests, or `undefined` when the field isn't derivable
|
|
24
|
+
* from a {@link PullRequestShape} — the signal that the key is only honorable on a SINGLE-origin read where the
|
|
25
|
+
* provider already ordered the page. Missing values sort LAST in both directions (partitioned before any
|
|
26
|
+
* arithmetic so two missing values compare equal, exactly as `getIssueComparator` does).
|
|
27
|
+
*
|
|
28
|
+
* Note it orders whatever it is handed. Sorting a page already capped at the result ceiling does not make it the
|
|
29
|
+
* top N.
|
|
30
|
+
*/
|
|
31
|
+
export function getPullRequestComparator(sort) {
|
|
32
|
+
const [field, direction] = sort.split(':');
|
|
33
|
+
const getValue = pullRequestSortValues[field];
|
|
34
|
+
if (getValue == null)
|
|
35
|
+
return undefined;
|
|
36
|
+
return (a, b) => {
|
|
37
|
+
const left = toComparable(getValue(a));
|
|
38
|
+
const right = toComparable(getValue(b));
|
|
39
|
+
if (left == null || right == null) {
|
|
40
|
+
if (left == null && right == null)
|
|
41
|
+
return 0;
|
|
42
|
+
return left == null ? 1 : -1;
|
|
43
|
+
}
|
|
44
|
+
const ordered = left < right ? -1 : left > right ? 1 : 0;
|
|
45
|
+
return direction === 'asc' ? ordered : -ordered;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
function toComparable(value) {
|
|
49
|
+
return value instanceof Date ? value.getTime() : value;
|
|
50
|
+
}
|
|
2
51
|
export function getComparisonRefsForPullRequest(repoPath, prRefs) {
|
|
3
52
|
const refs = {
|
|
4
53
|
repoPath: repoPath,
|
|
@@ -21,6 +70,17 @@ export function getPullRequestIdentityFromMaybeUrl(search) {
|
|
|
21
70
|
}
|
|
22
71
|
return prNumber == null ? undefined : { ownerAndRepo: undefined, prNumber: prNumber, provider: undefined };
|
|
23
72
|
}
|
|
73
|
+
/** A pull request's display number from its url, or `undefined` for a url naming no pull request. Anchors
|
|
74
|
+
* on the provider's pull request path segment (GitHub `pull`, Bitbucket `pull-requests`, GitLab
|
|
75
|
+
* `merge_requests`, Azure `pullrequest`) so a digit-leading owner (`github.com/1Password/x/pull/123`)
|
|
76
|
+
* can't win. */
|
|
77
|
+
export function getPullRequestNumberFromUrl(url) {
|
|
78
|
+
// No loose fallback: `getPullRequestIdentityFromMaybeUrl` scans for any `/<digits>`, which reads a bare
|
|
79
|
+
// repository url like `github.com/1Password/sdk` as pull request #1. Callers that hold a real pull
|
|
80
|
+
// request fall back to its id instead, and the one that asks whether a pasted url names a pull request
|
|
81
|
+
// needs "no" for an answer.
|
|
82
|
+
return url.match(/(?:pull|pull-requests|merge_requests|pullrequest)\/(\d+)(?:\b|\/|$)/)?.[1];
|
|
83
|
+
}
|
|
24
84
|
export function getRepositoryIdentityForPullRequest(pr, headRepo = true) {
|
|
25
85
|
if (headRepo) {
|
|
26
86
|
return {
|
|
@@ -77,6 +137,7 @@ export function serializePullRequest(value) {
|
|
|
77
137
|
author: {
|
|
78
138
|
id: value.author.id,
|
|
79
139
|
name: value.author.name,
|
|
140
|
+
username: value.author.username,
|
|
80
141
|
avatarUrl: value.author.avatarUrl,
|
|
81
142
|
url: value.author.url,
|
|
82
143
|
},
|
|
@@ -117,6 +178,7 @@ export function serializePullRequest(value) {
|
|
|
117
178
|
thumbsUpCount: value.thumbsUpCount,
|
|
118
179
|
reviewDecision: value.reviewDecision,
|
|
119
180
|
reviewRequests: value.reviewRequests,
|
|
181
|
+
latestReviews: value.latestReviews,
|
|
120
182
|
assignees: value.assignees,
|
|
121
183
|
authoredByMe: value.authoredByMe,
|
|
122
184
|
project: value.project
|
|
@@ -127,6 +189,15 @@ export function serializePullRequest(value) {
|
|
|
127
189
|
resourceName: value.project.resourceName,
|
|
128
190
|
}
|
|
129
191
|
: undefined,
|
|
192
|
+
stack: value.stack
|
|
193
|
+
? {
|
|
194
|
+
id: value.stack.id,
|
|
195
|
+
number: value.stack.number,
|
|
196
|
+
size: value.stack.size,
|
|
197
|
+
position: value.stack.position,
|
|
198
|
+
baseRef: value.stack.baseRef,
|
|
199
|
+
}
|
|
200
|
+
: undefined,
|
|
130
201
|
};
|
|
131
202
|
return serialized;
|
|
132
203
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pullRequest.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pullRequest.utils.js","sourceRoot":"","sources":["../../../src/git/utils/pullRequest.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,12 @@ export declare class WatcherRepoChangeEvent {
|
|
|
41
41
|
*/
|
|
42
42
|
export interface WorkingTreeChangeEvent {
|
|
43
43
|
readonly repoPath: string;
|
|
44
|
-
/** Absolute paths of changed files (post-gitignore filtering) */
|
|
44
|
+
/** Absolute paths of changed files (post-gitignore filtering). Partial when {@link incomplete}. */
|
|
45
45
|
readonly paths: ReadonlySet<string>;
|
|
46
|
+
/**
|
|
47
|
+
* `true` when more paths changed than the accumulator retains, so {@link paths} is a partial set and a
|
|
48
|
+
* miss does NOT mean the file is unchanged. Consumers testing membership must treat this as a match.
|
|
49
|
+
*/
|
|
50
|
+
readonly incomplete: boolean;
|
|
46
51
|
}
|
|
47
52
|
//# sourceMappingURL=changeEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changeEvent.d.ts","sourceRoot":"","sources":["../../../src/git/watching/changeEvent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,qBAAa,sBAAsB;IAIjC,4CAA4C;aAC5B,QAAQ,EAAE,MAAM;IAJjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEnD;IACC,4CAA4C;IAC5B,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,gBAAgB,EAAE,EAG3B;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,gBAAgB,CAAC,CAE3C;IAED,QAAQ,CAAC,WAAW,GAAE,OAAe,GAAG,MAAM,CAG7C;IAED;;;;;OAKG;IACH,OAAO,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAEhD;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAwBzD;IAED,qFAAqF;IACrF,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,sBAAsB,CAExD;CACD;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,
|
|
1
|
+
{"version":3,"file":"changeEvent.d.ts","sourceRoot":"","sources":["../../../src/git/watching/changeEvent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;GAKG;AACH,qBAAa,sBAAsB;IAIjC,4CAA4C;aAC5B,QAAQ,EAAE,MAAM;IAJjC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAEnD;IACC,4CAA4C;IAC5B,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,gBAAgB,EAAE,EAG3B;IAED,IAAI,OAAO,IAAI,WAAW,CAAC,gBAAgB,CAAC,CAE3C;IAED,QAAQ,CAAC,WAAW,GAAE,OAAe,GAAG,MAAM,CAG7C;IAED;;;;;OAKG;IACH,OAAO,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAEhD;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,GAAG,QAAQ,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAwBzD;IAED,qFAAqF;IACrF,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,sBAAsB,CAExD;CACD;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,mGAAmG;IACnG,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifyChange.d.ts","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"classifyChange.d.ts","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,gBAAgB,EAAE,GAAG,SAAS,CAqFzF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const classifyRegex = /(worktrees|index|HEAD|FETCH_HEAD|ORIG_HEAD|CHERRY_PICK_HEAD|MERGE_HEAD|REBASE_HEAD|rebase-merge|rebase-apply|sequencer|REVERT_HEAD|config|gk\/config|info\/exclude|refs\/(?:heads|remotes|stash|tags))/;
|
|
1
|
+
const classifyRegex = /(worktrees|index|HEAD|FETCH_HEAD|ORIG_HEAD|CHERRY_PICK_HEAD|MERGE_HEAD|REBASE_HEAD|rebase-merge|rebase-apply|sequencer|REVERT_HEAD|config|gk\/config|info\/exclude|refs\/(?:heads|remotes|stash|tags)|packed-refs)/;
|
|
2
2
|
/**
|
|
3
3
|
* Maps a path relative to a `.git` directory to the corresponding
|
|
4
4
|
* {@link RepositoryChange} types. This is pure Git knowledge — the
|
|
@@ -52,6 +52,13 @@ export function classifyGitDirChange(relativePath) {
|
|
|
52
52
|
return ['revert', 'pausedOp'];
|
|
53
53
|
case 'sequencer':
|
|
54
54
|
return ['pausedOp'];
|
|
55
|
+
// `'heads'` is deliberately the ONLY thing a `refs/heads/*` event yields, including a create. It is
|
|
56
|
+
// tempting to read a create as "a new branch exists under this name" and use it to drop anything
|
|
57
|
+
// derived from the old branch's identity (its base, its merge target). That signal does not mean
|
|
58
|
+
// what it looks like: git rewrites an EXISTING loose ref by writing `<name>.lock` and renaming it
|
|
59
|
+
// over the file, which watchers report as a create of the destination — so every ordinary commit
|
|
60
|
+
// would look like a new branch and discard a live branch's metadata. Nothing here can distinguish
|
|
61
|
+
// the two; identity changes are handled where GitLens performs the operation itself.
|
|
55
62
|
case 'refs/heads':
|
|
56
63
|
return ['heads'];
|
|
57
64
|
case 'refs/remotes':
|
|
@@ -60,6 +67,12 @@ export function classifyGitDirChange(relativePath) {
|
|
|
60
67
|
return ['stash'];
|
|
61
68
|
case 'refs/tags':
|
|
62
69
|
return ['tags'];
|
|
70
|
+
// A `packed-refs` rewrite (after `git pack-refs` or `git gc`) changes ref state
|
|
71
|
+
// WITHOUT any `refs/**` file event — deleting a packed branch, for example, only
|
|
72
|
+
// rewrites this file. The file content is not inspected here, so classification
|
|
73
|
+
// is deliberately broad: it can add, remove, or move refs of any of these types.
|
|
74
|
+
case 'packed-refs':
|
|
75
|
+
return ['heads', 'remotes', 'tags'];
|
|
63
76
|
case 'worktrees':
|
|
64
77
|
return ['worktrees'];
|
|
65
78
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"classifyChange.js","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAClB,
|
|
1
|
+
{"version":3,"file":"classifyChange.js","sourceRoot":"","sources":["../../../src/git/watching/classifyChange.ts"],"names":[],"mappings":"AAEA,MAAM,aAAa,GAClB,oNAAoN,CAAC;AAEtN;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAoB;IACxD,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,4EAA4E;IAC5E,+CAA+C;IAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;QACnG,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IAEpC,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,KAAK,QAAQ;YACZ,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE9B,KAAK,WAAW;YACf,OAAO,CAAC,UAAU,CAAC,CAAC;QAErB,KAAK,cAAc;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;QAEpB,KAAK,OAAO;YACX,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,YAAY;YAChB,2EAA2E;YAC3E,OAAO,SAAS,CAAC;QAElB,KAAK,MAAM;YACV,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE1B,KAAK,WAAW;YACf,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,kBAAkB;YACtB,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAEnC,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAE9B,KAAK,aAAa,CAAC;QACnB,KAAK,cAAc,CAAC;QACpB,KAAK,cAAc;YAClB,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE/B,KAAK,aAAa;YACjB,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE/B,KAAK,WAAW;YACf,OAAO,CAAC,UAAU,CAAC,CAAC;QAErB,oGAAoG;QACpG,iGAAiG;QACjG,iGAAiG;QACjG,kGAAkG;QAClG,iGAAiG;QACjG,kGAAkG;QAClG,qFAAqF;QACrF,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,cAAc;YAClB,OAAO,CAAC,SAAS,CAAC,CAAC;QAEpB,KAAK,YAAY;YAChB,OAAO,CAAC,OAAO,CAAC,CAAC;QAElB,KAAK,WAAW;YACf,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjB,gFAAgF;QAChF,iFAAiF;QACjF,gFAAgF;QAChF,iFAAiF;QACjF,KAAK,aAAa;YACjB,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAErC,KAAK,WAAW;YACf,OAAO,CAAC,WAAW,CAAC,CAAC;QAEtB;YACC,OAAO,SAAS,CAAC;IACnB,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../../src/git/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;
|
|
1
|
+
{"version":3,"file":"watchService.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@ import { isDescendant, relative } from '../../utils/path.js';
|
|
|
3
3
|
import { shouldIgnoreWorkingTreePath } from './watcherPatterns.js';
|
|
4
4
|
import { WatchGroup } from './watchGroup.js';
|
|
5
5
|
import { RepositoryWatchSession } from './watchSession.js';
|
|
6
|
+
/**
|
|
7
|
+
* Cap on paths held while the gitignore filter loads. Higher than the session's own cap because these are
|
|
8
|
+
* pre-filter — most of a build's output is typically gitignored and would be discarded on replay, so a
|
|
9
|
+
* tighter bound here would mark batches incomplete when they filter down to almost nothing.
|
|
10
|
+
*/
|
|
11
|
+
const maxBufferedWorkingTreePaths = 5000;
|
|
6
12
|
/**
|
|
7
13
|
* Global service that multiplexes repository watching across all repos.
|
|
8
14
|
*
|
|
@@ -234,6 +240,7 @@ export class RepositoryWatchService {
|
|
|
234
240
|
// Buffer events while the gitignore filter loads, then replay
|
|
235
241
|
let filterReady = filter == null;
|
|
236
242
|
let buffered = filter != null ? [] : undefined;
|
|
243
|
+
let bufferIncomplete = false;
|
|
237
244
|
if (filter != null) {
|
|
238
245
|
void filter
|
|
239
246
|
.ready()
|
|
@@ -241,11 +248,12 @@ export class RepositoryWatchService {
|
|
|
241
248
|
filterReady = true;
|
|
242
249
|
if (buffered?.length) {
|
|
243
250
|
const paths = filterWorkingTreePaths(buffered, repoPath, filter);
|
|
244
|
-
if (paths.length > 0) {
|
|
245
|
-
session.pushWorkingTreeChanges(paths);
|
|
251
|
+
if (paths.length > 0 || bufferIncomplete) {
|
|
252
|
+
session.pushWorkingTreeChanges(paths, bufferIncomplete);
|
|
246
253
|
}
|
|
247
254
|
}
|
|
248
255
|
buffered = undefined;
|
|
256
|
+
bufferIncomplete = false;
|
|
249
257
|
})
|
|
250
258
|
.catch(() => {
|
|
251
259
|
filterReady = true;
|
|
@@ -274,7 +282,14 @@ export class RepositoryWatchService {
|
|
|
274
282
|
return;
|
|
275
283
|
}
|
|
276
284
|
if (!filterReady) {
|
|
277
|
-
// Buffer until gitignore filter is ready
|
|
285
|
+
// Buffer until the gitignore filter is ready. Capped: `ready()` awaits a `core.excludesFile`
|
|
286
|
+
// read, which queues behind every other git command, so this window can stay open for a long
|
|
287
|
+
// time — and these paths haven't been gitignore-filtered yet, so a build's output all lands
|
|
288
|
+
// here. Past the cap, stop retaining and mark the batch partial rather than growing.
|
|
289
|
+
if (buffered != null && buffered.length >= maxBufferedWorkingTreePaths) {
|
|
290
|
+
bufferIncomplete = true;
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
278
293
|
buffered?.push(event.path);
|
|
279
294
|
return;
|
|
280
295
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../../src/git/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;
|
|
1
|
+
{"version":3,"file":"watchService.js","sourceRoot":"","sources":["../../../src/git/watching/watchService.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
66
66
|
private readonly workingTreeDelays;
|
|
67
67
|
private workingTreeNextId;
|
|
68
68
|
private pendingWorkingTreePaths;
|
|
69
|
+
private pendingWorkingTreeIncomplete;
|
|
69
70
|
private workingTreeTimer;
|
|
70
71
|
private effectiveWorkingTreeMs;
|
|
71
72
|
private readonly defaultWorkingTreeMs;
|
|
@@ -80,6 +81,11 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
80
81
|
dispose(): void;
|
|
81
82
|
get suspended(): boolean;
|
|
82
83
|
get hasPendingChanges(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* An incomplete batch with no surviving paths still has to fire: the caller dropped paths we never saw, so
|
|
86
|
+
* gating the pipeline on the retained set alone would swallow the change entirely.
|
|
87
|
+
*/
|
|
88
|
+
private get hasPendingWorkingTreeChanges();
|
|
83
89
|
get repoSubscriberCount(): number;
|
|
84
90
|
get workingTreeSubscriberCount(): number;
|
|
85
91
|
/**
|
|
@@ -111,7 +117,8 @@ export declare class RepositoryWatchSession implements UnifiedDisposable {
|
|
|
111
117
|
/** Push interpreted repo changes into the pipeline */
|
|
112
118
|
pushRepoChanges(changes: RepositoryChange[]): void;
|
|
113
119
|
/** Push working tree file changes into the pipeline */
|
|
114
|
-
|
|
120
|
+
/** `incomplete` marks the batch as partial when the caller already dropped paths of its own. */
|
|
121
|
+
pushWorkingTreeChanges(paths: Iterable<string>, incomplete?: boolean): void;
|
|
115
122
|
private static minDelay;
|
|
116
123
|
private recalcRepoDelay;
|
|
117
124
|
private recalcWorkingTreeDelay;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../../src/git/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,sGAAsG;IACtG,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACvE;;;;OAIG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACjE;
|
|
1
|
+
{"version":3,"file":"watchSession.d.ts","sourceRoot":"","sources":["../../../src/git/watching/watchSession.ts"],"names":[],"mappings":"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"}
|