Optimize map { ... }.compact calls (#15513)
* Optimize map { ... }.compact
using Enumerable#filter_map, supported since Ruby 2.7
* Add poyfill for Enumerable#filter_map
			
			
This commit is contained in:
		@@ -14,7 +14,7 @@ class StatusRelationshipsPresenter
 | 
			
		||||
    else
 | 
			
		||||
      statuses            = statuses.compact
 | 
			
		||||
      status_ids          = statuses.flat_map { |s| [s.id, s.reblog_of_id] }.uniq.compact
 | 
			
		||||
      conversation_ids    = statuses.map(&:conversation_id).compact.uniq
 | 
			
		||||
      conversation_ids    = statuses.filter_map(&:conversation_id).uniq
 | 
			
		||||
      pinnable_status_ids = statuses.map(&:proper).select { |s| s.account_id == current_account_id && %w(public unlisted).include?(s.visibility) }.map(&:id)
 | 
			
		||||
 | 
			
		||||
      @reblogs_map     = Status.reblogs_map(status_ids, current_account_id).merge(options[:reblogs_map] || {})
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user