# @META_START # source_url: https://demo.opengist.io/demo/055d22e580e24e3797bca862cefbea7e # filename: uniquify_array.rb # version: 0.1 # @META_END # Make an array of hashes contain a unique value for key: def uniquify_array(array, key) array.group_by { |item| item[key] }.map do |_, items| (items.length > 1) ? yield(items) : items.first end end # new_array = uniquify_array(array, :some_key) do |dupes| # dupes.max_by { |item| item[:updated_at] } # end