ccs-frontend_helpers 3.5.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1bf265f14acc642010d47b175977bdffa353900061e2264145423e8bb03000c9
4
- data.tar.gz: 1fc0369b330f35bbdfe8106c34e96fab791c59ffa796633fdfdc246095b6fdbb
3
+ metadata.gz: aeda4e8c3662cb334e562a5db44effe7e97273868df09d2e9591b1387a95fc80
4
+ data.tar.gz: bfa7228de3381faee7f39a2c5b67b8e86d8561ff0dc0c324c5b5fec67845cfde
5
5
  SHA512:
6
- metadata.gz: 12a68aa2aa3af988e6272c89b9d71d3dea4e745958f873c9dae96a16418ea3d6057b298e87952fc536744d3a63f3b3ab3f8e33a4ac378670a9acd9c838acdab1
7
- data.tar.gz: 25d9bcb35a00bde3588ffae2a214d6d3c09970e2dd2c1cfdb04da7f3682b022b3ba6eb4e4daaba18303eab53ae5a7126bb16c68720d90bde5a9f901572201796
6
+ metadata.gz: 44047afcab8d8bb51b6d531c0453a57679c81a2eddbe6f1afb3c4fcabb2b760898fbcb14e6197743e52530ba104f46154351ea80f6735bb6369380c407b1ea8d
7
+ data.tar.gz: 858cf09dfaa4509096b0d29c12e21f084ff29e81abfa7eafa734ddfec9c033a9eeb0dec99c7a5ed47d958d5eb312deb599251899c04d10a4adb111928c9f07db
data/CHANGELOG.md CHANGED
@@ -7,6 +7,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [4.1.0] - 2026-05-05
11
+
12
+ ### Added
13
+
14
+ - Updated CCS Frontend to v3.2.0
15
+
16
+ ## [4.0.0] - 2026-03-12
17
+
18
+ ### Added
19
+
20
+ - Updated CCS Frontend to v3.0.0
21
+ - Updated GOV.UK Frontend to v6.1.0
22
+ - Updated CCS Frontend to v3.1.0
23
+
10
24
  ## [3.5.0] - 2026-02-02
11
25
 
12
26
  ### Added
data/Gemfile CHANGED
@@ -7,7 +7,7 @@ gemspec
7
7
 
8
8
  # Gems for building the package
9
9
  gem 'bundler', '~> 2.3'
10
- gem 'rake', '~> 13.3'
10
+ gem 'rake', '~> 13.4'
11
11
 
12
12
  # Gems for testing the package
13
13
  gem 'capybara', '~> 3.40.0'
@@ -16,8 +16,8 @@ gem 'simplecov', '~> 0.21'
16
16
  gem 'nokogiri-diff', '~> 0.3.0'
17
17
 
18
18
  # Gems for linting/formatting the package
19
- gem 'rubocop', '~> 1.84'
20
- gem 'rubocop-capybara', '~> 2.22'
19
+ gem 'rubocop', '~> 1.86'
20
+ gem 'rubocop-capybara', '~> 2.23'
21
21
  gem 'rubocop-rails', '~> 2.34'
22
22
  gem 'rubocop-rake', '~> 0.7'
23
23
  gem 'rubocop-rspec', '~> 3.9'
data/Gemfile.lock CHANGED
@@ -1,37 +1,37 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ccs-frontend_helpers (3.5.0)
4
+ ccs-frontend_helpers (4.1.0)
5
5
  rails (>= 7.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- action_text-trix (2.1.16)
10
+ action_text-trix (2.1.18)
11
11
  railties
12
- actioncable (8.1.2)
13
- actionpack (= 8.1.2)
14
- activesupport (= 8.1.2)
12
+ actioncable (8.1.3)
13
+ actionpack (= 8.1.3)
14
+ activesupport (= 8.1.3)
15
15
  nio4r (~> 2.0)
16
16
  websocket-driver (>= 0.6.1)
17
17
  zeitwerk (~> 2.6)
18
- actionmailbox (8.1.2)
19
- actionpack (= 8.1.2)
20
- activejob (= 8.1.2)
21
- activerecord (= 8.1.2)
22
- activestorage (= 8.1.2)
23
- activesupport (= 8.1.2)
18
+ actionmailbox (8.1.3)
19
+ actionpack (= 8.1.3)
20
+ activejob (= 8.1.3)
21
+ activerecord (= 8.1.3)
22
+ activestorage (= 8.1.3)
23
+ activesupport (= 8.1.3)
24
24
  mail (>= 2.8.0)
25
- actionmailer (8.1.2)
26
- actionpack (= 8.1.2)
27
- actionview (= 8.1.2)
28
- activejob (= 8.1.2)
29
- activesupport (= 8.1.2)
25
+ actionmailer (8.1.3)
26
+ actionpack (= 8.1.3)
27
+ actionview (= 8.1.3)
28
+ activejob (= 8.1.3)
29
+ activesupport (= 8.1.3)
30
30
  mail (>= 2.8.0)
31
31
  rails-dom-testing (~> 2.2)
32
- actionpack (8.1.2)
33
- actionview (= 8.1.2)
34
- activesupport (= 8.1.2)
32
+ actionpack (8.1.3)
33
+ actionview (= 8.1.3)
34
+ activesupport (= 8.1.3)
35
35
  nokogiri (>= 1.8.5)
36
36
  rack (>= 2.2.4)
37
37
  rack-session (>= 1.0.1)
@@ -39,36 +39,36 @@ GEM
39
39
  rails-dom-testing (~> 2.2)
40
40
  rails-html-sanitizer (~> 1.6)
41
41
  useragent (~> 0.16)
42
- actiontext (8.1.2)
42
+ actiontext (8.1.3)
43
43
  action_text-trix (~> 2.1.15)
44
- actionpack (= 8.1.2)
45
- activerecord (= 8.1.2)
46
- activestorage (= 8.1.2)
47
- activesupport (= 8.1.2)
44
+ actionpack (= 8.1.3)
45
+ activerecord (= 8.1.3)
46
+ activestorage (= 8.1.3)
47
+ activesupport (= 8.1.3)
48
48
  globalid (>= 0.6.0)
49
49
  nokogiri (>= 1.8.5)
50
- actionview (8.1.2)
51
- activesupport (= 8.1.2)
50
+ actionview (8.1.3)
51
+ activesupport (= 8.1.3)
52
52
  builder (~> 3.1)
53
53
  erubi (~> 1.11)
54
54
  rails-dom-testing (~> 2.2)
55
55
  rails-html-sanitizer (~> 1.6)
56
- activejob (8.1.2)
57
- activesupport (= 8.1.2)
56
+ activejob (8.1.3)
57
+ activesupport (= 8.1.3)
58
58
  globalid (>= 0.3.6)
59
- activemodel (8.1.2)
60
- activesupport (= 8.1.2)
61
- activerecord (8.1.2)
62
- activemodel (= 8.1.2)
63
- activesupport (= 8.1.2)
59
+ activemodel (8.1.3)
60
+ activesupport (= 8.1.3)
61
+ activerecord (8.1.3)
62
+ activemodel (= 8.1.3)
63
+ activesupport (= 8.1.3)
64
64
  timeout (>= 0.4.0)
65
- activestorage (8.1.2)
66
- actionpack (= 8.1.2)
67
- activejob (= 8.1.2)
68
- activerecord (= 8.1.2)
69
- activesupport (= 8.1.2)
65
+ activestorage (8.1.3)
66
+ actionpack (= 8.1.3)
67
+ activejob (= 8.1.3)
68
+ activerecord (= 8.1.3)
69
+ activesupport (= 8.1.3)
70
70
  marcel (~> 1.0)
71
- activesupport (8.1.2)
71
+ activesupport (8.1.3)
72
72
  base64
73
73
  bigdecimal
74
74
  concurrent-ruby (~> 1.0, >= 1.3.1)
@@ -81,11 +81,11 @@ GEM
81
81
  securerandom (>= 0.3)
82
82
  tzinfo (~> 2.0, >= 2.0.5)
83
83
  uri (>= 0.13.1)
84
- addressable (2.8.6)
85
- public_suffix (>= 2.0.2, < 6.0)
84
+ addressable (2.9.0)
85
+ public_suffix (>= 2.0.2, < 8.0)
86
86
  ast (2.4.3)
87
87
  base64 (0.3.0)
88
- bigdecimal (4.0.1)
88
+ bigdecimal (4.1.0)
89
89
  builder (3.3.0)
90
90
  capybara (3.40.0)
91
91
  addressable
@@ -103,22 +103,23 @@ GEM
103
103
  diff-lcs (1.6.2)
104
104
  docile (1.4.0)
105
105
  drb (2.2.3)
106
- erb (6.0.1)
106
+ erb (6.0.4)
107
107
  erubi (1.13.1)
108
108
  globalid (1.3.0)
109
109
  activesupport (>= 6.1)
110
110
  i18n (1.14.8)
111
111
  concurrent-ruby (~> 1.0)
112
112
  io-console (0.8.2)
113
- irb (1.16.0)
113
+ irb (1.17.0)
114
114
  pp (>= 0.6.0)
115
+ prism (>= 1.3.0)
115
116
  rdoc (>= 4.0.0)
116
117
  reline (>= 0.4.2)
117
- json (2.18.0)
118
+ json (2.19.4)
118
119
  language_server-protocol (3.17.0.5)
119
120
  lint_roller (1.1.0)
120
121
  logger (1.7.0)
121
- loofah (2.25.0)
122
+ loofah (2.25.1)
122
123
  crass (~> 1.0.2)
123
124
  nokogiri (>= 1.12.0)
124
125
  mail (2.9.0)
@@ -130,9 +131,10 @@ GEM
130
131
  marcel (1.1.0)
131
132
  matrix (0.4.2)
132
133
  mini_mime (1.1.5)
133
- minitest (6.0.1)
134
+ minitest (6.0.2)
135
+ drb (~> 2.0)
134
136
  prism (~> 1.5)
135
- net-imap (0.6.2)
137
+ net-imap (0.6.3)
136
138
  date
137
139
  net-protocol
138
140
  net-pop (0.1.2)
@@ -142,17 +144,17 @@ GEM
142
144
  net-smtp (0.5.1)
143
145
  net-protocol
144
146
  nio4r (2.7.5)
145
- nokogiri (1.19.0-arm64-darwin)
147
+ nokogiri (1.19.2-arm64-darwin)
146
148
  racc (~> 1.4)
147
- nokogiri (1.19.0-x86_64-darwin)
149
+ nokogiri (1.19.2-x86_64-darwin)
148
150
  racc (~> 1.4)
149
- nokogiri (1.19.0-x86_64-linux-gnu)
151
+ nokogiri (1.19.2-x86_64-linux-gnu)
150
152
  racc (~> 1.4)
151
153
  nokogiri-diff (0.3.0)
152
154
  nokogiri (~> 1.5)
153
155
  tdiff (~> 0.4)
154
- parallel (1.27.0)
155
- parser (3.3.10.1)
156
+ parallel (1.28.0)
157
+ parser (3.3.11.1)
156
158
  ast (~> 2.4.1)
157
159
  racc
158
160
  pp (0.6.3)
@@ -162,40 +164,40 @@ GEM
162
164
  psych (5.3.1)
163
165
  date
164
166
  stringio
165
- public_suffix (5.0.4)
167
+ public_suffix (7.0.5)
166
168
  racc (1.8.1)
167
- rack (3.2.4)
168
- rack-session (2.1.1)
169
+ rack (3.2.6)
170
+ rack-session (2.1.2)
169
171
  base64 (>= 0.1.0)
170
172
  rack (>= 3.0.0)
171
173
  rack-test (2.2.0)
172
174
  rack (>= 1.3)
173
175
  rackup (2.3.1)
174
176
  rack (>= 3)
175
- rails (8.1.2)
176
- actioncable (= 8.1.2)
177
- actionmailbox (= 8.1.2)
178
- actionmailer (= 8.1.2)
179
- actionpack (= 8.1.2)
180
- actiontext (= 8.1.2)
181
- actionview (= 8.1.2)
182
- activejob (= 8.1.2)
183
- activemodel (= 8.1.2)
184
- activerecord (= 8.1.2)
185
- activestorage (= 8.1.2)
186
- activesupport (= 8.1.2)
177
+ rails (8.1.3)
178
+ actioncable (= 8.1.3)
179
+ actionmailbox (= 8.1.3)
180
+ actionmailer (= 8.1.3)
181
+ actionpack (= 8.1.3)
182
+ actiontext (= 8.1.3)
183
+ actionview (= 8.1.3)
184
+ activejob (= 8.1.3)
185
+ activemodel (= 8.1.3)
186
+ activerecord (= 8.1.3)
187
+ activestorage (= 8.1.3)
188
+ activesupport (= 8.1.3)
187
189
  bundler (>= 1.15.0)
188
- railties (= 8.1.2)
190
+ railties (= 8.1.3)
189
191
  rails-dom-testing (2.3.0)
190
192
  activesupport (>= 5.0.0)
191
193
  minitest
192
194
  nokogiri (>= 1.6)
193
- rails-html-sanitizer (1.6.2)
194
- loofah (~> 2.21)
195
+ rails-html-sanitizer (1.7.0)
196
+ loofah (~> 2.25)
195
197
  nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
196
- railties (8.1.2)
197
- actionpack (= 8.1.2)
198
- activesupport (= 8.1.2)
198
+ railties (8.1.3)
199
+ actionpack (= 8.1.3)
200
+ activesupport (= 8.1.3)
199
201
  irb (~> 1.13)
200
202
  rackup (>= 1.0.0)
201
203
  rake (>= 12.2)
@@ -203,12 +205,12 @@ GEM
203
205
  tsort (>= 0.2)
204
206
  zeitwerk (~> 2.6)
205
207
  rainbow (3.1.1)
206
- rake (13.3.1)
207
- rdoc (7.0.3)
208
+ rake (13.4.2)
209
+ rdoc (7.2.0)
208
210
  erb
209
211
  psych (>= 4.0.0)
210
212
  tsort
211
- regexp_parser (2.11.3)
213
+ regexp_parser (2.12.0)
212
214
  reline (0.6.3)
213
215
  io-console (~> 0.5)
214
216
  rspec (3.13.2)
@@ -224,23 +226,23 @@ GEM
224
226
  diff-lcs (>= 1.2.0, < 2.0)
225
227
  rspec-support (~> 3.13.0)
226
228
  rspec-support (3.13.6)
227
- rubocop (1.84.0)
229
+ rubocop (1.86.1)
228
230
  json (~> 2.3)
229
231
  language_server-protocol (~> 3.17.0.2)
230
232
  lint_roller (~> 1.1.0)
231
- parallel (~> 1.10)
233
+ parallel (>= 1.10)
232
234
  parser (>= 3.3.0.2)
233
235
  rainbow (>= 2.2.2, < 4.0)
234
236
  regexp_parser (>= 2.9.3, < 3.0)
235
237
  rubocop-ast (>= 1.49.0, < 2.0)
236
238
  ruby-progressbar (~> 1.7)
237
239
  unicode-display_width (>= 2.4.0, < 4.0)
238
- rubocop-ast (1.49.0)
240
+ rubocop-ast (1.49.1)
239
241
  parser (>= 3.3.7.2)
240
242
  prism (~> 1.7)
241
- rubocop-capybara (2.22.1)
243
+ rubocop-capybara (2.23.0)
242
244
  lint_roller (~> 1.1)
243
- rubocop (~> 1.72, >= 1.72.1)
245
+ rubocop (~> 1.81)
244
246
  rubocop-rails (2.34.3)
245
247
  activesupport (>= 4.2.0)
246
248
  lint_roller (~> 1.1)
@@ -264,7 +266,7 @@ GEM
264
266
  stringio (3.2.0)
265
267
  tdiff (0.4.0)
266
268
  thor (1.5.0)
267
- timeout (0.6.0)
269
+ timeout (0.6.1)
268
270
  tsort (0.2.0)
269
271
  tzinfo (2.0.6)
270
272
  concurrent-ruby (~> 1.0)
@@ -279,8 +281,8 @@ GEM
279
281
  websocket-extensions (0.1.5)
280
282
  xpath (3.2.0)
281
283
  nokogiri (~> 1.8)
282
- yard (0.9.38)
283
- zeitwerk (2.7.4)
284
+ yard (0.9.43)
285
+ zeitwerk (2.7.5)
284
286
 
285
287
  PLATFORMS
286
288
  arm64-darwin-24
@@ -296,10 +298,10 @@ DEPENDENCIES
296
298
  capybara (~> 3.40.0)
297
299
  ccs-frontend_helpers!
298
300
  nokogiri-diff (~> 0.3.0)
299
- rake (~> 13.3)
301
+ rake (~> 13.4)
300
302
  rspec (~> 3.13)
301
- rubocop (~> 1.84)
302
- rubocop-capybara (~> 2.22)
303
+ rubocop (~> 1.86)
304
+ rubocop-capybara (~> 2.23)
303
305
  rubocop-rails (~> 2.34)
304
306
  rubocop-rake (~> 0.7)
305
307
  rubocop-rspec (~> 3.9)
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![Ruby](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/actions/workflows/release.yml/badge.svg)](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/actions/workflows/release.yml)
4
4
  [![Gem Version](https://badge.fury.io/rb/ccs-frontend_helpers.svg)](https://badge.fury.io/rb/ccs-frontend_helpers)
5
5
 
6
- The CCS Frontend Helpers gem was created for use in the Crown Marketplace projects at the Crown Commercial Service.
6
+ The CCS Frontend Helpers gem was created for use in the Crown Marketplace projects at the Government Commercial Agency.
7
7
  This project contains two applications (both use the Ruby on Rails framework):
8
8
  - [Crown Marketplace](https://github.com/Crown-Commercial-Service/crown-marketplace)
9
9
  - [Crown Marketplace Legacy](https://github.com/Crown-Commercial-Service/crown-marketplace-legacy)
@@ -14,6 +14,8 @@ The following table shows the version of CCS Frontend Helpers that you should us
14
14
 
15
15
  | CCS Frontend Helpers Version | Target GOV.UK Frontend Version | Target CCS Frontend Version |
16
16
  | ----------------------------- | ------------------------------ | --------------------------- |
17
+ | [4.1.0](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/releases/tag/v4.1.0) | [6.1.0](https://github.com/alphagov/govuk-frontend/releases/tag/v6.1.0) | [3.2.0](https://github.com/Crown-Commercial-Service/ccs-frontend-project/releases/tag/v3.2.0) |
18
+ | [4.0.0](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/releases/tag/v4.0.0) | [6.1.0](https://github.com/alphagov/govuk-frontend/releases/tag/v6.1.0) | [3.1.0](https://github.com/Crown-Commercial-Service/ccs-frontend-project/releases/tag/v3.1.0) |
17
19
  | [3.5.0](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/releases/tag/v3.5.0) | [5.14.0](https://github.com/alphagov/govuk-frontend/releases/tag/v5.14.0) | [2.5.0](https://github.com/Crown-Commercial-Service/ccs-frontend-project/releases/tag/v2.5.0) |
18
20
  | [3.4.0](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/releases/tag/v3.4.0) | [5.14.0](https://github.com/alphagov/govuk-frontend/releases/tag/v5.14.0) | [2.4.0](https://github.com/Crown-Commercial-Service/ccs-frontend-project/releases/tag/v2.4.0) |
19
21
  | [3.3.0](https://github.com/Crown-Commercial-Service/ccs-frontend_helpers/releases/tag/v3.3.0) | [5.13.0](https://github.com/alphagov/govuk-frontend/releases/tag/v5.13.0) | [2.3.0](https://github.com/Crown-Commercial-Service/ccs-frontend-project/releases/tag/v2.3.0) |
data/bun.lock CHANGED
@@ -4,15 +4,15 @@
4
4
  "workspaces": {
5
5
  "": {
6
6
  "devDependencies": {
7
- "ccs-frontend": "2.5.0",
8
- "govuk-frontend": "5.14.0",
7
+ "ccs-frontend": "3.2.0",
8
+ "govuk-frontend": "6.1.0",
9
9
  },
10
10
  },
11
11
  },
12
12
  "packages": {
13
- "ccs-frontend": ["ccs-frontend@2.5.0", "", { "peerDependencies": { "govuk-frontend": "^5.14.0", "jquery": "^4.x" } }, "sha512-RlHbYbuzkbEgAtWaLvptMGxKIJrxvjg6VtESLmAAjeW8NxxsErmQudTGrnX1ATsn5UdfH9/sEkmChpjJRikHpQ=="],
13
+ "ccs-frontend": ["ccs-frontend@3.2.0", "", { "peerDependencies": { "govuk-frontend": "^6.1.0", "jquery": "^4.x" } }, "sha512-RH3lmFJWlSDNvquCqD/G42jsTCjHZeaTy0YqzX4W5bzGxFdshoeoa0RtHe0yIcJMGgHQASvzRLmtF6SYudhtVQ=="],
14
14
 
15
- "govuk-frontend": ["govuk-frontend@5.14.0", "", {}, "sha512-MgfaXswIM6KpXS2T5gltEnzgVLgfM3UoE9+rYkhBiR0suaJ8Let31VZXQZqz9QhiPDbv28fW1nRjIyLujfZIBA=="],
15
+ "govuk-frontend": ["govuk-frontend@6.1.0", "", {}, "sha512-sqivexZFa82LiDIDVMItsUlqEXE/wEUWWBqzEoxHvUFLBH7bY0C8lVrj1qsDThSnj5JEUMS7isBAbKnfQ5Qp6g=="],
16
16
 
17
17
  "jquery": ["jquery@3.7.1", "", {}, "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg=="],
18
18
  }
@@ -5,10 +5,13 @@ require_relative 'lib/ccs/frontend_helpers/version'
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'ccs-frontend_helpers'
7
7
  spec.version = CCS::FrontendHelpers::VERSION
8
- spec.authors = ['Crown Commercial Service']
8
+ spec.authors = [
9
+ 'Crown Commercial Service',
10
+ 'Government Commerical Agency'
11
+ ]
9
12
 
10
- spec.summary = 'Gem containing view helpers for CCS Ruby on Rails projects'
11
- spec.description = 'Gem containing view helpers for CCS Ruby on Rails projects'
13
+ spec.summary = 'Gem containing view helpers for GCA (formally CCS) Ruby on Rails projects'
14
+ spec.description = 'Gem containing view helpers for CCS (formally CCS) Ruby on Rails projects'
12
15
  spec.homepage = 'https://github.com/Crown-Commercial-Service/ccs-frontend_helpers'
13
16
  spec.license = 'MIT'
14
17
  spec.required_ruby_version = '>= 3.2.0'
@@ -53,7 +53,7 @@ module CCS
53
53
  # @return [ActiveSupport::SafeBuffer]
54
54
 
55
55
  def render
56
- tag.footer(**options[:attributes]) do
56
+ tag.div(**options[:attributes]) do
57
57
  tag.div(class: "govuk-width-container #{options[:container_classes]}".rstrip) do
58
58
  if navigation
59
59
  concat(tag.div(class: 'ccs-footer__navigation') do
@@ -19,21 +19,20 @@ module CCS
19
19
 
20
20
  public
21
21
 
22
- # @param use_gca_branding [Boolean] flag to use GCA branding in logo
23
22
  # @param options [Hash] options that will be used in customising the HTML
24
23
  #
25
24
  # @option options [String] :classes additional CSS classes for the header HTML
26
25
  # @option options [String] :container_classes classes for the container
27
- # @option options [String] :homepage_url URL of the homepage. Defaults to +/https://www.crowncommercial.gov.uk+
26
+ # @option options [String] :homepage_url URL of the homepage. Defaults to +/https://www.gca.gov.uk+
28
27
  # @option options [Hash] :attributes additional attributes that will added as part of the header HTML
29
28
 
30
- def initialize(use_gca_branding: nil, **)
29
+ def initialize(**)
31
30
  super
32
31
 
33
32
  @options[:container_classes] ||= 'govuk-width-container'
34
- @options[:homepage_url] ||= (use_gca_branding ? 'https://www.gca.gov.uk' : 'https://www.crowncommercial.gov.uk')
33
+ @options[:homepage_url] ||= 'https://www.gca.gov.uk'
35
34
 
36
- @logo = Logo.new(context: @context, use_gca_branding: use_gca_branding)
35
+ @logo = Logo.new(context: @context)
37
36
  end
38
37
 
39
38
  # Generates the HTML for the CCS Header component
@@ -41,7 +40,7 @@ module CCS
41
40
  # @return [ActiveSupport::SafeBuffer]
42
41
 
43
42
  def render
44
- tag.header(**options[:attributes]) do
43
+ tag.div(**options[:attributes]) do
45
44
  concat(tag.div(class: "ccs-header__container #{options[:container_classes]}".rstrip) do
46
45
  concat(header_logo)
47
46
  end)
@@ -60,7 +59,7 @@ module CCS
60
59
 
61
60
  def header_logo
62
61
  tag.div(class: 'ccs-header__logo') do
63
- link_to(logo.render, options[:homepage_url], class: 'ccs-header__link ccs-header__link--homepage', aria: { label: 'Crown Commercial Service' })
62
+ link_to(logo.render, options[:homepage_url], class: 'ccs-header__link ccs-header__link--homepage', aria: { label: 'Government Commercial Agency' })
64
63
  end
65
64
  end
66
65
  end
@@ -10,27 +10,23 @@ module CCS
10
10
  #
11
11
  # @!attribute [r] show_only_crown
12
12
  # @return [Boolean] Flag to show only the crown part of the logo
13
- # @!attribute [r] use_gca_branding
14
- # @return [Boolean] Flag to use GCA branding in logo
15
13
 
16
14
  class Logo < Base
17
15
  private
18
16
 
19
- attr_reader :show_only_crown, :use_gca_branding
17
+ attr_reader :show_only_crown
20
18
 
21
19
  public
22
20
 
23
21
  # @param show_only_crown [Boolean] flag to show only the crown part of the logo
24
- # @param use_gca_branding [Boolean] flag to use GCA branding in logo
25
22
 
26
- def initialize(show_only_crown: nil, use_gca_branding: nil, **)
23
+ def initialize(show_only_crown: nil, **)
27
24
  super
28
25
 
29
26
  @show_only_crown = show_only_crown
30
- @use_gca_branding = use_gca_branding
31
27
  end
32
28
 
33
- # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
29
+ # rubocop:disable Metrics/AbcSize
34
30
 
35
31
  # Generates the HTML for the CCS Logo.
36
32
  # Used in {CCS::Components::CCS::Header Header} and {CCS::Components::CCS::Footer Footer}
@@ -43,7 +39,7 @@ module CCS
43
39
  concat(tag.svg(class: 'ccs-logo__svg', xmlns: 'http://www.w3.org/2000/svg', width: '132.22', height: '121', aria: { hidden: 'true' }, focusable: 'false', viewBox: '0 0 371.06668 339.57333') do
44
40
  concat(tag.g(transform: 'matrix(1.3333333,0,0,-1.3333333,0,339.57333)') do
45
41
  tag.g(transform: 'scale(0.34)') do
46
- CCS_LOGO_CROWN_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
42
+ GCA_LOGO_CROWN_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
47
43
  end
48
44
  end)
49
45
  end)
@@ -51,41 +47,29 @@ module CCS
51
47
  concat(tag.svg(class: 'ccs-logo__svg ccs-logo__svg--stacked', xmlns: 'http://www.w3.org/2000/svg', width: '132.22', height: '121', aria: { hidden: 'true' }, focusable: 'false', viewBox: '0 0 371.06668 339.57333') do
52
48
  concat(tag.g(transform: 'matrix(1.3333333,0,0,-1.3333333,0,339.57333)') do
53
49
  tag.g(transform: 'scale(0.1)') do
54
- CCS_STACKED_LOGO_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
55
- concat(use_gca_branding ? logo_stacked_text_graphic_gca : logo_stacked_text_graphic_ccs)
50
+ GCA_STACKED_LOGO_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
51
+ concat(logo_stacked_text_graphic_gca)
56
52
  end
57
53
  end)
58
54
  end)
59
- if use_gca_branding
60
- concat(tag.svg(class: 'ccs-logo__svg ccs-logo__svg--linear', xmlns: 'http://www.w3.org/2000/svg', width: '378', height: '48.5', aria: { hidden: 'true' }, focusable: 'false', viewBox: '0 0 1061 137') do
61
- concat(tag.g(transform: 'matrix(1.3333333,0,0,-1.3333333,0,137)') do
62
- tag.g(transform: 'scale(0.1)') do
63
- CCS_LINEAR_LOGO_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
64
- concat(logo_linear_text_graphic_gca)
65
- end
66
- end)
67
- end)
68
- concat(tag.span('Government Commercial Agency', class: 'ccs-logo__text', hidden: true))
69
- else
70
- concat(tag.svg(class: 'ccs-logo__svg ccs-logo__svg--linear', xmlns: 'http://www.w3.org/2000/svg', width: '320', height: '48.5', aria: { hidden: 'true' }, focusable: 'false', viewBox: '0 0 899 137') do
71
- concat(tag.g(transform: 'matrix(1.3333333,0,0,-1.3333333,0,137)') do
72
- tag.g(transform: 'scale(0.1)') do
73
- CCS_LINEAR_LOGO_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
74
- concat(logo_linear_text_graphic_ccs)
75
- end
76
- end)
55
+ concat(tag.svg(class: 'ccs-logo__svg ccs-logo__svg--linear', xmlns: 'http://www.w3.org/2000/svg', width: '378', height: '48.5', aria: { hidden: 'true' }, focusable: 'false', viewBox: '0 0 1061 137') do
56
+ concat(tag.g(transform: 'matrix(1.3333333,0,0,-1.3333333,0,137)') do
57
+ tag.g(transform: 'scale(0.1)') do
58
+ GCA_LINEAR_LOGO_PATHS.each { |ccs_logo_path_attributes| concat(tag.path(**ccs_logo_path_attributes)) }
59
+ concat(logo_linear_text_graphic_gca)
60
+ end
77
61
  end)
78
- concat(tag.span('Crown Commercial Service', class: 'ccs-logo__text', hidden: true))
79
- end
62
+ end)
63
+ concat(tag.span('Government Commercial Agency', class: 'ccs-logo__text', hidden: true))
80
64
  end
81
65
  end
82
66
  end
83
67
 
84
- # rubocop:enable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity
68
+ # rubocop:enable Metrics/AbcSize
85
69
 
86
70
  # Array of the SVG paths for the CCS Logo
87
71
 
88
- CCS_STACKED_LOGO_PATHS = [
72
+ GCA_STACKED_LOGO_PATHS = [
89
73
  {
90
74
  fill: 'currentColor',
91
75
  'fill-rule': 'evenodd',
@@ -244,7 +228,7 @@ module CCS
244
228
  { d: 'm 901.313,1899.86 c 0,0 -3.84,-21.7 -3.598,-23.54 l -6.52,1.17 c -0.109,-0.14 4.012,19.03 5.012,23.19 -2.309,0.49 -5.031,0.25 -7.598,-0.73 l -0.046,0.07 2.613,5.46 17.707,-3.18 1.226,-6.02 c -1.48,1.45 -6.277,3.11 -8.796,3.58 z m -15.485,-1.22 c -0.644,-5.01 -2.988,-15.2 -2.074,-19.95 l -6.559,0.94 c 2.883,7.39 4.86,19.87 4.395,27.78 l 6.558,-0.95 c -1.07,-2.2 -1.843,-4.81 -2.32,-7.82 z m -17.469,-16.55 c -16.757,-3.14 -16.734,25.16 -3.285,29.12 16.828,3.52 16.899,-25.24 3.285,-29.12 z m -14.457,22.33 c -0.812,-3.2 -3.164,-5.4 -7.05,-6.6 1.695,-5.55 2.691,-7.39 5.554,-13.42 l -0.035,-0.14 -4.437,0.69 c -0.918,0.54 -6.489,8.34 -8.149,12.57 -0.972,-3.48 -1.965,-7.93 -1.558,-11.07 l -7.524,1.16 c 1.395,2.18 7.27,25.24 7.047,27.66 6.52,-0.82 18.215,-1.99 16.152,-10.85 z m -32.457,-12.99 c -3.937,-1.38 -9.55,0.17 -13.648,0.97 l 5.504,28.19 c 18.297,1.2 25.875,-22.48 8.144,-29.16 z m -25.972,2.39 c -2.043,0.44 -13.059,22.89 -13.059,22.89 0,0 -2.687,-17.44 -3.371,-18.66 l -5.012,0.72 5.715,27.37 5.555,-0.73 c 0.043,-0.71 8.777,-19.22 8.777,-19.22 0,0 2.922,14.99 3.188,16.33 l 4.242,-1.19 z m -22.993,17.71 c -5.972,-20.23 -29.292,-9.17 -22.351,8.86 5.902,19.61 29.254,9.24 22.351,-8.86 z m -24.363,21.8 c -0.996,-0.92 -4.515,-25.56 -4.281,-27.97 l -6.633,1.3 c 1.188,2.14 2.758,19.32 2.758,19.32 l -11.383,-17.69 -6.687,19.94 c 0,0 -2.711,-14.32 -2.821,-18.93 l -6.507,0.9 c 2.089,3.37 6.175,28.72 6.175,28.72 l 6.731,-1.26 c 0.183,-1.34 5.273,-18.55 5.273,-18.55 0,0 8.961,15.03 9.481,15.8 l 7.914,-1.48 z m 163.403,-17.41 c -8.254,0 -16.098,0.13 -19.93,0.45 -43.449,4.23 -86.449,16.65 -129.797,23.53 -12.504,1.97 -22.73,3.82 -31.594,3.82 -18.406,0.01 -30.918,-7.99 -45.742,-39.56 -6.316,-12.02 14.844,-23.47 19.504,-23.96 -17.387,14.84 -11.328,19.24 2.391,19.24 18.961,0 52.554,-8.4 59.136,-9.23 39.715,-6.31 79.864,-17.68 120.219,-22 1.418,-0.12 2.77,-0.19 4.063,-0.19 29.679,0 28.265,32.37 48.664,48.47 -3.629,-0.33 -15.653,-0.57 -26.914,-0.57' },
245
229
  ].freeze
246
230
 
247
- CCS_LINEAR_LOGO_PATHS = [
231
+ GCA_LINEAR_LOGO_PATHS = [
248
232
  {
249
233
  fill: 'currentColor',
250
234
  'fill-rule': 'evenodd',
@@ -403,7 +387,7 @@ module CCS
403
387
  { d: 'M 901.313,204.86 C 901.313,204.86 897.473,183.16 897.715,181.32 L 891.195,182.49 C 891.086,182.35 895.207,201.52 896.207,205.68 C 893.898,206.17 891.176,205.93 888.609,204.95 L 888.563,205.02 L 891.176,210.48 L 908.883,207.3 L 910.109,201.28 C 908.629,202.73 903.832,204.39 901.313,204.86 Z M 885.828,203.64 C 885.184,198.63 882.84,188.44 883.754,183.69 L 877.195,184.63 C 880.078,192.02 882.055,204.5 881.59,212.41 L 888.148,211.46 C 887.078,209.26 886.305,206.65 885.828,203.64 Z M 868.359,187.09 C 851.602,183.95 851.625,212.25 865.074,216.21 C 881.902,219.73 881.973,190.97 868.359,187.09 Z M 853.902,209.42 C 853.09,206.22 850.738,204.02 846.852,202.82 C 848.547,197.27 849.543,195.43 852.406,189.4 L 852.371,189.26 L 847.934,189.95 C 847.016,190.49 841.445,198.29 839.785,202.52 C 838.813,199.04 837.82,194.59 838.227,191.45 L 830.703,192.61 C 832.098,194.79 837.973,217.85 837.75,220.27 C 844.27,219.45 855.965,218.28 853.902,209.42 Z M 821.445,196.43 C 817.508,195.05 811.895,196.6 807.797,197.4 L 813.301,225.59 C 831.598,226.79 839.176,203.11 821.445,196.43 Z M 795.473,198.82 C 793.43,199.26 782.414,221.71 782.414,221.71 C 782.414,221.71 779.727,204.27 779.043,203.05 L 774.031,203.77 L 779.746,231.14 L 785.301,230.41 C 785.344,229.7 794.078,211.19 794.078,211.19 C 794.078,211.19 797,226.18 797.266,227.52 L 801.508,226.33 Z M 772.48,216.53 C 766.508,196.3 743.188,207.36 750.129,225.39 C 756.031,245 779.383,234.63 772.48,216.53 Z M 748.117,238.33 C 747.121,237.41 743.602,212.77 743.836,210.36 L 737.203,211.66 C 738.391,213.8 739.961,230.98 739.961,230.98 L 728.578,213.29 L 721.891,233.23 C 721.891,233.23 719.18,218.91 719.07,214.3 L 712.563,215.2 C 714.652,218.57 718.738,243.92 718.738,243.92 L 725.469,242.66 C 725.652,241.32 730.742,224.11 730.742,224.11 C 730.742,224.11 739.703,239.14 740.223,239.91 L 748.137,238.43 Z M 911.52,220.92 C 903.266,220.92 895.422,221.05 891.59,221.37 C 848.141,225.6 805.141,238.02 761.793,244.9 C 749.289,246.87 739.063,248.72 730.199,248.72 C 711.793,248.73 699.281,240.73 684.457,209.16 C 678.141,197.14 699.301,185.69 703.961,185.2 C 686.574,200.04 692.633,204.44 706.352,204.44 C 725.313,204.44 758.906,196.04 765.488,195.21 C 805.203,188.9 845.352,177.53 885.707,173.21 C 887.125,173.09 888.477,173.02 889.77,173.02 C 919.449,173.02 918.035,205.39 938.434,221.49 C 934.805,221.16 922.781,220.92 911.52,220.92' },
404
388
  ].freeze
405
389
 
406
- CCS_LOGO_CROWN_PATHS = [
390
+ GCA_LOGO_CROWN_PATHS = [
407
391
  { d: 'M 714.047,345.87 C 711.293,346.13 709.012,343.71 709.93,340.75 C 709.656,340.79 709.391,340.87 709.145,341.04 L 696.324,349.79 C 695.492,350.36 695.238,351.52 695.691,352.44 C 698.105,352.54 700.719,353.79 700.387,356.7 C 701.375,355.45 715.168,348.1 714.047,345.87 Z M 666.918,390.38 C 666.164,389.44 664.586,387.45 664.586,387.45 C 650.383,403.66 602.453,422.27 581.742,419.23 C 581.742,419.23 581.996,421.63 582.129,422.93 L 581.98,422.85 L 589.852,427.86 L 583.121,433.43 C 583.188,434.21 578.816,461.48 578.816,461.48 L 590.688,461.84 C 590.688,461.84 586.449,456.86 586.266,452.93 C 586.938,452.46 587.508,451.79 587.906,450.96 C 590.281,451.97 592.828,456.89 592.828,456.89 L 593.957,440.77 C 593.957,440.77 590.656,445.42 588.258,446.25 C 588.074,445.66 587.816,445.11 587.395,444.66 C 590.824,433.96 606.449,433.33 606.469,442.5 C 605.934,447.26 600.676,446.47 600.965,441.45 C 592.406,448.25 603.977,459.09 608.734,448.17 C 608.125,454.46 608.66,458.02 613.543,461.12 C 616.766,457.04 616.316,453.21 612.82,447.11 C 623.328,456.86 627.34,440.32 617.473,437.88 C 622.289,446.58 608.43,443.84 613.52,434.73 C 618.176,427.63 629.465,428.67 633.426,436.39 C 633.145,436.86 632.941,437.36 632.836,437.88 C 628.902,438.63 623.027,435.28 623.027,435.28 L 628.504,450.14 C 628.504,450.14 630.777,443.78 634.074,441.8 C 634.668,442.36 635.422,442.75 636.238,442.95 C 636.867,446.86 632.918,453 632.918,453 L 651.164,445.96 C 651.164,445.96 643.949,444.13 641.637,440.86 C 642.09,440.18 642.367,439.39 642.398,438.59 C 646.199,437.83 652.355,440.94 652.355,440.94 L 645.816,426.48 C 645.816,426.48 643.918,432.84 640.523,434.91 C 640.078,434.6 639.582,434.37 639.047,434.23 C 636.449,425.84 644.043,417.7 652.348,419.75 C 662.402,422.83 654.422,434.26 651.695,424.67 C 646.258,433.08 660.898,442.33 661.605,428.28 C 663.383,435.05 665.77,438.13 670.996,438.94 C 672.352,433.44 670.219,430.49 665.328,426.33 C 676.613,431.09 677.133,415.43 666.219,416.26 C 670.012,419.77 666.668,423.79 662.961,420.69 C 656.441,413.88 668.637,404.15 678.18,409 C 678.156,409.61 678.328,410.2 678.598,410.73 C 676.227,412.39 670.609,412.56 670.609,412.56 L 682.301,421.23 C 682.301,421.23 680.91,415.98 682.023,413.24 C 682.883,413.38 683.77,413.28 684.586,412.95 C 687.094,415.48 687.242,422.27 687.242,422.27 L 695.965,411.4 C 695.965,411.4 674.063,401.31 670.191,398.38 L 664.098,398.98 L 667.105,390.41 Z M 602.496,469.53 C 606.137,468.23 609.59,466.31 613.281,469.97 C 609.738,469.98 608.66,472.46 607.641,474.83 C 605.918,486.9 625.613,482.64 632.945,481.78 C 651.422,470.54 682.852,477.7 671.93,504.43 C 680.477,499.15 677.539,484.5 671.051,478.79 C 653.973,469.55 637.793,476.5 620.742,458.43 C 618.145,466.69 608.332,466.23 604.813,457.13 C 601.563,456.91 600.719,456.96 597.621,456.76 C 597.055,461.56 600.941,465.01 602.496,469.53 Z M 648.133,515.9 C 642.668,512.16 637.766,506.64 632.199,514.12 C 630.91,513.86 629.848,513.65 628.527,513.39 C 636.777,526.17 636.098,523.97 648.133,515.9 Z M 666.719,545.12 C 670.777,540.61 672.551,535.73 672.547,530.19 C 668.637,531.55 666.934,535.82 666.719,545.12 Z M 496.609,472.68 L 517.262,480.04 L 524.82,464.79 L 510.488,455.67 Z M 483.336,476.29 C 480.707,460.52 445.328,467.33 448.742,482.95 C 451.371,498.71 486.746,491.91 483.336,476.29 Z M 413,469.43 L 390.918,485 L 413.031,500.61 L 435.113,485.04 Z M 362.352,467.5 C 339.938,462.96 335.188,487.63 357.688,491.73 C 380.102,496.27 384.852,471.6 362.352,467.5 Z M 315.57,455.67 L 301.238,464.79 L 308.801,480.04 L 329.449,472.68 Z M 587.789,505.23 C 589.563,505.42 591.027,505.58 593.012,505.79 C 589.586,508.28 592.938,511.7 595.773,509.27 C 602.566,504 588.953,495.38 587.789,505.23 Z M 724.68,328.32 L 722.773,328.55 L 717.719,342.29 C 720.086,345.33 721.363,350.2 717.629,352.67 C 712.688,354.62 698.758,370.55 694.629,360.24 C 692.852,359.61 681.82,358.97 680.961,356.92 C 675.664,365.3 671.188,374.2 667.891,384.1 C 670.035,395.6 700.469,409.93 700.469,409.93 C 700.469,409.93 691.824,422.36 688.375,429.36 C 686.844,425.94 685.441,427.4 682.109,425.88 C 699.016,455.91 702.605,495.43 680.238,523.8 C 677.945,528.72 679,535.21 676.75,540.04 C 672.871,545.15 670.191,555.23 663.336,556.3 C 663.305,547.38 662.387,538.65 666.695,530.38 C 671.285,524.62 660.438,519.74 657.059,524.29 C 663.535,525.04 664.633,526.33 662.395,529.99 C 634.473,536.25 618.867,516.64 592.23,513.56 C 589.887,513.58 587.793,512.75 586.473,510.6 C 570.063,488.49 606.891,503.59 610.098,488.93 C 603.949,483.85 603.098,487.19 597.336,488.66 C 589.039,488.35 581,485.75 591.348,478.74 C 585.031,468.82 585.34,465.32 572.492,464.48 C 578.063,456.61 576.863,445.24 578.32,436.32 C 569.168,434.6 562.945,430.19 562.762,420.41 C 558.641,419.49 554.199,421.64 551.27,417.2 C 545.508,421.97 538.891,422.84 531.984,422.95 C 528.652,425.44 520.48,431.32 511.707,435.82 C 513.441,442.31 515.09,448.39 516.652,454.08 C 519.223,455.72 528.445,461.59 530.84,463.11 C 529.605,465.6 524.738,475.42 523.418,478.09 C 539.867,534.7 545.211,537.86 553.535,539.09 L 553.984,540.66 L 523.543,550.41 L 523.012,548.42 C 530.695,542.84 533.195,533.57 529.695,522.72 C 521.563,526.23 516.93,533.93 517.809,540.81 C 517.652,540.86 515.797,541.39 515.797,541.39 L 505.609,507.58 C 505.609,507.58 507.078,507.14 507.234,507.09 C 511.238,512.88 518.215,516.13 526.281,514.79 C 516.875,484.82 474.496,494.17 482.082,519.61 C 487.48,530.1 497.734,523.37 492.797,512.38 C 516.57,520.71 502.547,554.92 482.211,534.52 C 488.934,548.29 492.754,559.1 484.313,572.42 C 473.363,565.38 470.563,552.65 472.66,535.68 C 459.246,566.37 435.836,534.75 454.867,518.77 C 451.402,541.54 479.512,526.49 460.492,508.14 C 442.359,495.3 420.063,510.05 419.418,532.7 C 429.887,531.77 437.887,525.55 438.965,517.79 C 439.148,517.78 440.887,517.72 440.887,517.72 L 442.188,556.38 C 442.188,556.38 440,556.48 439.813,556.48 C 438.184,548.66 429.684,542.02 418.922,541.82 C 419.656,553.74 426.488,563.03 435.332,564.55 C 435.332,564.76 435.332,566.76 435.332,566.76 L 390.727,566.76 C 390.727,566.76 390.727,564.76 390.727,564.55 C 399.57,563.03 406.402,553.74 407.137,541.82 C 396.375,542.02 387.875,548.66 386.246,556.48 C 386.059,556.48 383.871,556.38 383.871,556.38 L 385.172,517.72 C 385.172,517.72 386.91,517.78 387.094,517.79 C 388.172,525.55 396.172,531.77 406.641,532.7 C 406.012,510.06 383.688,495.29 365.563,508.14 C 346.551,526.5 374.656,541.53 371.191,518.77 C 390.234,534.8 366.785,566.35 353.398,535.68 C 355.496,552.65 352.695,565.38 341.746,572.42 C 333.305,559.1 337.129,548.29 343.848,534.52 C 323.48,554.93 309.516,520.67 333.262,512.38 C 328.324,523.37 338.574,530.1 343.973,519.61 C 351.563,494.15 309.168,484.84 299.777,514.79 C 307.848,516.13 314.82,512.88 318.824,507.09 C 318.98,507.14 320.449,507.58 320.449,507.58 L 310.262,541.39 C 310.262,541.39 308.406,540.86 308.25,540.81 C 309.129,533.93 304.496,526.23 296.363,522.72 C 292.863,533.57 295.363,542.84 303.047,548.42 L 302.516,550.41 L 272.074,540.66 L 272.523,539.09 C 280.848,537.86 286.191,534.7 302.641,478.09 C 301.293,475.36 296.477,465.65 295.219,463.11 C 297.563,461.62 306.891,455.68 309.406,454.08 C 310.832,448.89 312.328,443.37 313.898,437.52 C 313.957,437.55 314.02,437.57 314.078,437.61 C 314.008,437.4 313.945,437.34 313.898,437.52 C 272.938,418.37 282.223,405.36 250.711,409.1 C 247.887,402.58 245.25,396.12 238.84,391.69 C 237.652,401.68 233.199,409.43 227.328,416.5 C 224.418,419.89 220.434,416.14 216.086,415.8 C 207.539,397.16 201.629,414 186.563,404.25 C 187.156,395.56 188.473,386.92 193.242,378.9 C 182.035,379.69 172.785,382.72 165.379,387.98 C 131.883,350.56 96.91,314.63 68.262,273.47 C 52.969,253.26 12.059,265.01 22.852,292.86 C 27.801,313.19 57.168,308.86 55.309,288.69 C 69.824,304.82 60.496,320.88 38.316,317.29 C 58.676,326.09 70.891,309.43 89.246,332.33 C 75.23,331.99 63.336,336.44 49.367,333.21 C 67.055,343.8 91.348,328.08 106.449,357.31 C 93.289,355.9 81.391,350.4 67.773,348.38 C 149.5,426.29 70.867,430.14 80.863,463.82 C 74.477,458.4 70.797,452.97 73.75,445.7 C 55.445,453.34 28.305,451.09 20.891,473.34 C 19.098,441.66 33.016,443.93 56.93,437.41 C 45.891,438.73 34.996,438.81 24.66,442.63 C 26.793,428.43 37.566,425.41 50.242,426.77 C 37.836,419.88 40.656,402.21 53.281,396.14 C 45.227,441.96 113.844,426.25 82.508,384.16 C 67.961,362.48 46.914,346.36 29.227,327.42 C 25.891,333.18 22.41,338.97 14.684,338.15 C 28.156,322.6 12.949,305.69 9.383,289.64 C 4.18,269.81 21.695,252.93 40.473,250.61 C 32.992,241.75 32.391,233.86 38.152,226.61 C 43.809,255.74 86.051,249.17 90.035,280.69 C 90.754,284.4 92.527,287.3 96.672,289 C 77.637,267.48 123.41,221.91 80.406,216.59 C 74.27,216.42 72.742,209.96 76.156,205.37 C 58.383,206.26 53.48,199.5 50.77,182.76 C 58.609,184.79 65.891,186.67 73.254,188.57 C 65.516,168.3 47.957,189.75 50.848,153.69 C 58.023,157.13 64.77,160.77 71.344,164.84 C 77.691,144.6 39.145,153.35 68.082,121.04 C 69.926,127.07 77.652,139.43 81.594,142.18 C 78.02,132.01 78.871,120.24 90.281,115.68 C 90.813,118.39 91.285,120.79 91.758,123.19 C 92.277,123.2 92.188,123.2 92.711,123.21 C 94.348,116.5 94.586,107.1 101.102,103.23 C 103.258,102.37 104.422,101.18 105.137,98.91 C 106.324,95.16 109.809,94.16 113.199,93.71 C 117.461,92.83 118.539,97.66 121.672,99.61 C 122.566,94.28 128.867,93.43 131.957,88.89 C 134.332,115.17 99.469,105.63 107.461,123 C 110.547,112.41 120.441,114.72 127.352,110.38 C 130.027,105.98 136.563,102.34 139.898,108.45 C 143.148,106.01 146.086,103.81 148.949,101.66 C 142.145,132.88 125.961,113.57 115.77,129.96 C 122.867,129.64 130.453,119.11 138.113,126.3 C 142.238,122.06 145.422,117.08 148.531,112.07 C 149.785,122.05 146.063,129.66 138.207,135.21 C 129.348,140.64 117.32,131 109.746,141.83 C 99.395,154.61 99.691,172.54 105.078,187.33 C 110.02,198.7 123.793,202.95 130.148,213.73 C 128.379,204.21 129.27,187.66 140.047,184.58 C 137.43,202.25 149.992,218.17 152.535,235.25 C 155.813,239.56 155.973,242.93 153.004,247.59 C 147.656,256.36 146.191,266.93 140.273,275.57 C 131.102,288.43 119.801,288.79 138.508,302.35 C 127.148,284.72 136.422,291.14 146.223,274.53 C 148.035,280.13 156.391,287.43 145.945,287.4 C 129.457,295.49 167.406,316.53 175.977,317.07 C 184.43,317.73 196.293,316.78 202.699,325.14 C 198.691,332.75 194.801,333.83 201.625,341.74 C 197.016,344.43 192.949,347.64 192.152,353.7 C 187.762,352.17 183.891,350.82 179.336,349.24 C 183.484,353.94 195.688,363.42 197.012,352.91 C 197.297,347.01 203.156,345.95 207.715,344.48 C 204.391,339.64 198.859,334.77 203.898,329.11 C 207.422,325.41 209.613,318.44 215.031,317.53 C 216.5,323.01 217.906,328.27 219.355,333.68 C 231.359,321.09 207.301,314.07 240.277,302.76 C 239.074,309.57 238.004,316.14 238.887,323.18 C 254.781,309.9 232.051,301.57 268.656,297.23 C 264.578,302.07 263.637,307.43 262.133,312.84 C 268.238,311.84 273.176,306 277.121,301.61 C 280.891,295.88 283.668,292.74 292.281,298.34 C 292.668,297.34 292.762,295.96 293.492,295.4 C 297.359,292.46 295.809,288.89 295.727,284.97 L 296.785,284.97 C 301.875,290.11 302.234,296 300.648,302.44 C 297.113,314.56 282.316,304.91 277.133,317.29 C 284.117,312.53 291.07,309.75 298.758,313.73 C 303.051,309.69 304.848,306.73 306.926,301 C 310.438,314.06 306.398,327.39 292.605,323.47 C 288.316,321.94 286.555,322.29 282.242,326.03 C 288.648,323.81 292.879,327.09 296.965,330.02 C 297.852,328.88 298.371,327.58 298.969,327.54 C 302.848,327.32 305.367,324.98 307.754,322.12 C 309.047,333.29 297.941,342.32 286.762,339.48 C 283.973,325.79 272.473,333.54 263.359,335.36 C 249.199,343.65 241.762,359.52 229.238,369.87 C 230.488,385.23 217.703,397.46 202.328,396.57 C 216.188,402.62 232.633,390.71 233.711,376.25 C 234.23,370.34 237.84,366.61 241.582,362.19 C 288.406,456.36 439.555,480.98 526.34,421.21 L 526.332,421.21 C 533.723,414.44 541.762,408.91 549.426,401.78 C 552.414,410.77 550.641,421.47 564.055,416.02 L 566.566,417.72 C 563.828,425.32 569.512,433.92 577.484,434.48 L 577.484,428.55 C 573.992,427.98 571.281,424.59 571.844,420.96 C 574.516,421.53 576.953,418.01 575.5,415.7 C 578.004,414.28 581.543,414.86 583.48,416.9 C 585.711,416.79 587.934,416.57 590.156,416.35 C 587.102,409.09 576.508,406.62 570.551,411.94 L 570.527,411.92 C 571.676,410.34 566.535,394.34 566.316,392.44 C 565.711,390.1 563.535,388.57 561.211,388.68 C 562.164,387.11 562.953,385.82 563.816,384.4 C 567.613,386.52 572.922,386.39 572.43,391.77 C 573.148,394.82 571.184,408.88 575.547,407.63 C 577.316,402.3 573.98,396.12 577.938,390.86 C 590.457,393.95 584.965,405.29 600.152,408.25 C 606.188,408.79 618.895,411.71 622.148,405.69 C 608.883,409.25 591.742,405.6 588.836,390.45 C 575.027,387.19 563.438,377.34 548.742,377.35 C 537.066,376.71 533.93,362.69 533.434,353.08 C 531.492,342.05 530.895,330.61 525.98,320.38 C 523.57,316.47 525.594,311.98 526.914,308.35 C 531.391,306 534.578,290.48 535.219,284.94 C 535.191,274.82 552.543,271.44 559.605,265.14 C 561.57,277.82 537.555,274.22 540.926,291.93 C 545.195,280.21 554.52,277.79 564.738,272.02 C 561.543,283.89 560.578,303.63 544.023,301.15 C 537.633,310.03 546.977,310.53 543.969,321.11 C 548.719,319.63 550.973,317.98 552.234,315.02 C 550.758,315.5 549.469,315.91 547.434,316.56 C 547.988,309.05 554.488,307.28 559.492,302.12 C 558.652,314.41 557.555,322.18 546.121,328.17 C 539.637,334.11 547.113,347.76 546.68,355.96 C 546.469,358.38 561.98,366.1 564.352,365.41 C 575.848,363.91 587.895,365.75 599.02,362.85 C 610.113,359.35 600.59,383.45 618.52,370.77 C 605.531,374.59 613.441,360.42 604.063,359.69 C 597.512,359.62 591.945,360.25 585.121,360.48 C 608.688,308.03 660.961,323.4 675.34,276.59 C 687.367,287.21 679.184,287.03 675.82,298.14 C 702.98,280.03 650.535,259.05 670.23,227.33 C 668.984,230.89 681.313,245.76 682.715,248.79 C 684.961,252.12 688.773,252.34 691.238,249.91 L 695.16,258.07 C 687.855,262.07 701.074,279.22 702.043,284.1 C 703.414,287.04 706.52,288.43 708.973,287.21 L 712.625,297.38 C 705.719,299.24 710.895,316.01 710.348,320.68 C 700.637,329.45 692.676,340.46 685.145,350.64 L 689.797,351.44 C 689.27,349.14 690.098,346.64 692.047,345.3 C 695.387,343.98 708.156,331.66 712.168,334.59 L 714.172,329.14 C 710.945,328.27 710.379,323.73 710.348,320.68 C 712.066,319.23 713.918,317.87 715.594,316.36 C 715.836,317.45 715.652,322.44 716.641,323.18 C 718.152,321.18 720.918,321.17 722.59,322.77 C 724.156,321.95 722.199,311.12 722.391,309.75 C 724.266,307.71 726.051,305.6 727.734,303.4 C 727.031,308.38 733.145,327.39 724.68,328.32' },
408
392
  { d: 'M 559.324,408.18 C 558.344,409.34 558.105,411.02 558.965,412.26 C 557.414,412.58 554.82,398.14 554.293,397.32 C 555.336,396.3 556.266,395.33 557.129,394.32 C 558.473,393.93 560.777,393.14 561.254,395.12 L 564.543,407.86 C 563.012,406.47 560.551,406.34 559.324,408.18' },
409
393
  { d: 'M 366.449,47.39 C 330.223,61.74 303.871,26.64 333.457,20.71 C 300.996,19.3 307.262,64.99 293.863,62.28 C 305.609,49.63 305.602,26.05 316.422,19.53 C 338.242,10.26 360.922,8.74 384.293,9.83 C 372.523,20.27 369.66,33.44 366.449,47.39' },
@@ -559,20 +543,6 @@ module CCS
559
543
 
560
544
  private
561
545
 
562
- def logo_stacked_text_graphic_ccs
563
- tag.g(transform: 'scale(10)') do
564
- tag.text(
565
- 'xml:space': 'preserve',
566
- transform: 'matrix(1,0,0,-1,20.3102,129.569)',
567
- class: 'ccs-logo__text-graphic'
568
- ) do
569
- concat(tag.tspan('Crown ', x: '0 33.2603 47.4161 72.572395 107.4747 133.2486', y: '0', 'sodipodi:role': 'line'))
570
- concat(tag.tspan('Commercial ', x: '0 33.314499 59.416096 99.105995 138.7959 163.4126 177.5981 201.77882 210.5835 234.9653 244.37253', y: '53', 'sodipodi:role': 'line'))
571
- concat(tag.tspan('Service ', x: '0 29.747601 54.364799 70.161697 92.368706 101.25151 125.55521', y: '106', 'sodipodi:role': 'line'))
572
- end
573
- end
574
- end
575
-
576
546
  def logo_stacked_text_graphic_gca
577
547
  tag.g(transform: 'scale(10)') do
578
548
  tag.text(
@@ -587,18 +557,6 @@ module CCS
587
557
  end
588
558
  end
589
559
 
590
- def logo_linear_text_graphic_ccs
591
- tag.g(transform: 'scale(10)') do
592
- tag.text(
593
- 'xml:space': 'preserve',
594
- transform: 'matrix(1,0,0,-1,120,30)',
595
- class: 'ccs-logo__text-graphic'
596
- ) do
597
- concat(tag.tspan('Crown Commercial Service', x: '0 33.2603 47.4161 72.572395 107.4747 133.2486 143.2486 176.5631 202.6647 242.3546 282.0445 306.6612 320.8467 345.0274 353.8321 378.2139 387.6211 397.6211 427.3687 451.9859 467.7828 489.9898 498.8726 523.1763', y: '0', 'sodipodi:role': 'line'))
598
- end
599
- end
600
- end
601
-
602
560
  def logo_linear_text_graphic_gca
603
561
  tag.g(transform: 'scale(10)') do
604
562
  tag.text(
@@ -35,7 +35,6 @@ module CCS
35
35
  # @option options [String] :container_class classes that can be added to the inner container
36
36
  # @option options [ActiveSupport::SafeBuffer,String] :content_licence The content licence information, see {CCS::Components::GovUK::Footer#footer_content_licence footer_content_licence} for default
37
37
  # @option options [ActiveSupport::SafeBuffer,String] :copyright The copyright information, (default: '© Crown copyright')
38
- # @option options [Boolean] :rebrand flag to use the rebrand footer which includes the logo
39
38
  # @option options [Hash] :attributes additional attributes that will added as part of the HTML
40
39
 
41
40
  def initialize(navigation: nil, meta: nil, **)
@@ -43,7 +42,7 @@ module CCS
43
42
 
44
43
  @options[:copyright] ||= '© Crown copyright'
45
44
 
46
- @logo = Logo.new(rebrand: true, use_logotype: false, classes: 'govuk-footer__crown', context: @context) if @options[:rebrand]
45
+ @logo = Logo.new(use_logotype: false, classes: 'govuk-footer__crown', context: @context)
47
46
  @navigation = navigation&.map { |navigation_item| Navigation.new(context: @context, **navigation_item) }
48
47
  @meta = Meta.new(context: @context, **meta) if meta
49
48
  end
@@ -55,7 +54,7 @@ module CCS
55
54
  # @return [ActiveSupport::SafeBuffer]
56
55
 
57
56
  def render
58
- tag.footer(**options[:attributes]) do
57
+ tag.div(**options[:attributes]) do
59
58
  tag.div(class: "govuk-width-container #{options[:container_classes]}".rstrip) do
60
59
  concat(logo.render) if logo
61
60
  if navigation.present?
@@ -1,5 +1,4 @@
1
1
  require_relative '../base'
2
- require_relative 'header/navigation'
3
2
  require_relative 'logo'
4
3
 
5
4
  module CCS
@@ -38,20 +37,15 @@ module CCS
38
37
  # @option options [String] :container_classes classes for the container
39
38
  # @option options [String] :homepage_url URL of the homepage. Defaults to +/+
40
39
  # @option options [String] :product_name product name, used when the product name follows on directly from ‘GOV.UK
41
- # @option options [Boolean] :use_tudor_crown flag to use the new tudor crown for the GOV.UK Logo
42
- # @option options [Boolean] :rebrand flag to use the rebrand logo
43
40
  # @option options [Hash] :attributes additional attributes that will added as part of the header HTML
44
41
 
45
- def initialize(navigation: nil, menu_button: nil, service: nil, **)
46
- super(**)
42
+ def initialize(**)
43
+ super
47
44
 
48
45
  @options[:container_classes] ||= 'govuk-width-container'
49
- @options[:homepage_url] ||= '/'
50
- @options[:use_tudor_crown] = true if @options[:use_tudor_crown].nil?
46
+ @options[:homepage_url] ||= '//gov.uk'
51
47
 
52
- @logo = Logo.new(rebrand: @options[:rebrand], use_tudor_crown: @options[:use_tudor_crown], classes: 'govuk-header__logotype', attributes: { aria: { label: 'GOV.UK' } }, context: @context)
53
- @navigation = Navigation.new(navigation: navigation, menu_button: menu_button, context: @context) if navigation && navigation[:items].present?
54
- @service = service
48
+ @logo = Logo.new(classes: 'govuk-header__logotype', attributes: { aria: { label: 'GOV.UK' } }, context: @context)
55
49
  end
56
50
 
57
51
  # Generates the HTML for the GOV.UK Header component
@@ -59,22 +53,16 @@ module CCS
59
53
  # @return [ActiveSupport::SafeBuffer]
60
54
 
61
55
  def render
62
- tag.header(**options[:attributes]) do
56
+ tag.div(**options[:attributes]) do
63
57
  tag.div(class: "govuk-header__container #{options[:container_classes]}") do
64
58
  concat(header_logo)
65
- if service || navigation
66
- concat(tag.div(class: 'govuk-header__content') do
67
- concat(header_service_name) if service
68
- concat(navigation.render) if navigation
69
- end)
70
- end
71
59
  end
72
60
  end
73
61
  end
74
62
 
75
63
  # The default attributes for the breadcrumbs
76
64
 
77
- DEFAULT_ATTRIBUTES = { class: 'govuk-header', data: { module: 'govuk-header' } }.freeze
65
+ DEFAULT_ATTRIBUTES = { class: 'govuk-header' }.freeze
78
66
 
79
67
  private
80
68
 
@@ -84,24 +72,12 @@ module CCS
84
72
 
85
73
  def header_logo
86
74
  tag.div(class: 'govuk-header__logo') do
87
- link_to(options[:homepage_url], class: 'govuk-header__link govuk-header__link--homepage') do
75
+ link_to(options[:homepage_url], class: 'govuk-header__homepage-link') do
88
76
  concat(logo.render)
89
77
  concat(tag.span(options[:product_name], class: 'govuk-header__product-name')) if options[:product_name]
90
78
  end
91
79
  end
92
80
  end
93
-
94
- # Generates the service name section
95
- #
96
- # @return [ActiveSupport::SafeBuffer]
97
-
98
- def header_service_name
99
- if service[:href]
100
- link_to(service[:name], service[:href], class: 'govuk-header__link govuk-header__service-name')
101
- else
102
- tag.span(service[:name], class: 'govuk-header__service-name')
103
- end
104
- end
105
81
  end
106
82
  end
107
83
  end
@@ -8,12 +8,8 @@ module CCS
8
8
  # This is used to generate the logo component from the
9
9
  # {https://github.com/alphagov/govuk-frontend/blob/main/packages/govuk-frontend/src/govuk/macros/logo.njk GDS - Macros - Logo}
10
10
  #
11
- # @!attribute [r] rebrand
12
- # @return [Boolean] flag for rebrand
13
11
  # @!attribute [r] use_logotype
14
12
  # @return [Boolean] flag for logotype
15
- # @!attribute [r] use_tudor_crown
16
- # @return [Boolean] flag for tudor crown
17
13
 
18
14
  class Logo < Base
19
15
  include ActionView::Context
@@ -21,27 +17,23 @@ module CCS
21
17
 
22
18
  private
23
19
 
24
- attr_reader :rebrand, :use_logotype, :use_tudor_crown
20
+ attr_reader :use_logotype
25
21
 
26
22
  public
27
23
 
28
- # @param rebrand [Boolean] Flag for rebrand
29
24
  # @param use_logotype [Boolean] Flag for logotyp
30
- # @param use_tudor_crown [Boolean] Flag for tudor crown
31
25
  # @param options [Hash] options that will be used in customising the HTML
32
26
  #
33
27
  # @option options [String] :classes additional CSS classes for the logo HTML
34
28
  # @option options [Hash] :attributes additional attributes that will added as part of the logo HTML
35
29
 
36
- def initialize(rebrand: false, use_logotype: true, use_tudor_crown: true, **)
30
+ def initialize(use_logotype: true, **)
37
31
  super(**)
38
32
 
39
- @rebrand = rebrand
40
33
  @use_logotype = use_logotype
41
- @use_tudor_crown = rebrand ? true : use_tudor_crown
42
34
 
43
- svg_width = @use_tudor_crown ? 32 : 36
44
- svg_width = rebrand ? svg_width + 130 : svg_width + 116 if @use_logotype
35
+ svg_width = 32
36
+ svg_width += 130 if @use_logotype
45
37
 
46
38
  @options[:attributes][:focusable] = 'false'
47
39
  @options[:attributes][:role] = @options[:attributes].dig(:aria, :label) ? 'img' : 'presentation'
@@ -59,8 +51,8 @@ module CCS
59
51
  def render
60
52
  tag.svg(**options[:attributes]) do
61
53
  concat(tag.title(@options[:attributes].dig(:aria, :label))) if @options[:attributes].dig(:aria, :label)
62
- concat(use_tudor_crown ? tudor_crown : st_edwards_crown)
63
- concat(rebrand ? dot_logotype : logotype) if use_logotype
54
+ concat(tudor_crown)
55
+ concat(logotype) if use_logotype
64
56
  end
65
57
  end
66
58
 
@@ -70,14 +62,6 @@ module CCS
70
62
 
71
63
  private
72
64
 
73
- # Generates the St Edwards Crown HTML
74
- #
75
- # @return [ActiveSupport::SafeBuffer]
76
-
77
- def st_edwards_crown
78
- tag.path(d: 'M13.4,22.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2-.8,2,0,4.2,2,5M4.8,27.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2-1,2,0,4.2,2,5M2.2,36.9c2,.8,4.2-.2,5-2,.8-2-.2-4.2-2-5-2-.8-4.2.2-5,2-.8,2,0,4.2,2,5M23,25.3c2,.8,4.2-.2,5-2s-.2-4.2-2-5c-2-.8-4.2.2-5,2s0,4.2,2,5M57.8,22.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2,1,2,0,4.2-2,5M66.4,27.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2,1,2,0,4.2-2,5M69,36.9c-2,.8-4.2-.2-5-2-.8-2,.2-4.2,2-5,2-.8,4.2.2,5,2,.8,2,0,4.2-2,5M48.2,25.3c-2,.8-4.2-.2-5-2s.2-4.2,2-5c2-.8,4.2.2,5,2s0,4.2-2,5M37.6,15.5l4.8,2.6v-7.2l-4.8,1.6c-.2-.2-.2-.4-.4-.4s2-6,2-6h-6.8l2,6c-.2.2-.4.2-.4.4-.2.2-4.8-1.4-4.8-1.4v7l4.8-2.6c-.2.2,0,.4.2.6l-2.8,8.4c-.2.4-.2.8-.2,1.4,0,2.2,1.6,4.2,3.8,4.4h1.2c2.2-.4,3.8-2.2,3.8-4.4s0-.8-.2-1.4l-2.8-8.4c.4-.2.6-.4.6-.6M35.6,56.1c9.2,0,17.8.6,25.6,1.8,2.2-9.2,4.8-14.4,7.6-18.2l-5.2-1.8c.6,2.6.6,3.8,0,5.6-.8-.8-1.6-2.4-2.2-4.8l-2.4,8.4c1.6-1,2.8-1.8,4-1.8-2.4,5.2-5.4,6.4-7.2,6-2.4-.4-3.4-2.6-3-4.4.6-2.6,3.2-3.2,4.4-.2,2.4-4.8-1.6-6.2-4.2-4.8,3.8-3.8,4.4-7.2,1.2-11.4-4.4,3.4-4.4,6.6-2.4,11.2-2.6-3-6.6-1.4-5,3.4,1.8-2.8,4.2-1,4,1.6-.4,2.4-3.4,4.2-7.4,4-5.6-.4-6-4.4-6-7.4,1.4-.2,3.8,1,6,4l.8-8.8c-2.2,2.4-4.4,2.8-6.6,2.8.8-2.4,4.2-6.2,4.2-6.2h-11s3.6,4,4.2,6.2c-2.2,0-4.4-.6-6.6-2.8l.8,8.8c2.2-3,4.6-4.2,6-4-.2,3.2-.4,7-6,7.4-3.8.4-7-1.6-7.4-4-.4-2.6,2-4.4,3.8-1.6,1.4-4.8-2.6-6.2-5.2-3.4,2-4.6,2-8-2.4-11.2-3.2,4.2-2.6,7.6,1.2,11.4-2.6-1.4-6.4,0-4.2,4.8,1.2-3,3.8-2.2,4.4.2.4,1.8-.8,3.8-3,4.4-2,.4-5-1-7.4-6,1.4,0,2.6.8,4,1.8l-3-8.4c-.6,2.4-1.4,3.8-2.4,4.8-.6-1.6-.4-3,0-5.6l-5.2,1.8c3,3.8,5.6,9,7.8,18.2,7.6-1,16.4-1.8,25.4-1.8')
79
- end
80
-
81
65
  # rubocop:disable Metrics/AbcSize
82
66
 
83
67
  # Generates the Tudor Crown HTML
@@ -100,24 +84,11 @@ module CCS
100
84
 
101
85
  # rubocop:enable Metrics/AbcSize
102
86
 
103
- # Generates the HTML for logotype with standard dot
104
- #
105
- # @return [ActiveSupport::SafeBuffer]
106
-
107
- def logotype
108
- path_kwargs = {
109
- d: 'M88.6,33.2c0,1.8.2,3.4.6,5s1.2,3,2,4.4c1,1.2,2,2.2,3.4,3s3,1.2,5,1.2,3.4-.2,4.6-.8,2.2-1.4,3-2.2,1.2-1.8,1.6-3c.2-1,.4-2,.4-3v-.4h-10.6v-6.4h18.8v23h-7.4v-5c-.6.8-1.2,1.6-2,2.2-.8.6-1.6,1.2-2.6,1.8-1,.4-2,.8-3.2,1.2s-2.4.4-3.6.4c-3,0-5.8-.6-8-1.6-2.4-1.2-4.4-2.6-6-4.6s-2.8-4.2-3.6-6.8c-.6-2.8-1-5.6-1-8.6s.4-5.8,1.4-8.4,2.2-4.8,4-6.8,3.8-3.4,6.2-4.6c2.4-1.2,5.2-1.6,8.2-1.6s3.8.2,5.6.6c1.8.4,3.4,1.2,4.8,2s2.8,1.8,3.8,3c1.2,1.2,2,2.6,2.8,4l-7.4,4.2c-.4-.8-1-1.8-1.6-2.4-.6-.8-1.2-1.4-2-2s-1.6-1-2.6-1.4-2.2-.4-3.4-.4c-2,0-3.6.4-5,1.2-1.4.8-2.6,1.8-3.4,3-1,1.2-1.6,2.8-2,4.4-.6,1.6-.8,3.8-.8,5.4ZM161.4,24.6c-.8-2.6-2.2-4.8-4-6.8s-3.8-3.4-6.2-4.6c-2.4-1.2-5.2-1.6-8.4-1.6s-5.8.6-8.4,1.6c-2.2,1.2-4.4,2.8-6,4.6-1.8,2-3,4.2-4,6.8-.8,2.6-1.4,5.4-1.4,8.4s.4,5.8,1.4,8.4c.8,2.6,2.2,4.8,4,6.8s3.8,3.4,6.2,4.6c2.4,1.2,5.2,1.6,8.4,1.6s5.8-.6,8.4-1.6c2.4-1.2,4.6-2.6,6.2-4.6,1.8-2,3-4.2,4-6.8.8-2.6,1.4-5.4,1.4-8.4-.2-3-.6-5.8-1.6-8.4h0ZM154,33.2c0,2-.2,3.8-.8,5.4-.4,1.6-1.2,3.2-2.2,4.4s-2.2,2.2-3.4,2.8c-1.4.6-3,1-4.8,1s-3.4-.4-4.8-1-2.6-1.6-3.4-2.8c-1-1.2-1.6-2.6-2.2-4.4-.4-1.6-.8-3.4-.8-5.4v-.2c0-2,.2-3.8.8-5.4.4-1.6,1.2-3.2,2.2-4.4,1-1.2,2.2-2.2,3.4-2.8,1.4-.6,3-1,4.8-1s3.4.4,4.8,1,2.6,1.6,3.4,2.8c1,1.2,1.6,2.6,2.2,4.4.4,1.6.8,3.4.8,5.4v.2ZM177.8,54l-11.8-42h9.4l8,31.4h.2l8-31.4h9.4l-11.8,42h-11.4,0ZM235.4,46.7c1.2,0,2.4-.2,3.4-.6,1-.4,2-.8,2.8-1.6s1.4-1.6,1.8-2.8c.4-1.2.6-2.4.6-4V11.8h8.2v27.2c0,2.4-.4,4.4-1.2,6.2s-2,3.4-3.6,4.8c-1.4,1.4-3.2,2.4-5.4,3-2,.8-4.4,1-6.8,1s-4.8-.4-6.8-1c-2-.8-3.8-1.8-5.4-3-1.6-1.4-2.6-3-3.6-4.8-.8-1.8-1.2-4-1.2-6.2V11.7h8.4v26c0,1.6.2,2.8.6,4,.4,1.2,1,2,1.8,2.8s1.6,1.2,2.8,1.6c1.2.4,2.2.6,3.6.6h0ZM261.4,11.9h8.4v18.2l14.8-18.2h10.4l-14.4,16.8,15.4,25.2h-9.8l-11-18.8-5.4,6v12.8h-8.4V11.9h0ZM206.2,44.2c-3,0-5.4,2.4-5.4,5.4s2.4,5.4,5.4,5.4,5.4-2.4,5.4-5.4-2.4-5.4-5.4-5.4Z'
110
- }
111
- path_kwargs[:transform] = 'translate(8 0)' unless use_tudor_crown
112
-
113
- tag.path(**path_kwargs)
114
- end
115
-
116
87
  # Generates the HTML for logotype with raised and coloured dot
117
88
  #
118
89
  # @return [ActiveSupport::SafeBuffer]
119
90
 
120
- def dot_logotype
91
+ def logotype
121
92
  capture do
122
93
  concat(tag.circle(class: 'govuk-logo-dot', cx: '226', cy: '36', r: '7.3'))
123
94
  concat(tag.path(d: 'M93.94 41.25c.4 1.81 1.2 3.21 2.21 4.62 1 1.4 2.21 2.41 3.61 3.21s3.21 1.2 5.22 1.2 3.61-.4 4.82-1c1.4-.6 2.41-1.4 3.21-2.41.8-1 1.4-2.01 1.61-3.01s.4-2.01.4-3.01v.14h-10.86v-7.02h20.07v24.08h-8.03v-5.56c-.6.8-1.38 1.61-2.19 2.41-.8.8-1.81 1.2-2.81 1.81-1 .4-2.21.8-3.41 1.2s-2.41.4-3.81.4a18.56 18.56 0 0 1-14.65-6.63c-1.6-2.01-3.01-4.41-3.81-7.02s-1.4-5.62-1.4-8.83.4-6.02 1.4-8.83a20.45 20.45 0 0 1 19.46-13.65c3.21 0 4.01.2 5.82.8 1.81.4 3.61 1.2 5.02 2.01 1.61.8 2.81 2.01 4.01 3.21s2.21 2.61 2.81 4.21l-7.63 4.41c-.4-1-1-1.81-1.61-2.61-.6-.8-1.4-1.4-2.21-2.01-.8-.6-1.81-1-2.81-1.4-1-.4-2.21-.4-3.61-.4-2.01 0-3.81.4-5.22 1.2-1.4.8-2.61 1.81-3.61 3.21s-1.61 2.81-2.21 4.62c-.4 1.81-.6 3.71-.6 5.42s.8 5.22.8 5.22Zm57.8-27.9c3.21 0 6.22.6 8.63 1.81 2.41 1.2 4.82 2.81 6.62 4.82S170.2 24.39 171 27s1.4 5.62 1.4 8.83-.4 6.02-1.4 8.83-2.41 5.02-4.01 7.02-4.01 3.61-6.62 4.82-5.42 1.81-8.63 1.81-6.22-.6-8.63-1.81-4.82-2.81-6.42-4.82-3.21-4.41-4.01-7.02-1.4-5.62-1.4-8.83.4-6.02 1.4-8.83 2.41-5.02 4.01-7.02 4.01-3.61 6.42-4.82 5.42-1.81 8.63-1.81Zm0 36.73c1.81 0 3.61-.4 5.02-1s2.61-1.81 3.61-3.01 1.81-2.81 2.21-4.41c.4-1.81.8-3.61.8-5.62 0-2.21-.2-4.21-.8-6.02s-1.2-3.21-2.21-4.62c-1-1.2-2.21-2.21-3.61-3.01s-3.21-1-5.02-1-3.61.4-5.02 1c-1.4.8-2.61 1.81-3.61 3.01s-1.81 2.81-2.21 4.62c-.4 1.81-.8 3.61-.8 5.62 0 2.41.2 4.21.8 6.02.4 1.81 1.2 3.21 2.21 4.41s2.21 2.21 3.61 3.01c1.4.8 3.21 1 5.02 1Zm36.32 7.96-12.24-44.15h9.83l8.43 32.77h.4l8.23-32.77h9.83L200.3 58.04h-12.24Zm74.14-7.96c2.18 0 3.51-.6 3.51-.6 1.2-.6 2.01-1 2.81-1.81s1.4-1.81 1.81-2.81a13 13 0 0 0 .8-4.01V13.9h8.63v28.15c0 2.41-.4 4.62-1.4 6.62-.8 2.01-2.21 3.61-3.61 5.02s-3.41 2.41-5.62 3.21-4.62 1.2-7.02 1.2-5.02-.4-7.02-1.2c-2.21-.8-4.01-1.81-5.62-3.21s-2.81-3.01-3.61-5.02-1.4-4.21-1.4-6.62V13.9h8.63v26.95c0 1.61.2 3.01.8 4.01.4 1.2 1.2 2.21 2.01 2.81.8.8 1.81 1.4 2.81 1.81 0 0 1.34.6 3.51.6Zm34.22-36.18v18.92l15.65-18.92h10.82l-15.03 17.32 16.03 26.83h-10.21l-11.44-20.21-5.62 6.22v13.99h-8.83V13.9'))
@@ -62,7 +62,7 @@ module CCS
62
62
 
63
63
  # The default attributes for the phase banner
64
64
 
65
- DEFAULT_ATTRIBUTES = { class: 'govuk-phase-banner' }.freeze
65
+ DEFAULT_ATTRIBUTES = { class: 'govuk-phase-banner govuk-width-container' }.freeze
66
66
  end
67
67
  end
68
68
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module CCS
4
4
  module FrontendHelpers
5
- VERSION = '3.5.0'
5
+ VERSION = '4.1.0'
6
6
  end
7
7
  end
@@ -10,7 +10,7 @@ module CCS
10
10
  #
11
11
  # The CCS Frontend Helperss module contains view helpers based on:
12
12
  # - {https://design-system.service.gov.uk/components GDS components}
13
- # - {https://github.com/tim-s-ccs/ts-ccs-frontend CCS components}
13
+ # - {https://github.com/Crown-Commercial-Service/ccs-frontend-project CCS components}
14
14
  # that can be used in Ruby on Rails projects within CCS.
15
15
 
16
16
  module FrontendHelpers
data/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "author": "CCS",
6
6
  "license": "MIT",
7
7
  "devDependencies": {
8
- "govuk-frontend": "5.14.0",
9
- "ccs-frontend": "2.5.0"
8
+ "govuk-frontend": "6.1.0",
9
+ "ccs-frontend": "3.2.0"
10
10
  }
11
11
  }
metadata CHANGED
@@ -1,10 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ccs-frontend_helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.0
4
+ version: 4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Crown Commercial Service
8
+ - Government Commerical Agency
8
9
  bindir: exe
9
10
  cert_chain: []
10
11
  date: 1980-01-02 00:00:00.000000000 Z
@@ -23,7 +24,7 @@ dependencies:
23
24
  - - ">="
24
25
  - !ruby/object:Gem::Version
25
26
  version: '7.2'
26
- description: Gem containing view helpers for CCS Ruby on Rails projects
27
+ description: Gem containing view helpers for CCS (formally CCS) Ruby on Rails projects
27
28
  executables: []
28
29
  extensions: []
29
30
  extra_rdoc_files: []
@@ -99,8 +100,6 @@ files:
99
100
  - lib/ccs/components/govuk/footer/navigation.rb
100
101
  - lib/ccs/components/govuk/form_group.rb
101
102
  - lib/ccs/components/govuk/header.rb
102
- - lib/ccs/components/govuk/header/link.rb
103
- - lib/ccs/components/govuk/header/navigation.rb
104
103
  - lib/ccs/components/govuk/hint.rb
105
104
  - lib/ccs/components/govuk/inset_text.rb
106
105
  - lib/ccs/components/govuk/label.rb
@@ -223,5 +222,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
223
222
  requirements: []
224
223
  rubygems_version: 3.6.9
225
224
  specification_version: 4
226
- summary: Gem containing view helpers for CCS Ruby on Rails projects
225
+ summary: Gem containing view helpers for GCA (formally CCS) Ruby on Rails projects
227
226
  test_files: []
@@ -1,56 +0,0 @@
1
- require_relative '../../base'
2
-
3
- module CCS
4
- module Components
5
- module GovUK
6
- class Header < Base
7
- # = GOV.UK Header link
8
- #
9
- # The individual header link item
10
- #
11
- # @!attribute [r] text
12
- # @return [String] Text for the header link
13
- # @!attribute [r] href
14
- # @return [String] The href for the header link
15
-
16
- class Link < Base
17
- private
18
-
19
- attr_reader :text, :href
20
-
21
- public
22
-
23
- # @param text [String] the text for the header link
24
- # @param href [String] the href for the header link
25
- # @param options [Hash] options that will be used in customising the HTML
26
- #
27
- # @option options [Boolean] :active flag to mark the navigation item as active or not
28
- # @option options [Hash] :attributes any additional attributes that will added as part of the HTML
29
-
30
- def initialize(text:, href: nil, **)
31
- super(**)
32
-
33
- @text = text
34
- @href = href
35
- end
36
-
37
- # Generates the HTML for the GOV.UK Header link
38
- #
39
- # @return [ActiveSupport::SafeBuffer]
40
-
41
- def render
42
- tag.li(class: "govuk-header__navigation-item #{'govuk-header__navigation-item--active' if options[:active]}".rstrip) do
43
- if href
44
- options[:attributes][:class] = 'govuk-header__link'
45
-
46
- link_to(text, href, **options[:attributes])
47
- else
48
- text
49
- end
50
- end
51
- end
52
- end
53
- end
54
- end
55
- end
56
- end
@@ -1,73 +0,0 @@
1
- require_relative 'link'
2
-
3
- module CCS
4
- module Components
5
- module GovUK
6
- class Header < Base
7
- # = GOV.UK Header navigation
8
- #
9
- # The header navigation section
10
- #
11
- # @!attribute [r] navigation_links
12
- # @return [Array<Link>] An array of the initialised navigation links
13
- # @!attribute [r] navigation_label
14
- # @return [String] The aria label for the navigation
15
- # @!attribute [r] navigation_classes
16
- # @return [String] The classes for the navigation
17
- # @!attribute [r] menu_button
18
- # @return [Hash] The options for the menu button
19
-
20
- class Navigation
21
- include ActionView::Context
22
- include ActionView::Helpers
23
-
24
- private
25
-
26
- attr_reader :navigation_links, :navigation_label, :navigation_classes, :menu_button
27
-
28
- public
29
-
30
- # @param navigation [Hash] options for the navigation
31
- # @param context [ActionView::Base] the view context
32
- # @param menu_button [Hash] options for the menu button
33
- #
34
- # @option navigation [Array] :items an array of links for the navigation section.
35
- # See {Components::GovUK::Header::Link#initialize Link#initialize} for details of the items in the array.
36
- # @option navigation [String] :classes additional CSS classes for the navigation HTML
37
- # @option navigation [String] :label text for the aria-label attribute of the navigation. Defaults to the menu button text
38
- #
39
- # @option menu_button [String] :text text for the button that opens the mobile navigation menu.
40
- # By default, this is set to +Menu+.
41
- # @option menu_button [String] :label text for the aria-label attribute of the button that opens the mobile navigation.
42
- # Defaults to +Show or hide menu+.
43
-
44
- def initialize(navigation:, context:, menu_button: nil)
45
- menu_button ||= {}
46
- menu_button[:text] ||= 'Menu'
47
-
48
- menu_button[:aria] = { controls: 'navigation' }
49
- menu_button[:aria][:label] = menu_button[:label] if menu_button[:label]
50
-
51
- @menu_button = menu_button
52
- @navigation_links = navigation[:items].map { |navigation_link| Link.new(context: context, **navigation_link) }
53
- @navigation_label = navigation[:label] || menu_button[:text]
54
- @navigation_classes = "govuk-header__navigation #{navigation[:classes]}".rstrip
55
- end
56
-
57
- # Generates the HTML for the GOV.UK Navigation
58
- #
59
- # @return [ActiveSupport::SafeBuffer]
60
-
61
- def render
62
- tag.nav(aria: { label: navigation_label }, class: navigation_classes) do
63
- concat(button_tag(menu_button[:text], type: :button, class: 'govuk-header__menu-button govuk-js-header-toggle', aria: menu_button[:aria], hidden: true))
64
- concat(tag.ul(id: 'navigation', class: 'govuk-header__navigation-list') do
65
- navigation_links.each { |navigation_link| concat(navigation_link.render) }
66
- end)
67
- end
68
- end
69
- end
70
- end
71
- end
72
- end
73
- end