Sha256: 41db7a948f038f248a7e8c8774800ce214dc865cf81952a0a9d0e6234b684540

Contents?: true

Size: 931 Bytes

Versions: 5

Compression:

Stored size: 931 Bytes

Contents

# frozen_string_literal: true

module Ruby2html
  class TemplateHandler
    class_attribute :default_format
    self.default_format = :html

    def self.call(template, source)
      <<-RUBY
begin
previous_renderer = Thread.current[:__ruby2html_renderer__]
renderer = Ruby2html::Render.new(self) do
#{source}
end
Thread.current[:__ruby2html_renderer__] = renderer
renderer.__render_from_rails(#{template.identifier.inspect})
ensure
Thread.current[:__ruby2html_renderer__] = previous_renderer
end
      RUBY
    end

    def self.handles_encoding?
      true
    end
  end

  class Railtie < Rails::Railtie
    initializer 'ruby2html.initializer' do
      Rails.autoloaders.main.ignore(
        Rails.root.join('app/views/**/*.html.rb'),
        Rails.root.join('app/components/**/*.html.rb')
      )
    end
  end
end

ActionView::Template.register_template_handler :rb, Ruby2html::TemplateHandler if defined? ActionView::Template

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ruby2html-1.6.1 lib/gem/ruby2html/railtie.rb
ruby2html-1.6.0 lib/gem/ruby2html/railtie.rb
ruby2html-1.5.8 lib/gem/ruby2html/railtie.rb
ruby2html-1.5.7 lib/gem/ruby2html/railtie.rb
ruby2html-1.5.6 lib/gem/ruby2html/railtie.rb