@gitkraken/core-gitlens 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -1
- package/README.md +13 -10
- package/dist/git/context.d.ts +4 -3
- package/dist/git/context.d.ts.map +1 -1
- package/dist/git/context.js.map +1 -1
- package/dist/git/providers/operations.d.ts +1 -0
- package/dist/git/providers/operations.d.ts.map +1 -1
- package/dist/git/providers/worktrees.d.ts +2 -0
- package/dist/git/providers/worktrees.d.ts.map +1 -1
- package/dist/git/utils/conflictResolution.utils.d.ts +32 -0
- package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -1
- package/dist/git/utils/conflictResolution.utils.js +95 -0
- package/dist/git/utils/conflictResolution.utils.js.map +1 -1
- package/dist/git-cli/providers/operations.d.ts +1 -0
- package/dist/git-cli/providers/operations.d.ts.map +1 -1
- package/dist/git-cli/providers/operations.js +22 -1
- package/dist/git-cli/providers/operations.js.map +1 -1
- package/dist/git-cli/providers/worktrees.d.ts +2 -0
- package/dist/git-cli/providers/worktrees.d.ts.map +1 -1
- package/dist/git-cli/providers/worktrees.js +3 -0
- package/dist/git-cli/providers/worktrees.js.map +1 -1
- package/dist/plus/ai/utils/ai.utils.js +5 -5
- package/dist/plus/ai/utils/ai.utils.js.map +1 -1
- package/dist/plus/git-github/api/github.d.ts +6 -13
- package/dist/plus/git-github/api/github.d.ts.map +1 -1
- package/dist/plus/git-github/api/github.js +5 -10
- package/dist/plus/git-github/api/github.js.map +1 -1
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts +11 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js +90 -0
- package/dist/plus/integrations/authentication/cloudIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts +67 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js +295 -0
- package/dist/plus/integrations/authentication/configuredIntegrationService.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts +92 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js +185 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts +62 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js +122 -0
- package/dist/plus/integrations/authentication/integrationAuthenticationService.js.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts +15 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js +49 -0
- package/dist/plus/integrations/authentication/manualTokenProvider.js.map +1 -0
- package/dist/plus/integrations/authentication/models.d.ts +87 -0
- package/dist/plus/integrations/authentication/models.d.ts.map +1 -0
- package/dist/plus/integrations/authentication/models.js +64 -0
- package/dist/plus/integrations/authentication/models.js.map +1 -0
- package/dist/plus/integrations/constants.d.ts +47 -0
- package/dist/plus/integrations/constants.d.ts.map +1 -0
- package/dist/plus/integrations/constants.js +128 -0
- package/dist/plus/integrations/constants.js.map +1 -0
- package/dist/plus/integrations/context.d.ts +354 -0
- package/dist/plus/integrations/context.d.ts.map +1 -0
- package/dist/plus/integrations/context.js +2 -0
- package/dist/plus/integrations/context.js.map +1 -0
- package/dist/plus/integrations/errors.d.ts +14 -0
- package/dist/plus/integrations/errors.d.ts.map +1 -0
- package/dist/plus/integrations/errors.js +19 -0
- package/dist/plus/integrations/errors.js.map +1 -0
- package/dist/plus/integrations/index.d.ts +32 -0
- package/dist/plus/integrations/index.d.ts.map +1 -0
- package/dist/plus/integrations/index.js +62 -0
- package/dist/plus/integrations/index.js.map +1 -0
- package/dist/plus/integrations/integrationService.d.ts +98 -0
- package/dist/plus/integrations/integrationService.d.ts.map +1 -0
- package/dist/plus/integrations/integrationService.js +627 -0
- package/dist/plus/integrations/integrationService.js.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts +82 -0
- package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/gitHostIntegration.js +522 -0
- package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -0
- package/dist/plus/integrations/models/integration.d.ts +127 -0
- package/dist/plus/integrations/models/integration.d.ts.map +1 -0
- package/dist/plus/integrations/models/integration.js +456 -0
- package/dist/plus/integrations/models/integration.js.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts +28 -0
- package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -0
- package/dist/plus/integrations/models/issuesIntegration.js +101 -0
- package/dist/plus/integrations/models/issuesIntegration.js.map +1 -0
- package/dist/plus/integrations/providers/apiClients.d.ts +25 -0
- package/dist/plus/integrations/providers/apiClients.d.ts.map +1 -0
- package/dist/plus/integrations/providers/apiClients.js +39 -0
- package/dist/plus/integrations/providers/apiClients.js.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts +47 -0
- package/dist/plus/integrations/providers/azure/azure.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/azure.js +444 -0
- package/dist/plus/integrations/providers/azure/azure.js.map +1 -0
- package/dist/plus/integrations/providers/azure/models.d.ts +286 -0
- package/dist/plus/integrations/providers/azure/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azure/models.js +203 -0
- package/dist/plus/integrations/providers/azure/models.js.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts +95 -0
- package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -0
- package/dist/plus/integrations/providers/azureDevOps.js +432 -0
- package/dist/plus/integrations/providers/azureDevOps.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts +42 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js +513 -0
- package/dist/plus/integrations/providers/bitbucket/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts +222 -0
- package/dist/plus/integrations/providers/bitbucket/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket/models.js +158 -0
- package/dist/plus/integrations/providers/bitbucket/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts +120 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js +111 -0
- package/dist/plus/integrations/providers/bitbucket-server/models.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts +60 -0
- package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket-server.js +138 -0
- package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts +50 -0
- package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -0
- package/dist/plus/integrations/providers/bitbucket.js +181 -0
- package/dist/plus/integrations/providers/bitbucket.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.d.ts +5 -0
- package/dist/plus/integrations/providers/github/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.js +47 -0
- package/dist/plus/integrations/providers/github/github.js.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts +11 -0
- package/dist/plus/integrations/providers/github/github.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/github.utils.js +6 -0
- package/dist/plus/integrations/providers/github/github.utils.js.map +1 -0
- package/dist/plus/integrations/providers/github/models.d.ts +3 -0
- package/dist/plus/integrations/providers/github/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github/models.js +2 -0
- package/dist/plus/integrations/providers/github/models.js.map +1 -0
- package/dist/plus/integrations/providers/github.d.ts +73 -0
- package/dist/plus/integrations/providers/github.d.ts.map +1 -0
- package/dist/plus/integrations/providers/github.js +160 -0
- package/dist/plus/integrations/providers/github.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts +63 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js +828 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts +21 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js +45 -0
- package/dist/plus/integrations/providers/gitlab/gitlab.utils.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts +128 -0
- package/dist/plus/integrations/providers/gitlab/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab/models.js +96 -0
- package/dist/plus/integrations/providers/gitlab/models.js.map +1 -0
- package/dist/plus/integrations/providers/gitlab.d.ts +79 -0
- package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -0
- package/dist/plus/integrations/providers/gitlab.js +253 -0
- package/dist/plus/integrations/providers/gitlab.js.map +1 -0
- package/dist/plus/integrations/providers/jira.d.ts +46 -0
- package/dist/plus/integrations/providers/jira.d.ts.map +1 -0
- package/dist/plus/integrations/providers/jira.js +255 -0
- package/dist/plus/integrations/providers/jira.js.map +1 -0
- package/dist/plus/integrations/providers/linear.d.ts +47 -0
- package/dist/plus/integrations/providers/linear.d.ts.map +1 -0
- package/dist/plus/integrations/providers/linear.js +198 -0
- package/dist/plus/integrations/providers/linear.js.map +1 -0
- package/dist/plus/integrations/providers/models.d.ts +433 -0
- package/dist/plus/integrations/providers/models.d.ts.map +1 -0
- package/dist/plus/integrations/providers/models.js +602 -0
- package/dist/plus/integrations/providers/models.js.map +1 -0
- package/dist/plus/integrations/providers/providersApi.d.ts +129 -0
- package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -0
- package/dist/plus/integrations/providers/providersApi.js +602 -0
- package/dist/plus/integrations/providers/providersApi.js.map +1 -0
- package/dist/plus/integrations/providers/utils.d.ts +54 -0
- package/dist/plus/integrations/providers/utils.d.ts.map +1 -0
- package/dist/plus/integrations/providers/utils.js +262 -0
- package/dist/plus/integrations/providers/utils.js.map +1 -0
- package/dist/plus/integrations/telemetry.d.ts +26 -0
- package/dist/plus/integrations/telemetry.d.ts.map +1 -0
- package/dist/plus/integrations/telemetry.js +11 -0
- package/dist/plus/integrations/telemetry.js.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts +14 -0
- package/dist/plus/integrations/utils/integration.utils.d.ts.map +1 -0
- package/dist/plus/integrations/utils/integration.utils.js +111 -0
- package/dist/plus/integrations/utils/integration.utils.js.map +1 -0
- package/dist/utils/disposable.d.ts +15 -2
- package/dist/utils/disposable.d.ts.map +1 -1
- package/dist/utils/disposable.js.map +1 -1
- package/package.json +43 -2
- package/src/git/context.ts +4 -3
- package/src/git/providers/operations.ts +1 -1
- package/src/git/providers/worktrees.ts +14 -2
- package/src/git/utils/conflictResolution.utils.ts +126 -0
- package/src/git-cli/providers/operations.ts +22 -2
- package/src/git-cli/providers/worktrees.ts +17 -2
- package/src/plus/ai/utils/ai.utils.ts +5 -5
- package/src/plus/git-github/api/github.ts +13 -25
- package/src/plus/integrations/authentication/cloudIntegrationService.ts +120 -0
- package/src/plus/integrations/authentication/configuredIntegrationService.ts +414 -0
- package/src/plus/integrations/authentication/integrationAuthenticationProvider.ts +289 -0
- package/src/plus/integrations/authentication/integrationAuthenticationService.ts +144 -0
- package/src/plus/integrations/authentication/manualTokenProvider.ts +72 -0
- package/src/plus/integrations/authentication/models.ts +168 -0
- package/src/plus/integrations/constants.ts +169 -0
- package/src/plus/integrations/context.ts +383 -0
- package/src/plus/integrations/errors.ts +35 -0
- package/src/plus/integrations/index.ts +119 -0
- package/src/plus/integrations/integrationService.ts +924 -0
- package/src/plus/integrations/models/gitHostIntegration.ts +738 -0
- package/src/plus/integrations/models/integration.ts +657 -0
- package/src/plus/integrations/models/issuesIntegration.ts +124 -0
- package/src/plus/integrations/providers/apiClients.ts +72 -0
- package/src/plus/integrations/providers/azure/azure.ts +691 -0
- package/src/plus/integrations/providers/azure/models.ts +605 -0
- package/src/plus/integrations/providers/azureDevOps.ts +677 -0
- package/src/plus/integrations/providers/bitbucket/bitbucket.ts +774 -0
- package/src/plus/integrations/providers/bitbucket/models.ts +445 -0
- package/src/plus/integrations/providers/bitbucket-server/models.ts +252 -0
- package/src/plus/integrations/providers/bitbucket-server.ts +282 -0
- package/src/plus/integrations/providers/bitbucket.ts +350 -0
- package/src/plus/integrations/providers/github/github.ts +64 -0
- package/src/plus/integrations/providers/github/github.utils.ts +23 -0
- package/src/plus/integrations/providers/github/models.ts +29 -0
- package/src/plus/integrations/providers/github.ts +366 -0
- package/src/plus/integrations/providers/gitlab/gitlab.ts +1210 -0
- package/src/plus/integrations/providers/gitlab/gitlab.utils.ts +71 -0
- package/src/plus/integrations/providers/gitlab/models.ts +257 -0
- package/src/plus/integrations/providers/gitlab.ts +473 -0
- package/src/plus/integrations/providers/jira.ts +359 -0
- package/src/plus/integrations/providers/linear.ts +275 -0
- package/src/plus/integrations/providers/models.ts +1114 -0
- package/src/plus/integrations/providers/providersApi.ts +1126 -0
- package/src/plus/integrations/providers/utils.ts +359 -0
- package/src/plus/integrations/telemetry.ts +29 -0
- package/src/plus/integrations/utils/integration.utils.ts +138 -0
- package/src/utils/disposable.ts +15 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"providersApi.js","sourceRoot":"","sources":["../../src/providers/providersApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { AnyEntityIdentifierInput, EntityIdentifier } from '@gitkraken/provider-apis';
|
|
2
|
+
import type { Issue, IssueShape } from '../../../git/models/issue.js';
|
|
3
|
+
import type { PullRequest } from '../../../git/models/pullRequest.js';
|
|
4
|
+
import type { IssueResourceDescriptor, RepositoryDescriptor, ResourceDescriptor } from '../../../git/models/resourceDescriptor.js';
|
|
5
|
+
import type { IntegrationIds } from '../constants.js';
|
|
6
|
+
import type { AzureProjectInputDescriptor } from './azure/models.js';
|
|
7
|
+
import type { GitConfigEntityIdentifier } from './models.js';
|
|
8
|
+
/**
|
|
9
|
+
* Forward-compatible structural shape of the host's `LaunchpadItem`. The package
|
|
10
|
+
* uses this for narrowing inside {@link getEntityIdentifierInput}; the host's
|
|
11
|
+
* actual `LaunchpadItem` (in `src/plus/launchpad/launchpadProvider.ts`) carries
|
|
12
|
+
* many more fields. The declared shape only includes fields integrations inspect.
|
|
13
|
+
*/
|
|
14
|
+
type LaunchpadItem = {
|
|
15
|
+
uuid: string;
|
|
16
|
+
type: 'issue' | 'pullrequest';
|
|
17
|
+
graphQLId?: string;
|
|
18
|
+
provider: {
|
|
19
|
+
id: string;
|
|
20
|
+
domain?: string;
|
|
21
|
+
};
|
|
22
|
+
underlyingPullRequest?: {
|
|
23
|
+
id: string;
|
|
24
|
+
project?: {
|
|
25
|
+
id: string;
|
|
26
|
+
resourceName?: string;
|
|
27
|
+
};
|
|
28
|
+
repository?: {
|
|
29
|
+
id?: string;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
export declare function getEntityIdentifierInput(entity: Issue | PullRequest | LaunchpadItem): AnyEntityIdentifierInput;
|
|
34
|
+
export declare function getProviderIdFromEntityIdentifier(entityIdentifier: EntityIdentifier | AnyEntityIdentifierInput | GitConfigEntityIdentifier): IntegrationIds | undefined;
|
|
35
|
+
export declare function encodeIssueOrPullRequestForGitConfig(entity: Issue | PullRequest, owner: RepositoryDescriptor | IssueResourceDescriptor): GitConfigEntityIdentifier;
|
|
36
|
+
export declare function isGitConfigEntityIdentifier(entity: unknown): entity is GitConfigEntityIdentifier;
|
|
37
|
+
export declare function isGitConfigEntityIdentifiers(entities: unknown): entities is GitConfigEntityIdentifier[];
|
|
38
|
+
export declare function decodeEntityIdentifiersFromGitConfig(str: string): GitConfigEntityIdentifier[];
|
|
39
|
+
interface IssueResolvableIntegration {
|
|
40
|
+
getIssue(owner: unknown, id: string): Promise<Issue | undefined>;
|
|
41
|
+
}
|
|
42
|
+
export declare function getIssueFromGitConfigEntityIdentifier(resolveIntegration: (id: IntegrationIds) => Promise<IssueResolvableIntegration | undefined>, identifier: GitConfigEntityIdentifier, options?: {
|
|
43
|
+
/** Only return a value already in the local cache. No remote fetch — returns undefined on cache miss. */
|
|
44
|
+
cached?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Host-supplied cache reader used when {@link cached} is set. The package is cache-agnostic, so the
|
|
47
|
+
* host (which owns the cache) provides this to satisfy a cache-only read. When omitted, `cached`
|
|
48
|
+
* yields undefined rather than falling through to a remote fetch.
|
|
49
|
+
*/
|
|
50
|
+
peekCachedIssue?: (integration: IssueResolvableIntegration | undefined, resource: ResourceDescriptor, id: string) => Issue | undefined;
|
|
51
|
+
}): Promise<Issue | undefined>;
|
|
52
|
+
export declare function getIssueOwner(issue: IssueShape): RepositoryDescriptor | IssueResourceDescriptor | AzureProjectInputDescriptor | undefined;
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/providers/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE3F,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,KAAK,EACX,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,MAAM,2CAA2C,CAAC;AAGnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAOtD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAG7D;;;;;GAKG;AACH,KAAK,aAAa,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,qBAAqB,CAAC,EAAE;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,CAAC,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,YAAY,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAChD,UAAU,CAAC,EAAE;YAAE,EAAE,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7B,CAAC;CACF,CAAC;AAUF,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,KAAK,GAAG,WAAW,GAAG,aAAa,GAAG,wBAAwB,CA+E9G;AAED,wBAAgB,iCAAiC,CAChD,gBAAgB,EAAE,gBAAgB,GAAG,wBAAwB,GAAG,yBAAyB,GACvF,cAAc,GAAG,SAAS,CA2B5B;AA+BD,wBAAgB,oCAAoC,CACnD,MAAM,EAAE,KAAK,GAAG,WAAW,EAC3B,KAAK,EAAE,oBAAoB,GAAG,uBAAuB,GACnD,yBAAyB,CAwB3B;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,yBAAyB,CAsBhG;AAED,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,yBAAyB,EAAE,CAEvG;AAED,wBAAgB,oCAAoC,CAAC,GAAG,EAAE,MAAM,GAAG,yBAAyB,EAAE,CAoB7F;AAED,UAAU,0BAA0B;IACnC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;CACjE;AAED,wBAAsB,qCAAqC,CAC1D,kBAAkB,EAAE,CAAC,EAAE,EAAE,cAAc,KAAK,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC,EAC3F,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE;IACT,yGAAyG;IACzG,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,CACjB,WAAW,EAAE,0BAA0B,GAAG,SAAS,EACnD,QAAQ,EAAE,kBAAkB,EAC5B,EAAE,EAAE,MAAM,KACN,KAAK,GAAG,SAAS,CAAC;CACvB,GACC,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAgD5B;AAED,wBAAgB,aAAa,CAC5B,KAAK,EAAE,UAAU,GACf,oBAAoB,GAAG,uBAAuB,GAAG,2BAA2B,GAAG,SAAS,CAgB1F"}
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
import { EntityIdentifierProviderType, EntityType, EntityVersion } from '@gitkraken/provider-apis';
|
|
2
|
+
import { isIssueResourceDescriptor, isRepositoryDescriptor } from '../../../git/utils/resourceDescriptor.utils.js';
|
|
3
|
+
import { Logger } from '../../../utils/logger.js';
|
|
4
|
+
import { GitCloudHostIntegrationId, GitSelfManagedHostIntegrationId, IssuesCloudHostIntegrationId, } from '../constants.js';
|
|
5
|
+
import { isCloudGitSelfManagedHostIntegrationId } from '../utils/integration.utils.js';
|
|
6
|
+
import { isGitHubDotCom, isGitLabDotCom } from './models.js';
|
|
7
|
+
function isLaunchpadItem(item) {
|
|
8
|
+
return item.uuid !== undefined;
|
|
9
|
+
}
|
|
10
|
+
function isIssue(item) {
|
|
11
|
+
return item.type === 'issue';
|
|
12
|
+
}
|
|
13
|
+
export function getEntityIdentifierInput(entity) {
|
|
14
|
+
let entityType = EntityType.Issue;
|
|
15
|
+
if (entity.type === 'pullrequest') {
|
|
16
|
+
entityType = EntityType.PullRequest;
|
|
17
|
+
}
|
|
18
|
+
let provider = fromStringToEntityIdentifierProviderType(entity.provider.id);
|
|
19
|
+
let domain = null;
|
|
20
|
+
if (provider === EntityIdentifierProviderType.Github && !isGitHubDotCom(entity.provider.domain)) {
|
|
21
|
+
provider = EntityIdentifierProviderType.GithubEnterprise;
|
|
22
|
+
domain = entity.provider.domain ?? null;
|
|
23
|
+
}
|
|
24
|
+
if (provider === EntityIdentifierProviderType.Gitlab && !isGitLabDotCom(entity.provider.domain)) {
|
|
25
|
+
provider = EntityIdentifierProviderType.GitlabSelfHosted;
|
|
26
|
+
domain = entity.provider.domain ?? null;
|
|
27
|
+
}
|
|
28
|
+
if (provider === EntityIdentifierProviderType.AzureDevOpsServer) {
|
|
29
|
+
domain = entity.provider.domain ?? null;
|
|
30
|
+
}
|
|
31
|
+
let projectId = null;
|
|
32
|
+
let resourceId = null;
|
|
33
|
+
let organizationName = null;
|
|
34
|
+
let repoId = null;
|
|
35
|
+
if (provider === EntityIdentifierProviderType.Jira) {
|
|
36
|
+
if (!isIssue(entity) || entity.project == null) {
|
|
37
|
+
throw new Error('Jira issues must have a project');
|
|
38
|
+
}
|
|
39
|
+
projectId = entity.project.id;
|
|
40
|
+
resourceId = entity.project.resourceId;
|
|
41
|
+
}
|
|
42
|
+
else if (provider === EntityIdentifierProviderType.Azure ||
|
|
43
|
+
provider === EntityIdentifierProviderType.AzureDevOpsServer) {
|
|
44
|
+
const project = isLaunchpadItem(entity) ? entity.underlyingPullRequest?.project : entity.project;
|
|
45
|
+
if (project == null) {
|
|
46
|
+
throw new Error('Azure issues and PRs must have a project to be encoded');
|
|
47
|
+
}
|
|
48
|
+
projectId = project.id;
|
|
49
|
+
organizationName = project.resourceName;
|
|
50
|
+
repoId = isLaunchpadItem(entity) ? entity.underlyingPullRequest?.repository?.id : entity.repository?.id;
|
|
51
|
+
if (entityType === EntityType.PullRequest && repoId == null) {
|
|
52
|
+
throw new Error('Azure PRs must have a repository ID to be encoded');
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
else if (provider === EntityIdentifierProviderType.Bitbucket ||
|
|
56
|
+
provider === EntityIdentifierProviderType.BitbucketServer) {
|
|
57
|
+
repoId = isLaunchpadItem(entity) ? entity.underlyingPullRequest?.repository?.id : entity.repository?.id;
|
|
58
|
+
}
|
|
59
|
+
let entityId = isLaunchpadItem(entity) ? entity.graphQLId : entity.nodeId;
|
|
60
|
+
if (provider === EntityIdentifierProviderType.Azure ||
|
|
61
|
+
provider === EntityIdentifierProviderType.AzureDevOpsServer) {
|
|
62
|
+
entityId = (isLaunchpadItem(entity) ? entity.underlyingPullRequest?.id : entity.id);
|
|
63
|
+
}
|
|
64
|
+
// `AnyEntityIdentifierInput` includes the catch-all `EntityIdentifier`
|
|
65
|
+
// variant which requires all fields, while each provider-specific variant
|
|
66
|
+
// requires a different subset. The function builds a polymorphic value
|
|
67
|
+
// that's correct at runtime per `provider` but the literal can't be
|
|
68
|
+
// structurally narrowed to any single variant. The 2-step cast through
|
|
69
|
+
// `unknown` is the documented escape for this discriminated-union pattern.
|
|
70
|
+
return {
|
|
71
|
+
accountOrOrgId: null, // needed for Trello issues, once supported
|
|
72
|
+
organizationName: organizationName, // needed for Azure issues and PRs, once supported
|
|
73
|
+
projectId: projectId, // needed for Jira issues, Trello issues, and Azure issues and PRs, once supported
|
|
74
|
+
repoId: repoId ?? null, // needed for Azure and BitBucket PRs, once supported
|
|
75
|
+
resourceId: resourceId, // needed for Jira issues
|
|
76
|
+
provider: provider,
|
|
77
|
+
entityType: entityType,
|
|
78
|
+
version: EntityVersion.One,
|
|
79
|
+
domain: domain,
|
|
80
|
+
entityId: entityId,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
export function getProviderIdFromEntityIdentifier(entityIdentifier) {
|
|
84
|
+
switch (entityIdentifier.provider) {
|
|
85
|
+
case EntityIdentifierProviderType.Github:
|
|
86
|
+
return GitCloudHostIntegrationId.GitHub;
|
|
87
|
+
case EntityIdentifierProviderType.GithubEnterprise:
|
|
88
|
+
return GitSelfManagedHostIntegrationId.CloudGitHubEnterprise;
|
|
89
|
+
case EntityIdentifierProviderType.Gitlab:
|
|
90
|
+
return GitCloudHostIntegrationId.GitLab;
|
|
91
|
+
case EntityIdentifierProviderType.GitlabSelfHosted:
|
|
92
|
+
return GitSelfManagedHostIntegrationId.CloudGitLabSelfHosted;
|
|
93
|
+
case EntityIdentifierProviderType.Jira:
|
|
94
|
+
return IssuesCloudHostIntegrationId.Jira;
|
|
95
|
+
case EntityIdentifierProviderType.Linear:
|
|
96
|
+
return IssuesCloudHostIntegrationId.Linear;
|
|
97
|
+
case EntityIdentifierProviderType.Azure:
|
|
98
|
+
return GitCloudHostIntegrationId.AzureDevOps;
|
|
99
|
+
case EntityIdentifierProviderType.AzureDevOpsServer:
|
|
100
|
+
return GitSelfManagedHostIntegrationId.AzureDevOpsServer;
|
|
101
|
+
case EntityIdentifierProviderType.Bitbucket:
|
|
102
|
+
return GitCloudHostIntegrationId.Bitbucket;
|
|
103
|
+
case EntityIdentifierProviderType.BitbucketServer:
|
|
104
|
+
return isGitConfigEntityIdentifier(entityIdentifier) && entityIdentifier.metadata.isCloudEnterprise
|
|
105
|
+
? GitSelfManagedHostIntegrationId.BitbucketServer
|
|
106
|
+
: undefined;
|
|
107
|
+
default:
|
|
108
|
+
return undefined;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function fromStringToEntityIdentifierProviderType(str) {
|
|
112
|
+
switch (str) {
|
|
113
|
+
case 'github':
|
|
114
|
+
return EntityIdentifierProviderType.Github;
|
|
115
|
+
case 'cloud-github-enterprise':
|
|
116
|
+
return EntityIdentifierProviderType.GithubEnterprise;
|
|
117
|
+
case 'cloud-gitlab-self-hosted':
|
|
118
|
+
return EntityIdentifierProviderType.GitlabSelfHosted;
|
|
119
|
+
case 'gitlab':
|
|
120
|
+
return EntityIdentifierProviderType.Gitlab;
|
|
121
|
+
case 'jira':
|
|
122
|
+
return EntityIdentifierProviderType.Jira;
|
|
123
|
+
case 'linear':
|
|
124
|
+
return EntityIdentifierProviderType.Linear;
|
|
125
|
+
case 'azure':
|
|
126
|
+
case 'azureDevOps':
|
|
127
|
+
case 'azure-devops':
|
|
128
|
+
return EntityIdentifierProviderType.Azure;
|
|
129
|
+
case GitSelfManagedHostIntegrationId.AzureDevOpsServer:
|
|
130
|
+
return EntityIdentifierProviderType.AzureDevOpsServer;
|
|
131
|
+
case 'bitbucket':
|
|
132
|
+
return EntityIdentifierProviderType.Bitbucket;
|
|
133
|
+
case 'bitbucket-server':
|
|
134
|
+
return EntityIdentifierProviderType.BitbucketServer;
|
|
135
|
+
default:
|
|
136
|
+
throw new Error(`Unknown provider type '${str}'`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
export function encodeIssueOrPullRequestForGitConfig(entity, owner) {
|
|
140
|
+
const encodedOwner = {
|
|
141
|
+
key: owner.key,
|
|
142
|
+
name: owner.name,
|
|
143
|
+
id: undefined,
|
|
144
|
+
owner: undefined,
|
|
145
|
+
};
|
|
146
|
+
if (isRepositoryDescriptor(owner)) {
|
|
147
|
+
encodedOwner.owner = owner.owner;
|
|
148
|
+
}
|
|
149
|
+
else if (isIssueResourceDescriptor(owner)) {
|
|
150
|
+
encodedOwner.id = owner.id;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
throw new Error('Invalid owner');
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
...getEntityIdentifierInput(entity),
|
|
157
|
+
metadata: {
|
|
158
|
+
id: entity.id,
|
|
159
|
+
owner: encodedOwner,
|
|
160
|
+
createdDate: new Date().toISOString(),
|
|
161
|
+
isCloudEnterprise: isCloudGitSelfManagedHostIntegrationId(entity.provider.id),
|
|
162
|
+
},
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
export function isGitConfigEntityIdentifier(entity) {
|
|
166
|
+
return (entity != null &&
|
|
167
|
+
typeof entity === 'object' &&
|
|
168
|
+
'provider' in entity &&
|
|
169
|
+
entity.provider != null &&
|
|
170
|
+
'entityType' in entity &&
|
|
171
|
+
entity.entityType != null &&
|
|
172
|
+
'version' in entity &&
|
|
173
|
+
entity.version != null &&
|
|
174
|
+
'entityId' in entity &&
|
|
175
|
+
entity.entityId != null &&
|
|
176
|
+
'metadata' in entity &&
|
|
177
|
+
entity.metadata != null &&
|
|
178
|
+
typeof entity.metadata === 'object' &&
|
|
179
|
+
'id' in entity.metadata &&
|
|
180
|
+
entity.metadata.id != null &&
|
|
181
|
+
'owner' in entity.metadata &&
|
|
182
|
+
entity.metadata.owner != null &&
|
|
183
|
+
'createdDate' in entity.metadata &&
|
|
184
|
+
entity.metadata.createdDate != null);
|
|
185
|
+
}
|
|
186
|
+
export function isGitConfigEntityIdentifiers(entities) {
|
|
187
|
+
return Array.isArray(entities) && entities.every(entity => isGitConfigEntityIdentifier(entity));
|
|
188
|
+
}
|
|
189
|
+
export function decodeEntityIdentifiersFromGitConfig(str) {
|
|
190
|
+
const decoded = JSON.parse(str);
|
|
191
|
+
if (!isGitConfigEntityIdentifiers(decoded)) {
|
|
192
|
+
debugger;
|
|
193
|
+
Logger.error('Invalid entity identifiers in git config');
|
|
194
|
+
return [];
|
|
195
|
+
}
|
|
196
|
+
for (const decodedEntity of decoded) {
|
|
197
|
+
if (decodedEntity.provider === EntityIdentifierProviderType.Jira &&
|
|
198
|
+
(decodedEntity.resourceId == null || decodedEntity.projectId == null)) {
|
|
199
|
+
debugger;
|
|
200
|
+
Logger.error('Invalid Jira issue in git config');
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return decoded;
|
|
204
|
+
}
|
|
205
|
+
export async function getIssueFromGitConfigEntityIdentifier(resolveIntegration, identifier, options) {
|
|
206
|
+
if (identifier.entityType !== EntityType.Issue) {
|
|
207
|
+
return undefined;
|
|
208
|
+
}
|
|
209
|
+
// TODO: Centralize where we represent all supported providers for issues
|
|
210
|
+
if (identifier.provider !== EntityIdentifierProviderType.Jira &&
|
|
211
|
+
identifier.provider !== EntityIdentifierProviderType.Linear &&
|
|
212
|
+
identifier.provider !== EntityIdentifierProviderType.Github &&
|
|
213
|
+
identifier.provider !== EntityIdentifierProviderType.Gitlab &&
|
|
214
|
+
identifier.provider !== EntityIdentifierProviderType.GithubEnterprise &&
|
|
215
|
+
identifier.provider !== EntityIdentifierProviderType.GitlabSelfHosted &&
|
|
216
|
+
identifier.provider !== EntityIdentifierProviderType.Bitbucket &&
|
|
217
|
+
identifier.provider !== EntityIdentifierProviderType.BitbucketServer &&
|
|
218
|
+
identifier.provider !== EntityIdentifierProviderType.AzureDevOpsServer &&
|
|
219
|
+
identifier.provider !== EntityIdentifierProviderType.Azure) {
|
|
220
|
+
return undefined;
|
|
221
|
+
}
|
|
222
|
+
const integrationId = getProviderIdFromEntityIdentifier(identifier);
|
|
223
|
+
if (integrationId == null) {
|
|
224
|
+
return undefined;
|
|
225
|
+
}
|
|
226
|
+
const integration = await resolveIntegration(integrationId);
|
|
227
|
+
const resource = {
|
|
228
|
+
id: identifier.metadata.owner.id,
|
|
229
|
+
key: identifier.metadata.owner.key,
|
|
230
|
+
owner: identifier.metadata.owner.owner,
|
|
231
|
+
name: identifier.metadata.owner.name,
|
|
232
|
+
};
|
|
233
|
+
// Cache-only read (no remote fetch). The package can't reach the host cache directly, so defer to the
|
|
234
|
+
// host-supplied reader; without one, honor the no-fetch contract by returning undefined. The cache key
|
|
235
|
+
// is resource+id (the integration only affects the etag), so peek even when the integration is
|
|
236
|
+
// unresolvable — a still-cached issue must survive an unconfigured/disconnected integration.
|
|
237
|
+
if (options?.cached) {
|
|
238
|
+
return options.peekCachedIssue?.(integration, resource, identifier.metadata.id);
|
|
239
|
+
}
|
|
240
|
+
if (integration == null) {
|
|
241
|
+
return undefined;
|
|
242
|
+
}
|
|
243
|
+
return integration.getIssue(resource, identifier.metadata.id);
|
|
244
|
+
}
|
|
245
|
+
export function getIssueOwner(issue) {
|
|
246
|
+
const isAzure = ['azure', GitCloudHostIntegrationId.AzureDevOps, 'azure-devops'].includes(issue.provider.id);
|
|
247
|
+
return issue.repository
|
|
248
|
+
? {
|
|
249
|
+
key: `${issue.repository.owner}/${issue.repository.repo}`,
|
|
250
|
+
owner: issue.repository.owner,
|
|
251
|
+
name: issue.repository.repo,
|
|
252
|
+
}
|
|
253
|
+
: issue.project
|
|
254
|
+
? {
|
|
255
|
+
key: isAzure ? issue.project.id : issue.project.resourceId,
|
|
256
|
+
id: isAzure ? issue.project.id : issue.project.resourceId,
|
|
257
|
+
owner: isAzure ? issue.project.resourceName : undefined,
|
|
258
|
+
name: isAzure ? issue.project.name : issue.project.resourceName,
|
|
259
|
+
}
|
|
260
|
+
: undefined;
|
|
261
|
+
}
|
|
262
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/providers/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telemetry-source types used by the integrations package.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the shape of the host's `Source` / `Sources` types from
|
|
5
|
+
* `src/constants.telemetry.ts` but intentionally widens `source` to a plain
|
|
6
|
+
* `string` so the package doesn't depend on the host's enumerated union.
|
|
7
|
+
* The host passes its typed `Source` directly — TypeScript's structural
|
|
8
|
+
* subtyping accepts the narrower type here.
|
|
9
|
+
*/
|
|
10
|
+
export type Source = {
|
|
11
|
+
source: string;
|
|
12
|
+
correlationId?: string;
|
|
13
|
+
detail?: unknown;
|
|
14
|
+
};
|
|
15
|
+
export type Sources = string;
|
|
16
|
+
/**
|
|
17
|
+
* Maps a telemetry `source`/`detail` to the `&context=` value the package appends when building
|
|
18
|
+
* cloud-connect URLs. Owned here in the package (the host no longer carries a duplicate copy).
|
|
19
|
+
*/
|
|
20
|
+
export declare const sourceToContext: {
|
|
21
|
+
[source: string]: string | undefined;
|
|
22
|
+
};
|
|
23
|
+
export declare const detailToContext: {
|
|
24
|
+
[detail: string]: string | undefined;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../../src/plus/integrations/telemetry.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAEnE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAEnE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Maps a telemetry `source`/`detail` to the `&context=` value the package appends when building
|
|
3
|
+
* cloud-connect URLs. Owned here in the package (the host no longer carries a duplicate copy).
|
|
4
|
+
*/
|
|
5
|
+
export const sourceToContext = {
|
|
6
|
+
launchpad: 'launchpad',
|
|
7
|
+
};
|
|
8
|
+
export const detailToContext = {
|
|
9
|
+
mcp: 'mcp',
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=telemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../../src/plus/integrations/telemetry.ts"],"names":[],"mappings":"AAkBA;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAA6C;IACxE,SAAS,EAAE,WAAW;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAA6C;IACxE,GAAG,EAAE,KAAK;CACV,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { RemoteProvider, RemoteProviderId } from '../../../git/models/remoteProvider.js';
|
|
2
|
+
import type { CloudGitSelfManagedHostIntegrationIds, IntegrationIds } from '../constants.js';
|
|
3
|
+
import { GitCloudHostIntegrationId, GitSelfManagedHostIntegrationId } from '../constants.js';
|
|
4
|
+
import type { GitHostIntegration } from '../models/gitHostIntegration.js';
|
|
5
|
+
import type { Integration, IntegrationConnectedKey } from '../models/integration.js';
|
|
6
|
+
export declare const supportedIntegrationIds: IntegrationIds[];
|
|
7
|
+
export declare function convertRemoteProviderIdToIntegrationId(remoteProviderId: RemoteProviderId): GitCloudHostIntegrationId | GitSelfManagedHostIntegrationId | undefined;
|
|
8
|
+
export declare function getIntegrationConnectedKey<T extends IntegrationIds>(id: T, domain?: string): IntegrationConnectedKey<T>;
|
|
9
|
+
export declare function getIntegrationIdForRemote(provider: RemoteProvider | undefined): GitCloudHostIntegrationId | GitSelfManagedHostIntegrationId | undefined;
|
|
10
|
+
export declare function isCloudGitSelfManagedHostIntegrationId(id: IntegrationIds): id is CloudGitSelfManagedHostIntegrationIds;
|
|
11
|
+
export declare function isGitHostIntegration(integration: Integration): integration is GitHostIntegration;
|
|
12
|
+
export declare function isGitCloudHostIntegrationId(id: IntegrationIds): id is GitCloudHostIntegrationId;
|
|
13
|
+
export declare function isGitSelfManagedHostIntegrationId(id: IntegrationIds): id is GitSelfManagedHostIntegrationId;
|
|
14
|
+
//# sourceMappingURL=integration.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration.utils.d.ts","sourceRoot":"","sources":["../../src/utils/integration.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAC9F,OAAO,KAAK,EAAE,qCAAqC,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EACN,yBAAyB,EACzB,+BAA+B,EAE/B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAuBrF,eAAO,MAAM,uBAAuB,EAAE,cAAc,EAS1C,CAAC;AAEX,wBAAgB,sCAAsC,CACrD,gBAAgB,EAAE,gBAAgB,GAChC,yBAAyB,GAAG,+BAA+B,GAAG,SAAS,CAezE;AAED,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,cAAc,EAClE,EAAE,EAAE,CAAC,EACL,MAAM,CAAC,EAAE,MAAM,GACb,uBAAuB,CAAC,CAAC,CAAC,CAS5B;AAED,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,cAAc,GAAG,SAAS,GAClC,yBAAyB,GAAG,+BAA+B,GAAG,SAAS,CA0BzE;AAED,wBAAgB,sCAAsC,CACrD,EAAE,EAAE,cAAc,GAChB,EAAE,IAAI,qCAAqC,CAU7C;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,IAAI,kBAAkB,CAEhG;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,cAAc,GAAG,EAAE,IAAI,yBAAyB,CAU/F;AAED,wBAAgB,iCAAiC,CAAC,EAAE,EAAE,cAAc,GAAG,EAAE,IAAI,+BAA+B,CAE3G"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { GitCloudHostIntegrationId, GitSelfManagedHostIntegrationId, IssuesCloudHostIntegrationId, } from '../constants.js';
|
|
2
|
+
import { isGitHubDotCom, isGitLabDotCom } from '../providers/models.js';
|
|
3
|
+
// These two domain checks live here (rather than in their provider modules) to
|
|
4
|
+
// break a top-level circular import. The provider modules synchronously read
|
|
5
|
+
// `providersMetadata[...]` at module init time, so importing from them while
|
|
6
|
+
// `providers/models.ts` is still loading triggers a TDZ on `providersMetadata`.
|
|
7
|
+
const azureCloudDomainRegex = /^dev\.azure\.com$|\bvisualstudio\.com$/i;
|
|
8
|
+
const bitbucketCloudDomainRegex = /^bitbucket\.org$/i;
|
|
9
|
+
function isAzureCloudDomain(domain) {
|
|
10
|
+
return domain != null && azureCloudDomainRegex.test(domain);
|
|
11
|
+
}
|
|
12
|
+
function isBitbucketCloudDomain(domain) {
|
|
13
|
+
return domain != null && bitbucketCloudDomainRegex.test(domain);
|
|
14
|
+
}
|
|
15
|
+
const selfHostedIntegrationIds = [
|
|
16
|
+
GitSelfManagedHostIntegrationId.CloudGitHubEnterprise,
|
|
17
|
+
GitSelfManagedHostIntegrationId.CloudGitLabSelfHosted,
|
|
18
|
+
GitSelfManagedHostIntegrationId.BitbucketServer,
|
|
19
|
+
GitSelfManagedHostIntegrationId.AzureDevOpsServer,
|
|
20
|
+
];
|
|
21
|
+
export const supportedIntegrationIds = [
|
|
22
|
+
GitCloudHostIntegrationId.GitHub,
|
|
23
|
+
GitCloudHostIntegrationId.GitLab,
|
|
24
|
+
GitCloudHostIntegrationId.Bitbucket,
|
|
25
|
+
GitCloudHostIntegrationId.AzureDevOps,
|
|
26
|
+
IssuesCloudHostIntegrationId.Jira,
|
|
27
|
+
// Note: Trello is metadata-only (no auth provider), so it is intentionally absent — including it
|
|
28
|
+
// would make reset()'s ensureProvider() throw 'No authentication provider registered'.
|
|
29
|
+
...selfHostedIntegrationIds,
|
|
30
|
+
];
|
|
31
|
+
export function convertRemoteProviderIdToIntegrationId(remoteProviderId) {
|
|
32
|
+
switch (remoteProviderId) {
|
|
33
|
+
case 'azure-devops':
|
|
34
|
+
return GitCloudHostIntegrationId.AzureDevOps;
|
|
35
|
+
case 'bitbucket':
|
|
36
|
+
return GitCloudHostIntegrationId.Bitbucket;
|
|
37
|
+
case 'github':
|
|
38
|
+
return GitCloudHostIntegrationId.GitHub;
|
|
39
|
+
case 'gitlab':
|
|
40
|
+
return GitCloudHostIntegrationId.GitLab;
|
|
41
|
+
case 'bitbucket-server':
|
|
42
|
+
return GitSelfManagedHostIntegrationId.BitbucketServer;
|
|
43
|
+
default:
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export function getIntegrationConnectedKey(id, domain) {
|
|
48
|
+
if (isGitSelfManagedHostIntegrationId(id)) {
|
|
49
|
+
if (!domain) {
|
|
50
|
+
throw new Error(`Domain is required for self-managed integration ID: ${id}`);
|
|
51
|
+
}
|
|
52
|
+
return `connected:${id}:${domain}`;
|
|
53
|
+
}
|
|
54
|
+
return `connected:${id}`;
|
|
55
|
+
}
|
|
56
|
+
export function getIntegrationIdForRemote(provider) {
|
|
57
|
+
switch (provider?.id) {
|
|
58
|
+
case 'azure-devops':
|
|
59
|
+
if (isAzureCloudDomain(provider.domain)) {
|
|
60
|
+
return GitCloudHostIntegrationId.AzureDevOps;
|
|
61
|
+
}
|
|
62
|
+
return provider.custom ? undefined : GitSelfManagedHostIntegrationId.AzureDevOpsServer;
|
|
63
|
+
case 'bitbucket':
|
|
64
|
+
case 'bitbucket-server':
|
|
65
|
+
if (isBitbucketCloudDomain(provider.domain)) {
|
|
66
|
+
return GitCloudHostIntegrationId.Bitbucket;
|
|
67
|
+
}
|
|
68
|
+
return GitSelfManagedHostIntegrationId.BitbucketServer;
|
|
69
|
+
case 'github':
|
|
70
|
+
if (provider.domain != null && !isGitHubDotCom(provider.domain)) {
|
|
71
|
+
return GitSelfManagedHostIntegrationId.CloudGitHubEnterprise;
|
|
72
|
+
}
|
|
73
|
+
return GitCloudHostIntegrationId.GitHub;
|
|
74
|
+
case 'gitlab':
|
|
75
|
+
if (provider.domain != null && !isGitLabDotCom(provider.domain)) {
|
|
76
|
+
return GitSelfManagedHostIntegrationId.CloudGitLabSelfHosted;
|
|
77
|
+
}
|
|
78
|
+
return GitCloudHostIntegrationId.GitLab;
|
|
79
|
+
default:
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
export function isCloudGitSelfManagedHostIntegrationId(id) {
|
|
84
|
+
switch (id) {
|
|
85
|
+
case GitSelfManagedHostIntegrationId.CloudGitHubEnterprise:
|
|
86
|
+
case GitSelfManagedHostIntegrationId.CloudGitLabSelfHosted:
|
|
87
|
+
case GitSelfManagedHostIntegrationId.BitbucketServer:
|
|
88
|
+
case GitSelfManagedHostIntegrationId.AzureDevOpsServer:
|
|
89
|
+
return true;
|
|
90
|
+
default:
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
export function isGitHostIntegration(integration) {
|
|
95
|
+
return integration.type === 'git';
|
|
96
|
+
}
|
|
97
|
+
export function isGitCloudHostIntegrationId(id) {
|
|
98
|
+
switch (id) {
|
|
99
|
+
case GitCloudHostIntegrationId.GitHub:
|
|
100
|
+
case GitCloudHostIntegrationId.GitLab:
|
|
101
|
+
case GitCloudHostIntegrationId.Bitbucket:
|
|
102
|
+
case GitCloudHostIntegrationId.AzureDevOps:
|
|
103
|
+
return true;
|
|
104
|
+
default:
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
export function isGitSelfManagedHostIntegrationId(id) {
|
|
109
|
+
return selfHostedIntegrationIds.includes(id);
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=integration.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration.utils.js","sourceRoot":"","sources":["../../src/utils/integration.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal disposable contract — a single `dispose(): void` method.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the shape of `vscode.Disposable` so vscode-free packages can name
|
|
5
|
+
* the contract without requiring lib.es2022's `[Symbol.dispose]`. Classes that
|
|
6
|
+
* already implement `dispose()` (the vscode-style) satisfy it without changes.
|
|
7
|
+
*
|
|
8
|
+
* Use {@link UnifiedDisposable} when you also need the `using`-statement
|
|
9
|
+
* (`Symbol.dispose`) protocol; everything else can stay on this looser type.
|
|
10
|
+
*/
|
|
11
|
+
export type Disposable = {
|
|
12
|
+
dispose: () => void;
|
|
13
|
+
};
|
|
1
14
|
export type UnifiedDisposable = {
|
|
2
15
|
dispose: () => void;
|
|
3
|
-
} & Disposable;
|
|
16
|
+
} & globalThis.Disposable;
|
|
4
17
|
export type UnifiedAsyncDisposable = {
|
|
5
18
|
dispose: () => Promise<void>;
|
|
6
19
|
} & AsyncDisposable;
|
|
@@ -14,7 +27,7 @@ export declare function createAsyncDisposable(dispose: () => Promise<any>, optio
|
|
|
14
27
|
once?: boolean;
|
|
15
28
|
}): UnifiedAsyncDisposable;
|
|
16
29
|
export declare function disposableInterval(fn: (...args: any[]) => void, ms: number): UnifiedDisposable;
|
|
17
|
-
export declare function fromDisposables(...disposables: (UnifiedDisposable | Disposable | {
|
|
30
|
+
export declare function fromDisposables(...disposables: (UnifiedDisposable | globalThis.Disposable | {
|
|
18
31
|
dispose: () => void;
|
|
19
32
|
} | undefined)[]): UnifiedDisposable;
|
|
20
33
|
/** Returns the existing object with disposable methods added */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../../src/utils/disposable.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"disposable.d.ts","sourceRoot":"","sources":["../../src/utils/disposable.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AAEH,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAEjD,MAAM,MAAM,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG,UAAU,CAAC,UAAU,CAAC;AAChF,MAAM,MAAM,sBAAsB,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAAG,eAAe,CAAC;AAExF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,iBAAiB,CAAC;AACvG,wBAAgB,gBAAgB,CAC/B,OAAO,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,EACjC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1B,iBAAiB,GAAG,SAAS,CAAC;AAiBjC,wBAAgB,qBAAqB,CACpC,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,EAC3B,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1B,sBAAsB,CASxB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,iBAAiB,CAgB9F;AAED,wBAAgB,eAAe,CAC9B,GAAG,WAAW,EAAE,CAAC,iBAAiB,GAAG,UAAU,CAAC,UAAU,GAAG;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG,SAAS,CAAC,EAAE,GACjG,iBAAiB,CAsBnB;AAED,gEAAgE;AAChE,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,EAAE,UAAU,EAAE,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC;AACzG,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,GAAG,SAAS,EAC5E,UAAU,EAAE,CAAC,GACX,CAAC,CAAC,GAAG,iBAAiB,CAAC,GAAG,SAAS,CAAC;AACvC,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,GAAG;IAAE,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,EACrE,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,MAAM,IAAI,GACjB,CAAC,GAAG,iBAAiB,CAAC;AAqBzB,sEAAsE;AACtE,wBAAgB,oBAAoB,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,EAC7E,UAAU,EAAE,CAAC,GACX,CAAC,GAAG,sBAAsB,CAAC;AAC9B,wBAAgB,oBAAoB,CAAC,CAAC,SAAS;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,SAAS,EACzF,UAAU,EAAE,CAAC,GACX,CAAC,CAAC,GAAG,sBAAsB,CAAC,GAAG,SAAS,CAAC;AAC5C,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,GAAG;IAAE,OAAO,CAAC,EAAE,KAAK,CAAA;CAAE,EAC1E,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,GACzB,CAAC,GAAG,sBAAsB,CAAC"}
|