class JiraCommand::Prompt::Base
Attributes
config[W]
prompt[W]
Public Class Methods
new()
click to toggle source
# File lib/jira_command/prompt/base.rb, line 12 def initialize @prompt = TTY::Prompt.new @config = JiraCommand::Config.new.read end
Public Instance Methods
select_board(message: 'Please select board', refresh: false)
click to toggle source
# File lib/jira_command/prompt/base.rb, line 17 def select_board(message: 'Please select board', refresh: false) baord_list = if @config[:boards].nil? || refresh agile_board = JiraCommand::Jira::Board.new(@config) agile_board.list else @config[:boards] end @prompt.select(message) do |menu| baord_list.each do |item| menu.choice name: item[:name], value: item[:id] end end end
select_issue_type(message:, refresh: false)
click to toggle source
# File lib/jira_command/prompt/base.rb, line 32 def select_issue_type(message:, refresh: false) issue_types = if @config[:issue_types].nil? || refresh jira_issue_type = JiraCommand::Jira::IssueType.new(@config) jira_issue_type.list else @config[:issue_types] end @prompt.select(message) do |menu| issue_types.each do |item| menu.choice name: item[:name], value: { id: item[:id], name: item[:name] } end end end
select_project(message:, refresh: false)
click to toggle source
# File lib/jira_command/prompt/base.rb, line 47 def select_project(message:, refresh: false) projects = if @config[:projects].nil? || refresh jira_project = JiraCommand::Jira::Project.new(@config) jira_project.list else @config[:projects] end @prompt.select(message) do |menu| projects.each do |item| menu.choice name: item[:name], value: { id: item[:id], key: item[:key] } end end end
select_sprint(message: 'Please select sprint:', board_id:, state: 'active,future')
click to toggle source
# File lib/jira_command/prompt/base.rb, line 83 def select_sprint(message: 'Please select sprint:', board_id:, state: 'active,future') jira_sprint = JiraCommand::Jira::Sprint.new(@config) res = jira_sprint.list( board_id: board_id, query: { state: state } ) @prompt.select(message) do |menu| res.each do |item| menu.choice name: item[:name], value: item[:id] end end end
select_user(message:, project_key: nil, refresh: false, additional: [])
click to toggle source
# File lib/jira_command/prompt/base.rb, line 62 def select_user(message:, project_key: nil, refresh: false, additional: []) user_list = if @config[:users].nil? || refresh user_api = JiraCommand::Jira::User.new(@config) user_api.all_list(project: project_key) else @config[:users] end @prompt.select(message) do |menu| additional.each do |item| menu.choice name: item[:name], value: item[:account_id] end user_list.each do |item| menu.choice name: item[:name], value: item[:account_id] end end end