You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(spec): add userActions.refresh toggle to ListView (objectui#2634) (#3158)
* feat(spec): add userActions.refresh toggle to ListView (objectui#2634)
The ListView UserActionsConfig exposed toolbar toggles for sort / search /
filter / rowHeight but had no toggle for a manual data-refresh action, so
consumers had no spec-canonical way to reload a list without a full page
reload (objectui#2634).
Add `refresh: boolean` (default true) alongside the existing toggles.
objectui's ListView reads `userActions.refresh` to gate its toolbar Refresh
button; the liveness note for `userActions` is updated to record the new
live sub-key.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C7Z2cbcb14wb99upTD6LNw
* docs(spec): regenerate ui reference docs for userActions.refresh
`content/docs/references/ui/{view,page}.mdx` are generated from the spec
(gen:schema + gen:docs). Adding `userActions.refresh` made them drift; this
regenerates them so `check:docs` passes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C7Z2cbcb14wb99upTD6LNw
---------
Co-authored-by: Claude <noreply@anthropic.com>
@@ -584,6 +584,7 @@ User action toggles for the view toolbar
584
584
|**sort**|`boolean`| ✅ | Allow users to sort records |
585
585
|**search**|`boolean`| ✅ | Allow users to search records |
586
586
|**filter**|`boolean`| ✅ | Allow users to filter records |
587
+
|**refresh**|`boolean`| ✅ | Allow users to reload the view data from the backend without a full page reload |
587
588
|**rowHeight**|`boolean`| ✅ | Allow users to toggle row height/density |
588
589
|**addRecordForm**|`boolean`| ✅ | Add records through a form instead of inline |
589
590
|**editInline**|`boolean`| ✅ | Allow users to edit records inline — click a cell to edit it with the field's type-aware widget (the same control the form uses). Off by default: the list is read-only unless the author opts in. |
"tabs": { "status": "live", "note": "objectui: TabBar.tsx — icon/visible/pinned/filter wired (audit L15). Sub-key tabs[].order is NOT used for sorting (audit L20) — dead sub-surface." },
47
47
"addRecord": { "status": "live", "note": "objectui: ListView.tsx:374 (addRecord + userActions.addRecordForm drive the add-record flow). Sub-keys addRecord.mode / addRecord.formView have NO reader (audit L20, re-verified objectui@fb35e48) — dead sub-surface." },
sort: z.boolean().default(true).describe('Allow users to sort records'),
241
241
search: z.boolean().default(true).describe('Allow users to search records'),
242
242
filter: z.boolean().default(true).describe('Allow users to filter records'),
243
+
refresh: z.boolean().default(true).describe('Allow users to reload the view data from the backend without a full page reload'),
243
244
rowHeight: z.boolean().default(true).describe('Allow users to toggle row height/density'),
244
245
addRecordForm: z.boolean().default(false).describe('Add records through a form instead of inline'),
245
246
editInline: z.boolean().default(false).describe('Allow users to edit records inline — click a cell to edit it with the field\'s type-aware widget (the same control the form uses). Off by default: the list is read-only unless the author opts in.'),
0 commit comments