Module: LabClient::Docs
- Included in:
- Common, Generator::GeneratorDocs, Klass, Overview, Search
- Defined in:
- lib/labclient/docs.rb
Overview
Shared Methods
Class Method Summary collapse
Instance Method Summary collapse
- #desc(value) ⇒ Object
- #doc(subgroup) ⇒ Object
- #example(value) ⇒ Object
-
#group_name ⇒ Object
Allow for Custom Group Name Overrides.
-
#help ⇒ Object
Klass Helper.
- #markdown(value) ⇒ Object
-
#navigation(subgroup) ⇒ Object
Helper to Make navigation rendered out once rather than evaluated on Ember.
- #option(name, text) ⇒ Object
- #result(value) ⇒ Object
- #subtitle(value) ⇒ Object
-
#title(value) ⇒ Object
————————————————————- DSL Helpers.
Class Method Details
.docs ⇒ Object
13 14 15 |
# File 'lib/labclient/docs.rb', line 13 def self.docs @docs end |
.json ⇒ Object
9 10 11 |
# File 'lib/labclient/docs.rb', line 9 def self.json @docs.to_json end |
Instance Method Details
#desc(value) ⇒ Object
52 53 54 55 |
# File 'lib/labclient/docs.rb', line 52 def desc(value) # @result[:desc] = simple_format value @result[:desc] = value end |
#doc(subgroup) ⇒ Object
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/labclient/docs.rb', line 90 def doc(subgroup) @result = {} yield # Turn Class name into friendly name. Split multiple words @group = group_name # Docs Navigation Helper (subgroup) # @result[:name] = name Docs.docs[@group] ||= {} Docs.docs[@group][subgroup] ||= [] Docs.docs[@group][subgroup].push @result end |
#example(value) ⇒ Object
57 58 59 |
# File 'lib/labclient/docs.rb', line 57 def example(value) @result[:example] = value end |
#group_name ⇒ Object
Allow for Custom Group Name Overrides
71 72 73 |
# File 'lib/labclient/docs.rb', line 71 def group_name @group_name || name.split('::', 2).last.split(/(?=[A-Z])/).join(' ') end |
#help ⇒ Object
Klass Helper
29 30 31 32 33 34 35 |
# File 'lib/labclient/docs.rb', line 29 def help # require 'active_support/inflector' @group_name ||= group_name.pluralize doc 'Reference' do yield end end |
#markdown(value) ⇒ Object
47 48 49 50 |
# File 'lib/labclient/docs.rb', line 47 def markdown(value) require 'kramdown' unless defined? Kramdown @result[:markdown] = Kramdown::Document.new(value).to_html end |
#navigation(subgroup) ⇒ Object
Helper to Make navigation rendered out once rather than evaluated on Ember
76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/labclient/docs.rb', line 76 def (subgroup) # Group nav = @group.gsub(' ', '_') # Subgroup = subgroup.gsub(' ', '_') # Title += '_' + @result[:title].gsub(' ', '_') if @result.key? :title @result[:nav] = nav @result[:nav] += '-' + if end |
#option(name, text) ⇒ Object
65 66 67 68 |
# File 'lib/labclient/docs.rb', line 65 def option(name, text) @result[:options] ||= [] @result[:options].push(name: name, text: text) end |
#result(value) ⇒ Object
61 62 63 |
# File 'lib/labclient/docs.rb', line 61 def result(value) @result[:result] = value end |
#subtitle(value) ⇒ Object
43 44 45 |
# File 'lib/labclient/docs.rb', line 43 def subtitle(value) @result[:subtitle] = value end |
#title(value) ⇒ Object
DSL Helpers
39 40 41 |
# File 'lib/labclient/docs.rb', line 39 def title(value) @result[:title] = value end |