hof 20.3.7-timeout-beta → 20.3.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (26) hide show
  1. package/README.md +12 -12
  2. package/frontend/govuk-template/build/govuk_template.html +3 -4
  3. package/frontend/template-partials/translations/src/en/buttons.json +0 -1
  4. package/frontend/template-partials/translations/src/en/errors.json +0 -4
  5. package/frontend/template-partials/views/layout.html +1 -2
  6. package/frontend/template-partials/views/partials/warn.html +7 -0
  7. package/frontend/themes/gov-uk/client-js/index.js +0 -1
  8. package/package.json +2 -2
  9. package/sandbox/assets/scss/app.scss +1 -115
  10. package/sandbox/package.json +1 -1
  11. package/sandbox/yarn.lock +1 -6
  12. package/.nyc_output/2194bc4f-7454-4356-80e2-e52a7dc798aa.json +0 -1
  13. package/.nyc_output/processinfo/2194bc4f-7454-4356-80e2-e52a7dc798aa.json +0 -1
  14. package/.nyc_output/processinfo/index.json +0 -1
  15. package/frontend/govuk-template/govuk_template_generated.html +0 -103
  16. package/frontend/template-partials/views/partials/session-timeout-warning.html +0 -27
  17. package/frontend/themes/gov-uk/client-js/dialog/index.js +0 -361
  18. package/frontend/themes/gov-uk/client-js/dialog/utils.js +0 -114
  19. package/middleware/session-timeout.js +0 -23
  20. package/sandbox/apps/sandbox/behaviours/extend-session.js +0 -9
  21. package/sandbox/apps/sandbox/translations/en/default.json +0 -220
  22. package/sandbox/public/css/app.css +0 -9496
  23. package/sandbox/public/images/icons/icon-caret-left.png +0 -0
  24. package/sandbox/public/images/icons/icon-complete.png +0 -0
  25. package/sandbox/public/images/icons/icon-cross-remove-sign.png +0 -0
  26. package/sandbox/public/js/bundle.js +0 -46860
package/README.md CHANGED
@@ -311,7 +311,7 @@ my-application/translations/en/default.json
311
311
  }
312
312
  ```
313
313
 
314
- # HOF Controller
314
+ #HOF Controller
315
315
 
316
316
  Implements a request pipeline for GET and POST of forms, with input cleaning/formatting and validation.
317
317
 
@@ -482,13 +482,13 @@ let error = new ErrorClass(this.missingDoB, {
482
482
  });
483
483
  ```
484
484
 
485
- ## hof-behaviour-session
485
+ ##hof-behaviour-session
486
486
 
487
487
  HOF Behaviour for reading and writing to the session
488
488
 
489
- ## Usage
489
+ ##Usage
490
490
 
491
- ### With [mixwith.js](https://github.com/justinfagnani/mixwith.js)
491
+ ###With [mixwith.js](https://github.com/justinfagnani/mixwith.js)
492
492
 
493
493
  ```js
494
494
  const mix = require('mixwith').mix;
@@ -502,7 +502,7 @@ class MyController extends mix(BaseController).with(Session) {
502
502
 
503
503
  `MyController` now extends `hof-form-controller` and has `hof-behaviour-session` functionality mixed in.
504
504
 
505
- ## Functionality
505
+ ##Functionality
506
506
 
507
507
  This mixin extends `hof-form-controller` by persisting the form data to the `sessionModel` - assuming the [session-model](https://github.com/UKHomeOfficeForms/hof-form-wizard/blob/master/lib/middleware/session-model.js) middleware has been applied.
508
508
 
@@ -516,13 +516,13 @@ The following form controller methods are used:
516
516
  - `missingPrereqHandler(req, res)` - Error handler called when a `MISSING_PREREQ` error is thrown from the [check-progress](https://github.com/UKHomeOfficeForms/hof-form-wizard/blob/master/lib/middleware/check-progress.js) middleware. This occurs if a step is visited out of sequence. This error handler causes the user to be redirected to the last completed step, or the first step if none have been completed.
517
517
  - `errorHandler(err, req, res, next)` - checks if `err.code` is `MISSING_PREREQ`, if so calls `missingPrereqHandler`, if not calls `super` to hand over to parent error handler.
518
518
 
519
- ## Behaviour-hooks
519
+ ##behaviour-hooks
520
520
 
521
521
  HOF Behaviour enabling lifecycle hooks for extending functionality in main form pipeline.
522
522
 
523
- ## Usage
523
+ ##Usage
524
524
 
525
- ### With [mixwith.js](https://github.com/justinfagnani/mixwith.js)
525
+ ###With [mixwith.js](https://github.com/justinfagnani/mixwith.js)
526
526
 
527
527
  ```js
528
528
  const mix = require('mixwith').mix;
@@ -536,25 +536,25 @@ class MyController extends mix(BaseController).with(Hooks) {
536
536
 
537
537
  `MyController` now extends `hof-form-controller` and has `hof-behaviour-hooks` functionality mixed in.
538
538
 
539
- ## Functionality
539
+ ##Functionality
540
540
 
541
541
  The following hooks are currently supported, the methods are GET/POST pipeline methods from `hof-form-controller`:
542
542
 
543
- #### GET
543
+ ####GET
544
544
 
545
545
  - `_getErrors` - `'pre-getErrors', 'post-getErrors'`
546
546
  - `_getValues` - `'pre-getValues', 'post-getValues'`
547
547
  - `_locals` - `'pre-locals', 'post-locals'`
548
548
  - `render` - `'pre-render', 'post-render'`
549
549
 
550
- #### POST
550
+ ####POST
551
551
 
552
552
  - `_process` - `'pre-process', 'post-process'`
553
553
  - `_validate` - `'pre-validate', 'post-validate'`
554
554
  - `saveValues` - `'pre-saveValues', 'post-saveValues'`
555
555
  - `successHandler` - `'pre-successHandler', 'post-successHandler'`
556
556
 
557
- ### In field config
557
+ ###In field config
558
558
 
559
559
  fields.js
560
560
 
@@ -41,13 +41,12 @@
41
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">
42
42
  <span class="govuk-header__logotype">
43
43
  <!--[if gt IE 8]><!-->
44
- <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">
45
- <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>
46
46
  </svg>
47
47
  <!--<![endif]-->
48
- <!--<![endif]-->
49
48
  <!--[if IE 8]>
50
- <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="">
51
50
  <![endif]-->
52
51
  </span>
53
52
  <span class="govuk-header__logotype-text">
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "continue": "Continue",
3
- "stay-on-page": "Stay on this page",
4
3
  "send": "Send",
5
4
  "change": "Change",
6
5
  "close": "Close",
@@ -3,10 +3,6 @@
3
3
  "title": "Sorry, something went wrong",
4
4
  "message": "A server exception occurred. Please try again."
5
5
  },
6
- "session-warning": {
7
- "title": "Your page will time out soon",
8
- "message": "To protect your information, this page will time out in 5 minutes.\n\nIf that happens, your progress will not be saved."
9
- },
10
6
  "session": {
11
7
  "title": "Sorry, you'll have to start again",
12
8
  "message": "You haven't entered any details for 30 minutes, so we have cleared your information to keep it secure."
@@ -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>
@@ -29,7 +29,6 @@
29
29
  </div>
30
30
  </main>
31
31
  {{> partials-continue}}
32
- {{> partials-session-timeout-warning}}
33
32
  <script type="text/javascript" src="{{assetPath}}/js/bundle.js"></script>
34
33
  </div>
35
34
  {{/main}}
@@ -0,0 +1,7 @@
1
+ <div class="govuk-warning-text">
2
+ <span class="govuk-warning-text__icon" aria-hidden="true">!</span>
3
+ <strong class="govuk-warning-text__text">
4
+ <span class="govuk-warning-text__assistive">Warning</span>
5
+ {{warning}}
6
+ </strong>
7
+ </div>
@@ -11,7 +11,6 @@ var validation = toolkit.validation;
11
11
  var GOVUK = require('govuk-frontend');
12
12
  GOVUK.initAll();
13
13
  window.GOVUK = GOVUK;
14
- var dialog = require('./dialog');
15
14
  var skipToMain = require('./skip-to-main');
16
15
  var cookie = require('./govuk-cookies');
17
16
  var cookieSettings = require('./cookieSettings');
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.7-timeout-beta",
4
+ "version": "20.3.7",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
7
7
  "author": "HomeOffice",
@@ -57,7 +57,7 @@
57
57
  "findup": "^0.1.5",
58
58
  "glob": "^7.2.0",
59
59
  "govuk-elements-sass": "^3.1.3",
60
- "govuk-frontend": "3.14",
60
+ "govuk-frontend": "3.15",
61
61
  "govuk_template_mustache": "^0.26.0",
62
62
  "helmet": "^3.22.0",
63
63
  "hogan-express-strict": "^0.5.4",
@@ -7,7 +7,7 @@
7
7
  border: 1px solid #ccc;
8
8
  width: 65%;
9
9
  }
10
-
10
+
11
11
  .tt-suggestion {
12
12
  padding: 0.5em;
13
13
 
@@ -25,117 +25,3 @@
25
25
  .twitter-typeahead {
26
26
  width: 100%;
27
27
  }
28
-
29
- .hidden {
30
- display: none;
31
- }
32
-
33
- [role="dialog"] {
34
- box-sizing: border-box;
35
- padding: 15px;
36
- border: 1px solid #000;
37
- background-color: #fff;
38
- min-height: 100vh;
39
- }
40
-
41
- @media screen and (min-width: 640px) {
42
- [role="dialog"] {
43
- position: absolute;
44
- top: 25vh;
45
- left: 50vw; /* move to the middle of the screen (assumes relative parent is the body/viewport) */
46
- transform: translateX(
47
- -50%
48
- ); /* move backwards 50% of this element's width */
49
- min-width: calc(640px - (15px * 2)); /* == breakpoint - left+right margin */
50
- min-height: auto;
51
- box-shadow: 0 19px 38px rgb(0 0 0 / 12%), 0 15px 12px rgb(0 0 0 / 22%);
52
- }
53
- }
54
-
55
- .dialog_form {
56
- margin: 15px;
57
- }
58
-
59
- .dialog_form .label_text {
60
- box-sizing: border-box;
61
- padding-right: 0.5em;
62
- display: inline-block;
63
- font-size: 16px;
64
- font-weight: bold;
65
- width: 30%;
66
- text-align: right;
67
- }
68
-
69
- .dialog_form .label_info {
70
- box-sizing: border-box;
71
- padding-right: 0.5em;
72
- font-size: 12px;
73
- width: 30%;
74
- text-align: right;
75
- display: inline-block;
76
- }
77
-
78
- .dialog_form_item {
79
- margin: 10px 0;
80
- font-size: 0;
81
- }
82
-
83
- .dialog_form_item .wide_input {
84
- box-sizing: border-box;
85
- max-width: 70%;
86
- width: 27em;
87
- }
88
-
89
- .dialog_form_actions {
90
- text-align: right;
91
- padding: 0 20px 20px;
92
- }
93
-
94
- .dialog_close_button {
95
- float: right;
96
- position: absolute;
97
- top: 10px;
98
- left: 92%;
99
- height: 25px;
100
- }
101
-
102
- .dialog_close_button img {
103
- border: 0;
104
- }
105
-
106
- .dialog_desc {
107
- padding: 10px 20px;
108
- }
109
-
110
- /* native <dialog> element uses the ::backdrop pseudo-element */
111
-
112
- /* dialog::backdrop, */
113
- .dialog-backdrop {
114
- display: none;
115
- position: fixed;
116
- overflow-y: auto;
117
- top: 0;
118
- right: 0;
119
- bottom: 0;
120
- left: 0;
121
- z-index: 1;
122
- }
123
-
124
- @media screen and (min-width: 640px) {
125
- .dialog-backdrop {
126
- background: rgb(0 0 0 / 30%);
127
- }
128
- }
129
-
130
- .dialog-backdrop.active {
131
- display: block;
132
- }
133
-
134
- .no-scroll {
135
- overflow-y: auto !important;
136
- }
137
-
138
- /* this is added to the body when a dialog is open */
139
- .has-dialog {
140
- overflow: hidden;
141
- }
@@ -16,7 +16,7 @@
16
16
  "author": "",
17
17
  "dependencies": {
18
18
  "govuk-frontend": "3.14",
19
- "jquery": "^3.6.1",
19
+ "jquery": "^3.6.0",
20
20
  "sass": "^1.53.0",
21
21
  "typeahead-aria": "^1.0.4"
22
22
  },
package/sandbox/yarn.lock CHANGED
@@ -130,16 +130,11 @@ is-number@^7.0.0:
130
130
  resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
131
131
  integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
132
132
 
133
- jquery@>=1.11:
133
+ jquery@>=1.11, jquery@^3.6.0:
134
134
  version "3.6.0"
135
135
  resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.6.0.tgz#c72a09f15c1bdce142f49dbf1170bdf8adac2470"
136
136
  integrity sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==
137
137
 
138
- jquery@^3.6.1:
139
- version "3.7.1"
140
- resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.7.1.tgz#083ef98927c9a6a74d05a6af02806566d16274de"
141
- integrity sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==
142
-
143
138
  minimatch@^3.0.4:
144
139
  version "3.1.2"
145
140
  resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"