Class: Milestoner::Builders::Site::Indexer

Inherits:
Object
  • Object
show all
Defined in:
lib/milestoner/builders/site/indexer.rb

Overview

Builds web index.

Instance Method Summary collapse

Constructor Details

#initialize(path_resolver: PathResolver, view: Views::Milestones::Index.new) ⇒ Indexer

Returns a new instance of Indexer.



13
14
15
16
17
# File 'lib/milestoner/builders/site/indexer.rb', line 13

def initialize(path_resolver: PathResolver, view: Views::Milestones::Index.new, **)
  super(**)
  @path_resolver = path_resolver
  @view = view
end

Instance Method Details

#call(tags) ⇒ Object



19
20
21
22
23
24
25
26
# File 'lib/milestoner/builders/site/indexer.rb', line 19

def call tags
  return Success() unless settings.build_index

  path_resolver.call settings.build_output.join("index.html"), logger: do |path|
    settings.project_version = nil
    path.write view.call(tags:, layout: settings.build_layout)
  end
end