Class: FastComments::Jekyll::BaseTag
- Inherits:
-
Liquid::Tag
- Object
- Liquid::Tag
- FastComments::Jekyll::BaseTag
show all
- Defined in:
- lib/fastcomments/jekyll/base_tag.rb
Overview
Shared Liquid::Tag lifecycle: parse markup -> resolve config -> render widget. Concrete tags declare a ‘self.spec` and inherit one of the renderer bases below.
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.page_scoped? ⇒ Boolean
14
15
16
|
# File 'lib/fastcomments/jekyll/base_tag.rb', line 14
def self.page_scoped?
spec[:page_scoped] == true
end
|
Instance Method Details
#render(context) ⇒ Object
8
9
10
11
12
|
# File 'lib/fastcomments/jekyll/base_tag.rb', line 8
def render(context)
attrs = AttributeParser.parse(@markup, context)
config = ConfigResolver.resolve(context, attrs, derive_page_context: self.class.page_scoped?)
render_widget(config)
end
|
18
19
20
|
# File 'lib/fastcomments/jekyll/base_tag.rb', line 18
def render_widget(_config)
raise NotImplementedError, "#{self.class} must implement #render_widget"
end
|