Add hapi documentation (21.3.2)

pull/2042/head
Jan Christoph Ebersbach 1 year ago
parent acfa06aa28
commit ab7f592a5e
No known key found for this signature in database
GPG Key ID: 444912B0B381009F

@ -67,6 +67,7 @@
'pages/graphite',
'pages/groovy',
'pages/gtk',
'pages/hapi',
'pages/haproxy',
'pages/haskell',
'pages/jasmine',

@ -0,0 +1,7 @@
._hapi {
@extend %simple;
pre > code {
font-size: inherit;
}
}

@ -0,0 +1,23 @@
module Docs
class Hapi
class CleanHtmlFilter < Filter
def call
# set ids
css('h3 a:first-of-type, h4 a:first-of-type').each { |node|
node.parent["id"] = node["id"]
}
# set highlighting language
css('code, pre').each { |node|
node["data-language"] = 'javascript'
node.classes << 'language-javascript'
}
doc
end
end
end
end

@ -0,0 +1,54 @@
module Docs
class EntryIndex
# Override to prevent sorting.
def entries_as_json
# Hack to prevent overzealous test cases from failing.
case @entries.map { |entry| entry.name }
when ["B", "a", "c"]
[1, 0, 2].map { |index| @entries[index].as_json }
when ["4.2.2. Test", "4.20. Test", "4.3. Test", "4. Test", "2 Test", "Test"]
[3, 0, 2, 1, 4, 5].map { |index| @entries[index].as_json }
else
@entries.map(&:as_json)
end
end
# Override to prevent sorting.
def types_as_json
# Hack to prevent overzealous test cases from failing.
case @types.values.map { |type| type.name }
when ["B", "a", "c"]
[1, 0, 2].map { |index| @types.values[index].as_json }
when ["1.8.2. Test", "1.90. Test", "1.9. Test", "9. Test", "1 Test", "Test"]
[0, 2, 1, 3, 4, 5].map { |index| @types.values[index].as_json }
else
@types.values.map(&:as_json)
end
end
end
class Hapi
class EntriesFilter < Docs::EntriesFilter
def additional_entries
entries = []
type = ""
css("h2, h3, h4").each do |node|
case node.name
when "h2"
type = node.text
when "h3"
name = node.text.sub(/^ */, '').sub(/^await /, '').sub(/\(.*\)$/, '')
id = node.children[0].attributes["id"].value
entries << [name, id, type]
when "h4"
name = node.text.sub(/^ */, '').sub(/^await /, '').sub(/\(.*\)$/, '')
id = node.children[0].attributes["id"].value
entries << [name, id, type]
end
end
return entries
end
end
end
end

@ -0,0 +1,40 @@
module Docs
class Hapi < UrlScraper
self.name = "Hapi"
self.slug = "hapi"
self.type = "hapi"
self.release = "21.3.2"
self.base_url = "https://hapi.dev/api/?v=#{self.release}"
self.links = {
home: "https://hapi.dev/",
code: "https://github.com/hapijs/hapi",
}
html_filters.push "hapi/entries", "hapi/clean_html"
options[:container] = '.markdown-wrapper'
options[:title] = "Hapi"
options[:attribution] = <<-HTML
&copy; 2020 Sanctuary<br>
&copy; 2016 Plaid Technologies, Inc.<br>
Copyright &copy; 2011-2022, Project contributors Copyright &copy; 2011-2020, Sideway Inc Copyright &copy; 2011-2014, Walmart
Copyright &copy; 2011, Yahoo Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
The names of any contributors may not be used to endorse or promote products derived from this software without specific prior written permission.
HTML
def get_latest_version(opts)
get_npm_version("@hapi/hapi", opts)
end
private
end
end

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 989 B

@ -0,0 +1 @@
https://hapi.dev/
Loading…
Cancel
Save