govuk_navigation_helpers 6.2.0 → 6.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/lib/govuk_navigation_helpers.rb +2 -0
- data/lib/govuk_navigation_helpers/content_item.rb +25 -0
- data/lib/govuk_navigation_helpers/curated_taxonomy_sidebar_links.rb +96 -0
- data/lib/govuk_navigation_helpers/rummager_taxonomy_sidebar_links.rb +61 -0
- data/lib/govuk_navigation_helpers/taxonomy_sidebar.rb +12 -46
- data/lib/govuk_navigation_helpers/version.rb +1 -1
- data/spec/taxonomy_sidebar_spec.rb +267 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c461bdaf7894d043e544c90c0a55847e2ef71aeb
|
4
|
+
data.tar.gz: b6faea824ddea2a36d627eec6a1f2f60d05fc009
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 729b456c6c589ea4cbed175c5fd5798a1e1c28f0be3c80f4a329235bf37af534cfa226b755ada6b4fd9a18462362ca1ae7ed65d58bc043290f1130f34f71f2e2
|
7
|
+
data.tar.gz: f96e665046a7619631bc8c1295c21385067ce5de8dcf06d0e66250f103f1207ae143a7fa651026358298fddd68f7fdfc766413f329ffdbd3260d61ef1abe18be
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
## 6.3.0
|
2
|
+
|
3
|
+
* Allow curated related links to be shown on the new navigation sidebar. If the
|
4
|
+
link type `ordered_related_items_overrides` contains links to content items,
|
5
|
+
we will use those instead of the "more like this" links from search. These
|
6
|
+
links can be added in `content-tagger`.
|
7
|
+
|
1
8
|
## 6.2.0
|
2
9
|
|
3
10
|
* Remove "Register to vote" section from related links data as deadline of
|
@@ -3,6 +3,8 @@ require "govuk_navigation_helpers/breadcrumbs"
|
|
3
3
|
require "govuk_navigation_helpers/related_items"
|
4
4
|
require "govuk_navigation_helpers/taxon_breadcrumbs"
|
5
5
|
require "govuk_navigation_helpers/taxonomy_sidebar"
|
6
|
+
require "govuk_navigation_helpers/rummager_taxonomy_sidebar_links"
|
7
|
+
require "govuk_navigation_helpers/curated_taxonomy_sidebar_links"
|
6
8
|
|
7
9
|
module GovukNavigationHelpers
|
8
10
|
class NavigationHelper
|
@@ -62,8 +62,33 @@ module GovukNavigationHelpers
|
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
65
|
+
def curated_taxonomy_sidebar_links
|
66
|
+
content_store_response.dig("links", "ordered_related_items_overrides").to_a.map do |link|
|
67
|
+
ContentItem.new(link)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
65
71
|
def external_links
|
66
72
|
content_store_response.dig("details", "external_related_links").to_a
|
67
73
|
end
|
74
|
+
|
75
|
+
def as_taxonomy_sidebar_link
|
76
|
+
{
|
77
|
+
title: title,
|
78
|
+
link: base_path,
|
79
|
+
}
|
80
|
+
end
|
81
|
+
|
82
|
+
def ==(other)
|
83
|
+
content_id == other.content_id
|
84
|
+
end
|
85
|
+
|
86
|
+
def hash
|
87
|
+
content_id.hash
|
88
|
+
end
|
89
|
+
|
90
|
+
def eql?(other)
|
91
|
+
self == other
|
92
|
+
end
|
68
93
|
end
|
69
94
|
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
require 'set'
|
2
|
+
|
3
|
+
module GovukNavigationHelpers
|
4
|
+
class CuratedTaxonomySidebarLinks
|
5
|
+
def initialize(content_item)
|
6
|
+
@content_item = content_item
|
7
|
+
end
|
8
|
+
|
9
|
+
def related_items
|
10
|
+
@related_items ||=
|
11
|
+
taxon_links +
|
12
|
+
elsewhere_on_gov_uk_links +
|
13
|
+
elsewhere_on_the_web_links
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def taxon_links
|
19
|
+
@content_item.parent_taxons.map do |taxon|
|
20
|
+
{
|
21
|
+
title: taxon.title,
|
22
|
+
url: taxon.base_path,
|
23
|
+
description: taxon.description,
|
24
|
+
related_content: format_for_sidebar(related_content_by_taxon[taxon]),
|
25
|
+
}
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def elsewhere_on_gov_uk_links
|
30
|
+
elsewhere_items = related_content_elsewhere_on_govuk
|
31
|
+
return [] if elsewhere_items.empty?
|
32
|
+
|
33
|
+
[
|
34
|
+
{
|
35
|
+
title: 'Elsewhere on GOV.UK',
|
36
|
+
related_content: format_for_sidebar(elsewhere_items),
|
37
|
+
},
|
38
|
+
]
|
39
|
+
end
|
40
|
+
|
41
|
+
def elsewhere_on_the_web_links
|
42
|
+
return [] if @content_item.external_links.empty?
|
43
|
+
|
44
|
+
external_links = @content_item.external_links.map do |link|
|
45
|
+
{
|
46
|
+
title: link['title'],
|
47
|
+
link: link['url'],
|
48
|
+
}
|
49
|
+
end
|
50
|
+
|
51
|
+
[
|
52
|
+
{
|
53
|
+
title: 'Elsewhere on the web',
|
54
|
+
related_content: external_links,
|
55
|
+
},
|
56
|
+
]
|
57
|
+
end
|
58
|
+
|
59
|
+
def related_content_by_taxon
|
60
|
+
@related_items_by_taxon ||= begin
|
61
|
+
curated_related_items = @content_item.curated_taxonomy_sidebar_links.to_set
|
62
|
+
|
63
|
+
@content_item.parent_taxons.each_with_object({}) do |taxon, items_by_taxon|
|
64
|
+
items_related_to_taxon = filter_items_by_taxon(curated_related_items, taxon)
|
65
|
+
items_by_taxon[taxon] = items_related_to_taxon
|
66
|
+
curated_related_items = undisplayed_items(curated_related_items, items_related_to_taxon)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def related_content_elsewhere_on_govuk
|
72
|
+
@related_content_elsewhere_on_govuk ||= begin
|
73
|
+
related_content = @content_item.curated_taxonomy_sidebar_links.to_set
|
74
|
+
related_taxon_content = related_content_by_taxon.values.flatten.to_set
|
75
|
+
related_content - related_taxon_content
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
def filter_items_by_taxon(items, taxon)
|
80
|
+
items.select do |item|
|
81
|
+
item.parent_taxons.include?(taxon)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
def undisplayed_items(all_items, displayed_items)
|
86
|
+
all_items - displayed_items
|
87
|
+
end
|
88
|
+
|
89
|
+
def format_for_sidebar(collection)
|
90
|
+
collection
|
91
|
+
.to_a
|
92
|
+
.sort_by(&:title)
|
93
|
+
.map(&:as_taxonomy_sidebar_link)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
module GovukNavigationHelpers
|
2
|
+
class RummagerTaxonomySidebarLinks
|
3
|
+
def initialize(content_item)
|
4
|
+
@content_item = content_item
|
5
|
+
end
|
6
|
+
|
7
|
+
def related_items
|
8
|
+
parent_taxons = @content_item.parent_taxons
|
9
|
+
used_related_links = Set.new
|
10
|
+
|
11
|
+
parent_taxons.each_with_index.map do |parent_taxon, index|
|
12
|
+
related_content = index < 2 ? content_related_to(parent_taxon, used_related_links) : []
|
13
|
+
|
14
|
+
used_related_links.merge(
|
15
|
+
related_content.map { |content| content[:link] }
|
16
|
+
)
|
17
|
+
|
18
|
+
{
|
19
|
+
title: parent_taxon.title,
|
20
|
+
url: parent_taxon.base_path,
|
21
|
+
description: parent_taxon.description,
|
22
|
+
related_content: related_content,
|
23
|
+
}
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
# This method will fetch content related to content_item, and tagged to taxon. This is a
|
30
|
+
# temporary method that uses search to achieve this. This behaviour is to be moved into
|
31
|
+
# the content store
|
32
|
+
def content_related_to(taxon, used_related_links)
|
33
|
+
statsd.time(:taxonomy_sidebar_search_time) do
|
34
|
+
begin
|
35
|
+
results = Services.rummager.search(
|
36
|
+
similar_to: @content_item.base_path,
|
37
|
+
start: 0,
|
38
|
+
count: 3,
|
39
|
+
filter_taxons: [taxon.content_id],
|
40
|
+
filter_navigation_document_supertype: 'guidance',
|
41
|
+
reject_link: used_related_links.to_a,
|
42
|
+
fields: %w[title link],
|
43
|
+
)['results']
|
44
|
+
|
45
|
+
statsd.increment(:taxonomy_sidebar_searches)
|
46
|
+
|
47
|
+
results
|
48
|
+
.map { |result| { title: result['title'], link: result['link'], } }
|
49
|
+
.sort_by { |result| result[:title] }
|
50
|
+
rescue StandardError => e
|
51
|
+
GovukNavigationHelpers.configuration.error_handler.notify(e)
|
52
|
+
[]
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def statsd
|
58
|
+
GovukNavigationHelpers.configuration.statsd
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -9,61 +9,27 @@ module GovukNavigationHelpers
|
|
9
9
|
|
10
10
|
def sidebar
|
11
11
|
{
|
12
|
-
items:
|
12
|
+
items: related_items,
|
13
13
|
}
|
14
14
|
end
|
15
15
|
|
16
16
|
private
|
17
17
|
|
18
|
-
def
|
19
|
-
|
18
|
+
def there_are_related_item_overrides?
|
19
|
+
# TODO: We should check for any external links when we have "new"
|
20
|
+
# external links being curated in Content Tagger
|
21
|
+
@content_item.curated_taxonomy_sidebar_links.any?
|
20
22
|
end
|
21
23
|
|
22
|
-
def
|
23
|
-
|
24
|
-
used_related_links = Set.new
|
25
|
-
|
26
|
-
parent_taxons.each_with_index.map do |parent_taxon, index|
|
27
|
-
related_content = index < 2 ? content_related_to(parent_taxon, used_related_links) : []
|
28
|
-
|
29
|
-
used_related_links.merge(
|
30
|
-
related_content.map { |content| content[:link] }
|
31
|
-
)
|
32
|
-
|
33
|
-
{
|
34
|
-
title: parent_taxon.title,
|
35
|
-
url: parent_taxon.base_path,
|
36
|
-
description: parent_taxon.description,
|
37
|
-
related_content: related_content,
|
38
|
-
}
|
39
|
-
end
|
24
|
+
def related_items
|
25
|
+
related_items_factory.new(@content_item).related_items
|
40
26
|
end
|
41
27
|
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
begin
|
48
|
-
results = Services.rummager.search(
|
49
|
-
similar_to: @content_item.base_path,
|
50
|
-
start: 0,
|
51
|
-
count: 3,
|
52
|
-
filter_taxons: [taxon.content_id],
|
53
|
-
filter_navigation_document_supertype: 'guidance',
|
54
|
-
reject_link: used_related_links.to_a,
|
55
|
-
fields: %w[title link],
|
56
|
-
)['results']
|
57
|
-
|
58
|
-
statsd.increment(:taxonomy_sidebar_searches)
|
59
|
-
|
60
|
-
results
|
61
|
-
.map { |result| { title: result['title'], link: result['link'], } }
|
62
|
-
.sort_by { |result| result[:title] }
|
63
|
-
rescue StandardError => e
|
64
|
-
GovukNavigationHelpers.configuration.error_handler.notify(e)
|
65
|
-
[]
|
66
|
-
end
|
28
|
+
def related_items_factory
|
29
|
+
if there_are_related_item_overrides?
|
30
|
+
CuratedTaxonomySidebarLinks
|
31
|
+
else
|
32
|
+
RummagerTaxonomySidebarLinks
|
67
33
|
end
|
68
34
|
end
|
69
35
|
end
|
@@ -186,6 +186,273 @@ RSpec.describe GovukNavigationHelpers::TaxonomySidebar do
|
|
186
186
|
end
|
187
187
|
end
|
188
188
|
|
189
|
+
context 'when there are related link overrides' do
|
190
|
+
context 'belonging to the same taxon' do
|
191
|
+
it 'displays the related link overrides under a single taxon' do
|
192
|
+
content_item = content_item_tagged_to_taxon
|
193
|
+
|
194
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
195
|
+
{
|
196
|
+
'title' => 'Related link override B',
|
197
|
+
'base_path' => '/override-b',
|
198
|
+
'content_id' => 'override-b',
|
199
|
+
'links' => {
|
200
|
+
'taxons' => [
|
201
|
+
content_item['links']['taxons'][0],
|
202
|
+
],
|
203
|
+
},
|
204
|
+
},
|
205
|
+
]
|
206
|
+
|
207
|
+
expect(sidebar_for(content_item)).to eq(
|
208
|
+
items: [
|
209
|
+
{
|
210
|
+
title: "Taxon A",
|
211
|
+
url: "/taxon-a",
|
212
|
+
description: "The A taxon.",
|
213
|
+
related_content: [],
|
214
|
+
},
|
215
|
+
{
|
216
|
+
title: "Taxon B",
|
217
|
+
url: "/taxon-b",
|
218
|
+
description: "The B taxon.",
|
219
|
+
related_content: [
|
220
|
+
{ title: 'Related link override B', link: '/override-b' },
|
221
|
+
],
|
222
|
+
}
|
223
|
+
]
|
224
|
+
)
|
225
|
+
end
|
226
|
+
|
227
|
+
it 'displays the related link overrides under a multiple taxons' do
|
228
|
+
content_item = content_item_tagged_to_taxon
|
229
|
+
|
230
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
231
|
+
{
|
232
|
+
'title' => 'Related link override B',
|
233
|
+
'base_path' => '/override-b',
|
234
|
+
'content_id' => 'override-b',
|
235
|
+
'links' => {
|
236
|
+
'taxons' => [
|
237
|
+
content_item['links']['taxons'][0],
|
238
|
+
],
|
239
|
+
},
|
240
|
+
},
|
241
|
+
{
|
242
|
+
'title' => 'Related link override A-2',
|
243
|
+
'base_path' => '/override-a-2',
|
244
|
+
'content_id' => 'override-a-2',
|
245
|
+
'links' => {
|
246
|
+
'taxons' => [
|
247
|
+
content_item['links']['taxons'][1],
|
248
|
+
],
|
249
|
+
},
|
250
|
+
},
|
251
|
+
{
|
252
|
+
'title' => 'Related link override A-1',
|
253
|
+
'base_path' => '/override-a-1',
|
254
|
+
'content_id' => 'override-a-1',
|
255
|
+
'links' => {
|
256
|
+
'taxons' => [
|
257
|
+
content_item['links']['taxons'][1],
|
258
|
+
],
|
259
|
+
},
|
260
|
+
},
|
261
|
+
]
|
262
|
+
|
263
|
+
expect(sidebar_for(content_item)).to eq(
|
264
|
+
items: [
|
265
|
+
{
|
266
|
+
title: "Taxon A",
|
267
|
+
url: "/taxon-a",
|
268
|
+
description: "The A taxon.",
|
269
|
+
related_content: [
|
270
|
+
{ 'title': 'Related link override A-1', 'link': '/override-a-1' },
|
271
|
+
{ 'title': 'Related link override A-2', 'link': '/override-a-2' },
|
272
|
+
],
|
273
|
+
},
|
274
|
+
{
|
275
|
+
title: "Taxon B",
|
276
|
+
url: "/taxon-b",
|
277
|
+
description: "The B taxon.",
|
278
|
+
related_content: [
|
279
|
+
{ 'title': 'Related link override B', 'link': '/override-b' },
|
280
|
+
],
|
281
|
+
}
|
282
|
+
]
|
283
|
+
)
|
284
|
+
end
|
285
|
+
|
286
|
+
it 'displays a related link tagged to multiple taxons under a single taxon' do
|
287
|
+
content_item = content_item_tagged_to_taxon
|
288
|
+
|
289
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
290
|
+
{
|
291
|
+
'title' => 'Related link override',
|
292
|
+
'base_path' => '/override',
|
293
|
+
'content_id' => 'override',
|
294
|
+
'links' => {
|
295
|
+
'taxons' => [
|
296
|
+
content_item['links']['taxons'][0],
|
297
|
+
content_item['links']['taxons'][1],
|
298
|
+
],
|
299
|
+
},
|
300
|
+
},
|
301
|
+
]
|
302
|
+
|
303
|
+
expect(sidebar_for(content_item)).to eq(
|
304
|
+
items: [
|
305
|
+
{
|
306
|
+
title: "Taxon A",
|
307
|
+
url: "/taxon-a",
|
308
|
+
description: "The A taxon.",
|
309
|
+
related_content: [
|
310
|
+
{ 'title': 'Related link override', 'link': '/override' },
|
311
|
+
],
|
312
|
+
},
|
313
|
+
{
|
314
|
+
title: "Taxon B",
|
315
|
+
url: "/taxon-b",
|
316
|
+
description: "The B taxon.",
|
317
|
+
related_content: [],
|
318
|
+
}
|
319
|
+
]
|
320
|
+
)
|
321
|
+
end
|
322
|
+
|
323
|
+
it 'displays a related link tagged to another taxon under "Elsewhere"' do
|
324
|
+
content_item = content_item_tagged_to_taxon
|
325
|
+
|
326
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
327
|
+
{
|
328
|
+
'title' => 'Related link override',
|
329
|
+
'base_path' => '/override',
|
330
|
+
'content_id' => 'override',
|
331
|
+
'links' => {
|
332
|
+
'taxons' => [
|
333
|
+
{
|
334
|
+
'title' => 'Some other taxon',
|
335
|
+
'content_id' => 'some-other-taxon',
|
336
|
+
'base_path' => '/some-other-taxon',
|
337
|
+
}
|
338
|
+
],
|
339
|
+
},
|
340
|
+
},
|
341
|
+
]
|
342
|
+
|
343
|
+
expect(sidebar_for(content_item)).to eq(
|
344
|
+
items: [
|
345
|
+
{
|
346
|
+
title: "Taxon A",
|
347
|
+
url: "/taxon-a",
|
348
|
+
description: "The A taxon.",
|
349
|
+
related_content: [],
|
350
|
+
},
|
351
|
+
{
|
352
|
+
title: "Taxon B",
|
353
|
+
url: "/taxon-b",
|
354
|
+
description: "The B taxon.",
|
355
|
+
related_content: [],
|
356
|
+
},
|
357
|
+
{
|
358
|
+
title: "Elsewhere on GOV.UK",
|
359
|
+
related_content: [
|
360
|
+
{ title: 'Related link override', link: '/override' }
|
361
|
+
],
|
362
|
+
},
|
363
|
+
]
|
364
|
+
)
|
365
|
+
end
|
366
|
+
|
367
|
+
it 'displays a related link not tagged to any taxons under "Elsewhere"' do
|
368
|
+
content_item = content_item_tagged_to_taxon
|
369
|
+
|
370
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
371
|
+
{
|
372
|
+
'title' => 'Related link override',
|
373
|
+
'base_path' => '/override',
|
374
|
+
'content_id' => 'override',
|
375
|
+
'links' => {},
|
376
|
+
},
|
377
|
+
]
|
378
|
+
|
379
|
+
expect(sidebar_for(content_item)).to eq(
|
380
|
+
items: [
|
381
|
+
{
|
382
|
+
title: "Taxon A",
|
383
|
+
url: "/taxon-a",
|
384
|
+
description: "The A taxon.",
|
385
|
+
related_content: [],
|
386
|
+
},
|
387
|
+
{
|
388
|
+
title: "Taxon B",
|
389
|
+
url: "/taxon-b",
|
390
|
+
description: "The B taxon.",
|
391
|
+
related_content: [],
|
392
|
+
},
|
393
|
+
{
|
394
|
+
title: "Elsewhere on GOV.UK",
|
395
|
+
related_content: [
|
396
|
+
{ title: 'Related link override', link: '/override' }
|
397
|
+
],
|
398
|
+
},
|
399
|
+
]
|
400
|
+
)
|
401
|
+
end
|
402
|
+
|
403
|
+
it 'displays an external related link under "Elsewhere"' do
|
404
|
+
content_item = content_item_tagged_to_taxon
|
405
|
+
|
406
|
+
content_item['links']['ordered_related_items_overrides'] = [
|
407
|
+
{
|
408
|
+
'title' => 'Related link override',
|
409
|
+
'base_path' => '/override',
|
410
|
+
'content_id' => 'override',
|
411
|
+
'links' => {},
|
412
|
+
},
|
413
|
+
]
|
414
|
+
|
415
|
+
content_item['details'] = {
|
416
|
+
'external_related_links' => [
|
417
|
+
{
|
418
|
+
'title' => 'External related link',
|
419
|
+
'url' => 'http://example.com',
|
420
|
+
},
|
421
|
+
]
|
422
|
+
}
|
423
|
+
|
424
|
+
expect(sidebar_for(content_item)).to eq(
|
425
|
+
items: [
|
426
|
+
{
|
427
|
+
title: "Taxon A",
|
428
|
+
url: "/taxon-a",
|
429
|
+
description: "The A taxon.",
|
430
|
+
related_content: [],
|
431
|
+
},
|
432
|
+
{
|
433
|
+
title: "Taxon B",
|
434
|
+
url: "/taxon-b",
|
435
|
+
description: "The B taxon.",
|
436
|
+
related_content: [],
|
437
|
+
},
|
438
|
+
{
|
439
|
+
title: "Elsewhere on GOV.UK",
|
440
|
+
related_content: [
|
441
|
+
{ title: 'Related link override', link: '/override' }
|
442
|
+
],
|
443
|
+
},
|
444
|
+
{
|
445
|
+
title: "Elsewhere on the web",
|
446
|
+
related_content: [
|
447
|
+
{ title: 'External related link', link: 'http://example.com' }
|
448
|
+
],
|
449
|
+
},
|
450
|
+
]
|
451
|
+
)
|
452
|
+
end
|
453
|
+
end
|
454
|
+
end
|
455
|
+
|
189
456
|
context 'when Rummager raises an exception' do
|
190
457
|
error_handler = nil
|
191
458
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: govuk_navigation_helpers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GOV.UK Dev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-05
|
11
|
+
date: 2017-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gds-api-adapters
|
@@ -173,8 +173,10 @@ files:
|
|
173
173
|
- lib/govuk_navigation_helpers/breadcrumbs.rb
|
174
174
|
- lib/govuk_navigation_helpers/configuration.rb
|
175
175
|
- lib/govuk_navigation_helpers/content_item.rb
|
176
|
+
- lib/govuk_navigation_helpers/curated_taxonomy_sidebar_links.rb
|
176
177
|
- lib/govuk_navigation_helpers/grouped_related_links.rb
|
177
178
|
- lib/govuk_navigation_helpers/related_items.rb
|
179
|
+
- lib/govuk_navigation_helpers/rummager_taxonomy_sidebar_links.rb
|
178
180
|
- lib/govuk_navigation_helpers/services.rb
|
179
181
|
- lib/govuk_navigation_helpers/taxon_breadcrumbs.rb
|
180
182
|
- lib/govuk_navigation_helpers/taxonomy_sidebar.rb
|