Sha256: bdc992d26f2400d947150e013301426cf268c1e784fa66589c4065e565b84531
Contents?: true
Size: 1.43 KB
Versions: 3
Compression:
Stored size: 1.43 KB
Contents
# frozen_string_literal: true require_relative '../../command' module Dri module Commands class Rm class Emoji < Dri::Command def initialize(options) @options = options end def execute(input: $stdin, output: $stdout) # rubocop:disable Metrics/AbcSize verify_config_exists remove = prompt.yes? "Are you sure you want to remove all #{emoji} award emojis from issues?" unless remove logger.info "Emojis kept in place 👍" exit 0 end logger.info "Removing #{emoji} from issues..." spinner.start issues_with_award_emoji = api_client.fetch_triaged_failures(emoji: emoji, state: 'opened') spinner.stop issues_with_award_emoji.each do |issue| logger.info "Removing #{emoji} from #{issue['web_url']}..." award_emoji_url = issue["_links"]["award_emoji"] response = api_client.fetch_awarded_emojis(award_emoji_url) emoji_found = response.find { |e| e['name'] == emoji && e['user']['username'] == username } unless emoji_found.nil? url = "#{award_emoji_url}/#{emoji_found['id']}" api_client.delete_award_emoji(url) end end output.puts "Done! ✅" logger.success "Removed #{emoji} from #{issues_with_award_emoji.size} issue(s)." end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
dri-0.3.1 | lib/dri/commands/rm/emoji.rb |
dri-0.3.0 | lib/dri/commands/rm/emoji.rb |
dri-0.2.0 | lib/dri/commands/rm/emoji.rb |