Class: Jekyll::AgentMarkdown::DateMetadata

Inherits:
Object
  • Object
show all
Defined in:
lib/jekyll/agent_markdown/date_metadata.rb

Constant Summary collapse

DATE_FORMAT =
"%Y-%m-%d"
FIELDS =
{
  "Published at" => "date",
  "Updated at" => "last_modified_at"
}.freeze
REQUIRED_DATE_PARTS =
%i[year mon mday].freeze

Instance Method Summary collapse

Constructor Details

#initialize(data) ⇒ DateMetadata

Returns a new instance of DateMetadata.



15
16
17
# File 'lib/jekyll/agent_markdown/date_metadata.rb', line 15

def initialize(data)
  @data = data
end

Instance Method Details

#append_to(content) ⇒ Object



23
24
25
26
27
28
# File 'lib/jekyll/agent_markdown/date_metadata.rb', line 23

def append_to(content)
  return content if to_s.empty?
  return "#{self}\n" if content.empty?

  "#{content}#{separator_for(content)}---\n#{self}\n"
end

#published_dateObject



30
# File 'lib/jekyll/agent_markdown/date_metadata.rb', line 30

def published_date = parsed_date(@data["date"])

#to_sObject



19
20
21
# File 'lib/jekyll/agent_markdown/date_metadata.rb', line 19

def to_s
  @to_s ||= FIELDS.filter_map { |label, key| entry(label, @data[key]) }.join(" | ")
end