edmundhung / conform

A type-safe form validation library utilizing web fundamentals to progressively enhance HTML Forms with full support for server frameworks like Remix and Next.js.
https://conform.guide
MIT License
1.8k stars 101 forks source link

Found TypeError: Cannot create property on string #670

Open novikovfred opened 3 months ago

novikovfred commented 3 months ago

Describe the bug and the expected behavior

If we first pass an immutable object in the url parameters and then try to add a property to it, we get the TypeError: Cannot create property on string. I expect that the library will not return an error and will give the first values it finds when unpacking.

Conform version

v1.1.4

Steps to Reproduce the Bug or Issue


import { parseWithZod } from '@conform-to/zod'
import { z } from 'zod'

const someSchema = z.object({
 someNumber: z.number().min(1).optional(),
 someString: z.string().min(1).optional(),
})

const url = new URL('http://localhost/smth?c=name&c.A=somea')
const parsed = parseWithZod(url.searchParams, {
    schema: someSchema,
})

console.log(parsed)
novikovfred commented 3 months ago

https://github.com/edmundhung/conform/pull/671