hof 20.3.11 → 20.4.0-minimatch-vulnerability-beta

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/4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5.json +1 -0
  2. package/.nyc_output/processinfo/4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/components/date/templates/date.html +1 -1
  5. package/config/hof-defaults.js +3 -5
  6. package/frontend/govuk-template/build/govuk_template.html +17 -18
  7. package/frontend/template-mixins/partials/forms/checkbox-group.html +1 -1
  8. package/frontend/template-mixins/partials/forms/option-group.html +1 -1
  9. package/frontend/template-mixins/partials/forms/textarea-group.html +3 -1
  10. package/frontend/template-partials/views/layout.html +1 -1
  11. package/frontend/template-partials/views/partials/cookie-banner.html +2 -2
  12. package/frontend/template-partials/views/partials/gatag.html +0 -1
  13. package/frontend/template-partials/views/partials/head.html +28 -0
  14. package/lib/ga-tag.js +18 -1
  15. package/lib/health.js +1 -1
  16. package/lib/sessions.js +0 -2
  17. package/middleware/cookies.js +2 -0
  18. package/middleware/rate-limiter.js +1 -3
  19. package/package.json +7 -6
  20. package/sandbox/apps/sandbox/fields.js +0 -6
  21. package/sandbox/apps/sandbox/translations/en/default.json +30 -26
  22. package/sandbox/apps/sandbox/translations/src/en/fields.json +5 -5
  23. package/sandbox/apps/sandbox/translations/src/en/pages.json +1 -1
  24. package/sandbox/config.js +1 -2
  25. package/sandbox/public/css/app.css +10 -6604
  26. package/sandbox/public/js/bundle.js +24 -2800
  27. package/sandbox/server.js +1 -4
  28. package/sandbox/yarn.lock +3 -3
  29. package/.nyc_output/b924df42-9cb6-4618-9a07-4f58f67ae28a.json +0 -1
  30. package/.nyc_output/processinfo/b924df42-9cb6-4618-9a07-4f58f67ae28a.json +0 -1
  31. package/frontend/govuk-template/govuk_template_generated.html +0 -104
  32. package/sandbox/dump.rdb +0 -0
@@ -0,0 +1 @@
1
+ {"parent":null,"pid":28672,"argv":["/Users/robertmccann/.nvm/versions/node/v14.15.0/bin/node","/Users/robertmccann/Projects/hof/node_modules/.bin/_mocha","test/**/*.spec.js","sandbox/test/**/*.spec.js"],"execArgv":[],"cwd":"/Users/robertmccann/Projects/hof","time":1686146117418,"ppid":28670,"coverageFilename":"/Users/robertmccann/Projects/hof/.nyc_output/4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5.json","externalId":"","uuid":"4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5","files":["/Users/robertmccann/Projects/hof/model/index.js","/Users/robertmccann/Projects/hof/components/index.js","/Users/robertmccann/Projects/hof/components/address-lookup/index.js","/Users/robertmccann/Projects/hof/components/address-lookup/default-model.js","/Users/robertmccann/Projects/hof/components/address-lookup/defaults.js","/Users/robertmccann/Projects/hof/components/clear-session/index.js","/Users/robertmccann/Projects/hof/components/combine-and-loop-fields/index.js","/Users/robertmccann/Projects/hof/components/date/index.js","/Users/robertmccann/Projects/hof/components/date/fields.js","/Users/robertmccann/Projects/hof/components/emailer/index.js","/Users/robertmccann/Projects/hof/components/emailer/email-service.js","/Users/robertmccann/Projects/hof/components/emailer/emailer.js","/Users/robertmccann/Projects/hof/components/emailer/transports/index.js","/Users/robertmccann/Projects/hof/components/emailer/transports/smtp.js","/Users/robertmccann/Projects/hof/components/emailer/transports/ses.js","/Users/robertmccann/Projects/hof/components/emailer/transports/stub.js","/Users/robertmccann/Projects/hof/components/emailer/transports/debug.js","/Users/robertmccann/Projects/hof/components/homeoffice-countries/index.js","/Users/robertmccann/Projects/hof/config/component-defaults.js","/Users/robertmccann/Projects/hof/components/notify/index.js","/Users/robertmccann/Projects/hof/components/notify/notify.js","/Users/robertmccann/Projects/hof/components/summary/index.js","/Users/robertmccann/Projects/hof/config/rate-limits.js","/Users/robertmccann/Projects/hof/middleware/rate-limiter.js","/Users/robertmccann/Projects/hof/config/hof-defaults.js","/Users/robertmccann/Projects/hof/controller/base-controller.js","/Users/robertmccann/Projects/hof/controller/formatting/index.js","/Users/robertmccann/Projects/hof/controller/validation/index.js","/Users/robertmccann/Projects/hof/controller/validation/validators.js","/Users/robertmccann/Projects/hof/controller/validation/email.js","/Users/robertmccann/Projects/hof/controller/validation-error.js","/Users/robertmccann/Projects/hof/utilities/index.js","/Users/robertmccann/Projects/hof/utilities/autofill/index.js","/Users/robertmccann/Projects/hof/utilities/autofill/inputs.js","/Users/robertmccann/Projects/hof/utilities/test-data/index.js","/Users/robertmccann/Projects/hof/utilities/countries.js","/Users/robertmccann/Projects/hof/utilities/helpers/index.js","/Users/robertmccann/Projects/hof/utilities/reqres/index.js","/Users/robertmccann/Projects/hof/config/sanitisation-rules.js","/Users/robertmccann/Projects/hof/controller/formatting/formatters.js","/Users/robertmccann/Projects/hof/controller/index.js","/Users/robertmccann/Projects/hof/controller/behaviour-session.js","/Users/robertmccann/Projects/hof/controller/behaviour-hooks.js","/Users/robertmccann/Projects/hof/controller/controller.js","/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/behaviours/country-select.js","/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/index.js","/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/template-mixins.js","/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/render.js","/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/helpers.js","/Users/robertmccann/Projects/hof/index.js","/Users/robertmccann/Projects/hof/frontend/index.js","/Users/robertmccann/Projects/hof/frontend/govuk-template/index.js","/Users/robertmccann/Projects/hof/frontend/govuk-template/build/index.js","/Users/robertmccann/Projects/hof/frontend/govuk-template/build/config.js","/Users/robertmccann/Projects/hof/frontend/template-partials/index.js","/Users/robertmccann/Projects/hof/frontend/template-partials/translations/index.js","/Users/robertmccann/Projects/hof/frontend/themes/index.js","/Users/robertmccann/Projects/hof/frontend/themes/gov-uk/index.js","/Users/robertmccann/Projects/hof/frontend/toolkit/index.js","/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/helpers.js","/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/form-focus.js","/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/progressive-reveal.js","/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/validation.js","/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/character-count.js","/Users/robertmccann/Projects/hof/middleware/index.js","/Users/robertmccann/Projects/hof/middleware/cookies.js","/Users/robertmccann/Projects/hof/middleware/errors.js","/Users/robertmccann/Projects/hof/middleware/not-found.js","/Users/robertmccann/Projects/hof/middleware/deep-translate.js","/Users/robertmccann/Projects/hof/lib/markdown.js","/Users/robertmccann/Projects/hof/lib/router.js","/Users/robertmccann/Projects/hof/wizard/index.js","/Users/robertmccann/Projects/hof/wizard/behaviours/index.js","/Users/robertmccann/Projects/hof/wizard/behaviours/complete.js","/Users/robertmccann/Projects/hof/wizard/util/constants.js","/Users/robertmccann/Projects/hof/lib/helpers.js","/Users/robertmccann/Projects/hof/lib/health.js","/Users/robertmccann/Projects/hof/lib/serve-static.js","/Users/robertmccann/Projects/hof/lib/ga-tag.js","/Users/robertmccann/Projects/hof/lib/sessions.js","/Users/robertmccann/Projects/hof/lib/settings.js","/Users/robertmccann/Projects/hof/lib/logger.js","/Users/robertmccann/Projects/hof/build/index.js","/Users/robertmccann/Projects/hof/config/builder-defaults.js","/Users/robertmccann/Projects/hof/transpiler/index.js","/Users/robertmccann/Projects/hof/transpiler/lib/compile.js","/Users/robertmccann/Projects/hof/transpiler/lib/build.js","/Users/robertmccann/Projects/hof/transpiler/lib/expand-dirs.js","/Users/robertmccann/Projects/hof/transpiler/lib/aggregate.js","/Users/robertmccann/Projects/hof/transpiler/lib/write-files.js","/Users/robertmccann/Projects/hof/model/apis/index.js","/Users/robertmccann/Projects/hof/model/apis/html-to-pdf-converter.js","/Users/robertmccann/Projects/hof/wizard/model.js","/Users/robertmccann/Projects/hof/wizard/middleware/back-links.js","/Users/robertmccann/Projects/hof/wizard/util/helpers.js","/Users/robertmccann/Projects/hof/wizard/middleware/check-complete.js","/Users/robertmccann/Projects/hof/wizard/middleware/check-progress.js","/Users/robertmccann/Projects/hof/wizard/middleware/check-session.js","/Users/robertmccann/Projects/hof/wizard/middleware/csrf.js","/Users/robertmccann/Projects/hof/sandbox/test/_unit/example_app/sections/summary-data-sections.spec.js","/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/sections/summary-data-sections.js","/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/lib/staticAppealStages.js","/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/fields.js","/Users/robertmccann/Projects/hof/sandbox/test/helpers/utilities.js","/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/behaviours/international-number.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":{"4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5":{"parent":null,"children":[]}},"files":{"/Users/robertmccann/Projects/hof/model/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/address-lookup/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/address-lookup/default-model.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/address-lookup/defaults.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/clear-session/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/combine-and-loop-fields/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/date/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/date/fields.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/email-service.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/emailer.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/transports/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/transports/smtp.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/transports/ses.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/transports/stub.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/emailer/transports/debug.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/homeoffice-countries/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/config/component-defaults.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/notify/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/notify/notify.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/components/summary/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/config/rate-limits.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/rate-limiter.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/config/hof-defaults.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/base-controller.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/formatting/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/validation/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/validation/validators.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/validation/email.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/validation-error.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/autofill/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/autofill/inputs.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/test-data/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/countries.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/helpers/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/utilities/reqres/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/config/sanitisation-rules.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/formatting/formatters.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/behaviour-session.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/behaviour-hooks.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/controller/controller.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/behaviours/country-select.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/template-mixins.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/render.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-mixins/mixins/helpers.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/govuk-template/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/govuk-template/build/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/govuk-template/build/config.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-partials/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/template-partials/translations/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/themes/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/themes/gov-uk/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/helpers.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/form-focus.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/progressive-reveal.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/validation.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/frontend/toolkit/assets/javascript/character-count.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/cookies.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/errors.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/not-found.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/middleware/deep-translate.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/markdown.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/router.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/behaviours/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/behaviours/complete.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/util/constants.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/helpers.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/health.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/serve-static.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/ga-tag.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/sessions.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/settings.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/lib/logger.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/build/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/config/builder-defaults.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/lib/compile.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/lib/build.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/lib/expand-dirs.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/lib/aggregate.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/transpiler/lib/write-files.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/model/apis/index.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/model/apis/html-to-pdf-converter.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/model.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/middleware/back-links.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/util/helpers.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/middleware/check-complete.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/middleware/check-progress.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/middleware/check-session.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/wizard/middleware/csrf.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/test/_unit/example_app/sections/summary-data-sections.spec.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/sections/summary-data-sections.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/lib/staticAppealStages.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/fields.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/test/helpers/utilities.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"],"/Users/robertmccann/Projects/hof/sandbox/apps/sandbox/behaviours/international-number.js":["4fc007c9-d6c8-4614-89ce-04c7d6ce9fe5"]},"externalIds":{}}
@@ -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,13 @@ 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
+ gtmTagId: process.env.GTM_TAG || false,
25
26
  gaCrossDomainTrackingTagId: process.env.GDS_CROSS_DOMAIN_GA_TAG,
26
27
  loglevel: process.env.LOG_LEVEL || 'info',
27
28
  ignoreMiddlewareLogs: ['/healthz'],
28
29
  redis: {
29
- socket: {
30
- port: process.env.REDIS_PORT || '6379',
31
- host: process.env.REDIS_HOST || '127.0.0.1'
32
- },
33
- legacyMode: true
30
+ port: process.env.REDIS_PORT || '6379',
31
+ host: process.env.REDIS_HOST || '127.0.0.1'
34
32
  },
35
33
  session: {
36
34
  ttl: process.env.SESSION_TTL || 1800,
@@ -5,39 +5,38 @@
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">
@@ -57,11 +56,11 @@
57
56
  </a>
58
57
  </div>
59
58
  {{{ insideHeader }}}
60
-
59
+
61
60
  {{{ propositionHeader }}}
62
61
  </div>
63
62
  </header>
64
-
63
+
65
64
 
66
65
  {{{ afterHeader }}}
67
66
 
@@ -81,7 +80,7 @@
81
80
  <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
81
  <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
82
  </svg>
84
-
83
+
85
84
  <span class="govuk-footer__licence-description">{{{ licenceMessage }}}</span>
86
85
  </div>
87
86
 
@@ -93,12 +92,12 @@
93
92
  </footer>
94
93
 
95
94
  <div id="global-app-error" class="app-error hidden"></div>
96
-
95
+
97
96
 
98
97
  {{{ bodyEnd }}}
99
-
100
-
98
+
99
+
101
100
  <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>if (typeof window.GOVUK === 'undefined') document.body.className = document.body.className.replace('js-enabled', '');</script>
102
-
101
+
103
102
  </body>
104
103
  </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,30 @@
1
+ {{#gtmTagId}}
2
+ {{#cookiesAccepted}}
3
+ {{#isETA}}
4
+ <!-- Google Tag Manager Data Layer for ETA -->
5
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>
6
+ var dataLayer = window.dataLayer || [];
7
+ dataLayer.push({
8
+ 'event': 'pageLoad',
9
+ 'pageName': 'ETA | Customer Contact Webform | {{gtm-page}}',
10
+ 'applicationType': 'ETA | Customer Contact',
11
+ 'environmentType': '{{environmentType}}'
12
+ });
13
+ </script>
14
+ <!-- End Google Tag Manager Data Layer for ETA -->
15
+ {{/isETA}}
16
+
17
+ <!-- Google Tag Manager -->
18
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>
19
+ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
20
+ new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
21
+ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
22
+ 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
23
+ })(window,document,'script','dataLayer','{{gtmTagId}}');
24
+ </script>
25
+ <!-- End Google Tag Manager -->
26
+ {{/cookiesAccepted}}
27
+ {{/gtmTagId}}
28
+
1
29
  <meta name="format-detection" content="telephone=no">
2
30
  <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,6 +52,8 @@ const setupPageMap = routes => {
42
52
  module.exports = (app, config) => {
43
53
  const gaTagId = config.gaTagId;
44
54
  const ga4TagId = config.ga4TagId;
55
+ const gtmTagId = config.gtmTagId;
56
+ const environmentType = config.environmentType ? config.environmentType : 'dev';
45
57
  const gaCrossDomainTrackingTagId = config.gaCrossDomainTrackingTagId;
46
58
  const routes = config.routes;
47
59
 
@@ -49,12 +61,17 @@ module.exports = (app, config) => {
49
61
  const pageMap = setupPageMap(routes);
50
62
 
51
63
  app.use((req, res, next) => {
64
+ const page = pageView(req.path, pageMap);
52
65
  res.locals.gaAllowDebug = config.env === 'development';
66
+ res.locals.isETA = config.appName === 'ETA';
53
67
  res.locals.gaTagId = gaTagId;
54
68
  res.locals.ga4TagId = ga4TagId;
69
+ res.locals.gtmTagId = gtmTagId;
70
+ res.locals.environmentType = environmentType;
55
71
  res.locals.gaCrossDomainTrackingTagId = gaCrossDomainTrackingTagId;
56
72
  res.locals['ga-id'] = gaTagId;
57
- res.locals['ga-page'] = pageView(req.path, pageMap);
73
+ res.locals['ga-page'] = page;
74
+ res.locals['gtm-page'] = convertToGTMPage(page);
58
75
  next();
59
76
  });
60
77
  }
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');
@@ -25,11 +25,9 @@ module.exports = (options, rateLimitType) => {
25
25
  }
26
26
 
27
27
  const closeConnection = async err => {
28
- await redisClient.v4.QUIT();
28
+ await redisClient.quit();
29
29
  return next(err);
30
30
  };
31
- redisClient.on('error', err => logger.log('error', err));
32
- await redisClient.connect();
33
31
 
34
32
  try {
35
33
  // fetch records of current user using IP address, returns null when no record is found
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "hof",
3
3
  "description": "A bootstrap for HOF projects",
4
- "version": "20.3.11",
4
+ "version": "20.4.0-minimatch-vulnerability-beta",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
7
7
  "author": "HomeOffice",
@@ -80,7 +80,7 @@
80
80
  "nodemailer-smtp-transport": "^2.7.4",
81
81
  "nodemailer-stub-transport": "^1.1.0",
82
82
  "notifications-node-client": "^6.0.0",
83
- "redis": "^4.6.6",
83
+ "redis": "^3.1.2",
84
84
  "reqres": "^3.0.1",
85
85
  "request": "^2.79.0",
86
86
  "rimraf": "^3.0.2",
@@ -96,6 +96,7 @@
96
96
  "@cucumber/cucumber": "^7.3.0",
97
97
  "@cucumber/pretty-formatter": "^1.0.0-alpha.1",
98
98
  "@types/jest": "^26.0.14",
99
+ "@xmldom/xmldom": "~0.8.4",
99
100
  "chai": "^3.5.0",
100
101
  "chai-as-promised": "^7.1.1",
101
102
  "chai-subset": "^1.6.0",
@@ -122,14 +123,13 @@
122
123
  "playwright": "^1.16.3",
123
124
  "postcode": "0.2.2",
124
125
  "proxyquire": "^1.7.11",
125
- "release-it": "^14.10.0",
126
+ "release-it": "^16.2.1",
126
127
  "sinon": "^11.1.1",
127
128
  "sinon-chai": "^3.7.0",
128
129
  "supertest": "^3.0.0",
129
130
  "travis-conditions": "0.0.0",
130
131
  "watchify": "^4.0.0",
131
- "webdriverio": "^4.14.4",
132
- "xmldom": "^0.6.0"
132
+ "webdriverio": "^4.14.4"
133
133
  },
134
134
  "mocha": {
135
135
  "reporter": "spec",
@@ -141,6 +141,7 @@
141
141
  "resolutions": {
142
142
  "underscore": "^1.12.1",
143
143
  "cached-path-relative": "^1.1.0",
144
- "shell-quote": "^1.7.3"
144
+ "shell-quote": "^1.7.3",
145
+ "minimatch": "4.0.0"
145
146
  }
146
147
  }
@@ -16,9 +16,6 @@ module.exports = {
16
16
  },
17
17
  name: {
18
18
  validate: ['required', 'notUrl', { type: 'maxlength', arguments: 200 }],
19
- // need to remove this for the heading to go
20
- labelClassName: ['govuk-label--l'],
21
- isPageHeading: 'true'
22
19
  },
23
20
  'dateOfBirth': dateComponent('dateOfBirth', {
24
21
  mixin: 'input-date',
@@ -70,8 +67,6 @@ module.exports = {
70
67
  ]
71
68
  },
72
69
  email: {
73
- isPageHeading: 'true',
74
- labelClassName: ['govuk-label--l'],
75
70
  validate: ['required', 'email']
76
71
  },
77
72
  phone: {
@@ -114,7 +109,6 @@ module.exports = {
114
109
  // apply the other default formatters
115
110
  formatter: ['trim', 'hyphens'],
116
111
  isPageHeading: 'true',
117
- labelClassName: ['govuk-label--l'],
118
112
  // attributes here are passed to the field element
119
113
  validate: ['required', { type: 'maxword', arguments: 10 }],
120
114
  attributes: [{
@@ -2,7 +2,6 @@
2
2
  "fields": {
3
3
  "landing-page-radio": {
4
4
  "legend": "Which form would you like to explore?",
5
- "hint": "Choose one of the options below and press continue.",
6
5
  "options": {
7
6
  "basic-form": {
8
7
  "label": "Basic form"
@@ -19,7 +18,7 @@
19
18
  "label": "Full name"
20
19
  },
21
20
  "dateOfBirth": {
22
- "legend": "What is your date of birth?",
21
+ "legend": "Date of birth",
23
22
  "hint": "For example, 31 10 1990"
24
23
  },
25
24
  "building": {
@@ -57,7 +56,7 @@
57
56
  }
58
57
  },
59
58
  "countryOfHearing": {
60
- "legend": "What country was the appeal lodged?",
59
+ "label": "Country of hearing",
61
60
  "options": {
62
61
  "englandAndWales": {
63
62
  "label": "England and Wales"
@@ -81,45 +80,49 @@
81
80
  "legend": "International phone number"
82
81
  },
83
82
  "complaintDetails": {
84
- "label": "Complaint details",
85
- "hint": "Briefly summarise your complaint. Include anything that can help our investigation."
86
- },
87
- "whatHappened": {
88
- "label": "What happened",
89
- "hint": "Briefly summarise what happened."
83
+ "label": "Complaint details"
90
84
  },
91
85
  "countrySelect": {
92
- "label": "Which country are you based in?",
86
+ "label": "Select a country",
93
87
  "hint": "Start to type the country name and options will appear"
94
88
  },
95
89
  "appealStages": {
96
90
  "label": "Appeal stage",
97
- "hint": "Choose an appeal stage from the drop down menu",
98
91
  "options": {
99
92
  "null": "Select..."
100
93
  }
101
94
  }
102
95
  },
103
96
  "journey": {
104
- "header": "HOF Bootstrap Sandbox Form",
105
- "confirmation": {
106
- "details": "Your reference number <br><strong>HDJ2123F</strong>"
107
- }
97
+ "header": "HOF Bootstrap Sandbox Form"
108
98
  },
109
99
  "pages": {
110
100
  "landing-page": {
111
- "header": "Landing page"
101
+ "header": "Landing page",
102
+ "intro": "Choose one of the options below and press continue."
112
103
  },
113
104
  "build-your-own-form": {
114
105
  "title": "Build your own form",
115
106
  "subheader": "Access the build your own form guidance link"
116
107
  },
108
+ "name": {
109
+ "header": "What is your full name?"
110
+ },
111
+ "dob": {
112
+ "header": "What is your date of birth?"
113
+ },
117
114
  "address": {
118
115
  "header": "What is your address in the UK?",
119
116
  "intro": "If you have no fixed address, enter an address where we can contact you."
120
117
  },
121
- "name": {
122
- "header": "What is your full name?"
118
+ "checkboxes": {
119
+ "header": "Where does your money come from each month?"
120
+ },
121
+ "radio": {
122
+ "header": "What country was the appeal lodged?"
123
+ },
124
+ "country-select": {
125
+ "header": "What country is your address located?"
123
126
  },
124
127
  "email": {
125
128
  "header": "Enter your email address"
@@ -127,6 +130,14 @@
127
130
  "phone-number": {
128
131
  "header": "Enter your phone number"
129
132
  },
133
+ "text-input-area": {
134
+ "header": "What are the details of your complaint?",
135
+ "intro": "Briefly summarise your complaint. Include anything that can help our investigation."
136
+ },
137
+ "select": {
138
+ "header": "What is the appeal stage?",
139
+ "intro": "Choose an appeal stage from the drop down menu"
140
+ },
130
141
  "confirm": {
131
142
  "header": "Check your answers before submitting your application.",
132
143
  "sections": {
@@ -150,9 +161,6 @@
150
161
  },
151
162
  "complaintDetails": {
152
163
  "header": "Complaint details"
153
- },
154
- "whatHappened": {
155
- "header": "What happened"
156
164
  }
157
165
  }
158
166
  },
@@ -207,11 +215,7 @@
207
215
  },
208
216
  "complaintDetails": {
209
217
  "default": "Enter details about why you are making a complaint",
210
- "maxlength": "Keep to the {{maxlength}} character limit"
211
- },
212
- "whatHappened": {
213
- "default": "Enter details about what happened",
214
- "maxword": "Keep to the {{maxword}} word limit"
218
+ "maxlength": "Keep to the 5000 character limit"
215
219
  },
216
220
  "appealStages": {
217
221
  "required": "Select an appeal stage from the list"