Skip to content

Commit 3107fa3

Browse files
Make sure unsupported config property types are dropped
1 parent c63ab0b commit 3107fa3

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

packages/nhsuk-frontend/src/nhsuk/common/configuration/normalise-string.jsdom.test.mjs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -147,11 +147,11 @@ describe('normaliseString', () => {
147147

148148
// Arrays in strings are ignored even with schema property type
149149
expect(normaliseString(inputArray)).toBe(inputArray)
150-
expect(normaliseString(inputArray, { type: 'array' })).toBe(inputArray)
150+
expect(normaliseString(inputArray, { type: 'array' })).toBeUndefined()
151151

152152
// Objects in strings are ignored even with schema property type
153153
expect(normaliseString(inputObject)).toBe(inputObject)
154-
expect(normaliseString(inputObject, { type: 'object' })).toBe(inputObject)
154+
expect(normaliseString(inputObject, { type: 'object' })).toBeUndefined()
155155
})
156156
})
157157

packages/nhsuk-frontend/src/nhsuk/common/configuration/normalise-string.mjs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@
1414
* @returns Normalised data
1515
*/
1616
export function normaliseString(value, property) {
17-
if (!isValid(value)) {
17+
if (
18+
!isValid(value) ||
19+
(property?.type && !['string', 'number', 'boolean'].includes(property.type))
20+
) {
1821
return
1922
}
2023

0 commit comments

Comments
 (0)