Suggestion: Split OakUiRenderer.kt into component-specific renderer files
Category: Large functions/files
File: composeApp/src/commonMain/kotlin/com/oak/app/ui/dynamicui/OakUiRenderer.kt:1
OakUiRenderer.kt is 1734 lines and contains private composable rendering functions for at least 12 distinct UI component types (Column, Row, Card, Text, Button, TextInput, Select, Table, LogView, Image, DropZone, Charts) alongside shared utilities like pulseModifier, safeCallback, and FrozenSubmission. Each renderer function is logically independent and could be maintained more easily in its own file.
Suggested action: Extract each component renderer (RenderColumn, RenderRow, RenderCard, RenderText, RenderButton, RenderTextInput, RenderSelect, RenderTable, RenderLogView, RenderImage, etc.) into separate files within a composables/ subdirectory, keeping shared types and utilities in a single OakUiRenderer.kt or OakUiRendererUtils.kt.
Suggestion: Split OakUiRenderer.kt into component-specific renderer files
Category: Large functions/files
File:
composeApp/src/commonMain/kotlin/com/oak/app/ui/dynamicui/OakUiRenderer.kt:1OakUiRenderer.ktis 1734 lines and contains private composable rendering functions for at least 12 distinct UI component types (Column, Row, Card, Text, Button, TextInput, Select, Table, LogView, Image, DropZone, Charts) alongside shared utilities likepulseModifier,safeCallback, andFrozenSubmission. Each renderer function is logically independent and could be maintained more easily in its own file.Suggested action: Extract each component renderer (RenderColumn, RenderRow, RenderCard, RenderText, RenderButton, RenderTextInput, RenderSelect, RenderTable, RenderLogView, RenderImage, etc.) into separate files within a
composables/subdirectory, keeping shared types and utilities in a singleOakUiRenderer.ktorOakUiRendererUtils.kt.