Repository navigation
chore(release): promote development to beta (round 12 board look, batch 7) - #1768
Merged
Merged
Conversation
…1752) * feat(facts): a meter entry, an amount against a limit drawn as a bar `as: "meter"` on a facts entry shows "12 of 50" with a bar for quota cards. Past the limit the bar is red and the text says so; without a positive limit there is no bar. Adds `format: "bytes"` for sizes. Assisted-by: ClaudeCode:claude-opus-5-5 * docs(facts): regenerate the reference page for the meter entry Assisted-by: ClaudeCode:claude-opus-5-5 * docs(facts): regenerate the reference page after merging development Assisted-by: ClaudeCode:claude-opus-5-5
* wip(table): actions column
Assisted-by: ClaudeCode:claude-opus-5-5
* feat(table): a column can show row actions as buttons
A column with widget: "actions" and widgetProps.actions: [<id or label>]
shows those of the page's row actions as inline buttons on every row, in
that order, where the action is visible for the row. A click runs the
action as its row menu entry does, emits action, and does not open the
row. The column does not sort.
Board DqPostvak ("Aan zaak koppelen", "Nieuwe zaak").
Assisted-by: ClaudeCode:claude-opus-5-5
) * feat(index): a search index source over several schemas and files entitySource: "search" searches one term over the kinds in sourceConfig.kinds: OpenRegister schemas with _search (the reader sees what they may read) and the reader's files through Nextcloud's unified search. It draws All plus a quick filter per kind with its count, lists the results with their kind and status, and opens a row at its href. The term is sourceConfig.term, else the address's ?q=. A failing kind leaves the others. resolveIndexSource(name, config) hands the page's sourceConfig to the factory so a source can build its tabs from it; existing sources ignore it. Board DqZoekresultaten. Assisted-by: ClaudeCode:claude-opus-5-5 * docs(index): keep the search source's kind shapes out of a table-cell pipe for MDX Assisted-by: ClaudeCode:claude-opus-5-5
…e selected file, and values in tones (#1751) * feat(files-browser): the selection in the app's words, cards about the selected file, and values in tones Assisted-by: ClaudeCode:claude-opus-5-5 * feat(files-browser): a row key may be a dotted path into the host's record Assisted-by: ClaudeCode:claude-opus-5-5
…w a notice (#1758) * wip(index): manifest page tabs and notice Assisted-by: ClaudeCode:claude-opus-5-5 * feat(index): an index page can link its sibling pages as tabs and show a notice config.pageTabs ([{ id?, label, route?, params?, query?, href?, countFrom? }]) draws the sibling pages above the toolbar with the page-tab strip a named source already uses: the current route's tab is marked, and countFrom adds that list's count. The manifest's tabs win over a source's. config.notice ({ text, variant? }) draws a note card under the list. Boards DqPrivacy, DqContracten. Assisted-by: ClaudeCode:claude-opus-5-5
#1757) * feat(conversation): messages from a list, mapped parts, a reply action The conversation widget reads its messages from a register list filtered on the record, maps direction, channel, sender, time and body, shows them oldest first with a loading state, names each message's direction for a screen reader, and a reply can run an app action instead of posting to an endpoint (board DqZaak, Contact tab). Assisted-by: ClaudeCode:claude-opus-5-5 * docs(conversation): messages from a list and the reply action Assisted-by: ClaudeCode:claude-opus-5-5 * docs: regenerate the component partials Assisted-by: ClaudeCode:claude-opus-5-5 * docs(conversation): the loading prop and the channel Assisted-by: ClaudeCode:claude-opus-5-5
…(schema 2.121.0) (#1736) * wip(page-header): breadcrumb and meta under list, dashboard and settings titles Assisted-by: ClaudeCode:claude-opus-5-5 * wip(page-header): dashboard widget subtitle, period on the description line Assisted-by: ClaudeCode:claude-opus-5-5 * feat(page-header): breadcrumb and meta under list, dashboard and settings titles (schema 2.103.0) CnPageHeader takes `breadcrumb` (one crumb or a list) and `meta`: under the title it draws the crumbs, the title as the current crumb, a middle dot and the note, with the markup and classes of the detail header's breadcrumb row (a shared CnHeaderTrail), so there is one breadcrumb style. CnIndexPage, CnDashboardPage and CnSettingsPage forward config.breadcrumb and config.headerMeta; on an index page {total} and {shown} are the counts. On a dashboard a widget card can carry `subtitle`, a muted line under its title (CnWidgetWrapper `subtitle`), and `dateRange.placement: "description"` puts the segmented period group at the end of the description line. Schema 2.103.0: config.breadcrumb also takes a list of crumbs. Boards DqZaaktypen, DqCatalogus, DqInstellingen, DqVthInstellingen, DqAfdelingen, DqPrivacy, DqContracten, DqTermijnen, DqProcesanalyse, DqDoorlooptijd. Assisted-by: ClaudeCode:claude-opus-5-5 * docs(page-header): regenerate component reference pages Assisted-by: ClaudeCode:claude-opus-5-5 * wip(index): scope presentation keys Assisted-by: ClaudeCode:claude-opus-5-5 * wip(index): scope presentation, afterList, fixed preset filters Assisted-by: ClaudeCode:claude-opus-5-5 * wip(index): explicit own presentation map; preset test expects fixedFilters Assisted-by: ClaudeCode:claude-opus-5-5 * feat(index): a preset or a folder scope sets the list's presentation (schema 2.121.0) A query preset may also set addLabel, headerButtons, breadcrumb, headerMeta and afterList. A folder scope (its folder entry, or the x-index block of the row a register-derived folder comes from) carries every presentation key a preset sets, under the same names, and its value wins over the page config a preset produced. An index page takes config.afterList: widget definitions drawn as cards after the list, in order, the counterpart of statRow. The route query pairs that chose a preset reach the page as fixedFilters and show no removable active-filter chip. Boards DqWooVerzoeken, DqKlachten. Assisted-by: ClaudeCode:claude-opus-5-5 * test(index): the named-source add label spec gives its fake page presented() resolvedAddLabel reads addLabel through presented(), which lets a folder scope or preset set it; the spec that calls the computed on a hand-made context now provides it. Assisted-by: ClaudeCode:claude-opus-5-5 * fix(index): the page's own footer note and add label still win over a named source's effectiveFooterNote and resolvedAddLabel read the scope's value, else the page's (which a preset may have set), else the named source's, without calling presented(); the named-source specs that call them on a hand-made context pass unchanged. The indexNamedSource spec is back to development's. Assisted-by: ClaudeCode:claude-opus-5-5 * fix(schema): entitySource accepts the flowRuns, endpoint, search and users sources The manifest schema allowed only flows and tasks, so a page using the library's newer named sources failed validation (dossiq's DqPostvak on endpoint). The enum now lists flowRuns, endpoint, search and users, and config.sourceConfig is described (url, rowsPath, kinds, term, termQuery, defaultGroup; still open to other keys). Part of schema 2.121.0, whose hash is re-recorded. Assisted-by: ClaudeCode:claude-opus-5-5
rubenvdlinde
requested review from
Rem-Dam,
SudoThijn,
WilcoLouwerse,
bbrands02,
remko48 and
rjzondervan
as code owners
October 17, 2026 10:35
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promotes the round 12 board-look PRs merged since 2.96.0: facts meter row, actions column, restored schema test, search source, files-browser selection and side cards, page tabs and notice, conversation source, and per-scope list presentation with the entitySource enum fix (schema 2.121.0). Every PR passed the 3 required checks; the merge tree equals development's tree.
🤖 Generated with Claude Code