4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/nexmo_markdown_renderer/filters/heading_filter.rb', line 4
def call(input)
@input = input
@headings = []
heading_tag_list = %w[h1 h2 h3 h4 h5 h6]
headings = document.children.select do |child|
heading_tag_list.include? child.name
end
headings.each do |heading|
parameterized_heading = parameterized_heading_without_collision(heading)
heading['id'] = parameterized_heading
heading['data-id'] = SecureRandom.hex
heading['class'] = heading[:class]
heading['class'] += ' Vlt-title--icon'
heading.prepend_child <<~HEREDOC
<a href="##{parameterized_heading}" class="heading-permalink">
<svg class="Vlt-grey"><use xlink:href=\"/symbol/volta-icons.svg#Vlt-icon-link\" /></svg>
</a>
HEREDOC
end
@document.to_html
end
|