module StimulusReflex::Callbacks
Public Instance Methods
add_callback(kind, *args, &block)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 27 def add_callback(kind, *args, &block) options = args.extract_options! options.assert_valid_keys :if, :unless, :only, :except set_callback(*[:process, kind, args, normalize_callback_options!(options)].flatten, &block) end
after_reflex(*args, &block)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 17 def after_reflex(*args, &block) add_callback(:after, *args, &block) end
around_reflex(*args, &block)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 21 def around_reflex(*args, &block) add_callback(:around, *args, &block) end
before_reflex(*args, &block)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 13 def before_reflex(*args, &block) add_callback(:before, *args, &block) end
normalize_callback_option!(options, from, to)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 39 def normalize_callback_option!(options, from, to) if (from = options.delete(from)) from_set = Array(from).map(&:to_s).to_set from = proc { |reflex| from_set.include? reflex.method_name } options[to] = Array(options[to]).unshift(from) end end
normalize_callback_options!(options)
click to toggle source
# File lib/stimulus_reflex/callbacks.rb, line 33 def normalize_callback_options!(options) normalize_callback_option! options, :only, :if normalize_callback_option! options, :except, :unless options end