Module: Slotify::TagOptionsMerger

Extended by:
ActionView::Helpers::TagHelper
Defined in:
lib/slotify/services/tag_options_merger.rb

Class Method Summary collapse

Class Method Details

.call(original, target) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/slotify/services/tag_options_merger.rb', line 6

def call(original, target)
  original = original.to_h.deep_symbolize_keys
  target = target.to_h.deep_symbolize_keys

  target.each do |key, value|
    original[key] = case key
    when :data
      merge_data_options(original[key], value)
    when :class
      merge_class_options(original[key], value)
    else
      value
    end
  end

  original
end