class GovukPublishingComponents::Presenters::Breadcrumbs

Attributes

breadcrumbs[R]

Public Class Methods

new(breadcrumbs) click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 4
def initialize(breadcrumbs)
  @breadcrumbs = breadcrumbs
end

Public Instance Methods

structured_data() click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 8
def structured_data
  {
    "@context" => "http://schema.org",
    "@type" => "BreadcrumbList",
    "itemListElement" => item_list_element,
  }
end

Private Instance Methods

item_list_element() click to toggle source
# File lib/govuk_publishing_components/presenters/breadcrumbs.rb, line 20
def item_list_element
  breadcrumbs.each_with_index.map { |crumb, index| Breadcrumb.new(crumb, index) }
    .select(&:is_link?)
    .map(&:item_list_element)
end