Skip to content

Commit c998b0d

Browse files
committed
fix(react-email): Active state for root emails not appearing
1 parent dc1ca9f commit c998b0d

File tree

4 files changed

+11
-9
lines changed

4 files changed

+11
-9
lines changed

.changeset/dry-adults-grab.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"react-email": patch
3+
---
4+
5+
Fixes active state for root email templats on file tree

packages/react-email/next-env.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
/// <reference types="next/image-types/global" />
33

44
// NOTE: This file should not be edited
5-
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
5+
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.

packages/react-email/src/components/sidebar/sidebar-directory-children.tsx

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import * as Collapsible from '@radix-ui/react-collapsible';
33
import Link from 'next/link';
44
import { useSearchParams } from 'next/navigation';
55
import type { EmailsDirectory } from '../../utils/get-emails-directory-metadata';
6-
import { emailsDirectoryAbsolutePath } from '../../utils/emails-directory-absolute-path';
76
import { cn } from '../../utils';
87
import { IconFile } from '../icons/icon-file';
98
import { SidebarDirectory } from './sidebar-directory';
@@ -15,15 +14,13 @@ export const SidebarDirectoryChildren = (props: {
1514
isRoot?: boolean;
1615
}) => {
1716
const searchParams = useSearchParams();
18-
const isBaseEmailsDirectory =
19-
props.emailsDirectoryMetadata.absolutePath === emailsDirectoryAbsolutePath;
2017

2118
return (
2219
<AnimatePresence initial={false}>
2320
{props.open ? (
2421
<Collapsible.Content
2522
asChild
26-
className="relative data-[root=true]:mt-2 overflow-y-hidden pl-1"
23+
className="relative overflow-y-hidden pl-1"
2724
forceMount
2825
>
2926
<motion.div
@@ -35,7 +32,7 @@ export const SidebarDirectoryChildren = (props: {
3532
<div className="line absolute left-2.5 w-px h-full bg-slate-6" />
3633
)}
3734

38-
<div className="data-[root=true]:py-2 flex flex-col truncate">
35+
<div className="flex flex-col truncate">
3936
<LayoutGroup id="sidebar">
4037
{props.emailsDirectoryMetadata.subDirectories.map(
4138
(subDirectory) => (
@@ -50,7 +47,7 @@ export const SidebarDirectoryChildren = (props: {
5047

5148
{props.emailsDirectoryMetadata.emailFilenames.map(
5249
(emailFilename, index) => {
53-
const emailSlug = isBaseEmailsDirectory
50+
const emailSlug = props.isRoot
5451
? emailFilename
5552
: `${props.emailsDirectoryMetadata.relativePath}/${emailFilename}`;
5653

@@ -67,7 +64,7 @@ export const SidebarDirectoryChildren = (props: {
6764
};
6865
const isCurrentPage = props.currentEmailOpenSlug
6966
? removeExtensionFrom(props.currentEmailOpenSlug) ===
70-
emailSlug
67+
emailSlug
7168
: false;
7269

7370
return (

packages/react-email/src/components/sidebar/sidebar.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export const Sidebar = ({
2929
<Logo />
3030
</div>
3131
<nav className="p-4 flex-grow lg:pt-0 pl-0 w-screen h-[calc(100vh_-_70px)] lg:w-full lg:min-w-[275px] lg:max-w-[275px] flex flex-col overflow-y-auto">
32-
<Collapsible.Root>
32+
<Collapsible.Root open>
3333
<React.Suspense>
3434
<SidebarDirectoryChildren
3535
currentEmailOpenSlug={currentEmailOpenSlug}

0 commit comments

Comments
 (0)