mirror of https://github.com/freeCodeCamp/devdocs
parent
24abe4c9d9
commit
b98ab152c8
@ -0,0 +1,25 @@
|
|||||||
|
module Docs
|
||||||
|
class Composer
|
||||||
|
class CleanHtmlFilter < Filter
|
||||||
|
def call
|
||||||
|
# Remove unneeded elements
|
||||||
|
css('#searchbar, .toc, .fork-and-edit, .anchor').remove
|
||||||
|
|
||||||
|
# Code blocks
|
||||||
|
css('pre').each do |node|
|
||||||
|
code = node.at_css('code[class]')
|
||||||
|
|
||||||
|
unless code.nil?
|
||||||
|
node['data-language'] = 'javascript' if code['class'].include?('javascript')
|
||||||
|
node['data-language'] = 'php' if code['class'].include?('php')
|
||||||
|
end
|
||||||
|
|
||||||
|
node.content = node.content.strip
|
||||||
|
node.remove_attribute('class')
|
||||||
|
end
|
||||||
|
|
||||||
|
doc
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,39 @@
|
|||||||
|
module Docs
|
||||||
|
class Composer
|
||||||
|
class EntriesFilter < Docs::EntriesFilter
|
||||||
|
def get_name
|
||||||
|
title = at_css('h1').content
|
||||||
|
|
||||||
|
title = "#{Integer(subpath[1]) + 1}. #{title}" if type == 'Book'
|
||||||
|
|
||||||
|
title
|
||||||
|
end
|
||||||
|
|
||||||
|
def get_type
|
||||||
|
return 'Articles' if subpath.start_with?('articles/')
|
||||||
|
|
||||||
|
'Book'
|
||||||
|
end
|
||||||
|
|
||||||
|
def additional_entries
|
||||||
|
entries = []
|
||||||
|
|
||||||
|
if subpath == '04-schema.md' # JSON Schema
|
||||||
|
css('h3').each do |node|
|
||||||
|
name = node.content.strip
|
||||||
|
name.remove!(' (root-only)')
|
||||||
|
entries << [name, node['id'], 'JSON Schema']
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if subpath == '06-config.md' # Composer config
|
||||||
|
css('h2').each do |node|
|
||||||
|
entries << [node.content.strip, node['id'], 'Configuration Options']
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
entries
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
@ -0,0 +1,27 @@
|
|||||||
|
module Docs
|
||||||
|
class Composer < UrlScraper
|
||||||
|
self.name = 'Composer'
|
||||||
|
self.type = 'composer'
|
||||||
|
|
||||||
|
self.links = {
|
||||||
|
home: 'https://getcomposer.org',
|
||||||
|
code: 'https://github.com/composer/composer'
|
||||||
|
}
|
||||||
|
|
||||||
|
html_filters.push 'composer/clean_html', 'composer/entries'
|
||||||
|
|
||||||
|
self.release = '1.7.2'
|
||||||
|
self.base_url = 'https://getcomposer.org/doc/'
|
||||||
|
|
||||||
|
options[:container] = '#main'
|
||||||
|
|
||||||
|
options[:skip_patterns] = [
|
||||||
|
/^faqs/
|
||||||
|
]
|
||||||
|
|
||||||
|
options[:attribution] = <<-HTML
|
||||||
|
© Nils Adermann, Jordi Boggiano<br>
|
||||||
|
Licensed under the MIT License.
|
||||||
|
HTML
|
||||||
|
end
|
||||||
|
end
|
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 3.5 KiB |
@ -0,0 +1 @@
|
|||||||
|
https://github.com/composer/getcomposer.org/blob/master/web/img/logo-composer-transparent.png
|
Loading…
Reference in new issue