class Lookbook::PreviewCollection

def reload_changed(code_objects, changes)

def reload_changed(code_objects, changes)
  modified = Array(changes[:modified])
  removed = Array(changes[:removed]) + modified
  added = Array(changes[:added]) + modified
  remove_by_file_path(removed)
  previews = added.map do |path|
    code_object = code_objects.find { |obj| obj if obj&.file.to_s == path.to_s }
    PreviewCollection.preview_from_code_object(code_object) if code_object
  end.compact
  add(previews)
end