Sha256: 7c0f2f6b7edd54ff62cdbbe3deeba87d96112b97d003fe37a71daeecbffb879f

Contents?: true

Size: 1.26 KB

Versions: 27

Compression:

Stored size: 1.26 KB

Contents

# ------------------------------------------------------------------------------
#  ~/_plugins/asciidoctor-extensions/carousel-block.rb
#  Asciidoctor extension for J1 Carousel (Owl Carousel)
#
#  Product/Info:
#  https://jekyll-one.com
#
#  Copyright (C) 2019 Juergen Adams
#
#  J1 Template is licensed under the MIT License.
#  See: https://github.com/jekyll-one/j1_template_mde/blob/master/LICENSE
#
# ------------------------------------------------------------------------------
require 'asciidoctor/extensions' unless RUBY_ENGINE == 'opal'
include Asciidoctor

# A block macro that embeds a Carousel block into the output document
#
# Usage
#
#   carousel::carousel:id[role="additional classes"]
#
# Example:
#
#   .The carousel title
#   carousel::owl_demo_simple[role="mb-5"]
#
Asciidoctor::Extensions.register do

  class ImageBlockMacro < Extensions::BlockMacroProcessor
    use_dsl

    named :carousel
    name_positional_attributes 'role'

    def process parent, target, attrs
      title_html  = (attrs.has_key? 'title') ? %(<div class="slider-title">#{attrs['title']}</div>\n) : nil
      html = %(#{title_html} <div id="#{target}" class="#{attrs['role']}"></div>)
      create_pass_block parent, html, attrs, subs: nil
    end
  end

  block_macro ImageBlockMacro

end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
j1_template_mde-2018.4.36 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.35 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.34 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.33 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.32 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.31 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.30 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.29 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.28 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.27 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.26 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.25 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.24 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.23 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.22 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.21 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.20 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.19 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.18 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb
j1_template_mde-2018.4.17 lib/starter_web/_plugins/asciidoctor-extensions/carousel-block.rb