Thinkmill / Thinkmill/keystatic
textfield: don't validate with `pattern.regex` when `isRequired: false`
Open
Nobody has claimed this yet.
enhancement
- Dominant language
- TypeScript
- Stars
- 2.4k
- Forks
- 159
- Avg merge
- 21h 41m
- Merged PRs (30d)
- 2
Description
when a text field has the following validation:
fields.text({
label: "Twitter",
validation: { isRequired: false, pattern: { regex: /^@.+/, message: "Must start with '@'." } },
})
i had expected that the regex pattern would only be checked when the optional field had a text value, but not when it is left empty.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the fields.text API and its validation handling, using the example to reproduce an optional field with an empty value and a nonmatching value. Done means an empty optional text field bypasses pattern.regex while a supplied value is still checked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100