Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
haskell-gargantext
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
147
Issues
147
List
Board
Labels
Milestones
Merge Requests
6
Merge Requests
6
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
gargantext
haskell-gargantext
Commits
3fbdae6f
Commit
3fbdae6f
authored
Jul 31, 2019
by
Alexandre Delanoë
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[REFACTO] WIP
parent
428fbf84
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
53 additions
and
95 deletions
+53
-95
Node.hs
src/Gargantext/API/Node.hs
+1
-1
Main.hs
src/Gargantext/Core/Types/Main.hs
+0
-23
Bashql.hs
src/Gargantext/Database/Bashql.hs
+3
-3
Config.hs
src/Gargantext/Database/Config.hs
+1
-0
Ngrams.hs
src/Gargantext/Database/Ngrams.hs
+3
-3
Node.hs
src/Gargantext/Database/Schema/Node.hs
+26
-28
NodeNode.hs
src/Gargantext/Database/Schema/NodeNode.hs
+1
-2
Node.hs
src/Gargantext/Database/Types/Node.hs
+18
-35
No files found.
src/Gargantext/API/Node.hs
View file @
3fbdae6f
...
@@ -95,7 +95,7 @@ nodesAPI ids = deleteNodes ids
...
@@ -95,7 +95,7 @@ nodesAPI ids = deleteNodes ids
-- TODO-EVENTS:
-- TODO-EVENTS:
-- PutNode ?
-- PutNode ?
-- TODO needs design discussion.
-- TODO needs design discussion.
type
Roots
=
Get
'[
J
SON
]
[
NodeAny
]
type
Roots
=
Get
'[
J
SON
]
[
Node
Hyperdata
Any
]
:<|>
Put
'[
J
SON
]
Int
-- TODO
:<|>
Put
'[
J
SON
]
Int
-- TODO
-- | TODO: access by admin only
-- | TODO: access by admin only
...
...
src/Gargantext/Core/Types/Main.hs
View file @
3fbdae6f
...
@@ -114,34 +114,11 @@ fromListTypeId i = lookup i $ fromList [ (listTypeId l, l) | l <- [minBound..max
...
@@ -114,34 +114,11 @@ fromListTypeId i = lookup i $ fromList [ (listTypeId l, l) | l <- [minBound..max
-- | TfidfCorpus | TfidfGlobal | TirankLocal | TirankGlobal
-- | TfidfCorpus | TfidfGlobal | TirankLocal | TirankGlobal
-- | Community Manager Use Case
-- | Community Manager Use Case
type
Annuaire
=
NodeCorpus
-- | Favorites Node enable Swap Node with some synonyms for clarity
-- | Favorites Node enable Swap Node with some synonyms for clarity
type
NodeSwap
=
Node
HyperdataResource
-- | Then a Node can be a List which has some synonyms
-- | Then a Node can be a List which has some synonyms
type
List
=
Node
HyperdataList
type
StopList
=
List
type
MainList
=
List
type
MapList
=
List
type
GroupList
=
List
-- | Then a Node can be a Score which has some synonyms
-- | Then a Node can be a Score which has some synonyms
type
Score
=
Node
HyperdataScore
type
Occurrences
=
Score
type
Cooccurrences
=
Score
type
Specclusion
=
Score
type
Genclusion
=
Score
type
Cvalue
=
Score
type
Tficf
=
Score
---- TODO All these Tfidf* will be replaced with TFICF
type
TfidfCorpus
=
Tficf
type
TfidfGlobal
=
Tficf
type
TirankLocal
=
Tficf
type
TirankGlobal
=
Tficf
--
-- Temporary types to be removed
type
ErrorMessage
=
Text
-- Queries
-- Queries
type
Limit
=
Int
type
Limit
=
Int
...
...
src/Gargantext/Database/Bashql.hs
View file @
3fbdae6f
...
@@ -98,7 +98,7 @@ mv :: NodeId -> ParentId -> Cmd err [Int]
...
@@ -98,7 +98,7 @@ mv :: NodeId -> ParentId -> Cmd err [Int]
mv
n
p
=
U
.
update
$
U
.
Move
n
p
mv
n
p
=
U
.
update
$
U
.
Move
n
p
-- | TODO get Children or Node
-- | TODO get Children or Node
get
::
PWD
->
Cmd
err
[
NodeAny
]
get
::
PWD
->
Cmd
err
[
Node
Hyperdata
Any
]
get
[]
=
pure
[]
get
[]
=
pure
[]
get
pwd
=
runOpaQuery
$
selectNodesWithParentID
(
last
pwd
)
get
pwd
=
runOpaQuery
$
selectNodesWithParentID
(
last
pwd
)
...
@@ -107,10 +107,10 @@ home :: Cmd err PWD
...
@@ -107,10 +107,10 @@ home :: Cmd err PWD
home
=
map
_node_id
<$>
getNodesWithParentId
0
Nothing
home
=
map
_node_id
<$>
getNodesWithParentId
0
Nothing
-- | ls == get Children
-- | ls == get Children
ls
::
PWD
->
Cmd
err
[
NodeAny
]
ls
::
PWD
->
Cmd
err
[
Node
Hyperdata
Any
]
ls
=
get
ls
=
get
tree
::
PWD
->
Cmd
err
[
NodeAny
]
tree
::
PWD
->
Cmd
err
[
Node
Hyperdata
Any
]
tree
p
=
do
tree
p
=
do
ns
<-
get
p
ns
<-
get
p
children
<-
mapM
(
\
n
->
get
[
_node_id
n
])
ns
children
<-
mapM
(
\
n
->
get
[
_node_id
n
])
ns
...
...
src/Gargantext/Database/Config.hs
View file @
3fbdae6f
...
@@ -61,6 +61,7 @@ nodeTypeId n =
...
@@ -61,6 +61,7 @@ nodeTypeId n =
NodePhylo
->
90
NodePhylo
->
90
NodeDashboard
->
7
NodeDashboard
->
7
NodeChart
->
51
NodeChart
->
51
NodeNoteBook
->
88
-- Cooccurrences -> 9
-- Cooccurrences -> 9
--
--
...
...
src/Gargantext/Database/Ngrams.hs
View file @
3fbdae6f
...
@@ -22,12 +22,12 @@ import Gargantext.Core.Types
...
@@ -22,12 +22,12 @@ import Gargantext.Core.Types
import
Gargantext.Database.Utils
(
runOpaQuery
,
Cmd
)
import
Gargantext.Database.Utils
(
runOpaQuery
,
Cmd
)
import
Gargantext.Database.Schema.Ngrams
import
Gargantext.Database.Schema.Ngrams
import
Gargantext.Database.Schema.NodeNodeNgrams
import
Gargantext.Database.Schema.NodeNodeNgrams
import
Gargantext.Database.Schema.Node
import
Gargantext.Database.Schema.Node
import
Gargantext.Prelude
import
Gargantext.Prelude
import
Opaleye
import
Opaleye
import
Control.Arrow
(
returnA
)
import
Control.Arrow
(
returnA
)
selectNgramsByDoc
::
[
CorpusId
]
->
Doc
ument
Id
->
NgramsType
->
Cmd
err
[
Text
]
selectNgramsByDoc
::
[
CorpusId
]
->
DocId
->
NgramsType
->
Cmd
err
[
Text
]
selectNgramsByDoc
cIds
dId
nt
=
runOpaQuery
(
query
cIds
dId
nt
)
selectNgramsByDoc
cIds
dId
nt
=
runOpaQuery
(
query
cIds
dId
nt
)
where
where
...
@@ -44,6 +44,6 @@ selectNgramsByDoc cIds dId nt = runOpaQuery (query cIds dId nt)
...
@@ -44,6 +44,6 @@ selectNgramsByDoc cIds dId nt = runOpaQuery (query cIds dId nt)
returnA
-<
ngrams_terms
ng
returnA
-<
ngrams_terms
ng
postNgrams
::
CorpusId
->
Doc
ument
Id
->
[
Text
]
->
Cmd
err
Int
postNgrams
::
CorpusId
->
DocId
->
[
Text
]
->
Cmd
err
Int
postNgrams
=
undefined
postNgrams
=
undefined
src/Gargantext/Database/Schema/Node.hs
View file @
3fbdae6f
...
@@ -40,7 +40,7 @@ import Gargantext.Core.Types
...
@@ -40,7 +40,7 @@ import Gargantext.Core.Types
import
Gargantext.Core.Types.Individu
(
Username
)
import
Gargantext.Core.Types.Individu
(
Username
)
import
Gargantext.Database.Config
(
nodeTypeId
)
import
Gargantext.Database.Config
(
nodeTypeId
)
import
Gargantext.Database.Queries.Filter
(
limit'
,
offset'
)
import
Gargantext.Database.Queries.Filter
(
limit'
,
offset'
)
import
Gargantext.Database.Types.Node
(
NodeType
,
defaultCorpus
,
Hyperdata
)
import
Gargantext.Database.Types.Node
(
NodeType
(
..
),
defaultCorpus
,
Hyperdata
,
HyperData
(
..
)
)
import
Gargantext.Database.Utils
import
Gargantext.Database.Utils
import
Gargantext.Prelude
hiding
(
sum
,
head
)
import
Gargantext.Prelude
hiding
(
sum
,
head
)
...
@@ -92,7 +92,7 @@ instance FromField HyperdataUser
...
@@ -92,7 +92,7 @@ instance FromField HyperdataUser
where
where
fromField
=
fromField'
fromField
=
fromField'
instance
FromField
Hyper
dataList
instance
FromField
Hyper
Data
where
where
fromField
=
fromField'
fromField
=
fromField'
...
@@ -112,6 +112,10 @@ instance FromField HyperdataAnnuaire
...
@@ -112,6 +112,10 @@ instance FromField HyperdataAnnuaire
where
where
fromField
=
fromField'
fromField
=
fromField'
instance
FromField
HyperdataList
where
fromField
=
fromField'
instance
FromField
(
NodeId
,
Text
)
instance
FromField
(
NodeId
,
Text
)
where
where
fromField
=
fromField'
fromField
=
fromField'
...
@@ -120,6 +124,15 @@ instance QueryRunnerColumnDefault PGJsonb HyperdataAny
...
@@ -120,6 +124,15 @@ instance QueryRunnerColumnDefault PGJsonb HyperdataAny
where
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataList
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
instance
QueryRunnerColumnDefault
PGJsonb
HyperData
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataDocument
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataDocument
where
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
...
@@ -136,10 +149,6 @@ instance QueryRunnerColumnDefault PGJsonb HyperdataUser
...
@@ -136,10 +149,6 @@ instance QueryRunnerColumnDefault PGJsonb HyperdataUser
where
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataList
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataListModel
instance
QueryRunnerColumnDefault
PGJsonb
HyperdataListModel
where
where
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
queryRunnerColumnDefault
=
fieldQueryRunnerColumn
...
@@ -283,7 +292,7 @@ selectNode id = proc () -> do
...
@@ -283,7 +292,7 @@ selectNode id = proc () -> do
runGetNodes
::
Query
NodeRead
->
Cmd
err
[
NodeAny
]
runGetNodes
::
Query
NodeRead
->
Cmd
err
[
Node
Hyperdata
Any
]
runGetNodes
=
runOpaQuery
runGetNodes
=
runOpaQuery
------------------------------------------------------------------------
------------------------------------------------------------------------
...
@@ -330,7 +339,7 @@ getNodesWith parentId _ nodeType maybeOffset maybeLimit =
...
@@ -330,7 +339,7 @@ getNodesWith parentId _ nodeType maybeOffset maybeLimit =
-- TODO: Why is the second parameter ignored?
-- TODO: Why is the second parameter ignored?
-- TODO: Why not use getNodesWith?
-- TODO: Why not use getNodesWith?
getNodesWithParentId
::
NodeId
->
Maybe
Text
->
Cmd
err
[
NodeAny
]
getNodesWithParentId
::
NodeId
->
Maybe
Text
->
Cmd
err
[
Node
Hyperdata
Any
]
getNodesWithParentId
n
_
=
runOpaQuery
$
selectNodesWithParentID
n
getNodesWithParentId
n
_
=
runOpaQuery
$
selectNodesWithParentID
n
------------------------------------------------------------------------
------------------------------------------------------------------------
...
@@ -341,9 +350,6 @@ getDocumentsV3WithParentId n = runOpaQuery $ selectNodesWith' n (Just NodeDocume
...
@@ -341,9 +350,6 @@ getDocumentsV3WithParentId n = runOpaQuery $ selectNodesWith' n (Just NodeDocume
getDocumentsWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataDocument
]
getDocumentsWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataDocument
]
getDocumentsWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeDocument
)
getDocumentsWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeDocument
)
getListsWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataList
]
getListsWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeList
)
getListsModelWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataListModel
]
getListsModelWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataListModel
]
getListsModelWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeListModel
)
getListsModelWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeListModel
)
...
@@ -370,7 +376,7 @@ getNode nId _ = do
...
@@ -370,7 +376,7 @@ getNode nId _ = do
fromMaybe
(
error
$
"Node does node exist: "
<>
show
nId
)
.
headMay
fromMaybe
(
error
$
"Node does node exist: "
<>
show
nId
)
.
headMay
<$>
runOpaQuery
(
limit
1
$
selectNode
(
pgNodeId
nId
))
<$>
runOpaQuery
(
limit
1
$
selectNode
(
pgNodeId
nId
))
getNodePhylo
::
NodeId
->
Cmd
err
(
NodePhylo
)
getNodePhylo
::
NodeId
->
Cmd
err
(
Node
Hyperdata
Phylo
)
getNodePhylo
nId
=
do
getNodePhylo
nId
=
do
fromMaybe
(
error
$
"Node does node exist: "
<>
show
nId
)
.
headMay
fromMaybe
(
error
$
"Node does node exist: "
<>
show
nId
)
.
headMay
<$>
runOpaQuery
(
limit
1
$
selectNode
(
pgNodeId
nId
))
<$>
runOpaQuery
(
limit
1
$
selectNode
(
pgNodeId
nId
))
...
@@ -384,7 +390,6 @@ getNode' nId = fromMaybe (error $ "Node does node exist: " <> show nId) . headMa
...
@@ -384,7 +390,6 @@ getNode' nId = fromMaybe (error $ "Node does node exist: " <> show nId) . headMa
getNodesWithType
::
Column
PGInt4
->
Cmd
err
[
Node
HyperdataDocument
]
getNodesWithType
::
Column
PGInt4
->
Cmd
err
[
Node
HyperdataDocument
]
getNodesWithType
=
runOpaQuery
.
selectNodesWithType
getNodesWithType
=
runOpaQuery
.
selectNodesWithType
------------------------------------------------------------------------
------------------------------------------------------------------------
------------------------------------------------------------------------
defaultUser
::
HyperdataUser
defaultUser
::
HyperdataUser
defaultUser
=
HyperdataUser
(
Just
$
(
pack
.
show
)
EN
)
defaultUser
=
HyperdataUser
(
Just
$
(
pack
.
show
)
EN
)
...
@@ -437,7 +442,7 @@ class HasDefault a where
...
@@ -437,7 +442,7 @@ class HasDefault a where
instance
HasDefault
NodeType
where
instance
HasDefault
NodeType
where
hasDefaultData
nt
=
case
nt
of
hasDefaultData
nt
=
case
nt
of
NodeTexts
->
HyperdataTexts
(
Just
"Preferences"
)
NodeTexts
->
HyperdataTexts
(
Just
"Preferences"
)
NodeList
->
HyperdataList'
(
Just
"Preferences"
)
NodeList
->
HyperdataList'
(
Just
"Preferences"
)
_
->
undefined
_
->
undefined
--NodeAnnuaire -> HyperdataAnnuaire (Just "Title") (Just "Description")
--NodeAnnuaire -> HyperdataAnnuaire (Just "Title") (Just "Description")
...
@@ -446,7 +451,6 @@ instance HasDefault NodeType where
...
@@ -446,7 +451,6 @@ instance HasDefault NodeType where
NodeList
->
"Lists"
NodeList
->
"Lists"
_
->
undefined
_
->
undefined
------------------------------------------------------------------------
------------------------------------------------------------------------
nodeDefault
::
NodeType
->
ParentId
->
UserId
->
NodeWrite
nodeDefault
::
NodeType
->
ParentId
->
UserId
->
NodeWrite
nodeDefault
nt
parent
=
node
nt
name
hyper
(
Just
parent
)
nodeDefault
nt
parent
=
node
nt
name
hyper
(
Just
parent
)
...
@@ -455,8 +459,6 @@ nodeDefault nt parent = node nt name hyper (Just parent)
...
@@ -455,8 +459,6 @@ nodeDefault nt parent = node nt name hyper (Just parent)
hyper
=
(
hasDefaultData
nt
)
hyper
=
(
hasDefaultData
nt
)
------------------------------------------------------------------------
------------------------------------------------------------------------
arbitraryList
::
HyperdataList
arbitraryList
=
HyperdataList
(
Just
"Preferences"
)
arbitraryListModel
::
HyperdataListModel
arbitraryListModel
::
HyperdataListModel
arbitraryListModel
=
HyperdataListModel
(
400
,
500
)
"data/models/test.model"
(
Just
0.83
)
arbitraryListModel
=
HyperdataListModel
(
400
,
500
)
"data/models/test.model"
(
Just
0.83
)
...
@@ -618,7 +620,7 @@ getOrMkList :: HasNodeError err => ParentId -> UserId -> Cmd err ListId
...
@@ -618,7 +620,7 @@ getOrMkList :: HasNodeError err => ParentId -> UserId -> Cmd err ListId
getOrMkList
pId
uId
=
getOrMkList
pId
uId
=
maybe
(
mkList'
pId
uId
)
(
pure
.
view
node_id
)
.
headMay
=<<
getListsWithParentId
pId
maybe
(
mkList'
pId
uId
)
(
pure
.
view
node_id
)
.
headMay
=<<
getListsWithParentId
pId
where
where
mkList'
pId
uId
=
maybe
(
nodeError
MkNode
)
pure
.
headMay
=<<
mkList
pId
uId
mkList'
pId
uId
=
maybe
(
nodeError
MkNode
)
pure
.
headMay
=<<
mk
Node
Node
List
pId
uId
-- | TODO remove defaultList
-- | TODO remove defaultList
defaultList
::
HasNodeError
err
=>
CorpusId
->
Cmd
err
ListId
defaultList
::
HasNodeError
err
=>
CorpusId
->
Cmd
err
ListId
...
@@ -629,16 +631,6 @@ mkNode :: NodeType -> ParentId -> UserId -> Cmd err [NodeId]
...
@@ -629,16 +631,6 @@ mkNode :: NodeType -> ParentId -> UserId -> Cmd err [NodeId]
mkNode
nt
p
u
=
insertNodesR
[
nodeDefault
nt
p
u
]
mkNode
nt
p
u
=
insertNodesR
[
nodeDefault
nt
p
u
]
mkList
::
HasNodeError
err
=>
ParentId
->
UserId
->
Cmd
err
[
NodeId
]
mkList
p
u
=
insertNodesR
[
nodeListW
Nothing
Nothing
p
u
]
where
nodeListW
::
Maybe
Name
->
Maybe
HyperdataList
->
ParentId
->
UserId
->
NodeWrite
nodeListW
maybeName
maybeList
pId
=
node
NodeList
name
list
(
Just
pId
)
where
name
=
maybe
"Lists"
identity
maybeName
list
=
maybe
arbitraryList
identity
maybeList
mkGraph
::
ParentId
->
UserId
->
Cmd
err
[
GraphId
]
mkGraph
::
ParentId
->
UserId
->
Cmd
err
[
GraphId
]
mkGraph
p
u
=
insertNodesR
[
nodeGraphW
Nothing
Nothing
p
u
]
mkGraph
p
u
=
insertNodesR
[
nodeGraphW
Nothing
Nothing
p
u
]
...
@@ -660,3 +652,9 @@ mkPhylo p u = insertNodesR [nodePhyloW Nothing Nothing p u]
...
@@ -660,3 +652,9 @@ mkPhylo p u = insertNodesR [nodePhyloW Nothing Nothing p u]
pgNodeId
::
NodeId
->
Column
PGInt4
pgNodeId
::
NodeId
->
Column
PGInt4
pgNodeId
=
pgInt4
.
id2int
pgNodeId
=
pgInt4
.
id2int
getListsWithParentId
::
NodeId
->
Cmd
err
[
Node
HyperdataList
]
getListsWithParentId
n
=
runOpaQuery
$
selectNodesWith'
n
(
Just
NodeList
)
src/Gargantext/Database/Schema/NodeNode.hs
View file @
3fbdae6f
...
@@ -144,7 +144,7 @@ queryDocs cId = proc () -> do
...
@@ -144,7 +144,7 @@ queryDocs cId = proc () -> do
returnA
-<
view
(
node_hyperdata
)
n
returnA
-<
view
(
node_hyperdata
)
n
selectDocNodes
::
CorpusId
->
Cmd
err
[
NodeDocument
]
selectDocNodes
::
CorpusId
->
Cmd
err
[
Node
Hyperdata
Document
]
selectDocNodes
cId
=
runOpaQuery
(
queryDocNodes
cId
)
selectDocNodes
cId
=
runOpaQuery
(
queryDocNodes
cId
)
queryDocNodes
::
CorpusId
->
O
.
Query
NodeRead
queryDocNodes
::
CorpusId
->
O
.
Query
NodeRead
...
@@ -156,7 +156,6 @@ queryDocNodes cId = proc () -> do
...
@@ -156,7 +156,6 @@ queryDocNodes cId = proc () -> do
returnA
-<
n
returnA
-<
n
joinInCorpus
::
O
.
Query
(
NodeRead
,
NodeNodeReadNull
)
joinInCorpus
::
O
.
Query
(
NodeRead
,
NodeNodeReadNull
)
joinInCorpus
=
leftJoin
queryNodeTable
queryNodeNodeTable
cond
joinInCorpus
=
leftJoin
queryNodeTable
queryNodeNodeTable
cond
where
where
...
...
src/Gargantext/Database/Types/Node.hs
View file @
3fbdae6f
...
@@ -19,6 +19,7 @@ Portability : POSIX
...
@@ -19,6 +19,7 @@ Portability : POSIX
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-- {-# LANGUAGE DuplicateRecordFields #-}
-- {-# LANGUAGE DuplicateRecordFields #-}
module
Gargantext.Database.Types.Node
module
Gargantext.Database.Types.Node
...
@@ -76,7 +77,6 @@ instance FromField NodeId where
...
@@ -76,7 +77,6 @@ instance FromField NodeId where
instance
ToSchema
NodeId
instance
ToSchema
NodeId
-- type Node json = NodePoly NodeId NodeTypeId UserId ParentId NodeName UTCTime json
type
NodeTypeId
=
Int
type
NodeTypeId
=
Int
type
NodeName
=
Text
type
NodeName
=
Text
type
TSVector
=
Text
type
TSVector
=
Text
...
@@ -117,7 +117,7 @@ type ParentId = NodeId
...
@@ -117,7 +117,7 @@ type ParentId = NodeId
type
CorpusId
=
NodeId
type
CorpusId
=
NodeId
type
ListId
=
NodeId
type
ListId
=
NodeId
type
DocumentId
=
NodeId
type
DocumentId
=
NodeId
type
DocId
=
DocumentId
-- todo: remove this
type
DocId
=
NodeId
type
RootId
=
NodeId
type
RootId
=
NodeId
type
MasterCorpusId
=
CorpusId
type
MasterCorpusId
=
CorpusId
type
UserCorpusId
=
CorpusId
type
UserCorpusId
=
CorpusId
...
@@ -337,6 +337,13 @@ instance Arbitrary HyperdataCorpus where
...
@@ -337,6 +337,13 @@ instance Arbitrary HyperdataCorpus where
arbitrary
=
pure
hyperdataCorpus
-- TODO
arbitrary
=
pure
hyperdataCorpus
-- TODO
------------------------------------------------------------------------
------------------------------------------------------------------------
data
HyperdataList
=
HyperdataList
{
hd_list
::
!
(
Maybe
Text
)
}
deriving
(
Show
,
Generic
)
$
(
deriveJSON
(
unPrefix
"hd_"
)
''
H
yperdataList
)
instance
Hyperdata
HyperdataList
------------------------------------------------------------------------
------------------------------------------------------------------------
data
HyperdataAnnuaire
=
HyperdataAnnuaire
{
hyperdataAnnuaire_title
::
!
(
Maybe
Text
)
data
HyperdataAnnuaire
=
HyperdataAnnuaire
{
hyperdataAnnuaire_title
::
!
(
Maybe
Text
)
,
hyperdataAnnuaire_desc
::
!
(
Maybe
Text
)
,
hyperdataAnnuaire_desc
::
!
(
Maybe
Text
)
...
@@ -361,14 +368,10 @@ instance Arbitrary HyperdataAny where
...
@@ -361,14 +368,10 @@ instance Arbitrary HyperdataAny where
arbitrary
=
pure
$
HyperdataAny
mempty
-- TODO produce arbitrary objects
arbitrary
=
pure
$
HyperdataAny
mempty
-- TODO produce arbitrary objects
------------------------------------------------------------------------
------------------------------------------------------------------------
data
HyperdataList
=
HyperdataList
{
hyperdataList_preferences
::
!
(
Maybe
Text
)
{-
}
deriving
(
Show
,
Generic
)
instance Arbitrary HyperdataList' where
$
(
deriveJSON
(
unPrefix
"hyperdataList_"
)
''
H
yperdataList
)
arbitrary = elements [HyperdataList' (Just "from list A")]
-}
instance
Hyperdata
HyperdataList
instance
Arbitrary
HyperdataList
where
arbitrary
=
elements
[
HyperdataList
(
Just
"from list A"
)]
----
----
data
HyperdataListModel
=
HyperdataListModel
{
_hlm_params
::
!
(
Int
,
Int
)
data
HyperdataListModel
=
HyperdataListModel
{
_hlm_params
::
!
(
Int
,
Int
)
...
@@ -432,15 +435,8 @@ instance Hyperdata HyperdataNotebook
...
@@ -432,15 +435,8 @@ instance Hyperdata HyperdataNotebook
-- | Then a Node can be either a Folder or a Corpus or a Document
type
NodeUser
=
Node
HyperdataUser
type
NodeFolder
=
Node
HyperdataFolder
type
NodeCorpus
=
Node
HyperdataCorpus
data
HyperData
=
HyperdataTexts
{
hd_texts
::
Maybe
Text
}
data
HyperData
=
HyperdataTexts
{
hd_texts
::
Maybe
Text
}
|
HyperdataList'
{
hd_lists
::
Maybe
Text
}
|
HyperdataList'
{
hd_lists
::
Maybe
Text
}
deriving
(
Show
,
Generic
)
deriving
(
Show
,
Generic
)
$
(
deriveJSON
(
unPrefix
"hd_"
)
''
H
yperData
)
$
(
deriveJSON
(
unPrefix
"hd_"
)
''
H
yperData
)
...
@@ -448,29 +444,16 @@ $(deriveJSON (unPrefix "hd_") ''HyperData)
...
@@ -448,29 +444,16 @@ $(deriveJSON (unPrefix "hd_") ''HyperData)
instance
Hyperdata
HyperData
instance
Hyperdata
HyperData
type
NodeTexts
=
Node
HyperData
type
NodeCorpusV3
=
Node
HyperdataCorpus
type
NodeDocument
=
Node
HyperdataDocument
type
NodeAnnuaire
=
Node
HyperdataAnnuaire
-- | Any others nodes
type
NodeAny
=
Node
HyperdataAny
---- | Then a Node can be either a Graph or a Phylo or a Notebook
type
NodeList
=
Node
HyperdataList
type
NodeGraph
=
Node
HyperdataGraph
type
NodePhylo
=
Node
HyperdataPhylo
type
NodeNotebook
=
Node
HyperdataNotebook
------------------------------------------------------------------------
------------------------------------------------------------------------
-- | Then a Node can be either a Folder or a Corpus or a Document
data
NodeType
=
NodeUser
data
NodeType
=
NodeUser
|
NodeFolder
|
NodeFolder
|
NodeCorpus
|
NodeCorpusV3
|
NodeTexts
|
NodeDocument
|
NodeCorpus
|
NodeCorpusV3
|
NodeTexts
|
NodeDocument
|
NodeAnnuaire
|
NodeContact
|
NodeAnnuaire
|
NodeContact
|
NodeGraph
|
NodePhylo
|
NodeGraph
|
NodePhylo
|
NodeDashboard
|
NodeChart
|
NodeDashboard
|
NodeChart
|
NodeNoteBook
|
NodeList
|
NodeListModel
deriving
(
Show
,
Read
,
Eq
,
Generic
,
Bounded
,
Enum
)
|
NodeList
|
NodeListModel
deriving
(
Show
,
Read
,
Eq
,
Generic
,
Bounded
,
Enum
)
{-
{-
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment