Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
purescript-gargantext
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
142
Issues
142
List
Board
Labels
Milestones
Merge Requests
4
Merge Requests
4
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
purescript-gargantext
Commits
9c9ad8f9
Commit
9c9ad8f9
authored
Jul 31, 2024
by
Alexandre Delanoë
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/262-dev-phylo-doc-search-ux-improvements' into dev
parents
828f44c8
0fc58ba2
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
56 additions
and
13 deletions
+56
-13
DocList.purs
src/Gargantext/Components/GraphExplorer/Sidebar/DocList.purs
+28
-7
DocList.purs
src/Gargantext/Components/PhyloExplorer/Sidebar/DocList.purs
+28
-6
No files found.
src/Gargantext/Components/GraphExplorer/Sidebar/DocList.purs
View file @
9c9ad8f9
...
...
@@ -4,7 +4,7 @@ module Gargantext.Components.GraphExplorer.Sidebar.DocList
import Gargantext.Prelude
import Data.Array (catMaybes, head)
import Data.Array (catMaybes,
foldl,
head)
import Data.Array as A
import Data.Foldable (intercalate)
import Data.Map as Map
...
...
@@ -22,6 +22,7 @@ import Gargantext.Components.GraphExplorer.Types as GET
import Gargantext.Config (defaultFrontends)
import Gargantext.Config.REST (RESTError(..))
import Gargantext.Ends (Frontends, url)
import Gargantext.Hooks.LinkHandler (useLinkHandler)
import Gargantext.Hooks.Loader (useLoaderEffect)
import Gargantext.Hooks.Session (useSession)
import Gargantext.Hooks.Sigmax.Types as SigmaxT
...
...
@@ -173,6 +174,8 @@ docListCpt = here.component "main" cpt where
, state
}
{ goToURL } <- useLinkHandler
-- | Effects
-- |
...
...
@@ -234,6 +237,16 @@ docListCpt = here.component "main" cpt where
_
= false
webSearch :: Array String -> (String -> Effect Unit) -> Effect Unit
webSearch q f = do
let url = foldl (\acc elem -> acc <> (elem <> "+")) "https://duckduckgo.com/?q=" q
f url
wikipediaSearch :: Array String -> (String -> Effect Unit) -> Effect Unit
wikipediaSearch q f = do
let url = foldl (\acc elem -> acc <> (elem <> "+")) "https://en.wikipedia.org/w/index.php?search=" q
f url
-- | Render
-- |
pure $
...
...
@@ -243,11 +256,19 @@ docListCpt = here.component "main" cpt where
R.fragment
[
R2.when (results == Seq.empty) $
B.caveat
H.div {}
[
H.ul { className: "flex-row list-group vertical-align-middle" }
[ H.li {} [ andOrButton { state: buttonState } ]
, H.li {} [ H.h6 {} [ H.text "No related documents" ] ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ -> webSearch (A.fromFoldable selectedNgramsTerms') goToURL } ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ -> wikipediaSearch (A.fromFoldable selectedNgramsTerms') goToURL } ]
]
, B.caveat
{}
[
H.text "Searching relevant document(s)"
H.text "No document found in your corpus for your selected terms"
]
]
,
R2.when (not $ eq results Seq.empty) $
...
...
@@ -257,8 +278,8 @@ docListCpt = here.component "main" cpt where
H.ul { className: "flex-row list-group vertical-align-middle" }
[ H.li {} [ andOrButton { state: buttonState } ]
, H.li {} [ H.h6 {} [ H.text $ show (Seq.length results) <> " related documents" ] ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ ->
pure unit
} ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ ->
pure unit
} ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ ->
webSearch (A.fromFoldable selectedNgramsTerms') goToURL
} ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ ->
wikipediaSearch (A.fromFoldable selectedNgramsTerms') goToURL
} ]
]
, H.ul
{ className: intercalate " "
...
...
src/Gargantext/Components/PhyloExplorer/Sidebar/DocList.purs
View file @
9c9ad8f9
...
...
@@ -4,6 +4,7 @@ module Gargantext.Components.PhyloExplorer.Sidebar.DocList
import Gargantext.Prelude
import Data.Array (foldl)
import Data.Array as A
import Data.Foldable (intercalate)
import Data.Maybe (Maybe(..))
...
...
@@ -19,6 +20,7 @@ import Gargantext.Components.Search (SearchQuery(..), SearchType(..))
import Gargantext.Config (defaultFrontends)
import Gargantext.Config.REST (RESTError(..))
import Gargantext.Ends (Frontends, url)
import Gargantext.Hooks.LinkHandler (useLinkHandler)
import Gargantext.Hooks.Loader (useLoaderEffect)
import Gargantext.Hooks.Session (useSession)
import Gargantext.Hooks.UpdateEffect (useUpdateEffect1')
...
...
@@ -162,6 +164,8 @@ docListCpt = here.component "main" cpt where
, path: path'
}
{ goToURL } <- useLinkHandler
-- | Effects
-- |
...
...
@@ -220,6 +224,16 @@ docListCpt = here.component "main" cpt where
_
= false
webSearch :: Array String -> (String -> Effect Unit) -> Effect Unit
webSearch q f = do
let url = foldl (\acc elem -> acc <> (elem <> "+")) "https://duckduckgo.com/?q=" q
f url
wikipediaSearch :: Array String -> (String -> Effect Unit) -> Effect Unit
wikipediaSearch q f = do
let url = foldl (\acc elem -> acc <> (elem <> "+")) "https://en.wikipedia.org/w/index.php?search=" q
f url
-- | Render
-- |
pure $
...
...
@@ -229,12 +243,20 @@ docListCpt = here.component "main" cpt where
R.fragment
[
R2.when (results == Seq.empty) $
B.caveat
H.div {}
[
H.ul { className: "flex-row list-group vertical-align-middle" }
[ H.li {} [ andOrButton { state: buttonState } ]
, H.li {} [ H.h6 {} [ H.text "No related documents" ] ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ -> webSearch q' goToURL} ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ -> wikipediaSearch q' goToURL} ]
]
, B.caveat
{}
[
H.text "No document found in your corpus for your selected terms"
]
]
,
R2.when (not $ eq results Seq.empty) $
H.div {}
...
...
@@ -242,8 +264,8 @@ docListCpt = here.component "main" cpt where
H.ul { className: "flex-row list-group vertical-align-middle" }
[ H.li {} [ andOrButton { state: buttonState } ]
, H.li {} [ H.h6 {} [ H.text $ show (Seq.length results) <> " related documents" ] ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ ->
pure unit
} ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ ->
pure unit
} ]
, H.li {} [ B.iconButton { name: "search", title: "Search the web", callback: \_ ->
webSearch q' goToURL
} ]
, H.li {} [ B.iconButton { name: "wikipedia-w", title: "Search Wikipedia", callback: \_ ->
wikipediaSearch q' goToURL
} ]
]
,
H.ul
...
...
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