Skip to content

Split MarkdownDetailView.swift into separate files per type #4

Description

@productengineered

Source

CodeRabbit finding #4 from PR #2.

What

MarkdownDetailView.swift contains 4 distinct types:

  • MarkdownDetailView (the scroll view + anchor link handler)
  • MarkdownBlock enum + parser extension on MarkdownDocument
  • MarkdownBlockView (the block renderer)
  • ResizableTableView

This violates the project's "one primary type per file" convention from CLAUDE.md.

Why deferred

The file is ~580 lines and all types are tightly related — they form a single rendering pipeline. Splitting now would add 3 new files and Xcode project entries for a cosmetic improvement. The types are not reused elsewhere, so discoverability isn't impacted.

When to revisit

If the file grows past ~800 lines, or if any of these types need to be reused outside the markdown detail view (e.g., MarkdownBlock parser used in export or search).

Files

  • app/Parsely/Parsely/Views/Screens/MarkdownDetailView.swift

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions