all repos — searchix @ ab21d46e298bcf5caf5ef50a12127df89f8caa5f

Search engine for NixOS, nix-darwin, home-manager and NUR users

feat: add 'parents' facet to options

Alan Pearce
commit

ab21d46e298bcf5caf5ef50a12127df89f8caa5f

parent

82cfb98df7f9e38f295d3ea1d46b343914947307

M internal/importer/options.gointernal/importer/options.go
@@ -4,6 +4,7 @@ import (
"context" "io" "reflect" + "strings" "time" "alin.ovh/x/log"
@@ -180,6 +181,7 @@ Description: nix.Markdown(i.optJSON.Description),
Example: i.convertDocsValue(i.optJSON.Example), RelatedPackages: nix.Markdown(i.optJSON.RelatedPackages), Loc: i.optJSON.Loc, + Parents: strings.Join(i.optJSON.Loc[:len(i.optJSON.Loc)-1], "."), Type: i.optJSON.Type, ImportedAt: time.Now(), }
M internal/index/indexer.gointernal/index/indexer.go
@@ -146,6 +146,7 @@ nameNGramMapping,
) optionMapping.AddFieldMappingsAt("Source", identityFieldMapping) optionMapping.AddFieldMappingsAt("Loc", locFieldMapping) + optionMapping.AddFieldMappingsAt("Parents", locFieldMapping) optionMapping.AddFieldMappingsAt("RelatedPackages", textFieldMapping) optionMapping.AddFieldMappingsAt("Description", descriptionFieldMapping)
M internal/index/search.gointernal/index/search.go
@@ -253,6 +253,9 @@ if source == nil || source.Importer == config.Packages {
search.AddFacet("Package set", bleve.NewFacetRequest("PackageSet", 10)) search.AddFacet("Platform", bleve.NewFacetRequest("Platforms", 10)) } + if source == nil || source.Importer == config.Options { + search.AddFacet("Option set", bleve.NewFacetRequest("Parents", 10)) + } if from != 0 { search.From = from
M internal/nix/option.gointernal/nix/option.go
@@ -30,6 +30,7 @@ Default *Docs `json:",omitempty"`
Description Markdown Example *Docs `json:",omitempty"` Loc []string + Parents string RelatedPackages Markdown `json:",omitempty"` Type string ImportedAt time.Time `storm:"index"`