Class: GovukPublishingComponents::Presenters::ContentBreadcrumbsBasedOnTopic
- Inherits:
-
Object
- Object
- GovukPublishingComponents::Presenters::ContentBreadcrumbsBasedOnTopic
- Defined in:
- lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb
Instance Attribute Summary collapse
-
#content_item ⇒ Object
readonly
Returns the value of attribute content_item.
Class Method Summary collapse
Instance Method Summary collapse
- #breadcrumbs ⇒ Object
- #first_topic ⇒ Object
-
#initialize(content_item) ⇒ ContentBreadcrumbsBasedOnTopic
constructor
A new instance of ContentBreadcrumbsBasedOnTopic.
- #topic_breadcrumb ⇒ Object
- #topics ⇒ Object
Constructor Details
#initialize(content_item) ⇒ ContentBreadcrumbsBasedOnTopic
Returns a new instance of ContentBreadcrumbsBasedOnTopic.
10 11 12 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 10 def initialize(content_item) @content_item = content_item end |
Instance Attribute Details
#content_item ⇒ Object (readonly)
Returns the value of attribute content_item.
8 9 10 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 8 def content_item @content_item end |
Class Method Details
.call(content_item) ⇒ Object
4 5 6 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 4 def self.call(content_item) new(content_item). end |
Instance Method Details
#breadcrumbs ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 14 def = [{ title: "Home", url: "/" }] return unless topics.present? << end |
#first_topic ⇒ Object
29 30 31 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 29 def first_topic topics.first end |
#topic_breadcrumb ⇒ Object
22 23 24 25 26 27 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 22 def { title: first_topic["title"], url: first_topic["base_path"], } end |
#topics ⇒ Object
33 34 35 |
# File 'lib/govuk_publishing_components/presenters/content_breadcrumbs_based_on_topic.rb', line 33 def topics @topics ||= content_item.dig("links", "topics") end |