@@ -5,7 +5,7 @@ import Docs.Search.Declarations (Declarations, mkDeclarations)
5import Docs.Search.DocsJson (DataDeclType(..))
5import Docs.Search.DocsJson (DataDeclType(..))
6import Docs.Search.Engine (mkEngineState, packageInfoToString, Result(..))
6import Docs.Search.Engine (mkEngineState, packageInfoToString, Result(..))
7import Docs.Search.Engine as Engine
7import Docs.Search.Engine as Engine
8−import Docs.Search.Extra (listToString, stringToList, (>#>))
8+import Docs.Search.Extra (stringToList, (>#>))
9import Docs.Search.IndexBuilder as IndexBuilder
9import Docs.Search.IndexBuilder as IndexBuilder
10import Docs.Search.ModuleIndex (ModuleResult, mkPackedModuleIndex, unpackModuleIndex)
10import Docs.Search.ModuleIndex (ModuleResult, mkPackedModuleIndex, unpackModuleIndex)
11import Docs.Search.NodeEngine (nodeEngine)
11import Docs.Search.NodeEngine (nodeEngine)
@@ -22,12 +22,12 @@ import Prelude
23import Data.Array as Array
23import Data.Array as Array
24import Data.Identity (Identity(..))
24import Data.Identity (Identity(..))
25+import Data.List as List
25import Data.Maybe (fromMaybe)
26import Data.Maybe (fromMaybe)
26import Data.Newtype (un, unwrap, wrap)
27import Data.Newtype (un, unwrap, wrap)
27import Data.Search.Trie as Trie
28import Data.Search.Trie as Trie
28import Data.String (length) as String
29import Data.String (length) as String
29−import Data.String.Common (split, trim) as String
30+import Data.String.Common (split, toLower, trim) as String
30−import Data.Tuple (fst)
31import Effect (Effect)
31import Effect (Effect)
32import Effect.Aff (launchAff_)
32import Effect.Aff (launchAff_)
33import Effect.Class (liftEffect)
33import Effect.Class (liftEffect)
@@ -105,14 +105,13 @@ mkCompleter
105 -> Effect { completions :: Array String
105 -> Effect { completions :: Array String
106 , matched :: String }
106 , matched :: String }
107mkCompleter index input = do
107mkCompleter index input = do
108− let path = stringToList input
108+ let path = stringToList $ String.toLower input
109− let paths =
109+ paths =
110 Array.fromFoldable $
110 Array.fromFoldable $
111− listToString <$>
111+ (\result -> unwrap (unwrap result).name) <$>
112− (fst <$> Trie.query path (unwrap index))
112+ List.concat (Trie.queryValues path (unwrap index))
114− pure { completions: paths
114+ pure { completions: paths, matched: input }
118showResult :: Result -> String
117showResult :: Result -> String