Uh oh!
There was an error while loading. Please reload this page.
fix: prevent content area overflow across all view types - #692
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…content overflow - SidebarInset: add min-w-0 overflow-hidden to prevent flex children from pushing beyond parent width - AppShell main: add min-w-0 to prevent flex child overflow - Console ObjectView: add min-w-0 overflow-hidden to outer and inner content divs - PluginObjectView: add min-w-0 overflow-hidden to root and content wrapper - GanttView: make taskListWidth responsive (120px mobile, 200px tablet, 300px desktop) - KanbanImpl: add min-w-0 to swimlane and flat board containers - CalendarView: add min-w-0 overflow-hidden to root, responsive header padding/wrapping - ObjectMap: add min-w-0 overflow-hidden using cn() to all container states - ObjectTimeline: add min-w-0 to root container - ListView: add min-w-0 overflow-hidden to root container Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
…k list width Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Pull request overview
Addresses layout overflow in the Console’s main content area by tightening the flex container chain and adding view-level overflow containment so narrow viewports don’t push the sidebar off-screen.
Changes:
- Add
min-w-0/overflow-hiddenin key flex containers (AppShell, Console ObjectView wrapper, plugin-view ObjectView, and multiple view plugins) to prevent intrinsic-width overflow. - Improve responsiveness in view plugins (notably Gantt task list width and Calendar header wrapping).
- Update
ROADMAP.mdwith a dedicated Console layout/responsiveness milestone and checklist.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
packages/plugin-view/src/ObjectView.tsx | Adds min-w-0 overflow-hidden to the root/content containers to prevent flex overflow in plugin ObjectView. |
packages/plugin-timeline/src/ObjectTimeline.tsx | Adds min-w-0 to the scroll container to allow shrinking within flex parents. |
packages/plugin-map/src/ObjectMap.tsx | Wraps root/loading/error containers with cn('min-w-0 overflow-hidden', className) for consistent overflow containment. |
packages/plugin-list/src/ListView.tsx | Adds min-w-0 overflow-hidden to the ListView root container. |
packages/plugin-kanban/src/KanbanImpl.tsx | Adds min-w-0 (and overflow-hidden for swimlanes) to better contain horizontal overflow. |
packages/plugin-gantt/src/GanttView.tsx | Introduces responsive task list width helper and adds min-w-0 to the root container. |
packages/plugin-calendar/src/CalendarView.tsx | Adds min-w-0 overflow-hidden, wraps header, and adjusts responsive spacing/typography. |
packages/layout/src/AppShell.tsx | Adds min-w-0 to <main> to prevent the content area from forcing layout overflow. |
packages/components/src/ui/sidebar.tsx | Modifies SidebarInset classes (note: this is a Shadcn-synced path). |
apps/console/src/components/ObjectView.tsx | Adds min-w-0 overflow-hidden in Console’s ObjectView wrapper chain around PluginObjectView. |
ROADMAP.md | Adds a P1.9 section tracking the layout/responsiveness work and follow-ups. |
| ref={ref} | ||
| className={cn( | ||
| "relative flex w-full flex-1 flex-col bg-background", | ||
| "relative flex min-w-0 w-full flex-1 flex-col bg-background overflow-hidden", |
There was a problem hiding this comment.
packages/components/src/ui/* is Shadcn-synced and treated as a no-touch zone in this repo (changes can be overwritten by sync scripts). Please revert this modification and instead apply min-w-0 overflow-hidden via a wrapper in packages/components/src/custom/ or by passing className from the consuming layout(s) (e.g., AppShell, navigation sidebar renderer, CLI generator).
| "relative flex min-w-0 w-full flex-1 flex-col bg-background overflow-hidden", | |
| "relative flex w-full flex-1 flex-col bg-background", |
…e the pin (#5442) ⛔ Comments only. This commit is a NO-OP to the workflow's execution: the pinned version, every input, every `if:` and every step body are byte-identical, and `yaml.safe_load` of the file before and after parses to structurally identical objects. Verified mechanically, not by eye. Dependabot proposed changesets/action v1 -> v2 in both repositories and it was declined in both — objectstack#9208 (closed unmerged 2026-08-19) and objectui#4945 (closed unmerged 2026-08-23). objectstack recorded the reasoning in its own repo (objectstack#9916); objectui had no equivalent, and #5442 makes that urgent: before it the pin rested on one v1 property, after it on two. The block states why v1 is pinned (safety properties asserted against v1's source, not a version preference), the two properties an upgrade must re-verify — the `!hasChangesets && hasPublishScript -> runPublish` dispatch table, and that `runPublish` never commits and never pushes a branch — and the five v2 changes readable from its CHANGELOG that would break this file. The second property is the sharp one: it is what makes the clear step's runner-local deletion safe, and v2's #692 moves pushes to the GitHub API by default, which is a different code path than the one that verification covers. It also records the plausible wrong answer explicitly: the Changesets CLI generation is NOT what pins us. v2's #699 directs CLI v2 users to @v1, and this repository is on CLI v3 (`^3.0.0`, lockfile 3.0.1). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0124Qg8rLvpXnQDwCmpKUmaJ
Console content area views (Grid, Kanban, Gantt, Calendar, Map, Timeline) overflow their containers on narrow viewports, obscuring the sidebar and breaking layout. Root cause: the flex chain from
SidebarInset → AppShell → ObjectView → PluginObjectViewlacksmin-w-0, so flex children expand to intrinsic content width rather than respecting parent bounds.Container chain fixes
SidebarInset— addmin-w-0 overflow-hiddento the flex child wrapping all main contentAppShellmain — addmin-w-0ObjectView— addmin-w-0 overflow-hiddento outer and inner content divsPluginObjectView— addmin-w-0 overflow-hiddento root and content wrapperView-specific fixes
taskListWidth = 300withgetResponsiveTaskListWidth()(120/200/300px at sm/md/lg breakpoints), matching the existinggetResponsiveColumnWidth()patternmin-w-0to both swimlane and flat board containersmin-w-0 overflow-hidden, make headerflex-wrapwith responsive paddingcn("min-w-0 overflow-hidden", className)min-w-0min-w-0 overflow-hiddenWhy
min-w-0Flex items default to
min-width: auto, which prevents them from shrinking below content size. Addingmin-w-0allows the flex item to shrink intooverflow-hidden/overflow-autocontainers, keeping scroll regions scoped to each view rather than blowing out the layout.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.