Sha256: 33acdb96507137211bf40426b009f703bb193ff7b29f960c14024ec1bb219a1f

Contents?: true

Size: 562 Bytes

Versions: 1

Compression:

Stored size: 562 Bytes

Contents

require_relative '../base_node_renderer'

module StructuredTextRenderer
  # Base renderer for block type nodes
  class BaseBlockRenderer < BaseNodeRenderer
    # Renders block type nodes.
    def render(node)
      "<#{render_tag}>#{render_content(node)}</#{render_tag}>"
    end

    protected

    def render_content(node)
      node['content'].each_with_object([]) do |content_node, result|
        renderer = find_renderer(content_node)
        result << renderer.render(content_node)
      end.join
    end

    def render_tag
      'div'
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
structured_text_renderer-0.0.2 lib/structured_text_renderer/block_renderers/base_block_renderer.rb