module Material::Site
Public Instance Methods
default_parent()
click to toggle source
# File lib/material/concerns/site.rb, line 37 def default_parent nil end
register_materialize_component(key, default_value_method = nil)
click to toggle source
# File lib/material/concerns/site.rb, line 14 def register_materialize_component(key, default_value_method = nil) register_component(key) { public_send(default_value_method) } define_method(key) do value = public_send("#{key}_value".to_sym) Material::Base.for(value) unless value.nil? end end
register_path_component(key, route_key_method)
click to toggle source
# File lib/material/concerns/site.rb, line 22 def register_path_component(key, route_key_method) register_component(route_key_method) { try(:model_name)&.public_send(route_key_method) } register_component(key) do route_key = public_send(route_key_method) "#{route_key}_path".to_sym if route_key.present? end define_method("#{key}?") do return false unless defined?(Rails) Rails.application.routes.url_helpers.respond_to?(public_send("#{key}_value".to_sym)) end end