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

   ## What and why
   
   Shared custom-field tabs now use an app-owned component and test contract. 
Arrow keys move focus without fetching a table; Enter/Space activates the 
selected table. Native buttons and CDK handle keyboard navigation, disabled 
items and RTL, while the feature receives a table-name string and owns loading 
the panel.
   
   This also establishes the first migration increment from #530: ADR 0005 
specifies the complete component/CVA value, keyboard/ARIA, browser-helper, 
theming and rollout contracts; the Ionic import ratchet records existing use 
while rejecting new unsuppressed dependencies outside UI implementations. 
Existing Material/i18n restrictions and other-rule allowances are preserved. 
AGENTS.md and STYLE.md direct new feature/shared code through app/ui.
   
   Refs #530. Remaining tab strips, popup controls, form CVAs, cosmetic 
primitives, deployment-token expansion and legacy browser helpers remain under 
the overall migration issue. This PR delivers the boundary and one 
independently verifiable behavioural primitive; it does not close that issue.
   
   ## Verification
   
   - Final head: `e992e9b88315455bcd310dc6941946e3804f7e49`.
   - Local: 17 rendered Angular unit/integration tests and 3 ESLint boundary 
tests passed. App/E2E TypeScript checks, changed-source ESLint, formatting and 
git diff checks passed. Other lint-rule allowances were compared with the base 
and preserved.
   - Full fork 
[CI](https://github.com/FenjuFu/fineract-backoffice-ui/actions/runs/34444465337)
 passed on this head, including full unit suites, full lint/suppression 
pruning, production/container builds, API drift, translations, security, GA and 
license/RAT checks.
   - Full fork 
[E2E](https://github.com/FenjuFu/fineract-backoffice-ui/actions/runs/34444461409)
 passed on the same head: all mocked and real-Fineract shards, mobile and 
two-factor authentication. The new custom-field cases exercise the app-owned 
keyboard/panel contract at 1280px and 390px; they use mocked group data and 
attach screenshots after loading completes.
   - All three PR commits have matching FenjuFu noreply sign-offs and valid 
GitHub signatures. No generated API files were hand-edited.
   
   ## Screenshots
   
   Unmodified image attachments from the passing new CI browser cases, showing 
the custom-field region after the panel finishes loading. Screenshots are 
stored on a separate review branch.
   
   <details>
   <summary>Desktop, 1280px viewport</summary>
   
   ![App-owned custom-field tabs on 
desktop](https://raw.githubusercontent.com/FenjuFu/fineract-backoffice-ui/5563f4dbcebabaefa90121ed8c85bbda05ef6e93/review-artifacts/ui-tabs-desktop.png)
   
   </details>
   
   <details>
   <summary>Narrow, 390px viewport</summary>
   
   ![App-owned custom-field tabs on a narrow 
viewport](https://raw.githubusercontent.com/FenjuFu/fineract-backoffice-ui/5563f4dbcebabaefa90121ed8c85bbda05ef6e93/review-artifacts/ui-tabs-mobile.png)
   
   </details>
   
   ## AI assistance (optional)
   
   - Tool: Codex.
   - Harness / workflow: assisted implementation and review, targeted local 
checks, and full fork GitHub Actions validation.
   
   ## Checklist
   
   - [x] I did not hand-edit generated files under src/app/api/.
   - [x] Feature translation uses the core adapter; DOM/focus behaviour is 
confined to the app/ui primitive.
   - [x] User-facing static strings use translation keys; registered table 
names remain user data.
   - [x] Added rendered unit, import-boundary and browser contract tests.
   - [x] UI changes have browser coverage; full mocked and real-backend suites 
passed.
   - [x] Commits are signed and contain matching sign-offs.
   - [x] Followed the [AI-assisted contributions 
guidance](https://github.com/apache/fineract-backoffice-ui/blob/main/CONTRIBUTING.md#ai-assisted-contributions).
   


-- 
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