@ministryofjustice/hmpps-arns-frontend-components-lib 0.0.7 → 0.0.8

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,2 @@
1
+ import { Environment } from 'nunjucks';
2
+ export declare const arnsNunjucksSetup: (env: Environment) => void;
package/dist/_all.scss CHANGED
@@ -3,3 +3,5 @@
3
3
  // Requires govuk-frontend to be imported first
4
4
 
5
5
  @import "./arns/components/badge/predictor-badge";
6
+ @import "./arns/components/expanded-badge/expanded-predictor-badge";
7
+ @import "./arns/components/predictor-scale/predictor-scale";
@@ -11,31 +11,31 @@ $low-score-colour: #85994b;
11
11
  $low-score-colour--light: #dee9bd;
12
12
  $low-score-colour__text: #485b10;
13
13
 
14
- @mixin expanded-predictor-badge-base($primary-colour, $secondary-colour, $text-colour) {
14
+ @mixin arns-expanded-predictor-badge-base($primary-colour, $secondary-colour, $text-colour) {
15
15
  display: inline-flex;
16
16
  flex-direction: column;
17
17
  outline: 2px solid $primary-colour;
18
18
  width: 259px;
19
19
 
20
- & .predictor-badge__type {
20
+ & .arns-predictor-badge__type {
21
21
  @include govuk-font(19, "bold");
22
22
  color: govuk-colour("black");
23
23
 
24
24
  padding: 10px 10px 2px 10px;
25
25
  }
26
26
 
27
- & .predictor-badge__stats {
27
+ & .arns-predictor-badge__stats {
28
28
  padding: 2px 10px 2px 10px;
29
29
  }
30
30
 
31
- & .predictor-badge__level {
31
+ & .arns-predictor-badge__level {
32
32
  @include govuk-font(19, "bold");
33
33
  color: $text-colour;
34
34
 
35
35
  padding: 0px;
36
36
  }
37
37
 
38
- & .predictor-badge__score {
38
+ & .arns-predictor-badge__score {
39
39
  @include govuk-font(19, "bold");
40
40
  color: govuk-colour("black");
41
41
 
@@ -44,7 +44,7 @@ $low-score-colour__text: #485b10;
44
44
  padding: 2px 4px;
45
45
  }
46
46
 
47
- & .predictor-badge__static_or_dynamic {
47
+ & .arns-predictor-badge__static_or_dynamic {
48
48
  @include govuk-font(19, "regular");
49
49
  color: #282D30;
50
50
 
@@ -53,12 +53,12 @@ $low-score-colour__text: #485b10;
53
53
  padding: 2px 4px;
54
54
  }
55
55
 
56
- & .predictor-badge__wrapped_static_or_dynamic {
56
+ & .arns-predictor-badge__wrapped_static_or_dynamic {
57
57
  display: inline-block;
58
58
  margin-top: 3px;
59
59
  }
60
60
 
61
- & .predictor-badge__last_updated {
61
+ & .arns-predictor-badge__last_updated {
62
62
  @include govuk-font(16, "regular");
63
63
  color: #6E777A;
64
64
 
@@ -66,30 +66,30 @@ $low-score-colour__text: #485b10;
66
66
  }
67
67
  }
68
68
 
69
- .expanded-predictor-badge--very-high {
70
- @include expanded-predictor-badge-base(
69
+ .arns-expanded-predictor-badge--very-high {
70
+ @include arns-expanded-predictor-badge-base(
71
71
  $very-high-score-colour,
72
72
  $very-high-score-colour--light,
73
73
  $very-high-score-colour__text
74
74
  );
75
75
  }
76
76
 
77
- .expanded-predictor-badge--high {
78
- @include expanded-predictor-badge-base($high-score-colour, $high-score-colour--light, $high-score-colour__text);
77
+ .arns-expanded-predictor-badge--high {
78
+ @include arns-expanded-predictor-badge-base($high-score-colour, $high-score-colour--light, $high-score-colour__text);
79
79
  }
80
80
 
81
- .expanded-predictor-badge--medium {
82
- @include expanded-predictor-badge-base($medium-score-colour, $medium-score-colour--light, $medium-score-colour__text);
81
+ .arns-expanded-predictor-badge--medium {
82
+ @include arns-expanded-predictor-badge-base($medium-score-colour, $medium-score-colour--light, $medium-score-colour__text);
83
83
  }
84
84
 
85
- .expanded-predictor-badge--low {
86
- @include expanded-predictor-badge-base($low-score-colour, $low-score-colour--light, $low-score-colour__text);
85
+ .arns-expanded-predictor-badge--low {
86
+ @include arns-expanded-predictor-badge-base($low-score-colour, $low-score-colour--light, $low-score-colour__text);
87
87
  }
88
88
 
89
- .expanded-predictor-badge__fixed-width {
89
+ .arns-expanded-predictor-badge__fixed-width {
90
90
  width: 259px;
91
91
  }
92
92
 
93
- .expanded-predictor-badge__dynamic {
93
+ .arns-expanded-predictor-badge__dynamic {
94
94
  width: 100%;
95
95
  }
@@ -3,7 +3,7 @@ ARNS Expanded Predictor Badge Component
3
3
 
4
4
  @name expandedPredictorBadge
5
5
 
6
- @description Displays specified risk predictor score badges in an expanded format.
6
+ @description Displays a specified risk predictor score badge in an expanded format.
7
7
  It uses the latest assessment from the provided data set.
8
8
 
9
9
  @example
@@ -12,13 +12,12 @@ In route handler:
12
12
  res.render('page', { riskData })
13
13
 
14
14
  In template:
15
- {% from "components/expanded-badge/macro.njk" import expandedPredictorBadge %}
15
+ {% from "components/expanded-predictor-badge/macro.njk" import expandedPredictorBadge %}
16
16
  {{ expandedPredictorBadge({
17
17
  data: riskData,
18
18
  predictor: "allReoffendingPredictor",
19
19
  showScore: true,
20
- fixedWidth: true,
21
- classes: "class-name-here"
20
+ fixedWidth: true
22
21
  }) }}
23
22
 
24
23
  @param {object} params
@@ -37,35 +36,35 @@ In template:
37
36
  {% set badgeClass = '' %}
38
37
  {% switch predictor.band %}
39
38
  {% case 'VERY HIGH' %}
40
- {% set badgeClass = 'expanded-predictor-badge--very-high' %}
39
+ {% set badgeClass = 'arns-expanded-predictor-badge--very-high' %}
41
40
  {% case 'HIGH' %}
42
- {% set badgeClass = 'expanded-predictor-badge--high' %}
41
+ {% set badgeClass = 'arns-expanded-predictor-badge--high' %}
43
42
  {% case 'MEDIUM' %}
44
- {% set badgeClass = 'expanded-predictor-badge--medium' %}
43
+ {% set badgeClass = 'arns-expanded-predictor-badge--medium' %}
45
44
  {% case 'LOW' %}
46
- {% set badgeClass = 'expanded-predictor-badge--low' %}
45
+ {% set badgeClass = 'arns-expanded-predictor-badge--low' %}
47
46
  {% endswitch %}
48
47
 
49
- {% set staticOrDynamicClass = 'predictor-badge__static_or_dynamic' %}
48
+ {% set staticOrDynamicClass = 'arns-predictor-badge__static_or_dynamic' %}
50
49
  {% if showScore and predictor.band in ['VERY HIGH', 'MEDIUM'] and predictor.staticOrDynamic === 'DYNAMIC' %}
51
- {% set staticOrDynamicClass = staticOrDynamicClass + ' predictor-badge__wrapped_static_or_dynamic' %}
50
+ {% set staticOrDynamicClass = staticOrDynamicClass + ' arns-predictor-badge__wrapped_static_or_dynamic' %}
52
51
  {% endif %}
53
52
 
54
53
  {% if params.fixedWidth or params.fixedWidth is undefined %}
55
- {% set badgeWidthClass = 'expanded-predictor-badge__fixed-width' %}
54
+ {% set badgeWidthClass = 'arns-expanded-predictor-badge__fixed-width' %}
56
55
  {% else %}
57
- {% set badgeWidthClass = 'expanded-predictor-badge__dynamic' %}
56
+ {% set badgeWidthClass = 'arns-expanded-predictor-badge__dynamic' %}
58
57
  {% endif %}
59
58
 
60
59
  <div class="{{ badgeClass }} {{ badgeWidthClass }}">
61
60
  <span
62
- class="predictor-badge__type">{{ predictor.name }}</span>
61
+ class="arns-predictor-badge__type">{{ predictor.name }}</span>
63
62
 
64
- <div class="predictor-badge__stats">
65
- <span class="predictor-badge__level">{{ predictor.band }}</span>
63
+ <div class="arns-predictor-badge__stats">
64
+ <span class="arns-predictor-badge__level">{{ predictor.band }}</span>
66
65
 
67
66
  {% if showScore and predictor.score %}
68
- <span class="predictor-badge__score">{{ predictor.score }}%</span>
67
+ <span class="arns-predictor-badge__score">{{ predictor.score }}%</span>
69
68
  {% endif %}
70
69
 
71
70
  {% if predictor.staticOrDynamic %}
@@ -74,7 +73,7 @@ In template:
74
73
 
75
74
  </div>
76
75
 
77
- <span class="predictor-badge__last_updated">Last updated: {{ predictor.completedDate }}</span>
76
+ <span class="arns-predictor-badge__last_updated">Last updated: {{ predictor.completedDate }}</span>
78
77
 
79
78
  </div>
80
79
  {% endif %}
@@ -11,18 +11,18 @@ $low-score-colour: #85994b;
11
11
  $low-score-colour--light: #dee9bd;
12
12
  $low-score-colour__text: #485b10;
13
13
 
14
- @mixin predictor-badge-base($primary-colour, $secondary-colour, $text-colour) {
14
+ @mixin arns-predictor-badge-base($primary-colour, $secondary-colour, $text-colour) {
15
15
  display: inline-flex;
16
16
  outline: 2px solid $primary-colour;
17
17
 
18
- & .predictor-badge__type_and_level {
18
+ & .arns-predictor-badge__type_and_level {
19
19
  @include govuk-font(19, "regular");
20
20
  color: $text-colour;
21
21
 
22
22
  padding: 2px 10px;
23
23
  }
24
24
 
25
- & .predictor-badge__score {
25
+ & .arns-predictor-badge__score {
26
26
  @include govuk-font(19, "bold");
27
27
  color: govuk-colour("black");
28
28
 
@@ -33,7 +33,7 @@ $low-score-colour__text: #485b10;
33
33
  align-content: center;
34
34
  }
35
35
 
36
- & .predictor-badge__static_or_dynamic {
36
+ & .arns-predictor-badge__static_or_dynamic {
37
37
  @include govuk-font(19, "regular");
38
38
  color: #282D30;
39
39
 
@@ -45,22 +45,22 @@ $low-score-colour__text: #485b10;
45
45
  }
46
46
  }
47
47
 
48
- .predictor-badge--very-high {
49
- @include predictor-badge-base(
48
+ .arns-predictor-badge--very-high {
49
+ @include arns-predictor-badge-base(
50
50
  $very-high-score-colour,
51
51
  $very-high-score-colour--light,
52
52
  $very-high-score-colour__text
53
53
  );
54
54
  }
55
55
 
56
- .predictor-badge--high {
57
- @include predictor-badge-base($high-score-colour, $high-score-colour--light, $high-score-colour__text);
56
+ .arns-predictor-badge--high {
57
+ @include arns-predictor-badge-base($high-score-colour, $high-score-colour--light, $high-score-colour__text);
58
58
  }
59
59
 
60
- .predictor-badge--medium {
61
- @include predictor-badge-base($medium-score-colour, $medium-score-colour--light, $medium-score-colour__text);
60
+ .arns-predictor-badge--medium {
61
+ @include arns-predictor-badge-base($medium-score-colour, $medium-score-colour--light, $medium-score-colour__text);
62
62
  }
63
63
 
64
- .predictor-badge--low {
65
- @include predictor-badge-base($low-score-colour, $low-score-colour--light, $low-score-colour__text);
64
+ .arns-predictor-badge--low {
65
+ @include arns-predictor-badge-base($low-score-colour, $low-score-colour--light, $low-score-colour__text);
66
66
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  @name predictorBadge
5
5
 
6
- @description Displays specified risk predictor score badges.
6
+ @description Displays a specified risk predictor score badge.
7
7
  It uses the latest assessment from the provided data set.
8
8
 
9
9
  @example
@@ -12,12 +12,11 @@
12
12
  res.render('page', { riskData })
13
13
 
14
14
  In template:
15
- {% from "components/badge/macro.njk" import predictorBadge %}
15
+ {% from "components/predictor-badge/macro.njk" import predictorBadge %}
16
16
  {{ predictorBadge({
17
17
  data: riskData,
18
18
  predictor: "allReoffendingPredictor",
19
- showScore: true,
20
- classes: "class-name-here"
19
+ showScore: true
21
20
  }) }}
22
21
 
23
22
  @param {object} params
@@ -35,23 +34,23 @@
35
34
  {% set badgeClass = '' %}
36
35
  {% switch predictor.band %}
37
36
  {% case 'VERY HIGH' %}
38
- {% set badgeClass = 'predictor-badge--very-high' %}
37
+ {% set badgeClass = 'arns-predictor-badge--very-high' %}
39
38
  {% case 'HIGH' %}
40
- {% set badgeClass = 'predictor-badge--high' %}
39
+ {% set badgeClass = 'arns-predictor-badge--high' %}
41
40
  {% case 'MEDIUM' %}
42
- {% set badgeClass = 'predictor-badge--medium' %}
41
+ {% set badgeClass = 'arns-predictor-badge--medium' %}
43
42
  {% case 'LOW' %}
44
- {% set badgeClass = 'predictor-badge--low' %}
43
+ {% set badgeClass = 'arns-predictor-badge--low' %}
45
44
  {% endswitch %}
46
45
  <div class="{{ badgeClass }}">
47
- <span class="predictor-badge__type_and_level">{{ predictor.name | upper }} <strong>{{ predictor.band }}</strong></span>
46
+ <span class="arns-predictor-badge__type_and_level">{{ predictor.name | upper }} <strong>{{ predictor.band }}</strong></span>
48
47
 
49
48
  {% if showScore and predictor.score %}
50
- <span class="predictor-badge__score">{{ predictor.score }}%</span>
49
+ <span class="arns-predictor-badge__score">{{ predictor.score }}%</span>
51
50
  {% endif %}
52
51
 
53
52
  {% if predictor.staticOrDynamic %}
54
- <span class="predictor-badge__static_or_dynamic">{{ predictor.staticOrDynamic }}</span>
53
+ <span class="arns-predictor-badge__static_or_dynamic">{{ predictor.staticOrDynamic }}</span>
55
54
  {% endif %}
56
55
  </div>
57
56
  {% endif %}
@@ -0,0 +1,357 @@
1
+ $very-high-score-colour: #942514;
2
+ $very-high-score-colour--light: #ffac9f;
3
+ $very-high-score-colour__text: #711a0d;
4
+ $high-score-colour: #d4351c;
5
+ $high-score-colour--light: #f6d7d2;
6
+ $high-score-colour__text: #942514;
7
+ $medium-score-colour: #f47738;
8
+ $medium-score-colour--light: #f9e8bd;
9
+ $medium-score-colour__text: #a34e00;
10
+ $low-score-colour: #85994b;
11
+ $low-score-colour--light: #dee9bd;
12
+ $low-score-colour__text: #485b10;
13
+ $border-colour: #B1B4B6;
14
+
15
+ @mixin arns-scale-marker-card-colour($primary-colour, $secondary-colour, $text-colour) {
16
+ & .arns-scale-marker__card {
17
+ border: 2px solid $primary-colour;
18
+
19
+ & .arns-scale-marker__card-top {
20
+ & h3,
21
+ & p {
22
+ color: $text-colour;
23
+ }
24
+ }
25
+
26
+ & .arns-scale-marker__card-bottom {
27
+ background-color: $secondary-colour;
28
+ }
29
+
30
+ & .arns-scale-marker__card-pointer {
31
+ border-top: 16px solid $primary-colour;
32
+ }
33
+
34
+ & .arns-scale-marker__card-pointer::after {
35
+ border-top: 14px solid $secondary-colour;
36
+ }
37
+ }
38
+ }
39
+
40
+ @mixin arns-scale-bar-label {
41
+ position: relative;
42
+ text-align: center;
43
+ display: block;
44
+ color: govuk-colour("black");
45
+ }
46
+
47
+ @mixin arns-scale-bar-base {
48
+ width: 100%;
49
+
50
+ &::after {
51
+ content: "";
52
+ display: block;
53
+ visibility: hidden;
54
+ clear: both;
55
+ }
56
+
57
+ & > div > span {
58
+ height: 15px;
59
+ display: block;
60
+ }
61
+ }
62
+
63
+ .arns-predictor-scale-header-wrapper{
64
+ display: flex;
65
+ justify-content: space-between;
66
+ }
67
+
68
+ .arns-predictor-scale {
69
+ width: 100%;
70
+ padding: 30px 40px 10px;
71
+ box-sizing: border-box;
72
+ border: 1px solid $border-colour;
73
+ }
74
+
75
+ .arns-scale-marker__card-pointer {
76
+ width: 0;
77
+ height: 0;
78
+ border-right: 16px solid transparent;
79
+ border-left: 16px solid transparent;
80
+ border-top: 16px solid govuk-colour("black");
81
+ position: relative;
82
+ top: 0;
83
+ left: 23px;
84
+ float: left;
85
+ }
86
+
87
+ .arns-scale-marker__card-pointer--white::after {
88
+ border-top: 14px solid govuk-colour("white") !important;
89
+ }
90
+
91
+ .arns-scale-marker__card-pointer::after {
92
+ width: 0;
93
+ height: 0;
94
+ border-right: 14px solid transparent;
95
+ border-left: 14px solid transparent;
96
+ border-top: 14px solid govuk-colour("white");
97
+ position: absolute;
98
+ top: -17px;
99
+ left: -14px;
100
+ content: "";
101
+ }
102
+
103
+ .arns-scale-marker {
104
+ margin-bottom: 22px;
105
+ width: 100%;
106
+ }
107
+
108
+ .arns-scale-marker-wrapper--position-one-of-three,
109
+ .arns-scale-marker-wrapper--position-two-of-three,
110
+ .arns-scale-marker-wrapper--position-three-of-three {
111
+ width: 33%;
112
+ }
113
+
114
+ .arns-scale-marker-wrapper--position-one-of-three {
115
+ margin-left: 0;
116
+ }
117
+
118
+ .arns-scale-marker-wrapper--position-two-of-three {
119
+ margin-left: 34%;
120
+ }
121
+
122
+ .arns-scale-marker-wrapper--position-three-of-three {
123
+ margin-left: 67%;
124
+ }
125
+
126
+ .arns-scale-marker-wrapper--position-one-of-four,
127
+ .arns-scale-marker-wrapper--position-two-of-four,
128
+ .arns-scale-marker-wrapper--position-three-of-four,
129
+ .arns-scale-marker-wrapper--position-four-of-four {
130
+ width: 25%;
131
+ }
132
+
133
+ .arns-scale-marker-wrapper--position-one-of-four {
134
+ margin-left: 0;
135
+ }
136
+
137
+ .arns-scale-marker-wrapper--position-two-of-four {
138
+ margin-left: 25%;
139
+ }
140
+
141
+ .arns-scale-marker-wrapper--position-three-of-four {
142
+ margin-left: 50%;
143
+ }
144
+
145
+ .arns-scale-marker-wrapper--position-four-of-four {
146
+ margin-left: 75%;
147
+ }
148
+
149
+ .arns-scale-marker-wrapper--very-high {
150
+ @include arns-scale-marker-card-colour(
151
+ $very-high-score-colour,
152
+ $very-high-score-colour--light,
153
+ $very-high-score-colour__text
154
+ );
155
+ }
156
+
157
+ .arns-scale-marker-wrapper--high {
158
+ @include arns-scale-marker-card-colour($high-score-colour, $high-score-colour--light, $high-score-colour__text);
159
+ }
160
+
161
+ .arns-scale-marker-wrapper--medium {
162
+ @include arns-scale-marker-card-colour($medium-score-colour, $medium-score-colour--light, $medium-score-colour__text);
163
+ }
164
+
165
+ .arns-scale-marker-wrapper--low {
166
+ @include arns-scale-marker-card-colour($low-score-colour, $low-score-colour--light, $low-score-colour__text);
167
+ }
168
+
169
+ .arns-scale-marker__card {
170
+ width: 78px;
171
+ bottom: 30px;
172
+ margin: 0 auto;
173
+ background-color: govuk-colour("white");
174
+ border: 2px solid govuk-colour("black");
175
+ }
176
+
177
+ .arns-scale-marker__card-top {
178
+ width: 100%;
179
+
180
+ & h3,
181
+ & p {
182
+ margin: 0;
183
+ text-align: center;
184
+ text-transform: uppercase;
185
+ }
186
+
187
+ & h3 {
188
+ @include govuk-font(14, "bold");
189
+ }
190
+
191
+ & p {
192
+ @include govuk-font(14, "regular");
193
+ }
194
+ }
195
+
196
+ .arns-scale-marker__card-bottom p {
197
+ @include govuk-font(14, "bold");
198
+
199
+ margin: 0;
200
+ }
201
+
202
+ .arns-scale-marker__card-top,
203
+ .arns-scale-marker__card-bottom {
204
+ padding: 3px;
205
+ text-align: center;
206
+ box-sizing: border-box;
207
+ }
208
+
209
+ .arns-scale-bar--small {
210
+ @include arns-scale-bar-base;
211
+
212
+ margin-bottom: 15px;
213
+
214
+ & > div {
215
+ width: 33%;
216
+ display: inline;
217
+ float: left;
218
+ border-right: 1px solid transparent;
219
+ box-sizing: border-box;
220
+ }
221
+
222
+ & > div:nth-child(4n + 1) > span:first-child {
223
+ &::after{
224
+ @include govuk-font(16);
225
+ @include arns-scale-bar-label;
226
+
227
+ content:"LOW";
228
+ bottom: -15px;
229
+ color: $govuk-secondary-text-colour;
230
+ }
231
+ background-color: $low-score-colour;
232
+ }
233
+
234
+ & > div:nth-child(4n + 2) > span:first-child {
235
+ &::after{
236
+ @include govuk-font(16);
237
+ @include arns-scale-bar-label;
238
+
239
+ content:"MEDIUM";
240
+ bottom: -15px;
241
+ color: $govuk-secondary-text-colour;
242
+ }
243
+ background-color: $medium-score-colour;
244
+ }
245
+
246
+ & > div:nth-child(4n + 3) > span:first-child {
247
+ &::after{
248
+ @include govuk-font(16);
249
+ @include arns-scale-bar-label;
250
+
251
+ content:"HIGH";
252
+ bottom: -15px;
253
+ color: $govuk-secondary-text-colour;
254
+ }
255
+ background-color: $high-score-colour;
256
+ }
257
+ }
258
+
259
+ .arns-scale-bar--small-fourths {
260
+ & > div {
261
+ width: 25%;
262
+ padding-bottom: 20px;
263
+ }
264
+
265
+ & > div:nth-child(4n + 4) > span:first-child {
266
+ &::after{
267
+ @include govuk-font(16);
268
+ @include arns-scale-bar-label;
269
+
270
+ content:"VERY HIGH";
271
+ bottom: -15px;
272
+ color: $govuk-secondary-text-colour;
273
+ }
274
+ background-color: $very-high-score-colour;
275
+ }
276
+ }
277
+
278
+ .arns-scale-bar {
279
+ @include arns-scale-bar-base;
280
+ margin-bottom: 50px;
281
+ display: block;
282
+ clear: both;
283
+
284
+ & > div {
285
+ width: 33.33%;
286
+ height: 30px;
287
+ float: left;
288
+ border-right: 1px solid govuk-colour("black");
289
+ box-sizing: border-box;
290
+ position: relative;
291
+
292
+ &:first-child {
293
+ border-left: 1px solid govuk-colour("black");
294
+ }
295
+
296
+ & > span:first-child {
297
+ display: block;
298
+ width: 100%;
299
+ position: relative;
300
+
301
+ &::after {
302
+ @include govuk-font(16);
303
+ @include arns-scale-bar-label;
304
+ position: absolute;
305
+ bottom: -20px;
306
+ left: 50%;
307
+ transform: translateX(-50%);
308
+ white-space: nowrap;
309
+ color: $govuk-secondary-text-colour;
310
+ }
311
+ }
312
+
313
+ &::after {
314
+ @include govuk-font(16);
315
+ @include arns-scale-bar-label;
316
+ content: attr(data-band-percentage);
317
+ position: absolute;
318
+ bottom: -25px;
319
+ right: 0;
320
+ transform: translateX(50%);
321
+ white-space: nowrap;
322
+ }
323
+
324
+ &:first-child::before {
325
+ @include govuk-font(16);
326
+ @include arns-scale-bar-label;
327
+ content: attr(data-band-percentage-start);
328
+ position: absolute;
329
+ bottom: -25px;
330
+ left: 0;
331
+ transform: translateX(-50%);
332
+ white-space: nowrap;
333
+ }
334
+ }
335
+
336
+ & > div:nth-child(1) {
337
+ & > span:first-child { background-color: $low-score-colour; &::after { content: "LOW"; } }
338
+ }
339
+ & > div:nth-child(2) {
340
+ & > span:first-child { background-color: $medium-score-colour; &::after { content: "MEDIUM"; } }
341
+ }
342
+ & > div:nth-child(3) {
343
+ & > span:first-child { background-color: $high-score-colour; &::after { content: "HIGH"; } }
344
+ }
345
+ }
346
+
347
+ .arns-scale-bar--fourths {
348
+ & > div {
349
+ width: 25% !important;
350
+ }
351
+ & > div:nth-child(4) {
352
+ & > span:first-child {
353
+ background-color: $very-high-score-colour;
354
+ &::after { content: "VERY HIGH"; }
355
+ }
356
+ }
357
+ }
@@ -0,0 +1,3 @@
1
+ {% macro predictorScale(params) %}
2
+ {%- include "./template.njk" -%}
3
+ {% endmacro %}
@@ -0,0 +1,156 @@
1
+ {#
2
+ ARNS Predictor Scale Component
3
+
4
+ @name predictorScale
5
+
6
+ @description Displays a specified risk predictor scale.
7
+
8
+ @example
9
+ In route handler:
10
+ const riskData = await arnsComponents.getRiskData(token, 'crn', 'X123456')
11
+ res.render('page', { riskData })
12
+
13
+ In template:
14
+ {% from "components/predictor-scale/macro.njk" import predictorScale %}
15
+ {{ predictorScale({
16
+ data: riskData,
17
+ predictor: "allReoffendingPredictor"
18
+ }) }}
19
+
20
+ @param {object} params
21
+ @param {RiskData} params.data - Risk data object from ArnsComponents.getRiskData() containing an 'assessments' array
22
+ @param {string} params.predictor - The name of the specific predictor to display
23
+ #}
24
+ {%- from "govuk/components/tag/macro.njk" import govukTag -%}
25
+ {% set latestAssessment = params.data.assessments | first if params.data.assessments else null %}
26
+
27
+ {% macro predictorScaleMarker(predictor, showScore) %}
28
+ <div class="arns-scale-marker__card">
29
+ <div class="arns-scale-marker__card-top">
30
+ <h3>{{ predictor.band }}</h3>
31
+ </div>
32
+ {% if showScore and predictor.score %}
33
+ <div class="arns-scale-marker__card-bottom">
34
+ <p>{{ predictor.score }}%</p>
35
+ </div>
36
+ <div class="arns-scale-marker__card-pointer"></div>
37
+ {% else %}
38
+ <div class="arns-scale-marker__card-pointer arns-scale-marker__card-pointer--white"></div>
39
+ {% endif %}
40
+ </div>
41
+ {% endmacro %}
42
+
43
+ {% if latestAssessment %}
44
+ {% for key, predictor in latestAssessment %}
45
+ {% if key == params.predictor %}
46
+
47
+ {% set includeVeryHigh = true %}
48
+ {% set showScore = true %}
49
+ {% set includePercentage = true %}
50
+ {% set bandThresholdPercentages = [] %}
51
+
52
+ {% switch key %}
53
+ {% case 'allReoffendingPredictor' %}{% case 'ogrs3' %}
54
+ {% set bandThresholdPercentages = ['0%', '50%', '75%', '90%', '100%'] %}
55
+ {% case 'violentReoffendingPredictor' %}{% case 'ovp' %}
56
+ {% set bandThresholdPercentages = ['0%', '30%', '60%', '80%', '100%'] %}
57
+ {% case 'seriousViolentReoffendingPredictor' %}
58
+ {% set showScore = false %}
59
+ {% set includePercentage = false %}
60
+ {% case 'directContactSexualReoffendingPredictor' %}{% case 'ospdc' %}
61
+ {% set showScore = false %}
62
+ {% set includePercentage = false %}
63
+ {% case 'indirectImageContactSexualReoffendingPredictor' %}{% case 'ospiic' %}
64
+ {% set includeVeryHigh = false %}
65
+ {% set showScore = false %}
66
+ {% set includePercentage = false %}
67
+ {% case 'combinedSeriousReoffendingPredictor' %}
68
+ {% set bandThresholdPercentages = ['0%', '1%', '3%', '6.9%', '25%+'] %}
69
+ {% case 'ogp' %}
70
+ {% set bandThresholdPercentages = ['0%', '34%', '67%', '85%', '100%'] %}
71
+ {% case 'rsr' %}
72
+ {% set includeVeryHigh = false %}
73
+ {% set bandThresholdPercentages = ['0%', '3%', '6.9%', '25%+'] %}
74
+ {% endswitch %}
75
+
76
+ {% set scaleMarkerClass = '' %}
77
+
78
+ {% if includeVeryHigh !== true %}
79
+ {% switch predictor.band %}
80
+ {% case 'LOW' %}
81
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--low arns-scale-marker-wrapper--position-one-of-three' %}
82
+ {% case 'MEDIUM' %}
83
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--medium arns-scale-marker-wrapper--position-two-of-three' %}
84
+ {% case 'HIGH' %}
85
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--high arns-scale-marker-wrapper--position-three-of-three' %}
86
+ {% endswitch %}
87
+ {% else %}
88
+ {% switch predictor.band %}
89
+ {% case 'LOW' %}
90
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--low arns-scale-marker-wrapper--position-one-of-four' %}
91
+ {% case 'MEDIUM' %}
92
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--medium arns-scale-marker-wrapper--position-two-of-four' %}
93
+ {% case 'HIGH' %}
94
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--high arns-scale-marker-wrapper--position-three-of-four' %}
95
+ {% case 'VERY HIGH' %}
96
+ {% set scaleMarkerClass = 'arns-scale-marker-wrapper--very-high arns-scale-marker-wrapper--position-four-of-four' %}
97
+ {% endswitch %}
98
+ {% endif %}
99
+
100
+ {% set barTypeClass = '' %}
101
+
102
+ {% if includeVeryHigh !== true and includePercentage !== true %}
103
+ {% set barTypeClass = 'arns-scale-bar--small' %}
104
+ {% elif includeVeryHigh === true and includePercentage !== true %}
105
+ {% set barTypeClass = 'arns-scale-bar--small arns-scale-bar--small-fourths' %}
106
+ {% elif includeVeryHigh === true and includePercentage === true %}
107
+ {% set barTypeClass = 'arns-scale-bar arns-scale-bar--fourths' %}
108
+ {% elif includeVeryHigh !== true and includePercentage === true %}
109
+ {% set barTypeClass = 'arns-scale-bar' %}
110
+ {% endif %}
111
+
112
+ {% if predictor.band === 'NOT APPLICABLE' %}
113
+ <div class="arns-predictor-scale govuk-body">
114
+ <h2 class="govuk-heading-m">{{ predictor.name }}</h2>
115
+ <p class="govuk-body">Not applicable</p>
116
+ </div>
117
+ {% else %}
118
+ <div class="arns-predictor-scale govuk-body">
119
+ <div class="arns-predictor-scale-header-wrapper">
120
+ <div>
121
+ <h2 class="govuk-heading-m">{{ predictor.name }}</h2>
122
+ <p class="govuk-hint">Last updated: {{ predictor.completedDate }}</p>
123
+ </div>
124
+ {% if predictor.staticOrDynamic %}
125
+ <div>{{ govukTag({ text: predictor.staticOrDynamic, classes: "govuk-tag--grey"}) }}</div>
126
+ {% endif %}
127
+ </div>
128
+
129
+ <div class="arns-scale-marker">
130
+ <div class="{{ scaleMarkerClass }}">
131
+ {{ predictorScaleMarker(predictor, showScore) }}
132
+ </div>
133
+ </div>
134
+
135
+ <div class="{{ barTypeClass }}">
136
+ <div data-band-percentage-start="{{ bandThresholdPercentages[0] }}" data-band-percentage="{{ bandThresholdPercentages[1] }}">
137
+ <span></span>
138
+ </div>
139
+ <div data-band-percentage="{{ bandThresholdPercentages[2] }}">
140
+ <span></span>
141
+ </div>
142
+ <div data-band-percentage="{{ bandThresholdPercentages[3] }}">
143
+ <span></span>
144
+ </div>
145
+ {% if includeVeryHigh === true %}
146
+ <div data-band-percentage="{{ bandThresholdPercentages[4] }}">
147
+ <span></span>
148
+ </div>
149
+ {% endif %}
150
+ </div>
151
+ </div>
152
+ {% endif %}
153
+
154
+ {% endif %}
155
+ {% endfor %}
156
+ {% endif %}
package/dist/index.cjs.js CHANGED
@@ -79,5 +79,14 @@ class ArnsComponents {
79
79
  }
80
80
  }
81
81
 
82
+ const arnsNunjucksSetup = (env) => {
83
+ // TODO update with required globals and filters
84
+ env.addGlobal('testGlobal', 'This is a test global');
85
+ env.addFilter('testFilter', (inputString) => {
86
+ return inputString.toUpperCase();
87
+ });
88
+ };
89
+
82
90
  exports.ArnsComponents = ArnsComponents;
91
+ exports.arnsNunjucksSetup = arnsNunjucksSetup;
83
92
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/transformers/AllPredictorVersionedDtoToAssessmentsTransformer.ts","../src/ArnsComponents.ts"],"sourcesContent":[null,null],"names":["RestClient"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/transformers/AllPredictorVersionedDtoToAssessmentsTransformer.ts","../src/ArnsComponents.ts","../src/NunjucksSetup.ts"],"sourcesContent":[null,null,null],"names":["RestClient"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { ApiConfig, AuthOptions } from '@ministryofjustice/hmpps-rest-client';
2
2
  import { AuthenticationClient } from '@ministryofjustice/hmpps-auth-clients';
3
3
  import Logger from 'bunyan';
4
+ import { Environment } from 'nunjucks';
4
5
 
5
6
  interface ArnsComponentsConfig extends ApiConfig {
6
7
  }
@@ -47,5 +48,7 @@ declare class ArnsComponents {
47
48
  getRiskData(authOptions: AuthOptions | string, identifierType: string, identifierValue: string): Promise<RiskData>;
48
49
  }
49
50
 
50
- export { ArnsComponents };
51
+ declare const arnsNunjucksSetup: (env: Environment) => void;
52
+
53
+ export { ArnsComponents, arnsNunjucksSetup };
51
54
  export type { ArnsComponentsConfig, Assessments, RiskData };
package/dist/index.esm.js CHANGED
@@ -77,5 +77,13 @@ class ArnsComponents {
77
77
  }
78
78
  }
79
79
 
80
- export { ArnsComponents };
80
+ const arnsNunjucksSetup = (env) => {
81
+ // TODO update with required globals and filters
82
+ env.addGlobal('testGlobal', 'This is a test global');
83
+ env.addFilter('testFilter', (inputString) => {
84
+ return inputString.toUpperCase();
85
+ });
86
+ };
87
+
88
+ export { ArnsComponents, arnsNunjucksSetup };
81
89
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/transformers/AllPredictorVersionedDtoToAssessmentsTransformer.ts","../src/ArnsComponents.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/transformers/AllPredictorVersionedDtoToAssessmentsTransformer.ts","../src/ArnsComponents.ts","../src/NunjucksSetup.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ministryofjustice/hmpps-arns-frontend-components-lib",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "ARNS front-end library for risk score visualisations",
5
5
  "main": "./dist/index.cjs.js",
6
6
  "module": "./dist/index.esm.js",