in internal/mode/advanced/indexer/indexer.go [135:179]
func (i *Indexer) submitWikiBlob(f *git.File, _, toCommit string) error {
wikiBlob, err := BuildBlob(f, i.wikiSourceId(), toCommit, "wiki_blob", i.Encoder, i.Submitter.IsProjectDocument())
if err != nil {
return fmt.Errorf("WikiBlob %s: %w", f.Path, err)
}
indexJsonData, err := wikiBlob.ToMap()
if err != nil {
return fmt.Errorf("WikiBlob %w", err)
}
if i.Submitter.IsProjectDocument() {
indexJsonData["project_id"] = i.Submitter.ParentID()
indexJsonData["rid"] = strings.Replace(wikiBlob.RepoID, "wiki", "wiki_project", 1)
if i.Submitter.Archived() != "" {
archived, err := extractArchivedFlag(i.Submitter.Archived())
if err != nil {
return err
}
indexJsonData["archived"] = archived
}
}
if i.Submitter.ParentGroupID() > 0 {
indexJsonData["group_id"] = i.Submitter.ParentGroupID()
// Group wiki
if i.Submitter.IsGroupDocument() {
indexJsonData["rid"] = strings.Replace(wikiBlob.RepoID, "wiki", "wiki_group", 1)
}
}
indexJsonData["schema_version"] = i.Submitter.SchemaVersionWiki()
if i.Submitter.TraversalIDs() != "" {
indexJsonData["traversal_ids"] = i.Submitter.TraversalIDs()
}
if permissions := i.Submitter.WikiPermissions(); permissions != nil {
indexJsonData["visibility_level"] = permissions.VisibilityLevel
indexJsonData["wiki_access_level"] = permissions.WikiAccessLevel
}
i.Submitter.Index("wiki_blob", wikiBlob.ID, indexJsonData)
return nil
}