refactor: check if is root folder by method instead of passing parameters through components

This commit is contained in:
Xu Quan 2025-04-07 16:19:54 +08:00
parent 81db2d4cc8
commit d7408bf82c
4 changed files with 3 additions and 9 deletions

View file

@ -21,7 +21,6 @@ import { useExplorer } from "src/hooks/useExplorer";
export type FolderProps = {
folder: TFolder;
isRoot?: boolean;
hideExpandIcon?: boolean;
isOver?: boolean;
};
@ -30,7 +29,6 @@ type Props = FolderProps & {
};
const FolderContent = ({
folder,
isRoot = false,
hideExpandIcon = false,
isOver = false,
onToggleExpandState,
@ -71,6 +69,7 @@ const FolderContent = ({
const { language } = plugin;
const isFolderExpanded = expandedFolderPaths.includes(folder.path);
const isRoot = folder.isRoot()
const { settings } = plugin;
const { showFolderIcon } = useShowFolderIcon(settings.showFolderIcon);

View file

@ -14,7 +14,6 @@ type Props = FolderProps & {
const Folder = ({
folder,
onOpenFilesPane,
isRoot = false,
hideExpandIcon = false,
disableDrag = false,
}: Props) => {
@ -92,7 +91,6 @@ const Folder = ({
>
<FolderContent
folder={folder}
isRoot={isRoot}
hideExpandIcon={hideExpandIcon}
isOver={isOver}
onToggleExpandState={onToggleExpandState}

View file

@ -7,7 +7,6 @@ import PinIcon from "src/assets/icons/PinIcon";
import { useExplorer } from "src/hooks/useExplorer";
export type FolderOptions = {
isRoot?: boolean;
hideExpandIcon?: boolean;
disableDrag?: boolean;
};
@ -44,7 +43,6 @@ const PinnedFolders = ({ renderFolder }: Props) => {
{pinnedFolderPaths.map((path) => {
const folder = plugin.app.vault.getFolderByPath(path);
const options: FolderOptions = {
isRoot: folder?.isRoot(),
hideExpandIcon: true,
disableDrag: true,
};

View file

@ -48,12 +48,11 @@ const FolderTree = ({ onOpenFilesPane = () => {} }: Props) => {
const { hideRootFolder } = useHideRootFolder(defaultHideRootFolder);
const renderFolder = (folder: TFolder, options?: FolderOptions) => {
const { isRoot, hideExpandIcon, disableDrag } = options ?? {};
const { hideExpandIcon, disableDrag } = options ?? {};
return (
<Folder
key={folder.path}
folder={folder}
isRoot={isRoot}
hideExpandIcon={hideExpandIcon}
disableDrag={disableDrag}
onOpenFilesPane={onOpenFilesPane}
@ -94,7 +93,7 @@ const FolderTree = ({ onOpenFilesPane = () => {} }: Props) => {
return (
<div className="ffs__folder-tree-item" style={{ marginLeft: 4 }}>
{renderFolder(rootFolder, { isRoot: true })}
{renderFolder(rootFolder)}
</div>
);
};