pulls.review 0.1.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 (185) hide show
  1. package/README.md +16 -0
  2. package/bin.mjs +2 -0
  3. package/dist/client/assets/ChatWidget-BsnoQ6oS.js +1 -0
  4. package/dist/client/assets/DisplayFileIcon-DzBo3Ez5.js +151 -0
  5. package/dist/client/assets/GithubAvatar-CSsUV5vf.js +1 -0
  6. package/dist/client/assets/LandingHero-BkTBSu71.js +1 -0
  7. package/dist/client/assets/_repo_-Dcgj3PGg.js +22 -0
  8. package/dist/client/assets/analyze-509KQQBC.js +1 -0
  9. package/dist/client/assets/andromeeda-vGVdxbeo.js +1 -0
  10. package/dist/client/assets/anthropic-messages-Cd2DkgOC.js +41 -0
  11. package/dist/client/assets/aurora-x-CDeNXAV0.js +1 -0
  12. package/dist/client/assets/ayu-dark-DluEY0Gj.js +1 -0
  13. package/dist/client/assets/ayu-light-C3h-C4tm.js +1 -0
  14. package/dist/client/assets/ayu-mirage-Bqwy1Gya.js +1 -0
  15. package/dist/client/assets/browser-agent-rpc-BXhoSh1z-DrxWeI3_.js +1 -0
  16. package/dist/client/assets/c-BNQJhXlP.js +1 -0
  17. package/dist/client/assets/catppuccin-frappe-C9Q5zVZY.js +1 -0
  18. package/dist/client/assets/catppuccin-latte-CtsyrtPq.js +1 -0
  19. package/dist/client/assets/catppuccin-macchiato-R8nAf1vR.js +1 -0
  20. package/dist/client/assets/catppuccin-mocha-DjuaAJKi.js +1 -0
  21. package/dist/client/assets/clojure-DqKBuwfJ.js +1 -0
  22. package/dist/client/assets/cpp-7GgD5o7L.js +1 -0
  23. package/dist/client/assets/csharp-oqKa8noW.js +1 -0
  24. package/dist/client/assets/css-DlBQoFxe.js +1 -0
  25. package/dist/client/assets/dark-plus-Cs2F2srj.js +1 -0
  26. package/dist/client/assets/de-Bq9RfdAn.js +1 -0
  27. package/dist/client/assets/diff-BKQFn0my.js +37 -0
  28. package/dist/client/assets/diff-Bx6SazPw.js +1 -0
  29. package/dist/client/assets/diff-woXpYk--.js +1 -0
  30. package/dist/client/assets/diffs-store-ncE62OUU.js +1510 -0
  31. package/dist/client/assets/dist-Dh0a8u-Y.js +1 -0
  32. package/dist/client/assets/docker-IyjqRm3v.js +1 -0
  33. package/dist/client/assets/dracula-BHWKrbxM.js +1 -0
  34. package/dist/client/assets/dracula-soft-5eyTD99u.js +1 -0
  35. package/dist/client/assets/elixir-D3n0XgqJ.js +1 -0
  36. package/dist/client/assets/en-8hQdak1X.js +1 -0
  37. package/dist/client/assets/error-CJ3RHG07.js +1 -0
  38. package/dist/client/assets/es-QcvEBShr.js +1 -0
  39. package/dist/client/assets/everforest-dark-sB-x3p7T.js +1 -0
  40. package/dist/client/assets/everforest-light-Df2xbC6M.js +1 -0
  41. package/dist/client/assets/fr-DAWKVvDP.js +1 -0
  42. package/dist/client/assets/github-dark-C-LZuMrd.js +1 -0
  43. package/dist/client/assets/github-dark-default-DXG-b-1a.js +1 -0
  44. package/dist/client/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
  45. package/dist/client/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
  46. package/dist/client/assets/github-light-EUqPIrTm.js +1 -0
  47. package/dist/client/assets/github-light-default-BXViO-2h.js +1 -0
  48. package/dist/client/assets/github-light-high-contrast-B68TUdTA.js +1 -0
  49. package/dist/client/assets/go-rLFTqkRN.js +1 -0
  50. package/dist/client/assets/graphql-ki1Ij_uk.js +1 -0
  51. package/dist/client/assets/groovy-CacY0gHj.js +1 -0
  52. package/dist/client/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
  53. package/dist/client/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
  54. package/dist/client/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
  55. package/dist/client/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
  56. package/dist/client/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
  57. package/dist/client/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
  58. package/dist/client/assets/haskell-D8IpX4py.js +1 -0
  59. package/dist/client/assets/horizon-CE9ld1lL.js +1 -0
  60. package/dist/client/assets/horizon-bright-DSNQnXHK.js +1 -0
  61. package/dist/client/assets/houston-CsvMBhTu.js +1 -0
  62. package/dist/client/assets/html-BC8aFsRK.js +1 -0
  63. package/dist/client/assets/i18n-CGV_MDS8.js +2 -0
  64. package/dist/client/assets/id-NIGs9Xhn.js +1 -0
  65. package/dist/client/assets/index-BCCy9wJJ.js +2 -0
  66. package/dist/client/assets/index-BDPZiDIt.css +1 -0
  67. package/dist/client/assets/ini-B5eOa1yu.js +1 -0
  68. package/dist/client/assets/install-B-q5w2uE.js +4 -0
  69. package/dist/client/assets/it-DjRuurmk.js +1 -0
  70. package/dist/client/assets/ja-BAKkDsQ5.js +1 -0
  71. package/dist/client/assets/java-D7h0NA_A.js +1 -0
  72. package/dist/client/assets/javascript-DcMHgNcu.js +1 -0
  73. package/dist/client/assets/json-qhed-kSA.js +1 -0
  74. package/dist/client/assets/jsonc-CYpm1nAK.js +1 -0
  75. package/dist/client/assets/jsx-BUUYi3qs.js +1 -0
  76. package/dist/client/assets/kanagawa-dragon-Bozd7klA.js +1 -0
  77. package/dist/client/assets/kanagawa-lotus-BmuOG9ZW.js +1 -0
  78. package/dist/client/assets/kanagawa-wave-BML5mF2J.js +1 -0
  79. package/dist/client/assets/ko-DHculY2W.js +1 -0
  80. package/dist/client/assets/kotlin-DhhofPvG.js +1 -0
  81. package/dist/client/assets/laserwave-C_8bwKvT.js +1 -0
  82. package/dist/client/assets/less-DVTAwKKz.js +1 -0
  83. package/dist/client/assets/light-plus-DVQuIRkW.js +1 -0
  84. package/dist/client/assets/llm-DYDmh8Ki.js +2 -0
  85. package/dist/client/assets/llm-store-CVM33nlB.js +2 -0
  86. package/dist/client/assets/locales-SpkpwNqX.js +1 -0
  87. package/dist/client/assets/lua-DCW0Dwo5.js +1 -0
  88. package/dist/client/assets/make-Dixweg8N.js +1 -0
  89. package/dist/client/assets/markdown-BYOwaDjH.js +1 -0
  90. package/dist/client/assets/material-theme-Bm3Qr25_.js +1 -0
  91. package/dist/client/assets/material-theme-darker-2IIEA8gg.js +1 -0
  92. package/dist/client/assets/material-theme-lighter-uhdI0v04.js +1 -0
  93. package/dist/client/assets/material-theme-ocean-CHQ94UKr.js +1 -0
  94. package/dist/client/assets/material-theme-palenight-B5W6OYN7.js +1 -0
  95. package/dist/client/assets/mdx-DQZ5AkYe.js +1 -0
  96. package/dist/client/assets/min-dark-BSWPekZh.js +1 -0
  97. package/dist/client/assets/min-light-DDpmG2fV.js +1 -0
  98. package/dist/client/assets/monokai-B_bV9PQ9.js +1 -0
  99. package/dist/client/assets/nginx-C4fSytnP.js +1 -0
  100. package/dist/client/assets/night-owl-DhmEMT88.js +1 -0
  101. package/dist/client/assets/night-owl-light-eJ-hLW7d.js +1 -0
  102. package/dist/client/assets/node.browser-BX-QLlU2.js +1 -0
  103. package/dist/client/assets/node.browser-DFtqp6Hr.js +1 -0
  104. package/dist/client/assets/nord-Cb4Vim4T.js +1 -0
  105. package/dist/client/assets/objective-c-D1A_Heim.js +1 -0
  106. package/dist/client/assets/objective-cpp-BsSzOQcm.js +1 -0
  107. package/dist/client/assets/one-dark-pro-CLwyXe_n.js +1 -0
  108. package/dist/client/assets/one-light-D7Lr4KcI.js +1 -0
  109. package/dist/client/assets/openai-completions-CSvY9IVo.js +21 -0
  110. package/dist/client/assets/pages-B5mEqsbn.js +1 -0
  111. package/dist/client/assets/pages-local-x_ACBinc.js +1 -0
  112. package/dist/client/assets/pages-web-DitAPN6U.js +21 -0
  113. package/dist/client/assets/patch-parser-k3Vbbmi0.js +5 -0
  114. package/dist/client/assets/perl-C8GHouAq.js +1 -0
  115. package/dist/client/assets/php-BahmaYs0.js +1 -0
  116. package/dist/client/assets/pierre-dark-CpLgRqie.js +1 -0
  117. package/dist/client/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js +1 -0
  118. package/dist/client/assets/pierre-dark-soft-kZQmAZld.js +1 -0
  119. package/dist/client/assets/pierre-dark-tritanopia-CpjhbsIL.js +1 -0
  120. package/dist/client/assets/pierre-dark-vibrant-CpQYzh95.js +1 -0
  121. package/dist/client/assets/pierre-light-CoaEpmwp.js +1 -0
  122. package/dist/client/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js +1 -0
  123. package/dist/client/assets/pierre-light-soft-lWLdNTOI.js +1 -0
  124. package/dist/client/assets/pierre-light-tritanopia-CEbqgOJL.js +1 -0
  125. package/dist/client/assets/pierre-light-vibrant-D80Fkn33.js +1 -0
  126. package/dist/client/assets/plastic-DQwYfKfQ.js +1 -0
  127. package/dist/client/assets/poimandres-DRFjx7u4.js +1 -0
  128. package/dist/client/assets/portalTarget-C60SzJiK.js +1 -0
  129. package/dist/client/assets/preload-helper-BaNbYf_w.js +1 -0
  130. package/dist/client/assets/proto-DB4EqR-F.js +1 -0
  131. package/dist/client/assets/pt-BR-LLtJ99P6.js +1 -0
  132. package/dist/client/assets/python-gzcpVVnB.js +1 -0
  133. package/dist/client/assets/r-C5FwQflr.js +1 -0
  134. package/dist/client/assets/red-DX1BQOs8.js +1 -0
  135. package/dist/client/assets/rolldown-runtime-Dd_uD5pT.js +1 -0
  136. package/dist/client/assets/rose-pine-aMsaMD1D.js +1 -0
  137. package/dist/client/assets/rose-pine-dawn-8PwUyIlP.js +1 -0
  138. package/dist/client/assets/rose-pine-moon-DO-qXg-I.js +1 -0
  139. package/dist/client/assets/ru-DvkrOLxc.js +1 -0
  140. package/dist/client/assets/ruby-CfFGiaYl.js +1 -0
  141. package/dist/client/assets/runtime-dom.esm-bundler-CqL7__VR.js +2 -0
  142. package/dist/client/assets/rust-Cfkwpbl8.js +1 -0
  143. package/dist/client/assets/scala-BiFt_7mu.js +1 -0
  144. package/dist/client/assets/scss-C-_0yqZd.js +1 -0
  145. package/dist/client/assets/shellscript-CLZ0U2zV.js +1 -0
  146. package/dist/client/assets/shiki-wasm-noop-Gxv9UHE7.js +1 -0
  147. package/dist/client/assets/slack-dark-DnToyrRv.js +1 -0
  148. package/dist/client/assets/slack-ochin-B2OO5cIa.js +1 -0
  149. package/dist/client/assets/snazzy-light-4G7pJPwS.js +1 -0
  150. package/dist/client/assets/solarized-dark-UdsmMDCL.js +1 -0
  151. package/dist/client/assets/solarized-light-C1IUL_tW.js +1 -0
  152. package/dist/client/assets/source-hSji-yvG.js +2 -0
  153. package/dist/client/assets/sql-BsFa4tDR.js +1 -0
  154. package/dist/client/assets/swift-CyEgAFGc.js +1 -0
  155. package/dist/client/assets/synthwave-84-nFMaYfgc.js +1 -0
  156. package/dist/client/assets/terraform-DswuEJGm.js +1 -0
  157. package/dist/client/assets/time-ago-Bdao9Hh1.js +1 -0
  158. package/dist/client/assets/tokyo-night-oM2G3aXe.js +1 -0
  159. package/dist/client/assets/toml-CcmNWLt0.js +1 -0
  160. package/dist/client/assets/transform-messages-C8U1xonk.js +3 -0
  161. package/dist/client/assets/tsx-DvWhG4dC.js +1 -0
  162. package/dist/client/assets/typescript-BTGs5etX.js +1 -0
  163. package/dist/client/assets/upload-GnI9kmJu.js +1 -0
  164. package/dist/client/assets/uploadSession-BUj4FNau.js +1 -0
  165. package/dist/client/assets/useDocumentTitle-nuqxXiNo.js +185 -0
  166. package/dist/client/assets/vesper-DdrHHSXu.js +1 -0
  167. package/dist/client/assets/vitesse-black-fwtXNY1n.js +1 -0
  168. package/dist/client/assets/vitesse-dark-BZCL-v6S.js +1 -0
  169. package/dist/client/assets/vitesse-light-VbXTXTou.js +1 -0
  170. package/dist/client/assets/vue-BbYmdtmv.js +1 -0
  171. package/dist/client/assets/vue-html-BXjKVtKk.js +1 -0
  172. package/dist/client/assets/vue-i18n-DVI_S4Q5.js +5 -0
  173. package/dist/client/assets/xml-BsprbK0m.js +1 -0
  174. package/dist/client/assets/yaml-rwi0_p6S.js +1 -0
  175. package/dist/client/assets/zh-CN-BIibd6kG.js +1 -0
  176. package/dist/client/assets/zh-TW-3FtUHjoZ.js +1 -0
  177. package/dist/client/favicon.svg +1 -0
  178. package/dist/client/index.html +44 -0
  179. package/dist/client/og-dark.png +0 -0
  180. package/dist/client/og.png +0 -0
  181. package/dist/client/robots.txt +2 -0
  182. package/dist/devframe-CX5butdC.mjs +493 -0
  183. package/dist/devframe.mjs +2 -0
  184. package/dist/index.mjs +59 -118
  185. package/package.json +17 -9
@@ -0,0 +1,37 @@
1
+ import{$n as e,Er as t,G as n,Nt as r,Q as i,Z as a,et as o,vn as s,zt as c}from"./vue-i18n-DVI_S4Q5.js";import{C as l,E as u,T as d,t as f,w as p,y as m}from"./useDocumentTitle-nuqxXiNo.js";import{n as h}from"./source-hSji-yvG.js";import{o as g,s as ee}from"./analyze-509KQQBC.js";import{d as te,o as _}from"./index-BCCy9wJJ.js";import{r as v}from"./dist-Dh0a8u-Y.js";import{a as y,i as b,n as x,o as S,r as ne,s as re,t as ie}from"./diffs-store-ncE62OUU.js";import{n as C,r as ae}from"./patch-parser-k3Vbbmi0.js";async function w(e,t,n,r){return(await e.request(`/repos/${t}/${n}/pulls/${r}`)).json()}function oe(e,t,n,r){return e.paginate(`/repos/${t}/${n}/pulls/${r}/files`)}function T(e,t,n,r){return e.paginate(`/repos/${t}/${n}/pulls/${r}/commits`)}function E(e){return e.split(`/`).map(encodeURIComponent).join(`/`)}async function D(e,t,n,r,i){return(await e.request(`/repos/${t}/${n}/compare/${E(r)}...${E(i)}`)).json()}async function O(e,t,n,r){return(await e.request(`/repos/${t}/${n}/commits/${E(r)}`)).json()}async function k(e,t,n,r){return(await(await e.request(`/repos/${t}/${n}/commits/${E(r)}`,{accept:`application/vnd.github.sha`})).text()).trim()}async function A(e,t){try{return await(await e.request(t,{accept:`application/vnd.github.diff`})).text()}catch(e){if(e instanceof d&&e.status===406)return;throw e}}async function j(e,t,n,r,i){let a=r.split(`/`).map(encodeURIComponent).join(`/`);try{return await(await e.request(`/repos/${t}/${n}/contents/${a}?ref=${encodeURIComponent(i)}`,{accept:`application/vnd.github.raw`})).text()}catch(e){if(e instanceof d&&e.status===404)return;throw e}}var M={added:`added`,removed:`removed`,modified:`modified`,renamed:`renamed`,copied:`copied`,changed:`modified`,unchanged:`modified`};async function N(e,t,n){let r=e.previous_filename??e.filename,[i,a]=await Promise.all([e.status===`added`||!t.base?void 0:n(r,t.base),e.status===`removed`?void 0:n(e.filename,t.head)]);return C(re(r,e.filename,i??``,a??``).split(`
2
+ `))}async function P(e,t,n,r){let i=M[e.status]??`modified`;if(e.patch!==void 0){let t=e.patch.split(`
3
+ `),n=C(t),{additions:r,deletions:a}={additions:e.additions,deletions:e.deletions};return{path:e.filename,previousPath:e.previous_filename,status:i,additions:r,deletions:a,isBinary:!1,sha:e.sha,hunks:n}}let a=await n(),o=(a===void 0?[]:await ae(a)).find(t=>t.path===e.filename||!!e.previous_filename&&t.previousPath===e.previous_filename);return o?{...o,status:i,previousPath:e.previous_filename,sha:e.sha,additions:e.additions,deletions:e.deletions}:a===void 0&&e.additions+e.deletions>0?{path:e.filename,previousPath:e.previous_filename,status:i,additions:e.additions,deletions:e.deletions,isBinary:!1,sha:e.sha,hunks:await N(e,t,r)}:{path:e.filename,previousPath:e.previous_filename,status:i,additions:e.additions,deletions:e.deletions,isBinary:!0,sha:e.sha,hunks:[]}}async function F(e,t,{loadDiffText:n,loadFileContent:r}){let i,a=()=>i??=n();return Promise.all(e.map(e=>P(e,t,a,r)))}function I(e){return e.merged?`merged`:e.state===`closed`?`closed`:e.draft?`draft`:`open`}async function L(e,t,n,r,i,a,o){return{ref:{kind:`github-pr`,owner:e,repo:t,number:n},title:r.title,label:`#${n}`,author:r.user?{name:r.user.login,avatarUrl:r.user.avatar_url}:void 0,description:r.body??``,url:r.html_url,base:{sha:r.base.sha,ref:r.base.ref},head:{sha:r.head.sha,ref:r.head.ref},createdAt:r.created_at,updatedAt:r.updated_at,pullRequest:{state:I(r)},commits:a.map(({sha:e,commit:t})=>({sha:e,message:t.message})),files:await F(i,{base:r.base.sha,head:r.head.sha},o)}}function R(e,t){return(e??[]).map(e=>({...e,sha:e.sha??`${t}:${e.filename}`}))}function z(e,t,n,r){return{loadDiffText:()=>A(e,r),loadFileContent:(r,i)=>j(e,t,n,r,i)}}function B({owner:e,repo:t,base:n,head:r},i){let a=u(i),o=h({kind:`github-compare`,owner:e,repo:t,base:n,head:r});return{key:async()=>o,async fetch(){let i=await D(a,e,t,n,r),o=i.merge_base_commit.sha,s=i.commits.at(-1)?.sha??o,c=`/repos/${e}/${t}/compare/${o}...${s}`;return{ref:{kind:`github-compare`,owner:e,repo:t,base:n,head:r},title:`${n}...${r}`,url:i.html_url,base:{sha:o,ref:n},head:{sha:s,ref:r},commits:i.commits.map(({sha:e,commit:t})=>({sha:e,message:t.message})),files:await F(R(i.files,s),{base:o,head:s},z(a,e,t,c))}},fingerprint:()=>k(a,e,t,r),loadFile:(n,r)=>j(a,e,t,n,r),auth:`github-token`}}function V({owner:e,repo:t,sha:n},r){let i=u(r),a=h({kind:`github-commit`,owner:e,repo:t,sha:n});return{key:async()=>a,async fetch(){let r=await O(i,e,t,n),[a=``,...o]=r.commit.message.split(`
4
+ `),s=r.parents[0]?.sha;return{ref:{kind:`github-commit`,owner:e,repo:t,sha:n},title:a,label:r.sha.slice(0,7),description:o.join(`
5
+ `).trim(),url:r.html_url,author:r.author?{name:r.author.login,avatarUrl:r.author.avatar_url}:r.commit.author?.name?{name:r.commit.author.name}:void 0,createdAt:r.commit.author?.date,base:s?{sha:s,ref:s.slice(0,7)}:void 0,head:{sha:r.sha,ref:r.sha.slice(0,7)},commits:[{sha:r.sha,message:r.commit.message}],files:await F(R(r.files,r.sha),{base:s,head:r.sha},z(i,e,t,`/repos/${e}/${t}/commits/${r.sha}`))}},loadFile:(n,r)=>j(i,e,t,n,r),auth:`github-token`}}async function H(e,t,n,r){return e.paginate(`/repos/${t}/${n}/pulls/${r}/comments`)}async function U(e,t,n,r){return e.paginate(`/repos/${t}/${n}/pulls/${r}/reviews`)}async function W(e,t,n,r,i){return e.paginate(`/repos/${t}/${n}/pulls/${r}/reviews/${i}/comments`)}async function G(e,t,n,r,i){await e.request(`/repos/${t}/${n}/pulls/${r}/comments`,{method:`POST`,body:{body:i.body,commit_id:i.commitId,path:i.path,side:i.side,line:i.line,start_line:i.startLine,start_side:i.startSide}})}async function K(e,t,n,r,i){await e.request(`/repos/${t}/${n}/pulls/${r}/reviews`,{method:`POST`,body:{commit_id:i.commitId,comments:[{path:i.path,body:i.body,side:i.side,line:i.line,start_line:i.startLine,start_side:i.startSide}]}})}async function q(e,t,n,r,i,a){await e.request(`/repos/${t}/${n}/pulls/${r}/comments/${i}/replies`,{method:`POST`,body:{body:a}})}async function se(e,t,n,r,i){await e.request(`/repos/${t}/${n}/pulls/comments/${r}`,{method:`PATCH`,body:{body:i}})}async function ce(e,t,n,r){await e.request(`/repos/${t}/${n}/pulls/comments/${r}`,{method:`DELETE`})}async function le(e,t,n,r,i,a,o){await e.request(`/repos/${t}/${n}/pulls/${r}/reviews/${i}/events`,{method:`POST`,body:{event:a,body:o}})}async function ue(e,t,n,r,i,a){await e.request(`/repos/${t}/${n}/pulls/${r}/reviews`,{method:`POST`,body:{event:i,body:a}})}async function de(e,t,n,r,i){await e.request(`/repos/${t}/${n}/pulls/${r}/reviews/${i}`,{method:`DELETE`})}var fe=`
6
+ query ReviewThreads($owner: String!, $repo: String!, $number: Int!, $cursor: String) {
7
+ repository(owner: $owner, name: $repo) {
8
+ pullRequest(number: $number) {
9
+ reviewThreads(first: 100, after: $cursor) {
10
+ pageInfo { hasNextPage endCursor }
11
+ nodes {
12
+ id
13
+ isResolved
14
+ comments(first: 1) { nodes { fullDatabaseId } }
15
+ }
16
+ }
17
+ }
18
+ }
19
+ }`;async function pe(e,t,n,r){let i=new Map,a=null;for(;;){let o=(await e.graphql(fe,{owner:t,repo:n,number:Number(r),cursor:a})).repository?.pullRequest?.reviewThreads;if(!o)break;for(let e of o.nodes){let t=e.comments.nodes[0]?.fullDatabaseId;t!=null&&i.set(Number(t),{threadId:e.id,isResolved:e.isResolved})}if(!o.pageInfo.hasNextPage)break;a=o.pageInfo.endCursor}return i}var me=`
20
+ mutation ResolveThread($threadId: ID!) {
21
+ resolveReviewThread(input: { threadId: $threadId }) {
22
+ thread { id isResolved }
23
+ }
24
+ }`;async function he(e,t){await e.graphql(me,{threadId:t})}var ge=`
25
+ mutation AddPendingThread($reviewId: ID!, $path: String!, $body: String!, $line: Int!, $side: DiffSide!, $startLine: Int, $startSide: DiffSide) {
26
+ addPullRequestReviewThread(input: {
27
+ pullRequestReviewId: $reviewId,
28
+ path: $path,
29
+ body: $body,
30
+ line: $line,
31
+ side: $side,
32
+ startLine: $startLine,
33
+ startSide: $startSide
34
+ }) {
35
+ thread { id }
36
+ }
37
+ }`;function J(e){return e===`additions`?`RIGHT`:`LEFT`}async function _e(e,t,n,r){await e.graphql(ge,{reviewId:t,path:n.path,body:r,line:n.line,side:J(n.side),startLine:n.startLine??null,startSide:n.startSide?J(n.startSide):null})}function Y(e){return e===`LEFT`?`deletions`:`additions`}function X(e){return e?{login:e.login,avatarUrl:e.avatar_url}:void 0}var ve={APPROVED:`approved`,CHANGES_REQUESTED:`changes_requested`,COMMENTED:`commented`,DISMISSED:`dismissed`};function Z(e){let t=new Map;function n(n,r){let i=n.in_reply_to_id??n.id,a=t.get(i);if(!a){let o=e.resolutions?.get(i);a={rootId:i,path:n.path,side:Y(n.side),line:n.line??void 0,startLine:n.start_line??void 0,startSide:n.start_side?Y(n.start_side):void 0,outdated:n.line==null,resolved:o?.isResolved,threadId:o?.threadId,pending:r,comments:[]},t.set(i,a)}a.comments.push({id:n.id,author:X(n.user),body:n.body,createdAt:n.created_at,url:n.html_url,pending:r})}for(let t of e.comments)n(t,!1);for(let t of e.pendingComments)n(t,!0);let r=[],i;for(let t of e.reviews){if(t.state===`PENDING`){i={id:t.id,nodeId:t.node_id,body:t.body??``};continue}if(t.state===`COMMENTED`&&!t.body)continue;let e=ve[t.state];e&&r.push({id:t.id,author:X(t.user),state:e,body:t.body??``,submittedAt:t.submitted_at,url:t.html_url})}return{threads:[...t.values()],summaries:r,pendingReview:i}}async function Q(e){try{return await e()}catch(e){throw e instanceof d&&e.status===403?p.writeForbidden({reason:e.message}):e}}function $(e){return e===`additions`?`RIGHT`:`LEFT`}function ye(e,{owner:t,repo:n,number:r}){return{async fetch(){let[i,a]=await Promise.all([H(e,t,n,r),U(e,t,n,r)]),o=a.find(e=>e.state===`PENDING`),[s,c]=await Promise.all([o?W(e,t,n,r,o.id):Promise.resolve([]),await e.token()?pe(e,t,n,r).catch(()=>void 0):Promise.resolve(void 0)]);return Z({comments:i,reviews:a,pendingComments:s,resolutions:c})},addComment:({target:i,body:a,mode:o,headSha:s,pendingReview:c})=>Q(async()=>{if(o===`review`&&c)return _e(e,c.nodeId,i,a);let l={body:a,commitId:s,path:i.path,side:$(i.side),line:i.line,startLine:i.startLine,startSide:i.startSide?$(i.startSide):void 0};return o===`review`?K(e,t,n,r,l):G(e,t,n,r,l)}),reply:(i,a)=>Q(()=>q(e,t,n,r,i,a)),editComment:(r,i)=>Q(()=>se(e,t,n,r,i)),deleteComment:r=>Q(()=>ce(e,t,n,r)),resolveThread:t=>Q(()=>he(e,t)),submitReview:(i,a,o)=>Q(()=>o?le(e,t,n,r,o.id,i,a):ue(e,t,n,r,i,a)),discardPendingReview:i=>Q(()=>de(e,t,n,r,i.id))}}function be(e,t){return{list:()=>b(e,t),upsert:(n,r,i)=>Q(async()=>{let a=y(t,n,r);if(i)try{return await S(e,t,i.id,a)}catch(e){if(!(e instanceof d&&e.status===404))throw e}let o=(await b(e,t)).find(e=>e.login===n);return o?S(e,t,o.id,a):ne(e,t,a)})}}function xe(e){return e.length===0||e.includes(`repo`)||e.includes(`public_repo`)}function Se({owner:e,repo:t,number:n},r,{tokenMeta:i=l}={}){let a=u(r),o=h({kind:`github-pr`,owner:e,repo:t,number:n});return{key:async()=>o,async fetch(){let[r,i,o]=await Promise.all([w(a,e,t,n),oe(a,e,t,n),T(a,e,t,n)]);return L(e,t,n,r,i,o,{loadDiffText:()=>A(a,`/repos/${e}/${t}/pulls/${n}`),loadFileContent:(n,r)=>j(a,e,t,n,r)})},fingerprint:async()=>(await w(a,e,t,n)).head.sha,loadFile:(n,r)=>j(a,e,t,n,r),async viewer(){let e=await a.token(),t=e?await i(e):void 0;return t&&{login:t.login,canWrite:xe(t.scopes)}},reviews:ye(a,{owner:e,repo:t,number:n}),sharing:be(a,{owner:e,repo:t,number:n}),auth:`github-token`}}function Ce(e,t,n){switch(e.kind){case`github-pr`:return Se(e,t,n);case`github-compare`:return B(e,t);case`github-commit`:return V(e,t)}}var we=o({__name:`diff`,props:{sourceRef:{}},setup(o){let l=o,u=_(),{cache:d,credentials:p}=te(),h=l.sourceRef,y=typeof u.query.from==`string`?u.query.from:void 0,b=ie(Ce(h,p,{tokenMeta:m}),{cache:d,from:y});return f(()=>{let e=b.diff;return e?e.label?`${e.title} (${e.label})`:e.title:`${h.owner}/${h.repo}`}),r(()=>b.load()),(r,o)=>(c(),n(`main`,null,[i(x,{store:e(b)},{loading:s(()=>[i(g,{text:r.$t(`pr.loading`)},null,8,[`text`])]),error:s(({error:e,retry:n})=>[i(ee,{icon:`i-ph:warning-duotone`,title:r.$t(`pr.loadFailed`)},{hint:s(()=>[a(t(e.message),1)]),actions:s(()=>[i(v,{variant:`primary`,onClick:n},{default:s(()=>[a(t(r.$t(`common.retry`)),1)]),_:1},8,[`onClick`])]),_:2},1032,[`title`])]),_:1},8,[`store`])]))}});export{we as default};
@@ -0,0 +1 @@
1
+ import{$n as e,Er as t,G as n,Nt as r,Q as i,Z as a,et as o,vn as s,yt as c,zt as l}from"./vue-i18n-DVI_S4Q5.js";import{t as u}from"./useDocumentTitle-nuqxXiNo.js";import{o as d,s as f}from"./analyze-509KQQBC.js";import{d as p}from"./index-BCCy9wJJ.js";import{r as m}from"./dist-Dh0a8u-Y.js";import{n as h,t as g}from"./diffs-store-ncE62OUU.js";import{a as _,i as v,r as y}from"./pages-B5mEqsbn.js";import{t as b}from"./install-B-q5w2uE.js";var x=o({__name:`diff`,props:{page:{}},setup(o){let x=o,S=c(_),{cache:C}=p(),w=g(b(S,v(x.page,S)),{cache:C});return u(()=>w.diff?.title??y(x.page)),r(()=>w.load()),(r,o)=>(l(),n(`main`,null,[i(h,{store:e(w)},{loading:s(()=>[i(d,{text:r.$t(`local.loading`)},null,8,[`text`])]),error:s(({error:e,retry:n})=>[i(f,{icon:`i-ph:warning-duotone`,title:r.$t(`local.loadFailed`)},{hint:s(()=>[a(t(e.message),1)]),actions:s(()=>[i(m,{variant:`primary`,onClick:n},{default:s(()=>[a(t(r.$t(`common.retry`)),1)]),_:1},8,[`onClick`])]),_:2},1032,[`title`])]),_:1},8,[`store`])]))}});export{x as default};
@@ -0,0 +1 @@
1
+ var e=[Object.freeze(JSON.parse(`{"displayName":"Diff","name":"diff","patterns":[{"captures":{"1":{"name":"punctuation.definition.separator.diff"}},"match":"^((\\\\*{15})|(={67})|(-{3}))$\\\\n?","name":"meta.separator.diff"},{"match":"^\\\\d+(,\\\\d+)*([acd])\\\\d+(,\\\\d+)*$\\\\n?","name":"meta.diff.range.normal"},{"captures":{"1":{"name":"punctuation.definition.range.diff"},"2":{"name":"meta.toc-list.line-number.diff"},"3":{"name":"punctuation.definition.range.diff"}},"match":"^(@@)\\\\s*(.+?)\\\\s*(@@)($\\\\n?)?","name":"meta.diff.range.unified"},{"captures":{"3":{"name":"punctuation.definition.range.diff"},"4":{"name":"punctuation.definition.range.diff"},"6":{"name":"punctuation.definition.range.diff"},"7":{"name":"punctuation.definition.range.diff"}},"match":"^(((-{3}) .+ (-{4}))|((\\\\*{3}) .+ (\\\\*{4})))$\\\\n?","name":"meta.diff.range.context"},{"match":"^diff --git a/.*$\\\\n?","name":"meta.diff.header.git"},{"match":"^diff (-|\\\\S+\\\\s+\\\\S+).*$\\\\n?","name":"meta.diff.header.command"},{"captures":{"4":{"name":"punctuation.definition.from-file.diff"},"6":{"name":"punctuation.definition.from-file.diff"},"7":{"name":"punctuation.definition.from-file.diff"}},"match":"^((((-{3}) .+)|((\\\\*{3}) .+))$\\\\n?|(={4}) .+(?= - ))","name":"meta.diff.header.from-file"},{"captures":{"2":{"name":"punctuation.definition.to-file.diff"},"3":{"name":"punctuation.definition.to-file.diff"},"4":{"name":"punctuation.definition.to-file.diff"}},"match":"(^(\\\\+{3}) .+$\\\\n?| (-) .* (={4})$\\\\n?)","name":"meta.diff.header.to-file"},{"captures":{"3":{"name":"punctuation.definition.inserted.diff"},"6":{"name":"punctuation.definition.inserted.diff"}},"match":"^(((>)( .*)?)|((\\\\+).*))$\\\\n?","name":"markup.inserted.diff"},{"captures":{"1":{"name":"punctuation.definition.changed.diff"}},"match":"^(!).*$\\\\n?","name":"markup.changed.diff"},{"captures":{"3":{"name":"punctuation.definition.deleted.diff"},"6":{"name":"punctuation.definition.deleted.diff"}},"match":"^(((<)( .*)?)|((-).*))$\\\\n?","name":"markup.deleted.diff"},{"begin":"^(#)","captures":{"1":{"name":"punctuation.definition.comment.diff"}},"end":"\\\\n","name":"comment.line.number-sign.diff"},{"match":"^index [0-9a-f]{7,40}\\\\.\\\\.[0-9a-f]{7,40}.*$\\\\n?","name":"meta.diff.index.git"},{"captures":{"1":{"name":"punctuation.separator.key-value.diff"},"2":{"name":"meta.toc-list.file-name.diff"}},"match":"^Index(:) (.+)$\\\\n?","name":"meta.diff.index"},{"match":"^Only in .*: .*$\\\\n?","name":"meta.diff.only-in"}],"scopeName":"source.diff"}`))];export{e as default};