590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
|
# File 'lib/pureapi/controller.rb', line 590
def merge_includes(target ,source)
result = {}
target.each do |k, v|
result[k] = {}
if v.is_a?(Hash) && source[k].is_a?(Hash)
if source[k][:only].is_a?(Array)
result[k][:only] = v[:only].is_a?(Array) ? (v[:only] & source[k][:only]) : source[k][:only]
end
if v[:include].is_a?(Hash) && source[k][:include].is_a?(Hash)
result[k][:include] = merge_includes(v[:include], source[k][:include])
end
end
end
result.delete_if { |k, v| v.blank? }
end
|