Skip to content

chore(ui): remove dead server-rendered detail/list DivKit builders#242

Open
mikedegeofroy wants to merge 1 commit into
mainfrom
chore/remove-dead-detail-builders
Open

chore(ui): remove dead server-rendered detail/list DivKit builders#242
mikedegeofroy wants to merge 1 commit into
mainfrom
chore/remove-dead-detail-builders

Conversation

@mikedegeofroy

Copy link
Copy Markdown
Contributor

What

Follow-up to #241 (record surface serves the entity form directly): the server-rendered DivKit detail builders became dead code reachable only from their own unit tests. This removes them.

Removed from SurfaceDivBuilder:

  • catalogDetail(...) / documentDetail(...) (all overloads) and their helper chain: detailHeader, actionCluster, relatedListTable/relatedListTitle, fieldCard, sectionLabel, fieldRowFor, cell, visible, systemColumnFormat/Label, refUrlFor, routeNameOf, the widget detectors, splitGallery, maskSecret
  • the legacy server-rendered list builders (catalogList/documentList/catalogRows/documentRows/listContent/rowsStack/rowsPatch + cell helpers) — superseded by the onno-list island well before feat(ui): combine record detail and edit pages into one editable surface #241, also test-only by now

Removed from Components: members only the above used — the field-row family (fieldRow, pillFieldRow, refFieldRow, imageFieldRow, fileFieldRow, imageGalleryRow, geoFieldRow), the table stack (table, tableItems, tableStack, scrollX, Row, width fitting), statusBadge/badge, actionButton, tabs, labelCell, readableTextColor.

Removed tests: CatalogDetailRelatedListTest, DocumentDetailRelatedListTest, RefLinkTest, EnumColorPillDetailTest, SystemColumnDetailLabelTest, FileFieldRowTest — they exercised the removed rendering; the behaviors (ref links, enum pills, file/image rows, system-column labels) live in the React form now with its own coverage.

Kept (still used): listSurface/listDescriptor, entityForm, registerSurface + helpers, withComments, HeaderAction/actionItems, and the Components primitives the dashboard/page/login builders use (icon, hint, pageHeader, card).

Net: −1,145 lines, no behavior change.

Verify

./gradlew :onno-ui-starter:check :example:check green.

🤖 Generated with Claude Code

PR #241 made the record surface serve the entity form directly, leaving
SurfaceDivBuilder.catalogDetail/documentDetail (and the legacy
server-rendered list builders replaced earlier by the onno-list island)
reachable only from their own unit tests. Remove them, their private
helper chain, the Components members only they used (field rows, table
stack, status badge, action button), and the tests that exercised them.
Kept: listSurface/listDescriptor, entityForm, registerSurface,
withComments, HeaderAction/actionItems, and the Components primitives
the dashboard/page/login builders still use.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant