@candriajs/git-neko-kit 1.1.1 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-B5x_z1xR.mjs +1 -0
- package/dist/app-COIyIlZp.mjs +1 -0
- package/dist/app-DcXcrOHH.cjs +1 -0
- package/dist/app-eOPQ8Dot.cjs +1 -0
- package/dist/auth-Ccs3QgLP.cjs +1 -0
- package/dist/auth-Db-FCcPo.mjs +1 -0
- package/dist/auth-cHpwbr3m.mjs +1 -0
- package/dist/auth-r8LRtyYY.cjs +1 -0
- package/dist/base-BqtGg502.mjs +0 -0
- package/dist/base-CUzfuEjq.cjs +0 -0
- package/dist/chunk-B9dir_RE.mjs +1 -0
- package/dist/client-Bmkb1ges.cjs +1 -0
- package/dist/client-sGV7POG-.mjs +1 -0
- package/dist/commit-BcWQkCJR.cjs +1 -0
- package/dist/commit-D9L4p6A4.mjs +5 -0
- package/dist/commit-DUYHx6WQ.mjs +1 -0
- package/dist/commit-Dns-Df6e.cjs +5 -0
- package/dist/exports/axios.cjs +1 -1
- package/dist/exports/axios.d.mts +3 -0
- package/dist/exports/axios.mjs +1 -1
- package/dist/exports/chunk-CUT6urMc.cjs +1 -0
- package/dist/exports/dayjs.cjs +1 -1
- package/dist/exports/dayjs.d.mts +2 -0
- package/dist/exports/dayjs.mjs +1 -1
- package/dist/exports/exec.cjs +1 -1
- package/dist/exports/exec.d.mts +1 -0
- package/dist/exports/exec.mjs +1 -1
- package/dist/exports/markdown.cjs +1 -1
- package/dist/exports/markdown.d.mts +2 -0
- package/dist/exports/markdown.mjs +1 -1
- package/dist/exports/simple-git.cjs +1 -1
- package/dist/exports/simple-git.d.mts +3 -0
- package/dist/exports/simple-git.mjs +1 -1
- package/dist/index.cjs +1 -6
- package/dist/index.d.mts +4232 -0
- package/dist/index.mjs +1 -6
- package/dist/issue-BFS72RBD.mjs +1 -0
- package/dist/issue-DWeE5P0Y.mjs +1 -0
- package/dist/issue-D_dZXgBG.cjs +1 -0
- package/dist/issue-DgiPQKQ2.cjs +1 -0
- package/dist/org-BDE4cv_c.cjs +1 -0
- package/dist/org-C-sgE96B.cjs +1 -0
- package/dist/org-DGNhfEZK.mjs +1 -0
- package/dist/org-DUBwi6B4.mjs +1 -0
- package/dist/pull_request-C2kirVoE.mjs +1 -0
- package/dist/pull_request-CfU8bWD3.mjs +1 -0
- package/dist/pull_request-FH9SDPpy.cjs +1 -0
- package/dist/pull_request-YYuNBRfz.cjs +1 -0
- package/dist/repo-BovlwNiC.mjs +1 -0
- package/dist/repo-C3bmC1kp.mjs +1 -0
- package/dist/repo-CCp3AF4M.cjs +1 -0
- package/dist/repo-CUJpctL3.cjs +1 -0
- package/dist/root--c209M1Y.mjs +1 -0
- package/dist/root-s6IKP4Xz.cjs +1 -0
- package/dist/root.cjs +1 -1
- package/dist/root.d.mts +5 -0
- package/dist/root.mjs +1 -1
- package/dist/search-D_6p-na8.cjs +1 -0
- package/dist/search-DxL-o1yv.mjs +1 -0
- package/dist/search-VShiQDs8.cjs +1 -0
- package/dist/search-bcPx7a6C.mjs +1 -0
- package/dist/user-3KZ4a1kT.cjs +1 -0
- package/dist/user-CkLZNCr4.mjs +1 -0
- package/dist/user-CsxfQJk2.mjs +1 -0
- package/dist/user-DTkgxY1i.cjs +1 -0
- package/dist/webhook-BRAZACxU.cjs +1 -0
- package/dist/webhook-DDN2SS97.mjs +1 -0
- package/dist/webhook-Dqf-QKIA.cjs +1 -0
- package/dist/webhook-at9Unv7b.mjs +1 -0
- package/dist/workflow-6BNjelIP.mjs +1 -0
- package/dist/workflow-D5aU6i5t.cjs +1 -0
- package/dist/workflow-DfSZx8u4.cjs +1 -0
- package/dist/workflow-vxjTvuWu.mjs +1 -0
- package/package.json +14 -9
- package/dist/exports/axios.d.ts +0 -7
- package/dist/exports/dayjs.d.ts +0 -1
- package/dist/exports/exec.d.ts +0 -1
- package/dist/exports/lodash.cjs +0 -1
- package/dist/exports/lodash.d.ts +0 -3
- package/dist/exports/lodash.mjs +0 -1
- package/dist/exports/markdown.d.ts +0 -1
- package/dist/exports/simple-git.d.ts +0 -2
- package/dist/index.d.ts +0 -4165
- package/dist/root.d.ts +0 -4
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`),t=require(`./client-Bmkb1ges.cjs`),n=e.__toESM(require(`radash`));var r=class extends t.GitHubClient{constructor(e){super(e),this.userToken=e.userToken,this.api_url=e.api_url,this.base_url=e.base_url}async get_pull_request_info(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i,pr_number:a}=e,o=await this.get(`/repos/${r}/${i}/pulls/${a}`);if(o.data){let[e,r,i,a,s,c,l,u]=await Promise.all([this.format?t.format_date(o.data.created_at):o.data.created_at,(0,n.isEmpty)(o.data.merged_at)?null:this.format?await t.format_date(o.data.merged_at):o.data.merged_at,this.format?await t.format_date(o.data.updated_at):o.data.updated_at,(0,n.isEmpty)(o.data.closed_at)?null:this.format?await t.format_date(o.data.closed_at):o.data.closed_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.created_at):o.data.milestone.created_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.updated_at):o.data.milestone.updated_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.closed_at):o.data.milestone.closed_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.due_on):o.data.milestone.due_on]),d={id:o.data.id,html_url:o.data.html_url,number:o.data.number,state:o.data.merged_at&&!(0,n.isEmpty)(o.data.merged_at)?`merged`:o.data.state,locked:o.data.locked,title:o.data.title,body:o.data.body,draft:o.data.draft,created_at:e,merged_at:r,updated_at:i,closed_at:a,user:{id:o.data.user.id,login:o.data.user.login,name:(0,n.isEmpty)(o.data.user.name)?null:o.data.user.name,html_url:o.data.user.html_url,avatar_url:o.data.user.avatar_url},base:{label:o.data.base.label,ref:o.data.base.ref,sha:o.data.base.sha,user:{id:o.data.base.user.id,login:o.data.base.user.login,name:(0,n.isEmpty)(o.data.base.user.name)?null:o.data.base.user.name,html_url:o.data.base.user.html_url,avatar_url:o.data.base.user.avatar_url},repo:{id:o.data.base.repo.id,owner:o.data.base.repo.owner,name:o.data.base.repo.name,full_name:o.data.base.repo.full_name}},head:{label:o.data.head.label,ref:o.data.head.ref,sha:o.data.head.sha,user:{id:o.data.head.user.id,login:o.data.head.user.login,name:(0,n.isEmpty)(o.data.head.user.name)?null:o.data.head.user.name,html_url:o.data.head.user.html_url,avatar_url:o.data.head.user.avatar_url},repo:{id:o.data.head.repo.id,owner:o.data.head.repo.owner,name:o.data.head.repo.name,full_name:o.data.head.repo.full_name}},assignee:(0,n.isEmpty)(o.data.assignee)?null:{id:o.data.assignee.id,login:o.data.assignee.login,name:(0,n.isEmpty)(o.data.assignee.name)?null:o.data.assignee.name,html_url:o.data.assignee.html_url,avatar_url:o.data.assignee.avatar_url},assignees:(0,n.isEmpty)(o.data.assignees)?null:o.data.assignees.map(e=>({id:e.id,login:e.login,name:(0,n.isEmpty)(e.name)?null:e.name,html_url:e.html_url,avatar_url:e.avatar_url})),milestone:(0,n.isEmpty)(o.data.milestone)?null:{id:o.data.milestone.id,url:o.data.milestone.url,number:o.data.milestone.number,state:o.data.milestone.state,title:o.data.milestone.title,description:o.data.milestone.description,open_issues:o.data.milestone.open_issues,closed_issues:o.data.milestone.closed_issues,created_at:s,updated_at:c,closed_at:l,due_on:u},labels:(0,n.isEmpty)(o.data.labels)?null:o.data.labels.map(e=>({id:e.id,name:e.name,color:e.color})),commits:o.data.commits,additions:o.data.additions,deletions:o.data.deletions,changed_files:o.data.changed_files};o.data=d}return o}catch(e){throw Error(`[GitHub] 获取拉取请求信息失败: ${e.message}`)}}async get_get_pull_request_list(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i,...a}=e,o={};a.state&&(o.state=a.state),a.base&&(o.base=a.base),a.sort&&(o.sort=a.sort),a.direction&&!a.sort&&(o.direction=a.direction),a.per_page&&(o.per_page=a.per_page.toString()),a.page&&(o.page=a.page.toString());let s=await this.get(`/repos/${r}/${i}/pulls`,o);if(s.data){let e=await Promise.all(s.data.map(async e=>({id:e.id,html_url:e.html_url,number:e.number,state:(0,n.isEmpty)(e.merged_at)?e.state:`merged`,locked:e.locked,title:e.title,body:e.body,draft:e.draft,created_at:this.format?t.format_date(e.created_at):e.created_at,merged_at:(0,n.isEmpty)(e.merged_at)?null:this.format?await t.format_date(e.merged_at):e.merged_at,updated_at:this.format?t.format_date(e.updated_at):e.updated_at,closed_at:(0,n.isEmpty)(e.closed_at)?null:this.format?await t.format_date(e.closed_at):e.closed_at,user:{id:e.user.id,login:e.user.login,name:(0,n.isEmpty)(e.user.name)?null:e.user.name,html_url:e.user.html_url,avatar_url:e.user.avatar_url},base:{label:e.base.label,ref:e.base.ref,sha:e.base.sha,user:{id:e.base.user.id,login:e.base.user.login,name:(0,n.isEmpty)(e.base.user.name)?e.base.user.login:e.base.user.name,html_url:e.base.user.html_url,avatar_url:e.base.user.avatar_url},repo:{id:e.base.repo.id,owner:e.base.repo.owner,name:e.base.repo.name,full_name:e.base.repo.full_name}},head:{label:e.head.label,ref:e.head.ref,sha:e.head.sha,user:{id:e.head.user.id,login:e.head.user.login,name:(0,n.isEmpty)(e.head.user.name)?null:e.head.user.name,html_url:e.head.user.html_url,avatar_url:e.head.user.avatar_url},repo:{id:e.head.repo.id,owner:e.head.repo.owner,name:e.head.repo.name,full_name:e.head.repo.full_name}},assignee:(0,n.isEmpty)(e.assignee)?null:{id:e.assignee.id,name:e.assignee.name,login:e.assignee.login,html_url:e.assignee.html_url,avatar_url:e.assignee.avatar_url},assignees:(0,n.isEmpty)(e.assignees)?null:e.assignees.map(e=>({id:e.id,name:e.name,login:e.login,html_url:e.html_url,avatar_url:e.avatar_url})),milestone:(0,n.isEmpty)(e.milestone)?null:{id:e.milestone.id,url:e.milestone.url,number:e.milestone.number,state:e.milestone.state,title:e.milestone.title,description:e.milestone.description,open_issues:e.milestone.open_issues,closed_issues:e.milestone.closed_issues,created_at:this.format?await t.format_date(e.milestone.created_at):e.milestone.created_at,updated_at:this.format?await t.format_date(e.milestone.updated_at):e.milestone.updated_at,closed_at:e.milestone.closed_at?this.format?await t.format_date(e.milestone.closed_at):e.milestone.closed_at:null,due_on:e.milestone.due_on?this.format?await t.format_date(e.milestone.due_on):e.milestone.due_on:null},labels:(0,n.isEmpty)(e.labels)?null:e.labels.map(e=>({id:e.id,name:e.name,color:e.color})),commits:e.commits,additions:e.additions,deletions:e.deletions,changed_files:e.changed_files})));s.data=e}return s}catch(e){throw Error(`[GitHub] 获取拉取请求列表失败: ${e.message}`)}}async create_pull_request(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.head)throw Error(t.MissingHeadBranchMsg);if(!e.base)throw Error(t.MissingBaseBranchMsg);if(!(`issue`in e)&&!(`title`in e))throw Error(t.MissingLinkedIssueIdentifierMsg);try{this.setRequestConfig({token:this.userToken});let r={};if(`issue`in e){if(!e.issue)throw Error(t.MissingLinkedIssueMsg);r.issue=e.issue}else if(`title`in e){if(!e.title)throw Error(t.MissingTitleMsg);r.title=e.title,e.body&&(r.body=e.body)}e.head&&(r.head=e.head),e.head_repo&&(r.head_repo=e.head_repo),e.base&&(r.base=e.base),e.draft&&(r.draft=e.draft);let{owner:i,repo:a}=e,o=await this.post(`/repos/${i}/${a}/pulls`,r);if(o.statusCode===403)throw Error(t.PermissionDeniedMsg);if(o.data){let[e,r,i,a,s,c,l,u]=await Promise.all([this.format?t.format_date(o.data.created_at):o.data.created_at,(0,n.isEmpty)(o.data.merged_at)?null:this.format?await t.format_date(o.data.merged_at):o.data.merged_at,this.format?await t.format_date(o.data.updated_at):o.data.updated_at,(0,n.isEmpty)(o.data.closed_at)?null:this.format?await t.format_date(o.data.closed_at):o.data.closed_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.created_at):o.data.milestone.created_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.updated_at):o.data.milestone.updated_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.closed_at):o.data.milestone.closed_at,(0,n.isEmpty)(o.data.milestone)?null:this.format?await t.format_date(o.data.milestone.due_on):o.data.milestone.due_on]),d={id:o.data.id,html_url:o.data.html_url,number:o.data.number,state:(0,n.isEmpty)(o.data.merged_at)?o.data.state:`merged`,locked:o.data.locked,title:o.data.title,body:o.data.body,draft:o.data.draft,created_at:e,merged_at:r,updated_at:i,closed_at:a,user:{id:o.data.user.id,login:o.data.user.login,name:(0,n.isEmpty)(o.data.user.name)?null:o.data.user.name,html_url:o.data.user.html_url,avatar_url:o.data.user.avatar_url},base:{label:o.data.base.label,ref:o.data.base.ref,sha:o.data.base.sha,user:{id:o.data.base.user.id,login:o.data.base.user.login,name:(0,n.isEmpty)(o.data.base.user.name)?null:o.data.base.user.name,html_url:o.data.base.user.html_url,avatar_url:o.data.base.user.avatar_url},repo:{id:o.data.base.repo.id,owner:o.data.base.repo.owner,name:o.data.base.repo.name,full_name:o.data.base.repo.full_name}},head:{label:o.data.head.label,ref:o.data.head.ref,sha:o.data.head.sha,user:{id:o.data.head.user.id,login:o.data.head.user.login,name:(0,n.isEmpty)(o.data.head.user.name)?null:o.data.head.user.name,html_url:o.data.head.user.html_url,avatar_url:o.data.head.user.avatar_url},repo:{id:o.data.head.repo.id,owner:o.data.head.repo.owner,name:o.data.head.repo.name,full_name:o.data.head.repo.full_name}},assignee:(0,n.isEmpty)(o.data.assignee)?null:{id:o.data.assignee.id,login:o.data.assignee.login,name:(0,n.isEmpty)(o.data.assignee.name)?null:o.data.assignee.name,html_url:o.data.assignee.html_url,avatar_url:o.data.assignee.avatar_url},assignees:(0,n.isEmpty)(o.data.assignees)?null:o.data.assignees.map(e=>({id:e.id,login:e.login,name:(0,n.isEmpty)(e.name)?null:e.name,html_url:e.html_url,avatar_url:e.avatar_url})),milestone:(0,n.isEmpty)(o.data.milestone)?null:{id:o.data.milestone.id,url:o.data.milestone.url,number:o.data.milestone.number,state:o.data.milestone.state,title:o.data.milestone.title,description:o.data.milestone.description,open_issues:o.data.milestone.open_issues,closed_issues:o.data.milestone.closed_issues,created_at:s,updated_at:c,closed_at:l,due_on:u},labels:(0,n.isEmpty)(o.data.labels)?null:o.data.labels.map(e=>({id:e.id,name:e.name,color:e.color})),commits:o.data.commits,additions:o.data.additions,deletions:o.data.deletions,changed_files:o.data.changed_files};o.data=d}return o}catch(e){throw Error(`[GitHub] 创建拉取请求失败: ${e.message}`)}}async update_pull_request(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({token:this.userToken});let r={};e.title&&(r.title=e.title),e.body&&(r.body=e.body),e.state&&(r.state=e.state);let{owner:i,repo:a,pr_number:o}=e,s=await this.patch(`/repos/${i}/${a}/pulls/${o}`,null,r);if(s.statusCode===403)throw Error(t.PermissionDeniedMsg);if(s.data){let[e,r,i,a,o,c,l,u]=await Promise.all([this.format?t.format_date(s.data.created_at):s.data.created_at,(0,n.isEmpty)(s.data.merged_at)?null:this.format?await t.format_date(s.data.merged_at):s.data.merged_at,this.format?await t.format_date(s.data.updated_at):s.data.updated_at,(0,n.isEmpty)(s.data.closed_at)?null:this.format?await t.format_date(s.data.closed_at):s.data.closed_at,(0,n.isEmpty)(s.data.milestone)?null:this.format?await t.format_date(s.data.milestone.created_at):s.data.milestone.created_at,(0,n.isEmpty)(s.data.milestone)?null:this.format?await t.format_date(s.data.milestone.updated_at):s.data.milestone.updated_at,(0,n.isEmpty)(s.data.milestone)?null:this.format?await t.format_date(s.data.milestone.closed_at):s.data.milestone.closed_at,(0,n.isEmpty)(s.data.milestone)?null:this.format?await t.format_date(s.data.milestone.due_on):s.data.milestone.due_on]),d={id:s.data.id,html_url:s.data.html_url,number:s.data.number,state:(0,n.isEmpty)(s.data.merged_at)?s.data.state:`merged`,locked:s.data.locked,title:s.data.title,body:s.data.body,draft:s.data.draft,created_at:e,merged_at:r,updated_at:i,closed_at:a,user:{id:s.data.user.id,login:s.data.user.login,name:(0,n.isEmpty)(s.data.user.name)?null:s.data.user.name,html_url:s.data.user.html_url,avatar_url:s.data.user.avatar_url},base:{label:s.data.base.label,ref:s.data.base.ref,sha:s.data.base.sha,user:{id:s.data.base.user.id,login:s.data.base.user.login,name:(0,n.isEmpty)(s.data.base.user.name)?null:s.data.base.user.name,html_url:s.data.base.user.html_url,avatar_url:s.data.base.user.avatar_url},repo:{id:s.data.base.repo.id,owner:s.data.base.repo.owner,name:s.data.base.repo.name,full_name:s.data.base.repo.full_name}},head:{label:s.data.head.label,ref:s.data.head.ref,sha:s.data.head.sha,user:{id:s.data.head.user.id,login:s.data.head.user.login,name:(0,n.isEmpty)(s.data.head.user.name)?null:s.data.head.user.name,html_url:s.data.head.user.html_url,avatar_url:s.data.head.user.avatar_url},repo:{id:s.data.head.repo.id,owner:s.data.head.repo.owner,name:s.data.head.repo.name,full_name:s.data.head.repo.full_name}},assignee:(0,n.isEmpty)(s.data.assignee)?null:{id:s.data.assignee.id,login:s.data.assignee.login,name:(0,n.isEmpty)(s.data.assignee.name)?null:s.data.assignee.name,html_url:s.data.assignee.html_url,avatar_url:s.data.assignee.avatar_url},assignees:(0,n.isEmpty)(s.data.assignees)?null:s.data.assignees.map(e=>({id:e.id,login:e.login,name:(0,n.isEmpty)(e.name)?null:e.name,html_url:e.html_url,avatar_url:e.avatar_url})),milestone:(0,n.isEmpty)(s.data.milestone)?null:{id:s.data.milestone.id,url:s.data.milestone.url,number:s.data.milestone.number,state:s.data.milestone.state,title:s.data.milestone.title,description:s.data.milestone.description,open_issues:s.data.milestone.open_issues,closed_issues:s.data.milestone.closed_issues,created_at:o,updated_at:c,closed_at:l,due_on:u},labels:(0,n.isEmpty)(s.data.labels)?null:s.data.labels.map(e=>({id:e.id,name:e.name,color:e.color})),commits:s.data.commits,additions:s.data.additions,deletions:s.data.deletions,changed_files:s.data.changed_files};s.data=d}return s}catch(e){throw Error(`[GitHub] 更新拉取请求失败: ${e.message}`)}}async merge_pull_request(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({token:this.userToken});let n={};if(e.commit_title&&(n.commit_title=e.commit_title),e.commit_message&&(n.commit_message=e.commit_message),e.sha&&(n.sha=e.sha),e.merge_method){let t=[`merge`,`squash`,`rebase`];n.merge_method=t.includes(e.merge_method)?e.merge_method:t[0]}let{owner:r,repo:i,pr_number:a}=e,o=await this.put(`/repos/${r}/${i}/pulls/${a}/merge`,n);switch(o.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestOrRepoNotFoundMsg);case 405:throw Error(t.PullRequestMergeMethodNotSupportedMsg);case 409:throw Error(t.ConflictPullRequestShaValueMsg)}if(o.statusCode===200&&o.data){let e={sha:o.data.sha,merged:o.data.merged,message:o.data.message};o.data=e}return o}catch(e){throw Error(`[GitHub] 合并拉取请求失败: ${e.message}`)}}async get_pull_request_diff(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({url:this.base_url});let{owner:t,repo:n,pr_number:r}=e,i=await this.get(`/${t}/${n}/pull/${r}.diff`,null,{Accept:`text/plain`});return i}catch(e){throw Error(`[GitHub] 获取拉取请求diff失败: ${e.message}`)}}async get_pull_request_files_list(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({token:this.userToken});let n={};e.per_page&&(n.per_page=e.per_page),e.page&&(n.page=e.page);let{owner:r,repo:i,pr_number:a}=e,o=await this.get(`/repos/${r}/${i}/pulls/${a}/files`,n);switch(o.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestOrRepoNotFoundMsg)}if(o.data){let e=o.data.map(e=>({sha:e.sha,filename:e.filename,status:e.status,additions:e.additions,deletions:e.deletions,changes:e.changes,blob_url:e.blob_url,raw_url:e.raw_url,patch:e.patch}));o.data=e}return o}catch(e){throw Error(`[GitHub] 获取拉取请求文件列表失败: ${e.message}`)}}async get_pull_request_comment_info(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.comment_id)throw Error(t.MissingPullRequestCommentNumberMsg);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i,comment_id:a}=e,o=await this.get(`/repos/${r}/${i}/pulls/comments/${a}`);switch(o.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestCommentOrRepoNotFoundMsg)}if(o.data){let[e,r]=await Promise.all([this.format?t.format_date(o.data.created_at):o.data.created_at,this.format?t.format_date(o.data.updated_at):o.data.updated_at]),i={id:o.data.id,body:o.data.body,user:{id:o.data.user.id,login:o.data.user.login,name:(0,n.isEmpty)(o.data.user.name)?null:o.data.user.name,avatar_url:o.data.user.avatar_url,html_url:o.data.user.html_url},created_at:e,updated_at:r};o.data=i}return o}catch(e){throw Error(`[GitHub] 获取拉取请求评论评论信息失败: ${e.message}`)}}async get_pull_request_comments_list(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);try{this.setRequestConfig({token:this.userToken});let r={};e.direction&&(r.direction=e.direction),e.per_page&&(r.per_page=e.per_page),e.page&&(r.page=e.page);let{owner:i,repo:a,pr_number:o}=e,s=await this.get(`/repos/${i}/${a}/pulls/${o}/comments`,r);switch(s.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestCommentOrRepoNotFoundMsg)}if(s.data){let e=await Promise.all(s.data.map(async e=>({id:e.id,body:e.body,user:{id:e.user.id,login:e.user.login,name:(0,n.isEmpty)(e.user.name)?null:e.user.name,html_url:e.user.html_url,avatar_url:e.user.avatar_url},created_at:this.format?await t.format_date(e.created_at):e.created_at,updated_at:this.format?await t.format_date(e.updated_at):e.updated_at})));s.data=e}return s}catch(e){throw Error(`[GitHub] 获取拉取请求评论列表失败: ${e.message}`)}}async create_pull_request_comment(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.pr_number)throw Error(t.MissingPullRequestNumberMsg);if(!e.body)throw Error(t.MissingPullRequestCommentBodyMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,pr_number:i,body:a}=e,o=await this.post(`/repos/${n}/${r}/pulls/${i}/comments`,{body:a});switch(o.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestOrRepoNotFoundMsg)}if(o.data){let e={id:o.data.id,body:o.data.body};o.data=e}return o}catch(e){throw Error(`[GitHub] 创建拉取请求评论失败: ${e.message}`)}}async update_pull_request_comment(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.comment_id)throw Error(t.MissingPullRequestCommentNumberMsg);if(!e.body)throw Error(t.MissingPullRequestCommentBodyMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,comment_id:i,body:a}=e,o=await this.patch(`/repos/${n}/${r}/issues/comments/${i}`,null,{body:a});switch(o.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestCommentOrRepoNotFoundMsg)}let s;return s=o.statusCode===200?{success:!0,message:t.PullRequestCommentUpdateSuccessMsg}:{success:!1,message:t.PullRequestCommentUpdateFailedMsg},o.data=s,o}catch(e){throw Error(`[GitHub] 更新拉取请求评论失败: ${e.message}`)}}async edit_pull_request_comment(e){return await this.update_pull_request_comment(e)}async delete_pull_request_comment(e){if(!(e.owner||e.repo))throw Error(t.MissingRepoOwnerOrNameMsg);if(!e.comment_id)throw Error(t.MissingPullRequestCommentNumberMsg);try{let n=await this.delete(`/repos/${e.owner}/${e.repo}/pulls/comments/${e.comment_id}`);switch(n.statusCode){case 403:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.PullRequestCommentOrRepoNotFoundMsg)}let r;return n.statusCode===204?r={success:!0,message:t.PullRequestCommentRemoveSuccessMsg}:(r={success:!1,message:t.PullRequestCommentRemoveFailedMsg},n.data=r),n}catch(e){throw Error(`[GitHub] 删除拉取请求评论失败: ${e.message}`)}}};Object.defineProperty(exports,`Pull_Request`,{enumerable:!0,get:function(){return r}});
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`);const e=require(`./pull_request-FH9SDPpy.cjs`);exports.Pull_Request=e.Pull_Request;
|
@@ -0,0 +1 @@
|
|
1
|
+
import{FailedToRemoveCollaboratorMsg as e,GitHubClient as t,MissingRepoOwnerOrNameMsg as n,MissingUserNameParamMsg as r,OrgNotFoundMsg as i,OrgOrRepoNotFoundMsg as a,OrgOrUserNotFoundMsg as o,PermissionDeniedMsg as s,ProxyType as c,RemoveCollaboratorSuccessMsg as l,RepoNotFoundMsg as u,RepoOrPermissionDeniedMsg as d,UserNotFoundMsg as f,format_date as p,get_base_url as m,get_langage_color as h,get_remote_repo_default_branch as g}from"./client-sGV7POG-.mjs";import{isEmpty as _,tryit as v}from"radash";var y=class extends t{constructor(e){super(e),this.userToken=e.userToken,this.api_url=e.api_url,this.base_url=e.base_url}async get_org_repos_list(e){if(!e.org)throw Error(i);try{this.setRequestConfig({token:this.userToken});let{org:t,...n}=e,r={};n?.type&&(r.type=n.type),n?.sort&&(r.sort=n.sort),n?.direction&&(r.direction=n.direction),n?.per_page&&(r.per_page=n.per_page.toString()),n?.page&&(r.page=n.page.toString());let a=`/orgs/${t}/repos`,o=await this.get(a,r);switch(o.statusCode){case 404:throw Error(i);case 401:throw Error(d)}if(o.data){let e=await Promise.all(o.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:_(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await p(e.created_at):e.created_at,updated_at:this.format?await p(e.updated_at):e.updated_at,pushed_at:this.format?await p(e.pushed_at):e.pushed_at})));o.data=e}return o}catch(e){throw Error(`[GitHub] 获取组织仓库列表失败: ${e.message}`)}}async get_user_repos_list_by_token(e){try{this.setRequestConfig({token:this.userToken});let{...t}=e,n={};!e?.visibility&&!e?.affiliation&&t?.type&&(n.type=t.type),t?.visibility&&(n.visibility=t.visibility),t?.affiliation&&(n.affiliation=t.affiliation),t?.sort&&(n.sort=t.sort),t?.direction&&(n.direction=t.direction),t?.per_page&&(n.per_page=t.per_page.toString()),t?.page&&(n.page=t.page.toString());let r=`/uses/repos`,i=await this.get(r,n);if(i.statusCode===401)throw Error(d);if(i.data){let e=await Promise.all(i.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:_(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await p(e.created_at):e.created_at,updated_at:this.format?await p(e.updated_at):e.updated_at,pushed_at:this.format?await p(e.pushed_at):e.pushed_at})));i.data=e}return i}catch(e){throw Error(`[GitHub] 获取授权用户仓库列表失败: ${e.message}`)}}async get_user_repos_list(e){try{if(!e.username)throw Error(r);this.setRequestConfig({token:this.userToken});let{username:t,...n}=e,i={};n?.type&&(i.type=n.type),n?.sort&&(i.sort=n.sort),n?.direction&&(i.direction=n.direction),n?.per_page&&(i.per_page=n.per_page.toString()),n?.page&&(i.page=n.page.toString());let a=`/users/${t}/repos`,o=await this.get(a,i);switch(o.statusCode){case 404:throw Error(f);case 401:throw Error(d)}if(o.data){let e=await Promise.all(o.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:_(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await p(e.created_at):e.created_at,updated_at:this.format?await p(e.updated_at):e.updated_at,pushed_at:this.format?await p(e.pushed_at):e.pushed_at})));o.data=e}return o}catch(e){throw Error(`[GitHub] 获取用户仓库列表失败: ${e.message}`)}}async get_repo_info(e){if(!e.owner||!e.repo)throw Error(n);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n}=e,r=await this.get(`/repos/${t}/${n}`);switch(r.statusCode){case 401:throw Error(d);case 404:throw Error(o)}if(r.data){let e={id:r.data.id,name:r.data.name,full_name:r.data.full_name,owner:{id:r.data.owner.id,login:r.data.owner.login,name:_(r.data.owner.name)?null:r.data.owner.name,avatar_url:r.data.owner.avatar_url,type:r.data.owner.type,html_url:r.data.owner.html_url},public:!r.data.private,private:r.data.private,visibility:r.data.private?`private`:`public`,fork:r.data.fork,archived:r.data.archived,disabled:r.data.disabled,html_url:r.data.html_url,description:r.data.description,stargazers_count:r.data.stargazers_count,watchers_count:r.data.watchers_count,language:r.data.language,forks_count:r.data.forks_count,open_issues_count:r.data.open_issues_count,default_branch:r.data.default_branch,created_at:this.format?await p(r.data.created_at):r.data.created_at,updated_at:this.format?await p(r.data.updated_at):r.data.updated_at,pushed_at:this.format?await p(r.data.pushed_at):r.data.pushed_at};r.data=e}return r}catch(e){throw Error(`[GitHub] 获取仓库信息失败: ${e.message}`)}}async get_repo_languages_list(e){if(!e.owner||!e.repo)throw Error(n);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n}=e,r=await this.get(`/repos/${t}/${n}/languages`);switch(r.statusCode){case 401:throw Error(d);case 404:throw Error(u)}if(r.data){let e=Object.entries(r.data),t=e.reduce((e,[,t])=>e+t,0),n=e.map(([e,n])=>({language:e,color:h(e.toLowerCase()),percent:Number((n/t*100).toFixed(2)),bytes:n})),i={languages:n};r.data=i}return r}catch(e){throw Error(`[GitHub] 获取仓库语言列表失败: ${e.message}`)}}async create_org_repo(e){try{let{org:t,...n}=e;if(!t||!e.name)throw Error(a);let r={};r.name=n.name,n.description&&(r.description=n.description.toString()),n.homepage&&(r.homepage=n.homepage.toString()),n.visibility&&(r.private=n.visibility.toString()),n.has_wiki&&(r.has_wiki=n.has_wiki),n.auto_init&&(r.auto_init=n.auto_init);let i=await this.post(`/orgs/${t}/repos`,r);if(i.statusCode===401)throw Error(d);if(i.data){let e={id:i.data.id,name:i.data.name,full_name:i.data.full_name,owner:{id:i.data.owner.id,login:i.data.owner.login,name:_(i.data.owner.name)?null:i.data.owner.name,avatar_url:i.data.owner.avatar_url,type:i.data.owner.type,html_url:i.data.owner.html_url},public:!i.data.private,private:i.data.private,visibility:i.data.private?`private`:`public`,fork:i.data.fork,archived:i.data.archived,disabled:i.data.disabled,html_url:i.data.html_url,description:i.data.description,stargazers_count:i.data.stargazers_count,watchers_count:i.data.watchers_count,language:i.data.language,forks_count:i.data.forks_count,open_issues_count:i.data.open_issues_count,default_branch:i.data.default_branch,created_at:this.format?await p(i.data.created_at):i.data.created_at,updated_at:this.format?await p(i.data.updated_at):i.data.updated_at,pushed_at:this.format?await p(i.data.pushed_at):i.data.pushed_at};i.data=e}return i}catch(e){throw Error(`[GitHub] 创建组织仓库失败: ${e.message}`)}}async create_user_repo(e){try{let{owner:t,...r}=e;if(!t||!e.name)throw Error(n);let i={};i.name=r.name,r.description&&(i.description=r.description.toString()),r.homepage&&(i.homepage=r.homepage.toString()),r.visibility===`private`&&(i.private=!0),r.has_wiki&&(i.has_wiki=r.has_wiki),r.auto_init&&(i.auto_init=r.auto_init);let a=await this.post(`/user/repos`,i);if(a.statusCode===401)throw Error(d);if(a.data){let e={id:a.data.id,name:a.data.name,full_name:a.data.full_name,owner:{id:a.data.owner.id,login:a.data.owner.login,name:_(a.data.owner.name)?null:a.data.owner.name,avatar_url:a.data.owner.avatar_url,type:a.data.owner.type,html_url:a.data.owner.html_url},public:!a.data.private,private:a.data.private,visibility:a.data.private?`private`:`public`,fork:a.data.fork,archived:a.data.archived,disabled:a.data.disabled,html_url:a.data.html_url,description:a.data.description,stargazers_count:a.data.stargazers_count,watchers_count:a.data.watchers_count,language:a.data.language,forks_count:a.data.forks_count,open_issues_count:a.data.open_issues_count,default_branch:a.data.default_branch,created_at:this.format?await p(a.data.created_at):a.data.created_at,updated_at:this.format?await p(a.data.updated_at):a.data.updated_at,pushed_at:this.format?await p(a.data.pushed_at):a.data.pushed_at};a.data=e}return a}catch(e){throw Error(`[GitHub] 创建用户仓库失败: ${e.message}`)}}async create_repo(e){return this.create_user_repo(e)}async get_collaborators_list(e){if(!e.owner||!e.repo)throw Error(n);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n}=e,{...r}=e,i={};r.affiliation&&(i.milestone=r.affiliation.toString()),r.permission&&(i.permission=r.permission.toString()),r.per_page&&(i.per_page=r.per_page.toString()),r.page&&(i.page=r.page.toString());let a=await this.get(`/repos/${t}/${n}/collaborators`,i);if(a.data){let e=await Promise.all(a.data.map(e=>({id:e.id,login:e.login,avatar_url:e.avatar_url,email:e.email,name:_(e.name)?null:e.owner.name,permissions:e.permissions===`triage`||e.permissions===`maintain`?`admin`:e.permissions})));a.data=e}return a}catch(e){throw Error(`[GitHub] 获取仓库协作者列表失败: ${e.message}`)}}async add_collaborator(e){if(!e.owner||!e.repo)throw Error(n);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n,username:r,permission:i}=e,a={};i===`pull`?a.permission=`pull`:i===`push`?a.permission=`push`:i===`admin`?a.permission=`admin`:a.permission=`pull`;let o=await this.put(`/repos/${t}/${n}/collaborators/${r}`,a);if(o.statusCode===404)throw Error(d);if(o.statusCode===422){let e=o.data.message;if(e&&e.includes(`is not a valid permission`))throw Error(s)}if(o.data){let e={id:o.data.inviter.id,login:o.data.inviter.login,name:_(o.data.inviter.name)?null:o.data.inviter.name,html_url:o.data.repository.html_url,permissions:o.data.permissions};o.data=e}return o}catch(e){throw Error(`[GitHub] 添加协作者失败: ${e.message}`)}}async remove_collaborator(t){if(!t.owner||!t.repo)throw Error(n);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,username:i}=t,a=await this.delete(`/repos/${n}/${r}/collaborators/${i}`);if(a.statusCode===404)throw Error(d);let o;return o=a.status&&a.statusCode===204?{success:!0,message:l(i)}:{success:!1,message:e(i)},a.data=o,a}catch(e){throw Error(`[GitHub] 移除协作者失败: ${e.message}`)}}async delete_collaborator(e){return this.remove_collaborator(e)}async get_repo_visibility(e){try{let{owner:t,repo:n}=e;return(await this.get_repo_info({owner:t,repo:n})).data.visibility}catch(e){throw Error(`[GitHub] 获取仓库可见性失败: ${e.message}`)}}async get_repo_default_branch(e){if(!e.owner||!e.repo)throw Error(n);try{let{owner:t,repo:n}=e,r=m(this.type,{proxyType:c.Original})+`/`+t+`/`+n,i,[a,o]=await v(g)(r);return i=a?(await this.get_repo_info({owner:t,repo:n})).data.default_branch:o,i}catch(e){throw Error(`[GitHub] 获取仓库默认分支失败: ${e.message}`)}}async get_repo_main_language(e){if(!e.owner||!e.repo)throw Error(n);try{let{owner:t,repo:n}=e;return(await this.get_repo_info({owner:t,repo:n})).data.language}catch(e){throw Error(`[GitHub] 获取仓库语言失败: ${e.message}`)}}};export{y as Repo};
|
@@ -0,0 +1 @@
|
|
1
|
+
import"./client-sGV7POG-.mjs";import"./root--c209M1Y.mjs";import"./base-BqtGg502.mjs";import{Repo as e}from"./repo-BovlwNiC.mjs";export{e as Repo};
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`),require(`./base-CUzfuEjq.cjs`);const e=require(`./repo-CUJpctL3.cjs`);exports.Repo=e.Repo;
|
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`),t=require(`./client-Bmkb1ges.cjs`),n=e.__toESM(require(`radash`));var r=class extends t.GitHubClient{constructor(e){super(e),this.userToken=e.userToken,this.api_url=e.api_url,this.base_url=e.base_url}async get_org_repos_list(e){if(!e.org)throw Error(t.OrgNotFoundMsg);try{this.setRequestConfig({token:this.userToken});let{org:r,...i}=e,a={};i?.type&&(a.type=i.type),i?.sort&&(a.sort=i.sort),i?.direction&&(a.direction=i.direction),i?.per_page&&(a.per_page=i.per_page.toString()),i?.page&&(a.page=i.page.toString());let o=`/orgs/${r}/repos`,s=await this.get(o,a);switch(s.statusCode){case 404:throw Error(t.OrgNotFoundMsg);case 401:throw Error(t.RepoOrPermissionDeniedMsg)}if(s.data){let e=await Promise.all(s.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:(0,n.isEmpty)(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await t.format_date(e.created_at):e.created_at,updated_at:this.format?await t.format_date(e.updated_at):e.updated_at,pushed_at:this.format?await t.format_date(e.pushed_at):e.pushed_at})));s.data=e}return s}catch(e){throw Error(`[GitHub] 获取组织仓库列表失败: ${e.message}`)}}async get_user_repos_list_by_token(e){try{this.setRequestConfig({token:this.userToken});let{...r}=e,i={};!e?.visibility&&!e?.affiliation&&r?.type&&(i.type=r.type),r?.visibility&&(i.visibility=r.visibility),r?.affiliation&&(i.affiliation=r.affiliation),r?.sort&&(i.sort=r.sort),r?.direction&&(i.direction=r.direction),r?.per_page&&(i.per_page=r.per_page.toString()),r?.page&&(i.page=r.page.toString());let a=`/uses/repos`,o=await this.get(a,i);if(o.statusCode===401)throw Error(t.RepoOrPermissionDeniedMsg);if(o.data){let e=await Promise.all(o.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:(0,n.isEmpty)(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await t.format_date(e.created_at):e.created_at,updated_at:this.format?await t.format_date(e.updated_at):e.updated_at,pushed_at:this.format?await t.format_date(e.pushed_at):e.pushed_at})));o.data=e}return o}catch(e){throw Error(`[GitHub] 获取授权用户仓库列表失败: ${e.message}`)}}async get_user_repos_list(e){try{if(!e.username)throw Error(t.MissingUserNameParamMsg);this.setRequestConfig({token:this.userToken});let{username:r,...i}=e,a={};i?.type&&(a.type=i.type),i?.sort&&(a.sort=i.sort),i?.direction&&(a.direction=i.direction),i?.per_page&&(a.per_page=i.per_page.toString()),i?.page&&(a.page=i.page.toString());let o=`/users/${r}/repos`,s=await this.get(o,a);switch(s.statusCode){case 404:throw Error(t.UserNotFoundMsg);case 401:throw Error(t.RepoOrPermissionDeniedMsg)}if(s.data){let e=await Promise.all(s.data.map(async e=>({id:e.id,name:e.name,full_name:e.full_name,owner:{id:e.owner.id,login:e.owner.login,name:(0,n.isEmpty)(e.owner.name)?null:e.owner.name,avatar_url:e.owner.avatar_url,type:e.owner.type,html_url:e.owner.html_url},public:!e.private,private:e.private,visibility:e.private?`private`:`public`,fork:e.fork,archived:e.archived,disabled:e.disabled,html_url:e.html_url,description:e.description,stargazers_count:e.stargazers_count,watchers_count:e.watchers_count,language:e.language,forks_count:e.forks_count,open_issues_count:e.open_issues_count,default_branch:e.default_branch,created_at:this.format?await t.format_date(e.created_at):e.created_at,updated_at:this.format?await t.format_date(e.updated_at):e.updated_at,pushed_at:this.format?await t.format_date(e.pushed_at):e.pushed_at})));s.data=e}return s}catch(e){throw Error(`[GitHub] 获取用户仓库列表失败: ${e.message}`)}}async get_repo_info(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i}=e,a=await this.get(`/repos/${r}/${i}`);switch(a.statusCode){case 401:throw Error(t.RepoOrPermissionDeniedMsg);case 404:throw Error(t.OrgOrUserNotFoundMsg)}if(a.data){let e={id:a.data.id,name:a.data.name,full_name:a.data.full_name,owner:{id:a.data.owner.id,login:a.data.owner.login,name:(0,n.isEmpty)(a.data.owner.name)?null:a.data.owner.name,avatar_url:a.data.owner.avatar_url,type:a.data.owner.type,html_url:a.data.owner.html_url},public:!a.data.private,private:a.data.private,visibility:a.data.private?`private`:`public`,fork:a.data.fork,archived:a.data.archived,disabled:a.data.disabled,html_url:a.data.html_url,description:a.data.description,stargazers_count:a.data.stargazers_count,watchers_count:a.data.watchers_count,language:a.data.language,forks_count:a.data.forks_count,open_issues_count:a.data.open_issues_count,default_branch:a.data.default_branch,created_at:this.format?await t.format_date(a.data.created_at):a.data.created_at,updated_at:this.format?await t.format_date(a.data.updated_at):a.data.updated_at,pushed_at:this.format?await t.format_date(a.data.pushed_at):a.data.pushed_at};a.data=e}return a}catch(e){throw Error(`[GitHub] 获取仓库信息失败: ${e.message}`)}}async get_repo_languages_list(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r}=e,i=await this.get(`/repos/${n}/${r}/languages`);switch(i.statusCode){case 401:throw Error(t.RepoOrPermissionDeniedMsg);case 404:throw Error(t.RepoNotFoundMsg)}if(i.data){let e=Object.entries(i.data),n=e.reduce((e,[,t])=>e+t,0),r=e.map(([e,r])=>({language:e,color:t.get_langage_color(e.toLowerCase()),percent:Number((r/n*100).toFixed(2)),bytes:r})),a={languages:r};i.data=a}return i}catch(e){throw Error(`[GitHub] 获取仓库语言列表失败: ${e.message}`)}}async create_org_repo(e){try{let{org:r,...i}=e;if(!r||!e.name)throw Error(t.OrgOrRepoNotFoundMsg);let a={};a.name=i.name,i.description&&(a.description=i.description.toString()),i.homepage&&(a.homepage=i.homepage.toString()),i.visibility&&(a.private=i.visibility.toString()),i.has_wiki&&(a.has_wiki=i.has_wiki),i.auto_init&&(a.auto_init=i.auto_init);let o=await this.post(`/orgs/${r}/repos`,a);if(o.statusCode===401)throw Error(t.RepoOrPermissionDeniedMsg);if(o.data){let e={id:o.data.id,name:o.data.name,full_name:o.data.full_name,owner:{id:o.data.owner.id,login:o.data.owner.login,name:(0,n.isEmpty)(o.data.owner.name)?null:o.data.owner.name,avatar_url:o.data.owner.avatar_url,type:o.data.owner.type,html_url:o.data.owner.html_url},public:!o.data.private,private:o.data.private,visibility:o.data.private?`private`:`public`,fork:o.data.fork,archived:o.data.archived,disabled:o.data.disabled,html_url:o.data.html_url,description:o.data.description,stargazers_count:o.data.stargazers_count,watchers_count:o.data.watchers_count,language:o.data.language,forks_count:o.data.forks_count,open_issues_count:o.data.open_issues_count,default_branch:o.data.default_branch,created_at:this.format?await t.format_date(o.data.created_at):o.data.created_at,updated_at:this.format?await t.format_date(o.data.updated_at):o.data.updated_at,pushed_at:this.format?await t.format_date(o.data.pushed_at):o.data.pushed_at};o.data=e}return o}catch(e){throw Error(`[GitHub] 创建组织仓库失败: ${e.message}`)}}async create_user_repo(e){try{let{owner:r,...i}=e;if(!r||!e.name)throw Error(t.MissingRepoOwnerOrNameMsg);let a={};a.name=i.name,i.description&&(a.description=i.description.toString()),i.homepage&&(a.homepage=i.homepage.toString()),i.visibility===`private`&&(a.private=!0),i.has_wiki&&(a.has_wiki=i.has_wiki),i.auto_init&&(a.auto_init=i.auto_init);let o=await this.post(`/user/repos`,a);if(o.statusCode===401)throw Error(t.RepoOrPermissionDeniedMsg);if(o.data){let e={id:o.data.id,name:o.data.name,full_name:o.data.full_name,owner:{id:o.data.owner.id,login:o.data.owner.login,name:(0,n.isEmpty)(o.data.owner.name)?null:o.data.owner.name,avatar_url:o.data.owner.avatar_url,type:o.data.owner.type,html_url:o.data.owner.html_url},public:!o.data.private,private:o.data.private,visibility:o.data.private?`private`:`public`,fork:o.data.fork,archived:o.data.archived,disabled:o.data.disabled,html_url:o.data.html_url,description:o.data.description,stargazers_count:o.data.stargazers_count,watchers_count:o.data.watchers_count,language:o.data.language,forks_count:o.data.forks_count,open_issues_count:o.data.open_issues_count,default_branch:o.data.default_branch,created_at:this.format?await t.format_date(o.data.created_at):o.data.created_at,updated_at:this.format?await t.format_date(o.data.updated_at):o.data.updated_at,pushed_at:this.format?await t.format_date(o.data.pushed_at):o.data.pushed_at};o.data=e}return o}catch(e){throw Error(`[GitHub] 创建用户仓库失败: ${e.message}`)}}async create_repo(e){return this.create_user_repo(e)}async get_collaborators_list(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:r}=e,{...i}=e,a={};i.affiliation&&(a.milestone=i.affiliation.toString()),i.permission&&(a.permission=i.permission.toString()),i.per_page&&(a.per_page=i.per_page.toString()),i.page&&(a.page=i.page.toString());let o=await this.get(`/repos/${t}/${r}/collaborators`,a);if(o.data){let e=await Promise.all(o.data.map(e=>({id:e.id,login:e.login,avatar_url:e.avatar_url,email:e.email,name:(0,n.isEmpty)(e.name)?null:e.owner.name,permissions:e.permissions===`triage`||e.permissions===`maintain`?`admin`:e.permissions})));o.data=e}return o}catch(e){throw Error(`[GitHub] 获取仓库协作者列表失败: ${e.message}`)}}async add_collaborator(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i,username:a,permission:o}=e,s={};o===`pull`?s.permission=`pull`:o===`push`?s.permission=`push`:o===`admin`?s.permission=`admin`:s.permission=`pull`;let c=await this.put(`/repos/${r}/${i}/collaborators/${a}`,s);if(c.statusCode===404)throw Error(t.RepoOrPermissionDeniedMsg);if(c.statusCode===422){let e=c.data.message;if(e&&e.includes(`is not a valid permission`))throw Error(t.PermissionDeniedMsg)}if(c.data){let e={id:c.data.inviter.id,login:c.data.inviter.login,name:(0,n.isEmpty)(c.data.inviter.name)?null:c.data.inviter.name,html_url:c.data.repository.html_url,permissions:c.data.permissions};c.data=e}return c}catch(e){throw Error(`[GitHub] 添加协作者失败: ${e.message}`)}}async remove_collaborator(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,username:i}=e,a=await this.delete(`/repos/${n}/${r}/collaborators/${i}`);if(a.statusCode===404)throw Error(t.RepoOrPermissionDeniedMsg);let o;return o=a.status&&a.statusCode===204?{success:!0,message:t.RemoveCollaboratorSuccessMsg(i)}:{success:!1,message:t.FailedToRemoveCollaboratorMsg(i)},a.data=o,a}catch(e){throw Error(`[GitHub] 移除协作者失败: ${e.message}`)}}async delete_collaborator(e){return this.remove_collaborator(e)}async get_repo_visibility(e){try{let{owner:t,repo:n}=e;return(await this.get_repo_info({owner:t,repo:n})).data.visibility}catch(e){throw Error(`[GitHub] 获取仓库可见性失败: ${e.message}`)}}async get_repo_default_branch(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{let{owner:r,repo:i}=e,a=t.get_base_url(this.type,{proxyType:t.ProxyType.Original})+`/`+r+`/`+i,o,[s,c]=await(0,n.tryit)(t.get_remote_repo_default_branch)(a);return o=s?(await this.get_repo_info({owner:r,repo:i})).data.default_branch:c,o}catch(e){throw Error(`[GitHub] 获取仓库默认分支失败: ${e.message}`)}}async get_repo_main_language(e){if(!e.owner||!e.repo)throw Error(t.MissingRepoOwnerOrNameMsg);try{let{owner:t,repo:n}=e;return(await this.get_repo_info({owner:t,repo:n})).data.language}catch(e){throw Error(`[GitHub] 获取仓库语言失败: ${e.message}`)}}};Object.defineProperty(exports,`Repo`,{enumerable:!0,get:function(){return r}});
|
@@ -0,0 +1 @@
|
|
1
|
+
import e from"node:path";import{fileURLToPath as t}from"node:url";const n=Object.freeze(t(import.meta.url)),r=Object.freeze(e.join(n,`../..`).replace(/\\/g,`/`));export{r as basePath};
|
@@ -0,0 +1 @@
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,n)=>{for(var r in n)t(e,r,{get:n[r],enumerable:!0})},s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const l=c(require(`node:path`)),u=c(require(`node:url`)),d=Object.freeze((0,u.fileURLToPath)(require(`url`).pathToFileURL(__filename).href)),f=Object.freeze(l.default.join(d,`../..`).replace(/\\/g,`/`));Object.defineProperty(exports,`__export`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`__toESM`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`basePath`,{enumerable:!0,get:function(){return f}});
|
package/dist/root.cjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`);exports.basePath=e.basePath;
|
package/dist/root.d.mts
ADDED
package/dist/root.mjs
CHANGED
@@ -1 +1 @@
|
|
1
|
-
import e
|
1
|
+
import{basePath as e}from"./root--c209M1Y.mjs";export{e as basePath};
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`);const e=require(`./search-VShiQDs8.cjs`);exports.Search=e.Search;
|
@@ -0,0 +1 @@
|
|
1
|
+
import"./client-sGV7POG-.mjs";import"./root--c209M1Y.mjs";import{Search as e}from"./search-bcPx7a6C.mjs";export{e as Search};
|
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`),t=require(`./client-Bmkb1ges.cjs`),n=e.__toESM(require(`radash`));var r=class extends t.GitHubClient{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async search_users(e){if(!e.q)throw Error(t.MIssingSearchQueryMsg);try{this.setRequestConfig({token:this.userToken});let t={};t.q=e.q,e.order&&(t.order=e.order),e.per_page&&(t.per_page=e.per_page.toString()),e.page&&(t.page=e.page.toString());let r=await this.get(`/search/users`,t);if(r.data){let e={total_count:r.data.total_count,items:r.data.items.map(e=>({id:e.id,login:e.login,name:(0,n.isEmpty)(e.name)?null:e.name,email:(0,n.isEmpty)(e.email)?null:e.email,avatar_url:e.avatar_url,html_url:e.html_url}))};r.data=e}return r}catch(e){throw Error(`搜索用户失败: ${e.message}`)}}async search_repos(e){if(!e.q)throw Error(t.MIssingSearchQueryMsg);try{this.setRequestConfig({token:this.userToken});let t={};t.q=e.q,e.order&&(t.order=e.order),e.per_page&&(t.per_page=e.per_page.toString()),e.page&&(t.page=e.page.toString());let r=await this.get(`/search/repositories`,t);if(r.data){let e={total_count:r.data.total_count,items:r.data.items.map(e=>({id:e.id,owner:e.owner.login,name:e.name,full_name:e.full_name,description:(0,n.isEmpty)(e.description)?null:e.description,visibility:e.public?`public`:`private`,public:e.public,private:e.private,archived:e.archived,language:(0,n.isEmpty)(e.language)?null:e.language,pushed_at:e.pushed_at}))};r.data=e}return r}catch(e){throw Error(`搜索仓库失败: ${e.message}`)}}};Object.defineProperty(exports,`Search`,{enumerable:!0,get:function(){return r}});
|
@@ -0,0 +1 @@
|
|
1
|
+
import{GitHubClient as e,MIssingSearchQueryMsg as t}from"./client-sGV7POG-.mjs";import{isEmpty as n}from"radash";var r=class extends e{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async search_users(e){if(!e.q)throw Error(t);try{this.setRequestConfig({token:this.userToken});let t={};t.q=e.q,e.order&&(t.order=e.order),e.per_page&&(t.per_page=e.per_page.toString()),e.page&&(t.page=e.page.toString());let r=await this.get(`/search/users`,t);if(r.data){let e={total_count:r.data.total_count,items:r.data.items.map(e=>({id:e.id,login:e.login,name:n(e.name)?null:e.name,email:n(e.email)?null:e.email,avatar_url:e.avatar_url,html_url:e.html_url}))};r.data=e}return r}catch(e){throw Error(`搜索用户失败: ${e.message}`)}}async search_repos(e){if(!e.q)throw Error(t);try{this.setRequestConfig({token:this.userToken});let t={};t.q=e.q,e.order&&(t.order=e.order),e.per_page&&(t.per_page=e.per_page.toString()),e.page&&(t.page=e.page.toString());let r=await this.get(`/search/repositories`,t);if(r.data){let e={total_count:r.data.total_count,items:r.data.items.map(e=>({id:e.id,owner:e.owner.login,name:e.name,full_name:e.full_name,description:n(e.description)?null:e.description,visibility:e.public?`public`:`private`,public:e.public,private:e.private,archived:e.archived,language:n(e.language)?null:e.language,pushed_at:e.pushed_at}))};r.data=e}return r}catch(e){throw Error(`搜索仓库失败: ${e.message}`)}}};export{r as Search};
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`),require(`./base-CUzfuEjq.cjs`);const e=require(`./user-DTkgxY1i.cjs`);exports.User=e.User;
|
@@ -0,0 +1 @@
|
|
1
|
+
import"./client-sGV7POG-.mjs";import"./root--c209M1Y.mjs";import"./base-BqtGg502.mjs";import{User as e}from"./user-CsxfQJk2.mjs";export{e as User};
|
@@ -0,0 +1 @@
|
|
1
|
+
import{GitHubClient as e,MissingAccessTokenMsg as t,MissingUserIdParamMsg as n,MissingUserNameParamMsg as r,OrgNotSupportedMsg as i,OrgOrUserNotFoundMsg as a,PermissionDeniedMsg as o,ProxyType as s,UserNotFoundMsg as c,get_base_url as l,get_contribution_data as u}from"./client-sGV7POG-.mjs";import{capitalize as d}from"radash";var f=class extends e{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async get_user_info(e){if(!e.username)throw Error(a);try{this.setRequestConfig({token:this.userToken});let t=await this.get(`/users/${e.username}`);if(t.statusCode===401)throw Error(o);if(t.statusCode===404)throw Error(a);if(t.data){let e={id:t.data.id,login:t.data.login,name:t.data.name||null,type:d(t.data.type.toLowerCase()),html_url:t.data.html_url,avatar_url:t.data.avatar_url,email:t.data.email||null,bio:t.data.bio||null,blog:t.data.blog||null,public_repos:t.data.public_repos,followers:t.data.followers,following:t.data.following};t.data=e}return t}catch(e){throw Error(`[GitHub] 获取用户织信息失败: ${e.message}`)}}async get_user_info_by_user_id(e){if(!e.user_id)throw Error(n);try{this.setRequestConfig({token:this.userToken});let t=await this.get(`/user/${e.user_id}`);if(t.statusCode===401)throw Error(o);if(t.statusCode===404)throw Error(c);if(t.data){let e={id:t.data.id,login:t.data.login,name:t.data.name||null,type:d(t.data.type.toLowerCase()),html_url:t.data.html_url,avatar_url:t.data.avatar_url,email:t.data.email||null,bio:t.data.bio||null,blog:t.data.blog||null,public_repos:t.data.public_repos,followers:t.data.followers,following:t.data.following};t.data=e}return t}catch(e){throw Error(`[GitHub] 通过用户id获取用户信息失败: ${e.message}`)}}async get_user_info_by_auth(){if(!this.userToken)throw Error(t);try{this.setRequestConfig({token:this.userToken});let e=await this.get(`/user`);switch(e.statusCode){case 401:throw Error(o);case 404:throw Error(c)}if(e.data){let t={id:e.data.id,login:e.data.login,name:e.data.name||null,type:d(e.data.type.toLowerCase()),html_url:e.data.html_url,avatar_url:e.data.avatar_url,email:e.data.email||null,bio:e.data.bio||null,blog:e.data.blog||null,public_repos:e.data.public_repos,followers:e.data.followers,following:e.data.following};e.data=t}return e}catch(e){throw Error(`[GitHub] 获取授权用户信息失败: ${e.message}`)}}async get_user_info_by_token(){return this.get_user_info_by_auth()}async get_user_contribution(e){try{if(!e.username)throw Error(r);let t=await this.get_user_info({username:e.username});if(t.data.type===`Organization`)throw Error(`${i}获取贡献日历`);this.setRequestConfig({url:l(this.type,{proxyType:s.Original})});let n=await this.get(`/${e.username}`,{action:`show`,controller:`profiles`,tab:`contributions`,user_id:e.username},{"X-Requested-With":`XMLHttpRequest`});if(!n.success)throw Error(`获取用户贡献数据失败`);if(n.statusCode===404)throw Error(r);let a=await u(n.data);return{...n,data:a}}catch(e){throw Error(`[GitHub] 获取用户贡献信息失败: ${e.message}`)}}async get_user_id(){return(await this.get_user_info_by_auth()).data.id}async get_username(){return(await this.get_user_info_by_auth()).data.login}async get_nickname(){return(await this.get_user_info_by_auth()).data.name||null}async get_user_email(){return(await this.get_user_info_by_auth()).data.email||null}async get_avatar_url(){return(await this.get_user_info_by_auth()).data.avatar_url}};export{f as User};
|
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`),t=require(`./client-Bmkb1ges.cjs`),n=e.__toESM(require(`radash`));var r=class extends t.GitHubClient{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async get_user_info(e){if(!e.username)throw Error(t.OrgOrUserNotFoundMsg);try{this.setRequestConfig({token:this.userToken});let r=await this.get(`/users/${e.username}`);if(r.statusCode===401)throw Error(t.PermissionDeniedMsg);if(r.statusCode===404)throw Error(t.OrgOrUserNotFoundMsg);if(r.data){let e={id:r.data.id,login:r.data.login,name:r.data.name||null,type:(0,n.capitalize)(r.data.type.toLowerCase()),html_url:r.data.html_url,avatar_url:r.data.avatar_url,email:r.data.email||null,bio:r.data.bio||null,blog:r.data.blog||null,public_repos:r.data.public_repos,followers:r.data.followers,following:r.data.following};r.data=e}return r}catch(e){throw Error(`[GitHub] 获取用户织信息失败: ${e.message}`)}}async get_user_info_by_user_id(e){if(!e.user_id)throw Error(t.MissingUserIdParamMsg);try{this.setRequestConfig({token:this.userToken});let r=await this.get(`/user/${e.user_id}`);if(r.statusCode===401)throw Error(t.PermissionDeniedMsg);if(r.statusCode===404)throw Error(t.UserNotFoundMsg);if(r.data){let e={id:r.data.id,login:r.data.login,name:r.data.name||null,type:(0,n.capitalize)(r.data.type.toLowerCase()),html_url:r.data.html_url,avatar_url:r.data.avatar_url,email:r.data.email||null,bio:r.data.bio||null,blog:r.data.blog||null,public_repos:r.data.public_repos,followers:r.data.followers,following:r.data.following};r.data=e}return r}catch(e){throw Error(`[GitHub] 通过用户id获取用户信息失败: ${e.message}`)}}async get_user_info_by_auth(){if(!this.userToken)throw Error(t.MissingAccessTokenMsg);try{this.setRequestConfig({token:this.userToken});let e=await this.get(`/user`);switch(e.statusCode){case 401:throw Error(t.PermissionDeniedMsg);case 404:throw Error(t.UserNotFoundMsg)}if(e.data){let t={id:e.data.id,login:e.data.login,name:e.data.name||null,type:(0,n.capitalize)(e.data.type.toLowerCase()),html_url:e.data.html_url,avatar_url:e.data.avatar_url,email:e.data.email||null,bio:e.data.bio||null,blog:e.data.blog||null,public_repos:e.data.public_repos,followers:e.data.followers,following:e.data.following};e.data=t}return e}catch(e){throw Error(`[GitHub] 获取授权用户信息失败: ${e.message}`)}}async get_user_info_by_token(){return this.get_user_info_by_auth()}async get_user_contribution(e){try{if(!e.username)throw Error(t.MissingUserNameParamMsg);let n=await this.get_user_info({username:e.username});if(n.data.type===`Organization`)throw Error(`${t.OrgNotSupportedMsg}获取贡献日历`);this.setRequestConfig({url:t.get_base_url(this.type,{proxyType:t.ProxyType.Original})});let r=await this.get(`/${e.username}`,{action:`show`,controller:`profiles`,tab:`contributions`,user_id:e.username},{"X-Requested-With":`XMLHttpRequest`});if(!r.success)throw Error(`获取用户贡献数据失败`);if(r.statusCode===404)throw Error(t.MissingUserNameParamMsg);let i=await t.get_contribution_data(r.data);return{...r,data:i}}catch(e){throw Error(`[GitHub] 获取用户贡献信息失败: ${e.message}`)}}async get_user_id(){return(await this.get_user_info_by_auth()).data.id}async get_username(){return(await this.get_user_info_by_auth()).data.login}async get_nickname(){return(await this.get_user_info_by_auth()).data.name||null}async get_user_email(){return(await this.get_user_info_by_auth()).data.email||null}async get_avatar_url(){return(await this.get_user_info_by_auth()).data.avatar_url}};Object.defineProperty(exports,`User`,{enumerable:!0,get:function(){return r}});
|
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./root-s6IKP4Xz.cjs`),t=require(`./client-Bmkb1ges.cjs`),n=e.__toESM(require(`node:crypto`));var r=class extends t.GitHubClient{async check_webhook_signature(e){if(!this.WebHook_Secret)throw Error(t.MissingWebHookSecretMsg);if(!e.payload)throw Error(t.MissingWebHookPayloadMsg);if(!e.signature)throw Error(t.MissingWebHookSignatureMsg);if(!e.signature.startsWith(`sha256=`))throw Error(t.InvalidWebHookSignatureFormatMsg);let r=!1,i=`error`,a=400,o,s,c=n.default.createHmac(`sha256`,this.WebHook_Secret),l=typeof e.payload==`string`?e.payload:JSON.stringify(e.payload);c.update(l,`utf8`);let u=c.digest(`hex`),d=e.signature.replace(`sha256=`,``),f=n.default.timingSafeEqual(Buffer.from(u),Buffer.from(d));return f?(r=!0,i=`ok`,a=200,o=`请求成功`,s={success:r,message:t.WebHookSignatureSuccessMsg}):(r=!1,i=`error`,a=403,o=`请求失败`,s={success:r,message:t.WebHookSignatureVerificationFailedMsg}),Promise.resolve({success:r,status:i,statusCode:a,msg:o,data:s})}};Object.defineProperty(exports,`WebHook`,{enumerable:!0,get:function(){return r}});
|
@@ -0,0 +1 @@
|
|
1
|
+
import{GitHubClient as e,InvalidWebHookSignatureFormatMsg as t,MissingWebHookPayloadMsg as n,MissingWebHookSecretMsg as r,MissingWebHookSignatureMsg as i,WebHookSignatureSuccessMsg as a,WebHookSignatureVerificationFailedMsg as o}from"./client-sGV7POG-.mjs";import s from"node:crypto";var c=class extends e{async check_webhook_signature(e){if(!this.WebHook_Secret)throw Error(r);if(!e.payload)throw Error(n);if(!e.signature)throw Error(i);if(!e.signature.startsWith(`sha256=`))throw Error(t);let c=!1,l=`error`,u=400,d,f,p=s.createHmac(`sha256`,this.WebHook_Secret),m=typeof e.payload==`string`?e.payload:JSON.stringify(e.payload);p.update(m,`utf8`);let h=p.digest(`hex`),g=e.signature.replace(`sha256=`,``),_=s.timingSafeEqual(Buffer.from(h),Buffer.from(g));return _?(c=!0,l=`ok`,u=200,d=`请求成功`,f={success:c,message:a}):(c=!1,l=`error`,u=403,d=`请求失败`,f={success:c,message:o}),Promise.resolve({success:c,status:l,statusCode:u,msg:d,data:f})}};export{c as WebHook};
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`);const e=require(`./webhook-BRAZACxU.cjs`);exports.WebHook=e.WebHook;
|
@@ -0,0 +1 @@
|
|
1
|
+
import"./client-sGV7POG-.mjs";import"./root--c209M1Y.mjs";import{WebHook as e}from"./webhook-DDN2SS97.mjs";export{e as WebHook};
|
@@ -0,0 +1 @@
|
|
1
|
+
import{DisableRepoWorkflowSuccessMsg as e,EnableRepoWorkflowSuccessMsg as t,FailedToDisableRepoWorkflowFailedMsg as n,FailedToEnableRepoWorkflowFailedMsg as r,FailedToReRunRepoWorkflowFailedMsg as i,FailedToRepoWorkflowDispatchMsg as a,GitHubClient as o,MissingJobIdMsg as s,MissingRefMsg as c,MissingRepoOwnerOrNameMsg as l,MissingWorkflowIdMsg as u,PermissionDeniedMsg as d,ReRunRepoWorkflowSuccessMsg as f,RunRepoWorkflowSuccessMsg as p,WorkflowOrRepoNotFoundMsg as m,format_date as h}from"./client-sGV7POG-.mjs";var g=class extends o{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async get_workflow_info(e){if(!e.owner||!e.repo)throw Error(l);if(!e.workflow_id)throw Error(u);try{let{owner:t,repo:n,workflow_id:r}=e;this.setRequestConfig({token:this.userToken});let i=await this.get(`/repos/${t}/${n}/actions/workflows/${r}`);if(i.statusCode===404)throw Error(m);if(i.data){let e={id:i.data.id,html_url:i.data.html_url,name:i.data.name,path:i.data.path,state:i.data.state,created_at:this.format?await h(i.data.created_at):i.data.created_at,updated_at:this.format?await h(i.data.updated_at):i.data.updated_at};i.data=e}return i}catch(e){throw Error(`获取工作流信息失败: ${e.message}`)}}async get_repo_workflows_list(e){if(!e.owner||!e.repo)throw Error(l);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n}=e,r={};e.per_page&&(r.per_page=e.per_page),e.page&&(r.page=e.page);let i=await this.get(`/repos/${t}/${n}/actions/workflows`,r);if(i.statusCode===404)throw Error(m);if(i.data){let e={total:i.data.total_count,workflows:await Promise.all(i.data.workflows.map(async e=>({id:e.id,html_url:e.html_url,name:e.name,path:e.path,state:e.state,created_at:this.format?await h(e.created_at):e.created_at,updated_at:this.format?await h(e.updated_at):e.updated_at})))};i.data=e}return i}catch(e){throw Error(`获取工作流列表失败: ${e.message}`)}}async run_repo_workflow(e){if(!e.owner||!e.repo)throw Error(l);if(!e.workflow_id)throw Error(u);if(!e.ref)throw Error(c);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n,workflow_id:r}=e,i={ref:e.ref};e.inputs&&(i.inputs=e.inputs);let o=await this.post(`/repos/${t}/${n}/actions/workflows/${r}/dispatches`,i);if(o.statusCode===404)throw Error(m);if(o.statusCode===403)throw Error(d);let s;return s=o.statusCode===204?{success:!0,message:p(r)}:{success:!1,message:a(r)},o.data=s,o}catch(e){throw Error(`运行工作流失败: ${e.message}`)}}async enable_repo_workflow(e){if(!e.owner||!e.repo)throw Error(l);if(!e.workflow_id)throw Error(u);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:i,workflow_id:a}=e,o=await this.put(`/repos/${n}/${i}/actions/workflows/${a}/enable`,null);if(o.statusCode===404)throw Error(m);if(o.statusCode===403)throw Error(d);let s;return s=o.statusCode===204?{success:!0,message:t(a)}:{success:!1,message:r(a)},o.data=s,o}catch(e){throw Error(`启用工作流失败: ${e.message}`)}}async disable_repo_workflow(t){if(!t.owner||!t.repo)throw Error(l);if(!t.workflow_id)throw Error(u);try{this.setRequestConfig({token:this.userToken});let{owner:r,repo:i,workflow_id:a}=t,o=await this.put(`/repos/${r}/${i}/actions/workflows/${a}/disable`,null);if(o.statusCode===404)throw Error(m);if(o.statusCode===403)throw Error(d);let s;return s=o.statusCode===204?{success:!0,message:e(a)}:{success:!1,message:n(a)},o.data=s,o}catch(e){throw Error(`禁用工作流失败: ${e.message}`)}}async rerun_repo_workflow(e){if(!e.owner||!e.repo)throw Error(l);if(!e.job_id)throw Error(s);try{this.setRequestConfig({token:this.userToken});let{owner:t,repo:n,job_id:r}=e,a=await this.post(`/repos/${t}/${n}/actions/jobs/${r}/rerun`,null);if(a.statusCode===404)throw Error(m);if(a.statusCode===403)throw Error(d);let o;return o=a.statusCode===204?{success:!0,message:f(r)}:{success:!1,message:i(r)},a.data=o,a}catch(e){throw Error(`重新运行工作流失败: ${e.message}`)}}};export{g as Workflow};
|
@@ -0,0 +1 @@
|
|
1
|
+
require(`./root-s6IKP4Xz.cjs`),require(`./client-Bmkb1ges.cjs`);const e=require(`./workflow-DfSZx8u4.cjs`);exports.Workflow=e.Workflow;
|
@@ -0,0 +1 @@
|
|
1
|
+
const e=require(`./client-Bmkb1ges.cjs`);var t=class extends e.GitHubClient{constructor(e){super(e),this.userToken=e.userToken,this.base_url=e.base_url,this.api_url=e.api_url}async get_workflow_info(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);if(!t.workflow_id)throw Error(e.MissingWorkflowIdMsg);try{let{owner:n,repo:r,workflow_id:i}=t;this.setRequestConfig({token:this.userToken});let a=await this.get(`/repos/${n}/${r}/actions/workflows/${i}`);if(a.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(a.data){let t={id:a.data.id,html_url:a.data.html_url,name:a.data.name,path:a.data.path,state:a.data.state,created_at:this.format?await e.format_date(a.data.created_at):a.data.created_at,updated_at:this.format?await e.format_date(a.data.updated_at):a.data.updated_at};a.data=t}return a}catch(e){throw Error(`获取工作流信息失败: ${e.message}`)}}async get_repo_workflows_list(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r}=t,i={};t.per_page&&(i.per_page=t.per_page),t.page&&(i.page=t.page);let a=await this.get(`/repos/${n}/${r}/actions/workflows`,i);if(a.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(a.data){let t={total:a.data.total_count,workflows:await Promise.all(a.data.workflows.map(async t=>({id:t.id,html_url:t.html_url,name:t.name,path:t.path,state:t.state,created_at:this.format?await e.format_date(t.created_at):t.created_at,updated_at:this.format?await e.format_date(t.updated_at):t.updated_at})))};a.data=t}return a}catch(e){throw Error(`获取工作流列表失败: ${e.message}`)}}async run_repo_workflow(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);if(!t.workflow_id)throw Error(e.MissingWorkflowIdMsg);if(!t.ref)throw Error(e.MissingRefMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,workflow_id:i}=t,a={ref:t.ref};t.inputs&&(a.inputs=t.inputs);let o=await this.post(`/repos/${n}/${r}/actions/workflows/${i}/dispatches`,a);if(o.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(o.statusCode===403)throw Error(e.PermissionDeniedMsg);let s;return s=o.statusCode===204?{success:!0,message:e.RunRepoWorkflowSuccessMsg(i)}:{success:!1,message:e.FailedToRepoWorkflowDispatchMsg(i)},o.data=s,o}catch(e){throw Error(`运行工作流失败: ${e.message}`)}}async enable_repo_workflow(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);if(!t.workflow_id)throw Error(e.MissingWorkflowIdMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,workflow_id:i}=t,a=await this.put(`/repos/${n}/${r}/actions/workflows/${i}/enable`,null);if(a.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(a.statusCode===403)throw Error(e.PermissionDeniedMsg);let o;return o=a.statusCode===204?{success:!0,message:e.EnableRepoWorkflowSuccessMsg(i)}:{success:!1,message:e.FailedToEnableRepoWorkflowFailedMsg(i)},a.data=o,a}catch(e){throw Error(`启用工作流失败: ${e.message}`)}}async disable_repo_workflow(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);if(!t.workflow_id)throw Error(e.MissingWorkflowIdMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,workflow_id:i}=t,a=await this.put(`/repos/${n}/${r}/actions/workflows/${i}/disable`,null);if(a.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(a.statusCode===403)throw Error(e.PermissionDeniedMsg);let o;return o=a.statusCode===204?{success:!0,message:e.DisableRepoWorkflowSuccessMsg(i)}:{success:!1,message:e.FailedToDisableRepoWorkflowFailedMsg(i)},a.data=o,a}catch(e){throw Error(`禁用工作流失败: ${e.message}`)}}async rerun_repo_workflow(t){if(!t.owner||!t.repo)throw Error(e.MissingRepoOwnerOrNameMsg);if(!t.job_id)throw Error(e.MissingJobIdMsg);try{this.setRequestConfig({token:this.userToken});let{owner:n,repo:r,job_id:i}=t,a=await this.post(`/repos/${n}/${r}/actions/jobs/${i}/rerun`,null);if(a.statusCode===404)throw Error(e.WorkflowOrRepoNotFoundMsg);if(a.statusCode===403)throw Error(e.PermissionDeniedMsg);let o;return o=a.statusCode===204?{success:!0,message:e.ReRunRepoWorkflowSuccessMsg(i)}:{success:!1,message:e.FailedToReRunRepoWorkflowFailedMsg(i)},a.data=o,a}catch(e){throw Error(`重新运行工作流失败: ${e.message}`)}}};Object.defineProperty(exports,`Workflow`,{enumerable:!0,get:function(){return t}});
|
@@ -0,0 +1 @@
|
|
1
|
+
import"./client-sGV7POG-.mjs";import"./root--c209M1Y.mjs";import{Workflow as e}from"./workflow-6BNjelIP.mjs";export{e as Workflow};
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@candriajs/git-neko-kit",
|
3
|
-
"version": "1.
|
3
|
+
"version": "1.2.0",
|
4
4
|
"description": "Github, Gitee, GitCode API封装库",
|
5
5
|
"keywords": [
|
6
6
|
"git",
|
@@ -50,11 +50,6 @@
|
|
50
50
|
"types": "./dist/exports/dayjs.d.ts",
|
51
51
|
"import": "./dist/exports/dayjs.mjs",
|
52
52
|
"require": "./dist/exports/dayjs.cjs"
|
53
|
-
},
|
54
|
-
"./lodash": {
|
55
|
-
"types": "./dist/exports/lodash.d.ts",
|
56
|
-
"import": "./dist/exports/lodash.mjs",
|
57
|
-
"require": "./dist/exports/lodash.cjs"
|
58
53
|
}
|
59
54
|
},
|
60
55
|
"main": "./dist/index.mjs",
|
@@ -65,7 +60,7 @@
|
|
65
60
|
"README.md"
|
66
61
|
],
|
67
62
|
"scripts": {
|
68
|
-
"build": "tsc --noEmit &&
|
63
|
+
"build": "tsc --noEmit && tsdown",
|
69
64
|
"build:docs": "pnpm run build:typedoc && pnpm run docs:build",
|
70
65
|
"build:pages": "vitepress build docs",
|
71
66
|
"build:typedoc": "typedoc --options typedoc.json",
|
@@ -84,18 +79,28 @@
|
|
84
79
|
"axios": "npm:@candriajs/axios@1.0.14",
|
85
80
|
"color-convert": "^3.1.0",
|
86
81
|
"dayjs": "^1.11.13",
|
82
|
+
"diff2html": "^3.4.51",
|
87
83
|
"exec": "npm:@candriajs/exec@^1.0.2",
|
88
84
|
"git-url-parse": "^16.0.1",
|
89
85
|
"http-proxy-agent": "^7.0.2",
|
90
86
|
"https-proxy-agent": "^7.0.6",
|
91
87
|
"jsonwebtoken": "^9.0.2",
|
92
88
|
"language-colors": "^2.1.55",
|
93
|
-
"lodash": "npm:@candriajs/lodash@1.0.7",
|
94
89
|
"markdown-it": "^14.1.0",
|
95
90
|
"markdown-it-emoji": "^3.0.0",
|
91
|
+
"radash": "^12.1.1",
|
96
92
|
"simple-git": "npm:@candriajs/simple-git@^1.0.2",
|
97
93
|
"socks-proxy-agent": "^8.0.5",
|
98
94
|
"uuid": "^11.1.0"
|
99
95
|
},
|
100
|
-
"
|
96
|
+
"engines": {
|
97
|
+
"node": ">=20.0.0"
|
98
|
+
},
|
99
|
+
"pnpm": {
|
100
|
+
"onlyBuiltDependencies": [
|
101
|
+
"esbuild",
|
102
|
+
"unrs-resolver",
|
103
|
+
"@parcel/watcher"
|
104
|
+
]
|
105
|
+
}
|
101
106
|
}
|
package/dist/exports/axios.d.ts
DELETED
package/dist/exports/dayjs.d.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export { default } from 'dayjs';
|
package/dist/exports/exec.d.ts
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export * from '@candriajs/exec';
|
package/dist/exports/lodash.cjs
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
'use strict';Object.defineProperty(exports,'__esModule',{value:true});var lodash=require('lodash');function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var lodash__namespace=/*#__PURE__*/_interopNamespace(lodash);exports.default=lodash__namespace;Object.keys(lodash).forEach(function(k){if(k!=='default'&&!Object.prototype.hasOwnProperty.call(exports,k))Object.defineProperty(exports,k,{enumerable:true,get:function(){return lodash[k]}})});
|
package/dist/exports/lodash.d.ts
DELETED
package/dist/exports/lodash.mjs
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export*from'lodash';import*as lodash from'lodash';export{lodash as default };
|
@@ -1 +0,0 @@
|
|
1
|
-
export { default } from 'markdown-it';
|