Edit UI - Reactivity issue of Limited Restoration Extensions
- Dominant language
- JavaScript
- Stars
- 23
- Forks
- 62
- Avg merge
- 24m
- Merged PRs (30d)
- 1
Description
As it currently stands, although the following block of code in `LimitedRestorationExtension.vue` works, it is not ideal and might not make sense.

The reason it's there is because of the following issues:
- When we set the state filing then parse it, the template was rendering before we were able to set approval type court order file number. So when we try to continue a draft, the text field shows empty since we were getting null. When we parse then set, this fixed the problem.
- When we create a new limited restoration extension, we have no expiry date. When we parse then set; in the `parseRestorationFiling` method in `filing-template-mixin.ts`, there was a problem.
```javascript
if (filing.restoration.expiry) {
this.mutateRestorationExpiry(filing.restoration.expiry)
} else {
// Reset radio button to 2 years
this.mutateRestorationExpiry(DateUtilities.addMonthsToDate(24, this.getStateFilingRestoration?.expiry))
}
```
`this.getStateFilingRestoration?.expiry` was returning null.
Need to handle:
- [ ] Fix and handle this reactivity issue by fixing the root cause of it.
- [ ] Test and make sure all scenarios are working (creating/editing a draft, court order/registrar state filing etc..).
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in LimitedRestorationExtension.vue and trace the state initialization and rendering flow into filing-template-mixin.ts, especially parseRestorationFiling. Reproduce creating and continuing a draft, including court order and registrar state filings, then verify that approval type, court order file number, and expiry values render correctly in each scenario.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100