mirror of https://github.com/freeCodeCamp/devdocs
parent
b724e81d2f
commit
c49736bad6
@ -0,0 +1,55 @@
|
|||||||
|
module Docs
|
||||||
|
class Vue
|
||||||
|
class EntriesV3Filter < Docs::EntriesFilter
|
||||||
|
def get_name
|
||||||
|
if slug == 'api/' || slug == 'api/index'
|
||||||
|
'API'
|
||||||
|
elsif slug == 'style-guide/'
|
||||||
|
'Style Guide'
|
||||||
|
else
|
||||||
|
name = at_css('h1').content
|
||||||
|
name.sub! %r{#\s*}, ''
|
||||||
|
index = css('.sidebar-link').to_a.index(at_css('.sidebar-link.active'))
|
||||||
|
name.prepend "#{index + 1}. " if index
|
||||||
|
name
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def get_type
|
||||||
|
if slug.start_with?('guide/migration')
|
||||||
|
'Migration'
|
||||||
|
elsif slug.start_with?('guide')
|
||||||
|
subtype = at_css('.sidebar-heading.open, .sidebar-link.active')
|
||||||
|
subtype ? "Guide: #{subtype.content}": 'Guide'
|
||||||
|
elsif slug == 'style-guide/'
|
||||||
|
'Style Guide'
|
||||||
|
else
|
||||||
|
'API'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def additional_entries
|
||||||
|
return [] if slug.start_with?('guide')
|
||||||
|
type = nil
|
||||||
|
|
||||||
|
css('h2, h3').each_with_object [] do |node, entries|
|
||||||
|
if node.name == 'h2'
|
||||||
|
type = node.content.strip
|
||||||
|
type.sub! %r{#\s*}, ''
|
||||||
|
next if slug == 'style-guide/'
|
||||||
|
title = at_css('h1').content.strip
|
||||||
|
title.sub! %r{#\s*}, ''
|
||||||
|
entries << [type, node['id'], "API: #{title}"]
|
||||||
|
elsif slug == 'style-guide/'
|
||||||
|
name = node.content.strip
|
||||||
|
name.sub! %r{#\s*}, ''
|
||||||
|
name.sub! %r{\(.*\)}, '()'
|
||||||
|
name.sub! /(essential|strongly recommended|recommended|use with caution)\Z/, ''
|
||||||
|
curent_type = "Style Guide: #{type.sub(/Rules: /, ': ')}"
|
||||||
|
entries << [name, node['id'], curent_type]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in new issue