Sha256: 2ab3beb47033e692ce4513224ebf945f68d585011fa4167695509cdecf528379

Contents?: true

Size: 421 Bytes

Versions: 2

Compression:

Stored size: 421 Bytes

Contents

module ViewComponentHelper
  module ViewHelper
    def render_view_component(path, *args, **kwargs, &)
      render component_class_for(path).new(*args, **kwargs, &)
    end

    alias render_vc render_view_component

    private

    def component_class_for(path)
      class_names = path.to_s.split("/")
      component_name = class_names.map(&:capitalize).join("::")

      component_name.constantize
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
view_component_helper-0.2.0 lib/view_component_helper/view_helper.rb
view_component_helper-0.1.0 lib/view_component_helper/view_helper.rb