@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.
Files changed (158) hide show
  1. package/.claude-plugin/plugin.json +2 -2
  2. package/README.md +44 -37
  3. package/dist/cards/issue.assignees.add.yaml +1 -0
  4. package/dist/cards/issue.assignees.remove.yaml +1 -0
  5. package/dist/cards/issue.assignees.set.yaml +1 -0
  6. package/dist/cards/issue.close.yaml +1 -0
  7. package/dist/cards/issue.comments.create.yaml +1 -0
  8. package/dist/cards/issue.comments.list.yaml +1 -0
  9. package/dist/cards/issue.create.yaml +1 -0
  10. package/dist/cards/issue.delete.yaml +1 -0
  11. package/dist/cards/issue.labels.add.yaml +1 -0
  12. package/dist/cards/issue.labels.remove.yaml +1 -0
  13. package/dist/cards/issue.labels.set.yaml +1 -0
  14. package/dist/cards/issue.list.yaml +1 -0
  15. package/dist/cards/issue.milestone.clear.yaml +1 -0
  16. package/dist/cards/issue.milestone.set.yaml +1 -0
  17. package/dist/cards/issue.relations.blocked_by.add.yaml +1 -0
  18. package/dist/cards/issue.relations.blocked_by.remove.yaml +1 -0
  19. package/dist/cards/issue.relations.parent.remove.yaml +1 -0
  20. package/dist/cards/issue.relations.parent.set.yaml +1 -0
  21. package/dist/cards/issue.relations.prs.list.yaml +1 -0
  22. package/dist/cards/issue.relations.view.yaml +1 -0
  23. package/dist/cards/issue.reopen.yaml +1 -0
  24. package/dist/cards/issue.update.yaml +1 -0
  25. package/dist/cards/issue.view.yaml +1 -0
  26. package/dist/cards/pr.assignees.add.yaml +6 -2
  27. package/dist/cards/pr.assignees.remove.yaml +6 -2
  28. package/dist/cards/pr.branch.update.yaml +6 -2
  29. package/dist/cards/pr.create.yaml +7 -3
  30. package/dist/cards/pr.diff.files.yaml +1 -0
  31. package/dist/cards/pr.list.yaml +1 -0
  32. package/dist/cards/pr.merge.status.yaml +1 -0
  33. package/dist/cards/pr.merge.yaml +9 -3
  34. package/dist/cards/pr.reviews.list.yaml +1 -0
  35. package/dist/cards/pr.reviews.request.yaml +6 -3
  36. package/dist/cards/pr.reviews.submit.yaml +1 -0
  37. package/dist/cards/pr.threads.list.yaml +1 -0
  38. package/dist/cards/pr.threads.reply.yaml +1 -0
  39. package/dist/cards/pr.threads.resolve.yaml +1 -0
  40. package/dist/cards/pr.threads.unresolve.yaml +1 -0
  41. package/dist/cards/pr.update.yaml +7 -2
  42. package/dist/cards/pr.view.yaml +1 -0
  43. package/dist/cards/project_v2.fields.list.yaml +18 -2
  44. package/dist/cards/project_v2.items.field.update.yaml +8 -5
  45. package/dist/cards/project_v2.items.issue.add.yaml +9 -5
  46. package/dist/cards/project_v2.items.issue.remove.yaml +8 -5
  47. package/dist/cards/project_v2.items.list.yaml +8 -2
  48. package/dist/cards/project_v2.org.view.yaml +6 -2
  49. package/dist/cards/project_v2.user.view.yaml +6 -2
  50. package/dist/cards/release.list.yaml +8 -3
  51. package/dist/cards/release.view.yaml +8 -4
  52. package/dist/cards/repo.issue_types.list.yaml +7 -3
  53. package/dist/cards/repo.labels.list.yaml +7 -2
  54. package/dist/cards/repo.view.yaml +1 -0
  55. package/dist/chunk-7HUKYNI2.js +536 -0
  56. package/dist/chunk-7HUKYNI2.js.map +1 -0
  57. package/dist/chunk-GQO6BHJV.js +98 -0
  58. package/dist/chunk-GQO6BHJV.js.map +1 -0
  59. package/dist/chunk-H7CLZHRO.js +280 -0
  60. package/dist/chunk-H7CLZHRO.js.map +1 -0
  61. package/dist/{chunk-3P3KHWFU.js → chunk-M5PJLKL5.js} +1079 -726
  62. package/dist/chunk-M5PJLKL5.js.map +1 -0
  63. package/dist/chunk-NQ53ETYV.js +128 -0
  64. package/dist/chunk-NQ53ETYV.js.map +1 -0
  65. package/dist/{chunk-BIWBJA2F.js → chunk-OQWLEFAH.js} +220 -12
  66. package/dist/chunk-OQWLEFAH.js.map +1 -0
  67. package/dist/{chunk-Q7RCIK2C.js → chunk-Q2NW7DJE.js} +167 -62
  68. package/dist/chunk-Q2NW7DJE.js.map +1 -0
  69. package/dist/{pr-queries-UOEOXIJQ.js → chunk-QRHKAMRY.js} +11 -131
  70. package/dist/chunk-QRHKAMRY.js.map +1 -0
  71. package/dist/{issue-queries-GRA4MKPD.js → chunk-TGL33GEA.js} +7 -83
  72. package/dist/chunk-TGL33GEA.js.map +1 -0
  73. package/dist/chunk-ZGBVX2VG.js +32 -0
  74. package/dist/chunk-ZGBVX2VG.js.map +1 -0
  75. package/dist/cli/index.js +79 -14
  76. package/dist/cli/index.js.map +1 -1
  77. package/dist/core/registry/cards/issue.assignees.add.yaml +1 -0
  78. package/dist/core/registry/cards/issue.assignees.remove.yaml +1 -0
  79. package/dist/core/registry/cards/issue.assignees.set.yaml +1 -0
  80. package/dist/core/registry/cards/issue.close.yaml +1 -0
  81. package/dist/core/registry/cards/issue.comments.create.yaml +1 -0
  82. package/dist/core/registry/cards/issue.comments.list.yaml +1 -0
  83. package/dist/core/registry/cards/issue.create.yaml +1 -0
  84. package/dist/core/registry/cards/issue.delete.yaml +1 -0
  85. package/dist/core/registry/cards/issue.labels.add.yaml +1 -0
  86. package/dist/core/registry/cards/issue.labels.remove.yaml +1 -0
  87. package/dist/core/registry/cards/issue.labels.set.yaml +1 -0
  88. package/dist/core/registry/cards/issue.list.yaml +1 -0
  89. package/dist/core/registry/cards/issue.milestone.clear.yaml +1 -0
  90. package/dist/core/registry/cards/issue.milestone.set.yaml +1 -0
  91. package/dist/core/registry/cards/issue.relations.blocked_by.add.yaml +1 -0
  92. package/dist/core/registry/cards/issue.relations.blocked_by.remove.yaml +1 -0
  93. package/dist/core/registry/cards/issue.relations.parent.remove.yaml +1 -0
  94. package/dist/core/registry/cards/issue.relations.parent.set.yaml +1 -0
  95. package/dist/core/registry/cards/issue.relations.prs.list.yaml +1 -0
  96. package/dist/core/registry/cards/issue.relations.view.yaml +1 -0
  97. package/dist/core/registry/cards/issue.reopen.yaml +1 -0
  98. package/dist/core/registry/cards/issue.update.yaml +1 -0
  99. package/dist/core/registry/cards/issue.view.yaml +1 -0
  100. package/dist/core/registry/cards/pr.assignees.add.yaml +6 -2
  101. package/dist/core/registry/cards/pr.assignees.remove.yaml +6 -2
  102. package/dist/core/registry/cards/pr.branch.update.yaml +6 -2
  103. package/dist/core/registry/cards/pr.create.yaml +7 -3
  104. package/dist/core/registry/cards/pr.diff.files.yaml +1 -0
  105. package/dist/core/registry/cards/pr.list.yaml +1 -0
  106. package/dist/core/registry/cards/pr.merge.status.yaml +1 -0
  107. package/dist/core/registry/cards/pr.merge.yaml +9 -3
  108. package/dist/core/registry/cards/pr.reviews.list.yaml +1 -0
  109. package/dist/core/registry/cards/pr.reviews.request.yaml +6 -3
  110. package/dist/core/registry/cards/pr.reviews.submit.yaml +1 -0
  111. package/dist/core/registry/cards/pr.threads.list.yaml +1 -0
  112. package/dist/core/registry/cards/pr.threads.reply.yaml +1 -0
  113. package/dist/core/registry/cards/pr.threads.resolve.yaml +1 -0
  114. package/dist/core/registry/cards/pr.threads.unresolve.yaml +1 -0
  115. package/dist/core/registry/cards/pr.update.yaml +7 -2
  116. package/dist/core/registry/cards/pr.view.yaml +1 -0
  117. package/dist/core/registry/cards/project_v2.fields.list.yaml +18 -2
  118. package/dist/core/registry/cards/project_v2.items.field.update.yaml +8 -5
  119. package/dist/core/registry/cards/project_v2.items.issue.add.yaml +9 -5
  120. package/dist/core/registry/cards/project_v2.items.issue.remove.yaml +8 -5
  121. package/dist/core/registry/cards/project_v2.items.list.yaml +8 -2
  122. package/dist/core/registry/cards/project_v2.org.view.yaml +6 -2
  123. package/dist/core/registry/cards/project_v2.user.view.yaml +6 -2
  124. package/dist/core/registry/cards/release.list.yaml +8 -3
  125. package/dist/core/registry/cards/release.view.yaml +8 -4
  126. package/dist/core/registry/cards/repo.issue_types.list.yaml +7 -3
  127. package/dist/core/registry/cards/repo.labels.list.yaml +7 -2
  128. package/dist/core/registry/cards/repo.view.yaml +1 -0
  129. package/dist/index.d.ts +297 -0
  130. package/dist/index.js +11 -3
  131. package/dist/index.js.map +1 -1
  132. package/dist/{issue-mutations-FJNZW7L5.js → issue-mutations-OW464JP3.js} +97 -120
  133. package/dist/issue-mutations-OW464JP3.js.map +1 -0
  134. package/dist/issue-queries-ORG3VPK4.js +93 -0
  135. package/dist/issue-queries-ORG3VPK4.js.map +1 -0
  136. package/dist/{pr-mutations-UG67YOF5.js → pr-mutations-WOTG6FAB.js} +234 -94
  137. package/dist/pr-mutations-WOTG6FAB.js.map +1 -0
  138. package/dist/pr-queries-6CJJW7BT.js +143 -0
  139. package/dist/pr-queries-6CJJW7BT.js.map +1 -0
  140. package/dist/project-QFSCYDDW.js +429 -0
  141. package/dist/project-QFSCYDDW.js.map +1 -0
  142. package/dist/release-33236BBA.js +57 -0
  143. package/dist/release-33236BBA.js.map +1 -0
  144. package/dist/repo-M6DKCWBG.js +82 -0
  145. package/dist/repo-M6DKCWBG.js.map +1 -0
  146. package/package.json +6 -6
  147. package/skills/using-ghx/SKILL.md +76 -10
  148. package/dist/chunk-3P3KHWFU.js.map +0 -1
  149. package/dist/chunk-BIWBJA2F.js.map +0 -1
  150. package/dist/chunk-Q7RCIK2C.js.map +0 -1
  151. package/dist/chunk-TDABI6C7.js +0 -167
  152. package/dist/chunk-TDABI6C7.js.map +0 -1
  153. package/dist/issue-mutations-FJNZW7L5.js.map +0 -1
  154. package/dist/issue-queries-GRA4MKPD.js.map +0 -1
  155. package/dist/pr-mutations-UG67YOF5.js.map +0 -1
  156. package/dist/pr-queries-UOEOXIJQ.js.map +0 -1
  157. package/dist/repo-JDUHFPZF.js +0 -66
  158. package/dist/repo-JDUHFPZF.js.map +0 -1
@@ -4,15 +4,6 @@ import {
4
4
  import {
5
5
  PageInfoFieldsFragmentDoc
6
6
  } from "./chunk-R3CBGJZX.js";
7
- import {
8
- assertPrDiffListFilesInput,
9
- assertPrInput,
10
- assertPrListInput,
11
- assertPrReviewsListInput
12
- } from "./chunk-BIWBJA2F.js";
13
- import {
14
- createGraphqlRequestClient
15
- } from "./chunk-HEHONZTO.js";
16
7
 
17
8
  // src/gql/operations/pr-diff-list-files.generated.ts
18
9
  var PrDiffListFilesDocument = `
@@ -205,127 +196,16 @@ function getSdk5(client, withWrapper = defaultWrapper5) {
205
196
  };
206
197
  }
207
198
 
208
- // src/gql/domains/pr-queries.ts
209
- async function runPrView(transport, input) {
210
- assertPrInput(input);
211
- const sdk = getSdk5(createGraphqlRequestClient(transport));
212
- const result = await sdk.PrView(input);
213
- const pr = result.repository?.pullRequest;
214
- if (!pr) {
215
- throw new Error("Pull request not found");
216
- }
217
- return {
218
- id: pr.id,
219
- number: pr.number,
220
- title: pr.title,
221
- state: pr.state,
222
- url: pr.url,
223
- body: pr.body ?? "",
224
- labels: (pr.labels?.nodes ?? []).flatMap((n) => n ? [n.name] : [])
225
- };
226
- }
227
- async function runPrList(transport, input) {
228
- assertPrListInput(input);
229
- const sdk = getSdk2(createGraphqlRequestClient(transport));
230
- const result = await sdk.PrList(input);
231
- const prs = result.repository?.pullRequests;
232
- if (!prs) {
233
- throw new Error("Pull requests not found");
234
- }
235
- return {
236
- items: (prs.nodes ?? []).flatMap(
237
- (pr) => pr ? [
238
- {
239
- id: pr.id,
240
- number: pr.number,
241
- title: pr.title,
242
- state: pr.state,
243
- url: pr.url
244
- }
245
- ] : []
246
- ),
247
- pageInfo: {
248
- endCursor: prs.pageInfo.endCursor ?? null,
249
- hasNextPage: prs.pageInfo.hasNextPage
250
- }
251
- };
252
- }
253
- async function runPrReviewsList(transport, input) {
254
- assertPrReviewsListInput(input);
255
- const sdk = getSdk4(createGraphqlRequestClient(transport));
256
- const result = await sdk.PrReviewsList(input);
257
- const reviews = result.repository?.pullRequest?.reviews;
258
- if (!reviews) {
259
- throw new Error("Pull request reviews not found");
260
- }
261
- return {
262
- items: (reviews.nodes ?? []).flatMap(
263
- (review) => review ? [
264
- {
265
- id: review.id,
266
- authorLogin: review.author?.login ?? null,
267
- body: review.body,
268
- state: review.state,
269
- submittedAt: review.submittedAt ?? null,
270
- url: review.url,
271
- commitOid: review.commit?.oid ?? null
272
- }
273
- ] : []
274
- ),
275
- pageInfo: {
276
- endCursor: reviews.pageInfo.endCursor ?? null,
277
- hasNextPage: reviews.pageInfo.hasNextPage
278
- }
279
- };
280
- }
281
- async function runPrDiffListFiles(transport, input) {
282
- assertPrDiffListFilesInput(input);
283
- const sdk = getSdk(createGraphqlRequestClient(transport));
284
- const result = await sdk.PrDiffListFiles(input);
285
- const files = result.repository?.pullRequest?.files;
286
- if (!files) {
287
- throw new Error("Pull request files not found");
288
- }
289
- return {
290
- items: (files.nodes ?? []).flatMap(
291
- (file) => file ? [
292
- {
293
- path: file.path,
294
- additions: file.additions,
295
- deletions: file.deletions
296
- }
297
- ] : []
298
- ),
299
- pageInfo: {
300
- endCursor: files.pageInfo.endCursor ?? null,
301
- hasNextPage: files.pageInfo.hasNextPage
302
- }
303
- };
304
- }
305
- async function runPrMergeStatus(transport, input) {
306
- assertPrInput({ owner: input.owner, name: input.name, prNumber: input.prNumber });
307
- const result = await getSdk3(createGraphqlRequestClient(transport)).PrMergeStatus({
308
- owner: input.owner,
309
- name: input.name,
310
- prNumber: input.prNumber
311
- });
312
- const pr = result.repository?.pullRequest;
313
- if (!pr) {
314
- throw new Error("Pull request not found");
315
- }
316
- return {
317
- mergeable: pr.mergeable ?? null,
318
- mergeStateStatus: pr.mergeStateStatus ?? null,
319
- reviewDecision: pr.reviewDecision ?? null,
320
- isDraft: pr.isDraft,
321
- state: pr.state
322
- };
323
- }
324
199
  export {
325
- runPrDiffListFiles,
326
- runPrList,
327
- runPrMergeStatus,
328
- runPrReviewsList,
329
- runPrView
200
+ PrDiffListFilesDocument,
201
+ getSdk,
202
+ PrListDocument,
203
+ getSdk2,
204
+ PrMergeStatusDocument,
205
+ getSdk3,
206
+ PrReviewsListDocument,
207
+ getSdk4,
208
+ PrViewDocument,
209
+ getSdk5
330
210
  };
331
- //# sourceMappingURL=pr-queries-UOEOXIJQ.js.map
211
+ //# sourceMappingURL=chunk-QRHKAMRY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/gql/operations/pr-diff-list-files.generated.ts","../src/gql/operations/pr-list.generated.ts","../src/gql/operations/pr-merge-status.generated.ts","../src/gql/operations/pr-reviews-list.generated.ts","../src/gql/operations/pr-view.generated.ts"],"sourcesContent":["import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { PageInfoFieldsFragmentDoc } from \"./fragments/page-info-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type PrDiffListFilesQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n prNumber: Types.Scalars[\"Int\"][\"input\"]\n first: Types.Scalars[\"Int\"][\"input\"]\n after?: Types.InputMaybe<Types.Scalars[\"String\"][\"input\"]>\n}>\n\nexport type PrDiffListFilesQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n pullRequest?: {\n __typename?: \"PullRequest\"\n files?: {\n __typename?: \"PullRequestChangedFileConnection\"\n nodes?: Array<{\n __typename?: \"PullRequestChangedFile\"\n path: string\n additions: number\n deletions: number\n } | null> | null\n pageInfo: { __typename?: \"PageInfo\"; endCursor?: string | null; hasNextPage: boolean }\n } | null\n } | null\n } | null\n}\n\nexport const PrDiffListFilesDocument = `\n query PrDiffListFiles($owner: String!, $name: String!, $prNumber: Int!, $first: Int!, $after: String) {\n repository(owner: $owner, name: $name) {\n pullRequest(number: $prNumber) {\n files(first: $first, after: $after) {\n nodes {\n path\n additions\n deletions\n }\n pageInfo {\n ...PageInfoFields\n }\n }\n }\n }\n}\n ${PageInfoFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n PrDiffListFiles(\n variables: PrDiffListFilesQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<PrDiffListFilesQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<PrDiffListFilesQuery>({\n document: PrDiffListFilesDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"PrDiffListFiles\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { PageInfoFieldsFragmentDoc } from \"./fragments/page-info-fields.generated.js\"\nimport { PrCoreFieldsFragmentDoc } from \"./fragments/pr-core-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type PrListQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n first: Types.Scalars[\"Int\"][\"input\"]\n after?: Types.InputMaybe<Types.Scalars[\"String\"][\"input\"]>\n}>\n\nexport type PrListQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n pullRequests: {\n __typename?: \"PullRequestConnection\"\n nodes?: Array<{\n __typename?: \"PullRequest\"\n id: string\n number: number\n title: string\n state: Types.PullRequestState\n url: any\n } | null> | null\n pageInfo: { __typename?: \"PageInfo\"; endCursor?: string | null; hasNextPage: boolean }\n }\n } | null\n}\n\nexport const PrListDocument = `\n query PrList($owner: String!, $name: String!, $first: Int!, $after: String) {\n repository(owner: $owner, name: $name) {\n pullRequests(\n first: $first\n after: $after\n orderBy: {field: CREATED_AT, direction: DESC}\n ) {\n nodes {\n ...PrCoreFields\n }\n pageInfo {\n ...PageInfoFields\n }\n }\n }\n}\n ${PrCoreFieldsFragmentDoc}\n${PageInfoFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n PrList(\n variables: PrListQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<PrListQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<PrListQuery>({\n document: PrListDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"PrList\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type PrMergeStatusQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n prNumber: Types.Scalars[\"Int\"][\"input\"]\n}>\n\nexport type PrMergeStatusQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n pullRequest?: {\n __typename?: \"PullRequest\"\n mergeable: Types.MergeableState\n mergeStateStatus: Types.MergeStateStatus\n reviewDecision?: Types.PullRequestReviewDecision | null\n isDraft: boolean\n state: Types.PullRequestState\n } | null\n } | null\n}\n\nexport const PrMergeStatusDocument = `\n query PrMergeStatus($owner: String!, $name: String!, $prNumber: Int!) {\n repository(owner: $owner, name: $name) {\n pullRequest(number: $prNumber) {\n mergeable\n mergeStateStatus\n reviewDecision\n isDraft\n state\n }\n }\n}\n `\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n PrMergeStatus(\n variables: PrMergeStatusQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<PrMergeStatusQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<PrMergeStatusQuery>({\n document: PrMergeStatusDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"PrMergeStatus\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { PageInfoFieldsFragmentDoc } from \"./fragments/page-info-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type PrReviewsListQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n prNumber: Types.Scalars[\"Int\"][\"input\"]\n first: Types.Scalars[\"Int\"][\"input\"]\n after?: Types.InputMaybe<Types.Scalars[\"String\"][\"input\"]>\n}>\n\nexport type PrReviewsListQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n pullRequest?: {\n __typename?: \"PullRequest\"\n reviews?: {\n __typename?: \"PullRequestReviewConnection\"\n nodes?: Array<{\n __typename?: \"PullRequestReview\"\n id: string\n body: string\n state: Types.PullRequestReviewState\n submittedAt?: any | null\n url: any\n author?:\n | { __typename?: \"Bot\"; login: string }\n | { __typename?: \"EnterpriseUserAccount\"; login: string }\n | { __typename?: \"Mannequin\"; login: string }\n | { __typename?: \"Organization\"; login: string }\n | { __typename?: \"User\"; login: string }\n | null\n commit?: { __typename?: \"Commit\"; oid: any } | null\n } | null> | null\n pageInfo: { __typename?: \"PageInfo\"; endCursor?: string | null; hasNextPage: boolean }\n } | null\n } | null\n } | null\n}\n\nexport const PrReviewsListDocument = `\n query PrReviewsList($owner: String!, $name: String!, $prNumber: Int!, $first: Int!, $after: String) {\n repository(owner: $owner, name: $name) {\n pullRequest(number: $prNumber) {\n reviews(first: $first, after: $after) {\n nodes {\n id\n author {\n login\n }\n body\n state\n submittedAt\n url\n commit {\n oid\n }\n }\n pageInfo {\n ...PageInfoFields\n }\n }\n }\n }\n}\n ${PageInfoFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n PrReviewsList(\n variables: PrReviewsListQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<PrReviewsListQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<PrReviewsListQuery>({\n document: PrReviewsListDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"PrReviewsList\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { PrCoreFieldsFragmentDoc } from \"./fragments/pr-core-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type PrViewQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n prNumber: Types.Scalars[\"Int\"][\"input\"]\n}>\n\nexport type PrViewQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n pullRequest?: {\n __typename?: \"PullRequest\"\n body: string\n id: string\n number: number\n title: string\n state: Types.PullRequestState\n url: any\n labels?: {\n __typename?: \"LabelConnection\"\n nodes?: Array<{ __typename?: \"Label\"; name: string } | null> | null\n } | null\n } | null\n } | null\n}\n\nexport const PrViewDocument = `\n query PrView($owner: String!, $name: String!, $prNumber: Int!) {\n repository(owner: $owner, name: $name) {\n pullRequest(number: $prNumber) {\n ...PrCoreFields\n body\n labels(first: 20) {\n nodes {\n name\n }\n }\n }\n }\n}\n ${PrCoreFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n PrView(\n variables: PrViewQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<PrViewQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<PrViewQuery>({\n document: PrViewDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"PrView\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n"],"mappings":"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","names":["defaultWrapper","getSdk","defaultWrapper","getSdk","defaultWrapper","getSdk","defaultWrapper","getSdk"]}
@@ -4,14 +4,6 @@ import {
4
4
  import {
5
5
  PageInfoFieldsFragmentDoc
6
6
  } from "./chunk-R3CBGJZX.js";
7
- import {
8
- assertIssueCommentsListInput,
9
- assertIssueInput,
10
- assertIssueListInput
11
- } from "./chunk-BIWBJA2F.js";
12
- import {
13
- createGraphqlRequestClient
14
- } from "./chunk-HEHONZTO.js";
15
7
 
16
8
  // src/gql/operations/issue-comments-list.generated.ts
17
9
  var IssueCommentsListDocument = `
@@ -129,80 +121,12 @@ function getSdk3(client, withWrapper = defaultWrapper3) {
129
121
  };
130
122
  }
131
123
 
132
- // src/gql/domains/issue-queries.ts
133
- async function runIssueView(transport, input) {
134
- assertIssueInput(input);
135
- const sdk = getSdk3(createGraphqlRequestClient(transport));
136
- const result = await sdk.IssueView(input);
137
- const issue = result.repository?.issue;
138
- if (!issue) {
139
- throw new Error("Issue not found");
140
- }
141
- return {
142
- id: issue.id,
143
- number: issue.number,
144
- title: issue.title,
145
- state: issue.state,
146
- url: issue.url,
147
- body: issue.body ?? "",
148
- labels: (issue.labels?.nodes ?? []).flatMap((n) => n ? [n.name] : [])
149
- };
150
- }
151
- async function runIssueList(transport, input) {
152
- assertIssueListInput(input);
153
- const sdk = getSdk2(createGraphqlRequestClient(transport));
154
- const result = await sdk.IssueList(input);
155
- const issues = result.repository?.issues;
156
- if (!issues) {
157
- throw new Error("Issues not found");
158
- }
159
- return {
160
- items: (issues.nodes ?? []).flatMap(
161
- (issue) => issue ? [
162
- {
163
- id: issue.id,
164
- number: issue.number,
165
- title: issue.title,
166
- state: issue.state,
167
- url: issue.url
168
- }
169
- ] : []
170
- ),
171
- pageInfo: {
172
- endCursor: issues.pageInfo.endCursor ?? null,
173
- hasNextPage: issues.pageInfo.hasNextPage
174
- }
175
- };
176
- }
177
- async function runIssueCommentsList(transport, input) {
178
- assertIssueCommentsListInput(input);
179
- const sdk = getSdk(createGraphqlRequestClient(transport));
180
- const result = await sdk.IssueCommentsList(input);
181
- const comments = result.repository?.issue?.comments;
182
- if (!comments) {
183
- throw new Error("Issue comments not found");
184
- }
185
- return {
186
- items: (comments.nodes ?? []).flatMap(
187
- (comment) => comment ? [
188
- {
189
- id: comment.id,
190
- body: comment.body,
191
- authorLogin: comment.author?.login ?? null,
192
- createdAt: comment.createdAt,
193
- url: String(comment.url)
194
- }
195
- ] : []
196
- ),
197
- pageInfo: {
198
- endCursor: comments.pageInfo.endCursor ?? null,
199
- hasNextPage: comments.pageInfo.hasNextPage
200
- }
201
- };
202
- }
203
124
  export {
204
- runIssueCommentsList,
205
- runIssueList,
206
- runIssueView
125
+ IssueCommentsListDocument,
126
+ getSdk,
127
+ IssueListDocument,
128
+ getSdk2,
129
+ IssueViewDocument,
130
+ getSdk3
207
131
  };
208
- //# sourceMappingURL=issue-queries-GRA4MKPD.js.map
132
+ //# sourceMappingURL=chunk-TGL33GEA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/gql/operations/issue-comments-list.generated.ts","../src/gql/operations/issue-list.generated.ts","../src/gql/operations/issue-view.generated.ts"],"sourcesContent":["import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { PageInfoFieldsFragmentDoc } from \"./fragments/page-info-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type IssueCommentsListQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n issueNumber: Types.Scalars[\"Int\"][\"input\"]\n first: Types.Scalars[\"Int\"][\"input\"]\n after?: Types.InputMaybe<Types.Scalars[\"String\"][\"input\"]>\n}>\n\nexport type IssueCommentsListQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n issue?: {\n __typename?: \"Issue\"\n comments: {\n __typename?: \"IssueCommentConnection\"\n nodes?: Array<{\n __typename?: \"IssueComment\"\n id: string\n body: string\n createdAt: any\n url: any\n author?:\n | { __typename?: \"Bot\"; login: string }\n | { __typename?: \"EnterpriseUserAccount\"; login: string }\n | { __typename?: \"Mannequin\"; login: string }\n | { __typename?: \"Organization\"; login: string }\n | { __typename?: \"User\"; login: string }\n | null\n } | null> | null\n pageInfo: { __typename?: \"PageInfo\"; endCursor?: string | null; hasNextPage: boolean }\n }\n } | null\n } | null\n}\n\nexport const IssueCommentsListDocument = `\n query IssueCommentsList($owner: String!, $name: String!, $issueNumber: Int!, $first: Int!, $after: String) {\n repository(owner: $owner, name: $name) {\n issue(number: $issueNumber) {\n comments(first: $first, after: $after) {\n nodes {\n id\n body\n createdAt\n url\n author {\n login\n }\n }\n pageInfo {\n ...PageInfoFields\n }\n }\n }\n }\n}\n ${PageInfoFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n IssueCommentsList(\n variables: IssueCommentsListQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<IssueCommentsListQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<IssueCommentsListQuery>({\n document: IssueCommentsListDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"IssueCommentsList\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { IssueCoreFieldsFragmentDoc } from \"./fragments/issue-core-fields.generated.js\"\nimport { PageInfoFieldsFragmentDoc } from \"./fragments/page-info-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type IssueListQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n first: Types.Scalars[\"Int\"][\"input\"]\n after?: Types.InputMaybe<Types.Scalars[\"String\"][\"input\"]>\n}>\n\nexport type IssueListQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n issues: {\n __typename?: \"IssueConnection\"\n nodes?: Array<{\n __typename?: \"Issue\"\n id: string\n number: number\n title: string\n state: Types.IssueState\n url: any\n } | null> | null\n pageInfo: { __typename?: \"PageInfo\"; endCursor?: string | null; hasNextPage: boolean }\n }\n } | null\n}\n\nexport const IssueListDocument = `\n query IssueList($owner: String!, $name: String!, $first: Int!, $after: String) {\n repository(owner: $owner, name: $name) {\n issues(\n first: $first\n after: $after\n orderBy: {field: CREATED_AT, direction: DESC}\n ) {\n nodes {\n ...IssueCoreFields\n }\n pageInfo {\n ...PageInfoFields\n }\n }\n }\n}\n ${IssueCoreFieldsFragmentDoc}\n${PageInfoFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n IssueList(\n variables: IssueListQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<IssueListQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<IssueListQuery>({\n document: IssueListDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"IssueList\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n","import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\nimport { IssueCoreFieldsFragmentDoc } from \"./fragments/issue-core-fields.generated.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type IssueViewQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n issueNumber: Types.Scalars[\"Int\"][\"input\"]\n}>\n\nexport type IssueViewQuery = {\n __typename?: \"Query\"\n repository?: {\n __typename?: \"Repository\"\n issue?: {\n __typename?: \"Issue\"\n body: string\n id: string\n number: number\n title: string\n state: Types.IssueState\n url: any\n labels?: {\n __typename?: \"LabelConnection\"\n nodes?: Array<{ __typename?: \"Label\"; name: string } | null> | null\n } | null\n } | null\n } | null\n}\n\nexport const IssueViewDocument = `\n query IssueView($owner: String!, $name: String!, $issueNumber: Int!) {\n repository(owner: $owner, name: $name) {\n issue(number: $issueNumber) {\n ...IssueCoreFields\n body\n labels(first: 20) {\n nodes {\n name\n }\n }\n }\n }\n}\n ${IssueCoreFieldsFragmentDoc}`\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n IssueView(\n variables: IssueViewQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<IssueViewQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<IssueViewQuery>({\n document: IssueViewDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"IssueView\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n"],"mappings":";;;;;;;;AAyCO,IAAM,4BAA4B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAqBnC,yBAAyB;AAS/B,IAAM,iBAAqC,CAAC,QAAQ,gBAAgB,gBAAgB,eAClF,OAAO;AAEF,SAAS,OAAO,QAAuB,cAAkC,gBAAgB;AAC9F,SAAO;AAAA,IACL,kBACE,WACA,gBACA,QACiC;AACjC,aAAO;AAAA,QACL,CAAC,0BACC,OAAO,QAAgC;AAAA,UACrC,UAAU;AAAA,UACV;AAAA,UACA,gBAAgB,EAAE,GAAG,gBAAgB,GAAG,sBAAsB;AAAA,UAC9D;AAAA,QACF,CAAC;AAAA,QACH;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;;;AC/DO,IAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAiB3B,0BAA0B;AAAA,EAC9B,yBAAyB;AAS3B,IAAMA,kBAAqC,CAAC,QAAQ,gBAAgB,gBAAgB,eAClF,OAAO;AAEF,SAASC,QAAO,QAAuB,cAAkCD,iBAAgB;AAC9F,SAAO;AAAA,IACL,UACE,WACA,gBACA,QACyB;AACzB,aAAO;AAAA,QACL,CAAC,0BACC,OAAO,QAAwB;AAAA,UAC7B,UAAU;AAAA,UACV;AAAA,UACA,gBAAgB,EAAE,GAAG,gBAAgB,GAAG,sBAAsB;AAAA,UAC9D;AAAA,QACF,CAAC;AAAA,QACH;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;;;ACpDO,IAAM,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAc3B,0BAA0B;AAShC,IAAME,kBAAqC,CAAC,QAAQ,gBAAgB,gBAAgB,eAClF,OAAO;AAEF,SAASC,QAAO,QAAuB,cAAkCD,iBAAgB;AAC9F,SAAO;AAAA,IACL,UACE,WACA,gBACA,QACyB;AACzB,aAAO;AAAA,QACL,CAAC,0BACC,OAAO,QAAwB;AAAA,UAC7B,UAAU;AAAA,UACV;AAAA,UACA,gBAAgB,EAAE,GAAG,gBAAgB,GAAG,sBAAsB;AAAA,UAC9D;AAAA,QACF,CAAC;AAAA,QACH;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":["defaultWrapper","getSdk","defaultWrapper","getSdk"]}
@@ -0,0 +1,32 @@
1
+ // src/gql/operations/issue-create-repository-id.generated.ts
2
+ var IssueCreateRepositoryIdDocument = `
3
+ query IssueCreateRepositoryId($owner: String!, $name: String!) {
4
+ repository(owner: $owner, name: $name) {
5
+ id
6
+ }
7
+ }
8
+ `;
9
+ var defaultWrapper = (action, _operationName, _operationType, _variables) => action();
10
+ function getSdk(client, withWrapper = defaultWrapper) {
11
+ return {
12
+ IssueCreateRepositoryId(variables, requestHeaders, signal) {
13
+ return withWrapper(
14
+ (wrappedRequestHeaders) => client.request({
15
+ document: IssueCreateRepositoryIdDocument,
16
+ variables,
17
+ requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },
18
+ signal
19
+ }),
20
+ "IssueCreateRepositoryId",
21
+ "query",
22
+ variables
23
+ );
24
+ }
25
+ };
26
+ }
27
+
28
+ export {
29
+ IssueCreateRepositoryIdDocument,
30
+ getSdk
31
+ };
32
+ //# sourceMappingURL=chunk-ZGBVX2VG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/gql/operations/issue-create-repository-id.generated.ts"],"sourcesContent":["import type { GraphQLClient, RequestOptions } from \"graphql-request\"\nimport type * as Types from \"./base-types.js\"\n\ntype GraphQLClientRequestHeaders = RequestOptions[\"requestHeaders\"]\nexport type IssueCreateRepositoryIdQueryVariables = Types.Exact<{\n owner: Types.Scalars[\"String\"][\"input\"]\n name: Types.Scalars[\"String\"][\"input\"]\n}>\n\nexport type IssueCreateRepositoryIdQuery = {\n __typename?: \"Query\"\n repository?: { __typename?: \"Repository\"; id: string } | null\n}\n\nexport const IssueCreateRepositoryIdDocument = `\n query IssueCreateRepositoryId($owner: String!, $name: String!) {\n repository(owner: $owner, name: $name) {\n id\n }\n}\n `\n\nexport type SdkFunctionWrapper = <T>(\n action: (requestHeaders?: Record<string, string>) => Promise<T>,\n operationName: string,\n operationType?: string,\n variables?: any,\n) => Promise<T>\n\nconst defaultWrapper: SdkFunctionWrapper = (action, _operationName, _operationType, _variables) =>\n action()\n\nexport function getSdk(client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper) {\n return {\n IssueCreateRepositoryId(\n variables: IssueCreateRepositoryIdQueryVariables,\n requestHeaders?: GraphQLClientRequestHeaders,\n signal?: RequestInit[\"signal\"],\n ): Promise<IssueCreateRepositoryIdQuery> {\n return withWrapper(\n (wrappedRequestHeaders) =>\n client.request<IssueCreateRepositoryIdQuery>({\n document: IssueCreateRepositoryIdDocument,\n variables,\n requestHeaders: { ...requestHeaders, ...wrappedRequestHeaders },\n signal,\n }),\n \"IssueCreateRepositoryId\",\n \"query\",\n variables,\n )\n },\n }\n}\nexport type Sdk = ReturnType<typeof getSdk>\n"],"mappings":";AAcO,IAAM,kCAAkC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe/C,IAAM,iBAAqC,CAAC,QAAQ,gBAAgB,gBAAgB,eAClF,OAAO;AAEF,SAAS,OAAO,QAAuB,cAAkC,gBAAgB;AAC9F,SAAO;AAAA,IACL,wBACE,WACA,gBACA,QACuC;AACvC,aAAO;AAAA,QACL,CAAC,0BACC,OAAO,QAAsC;AAAA,UAC3C,UAAU;AAAA,UACV;AAAA,UACA,gBAAgB,EAAE,GAAG,gBAAgB,GAAG,sBAAsB;AAAA,UAC9D;AAAA,QACF,CAAC;AAAA,QACH;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
package/dist/cli/index.js CHANGED
@@ -8,10 +8,18 @@ import {
8
8
  explainCapability,
9
9
  extractArrayItemHints,
10
10
  listCapabilities
11
- } from "../chunk-3P3KHWFU.js";
12
- import "../chunk-Q7RCIK2C.js";
11
+ } from "../chunk-M5PJLKL5.js";
12
+ import "../chunk-H7CLZHRO.js";
13
+ import "../chunk-NQ53ETYV.js";
14
+ import "../chunk-TGL33GEA.js";
15
+ import "../chunk-Q2NW7DJE.js";
13
16
  import "../chunk-3DU2WHXF.js";
14
- import "../chunk-TDABI6C7.js";
17
+ import "../chunk-QRHKAMRY.js";
18
+ import "../chunk-TPQYVCAS.js";
19
+ import "../chunk-7HUKYNI2.js";
20
+ import "../chunk-ZGBVX2VG.js";
21
+ import "../chunk-GQO6BHJV.js";
22
+ import "../chunk-R3CBGJZX.js";
15
23
  import {
16
24
  resolveGraphqlUrl
17
25
  } from "../chunk-HEHONZTO.js";
@@ -59,11 +67,25 @@ function parseArgs2(argv) {
59
67
  const domainIndex = argv.indexOf("--domain");
60
68
  return {
61
69
  asJson: argv.includes("--json"),
70
+ asCompact: argv.includes("--compact"),
62
71
  domain: domainIndex !== -1 ? argv[domainIndex + 1] : void 0
63
72
  };
64
73
  }
74
+ function formatCompact(capabilities) {
75
+ const ids = new Set(capabilities.map((c) => c.capability_id));
76
+ const lines = capabilities.map((item) => {
77
+ const req = item.required_inputs.join(",");
78
+ const opt = item.optional_inputs.map((o) => `${o}?`).join(",");
79
+ const inputs = [req, opt].filter(Boolean).join(",");
80
+ const sig = `${item.capability_id}(${inputs})`;
81
+ const addSibling = item.capability_id.replace(/\.set$/, ".add");
82
+ const needsWarning = item.capability_id.endsWith(".set") && ids.has(addSibling);
83
+ return needsWarning ? `${sig} [replaces all]` : sig;
84
+ });
85
+ return lines.join("\n") + "\n";
86
+ }
65
87
  async function capabilitiesListCommand(argv = []) {
66
- const { asJson, domain } = parseArgs2(argv);
88
+ const { asJson, asCompact, domain } = parseArgs2(argv);
67
89
  const capabilities = listCapabilities(domain);
68
90
  if (capabilities.length === 0) {
69
91
  process.stderr.write(
@@ -72,6 +94,10 @@ async function capabilitiesListCommand(argv = []) {
72
94
  );
73
95
  return 1;
74
96
  }
97
+ if (asCompact) {
98
+ process.stdout.write(formatCompact(capabilities));
99
+ return 0;
100
+ }
75
101
  if (asJson) {
76
102
  process.stdout.write(`${JSON.stringify(capabilities)}
77
103
  `);
@@ -96,26 +122,62 @@ async function capabilitiesListCommand(argv = []) {
96
122
  return 0;
97
123
  }
98
124
 
125
+ // src/cli/formatters/compact.ts
126
+ function compactRunResult(envelope) {
127
+ if (envelope.ok) {
128
+ return envelope.meta.pagination !== void 0 ? { ok: true, data: envelope.data, pagination: envelope.meta.pagination } : { ok: true, data: envelope.data };
129
+ }
130
+ const err = envelope.error;
131
+ return {
132
+ ok: false,
133
+ error: {
134
+ code: err?.code ?? "UNKNOWN",
135
+ message: err?.message ?? ""
136
+ }
137
+ };
138
+ }
139
+ function compactChainResult(envelope) {
140
+ return {
141
+ status: envelope.status,
142
+ results: envelope.results.map((step) => {
143
+ if (step.ok) {
144
+ return { task: step.task, ok: true };
145
+ }
146
+ return {
147
+ task: step.task,
148
+ ok: false,
149
+ error: {
150
+ code: step.error?.code ?? "UNKNOWN",
151
+ message: step.error?.message ?? ""
152
+ }
153
+ };
154
+ })
155
+ };
156
+ }
157
+
99
158
  // src/cli/commands/run.ts
100
159
  var GITHUB_GRAPHQL_ENDPOINT = "https://api.github.com/graphql";
101
160
  function parseRunFlags(argv) {
102
161
  const [task, ...rest] = argv;
103
162
  if (!task || task.trim().length === 0) {
104
- throw new Error("Usage: ghx run <task> --input '<json>' | --input - [--check-gh-preflight]");
163
+ throw new Error(
164
+ "Usage: ghx run <task> --input '<json>' | --input - [--check-gh-preflight] [--verbose]"
165
+ );
105
166
  }
106
167
  const inputIndex = rest.findIndex((arg) => arg === "--input");
107
168
  const inlineInput = rest.find((arg) => arg.startsWith("--input="));
108
169
  const inputCandidate = inputIndex >= 0 ? rest[inputIndex + 1] : void 0;
170
+ const verbose = rest.includes("--verbose");
109
171
  if (inputCandidate === "-") {
110
172
  const skipGhPreflight2 = !rest.includes("--check-gh-preflight");
111
- return { task, inputSource: "stdin", skipGhPreflight: skipGhPreflight2 };
173
+ return { task, inputSource: "stdin", skipGhPreflight: skipGhPreflight2, verbose };
112
174
  }
113
175
  const inputRaw = inputCandidate && !inputCandidate.startsWith("--") ? inputCandidate : inlineInput ? inlineInput.slice("--input=".length) : void 0;
114
176
  if (!inputRaw) {
115
177
  throw new Error("Missing --input JSON");
116
178
  }
117
179
  const skipGhPreflight = !rest.includes("--check-gh-preflight");
118
- return { task, inputSource: { raw: inputRaw }, skipGhPreflight };
180
+ return { task, inputSource: { raw: inputRaw }, skipGhPreflight, verbose };
119
181
  }
120
182
  function parseJsonInput(raw) {
121
183
  let parsed;
@@ -188,7 +250,7 @@ async function runCommand(argv = []) {
188
250
  );
189
251
  return 1;
190
252
  }
191
- const { task, inputSource, skipGhPreflight } = parseRunFlags(argv);
253
+ const { task, inputSource, skipGhPreflight, verbose } = parseRunFlags(argv);
192
254
  const input = inputSource === "stdin" ? parseJsonInput(await readStdin()) : parseJsonInput(inputSource.raw);
193
255
  const githubToken = resolveGithubToken();
194
256
  const githubClient = createGithubClient({
@@ -205,7 +267,8 @@ async function runCommand(argv = []) {
205
267
  githubToken,
206
268
  skipGhPreflight
207
269
  });
208
- process.stdout.write(`${JSON.stringify(result)}
270
+ const output = verbose ? result : compactRunResult(result);
271
+ process.stdout.write(`${JSON.stringify(output, null, verbose ? 2 : void 0)}
209
272
  `);
210
273
  return 0;
211
274
  }
@@ -216,16 +279,17 @@ function parseChainFlags(argv) {
216
279
  const stepsIndex = argv.findIndex((arg) => arg === "--steps");
217
280
  const inlineSteps = argv.find((arg) => arg.startsWith("--steps="));
218
281
  const stepsCandidate = stepsIndex >= 0 ? argv[stepsIndex + 1] : void 0;
282
+ const verbose = argv.includes("--verbose");
219
283
  if (stepsCandidate === "-") {
220
284
  const skipGhPreflight2 = !argv.includes("--check-gh-preflight");
221
- return { stepsSource: "stdin", skipGhPreflight: skipGhPreflight2 };
285
+ return { stepsSource: "stdin", skipGhPreflight: skipGhPreflight2, verbose };
222
286
  }
223
287
  const stepsRaw = stepsCandidate && !stepsCandidate.startsWith("--") ? stepsCandidate : inlineSteps ? inlineSteps.slice("--steps=".length) : void 0;
224
288
  if (!stepsRaw) {
225
289
  throw new Error("Missing --steps JSON");
226
290
  }
227
291
  const skipGhPreflight = !argv.includes("--check-gh-preflight");
228
- return { stepsSource: { raw: stepsRaw }, skipGhPreflight };
292
+ return { stepsSource: { raw: stepsRaw }, skipGhPreflight, verbose };
229
293
  }
230
294
  function parseJsonSteps(raw) {
231
295
  let parsed;
@@ -296,12 +360,12 @@ async function executeRawGraphqlRequest(token, query, variables) {
296
360
  async function chainCommand(argv = []) {
297
361
  if (argv.length === 0) {
298
362
  process.stdout.write(
299
- "Usage: ghx chain --steps '<json-array>' | --steps - [--check-gh-preflight]\n"
363
+ "Usage: ghx chain --steps '<json-array>' | --steps - [--check-gh-preflight] [--verbose]\n"
300
364
  );
301
365
  return 1;
302
366
  }
303
367
  try {
304
- const { stepsSource, skipGhPreflight } = parseChainFlags(argv);
368
+ const { stepsSource, skipGhPreflight, verbose } = parseChainFlags(argv);
305
369
  const steps = stepsSource === "stdin" ? parseJsonSteps(await readStdin()) : parseJsonSteps(stepsSource.raw);
306
370
  const githubToken = resolveGithubToken2();
307
371
  const githubClient = createGithubClient({
@@ -319,7 +383,8 @@ async function chainCommand(argv = []) {
319
383
  skipGhPreflight,
320
384
  resolutionCache
321
385
  });
322
- process.stdout.write(`${JSON.stringify(result, null, 2)}
386
+ const output = verbose ? result : compactChainResult(result);
387
+ process.stdout.write(`${JSON.stringify(output, null, verbose ? 2 : void 0)}
323
388
  `);
324
389
  return result.status === "success" || result.status === "partial" ? 0 : 1;
325
390
  } catch (err) {