hof 20.3.11 → 20.4.0-beta-new-crown

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. package/.nyc_output/594bd7df-0d9b-4e59-9b57-90c46c8350ec.json +1 -0
  2. package/.nyc_output/processinfo/594bd7df-0d9b-4e59-9b57-90c46c8350ec.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/.vscode/settings.json +6 -0
  5. package/components/date/templates/date.html +1 -1
  6. package/config/hof-defaults.js +10 -5
  7. package/frontend/govuk-template/build/govuk_template.html +20 -22
  8. package/frontend/govuk-template/govuk_template_generated.html +21 -23
  9. package/frontend/template-mixins/partials/forms/checkbox-group.html +1 -1
  10. package/frontend/template-mixins/partials/forms/option-group.html +1 -1
  11. package/frontend/template-mixins/partials/forms/textarea-group.html +3 -1
  12. package/frontend/template-partials/views/layout.html +1 -1
  13. package/frontend/template-partials/views/partials/cookie-banner.html +2 -2
  14. package/frontend/template-partials/views/partials/gatag.html +0 -1
  15. package/frontend/template-partials/views/partials/head.html +23 -0
  16. package/lib/ga-tag.js +33 -7
  17. package/lib/health.js +1 -1
  18. package/lib/sessions.js +0 -2
  19. package/middleware/cookies.js +2 -0
  20. package/middleware/rate-limiter.js +1 -3
  21. package/package.json +6 -6
  22. package/sandbox/.env +1 -0
  23. package/sandbox/apps/sandbox/fields.js +0 -6
  24. package/sandbox/apps/sandbox/translations/src/en/fields.json +5 -5
  25. package/sandbox/apps/sandbox/translations/src/en/pages.json +1 -1
  26. package/sandbox/config.js +1 -2
  27. package/sandbox/public/css/app.css +10 -0
  28. package/sandbox/server.js +1 -4
  29. package/sandbox/yarn.lock +3 -3
  30. package/.nyc_output/b924df42-9cb6-4618-9a07-4f58f67ae28a.json +0 -1
  31. package/.nyc_output/processinfo/b924df42-9cb6-4618-9a07-4f58f67ae28a.json +0 -1
  32. package/sandbox/dump.rdb +0 -0
@@ -0,0 +1 @@
1
+ {"parent":null,"pid":8706,"argv":["/Users/sulthan/.nvm/versions/node/v16.15.0/bin/node","/Users/sulthan/development/HO/hof/node_modules/.bin/_mocha","test/**/*.spec.js","sandbox/test/**/*.spec.js"],"execArgv":[],"cwd":"/Users/sulthan/development/HO/hof","time":1666273611682,"ppid":8705,"coverageFilename":"/Users/sulthan/development/HO/hof/.nyc_output/594bd7df-0d9b-4e59-9b57-90c46c8350ec.json","externalId":"","uuid":"594bd7df-0d9b-4e59-9b57-90c46c8350ec","files":["/Users/sulthan/development/HO/hof/model/index.js","/Users/sulthan/development/HO/hof/components/index.js","/Users/sulthan/development/HO/hof/components/address-lookup/index.js","/Users/sulthan/development/HO/hof/components/address-lookup/default-model.js","/Users/sulthan/development/HO/hof/components/address-lookup/defaults.js","/Users/sulthan/development/HO/hof/components/clear-session/index.js","/Users/sulthan/development/HO/hof/components/combine-and-loop-fields/index.js","/Users/sulthan/development/HO/hof/components/date/index.js","/Users/sulthan/development/HO/hof/components/date/fields.js","/Users/sulthan/development/HO/hof/components/emailer/index.js","/Users/sulthan/development/HO/hof/components/emailer/email-service.js","/Users/sulthan/development/HO/hof/components/emailer/emailer.js","/Users/sulthan/development/HO/hof/components/emailer/transports/index.js","/Users/sulthan/development/HO/hof/components/emailer/transports/smtp.js","/Users/sulthan/development/HO/hof/components/emailer/transports/ses.js","/Users/sulthan/development/HO/hof/components/emailer/transports/stub.js","/Users/sulthan/development/HO/hof/components/emailer/transports/debug.js","/Users/sulthan/development/HO/hof/components/homeoffice-countries/index.js","/Users/sulthan/development/HO/hof/config/component-defaults.js","/Users/sulthan/development/HO/hof/components/notify/index.js","/Users/sulthan/development/HO/hof/components/notify/notify.js","/Users/sulthan/development/HO/hof/components/summary/index.js","/Users/sulthan/development/HO/hof/config/rate-limits.js","/Users/sulthan/development/HO/hof/middleware/rate-limiter.js","/Users/sulthan/development/HO/hof/config/hof-defaults.js","/Users/sulthan/development/HO/hof/controller/base-controller.js","/Users/sulthan/development/HO/hof/controller/formatting/index.js","/Users/sulthan/development/HO/hof/controller/validation/index.js","/Users/sulthan/development/HO/hof/controller/validation/validators.js","/Users/sulthan/development/HO/hof/controller/validation/email.js","/Users/sulthan/development/HO/hof/controller/validation-error.js","/Users/sulthan/development/HO/hof/utilities/index.js","/Users/sulthan/development/HO/hof/utilities/autofill/index.js","/Users/sulthan/development/HO/hof/utilities/autofill/inputs.js","/Users/sulthan/development/HO/hof/utilities/test-data/index.js","/Users/sulthan/development/HO/hof/utilities/countries.js","/Users/sulthan/development/HO/hof/utilities/helpers/index.js","/Users/sulthan/development/HO/hof/utilities/reqres/index.js","/Users/sulthan/development/HO/hof/config/sanitisation-rules.js","/Users/sulthan/development/HO/hof/controller/formatting/formatters.js","/Users/sulthan/development/HO/hof/controller/index.js","/Users/sulthan/development/HO/hof/controller/behaviour-session.js","/Users/sulthan/development/HO/hof/controller/behaviour-hooks.js","/Users/sulthan/development/HO/hof/controller/controller.js","/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/behaviours/country-select.js","/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/index.js","/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/template-mixins.js","/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/render.js","/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/helpers.js","/Users/sulthan/development/HO/hof/index.js","/Users/sulthan/development/HO/hof/frontend/index.js","/Users/sulthan/development/HO/hof/frontend/govuk-template/index.js","/Users/sulthan/development/HO/hof/frontend/govuk-template/build/index.js","/Users/sulthan/development/HO/hof/frontend/govuk-template/build/config.js","/Users/sulthan/development/HO/hof/frontend/template-partials/index.js","/Users/sulthan/development/HO/hof/frontend/template-partials/translations/index.js","/Users/sulthan/development/HO/hof/frontend/themes/index.js","/Users/sulthan/development/HO/hof/frontend/themes/gov-uk/index.js","/Users/sulthan/development/HO/hof/frontend/toolkit/index.js","/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/helpers.js","/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/form-focus.js","/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/progressive-reveal.js","/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/validation.js","/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/character-count.js","/Users/sulthan/development/HO/hof/middleware/index.js","/Users/sulthan/development/HO/hof/middleware/cookies.js","/Users/sulthan/development/HO/hof/middleware/errors.js","/Users/sulthan/development/HO/hof/middleware/not-found.js","/Users/sulthan/development/HO/hof/middleware/deep-translate.js","/Users/sulthan/development/HO/hof/lib/markdown.js","/Users/sulthan/development/HO/hof/lib/router.js","/Users/sulthan/development/HO/hof/wizard/index.js","/Users/sulthan/development/HO/hof/wizard/behaviours/index.js","/Users/sulthan/development/HO/hof/wizard/behaviours/complete.js","/Users/sulthan/development/HO/hof/wizard/util/constants.js","/Users/sulthan/development/HO/hof/lib/helpers.js","/Users/sulthan/development/HO/hof/lib/health.js","/Users/sulthan/development/HO/hof/lib/serve-static.js","/Users/sulthan/development/HO/hof/lib/ga-tag.js","/Users/sulthan/development/HO/hof/lib/sessions.js","/Users/sulthan/development/HO/hof/lib/settings.js","/Users/sulthan/development/HO/hof/lib/logger.js","/Users/sulthan/development/HO/hof/build/index.js","/Users/sulthan/development/HO/hof/config/builder-defaults.js","/Users/sulthan/development/HO/hof/transpiler/index.js","/Users/sulthan/development/HO/hof/transpiler/lib/compile.js","/Users/sulthan/development/HO/hof/transpiler/lib/build.js","/Users/sulthan/development/HO/hof/transpiler/lib/expand-dirs.js","/Users/sulthan/development/HO/hof/transpiler/lib/aggregate.js","/Users/sulthan/development/HO/hof/transpiler/lib/write-files.js","/Users/sulthan/development/HO/hof/model/apis/index.js","/Users/sulthan/development/HO/hof/model/apis/html-to-pdf-converter.js","/Users/sulthan/development/HO/hof/wizard/model.js","/Users/sulthan/development/HO/hof/wizard/middleware/back-links.js","/Users/sulthan/development/HO/hof/wizard/util/helpers.js","/Users/sulthan/development/HO/hof/wizard/middleware/check-complete.js","/Users/sulthan/development/HO/hof/wizard/middleware/check-progress.js","/Users/sulthan/development/HO/hof/wizard/middleware/check-session.js","/Users/sulthan/development/HO/hof/wizard/middleware/csrf.js","/Users/sulthan/development/HO/hof/sandbox/test/_unit/example_app/sections/summary-data-sections.spec.js","/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/sections/summary-data-sections.js","/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/lib/staticAppealStages.js","/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/fields.js","/Users/sulthan/development/HO/hof/sandbox/test/helpers/utilities.js","/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/behaviours/international-number.js","/Users/sulthan/development/HO/hof/lib/encryption.js","/Users/sulthan/development/HO/hof/wizard/middleware/session.js","/Users/sulthan/development/HO/hof/wizard/middleware/session-model.js"]}
@@ -1 +1 @@
1
- {"processes":{"b924df42-9cb6-4618-9a07-4f58f67ae28a":{"parent":null,"children":[]}},"files":{"/Users/chisomoguibe/Projects/hof/model/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/address-lookup/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/address-lookup/default-model.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/address-lookup/defaults.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/clear-session/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/combine-and-loop-fields/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/date/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/date/fields.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/email-service.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/emailer.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/transports/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/transports/smtp.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/transports/ses.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/transports/stub.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/emailer/transports/debug.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/homeoffice-countries/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/config/component-defaults.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/notify/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/notify/notify.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/components/summary/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/config/rate-limits.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/rate-limiter.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/config/hof-defaults.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/base-controller.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/formatting/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/validation/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/validation/validators.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/validation/email.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/validation-error.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/autofill/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/autofill/inputs.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/test-data/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/countries.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/helpers/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/utilities/reqres/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/config/sanitisation-rules.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/formatting/formatters.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/behaviour-session.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/behaviour-hooks.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/controller/controller.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/apps/sandbox/behaviours/country-select.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-mixins/mixins/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-mixins/mixins/template-mixins.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-mixins/mixins/render.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-mixins/mixins/helpers.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/govuk-template/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/govuk-template/build/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/govuk-template/build/config.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-partials/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/template-partials/translations/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/themes/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/themes/gov-uk/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/assets/javascript/helpers.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/assets/javascript/form-focus.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/assets/javascript/progressive-reveal.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/assets/javascript/validation.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/frontend/toolkit/assets/javascript/character-count.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/cookies.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/errors.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/not-found.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/middleware/deep-translate.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/markdown.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/router.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/behaviours/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/behaviours/complete.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/util/constants.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/helpers.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/health.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/serve-static.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/ga-tag.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/sessions.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/settings.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/logger.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/build/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/config/builder-defaults.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/lib/compile.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/lib/build.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/lib/expand-dirs.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/lib/aggregate.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/transpiler/lib/write-files.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/model/apis/index.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/model/apis/html-to-pdf-converter.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/model.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/back-links.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/util/helpers.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/check-complete.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/check-progress.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/check-session.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/csrf.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/test/_unit/example_app/sections/summary-data-sections.spec.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/apps/sandbox/sections/summary-data-sections.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/apps/sandbox/lib/staticAppealStages.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/apps/sandbox/fields.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/test/helpers/utilities.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/sandbox/apps/sandbox/behaviours/international-number.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/lib/encryption.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/session.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"],"/Users/chisomoguibe/Projects/hof/wizard/middleware/session-model.js":["b924df42-9cb6-4618-9a07-4f58f67ae28a"]},"externalIds":{}}
1
+ {"processes":{"594bd7df-0d9b-4e59-9b57-90c46c8350ec":{"parent":null,"children":[]}},"files":{"/Users/sulthan/development/HO/hof/model/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/address-lookup/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/address-lookup/default-model.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/address-lookup/defaults.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/clear-session/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/combine-and-loop-fields/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/date/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/date/fields.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/email-service.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/emailer.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/transports/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/transports/smtp.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/transports/ses.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/transports/stub.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/emailer/transports/debug.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/homeoffice-countries/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/config/component-defaults.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/notify/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/notify/notify.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/components/summary/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/config/rate-limits.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/rate-limiter.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/config/hof-defaults.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/base-controller.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/formatting/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/validation/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/validation/validators.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/validation/email.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/validation-error.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/autofill/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/autofill/inputs.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/test-data/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/countries.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/helpers/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/utilities/reqres/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/config/sanitisation-rules.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/formatting/formatters.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/behaviour-session.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/behaviour-hooks.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/controller/controller.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/behaviours/country-select.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/template-mixins.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/render.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-mixins/mixins/helpers.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/govuk-template/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/govuk-template/build/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/govuk-template/build/config.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-partials/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/template-partials/translations/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/themes/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/themes/gov-uk/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/helpers.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/form-focus.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/progressive-reveal.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/validation.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/frontend/toolkit/assets/javascript/character-count.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/cookies.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/errors.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/not-found.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/middleware/deep-translate.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/markdown.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/router.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/behaviours/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/behaviours/complete.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/util/constants.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/helpers.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/health.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/serve-static.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/ga-tag.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/sessions.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/settings.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/logger.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/build/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/config/builder-defaults.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/lib/compile.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/lib/build.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/lib/expand-dirs.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/lib/aggregate.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/transpiler/lib/write-files.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/model/apis/index.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/model/apis/html-to-pdf-converter.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/model.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/back-links.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/util/helpers.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/check-complete.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/check-progress.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/check-session.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/csrf.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/test/_unit/example_app/sections/summary-data-sections.spec.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/sections/summary-data-sections.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/lib/staticAppealStages.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/fields.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/test/helpers/utilities.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/sandbox/apps/sandbox/behaviours/international-number.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/lib/encryption.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/session.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"],"/Users/sulthan/development/HO/hof/wizard/middleware/session-model.js":["594bd7df-0d9b-4e59-9b57-90c46c8350ec"]},"externalIds":{}}
@@ -0,0 +1,6 @@
1
+ {
2
+ "search.exclude": {
3
+ "": true,
4
+ "**/node_modules": false
5
+ }
6
+ }
@@ -13,7 +13,7 @@
13
13
  <span class="govuk-visually-hidden">Error:</span> {{error.message}}
14
14
  </p>
15
15
  {{/error}}
16
- <div class="govuk-date-input">
16
+ <div id="{{key}}" class="govuk-date-input">
17
17
  {{#input-date}}{{key}}{{/input-date}}
18
18
  </div>
19
19
  </fieldset>
@@ -22,15 +22,20 @@ const defaults = {
22
22
  env: process.env.NODE_ENV || 'development',
23
23
  gaTagId: process.env.GA_TAG || 'Test-GA-Tag',
24
24
  ga4TagId: process.env.GA_4_TAG,
25
+ // added to allow support for multiple HOF forms using GTM to customize how they track page views
26
+ gtm: {
27
+ tagId: process.env.GTM_TAG || false,
28
+ config: {},
29
+ composePageName: function (page, convertPage) {
30
+ return convertPage(page);
31
+ }
32
+ },
25
33
  gaCrossDomainTrackingTagId: process.env.GDS_CROSS_DOMAIN_GA_TAG,
26
34
  loglevel: process.env.LOG_LEVEL || 'info',
27
35
  ignoreMiddlewareLogs: ['/healthz'],
28
36
  redis: {
29
- socket: {
30
- port: process.env.REDIS_PORT || '6379',
31
- host: process.env.REDIS_HOST || '127.0.0.1'
32
- },
33
- legacyMode: true
37
+ port: process.env.REDIS_PORT || '6379',
38
+ host: process.env.REDIS_HOST || '127.0.0.1'
34
39
  },
35
40
  session: {
36
41
  ttl: process.env.SESSION_TTL || 1800,
@@ -5,50 +5,48 @@
5
5
  <head>
6
6
  <meta charset="utf-8" />
7
7
  <title>{{ pageTitle }}</title>
8
+ {{{ head }}}
8
9
 
9
10
  <link rel="shortcut icon" sizes="16x16 32x32 48x48" href="{{assetPath}}images/favicon.ico" type="image/x-icon">
10
- <link rel="mask-icon" href="{{assetPath}}images/govuk-mask-icon.svg" color="#0b0c0c">
11
+ <link rel="mask-icon" href="{{assetPath}}images/govuk-mask-icon.svg" color="#0b0c0c">
11
12
  <link rel="apple-touch-icon" sizes="180x180" href="{{assetPath}}images/govuk-apple-touch-icon-180x180.png">
12
13
  <link rel="apple-touch-icon" sizes="167x167" href="{{assetPath}}images/govuk-apple-touch-icon-167x167.png">
13
14
  <link rel="apple-touch-icon" sizes="152x152" href="{{assetPath}}images/govuk-apple-touch-icon-152x152.png">
14
15
  <link rel="apple-touch-icon" href="{{assetPath}}images/govuk-apple-touch-icon.png">
15
-
16
-
16
+
17
+
17
18
  <meta name="theme-color" content="#0b0c0c" />
18
19
 
19
20
  <meta name="viewport" content="width=device-width, initial-scale=1">
20
21
 
21
- {{{ head }}}
22
-
23
-
22
+
24
23
  <meta property="og:image" content="{{assetPath}}images/opengraph-image.png">
25
24
  </head>
26
25
 
27
26
  <body class="{{ bodyClasses }} govuk-template__body js-enabled" >
28
27
  <script>document.body.className = ((document.body.className) ? document.body.className + ' js-enabled' : 'js-enabled');</script>
29
28
 
30
-
29
+
31
30
 
32
31
  <div id="global-cookie-message" class="gem-c-cookie-banner govuk-clearfix" data-module="cookie-banner" role="region" aria-label="cookie banner" data-nosnippet="">
33
32
  {{{ cookieMessage }}}
34
33
  </div>
35
-
36
- {{{ bodyStart }}}
37
-
34
+
35
+ {{{ bodyStart }}}
36
+
38
37
  <header role="banner" id="govuk-header" class="{{{ headerClass }}}">
39
38
  <div class="govuk-header__container govuk-width-container">
40
-
39
+
41
40
  <div class="govuk-header__logo">
42
41
  <a href="{{{ homepageUrl }}}" title="{{ logoLinkTitle }}" id="logo" class="govuk-header__link govuk-header__link--homepage" target="_blank" data-module="track-click" data-track-category="homeLinkClicked" data-track-action="homeHeader">
43
42
  <span class="govuk-header__logotype">
44
43
  <!--[if gt IE 8]><!-->
45
- <svg aria-hidden="true" focusable="false" class="govuk-header__logotype-crown" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 132 97" height="30" width="36">
46
- <path fill="currentColor" fill-rule="evenodd" d="M25 30.2c3.5 1.5 7.7-.2 9.1-3.7 1.5-3.6-.2-7.8-3.9-9.2-3.6-1.4-7.6.3-9.1 3.9-1.4 3.5.3 7.5 3.9 9zM9 39.5c3.6 1.5 7.8-.2 9.2-3.7 1.5-3.6-.2-7.8-3.9-9.1-3.6-1.5-7.6.2-9.1 3.8-1.4 3.5.3 7.5 3.8 9zM4.4 57.2c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.5-1.5-7.6.3-9.1 3.8-1.4 3.5.3 7.6 3.9 9.1zm38.3-21.4c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.6-1.5-7.6.3-9.1 3.8-1.3 3.6.4 7.7 3.9 9.1zm64.4-5.6c-3.6 1.5-7.8-.2-9.1-3.7-1.5-3.6.2-7.8 3.8-9.2 3.6-1.4 7.7.3 9.2 3.9 1.3 3.5-.4 7.5-3.9 9zm15.9 9.3c-3.6 1.5-7.7-.2-9.1-3.7-1.5-3.6.2-7.8 3.7-9.1 3.6-1.5 7.7.2 9.2 3.8 1.5 3.5-.3 7.5-3.8 9zm4.7 17.7c-3.6 1.5-7.8-.2-9.2-3.8-1.5-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.3 3.5-.4 7.6-3.9 9.1zM89.3 35.8c-3.6 1.5-7.8-.2-9.2-3.8-1.4-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.4 3.6-.3 7.7-3.9 9.1zM69.7 17.7l8.9 4.7V9.3l-8.9 2.8c-.2-.3-.5-.6-.9-.9L72.4 0H59.6l3.5 11.2c-.3.3-.6.5-.9.9l-8.8-2.8v13.1l8.8-4.7c.3.3.6.7.9.9l-5 15.4v.1c-.2.8-.4 1.6-.4 2.4 0 4.1 3.1 7.5 7 8.1h.2c.3 0 .7.1 1 .1.4 0 .7 0 1-.1h.2c4-.6 7.1-4.1 7.1-8.1 0-.8-.1-1.7-.4-2.4V34l-5.1-15.4c.4-.2.7-.6 1-.9zM66 92.8c16.9 0 32.8 1.1 47.1 3.2 4-16.9 8.9-26.7 14-33.5l-9.6-3.4c1 4.9 1.1 7.2 0 10.2-1.5-1.4-3-4.3-4.2-8.7L108.6 76c2.8-2 5-3.2 7.5-3.3-4.4 9.4-10 11.9-13.6 11.2-4.3-.8-6.3-4.6-5.6-7.9 1-4.7 5.7-5.9 8-.5 4.3-8.7-3-11.4-7.6-8.8 7.1-7.2 7.9-13.5 2.1-21.1-8 6.1-8.1 12.3-4.5 20.8-4.7-5.4-12.1-2.5-9.5 6.2 3.4-5.2 7.9-2 7.2 3.1-.6 4.3-6.4 7.8-13.5 7.2-10.3-.9-10.9-8-11.2-13.8 2.5-.5 7.1 1.8 11 7.3L80.2 60c-4.1 4.4-8 5.3-12.3 5.4 1.4-4.4 8-11.6 8-11.6H55.5s6.4 7.2 7.9 11.6c-4.2-.1-8-1-12.3-5.4l1.4 16.4c3.9-5.5 8.5-7.7 10.9-7.3-.3 5.8-.9 12.8-11.1 13.8-7.2.6-12.9-2.9-13.5-7.2-.7-5 3.8-8.3 7.1-3.1 2.7-8.7-4.6-11.6-9.4-6.2 3.7-8.5 3.6-14.7-4.6-20.8-5.8 7.6-5 13.9 2.2 21.1-4.7-2.6-11.9.1-7.7 8.8 2.3-5.5 7.1-4.2 8.1.5.7 3.3-1.3 7.1-5.7 7.9-3.5.7-9-1.8-13.5-11.2 2.5.1 4.7 1.3 7.5 3.3l-4.7-15.4c-1.2 4.4-2.7 7.2-4.3 8.7-1.1-3-.9-5.3 0-10.2l-9.5 3.4c5 6.9 9.9 16.7 14 33.5 14.8-2.1 30.8-3.2 47.7-3.2z"></path>
44
+ <svg aria-hidden="true" focusable="false" class="govuk-header__logotype-crown" xmlns="http://www.w3.org/2000/svg\" viewBox="0 0 32 30" height="30" width="32">
45
+ <path fill="currentColor" fill-rule="evenodd" d="M22.6 10.4c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4m-5.9 6.7c-.9.4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4m10.8-3.7c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s0 2-1 2.4m3.3 4.8c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4M17 4.7l2.3 1.2V2.5l-2.3.7-.2-.2.9-3h-3.4l.9 3-.2.2c-.1.1-2.3-.7-2.3-.7v3.4L15 4.7c.1.1.1.2.2.2l-1.3 4c-.1.2-.1.4-.1.6 0 1.1.8 2 1.9 2.2h.7c1-.2 1.9-1.1 1.9-2.1 0-.2 0-.4-.1-.6l-1.3-4c-.1-.2 0-.2.1-.3m-7.6 5.7c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s0 2 1 2.4m-5 3c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s.1 2 1 2.4m-3.2 4.8c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s0 2 1 2.4m14.8 11c4.4 0 8.6.3 12.3.8 1.1-4.5 2.4-7 3.7-8.8l-2.5-.9c.2 1.3.3 1.9 0 2.7-.4-.4-.8-1.1-1.1-2.3l-1.2 4c.7-.5 1.3-.8 2-.9-1.1 2.5-2.6 3.1-3.5 3-1.1-.2-1.7-1.2-1.5-2.1.3-1.2 1.5-1.5 2.1-.1 1.1-2.3-.8-3-2-2.3 1.9-1.9 2.1-3.5.6-5.6-2.1 1.6-2.1 3.2-1.2 5.5-1.2-1.4-3.2-.6-2.5 1.6.9-1.4 2.1-.5 1.9.8-.2 1.1-1.7 2.1-3.5 1.9-2.7-.2-2.9-2.1-2.9-3.6.7-.1 1.9.5 2.9 1.9l.4-4.3c-1.1 1.1-2.1 1.4-3.2 1.4.4-1.2 2.1-3 2.1-3h-5.4s1.7 1.9 2.1 3c-1.1 0-2.1-.2-3.2-1.4l.4 4.3c1-1.4 2.2-2 2.9-1.9-.1 1.5-.2 3.4-2.9 3.6-1.9.2-3.4-.8-3.5-1.9-.2-1.3 1-2.2 1.9-.8.7-2.3-1.2-3-2.5-1.6.9-2.2.9-3.9-1.2-5.5-1.5 2-1.3 3.7.6 5.6-1.2-.7-3.1 0-2 2.3.6-1.4 1.8-1.1 2.1.1.2.9-.3 1.9-1.5 2.1-.9.2-2.4-.5-3.5-3 .6 0 1.2.3 2 .9l-1.2-4c-.3 1.1-.7 1.9-1.1 2.3-.3-.8-.2-1.4 0-2.7l-2.9.9C1.3 23 2.6 25.5 3.7 30c3.7-.5 7.9-.8 12.3-.8\"></path>
47
46
  </svg>
48
47
  <!--<![endif]-->
49
- <!--<![endif]-->
50
48
  <!--[if IE 8]>
51
- <img src="{{ assetPath }}images/govuk-logotype-crown.png" class="govuk-header__logotype-crown-fallback-image" width="36" height="32">
49
+ <img src="{{ assetPath }}images/govuk-logotype-tudor-crown.png" class="govuk-header__logotype-crown-fallback-image" width="32" height="30" alt="">
52
50
  <![endif]-->
53
51
  </span>
54
52
  <span class="govuk-header__logotype-text">
@@ -57,11 +55,11 @@
57
55
  </a>
58
56
  </div>
59
57
  {{{ insideHeader }}}
60
-
58
+
61
59
  {{{ propositionHeader }}}
62
60
  </div>
63
61
  </header>
64
-
62
+
65
63
 
66
64
  {{{ afterHeader }}}
67
65
 
@@ -81,7 +79,7 @@
81
79
  <svg aria-hidden="true" focusable="false" class="govuk-footer__licence-logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 483.2 195.7" height="17" width="41">
82
80
  <path fill="currentColor" d="M421.5 142.8V.1l-50.7 32.3v161.1h112.4v-50.7zm-122.3-9.6A47.12 47.12 0 0 1 221 97.8c0-26 21.1-47.1 47.1-47.1 16.7 0 31.4 8.7 39.7 21.8l42.7-27.2A97.63 97.63 0 0 0 268.1 0c-36.5 0-68.3 20.1-85.1 49.7A98 98 0 0 0 97.8 0C43.9 0 0 43.9 0 97.8s43.9 97.8 97.8 97.8c36.5 0 68.3-20.1 85.1-49.7a97.76 97.76 0 0 0 149.6 25.4l19.4 22.2h3v-87.8h-80l24.3 27.5zM97.8 145c-26 0-47.1-21.1-47.1-47.1s21.1-47.1 47.1-47.1 47.2 21 47.2 47S123.8 145 97.8 145"></path>
83
81
  </svg>
84
-
82
+
85
83
  <span class="govuk-footer__licence-description">{{{ licenceMessage }}}</span>
86
84
  </div>
87
85
 
@@ -93,12 +91,12 @@
93
91
  </footer>
94
92
 
95
93
  <div id="global-app-error" class="app-error hidden"></div>
96
-
94
+
97
95
 
98
96
  {{{ bodyEnd }}}
99
-
100
-
97
+
98
+
101
99
  <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>if (typeof window.GOVUK === 'undefined') document.body.className = document.body.className.replace('js-enabled', '');</script>
102
-
100
+
103
101
  </body>
104
102
  </html>
@@ -5,51 +5,49 @@
5
5
  <head>
6
6
  <meta charset="utf-8" />
7
7
  <title>{{$pageTitle}}{{/pageTitle}}</title>
8
+ {{$head}}{{/head}}
8
9
 
9
10
  <link rel="shortcut icon" sizes="16x16 32x32 48x48" href="{{govukAssetPath}}images/favicon.ico" type="image/x-icon">
10
- <link rel="mask-icon" href="{{govukAssetPath}}images/govuk-mask-icon.svg" color="#0b0c0c">
11
+ <link rel="mask-icon" href="{{govukAssetPath}}images/govuk-mask-icon.svg" color="#0b0c0c">
11
12
  <link rel="apple-touch-icon" sizes="180x180" href="{{govukAssetPath}}images/govuk-apple-touch-icon-180x180.png">
12
13
  <link rel="apple-touch-icon" sizes="167x167" href="{{govukAssetPath}}images/govuk-apple-touch-icon-167x167.png">
13
14
  <link rel="apple-touch-icon" sizes="152x152" href="{{govukAssetPath}}images/govuk-apple-touch-icon-152x152.png">
14
15
  <link rel="apple-touch-icon" href="{{govukAssetPath}}images/govuk-apple-touch-icon.png">
15
-
16
-
16
+
17
+
17
18
  <meta name="theme-color" content="#0b0c0c" />
18
19
 
19
20
  <meta name="viewport" content="width=device-width, initial-scale=1">
20
21
 
21
- {{$head}}{{/head}}
22
-
23
-
22
+
24
23
  <meta property="og:image" content="{{govukAssetPath}}images/opengraph-image.png">
25
24
  </head>
26
25
 
27
26
  <body class="{{$bodyClasses}}{{/bodyClasses}} govuk-template__body js-enabled" >
28
27
  <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>document.body.className = ((document.body.className) ? document.body.className + ' js-enabled' : 'js-enabled');</script>
29
28
 
30
-
29
+
31
30
 
32
31
  <div id="global-cookie-message" class="gem-c-cookie-banner govuk-clearfix" data-module="cookie-banner" role="region" aria-label="cookie banner" data-nosnippet="">
33
32
  {{$cookieMessage}}{{/cookieMessage}}
34
33
  </div>
35
-
36
- {{$bodyStart}}{{/bodyStart}}
37
-
34
+
35
+ {{$bodyStart}}{{/bodyStart}}
36
+
38
37
  <header role="banner" id="govuk-header" class="{{$headerClass}}{{/headerClass}}">
39
38
  <div class="govuk-header__container govuk-width-container">
40
-
39
+
41
40
  <div class="govuk-header__logo">
42
41
  <a href="{{$homepageUrl}}https://www.gov.uk{{/homepageUrl}}" title="{{$logoLinkTitle}}Go to the GOV.UK homepage{{/logoLinkTitle}}" id="logo" class="govuk-header__link govuk-header__link--homepage" target="_blank" data-module="track-click" data-track-category="homeLinkClicked" data-track-action="homeHeader">
43
42
  <span class="govuk-header__logotype">
44
43
  <!--[if gt IE 8]><!-->
45
- <svg aria-hidden="true" focusable="false" class="govuk-header__logotype-crown" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 132 97" height="30" width="36">
46
- <path fill="currentColor" fill-rule="evenodd" d="M25 30.2c3.5 1.5 7.7-.2 9.1-3.7 1.5-3.6-.2-7.8-3.9-9.2-3.6-1.4-7.6.3-9.1 3.9-1.4 3.5.3 7.5 3.9 9zM9 39.5c3.6 1.5 7.8-.2 9.2-3.7 1.5-3.6-.2-7.8-3.9-9.1-3.6-1.5-7.6.2-9.1 3.8-1.4 3.5.3 7.5 3.8 9zM4.4 57.2c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.5-1.5-7.6.3-9.1 3.8-1.4 3.5.3 7.6 3.9 9.1zm38.3-21.4c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.6-1.5-7.6.3-9.1 3.8-1.3 3.6.4 7.7 3.9 9.1zm64.4-5.6c-3.6 1.5-7.8-.2-9.1-3.7-1.5-3.6.2-7.8 3.8-9.2 3.6-1.4 7.7.3 9.2 3.9 1.3 3.5-.4 7.5-3.9 9zm15.9 9.3c-3.6 1.5-7.7-.2-9.1-3.7-1.5-3.6.2-7.8 3.7-9.1 3.6-1.5 7.7.2 9.2 3.8 1.5 3.5-.3 7.5-3.8 9zm4.7 17.7c-3.6 1.5-7.8-.2-9.2-3.8-1.5-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.3 3.5-.4 7.6-3.9 9.1zM89.3 35.8c-3.6 1.5-7.8-.2-9.2-3.8-1.4-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.4 3.6-.3 7.7-3.9 9.1zM69.7 17.7l8.9 4.7V9.3l-8.9 2.8c-.2-.3-.5-.6-.9-.9L72.4 0H59.6l3.5 11.2c-.3.3-.6.5-.9.9l-8.8-2.8v13.1l8.8-4.7c.3.3.6.7.9.9l-5 15.4v.1c-.2.8-.4 1.6-.4 2.4 0 4.1 3.1 7.5 7 8.1h.2c.3 0 .7.1 1 .1.4 0 .7 0 1-.1h.2c4-.6 7.1-4.1 7.1-8.1 0-.8-.1-1.7-.4-2.4V34l-5.1-15.4c.4-.2.7-.6 1-.9zM66 92.8c16.9 0 32.8 1.1 47.1 3.2 4-16.9 8.9-26.7 14-33.5l-9.6-3.4c1 4.9 1.1 7.2 0 10.2-1.5-1.4-3-4.3-4.2-8.7L108.6 76c2.8-2 5-3.2 7.5-3.3-4.4 9.4-10 11.9-13.6 11.2-4.3-.8-6.3-4.6-5.6-7.9 1-4.7 5.7-5.9 8-.5 4.3-8.7-3-11.4-7.6-8.8 7.1-7.2 7.9-13.5 2.1-21.1-8 6.1-8.1 12.3-4.5 20.8-4.7-5.4-12.1-2.5-9.5 6.2 3.4-5.2 7.9-2 7.2 3.1-.6 4.3-6.4 7.8-13.5 7.2-10.3-.9-10.9-8-11.2-13.8 2.5-.5 7.1 1.8 11 7.3L80.2 60c-4.1 4.4-8 5.3-12.3 5.4 1.4-4.4 8-11.6 8-11.6H55.5s6.4 7.2 7.9 11.6c-4.2-.1-8-1-12.3-5.4l1.4 16.4c3.9-5.5 8.5-7.7 10.9-7.3-.3 5.8-.9 12.8-11.1 13.8-7.2.6-12.9-2.9-13.5-7.2-.7-5 3.8-8.3 7.1-3.1 2.7-8.7-4.6-11.6-9.4-6.2 3.7-8.5 3.6-14.7-4.6-20.8-5.8 7.6-5 13.9 2.2 21.1-4.7-2.6-11.9.1-7.7 8.8 2.3-5.5 7.1-4.2 8.1.5.7 3.3-1.3 7.1-5.7 7.9-3.5.7-9-1.8-13.5-11.2 2.5.1 4.7 1.3 7.5 3.3l-4.7-15.4c-1.2 4.4-2.7 7.2-4.3 8.7-1.1-3-.9-5.3 0-10.2l-9.5 3.4c5 6.9 9.9 16.7 14 33.5 14.8-2.1 30.8-3.2 47.7-3.2z"></path>
44
+ <svg aria-hidden="true" focusable="false" class="govuk-header__logotype-crown" xmlns="http://www.w3.org/2000/svg\" viewBox="0 0 32 30" height="30" width="32">
45
+ <path fill="currentColor" fill-rule="evenodd" d="M22.6 10.4c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4m-5.9 6.7c-.9.4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4m10.8-3.7c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s0 2-1 2.4m3.3 4.8c-1 .4-2-.1-2.4-1-.4-.9.1-2 1-2.4.9-.4 2 .1 2.4 1s-.1 2-1 2.4M17 4.7l2.3 1.2V2.5l-2.3.7-.2-.2.9-3h-3.4l.9 3-.2.2c-.1.1-2.3-.7-2.3-.7v3.4L15 4.7c.1.1.1.2.2.2l-1.3 4c-.1.2-.1.4-.1.6 0 1.1.8 2 1.9 2.2h.7c1-.2 1.9-1.1 1.9-2.1 0-.2 0-.4-.1-.6l-1.3-4c-.1-.2 0-.2.1-.3m-7.6 5.7c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s0 2 1 2.4m-5 3c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s.1 2 1 2.4m-3.2 4.8c.9.4 2-.1 2.4-1 .4-.9-.1-2-1-2.4-.9-.4-2 .1-2.4 1s0 2 1 2.4m14.8 11c4.4 0 8.6.3 12.3.8 1.1-4.5 2.4-7 3.7-8.8l-2.5-.9c.2 1.3.3 1.9 0 2.7-.4-.4-.8-1.1-1.1-2.3l-1.2 4c.7-.5 1.3-.8 2-.9-1.1 2.5-2.6 3.1-3.5 3-1.1-.2-1.7-1.2-1.5-2.1.3-1.2 1.5-1.5 2.1-.1 1.1-2.3-.8-3-2-2.3 1.9-1.9 2.1-3.5.6-5.6-2.1 1.6-2.1 3.2-1.2 5.5-1.2-1.4-3.2-.6-2.5 1.6.9-1.4 2.1-.5 1.9.8-.2 1.1-1.7 2.1-3.5 1.9-2.7-.2-2.9-2.1-2.9-3.6.7-.1 1.9.5 2.9 1.9l.4-4.3c-1.1 1.1-2.1 1.4-3.2 1.4.4-1.2 2.1-3 2.1-3h-5.4s1.7 1.9 2.1 3c-1.1 0-2.1-.2-3.2-1.4l.4 4.3c1-1.4 2.2-2 2.9-1.9-.1 1.5-.2 3.4-2.9 3.6-1.9.2-3.4-.8-3.5-1.9-.2-1.3 1-2.2 1.9-.8.7-2.3-1.2-3-2.5-1.6.9-2.2.9-3.9-1.2-5.5-1.5 2-1.3 3.7.6 5.6-1.2-.7-3.1 0-2 2.3.6-1.4 1.8-1.1 2.1.1.2.9-.3 1.9-1.5 2.1-.9.2-2.4-.5-3.5-3 .6 0 1.2.3 2 .9l-1.2-4c-.3 1.1-.7 1.9-1.1 2.3-.3-.8-.2-1.4 0-2.7l-2.9.9C1.3 23 2.6 25.5 3.7 30c3.7-.5 7.9-.8 12.3-.8\"></path>
47
46
  </svg>
48
47
  <!--<![endif]-->
49
- <!--<![endif]-->
50
48
  <!--[if IE 8]>
51
- <img src="{{govukAssetPath}}images/govuk-logotype-crown.png" class="govuk-header__logotype-crown-fallback-image" width="36" height="32">
52
- <![endif]-->
49
+ <img src="{{govukAssetPath}}images/govuk-logotype-tudor-crown.png" class="govuk-header__logotype-crown-fallback-image" width="32" height="30" alt="">
50
+ <![endif]-->
53
51
  </span>
54
52
  <span class="govuk-header__logotype-text">
55
53
  {{$globalHeaderText}}GOV.UK{{/globalHeaderText}}
@@ -57,11 +55,11 @@
57
55
  </a>
58
56
  </div>
59
57
  {{$insideHeader}}{{/insideHeader}}
60
-
58
+
61
59
  {{$propositionHeader}}{{/propositionHeader}}
62
60
  </div>
63
61
  </header>
64
-
62
+
65
63
 
66
64
  {{$afterHeader}}{{/afterHeader}}
67
65
 
@@ -81,7 +79,7 @@
81
79
  <svg aria-hidden="true" focusable="false" class="govuk-footer__licence-logo" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 483.2 195.7" height="17" width="41">
82
80
  <path fill="currentColor" d="M421.5 142.8V.1l-50.7 32.3v161.1h112.4v-50.7zm-122.3-9.6A47.12 47.12 0 0 1 221 97.8c0-26 21.1-47.1 47.1-47.1 16.7 0 31.4 8.7 39.7 21.8l42.7-27.2A97.63 97.63 0 0 0 268.1 0c-36.5 0-68.3 20.1-85.1 49.7A98 98 0 0 0 97.8 0C43.9 0 0 43.9 0 97.8s43.9 97.8 97.8 97.8c36.5 0 68.3-20.1 85.1-49.7a97.76 97.76 0 0 0 149.6 25.4l19.4 22.2h3v-87.8h-80l24.3 27.5zM97.8 145c-26 0-47.1-21.1-47.1-47.1s21.1-47.1 47.1-47.1 47.2 21 47.2 47S123.8 145 97.8 145"></path>
83
81
  </svg>
84
-
82
+
85
83
  <span class="govuk-footer__licence-description">{{$licenceMessage}}All content is available under the <a href="https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/" id="open-government-licence" class="govuk-footer__link" target="_blank" rel="license">Open Government Licence v3.0</a>, except where otherwise stated{{/licenceMessage}}</span>
86
84
  </div>
87
85
 
@@ -93,12 +91,12 @@
93
91
  </footer>
94
92
 
95
93
  <div id="global-app-error" class="app-error hidden"></div>
96
-
94
+
97
95
 
98
96
  {{$bodyEnd}}{{/bodyEnd}}
99
-
100
-
97
+
98
+
101
99
  <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>if (typeof window.GOVUK === 'undefined') document.body.className = document.body.className.replace('js-enabled', '');</script>
102
-
100
+
103
101
  </body>
104
102
  </html>
@@ -29,7 +29,7 @@
29
29
  type="{{type}}"
30
30
  name="{{key}}"
31
31
  id="{{key}}-{{value}}"
32
- value="{{value}}"
32
+ value="{{value}}"
33
33
  {{#toggle}} data-toggle="{{toggle}}"{{/toggle}}
34
34
  {{#selected}} checked="checked"{{/selected}}
35
35
  {{^error}}{{#optionHint}} aria-describedby="{{key}}-{{value}}-hint"{{/optionHint}}{{^optionHint}}{{#hint}} aria-describedby="{{key}}-hint"{{/hint}}{{/optionHint}}{{/error}}
@@ -28,7 +28,7 @@
28
28
  value="{{value}}"
29
29
  {{#toggle}} data-toggle="{{toggle}}"{{/toggle}}
30
30
  {{#selected}} checked="checked"{{/selected}}
31
- {{^error}}{{#optionHint}} aria-describedby="{{key}}-{{value}}-item-hint"{{/optionHint}}{{^optionHint}}{{#hint}} aria-describedby="{{key}}-item-hint"{{/hint}}{{/optionHint}}{{/error}}
31
+ {{^error}}{{#optionHint}} aria-describedby="{{key}}-{{value}}-item-hint"{{/optionHint}}{{^optionHint}}{{#hint}} aria-describedby="{{key}}-hint"{{/hint}}{{/optionHint}}{{/error}}
32
32
  {{#error}} aria-describedby="{{key}}-error" aria-invalid="true"{{/error}}
33
33
  >
34
34
  <label class="govuk-label govuk-radios__label" for="{{key}}-{{value}}">
@@ -17,7 +17,9 @@
17
17
  {{#renderChild}}{{/renderChild}}
18
18
  <textarea name="{{id}}" id="{{id}}"
19
19
  class="govuk-textarea {{#isMaxlengthOrMaxword}}govuk-js-character-count{{/isMaxlengthOrMaxword}} {{#className}}{{className}}{{/className}} {{#error}}govuk-input--error{{/error}}"
20
- aria-describedby="{{id}}-info"
20
+ {{#isMaxlengthOrMaxword}}
21
+ aria-describedby="{{id}}-hint {{id}}-info"
22
+ {{/isMaxlengthOrMaxword}}
21
23
  {{#attributes}}
22
24
  {{attribute}}="{{value}}"
23
25
  {{/attributes}}
@@ -19,7 +19,7 @@
19
19
  <span class="govuk-phase-banner__text">This is a new service – your <a href="{{feedbackUrl}}{{^feedbackUrl}}https://eforms.homeoffice.gov.uk/outreach/feedback.ofml{{/feedbackUrl}}" class="govuk-link" id="feedback-link" target="_blank">feedback</a> will help us to improve it.</span>
20
20
  </p>
21
21
  </div>
22
- {{/feedbackUrl}}
22
+ {{/feedbackUrl}}
23
23
  <span id="step">
24
24
  {{> partials-back}} <span>{{$step}}{{/step}}</span>
25
25
  </span>
@@ -10,9 +10,9 @@
10
10
  </div>
11
11
  </div>
12
12
  </div>
13
- <div id="cookie-banner-actions" class="govuk-button-group">
13
+ <div id="cookie-banner-actions" class="govuk-button-group">
14
14
  <button id="accept-cookies-button" class="gem-c-button govuk-button" type="submit" data-module="gem-track-click" data-accept-cookies="true" data-track-category="cookieBanner" data-track-action="Cookie banner accepted" data-cookie-types="all">Accept additional cookies</button>
15
-
15
+
16
16
  <button id="reject-cookies-button" class="gem-c-button govuk-button" type="submit" data-module="gem-track-click" data-reject-cookies="true" data-track-category="cookieBanner" data-track-action="Cookie banner rejected">Reject additional cookies</button>
17
17
 
18
18
  <a class="govuk-link" href="/cookies">View cookies</a>
@@ -34,7 +34,6 @@
34
34
  ga('govuk_shared.send', 'pageview')
35
35
  {{/gaCrossDomainTrackingTagId}}
36
36
  }
37
-
38
37
  </script>
39
38
  {{/gaTagId}}
40
39
 
@@ -1,2 +1,25 @@
1
+ {{#gtmTagId}}
2
+ {{#cookiesAccepted}}
3
+ <!-- Google Tag Manager Data Layer -->
4
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>
5
+ var dataLayer = window.dataLayer || [];
6
+ dataLayer.push(
7
+ {{{gtmConfig}}}
8
+ );
9
+ </script>
10
+ <!-- End Google Tag Manager Data Layer -->
11
+
12
+ <!-- Google Tag Manager -->
13
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>
14
+ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
15
+ new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
16
+ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
17
+ 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
18
+ })(window,document,'script','dataLayer','{{gtmTagId}}');
19
+ </script>
20
+ <!-- End Google Tag Manager -->
21
+ {{/cookiesAccepted}}
22
+ {{/gtmTagId}}
23
+
1
24
  <meta name="format-detection" content="telephone=no">
2
25
  <link rel="stylesheet" href="{{assetPath}}/css/app.css">
package/lib/ga-tag.js CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  const _ = require('lodash');
4
4
 
5
+ const convertToGTMPage = text => {
6
+ // Remove leading and trailing slashes
7
+ let str = text.replace(/^\/|\/$/g, '');
8
+ // Replace hyphens with spaces and capitalize each word
9
+ str = str.replace(/-+/g, ' ').replace(/(^|\s)\S/g, function (match) {
10
+ return match.toUpperCase();
11
+ });
12
+ return str;
13
+ };
14
+
5
15
  const pageView = (path, pageMap) => pageMap.get(path) || path;
6
16
 
7
17
  const createUris = routes => {
@@ -42,19 +52,35 @@ const setupPageMap = routes => {
42
52
  module.exports = (app, config) => {
43
53
  const gaTagId = config.gaTagId;
44
54
  const ga4TagId = config.ga4TagId;
55
+ const gtm = config.gtm;
45
56
  const gaCrossDomainTrackingTagId = config.gaCrossDomainTrackingTagId;
46
57
  const routes = config.routes;
47
58
 
48
- if (gaTagId || ga4TagId) {
59
+ if (gaTagId || ga4TagId || gtm.tagId) {
49
60
  const pageMap = setupPageMap(routes);
50
61
 
51
62
  app.use((req, res, next) => {
52
- res.locals.gaAllowDebug = config.env === 'development';
53
- res.locals.gaTagId = gaTagId;
54
- res.locals.ga4TagId = ga4TagId;
55
- res.locals.gaCrossDomainTrackingTagId = gaCrossDomainTrackingTagId;
56
- res.locals['ga-id'] = gaTagId;
57
- res.locals['ga-page'] = pageView(req.path, pageMap);
63
+ const page = pageView(req.path, pageMap);
64
+
65
+ // Preparing common res.locals properties
66
+ const properties = {
67
+ gaAllowDebug: config.env === 'development',
68
+ gaTagId: gaTagId,
69
+ ga4TagId: ga4TagId,
70
+ gaCrossDomainTrackingTagId: gaCrossDomainTrackingTagId,
71
+ 'ga-id': gaTagId,
72
+ 'ga-page': page
73
+ };
74
+
75
+ // Adding extra properties if a GTM TAG is available
76
+ if (gtm.tagId) {
77
+ gtm.config.pageName = gtm.composePageName(page, convertToGTMPage);
78
+ Object.assign(properties, {
79
+ gtmConfig: JSON.stringify(gtm.config),
80
+ gtmTagId: gtm.tagId
81
+ });
82
+ }
83
+ res.locals = Object.assign(res.locals, properties);
58
84
  next();
59
85
  });
60
86
  }
package/lib/health.js CHANGED
@@ -15,7 +15,7 @@ module.exports = redis => {
15
15
 
16
16
  router.get('/readiness', healthCheck({
17
17
  test: () => {
18
- if (!redis.isOpen && !redis.isReady) {
18
+ if (!redis.connected && !redis.ready) {
19
19
  return new Error('Session store unhealthy');
20
20
  }
21
21
  return 0;
package/lib/sessions.js CHANGED
@@ -51,8 +51,6 @@ module.exports = (app, config) => {
51
51
  });
52
52
  }
53
53
 
54
- client.connect();
55
-
56
54
  const store = new RedisStore({
57
55
  client: client,
58
56
  ttl: config.session.ttl,
@@ -22,6 +22,8 @@ module.exports = options => {
22
22
  const reqIsCookieCheckRedirect = req.query[paramName] !== undefined;
23
23
 
24
24
  if (reqIncludesCookies || isHealthcheckUrl(req.path, healthcheckUrls)) {
25
+ const prefs = 'cookie_preferences' in req.cookies ? JSON.parse(req.cookies.cookie_preferences) : {};
26
+ res.locals.cookiesAccepted = Boolean(prefs.usage);
25
27
  next();
26
28
  } else if (req.cookies === undefined || (!Object.keys(req.cookies).length && reqIsCookieCheckRedirect)) {
27
29
  const err = new Error('Cookies required');