class SafariBookmarksParser::Services::FindDuplicatedBookmarks

Public Class Methods

call(bookmarks:) click to toggle source
# File lib/safari_bookmarks_parser/services/find_duplicated_bookmarks.rb, line 6
def self.call(bookmarks:)
  cache = Hash.new {|hash, key| hash[key] = [] }

  bookmarks.to_a.each do |bookmark|
    key = bookmark.url.sub(%r{\Ahttps?://}, '')
    cache[key] << bookmark
  end

  cache.select {|_, value| value.size > 1 }.values
end