refactor(sidebar): align folder and conversation rail on a shared axis
This commit is contained in:
@@ -152,14 +152,17 @@ export const SidebarConversationCard = memo(function SidebarConversationCard({
|
|||||||
<span
|
<span
|
||||||
aria-hidden
|
aria-hidden
|
||||||
className={cn(
|
className={cn(
|
||||||
"pointer-events-none absolute -top-px -bottom-px z-0",
|
"pointer-events-none absolute z-0",
|
||||||
isOpenInTab
|
isOpenInTab
|
||||||
? "bg-sidebar-primary/85"
|
? "bg-sidebar-primary/85"
|
||||||
: "bg-sidebar-primary/30"
|
: "bg-sidebar-primary/30"
|
||||||
)}
|
)}
|
||||||
style={{
|
style={{
|
||||||
left: "calc(0.875rem + 0.5px)",
|
top: "-0.0625rem",
|
||||||
width: "1px",
|
bottom: "-0.0625rem",
|
||||||
|
left: "var(--conv-rail-axis, 0.875rem)",
|
||||||
|
width: "0.125rem",
|
||||||
|
transform: "translateX(-50%)",
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<SidebarStatusIcon status={beadStatus} emphasized={isOpenInTab} />
|
<SidebarStatusIcon status={beadStatus} emphasized={isOpenInTab} />
|
||||||
|
|||||||
@@ -168,15 +168,24 @@ const FolderHeader = memo(function FolderHeader({
|
|||||||
data-folder-id={folderId}
|
data-folder-id={folderId}
|
||||||
onClick={() => onToggle(folderId)}
|
onClick={() => onToggle(folderId)}
|
||||||
className={cn(
|
className={cn(
|
||||||
"flex h-full min-w-0 flex-1 items-center gap-[0.5rem] px-2 outline-none",
|
"relative flex h-full min-w-0 flex-1 items-center pr-[0.5rem] outline-none",
|
||||||
"text-sidebar-foreground",
|
"text-sidebar-foreground",
|
||||||
isDragging ? "cursor-grabbing" : "cursor-grab"
|
isDragging ? "cursor-grabbing" : "cursor-grab"
|
||||||
)}
|
)}
|
||||||
|
style={{ paddingLeft: "calc(var(--conv-rail-axis) + 0.875rem)" }}
|
||||||
>
|
>
|
||||||
<span
|
<span
|
||||||
|
aria-hidden
|
||||||
className={cn(
|
className={cn(
|
||||||
"flex h-[0.75rem] w-[0.75rem] shrink-0 items-center justify-center text-muted-foreground/75"
|
"pointer-events-none absolute flex items-center justify-center text-muted-foreground/75"
|
||||||
)}
|
)}
|
||||||
|
style={{
|
||||||
|
top: "50%",
|
||||||
|
left: "var(--conv-rail-axis)",
|
||||||
|
width: "0.75rem",
|
||||||
|
height: "0.75rem",
|
||||||
|
transform: "translate(-50%, -50%)",
|
||||||
|
}}
|
||||||
>
|
>
|
||||||
{expanded ? (
|
{expanded ? (
|
||||||
<ChevronDown className="h-[0.6875rem] w-[0.6875rem]" />
|
<ChevronDown className="h-[0.6875rem] w-[0.6875rem]" />
|
||||||
@@ -919,6 +928,11 @@ export function SidebarConversationList({
|
|||||||
values={orderedFolderIds}
|
values={orderedFolderIds}
|
||||||
onReorder={handleReorder}
|
onReorder={handleReorder}
|
||||||
className="flex flex-col"
|
className="flex flex-col"
|
||||||
|
style={
|
||||||
|
{
|
||||||
|
"--conv-rail-axis": "0.875rem",
|
||||||
|
} as React.CSSProperties
|
||||||
|
}
|
||||||
>
|
>
|
||||||
{orderedFolderIds.map((folderId, index) => {
|
{orderedFolderIds.map((folderId, index) => {
|
||||||
const folderName =
|
const folderName =
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ function IconFrame({
|
|||||||
className
|
className
|
||||||
)}
|
)}
|
||||||
style={{
|
style={{
|
||||||
left: "0.875rem",
|
left: "var(--conv-rail-axis, 0.875rem)",
|
||||||
width: "0.75rem",
|
width: "0.75rem",
|
||||||
height: "0.75rem",
|
height: "0.75rem",
|
||||||
transform: "translate(-50%, -50%)",
|
transform: "translate(-50%, -50%)",
|
||||||
|
|||||||
Reference in New Issue
Block a user