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
Copy file name to clipboardExpand all lines: ROADMAP.md
+20-1Lines changed: 20 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -203,6 +203,11 @@ ObjectUI is a universal Server-Driven UI (SDUI) engine built on React + Tailwind
203
203
|`showSearch`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
204
204
|`showSort`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
205
205
|`showFilters`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
206
+
|`showHideFields`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
207
+
|`showGroup`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
208
+
|`showColor`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
209
+
|`showDensity`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
210
+
|`allowExport`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
206
211
|`rowHeight`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
207
212
|`densityMode`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
208
213
|`striped`| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
@@ -218,14 +223,26 @@ ObjectUI is a universal Server-Driven UI (SDUI) engine built on React + Tailwind
218
223
3.~~**`NamedListView` type:** Missing toolbar/display properties~~ → Added as first-class properties
219
224
4.~~**Plugin `renderListView` schema missing toolbar flags:**`renderContent` → `renderListView` schema did not include `showSearch`/`showFilters`/`showSort`~~ → Now propagated (PR #771)
220
225
5.~~**ListView toolbar unconditionally rendered:** Search/Filter/Sort buttons always visible regardless of schema flags~~ → Now conditionally rendered based on `schema.showSearch`/`showFilters`/`showSort` (PR #771)
221
-
6.**No per-view-type integration tests:** Pending — tests verify config reaches `fullSchema`, but per-renderer integration tests still needed
226
+
6.~~**Hide Fields/Group/Color/Density buttons always visible:** No schema property to control visibility~~ → Added `showHideFields`/`showGroup`/`showColor`/`showDensity` with conditional rendering (Issue #719)
227
+
7.~~**Export toggle broken:** ViewConfigPanel writes `allowExport: boolean` but ListView checks `exportOptions` object~~ → Export now checks both `exportOptions && allowExport !== false`; Console clears `exportOptions` when `allowExport === false` (Issue #719)
228
+
8.~~**`hasExport` logic bug:**`draft.allowExport !== false` was always true when undefined~~ → Fixed to `draft.allowExport === true || draft.exportOptions != null` (Issue #719)
229
+
9.**No per-view-type integration tests:** Pending — tests verify config reaches `fullSchema`, but per-renderer integration tests still needed
-[x] Export button checks both `exportOptions` and `allowExport` (Issue #719)
239
+
-[x]`hasExport` logic fixed — no longer always true when `allowExport` is undefined (Issue #719)
240
+
-[x] ViewConfigPanel includes toggles for `showHideFields`/`showGroup`/`showColor`/`showDensity` (Issue #719)
241
+
-[x]`showHideFields`/`showGroup`/`showColor`/`showDensity`/`allowExport` propagated through Console `fullSchema` and PluginObjectView `renderListView` (Issue #719)
242
+
-[x] Full end-to-end data flow: all ViewConfigPanel props (`inlineEdit`/`wrapHeaders`/`clickIntoRecordDetails`/`addRecordViaForm`/`addDeleteRecordsInline`/`collapseAllByDefault`/`fieldTextColor`/`prefixField`/`showDescription`) propagated through Console `fullSchema` → PluginObjectView `renderListView` → ListView (Issue #719)
243
+
-[x] ListView forwards `striped`/`bordered`/`wrapHeaders` to child `viewComponentSchema` (grid gets `wrapHeaders`, all views get `striped`/`bordered`) (Issue #719)
244
+
-[x] ViewConfigPanel includes `striped`/`bordered` toggles in Appearance section (Issue #719)
245
+
-[x] Type definitions complete: `NamedListView` + `ListViewSchema` + Zod schema include all 22 view-config properties (Issue #719)
229
246
230
247
**Phase 2 — Kanban Live Preview:**
231
248
-[x] Propagate `showSort`/`showSearch`/`showFilters` through `generateViewSchema` kanban branch
@@ -253,6 +270,8 @@ ObjectUI is a universal Server-Driven UI (SDUI) engine built on React + Tailwind
253
270
254
271
**Phase 6 — Data Flow & Dependency Refactor:**
255
272
-[x] Add `showSearch`/`showSort`/`showFilters`/`striped`/`bordered`/`color` to `NamedListView` type in `@object-ui/types`
273
+
-[x] Add `showHideFields`/`showGroup`/`showColor`/`showDensity`/`allowExport` to `NamedListView` and `ListViewSchema` types and Zod schema (Issue #719)
274
+
-[x] Add `inlineEdit`/`wrapHeaders`/`clickIntoRecordDetails`/`addRecordViaForm`/`addDeleteRecordsInline`/`collapseAllByDefault`/`fieldTextColor`/`prefixField`/`showDescription` to `NamedListView` and `ListViewSchema` types and Zod schema (Issue #719)
256
275
-[x] Update Console `renderListView` to pass all config properties in `fullSchema`
257
276
-[ ] Audit all `useMemo`/`useEffect` dependency arrays in `plugin-view/ObjectView.tsx` for missing `activeView` sub-properties
258
277
-[x] Remove hardcoded `showSearch: false` from `generateViewSchema` — use `activeView.showSearch ?? schema.showSearch` instead
0 commit comments