Sha256: 9ee29ac362d93a47abf67286cf2a81e2b89dcfc38b5550393a1e50c4e624f867
Contents?: true
Size: 1.07 KB
Versions: 2
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true # :nocov: module Primer module YARD # Shared functionality for generating documentation from YARD comments. class Backend include DocsHelper private def pretty_default_value(tag, component) params = tag.object.parameters.find { |param| [tag.name.to_s, "#{tag.name}:"].include?(param[0]) } default = tag.defaults&.first || params&.second return "N/A" unless default constant_name = "#{component.name}::#{default}" constant_value = default.safe_constantize || constant_name.safe_constantize return pretty_value(default) if constant_value.nil? pretty_value(constant_value) end def view_context @view_context ||= begin # Rails controller for rendering arbitrary ERB vc = ApplicationController.new.tap { |c| c.request = ActionDispatch::TestRequest.create }.view_context vc.singleton_class.include(DocsHelper) vc.singleton_class.include(Primer::ViewHelper) vc end end end end end # :nocov:
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
primer_view_components-0.0.121 | lib/primer/yard/backend.rb |
primer_view_components-0.0.120 | lib/primer/yard/backend.rb |