@@ -3,9 +3,9 @@ module Docs.Search.ModuleIndex where
33import Docs.Search.Config as Config
44import Docs.Search.Declarations (Declarations(..))
55import Docs.Search.SearchResult (SearchResult(..))
6−import Docs.Search.Types (ModuleName, PackageName, PackageInfo(..), PackageScore)
6+import Docs.Search.Types (ModuleName, PackageInfo, PackageScore)
77import Docs.Search.Extra (stringToList)
8−import Docs.Search.Score (Scores, getPackageScoreForPackageName)
8+import Docs.Search.Score (Scores, getPackageScore)
99
1010import Prelude
1111
@@ -38,18 +38,18 @@ import Effect.Aff (Aff)
3838
3939
4040-- | Module index that is actually stored in a JS file.
41−type PackedModuleIndex = Map PackageName (Set ModuleName)
41+type PackedModuleIndex = Map PackageInfo (Set ModuleName)
4242
4343-- | "Expanded" module index that can be queried quickly.
44−type ModuleIndex = { packageModules :: Map PackageName (Set ModuleName)
45− , modulePackages :: Map ModuleName PackageName
44+type ModuleIndex = { packageModules :: Map PackageInfo (Set ModuleName)
45+ , modulePackages :: Map ModuleName PackageInfo
4646 , index :: Trie Char ModuleName
4747 }
4848
4949
5050type ModuleResult
5151 = { name :: ModuleName
52− , package :: PackageName
52+ , package :: PackageInfo
5353 , score :: PackageScore
5454 }
5555
@@ -58,9 +58,9 @@ unpackModuleIndex :: PackedModuleIndex -> ModuleIndex
5858unpackModuleIndex packageModules =
5959 flip execState { packageModules, modulePackages: mempty, index: mempty } do
6060 for_ (Map.toUnfoldableUnordered packageModules :: Array _)
61− \(packageName /\ moduleNames) -> do
61+ \(package /\ moduleNames) -> do
6262 for_ moduleNames \moduleName -> do
63− modify_ $ _modulePackages %~ Map.insert moduleName packageName
63+ modify_ $ _modulePackages %~ Map.insert moduleName package
6464 for_ (extractModuleNameParts moduleName) \part -> do
6565 let partPath = Array.toUnfoldable $ String.toCharArray part
6666 modify_ $ _index %~ Trie.insert partPath moduleName
@@ -87,7 +87,7 @@ queryModuleIndex scores { index, modulePackages } query =
8787 (\name -> do
8888 package <- Map.lookup name modulePackages
8989 pure { name, package
90− , score: getPackageScoreForPackageName scores package }) #
90+ , score: getPackageScore scores package }) #
9191 Array.catMaybes
9292
9393
@@ -98,12 +98,11 @@ mkPackedModuleIndex (Declarations trie) =
9898 where
9999 extract
100100 :: List SearchResult
101− -> Map PackageName (Set ModuleName)
101+ -> Map PackageInfo (Set ModuleName)
102102 extract = foldr (Map.unionWith Set.union) mempty <<< map mkEntry
103103 where
104− mkEntry (SearchResult { packageInfo: Package packageName, moduleName }) =
105− Map.singleton packageName (Set.singleton moduleName)
106− mkEntry _ = mempty
104+ mkEntry (SearchResult { packageInfo, moduleName }) =
105+ Map.singleton packageInfo (Set.singleton moduleName)
107106
108107loadModuleIndex :: Aff PackedModuleIndex
109108loadModuleIndex = do