From cc2e804535e66ba658935dbac0562032feb5eb95 Mon Sep 17 00:00:00 2001
From: Nidharshan A <cb.en.u4cse18036@cb.students.amrita.edu>
Date: Wed, 3 Mar 2021 13:57:29 +0000
Subject: [PATCH] Replace FolderNav.js

---
 digital-course-file/src/user/FolderNav.js | 82 +++++++++++------------
 1 file changed, 40 insertions(+), 42 deletions(-)

diff --git a/digital-course-file/src/user/FolderNav.js b/digital-course-file/src/user/FolderNav.js
index 87059ab..ca67384 100644
--- a/digital-course-file/src/user/FolderNav.js
+++ b/digital-course-file/src/user/FolderNav.js
@@ -1,48 +1,46 @@
-import React from 'react';
-import AddFolder from "./AddFolder";
-import { Container,Button } from "react-bootstrap";
-import { useFolder } from ".././hooks/useFolder";
-import Folder from "./Folder";
-import FolderNav from "./FolderNav";
-import { useParams } from "react-router-dom";
+import { react  } from "react";
+import { Breadcrumb } from "react-bootstrap";
+import { Link } from "react-router-dom";
+import { ROOT_FOLDER } from "../hooks/useFolder";
 
-const Hero=({handleLogout})=>{
+export default function FolderNav( {currentFolder} ) {
 
-    const { folderId } = useParams();
-    const {folder, childFolders} = useFolder(folderId);
+    let path = currentFolder === ROOT_FOLDER ? [] : [ROOT_FOLDER]
+    if (currentFolder){ 
+        path = [...path,...currentFolder.path];
+    }
 
+    
     return(
-        <>
-        <section className="hero">
-            <nav>
-                <h2>Course File</h2>
-                <button className="logoutbutton" onClick={handleLogout}>Logout</button>
-            </nav>
-        </section>
+        <Breadcrumb
+            className="flex-grow-1"
+            listProps = {{ className : "bg-white pl-0 m-0"}}
+        >
+            {path.map((folder,index) => (
+                <Breadcrumb.Item 
+                    key={folder.id}
+                    linkAs ={Link}
+                    linkProps = {{
+                        to : folder.id ? `/folder/${folder.id}` : "/",
+                    }}
+                    className="text-truncate d-inline-block"
+                    style = { {maxWidth : "175px"} }
+                >
+                    {folder.name}
+                </Breadcrumb.Item>
+            ))}
+            { currentFolder && (
+                <Breadcrumb.Item 
+                    className="text-truncate d-inline-block"
+                    style = { {maxWidth : "200px"} }
+                    active
+                >
+                    {currentFolder.name}
+                </Breadcrumb.Item>
+            )
 
-        <Container fluid>Contents</Container>
-        <Container fluid>
-        <div className="d-flex align-items-center">
-            <FolderNav currentFolder={folder}/>
-            <AddFolder currentFolder={folder}/>
-            </div>
-
-            {childFolders.length > 0 && (
-                <div className="d-flex flex-wrap">
-                    {childFolders.map(childFolder => (
-                        <div
-                            key = {childFolder.id}
-                            style = { {maxWidth : "250px"}}
-                            className="p-2"
-                        >
-                            <Folder folder={childFolder}></Folder>
-                        </div>
-                    ))}
-                </div>
-            )}
-
-        </Container>
-        </>  
+            }
+        </Breadcrumb>
     );
-}
-export default Hero;
\ No newline at end of file
+
+}
\ No newline at end of file
-- 
GitLab