Class: Gitlab::MarkdownCache::FieldData
- Inherits:
-
Object
- Object
- Gitlab::MarkdownCache::FieldData
- Defined in:
- lib/gitlab/markdown_cache/field_data.rb
Overview
Knows about the relationship between markdown and html field names, and stores the rendering contexts for the latter
Instance Method Summary collapse
- #html_field(markdown_field) ⇒ Object
- #html_fields ⇒ Object
- #html_fields_whitelisted ⇒ Object
-
#initialize ⇒ FieldData
constructor
A new instance of FieldData.
- #markdown_fields ⇒ Object
Constructor Details
#initialize ⇒ FieldData
Returns a new instance of FieldData.
8 9 10 |
# File 'lib/gitlab/markdown_cache/field_data.rb', line 8 def initialize @data = {} end |
Instance Method Details
#html_field(markdown_field) ⇒ Object
18 19 20 |
# File 'lib/gitlab/markdown_cache/field_data.rb', line 18 def html_field(markdown_field) "#{markdown_field}_html" end |
#html_fields ⇒ Object
22 23 24 |
# File 'lib/gitlab/markdown_cache/field_data.rb', line 22 def html_fields @html_fields ||= markdown_fields.map { |field| html_field(field) } end |
#html_fields_whitelisted ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/gitlab/markdown_cache/field_data.rb', line 26 def html_fields_whitelisted markdown_fields.each_with_object([]) do |field, fields| if @data[field].fetch(:whitelisted, false) fields << html_field(field) end end end |
#markdown_fields ⇒ Object
14 15 16 |
# File 'lib/gitlab/markdown_cache/field_data.rb', line 14 def markdown_fields @data.keys end |