LearnNewsExamplesServices
Frontmatter
id12328
titleStyle Portal news timeline Markdown tables
stateClosed
labels
enhancementdesignai
assigneesneo-gpt
createdAtJun 2, 2026, 12:21 AM
updatedAtJun 2, 2026, 1:25 AM
githubUrlhttps://github.com/neomjs/neo/issues/12328
authorneo-gpt
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJun 2, 2026, 1:25 AM

Style Portal news timeline Markdown tables

Closed v13.0.0/archive-v13-0-0-chunk-15 enhancementdesignai
neo-gpt
neo-gpt commented on Jun 2, 2026, 12:21 AM

Context

Operator clarification after the initial filing: the observed table-styling gap was in the Portal news section timelines. The first ticket draft assumed the relevant surface was only generic Neo.component.Markdown; this section records the Verify-Before-Assert correction so the implementation does not lose the original intent.

VBA source trace:

  • src/app/content/Component.mjs:1-9 imports Neo.component.Markdown and extends it, so Portal content views are Markdown-derived.
  • apps/portal/view/content/Component.mjs:22 extends Neo.app.content.Component and retargets it for timeline-mode content.
  • apps/portal/view/news/tickets/Component.mjs:176-218, apps/portal/view/news/pulls/Component.mjs:158-180, and apps/portal/view/news/discussions/Component.mjs:164-186 call super.modifyMarkdown(content) for the primary description/body.
  • Timeline comments/reviews/replies are not generic direct-child Markdown tables: they are hand-rendered with marked.parse(...) into .neo-timeline-body / .neo-discussion-reply-body at tickets/Component.mjs:346-357, pulls/Component.mjs:221-225, and discussions/Component.mjs:363-399.

Duplicate/content sweep:

  • Knowledge Base ticket search found closed predecessor #8383 (first-pass Markdown table borders/header/padding).
  • Local resources/content sweep found closed #8384 (rounded corners) and #8770 (dark header background), plus #11719, which is a narrow broken-docs-table-content issue and not equivalent.
  • No open equivalent was found for Portal news timeline table styling + horizontal overflow.

The Problem

The current Markdown table styling does not fully cover the Portal news timeline surfaces:

  • resources/scss/src/component/Markdown.scss:145-175 styles .neo-frontmatter-table and direct child > table. That is useful for top-level Markdown tables, but it is not enough for comment/review/reply tables nested under timeline-specific containers.
  • resources/scss/src/apps/portal/news/tickets/Component.scss:238-250 only gives .neo-timeline-body basic font, wrapping, padding, and pre { overflow-x: auto; }. There is no scoped table styling or horizontal-scroll rule for tables inside timeline bubbles.
  • resources/scss/src/apps/portal/news/discussions/Component.scss:39-40 only trims the last child inside discussion replies; reply tables get no scoped styling either.
  • The shared Portal news timeline color scheme lives in resources/scss/theme-neo-light/apps/portal/content/Component.scss and resources/scss/theme-neo-dark/apps/portal/content/Component.scss as --gh-* tokens, not in ticket-specific theme files.

The Architectural Reality

The fix belongs primarily in the Portal news timeline styling substrate:

  • Shared structural timeline styles: resources/scss/src/apps/portal/news/tickets/Component.scss.
  • Pull and Discussion views already load that shared layout via @use "../tickets/Component" in their component SCSS.
  • Discussion-specific nested reply styling lives in resources/scss/src/apps/portal/news/discussions/Component.scss.
  • Shared light/dark timeline palette: resources/scss/theme-neo-light/apps/portal/content/Component.scss and resources/scss/theme-neo-dark/apps/portal/content/Component.scss.
  • Generic Markdown table styling in resources/scss/src/component/Markdown.scss remains relevant for top-level Markdown content and frontmatter tables, but a generic-only fix would miss the Portal news timeline bubble use case.

The Fix

Style tables emitted inside Portal news timeline bodies so they visually align with the existing GitHub-style timeline palette and behave well in narrow viewports:

  • Add scoped table rules for .neo-timeline-body table and any needed discussion reply body selector.
  • Use the shared --gh-* timeline palette for borders, header backgrounds, and text color so light/dark themes stay aligned with the Portal news surface.
  • Provide a horizontal-scroll surface for wide tables inside the timeline bubble/reply body; the table should not force the entire page or timeline column wider.
  • Preserve .neo-frontmatter-table compact metadata behavior unless an implementation proves it should share part of the new styling.

Decision Record Impact

none

Acceptance Criteria

  • Portal news ticket description/comment tables render with visible cell borders and distinct header styling.
  • Portal news pull-request description/comment/review tables render with visible cell borders and distinct header styling.
  • Portal news discussion description/comment/reply tables render with visible cell borders and distinct header styling.
  • Wide timeline tables scroll horizontally within the timeline bubble or reply body instead of widening/clipping the page.
  • Light and dark themes use the shared Portal news timeline palette (--gh-*) rather than unrelated one-off Markdown table colors.
  • Scoped selectors avoid leaking table styling into nested Neo components or live examples embedded in Markdown content.
  • Visual verification covers light and dark themes for at least one normal-width and one wide table in Portal news timelines.

Out of Scope

  • Reworking the Grid component itself.
  • Rewriting the Portal news Markdown parsers unless a parser wrapper is empirically required for robust horizontal overflow.
  • Broad typography redesign for Markdown content outside tables.
  • Closing or superseding the older closed table-styling tickets (#8383, #8384, #8770).

Related

Retrieval Hint: Portal news timeline Markdown tables grid theme horizontal scroll

tobiu closed this issue on Jun 2, 2026, 1:25 AM
tobiu referenced in commit 2b539b5 - "fix(portal): style news timeline tables (#12328) (#12330) on Jun 2, 2026, 1:25 AM