module LiquidDiagrams
Constants
- OPTIONS_KEY
- VERSION
Public Class Methods
configuration(options, key: nil, default: {})
click to toggle source
Return configuration of diagram
# File lib/liquid_diagrams.rb, line 22 def configuration(options, key: nil, default: {}) config = options[OPTIONS_KEY.to_sym] || options[OPTIONS_KEY.to_s] || {} key ? (config.dig(key.to_sym) || config.dig(key.to_s) || default) : config end
diagrams()
click to toggle source
Return all diagrams defined in {Renderers}
@return [Array<Symbol>]
# File lib/liquid_diagrams.rb, line 31 def diagrams @diagrams ||= renderers.keys end
register_diagram(diagram)
click to toggle source
Register a diagram block
@param diagram [#to_s] diagram name to register
@return [Liquid::Block] the registered liquid block
# File lib/liquid_diagrams.rb, line 72 def register_diagram(diagram) diagram = diagram.to_s.downcase.to_sym raise Errors::DiagramNotFoundError unless diagrams.include?(diagram) block = Blocks.const_get("#{diagram.capitalize}Block") registered_diagrams.merge!(diagram => block) Liquid::Template.register_tag(diagram, block) end
register_diagrams(*diagrams)
click to toggle source
Register diagrams
@param diagrams [Array<String, Symbol>] diagrams to register
@return [Array<Liquid::Block>] the registered liquid blocks
# File lib/liquid_diagrams.rb, line 63 def register_diagrams(*diagrams) Array(diagrams).flatten.map { |diagram| register_diagram(diagram) } end
registered_diagrams()
click to toggle source
Return all registered diagrams block
Use {.register_diagrams} and {.register_diagram} to register a diagram
@return [Hash{Symbol => BasicBlock}]
# File lib/liquid_diagrams.rb, line 54 def registered_diagrams @registered_diagrams ||= {} end
renderers()
click to toggle source
Return all avaliable renderers under {Renderers}
@return [Hash{Symbol => BasicRenderer}]
# File lib/liquid_diagrams.rb, line 38 def renderers @renderers ||= Hash[ Renderers.constants.grep(/Renderer$/).sort.map do |renderer| [ renderer.to_s.chomp('Renderer').downcase.to_sym, Renderers.const_get(renderer) ] end ] end