[breadcrumbs] back to the original version, move approute to frontend

parent 97df2e14
Pipeline #5897 passed with stages
in 193 minutes and 23 seconds
......@@ -26,7 +26,7 @@ import Gargantext.Database.Admin.Config ()
import Gargantext.Database.Admin.Types.Node (allNodeTypes, NodeId(..), NodeType)
import Gargantext.Database.Admin.Types.Node qualified as NN
import Gargantext.Database.Prelude (CmdCommon)
import Gargantext.Database.Query.Table.Node (getNode, getChildrenByType, getClosestParentIdByType)
import Gargantext.Database.Query.Table.Node (getNode)
import Gargantext.Database.Query.Tree qualified as T
import Gargantext.Database.Schema.Node (NodePoly(_node_parent_id))
import Gargantext.Database.Schema.Node qualified as N
......@@ -51,46 +51,11 @@ data TreeFirstLevel m = TreeFirstLevel
, parent :: m (Maybe TreeNode)
, children :: [TreeNode]
} deriving (Generic, GQLType)
data AppRoute =
AnnuaireRoute { nodeId :: Int }
| ContactPageRoute { annuaireId :: Int
, nodeId :: Int }
| CorpusRoute { nodeId :: Int }
| CorpusCodeRoute { nodeId :: Int }
| CorpusDocumentRoute { corpusId :: Int
, documentId :: Int
, listId :: Int }
| DashboardRoute { nodeId :: Int }
| DocumentRoute { documentId :: Int
, listId :: Int }
| FolderRoute { nodeId :: Int }
| FolderPrivateRoute { nodeId :: Int }
| FolderPublicRoute { nodeId :: Int }
| FolderSharedRoute { nodeId :: Int }
| ListsRoute { nodeId :: Int }
| NodeTextsRoute { nodeId :: Int }
| PGraphExplorerRoute { nodeId :: Int }
| PhyloExplorerRoute { nodeId :: Int }
| RouteFileRoute { nodeId :: Int }
| RouteFrameCalcRoute { nodeId :: Int }
| RouteFrameCodeRoute { nodeId :: Int }
| RouteFrameVisioRoute { nodeId :: Int }
| RouteFrameWriteRoute { nodeId :: Int }
| TeamRoute { nodeId :: Int }
| TreeFlatRoute { nodeId :: Int
, query :: Text }
| UserPageRoute { nodeId :: Int }
| ForgotPasswordRoute
| HomeRoute
| LoginRoute
deriving (Generic, GQLType)
data BreadcrumbArgs = BreadcrumbArgs
{
route :: AppRoute
nodeId :: Int
} deriving (Generic, GQLType)
data BreadcrumbInfo = BreadcrumbInfo
......@@ -153,7 +118,7 @@ nodeToTreeNode N.Node {..} =
Nothing
resolveBreadcrumb :: (CmdCommon env) => BreadcrumbArgs -> GqlM e env BreadcrumbInfo
resolveBreadcrumb BreadcrumbArgs { route } = dbRecursiveParents route
resolveBreadcrumb BreadcrumbArgs { nodeId } = dbRecursiveParents nodeId
convertDbTreeToTreeNode :: HasCallStack => T.DbTreeNode -> TreeNode
convertDbTreeToTreeNode T.DbTreeNode { _dt_name, _dt_nodeId, _dt_typeId, _dt_parentId } =
......@@ -164,72 +129,9 @@ convertDbTreeToTreeNode T.DbTreeNode { _dt_name, _dt_nodeId, _dt_typeId, _dt_par
, parent_id = NN.unNodeId <$> _dt_parentId
}
dbRecursiveParents :: (CmdCommon env) => AppRoute -> GqlM e env BreadcrumbInfo
dbRecursiveParents (AnnuaireRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (ContactPageRoute { .. }) = do
dbRecursiveParents' annuaireId
dbRecursiveParents (CorpusRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (CorpusCodeRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (CorpusDocumentRoute { .. }) = do
docIds <- lift $ getChildrenByType (UnsafeMkNodeId corpusId) NN.NodeTexts
let docId = maybe corpusId NN._NodeId $ head docIds
dbRecursiveParents' docId
dbRecursiveParents (DashboardRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (DocumentRoute { .. }) = do
mCorpusId <- lift $ getClosestParentIdByType (UnsafeMkNodeId listId) NN.NodeCorpus
let nodeId = maybe listId NN._NodeId mCorpusId
dbRecursiveParents' nodeId
dbRecursiveParents (FolderRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (FolderPrivateRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (FolderPublicRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (FolderSharedRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (ListsRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (NodeTextsRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (PGraphExplorerRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (PhyloExplorerRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (RouteFileRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (RouteFrameCalcRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (RouteFrameCodeRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (RouteFrameVisioRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (RouteFrameWriteRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (TeamRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (TreeFlatRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents (UserPageRoute { .. }) = do
dbRecursiveParents' nodeId
dbRecursiveParents ForgotPasswordRoute = do
pure $ BreadcrumbInfo { parents = [] }
dbRecursiveParents HomeRoute = do
pure $ BreadcrumbInfo { parents = [] }
dbRecursiveParents LoginRoute = do
pure $ BreadcrumbInfo { parents = [] }
-- let nId = UnsafeMkNodeId node_id
-- dbParents <- lift $ T.recursiveParents nId allNodeTypes
-- let treeNodes = map convertDbTreeToTreeNode dbParents
-- let breadcrumbInfo = BreadcrumbInfo { parents = treeNodes }
-- pure breadcrumbInfo
dbRecursiveParents' :: (CmdCommon env) => Int -> GqlM e env BreadcrumbInfo
dbRecursiveParents' nodeId = do
dbRecursiveParents :: (CmdCommon env) => Int -> GqlM e env BreadcrumbInfo
dbRecursiveParents nodeId = do
let nId = UnsafeMkNodeId nodeId
dbParents <- lift $ T.recursiveParents nId allNodeTypes
let treeNodes = map convertDbTreeToTreeNode dbParents
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment