Refactor RJSF number handling
- Dominant language
- No language data
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
#### Description of the Tech Debt
We currently have both text and number handling in our custom TextWidget, which rjsf uses by default for anything with type "string" or "number." RJSF doesn't have a default NumberWidget we can override, so if we want to use a custom number widget, we'd have to go add that to uiSchema everywhere (this is what's done in CIF).
To-dos
- [ ] decide if we want to keep handling both string and number types in the TextWidget, or switch to a NumberWidget. Ideally, there's a way to make rjsf use this widget by default for anything with type: number. (NumberField is probably not the solution as we only care about rendering, not how the field actually works.)
#### Tech Debt Triage
The purpose of our technical debt triage process is to analyze technical debt to determine risk level of the technical debt and the value in tackling that technical debt.
#### Risk Value Scoring:
| Level | Value |
| ------ | --------------------- |
| High |
| Medium |
| Low |
| Technical Debt - Risk Types | Level | Value |
| ----------------------------------------------------------------------------------------------------------------------------- | ----- | ----- |
| Business Area Risk - Risk of business area visibility / damage to user experience | 0 | 0 |
| Developer Fault Risk - How likely will this tech debt cause a future error related to coding on top of it | 0 | 0 |
| System Fault Risk - Risk of system errors or application downtime | 0 | 0 |
| Time Scale Risk - Compound risk effect if left alone. How much more difficult to fix or dangerous will this become over time? | 0 | 0 |
| Time Sink Risk - How much will this tech debt slow the development process down | 0 | 0 |
|
#### Development Checklist:
- [ ] Checklist item
- [ ] Checklist item
- [ ] Checklist item
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the custom TextWidget and the uiSchema usage mentioned in the issue, then compare the proposed NumberWidget and NumberField approaches. Done means documenting and implementing a clear decision for how number types should be rendered by default.
Written by the indexing model from the issue text.
Assessment
- Domain
- frontend
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100