Backend Metadata to Frontend Table Actions Source Reading Map
This page is a practical source-reading companion for one narrow fullstack question:
if I need to trace one Student row-action chain across backend metadata, generated contract follow-up, and frontend action resources, which files should I open first, and in what order?
Use this page together with:
- Backend Metadata to Frontend Table Actions
- Backend OpenAPI to Frontend SDK
- Frontend Metadata Back to Backend
- TableCell Authoring Cookbook
- Table + Resource CRUD Cookbook
- Table Action Visibility and Permission Flow Guide
TIP
Mixed-chain reading path
- Backend Metadata to Frontend Table Actions — understand the mixed contract chain conceptually
- Backend Metadata to Frontend Table Actions Source Reading Map — trace the same Student row-action chain in file order
You are here: step 2. Previous recommended page: Backend Metadata to Frontend Table Actions.
Why this page exists
The current mixed-chain explainer page already answers the conceptual question well:
- backend metadata chooses frontend action resources
- generated API/model follow-up can join that same thread when custom actions need backend endpoints
- the visible row action is only the last step of the chain
What it does not isolate directly is the shortest source-order path through one real Student row-action thread.
This page fills that gap.
It is a file-order map, not another runtime explainer.
How to use this page
For the two paths below:
- start with the conceptual mixed-chain page first
- read the first source file to identify the current source of truth
- follow the handoff only until you can answer the question you actually have
- stop before you drift into deeper table/runtime internals unless they are really needed
1. Built-in row-action chain
Use this path when your question is about:
- how one built-in row action becomes visible
- how
actionOperationsRowcomposes visible child actions - where backend metadata stops and frontend action resources start
Read the docs first
- Backend Metadata to Frontend Table Actions
- Table Action Visibility and Permission Flow Guide
- TableCell Authoring Cookbook
Then read source in this order
vona/src/suite/a-training/modules/training-student/src/dto/studentSelectResItem.tsxzova/src/suite/cabloy-basic/modules/basic-table/src/bean/tableCell.actionOperationsRow.tsxzova/src/suite/cabloy-basic/modules/basic-page/src/component/blockPage/controller.tsxzova/src/suite/cabloy-basic/modules/basic-page/src/component/blockTable/controller.tsx
What each file clarifies
studentSelectResItem.tsxshows the backend-owned row DTO metadata that choosesbasic-table:actionOperationsRowand the visible child actions inside ittableCell.actionOperationsRow.tsxshows how the frontend runtime filters those child actions by permission and renders them through nested action resourcesblockPage/controller.tsxshows howschemaRow,permissions, and list data are exposed from the stable resource owner into the page runtimeblockTable/controller.tsxshows the bridge from page runtime intoZTable
2. Custom action chain with generated contract follow-up
Use this path when your question is about:
- how a custom row action such as
summaryordeleteForcejoins the mixed chain - where the forward-generated API/model path enters
- how the visible action stays thin while backend truth and resource ownership remain coherent
Read the docs first
- Backend Metadata to Frontend Table Actions
- Backend OpenAPI to Frontend SDK
- Frontend Metadata Back to Backend
Then read source in this order
vona/src/suite/a-training/modules/training-student/src/controller/student.tsvona/src/suite/a-training/modules/training-student/src/dto/studentSelectResItem.tsxzova/src/suite/a-training/modules/training-student/cli/openapi.config.tszova/src/suite/a-training/modules/training-student/src/api/trainingStudent.tszova/src/suite/a-training/modules/training-student/src/model/student.tszova/src/suite/a-training/modules/training-student/src/bean/tableCell.actionSummary.tsxzova/src/suite/a-training/modules/training-student/src/bean/tableCell.actionDeleteForce.tsx- optional downstream handoff:
zova/src/suite/cabloy-basic/modules/basic-page/src/component/blockPage/controller.tsxzova/src/suite/cabloy-basic/modules/basic-page/src/component/blockTable/controller.tsx
What each file clarifies
controller/student.tsshows the backend source truth for custom endpoints such assummary/:idanddeleteForce/:idstudentSelectResItem.tsxshows the backend row metadata that inserts the custom row actions into the operations columnopenapi.config.tsshows the frontend module ownership rule for generated OpenAPI operationsapi/trainingStudent.tsshows the generated typed API surface that the frontend can consumemodel/student.tsshows the thin semantic facade over the stable resource ownertableCell.actionSummary.tsxshows a visible action that stays thin and delegates summary behavior into the model/API pathtableCell.actionDeleteForce.tsxshows the same pattern for force-delete behaviorblockPageandblockTableare only needed when the question becomes “how does the list runtime carry that row schema into visible table output?”
What this page does not re-explain
This page deliberately does not re-teach:
- generic table runtime internals -> see Zova Table Source Reading Map
- CRUD list-page assembly -> see Table + Resource CRUD Cookbook
- row/bulk permission filtering semantics -> see Table Action Visibility and Permission Flow Guide
- the pure forward bridge -> see Backend OpenAPI to Frontend SDK
- the pure reverse bridge -> see Frontend Metadata Back to Backend
Its job is only to provide the shortest file-order path through one mixed Student row-action chain.
Where to read next
- If you need the conceptual mixed-chain explanation first, return to Backend Metadata to Frontend Table Actions.
- If you now want to prove the Student row-action chain end-to-end after a change, continue with Backend Metadata to Frontend Table Actions Verify Playbook.
- If the visible Student row action is still wrong after you understand the file-order path, continue with Backend Metadata to Frontend Table Actions Debug Checklist.
- If your next question is purely forward-chain, continue with Backend OpenAPI to Frontend SDK.
- If your next question is purely reverse-chain, continue with Frontend Metadata Back to Backend.
- If your next question becomes table-runtime specific, continue with Zova Table Source Reading Map and Table Action Visibility and Permission Flow Guide.
Final takeaway
The cleanest way to read a mixed Student row-action chain is not to jump directly into either the backend bridge docs or the deepest table runtime files.
Start from the backend row metadata that chooses the visible action resources, then follow the custom forward-generated path only when the action semantics actually require new backend endpoints.