From 5da313a5480db011374ffd236159e2aedc011b97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Ku=CC=88hn?= Date: Mon, 8 Nov 2021 21:27:46 +0100 Subject: [PATCH] fix: fix a bug when parsing attributes if no parseHTML method is provided, fix #2058 --- packages/core/src/utilities/fromString.ts | 2 +- tests/cypress/integration/core/fromString.spec.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/core/src/utilities/fromString.ts b/packages/core/src/utilities/fromString.ts index ac8bcdeb..b07c6025 100644 --- a/packages/core/src/utilities/fromString.ts +++ b/packages/core/src/utilities/fromString.ts @@ -3,7 +3,7 @@ export default function fromString(value: any): any { return value } - if (value.match(/^\d*(\.\d+)?$/)) { + if (value.match(/^[+-]?(?:\d*\.)?\d+$/)) { return Number(value) } diff --git a/tests/cypress/integration/core/fromString.spec.ts b/tests/cypress/integration/core/fromString.spec.ts index ce4c310f..b28d3ea9 100644 --- a/tests/cypress/integration/core/fromString.spec.ts +++ b/tests/cypress/integration/core/fromString.spec.ts @@ -9,6 +9,12 @@ describe('fromString', () => { expect(value).to.eq('test') }) + it('should return an empty string', () => { + const value = fromString('') + + expect(value).to.eq('') + }) + it('should convert to a number', () => { const value = fromString('1')