class Middleman::Sources
def run_callbacks(callback_descriptors, updated_files, removed_files)
def run_callbacks(callback_descriptors, updated_files, removed_files) callback_descriptors.each do |callback| if callback[:type] == :all callback[:proc].call(updated_files, removed_files) else valid_updated = updated_files.select { |f| f[:types].include?(callback[:type]) } valid_removed = removed_files.select { |f| f[:types].include?(callback[:type]) } callback[:proc].call(valid_updated, valid_removed) unless valid_updated.empty? && valid_removed.empty? end end end