Class: Avm::EacAsciidoctorBase0::Instances::Build::Document::HeaderLines

Inherits:
Object
  • Object
show all
Defined in:
lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb

Constant Summary collapse

ATTRIBUTES =
['Author Initials', 'toc', 'icons', 'numbered', 'website'].freeze
TOC =
'left'
ICONS =
''
NUMBERED =
''

Instance Method Summary collapse

Instance Method Details

#attribute_line(name, value) ⇒ String

Returns:

  • (String)


26
27
28
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 26

def attribute_line(name, value)
  [":#{name}:", value].reject(&:blank?).join(' ')
end

#attribute_value(attr) ⇒ Object



34
35
36
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 34

def attribute_value(attr)
  setting_value(attr.variableize)
end

#attributes_linesObject



30
31
32
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 30

def attributes_lines
  ATTRIBUTES.map { |attr| attribute_line(attr, attribute_value(attr)) }
end

#author_initialsObject



38
39
40
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 38

def author_initials
  instance.author_name_initials
end

#author_lineObject



42
43
44
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 42

def author_line
  "#{author_name} <#{author_email}>"
end

Returns:

  • (String)


47
48
49
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 47

def breadcrumbs_lines
  ['[.normal]', document.macro_lines(:breadcrumbs)]
end

#resultArray<String>

Returns:

  • (Array<String>)


52
53
54
55
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 52

def result
  [stylesheet_line, title_line, author_line] + attributes_lines + [''] +
    breadcrumbs_lines
end

#stylesheet_lineString

Returns:

  • (String)


58
59
60
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 58

def stylesheet_line
  attribute_line('stylesheet', stylesheet_path)
end

#stylesheet_pathPathname

Returns:

  • (Pathname)


63
64
65
66
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 63

def stylesheet_path
  source_document.source.theme_stylesheet_path
                 .relative_path_from(document.convert_base_dir)
end

#title_lineString

Returns:

  • (String)


69
70
71
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 69

def title_line
  "= #{source_document.title}"
end

#websiteObject



73
74
75
# File 'lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb', line 73

def website
  instance.web_url
end