module Lookbook::AnnotatableEntity
def display_options_config
def display_options_config return unless has_tag?(:display) # Dynamic params set at the entity level are # not (yet?) supported so filter them out. display_tags = tags(:display).select do |tag| !tag.value.is_a?(Hash) && !tag.value.is_a?(Array) end display_tags.map { |tag| [tag.key.to_sym, tag.value] }.to_h end
def fetch_config(key, fallback = nil, &block)
def fetch_config(key, fallback = nil, &block) value = case key.to_sym when :renders renders_config when :display_options display_options_config else tag(key).value if has_tag?(key) end Utils.value_or_fallback(value, fallback, &block) end
def notes
-
(String)
- The notes, or an empty string if none have been added
def notes code_object.docstring.to_s.strip end
def renders_config
def renders_config return unless has_tag?(:component) || has_tag?(:renders) [*tags(:component), *tags(:renders)].map(&:value).compact end
def tag(name = nil)
-
(Array
- Array of tags)
Parameters:
-
name
(Symbol
) -- Optional tag type to filter by
Other tags:
- Example: :ruby -
def tag(name = nil) tags(name).first end
def tags(name = nil)
-
(Array
- Array of tags)
Parameters:
-
name
(Symbol
) -- Optional tag type to filter by
Other tags:
- Example: :ruby -
def tags(name = nil) code_object.tags(name) end