Commit 6ca68e4
feat(app-shell): interface pages read page-owned columns/sort (revise ADR-0047)
Airtable parity: an interface (list) page now carries its own view metadata
instead of inheriting everything from a referenced source view. InterfaceListPage
resolves data semantics with the precedence:
page's own config → legacy sourceView view (back-compat) → object default
- columns: cfg.columns ?? resolvedView.columns ?? defaultColumnsFromObject
- sort: cfg.sort ?? view.sort
- filterBy stays the page's always-on base filter on top.
Pairs with the spec change (InterfacePageConfig gains columns/sort; sourceView
deprecated; page editor drops the Source View picker for a Columns picker).
Existing pages with a sourceView keep working via the fallback.
Browser-verified against the live showcase: editing Columns in the page editor
re-renders the preview live; task-triage / task-workbench render their own
column sets (workbench shows Estimate (h), absent from the object default view).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent b199c24 commit 6ca68e4
1 file changed
Lines changed: 15 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
232 | 232 | | |
233 | 233 | | |
234 | 234 | | |
235 | | - | |
236 | | - | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
237 | 238 | | |
238 | 239 | | |
239 | 240 | | |
240 | 241 | | |
241 | 242 | | |
242 | | - | |
243 | | - | |
244 | | - | |
245 | | - | |
246 | | - | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
247 | 254 | | |
248 | 255 | | |
249 | 256 | | |
250 | 257 | | |
251 | 258 | | |
252 | 259 | | |
253 | 260 | | |
254 | | - | |
| 261 | + | |
255 | 262 | | |
256 | 263 | | |
257 | 264 | | |
| |||
0 commit comments