12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/primer/static/generate_arguments.rb', line 12
def call(view_context: self.view_context)
Primer::Component.descendants.sort_by(&:name).map do |component|
docs = registry.find(component)
ref = Primer::Yard::ComponentManifest.ref_for(component)
args = docs.params.map do |tag|
default_value = Primer::Yard::DocsHelper.pretty_default_value(tag, component)
{
"name" => tag.name,
"type" => tag.types.join(", "),
"default" => default_value,
"description" => view_context.render(inline: tag.text.squish)
}
end
{
"component" => docs.metadata[:title],
"status" => component.status.to_s,
"a11y_reviewed" => docs.metadata[:a11y_reviewed] == "true",
"short_name" => docs.short_name,
"source" => ref.source_url,
"lookbook" => ref.lookbook_url,
"parameters" => args
}
end
end
|