Skip to content

Commit b47a7ba

Browse files
committed
Matrix element added
1 parent 32d4849 commit b47a7ba

8 files changed

Lines changed: 5193 additions & 4644 deletions

File tree

Gemfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ ruby '3.1.3'
99
# github: 'ministryofjustice/fb-metadata-presenter',
1010
# branch: 's-and-r-delete-session'
1111
# gem 'metadata_presenter', path: '../fb-metadata-presenter'
12-
gem 'metadata_presenter', '3.4.0'
12+
# gem 'metadata_presenter', '3.4.0'
13+
gem 'metadata_presenter', git: 'git@github.com:cabinetoffice/fb-metadata-presenter.git', branch: 'feature/matrix'
1314

1415
gem 'aws-sdk-s3'
1516
gem 'bootsnap', '>= 1.4.2', require: false

Gemfile.lock

Lines changed: 66 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
GIT
2+
remote: git@github.com:cabinetoffice/fb-metadata-presenter.git
3+
revision: 9c4ded724434bbd3ac5608058f7d15fcd49ae6d7
4+
branch: feature/matrix
5+
specs:
6+
metadata_presenter (3.4.4)
7+
govspeak (~> 7.1)
8+
govuk_design_system_formbuilder (~> 4.1.1)
9+
json-schema (~> 4.1.1)
10+
kramdown (~> 2.4.0)
11+
rails (~> 7.0.0)
12+
sassc-rails (= 2.1.2)
13+
sprockets
14+
sprockets-rails
15+
uk_postcode
16+
117
GEM
218
remote: https://rubygems.org/
319
specs:
@@ -149,9 +165,9 @@ GEM
149165
ffi (1.16.3)
150166
globalid (1.2.1)
151167
activesupport (>= 6.1)
152-
google-protobuf (3.25.3)
153-
googleapis-common-protos-types (1.14.0)
154-
google-protobuf (~> 3.18)
168+
google-protobuf (3.25.8)
169+
googleapis-common-protos-types (1.20.0)
170+
google-protobuf (>= 3.18, < 5.a)
155171
govspeak (7.1.1)
156172
actionview (>= 6)
157173
addressable (>= 2.3.8, < 3)
@@ -179,10 +195,10 @@ GEM
179195
activemodel (>= 6.1)
180196
activesupport (>= 6.1)
181197
html-attributes-utils (~> 1)
182-
govuk_personalisation (0.16.0)
198+
govuk_personalisation (1.1.0)
183199
plek (>= 1.9.0)
184-
rails (>= 6, < 8)
185-
govuk_publishing_components (38.2.0)
200+
rails (>= 6, < 9)
201+
govuk_publishing_components (41.0.0)
186202
govuk_app_config
187203
govuk_personalisation (>= 0.7.0)
188204
kramdown
@@ -194,7 +210,7 @@ GEM
194210
hashdiff (1.1.0)
195211
html-attributes-utils (1.0.2)
196212
activesupport (>= 6.1.4.4)
197-
htmlentities (4.3.4)
213+
htmlentities (4.4.2)
198214
i18n (1.14.4)
199215
concurrent-ruby (~> 1.0)
200216
jmespath (1.6.2)
@@ -222,16 +238,6 @@ GEM
222238
net-smtp
223239
marcel (1.0.4)
224240
matrix (0.4.2)
225-
metadata_presenter (3.4.0)
226-
govspeak (~> 7.1)
227-
govuk_design_system_formbuilder (~> 4.1.1)
228-
json-schema (~> 4.1.1)
229-
kramdown (~> 2.4.0)
230-
rails (~> 7.0.0)
231-
sassc-rails (= 2.1.2)
232-
sprockets
233-
sprockets-rails
234-
uk_postcode
235241
method_source (1.0.0)
236242
mini_mime (1.1.5)
237243
mini_portile2 (2.8.5)
@@ -251,7 +257,7 @@ GEM
251257
nokogiri (1.16.3)
252258
mini_portile2 (~> 2.8.2)
253259
racc (~> 1.4)
254-
opentelemetry-api (1.2.5)
260+
opentelemetry-api (1.7.0)
255261
opentelemetry-common (0.20.1)
256262
opentelemetry-api (~> 1.0)
257263
opentelemetry-exporter-otlp (0.26.3)
@@ -261,24 +267,28 @@ GEM
261267
opentelemetry-common (~> 0.20)
262268
opentelemetry-sdk (~> 1.2)
263269
opentelemetry-semantic_conventions
270+
opentelemetry-instrumentation-action_mailer (0.1.0)
271+
opentelemetry-api (~> 1.0)
272+
opentelemetry-instrumentation-active_support (~> 0.1)
273+
opentelemetry-instrumentation-base (~> 0.22.1)
264274
opentelemetry-instrumentation-action_pack (0.9.0)
265275
opentelemetry-api (~> 1.0)
266276
opentelemetry-instrumentation-base (~> 0.22.1)
267277
opentelemetry-instrumentation-rack (~> 0.21)
268-
opentelemetry-instrumentation-action_view (0.7.0)
278+
opentelemetry-instrumentation-action_view (0.7.2)
269279
opentelemetry-api (~> 1.0)
270280
opentelemetry-instrumentation-active_support (~> 0.1)
271281
opentelemetry-instrumentation-base (~> 0.22.1)
272-
opentelemetry-instrumentation-active_job (0.7.1)
282+
opentelemetry-instrumentation-active_job (0.7.8)
273283
opentelemetry-api (~> 1.0)
274284
opentelemetry-instrumentation-base (~> 0.22.1)
275-
opentelemetry-instrumentation-active_model_serializers (0.20.1)
285+
opentelemetry-instrumentation-active_model_serializers (0.20.2)
276286
opentelemetry-api (~> 1.0)
277287
opentelemetry-instrumentation-base (~> 0.22.1)
278-
opentelemetry-instrumentation-active_record (0.7.2)
288+
opentelemetry-instrumentation-active_record (0.7.4)
279289
opentelemetry-api (~> 1.0)
280290
opentelemetry-instrumentation-base (~> 0.22.1)
281-
opentelemetry-instrumentation-active_support (0.5.1)
291+
opentelemetry-instrumentation-active_support (0.5.3)
282292
opentelemetry-api (~> 1.0)
283293
opentelemetry-instrumentation-base (~> 0.22.1)
284294
opentelemetry-instrumentation-all (0.56.0)
@@ -315,38 +325,35 @@ GEM
315325
opentelemetry-instrumentation-sidekiq (~> 0.25.0)
316326
opentelemetry-instrumentation-sinatra (~> 0.23.1)
317327
opentelemetry-instrumentation-trilogy (~> 0.58.0)
318-
opentelemetry-instrumentation-aws_sdk (0.5.2)
328+
opentelemetry-instrumentation-aws_sdk (0.5.4)
319329
opentelemetry-api (~> 1.0)
320330
opentelemetry-instrumentation-base (~> 0.22.1)
321331
opentelemetry-instrumentation-base (0.22.3)
322332
opentelemetry-api (~> 1.0)
323333
opentelemetry-registry (~> 0.1)
324-
opentelemetry-instrumentation-bunny (0.21.3)
334+
opentelemetry-instrumentation-bunny (0.21.4)
325335
opentelemetry-api (~> 1.0)
326336
opentelemetry-instrumentation-base (~> 0.22.1)
327-
opentelemetry-instrumentation-concurrent_ruby (0.21.3)
337+
opentelemetry-instrumentation-concurrent_ruby (0.21.4)
328338
opentelemetry-api (~> 1.0)
329339
opentelemetry-instrumentation-base (~> 0.22.1)
330-
opentelemetry-instrumentation-dalli (0.25.1)
340+
opentelemetry-instrumentation-dalli (0.25.4)
331341
opentelemetry-api (~> 1.0)
332-
opentelemetry-common (~> 0.20.0)
333342
opentelemetry-instrumentation-base (~> 0.22.1)
334-
opentelemetry-instrumentation-delayed_job (0.22.2)
343+
opentelemetry-instrumentation-delayed_job (0.22.4)
335344
opentelemetry-api (~> 1.0)
336345
opentelemetry-instrumentation-base (~> 0.22.1)
337-
opentelemetry-instrumentation-ethon (0.21.4)
346+
opentelemetry-instrumentation-ethon (0.21.9)
338347
opentelemetry-api (~> 1.0)
339-
opentelemetry-common (~> 0.20.0)
340348
opentelemetry-instrumentation-base (~> 0.22.1)
341-
opentelemetry-instrumentation-excon (0.22.1)
349+
opentelemetry-instrumentation-excon (0.22.5)
342350
opentelemetry-api (~> 1.0)
343-
opentelemetry-common (~> 0.20.0)
344351
opentelemetry-instrumentation-base (~> 0.22.1)
345352
opentelemetry-instrumentation-faraday (0.23.4)
346353
opentelemetry-api (~> 1.0)
347354
opentelemetry-common (~> 0.20.0)
348355
opentelemetry-instrumentation-base (~> 0.22.1)
349-
opentelemetry-instrumentation-grape (0.1.7)
356+
opentelemetry-instrumentation-grape (0.1.8)
350357
opentelemetry-api (~> 1.0)
351358
opentelemetry-instrumentation-base (~> 0.22.1)
352359
opentelemetry-instrumentation-rack (~> 0.21)
@@ -356,45 +363,42 @@ GEM
356363
opentelemetry-instrumentation-gruf (0.1.1)
357364
opentelemetry-api (>= 1.0.0)
358365
opentelemetry-instrumentation-base (~> 0.22.1)
359-
opentelemetry-instrumentation-http (0.23.3)
366+
opentelemetry-instrumentation-http (0.23.5)
360367
opentelemetry-api (~> 1.0)
361368
opentelemetry-instrumentation-base (~> 0.22.1)
362-
opentelemetry-instrumentation-http_client (0.22.4)
369+
opentelemetry-instrumentation-http_client (0.22.8)
363370
opentelemetry-api (~> 1.0)
364-
opentelemetry-common (~> 0.20.0)
365371
opentelemetry-instrumentation-base (~> 0.22.1)
366-
opentelemetry-instrumentation-koala (0.20.3)
372+
opentelemetry-instrumentation-koala (0.20.6)
367373
opentelemetry-api (~> 1.0)
368-
opentelemetry-common (~> 0.20.0)
369374
opentelemetry-instrumentation-base (~> 0.22.1)
370-
opentelemetry-instrumentation-lmdb (0.22.2)
375+
opentelemetry-instrumentation-lmdb (0.22.3)
371376
opentelemetry-api (~> 1.0)
372377
opentelemetry-instrumentation-base (~> 0.22.1)
373-
opentelemetry-instrumentation-mongo (0.22.3)
378+
opentelemetry-instrumentation-mongo (0.22.4)
374379
opentelemetry-api (~> 1.0)
375380
opentelemetry-instrumentation-base (~> 0.22.1)
376381
opentelemetry-instrumentation-mysql2 (0.25.0)
377382
opentelemetry-api (~> 1.0)
378383
opentelemetry-instrumentation-base (~> 0.22.1)
379-
opentelemetry-instrumentation-net_http (0.22.4)
384+
opentelemetry-instrumentation-net_http (0.22.8)
380385
opentelemetry-api (~> 1.0)
381-
opentelemetry-common (~> 0.20.0)
382386
opentelemetry-instrumentation-base (~> 0.22.1)
383387
opentelemetry-instrumentation-pg (0.26.1)
384388
opentelemetry-api (~> 1.0)
385389
opentelemetry-instrumentation-base (~> 0.22.1)
386390
opentelemetry-instrumentation-que (0.7.1)
387391
opentelemetry-api (~> 1.0)
388392
opentelemetry-instrumentation-base (~> 0.22.1)
389-
opentelemetry-instrumentation-racecar (0.3.2)
393+
opentelemetry-instrumentation-racecar (0.3.4)
390394
opentelemetry-api (~> 1.0)
391395
opentelemetry-instrumentation-base (~> 0.22.1)
392-
opentelemetry-instrumentation-rack (0.24.3)
396+
opentelemetry-instrumentation-rack (0.24.6)
393397
opentelemetry-api (~> 1.0)
394-
opentelemetry-common (~> 0.20.0)
395398
opentelemetry-instrumentation-base (~> 0.22.1)
396-
opentelemetry-instrumentation-rails (0.30.1)
399+
opentelemetry-instrumentation-rails (0.30.2)
397400
opentelemetry-api (~> 1.0)
401+
opentelemetry-instrumentation-action_mailer (~> 0.1.0)
398402
opentelemetry-instrumentation-action_pack (~> 0.9.0)
399403
opentelemetry-instrumentation-action_view (~> 0.7.0)
400404
opentelemetry-instrumentation-active_job (~> 0.7.0)
@@ -404,53 +408,48 @@ GEM
404408
opentelemetry-instrumentation-rake (0.2.2)
405409
opentelemetry-api (~> 1.0)
406410
opentelemetry-instrumentation-base (~> 0.22.1)
407-
opentelemetry-instrumentation-rdkafka (0.4.4)
411+
opentelemetry-instrumentation-rdkafka (0.4.9)
408412
opentelemetry-api (~> 1.0)
409-
opentelemetry-common (~> 0.20.0)
410413
opentelemetry-instrumentation-base (~> 0.22.1)
411-
opentelemetry-instrumentation-redis (0.25.4)
414+
opentelemetry-instrumentation-redis (0.25.7)
412415
opentelemetry-api (~> 1.0)
413-
opentelemetry-common (~> 0.20.0)
414416
opentelemetry-instrumentation-base (~> 0.22.1)
415417
opentelemetry-instrumentation-resque (0.5.2)
416418
opentelemetry-api (~> 1.0)
417419
opentelemetry-instrumentation-base (~> 0.22.1)
418-
opentelemetry-instrumentation-restclient (0.22.4)
420+
opentelemetry-instrumentation-restclient (0.22.8)
419421
opentelemetry-api (~> 1.0)
420-
opentelemetry-common (~> 0.20.0)
421422
opentelemetry-instrumentation-base (~> 0.22.1)
422-
opentelemetry-instrumentation-ruby_kafka (0.21.1)
423+
opentelemetry-instrumentation-ruby_kafka (0.21.3)
423424
opentelemetry-api (~> 1.0)
424425
opentelemetry-instrumentation-base (~> 0.22.1)
425-
opentelemetry-instrumentation-sidekiq (0.25.3)
426+
opentelemetry-instrumentation-sidekiq (0.25.7)
426427
opentelemetry-api (~> 1.0)
427-
opentelemetry-common (~> 0.20.0)
428428
opentelemetry-instrumentation-base (~> 0.22.1)
429-
opentelemetry-instrumentation-sinatra (0.23.3)
429+
opentelemetry-instrumentation-sinatra (0.23.5)
430430
opentelemetry-api (~> 1.0)
431-
opentelemetry-common (~> 0.20.0)
432431
opentelemetry-instrumentation-base (~> 0.22.1)
433432
opentelemetry-instrumentation-rack (~> 0.21)
434433
opentelemetry-instrumentation-trilogy (0.58.0)
435434
opentelemetry-api (~> 1.0)
436435
opentelemetry-instrumentation-base (~> 0.22.1)
437436
opentelemetry-semantic_conventions (>= 1.8.0)
438-
opentelemetry-registry (0.3.1)
437+
opentelemetry-registry (0.4.0)
439438
opentelemetry-api (~> 1.1)
440-
opentelemetry-sdk (1.4.1)
439+
opentelemetry-sdk (1.10.0)
441440
opentelemetry-api (~> 1.1)
442441
opentelemetry-common (~> 0.20)
443442
opentelemetry-registry (~> 0.2)
444443
opentelemetry-semantic_conventions
445-
opentelemetry-semantic_conventions (1.10.0)
444+
opentelemetry-semantic_conventions (1.36.0)
446445
opentelemetry-api (~> 1.0)
447446
parallel (1.24.0)
448447
parser (3.3.0.5)
449448
ast (~> 2.4.1)
450449
racc
451-
plek (5.1.0)
450+
plek (5.2.2)
452451
prometheus-client (4.2.2)
453-
prometheus_exporter (2.1.0)
452+
prometheus_exporter (2.2.0)
454453
webrick
455454
public_suffix (5.0.4)
456455
puma (6.4.2)
@@ -503,7 +502,7 @@ GEM
503502
rack (>= 1.4)
504503
rexml (3.2.6)
505504
rinku (2.0.6)
506-
rouge (4.2.1)
505+
rouge (4.7.0)
507506
rspec-core (3.13.0)
508507
rspec-support (~> 3.13.0)
509508
rspec-expectations (3.13.0)
@@ -556,7 +555,7 @@ GEM
556555
rubocop-factory_bot (~> 2.22)
557556
ruby-progressbar (1.13.0)
558557
ruby2_keywords (0.0.5)
559-
sanitize (6.1.0)
558+
sanitize (6.1.3)
560559
crass (~> 1.0.2)
561560
nokogiri (>= 1.12.0)
562561
sass-rails (6.0.0)
@@ -627,7 +626,7 @@ GEM
627626
rack-proxy (>= 0.6.1)
628627
railties (>= 5.2)
629628
semantic_range (>= 2.3.0)
630-
webrick (1.8.1)
629+
webrick (1.9.2)
631630
websocket-driver (0.7.6)
632631
websocket-extensions (>= 0.1.0)
633632
websocket-extensions (0.1.5)
@@ -650,7 +649,7 @@ DEPENDENCIES
650649
fb-jwt-auth (= 0.10.0)
651650
jwt
652651
listen (~> 3.8)
653-
metadata_presenter (= 3.4.0)
652+
metadata_presenter!
654653
prometheus-client (~> 4.2.0)
655654
puma (~> 6.4)
656655
rails (~> 7.0.5)

app/helpers/confirmation_email_helper.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,13 @@ def answers_table(pages, style: nil)
5858
pages.collect { |page|
5959
concat(heading_row(page[:heading])) if page[:heading].present?
6060
page[:answers].each.collect { |answer|
61+
answer_content = answer[:answer_display] || answer[:answer]
62+
6163
if multiquestion_page?(page[:answers])
62-
concat answer_row(question: answer[:field_name], answer: answer[:answer])
64+
concat answer_row(question: answer[:field_name], answer: answer_content)
6365
previous_page_was_multiquestion = true
6466
else
65-
concat answer_row(question: answer[:field_name], answer: answer[:answer], first_row: previous_page_was_multiquestion)
67+
concat answer_row(question: answer[:field_name], answer: answer_content, first_row: previous_page_was_multiquestion)
6668
previous_page_was_multiquestion = false
6769
end
6870
}.join.html_safe

0 commit comments

Comments
 (0)