github.com/voedger/voedger@v0.0.0-20240520144910-273e84102129/pkg/utils/l10n.go (about)

     1  /*
     2   * Copyright (c) 2023-present unTill Pro, Ltd.
     3   * @author Alisher Nurmanov
     4   */
     5  
     6  package coreutils
     7  
     8  import (
     9  	"golang.org/x/text/language"
    10  	"golang.org/x/text/message/catalog"
    11  )
    12  
    13  type Translations map[string]map[language.Tag]string
    14  
    15  func GetCatalogFromTranslations(t Translations) catalog.Catalog {
    16  	ctlg := catalog.NewBuilder()
    17  	for toBeTranslated, langTranslationMap := range t {
    18  		for lang, translation := range langTranslationMap {
    19  			if err := ctlg.SetString(lang, toBeTranslated, translation); err != nil {
    20  				panic(err)
    21  			}
    22  		}
    23  	}
    24  	return ctlg
    25  }