@ghx-dev/core 0.2.0 → 0.2.1
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/.claude-plugin/plugin.json +2 -2
- package/README.md +44 -37
- package/dist/cards/issue.assignees.add.yaml +1 -0
- package/dist/cards/issue.assignees.remove.yaml +1 -0
- package/dist/cards/issue.assignees.set.yaml +1 -0
- package/dist/cards/issue.close.yaml +1 -0
- package/dist/cards/issue.comments.create.yaml +1 -0
- package/dist/cards/issue.comments.list.yaml +1 -0
- package/dist/cards/issue.create.yaml +1 -0
- package/dist/cards/issue.delete.yaml +1 -0
- package/dist/cards/issue.labels.add.yaml +1 -0
- package/dist/cards/issue.labels.remove.yaml +1 -0
- package/dist/cards/issue.labels.set.yaml +1 -0
- package/dist/cards/issue.list.yaml +1 -0
- package/dist/cards/issue.milestone.clear.yaml +1 -0
- package/dist/cards/issue.milestone.set.yaml +1 -0
- package/dist/cards/issue.relations.blocked_by.add.yaml +1 -0
- package/dist/cards/issue.relations.blocked_by.remove.yaml +1 -0
- package/dist/cards/issue.relations.parent.remove.yaml +1 -0
- package/dist/cards/issue.relations.parent.set.yaml +1 -0
- package/dist/cards/issue.relations.prs.list.yaml +1 -0
- package/dist/cards/issue.relations.view.yaml +1 -0
- package/dist/cards/issue.reopen.yaml +1 -0
- package/dist/cards/issue.update.yaml +1 -0
- package/dist/cards/issue.view.yaml +1 -0
- package/dist/cards/pr.assignees.add.yaml +6 -2
- package/dist/cards/pr.assignees.remove.yaml +6 -2
- package/dist/cards/pr.branch.update.yaml +6 -2
- package/dist/cards/pr.create.yaml +7 -3
- package/dist/cards/pr.diff.files.yaml +1 -0
- package/dist/cards/pr.list.yaml +1 -0
- package/dist/cards/pr.merge.status.yaml +1 -0
- package/dist/cards/pr.merge.yaml +9 -3
- package/dist/cards/pr.reviews.list.yaml +1 -0
- package/dist/cards/pr.reviews.request.yaml +6 -3
- package/dist/cards/pr.reviews.submit.yaml +1 -0
- package/dist/cards/pr.threads.list.yaml +1 -0
- package/dist/cards/pr.threads.reply.yaml +1 -0
- package/dist/cards/pr.threads.resolve.yaml +1 -0
- package/dist/cards/pr.threads.unresolve.yaml +1 -0
- package/dist/cards/pr.update.yaml +7 -2
- package/dist/cards/pr.view.yaml +1 -0
- package/dist/cards/project_v2.fields.list.yaml +18 -2
- package/dist/cards/project_v2.items.field.update.yaml +8 -5
- package/dist/cards/project_v2.items.issue.add.yaml +9 -5
- package/dist/cards/project_v2.items.issue.remove.yaml +8 -5
- package/dist/cards/project_v2.items.list.yaml +8 -2
- package/dist/cards/project_v2.org.view.yaml +6 -2
- package/dist/cards/project_v2.user.view.yaml +6 -2
- package/dist/cards/release.list.yaml +8 -3
- package/dist/cards/release.view.yaml +8 -4
- package/dist/cards/repo.issue_types.list.yaml +7 -3
- package/dist/cards/repo.labels.list.yaml +7 -2
- package/dist/cards/repo.view.yaml +1 -0
- package/dist/chunk-7HUKYNI2.js +536 -0
- package/dist/chunk-7HUKYNI2.js.map +1 -0
- package/dist/chunk-GQO6BHJV.js +98 -0
- package/dist/chunk-GQO6BHJV.js.map +1 -0
- package/dist/chunk-H7CLZHRO.js +280 -0
- package/dist/chunk-H7CLZHRO.js.map +1 -0
- package/dist/{chunk-3P3KHWFU.js → chunk-M5PJLKL5.js} +1079 -726
- package/dist/chunk-M5PJLKL5.js.map +1 -0
- package/dist/chunk-NQ53ETYV.js +128 -0
- package/dist/chunk-NQ53ETYV.js.map +1 -0
- package/dist/{chunk-BIWBJA2F.js → chunk-OQWLEFAH.js} +220 -12
- package/dist/chunk-OQWLEFAH.js.map +1 -0
- package/dist/{chunk-Q7RCIK2C.js → chunk-Q2NW7DJE.js} +167 -62
- package/dist/chunk-Q2NW7DJE.js.map +1 -0
- package/dist/{pr-queries-UOEOXIJQ.js → chunk-QRHKAMRY.js} +11 -131
- package/dist/chunk-QRHKAMRY.js.map +1 -0
- package/dist/{issue-queries-GRA4MKPD.js → chunk-TGL33GEA.js} +7 -83
- package/dist/chunk-TGL33GEA.js.map +1 -0
- package/dist/chunk-ZGBVX2VG.js +32 -0
- package/dist/chunk-ZGBVX2VG.js.map +1 -0
- package/dist/cli/index.js +79 -14
- package/dist/cli/index.js.map +1 -1
- package/dist/core/registry/cards/issue.assignees.add.yaml +1 -0
- package/dist/core/registry/cards/issue.assignees.remove.yaml +1 -0
- package/dist/core/registry/cards/issue.assignees.set.yaml +1 -0
- package/dist/core/registry/cards/issue.close.yaml +1 -0
- package/dist/core/registry/cards/issue.comments.create.yaml +1 -0
- package/dist/core/registry/cards/issue.comments.list.yaml +1 -0
- package/dist/core/registry/cards/issue.create.yaml +1 -0
- package/dist/core/registry/cards/issue.delete.yaml +1 -0
- package/dist/core/registry/cards/issue.labels.add.yaml +1 -0
- package/dist/core/registry/cards/issue.labels.remove.yaml +1 -0
- package/dist/core/registry/cards/issue.labels.set.yaml +1 -0
- package/dist/core/registry/cards/issue.list.yaml +1 -0
- package/dist/core/registry/cards/issue.milestone.clear.yaml +1 -0
- package/dist/core/registry/cards/issue.milestone.set.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.blocked_by.add.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.blocked_by.remove.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.parent.remove.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.parent.set.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.prs.list.yaml +1 -0
- package/dist/core/registry/cards/issue.relations.view.yaml +1 -0
- package/dist/core/registry/cards/issue.reopen.yaml +1 -0
- package/dist/core/registry/cards/issue.update.yaml +1 -0
- package/dist/core/registry/cards/issue.view.yaml +1 -0
- package/dist/core/registry/cards/pr.assignees.add.yaml +6 -2
- package/dist/core/registry/cards/pr.assignees.remove.yaml +6 -2
- package/dist/core/registry/cards/pr.branch.update.yaml +6 -2
- package/dist/core/registry/cards/pr.create.yaml +7 -3
- package/dist/core/registry/cards/pr.diff.files.yaml +1 -0
- package/dist/core/registry/cards/pr.list.yaml +1 -0
- package/dist/core/registry/cards/pr.merge.status.yaml +1 -0
- package/dist/core/registry/cards/pr.merge.yaml +9 -3
- package/dist/core/registry/cards/pr.reviews.list.yaml +1 -0
- package/dist/core/registry/cards/pr.reviews.request.yaml +6 -3
- package/dist/core/registry/cards/pr.reviews.submit.yaml +1 -0
- package/dist/core/registry/cards/pr.threads.list.yaml +1 -0
- package/dist/core/registry/cards/pr.threads.reply.yaml +1 -0
- package/dist/core/registry/cards/pr.threads.resolve.yaml +1 -0
- package/dist/core/registry/cards/pr.threads.unresolve.yaml +1 -0
- package/dist/core/registry/cards/pr.update.yaml +7 -2
- package/dist/core/registry/cards/pr.view.yaml +1 -0
- package/dist/core/registry/cards/project_v2.fields.list.yaml +18 -2
- package/dist/core/registry/cards/project_v2.items.field.update.yaml +8 -5
- package/dist/core/registry/cards/project_v2.items.issue.add.yaml +9 -5
- package/dist/core/registry/cards/project_v2.items.issue.remove.yaml +8 -5
- package/dist/core/registry/cards/project_v2.items.list.yaml +8 -2
- package/dist/core/registry/cards/project_v2.org.view.yaml +6 -2
- package/dist/core/registry/cards/project_v2.user.view.yaml +6 -2
- package/dist/core/registry/cards/release.list.yaml +8 -3
- package/dist/core/registry/cards/release.view.yaml +8 -4
- package/dist/core/registry/cards/repo.issue_types.list.yaml +7 -3
- package/dist/core/registry/cards/repo.labels.list.yaml +7 -2
- package/dist/core/registry/cards/repo.view.yaml +1 -0
- package/dist/index.d.ts +297 -0
- package/dist/index.js +11 -3
- package/dist/index.js.map +1 -1
- package/dist/{issue-mutations-FJNZW7L5.js → issue-mutations-OW464JP3.js} +97 -120
- package/dist/issue-mutations-OW464JP3.js.map +1 -0
- package/dist/issue-queries-ORG3VPK4.js +93 -0
- package/dist/issue-queries-ORG3VPK4.js.map +1 -0
- package/dist/{pr-mutations-UG67YOF5.js → pr-mutations-WOTG6FAB.js} +234 -94
- package/dist/pr-mutations-WOTG6FAB.js.map +1 -0
- package/dist/pr-queries-6CJJW7BT.js +143 -0
- package/dist/pr-queries-6CJJW7BT.js.map +1 -0
- package/dist/project-QFSCYDDW.js +429 -0
- package/dist/project-QFSCYDDW.js.map +1 -0
- package/dist/release-33236BBA.js +57 -0
- package/dist/release-33236BBA.js.map +1 -0
- package/dist/repo-M6DKCWBG.js +82 -0
- package/dist/repo-M6DKCWBG.js.map +1 -0
- package/package.json +6 -6
- package/skills/using-ghx/SKILL.md +76 -10
- package/dist/chunk-3P3KHWFU.js.map +0 -1
- package/dist/chunk-BIWBJA2F.js.map +0 -1
- package/dist/chunk-Q7RCIK2C.js.map +0 -1
- package/dist/chunk-TDABI6C7.js +0 -167
- package/dist/chunk-TDABI6C7.js.map +0 -1
- package/dist/issue-mutations-FJNZW7L5.js.map +0 -1
- package/dist/issue-queries-GRA4MKPD.js.map +0 -1
- package/dist/pr-mutations-UG67YOF5.js.map +0 -1
- package/dist/pr-queries-UOEOXIJQ.js.map +0 -1
- package/dist/repo-JDUHFPZF.js +0 -66
- package/dist/repo-JDUHFPZF.js.map +0 -1
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getSdk,
|
|
3
|
-
getSdk10,
|
|
4
|
-
getSdk11,
|
|
5
|
-
getSdk12,
|
|
6
|
-
getSdk13,
|
|
7
|
-
getSdk14,
|
|
8
|
-
getSdk15,
|
|
9
|
-
getSdk16,
|
|
10
|
-
getSdk17,
|
|
11
|
-
getSdk18,
|
|
12
|
-
getSdk19,
|
|
3
|
+
getSdk10 as getSdk11,
|
|
4
|
+
getSdk11 as getSdk12,
|
|
5
|
+
getSdk12 as getSdk13,
|
|
6
|
+
getSdk13 as getSdk14,
|
|
7
|
+
getSdk14 as getSdk15,
|
|
8
|
+
getSdk15 as getSdk16,
|
|
9
|
+
getSdk16 as getSdk17,
|
|
10
|
+
getSdk17 as getSdk18,
|
|
11
|
+
getSdk18 as getSdk19,
|
|
12
|
+
getSdk19 as getSdk20,
|
|
13
13
|
getSdk2,
|
|
14
|
-
getSdk20,
|
|
15
|
-
getSdk21,
|
|
16
|
-
getSdk22,
|
|
14
|
+
getSdk20 as getSdk21,
|
|
15
|
+
getSdk21 as getSdk22,
|
|
16
|
+
getSdk22 as getSdk23,
|
|
17
|
+
getSdk23 as getSdk24,
|
|
18
|
+
getSdk24 as getSdk25,
|
|
17
19
|
getSdk3,
|
|
18
20
|
getSdk4,
|
|
19
21
|
getSdk5,
|
|
@@ -21,11 +23,12 @@ import {
|
|
|
21
23
|
getSdk7,
|
|
22
24
|
getSdk8,
|
|
23
25
|
getSdk9
|
|
24
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-Q2NW7DJE.js";
|
|
25
27
|
import "./chunk-3DU2WHXF.js";
|
|
28
|
+
import "./chunk-TPQYVCAS.js";
|
|
26
29
|
import {
|
|
27
|
-
|
|
28
|
-
} from "./chunk-
|
|
30
|
+
getSdk as getSdk10
|
|
31
|
+
} from "./chunk-ZGBVX2VG.js";
|
|
29
32
|
import {
|
|
30
33
|
asRecord,
|
|
31
34
|
assertIssueAssigneesAddInput,
|
|
@@ -35,6 +38,7 @@ import {
|
|
|
35
38
|
assertIssueCommentCreateInput,
|
|
36
39
|
assertIssueCreateInput,
|
|
37
40
|
assertIssueLabelsAddInput,
|
|
41
|
+
assertIssueLabelsRemoveInput,
|
|
38
42
|
assertIssueLabelsUpdateInput,
|
|
39
43
|
assertIssueLinkedPrsListInput,
|
|
40
44
|
assertIssueMilestoneSetInput,
|
|
@@ -44,98 +48,11 @@ import {
|
|
|
44
48
|
assertIssueRelationsGetInput,
|
|
45
49
|
assertIssueUpdateInput,
|
|
46
50
|
assertNonEmptyString
|
|
47
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-OQWLEFAH.js";
|
|
48
52
|
import {
|
|
49
53
|
createGraphqlRequestClient
|
|
50
54
|
} from "./chunk-HEHONZTO.js";
|
|
51
55
|
|
|
52
|
-
// src/gql/operations/issue-linked-prs-list.generated.ts
|
|
53
|
-
var IssueLinkedPrsListDocument = `
|
|
54
|
-
query IssueLinkedPrsList($owner: String!, $name: String!, $issueNumber: Int!) {
|
|
55
|
-
repository(owner: $owner, name: $name) {
|
|
56
|
-
issue(number: $issueNumber) {
|
|
57
|
-
timelineItems(first: 50, itemTypes: [CONNECTED_EVENT]) {
|
|
58
|
-
nodes {
|
|
59
|
-
__typename
|
|
60
|
-
... on ConnectedEvent {
|
|
61
|
-
subject {
|
|
62
|
-
__typename
|
|
63
|
-
... on PullRequest {
|
|
64
|
-
...PrCoreFields
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
${PrCoreFieldsFragmentDoc}`;
|
|
74
|
-
var defaultWrapper = (action, _operationName, _operationType, _variables) => action();
|
|
75
|
-
function getSdk23(client, withWrapper = defaultWrapper) {
|
|
76
|
-
return {
|
|
77
|
-
IssueLinkedPrsList(variables, requestHeaders, signal) {
|
|
78
|
-
return withWrapper(
|
|
79
|
-
(wrappedRequestHeaders) => client.request({
|
|
80
|
-
document: IssueLinkedPrsListDocument,
|
|
81
|
-
variables,
|
|
82
|
-
requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },
|
|
83
|
-
signal
|
|
84
|
-
}),
|
|
85
|
-
"IssueLinkedPrsList",
|
|
86
|
-
"query",
|
|
87
|
-
variables
|
|
88
|
-
);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
// src/gql/operations/issue-relations-get.generated.ts
|
|
94
|
-
var IssueRelationsGetDocument = `
|
|
95
|
-
query IssueRelationsGet($owner: String!, $name: String!, $issueNumber: Int!) {
|
|
96
|
-
repository(owner: $owner, name: $name) {
|
|
97
|
-
issue(number: $issueNumber) {
|
|
98
|
-
id
|
|
99
|
-
number
|
|
100
|
-
parent {
|
|
101
|
-
id
|
|
102
|
-
number
|
|
103
|
-
}
|
|
104
|
-
subIssues(first: 50) {
|
|
105
|
-
nodes {
|
|
106
|
-
id
|
|
107
|
-
number
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
blockedBy(first: 50) {
|
|
111
|
-
nodes {
|
|
112
|
-
id
|
|
113
|
-
number
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
`;
|
|
120
|
-
var defaultWrapper2 = (action, _operationName, _operationType, _variables) => action();
|
|
121
|
-
function getSdk24(client, withWrapper = defaultWrapper2) {
|
|
122
|
-
return {
|
|
123
|
-
IssueRelationsGet(variables, requestHeaders, signal) {
|
|
124
|
-
return withWrapper(
|
|
125
|
-
(wrappedRequestHeaders) => client.request({
|
|
126
|
-
document: IssueRelationsGetDocument,
|
|
127
|
-
variables,
|
|
128
|
-
requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },
|
|
129
|
-
signal
|
|
130
|
-
}),
|
|
131
|
-
"IssueRelationsGet",
|
|
132
|
-
"query",
|
|
133
|
-
variables
|
|
134
|
-
);
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
|
|
139
56
|
// src/gql/domains/issue-mutations.ts
|
|
140
57
|
function parseIssueNode(issue) {
|
|
141
58
|
const issueRecord = asRecord(issue);
|
|
@@ -181,7 +98,7 @@ async function runIssueCreate(transport, input) {
|
|
|
181
98
|
async function runIssueUpdate(transport, input) {
|
|
182
99
|
assertIssueUpdateInput(input);
|
|
183
100
|
const client = createGraphqlRequestClient(transport);
|
|
184
|
-
const lookupResult = await
|
|
101
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
185
102
|
owner: input.owner,
|
|
186
103
|
name: input.name,
|
|
187
104
|
issueNumber: input.issueNumber
|
|
@@ -190,7 +107,7 @@ async function runIssueUpdate(transport, input) {
|
|
|
190
107
|
if (typeof issueId !== "string" || issueId.length === 0) {
|
|
191
108
|
throw new Error("Issue not found");
|
|
192
109
|
}
|
|
193
|
-
const result = await
|
|
110
|
+
const result = await getSdk25(client).IssueUpdate({
|
|
194
111
|
issueId,
|
|
195
112
|
...input.title === void 0 ? {} : { title: input.title },
|
|
196
113
|
...input.body === void 0 ? {} : { body: input.body }
|
|
@@ -201,7 +118,7 @@ async function runIssueUpdate(transport, input) {
|
|
|
201
118
|
async function runIssueClose(transport, input) {
|
|
202
119
|
assertIssueMutationInput(input);
|
|
203
120
|
const client = createGraphqlRequestClient(transport);
|
|
204
|
-
const lookupResult = await
|
|
121
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
205
122
|
owner: input.owner,
|
|
206
123
|
name: input.name,
|
|
207
124
|
issueNumber: input.issueNumber
|
|
@@ -220,7 +137,7 @@ async function runIssueClose(transport, input) {
|
|
|
220
137
|
async function runIssueReopen(transport, input) {
|
|
221
138
|
assertIssueMutationInput(input);
|
|
222
139
|
const client = createGraphqlRequestClient(transport);
|
|
223
|
-
const lookupResult = await
|
|
140
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
224
141
|
owner: input.owner,
|
|
225
142
|
name: input.name,
|
|
226
143
|
issueNumber: input.issueNumber
|
|
@@ -229,7 +146,7 @@ async function runIssueReopen(transport, input) {
|
|
|
229
146
|
if (typeof issueId !== "string" || issueId.length === 0) {
|
|
230
147
|
throw new Error("Issue not found");
|
|
231
148
|
}
|
|
232
|
-
const result = await
|
|
149
|
+
const result = await getSdk24(client).IssueReopen({ issueId });
|
|
233
150
|
const issueData = parseIssueNode(asRecord(asRecord(result)?.reopenIssue)?.issue);
|
|
234
151
|
return {
|
|
235
152
|
...issueData,
|
|
@@ -239,7 +156,7 @@ async function runIssueReopen(transport, input) {
|
|
|
239
156
|
async function runIssueDelete(transport, input) {
|
|
240
157
|
assertIssueMutationInput(input);
|
|
241
158
|
const client = createGraphqlRequestClient(transport);
|
|
242
|
-
const lookupResult = await
|
|
159
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
243
160
|
owner: input.owner,
|
|
244
161
|
name: input.name,
|
|
245
162
|
issueNumber: input.issueNumber
|
|
@@ -287,7 +204,7 @@ async function runIssueLabelsUpdate(transport, input) {
|
|
|
287
204
|
}
|
|
288
205
|
return id;
|
|
289
206
|
});
|
|
290
|
-
const result = await
|
|
207
|
+
const result = await getSdk15(client).IssueLabelsUpdate({
|
|
291
208
|
issueId,
|
|
292
209
|
labelIds
|
|
293
210
|
});
|
|
@@ -341,6 +258,43 @@ async function runIssueLabelsAdd(transport, input) {
|
|
|
341
258
|
labels: labelNodes.map((label) => asRecord(label)?.["name"]).filter((name) => typeof name === "string")
|
|
342
259
|
};
|
|
343
260
|
}
|
|
261
|
+
async function runIssueLabelsRemove(transport, input) {
|
|
262
|
+
assertIssueLabelsRemoveInput(input);
|
|
263
|
+
const client = createGraphqlRequestClient(transport);
|
|
264
|
+
const lookupResult = await getSdk13(client).IssueLabelsLookupByNumber({
|
|
265
|
+
owner: input.owner,
|
|
266
|
+
name: input.name,
|
|
267
|
+
issueNumber: input.issueNumber
|
|
268
|
+
});
|
|
269
|
+
const repo = asRecord(asRecord(lookupResult)?.repository);
|
|
270
|
+
const labelableId = asRecord(repo?.issue)?.id;
|
|
271
|
+
if (typeof labelableId !== "string" || labelableId.length === 0) {
|
|
272
|
+
throw new Error("Issue not found");
|
|
273
|
+
}
|
|
274
|
+
const availableLabels = Array.isArray(asRecord(repo?.labels)?.nodes) ? asRecord(repo?.labels)?.nodes : [];
|
|
275
|
+
const labelIdsByName = /* @__PURE__ */ new Map();
|
|
276
|
+
for (const label of availableLabels) {
|
|
277
|
+
const labelRecord = asRecord(label);
|
|
278
|
+
if (typeof labelRecord?.name === "string" && typeof labelRecord?.id === "string") {
|
|
279
|
+
labelIdsByName.set(labelRecord.name.toLowerCase(), labelRecord.id);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
const labelIds = input.labels.map((labelName) => {
|
|
283
|
+
const id = labelIdsByName.get(labelName.toLowerCase());
|
|
284
|
+
if (!id) {
|
|
285
|
+
throw new Error(`Label not found: ${labelName}`);
|
|
286
|
+
}
|
|
287
|
+
return id;
|
|
288
|
+
});
|
|
289
|
+
await getSdk14(client).IssueLabelsRemove({
|
|
290
|
+
labelableId,
|
|
291
|
+
labelIds
|
|
292
|
+
});
|
|
293
|
+
return {
|
|
294
|
+
issueNumber: input.issueNumber,
|
|
295
|
+
removed: input.labels
|
|
296
|
+
};
|
|
297
|
+
}
|
|
344
298
|
async function runIssueAssigneesUpdate(transport, input) {
|
|
345
299
|
assertIssueAssigneesUpdateInput(input);
|
|
346
300
|
const client = createGraphqlRequestClient(transport);
|
|
@@ -435,7 +389,7 @@ async function runIssueAssigneesRemove(transport, input) {
|
|
|
435
389
|
async function runIssueMilestoneSet(transport, input) {
|
|
436
390
|
assertIssueMilestoneSetInput(input);
|
|
437
391
|
const client = createGraphqlRequestClient(transport);
|
|
438
|
-
const lookupResult = await
|
|
392
|
+
const lookupResult = await getSdk17(
|
|
439
393
|
client
|
|
440
394
|
).IssueMilestoneLookupByNumber({
|
|
441
395
|
owner: input.owner,
|
|
@@ -452,7 +406,7 @@ async function runIssueMilestoneSet(transport, input) {
|
|
|
452
406
|
if (typeof milestoneId !== "string" || milestoneId.length === 0) {
|
|
453
407
|
throw new Error(`Milestone not found: ${input.milestoneNumber}`);
|
|
454
408
|
}
|
|
455
|
-
const result = await
|
|
409
|
+
const result = await getSdk18(client).IssueMilestoneSet({
|
|
456
410
|
issueId,
|
|
457
411
|
milestoneId
|
|
458
412
|
});
|
|
@@ -464,10 +418,31 @@ async function runIssueMilestoneSet(transport, input) {
|
|
|
464
418
|
milestoneNumber: typeof milestone?.["number"] === "number" ? milestone["number"] : null
|
|
465
419
|
};
|
|
466
420
|
}
|
|
421
|
+
async function runIssueMilestoneClear(transport, input) {
|
|
422
|
+
assertIssueMutationInput(input);
|
|
423
|
+
const client = createGraphqlRequestClient(transport);
|
|
424
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
425
|
+
owner: input.owner,
|
|
426
|
+
name: input.name,
|
|
427
|
+
issueNumber: input.issueNumber
|
|
428
|
+
});
|
|
429
|
+
const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id;
|
|
430
|
+
if (typeof issueId !== "string" || issueId.length === 0) {
|
|
431
|
+
throw new Error("Issue not found");
|
|
432
|
+
}
|
|
433
|
+
await getSdk18(client).IssueMilestoneSet({
|
|
434
|
+
issueId,
|
|
435
|
+
milestoneId: null
|
|
436
|
+
});
|
|
437
|
+
return {
|
|
438
|
+
issueNumber: input.issueNumber,
|
|
439
|
+
cleared: true
|
|
440
|
+
};
|
|
441
|
+
}
|
|
467
442
|
async function runIssueCommentCreate(transport, input) {
|
|
468
443
|
assertIssueCommentCreateInput(input);
|
|
469
444
|
const client = createGraphqlRequestClient(transport);
|
|
470
|
-
const lookupResult = await
|
|
445
|
+
const lookupResult = await getSdk19(client).IssueNodeIdLookup({
|
|
471
446
|
owner: input.owner,
|
|
472
447
|
name: input.name,
|
|
473
448
|
issueNumber: input.issueNumber
|
|
@@ -494,7 +469,7 @@ async function runIssueCommentCreate(transport, input) {
|
|
|
494
469
|
}
|
|
495
470
|
async function runIssueLinkedPrsList(transport, input) {
|
|
496
471
|
assertIssueLinkedPrsListInput(input);
|
|
497
|
-
const result = await
|
|
472
|
+
const result = await getSdk16(
|
|
498
473
|
createGraphqlRequestClient(transport)
|
|
499
474
|
).IssueLinkedPrsList({
|
|
500
475
|
owner: input.owner,
|
|
@@ -538,7 +513,7 @@ function parseIssueRelationNode(node) {
|
|
|
538
513
|
}
|
|
539
514
|
async function runIssueRelationsGet(transport, input) {
|
|
540
515
|
assertIssueRelationsGetInput(input);
|
|
541
|
-
const result = await
|
|
516
|
+
const result = await getSdk23(
|
|
542
517
|
createGraphqlRequestClient(transport)
|
|
543
518
|
).IssueRelationsGet({
|
|
544
519
|
owner: input.owner,
|
|
@@ -564,7 +539,7 @@ async function runIssueRelationsGet(transport, input) {
|
|
|
564
539
|
}
|
|
565
540
|
async function runIssueParentSet(transport, input) {
|
|
566
541
|
assertIssueParentSetInput(input);
|
|
567
|
-
const result = await
|
|
542
|
+
const result = await getSdk22(createGraphqlRequestClient(transport)).IssueParentSet({
|
|
568
543
|
issueId: input.issueId,
|
|
569
544
|
parentIssueId: input.parentIssueId
|
|
570
545
|
});
|
|
@@ -583,14 +558,14 @@ async function runIssueParentSet(transport, input) {
|
|
|
583
558
|
async function runIssueParentRemove(transport, input) {
|
|
584
559
|
assertIssueParentRemoveInput(input);
|
|
585
560
|
const client = createGraphqlRequestClient(transport);
|
|
586
|
-
const lookupResult = await
|
|
561
|
+
const lookupResult = await getSdk20(client).IssueParentLookup({
|
|
587
562
|
issueId: input.issueId
|
|
588
563
|
});
|
|
589
564
|
const parentIssueId = asRecord(asRecord(asRecord(lookupResult)?.node)?.parent)?.id;
|
|
590
565
|
if (typeof parentIssueId !== "string" || parentIssueId.length === 0) {
|
|
591
566
|
throw new Error("Issue parent removal failed");
|
|
592
567
|
}
|
|
593
|
-
const result = await
|
|
568
|
+
const result = await getSdk21(client).IssueParentRemove({
|
|
594
569
|
issueId: input.issueId,
|
|
595
570
|
parentIssueId
|
|
596
571
|
});
|
|
@@ -656,8 +631,10 @@ export {
|
|
|
656
631
|
runIssueCreate,
|
|
657
632
|
runIssueDelete,
|
|
658
633
|
runIssueLabelsAdd,
|
|
634
|
+
runIssueLabelsRemove,
|
|
659
635
|
runIssueLabelsUpdate,
|
|
660
636
|
runIssueLinkedPrsList,
|
|
637
|
+
runIssueMilestoneClear,
|
|
661
638
|
runIssueMilestoneSet,
|
|
662
639
|
runIssueParentRemove,
|
|
663
640
|
runIssueParentSet,
|
|
@@ -665,4 +642,4 @@ export {
|
|
|
665
642
|
runIssueReopen,
|
|
666
643
|
runIssueUpdate
|
|
667
644
|
};
|
|
668
|
-
//# sourceMappingURL=issue-mutations-
|
|
645
|
+
//# sourceMappingURL=issue-mutations-OW464JP3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/gql/domains/issue-mutations.ts"],"sourcesContent":["import {\n asRecord,\n assertIssueAssigneesAddInput,\n assertIssueAssigneesRemoveInput,\n assertIssueAssigneesUpdateInput,\n assertIssueBlockedByInput,\n assertIssueCommentCreateInput,\n assertIssueCreateInput,\n assertIssueLabelsAddInput,\n assertIssueLabelsRemoveInput,\n assertIssueLabelsUpdateInput,\n assertIssueLinkedPrsListInput,\n assertIssueMilestoneSetInput,\n assertIssueMutationInput,\n assertIssueParentRemoveInput,\n assertIssueParentSetInput,\n assertIssueRelationsGetInput,\n assertIssueUpdateInput,\n assertNonEmptyString,\n} from \"../assertions.js\"\nimport { getSdk as getIssueAssigneesAddSdk } from \"../operations/issue-assignees-add.generated.js\"\nimport { getSdk as getIssueAssigneesLookupByNumberSdk } from \"../operations/issue-assignees-lookup-by-number.generated.js\"\nimport { getSdk as getIssueAssigneesRemoveSdk } from \"../operations/issue-assignees-remove.generated.js\"\nimport { getSdk as getIssueAssigneesUpdateSdk } from \"../operations/issue-assignees-update.generated.js\"\nimport { getSdk as getIssueBlockedByAddSdk } from \"../operations/issue-blocked-by-add.generated.js\"\nimport { getSdk as getIssueBlockedByRemoveSdk } from \"../operations/issue-blocked-by-remove.generated.js\"\nimport { getSdk as getIssueCloseSdk } from \"../operations/issue-close.generated.js\"\nimport { getSdk as getIssueCommentCreateSdk } from \"../operations/issue-comment-create.generated.js\"\nimport { getSdk as getIssueCreateSdk } from \"../operations/issue-create.generated.js\"\nimport { getSdk as getIssueCreateRepositoryIdSdk } from \"../operations/issue-create-repository-id.generated.js\"\nimport { getSdk as getIssueDeleteSdk } from \"../operations/issue-delete.generated.js\"\nimport { getSdk as getIssueLabelsAddSdk } from \"../operations/issue-labels-add.generated.js\"\nimport { getSdk as getIssueLabelsLookupByNumberSdk } from \"../operations/issue-labels-lookup-by-number.generated.js\"\nimport { getSdk as getIssueLabelsRemoveSdk } from \"../operations/issue-labels-remove.generated.js\"\nimport { getSdk as getIssueLabelsUpdateSdk } from \"../operations/issue-labels-update.generated.js\"\nimport { getSdk as getIssueLinkedPrsListSdk } from \"../operations/issue-linked-prs-list.generated.js\"\nimport { getSdk as getIssueMilestoneLookupByNumberSdk } from \"../operations/issue-milestone-lookup-by-number.generated.js\"\nimport { getSdk as getIssueMilestoneSetSdk } from \"../operations/issue-milestone-set.generated.js\"\nimport { getSdk as getIssueNodeIdLookupSdk } from \"../operations/issue-node-id-lookup.generated.js\"\nimport { getSdk as getIssueParentLookupSdk } from \"../operations/issue-parent-lookup.generated.js\"\nimport { getSdk as getIssueParentRemoveSdk } from \"../operations/issue-parent-remove.generated.js\"\nimport { getSdk as getIssueParentSetSdk } from \"../operations/issue-parent-set.generated.js\"\nimport { getSdk as getIssueRelationsGetSdk } from \"../operations/issue-relations-get.generated.js\"\nimport { getSdk as getIssueReopenSdk } from \"../operations/issue-reopen.generated.js\"\nimport { getSdk as getIssueUpdateSdk } from \"../operations/issue-update.generated.js\"\nimport type { GraphqlTransport } from \"../transport.js\"\nimport { createGraphqlRequestClient } from \"../transport.js\"\nimport type {\n IssueAssigneesAddData,\n IssueAssigneesAddInput,\n IssueAssigneesRemoveData,\n IssueAssigneesRemoveInput,\n IssueAssigneesUpdateData,\n IssueAssigneesUpdateInput,\n IssueBlockedByData,\n IssueBlockedByInput,\n IssueCommentCreateData,\n IssueCommentCreateInput,\n IssueCreateInput,\n IssueLabelsAddData,\n IssueLabelsAddInput,\n IssueLabelsRemoveData,\n IssueLabelsRemoveInput,\n IssueLabelsUpdateData,\n IssueLabelsUpdateInput,\n IssueLinkedPrsListData,\n IssueLinkedPrsListInput,\n IssueMilestoneClearData,\n IssueMilestoneClearInput,\n IssueMilestoneSetData,\n IssueMilestoneSetInput,\n IssueMutationData,\n IssueMutationInput,\n IssueParentRemoveData,\n IssueParentRemoveInput,\n IssueParentSetData,\n IssueParentSetInput,\n IssueRelationNodeData,\n IssueRelationsGetData,\n IssueRelationsGetInput,\n IssueUpdateInput,\n} from \"../types.js\"\n\nfunction parseIssueNode(issue: unknown): IssueMutationData {\n const issueRecord = asRecord(issue)\n if (\n !issueRecord ||\n typeof issueRecord.id !== \"string\" ||\n typeof issueRecord.number !== \"number\"\n ) {\n throw new Error(\"Issue mutation failed\")\n }\n\n const result: IssueMutationData = {\n id: issueRecord.id,\n number: issueRecord.number,\n }\n\n if (typeof issueRecord.title === \"string\") {\n result.title = issueRecord.title\n }\n if (typeof issueRecord.state === \"string\") {\n result.state = issueRecord.state\n }\n if (typeof issueRecord.url === \"string\") {\n result.url = issueRecord.url\n }\n\n return result\n}\n\nexport async function runIssueCreate(\n transport: GraphqlTransport,\n input: IssueCreateInput,\n): Promise<IssueMutationData> {\n assertIssueCreateInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const repositoryLookupResult = await getIssueCreateRepositoryIdSdk(\n client,\n ).IssueCreateRepositoryId({\n owner: input.owner,\n name: input.name,\n })\n\n const repositoryId = asRecord(repositoryLookupResult.repository)?.id\n if (typeof repositoryId !== \"string\" || repositoryId.length === 0) {\n throw new Error(\"Repository not found\")\n }\n\n const result = await getIssueCreateSdk(client).IssueCreate({\n repositoryId,\n title: input.title,\n ...(input.body === undefined ? {} : { body: input.body }),\n })\n\n const issue = asRecord(asRecord(result)?.createIssue)?.issue\n return parseIssueNode(issue)\n}\n\nexport async function runIssueUpdate(\n transport: GraphqlTransport,\n input: IssueUpdateInput,\n): Promise<IssueMutationData> {\n assertIssueUpdateInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const result = await getIssueUpdateSdk(client).IssueUpdate({\n issueId,\n ...(input.title === undefined ? {} : { title: input.title }),\n ...(input.body === undefined ? {} : { body: input.body }),\n })\n const issue = asRecord(asRecord(result)?.updateIssue)?.issue\n return parseIssueNode(issue)\n}\n\nexport async function runIssueClose(\n transport: GraphqlTransport,\n input: IssueMutationInput,\n): Promise<IssueMutationData> {\n assertIssueMutationInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const result = await getIssueCloseSdk(client).IssueClose({ issueId })\n const issueData = parseIssueNode(asRecord(asRecord(result)?.closeIssue)?.issue)\n return {\n ...issueData,\n closed: issueData.state === \"CLOSED\",\n }\n}\n\nexport async function runIssueReopen(\n transport: GraphqlTransport,\n input: IssueMutationInput,\n): Promise<IssueMutationData> {\n assertIssueMutationInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const result = await getIssueReopenSdk(client).IssueReopen({ issueId })\n const issueData = parseIssueNode(asRecord(asRecord(result)?.reopenIssue)?.issue)\n return {\n ...issueData,\n reopened: issueData.state === \"OPEN\",\n }\n}\n\nexport async function runIssueDelete(\n transport: GraphqlTransport,\n input: IssueMutationInput,\n): Promise<IssueMutationData> {\n assertIssueMutationInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const result = await getIssueDeleteSdk(client).IssueDelete({ issueId })\n const mutation = asRecord(asRecord(result)?.deleteIssue)\n if (!mutation) {\n throw new Error(\"Issue deletion failed\")\n }\n\n return {\n id: issueId,\n number: 0,\n deleted: true,\n }\n}\n\nexport async function runIssueLabelsUpdate(\n transport: GraphqlTransport,\n input: IssueLabelsUpdateInput,\n): Promise<IssueLabelsUpdateData> {\n assertIssueLabelsUpdateInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueLabelsLookupByNumberSdk(client).IssueLabelsLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const repo = asRecord(asRecord(lookupResult)?.repository)\n const issueId = asRecord(repo?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const availableLabels = Array.isArray(asRecord(repo?.labels)?.nodes)\n ? (asRecord(repo?.labels)?.nodes as unknown[])\n : []\n\n const labelIdsByName = new Map<string, string>()\n for (const label of availableLabels) {\n const labelRecord = asRecord(label)\n if (typeof labelRecord?.name === \"string\" && typeof labelRecord?.id === \"string\") {\n labelIdsByName.set(labelRecord.name.toLowerCase(), labelRecord.id)\n }\n }\n\n const labelIds = input.labels.map((labelName) => {\n const id = labelIdsByName.get(labelName.toLowerCase())\n if (!id) {\n throw new Error(`Label not found: ${labelName}`)\n }\n return id\n })\n\n const result = await getIssueLabelsUpdateSdk(client).IssueLabelsUpdate({\n issueId,\n labelIds,\n })\n\n const mutation = asRecord(asRecord(result)?.[\"updateIssue\"])\n const issue = asRecord(mutation?.[\"issue\"])\n const labels = asRecord(issue?.[\"labels\"])\n const labelNodes = Array.isArray(labels?.[\"nodes\"]) ? labels[\"nodes\"] : []\n\n return {\n id: assertNonEmptyString(issue?.[\"id\"], \"Issue id\"),\n labels: labelNodes\n .map((label) => asRecord(label)?.[\"name\"])\n .filter((name): name is string => typeof name === \"string\"),\n }\n}\n\nexport async function runIssueLabelsAdd(\n transport: GraphqlTransport,\n input: IssueLabelsAddInput,\n): Promise<IssueLabelsAddData> {\n assertIssueLabelsAddInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueLabelsLookupByNumberSdk(client).IssueLabelsLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const repo = asRecord(asRecord(lookupResult)?.repository)\n const labelableId = asRecord(repo?.issue)?.id\n if (typeof labelableId !== \"string\" || labelableId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const availableLabels = Array.isArray(asRecord(repo?.labels)?.nodes)\n ? (asRecord(repo?.labels)?.nodes as unknown[])\n : []\n\n const labelIdsByName = new Map<string, string>()\n for (const label of availableLabels) {\n const labelRecord = asRecord(label)\n if (typeof labelRecord?.name === \"string\" && typeof labelRecord?.id === \"string\") {\n labelIdsByName.set(labelRecord.name.toLowerCase(), labelRecord.id)\n }\n }\n\n const labelIds = input.labels.map((labelName) => {\n const id = labelIdsByName.get(labelName.toLowerCase())\n if (!id) {\n throw new Error(`Label not found: ${labelName}`)\n }\n return id\n })\n\n const result = await getIssueLabelsAddSdk(client).IssueLabelsAdd({\n labelableId,\n labelIds,\n })\n\n const mutation = asRecord(asRecord(result)?.[\"addLabelsToLabelable\"])\n const labelable = asRecord(mutation?.[\"labelable\"])\n const labels = asRecord(labelable?.[\"labels\"])\n const labelNodes = Array.isArray(labels?.[\"nodes\"]) ? labels[\"nodes\"] : []\n\n return {\n id: assertNonEmptyString(labelable?.[\"id\"], \"Issue id\"),\n labels: labelNodes\n .map((label) => asRecord(label)?.[\"name\"])\n .filter((name): name is string => typeof name === \"string\"),\n }\n}\n\nexport async function runIssueLabelsRemove(\n transport: GraphqlTransport,\n input: IssueLabelsRemoveInput,\n): Promise<IssueLabelsRemoveData> {\n assertIssueLabelsRemoveInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueLabelsLookupByNumberSdk(client).IssueLabelsLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const repo = asRecord(asRecord(lookupResult)?.repository)\n const labelableId = asRecord(repo?.issue)?.id\n if (typeof labelableId !== \"string\" || labelableId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const availableLabels = Array.isArray(asRecord(repo?.labels)?.nodes)\n ? (asRecord(repo?.labels)?.nodes as unknown[])\n : []\n\n const labelIdsByName = new Map<string, string>()\n for (const label of availableLabels) {\n const labelRecord = asRecord(label)\n if (typeof labelRecord?.name === \"string\" && typeof labelRecord?.id === \"string\") {\n labelIdsByName.set(labelRecord.name.toLowerCase(), labelRecord.id)\n }\n }\n\n const labelIds = input.labels.map((labelName) => {\n const id = labelIdsByName.get(labelName.toLowerCase())\n if (!id) {\n throw new Error(`Label not found: ${labelName}`)\n }\n return id\n })\n\n await getIssueLabelsRemoveSdk(client).IssueLabelsRemove({\n labelableId,\n labelIds,\n })\n\n return {\n issueNumber: input.issueNumber,\n removed: input.labels,\n }\n}\n\nexport async function runIssueAssigneesUpdate(\n transport: GraphqlTransport,\n input: IssueAssigneesUpdateInput,\n): Promise<IssueAssigneesUpdateData> {\n assertIssueAssigneesUpdateInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueAssigneesLookupByNumberSdk(\n client,\n ).IssueAssigneesLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const { assignableId, assigneeIds } = resolveAssigneeIds(lookupResult, input.assignees)\n\n const result = await getIssueAssigneesUpdateSdk(client).IssueAssigneesUpdate({\n issueId: assignableId,\n assigneeIds,\n })\n\n const mutation = asRecord(asRecord(result)?.[\"updateIssue\"])\n const issue = asRecord(mutation?.[\"issue\"])\n const assignees = asRecord(issue?.[\"assignees\"])\n const assigneeNodes = Array.isArray(assignees?.[\"nodes\"]) ? assignees[\"nodes\"] : []\n\n return {\n id: assertNonEmptyString(issue?.[\"id\"], \"Issue id\"),\n assignees: assigneeNodes\n .map((assignee) => asRecord(assignee)?.[\"login\"])\n .filter((login): login is string => typeof login === \"string\"),\n }\n}\n\nfunction resolveAssigneeIds(\n lookupResult: unknown,\n assigneeLogins: string[],\n): { assignableId: string; assigneeIds: string[] } {\n const repo = asRecord(asRecord(lookupResult)?.repository)\n const issueId = asRecord(repo?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const assignableNodes = Array.isArray(asRecord(repo?.assignableUsers)?.nodes)\n ? (asRecord(repo?.assignableUsers)?.nodes as unknown[])\n : []\n\n const idsByLogin = new Map<string, string>()\n for (const node of assignableNodes) {\n const rec = asRecord(node)\n if (typeof rec?.login === \"string\" && typeof rec?.id === \"string\") {\n idsByLogin.set(rec.login.toLowerCase(), rec.id)\n }\n }\n\n const assigneeIds = assigneeLogins.map((login) => {\n const id = idsByLogin.get(login.toLowerCase())\n if (!id) {\n throw new Error(`Assignee not found: ${login}`)\n }\n return id\n })\n\n return { assignableId: issueId, assigneeIds }\n}\n\nfunction parseAssignableResult(\n result: unknown,\n mutationKey: string,\n): { id: string; assignees: string[] } {\n const mutation = asRecord(asRecord(result)?.[mutationKey])\n const assignable = asRecord(mutation?.assignable)\n const assignees = asRecord(assignable?.assignees)\n const nodes = Array.isArray(assignees?.nodes) ? assignees.nodes : []\n\n return {\n id: assertNonEmptyString(assignable?.id, \"Issue id\"),\n assignees: nodes\n .map((n) => asRecord(n)?.login)\n .filter((login): login is string => typeof login === \"string\"),\n }\n}\n\nexport async function runIssueAssigneesAdd(\n transport: GraphqlTransport,\n input: IssueAssigneesAddInput,\n): Promise<IssueAssigneesAddData> {\n assertIssueAssigneesAddInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueAssigneesLookupByNumberSdk(\n client,\n ).IssueAssigneesLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const { assignableId, assigneeIds } = resolveAssigneeIds(lookupResult, input.assignees)\n\n const result = await getIssueAssigneesAddSdk(client).IssueAssigneesAdd({\n assignableId,\n assigneeIds,\n })\n\n return parseAssignableResult(result, \"addAssigneesToAssignable\")\n}\n\nexport async function runIssueAssigneesRemove(\n transport: GraphqlTransport,\n input: IssueAssigneesRemoveInput,\n): Promise<IssueAssigneesRemoveData> {\n assertIssueAssigneesRemoveInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueAssigneesLookupByNumberSdk(\n client,\n ).IssueAssigneesLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const { assignableId, assigneeIds } = resolveAssigneeIds(lookupResult, input.assignees)\n\n const result = await getIssueAssigneesRemoveSdk(client).IssueAssigneesRemove({\n assignableId,\n assigneeIds,\n })\n\n return parseAssignableResult(result, \"removeAssigneesFromAssignable\")\n}\n\nexport async function runIssueMilestoneSet(\n transport: GraphqlTransport,\n input: IssueMilestoneSetInput,\n): Promise<IssueMilestoneSetData> {\n assertIssueMilestoneSetInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueMilestoneLookupByNumberSdk(\n client,\n ).IssueMilestoneLookupByNumber({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n milestoneNumber: input.milestoneNumber,\n })\n const repo = asRecord(asRecord(lookupResult)?.repository)\n const issueId = asRecord(repo?.issue)?.id\n const milestoneId = asRecord(repo?.milestone)?.id\n\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n if (typeof milestoneId !== \"string\" || milestoneId.length === 0) {\n throw new Error(`Milestone not found: ${input.milestoneNumber}`)\n }\n\n const result = await getIssueMilestoneSetSdk(client).IssueMilestoneSet({\n issueId,\n milestoneId,\n })\n\n const mutation = asRecord(asRecord(result)?.[\"updateIssue\"])\n const issue = asRecord(mutation?.[\"issue\"])\n const milestone = asRecord(issue?.[\"milestone\"])\n\n return {\n id: assertNonEmptyString(issue?.[\"id\"], \"Issue id\"),\n milestoneNumber: typeof milestone?.[\"number\"] === \"number\" ? milestone[\"number\"] : null,\n }\n}\n\nexport async function runIssueMilestoneClear(\n transport: GraphqlTransport,\n input: IssueMilestoneClearInput,\n): Promise<IssueMilestoneClearData> {\n assertIssueMutationInput(input)\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n await getIssueMilestoneSetSdk(client).IssueMilestoneSet({\n issueId,\n milestoneId: null,\n })\n\n return {\n issueNumber: input.issueNumber,\n cleared: true,\n }\n}\n\nexport async function runIssueCommentCreate(\n transport: GraphqlTransport,\n input: IssueCommentCreateInput,\n): Promise<IssueCommentCreateData> {\n assertIssueCommentCreateInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueNodeIdLookupSdk(client).IssueNodeIdLookup({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issueId = asRecord(asRecord(asRecord(lookupResult)?.repository)?.issue)?.id\n if (typeof issueId !== \"string\" || issueId.length === 0) {\n throw new Error(\"Issue not found\")\n }\n\n const result = await getIssueCommentCreateSdk(client).IssueCommentCreate({\n issueId,\n body: input.body,\n })\n\n const mutation = asRecord(asRecord(result)?.[\"addComment\"])\n const commentEdge = asRecord(mutation?.[\"commentEdge\"])\n const node = asRecord(commentEdge?.[\"node\"])\n if (!node || typeof node[\"id\"] !== \"string\" || typeof node[\"body\"] !== \"string\") {\n throw new Error(\"Issue comment creation failed\")\n }\n\n return {\n id: node[\"id\"],\n body: node[\"body\"],\n url: typeof node[\"url\"] === \"string\" ? node[\"url\"] : \"\",\n }\n}\n\nexport async function runIssueLinkedPrsList(\n transport: GraphqlTransport,\n input: IssueLinkedPrsListInput,\n): Promise<IssueLinkedPrsListData> {\n assertIssueLinkedPrsListInput(input)\n\n const result = await getIssueLinkedPrsListSdk(\n createGraphqlRequestClient(transport),\n ).IssueLinkedPrsList({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issue = asRecord(asRecord(asRecord(result)?.repository)?.issue)\n const timelineItems = asRecord(issue?.timelineItems)\n const nodes = Array.isArray(timelineItems?.nodes) ? timelineItems.nodes : []\n\n return {\n items: nodes\n .map((node) => asRecord(asRecord(node)?.[\"subject\"]))\n .filter(\n (subject): subject is Record<string, unknown> =>\n Boolean(subject) && subject?.[\"__typename\"] === \"PullRequest\",\n )\n .flatMap((subject) => {\n if (!subject) {\n return []\n }\n\n if (\n typeof subject[\"id\"] !== \"string\" ||\n typeof subject[\"number\"] !== \"number\" ||\n typeof subject[\"title\"] !== \"string\" ||\n typeof subject[\"state\"] !== \"string\" ||\n typeof subject[\"url\"] !== \"string\"\n ) {\n return []\n }\n\n return [\n {\n id: subject[\"id\"],\n number: subject[\"number\"],\n title: subject[\"title\"],\n state: subject[\"state\"],\n url: subject[\"url\"],\n },\n ]\n }),\n }\n}\n\nfunction parseIssueRelationNode(node: unknown): IssueRelationNodeData | null {\n const record = asRecord(node)\n if (!record || typeof record.id !== \"string\" || typeof record.number !== \"number\") {\n return null\n }\n\n return {\n id: record.id,\n number: record.number,\n }\n}\n\nexport async function runIssueRelationsGet(\n transport: GraphqlTransport,\n input: IssueRelationsGetInput,\n): Promise<IssueRelationsGetData> {\n assertIssueRelationsGetInput(input)\n\n const result = await getIssueRelationsGetSdk(\n createGraphqlRequestClient(transport),\n ).IssueRelationsGet({\n owner: input.owner,\n name: input.name,\n issueNumber: input.issueNumber,\n })\n\n const issue = asRecord(asRecord(asRecord(result)?.repository)?.issue)\n const currentIssue = parseIssueRelationNode(issue)\n if (!currentIssue) {\n throw new Error(\"Issue relations not found\")\n }\n\n const parent = parseIssueRelationNode(issue?.parent)\n const subIssues = asRecord(issue?.[\"subIssues\"])\n const blockedByConnection = asRecord(issue?.[\"blockedBy\"])\n const childrenNodes = Array.isArray(subIssues?.[\"nodes\"]) ? subIssues[\"nodes\"] : []\n const blockedByNodes = Array.isArray(blockedByConnection?.[\"nodes\"])\n ? blockedByConnection[\"nodes\"]\n : []\n\n return {\n issue: currentIssue,\n parent,\n children: childrenNodes\n .map((node) => parseIssueRelationNode(node))\n .flatMap((node) => (node ? [node] : [])),\n blockedBy: blockedByNodes\n .map((node) => parseIssueRelationNode(node))\n .flatMap((node) => (node ? [node] : [])),\n }\n}\n\nexport async function runIssueParentSet(\n transport: GraphqlTransport,\n input: IssueParentSetInput,\n): Promise<IssueParentSetData> {\n assertIssueParentSetInput(input)\n\n const result = await getIssueParentSetSdk(createGraphqlRequestClient(transport)).IssueParentSet({\n issueId: input.issueId,\n parentIssueId: input.parentIssueId,\n })\n\n const mutation = asRecord(asRecord(result)?.addSubIssue)\n const parentIssue = asRecord(mutation?.issue)\n const subIssue = asRecord(mutation?.subIssue)\n if (typeof parentIssue?.id !== \"string\" || typeof subIssue?.id !== \"string\") {\n throw new Error(\"Issue parent update failed\")\n }\n\n return {\n issueId: subIssue.id,\n parentIssueId: parentIssue.id,\n updated: true,\n }\n}\n\nexport async function runIssueParentRemove(\n transport: GraphqlTransport,\n input: IssueParentRemoveInput,\n): Promise<IssueParentRemoveData> {\n assertIssueParentRemoveInput(input)\n\n const client = createGraphqlRequestClient(transport)\n const lookupResult = await getIssueParentLookupSdk(client).IssueParentLookup({\n issueId: input.issueId,\n })\n\n const parentIssueId = asRecord(asRecord(asRecord(lookupResult)?.node)?.parent)?.id\n if (typeof parentIssueId !== \"string\" || parentIssueId.length === 0) {\n throw new Error(\"Issue parent removal failed\")\n }\n\n const result = await getIssueParentRemoveSdk(client).IssueParentRemove({\n issueId: input.issueId,\n parentIssueId,\n })\n\n const mutation = asRecord(asRecord(result)?.removeSubIssue)\n const parentIssue = asRecord(mutation?.issue)\n const subIssue = asRecord(mutation?.subIssue)\n if (typeof parentIssue?.id !== \"string\" || typeof subIssue?.id !== \"string\") {\n throw new Error(\"Issue parent removal failed\")\n }\n\n return {\n issueId: subIssue.id,\n parentRemoved: true,\n }\n}\n\nexport async function runIssueBlockedByAdd(\n transport: GraphqlTransport,\n input: IssueBlockedByInput,\n): Promise<IssueBlockedByData> {\n assertIssueBlockedByInput(input)\n\n const result = await getIssueBlockedByAddSdk(\n createGraphqlRequestClient(transport),\n ).IssueBlockedByAdd({\n issueId: input.issueId,\n blockedByIssueId: input.blockedByIssueId,\n })\n\n const mutation = asRecord(asRecord(result)?.addBlockedBy)\n const issue = asRecord(mutation?.issue)\n const blockingIssue = asRecord(mutation?.blockingIssue)\n if (typeof issue?.id !== \"string\" || typeof blockingIssue?.id !== \"string\") {\n throw new Error(\"Issue dependency mutation failed\")\n }\n\n return {\n issueId: issue.id,\n blockedByIssueId: blockingIssue.id,\n added: true,\n }\n}\n\nexport async function runIssueBlockedByRemove(\n transport: GraphqlTransport,\n input: IssueBlockedByInput,\n): Promise<IssueBlockedByData> {\n assertIssueBlockedByInput(input)\n\n const result = await getIssueBlockedByRemoveSdk(\n createGraphqlRequestClient(transport),\n ).IssueBlockedByRemove({\n issueId: input.issueId,\n blockedByIssueId: input.blockedByIssueId,\n })\n\n const mutation = asRecord(asRecord(result)?.removeBlockedBy)\n const issue = asRecord(mutation?.issue)\n const blockingIssue = asRecord(mutation?.blockingIssue)\n if (typeof issue?.id !== \"string\" || typeof blockingIssue?.id !== \"string\") {\n throw new Error(\"Issue dependency mutation failed\")\n }\n\n return {\n issueId: issue.id,\n blockedByIssueId: blockingIssue.id,\n removed: true,\n }\n}\n"],"mappings":"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","names":["getSdk"]}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getSdk,
|
|
3
|
+
getSdk2,
|
|
4
|
+
getSdk3
|
|
5
|
+
} from "./chunk-TGL33GEA.js";
|
|
6
|
+
import "./chunk-3DU2WHXF.js";
|
|
7
|
+
import "./chunk-R3CBGJZX.js";
|
|
8
|
+
import {
|
|
9
|
+
assertIssueCommentsListInput,
|
|
10
|
+
assertIssueInput,
|
|
11
|
+
assertIssueListInput
|
|
12
|
+
} from "./chunk-OQWLEFAH.js";
|
|
13
|
+
import {
|
|
14
|
+
createGraphqlRequestClient
|
|
15
|
+
} from "./chunk-HEHONZTO.js";
|
|
16
|
+
|
|
17
|
+
// src/gql/domains/issue-queries.ts
|
|
18
|
+
async function runIssueView(transport, input) {
|
|
19
|
+
assertIssueInput(input);
|
|
20
|
+
const sdk = getSdk3(createGraphqlRequestClient(transport));
|
|
21
|
+
const result = await sdk.IssueView(input);
|
|
22
|
+
const issue = result.repository?.issue;
|
|
23
|
+
if (!issue) {
|
|
24
|
+
throw new Error("Issue not found");
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
id: issue.id,
|
|
28
|
+
number: issue.number,
|
|
29
|
+
title: issue.title,
|
|
30
|
+
state: issue.state,
|
|
31
|
+
url: issue.url,
|
|
32
|
+
body: issue.body ?? "",
|
|
33
|
+
labels: (issue.labels?.nodes ?? []).flatMap((n) => n ? [n.name] : [])
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
async function runIssueList(transport, input) {
|
|
37
|
+
assertIssueListInput(input);
|
|
38
|
+
const sdk = getSdk2(createGraphqlRequestClient(transport));
|
|
39
|
+
const result = await sdk.IssueList(input);
|
|
40
|
+
const issues = result.repository?.issues;
|
|
41
|
+
if (!issues) {
|
|
42
|
+
throw new Error("Issues not found");
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
items: (issues.nodes ?? []).flatMap(
|
|
46
|
+
(issue) => issue ? [
|
|
47
|
+
{
|
|
48
|
+
id: issue.id,
|
|
49
|
+
number: issue.number,
|
|
50
|
+
title: issue.title,
|
|
51
|
+
state: issue.state,
|
|
52
|
+
url: issue.url
|
|
53
|
+
}
|
|
54
|
+
] : []
|
|
55
|
+
),
|
|
56
|
+
pageInfo: {
|
|
57
|
+
endCursor: issues.pageInfo.endCursor ?? null,
|
|
58
|
+
hasNextPage: issues.pageInfo.hasNextPage
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
async function runIssueCommentsList(transport, input) {
|
|
63
|
+
assertIssueCommentsListInput(input);
|
|
64
|
+
const sdk = getSdk(createGraphqlRequestClient(transport));
|
|
65
|
+
const result = await sdk.IssueCommentsList(input);
|
|
66
|
+
const comments = result.repository?.issue?.comments;
|
|
67
|
+
if (!comments) {
|
|
68
|
+
throw new Error("Issue comments not found");
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
items: (comments.nodes ?? []).flatMap(
|
|
72
|
+
(comment) => comment ? [
|
|
73
|
+
{
|
|
74
|
+
id: comment.id,
|
|
75
|
+
body: comment.body,
|
|
76
|
+
authorLogin: comment.author?.login ?? null,
|
|
77
|
+
createdAt: comment.createdAt,
|
|
78
|
+
url: String(comment.url)
|
|
79
|
+
}
|
|
80
|
+
] : []
|
|
81
|
+
),
|
|
82
|
+
pageInfo: {
|
|
83
|
+
endCursor: comments.pageInfo.endCursor ?? null,
|
|
84
|
+
hasNextPage: comments.pageInfo.hasNextPage
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export {
|
|
89
|
+
runIssueCommentsList,
|
|
90
|
+
runIssueList,
|
|
91
|
+
runIssueView
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=issue-queries-ORG3VPK4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/gql/domains/issue-queries.ts"],"sourcesContent":["import {\n assertIssueCommentsListInput,\n assertIssueInput,\n assertIssueListInput,\n} from \"../assertions.js\"\nimport type { IssueCommentsListQuery } from \"../operations/issue-comments-list.generated.js\"\nimport { getSdk as getIssueCommentsListSdk } from \"../operations/issue-comments-list.generated.js\"\nimport type { IssueListQuery } from \"../operations/issue-list.generated.js\"\nimport { getSdk as getIssueListSdk } from \"../operations/issue-list.generated.js\"\nimport type { IssueViewQuery } from \"../operations/issue-view.generated.js\"\nimport { getSdk as getIssueViewSdk } from \"../operations/issue-view.generated.js\"\nimport type { GraphqlTransport } from \"../transport.js\"\nimport { createGraphqlRequestClient } from \"../transport.js\"\nimport type {\n IssueCommentsListData,\n IssueCommentsListInput,\n IssueListData,\n IssueListInput,\n IssueViewData,\n IssueViewInput,\n} from \"../types.js\"\n\nexport async function runIssueView(\n transport: GraphqlTransport,\n input: IssueViewInput,\n): Promise<IssueViewData> {\n assertIssueInput(input)\n\n const sdk = getIssueViewSdk(createGraphqlRequestClient(transport))\n const result: IssueViewQuery = await sdk.IssueView(input)\n const issue = result.repository?.issue\n if (!issue) {\n throw new Error(\"Issue not found\")\n }\n\n return {\n id: issue.id,\n number: issue.number,\n title: issue.title,\n state: issue.state,\n url: issue.url,\n body: issue.body ?? \"\",\n labels: (issue.labels?.nodes ?? []).flatMap((n) => (n ? [n.name] : [])),\n }\n}\n\nexport async function runIssueList(\n transport: GraphqlTransport,\n input: IssueListInput,\n): Promise<IssueListData> {\n assertIssueListInput(input)\n\n const sdk = getIssueListSdk(createGraphqlRequestClient(transport))\n const result: IssueListQuery = await sdk.IssueList(input)\n const issues = result.repository?.issues\n if (!issues) {\n throw new Error(\"Issues not found\")\n }\n\n return {\n items: (issues.nodes ?? []).flatMap((issue) =>\n issue\n ? [\n {\n id: issue.id,\n number: issue.number,\n title: issue.title,\n state: issue.state,\n url: issue.url,\n },\n ]\n : [],\n ),\n pageInfo: {\n endCursor: issues.pageInfo.endCursor ?? null,\n hasNextPage: issues.pageInfo.hasNextPage,\n },\n }\n}\n\nexport async function runIssueCommentsList(\n transport: GraphqlTransport,\n input: IssueCommentsListInput,\n): Promise<IssueCommentsListData> {\n assertIssueCommentsListInput(input)\n\n const sdk = getIssueCommentsListSdk(createGraphqlRequestClient(transport))\n const result: IssueCommentsListQuery = await sdk.IssueCommentsList(input)\n const comments = result.repository?.issue?.comments\n if (!comments) {\n throw new Error(\"Issue comments not found\")\n }\n\n return {\n items: (comments.nodes ?? []).flatMap((comment) =>\n comment\n ? [\n {\n id: comment.id,\n body: comment.body,\n authorLogin: comment.author?.login ?? null,\n createdAt: comment.createdAt,\n url: String(comment.url),\n },\n ]\n : [],\n ),\n pageInfo: {\n endCursor: comments.pageInfo.endCursor ?? null,\n hasNextPage: comments.pageInfo.hasNextPage,\n },\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAsBA,eAAsB,aACpB,WACA,OACwB;AACxB,mBAAiB,KAAK;AAEtB,QAAM,MAAMA,QAAgB,2BAA2B,SAAS,CAAC;AACjE,QAAM,SAAyB,MAAM,IAAI,UAAU,KAAK;AACxD,QAAM,QAAQ,OAAO,YAAY;AACjC,MAAI,CAAC,OAAO;AACV,UAAM,IAAI,MAAM,iBAAiB;AAAA,EACnC;AAEA,SAAO;AAAA,IACL,IAAI,MAAM;AAAA,IACV,QAAQ,MAAM;AAAA,IACd,OAAO,MAAM;AAAA,IACb,OAAO,MAAM;AAAA,IACb,KAAK,MAAM;AAAA,IACX,MAAM,MAAM,QAAQ;AAAA,IACpB,SAAS,MAAM,QAAQ,SAAS,CAAC,GAAG,QAAQ,CAAC,MAAO,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,CAAE;AAAA,EACxE;AACF;AAEA,eAAsB,aACpB,WACA,OACwB;AACxB,uBAAqB,KAAK;AAE1B,QAAM,MAAMA,QAAgB,2BAA2B,SAAS,CAAC;AACjE,QAAM,SAAyB,MAAM,IAAI,UAAU,KAAK;AACxD,QAAM,SAAS,OAAO,YAAY;AAClC,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,MAAM,kBAAkB;AAAA,EACpC;AAEA,SAAO;AAAA,IACL,QAAQ,OAAO,SAAS,CAAC,GAAG;AAAA,MAAQ,CAAC,UACnC,QACI;AAAA,QACE;AAAA,UACE,IAAI,MAAM;AAAA,UACV,QAAQ,MAAM;AAAA,UACd,OAAO,MAAM;AAAA,UACb,OAAO,MAAM;AAAA,UACb,KAAK,MAAM;AAAA,QACb;AAAA,MACF,IACA,CAAC;AAAA,IACP;AAAA,IACA,UAAU;AAAA,MACR,WAAW,OAAO,SAAS,aAAa;AAAA,MACxC,aAAa,OAAO,SAAS;AAAA,IAC/B;AAAA,EACF;AACF;AAEA,eAAsB,qBACpB,WACA,OACgC;AAChC,+BAA6B,KAAK;AAElC,QAAM,MAAM,OAAwB,2BAA2B,SAAS,CAAC;AACzE,QAAM,SAAiC,MAAM,IAAI,kBAAkB,KAAK;AACxE,QAAM,WAAW,OAAO,YAAY,OAAO;AAC3C,MAAI,CAAC,UAAU;AACb,UAAM,IAAI,MAAM,0BAA0B;AAAA,EAC5C;AAEA,SAAO;AAAA,IACL,QAAQ,SAAS,SAAS,CAAC,GAAG;AAAA,MAAQ,CAAC,YACrC,UACI;AAAA,QACE;AAAA,UACE,IAAI,QAAQ;AAAA,UACZ,MAAM,QAAQ;AAAA,UACd,aAAa,QAAQ,QAAQ,SAAS;AAAA,UACtC,WAAW,QAAQ;AAAA,UACnB,KAAK,OAAO,QAAQ,GAAG;AAAA,QACzB;AAAA,MACF,IACA,CAAC;AAAA,IACP;AAAA,IACA,UAAU;AAAA,MACR,WAAW,SAAS,SAAS,aAAa;AAAA,MAC1C,aAAa,SAAS,SAAS;AAAA,IACjC;AAAA,EACF;AACF;","names":["getSdk"]}
|