@devrev/git-sdk 0.11.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/README.md +2 -0
- package/dist/adapter/adapter.d.ts +9 -0
- package/dist/adapter/adapter.js +3 -0
- package/dist/adapter/adapter.js.map +1 -0
- package/dist/config/create-config.d.ts +34 -0
- package/dist/config/create-config.js +33 -0
- package/dist/config/create-config.js.map +1 -0
- package/dist/config/index.d.ts +4 -0
- package/dist/config/index.js +9 -0
- package/dist/config/index.js.map +1 -0
- package/dist/devrev/client.d.ts +104 -0
- package/dist/devrev/client.js +113 -0
- package/dist/devrev/client.js.map +1 -0
- package/dist/devrev/http.d.ts +42 -0
- package/dist/devrev/http.js +105 -0
- package/dist/devrev/http.js.map +1 -0
- package/dist/devrev/index.d.ts +7 -0
- package/dist/devrev/index.js +43 -0
- package/dist/devrev/index.js.map +1 -0
- package/dist/devrev/managers/code_change_manager.d.ts +48 -0
- package/dist/devrev/managers/code_change_manager.js +227 -0
- package/dist/devrev/managers/code_change_manager.js.map +1 -0
- package/dist/devrev/managers/code_change_schema.d.ts +12 -0
- package/dist/devrev/managers/code_change_schema.js +317 -0
- package/dist/devrev/managers/code_change_schema.js.map +1 -0
- package/dist/devrev/managers/custom_link_type_manager.d.ts +33 -0
- package/dist/devrev/managers/custom_link_type_manager.js +94 -0
- package/dist/devrev/managers/custom_link_type_manager.js.map +1 -0
- package/dist/devrev/managers/dev_user_manager.d.ts +53 -0
- package/dist/devrev/managers/dev_user_manager.js +155 -0
- package/dist/devrev/managers/dev_user_manager.js.map +1 -0
- package/dist/devrev/managers/index.d.ts +9 -0
- package/dist/devrev/managers/index.js +20 -0
- package/dist/devrev/managers/index.js.map +1 -0
- package/dist/devrev/managers/link_manager.d.ts +41 -0
- package/dist/devrev/managers/link_manager.js +111 -0
- package/dist/devrev/managers/link_manager.js.map +1 -0
- package/dist/devrev/managers/tenant_fragment_manager.d.ts +26 -0
- package/dist/devrev/managers/tenant_fragment_manager.js +68 -0
- package/dist/devrev/managers/tenant_fragment_manager.js.map +1 -0
- package/dist/devrev/managers/timeline_manager.d.ts +86 -0
- package/dist/devrev/managers/timeline_manager.js +184 -0
- package/dist/devrev/managers/timeline_manager.js.map +1 -0
- package/dist/devrev/types.d.ts +139 -0
- package/dist/devrev/types.js +127 -0
- package/dist/devrev/types.js.map +1 -0
- package/dist/handlers/commit_push_handler.d.ts +31 -0
- package/dist/handlers/commit_push_handler.js +145 -0
- package/dist/handlers/commit_push_handler.js.map +1 -0
- package/dist/handlers/helpers.d.ts +87 -0
- package/dist/handlers/helpers.js +201 -0
- package/dist/handlers/helpers.js.map +1 -0
- package/dist/handlers/index.d.ts +12 -0
- package/dist/handlers/index.js +26 -0
- package/dist/handlers/index.js.map +1 -0
- package/dist/handlers/pr_create_handler.d.ts +36 -0
- package/dist/handlers/pr_create_handler.js +121 -0
- package/dist/handlers/pr_create_handler.js.map +1 -0
- package/dist/handlers/pr_merge_handler.d.ts +29 -0
- package/dist/handlers/pr_merge_handler.js +86 -0
- package/dist/handlers/pr_merge_handler.js.map +1 -0
- package/dist/handlers/pr_review_handler.d.ts +30 -0
- package/dist/handlers/pr_review_handler.js +109 -0
- package/dist/handlers/pr_review_handler.js.map +1 -0
- package/dist/handlers/registry.d.ts +9 -0
- package/dist/handlers/registry.js +22 -0
- package/dist/handlers/registry.js.map +1 -0
- package/dist/handlers/types.d.ts +46 -0
- package/dist/handlers/types.js +6 -0
- package/dist/handlers/types.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +65 -0
- package/dist/index.js.map +1 -0
- package/dist/orchestrator/event_orchestrator.d.ts +99 -0
- package/dist/orchestrator/event_orchestrator.js +137 -0
- package/dist/orchestrator/event_orchestrator.js.map +1 -0
- package/dist/orchestrator/index.d.ts +7 -0
- package/dist/orchestrator/index.js +12 -0
- package/dist/orchestrator/index.js.map +1 -0
- package/dist/types/config.d.ts +22 -0
- package/dist/types/config.js +6 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/events.d.ts +50 -0
- package/dist/types/events.js +14 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.js +24 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/provider.d.ts +20 -0
- package/dist/types/provider.js +14 -0
- package/dist/types/provider.js.map +1 -0
- package/dist/types/types.d.ts +48 -0
- package/dist/types/types.js +9 -0
- package/dist/types/types.js.map +1 -0
- package/package.json +61 -0
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Manager for code_change custom object operations.
|
|
4
|
+
*/
|
|
5
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
6
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
7
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
8
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
9
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
10
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
11
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CodeChangeManager = void 0;
|
|
16
|
+
const http_1 = require("../http");
|
|
17
|
+
const types_1 = require("../types");
|
|
18
|
+
/**
|
|
19
|
+
* Manager for code_change custom object CRUD operations.
|
|
20
|
+
*/
|
|
21
|
+
class CodeChangeManager {
|
|
22
|
+
constructor(betaApi, endpoint, token) {
|
|
23
|
+
this.betaApi = betaApi;
|
|
24
|
+
this.endpoint = endpoint;
|
|
25
|
+
this.token = token;
|
|
26
|
+
}
|
|
27
|
+
// =============================================================================
|
|
28
|
+
// Custom Object Operations
|
|
29
|
+
// =============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new code_change custom object.
|
|
32
|
+
*
|
|
33
|
+
* @param data - The code change data to create
|
|
34
|
+
* @returns The created custom object
|
|
35
|
+
*/
|
|
36
|
+
create(data) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
try {
|
|
39
|
+
const payload = {
|
|
40
|
+
custom_fields: Object.assign(Object.assign(Object.assign(Object.assign({ [(0, types_1.tf)(types_1.CodeChangeFields.SOURCE)]: data.source, [(0, types_1.tf)(types_1.CodeChangeFields.REPO_NAME)]: data.repo_name, [(0, types_1.tf)(types_1.CodeChangeFields.SOURCE_BRANCH)]: data.source_branch, [(0, types_1.tf)(types_1.CodeChangeFields.TARGET_BRANCH)]: data.target_branch, [(0, types_1.tf)(types_1.CodeChangeFields.EXTERNAL_URL)]: data.external_url, [(0, types_1.tf)(types_1.CodeChangeFields.STATUS)]: data.status }, (data.author && { [(0, types_1.tf)(types_1.CodeChangeFields.AUTHOR)]: data.author })), (data.pr_created_at && {
|
|
41
|
+
[(0, types_1.tf)(types_1.CodeChangeFields.PR_CREATED_AT)]: data.pr_created_at,
|
|
42
|
+
})), (data.first_commit_at && {
|
|
43
|
+
[(0, types_1.tf)(types_1.CodeChangeFields.FIRST_COMMIT_AT)]: data.first_commit_at,
|
|
44
|
+
})), (data.last_commit_at && {
|
|
45
|
+
[(0, types_1.tf)(types_1.CodeChangeFields.LAST_COMMIT_AT)]: data.last_commit_at,
|
|
46
|
+
})),
|
|
47
|
+
custom_schema_spec: {
|
|
48
|
+
tenant_fragment: true,
|
|
49
|
+
},
|
|
50
|
+
leaf_type: types_1.CODE_CHANGE_LEAF_TYPE,
|
|
51
|
+
title: data.title,
|
|
52
|
+
unique_key: data.external_url,
|
|
53
|
+
};
|
|
54
|
+
const response = yield this.betaApi.customObjectsCreate(payload);
|
|
55
|
+
return response.data.custom_object;
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
throw new Error(`Error creating code_change custom object: ${(0, types_1.getErrorMessage)(error)}`);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Updates an existing code_change custom object.
|
|
64
|
+
*
|
|
65
|
+
* @param data - The update data
|
|
66
|
+
* @param currentObject - The current object state (required for array operations)
|
|
67
|
+
* @returns The updated custom object
|
|
68
|
+
*/
|
|
69
|
+
update(data, currentObject) {
|
|
70
|
+
var _a;
|
|
71
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
72
|
+
try {
|
|
73
|
+
// Validate that currentObject is provided when using add/remove operations
|
|
74
|
+
const requiresCurrentObject = data.add_reviewed_by !== undefined ||
|
|
75
|
+
data.add_approved_by !== undefined ||
|
|
76
|
+
data.add_requested_reviewer !== undefined ||
|
|
77
|
+
data.remove_requested_reviewer !== undefined;
|
|
78
|
+
if (requiresCurrentObject && !currentObject) {
|
|
79
|
+
throw new Error('currentObject parameter is required when using add_reviewed_by, add_approved_by, add_requested_reviewer, or remove_requested_reviewer');
|
|
80
|
+
}
|
|
81
|
+
const customFields = {};
|
|
82
|
+
const currentCustomFields = currentObject === null || currentObject === void 0 ? void 0 : currentObject.custom_fields;
|
|
83
|
+
// Status
|
|
84
|
+
if (data.status !== undefined) {
|
|
85
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.STATUS)] = data.status;
|
|
86
|
+
}
|
|
87
|
+
// Commits
|
|
88
|
+
if (data.source_commits !== undefined) {
|
|
89
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.SOURCE_COMMITS)] = data.source_commits;
|
|
90
|
+
}
|
|
91
|
+
if (data.target_commits !== undefined) {
|
|
92
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.TARGET_COMMITS)] = data.target_commits;
|
|
93
|
+
}
|
|
94
|
+
// Commit timestamps
|
|
95
|
+
if (data.first_commit_at !== undefined) {
|
|
96
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.FIRST_COMMIT_AT)] =
|
|
97
|
+
data.first_commit_at;
|
|
98
|
+
}
|
|
99
|
+
if (data.last_commit_at !== undefined) {
|
|
100
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.LAST_COMMIT_AT)] = data.last_commit_at;
|
|
101
|
+
}
|
|
102
|
+
// Review timestamps
|
|
103
|
+
if (data.first_review_at !== undefined) {
|
|
104
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.FIRST_REVIEW_AT)] =
|
|
105
|
+
data.first_review_at;
|
|
106
|
+
}
|
|
107
|
+
if (data.last_review_at !== undefined) {
|
|
108
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.LAST_REVIEW_AT)] = data.last_review_at;
|
|
109
|
+
}
|
|
110
|
+
if (data.first_approved_at !== undefined) {
|
|
111
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.FIRST_APPROVED_AT)] =
|
|
112
|
+
data.first_approved_at;
|
|
113
|
+
}
|
|
114
|
+
if (data.last_approved_at !== undefined) {
|
|
115
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.LAST_APPROVED_AT)] =
|
|
116
|
+
data.last_approved_at;
|
|
117
|
+
}
|
|
118
|
+
// Closed timestamp
|
|
119
|
+
if (data.closed_at !== undefined) {
|
|
120
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.CLOSED_AT)] = data.closed_at;
|
|
121
|
+
}
|
|
122
|
+
// Metrics (populated after merge)
|
|
123
|
+
if (data.lines_added !== undefined) {
|
|
124
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.LINES_ADDED)] = data.lines_added;
|
|
125
|
+
}
|
|
126
|
+
if (data.lines_deleted !== undefined) {
|
|
127
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.LINES_DELETED)] = data.lines_deleted;
|
|
128
|
+
}
|
|
129
|
+
if (data.files_changed !== undefined) {
|
|
130
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.FILES_CHANGED)] = data.files_changed;
|
|
131
|
+
}
|
|
132
|
+
// Reviewers - handle array append operations using shared helper
|
|
133
|
+
this.mergeArrayField(customFields, currentCustomFields, types_1.CodeChangeFields.REVIEWED_BY, data.add_reviewed_by);
|
|
134
|
+
this.mergeArrayField(customFields, currentCustomFields, types_1.CodeChangeFields.APPROVED_BY, data.add_approved_by);
|
|
135
|
+
this.mergeArrayField(customFields, currentCustomFields, types_1.CodeChangeFields.REQUESTED_REVIEWERS, data.add_requested_reviewer);
|
|
136
|
+
if ((_a = data.remove_requested_reviewer) === null || _a === void 0 ? void 0 : _a.length) {
|
|
137
|
+
const currentRequestedReviewers = (currentCustomFields === null || currentCustomFields === void 0 ? void 0 : currentCustomFields[(0, types_1.tf)(types_1.CodeChangeFields.REQUESTED_REVIEWERS)]) || [];
|
|
138
|
+
const removeSet = new Set(data.remove_requested_reviewer);
|
|
139
|
+
const updatedRequestedReviewers = currentRequestedReviewers.filter((id) => !removeSet.has(id));
|
|
140
|
+
if (updatedRequestedReviewers.length !== currentRequestedReviewers.length) {
|
|
141
|
+
customFields[(0, types_1.tf)(types_1.CodeChangeFields.REQUESTED_REVIEWERS)] =
|
|
142
|
+
updatedRequestedReviewers;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
const payload = {
|
|
146
|
+
custom_fields: customFields,
|
|
147
|
+
custom_schema_spec: {
|
|
148
|
+
tenant_fragment: true,
|
|
149
|
+
},
|
|
150
|
+
id: data.id,
|
|
151
|
+
};
|
|
152
|
+
const response = yield this.betaApi.customObjectsUpdate(payload);
|
|
153
|
+
return response.data.custom_object;
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
throw new Error(`Error updating code_change custom object: ${(0, types_1.getErrorMessage)(error)}`);
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Appends new IDs to an array custom field, deduplicating against existing values.
|
|
162
|
+
* Only writes to customFields if there are genuinely new entries to add.
|
|
163
|
+
*
|
|
164
|
+
* @param customFields - The target custom fields object being built for the update
|
|
165
|
+
* @param currentCustomFields - The current custom fields from the existing object
|
|
166
|
+
* @param field - The CodeChangeFields enum key for the array field
|
|
167
|
+
* @param addIds - The IDs to append (may be undefined or empty)
|
|
168
|
+
*/
|
|
169
|
+
mergeArrayField(customFields, currentCustomFields, field, addIds) {
|
|
170
|
+
if (!(addIds === null || addIds === void 0 ? void 0 : addIds.length))
|
|
171
|
+
return;
|
|
172
|
+
const current = (currentCustomFields === null || currentCustomFields === void 0 ? void 0 : currentCustomFields[(0, types_1.tf)(field)]) || [];
|
|
173
|
+
const currentSet = new Set(current);
|
|
174
|
+
const newIds = addIds.filter((id) => !currentSet.has(id));
|
|
175
|
+
if (newIds.length > 0) {
|
|
176
|
+
customFields[(0, types_1.tf)(field)] = [...current, ...newIds];
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Gets a code_change custom object by PR URL.
|
|
181
|
+
* Since PR URL is a unique identifier, this returns a single object or null.
|
|
182
|
+
*
|
|
183
|
+
* @param prUrl - The pull request URL to search for
|
|
184
|
+
* @returns The matching custom object or null if not found
|
|
185
|
+
*/
|
|
186
|
+
getByPrUrl(prUrl) {
|
|
187
|
+
var _a;
|
|
188
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
189
|
+
try {
|
|
190
|
+
const endpoint = this.endpoint + '/internal/objects.list';
|
|
191
|
+
const payload = {
|
|
192
|
+
dql_query: {
|
|
193
|
+
filter: {
|
|
194
|
+
op: 'and',
|
|
195
|
+
operands: [
|
|
196
|
+
{
|
|
197
|
+
field: `custom_object.${types_1.CODE_CHANGE_LEAF_TYPE}.unique_key`,
|
|
198
|
+
op: 'in',
|
|
199
|
+
value: [prUrl],
|
|
200
|
+
value_type: 'json',
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
field: `custom_object.${types_1.CODE_CHANGE_LEAF_TYPE}.leaf_type`,
|
|
204
|
+
op: 'in',
|
|
205
|
+
value: [types_1.CODE_CHANGE_LEAF_TYPE],
|
|
206
|
+
value_type: 'json',
|
|
207
|
+
},
|
|
208
|
+
],
|
|
209
|
+
},
|
|
210
|
+
limit: 1,
|
|
211
|
+
},
|
|
212
|
+
};
|
|
213
|
+
const response = yield (0, http_1.postCall)(endpoint, this.token, payload);
|
|
214
|
+
if (!response.success) {
|
|
215
|
+
throw new Error(response.message);
|
|
216
|
+
}
|
|
217
|
+
const customObjects = ((_a = response.data) === null || _a === void 0 ? void 0 : _a.custom_objects) || [];
|
|
218
|
+
return customObjects.length > 0 ? customObjects[0] : null;
|
|
219
|
+
}
|
|
220
|
+
catch (error) {
|
|
221
|
+
throw new Error(`Error fetching code_change custom object: ${(0, types_1.getErrorMessage)(error)}`);
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
exports.CodeChangeManager = CodeChangeManager;
|
|
227
|
+
//# sourceMappingURL=code_change_manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code_change_manager.js","sourceRoot":"","sources":["../../../src/devrev/managers/code_change_manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Schema definition for the code_change custom object.
|
|
3
|
+
* This file defines the tenant fragment schema fields for code_change objects.
|
|
4
|
+
*/
|
|
5
|
+
import { CustomSchemaFragmentsSetRequest } from '@devrev/typescript-sdk/dist/auto-generated/beta/beta-devrev-sdk';
|
|
6
|
+
/**
|
|
7
|
+
* Creates the schema set request for the code_change tenant fragment.
|
|
8
|
+
* This defines all custom fields for code_change objects.
|
|
9
|
+
*
|
|
10
|
+
* @returns The CustomSchemaFragmentsSetRequest for code_change
|
|
11
|
+
*/
|
|
12
|
+
export declare function getCodeChangeSchemaSetRequest(): CustomSchemaFragmentsSetRequest;
|
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Schema definition for the code_change custom object.
|
|
4
|
+
* This file defines the tenant fragment schema fields for code_change objects.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.getCodeChangeSchemaSetRequest = void 0;
|
|
8
|
+
const beta_devrev_sdk_1 = require("@devrev/typescript-sdk/dist/auto-generated/beta/beta-devrev-sdk");
|
|
9
|
+
const types_1 = require("../types");
|
|
10
|
+
/**
|
|
11
|
+
* Creates the schema set request for the code_change tenant fragment.
|
|
12
|
+
* This defines all custom fields for code_change objects.
|
|
13
|
+
*
|
|
14
|
+
* @returns The CustomSchemaFragmentsSetRequest for code_change
|
|
15
|
+
*/
|
|
16
|
+
function getCodeChangeSchemaSetRequest() {
|
|
17
|
+
return {
|
|
18
|
+
description: 'Code Change Custom Object Schema',
|
|
19
|
+
type: beta_devrev_sdk_1.CustomSchemaFragmentsSetRequestType.TenantFragment,
|
|
20
|
+
leaf_type: types_1.CODE_CHANGE_LEAF_TYPE,
|
|
21
|
+
is_custom_leaf_type: true,
|
|
22
|
+
id_prefix: 'CODECHANGE',
|
|
23
|
+
deprecated: false,
|
|
24
|
+
fields: [
|
|
25
|
+
{
|
|
26
|
+
name: 'source',
|
|
27
|
+
description: 'Source of the code change object (one of: github, gitlab, bitbucket, azure_devops).',
|
|
28
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Uenum,
|
|
29
|
+
allowed_values: [
|
|
30
|
+
{ id: 0, label: 'Unknown', ordinal: 0 },
|
|
31
|
+
{ id: 1, label: 'GitHub', ordinal: 1 },
|
|
32
|
+
{ id: 2, label: 'Bitbucket', ordinal: 2 },
|
|
33
|
+
{ id: 3, label: 'GitLab', ordinal: 3 },
|
|
34
|
+
{ id: 4, label: 'Azure DevOps', ordinal: 4 },
|
|
35
|
+
],
|
|
36
|
+
is_filterable: true,
|
|
37
|
+
is_required: true,
|
|
38
|
+
ui: {
|
|
39
|
+
display_name: 'Source',
|
|
40
|
+
is_groupable: true,
|
|
41
|
+
is_read_only: true,
|
|
42
|
+
order: 100,
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'author',
|
|
47
|
+
description: 'Author of the pull request.',
|
|
48
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Id,
|
|
49
|
+
id_type: ['devu'],
|
|
50
|
+
is_filterable: true,
|
|
51
|
+
ui: { display_name: 'Author', is_groupable: true, order: 200 },
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'repo_name',
|
|
55
|
+
description: 'Name of the repository this change is on.',
|
|
56
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Tokens,
|
|
57
|
+
is_filterable: true,
|
|
58
|
+
is_required: true,
|
|
59
|
+
ui: {
|
|
60
|
+
display_name: 'Repository',
|
|
61
|
+
is_groupable: true,
|
|
62
|
+
is_read_only: true,
|
|
63
|
+
order: 300,
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: 'source_branch',
|
|
68
|
+
description: 'Name of the source branch in the repo.',
|
|
69
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Tokens,
|
|
70
|
+
is_filterable: true,
|
|
71
|
+
is_required: true,
|
|
72
|
+
ui: {
|
|
73
|
+
display_name: 'Source Branch',
|
|
74
|
+
is_read_only: true,
|
|
75
|
+
order: 400,
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: 'target_branch',
|
|
80
|
+
description: 'Name of the target branch in the repo.',
|
|
81
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Tokens,
|
|
82
|
+
is_filterable: true,
|
|
83
|
+
is_required: true,
|
|
84
|
+
ui: {
|
|
85
|
+
display_name: 'Target Branch',
|
|
86
|
+
is_read_only: true,
|
|
87
|
+
order: 500,
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
name: 'external_url',
|
|
92
|
+
description: 'Unique external identifier for this change (e.g., Pull Request URL).',
|
|
93
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Tokens,
|
|
94
|
+
is_filterable: true,
|
|
95
|
+
is_required: true,
|
|
96
|
+
ui: {
|
|
97
|
+
display_name: 'External URL',
|
|
98
|
+
is_read_only: true,
|
|
99
|
+
order: 600,
|
|
100
|
+
},
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'status',
|
|
104
|
+
description: 'Unified status representing the current state and stage of the pull request.',
|
|
105
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Uenum,
|
|
106
|
+
allowed_values: [
|
|
107
|
+
{ id: 0, label: 'Draft', ordinal: 0 },
|
|
108
|
+
{ id: 1, label: 'Waiting for Review', ordinal: 1 },
|
|
109
|
+
{ id: 2, label: 'Changes Requested', ordinal: 2 },
|
|
110
|
+
{ id: 3, label: 'Approved', ordinal: 3 },
|
|
111
|
+
{ id: 4, label: 'Merged', ordinal: 4 },
|
|
112
|
+
{ id: 5, label: 'Closed', ordinal: 5 },
|
|
113
|
+
],
|
|
114
|
+
is_required: true,
|
|
115
|
+
is_filterable: true,
|
|
116
|
+
ui: { display_name: 'Status', is_groupable: true, order: 700 },
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'reviewed_by',
|
|
120
|
+
description: 'Set of users that have review activity on the PR.',
|
|
121
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Array,
|
|
122
|
+
base_type: beta_devrev_sdk_1.SchemaFieldDescriptorArrayTypeBaseType.Id,
|
|
123
|
+
id_type: ['devu'],
|
|
124
|
+
is_filterable: true,
|
|
125
|
+
ui: {
|
|
126
|
+
display_name: 'Reviewed By',
|
|
127
|
+
is_groupable: true,
|
|
128
|
+
is_read_only: true,
|
|
129
|
+
order: 800,
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
name: 'requested_reviewers',
|
|
134
|
+
description: 'Set of users that are currently requested for a review on this code change.',
|
|
135
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Array,
|
|
136
|
+
base_type: beta_devrev_sdk_1.SchemaFieldDescriptorArrayTypeBaseType.Id,
|
|
137
|
+
id_type: ['devu'],
|
|
138
|
+
is_filterable: true,
|
|
139
|
+
ui: {
|
|
140
|
+
display_name: 'Requested Reviewers',
|
|
141
|
+
is_groupable: true,
|
|
142
|
+
is_read_only: true,
|
|
143
|
+
order: 850,
|
|
144
|
+
},
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
name: 'approved_by',
|
|
148
|
+
description: 'Users who approved the code change.',
|
|
149
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Array,
|
|
150
|
+
base_type: beta_devrev_sdk_1.SchemaFieldDescriptorArrayTypeBaseType.Id,
|
|
151
|
+
id_type: ['devu'],
|
|
152
|
+
is_filterable: true,
|
|
153
|
+
ui: {
|
|
154
|
+
display_name: 'Approved By',
|
|
155
|
+
is_groupable: true,
|
|
156
|
+
is_read_only: true,
|
|
157
|
+
order: 900,
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'target_commits',
|
|
162
|
+
description: 'Commits that landed in the target branch after this code change was merged.',
|
|
163
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Array,
|
|
164
|
+
base_type: beta_devrev_sdk_1.SchemaFieldDescriptorArrayTypeBaseType.Tokens,
|
|
165
|
+
ui: {
|
|
166
|
+
display_name: 'Landed Commits',
|
|
167
|
+
list_view: { is_hidden: true },
|
|
168
|
+
is_read_only: true,
|
|
169
|
+
tooltip: 'Commits that landed in the target branch after this code change was merged.',
|
|
170
|
+
order: 1000,
|
|
171
|
+
},
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
name: 'source_commits',
|
|
175
|
+
description: 'Head Commit in the source branch.',
|
|
176
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Array,
|
|
177
|
+
base_type: beta_devrev_sdk_1.SchemaFieldDescriptorArrayTypeBaseType.Tokens,
|
|
178
|
+
ui: {
|
|
179
|
+
display_name: 'Source Commit',
|
|
180
|
+
is_read_only: true,
|
|
181
|
+
tooltip: 'Head Commit in the source branch.',
|
|
182
|
+
order: 1100,
|
|
183
|
+
},
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
name: 'first_commit_at',
|
|
187
|
+
description: 'Time at which the first commit was made in the code change.',
|
|
188
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
189
|
+
is_filterable: true,
|
|
190
|
+
ui: {
|
|
191
|
+
display_name: 'First Commit At',
|
|
192
|
+
is_read_only: true,
|
|
193
|
+
order: 1200,
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'last_commit_at',
|
|
198
|
+
description: 'Time at which the last commit was made in the code change.',
|
|
199
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
200
|
+
is_filterable: true,
|
|
201
|
+
ui: {
|
|
202
|
+
display_name: 'Last Commit At',
|
|
203
|
+
is_read_only: true,
|
|
204
|
+
order: 1250,
|
|
205
|
+
},
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
name: 'pr_created_at',
|
|
209
|
+
description: 'PR creation time.',
|
|
210
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
211
|
+
is_filterable: true,
|
|
212
|
+
is_required: true,
|
|
213
|
+
ui: {
|
|
214
|
+
display_name: 'PR Created At',
|
|
215
|
+
is_read_only: true,
|
|
216
|
+
order: 1300,
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
{
|
|
220
|
+
name: 'first_review_at',
|
|
221
|
+
description: 'Time at which the first review was submitted on the code change.',
|
|
222
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
223
|
+
is_filterable: true,
|
|
224
|
+
ui: {
|
|
225
|
+
display_name: 'First Review At',
|
|
226
|
+
is_read_only: true,
|
|
227
|
+
order: 1350,
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
name: 'last_review_at',
|
|
232
|
+
description: 'Time at which the last review was submitted on the code change.',
|
|
233
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
234
|
+
is_filterable: true,
|
|
235
|
+
ui: {
|
|
236
|
+
display_name: 'Last Review At',
|
|
237
|
+
is_read_only: true,
|
|
238
|
+
order: 1375,
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
name: 'first_approved_at',
|
|
243
|
+
description: 'Time at which the code change was first approved.',
|
|
244
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
245
|
+
is_filterable: true,
|
|
246
|
+
ui: {
|
|
247
|
+
display_name: 'First Approved At',
|
|
248
|
+
is_read_only: true,
|
|
249
|
+
order: 1390,
|
|
250
|
+
},
|
|
251
|
+
},
|
|
252
|
+
{
|
|
253
|
+
name: 'last_approved_at',
|
|
254
|
+
description: 'Time at which the code change was last approved.',
|
|
255
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
256
|
+
is_filterable: true,
|
|
257
|
+
ui: {
|
|
258
|
+
display_name: 'Last Approved At',
|
|
259
|
+
is_read_only: true,
|
|
260
|
+
order: 1400,
|
|
261
|
+
},
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
name: 'closed_at',
|
|
265
|
+
description: 'Time at which the code change reached a closed or merged state.',
|
|
266
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Timestamp,
|
|
267
|
+
is_filterable: true,
|
|
268
|
+
ui: {
|
|
269
|
+
display_name: 'Closed At',
|
|
270
|
+
is_read_only: true,
|
|
271
|
+
order: 1500,
|
|
272
|
+
},
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
name: 'lines_added',
|
|
276
|
+
description: 'Total lines added across all files. Populated for merged changes.',
|
|
277
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Int,
|
|
278
|
+
is_filterable: true,
|
|
279
|
+
ui: {
|
|
280
|
+
display_name: 'Lines Added',
|
|
281
|
+
is_sortable: true,
|
|
282
|
+
is_read_only: true,
|
|
283
|
+
tooltip: 'Available after merge',
|
|
284
|
+
order: 1600,
|
|
285
|
+
},
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
name: 'lines_deleted',
|
|
289
|
+
description: 'Total lines deleted across all files. Populated for merged changes.',
|
|
290
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Int,
|
|
291
|
+
is_filterable: true,
|
|
292
|
+
ui: {
|
|
293
|
+
display_name: 'Lines Deleted',
|
|
294
|
+
is_sortable: true,
|
|
295
|
+
is_read_only: true,
|
|
296
|
+
tooltip: 'Available after merge',
|
|
297
|
+
order: 1700,
|
|
298
|
+
},
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: 'files_changed',
|
|
302
|
+
description: 'Total number of files changed. Populated for merged changes.',
|
|
303
|
+
field_type: beta_devrev_sdk_1.SchemaFieldDescriptorFieldType.Int,
|
|
304
|
+
is_filterable: true,
|
|
305
|
+
ui: {
|
|
306
|
+
display_name: 'Files Changed',
|
|
307
|
+
is_sortable: true,
|
|
308
|
+
is_read_only: true,
|
|
309
|
+
tooltip: 'Available after merge',
|
|
310
|
+
order: 1800,
|
|
311
|
+
},
|
|
312
|
+
},
|
|
313
|
+
],
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
exports.getCodeChangeSchemaSetRequest = getCodeChangeSchemaSetRequest;
|
|
317
|
+
//# sourceMappingURL=code_change_schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code_change_schema.js","sourceRoot":"","sources":["../../../src/devrev/managers/code_change_schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Manager for custom link type operations.
|
|
3
|
+
*/
|
|
4
|
+
import type { betaSDK } from '@devrev/typescript-sdk';
|
|
5
|
+
/**
|
|
6
|
+
* Result of custom link type installation.
|
|
7
|
+
*/
|
|
8
|
+
export interface CustomLinkTypeInstallResult {
|
|
9
|
+
success: boolean;
|
|
10
|
+
linkTypeId?: string;
|
|
11
|
+
error?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Manager for custom link type operations.
|
|
15
|
+
*/
|
|
16
|
+
export declare class CustomLinkTypeManager {
|
|
17
|
+
private betaApi;
|
|
18
|
+
private cachedLinkTypeId;
|
|
19
|
+
constructor(betaApi: betaSDK.Api<unknown>);
|
|
20
|
+
/**
|
|
21
|
+
* Gets or creates the custom link type for linking issues to code_change custom objects.
|
|
22
|
+
* This ensures the link type exists before any PR events are processed.
|
|
23
|
+
*
|
|
24
|
+
* @returns Success status and link type ID
|
|
25
|
+
*/
|
|
26
|
+
getOrCreateIssueCodeChangeLinkType(): Promise<CustomLinkTypeInstallResult>;
|
|
27
|
+
/**
|
|
28
|
+
* Gets the cached link type ID if available.
|
|
29
|
+
*
|
|
30
|
+
* @returns The cached link type ID or undefined
|
|
31
|
+
*/
|
|
32
|
+
getCachedLinkTypeId(): string | undefined;
|
|
33
|
+
}
|