zhangxinyao88 opened a new pull request, #853:
URL: https://github.com/apache/fineract-backoffice-ui/pull/853

   ## What and why
   
   Disabling an Angular form control bound to `app-date-field` left the date 
trigger, picker and clear action enabled. A pending picker event could still 
change the model. Implement the ControlValueAccessor disabled-state hook, 
propagate it through the deferred Ionic trigger, and ignore user events while 
disabled. Re-enabling restores editing; programmatic model writes still work 
while disabled.
   
   Related #684; regression follow-up to #849. This fixes the shared date 
control contract and does not close the broader primitive rollout.
   
   ## Verification
   
   - Fail-before regression: disabling the form left the picker enabled and a 
pending change replaced the model (2 failing tests, 8 existing controls 
passing).
   - Focused DateField/deferred-trigger suite: 15 passed, including queued 
clear/change, re-enable/pick/clear, and programmatic writes while disabled. 
Four regression cases added to the existing DateField suite.
   - Full application Vitest suite in UTC: 329 files / 2,825 tests passed; MFE 
suite: 2 passed.
   - All required baseline checks passed: lint, format, i18n, icons, 
accessibility names, template text, UI boundary, E2E types, API surface, 
license, GA gate and production build. Build retains the existing header 
style-budget warning.
   - Local browser coverage: 2 passed at desktop 1280×900 and phone 390×844 
using an isolated Angular Forms harness with real Ionic components. Checked 
initial disabled state, native trigger/clear, keyboard skipping, programmatic 
writes, re-enable/modal opening and Escape dismissal, clear/unset display and 
overflow.
   - Browser harness is local supporting evidence, not a new upstream E2E spec 
or a full application/backend journey. No live backend or customer data; no NY 
repeat, API regeneration or offline-container run. No generated API, 
dependency, permission or suppression changes.
   
   ## Screenshots
   
   Original synthetic captures of the isolated Angular/Ionic component harness 
after a programmatic write while disabled (not a production banking screen):
   
   Desktop:
   ![Disabled date control, 
desktop](https://raw.githubusercontent.com/zhangxinyao88/fineract-backoffice-ui/7d887b5949250b49cde7699f88e8449eedc6c4ff/DOCS/review/684/desktop.png)
   
   Phone:
   ![Disabled date control, 
phone](https://raw.githubusercontent.com/zhangxinyao88/fineract-backoffice-ui/7d887b5949250b49cde7699f88e8449eedc6c4ff/DOCS/review/684/phone.png)
   
   ## AI assistance
   
   - Tool: OpenAI Codex.
   - Workflow: current-head regression reproduction, shared-component fix, 
signed commit, focused/full tests, required repository checks, and local 
real-Ionic browser coverage. Contributor reviewed the diff and screenshots.
   
   ## Checklist
   
   - [x] No hand-edited generated API files.
   - [x] Existing adapter/component boundaries preserved; no new browser 
globals or imperative third-party APIs in production code.
   - [x] No new user-facing strings.
   - [x] Regression tests added.
   - [x] Suitable component browser coverage; backend testing is not relevant 
to this CVA state contract.
   - [x] Commits signed.
   - [x] Followed AI-assisted contribution guidance.
   - [x] Bug fix; no new feature or workflow proposal requiring a mailing-list 
decision.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to