Sha256: 9242d27bf43205b719ebe510daa39a2b23ebce51c5db7ba7609077b913b3a115

Contents?: true

Size: 855 Bytes

Versions: 71

Compression:

Stored size: 855 Bytes

Contents

require 'erb'

module Pact
  module Doc
    module Markdown
      class IndexRenderer

        attr_reader :consumer_name
        attr_reader :docs # Hash of pact title => file_name

        def initialize consumer_name, docs
          @consumer_name = consumer_name
          @docs = docs
        end

        def self.call consumer_name, docs
          new(consumer_name, docs).call
        end

        def call
          title + "\n\n" + table_of_contents + "\n"
        end

        private

        def table_of_contents
          docs.collect do | title, file_name |
            item title, file_name
          end.join("\n")
        end

        def title
          "### Pacts for #{consumer_name}"
        end

        def item title, file_name
          "* [#{title}](#{ERB::Util.url_encode(file_name)})"
        end

      end
    end
  end
end

Version data entries

71 entries across 71 versions & 1 rubygems

Version Path
pact-1.66.1 lib/pact/doc/markdown/index_renderer.rb
pact-1.66.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.65.3 lib/pact/doc/markdown/index_renderer.rb
pact-1.65.2 lib/pact/doc/markdown/index_renderer.rb
pact-1.65.1 lib/pact/doc/markdown/index_renderer.rb
pact-1.65.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.64.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.63.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.62.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.61.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.60.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.59.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.58.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.57.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.56.0 lib/pact/doc/markdown/index_renderer.rb
pact-1.55.7 lib/pact/doc/markdown/index_renderer.rb
pact-1.55.6 lib/pact/doc/markdown/index_renderer.rb
pact-1.55.5 lib/pact/doc/markdown/index_renderer.rb
pact-1.55.4 lib/pact/doc/markdown/index_renderer.rb
pact-1.55.3 lib/pact/doc/markdown/index_renderer.rb