@microsoft/vscode-azext-github 1.0.6 → 2.0.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.
Files changed (98) hide show
  1. package/dist/cjs/src/createOctokitClient.js +24 -0
  2. package/{out → dist/cjs}/src/extensionVariables.js +3 -5
  3. package/{out → dist/cjs}/src/tree/ActionItem.d.ts +6 -6
  4. package/dist/cjs/src/tree/ActionItem.js +78 -0
  5. package/{out → dist/cjs}/src/tree/ActionsItemBase.d.ts +3 -3
  6. package/dist/cjs/src/tree/ActionsItemBase.js +104 -0
  7. package/{out → dist/cjs}/src/tree/JobItem.d.ts +6 -6
  8. package/{out → dist/cjs}/src/tree/JobItem.js +15 -18
  9. package/{out → dist/cjs}/src/tree/StepItem.d.ts +6 -6
  10. package/{out → dist/cjs}/src/tree/StepItem.js +13 -4
  11. package/{out → dist/cjs}/src/utils/actionUtils.js +11 -8
  12. package/dist/cjs/src/utils/getGitHubAccessToken.js +30 -0
  13. package/{out → dist/cjs}/src/utils/gitHubUrlParse.js +3 -5
  14. package/dist/cjs/src/wizard/GitHubBranchListStep.js +59 -0
  15. package/dist/cjs/src/wizard/GitHubOrgListStep.js +39 -0
  16. package/dist/cjs/src/wizard/GitHubRepositoryListStep.js +64 -0
  17. package/dist/cjs/src/wrappers/getActions.js +16 -0
  18. package/dist/cjs/src/wrappers/getAuthenticatedUser.js +16 -0
  19. package/dist/cjs/src/wrappers/getBranches.js +16 -0
  20. package/dist/cjs/src/wrappers/getJobs.js +16 -0
  21. package/dist/cjs/src/wrappers/getOrgs.js +16 -0
  22. package/dist/cjs/src/wrappers/getRepositories.js +24 -0
  23. package/dist/esm/src/GitHubContext.d.ts +9 -0
  24. package/dist/esm/src/GitHubContext.js +6 -0
  25. package/dist/esm/src/constants.d.ts +4 -0
  26. package/dist/esm/src/constants.js +10 -0
  27. package/dist/esm/src/createOctokitClient.d.ts +9 -0
  28. package/dist/esm/src/createOctokitClient.js +21 -0
  29. package/dist/esm/src/extensionVariables.d.ts +13 -0
  30. package/dist/esm/src/extensionVariables.js +37 -0
  31. package/dist/esm/src/index.d.ts +15 -0
  32. package/dist/esm/src/index.js +23 -0
  33. package/dist/esm/src/tree/ActionItem.d.ts +19 -0
  34. package/dist/esm/src/tree/ActionItem.js +74 -0
  35. package/dist/esm/src/tree/ActionsItemBase.d.ts +59 -0
  36. package/dist/esm/src/tree/ActionsItemBase.js +100 -0
  37. package/dist/esm/src/tree/JobItem.d.ts +16 -0
  38. package/dist/esm/src/tree/JobItem.js +44 -0
  39. package/dist/esm/src/tree/StepItem.d.ts +15 -0
  40. package/dist/esm/src/tree/StepItem.js +38 -0
  41. package/dist/esm/src/utils/actionUtils.d.ts +35 -0
  42. package/dist/esm/src/utils/actionUtils.js +123 -0
  43. package/dist/esm/src/utils/getGitHubAccessToken.d.ts +1 -0
  44. package/dist/esm/src/utils/getGitHubAccessToken.js +27 -0
  45. package/dist/esm/src/utils/gitHubUrlParse.d.ts +23 -0
  46. package/dist/esm/src/utils/gitHubUrlParse.js +18 -0
  47. package/dist/esm/src/wizard/GitHubBranchListStep.d.ts +13 -0
  48. package/dist/esm/src/wizard/GitHubBranchListStep.js +55 -0
  49. package/dist/esm/src/wizard/GitHubOrgListStep.d.ts +11 -0
  50. package/dist/esm/src/wizard/GitHubOrgListStep.js +35 -0
  51. package/dist/esm/src/wizard/GitHubRepositoryListStep.d.ts +13 -0
  52. package/dist/esm/src/wizard/GitHubRepositoryListStep.js +60 -0
  53. package/dist/esm/src/wrappers/getActions.d.ts +9 -0
  54. package/dist/esm/src/wrappers/getActions.js +13 -0
  55. package/dist/esm/src/wrappers/getAuthenticatedUser.d.ts +7 -0
  56. package/dist/esm/src/wrappers/getAuthenticatedUser.js +13 -0
  57. package/dist/esm/src/wrappers/getBranches.d.ts +11 -0
  58. package/dist/esm/src/wrappers/getBranches.js +13 -0
  59. package/dist/esm/src/wrappers/getJobs.d.ts +10 -0
  60. package/dist/esm/src/wrappers/getJobs.js +13 -0
  61. package/dist/esm/src/wrappers/getOrgs.d.ts +7 -0
  62. package/dist/esm/src/wrappers/getOrgs.js +13 -0
  63. package/dist/esm/src/wrappers/getRepositories.d.ts +16 -0
  64. package/dist/esm/src/wrappers/getRepositories.js +20 -0
  65. package/package.json +16 -10
  66. package/out/src/createOctokitClient.js +0 -36
  67. package/out/src/tree/ActionItem.js +0 -81
  68. package/out/src/tree/ActionsItemBase.js +0 -114
  69. package/out/src/utils/getGitHubAccessToken.js +0 -42
  70. package/out/src/wizard/GitHubBranchListStep.js +0 -71
  71. package/out/src/wizard/GitHubOrgListStep.js +0 -52
  72. package/out/src/wizard/GitHubRepositoryListStep.js +0 -77
  73. package/out/src/wrappers/getActions.js +0 -28
  74. package/out/src/wrappers/getAuthenticatedUser.js +0 -28
  75. package/out/src/wrappers/getBranches.js +0 -28
  76. package/out/src/wrappers/getJobs.js +0 -28
  77. package/out/src/wrappers/getOrgs.js +0 -28
  78. package/out/src/wrappers/getRepositories.js +0 -38
  79. /package/{out → dist/cjs}/src/GitHubContext.d.ts +0 -0
  80. /package/{out → dist/cjs}/src/GitHubContext.js +0 -0
  81. /package/{out → dist/cjs}/src/constants.d.ts +0 -0
  82. /package/{out → dist/cjs}/src/constants.js +0 -0
  83. /package/{out → dist/cjs}/src/createOctokitClient.d.ts +0 -0
  84. /package/{out → dist/cjs}/src/extensionVariables.d.ts +0 -0
  85. /package/{out → dist/cjs}/src/index.d.ts +0 -0
  86. /package/{out → dist/cjs}/src/index.js +0 -0
  87. /package/{out → dist/cjs}/src/utils/actionUtils.d.ts +0 -0
  88. /package/{out → dist/cjs}/src/utils/getGitHubAccessToken.d.ts +0 -0
  89. /package/{out → dist/cjs}/src/utils/gitHubUrlParse.d.ts +0 -0
  90. /package/{out → dist/cjs}/src/wizard/GitHubBranchListStep.d.ts +0 -0
  91. /package/{out → dist/cjs}/src/wizard/GitHubOrgListStep.d.ts +0 -0
  92. /package/{out → dist/cjs}/src/wizard/GitHubRepositoryListStep.d.ts +0 -0
  93. /package/{out → dist/cjs}/src/wrappers/getActions.d.ts +0 -0
  94. /package/{out → dist/cjs}/src/wrappers/getAuthenticatedUser.d.ts +0 -0
  95. /package/{out → dist/cjs}/src/wrappers/getBranches.d.ts +0 -0
  96. /package/{out → dist/cjs}/src/wrappers/getJobs.d.ts +0 -0
  97. /package/{out → dist/cjs}/src/wrappers/getOrgs.d.ts +0 -0
  98. /package/{out → dist/cjs}/src/wrappers/getRepositories.d.ts +0 -0
@@ -0,0 +1,16 @@
1
+ import type { RestEndpointMethodTypes } from "@octokit/rest";
2
+ import type { GitHubContext } from "../GitHubContext";
3
+ export type UserRepos = RestEndpointMethodTypes["repos"]["listForAuthenticatedUser"]["response"]["data"];
4
+ export type GetUserReposReqParams = RestEndpointMethodTypes["repos"]["listForAuthenticatedUser"]["parameters"];
5
+ /**
6
+ * A wrapper for Octokit's: `client.repos.listForAuthenticatedUser`
7
+ */
8
+ export declare function getRepositoriesByUser(context: GitHubContext, reqParams?: GetUserReposReqParams): Promise<UserRepos>;
9
+ export type OrgRepos = RestEndpointMethodTypes["repos"]["listForOrg"]["response"]["data"];
10
+ export type GetOrgReposReqParams = RestEndpointMethodTypes["repos"]["listForOrg"]["parameters"] & {
11
+ org: string;
12
+ };
13
+ /**
14
+ * A wrapper for Octokit's: `client.repos.listForOrg`
15
+ */
16
+ export declare function getRepositoriesByOrg(context: GitHubContext, reqParams: GetOrgReposReqParams): Promise<OrgRepos>;
@@ -0,0 +1,20 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ import { createOctokitClient } from "../createOctokitClient";
6
+ /**
7
+ * A wrapper for Octokit's: `client.repos.listForAuthenticatedUser`
8
+ */
9
+ export async function getRepositoriesByUser(context, reqParams) {
10
+ const client = await createOctokitClient(context);
11
+ return (await client.repos.listForAuthenticatedUser(reqParams)).data;
12
+ }
13
+ /**
14
+ * A wrapper for Octokit's: `client.repos.listForOrg`
15
+ */
16
+ export async function getRepositoriesByOrg(context, reqParams) {
17
+ const client = await createOctokitClient(context);
18
+ return (await client.repos.listForOrg(reqParams)).data;
19
+ }
20
+ //# sourceMappingURL=getRepositories.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@microsoft/vscode-azext-github",
3
3
  "author": "Microsoft Corporation",
4
- "version": "1.0.6",
4
+ "version": "2.0.0",
5
5
  "description": "Common GitHub tools for VS Code",
6
6
  "tags": [
7
7
  "azure",
@@ -11,8 +11,9 @@
11
11
  "azure",
12
12
  "vscode"
13
13
  ],
14
- "main": "out/src/index.js",
15
- "types": "out/src/index.d.ts",
14
+ "module": "dist/esm/src/index.js",
15
+ "main": "dist/cjs/src/index.js",
16
+ "types": "dist/esm/src/index.d.ts",
16
17
  "license": "MIT",
17
18
  "repository": {
18
19
  "type": "git",
@@ -23,20 +24,25 @@
23
24
  },
24
25
  "homepage": "https://github.com/Microsoft/vscode-azuretools/blob/main/github/README.md",
25
26
  "scripts": {
26
- "build": "tsc -p ./",
27
- "compile": "tsc -watch -p ./",
27
+ "build": "npm run build:esm && npm run build:cjs",
28
+ "build:esm": "tsc -p ./",
29
+ "build:cjs": "tsc -p ./ --outDir ./dist/cjs --module nodenext --moduleResolution nodenext",
28
30
  "lint": "eslint --ext .ts .",
29
31
  "lint-fix": "eslint --ext .ts . --fix",
30
32
  "package": "npm pack",
31
- "test": "node ./out/test/runTest.js",
33
+ "test": "node ./dist/cjs/test/runTest.js",
32
34
  "l10n": "npx @vscode/l10n-dev export --outDir ./l10n ./src"
33
35
  },
36
+ "engines": {
37
+ "vscode": "^1.105.0"
38
+ },
34
39
  "devDependencies": {
35
40
  "@microsoft/eslint-config-azuretools": "^0.2.1",
41
+ "@microsoft/vscode-azureresources-api": "^3.0.0",
36
42
  "@types/glob": "^8.1.0",
37
43
  "@types/mocha": "^7.0.2",
38
- "@types/node": "^16.0.0",
39
- "@types/vscode": "1.95.0",
44
+ "@types/node": "22.x",
45
+ "@types/vscode": "1.104.0",
40
46
  "@typescript-eslint/eslint-plugin": "^5.53.0",
41
47
  "@vscode/test-electron": "^2.3.8",
42
48
  "eslint": "^8.34.0",
@@ -45,10 +51,10 @@
45
51
  "mocha": "^10.8.2",
46
52
  "mocha-junit-reporter": "^2.0.2",
47
53
  "mocha-multi-reporters": "^1.1.7",
48
- "typescript": "^5.1.3"
54
+ "typescript": "^5.9.3"
49
55
  },
50
56
  "dependencies": {
51
- "@microsoft/vscode-azext-utils": "^3.4.1",
57
+ "@microsoft/vscode-azext-utils": "^4.0.0",
52
58
  "@octokit/rest": "^20.1.2"
53
59
  }
54
60
  }
@@ -1,36 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.createOctokitClient = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const rest_1 = require("@octokit/rest");
19
- const getGitHubAccessToken_1 = require("./utils/getGitHubAccessToken");
20
- /**
21
- * Can be used to initialize a new Octokit client.
22
- *
23
- * Note: Typically does not need to be called directly by client extensions
24
- * unless implementing a custom behavior.
25
- */
26
- function createOctokitClient(context) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- context.gitHubAccessToken || (context.gitHubAccessToken = yield (0, getGitHubAccessToken_1.getGitHubAccessToken)());
29
- return new rest_1.Octokit({
30
- userAgent: (0, vscode_azext_utils_1.appendExtensionUserAgent)(),
31
- auth: context.gitHubAccessToken
32
- });
33
- });
34
- }
35
- exports.createOctokitClient = createOctokitClient;
36
- //# sourceMappingURL=createOctokitClient.js.map
@@ -1,81 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ActionItem = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const actionUtils_1 = require("../utils/actionUtils");
20
- const gitHubUrlParse_1 = require("../utils/gitHubUrlParse");
21
- const getJobs_1 = require("../wrappers/getJobs");
22
- const JobItem_1 = require("./JobItem");
23
- class ActionItem {
24
- constructor(parentResourceId, extensionPrefixContextValue, actionWorkflowRuns) {
25
- var _a;
26
- this.parentResourceId = parentResourceId;
27
- this.extensionPrefixContextValue = extensionPrefixContextValue;
28
- this.actionWorkflowRuns = actionWorkflowRuns;
29
- this.id = `${this.parentResourceId}/${this.actionWorkflowRuns.id}`;
30
- this.label = ((_a = this.actionWorkflowRuns.head_commit) === null || _a === void 0 ? void 0 : _a.message) || this.actionWorkflowRuns.head_sha;
31
- this.viewProperties = {
32
- data: this.actionWorkflowRuns,
33
- label: this.label,
34
- };
35
- }
36
- get contextValue() {
37
- const actionTreeItemContextValue = `${this.extensionPrefixContextValue}${ActionItem.contextValueSuffix}`;
38
- const values = [actionTreeItemContextValue];
39
- if ((0, vscode_azext_utils_1.nonNullProp)(this.actionWorkflowRuns, 'status') === actionUtils_1.Status.Completed) {
40
- values.push(ActionItem.completedContextValue);
41
- }
42
- else {
43
- values.push(ActionItem.inProgressContextValue);
44
- }
45
- return (0, vscode_azext_utils_1.createContextValue)(values);
46
- }
47
- getTreeItem() {
48
- return {
49
- id: this.id,
50
- label: this.label,
51
- description: this.actionWorkflowRuns.event,
52
- iconPath: (0, actionUtils_1.getActionBasedIconPath)(this.actionWorkflowRuns),
53
- contextValue: this.contextValue,
54
- collapsibleState: vscode_1.TreeItemCollapsibleState.Collapsed
55
- };
56
- }
57
- getChildren() {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const jobsData = yield (0, vscode_azext_utils_1.callWithTelemetryAndErrorHandling)('getActionChildren', (context) => __awaiter(this, void 0, void 0, function* () {
60
- const { ownerOrOrganization, repositoryName } = (0, gitHubUrlParse_1.gitHubUrlParse)(this.actionWorkflowRuns.repository.html_url);
61
- const getJobsParams = {
62
- owner: (0, vscode_azext_utils_1.nonNullValue)(ownerOrOrganization),
63
- repo: (0, vscode_azext_utils_1.nonNullValue)(repositoryName),
64
- run_id: this.actionWorkflowRuns.id
65
- };
66
- return yield (0, getJobs_1.getJobs)(context, getJobsParams);
67
- }));
68
- if (jobsData === null || jobsData === void 0 ? void 0 : jobsData.total_count) {
69
- return jobsData.jobs.map((job) => new JobItem_1.JobItem(this.id, this.extensionPrefixContextValue, job));
70
- }
71
- else {
72
- return [];
73
- }
74
- });
75
- }
76
- }
77
- exports.ActionItem = ActionItem;
78
- ActionItem.contextValueSuffix = 'ActionItem';
79
- ActionItem.completedContextValue = 'actionState:completed';
80
- ActionItem.inProgressContextValue = 'actionState:inProgress';
81
- //# sourceMappingURL=ActionItem.js.map
@@ -1,114 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.ActionsItemBase = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const gitHubUrlParse_1 = require("../utils/gitHubUrlParse");
20
- const getActions_1 = require("../wrappers/getActions");
21
- const ActionItem_1 = require("./ActionItem");
22
- /**
23
- * Base tree node for setting up and tracking GitHub Actions in the tree view.
24
- * Branching children will be automatically setup and included to track actions, jobs, and steps.
25
- */
26
- class ActionsItemBase {
27
- /**
28
- * @param parentId A unique identifier corresponding to the id of the parent tree node
29
- * @param contextValueExtensionPrefix The extension prefix used in constructing context values for the 'ActionsItem'
30
- * and its children. Passing 'containerApps' becomes `containerApps${ActionsItemBase.contextValueSuffix}`.
31
- */
32
- constructor(parentId, contextValueExtensionPrefix) {
33
- this.parentId = parentId;
34
- this.contextValueExtensionPrefix = contextValueExtensionPrefix;
35
- /**
36
- * Constructed using the format: `${this.parentId}/${ActionsTreeItemBase.idSuffix}`
37
- */
38
- this.id = `${this.parentId}/${ActionsItemBase.idSuffix}`;
39
- this.label = 'Actions';
40
- }
41
- getContextValue(isConnected) {
42
- const actionsTreeItemContextValue = `${this.contextValueExtensionPrefix}${ActionsItemBase.contextValueSuffix}`;
43
- const values = [actionsTreeItemContextValue];
44
- values.push(isConnected ? ActionsItemBase.connectedContextValue : ActionsItemBase.unconnectedContextValue);
45
- return (0, vscode_azext_utils_1.createContextValue)(values);
46
- }
47
- getTreeItem() {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const isConnected = !!(yield this.getSourceControl());
50
- return {
51
- id: this.id,
52
- label: this.label,
53
- description: isConnected ? vscode_1.l10n.t('Connected') : '',
54
- iconPath: new vscode_1.ThemeIcon('github-inverted'),
55
- contextValue: this.getContextValue(isConnected),
56
- collapsibleState: vscode_1.TreeItemCollapsibleState.Collapsed,
57
- };
58
- });
59
- }
60
- getChildren() {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- const sourceControl = yield this.getSourceControl();
63
- const actionsListWorkflowRuns = yield (0, vscode_azext_utils_1.callWithTelemetryAndErrorHandling)('getActionsChildren', (context) => __awaiter(this, void 0, void 0, function* () {
64
- var _a;
65
- if (!sourceControl) {
66
- return undefined;
67
- }
68
- const { ownerOrOrganization, repositoryName } = (0, gitHubUrlParse_1.gitHubUrlParse)(sourceControl.repoUrl);
69
- const actionWorkflowRunsParams = {
70
- owner: (0, vscode_azext_utils_1.nonNullValue)(ownerOrOrganization),
71
- repo: (0, vscode_azext_utils_1.nonNullValue)(repositoryName),
72
- branch: (_a = sourceControl.repoBranch) !== null && _a !== void 0 ? _a : 'main',
73
- page: 1,
74
- };
75
- context.errorHandling.suppressDisplay = true;
76
- return yield (0, getActions_1.getActions)(context, actionWorkflowRunsParams);
77
- }));
78
- if (actionsListWorkflowRuns === null || actionsListWorkflowRuns === void 0 ? void 0 : actionsListWorkflowRuns.total_count) {
79
- return actionsListWorkflowRuns.workflow_runs.map((awr) => new ActionItem_1.ActionItem(this.id, this.contextValueExtensionPrefix, awr));
80
- }
81
- else if (sourceControl) {
82
- // If we are able to detect a connection but fail to retrieve a list of actions
83
- return [
84
- (0, vscode_azext_utils_1.createGenericElement)({
85
- contextValue: 'noActionsDetected',
86
- id: `${this.parentId}/noActionsDetected`,
87
- label: vscode_1.l10n.t('No actions detected'),
88
- })
89
- ];
90
- }
91
- else {
92
- let command;
93
- if (this.getConnectToGitHubCommand) {
94
- command = yield this.getConnectToGitHubCommand();
95
- }
96
- return [
97
- (0, vscode_azext_utils_1.createGenericElement)({
98
- contextValue: 'connectToGitHub',
99
- id: `${this.parentId}/connectToGitHub`,
100
- label: vscode_1.l10n.t('Connect to a GitHub Repository...'),
101
- commandId: command === null || command === void 0 ? void 0 : command.commandId,
102
- commandArgs: command === null || command === void 0 ? void 0 : command.commandArgs
103
- })
104
- ];
105
- }
106
- });
107
- }
108
- }
109
- exports.ActionsItemBase = ActionsItemBase;
110
- ActionsItemBase.contextValueSuffix = 'ActionsItem';
111
- ActionsItemBase.connectedContextValue = 'actionsConnected:true';
112
- ActionsItemBase.unconnectedContextValue = 'actionsConnected:false';
113
- ActionsItemBase.idSuffix = 'actions';
114
- //# sourceMappingURL=ActionsItemBase.js.map
@@ -1,42 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.getGitHubAccessToken = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const constants_1 = require("../constants");
20
- function getGitHubAccessToken() {
21
- return __awaiter(this, void 0, void 0, function* () {
22
- try {
23
- const token = (yield vscode_1.authentication.getSession(constants_1.gitHubAuthProviderId, constants_1.gitHubScopes, { createIfNone: true })).accessToken;
24
- // Workaround for VS Code returning a different token when connected to a CodeSpace in a browser
25
- // see https://github.com/microsoft/vscode-azurestaticwebapps/issues/827#issuecomment-1597881084 for details
26
- if (token.startsWith('ghu_')) {
27
- // Request a fake scope to force VS Code to give us a token of the right type
28
- return (yield vscode_1.authentication.getSession(constants_1.gitHubAuthProviderId, [...constants_1.gitHubScopes, 'x-AzToolsScope'], { createIfNone: true })).accessToken;
29
- }
30
- return token;
31
- }
32
- catch (error) {
33
- // The error message is "User did not consent to login"
34
- if (/did not consent/i.test((0, vscode_azext_utils_1.parseError)(error).message)) {
35
- throw new vscode_azext_utils_1.UserCancelledError('getGitHubToken');
36
- }
37
- throw error;
38
- }
39
- });
40
- }
41
- exports.getGitHubAccessToken = getGitHubAccessToken;
42
- //# sourceMappingURL=getGitHubAccessToken.js.map
@@ -1,71 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.GitHubBranchListStep = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const constants_1 = require("../constants");
20
- const getBranches_1 = require("../wrappers/getBranches");
21
- /**
22
- * Used to prompt the user for the GitHub repository branch
23
- * @prerequisites gitHubRepository, gitHubRepositoryOwner
24
- * @populates gitHubBranch
25
- */
26
- class GitHubBranchListStep extends vscode_azext_utils_1.AzureWizardPromptStep {
27
- prompt(context) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- // We always want fresh picks before prompting in case the user has pressed the back button
30
- this.picks = [];
31
- const placeHolder = vscode_1.l10n.t('Select a branch');
32
- let page = 0;
33
- while (!context.gitHubBranch) {
34
- page++;
35
- context.gitHubBranch = (yield context.ui.showQuickPick(this.getPicks(context, page), { placeHolder })).data;
36
- }
37
- context.valuesToMask.push(context.gitHubBranch);
38
- });
39
- }
40
- shouldPrompt(context) {
41
- return !context.gitHubBranch;
42
- }
43
- getPicks(context, page) {
44
- return __awaiter(this, void 0, void 0, function* () {
45
- const perPage = 50;
46
- const branchParams = {
47
- owner: (0, vscode_azext_utils_1.nonNullProp)(context, 'gitHubRepositoryOwner'),
48
- repo: (0, vscode_azext_utils_1.nonNullProp)(context, 'gitHubRepository'),
49
- per_page: perPage,
50
- page
51
- };
52
- const branches = yield (0, getBranches_1.getBranches)(context, branchParams);
53
- this.picks.push(...branches.map((branch) => { return { label: branch.name, data: branch.name }; }));
54
- this.picks.sort((a, b) => {
55
- if (a.label === 'main' || a.label === 'master') {
56
- return -1;
57
- }
58
- else if (b.label === 'main' || b.label === 'master') {
59
- return 1;
60
- }
61
- else {
62
- return a.label.localeCompare(b.label);
63
- }
64
- });
65
- const maxAvailablePicks = perPage * page;
66
- return maxAvailablePicks === this.picks.length ? [...this.picks, constants_1.loadMoreQp] : this.picks;
67
- });
68
- }
69
- }
70
- exports.GitHubBranchListStep = GitHubBranchListStep;
71
- //# sourceMappingURL=GitHubBranchListStep.js.map
@@ -1,52 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.GitHubOrgListStep = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const getAuthenticatedUser_1 = require("../wrappers/getAuthenticatedUser");
20
- const getOrgs_1 = require("../wrappers/getOrgs");
21
- /**
22
- * Used to prompt the user for the repository's GitHub organization
23
- * @populates gitHubOrg
24
- */
25
- class GitHubOrgListStep extends vscode_azext_utils_1.AzureWizardPromptStep {
26
- prompt(context) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const placeHolder = vscode_1.l10n.t('Select an organization');
29
- context.gitHubOrg = (yield context.ui.showQuickPick(this.getPicks(context), { placeHolder })).data;
30
- if (context.gitHubOrg) {
31
- context.valuesToMask.push(context.gitHubOrg);
32
- }
33
- });
34
- }
35
- shouldPrompt(context) {
36
- return !context.gitHubOrg;
37
- }
38
- getPicks(context) {
39
- return __awaiter(this, void 0, void 0, function* () {
40
- const user = yield (0, getAuthenticatedUser_1.getAuthenticatedUser)(context);
41
- const orgs = yield (0, getOrgs_1.getOrgs)(context);
42
- return [
43
- { label: user.login, data: undefined },
44
- ...orgs.map((org) => {
45
- return { label: org.login, data: org.login };
46
- })
47
- ];
48
- });
49
- }
50
- }
51
- exports.GitHubOrgListStep = GitHubOrgListStep;
52
- //# sourceMappingURL=GitHubOrgListStep.js.map
@@ -1,77 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.GitHubRepositoryListStep = void 0;
17
- const vscode_azext_utils_1 = require("@microsoft/vscode-azext-utils");
18
- const vscode_1 = require("vscode");
19
- const constants_1 = require("../constants");
20
- const getRepositories_1 = require("../wrappers/getRepositories");
21
- /**
22
- * Used to prompt the user for the GitHub repository
23
- * @prerequisites gitHubOrg
24
- * @populates gitHubRepository, gitHubRepositoryOwner, gitHubRepositoryUrl
25
- */
26
- class GitHubRepositoryListStep extends vscode_azext_utils_1.AzureWizardPromptStep {
27
- prompt(context) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- // We always want fresh picks before prompting in case the user has pressed the back button
30
- this.picks = [];
31
- const placeHolder = vscode_1.l10n.t('Select a repository');
32
- let page = 0;
33
- let repositoryData;
34
- while (!repositoryData) {
35
- page++;
36
- repositoryData = (yield context.ui.showQuickPick(this.getPicks(context, page), { placeHolder })).data;
37
- }
38
- context.gitHubRepository = repositoryData.repo;
39
- context.gitHubRepositoryOwner = repositoryData.owner;
40
- context.gitHubRepositoryUrl = repositoryData.url;
41
- context.valuesToMask.push(context.gitHubRepository);
42
- context.valuesToMask.push(context.gitHubRepositoryOwner);
43
- context.valuesToMask.push(context.gitHubRepositoryUrl);
44
- });
45
- }
46
- shouldPrompt(context) {
47
- return !context.gitHubRepository || !context.gitHubRepositoryOwner;
48
- }
49
- getPicks(context, page) {
50
- var _a;
51
- return __awaiter(this, void 0, void 0, function* () {
52
- const perPage = 50;
53
- const userRepoParams = {
54
- affiliation: 'owner',
55
- visibility: 'all',
56
- per_page: perPage,
57
- page
58
- };
59
- const orgRepoParams = {
60
- // Doesn't matter if context.gitHubOrg is undefined; that just means we will end up calling 'getRepositoriesByUser' instead
61
- org: (_a = context.gitHubOrg) !== null && _a !== void 0 ? _a : '',
62
- type: 'all',
63
- per_page: perPage,
64
- page
65
- };
66
- // Intentionally use the same map callback on two lines below to force TypeScript to infer the proper repo type
67
- this.picks.push(...(context.gitHubOrg ?
68
- (yield (0, getRepositories_1.getRepositoriesByOrg)(context, orgRepoParams)).map((repo) => { return { label: repo.name, data: { owner: repo.owner.login, repo: repo.name, url: repo.html_url } }; }) :
69
- (yield (0, getRepositories_1.getRepositoriesByUser)(context, userRepoParams)).map((repo) => { return { label: repo.name, data: { owner: repo.owner.login, repo: repo.name, url: repo.html_url } }; })));
70
- this.picks.sort((a, b) => a.label.localeCompare(b.label));
71
- const maxPicksAvailable = perPage * page;
72
- return (maxPicksAvailable === this.picks.length) ? [...this.picks, constants_1.loadMoreQp] : this.picks;
73
- });
74
- }
75
- }
76
- exports.GitHubRepositoryListStep = GitHubRepositoryListStep;
77
- //# sourceMappingURL=GitHubRepositoryListStep.js.map
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.getActions = void 0;
17
- const createOctokitClient_1 = require("../createOctokitClient");
18
- /**
19
- * A wrapper for Octokit's: `client.actions.listWorkflowRunsForRepo`
20
- */
21
- function getActions(context, params) {
22
- return __awaiter(this, void 0, void 0, function* () {
23
- const client = yield (0, createOctokitClient_1.createOctokitClient)(context);
24
- return (yield client.actions.listWorkflowRunsForRepo(params)).data;
25
- });
26
- }
27
- exports.getActions = getActions;
28
- //# sourceMappingURL=getActions.js.map
@@ -1,28 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Microsoft Corporation. All rights reserved.
4
- * Licensed under the MIT License. See License.txt in the project root for license information.
5
- *--------------------------------------------------------------------------------------------*/
6
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
- return new (P || (P = Promise))(function (resolve, reject) {
9
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
- step((generator = generator.apply(thisArg, _arguments || [])).next());
13
- });
14
- };
15
- Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.getAuthenticatedUser = void 0;
17
- const createOctokitClient_1 = require("../createOctokitClient");
18
- /**
19
- * A wrapper for Octokit's: `client.users.getAuthenticated`
20
- */
21
- function getAuthenticatedUser(context) {
22
- return __awaiter(this, void 0, void 0, function* () {
23
- const client = yield (0, createOctokitClient_1.createOctokitClient)(context);
24
- return (yield client.users.getAuthenticated()).data;
25
- });
26
- }
27
- exports.getAuthenticatedUser = getAuthenticatedUser;
28
- //# sourceMappingURL=getAuthenticatedUser.js.map