Repository navigation
Conversation
- the overview lists every table the application uses, through its own resources, a page or a widget, and says what uses it - the owner sees who the application is shared with - a short line counts the pages, tables and, for the owner, the members - a filter appears once an application has more than six pages Signed-off-by: Remko <remko@conduction.nl> Assisted-by: ClaudeCode:claude-opus-5-5
The Open button in the tables list navigates through the app's router, as NcButton's 'to' renders a plain button in this app. Signed-off-by: Remko <remko@conduction.nl> Assisted-by: ClaudeCode:claude-opus-5-5
| <div class="context__section-header"> | ||
| <h2>{{ t('tables', 'Pages') }}</h2> | ||
| <div class="context__section-actions"> | ||
| <NcTextField v-if="pages.length > 6" |
There was a problem hiding this comment.
🟢 Minor — a filter query can get stuck with no field to clear it
The field only renders while pages.length > 6, but pageFilter keeps its value. When pages are removed down to six, the field disappears and the list can stay on "No page matches the filter." with nothing to clear it. Filtered child rows also show "1.1" without their parent row.
Impact: a page list that looks empty with no way out but a reload.
Suggested fix: clear pageFilter when the field goes away (or keep the field while the query is non-empty); optionally keep the parent row of a matching child.
| type: share.receiver_type, | ||
| id: share.receiver, | ||
| name: share.receiver_display_name ?? share.receiver, | ||
| role: share.receiver_type === 'user' ? t('tables', 'Member') : t('tables', 'Group'), |
There was a problem hiding this comment.
🟢 Minor — teams are labelled "Group", and a group counts as one member
receiver_type can be circle (a team), which gets the label "Group" here. The stats line also counts every group or team share as one member.
Impact: a slightly wrong label and member count.
Suggested fix: add a "Team" label for circle; count shares rather than members, or count users only.
| return [...uses.values()].map(entry => ({ | ||
| ...entry, | ||
| table: this.tables.find(table => table.id === entry.id) ?? null, | ||
| viewCount: this.views.filter(view => view.tableId === entry.id && view.type !== 'grid').length, |
There was a problem hiding this comment.
🟢 Minor — the "Views" column only counts views the browser happens to know
this.views holds the user's own and shared views plus those loaded for this application, not all views of the table.
Impact: the number under-reports and differs between users.
Suggested fix: drop the column, or label it as the views available to you.
The application overview now shows which tables the application works on, who it is shared with, and a short summary.
What changes
🖼️ Screenshots
🏁 Checklist
/backport to stableX.X🤖 AI (if applicable)