Skip to content

Commit f108eaa

Browse files
os-zhuangclaude
andcommitted
feat(spec): ADR-0047 — Interface section in the page authoring form
Adds the 'Interface (list pages)' section to the Studio page form, visible when type == 'list': the interfaceConfig composite renders the full Airtable-right-panel equivalent — Source/Source View (iron-rule help text), Levels, Filter By rows, Appearance (Show Description + Allowed Visualizations tags), User Filters (Element style + Fields rows with showCount) and User Actions toggles. Completes the phase-5 authoring surface: views got their End-user controls section in #1792; pages now have the same for interface mode. Browser-verified in Studio against the showcase Task Workbench page. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 3786f15 commit f108eaa

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

packages/spec/src/ui/page.form.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,21 @@ export const pageForm = defineForm({
3939
{ field: 'regions', type: 'repeater', required: true, helpText: 'Layout regions (header, main, sidebar, footer) with components' },
4040
],
4141
},
42+
{
43+
label: 'Interface (list pages)',
44+
description: 'ADR-0047 interface mode: bind a source view and curate the end-user surface — quick filters, locked visualizations, toolbar actions (Airtable Interfaces parity).',
45+
collapsible: true,
46+
collapsed: true,
47+
visibleOn: "data.type == 'list'",
48+
fields: [
49+
{
50+
field: 'interfaceConfig',
51+
type: 'composite',
52+
helpText:
53+
'source/sourceView bind the object view (columns, base filter and sort are inherited — the iron rule); userFilters picks the element style (dropdown / tabs / toggle) and exposed fields; appearance.allowedVisualizations whitelists renderers (one entry = locked); userActions toggles the toolbar.',
54+
},
55+
],
56+
},
4257
{
4358
label: 'Advanced',
4459
description: 'Activation, audience, and accessibility.',

0 commit comments

Comments
 (0)