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')