@gitkraken/core-gitlens 0.4.0 → 0.4.100
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 +71 -1
- package/README.md +9 -2
- package/dist/git/cache.d.ts +29 -2
- package/dist/git/cache.d.ts.map +1 -1
- package/dist/git/cache.js +67 -7
- package/dist/git/cache.js.map +1 -1
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/errors.d.ts +31 -1
- package/dist/git/errors.d.ts.map +1 -1
- package/dist/git/errors.js +29 -0
- package/dist/git/errors.js.map +1 -1
- package/dist/git/models/author.d.ts.map +1 -1
- package/dist/git/models/author.js.map +1 -1
- package/dist/git/models/autolink.d.ts.map +1 -1
- package/dist/git/models/autolink.js.map +1 -1
- package/dist/git/models/blame.d.ts.map +1 -1
- package/dist/git/models/blame.js.map +1 -1
- package/dist/git/models/branch.d.ts.map +1 -1
- package/dist/git/models/branch.js.map +1 -1
- package/dist/git/models/commit.d.ts.map +1 -1
- package/dist/git/models/commit.js +1 -1
- package/dist/git/models/commit.js.map +1 -1
- package/dist/git/models/contributor.d.ts.map +1 -1
- package/dist/git/models/contributor.js.map +1 -1
- package/dist/git/models/defaultBranch.d.ts.map +1 -1
- package/dist/git/models/defaultBranch.js.map +1 -1
- package/dist/git/models/diff.d.ts.map +1 -1
- package/dist/git/models/diff.js.map +1 -1
- package/dist/git/models/file.d.ts.map +1 -1
- package/dist/git/models/file.js.map +1 -1
- package/dist/git/models/fileChange.d.ts.map +1 -1
- package/dist/git/models/fileChange.js.map +1 -1
- package/dist/git/models/fileStatus.d.ts +22 -22
- package/dist/git/models/fileStatus.d.ts.map +1 -1
- package/dist/git/models/fileStatus.js.map +1 -1
- package/dist/git/models/graph.d.ts +122 -1
- package/dist/git/models/graph.d.ts.map +1 -1
- package/dist/git/models/graph.js +4 -0
- package/dist/git/models/graph.js.map +1 -1
- package/dist/git/models/graphSearch.d.ts.map +1 -1
- package/dist/git/models/graphSearch.js.map +1 -1
- package/dist/git/models/graphSession.d.ts +177 -0
- package/dist/git/models/graphSession.d.ts.map +1 -0
- package/dist/git/models/graphSession.js +7 -0
- package/dist/git/models/graphSession.js.map +1 -0
- package/dist/git/models/issue.d.ts +12 -2
- package/dist/git/models/issue.d.ts.map +1 -1
- package/dist/git/models/issue.js +3 -1
- package/dist/git/models/issue.js.map +1 -1
- package/dist/git/models/issueOrPullRequest.d.ts.map +1 -1
- package/dist/git/models/issueOrPullRequest.js.map +1 -1
- package/dist/git/models/lineRange.d.ts.map +1 -1
- package/dist/git/models/lineRange.js.map +1 -1
- package/dist/git/models/log.d.ts.map +1 -1
- package/dist/git/models/log.js.map +1 -1
- package/dist/git/models/mergeConflicts.d.ts.map +1 -1
- package/dist/git/models/mergeConflicts.js.map +1 -1
- package/dist/git/models/patch.d.ts.map +1 -1
- package/dist/git/models/patch.js.map +1 -1
- package/dist/git/models/pausedOperationStatus.d.ts.map +1 -1
- package/dist/git/models/pausedOperationStatus.js.map +1 -1
- package/dist/git/models/pullRequest.d.ts +27 -2
- package/dist/git/models/pullRequest.d.ts.map +1 -1
- package/dist/git/models/pullRequest.js +7 -1
- package/dist/git/models/pullRequest.js.map +1 -1
- package/dist/git/models/rebase.d.ts.map +1 -1
- package/dist/git/models/rebase.js.map +1 -1
- package/dist/git/models/reference.d.ts.map +1 -1
- package/dist/git/models/reference.js.map +1 -1
- package/dist/git/models/reflog.d.ts.map +1 -1
- package/dist/git/models/reflog.js.map +1 -1
- package/dist/git/models/remote.d.ts.map +1 -1
- package/dist/git/models/remote.js.map +1 -1
- package/dist/git/models/remoteProvider.d.ts.map +1 -1
- package/dist/git/models/remoteProvider.js.map +1 -1
- package/dist/git/models/remoteResource.d.ts.map +1 -1
- package/dist/git/models/remoteResource.js.map +1 -1
- package/dist/git/models/repository.d.ts +20 -2
- package/dist/git/models/repository.d.ts.map +1 -1
- package/dist/git/models/repository.js +19 -0
- package/dist/git/models/repository.js.map +1 -1
- package/dist/git/models/repositoryChangeEvent.d.ts.map +1 -1
- package/dist/git/models/repositoryChangeEvent.js.map +1 -1
- package/dist/git/models/repositoryIdentities.d.ts.map +1 -1
- package/dist/git/models/repositoryIdentities.js.map +1 -1
- package/dist/git/models/repositoryMetadata.d.ts.map +1 -1
- package/dist/git/models/repositoryMetadata.js.map +1 -1
- package/dist/git/models/resourceDescriptor.d.ts +16 -0
- package/dist/git/models/resourceDescriptor.d.ts.map +1 -1
- package/dist/git/models/resourceDescriptor.js.map +1 -1
- package/dist/git/models/revision.d.ts.map +1 -1
- package/dist/git/models/revision.js.map +1 -1
- package/dist/git/models/search.d.ts.map +1 -1
- package/dist/git/models/search.js.map +1 -1
- package/dist/git/models/shortlog.d.ts.map +1 -1
- package/dist/git/models/shortlog.js.map +1 -1
- package/dist/git/models/signature.d.ts +14 -0
- package/dist/git/models/signature.d.ts.map +1 -1
- package/dist/git/models/signature.js.map +1 -1
- package/dist/git/models/staging.d.ts.map +1 -1
- package/dist/git/models/staging.js.map +1 -1
- package/dist/git/models/stash.d.ts.map +1 -1
- package/dist/git/models/stash.js.map +1 -1
- package/dist/git/models/status.d.ts.map +1 -1
- package/dist/git/models/status.js.map +1 -1
- package/dist/git/models/statusFile.d.ts.map +1 -1
- package/dist/git/models/statusFile.js.map +1 -1
- package/dist/git/models/tag.d.ts +11 -1
- package/dist/git/models/tag.d.ts.map +1 -1
- package/dist/git/models/tag.js +9 -2
- package/dist/git/models/tag.js.map +1 -1
- package/dist/git/models/tree.d.ts.map +1 -1
- package/dist/git/models/tree.js.map +1 -1
- package/dist/git/models/user.d.ts.map +1 -1
- package/dist/git/models/user.js.map +1 -1
- package/dist/git/models/worktree.d.ts.map +1 -1
- package/dist/git/models/worktree.js.map +1 -1
- package/dist/git/parsers/diffParser.d.ts.map +1 -1
- package/dist/git/parsers/diffParser.js +1 -1
- package/dist/git/parsers/diffParser.js.map +1 -1
- package/dist/git/parsers/rebaseTodoParser.d.ts.map +1 -1
- package/dist/git/parsers/rebaseTodoParser.js.map +1 -1
- package/dist/git/providers/blame.d.ts.map +1 -1
- package/dist/git/providers/blame.js.map +1 -1
- package/dist/git/providers/branches.d.ts +8 -1
- package/dist/git/providers/branches.d.ts.map +1 -1
- package/dist/git/providers/branches.js.map +1 -1
- package/dist/git/providers/commits.d.ts +6 -1
- package/dist/git/providers/commits.d.ts.map +1 -1
- package/dist/git/providers/commits.js.map +1 -1
- package/dist/git/providers/config.d.ts +6 -2
- package/dist/git/providers/config.d.ts.map +1 -1
- package/dist/git/providers/config.js.map +1 -1
- package/dist/git/providers/contributors.d.ts.map +1 -1
- package/dist/git/providers/contributors.js.map +1 -1
- package/dist/git/providers/diff.d.ts.map +1 -1
- package/dist/git/providers/diff.js.map +1 -1
- package/dist/git/providers/graph.d.ts +55 -1
- package/dist/git/providers/graph.d.ts.map +1 -1
- package/dist/git/providers/graph.js.map +1 -1
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/operations.js.map +1 -1
- package/dist/git/providers/patch.d.ts.map +1 -1
- package/dist/git/providers/patch.js.map +1 -1
- package/dist/git/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git/providers/pausedOperations.js.map +1 -1
- package/dist/git/providers/provider.d.ts.map +1 -1
- package/dist/git/providers/provider.js.map +1 -1
- package/dist/git/providers/refs.d.ts.map +1 -1
- package/dist/git/providers/refs.js.map +1 -1
- package/dist/git/providers/remotes.d.ts.map +1 -1
- package/dist/git/providers/remotes.js.map +1 -1
- package/dist/git/providers/revision.d.ts.map +1 -1
- package/dist/git/providers/revision.js.map +1 -1
- package/dist/git/providers/shared/remotes.d.ts.map +1 -1
- package/dist/git/providers/shared/remotes.js.map +1 -1
- package/dist/git/providers/staging.d.ts.map +1 -1
- package/dist/git/providers/staging.js.map +1 -1
- package/dist/git/providers/stash.d.ts.map +1 -1
- package/dist/git/providers/stash.js.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/providers/status.js.map +1 -1
- package/dist/git/providers/tags.d.ts.map +1 -1
- package/dist/git/providers/tags.js.map +1 -1
- package/dist/git/providers/types.d.ts.map +1 -1
- package/dist/git/providers/types.js.map +1 -1
- package/dist/git/providers/worktrees.d.ts +3 -1
- package/dist/git/providers/worktrees.d.ts.map +1 -1
- package/dist/git/providers/worktrees.js.map +1 -1
- package/dist/git/remotes/azure-devops.d.ts.map +1 -1
- package/dist/git/remotes/azure-devops.js +27 -31
- package/dist/git/remotes/azure-devops.js.map +1 -1
- package/dist/git/remotes/bitbucket-server.d.ts.map +1 -1
- package/dist/git/remotes/bitbucket-server.js +21 -23
- package/dist/git/remotes/bitbucket-server.js.map +1 -1
- package/dist/git/remotes/bitbucket.d.ts.map +1 -1
- package/dist/git/remotes/bitbucket.js +21 -23
- package/dist/git/remotes/bitbucket.js.map +1 -1
- package/dist/git/remotes/custom.d.ts.map +1 -1
- package/dist/git/remotes/custom.js.map +1 -1
- package/dist/git/remotes/gerrit.d.ts.map +1 -1
- package/dist/git/remotes/gerrit.js +11 -13
- package/dist/git/remotes/gerrit.js.map +1 -1
- package/dist/git/remotes/gitea.d.ts.map +1 -1
- package/dist/git/remotes/gitea.js +12 -14
- package/dist/git/remotes/gitea.js.map +1 -1
- package/dist/git/remotes/github.d.ts.map +1 -1
- package/dist/git/remotes/github.js +54 -56
- package/dist/git/remotes/github.js.map +1 -1
- package/dist/git/remotes/gitlab.d.ts.map +1 -1
- package/dist/git/remotes/gitlab.js +93 -95
- package/dist/git/remotes/gitlab.js.map +1 -1
- package/dist/git/remotes/google-source.d.ts.map +1 -1
- package/dist/git/remotes/google-source.js.map +1 -1
- package/dist/git/remotes/matcher.d.ts.map +1 -1
- package/dist/git/remotes/matcher.js.map +1 -1
- package/dist/git/run.types.d.ts +62 -3
- package/dist/git/run.types.d.ts.map +1 -1
- package/dist/git/service.d.ts.map +1 -1
- package/dist/git/utils/autolink.utils.d.ts.map +1 -1
- package/dist/git/utils/autolink.utils.js.map +1 -1
- package/dist/git/utils/blame.utils.d.ts.map +1 -1
- package/dist/git/utils/blame.utils.js.map +1 -1
- package/dist/git/utils/branch.utils.d.ts.map +1 -1
- package/dist/git/utils/branch.utils.js +12 -1
- package/dist/git/utils/branch.utils.js.map +1 -1
- package/dist/git/utils/commit.utils.d.ts.map +1 -1
- package/dist/git/utils/commit.utils.js.map +1 -1
- package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -1
- package/dist/git/utils/conflictResolution.utils.js.map +1 -1
- package/dist/git/utils/contributor.utils.d.ts +1 -1
- package/dist/git/utils/contributor.utils.d.ts.map +1 -1
- package/dist/git/utils/contributor.utils.js +1 -2
- package/dist/git/utils/contributor.utils.js.map +1 -1
- package/dist/git/utils/fetch.utils.d.ts.map +1 -1
- package/dist/git/utils/fetch.utils.js.map +1 -1
- package/dist/git/utils/fileStatus.utils.d.ts +7 -0
- package/dist/git/utils/fileStatus.utils.d.ts.map +1 -1
- package/dist/git/utils/fileStatus.utils.js +6 -0
- package/dist/git/utils/fileStatus.utils.js.map +1 -1
- package/dist/git/utils/graph.utils.d.ts +20 -0
- package/dist/git/utils/graph.utils.d.ts.map +1 -0
- package/dist/git/utils/graph.utils.js +40 -0
- package/dist/git/utils/graph.utils.js.map +1 -0
- package/dist/git/utils/issue.utils.d.ts.map +1 -1
- package/dist/git/utils/issue.utils.js +1 -0
- package/dist/git/utils/issue.utils.js.map +1 -1
- package/dist/git/utils/issueOrPullRequest.utils.d.ts.map +1 -1
- package/dist/git/utils/issueOrPullRequest.utils.js.map +1 -1
- package/dist/git/utils/mergeConflicts.utils.d.ts.map +1 -1
- package/dist/git/utils/mergeConflicts.utils.js.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.d.ts +13 -13
- package/dist/git/utils/pausedOperationStatus.utils.d.ts.map +1 -1
- package/dist/git/utils/pausedOperationStatus.utils.js.map +1 -1
- package/dist/git/utils/pullRequest.utils.d.ts.map +1 -1
- package/dist/git/utils/pullRequest.utils.js +9 -0
- package/dist/git/utils/pullRequest.utils.js.map +1 -1
- package/dist/git/utils/reachability.utils.d.ts +20 -2
- package/dist/git/utils/reachability.utils.d.ts.map +1 -1
- package/dist/git/utils/reachability.utils.js +68 -7
- package/dist/git/utils/reachability.utils.js.map +1 -1
- package/dist/git/utils/rebase.utils.d.ts.map +1 -1
- package/dist/git/utils/rebase.utils.js.map +1 -1
- package/dist/git/utils/reference.utils.d.ts.map +1 -1
- package/dist/git/utils/reference.utils.js.map +1 -1
- package/dist/git/utils/remote.utils.d.ts.map +1 -1
- package/dist/git/utils/remote.utils.js.map +1 -1
- package/dist/git/utils/repository.utils.d.ts.map +1 -1
- package/dist/git/utils/repository.utils.js.map +1 -1
- package/dist/git/utils/resourceDescriptor.utils.d.ts.map +1 -1
- package/dist/git/utils/resourceDescriptor.utils.js.map +1 -1
- package/dist/git/utils/revision.utils.d.ts.map +1 -1
- package/dist/git/utils/revision.utils.js.map +1 -1
- package/dist/git/utils/search.utils.d.ts.map +1 -1
- package/dist/git/utils/search.utils.js.map +1 -1
- package/dist/git/utils/sorting.d.ts.map +1 -1
- package/dist/git/utils/sorting.js.map +1 -1
- package/dist/git/utils/sshKey.utils.d.ts +7 -0
- package/dist/git/utils/sshKey.utils.d.ts.map +1 -0
- package/dist/git/utils/sshKey.utils.js +25 -0
- package/dist/git/utils/sshKey.utils.js.map +1 -0
- package/dist/git/utils/status.utils.d.ts.map +1 -1
- package/dist/git/utils/status.utils.js.map +1 -1
- package/dist/git/utils/statusFile.utils.d.ts.map +1 -1
- package/dist/git/utils/statusFile.utils.js.map +1 -1
- package/dist/git/utils/tag.utils.d.ts.map +1 -1
- package/dist/git/utils/tag.utils.js.map +1 -1
- package/dist/git/utils/tooltip.utils.d.ts.map +1 -1
- package/dist/git/utils/tooltip.utils.js.map +1 -1
- package/dist/git/utils/uriAuthority.d.ts.map +1 -1
- package/dist/git/utils/uriAuthority.js.map +1 -1
- package/dist/git/utils/user.utils.d.ts.map +1 -1
- package/dist/git/utils/user.utils.js.map +1 -1
- package/dist/git/utils/worktree.utils.d.ts.map +1 -1
- package/dist/git/utils/worktree.utils.js.map +1 -1
- package/dist/git/watching/changeEvent.d.ts.map +1 -1
- package/dist/git/watching/changeEvent.js.map +1 -1
- package/dist/git/watching/classifyChange.d.ts.map +1 -1
- package/dist/git/watching/classifyChange.js.map +1 -1
- package/dist/git/watching/gitIgnoreFilter.d.ts.map +1 -1
- package/dist/git/watching/gitIgnoreFilter.js.map +1 -1
- package/dist/git/watching/initWatcher.d.ts.map +1 -1
- package/dist/git/watching/initWatcher.js.map +1 -1
- package/dist/git/watching/provider.d.ts.map +1 -1
- package/dist/git/watching/provider.js.map +1 -1
- package/dist/git/watching/watchGroup.d.ts.map +1 -1
- package/dist/git/watching/watchGroup.js.map +1 -1
- package/dist/git/watching/watchService.d.ts +4 -0
- package/dist/git/watching/watchService.d.ts.map +1 -1
- package/dist/git/watching/watchService.js +15 -1
- package/dist/git/watching/watchService.js.map +1 -1
- package/dist/git/watching/watchSession.d.ts +7 -0
- package/dist/git/watching/watchSession.d.ts.map +1 -1
- package/dist/git/watching/watchSession.js +14 -2
- package/dist/git/watching/watchSession.js.map +1 -1
- package/dist/git/watching/watcherPatterns.d.ts.map +1 -1
- package/dist/git/watching/watcherPatterns.js.map +1 -1
- package/dist/git-cli/cliGitProvider.d.ts.map +1 -1
- package/dist/git-cli/exec/exec.d.ts.map +1 -1
- package/dist/git-cli/exec/exec.errors.d.ts.map +1 -1
- package/dist/git-cli/exec/exec.errors.js.map +1 -1
- package/dist/git-cli/exec/exec.js.map +1 -1
- package/dist/git-cli/exec/exec.types.d.ts.map +1 -1
- package/dist/git-cli/exec/exec.types.js.map +1 -1
- package/dist/git-cli/exec/features.d.ts.map +1 -1
- package/dist/git-cli/exec/features.js.map +1 -1
- package/dist/git-cli/exec/git.d.ts +19 -27
- package/dist/git-cli/exec/git.d.ts.map +1 -1
- package/dist/git-cli/exec/git.js +126 -34
- package/dist/git-cli/exec/git.js.map +1 -1
- package/dist/git-cli/exec/gitQueue.d.ts.map +1 -1
- package/dist/git-cli/exec/gitQueue.js.map +1 -1
- package/dist/git-cli/exec/locator.d.ts.map +1 -1
- package/dist/git-cli/exec/locator.js.map +1 -1
- package/dist/git-cli/parsers/blameParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/blameParser.js.map +1 -1
- package/dist/git-cli/parsers/indexParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/indexParser.js.map +1 -1
- package/dist/git-cli/parsers/logParser.d.ts +9 -1
- package/dist/git-cli/parsers/logParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/logParser.js +141 -60
- package/dist/git-cli/parsers/logParser.js.map +1 -1
- package/dist/git-cli/parsers/mergeTreeParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/mergeTreeParser.js.map +1 -1
- package/dist/git-cli/parsers/refParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/refParser.js.map +1 -1
- package/dist/git-cli/parsers/reflogParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/reflogParser.js.map +1 -1
- package/dist/git-cli/parsers/remoteParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/remoteParser.js.map +1 -1
- package/dist/git-cli/parsers/shortlogParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/shortlogParser.js.map +1 -1
- package/dist/git-cli/parsers/signatureParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/signatureParser.js.map +1 -1
- package/dist/git-cli/parsers/sshSignatureParser.d.ts +21 -0
- package/dist/git-cli/parsers/sshSignatureParser.d.ts.map +1 -0
- package/dist/git-cli/parsers/sshSignatureParser.js +78 -0
- package/dist/git-cli/parsers/sshSignatureParser.js.map +1 -0
- package/dist/git-cli/parsers/statusParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/statusParser.js.map +1 -1
- package/dist/git-cli/parsers/treeParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/treeParser.js.map +1 -1
- package/dist/git-cli/parsers/worktreeParser.d.ts.map +1 -1
- package/dist/git-cli/parsers/worktreeParser.js +5 -7
- package/dist/git-cli/parsers/worktreeParser.js.map +1 -1
- package/dist/git-cli/providers/blame.d.ts.map +1 -1
- package/dist/git-cli/providers/blame.js.map +1 -1
- package/dist/git-cli/providers/branches.d.ts +1 -0
- package/dist/git-cli/providers/branches.d.ts.map +1 -1
- package/dist/git-cli/providers/branches.js +51 -32
- package/dist/git-cli/providers/branches.js.map +1 -1
- package/dist/git-cli/providers/commitFilesetUtils.d.ts.map +1 -1
- package/dist/git-cli/providers/commitFilesetUtils.js.map +1 -1
- package/dist/git-cli/providers/commits.d.ts +12 -1
- package/dist/git-cli/providers/commits.d.ts.map +1 -1
- package/dist/git-cli/providers/commits.js +89 -8
- package/dist/git-cli/providers/commits.js.map +1 -1
- package/dist/git-cli/providers/config.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/git-cli/providers/diff.d.ts.map +1 -1
- package/dist/git-cli/providers/diff.js.map +1 -1
- package/dist/git-cli/providers/graph.d.ts +35 -1
- package/dist/git-cli/providers/graph.d.ts.map +1 -1
- package/dist/git-cli/providers/graph.js +1434 -330
- 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.map +1 -1
- package/dist/git-cli/providers/patch.d.ts.map +1 -1
- package/dist/git-cli/providers/patch.js.map +1 -1
- package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -1
- package/dist/git-cli/providers/pausedOperations.js +3 -3
- package/dist/git-cli/providers/pausedOperations.js.map +1 -1
- package/dist/git-cli/providers/refs.d.ts.map +1 -1
- package/dist/git-cli/providers/refs.js.map +1 -1
- package/dist/git-cli/providers/remotes.d.ts.map +1 -1
- package/dist/git-cli/providers/remotes.js.map +1 -1
- package/dist/git-cli/providers/revision.d.ts +1 -0
- package/dist/git-cli/providers/revision.d.ts.map +1 -1
- package/dist/git-cli/providers/revision.js +33 -0
- package/dist/git-cli/providers/revision.js.map +1 -1
- package/dist/git-cli/providers/staging.d.ts.map +1 -1
- package/dist/git-cli/providers/staging.js.map +1 -1
- package/dist/git-cli/providers/stash.d.ts.map +1 -1
- package/dist/git-cli/providers/stash.js.map +1 -1
- package/dist/git-cli/providers/status.d.ts +28 -0
- package/dist/git-cli/providers/status.d.ts.map +1 -1
- package/dist/git-cli/providers/status.js +240 -154
- package/dist/git-cli/providers/status.js.map +1 -1
- package/dist/git-cli/providers/tags.d.ts.map +1 -1
- package/dist/git-cli/providers/tags.js +2 -1
- package/dist/git-cli/providers/tags.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts +2 -1
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +28 -3
- 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 +8 -0
- package/dist/git-cli/service.js.map +1 -1
- package/dist/ipc/ipcServer.d.ts.map +1 -1
- package/dist/ipc/ipcServer.js +1 -1
- package/dist/ipc/ipcServer.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts +6 -1
- package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeProvider.js +19 -0
- package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts +68 -0
- package/dist/plus/agents/providers/claudeCodeTranscript.d.ts.map +1 -1
- package/dist/plus/agents/providers/claudeCodeTranscript.js +262 -8
- package/dist/plus/agents/providers/claudeCodeTranscript.js.map +1 -1
- package/dist/plus/agents/types.d.ts +36 -2
- package/dist/plus/agents/types.d.ts.map +1 -1
- package/dist/plus/ai/constants.d.ts +1 -2
- package/dist/plus/ai/constants.d.ts.map +1 -1
- package/dist/plus/ai/constants.js +1 -8
- package/dist/plus/ai/constants.js.map +1 -1
- package/dist/plus/ai/errors.d.ts.map +1 -1
- package/dist/plus/ai/errors.js.map +1 -1
- package/dist/plus/ai/models/conversation.d.ts.map +1 -1
- package/dist/plus/ai/models/conversation.js.map +1 -1
- package/dist/plus/ai/models/model.d.ts +2 -1
- package/dist/plus/ai/models/model.d.ts.map +1 -1
- package/dist/plus/ai/models/model.js +50 -1
- package/dist/plus/ai/models/model.js.map +1 -1
- package/dist/plus/ai/models/promptTemplates.d.ts +5 -2
- package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -1
- package/dist/plus/ai/models/promptTemplates.js.map +1 -1
- package/dist/plus/ai/models/provider.d.ts.map +1 -1
- package/dist/plus/ai/models/provider.js.map +1 -1
- package/dist/plus/ai/models/results.d.ts.map +1 -1
- package/dist/plus/ai/models/results.js.map +1 -1
- package/dist/plus/ai/prompts.d.ts +1 -1
- package/dist/plus/ai/prompts.d.ts.map +1 -1
- package/dist/plus/ai/prompts.js +15 -47
- package/dist/plus/ai/prompts.js.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.d.ts +5 -0
- package/dist/plus/ai/providers/anthropicProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/anthropicProvider.js +40 -3
- package/dist/plus/ai/providers/anthropicProvider.js.map +1 -1
- package/dist/plus/ai/providers/azureProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/azureProvider.js.map +1 -1
- package/dist/plus/ai/providers/context.d.ts.map +1 -1
- package/dist/plus/ai/providers/context.js.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/deepSeekProvider.js +17 -1
- package/dist/plus/ai/providers/deepSeekProvider.js.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/geminiProvider.js +25 -6
- package/dist/plus/ai/providers/geminiProvider.js.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/gitkrakenProvider.js +1 -0
- package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/huggingFaceProvider.js +21 -18
- package/dist/plus/ai/providers/huggingFaceProvider.js.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/mistralProvider.js.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/ollamaProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProvider.js.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +10 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js +9 -1
- package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openRouterProvider.js.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/openaiProvider.js.map +1 -1
- package/dist/plus/ai/providers/xaiProvider.d.ts.map +1 -1
- package/dist/plus/ai/providers/xaiProvider.js +14 -1
- package/dist/plus/ai/providers/xaiProvider.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +0 -2
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/ai/utils/results.utils.d.ts +3 -0
- package/dist/plus/ai/utils/results.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/results.utils.js +26 -0
- package/dist/plus/ai/utils/results.utils.js.map +1 -1
- package/dist/plus/ai/utils/truncation.utils.d.ts +1 -1
- package/dist/plus/ai/utils/truncation.utils.d.ts.map +1 -1
- package/dist/plus/ai/utils/truncation.utils.js.map +1 -1
- package/dist/plus/git-github/api/config.d.ts.map +1 -1
- package/dist/plus/git-github/api/config.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +66 -3
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +345 -74
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/git-github/api/github.utils.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.utils.js.map +1 -1
- package/dist/plus/git-github/api/token.d.ts.map +1 -1
- package/dist/plus/git-github/api/token.js.map +1 -1
- package/dist/plus/git-github/api/tokenUtils.d.ts.map +1 -1
- package/dist/plus/git-github/api/tokenUtils.js.map +1 -1
- package/dist/plus/git-github/api/types.d.ts.map +1 -1
- package/dist/plus/git-github/api/types.js.map +1 -1
- package/dist/plus/git-github/context.d.ts.map +1 -1
- package/dist/plus/git-github/models.d.ts +5 -0
- package/dist/plus/git-github/models.d.ts.map +1 -1
- package/dist/plus/git-github/models.js +27 -2
- package/dist/plus/git-github/models.js.map +1 -1
- package/dist/plus/git-github/providers/github/blame.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/blame.js.map +1 -1
- package/dist/plus/git-github/providers/github/branches.d.ts +2 -1
- package/dist/plus/git-github/providers/github/branches.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/branches.js +7 -3
- package/dist/plus/git-github/providers/github/branches.js.map +1 -1
- package/dist/plus/git-github/providers/github/commits.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/commits.js.map +1 -1
- package/dist/plus/git-github/providers/github/config.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/config.js.map +1 -1
- package/dist/plus/git-github/providers/github/contributors.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/contributors.js.map +1 -1
- package/dist/plus/git-github/providers/github/diff.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/diff.js +2 -2
- package/dist/plus/git-github/providers/github/diff.js.map +1 -1
- package/dist/plus/git-github/providers/github/graph.d.ts +12 -1
- package/dist/plus/git-github/providers/github/graph.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/graph.js +85 -0
- package/dist/plus/git-github/providers/github/graph.js.map +1 -1
- package/dist/plus/git-github/providers/github/refs.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/refs.js.map +1 -1
- package/dist/plus/git-github/providers/github/remotes.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/remotes.js.map +1 -1
- package/dist/plus/git-github/providers/github/revision.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/revision.js.map +1 -1
- 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/git-github/providers/github/tags.d.ts.map +1 -1
- package/dist/plus/git-github/providers/github/tags.js +3 -1
- package/dist/plus/git-github/providers/github/tags.js.map +1 -1
- package/dist/plus/git-github/providers/githubGitProvider.d.ts.map +1 -1
- package/dist/plus/git-github/providers/githubGitProvider.js.map +1 -1
- package/dist/plus/git-github/providers/githubProvider.d.ts.map +1 -1
- package/dist/plus/git-github/providers/githubProvider.js.map +1 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts +20 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.js +134 -10
- package/dist/plus/integrations/authentication/cloudIntegrationService.js.map +1 -1
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts +52 -5
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/configuredIntegrationService.js +248 -46
- package/dist/plus/integrations/authentication/configuredIntegrationService.js.map +1 -1
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts +24 -4
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js +58 -26
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js.map +1 -1
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js +7 -3
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js.map +1 -1
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/manualTokenProvider.js +9 -5
- package/dist/plus/integrations/authentication/manualTokenProvider.js.map +1 -1
- package/dist/plus/integrations/authentication/models.d.ts +33 -0
- package/dist/plus/integrations/authentication/models.d.ts.map +1 -1
- package/dist/plus/integrations/authentication/models.js.map +1 -1
- package/dist/plus/integrations/collectionMetadata.d.ts +21 -0
- package/dist/plus/integrations/collectionMetadata.d.ts.map +1 -0
- package/dist/plus/integrations/collectionMetadata.js +121 -0
- package/dist/plus/integrations/collectionMetadata.js.map +1 -0
- package/dist/plus/integrations/constants.d.ts +12 -2
- package/dist/plus/integrations/constants.d.ts.map +1 -1
- package/dist/plus/integrations/constants.js +10 -0
- package/dist/plus/integrations/constants.js.map +1 -1
- package/dist/plus/integrations/context.d.ts +10 -6
- package/dist/plus/integrations/context.d.ts.map +1 -1
- package/dist/plus/integrations/errors.d.ts +65 -0
- package/dist/plus/integrations/errors.d.ts.map +1 -1
- package/dist/plus/integrations/errors.js +131 -0
- package/dist/plus/integrations/errors.js.map +1 -1
- package/dist/plus/integrations/index.d.ts +57 -12
- package/dist/plus/integrations/index.d.ts.map +1 -1
- package/dist/plus/integrations/index.js +39 -37
- package/dist/plus/integrations/index.js.map +1 -1
- package/dist/plus/integrations/integrationService.d.ts +293 -12
- package/dist/plus/integrations/integrationService.d.ts.map +1 -1
- package/dist/plus/integrations/integrationService.js +1305 -37
- package/dist/plus/integrations/integrationService.js.map +1 -1
- package/dist/plus/integrations/lite.d.ts +47 -0
- package/dist/plus/integrations/lite.d.ts.map +1 -0
- package/dist/plus/integrations/lite.js +141 -0
- package/dist/plus/integrations/lite.js.map +1 -0
- package/dist/plus/integrations/manager.d.ts +332 -0
- package/dist/plus/integrations/manager.d.ts.map +1 -0
- package/dist/plus/integrations/manager.js +2 -0
- package/dist/plus/integrations/manager.js.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +269 -10
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.js +712 -88
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -1
- package/dist/plus/integrations/models/integration.d.ts +88 -3
- package/dist/plus/integrations/models/integration.d.ts.map +1 -1
- package/dist/plus/integrations/models/integration.js +192 -21
- package/dist/plus/integrations/models/integration.js.map +1 -1
- package/dist/plus/integrations/models/issuesIntegration.d.ts +87 -7
- package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/issuesIntegration.js +148 -33
- package/dist/plus/integrations/models/issuesIntegration.js.map +1 -1
- package/dist/plus/integrations/providerFilters.d.ts +12 -0
- package/dist/plus/integrations/providerFilters.d.ts.map +1 -0
- package/dist/plus/integrations/providerFilters.js +14 -0
- package/dist/plus/integrations/providerFilters.js.map +1 -0
- package/dist/plus/integrations/providers/apiClients.d.ts.map +1 -1
- package/dist/plus/integrations/providers/apiClients.js +3 -3
- package/dist/plus/integrations/providers/apiClients.js.map +1 -1
- package/dist/plus/integrations/providers/apiConfig.d.ts +52 -0
- package/dist/plus/integrations/providers/apiConfig.d.ts.map +1 -0
- package/dist/plus/integrations/providers/apiConfig.js +19 -0
- package/dist/plus/integrations/providers/apiConfig.js.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts +14 -2
- package/dist/plus/integrations/providers/azure/azure.d.ts.map +1 -1
- package/dist/plus/integrations/providers/azure/azure.js +107 -32
- package/dist/plus/integrations/providers/azure/azure.js.map +1 -1
- package/dist/plus/integrations/providers/azure/models.d.ts +16 -0
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/azure/models.js +6 -6
- package/dist/plus/integrations/providers/azure/models.js.map +1 -1
- package/dist/plus/integrations/providers/azureDevOps.d.ts +55 -9
- package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -1
- package/dist/plus/integrations/providers/azureDevOps.js +572 -79
- package/dist/plus/integrations/providers/azureDevOps.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts +13 -2
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js +108 -32
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts +19 -1
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket-server/models.js +20 -1
- package/dist/plus/integrations/providers/bitbucket-server/models.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket-server.d.ts +28 -4
- package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket-server.js +110 -6
- package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -1
- package/dist/plus/integrations/providers/bitbucket.d.ts +38 -4
- package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -1
- package/dist/plus/integrations/providers/bitbucket.js +330 -34
- package/dist/plus/integrations/providers/bitbucket.js.map +1 -1
- package/dist/plus/integrations/providers/github/github.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github/github.js +1 -1
- package/dist/plus/integrations/providers/github/github.js.map +1 -1
- package/dist/plus/integrations/providers/github/github.utils.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github/github.utils.js.map +1 -1
- package/dist/plus/integrations/providers/github/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github/models.js.map +1 -1
- package/dist/plus/integrations/providers/github.d.ts +49 -6
- package/dist/plus/integrations/providers/github.d.ts.map +1 -1
- package/dist/plus/integrations/providers/github.js +289 -4
- package/dist/plus/integrations/providers/github.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts +11 -3
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab/gitlab.js +121 -47
- package/dist/plus/integrations/providers/gitlab/gitlab.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts +6 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js +8 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab/models.d.ts +10 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab/models.js +8 -5
- package/dist/plus/integrations/providers/gitlab/models.js.map +1 -1
- package/dist/plus/integrations/providers/gitlab.d.ts +50 -5
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -1
- package/dist/plus/integrations/providers/gitlab.js +274 -8
- package/dist/plus/integrations/providers/gitlab.js.map +1 -1
- package/dist/plus/integrations/providers/jira.d.ts +13 -2
- package/dist/plus/integrations/providers/jira.d.ts.map +1 -1
- package/dist/plus/integrations/providers/jira.js +200 -30
- package/dist/plus/integrations/providers/jira.js.map +1 -1
- package/dist/plus/integrations/providers/linear.d.ts +16 -5
- package/dist/plus/integrations/providers/linear.d.ts.map +1 -1
- package/dist/plus/integrations/providers/linear.js +127 -21
- package/dist/plus/integrations/providers/linear.js.map +1 -1
- package/dist/plus/integrations/providers/models.d.ts +339 -60
- package/dist/plus/integrations/providers/models.d.ts.map +1 -1
- package/dist/plus/integrations/providers/models.js +307 -59
- package/dist/plus/integrations/providers/models.js.map +1 -1
- package/dist/plus/integrations/providers/providersApi.d.ts +144 -11
- package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -1
- package/dist/plus/integrations/providers/providersApi.js +486 -55
- package/dist/plus/integrations/providers/providersApi.js.map +1 -1
- package/dist/plus/integrations/providers/trello.d.ts +47 -0
- package/dist/plus/integrations/providers/trello.d.ts.map +1 -0
- package/dist/plus/integrations/providers/trello.js +141 -0
- package/dist/plus/integrations/providers/trello.js.map +1 -0
- package/dist/plus/integrations/providers/utils/providerPaging.d.ts +29 -0
- package/dist/plus/integrations/providers/utils/providerPaging.d.ts.map +1 -0
- package/dist/plus/integrations/providers/utils/providerPaging.js +154 -0
- package/dist/plus/integrations/providers/utils/providerPaging.js.map +1 -0
- package/dist/plus/integrations/providers/utils.d.ts +21 -0
- package/dist/plus/integrations/providers/utils.d.ts.map +1 -1
- package/dist/plus/integrations/providers/utils.js +57 -6
- package/dist/plus/integrations/providers/utils.js.map +1 -1
- package/dist/plus/integrations/reads/context.d.ts +52 -0
- package/dist/plus/integrations/reads/context.d.ts.map +1 -0
- package/dist/plus/integrations/reads/context.js +2 -0
- package/dist/plus/integrations/reads/context.js.map +1 -0
- package/dist/plus/integrations/reads/cursors.d.ts +66 -0
- package/dist/plus/integrations/reads/cursors.d.ts.map +1 -0
- package/dist/plus/integrations/reads/cursors.js +133 -0
- package/dist/plus/integrations/reads/cursors.js.map +1 -0
- package/dist/plus/integrations/reads/drains.d.ts +60 -0
- package/dist/plus/integrations/reads/drains.d.ts.map +1 -0
- package/dist/plus/integrations/reads/drains.js +255 -0
- package/dist/plus/integrations/reads/drains.js.map +1 -0
- package/dist/plus/integrations/reads/filters.d.ts +81 -0
- package/dist/plus/integrations/reads/filters.d.ts.map +1 -0
- package/dist/plus/integrations/reads/filters.js +87 -0
- package/dist/plus/integrations/reads/filters.js.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.d.ts +17 -0
- package/dist/plus/integrations/reads/hierarchy.d.ts.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.js +348 -0
- package/dist/plus/integrations/reads/hierarchy.js.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.utils.d.ts +53 -0
- package/dist/plus/integrations/reads/hierarchy.utils.d.ts.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.utils.js +85 -0
- package/dist/plus/integrations/reads/hierarchy.utils.js.map +1 -0
- package/dist/plus/integrations/reads/issueTracker.d.ts +19 -0
- package/dist/plus/integrations/reads/issueTracker.d.ts.map +1 -0
- package/dist/plus/integrations/reads/issueTracker.js +346 -0
- package/dist/plus/integrations/reads/issueTracker.js.map +1 -0
- package/dist/plus/integrations/reads/issues.d.ts +34 -0
- package/dist/plus/integrations/reads/issues.d.ts.map +1 -0
- package/dist/plus/integrations/reads/issues.js +244 -0
- package/dist/plus/integrations/reads/issues.js.map +1 -0
- package/dist/plus/integrations/reads/paging.d.ts +136 -0
- package/dist/plus/integrations/reads/paging.d.ts.map +1 -0
- package/dist/plus/integrations/reads/paging.js +221 -0
- package/dist/plus/integrations/reads/paging.js.map +1 -0
- package/dist/plus/integrations/reads/pullRequests.d.ts +32 -0
- package/dist/plus/integrations/reads/pullRequests.d.ts.map +1 -0
- package/dist/plus/integrations/reads/pullRequests.js +151 -0
- package/dist/plus/integrations/reads/pullRequests.js.map +1 -0
- package/dist/plus/integrations/reads/warnings.d.ts +47 -0
- package/dist/plus/integrations/reads/warnings.d.ts.map +1 -0
- package/dist/plus/integrations/reads/warnings.js +81 -0
- package/dist/plus/integrations/reads/warnings.js.map +1 -0
- package/dist/plus/integrations/results.d.ts +189 -0
- package/dist/plus/integrations/results.d.ts.map +1 -0
- package/dist/plus/integrations/results.js +62 -0
- package/dist/plus/integrations/results.js.map +1 -0
- package/dist/plus/integrations/utils/domain.utils.d.ts +5 -0
- package/dist/plus/integrations/utils/domain.utils.d.ts.map +1 -0
- package/dist/plus/integrations/utils/domain.utils.js +27 -0
- package/dist/plus/integrations/utils/domain.utils.js.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts +27 -1
- package/dist/plus/integrations/utils/integration.utils.d.ts.map +1 -1
- package/dist/plus/integrations/utils/integration.utils.js +86 -15
- package/dist/plus/integrations/utils/integration.utils.js.map +1 -1
- package/dist/utils/array.d.ts.map +1 -1
- package/dist/utils/array.js.map +1 -1
- package/dist/utils/brand.d.ts.map +1 -1
- package/dist/utils/cancellation.d.ts +13 -0
- package/dist/utils/cancellation.d.ts.map +1 -1
- package/dist/utils/cancellation.js +52 -7
- package/dist/utils/cancellation.js.map +1 -1
- package/dist/utils/charCode.d.ts.map +1 -1
- package/dist/utils/coalescedRun.d.ts +16 -0
- package/dist/utils/coalescedRun.d.ts.map +1 -0
- package/dist/utils/coalescedRun.js +43 -0
- package/dist/utils/coalescedRun.js.map +1 -0
- package/dist/utils/color.d.ts.map +1 -1
- package/dist/utils/color.js +3 -3
- package/dist/utils/color.js.map +1 -1
- package/dist/utils/date.d.ts +24 -0
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +62 -0
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/debounce.js +1 -1
- package/dist/utils/debounce.js.map +1 -1
- package/dist/utils/decorators/debounce.d.ts.map +1 -1
- package/dist/utils/decorators/debounce.js.map +1 -1
- package/dist/utils/decorators/gate.d.ts.map +1 -1
- package/dist/utils/decorators/gate.js +2 -2
- package/dist/utils/decorators/gate.js.map +1 -1
- package/dist/utils/decorators/log.d.ts.map +1 -1
- package/dist/utils/decorators/log.js +5 -5
- package/dist/utils/decorators/log.js.map +1 -1
- package/dist/utils/decorators/memoize.d.ts.map +1 -1
- package/dist/utils/decorators/memoize.js +2 -2
- package/dist/utils/decorators/memoize.js.map +1 -1
- package/dist/utils/decorators/resolver.d.ts.map +1 -1
- package/dist/utils/decorators/resolver.js.map +1 -1
- package/dist/utils/decorators/sequentialize.d.ts.map +1 -1
- package/dist/utils/decorators/sequentialize.js +2 -2
- package/dist/utils/decorators/sequentialize.js.map +1 -1
- package/dist/utils/decorators/serializable.d.ts.map +1 -1
- package/dist/utils/decorators/serializable.js +1 -1
- package/dist/utils/decorators/serializable.js.map +1 -1
- package/dist/utils/dedupedAsyncCache.d.ts.map +1 -1
- package/dist/utils/env/browser/base64.d.ts.map +1 -1
- package/dist/utils/env/browser/base64.js.map +1 -1
- package/dist/utils/env/browser/crypto.d.ts.map +1 -1
- package/dist/utils/env/browser/crypto.js.map +1 -1
- package/dist/utils/env/browser/fs.d.ts.map +1 -1
- package/dist/utils/env/browser/fs.js.map +1 -1
- package/dist/utils/env/browser/hex.d.ts.map +1 -1
- package/dist/utils/env/browser/hex.js.map +1 -1
- package/dist/utils/env/browser/hrtime.d.ts.map +1 -1
- package/dist/utils/env/browser/hrtime.js.map +1 -1
- package/dist/utils/env/browser/logScope.d.ts.map +1 -1
- package/dist/utils/env/browser/logScope.js.map +1 -1
- package/dist/utils/env/browser/md5.d.ts.map +1 -1
- package/dist/utils/env/browser/md5.js.map +1 -1
- package/dist/utils/env/browser/platform.d.ts.map +1 -1
- package/dist/utils/env/browser/platform.js.map +1 -1
- package/dist/utils/env/node/base64.d.ts.map +1 -1
- package/dist/utils/env/node/base64.js.map +1 -1
- package/dist/utils/env/node/crypto.d.ts.map +1 -1
- package/dist/utils/env/node/crypto.js.map +1 -1
- package/dist/utils/env/node/exec.d.ts +9 -1
- package/dist/utils/env/node/exec.d.ts.map +1 -1
- package/dist/utils/env/node/exec.js +11 -4
- package/dist/utils/env/node/exec.js.map +1 -1
- package/dist/utils/env/node/fs.d.ts.map +1 -1
- package/dist/utils/env/node/fs.js.map +1 -1
- package/dist/utils/env/node/hex.d.ts.map +1 -1
- package/dist/utils/env/node/hex.js.map +1 -1
- package/dist/utils/env/node/hrtime.d.ts.map +1 -1
- package/dist/utils/env/node/hrtime.js.map +1 -1
- package/dist/utils/env/node/logScope.d.ts.map +1 -1
- package/dist/utils/env/node/logScope.js.map +1 -1
- package/dist/utils/env/node/platform.d.ts.map +1 -1
- package/dist/utils/env/node/platform.js.map +1 -1
- package/dist/utils/event.d.ts.map +1 -1
- package/dist/utils/event.js +18 -22
- package/dist/utils/event.js.map +1 -1
- package/dist/utils/formatter.d.ts.map +1 -1
- package/dist/utils/formatter.js.map +1 -1
- package/dist/utils/function.d.ts.map +1 -1
- package/dist/utils/function.js +3 -3
- package/dist/utils/function.js.map +1 -1
- package/dist/utils/hash.js.map +1 -1
- package/dist/utils/iterable.d.ts.map +1 -1
- package/dist/utils/iterable.js +2 -6
- package/dist/utils/iterable.js.map +1 -1
- package/dist/utils/lazy.d.ts.map +1 -1
- package/dist/utils/lazy.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/logger.scoped.js +1 -1
- package/dist/utils/logger.scoped.js.map +1 -1
- package/dist/utils/lruMap.d.ts.map +1 -1
- package/dist/utils/lruMap.js.map +1 -1
- package/dist/utils/mru.d.ts.map +1 -1
- package/dist/utils/mru.js.map +1 -1
- package/dist/utils/object.js.map +1 -1
- package/dist/utils/paging.d.ts +29 -0
- package/dist/utils/paging.d.ts.map +1 -1
- package/dist/utils/paging.js +18 -0
- package/dist/utils/paging.js.map +1 -1
- package/dist/utils/path.js.map +1 -1
- package/dist/utils/promise.d.ts +10 -0
- package/dist/utils/promise.d.ts.map +1 -1
- package/dist/utils/promise.js +26 -3
- package/dist/utils/promise.js.map +1 -1
- package/dist/utils/promiseCache.d.ts +12 -2
- package/dist/utils/promiseCache.d.ts.map +1 -1
- package/dist/utils/promiseCache.js +80 -50
- package/dist/utils/promiseCache.js.map +1 -1
- package/dist/utils/searchTree.d.ts.map +1 -1
- package/dist/utils/searchTree.js +4 -1
- package/dist/utils/searchTree.js.map +1 -1
- package/dist/utils/stopwatch.d.ts.map +1 -1
- package/dist/utils/string.js +1 -1
- package/dist/utils/string.js.map +1 -1
- package/dist/utils/subscriptionManager.d.ts.map +1 -1
- package/dist/utils/subscriptionManager.js.map +1 -1
- package/dist/utils/trie.d.ts.map +1 -1
- package/dist/utils/trie.js +1 -0
- package/dist/utils/trie.js.map +1 -1
- package/docs/integrations.md +372 -0
- package/docs/kepler-read-api-parity.md +112 -0
- package/package.json +238 -213
- package/src/git/cache.ts +75 -8
- package/src/git/errors.ts +36 -1
- package/src/git/models/commit.ts +1 -1
- package/src/git/models/graph.ts +147 -0
- package/src/git/models/graphSession.ts +205 -0
- package/src/git/models/issue.ts +12 -1
- package/src/git/models/pullRequest.ts +27 -1
- package/src/git/models/repository.ts +24 -1
- package/src/git/models/resourceDescriptor.ts +17 -0
- package/src/git/models/signature.ts +16 -0
- package/src/git/models/tag.ts +6 -1
- package/src/git/parsers/diffParser.ts +1 -1
- package/src/git/providers/branches.ts +6 -1
- package/src/git/providers/commits.ts +6 -1
- package/src/git/providers/config.ts +5 -1
- package/src/git/providers/graph.ts +69 -2
- package/src/git/providers/status.ts +1 -1
- package/src/git/providers/worktrees.ts +3 -1
- package/src/git/remotes/azure-devops.ts +29 -33
- package/src/git/remotes/bitbucket-server.ts +23 -25
- package/src/git/remotes/bitbucket.ts +23 -25
- package/src/git/remotes/gerrit.ts +12 -14
- package/src/git/remotes/gitea.ts +13 -15
- package/src/git/remotes/github.ts +56 -58
- package/src/git/remotes/gitlab.ts +102 -104
- package/src/git/run.types.ts +54 -4
- package/src/git/utils/branch.utils.ts +12 -1
- package/src/git/utils/contributor.utils.ts +1 -1
- package/src/git/utils/fileStatus.utils.ts +7 -0
- package/src/git/utils/graph.utils.ts +46 -0
- package/src/git/utils/issue.utils.ts +1 -0
- package/src/git/utils/pullRequest.utils.ts +9 -0
- package/src/git/utils/reachability.utils.ts +79 -8
- package/src/git/utils/sshKey.utils.ts +30 -0
- package/src/git/watching/watchService.ts +16 -1
- package/src/git/watching/watchSession.ts +20 -2
- package/src/git-cli/exec/git.ts +144 -42
- package/src/git-cli/parsers/logParser.ts +83 -1
- package/src/git-cli/parsers/sshSignatureParser.ts +85 -0
- package/src/git-cli/parsers/worktreeParser.ts +5 -7
- package/src/git-cli/providers/branches.ts +60 -38
- package/src/git-cli/providers/commits.ts +102 -9
- package/src/git-cli/providers/graph.ts +1771 -393
- package/src/git-cli/providers/pausedOperations.ts +3 -3
- package/src/git-cli/providers/revision.ts +42 -0
- package/src/git-cli/providers/status.ts +333 -178
- package/src/git-cli/providers/tags.ts +2 -0
- package/src/git-cli/providers/worktrees.ts +40 -4
- package/src/git-cli/service.ts +9 -0
- package/src/ipc/ipcServer.ts +1 -1
- package/src/plus/agents/providers/claudeCodeProvider.ts +25 -0
- package/src/plus/agents/providers/claudeCodeTranscript.ts +320 -8
- package/src/plus/agents/types.ts +34 -0
- package/src/plus/ai/constants.ts +1 -9
- package/src/plus/ai/models/model.ts +53 -2
- package/src/plus/ai/models/promptTemplates.ts +9 -2
- package/src/plus/ai/prompts.ts +16 -48
- package/src/plus/ai/providers/anthropicProvider.ts +45 -3
- package/src/plus/ai/providers/deepSeekProvider.ts +17 -1
- package/src/plus/ai/providers/geminiProvider.ts +25 -6
- package/src/plus/ai/providers/gitkrakenProvider.ts +2 -0
- package/src/plus/ai/providers/huggingFaceProvider.ts +28 -21
- package/src/plus/ai/providers/openAICompatibleProviderBase.ts +16 -1
- package/src/plus/ai/providers/xaiProvider.ts +14 -1
- package/src/plus/ai/utils/ai.utils.ts +0 -2
- package/src/plus/ai/utils/results.utils.ts +32 -0
- package/src/plus/ai/utils/truncation.utils.ts +0 -1
- package/src/plus/git-github/api/github.ts +484 -104
- package/src/plus/git-github/models.ts +33 -0
- package/src/plus/git-github/providers/github/branches.ts +6 -3
- package/src/plus/git-github/providers/github/diff.ts +1 -1
- package/src/plus/git-github/providers/github/graph.ts +131 -0
- package/src/plus/git-github/providers/github/tags.ts +2 -0
- package/src/plus/integrations/authentication/cloudIntegrationService.ts +189 -17
- package/src/plus/integrations/authentication/configuredIntegrationService.ts +287 -50
- package/src/plus/integrations/authentication/integrationAuthenticationProvider.ts +105 -31
- package/src/plus/integrations/authentication/integrationAuthenticationService.ts +7 -3
- package/src/plus/integrations/authentication/manualTokenProvider.ts +12 -5
- package/src/plus/integrations/authentication/models.ts +35 -1
- package/src/plus/integrations/collectionMetadata.ts +143 -0
- package/src/plus/integrations/constants.ts +21 -0
- package/src/plus/integrations/context.ts +8 -9
- package/src/plus/integrations/errors.ts +149 -0
- package/src/plus/integrations/index.ts +148 -51
- package/src/plus/integrations/integrationService.ts +1714 -49
- package/src/plus/integrations/lite.ts +233 -0
- package/src/plus/integrations/manager.ts +359 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +1014 -121
- package/src/plus/integrations/models/integration.ts +293 -24
- package/src/plus/integrations/models/issuesIntegration.ts +178 -38
- package/src/plus/integrations/providerFilters.ts +12 -0
- package/src/plus/integrations/providers/apiClients.ts +8 -11
- package/src/plus/integrations/providers/apiConfig.ts +71 -0
- package/src/plus/integrations/providers/azure/azure.ts +164 -33
- package/src/plus/integrations/providers/azure/models.ts +19 -6
- package/src/plus/integrations/providers/azureDevOps.ts +766 -101
- package/src/plus/integrations/providers/bitbucket/bitbucket.ts +164 -34
- package/src/plus/integrations/providers/bitbucket-server/models.ts +32 -1
- package/src/plus/integrations/providers/bitbucket-server.ts +173 -8
- package/src/plus/integrations/providers/bitbucket.ts +489 -45
- package/src/plus/integrations/providers/github/github.ts +2 -2
- package/src/plus/integrations/providers/github/github.utils.ts +1 -1
- package/src/plus/integrations/providers/github.ts +390 -6
- package/src/plus/integrations/providers/gitlab/gitlab.ts +170 -60
- package/src/plus/integrations/providers/gitlab/gitlab.utils.ts +9 -0
- package/src/plus/integrations/providers/gitlab/models.ts +19 -5
- package/src/plus/integrations/providers/gitlab.ts +369 -10
- package/src/plus/integrations/providers/jira.ts +247 -42
- package/src/plus/integrations/providers/linear.ts +154 -27
- package/src/plus/integrations/providers/models.ts +583 -75
- package/src/plus/integrations/providers/providersApi.ts +849 -86
- package/src/plus/integrations/providers/trello.ts +205 -0
- package/src/plus/integrations/providers/utils/providerPaging.ts +177 -0
- package/src/plus/integrations/providers/utils.ts +68 -8
- package/src/plus/integrations/reads/context.ts +75 -0
- package/src/plus/integrations/reads/cursors.ts +224 -0
- package/src/plus/integrations/reads/drains.ts +343 -0
- package/src/plus/integrations/reads/filters.ts +124 -0
- package/src/plus/integrations/reads/hierarchy.ts +493 -0
- package/src/plus/integrations/reads/hierarchy.utils.ts +106 -0
- package/src/plus/integrations/reads/issueTracker.ts +480 -0
- package/src/plus/integrations/reads/issues.ts +407 -0
- package/src/plus/integrations/reads/paging.ts +277 -0
- package/src/plus/integrations/reads/pullRequests.ts +267 -0
- package/src/plus/integrations/reads/warnings.ts +170 -0
- package/src/plus/integrations/results.ts +275 -0
- package/src/plus/integrations/utils/domain.utils.ts +26 -0
- package/src/plus/integrations/utils/integration.utils.ts +93 -16
- package/src/utils/brand.ts +0 -2
- package/src/utils/cancellation.ts +56 -7
- package/src/utils/coalescedRun.ts +45 -0
- package/src/utils/color.ts +3 -3
- package/src/utils/date.ts +72 -0
- package/src/utils/debounce.ts +1 -1
- package/src/utils/decorators/gate.ts +2 -2
- package/src/utils/decorators/log.ts +5 -5
- package/src/utils/decorators/memoize.ts +2 -2
- package/src/utils/decorators/sequentialize.ts +2 -2
- package/src/utils/decorators/serializable.ts +1 -1
- package/src/utils/env/node/exec.ts +20 -5
- package/src/utils/event.ts +19 -25
- package/src/utils/function.ts +3 -3
- package/src/utils/iterable.ts +2 -6
- package/src/utils/logger.scoped.ts +1 -1
- package/src/utils/logger.ts +1 -1
- package/src/utils/paging.ts +46 -0
- package/src/utils/promise.ts +33 -3
- package/src/utils/promiseCache.ts +81 -51
- package/src/utils/searchTree.ts +4 -2
- package/src/utils/string.ts +1 -1
- package/src/utils/trie.ts +1 -0
- package/dist/plus/ai/providers/githubModelsProvider.d.ts +0 -19
- package/dist/plus/ai/providers/githubModelsProvider.d.ts.map +0 -1
- package/dist/plus/ai/providers/githubModelsProvider.js +0 -51
- package/dist/plus/ai/providers/githubModelsProvider.js.map +0 -1
- package/src/plus/ai/providers/githubModelsProvider.ts +0 -92
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
import { mapBounded } from '../../../utils/promise.js';
|
|
2
|
+
import { mergeAssessmentInto } from '../collectionMetadata.js';
|
|
3
|
+
import { GitCloudHostIntegrationId, GitSelfManagedHostIntegrationId, providerFanOutConcurrency, supportedOrderedCloudIntegrationIds, supportedOrderedCloudIssuesIntegrationIds, } from '../constants.js';
|
|
4
|
+
import { isIssuesIntegration } from '../models/issuesIntegration.js';
|
|
5
|
+
import { toProviderRepositoryShape } from '../providers/models.js';
|
|
6
|
+
import { appendDedupedWarning } from '../results.js';
|
|
7
|
+
import { isGitHostIntegration, isIssuesHostIntegrationId, warnOnMissingSessionForDomain, } from '../utils/integration.utils.js';
|
|
8
|
+
import { runCaptured } from './drains.js';
|
|
9
|
+
import { assertHierarchyReadTarget, orgForProject, resourceMatchesOrg, resourceToOrg, withProviderContext, } from './hierarchy.utils.js';
|
|
10
|
+
import { pageToCursor, refusedPage, resolveContinuation, resolveCurrentPage, toProviderPageInfo } from './paging.js';
|
|
11
|
+
import { gitHostOnlySurfaceWarning, otherWarning } from './warnings.js';
|
|
12
|
+
export async function listOrgs(ctx, options) {
|
|
13
|
+
assertHierarchyReadTarget('listOrgs', options);
|
|
14
|
+
const ids = options?.providerId != null ? [options.providerId] : supportedOrderedCloudIntegrationIds;
|
|
15
|
+
const singleProvider = ids.length === 1;
|
|
16
|
+
const connectionId = singleProvider ? options?.connectionId : undefined;
|
|
17
|
+
const requestedDomain = singleProvider ? options?.domain : undefined;
|
|
18
|
+
const results = await mapBounded(ids, providerFanOutConcurrency, async (id) => {
|
|
19
|
+
const integration = await ctx.getIntegrationForRead(id, connectionId, requestedDomain);
|
|
20
|
+
if (integration == null) {
|
|
21
|
+
// A specifically requested connection that can't be resolved is a broken connection, not a
|
|
22
|
+
// provider with no orgs — surface it (warning + fetchFailed) instead of dropping the id
|
|
23
|
+
// silently, so a caller can tell it apart from an account that genuinely has no orgs.
|
|
24
|
+
const early = ctx.earlyReturnConnectionWarnings(id, connectionId, requestedDomain);
|
|
25
|
+
return {
|
|
26
|
+
items: [],
|
|
27
|
+
warnings: early.warnings,
|
|
28
|
+
fetchFailed: early.fetchFailed,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
const items = [];
|
|
32
|
+
const warnings = [];
|
|
33
|
+
let fetchFailed = false;
|
|
34
|
+
const domain = ctx.domainForRead(integration, id, connectionId, requestedDomain);
|
|
35
|
+
const warnOnMissingSession = warnOnMissingSessionForDomain(id, requestedDomain);
|
|
36
|
+
if (isIssuesIntegration(integration)) {
|
|
37
|
+
// Issue trackers expose "resources" (Jira sites, Linear orgs, …) as their org analogue.
|
|
38
|
+
const { value: resources, warning } = await runCaptured(id, domain, connectionId, () => integration.getResourcesForUserResult(connectionId), { warnOnMissingSession: warnOnMissingSession });
|
|
39
|
+
if (resources != null) {
|
|
40
|
+
items.push(...resources.map(r => resourceToOrg(id, r)));
|
|
41
|
+
}
|
|
42
|
+
if (warning != null) {
|
|
43
|
+
warnings.push(warning);
|
|
44
|
+
// A warning with no value is a hard read failure, not an empty account.
|
|
45
|
+
if (resources == null) {
|
|
46
|
+
fetchFailed = true;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
else if (!integration.supportsOrganizationDiscovery) {
|
|
51
|
+
// The provider registers no org-discovery hook (e.g. Bitbucket Data Center). Report it as
|
|
52
|
+
// explicitly unsupported rather than contributing a silent empty list that a caller can't
|
|
53
|
+
// tell apart from "this account has no orgs".
|
|
54
|
+
fetchFailed = true;
|
|
55
|
+
warnings.push(otherWarning(id, domain, connectionId, `Organization discovery is not supported by '${id}'.`));
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
const { value, warning } = await runCaptured(id, domain, connectionId, () => integration.getOrganizationsForUserResult(connectionId), { warnOnMissingSession: warnOnMissingSession });
|
|
59
|
+
if (value != null) {
|
|
60
|
+
items.push(...value.values.map(org => withProviderContext(id, org)));
|
|
61
|
+
if (value.truncated) {
|
|
62
|
+
warnings.push(otherWarning(id, domain, connectionId, 'Organization listing was truncated before the upstream results were exhausted.'));
|
|
63
|
+
// `ProviderResult` has no page object on which to carry truncation. Mark the flat
|
|
64
|
+
// hierarchy result incomplete so consumers don't treat omitted orgs as authoritative.
|
|
65
|
+
fetchFailed = true;
|
|
66
|
+
}
|
|
67
|
+
const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, value.metadata);
|
|
68
|
+
if (assessment.fetchFailed || assessment.truncated) {
|
|
69
|
+
fetchFailed = true;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
if (warning != null) {
|
|
73
|
+
warnings.push(warning);
|
|
74
|
+
if (value == null) {
|
|
75
|
+
fetchFailed = true;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return { items: items, warnings: warnings, fetchFailed: fetchFailed };
|
|
80
|
+
});
|
|
81
|
+
const items = [];
|
|
82
|
+
const warnings = [];
|
|
83
|
+
let fetchFailed = false;
|
|
84
|
+
for (const result of results) {
|
|
85
|
+
if (result == null) {
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
items.push(...result.items);
|
|
89
|
+
// Dedupe across the multi-provider fan-out (matches listProjects): a warning that repeats verbatim
|
|
90
|
+
// across scopes — e.g. the same account surfaced under two ids — shouldn't be reported twice.
|
|
91
|
+
for (const w of result.warnings) {
|
|
92
|
+
appendDedupedWarning(warnings, w);
|
|
93
|
+
}
|
|
94
|
+
if (result.fetchFailed) {
|
|
95
|
+
fetchFailed = true;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return { items: items, warnings: warnings, fetchFailed: fetchFailed || undefined };
|
|
99
|
+
}
|
|
100
|
+
export async function listProjects(ctx, options) {
|
|
101
|
+
assertHierarchyReadTarget('listProjects', options);
|
|
102
|
+
const ids = options?.providerId != null
|
|
103
|
+
? [options.providerId]
|
|
104
|
+
: [
|
|
105
|
+
...supportedOrderedCloudIssuesIntegrationIds,
|
|
106
|
+
GitCloudHostIntegrationId.AzureDevOps,
|
|
107
|
+
GitSelfManagedHostIntegrationId.AzureDevOpsServer,
|
|
108
|
+
];
|
|
109
|
+
const singleProvider = ids.length === 1;
|
|
110
|
+
const connectionId = singleProvider ? options?.connectionId : undefined;
|
|
111
|
+
const requestedDomain = singleProvider ? options?.domain : undefined;
|
|
112
|
+
const results = await mapBounded(ids, providerFanOutConcurrency, async (id) => {
|
|
113
|
+
const integration = await ctx.getIntegrationForRead(id, connectionId, requestedDomain);
|
|
114
|
+
if (integration == null) {
|
|
115
|
+
// A requested connection that can't be resolved is a broken connection, not a provider with
|
|
116
|
+
// no projects — surface it (warning + fetchFailed) instead of dropping the id silently.
|
|
117
|
+
const early = ctx.earlyReturnConnectionWarnings(id, connectionId, requestedDomain);
|
|
118
|
+
return {
|
|
119
|
+
items: [],
|
|
120
|
+
warnings: early.warnings,
|
|
121
|
+
fetchFailed: early.fetchFailed,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
const items = [];
|
|
125
|
+
const warnings = [];
|
|
126
|
+
let fetchFailed = false;
|
|
127
|
+
const domain = ctx.domainForRead(integration, id, connectionId, requestedDomain);
|
|
128
|
+
const org = options?.org;
|
|
129
|
+
const warnOnMissingSession = warnOnMissingSessionForDomain(id, requestedDomain);
|
|
130
|
+
// Git hosts with a project tier (Azure DevOps) read projects through their own hierarchy hook,
|
|
131
|
+
// scoped to `org` when given. Non-Azure git hosts have no project tier and return undefined.
|
|
132
|
+
if (!isIssuesIntegration(integration)) {
|
|
133
|
+
// Check the capability first, like listOrgs/listRepos/listIssuesPage do. Without it, a host
|
|
134
|
+
// with no project tier returns `undefined` from a successful read, which `runCaptured` can't
|
|
135
|
+
// tell apart from an unresolvable session — turning a healthy provider into a `no-connection`
|
|
136
|
+
// warning + `fetchFailed` (and, in Kepler, a spurious reconnect prompt).
|
|
137
|
+
if (!integration.supportsProjectDiscovery) {
|
|
138
|
+
return { items: items, warnings: warnings, fetchFailed: false };
|
|
139
|
+
}
|
|
140
|
+
const { value: projects, warning } = await runCaptured(id, domain, connectionId, () => integration.getProjectsForOrgResult(org, connectionId), { warnOnMissingSession: warnOnMissingSession });
|
|
141
|
+
if (warning != null) {
|
|
142
|
+
warnings.push(warning);
|
|
143
|
+
if (projects == null) {
|
|
144
|
+
fetchFailed = true;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
if (projects != null) {
|
|
148
|
+
items.push(...projects.values.map(project => withProviderContext(id, project)));
|
|
149
|
+
if (projects.truncated) {
|
|
150
|
+
warnings.push(otherWarning(id, domain, connectionId, 'Project listing was truncated before the upstream results were exhausted.'));
|
|
151
|
+
// Unlike paged repository reads, this flattened hierarchy result has no continuation
|
|
152
|
+
// or page metadata. `fetchFailed` is its structural non-authoritative signal.
|
|
153
|
+
fetchFailed = true;
|
|
154
|
+
}
|
|
155
|
+
const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, projects.metadata);
|
|
156
|
+
if (assessment.fetchFailed || assessment.truncated) {
|
|
157
|
+
fetchFailed = true;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return { items: items, warnings: warnings, fetchFailed: fetchFailed };
|
|
161
|
+
}
|
|
162
|
+
const { value: resources, warning: resourcesWarning } = await runCaptured(id, domain, connectionId, () => integration.getResourcesForUserResult(connectionId), { warnOnMissingSession: warnOnMissingSession });
|
|
163
|
+
if (resourcesWarning != null) {
|
|
164
|
+
warnings.push(resourcesWarning);
|
|
165
|
+
if (resources == null) {
|
|
166
|
+
fetchFailed = true;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
const scopedResources = org != null ? resources?.filter(resource => resourceMatchesOrg(resource, org)) : resources;
|
|
170
|
+
if (scopedResources != null && scopedResources.length !== 0) {
|
|
171
|
+
const { value: projects, warning: projectsWarning } = await runCaptured(id, domain, connectionId, () => integration.getProjectsForResourcesWithMetadataResult(scopedResources, connectionId));
|
|
172
|
+
if (projectsWarning != null) {
|
|
173
|
+
warnings.push(projectsWarning);
|
|
174
|
+
if (projects == null) {
|
|
175
|
+
fetchFailed = true;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (projects != null) {
|
|
179
|
+
items.push(...projects.values.map(project => resourceToOrg(id, project, orgForProject(id, project, scopedResources))));
|
|
180
|
+
}
|
|
181
|
+
const assessment = mergeAssessmentInto(warnings, id, domain, connectionId, projects?.metadata);
|
|
182
|
+
if (assessment.fetchFailed || assessment.truncated) {
|
|
183
|
+
fetchFailed = true;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return { items: items, warnings: warnings, fetchFailed: fetchFailed };
|
|
187
|
+
});
|
|
188
|
+
const items = [];
|
|
189
|
+
const warnings = [];
|
|
190
|
+
let fetchFailed = false;
|
|
191
|
+
for (const result of results) {
|
|
192
|
+
if (result == null) {
|
|
193
|
+
continue;
|
|
194
|
+
}
|
|
195
|
+
items.push(...result.items);
|
|
196
|
+
for (const w of result.warnings) {
|
|
197
|
+
appendDedupedWarning(warnings, w);
|
|
198
|
+
}
|
|
199
|
+
if (result.fetchFailed) {
|
|
200
|
+
fetchFailed = true;
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return { items: items, warnings: warnings, fetchFailed: fetchFailed || undefined };
|
|
204
|
+
}
|
|
205
|
+
export async function listRepos(ctx, options) {
|
|
206
|
+
const page = Math.max(1, options.page ?? 1);
|
|
207
|
+
if (isIssuesHostIntegrationId(options.providerId)) {
|
|
208
|
+
return refusedPage(page, [gitHostOnlySurfaceWarning(options.providerId, undefined, options.connectionId, 'repository discovery')], true);
|
|
209
|
+
}
|
|
210
|
+
const integration = await ctx.getIntegrationForRead(options.providerId, options.connectionId, options.domain);
|
|
211
|
+
if (integration == null) {
|
|
212
|
+
// A supplied connection or domain that no longer resolves is a broken target, not an empty account —
|
|
213
|
+
// surface a no-connection warning + fetchFailed rather than a silent empty page.
|
|
214
|
+
const early = ctx.earlyReturnConnectionWarnings(options.providerId, options.connectionId, options.domain);
|
|
215
|
+
return refusedPage(page, early.warnings, early.fetchFailed);
|
|
216
|
+
}
|
|
217
|
+
if (!isGitHostIntegration(integration)) {
|
|
218
|
+
return refusedPage(page, [gitHostOnlySurfaceWarning(options.providerId, undefined, options.connectionId, 'repository discovery')], true);
|
|
219
|
+
}
|
|
220
|
+
const domain = ctx.domainForRead(integration, options.providerId, options.connectionId, options.domain);
|
|
221
|
+
const accountWide = options.org == null;
|
|
222
|
+
const supported = accountWide
|
|
223
|
+
? integration.supportsUserRepositoryDiscovery
|
|
224
|
+
: integration.supportsRepositoryDiscovery;
|
|
225
|
+
if (!supported) {
|
|
226
|
+
// No matching repo-discovery hook — org-scoped (e.g. Bitbucket Data Center) or account-wide (e.g.
|
|
227
|
+
// Bitbucket/Azure, whose repos can only be walked per workspace/org). Report unsupported rather than
|
|
228
|
+
// a silent empty page indistinguishable from "no repos"; for the account-wide case the caller should
|
|
229
|
+
// fan out per org from listOrgs instead.
|
|
230
|
+
return refusedPage(page, [
|
|
231
|
+
otherWarning(options.providerId, domain, options.connectionId, accountWide
|
|
232
|
+
? `Account-wide repository discovery is not supported by '${options.providerId}'; list repositories per org instead.`
|
|
233
|
+
: `Repository discovery is not supported by '${options.providerId}'.`),
|
|
234
|
+
], true);
|
|
235
|
+
}
|
|
236
|
+
const org = options.org;
|
|
237
|
+
const cursor = options.cursor ?? pageToCursor(page);
|
|
238
|
+
const { value, warning } = await runCaptured(options.providerId, domain, options.connectionId, () => org == null
|
|
239
|
+
? integration.getRepositoriesForUserResult({
|
|
240
|
+
cursor: cursor,
|
|
241
|
+
connectionId: options.connectionId,
|
|
242
|
+
})
|
|
243
|
+
: integration.getRepositoriesForOrgResult(org, {
|
|
244
|
+
project: options.project,
|
|
245
|
+
cursor: cursor,
|
|
246
|
+
connectionId: options.connectionId,
|
|
247
|
+
}), { warnOnMissingSession: warnOnMissingSessionForDomain(options.providerId, options.domain) });
|
|
248
|
+
const items = value?.values ?? [];
|
|
249
|
+
const warnings = warning != null ? [warning] : [];
|
|
250
|
+
// The repos read core is cursor-only and can't accept a page size, so don't echo the requested
|
|
251
|
+
// `itemsPerPage` as if it were applied — report what the provider returned (its own pageSize when
|
|
252
|
+
// available, else the actual item count).
|
|
253
|
+
const paged = toProviderPageInfo(items.length, value?.paging);
|
|
254
|
+
// Convert the SDK collection metadata into scope-aware warnings + failure/truncation flags, appending
|
|
255
|
+
// them to any captured thrown-error warning without discarding the partial result's items.
|
|
256
|
+
const assessment = mergeAssessmentInto(warnings, options.providerId, domain, options.connectionId, value?.metadata);
|
|
257
|
+
// Whether this read honors a page NUMBER, decided from what the provider actually reported rather than
|
|
258
|
+
// guessed from the absence of a cursor. A numbered-page repos host reports its position (`paging.page`)
|
|
259
|
+
// and/or its successor (`paging.nextPage`) — Bitbucket's workspace walk consumes `page` as a real 1-based
|
|
260
|
+
// page and reports `nextPage` without echoing `currentPage`, so both signals have to count. Every wired
|
|
261
|
+
// cursor-based repos read (GitHub's org/user walks, GitLab's user walk, Bitbucket's cursor read) reports
|
|
262
|
+
// neither. Keying off `paged.cursor == null` instead read the paging layer's "reported another page,
|
|
263
|
+
// handed back no continuation" sentinel as evidence of a numbered host, which is exactly backwards.
|
|
264
|
+
const pageAdvanceable = value?.paging?.page != null || value?.paging?.nextPage != null;
|
|
265
|
+
// Numbered-page hosts that don't echo `currentPage` may still be advanced by the requested `page` (initial
|
|
266
|
+
// read) or by the cursor the caller threaded back. A cursor-only host ignores an UNTHREADED `page`
|
|
267
|
+
// request, so its page-less first page is page 1.
|
|
268
|
+
const currentPage = resolveCurrentPage({
|
|
269
|
+
providerPage: paged.page.currentPage,
|
|
270
|
+
requestedPage: page,
|
|
271
|
+
suppliedCursor: options.cursor,
|
|
272
|
+
pageAdvanceable: pageAdvanceable,
|
|
273
|
+
});
|
|
274
|
+
// Never advertise `hasMore` without a continuation the caller can act on — the same contract
|
|
275
|
+
// `listPullRequestsPage`, `listIssuesPage` and `broadenIssues` hold, via the same helper. A provider that
|
|
276
|
+
// reports another page but hands back neither `endCursor` nor `nextPage` (surfaced as the `'{}'` sentinel,
|
|
277
|
+
// which `toProviderPageInfo` drops) is terminal-but-incomplete: `hasMore: false` + `page.truncated`.
|
|
278
|
+
// Synthesizing a page-number cursor for a cursor-only host instead — which is what this read used to do
|
|
279
|
+
// unconditionally — handed back a continuation the provider ignores, so it answered with its FIRST page
|
|
280
|
+
// again while still reporting `hasMore: true`. A consumer draining until `hasMore` clears (Kepler's repo
|
|
281
|
+
// drain does exactly that) then looped to its own page cap, accumulating a duplicate copy of every repo
|
|
282
|
+
// per round, and never saw a truncation signal.
|
|
283
|
+
const continuation = resolveContinuation(paged, pageAdvanceable ? currentPage + 1 : undefined);
|
|
284
|
+
// The org-hierarchy read can also stop at a defensive backstop with more repos unlisted and no cursor to
|
|
285
|
+
// resume (top-level `truncated`, or `paging.truncated` on a single-page read). Metadata incompleteness and
|
|
286
|
+
// a demoted continuation are two further, independent sources of the same signal.
|
|
287
|
+
const truncated = (value?.truncated ?? false) ||
|
|
288
|
+
(value?.paging?.truncated ?? false) ||
|
|
289
|
+
assessment.truncated ||
|
|
290
|
+
continuation.truncated;
|
|
291
|
+
const result = {
|
|
292
|
+
// Normalize the raw provider-apis repos to the GitLens-owned shape at the surface boundary.
|
|
293
|
+
items: items.map(toProviderRepositoryShape),
|
|
294
|
+
warnings: warnings,
|
|
295
|
+
page: { ...paged.page, currentPage: currentPage, truncated: truncated || undefined },
|
|
296
|
+
hasMore: continuation.hasMore,
|
|
297
|
+
cursor: continuation.cursor,
|
|
298
|
+
fetchFailed: assessment.fetchFailed || (warning != null && value == null) || undefined,
|
|
299
|
+
};
|
|
300
|
+
// A cursor-only host ignores the synthesized page cursor above and returns page 1. Detect that from
|
|
301
|
+
// the provider's own paging metadata, then advance through its real continuations. Numbered hosts
|
|
302
|
+
// keep their one-request path because `pageAdvanceable` is true.
|
|
303
|
+
if (options.cursor == null && page > 1 && !pageAdvanceable) {
|
|
304
|
+
const traversalWarnings = [...result.warnings];
|
|
305
|
+
let traversalFetchFailed = result.fetchFailed === true;
|
|
306
|
+
let traversalTruncated = result.page.truncated === true;
|
|
307
|
+
let previous = result;
|
|
308
|
+
for (let currentPage = 2; currentPage <= page; currentPage++) {
|
|
309
|
+
if (!previous.hasMore || previous.cursor == null) {
|
|
310
|
+
return {
|
|
311
|
+
items: [],
|
|
312
|
+
warnings: traversalWarnings,
|
|
313
|
+
page: {
|
|
314
|
+
currentPage: page,
|
|
315
|
+
itemsPerPage: 0,
|
|
316
|
+
truncated: traversalTruncated || undefined,
|
|
317
|
+
},
|
|
318
|
+
hasMore: false,
|
|
319
|
+
fetchFailed: traversalFetchFailed || undefined,
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
const requested = await listRepos(ctx, {
|
|
323
|
+
...options,
|
|
324
|
+
page: currentPage,
|
|
325
|
+
cursor: previous.cursor,
|
|
326
|
+
});
|
|
327
|
+
for (const traversalWarning of requested.warnings) {
|
|
328
|
+
appendDedupedWarning(traversalWarnings, traversalWarning);
|
|
329
|
+
}
|
|
330
|
+
traversalFetchFailed ||= requested.fetchFailed === true;
|
|
331
|
+
traversalTruncated ||= requested.page.truncated === true;
|
|
332
|
+
if (currentPage === page) {
|
|
333
|
+
return {
|
|
334
|
+
...requested,
|
|
335
|
+
warnings: traversalWarnings,
|
|
336
|
+
page: {
|
|
337
|
+
...requested.page,
|
|
338
|
+
truncated: traversalTruncated || undefined,
|
|
339
|
+
},
|
|
340
|
+
fetchFailed: traversalFetchFailed || undefined,
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
previous = requested;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
return result;
|
|
347
|
+
}
|
|
348
|
+
//# sourceMappingURL=hierarchy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hierarchy.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { ResourceDescriptor } from '../../../git/models/resourceDescriptor.js';
|
|
2
|
+
import type { IntegrationIds } from '../constants.js';
|
|
3
|
+
import type { ProviderOrganization } from '../results.js';
|
|
4
|
+
/**
|
|
5
|
+
* Mapping of a provider's own hierarchy vocabulary onto the single {@link ProviderOrganization} shape the facade
|
|
6
|
+
* publishes.
|
|
7
|
+
*
|
|
8
|
+
* Providers disagree about what sits above a repo or an issue: git hosts have orgs (and Azure DevOps a project
|
|
9
|
+
* tier below that), while issue trackers have "resources" (Jira sites, Linear orgs, Trello workspaces) with
|
|
10
|
+
* projects beneath them. `listOrgs`/`listProjects` unify all of it, so these helpers exist to keep the
|
|
11
|
+
* per-provider shape-guessing — which field is the id, which is the display label, which resource is a
|
|
12
|
+
* project's parent — in one place instead of inline in those reads.
|
|
13
|
+
*
|
|
14
|
+
* Everything here reads through the base {@link ResourceDescriptor} (which only guarantees `key`) and casts to
|
|
15
|
+
* the concrete {@link IssueResourceDescriptor} for the optional `id`/`name`. That cast is why the fallbacks are
|
|
16
|
+
* spelled out rather than assumed.
|
|
17
|
+
*/
|
|
18
|
+
/** The label to show for a resource: its name, else its id, else the key that is always present. */
|
|
19
|
+
export declare function resourceLabel(resource: ResourceDescriptor): string;
|
|
20
|
+
/** Whether `org` addresses this resource by any of the identifiers a caller could reasonably have. */
|
|
21
|
+
export declare function resourceMatchesOrg(resource: ResourceDescriptor, org: string): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Maps an issue-tracker resource descriptor to the unified {@link ProviderOrganization} org shape. `url` is
|
|
24
|
+
* synthesized when the descriptor carries none, rather than widening the shared `ProviderOrganization.url` to
|
|
25
|
+
* optional for the one provider family that may omit it.
|
|
26
|
+
*/
|
|
27
|
+
export declare function resourceToOrg(providerId: IntegrationIds, resource: ResourceDescriptor, org?: string): ProviderOrganization;
|
|
28
|
+
/**
|
|
29
|
+
* The resource a project belongs under, as a display label — the `org` of the project's unified org shape.
|
|
30
|
+
*
|
|
31
|
+
* A project doesn't reliably name its parent, so try each identifier it does carry against the resources that
|
|
32
|
+
* were read alongside it. When none matches but only ONE resource was in scope, that resource is the parent by
|
|
33
|
+
* construction. Trello is excluded: its boards have no enclosing resource to name.
|
|
34
|
+
*/
|
|
35
|
+
export declare function orgForProject(providerId: IntegrationIds, project: ResourceDescriptor, resources: ResourceDescriptor[]): string | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Stamps the provider onto an org the provider's own client produced. A git host's client fills the rest of the
|
|
38
|
+
* shape but doesn't know which integration id it was reached through — and on a self-managed host the same
|
|
39
|
+
* client serves several — so the fan-out attributes it here.
|
|
40
|
+
*/
|
|
41
|
+
export declare function withProviderContext(providerId: IntegrationIds, item: ProviderOrganization): ProviderOrganization;
|
|
42
|
+
/**
|
|
43
|
+
* Rejects a hierarchy read whose scoped selectors have no provider to apply to. `connectionId` and `domain`
|
|
44
|
+
* both select among the connections OF a provider, so either one without `providerId` is ambiguous rather than
|
|
45
|
+
* merely redundant — the fan-out would have to guess which provider the caller meant, and silently picking one
|
|
46
|
+
* would read that connection's data under another provider's name.
|
|
47
|
+
*/
|
|
48
|
+
export declare function assertHierarchyReadTarget(method: 'listOrgs' | 'listProjects', options: {
|
|
49
|
+
providerId?: IntegrationIds;
|
|
50
|
+
connectionId?: string;
|
|
51
|
+
domain?: string;
|
|
52
|
+
} | undefined): void;
|
|
53
|
+
//# sourceMappingURL=hierarchy.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hierarchy.utils.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAE7G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE1D;;;;;;;;;;;;;GAaG;AAEH,oGAAoG;AACpG,wBAAgB,aAAa,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,CAGlE;AAED,sGAAsG;AACtG,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAGrF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,kBAAkB,EAC5B,GAAG,CAAC,EAAE,MAAM,GACV,oBAAoB,CAStB;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC5B,UAAU,EAAE,cAAc,EAC1B,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,kBAAkB,EAAE,GAC7B,MAAM,GAAG,SAAS,CAcpB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,oBAAoB,GAAG,oBAAoB,CAMhH;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACxC,MAAM,EAAE,UAAU,GAAG,cAAc,EACnC,OAAO,EAAE;IAAE,UAAU,CAAC,EAAE,cAAc,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,GAC1F,IAAI,CAIN"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { IssuesCloudHostIntegrationId } from '../constants.js';
|
|
2
|
+
/**
|
|
3
|
+
* Mapping of a provider's own hierarchy vocabulary onto the single {@link ProviderOrganization} shape the facade
|
|
4
|
+
* publishes.
|
|
5
|
+
*
|
|
6
|
+
* Providers disagree about what sits above a repo or an issue: git hosts have orgs (and Azure DevOps a project
|
|
7
|
+
* tier below that), while issue trackers have "resources" (Jira sites, Linear orgs, Trello workspaces) with
|
|
8
|
+
* projects beneath them. `listOrgs`/`listProjects` unify all of it, so these helpers exist to keep the
|
|
9
|
+
* per-provider shape-guessing — which field is the id, which is the display label, which resource is a
|
|
10
|
+
* project's parent — in one place instead of inline in those reads.
|
|
11
|
+
*
|
|
12
|
+
* Everything here reads through the base {@link ResourceDescriptor} (which only guarantees `key`) and casts to
|
|
13
|
+
* the concrete {@link IssueResourceDescriptor} for the optional `id`/`name`. That cast is why the fallbacks are
|
|
14
|
+
* spelled out rather than assumed.
|
|
15
|
+
*/
|
|
16
|
+
/** The label to show for a resource: its name, else its id, else the key that is always present. */
|
|
17
|
+
export function resourceLabel(resource) {
|
|
18
|
+
const typed = resource;
|
|
19
|
+
return typed.name ?? typed.id ?? resource.key;
|
|
20
|
+
}
|
|
21
|
+
/** Whether `org` addresses this resource by any of the identifiers a caller could reasonably have. */
|
|
22
|
+
export function resourceMatchesOrg(resource, org) {
|
|
23
|
+
const typed = resource;
|
|
24
|
+
return resource.key === org || typed.id === org || typed.name === org;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Maps an issue-tracker resource descriptor to the unified {@link ProviderOrganization} org shape. `url` is
|
|
28
|
+
* synthesized when the descriptor carries none, rather than widening the shared `ProviderOrganization.url` to
|
|
29
|
+
* optional for the one provider family that may omit it.
|
|
30
|
+
*/
|
|
31
|
+
export function resourceToOrg(providerId, resource, org) {
|
|
32
|
+
const typed = resource;
|
|
33
|
+
return {
|
|
34
|
+
id: typed.id ?? resource.key,
|
|
35
|
+
providerId: providerId,
|
|
36
|
+
name: resourceLabel(resource),
|
|
37
|
+
...(org != null ? { org: org } : {}),
|
|
38
|
+
url: typed.url ?? '',
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The resource a project belongs under, as a display label — the `org` of the project's unified org shape.
|
|
43
|
+
*
|
|
44
|
+
* A project doesn't reliably name its parent, so try each identifier it does carry against the resources that
|
|
45
|
+
* were read alongside it. When none matches but only ONE resource was in scope, that resource is the parent by
|
|
46
|
+
* construction. Trello is excluded: its boards have no enclosing resource to name.
|
|
47
|
+
*/
|
|
48
|
+
export function orgForProject(providerId, project, resources) {
|
|
49
|
+
if (providerId === IssuesCloudHostIntegrationId.Trello)
|
|
50
|
+
return undefined;
|
|
51
|
+
const typedProject = project;
|
|
52
|
+
const parentMatch = [typedProject.resourceId, typedProject.id, project.key]
|
|
53
|
+
.filter((value) => value != null)
|
|
54
|
+
.map(candidate => resources.find(resource => resourceMatchesOrg(resource, candidate)))
|
|
55
|
+
.find((resource) => resource != null);
|
|
56
|
+
return parentMatch != null
|
|
57
|
+
? resourceLabel(parentMatch)
|
|
58
|
+
: resources.length === 1
|
|
59
|
+
? resourceLabel(resources[0])
|
|
60
|
+
: undefined;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Stamps the provider onto an org the provider's own client produced. A git host's client fills the rest of the
|
|
64
|
+
* shape but doesn't know which integration id it was reached through — and on a self-managed host the same
|
|
65
|
+
* client serves several — so the fan-out attributes it here.
|
|
66
|
+
*/
|
|
67
|
+
export function withProviderContext(providerId, item) {
|
|
68
|
+
return {
|
|
69
|
+
...item,
|
|
70
|
+
providerId: providerId,
|
|
71
|
+
...(item.org != null ? { org: item.org } : {}),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Rejects a hierarchy read whose scoped selectors have no provider to apply to. `connectionId` and `domain`
|
|
76
|
+
* both select among the connections OF a provider, so either one without `providerId` is ambiguous rather than
|
|
77
|
+
* merely redundant — the fan-out would have to guess which provider the caller meant, and silently picking one
|
|
78
|
+
* would read that connection's data under another provider's name.
|
|
79
|
+
*/
|
|
80
|
+
export function assertHierarchyReadTarget(method, options) {
|
|
81
|
+
if (options?.providerId == null && (options?.connectionId != null || options?.domain != null)) {
|
|
82
|
+
throw new TypeError(`'${method}' requires 'providerId' when 'connectionId' or 'domain' is supplied`);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=hierarchy.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hierarchy.utils.js","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/hierarchy.utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAI/D;;;;;;;;;;;;;GAaG;AAEH,oGAAoG;AACpG,MAAM,UAAU,aAAa,CAAC,QAA4B;IACzD,MAAM,KAAK,GAAG,QAAmC,CAAC;IAClD,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,GAAG,CAAC;AAC/C,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,kBAAkB,CAAC,QAA4B,EAAE,GAAW;IAC3E,MAAM,KAAK,GAAG,QAAmC,CAAC;IAClD,OAAO,QAAQ,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC5B,UAA0B,EAC1B,QAA4B,EAC5B,GAAY;IAEZ,MAAM,KAAK,GAAG,QAAsD,CAAC;IACrE,OAAO;QACN,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,GAAG;QAC5B,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC;QAC7B,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,EAAE;KACpB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC5B,UAA0B,EAC1B,OAA2B,EAC3B,SAA+B;IAE/B,IAAI,UAAU,KAAK,4BAA4B,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAEzE,MAAM,YAAY,GAAG,OAA4D,CAAC;IAClF,MAAM,WAAW,GAAG,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC;SACzE,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC;SACjD,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,kBAAkB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;SACrF,IAAI,CAAC,CAAC,QAAQ,EAAkC,EAAE,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;IAEvE,OAAO,WAAW,IAAI,IAAI;QACzB,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC;QAC5B,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YACvB,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC,CAAC,SAAS,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAA0B,EAAE,IAA0B;IACzF,OAAO;QACN,GAAG,IAAI;QACP,UAAU,EAAE,UAAU;QACtB,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACxC,MAAmC,EACnC,OAA4F;IAE5F,IAAI,OAAO,EAAE,UAAU,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,IAAI,IAAI,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QAC/F,MAAM,IAAI,SAAS,CAAC,IAAI,MAAM,qEAAqE,CAAC,CAAC;IACtG,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IssueShape } from '../../../git/models/issue.js';
|
|
2
|
+
import { type IntegrationIds } from '../constants.js';
|
|
3
|
+
import { IssueFilter } from '../providers/models.js';
|
|
4
|
+
import type { ProviderPagedResult } from '../results.js';
|
|
5
|
+
import type { ProviderReadContext } from './context.js';
|
|
6
|
+
export declare function listIssueTrackerIssuesPage(ctx: ProviderReadContext, options: {
|
|
7
|
+
providerId: IntegrationIds;
|
|
8
|
+
org?: string;
|
|
9
|
+
project?: string;
|
|
10
|
+
filters?: IssueFilter[];
|
|
11
|
+
/** Broadens the read to every assignee. Scopes to user-assigned issues when omitted. */
|
|
12
|
+
includeAllAssignees?: boolean;
|
|
13
|
+
forceSync?: boolean;
|
|
14
|
+
page?: number;
|
|
15
|
+
cursor?: string;
|
|
16
|
+
itemsPerPage?: number;
|
|
17
|
+
connectionId?: string;
|
|
18
|
+
}): Promise<ProviderPagedResult<IssueShape>>;
|
|
19
|
+
//# sourceMappingURL=issueTracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"issueTracker.d.ts","sourceRoot":"","sources":["../../../../src/plus/integrations/reads/issueTracker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI/D,OAAO,EAA6B,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAqB,MAAM,wBAAwB,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,eAAe,CAAC;AAE1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAMxD,wBAAsB,0BAA0B,CAC/C,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE;IACR,UAAU,EAAE,cAAc,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,wFAAwF;IACxF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,GACC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CA+b1C"}
|