# encoding: utf-8moduleGithubclassClient::PullRequests::Comments<API# List comments on a pull request## @example# github = Github.new# github.pull_requests.comments.list 'user-name', 'repo-name', number: 'id'## List comments in a repository## By default, Review Comments are ordered by ascending ID.## @param [Hash] params# @input params [String] :sort# Optional string. Can be either created or updated. Default: created# @input params [String] :direction# Optional string. Can be either asc or desc. Ignored without sort parameter# @input params [String] :since# Optional string of a timestamp in ISO 8601# format: YYYY-MM-DDTHH:MM:SSZ# @example# github = Github.new# github.pull_requests.comments.list 'user-name', 'repo-name'# github.pull_requests.comments.list 'user-name', 'repo-name' { |comm| ... }## @api publicdeflist(*args)arguments(args,required: [:user,:repo])params=arguments.paramsuser=arguments.userrepo=arguments.reporesponse=if(number=params.delete('number'))get_request("/repos/#{user}/#{repo}/pulls/#{number}/comments",params)elseget_request("/repos/#{user}/#{repo}/pulls/comments",params)endreturnresponseunlessblock_given?response.each{|el|yieldel}endalias_method:all,:list# Get a single comment for pull requests## @example# github = Github.new# github.pull_requests.comments.get 'user-name', 'repo-name', 'number'## @example# github.pull_requests.comments.get# user: 'user-name',# repo: 'repo-name',# number: 'comment-number## @api publicdefget(*args)arguments(args,required: [:user,:repo,:number])get_request("/repos/#{arguments.user}/#{arguments.repo}/pulls/comments/#{arguments.number}",arguments.params)endalias_method:find,:get# Create a pull request comment## @param [Hash] params# @option params [String] :body# Required string. The text of the comment.# @option params [String] :commit_id# Required string - The SHA of the commit to comment on.# @option params [String] :path# Required string. The relative path of the file to comment on.# @option params [Number] :position# Required number. The line index in the diff to comment on.## @example# github = Github.new# github.pull_requests.comments.create 'user-name', 'repo-name', 'number',# body: "Nice change",# commit_id: "6dcb09b5b57875f334f61aebed695e2e4193db5e",# path: "file1.txt",# position: 4## Alternative Inputs## Instead of passing commit_id, path, and position you can reply to# an existing Pull Request Comment like this# @option params [String] :body# Required string. The text of the comment.# @option params [Number] :in_reply_to# Required number. The comment id to reply to.## @example# github = Github.new# github.pull_requests.comments.create 'user-name','repo-name', 'number',# body: "Nice change",# in_reply_to: 4## @api publicdefcreate(*args)arguments(args,required: [:user,:repo,:number])post_request("/repos/#{arguments.user}/#{arguments.repo}/pulls/#{arguments.number}/comments",arguments.params)end# Edit a pull request comment## @param [Hash] params# @option params [String] :body# Required string. The text of the comment.## @example# github = Github.new# github.pull_requests.comments.edit 'user-name', 'repo-name', 'number',# body: "Nice change"## @api publicdefedit(*args)arguments(args,required: [:user,:repo,:number])patch_request("/repos/#{arguments.user}/#{arguments.repo}/pulls/comments/#{arguments.number}",arguments.params)end# Delete a pull request comment## @example# github = Github.new# github.pull_requests.comments.delete 'user-name', 'repo-name', 'number'## @api publicdefdelete(*args)arguments(args,required: [:user,:repo,:number])delete_request("/repos/#{arguments.user}/#{arguments.repo}/pulls/comments/#{arguments.number}",arguments.params)endend# PullRequests::Commentsend# Github