@gitkraken/core-gitlens 0.4.0 → 0.4.101
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 +74 -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 +135 -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 +297 -13
- package/dist/plus/integrations/integrationService.d.ts.map +1 -1
- package/dist/plus/integrations/integrationService.js +672 -36
- 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 +262 -10
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/gitHostIntegration.js +675 -101
- 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 +70 -7
- package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -1
- package/dist/plus/integrations/models/issuesIntegration.js +108 -35
- 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/broaden.d.ts +20 -0
- package/dist/plus/integrations/reads/broaden.d.ts.map +1 -0
- package/dist/plus/integrations/reads/broaden.js +326 -0
- package/dist/plus/integrations/reads/broaden.js.map +1 -0
- package/dist/plus/integrations/reads/context.d.ts +74 -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 +320 -0
- package/dist/plus/integrations/reads/hierarchy.js.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.utils.d.ts +77 -0
- package/dist/plus/integrations/reads/hierarchy.utils.d.ts.map +1 -0
- package/dist/plus/integrations/reads/hierarchy.utils.js +128 -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 +334 -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/resolveRepository.d.ts +25 -0
- package/dist/plus/integrations/reads/resolveRepository.d.ts.map +1 -0
- package/dist/plus/integrations/reads/resolveRepository.js +235 -0
- package/dist/plus/integrations/reads/resolveRepository.js.map +1 -0
- package/dist/plus/integrations/reads/sweeps.d.ts +11 -0
- package/dist/plus/integrations/reads/sweeps.d.ts.map +1 -0
- package/dist/plus/integrations/reads/sweeps.js +125 -0
- package/dist/plus/integrations/reads/sweeps.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 +153 -0
- package/src/plus/integrations/index.ts +148 -51
- package/src/plus/integrations/integrationService.ts +940 -49
- package/src/plus/integrations/lite.ts +233 -0
- package/src/plus/integrations/manager.ts +359 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +1005 -134
- package/src/plus/integrations/models/integration.ts +293 -24
- package/src/plus/integrations/models/issuesIntegration.ts +132 -39
- 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/broaden.ts +452 -0
- package/src/plus/integrations/reads/context.ts +99 -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 +473 -0
- package/src/plus/integrations/reads/hierarchy.utils.ts +155 -0
- package/src/plus/integrations/reads/issueTracker.ts +468 -0
- package/src/plus/integrations/reads/issues.ts +409 -0
- package/src/plus/integrations/reads/paging.ts +277 -0
- package/src/plus/integrations/reads/pullRequests.ts +260 -0
- package/src/plus/integrations/reads/resolveRepository.ts +272 -0
- package/src/plus/integrations/reads/sweeps.ts +185 -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
|
@@ -7,20 +7,11 @@ import {
|
|
|
7
7
|
} from '../constants.js';
|
|
8
8
|
import type { GitHostIntegration } from '../models/gitHostIntegration.js';
|
|
9
9
|
import type { Integration, IntegrationConnectedKey } from '../models/integration.js';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
|
|
15
|
-
// `providers/models.ts` is still loading triggers a TDZ on `providersMetadata`.
|
|
16
|
-
const azureCloudDomainRegex = /^dev\.azure\.com$|\bvisualstudio\.com$/i;
|
|
17
|
-
const bitbucketCloudDomainRegex = /^bitbucket\.org$/i;
|
|
18
|
-
function isAzureCloudDomain(domain: string | undefined): boolean {
|
|
19
|
-
return domain != null && azureCloudDomainRegex.test(domain);
|
|
20
|
-
}
|
|
21
|
-
function isBitbucketCloudDomain(domain: string | undefined): boolean {
|
|
22
|
-
return domain != null && bitbucketCloudDomainRegex.test(domain);
|
|
23
|
-
}
|
|
10
|
+
// These domain checks come from `providers/models.ts` (already imported here) rather than the individual
|
|
11
|
+
// provider modules: those read `providersMetadata[...]` synchronously at module init, so importing from them
|
|
12
|
+
// while `providers/models.ts` is still loading triggers a TDZ on `providersMetadata`. Importing the shared
|
|
13
|
+
// predicates keeps one definition of each regex — duplicating them let a fix land in only one place.
|
|
14
|
+
import { isAzureCloudDomain, isBitbucketCloudDomain, isGitHubDotCom, isGitLabDotCom } from '../providers/models.js';
|
|
24
15
|
|
|
25
16
|
const selfHostedIntegrationIds: GitSelfManagedHostIntegrationId[] = [
|
|
26
17
|
GitSelfManagedHostIntegrationId.CloudGitHubEnterprise,
|
|
@@ -35,8 +26,7 @@ export const supportedIntegrationIds: IntegrationIds[] = [
|
|
|
35
26
|
GitCloudHostIntegrationId.Bitbucket,
|
|
36
27
|
GitCloudHostIntegrationId.AzureDevOps,
|
|
37
28
|
IssuesCloudHostIntegrationId.Jira,
|
|
38
|
-
|
|
39
|
-
// would make reset()'s ensureProvider() throw 'No authentication provider registered'.
|
|
29
|
+
IssuesCloudHostIntegrationId.Trello,
|
|
40
30
|
...selfHostedIntegrationIds,
|
|
41
31
|
] as const;
|
|
42
32
|
|
|
@@ -117,6 +107,20 @@ export function isCloudGitSelfManagedHostIntegrationId(
|
|
|
117
107
|
}
|
|
118
108
|
}
|
|
119
109
|
|
|
110
|
+
/**
|
|
111
|
+
* Whether a provider's cloud token uses `expiresIn: 0` to mean "never expires" (rather than "already
|
|
112
|
+
* expired"). GitHub and the cloud self-managed hosts always return 0 for their non-expiring tokens; Trello
|
|
113
|
+
* is issued with `expiration: never` (identity-service), so its cloud token comes back as 0 too. Callers
|
|
114
|
+
* must map 0 → a far-future expiry for these, or the session is immediately treated as expired.
|
|
115
|
+
*/
|
|
116
|
+
export function isNonExpiringZeroTokenIntegrationId(id: IntegrationIds): boolean {
|
|
117
|
+
return (
|
|
118
|
+
id === GitCloudHostIntegrationId.GitHub ||
|
|
119
|
+
id === IssuesCloudHostIntegrationId.Trello ||
|
|
120
|
+
isCloudGitSelfManagedHostIntegrationId(id)
|
|
121
|
+
);
|
|
122
|
+
}
|
|
123
|
+
|
|
120
124
|
export function isGitHostIntegration(integration: Integration): integration is GitHostIntegration {
|
|
121
125
|
return integration.type === 'git';
|
|
122
126
|
}
|
|
@@ -136,3 +140,76 @@ export function isGitCloudHostIntegrationId(id: IntegrationIds): id is GitCloudH
|
|
|
136
140
|
export function isGitSelfManagedHostIntegrationId(id: IntegrationIds): id is GitSelfManagedHostIntegrationId {
|
|
137
141
|
return selfHostedIntegrationIds.includes(id as GitSelfManagedHostIntegrationId);
|
|
138
142
|
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Whether this id belongs to a dedicated issue tracker (resource → project) rather than a git host.
|
|
146
|
+
*
|
|
147
|
+
* Decided from the id alone, so a read can refuse a mismatched surface — a repo/PR read asked of Jira, or an
|
|
148
|
+
* issue-tracker project read asked of GitHub — before resolving a connection. The instance-level
|
|
149
|
+
* {@link isIssuesIntegration} answers the same question once an integration is in hand.
|
|
150
|
+
*/
|
|
151
|
+
export function isIssuesHostIntegrationId(id: IntegrationIds): id is IssuesCloudHostIntegrationId {
|
|
152
|
+
switch (id) {
|
|
153
|
+
case IssuesCloudHostIntegrationId.Jira:
|
|
154
|
+
case IssuesCloudHostIntegrationId.Linear:
|
|
155
|
+
case IssuesCloudHostIntegrationId.Trello:
|
|
156
|
+
return true;
|
|
157
|
+
default:
|
|
158
|
+
return false;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Whether a read targeted only by an explicit self-managed `domain` (no `connectionId`) must treat a
|
|
164
|
+
* session-less core result as a broken target instead of an empty account. Without this, a self-managed host
|
|
165
|
+
* addressed only by domain — the manual-token/external-auth case `domain` exists to cover — returns an empty
|
|
166
|
+
* success with no warning and no `fetchFailed`, indistinguishable from "this host has nothing".
|
|
167
|
+
*/
|
|
168
|
+
export function warnOnMissingSessionForDomain(id: IntegrationIds, domain: string | undefined): boolean {
|
|
169
|
+
return domain != null && isGitSelfManagedHostIntegrationId(id);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/** Maps an integration id to the git-remote provider type used by the remote-URL matcher. */
|
|
173
|
+
export function remoteProviderTypeForIntegration(id: IntegrationIds): RemoteProviderId | undefined {
|
|
174
|
+
switch (id) {
|
|
175
|
+
case GitCloudHostIntegrationId.GitHub:
|
|
176
|
+
case GitSelfManagedHostIntegrationId.CloudGitHubEnterprise:
|
|
177
|
+
return 'github';
|
|
178
|
+
case GitCloudHostIntegrationId.GitLab:
|
|
179
|
+
case GitSelfManagedHostIntegrationId.CloudGitLabSelfHosted:
|
|
180
|
+
return 'gitlab';
|
|
181
|
+
case GitCloudHostIntegrationId.Bitbucket:
|
|
182
|
+
return 'bitbucket';
|
|
183
|
+
case GitSelfManagedHostIntegrationId.BitbucketServer:
|
|
184
|
+
return 'bitbucket-server';
|
|
185
|
+
case GitCloudHostIntegrationId.AzureDevOps:
|
|
186
|
+
case GitSelfManagedHostIntegrationId.AzureDevOpsServer:
|
|
187
|
+
return 'azure-devops';
|
|
188
|
+
default:
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
/** Normalizes a host remote-config `type` string (e.g. `'GitHub'`) to a git-remote provider type. */
|
|
194
|
+
export function remoteProviderTypeForConfig(type: string): RemoteProviderId | undefined {
|
|
195
|
+
switch (type.toLowerCase()) {
|
|
196
|
+
case 'github':
|
|
197
|
+
return 'github';
|
|
198
|
+
case 'gitlab':
|
|
199
|
+
return 'gitlab';
|
|
200
|
+
case 'bitbucket':
|
|
201
|
+
return 'bitbucket';
|
|
202
|
+
case 'bitbucket-server':
|
|
203
|
+
case 'bitbucketserver':
|
|
204
|
+
return 'bitbucket-server';
|
|
205
|
+
case 'azuredevops':
|
|
206
|
+
case 'azure-devops':
|
|
207
|
+
return 'azure-devops';
|
|
208
|
+
case 'gitea':
|
|
209
|
+
return 'gitea';
|
|
210
|
+
case 'gerrit':
|
|
211
|
+
return 'gerrit';
|
|
212
|
+
default:
|
|
213
|
+
return undefined;
|
|
214
|
+
}
|
|
215
|
+
}
|
package/src/utils/brand.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
2
1
|
declare const __brand: unique symbol;
|
|
3
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
4
2
|
declare const __base: unique symbol;
|
|
5
3
|
|
|
6
4
|
type _Brand<Base, B> = { [__brand]: B; [__base]: Base };
|
|
@@ -59,6 +59,40 @@ export function raceWithSignal<T>(promise: Promise<T>, signal: AbortSignal): Pro
|
|
|
59
59
|
});
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
+
/**
|
|
63
|
+
* Races a promise against a timeout. If `ms` elapses before the promise settles, the returned promise
|
|
64
|
+
* rejects with `CancellationError`. If the promise settles first, the timer is cleared. Parallels
|
|
65
|
+
* `raceWithSignal`, with a timer standing in for the signal.
|
|
66
|
+
*
|
|
67
|
+
* When `abortOnTimeout` is provided, it is aborted on timeout — so a caller can link the underlying operation to
|
|
68
|
+
* it (e.g. via `AbortSignal.any`) and have it torn down instead of orphaned. Abort is best-effort (a truly-stuck
|
|
69
|
+
* op may ignore it); the returned promise rejects on timeout regardless of whether the underlying op settles.
|
|
70
|
+
*/
|
|
71
|
+
export function raceWithTimeout<T>(promise: Promise<T>, ms: number, abortOnTimeout?: AbortController): Promise<T> {
|
|
72
|
+
return new Promise<T>((resolve, reject) => {
|
|
73
|
+
const timer = setTimeout(() => {
|
|
74
|
+
const error = new CancellationError(new Error(`Timed out after ${ms}ms`));
|
|
75
|
+
abortOnTimeout?.abort(error);
|
|
76
|
+
reject(error);
|
|
77
|
+
}, ms);
|
|
78
|
+
// Don't let the timeout timer keep a (Node) process alive on its own — a still-pending promise shouldn't
|
|
79
|
+
// hold the event loop open just for its backstop (no-op in the browser, where setTimeout returns a number).
|
|
80
|
+
if (typeof timer !== 'number') {
|
|
81
|
+
timer.unref();
|
|
82
|
+
}
|
|
83
|
+
promise.then(
|
|
84
|
+
v => {
|
|
85
|
+
clearTimeout(timer);
|
|
86
|
+
resolve(v);
|
|
87
|
+
},
|
|
88
|
+
(e: unknown) => {
|
|
89
|
+
clearTimeout(timer);
|
|
90
|
+
reject(e instanceof Error ? e : new Error(String(e)));
|
|
91
|
+
},
|
|
92
|
+
);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
|
|
62
96
|
/**
|
|
63
97
|
* Aggregates multiple caller `AbortSignal`s into a single signal that
|
|
64
98
|
* only fires when **all** callers have cancelled (the inverse of `AbortSignal.any()`).
|
|
@@ -71,7 +105,8 @@ export function raceWithSignal<T>(promise: Promise<T>, signal: AbortSignal): Pro
|
|
|
71
105
|
export class AbortAggregate {
|
|
72
106
|
private readonly controller = new AbortController();
|
|
73
107
|
private activeCount = 0;
|
|
74
|
-
|
|
108
|
+
/** One listener-remover per registration (NOT keyed by signal), so adding the same signal twice is safe. */
|
|
109
|
+
private readonly cleanups = new Set<() => void>();
|
|
75
110
|
|
|
76
111
|
/** The aggregate signal — only fires when all callers have cancelled. */
|
|
77
112
|
get signal(): AbortSignal {
|
|
@@ -83,6 +118,8 @@ export class AbortAggregate {
|
|
|
83
118
|
* - If `cancellation` is provided, the caller is auto-removed when it fires.
|
|
84
119
|
* - If `cancellation` is `undefined`, the caller is "permanent" — the aggregate
|
|
85
120
|
* can never fire while it's active. Call the returned cleanup on promise settle.
|
|
121
|
+
* - The same signal instance may safely be added more than once — each registration is tracked and cleaned up
|
|
122
|
+
* independently, so no listener leaks.
|
|
86
123
|
* @returns A cleanup function to unregister the caller.
|
|
87
124
|
*/
|
|
88
125
|
add(cancellation?: AbortSignal): () => void {
|
|
@@ -101,17 +138,29 @@ export class AbortAggregate {
|
|
|
101
138
|
return () => {};
|
|
102
139
|
}
|
|
103
140
|
|
|
141
|
+
// Track this registration's listener removal individually (a Set of removers, NOT keyed by the signal) so
|
|
142
|
+
// adding the same signal twice can't overwrite the other's cleanup. `settled` keeps both exit paths (abort
|
|
143
|
+
// vs. manual cleanup) idempotent and preserves the accounting: only `onAbort` decrements `activeCount`.
|
|
144
|
+
let settled = false;
|
|
145
|
+
let remove: () => void;
|
|
104
146
|
const onAbort = () => {
|
|
105
|
-
|
|
147
|
+
if (settled) return;
|
|
148
|
+
|
|
149
|
+
settled = true;
|
|
150
|
+
this.cleanups.delete(remove);
|
|
106
151
|
this.activeCount--;
|
|
107
152
|
this.checkAbort();
|
|
108
153
|
};
|
|
154
|
+
remove = () => cancellation.removeEventListener('abort', onAbort);
|
|
109
155
|
cancellation.addEventListener('abort', onAbort, { once: true });
|
|
110
|
-
this.cleanups.
|
|
156
|
+
this.cleanups.add(remove);
|
|
111
157
|
|
|
112
158
|
return () => {
|
|
113
|
-
|
|
114
|
-
|
|
159
|
+
if (settled) return;
|
|
160
|
+
|
|
161
|
+
settled = true;
|
|
162
|
+
this.cleanups.delete(remove);
|
|
163
|
+
remove();
|
|
115
164
|
};
|
|
116
165
|
}
|
|
117
166
|
|
|
@@ -123,8 +172,8 @@ export class AbortAggregate {
|
|
|
123
172
|
|
|
124
173
|
/** Remove all abort listeners. Call when the cached promise settles. */
|
|
125
174
|
dispose(): void {
|
|
126
|
-
for (const
|
|
127
|
-
|
|
175
|
+
for (const remove of this.cleanups) {
|
|
176
|
+
remove();
|
|
128
177
|
}
|
|
129
178
|
this.cleanups.clear();
|
|
130
179
|
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/** Single-flight async runner with one trailing rerun: `run()` while a run is in flight joins the
|
|
2
|
+
* SAME promise and marks it dirty; when the run settles (resolve OR reject), one trailing `refire`
|
|
3
|
+
* fires so state that changed mid-run is re-processed. `refire` should re-enter the owner's calling
|
|
4
|
+
* method (which applies its own gates) — fire-and-forget. `markDirty()` forces the trailing refire
|
|
5
|
+
* (e.g. on a repo swap mid-run) without joining. */
|
|
6
|
+
export class CoalescedRun<T> {
|
|
7
|
+
private _dirty = false;
|
|
8
|
+
private _inflight: Promise<T> | undefined;
|
|
9
|
+
|
|
10
|
+
constructor(
|
|
11
|
+
private readonly fn: () => Promise<T>,
|
|
12
|
+
private readonly refire: () => void,
|
|
13
|
+
) {}
|
|
14
|
+
|
|
15
|
+
get running(): boolean {
|
|
16
|
+
return this._inflight != null;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
markDirty(): void {
|
|
20
|
+
if (this._inflight != null) {
|
|
21
|
+
this._dirty = true;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
run(): Promise<T> {
|
|
26
|
+
if (this._inflight != null) {
|
|
27
|
+
this._dirty = true;
|
|
28
|
+
return this._inflight;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// Defer `fn` to a microtask so `_inflight` is assigned BEFORE any of fn's code runs — a
|
|
32
|
+
// synchronous reentrant `run()` from fn's prologue then joins instead of double-running.
|
|
33
|
+
const promise = Promise.resolve()
|
|
34
|
+
.then(this.fn)
|
|
35
|
+
.finally(() => {
|
|
36
|
+
this._inflight = undefined;
|
|
37
|
+
if (this._dirty) {
|
|
38
|
+
this._dirty = false;
|
|
39
|
+
this.refire();
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
this._inflight = promise;
|
|
43
|
+
return promise;
|
|
44
|
+
}
|
|
45
|
+
}
|
package/src/utils/color.ts
CHANGED
|
@@ -344,15 +344,15 @@ export class Color {
|
|
|
344
344
|
static from(value: string | Color): Color {
|
|
345
345
|
if (value instanceof Color) return value;
|
|
346
346
|
|
|
347
|
-
return parseColor(value)
|
|
347
|
+
return parseColor(value) ?? Color.red;
|
|
348
348
|
}
|
|
349
349
|
|
|
350
350
|
static fromCssVariable(variable: string, css: { getPropertyValue(property: string): string }): Color {
|
|
351
|
-
return parseColor(getCssVariable(variable, css))
|
|
351
|
+
return parseColor(getCssVariable(variable, css)) ?? Color.red;
|
|
352
352
|
}
|
|
353
353
|
|
|
354
354
|
static fromHex(hex: string): Color {
|
|
355
|
-
return parseHexColor(hex)
|
|
355
|
+
return parseHexColor(hex) ?? Color.red;
|
|
356
356
|
}
|
|
357
357
|
|
|
358
358
|
static equals(a: Color | null, b: Color | null): boolean {
|
package/src/utils/date.ts
CHANGED
|
@@ -11,6 +11,15 @@ const relativeUnitThresholds: [Intl.RelativeTimeFormatUnit, number, number, stri
|
|
|
11
11
|
['minute', 60 * 1000, 60 * 1000, 'm'],
|
|
12
12
|
['second', 1000, 1000, 's'],
|
|
13
13
|
];
|
|
14
|
+
// Built ONCE from the table above (not per-call `.find()` scans, and not a Map — plain object property
|
|
15
|
+
// reads are monomorphic/faster than Map.get for this) — backs unitDivisorMs/unitThresholdMs below. Never
|
|
16
|
+
// touched on fromNow's own hot path (see the loop in fromNow itself).
|
|
17
|
+
const unitDivisors: Partial<Record<Intl.RelativeTimeFormatUnit, number>> = {};
|
|
18
|
+
const unitThresholds: Partial<Record<Intl.RelativeTimeFormatUnit, number>> = {};
|
|
19
|
+
for (const [unit, threshold, divisor] of relativeUnitThresholds) {
|
|
20
|
+
unitDivisors[unit] = divisor;
|
|
21
|
+
unitThresholds[unit] = threshold;
|
|
22
|
+
}
|
|
14
23
|
|
|
15
24
|
type DateStyle = 'full' | 'long' | 'medium' | 'short';
|
|
16
25
|
type TimeStyle = 'full' | 'long' | 'medium' | 'short';
|
|
@@ -78,6 +87,69 @@ export function createFromDateDelta(
|
|
|
78
87
|
return d;
|
|
79
88
|
}
|
|
80
89
|
|
|
90
|
+
/** The unit + truncated magnitude `fromNow` would pick for `date` relative to `now` — same threshold
|
|
91
|
+
* table + truncation `fromNow` formats with, factored out so a caller that needs to CLASSIFY a date
|
|
92
|
+
* (not just format it) can't drift from what the column actually displays. Allocation-free (no `Date`
|
|
93
|
+
* construction — both `date` and `now` are read as epoch ms when passed as numbers). `now` defaults to
|
|
94
|
+
* `Date.now()`; a caller classifying many rows against the SAME instant should pass it explicitly. */
|
|
95
|
+
export function fromNowUnit(
|
|
96
|
+
date: Date | number,
|
|
97
|
+
now: Date | number = Date.now(),
|
|
98
|
+
): { unit: Intl.RelativeTimeFormatUnit; value: number } | undefined {
|
|
99
|
+
const elapsed =
|
|
100
|
+
(typeof date === 'number' ? date : date.getTime()) - (typeof now === 'number' ? now : now.getTime());
|
|
101
|
+
// Guard against invalid dates (e.g. `new Date(<unparseable>)`) — mirrors fromNow's own guard.
|
|
102
|
+
if (!Number.isFinite(elapsed)) return undefined;
|
|
103
|
+
|
|
104
|
+
const elapsedABS = Math.abs(elapsed);
|
|
105
|
+
for (const [unit, threshold, divisor] of relativeUnitThresholds) {
|
|
106
|
+
if (elapsedABS >= threshold || threshold === 1000 /* second */) {
|
|
107
|
+
return { unit: unit, value: Math.trunc(elapsed / divisor) };
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/** Allocation-free sibling of `fromNowUnit` for a caller that only needs to CLASSIFY (compare two dates'
|
|
114
|
+
* groups) rather than build the `{unit,value}` object — same loop over the same table, so it can't
|
|
115
|
+
* drift from `fromNowUnit`/`fromNow`. Encodes the result as `unitOrdinal*100000 + truncValue` (ordinal
|
|
116
|
+
* 0 = 'year' … 6 = 'second', matching `relativeUnitThresholds`' order; `truncValue` keeps its sign, so
|
|
117
|
+
* a positive result means `date` is in the FUTURE relative to `now`). */
|
|
118
|
+
export function fromNowUnitKey(date: Date | number, now: Date | number = Date.now()): number | undefined {
|
|
119
|
+
const elapsed =
|
|
120
|
+
(typeof date === 'number' ? date : date.getTime()) - (typeof now === 'number' ? now : now.getTime());
|
|
121
|
+
if (!Number.isFinite(elapsed)) return undefined;
|
|
122
|
+
|
|
123
|
+
const elapsedABS = Math.abs(elapsed);
|
|
124
|
+
let ordinal = 0;
|
|
125
|
+
for (const [, threshold, divisor] of relativeUnitThresholds) {
|
|
126
|
+
if (elapsedABS >= threshold || threshold === 1000 /* second */) {
|
|
127
|
+
return ordinal * 100_000 + Math.trunc(elapsed / divisor);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
ordinal++;
|
|
131
|
+
}
|
|
132
|
+
return undefined;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/** The divisor (ms) `fromNowUnit` divides elapsed time by for `unit` — i.e. the elapsed-ms width one
|
|
136
|
+
* step of `value` represents. Exported so a caller reconstructing a `fromNowUnit` result's elapsed
|
|
137
|
+
* WINDOW (its start/end bounds) doesn't have to re-derive the thresholds table itself. */
|
|
138
|
+
export function unitDivisorMs(unit: Intl.RelativeTimeFormatUnit): number {
|
|
139
|
+
return unitDivisors[unit] ?? 0;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/** The elapsed-ms THRESHOLD `fromNowUnit` requires to classify into `unit` at all (only differs from
|
|
143
|
+
* `unitDivisorMs` for 'year' — see the table above). Exported so a caller clamping a group's elapsed
|
|
144
|
+
* window to where the NEXT unit actually takes over (not just `n+1` steps of the same divisor) can read
|
|
145
|
+
* the real cutover point instead of re-deriving the thresholds table itself. */
|
|
146
|
+
export function unitThresholdMs(unit: Intl.RelativeTimeFormatUnit): number {
|
|
147
|
+
return unitThresholds[unit] ?? 0;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// fromNow keeps its OWN single-pass loop (not routed through fromNowUnit) — one iteration, no
|
|
151
|
+
// intermediate {unit,value} object allocation on this hot formatting path; fromNowUnit below iterates
|
|
152
|
+
// the SAME `relativeUnitThresholds` array, so the two classifications can't drift apart.
|
|
81
153
|
export function fromNow(date: Date | number, short?: boolean): string {
|
|
82
154
|
const elapsed = (typeof date === 'number' ? date : date.getTime()) - Date.now();
|
|
83
155
|
// Guard against invalid dates (e.g. `new Date(<unparseable>)`), since a non-finite value would throw in `Intl.RelativeTimeFormat.format`
|
package/src/utils/debounce.ts
CHANGED
|
@@ -276,7 +276,7 @@ export function debounce<F extends (...args: any[]) => ReturnType<F>>(
|
|
|
276
276
|
if (aggregator != null && lastArgs != null) {
|
|
277
277
|
lastArgs = aggregator(lastArgs, args);
|
|
278
278
|
} else {
|
|
279
|
-
// oxlint-disable-next-line
|
|
279
|
+
// oxlint-disable-next-line typescript/no-this-alias
|
|
280
280
|
lastThis = this;
|
|
281
281
|
lastArgs = args;
|
|
282
282
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*
|
|
1
|
+
/* oxlint-disable typescript/no-unsafe-return */
|
|
2
2
|
import { CancellationError } from '../cancellation.js';
|
|
3
3
|
import type { UnifiedDisposable } from '../disposable.js';
|
|
4
4
|
import { createDisposable } from '../disposable.js';
|
|
@@ -28,7 +28,7 @@ export function gate<T extends (...args: any[]) => any>(
|
|
|
28
28
|
timeout ??= 300000;
|
|
29
29
|
|
|
30
30
|
return (_target: any, key: string, descriptor: PropertyDescriptor): void => {
|
|
31
|
-
//
|
|
31
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
32
32
|
let fn: Function | undefined;
|
|
33
33
|
if (typeof descriptor.value === 'function') {
|
|
34
34
|
fn = descriptor.value;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*
|
|
1
|
+
/* oxlint-disable typescript/no-unsafe-return */
|
|
2
2
|
import { getParameters } from '../function.js';
|
|
3
3
|
import { getDurationMilliseconds, hrtime } from '../hrtime.js';
|
|
4
4
|
import type { LogLevel } from '../logger.js';
|
|
@@ -38,9 +38,9 @@ interface LogOptions<T extends (...args: any[]) => any> {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
// Using Function type to support classes with private/protected constructors
|
|
41
|
-
//
|
|
41
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
42
42
|
export function logName<T>(fn: (c: T, name: string) => string): (target: Function & { prototype: T }) => void {
|
|
43
|
-
//
|
|
43
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
44
44
|
return (target: (abstract new (...args: any[]) => T) | (Function & { prototype: T })): void =>
|
|
45
45
|
void customLoggableNameFns.set(target, fn);
|
|
46
46
|
}
|
|
@@ -54,7 +54,7 @@ export function logName<T>(fn: (c: T, name: string) => string): (target: Functio
|
|
|
54
54
|
* Defaults to `id` if the instance has one, otherwise just `ClassName`.
|
|
55
55
|
*/
|
|
56
56
|
export function loggable<T extends object>(fn?: (instance: T) => string) {
|
|
57
|
-
//
|
|
57
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
58
58
|
return (target: (abstract new (...args: any[]) => T) | (Function & { prototype: T })): void => {
|
|
59
59
|
target.prototype.toLoggable = function (this: T): string {
|
|
60
60
|
const name = getLoggableName(this);
|
|
@@ -105,7 +105,7 @@ function log<T extends (...arg: any[]) => any>(
|
|
|
105
105
|
logLevel === 'trace' ? Logger.trace : logLevel === 'debug' ? Logger.debug : Logger.info;
|
|
106
106
|
|
|
107
107
|
return (_target: any, key: string, descriptor: PropertyDescriptor & Record<string, any>) => {
|
|
108
|
-
//
|
|
108
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
109
109
|
let fn: Function | undefined;
|
|
110
110
|
let fnKey: string | undefined;
|
|
111
111
|
if (typeof descriptor.value === 'function') {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*
|
|
1
|
+
/* oxlint-disable typescript/no-unsafe-return */
|
|
2
2
|
import { resolveProp } from './resolver.js';
|
|
3
3
|
|
|
4
4
|
/** Keys for memoize version invalidation */
|
|
@@ -43,7 +43,7 @@ export function memoize<T extends (...args: any[]) => any>(
|
|
|
43
43
|
const opts = options ?? {};
|
|
44
44
|
|
|
45
45
|
return (_target: any, key: string, descriptor: PropertyDescriptor & Record<string, any>): void => {
|
|
46
|
-
//
|
|
46
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
47
47
|
let fn: Function | undefined;
|
|
48
48
|
let fnKey: string | undefined;
|
|
49
49
|
|
|
@@ -43,7 +43,7 @@ export function sequentialize<T extends (...args: any[]) => any>(
|
|
|
43
43
|
const getDedupingKey = options?.getDedupingKey;
|
|
44
44
|
|
|
45
45
|
return (_target: any, key: string, descriptor: PropertyDescriptor) => {
|
|
46
|
-
//
|
|
46
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
47
47
|
let fn: Function | undefined;
|
|
48
48
|
if (typeof descriptor.value === 'function') {
|
|
49
49
|
fn = descriptor.value;
|
|
@@ -69,7 +69,7 @@ export function sequentialize<T extends (...args: any[]) => any>(
|
|
|
69
69
|
}
|
|
70
70
|
|
|
71
71
|
const state: SequentializeState | undefined = this[prop];
|
|
72
|
-
//
|
|
72
|
+
// oxlint-disable-next-line typescript/no-unsafe-return
|
|
73
73
|
const run = async () => await fn.apply(this, args);
|
|
74
74
|
|
|
75
75
|
// Compute the dedupe key once
|
|
@@ -277,9 +277,9 @@ export function run<T extends number | string>(
|
|
|
277
277
|
let stderrDecoded: string;
|
|
278
278
|
if (encoding === 'utf8' || encoding === 'binary' || encoding === 'buffer') {
|
|
279
279
|
// stdout & stderr can be `Buffer` or `string
|
|
280
|
-
//
|
|
280
|
+
// oxlint-disable-next-line typescript/no-unnecessary-type-conversion
|
|
281
281
|
stdoutDecoded = stdout.toString();
|
|
282
|
-
//
|
|
282
|
+
// oxlint-disable-next-line typescript/no-unnecessary-type-conversion
|
|
283
283
|
stderrDecoded = stderr.toString();
|
|
284
284
|
} else {
|
|
285
285
|
if (decode == null) {
|
|
@@ -332,7 +332,15 @@ export function run<T extends number | string>(
|
|
|
332
332
|
}
|
|
333
333
|
|
|
334
334
|
export interface RunExitResult {
|
|
335
|
-
|
|
335
|
+
/**
|
|
336
|
+
* The process's exit code. ABSENT when the process never exited normally — killed by a signal, in which
|
|
337
|
+
* case {@link signal} is set. Deliberately optional rather than defaulted to `0`: a signalled process
|
|
338
|
+
* reported as `exitCode: 0` is indistinguishable from a clean success, so callers would read a partial
|
|
339
|
+
* or empty stdout as a complete answer.
|
|
340
|
+
*/
|
|
341
|
+
readonly exitCode?: number;
|
|
342
|
+
/** Set when the process was terminated by a signal instead of exiting; {@link exitCode} is then absent. */
|
|
343
|
+
readonly signal?: NodeJS.Signals;
|
|
336
344
|
}
|
|
337
345
|
|
|
338
346
|
export interface RunResult<T extends string | Buffer> extends RunExitResult {
|
|
@@ -412,7 +420,11 @@ export function runSpawn<T extends string | Buffer>(
|
|
|
412
420
|
|
|
413
421
|
proc.once('close', async (code, signal) => {
|
|
414
422
|
if (options?.exitCodeOnly) {
|
|
415
|
-
|
|
423
|
+
// Resolves unconditionally, so this is the one path that can hand back a signalled run. `code`
|
|
424
|
+
// is null exactly when the process was killed — report the signal rather than coercing to `0`,
|
|
425
|
+
// which would claim a clean success for a command that never finished. Note this returns BEFORE
|
|
426
|
+
// the SIGTERM-to-cancellation diversion below, so callers have to classify that themselves.
|
|
427
|
+
resolve({ exitCode: code ?? undefined, signal: signal ?? undefined });
|
|
416
428
|
|
|
417
429
|
return;
|
|
418
430
|
}
|
|
@@ -453,7 +465,10 @@ export function runSpawn<T extends string | Buffer>(
|
|
|
453
465
|
);
|
|
454
466
|
}
|
|
455
467
|
|
|
456
|
-
|
|
468
|
+
// The guard above already rejected every non-zero and every signalled close, so this is a clean
|
|
469
|
+
// zero exit — `code` cannot be null here. (The optional typing exists for the `exitCodeOnly`
|
|
470
|
+
// branch, which is where a codeless result can genuinely surface.)
|
|
471
|
+
resolve({ exitCode: code ?? undefined, signal: signal ?? undefined, stdout: stdout, stderr: stderr });
|
|
457
472
|
});
|
|
458
473
|
|
|
459
474
|
if (stdin) {
|
package/src/utils/event.ts
CHANGED
|
@@ -17,36 +17,30 @@ export class Emitter<T> {
|
|
|
17
17
|
* to events from this Emitter
|
|
18
18
|
*/
|
|
19
19
|
get event(): Event<T> {
|
|
20
|
-
|
|
21
|
-
this.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
20
|
+
this._event ??= (listener: (e: T) => any, thisArgs?: unknown, disposables?: { dispose(): void }[]) => {
|
|
21
|
+
if (this._disposed) {
|
|
22
|
+
return createDisposable(() => {});
|
|
23
|
+
}
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
this._listeners = [];
|
|
28
|
-
}
|
|
25
|
+
this._listeners ??= [];
|
|
29
26
|
|
|
30
|
-
|
|
27
|
+
this._listeners.push({ callback: listener, thisArgs: thisArgs });
|
|
31
28
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
);
|
|
37
|
-
if (index > -1) {
|
|
38
|
-
this._listeners.splice(index, 1);
|
|
39
|
-
}
|
|
29
|
+
const result = createDisposable(() => {
|
|
30
|
+
if (!this._disposed && this._listeners) {
|
|
31
|
+
const index = this._listeners.findIndex(l => l.callback === listener && l.thisArgs === thisArgs);
|
|
32
|
+
if (index > -1) {
|
|
33
|
+
this._listeners.splice(index, 1);
|
|
40
34
|
}
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
if (disposables instanceof Array) {
|
|
44
|
-
disposables.push(result);
|
|
45
35
|
}
|
|
36
|
+
});
|
|
46
37
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
38
|
+
if (disposables instanceof Array) {
|
|
39
|
+
disposables.push(result);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return result;
|
|
43
|
+
};
|
|
50
44
|
return this._event;
|
|
51
45
|
}
|
|
52
46
|
|
|
@@ -155,7 +149,7 @@ export function promisifyDeferred<T, U>(
|
|
|
155
149
|
} catch (ex) {
|
|
156
150
|
pending = false;
|
|
157
151
|
|
|
158
|
-
//
|
|
152
|
+
// oxlint-disable-next-line typescript/prefer-promise-reject-errors
|
|
159
153
|
reject(ex);
|
|
160
154
|
}
|
|
161
155
|
});
|
package/src/utils/function.ts
CHANGED
|
@@ -8,7 +8,7 @@ const fnBodyRegex = /\(([\s\S]*)\)/;
|
|
|
8
8
|
const fnBodyStripCommentsRegex = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm;
|
|
9
9
|
const fnBodyStripParamDefaultValueRegex = /\s?=.*$/;
|
|
10
10
|
|
|
11
|
-
//
|
|
11
|
+
// oxlint-disable-next-line typescript/no-unsafe-function-type
|
|
12
12
|
export function getParameters(fn: Function): string[] {
|
|
13
13
|
if (typeof fn !== 'function') throw new Error('Not supported');
|
|
14
14
|
|
|
@@ -73,7 +73,7 @@ export function partial<T extends (...args: any[]) => any, P extends any[]>(
|
|
|
73
73
|
fn: T,
|
|
74
74
|
...partialArgs: PartialArgs<Parameters<T>, P>
|
|
75
75
|
): (...rest: DropFirstN<Parameters<T>, P['length']>) => ReturnType<T> {
|
|
76
|
-
//
|
|
76
|
+
// oxlint-disable-next-line typescript/no-unsafe-return
|
|
77
77
|
return (...rest) => fn(...partialArgs, ...rest);
|
|
78
78
|
}
|
|
79
79
|
|
|
@@ -93,7 +93,7 @@ export function sequentialize<T extends (...args: any[]) => Promise<any>>(fn: T)
|
|
|
93
93
|
let promise: Promise<unknown> | undefined;
|
|
94
94
|
|
|
95
95
|
return function (...args: any[]): Promise<any> {
|
|
96
|
-
//
|
|
96
|
+
// oxlint-disable-next-line typescript/no-unsafe-return
|
|
97
97
|
const run = async () => await fn(...args);
|
|
98
98
|
if (promise == null) {
|
|
99
99
|
promise = run();
|