Sha256: 62ed9ae63f2dd4665e29422da46f4ff8feb0cb6b0c78164d20d1cbe0bee490a5

Contents?: true

Size: 947 Bytes

Versions: 17

Compression:

Stored size: 947 Bytes

Contents

# frozen_string_literal: true

module Vedeu

  module Renderers

    # Renders a {Vedeu::Buffers::Terminal} as a HTML snippet; a table
    # by default.
    #
    class HTML < Vedeu::Renderers::File

      include Vedeu::Renderers::Options

      # @return [String]
      def html_body
        if valid?
          output.inject([]) do |acc, line|
            acc << "#{start_row_tag}\n"
            line.each do |char|
              acc << char.to_html(options)
            end
            acc << "#{end_row_tag}\n"
          end.join

        else
          ''

        end
      end

      private

      # @return [String]
      def content
        if valid?
          Vedeu::Templating::Template.parse(self, template)

        else
          ''

        end
      end

      # @return [Boolean]
      def valid?
        return false if string?(output) || escape?(output)

        true
      end

    end # HTML

  end # Renderers

end # Vedeu

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
vedeu-0.8.23 lib/vedeu/renderers/html.rb
vedeu-0.8.22 lib/vedeu/renderers/html.rb
vedeu-0.8.21 lib/vedeu/renderers/html.rb
vedeu-0.8.20 lib/vedeu/renderers/html.rb
vedeu-0.8.19 lib/vedeu/renderers/html.rb
vedeu-0.8.18 lib/vedeu/renderers/html.rb
vedeu-0.8.17 lib/vedeu/renderers/html.rb
vedeu-0.8.16 lib/vedeu/renderers/html.rb
vedeu-0.8.15 lib/vedeu/renderers/html.rb
vedeu-0.8.14 lib/vedeu/renderers/html.rb
vedeu-0.8.13 lib/vedeu/renderers/html.rb
vedeu-0.8.12 lib/vedeu/renderers/html.rb
vedeu-0.8.10 lib/vedeu/renderers/html.rb
vedeu-0.8.9 lib/vedeu/renderers/html.rb
vedeu-0.8.8 lib/vedeu/renderers/html.rb
vedeu-0.8.7 lib/vedeu/renderers/html.rb
vedeu-0.8.6 lib/vedeu/renderers/html.rb