Class: Nexmo::Markdown::TabFilter
- Inherits:
-
Banzai::Filter
- Object
- Banzai::Filter
- Nexmo::Markdown::TabFilter
- Includes:
- Concerns::PrismCodeSnippet
- Defined in:
- lib/nexmo_markdown_renderer/filters/tab_filter.rb
Instance Method Summary collapse
Methods included from Concerns::PrismCodeSnippet
#code_language_to_prism, #code_snippet_body, #prism_css_classes
Instance Method Details
#call(input) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/nexmo_markdown_renderer/filters/tab_filter.rb', line 6 def call(input) input.gsub(/^(\s*)```tabbed_(examples|content|folder)(.+?)```/m) do |_s| @indentation = $1 @mode = $2 @config = YAML.safe_load($3) if tabbed_folder? raise "#{@config['source']} is not a directory" unless File.directory? "#{@config['source']}" @tabbed_config = YAML.safe_load(File.read("#{@config['source']}/.config.yml")) @path = @config['source'] validate_folder_config else validate_config end html end end |