govuk_publishing_components 25.2.3 → 25.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (19) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/govuk_publishing_components/analytics/track-click.js +9 -4
  3. data/app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js +6 -10
  4. data/app/assets/javascripts/govuk_publishing_components/lib/header-navigation.js +6 -4
  5. data/app/assets/stylesheets/component_guide/application.scss +6 -0
  6. data/app/assets/stylesheets/govuk_publishing_components/components/_cookie-banner.scss +9 -4
  7. data/app/assets/stylesheets/govuk_publishing_components/components/_layout-for-public.scss +52 -0
  8. data/app/views/govuk_publishing_components/components/_cookie_banner.html.erb +1 -1
  9. data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +26 -7
  10. data/app/views/govuk_publishing_components/components/docs/layout_for_public.yml +59 -0
  11. data/app/views/govuk_publishing_components/components/layout_for_public/_account-feedback-footer.html.erb +18 -0
  12. data/app/views/govuk_publishing_components/components/layout_for_public/_account-layout.html.erb +29 -0
  13. data/app/views/govuk_publishing_components/components/layout_for_public/_account-navigation.html.erb +30 -0
  14. data/app/views/govuk_publishing_components/components/layout_header/_navigation_items.html.erb +1 -0
  15. data/app/views/govuk_publishing_components/components/layout_header/_search.html.erb +1 -0
  16. data/config/locales/en.yml +21 -0
  17. data/lib/govuk_publishing_components/presenters/public_layout_helper.rb +2 -1
  18. data/lib/govuk_publishing_components/version.rb +1 -1
  19. metadata +5 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 74b6d888231a927108558b8a25e000da57a26baba4e11d6770b633b9a7b58ea2
4
- data.tar.gz: 2472c91a10dc527834c77982f7ad57585a337aaffd0bc62f5e8a7cffbcb77ed9
3
+ metadata.gz: 41273e4fba800fd43e808314fc1888f6dcfec744c7df9a6cfea11443d37d9493
4
+ data.tar.gz: 87fc6df908f19e12cc2bba6aafaf3e8eff479e33cfc59dcac05ffdb1639c9223
5
5
  SHA512:
6
- metadata.gz: 2ebde6b8dfca166b9185bd13c13a700e1139b819da0cd22e71fdbd856db1d9631f5faf67178a9f1a82ee30277408fc51a6226982df93a8288d3c8f193f9a808c
7
- data.tar.gz: 5327b6f2d764d7a8231339f3912d67ba64e30243c6dde41c96b3fc455b9c7ba91032b9a0a559db24c33f981ab789bcc7c211879d7d78307a91313d0c31519723
6
+ metadata.gz: f9c9af6f11ff227c238b3e5256ee85f460f628f7ae8923835a56e33be33e87659f0ccf94d272ff559717bc7cd0179378a5141f9f76e406ea846249d56c5ae9f3
7
+ data.tar.gz: 165440177ebe3c307decae4789c93d6858c0925c26898c1c68901d72dc437448aed6b7e50a76123b4a17fea577f261262ae80fa245bb437b67b3dd72e139117e
@@ -9,19 +9,26 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
9
9
  GemTrackClick.prototype.start = function ($module) {
10
10
  this.$module = $module[0]
11
11
  this.$module.handleClick = this.handleClick.bind(this)
12
+ var trackLinksOnly = this.$module.hasAttribute('data-track-links-only')
12
13
 
13
14
  var that = this
14
15
  // add a listener to the whole element
15
16
  this.$module.addEventListener('click', function (e) {
16
- that.$module.handleClick(e.target)
17
+ if (!trackLinksOnly) {
18
+ that.$module.handleClick(e.target)
19
+ } else if (trackLinksOnly && e.target.tagName === 'A') {
20
+ that.$module.handleClick(e.target)
21
+ }
17
22
  })
18
23
  }
19
24
 
20
25
  GemTrackClick.prototype.handleClick = function (target) {
21
26
  var options = { transport: 'beacon' }
27
+ var linkText
22
28
 
23
29
  // if clicked element hasn't got the right attributes, look for a parent that matches
24
30
  if (!target.hasAttribute('data-track-category') && !target.hasAttribute('data-track-action')) {
31
+ linkText = target.textContent || target.innerText
25
32
  target = target.closest('[data-track-category][data-track-action]')
26
33
  }
27
34
 
@@ -34,9 +41,7 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
34
41
  var dimensionIndex = target.getAttribute('data-track-dimension-index')
35
42
  var extraOptions = target.getAttribute('data-track-options')
36
43
 
37
- if (label) {
38
- options.label = label
39
- }
44
+ options.label = label || linkText
40
45
 
41
46
  if (value) {
42
47
  options.value = value
@@ -27,13 +27,11 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
27
27
 
28
28
  this.$acceptCookiesButton = this.$module.querySelector('button[data-accept-cookies]')
29
29
  if (this.$acceptCookiesButton) {
30
- this.$acceptCookiesButton.style.display = 'block'
31
30
  this.$acceptCookiesButton.addEventListener('click', this.$module.setCookieConsent)
32
31
  }
33
32
 
34
33
  this.$rejectCookiesButton = this.$module.querySelector('button[data-reject-cookies]')
35
34
  if (this.$rejectCookiesButton) {
36
- this.$rejectCookiesButton.style.display = 'block'
37
35
  this.$rejectCookiesButton.addEventListener('click', this.$module.rejectCookieConsent)
38
36
  }
39
37
 
@@ -46,7 +44,7 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
46
44
  var shouldHaveCookieMessage = (this.$module && window.GOVUK.cookie('cookies_preferences_set') !== 'true')
47
45
 
48
46
  if (shouldHaveCookieMessage) {
49
- this.$module.style.display = 'block'
47
+ this.$module.removeAttribute('hidden')
50
48
 
51
49
  // Set the default consent cookie if it isn't already present
52
50
  if (!window.GOVUK.cookie('cookies_policy')) {
@@ -55,17 +53,16 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
55
53
 
56
54
  window.GOVUK.deleteUnconsentedCookies()
57
55
  } else {
58
- this.$module.style.display = 'none'
56
+ this.$module.setAttribute('hidden', '')
59
57
  }
60
58
  } else {
61
- this.$module.style.display = 'none'
59
+ this.$module.setAttribute('hidden', '')
62
60
  }
63
61
  }
64
62
 
65
63
  CookieBanner.prototype.hideCookieMessage = function (event) {
66
64
  if (this.$module) {
67
- this.$module.hidden = true
68
- this.$module.style.display = 'none'
65
+ this.$module.setAttribute('hidden', '')
69
66
  window.GOVUK.cookie('cookies_preferences_set', 'true', { days: 365 })
70
67
  }
71
68
 
@@ -101,9 +98,8 @@ window.GOVUK.Modules = window.GOVUK.Modules || {};
101
98
  CookieBanner.prototype.showConfirmationMessage = function () {
102
99
  this.$cookieBannerMainContent = document.querySelector('.js-banner-wrapper')
103
100
 
104
- this.$cookieBannerMainContent.hidden = true
105
- this.$module.cookieBannerConfirmationMessage.style.display = 'block'
106
- this.$module.cookieBannerConfirmationMessage.hidden = false
101
+ this.$cookieBannerMainContent.setAttribute('hidden', '')
102
+ this.$module.cookieBannerConfirmationMessage.removeAttribute('hidden')
107
103
  }
108
104
 
109
105
  CookieBanner.prototype.isInCookiesPage = function () {
@@ -47,16 +47,17 @@
47
47
  var isSearchToggle = sourceClass.match('search-toggle')
48
48
  var showText = this.getAttribute('data-show-text') || 'Show search'
49
49
  var hideText = this.getAttribute('data-hide-text') || 'Hide search'
50
+ var buttonName = this.getAttribute('data-button-name') || 'menu'
50
51
 
51
52
  if (targetClass.indexOf('js-visible') !== -1) {
52
53
  target.setAttribute('class', targetClass.replace(/(^|\s)js-visible(\s|$)/, ''))
53
54
  if (window.GOVUK.analytics && window.GOVUK.analytics.trackEvent) {
54
- window.GOVUK.analytics.trackEvent('headerClicked', 'menuClosed', { label: 'none' })
55
+ window.GOVUK.analytics.trackEvent('headerClicked', buttonName + 'Closed', { label: 'none' })
55
56
  }
56
57
  } else {
57
58
  target.setAttribute('class', targetClass + ' js-visible')
58
59
  if (window.GOVUK.analytics && window.GOVUK.analytics.trackEvent) {
59
- window.GOVUK.analytics.trackEvent('headerClicked', 'menuOpened', { label: 'none' })
60
+ window.GOVUK.analytics.trackEvent('headerClicked', buttonName + 'Opened', { label: 'none' })
60
61
  }
61
62
  }
62
63
  if (sourceClass.indexOf('js-visible') !== -1) {
@@ -84,13 +85,14 @@
84
85
  var element = $menuToggleButtons[j]
85
86
 
86
87
  element.addEventListener('click', function (event) {
88
+ var buttonName = event.target.getAttribute('data-button-name') || 'menu'
87
89
  var expanded = event.target.getAttribute('aria-expanded')
88
90
 
89
91
  if (window.GOVUK.analytics && window.GOVUK.analytics.trackEvent) {
90
92
  if (expanded === 'true') {
91
- window.GOVUK.analytics.trackEvent('headerClicked', 'menuClosed', { label: 'none' })
93
+ window.GOVUK.analytics.trackEvent('headerClicked', buttonName + 'Closed', { label: 'none' })
92
94
  } else {
93
- window.GOVUK.analytics.trackEvent('headerClicked', 'menuOpened', { label: 'none' })
95
+ window.GOVUK.analytics.trackEvent('headerClicked', buttonName + 'Opened', { label: 'none' })
94
96
  }
95
97
  }
96
98
  })
@@ -499,3 +499,9 @@ $code-delete-bg: #fadddd;
499
499
  top: 0;
500
500
  background: govuk-colour("white");
501
501
  }
502
+
503
+ .gem-c-cookie-banner[hidden] {
504
+ .js-enabled & {
505
+ display: block;
506
+ }
507
+ }
@@ -1,9 +1,10 @@
1
1
  @import "govuk/components/cookie-banner/cookie-banner";
2
2
  $govuk-cookie-banner-background: govuk-colour("light-grey", "grey-4");
3
3
 
4
- .js-enabled {
5
- .gem-c-cookie-banner {
6
- display: none; // shown with JS, always on for non-JS
4
+ .gem-c-cookie-banner[hidden] {
5
+ display: block; // shown with JS, always on for non-JS
6
+ .js-enabled & {
7
+ display: none;
7
8
  }
8
9
  }
9
10
 
@@ -14,9 +15,13 @@ $govuk-cookie-banner-background: govuk-colour("light-grey", "grey-4");
14
15
  // can't be used without js so implement there
15
16
  .gem-c-cookie-banner .gem-c-button {
16
17
  display: none;
18
+
19
+ .js-enabled & {
20
+ display: block;
21
+ }
17
22
  }
18
23
 
19
- .gem-c-cookie-banner__confirmation {
24
+ .gem-c-cookie-banner__confirmation[hidden] {
20
25
  display: none;
21
26
  position: relative;
22
27
  padding: govuk-spacing(1);
@@ -11,3 +11,55 @@
11
11
  margin-top: - govuk-spacing(2);
12
12
  position: relative;
13
13
  }
14
+
15
+ .gem-c-layout-for-public-account-menu {
16
+ margin: 0 0 govuk-spacing(6) 0;
17
+ padding: 0;
18
+
19
+ @include govuk-media-query($from: desktop) {
20
+ margin-right: govuk-spacing(4);
21
+ }
22
+ }
23
+
24
+ // Used to determine width of blue location indicator in navigation mention
25
+ $current-indicator-width: 4px;
26
+
27
+ .gem-c-layout-for-public-account-menu__item {
28
+ list-style-type: none;
29
+ padding: 12px 0;
30
+
31
+ @include govuk-media-query($from: tablet) {
32
+ margin: 0 0 govuk-spacing(4);
33
+ padding: govuk-spacing(1) 0;
34
+ }
35
+ }
36
+
37
+ .gem-c-layout-for-public-account-menu__item--current {
38
+ margin-left: -(govuk-spacing(2) + $current-indicator-width);
39
+ padding-left: govuk-spacing(2);
40
+ border-left: $current-indicator-width solid govuk-colour("blue");
41
+
42
+ .gem-c-layout-for-public-account-menu__link {
43
+ text-decoration: none;
44
+ }
45
+ }
46
+
47
+ .gem-c-layout-for-public-account-menu__link {
48
+ @include govuk-font(19, $weight: "bold");
49
+
50
+ &:not(:focus):hover {
51
+ color: $govuk-link-colour;
52
+ }
53
+ }
54
+
55
+ .gem-c-layout-for-public-account-feedback-footer {
56
+ margin-bottom: govuk-spacing(4);
57
+ padding: govuk-spacing(3);
58
+ background: govuk-colour("light-grey");
59
+
60
+ @include govuk-media-query($from: tablet) {
61
+ padding: govuk-spacing(6);
62
+ margin-top: govuk-spacing(2);
63
+ margin-bottom: govuk-spacing(8);
64
+ }
65
+ }
@@ -29,7 +29,7 @@
29
29
  css_classes = %w(gem-c-cookie-banner govuk-clearfix)
30
30
  css_classes << "gem-c-cookie-banner--services" if services_cookies
31
31
  %>
32
- <div id="<%= id %>" class="<%= css_classes.join(' ') %>" data-module="cookie-banner" role="region" aria-label="cookie banner" data-nosnippet>
32
+ <div id="<%= id %>" class="<%= css_classes.join(' ') %>" data-module="cookie-banner" role="region" aria-label="cookie banner" data-nosnippet hidden>
33
33
  <div class="govuk-cookie-banner js-banner-wrapper" role="region" aria-label="<%= title %>">
34
34
  <div class="gem-c-cookie-banner__message govuk-cookie-banner__message govuk-width-container">
35
35
  <div class="govuk-grid-row">
@@ -14,6 +14,12 @@
14
14
  show_search = local_assigns.include?(:show_search) ? local_assigns[:show_search] : true
15
15
  title ||= "GOV.UK - The best place to find government services and information"
16
16
 
17
+ show_account_layout ||= false
18
+ account_nav_location ||= nil
19
+ omit_account_feedback_footer ||= false
20
+ omit_account_navigation ||= false
21
+ omit_account_phase_banner ||= false
22
+
17
23
  # This is a hack - but it's the only way I can find to not have two blue bars on
18
24
  # constrained width layouts.
19
25
  #
@@ -74,7 +80,7 @@
74
80
  href: "#content"
75
81
  } %>
76
82
 
77
- <%= render "govuk_publishing_components/components/cookie_banner" %>
83
+ <%= render "govuk_publishing_components/components/cookie_banner", layout_helper.cookie_banner_data %>
78
84
 
79
85
  <% unless omit_header %>
80
86
  <% if show_explore_header %>
@@ -107,14 +113,27 @@
107
113
  <% end %>
108
114
  <% end %>
109
115
 
110
- <div id="wrapper" class="<%= "govuk-width-container" unless full_width %>">
111
- <%= yield :before_content %>
112
- <main class="govuk-main-wrapper" id="content">
116
+ <% if show_account_layout %>
117
+ <%= render "govuk_publishing_components/components/layout_for_public/account-layout", {
118
+ omit_account_phase_banner: omit_account_phase_banner,
119
+ omit_account_navigation: omit_account_navigation,
120
+ account_nav_location: account_nav_location,
121
+ } do %>
122
+ <%= yield :before_content %>
113
123
  <%= yield %>
114
- </main>
115
- </div>
124
+ <% end %>
125
+ <% else %>
126
+ <div id="wrapper" class="<%= "govuk-width-container" unless full_width %>">
127
+ <%= yield :before_content %>
128
+ <main class="govuk-main-wrapper" id="content">
129
+ <%= yield %>
130
+ </main>
131
+ </div>
132
+ <% end %>
116
133
 
117
- <% unless omit_feedback_form %>
134
+ <% if show_account_layout && !omit_account_feedback_footer %>
135
+ <%= render "govuk_publishing_components/components/layout_for_public/account-feedback-footer" %>
136
+ <% elsif !omit_feedback_form %>
118
137
  <div class="govuk-width-container">
119
138
  <%= render "govuk_publishing_components/components/feedback" %>
120
139
  </div>
@@ -61,3 +61,62 @@ examples:
61
61
  data:
62
62
  emergency_banner: <div class="govuk-!-padding-top-3 govuk-!-padding-bottom-3">This is the emergency banner slot</div>
63
63
  global_bar: <div class="govuk-!-padding-top-5 govuk-!-padding-bottom-3">This is the global bar slot</div>
64
+ with_account_layout_enabled:
65
+ description: Adds account layout wrapper around the content passed in to the component
66
+ data:
67
+ show_account_layout: true
68
+ block: |
69
+ <h2 class="govuk-heading-l">This is a title</h2>
70
+ <p class="govuk-body">This is some body text with <a href="https://example.com">a link</a>.
71
+ with_account_layout_but_without_account_feedback_footer:
72
+ description: The account layout renders with an account-specific feedback banner by default. This flag allows this banner to be omitted.
73
+ data:
74
+ show_account_layout: true
75
+ omit_account_feedback_footer: true
76
+ block: |
77
+ <h2 class="govuk-heading-l">This is a title</h2>
78
+ <p class="govuk-body">This is some body text with <a href="https://example.com">a link</a>.</p>
79
+ with_current_account_navigation:
80
+ description: "The account layout renders with an account-specific nav to help users navigate different areas of their account. This flag is here to allow control over which option in the nav is highlighted as `current`. Valid options are currently `your-account`, `manage`, and `security`."
81
+ data:
82
+ show_account_layout: true
83
+ account_nav_location: "manage"
84
+ block: |
85
+ <h2 class="govuk-heading-l">This is a title</h2>
86
+ <p class="govuk-body">This is a page under the "Manage your account" section, so we must highlight "Manage your account" in the account navigation.</p>
87
+ with_account_layout_but_without_account_navigation:
88
+ description: The account layout renders with account navigation by default, this hides it.
89
+ data:
90
+ show_account_layout: true
91
+ omit_account_navigation: true
92
+ block: |
93
+ <h2 class="govuk-heading-l">This is a title</h2>
94
+ <p class="govuk-body">This is some body text with <a href="https://example.com">a link</a>.</p>
95
+ with_account_layout_but_without_account_phase_banner:
96
+ description: The account layout renders with a phase banner by default, this hides it.
97
+ data:
98
+ show_account_layout: true
99
+ omit_account_phase_banner: true
100
+ block: |
101
+ <h2 class="govuk-heading-l">This is a title</h2>
102
+ <p class="govuk-body">This is some body text with <a href="https://example.com">a link</a>.</p>
103
+ with_custom_cookie_banner:
104
+ description: Passes content through to the [cookie banner component](/component-guide/cookie_banner/).
105
+ data:
106
+ cookie_banner_data:
107
+ title: Can we use cookies to collect information about how you use GOV.UK?
108
+ text: Cookies help us see where we can make improvements to GOV.UK.
109
+ confirmation_message: You have accepted cookies.
110
+ cookie_preferences_href: https://www.gov.uk/government/publications/govuk-accounts-trial-full-privacy-notice-and-accessibility-statement
111
+ services_cookies:
112
+ yes:
113
+ text: Yes
114
+ data_attributes:
115
+ track_category: cookieBanner
116
+ no:
117
+ text: No
118
+ data_attributes:
119
+ track-category: cookieBanner
120
+ cookie_preferences:
121
+ text: How GOV.UK accounts use cookies
122
+ href: https://www.gov.uk/government/publications/govuk-accounts-trial-full-privacy-notice-and-accessibility-statement
@@ -0,0 +1,18 @@
1
+ <%= tag.div(class: "govuk-width-container") do %>
2
+ <%= tag.div(class: "gem-c-layout-for-public-account-feedback-footer") do %>
3
+ <%= render "govuk_publishing_components/components/heading", {
4
+ text: t("components.layout_for_public.account_layout.feedback.banners.title"),
5
+ heading_level: 2,
6
+ font_size: "m",
7
+ margin_bottom: 4,
8
+ } %>
9
+
10
+ <p class="govuk-body govuk-!-margin-bottom-0">
11
+ <%= t("components.layout_for_public.account_layout.feedback.banners.footer_intro") %>
12
+ <a href="<%= "#{Plek.find('account-manager')}/feedback" %>" class="govuk-link">
13
+ <%= t("components.layout_for_public.account_layout.feedback.banners.footer_link") %>
14
+ </a>
15
+ <%= t("components.layout_for_public.account_layout.feedback.banners.footer_outro") %>
16
+ </p>
17
+ <% end %>
18
+ <% end %>
@@ -0,0 +1,29 @@
1
+ <div class="govuk-width-container">
2
+ <% message = capture do %>
3
+ <%= t("components.layout_for_public.account_layout.feedback.banners.phase_intro") %>
4
+ <a class="govuk-link" href=<%= "#{Plek.find('account-manager')}/feedback" %>>
5
+ <%= t("components.layout_for_public.account_layout.feedback.banners.phase_link") %>
6
+ </a>
7
+ <%= t("components.layout_for_public.account_layout.feedback.banners.phase_outro") %>
8
+ <% end %>
9
+
10
+ <%= render "govuk_publishing_components/components/phase_banner", {
11
+ phase: "alpha",
12
+ message: message
13
+ } unless omit_account_phase_banner %>
14
+
15
+ <div class="govuk-grid-row govuk-main-wrapper">
16
+ <%= tag.div(class: 'govuk-grid-column-one-third') do %>
17
+ <%= render "govuk_publishing_components/components/layout_for_public/account-navigation", { page_is: account_nav_location} %>
18
+ <% end unless omit_account_navigation %>
19
+
20
+ <div class="govuk-grid-column-two-thirds">
21
+ <div id="wrapper">
22
+ <%= yield :before_content %>
23
+ <main role="main" id="content">
24
+ <%= yield %>
25
+ </main>
26
+ </div>
27
+ </div>
28
+ </div>
29
+ </div>
@@ -0,0 +1,30 @@
1
+ <% page_is ||= nil %>
2
+
3
+ <nav aria-label="Account management" class="gem-c-layout-for-public-account-nav">
4
+ <ul class="gem-c-layout-for-public-account-menu">
5
+ <li class="gem-c-layout-for-public-account-menu__item <%= "gem-c-layout-for-public-account-menu__item--current" if page_is == "your-account" %>">
6
+ <%= link_to(
7
+ t("components.layout_for_public.account_layout.navigation.menu_bar.account.link_text"),
8
+ "#{Plek.find('account-manager')}",
9
+ class: 'gem-c-layout-for-public-account-menu__link govuk-link govuk-link--no-visited-state',
10
+ 'aria-current': page_is == "your-account" ? "page" : nil,
11
+ ) %>
12
+ </li>
13
+ <li class="gem-c-layout-for-public-account-menu__item <%= "gem-c-layout-for-public-account-menu__item--current" if page_is == "manage" %>">
14
+ <%= link_to(
15
+ t("components.layout_for_public.account_layout.navigation.menu_bar.manage.link_text"),
16
+ "#{Plek.find('account-manager')}/account/manage",
17
+ class: 'gem-c-layout-for-public-account-menu__link govuk-link govuk-link--no-visited-state',
18
+ 'aria-current': page_is == "manage" ? "page" : nil,
19
+ ) %>
20
+ </li>
21
+ <li class="gem-c-layout-for-public-account-menu__item <%= "gem-c-layout-for-public-account-menu__item--current" if page_is == "security" %>">
22
+ <%= link_to(
23
+ t("components.layout_for_public.account_layout.navigation.menu_bar.security.link_text"),
24
+ "#{Plek.find('account-manager')}/account/security",
25
+ class: 'gem-c-layout-for-public-account-menu__link govuk-link govuk-link--no-visited-state',
26
+ 'aria-current': page_is == "security" ? "page" : nil,
27
+ ) %>
28
+ </li>
29
+ </ul>
30
+ </nav>
@@ -6,6 +6,7 @@
6
6
  aria-label="Show or hide Top Level Navigation"
7
7
  class="govuk-header__menu-button govuk-js-header-toggle gem-c-header__menu-button govuk-!-display-none-print"
8
8
  type="button"
9
+ data-button-name="menu"
9
10
  >
10
11
  <%= t("components.layout_header.menu") %>
11
12
  </button>
@@ -1,6 +1,7 @@
1
1
  <button
2
2
  class="search-toggle js-header-toggle"
3
3
  data-search-toggle-for="search"
4
+ data-button-name="search"
4
5
  data-show-text="<%= t("components.layout_header.show_button") %>"
5
6
  data-hide-text="<%= t("components.layout_header.hide_button") %>"
6
7
  >
@@ -81,6 +81,27 @@ en:
81
81
  copyright_html: <a class="govuk-footer__link govuk-footer__copyright-logo" href="http://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/copyright-and-re-use/crown-copyright/">© Crown copyright</a>
82
82
  licence_html: All content is available under the <a class="govuk-footer__link" href="https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/" rel="license">Open Government Licence v3.0</a>, except where otherwise stated
83
83
  support_links: Support links
84
+ layout_for_public:
85
+ account_layout:
86
+ feedback:
87
+ banners:
88
+ footer_intro: We’re trialling GOV.UK accounts.
89
+ footer_link: Give feedback
90
+ footer_outro: on your experience so we can make them better.
91
+ phase_intro: We’re trialling GOV.UK accounts - your
92
+ phase_link: feedback
93
+ phase_outro: will help us improve them.
94
+ title: Help improve GOV.UK accounts
95
+ navigation:
96
+ destroy_user_session: Sign out
97
+ menu_bar:
98
+ account:
99
+ link_text: Your account
100
+ manage:
101
+ link_text: Manage your account
102
+ security:
103
+ link_text: Security and privacy
104
+ user_root_path: Account
84
105
  layout_header:
85
106
  hide_button: Hide search
86
107
  menu: Menu
@@ -361,11 +361,12 @@ module GovukPublishingComponents
361
361
  ],
362
362
  }.freeze
363
363
 
364
- attr_reader :footer_navigation, :footer_meta
364
+ attr_reader :footer_navigation, :footer_meta, :cookie_banner_data
365
365
 
366
366
  def initialize(local_assigns)
367
367
  @footer_navigation = local_assigns[:footer_navigation] || FOOTER_NAV
368
368
  @footer_meta = local_assigns[:footer_meta] || FOOTER_META
369
+ @cookie_banner_data = local_assigns[:cookie_banner_data] || {}
369
370
  end
370
371
  end
371
372
  end
@@ -1,3 +1,3 @@
1
1
  module GovukPublishingComponents
2
- VERSION = "25.2.3".freeze
2
+ VERSION = "25.3.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: govuk_publishing_components
3
3
  version: !ruby/object:Gem::Version
4
- version: 25.2.3
4
+ version: 25.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: 2021-08-09 00:00:00.000000000 Z
11
+ date: 2021-08-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: govuk_app_config
@@ -812,6 +812,9 @@ files:
812
812
  - app/views/govuk_publishing_components/components/feedback/_problem_form.html.erb
813
813
  - app/views/govuk_publishing_components/components/feedback/_survey_signup_form.html.erb
814
814
  - app/views/govuk_publishing_components/components/feedback/_yes_no_banner.html.erb
815
+ - app/views/govuk_publishing_components/components/layout_for_public/_account-feedback-footer.html.erb
816
+ - app/views/govuk_publishing_components/components/layout_for_public/_account-layout.html.erb
817
+ - app/views/govuk_publishing_components/components/layout_for_public/_account-navigation.html.erb
815
818
  - app/views/govuk_publishing_components/components/layout_header/_header_logo.html.erb
816
819
  - app/views/govuk_publishing_components/components/layout_header/_navigation_items.html.erb
817
820
  - app/views/govuk_publishing_components/components/layout_header/_search.html.erb