hof 20.5.3 → 20.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,22 @@
1
+ # HOF code review checklist v1.0
2
+
3
+ This is a general guide on what you should check for when reviewing another team member's code.
4
+
5
+ ## Fundamental checks
6
+ - [ ] Check for code format
7
+ - [ ] Check for duplicate code
8
+ - [ ] Check for if there are existing components in the framework already
9
+ - [ ] Check for copy and paste
10
+ - [ ] Check code readability (if the class, function and variable names are making sense, avoid using acronyms, check for simplicity, avoid complexity)
11
+ - [ ] Check if user inputs are sanitized
12
+ - [ ] Check if errors are handled
13
+ - [ ] Check if null / undefined values are checked before actions are performed on a variable (May not always be necessary)
14
+ - [ ] Check for performance (are there logic in loops that doesn't have to be executed each time? Could some tasks be added to a queue and performed later? etc)
15
+
16
+ ## Advanced (optional if the ticket is low / medium impact) checks
17
+ - [ ] Check if the code is following SOLID principle, code maintainability
18
+ - [ ] Check if none functional requirements are needed (for example, should an audit log be stored for an action performed)
19
+ - [ ] Check the performance and efficiency of the tests
20
+ - [ ] Check to avoid the use of operations that only work in javascript (e.g. using && to return the object on the right if the statement on the left is true)
21
+
22
+
@@ -0,0 +1,102 @@
1
+
2
+ <!DOCTYPE html>
3
+ <!--[if lt IE 9]><html class="lte-ie8" lang="{{htmlLang}}"><![endif]-->
4
+ <!--[if gt IE 8]><!--><html lang="{{htmlLang}}" class="govuk-template"><!--<![endif]-->
5
+ <head>
6
+ <meta charset="utf-8" />
7
+ <title>{{$pageTitle}}{{/pageTitle}}</title>
8
+ {{$head}}{{/head}}
9
+
10
+ <link rel="shortcut icon" sizes="16x16 32x32 48x48" href="{{govukAssetPath}}images/favicon.ico" type="image/x-icon">
11
+ <link rel="mask-icon" href="{{govukAssetPath}}images/govuk-mask-icon.svg" color="#0b0c0c">
12
+ <link rel="apple-touch-icon" sizes="180x180" href="{{govukAssetPath}}images/govuk-apple-touch-icon-180x180.png">
13
+ <link rel="apple-touch-icon" sizes="167x167" href="{{govukAssetPath}}images/govuk-apple-touch-icon-167x167.png">
14
+ <link rel="apple-touch-icon" sizes="152x152" href="{{govukAssetPath}}images/govuk-apple-touch-icon-152x152.png">
15
+ <link rel="apple-touch-icon" href="{{govukAssetPath}}images/govuk-apple-touch-icon.png">
16
+
17
+
18
+ <meta name="theme-color" content="#0b0c0c" />
19
+
20
+ <meta name="viewport" content="width=device-width, initial-scale=1">
21
+
22
+
23
+ <meta property="og:image" content="{{govukAssetPath}}images/opengraph-image.png">
24
+ </head>
25
+
26
+ <body class="{{$bodyClasses}}{{/bodyClasses}} govuk-template__body js-enabled" >
27
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>document.body.className = ((document.body.className) ? document.body.className + ' js-enabled' : 'js-enabled');</script>
28
+
29
+
30
+
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="">
32
+ {{$cookieMessage}}{{/cookieMessage}}
33
+ </div>
34
+
35
+ {{$bodyStart}}{{/bodyStart}}
36
+
37
+ <header role="banner" id="govuk-header" class="{{$headerClass}}{{/headerClass}}">
38
+ <div class="govuk-header__container govuk-width-container">
39
+
40
+ <div class="govuk-header__logo">
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">
42
+ <span class="govuk-header__logotype">
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 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
+ </svg>
47
+ <!--<![endif]-->
48
+ <!--[if IE 8]>
49
+ <img src="{{govukAssetPath}}images/govuk-logotype-tudor-crown.png" class="govuk-header__logotype-crown-fallback-image" width="32" height="30" alt="">
50
+ <![endif]-->
51
+ </span>
52
+ <span class="govuk-header__logotype-text">
53
+ {{$globalHeaderText}}GOV.UK{{/globalHeaderText}}
54
+ </span>
55
+ </a>
56
+ </div>
57
+ {{$insideHeader}}{{/insideHeader}}
58
+
59
+ {{$propositionHeader}}{{/propositionHeader}}
60
+ </div>
61
+ </header>
62
+
63
+
64
+ {{$afterHeader}}{{/afterHeader}}
65
+
66
+
67
+ {{$main}}{{/main}}
68
+
69
+ <footer class="govuk-footer" id="footer" role="contentinfo">
70
+
71
+ <div class="govuk-width-container">
72
+ {{$footerTop}}{{/footerTop}}
73
+
74
+ <div class="govuk-footer__meta">
75
+ <div class="govuk-footer__meta-item govuk-footer__meta-item--grow">
76
+ <h2 class="govuk-visually-hidden">Support links</h2>
77
+ {{$footerSupportLinks}}{{/footerSupportLinks}}
78
+
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">
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>
81
+ </svg>
82
+
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>
84
+ </div>
85
+
86
+ <div class="govuk-footer__meta-item">
87
+ <a class="govuk-footer__link govuk-footer__copyright-logo" id="copyright-logo" target="_blank" href="https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/uk-government-licensing-framework/crown-copyright/">{{$crownCopyrightMessage}}© Crown copyright{{/crownCopyrightMessage}}</a>
88
+ </div>
89
+ </div>
90
+ </div>
91
+ </footer>
92
+
93
+ <div id="global-app-error" class="app-error hidden"></div>
94
+
95
+
96
+ {{$bodyEnd}}{{/bodyEnd}}
97
+
98
+
99
+ <script {{#nonce}}nonce="{{nonce}}"{{/nonce}}>if (typeof window.GOVUK === 'undefined') document.body.className = document.body.className.replace('js-enabled', '');</script>
100
+
101
+ </body>
102
+ </html>
@@ -8,7 +8,7 @@
8
8
 
9
9
  {{$content}}
10
10
  <p class="govuk-body">{{#t}}accessibility.intro-p2{{/t}}</p>
11
- <ul class="govuk-list">
11
+ <ul class="govuk-list govuk-list--bullet">
12
12
  <li>{{#t}}accessibility.intro-p2-li1{{/t}}</li>
13
13
  <li>{{#t}}accessibility.intro-p2-li2{{/t}}</li>
14
14
  <li>{{#t}}accessibility.intro-p2-li3{{/t}}</li>
@@ -18,13 +18,13 @@
18
18
  <p class="govuk-body">{{#t}}accessibility.intro-p3-pre-link{{/t}} <a href="https://mcmw.abilitynet.org.uk/">{{#t}}accessibility.intro-p3-link{{/t}}</a> {{#t}}accessibility.intro-p3-post-link{{/t}}</p>
19
19
  <h2 class="govuk-heading-m">{{#t}}accessibility.how-accessible-header{{/t}}</h2>
20
20
  <p class="govuk-body">{{#t}}accessibility.how-accessible-p1{{/t}}</p>
21
- <ul class="govuk-list">
21
+ <ul class="govuk-list govuk-list--bullet">
22
22
  <li>{{#t}}accessibility.how-accessible-p1-li1{{/t}}</li>
23
23
  <li>{{#t}}accessibility.how-accessible-p1-li2{{/t}}</li>
24
24
  </ul>
25
25
  <h2 class="govuk-heading-m">{{#t}}accessibility.reporting-header{{/t}}</h2>
26
26
  <p class="govuk-body">{{#t}}accessibility.reporting-p1{{/t}}</p>
27
- <ul class="govuk-list">
27
+ <ul class="govuk-list govuk-list--bullet">
28
28
  <li>{{#t}}accessibility.reporting-p1-li1-pre-link{{/t}} <a href="mailto:{{#t}}accessibility.contact-email-accessibility{{/t}}">{{#t}}accessibility.contact-email-accessibility{{/t}}</a></li>
29
29
  </ul>
30
30
  <p class="govuk-body">
@@ -40,7 +40,7 @@
40
40
  <h2 class="govuk-heading-m">{{#t}}accessibility.non-accessible-header{{/t}}</h2>
41
41
  <p class="govuk-body">{{#t}}accessibility.non-accessible-p1{{/t}}</p>
42
42
  <h3 class="govuk-heading-m">{{#t}}accessibility.non-compliance-header{{/t}}</h3>
43
- <ul class="govuk-list">
43
+ <ul class="govuk-list govuk-list--bullet">
44
44
  <li>{{#t}}accessibility.non-compliance-li1{{/t}}</li>
45
45
  </ul>
46
46
  <h3 class="govuk-heading-m">{{#t}}accessibility.disproportionate-burden-header{{/t}}</h3>
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.5.3",
4
+ "version": "20.5.5",
5
5
  "license": "MIT",
6
6
  "main": "index.js",
7
7
  "author": "HomeOffice",
@@ -0,0 +1,220 @@
1
+ {
2
+ "fields": {
3
+ "landing-page-radio": {
4
+ "legend": "Which form would you like to explore?",
5
+ "hint": "Choose one of the options below and press continue.",
6
+ "options": {
7
+ "basic-form": {
8
+ "label": "Basic form"
9
+ },
10
+ "complex-form": {
11
+ "label": "Complex form"
12
+ },
13
+ "build-your-own-form": {
14
+ "label": "Build your own form"
15
+ }
16
+ }
17
+ },
18
+ "name": {
19
+ "label": "Full name"
20
+ },
21
+ "dateOfBirth": {
22
+ "legend": "What is your date of birth?",
23
+ "hint": "For example, 31 10 1990"
24
+ },
25
+ "building": {
26
+ "label": "Building and street"
27
+ },
28
+ "street": {
29
+ "label": "Address line 2"
30
+ },
31
+ "townOrCity": {
32
+ "label": "Town or city"
33
+ },
34
+ "postcode": {
35
+ "label": "Postcode"
36
+ },
37
+ "incomeTypes": {
38
+ "label": "Sources of income",
39
+ "legend": "Select the options where you receive income from",
40
+ "hint": "Select all options that apply to you.",
41
+ "options": {
42
+ "salary": {
43
+ "label": "Salary"
44
+ },
45
+ "universal_credit": {
46
+ "label": "Universal Credit"
47
+ },
48
+ "child_benefit": {
49
+ "label": "Child Benefit"
50
+ },
51
+ "housing_benefit": {
52
+ "label": "Housing Benefit"
53
+ },
54
+ "other": {
55
+ "label": "Other"
56
+ }
57
+ }
58
+ },
59
+ "countryOfHearing": {
60
+ "legend": "What country was the appeal lodged?",
61
+ "options": {
62
+ "englandAndWales": {
63
+ "label": "England and Wales"
64
+ },
65
+ "scotland": {
66
+ "label": "Scotland"
67
+ },
68
+ "northernIreland": {
69
+ "label": "Northern Ireland"
70
+ }
71
+ }
72
+ },
73
+ "email": {
74
+ "label": "Email address"
75
+ },
76
+ "phone": {
77
+ "label": "Phone number",
78
+ "hint": "International phone numbers require the international dialling code, for example +33235066182"
79
+ },
80
+ "int-phone-number": {
81
+ "legend": "International phone number"
82
+ },
83
+ "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."
90
+ },
91
+ "countrySelect": {
92
+ "label": "Which country are you based in?",
93
+ "hint": "Start to type the country name and options will appear"
94
+ },
95
+ "appealStages": {
96
+ "label": "Appeal stage",
97
+ "hint": "Choose an appeal stage from the drop down menu",
98
+ "options": {
99
+ "null": "Select..."
100
+ }
101
+ }
102
+ },
103
+ "journey": {
104
+ "header": "HOF Bootstrap Sandbox Form",
105
+ "confirmation": {
106
+ "details": "Your reference number <br><strong>HDJ2123F</strong>"
107
+ }
108
+ },
109
+ "pages": {
110
+ "landing-page": {
111
+ "header": "Landing page"
112
+ },
113
+ "build-your-own-form": {
114
+ "title": "Build your own form",
115
+ "subheader": "Access the build your own form guidance link"
116
+ },
117
+ "address": {
118
+ "header": "What is your address in the UK?",
119
+ "intro": "If you have no fixed address, enter an address where we can contact you."
120
+ },
121
+ "name": {
122
+ "header": "What is your full name?"
123
+ },
124
+ "email": {
125
+ "header": "Enter your email address"
126
+ },
127
+ "phone-number": {
128
+ "header": "Enter your phone number"
129
+ },
130
+ "confirm": {
131
+ "header": "Check your answers before submitting your application.",
132
+ "sections": {
133
+ "applicantsDetails": {
134
+ "header": "Applicant's details"
135
+ },
136
+ "address": {
137
+ "header": "Address"
138
+ },
139
+ "income": {
140
+ "header": "Income"
141
+ },
142
+ "appealDetails": {
143
+ "header": "Appeal details"
144
+ },
145
+ "countrySelect": {
146
+ "header": "Country of residence"
147
+ },
148
+ "contactDetails": {
149
+ "header": "Contact details"
150
+ },
151
+ "complaintDetails": {
152
+ "header": "Complaint details"
153
+ },
154
+ "whatHappened": {
155
+ "header": "What happened"
156
+ }
157
+ }
158
+ },
159
+ "confirmation": {
160
+ "title": "Application sent",
161
+ "alert": "Application sent",
162
+ "subheader": "What happens next",
163
+ "content": "We’ll contact you with the decision of your application or if we need more information from you."
164
+ }
165
+ },
166
+ "validation": {
167
+ "landing-page-radio": {
168
+ "required": "Select an option below and press continue"
169
+ },
170
+ "name": {
171
+ "default": "Enter your full name"
172
+ },
173
+ "dateOfBirth": {
174
+ "default": "Enter your date of birth in the correct format; for example, 31 10 1990",
175
+ "after": "Enter a date after 1 1 1900",
176
+ "before": "Enter a date that is in the past"
177
+ },
178
+ "building": {
179
+ "default": "Enter details of your building and street"
180
+ },
181
+ "townOrCity": {
182
+ "default": "Enter a town or city",
183
+ "regex": "Enter a town or city without including digits"
184
+ },
185
+ "postcode": {
186
+ "default": "Enter your postcode"
187
+ },
188
+ "incomeTypes": {
189
+ "default": "Select all options that apply to you."
190
+ },
191
+ "countryOfHearing": {
192
+ "default": "Select where the appeal hearing is to be held"
193
+ },
194
+ "countrySelect": {
195
+ "default": "Enter a valid country of residence",
196
+ "required": "Enter your country of residence"
197
+ },
198
+ "email": {
199
+ "default": "Enter your email address in the correct format"
200
+ },
201
+ "phone": {
202
+ "default": "Enter your phone number"
203
+ },
204
+ "int-phone-number": {
205
+ "required": "Enter an international phone number",
206
+ "internationalPhoneNumber": "Enter a valid international phone number"
207
+ },
208
+ "complaintDetails": {
209
+ "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"
215
+ },
216
+ "appealStages": {
217
+ "required": "Select an appeal stage from the list"
218
+ }
219
+ }
220
+ }