class Kitchen::Directions::BakeChapterSummary::V1

Public Instance Methods

bake(chapter:, metadata_source:, uuid_prefix: '.', klass: 'summary') click to toggle source
# File lib/kitchen/directions/bake_chapter_summary.rb, line 18
def bake(chapter:, metadata_source:, uuid_prefix: '.', klass: 'summary')
  summaries = Clipboard.new

  chapter.pages.each do |page|
    summary = page.summary

    next if summary.nil?

    summary.first("[data-type='title']")&.trash # get rid of old title if exists
    title = EocSectionTitleLinkSnippet.v1(page: page)
    summary.prepend(child: title)
    summary.cut(to: summaries)
  end

  return if summaries.none?

  EocCompositePageContainer.v1(
    container_key: klass,
    uuid_key: "#{uuid_prefix}#{klass}",
    metadata_source: metadata_source,
    content: summaries.paste,
    append_to: chapter
  )
end