b128447a7e
- Updated titles and subtitles in channel_service.go for web channel and WeChat MP channel configurations. - Changed handoff messages in conversation_human_dispatch_service.go to English. - Modified notification messages in event handlers for ticket and conversation assignments to English. - Adjusted ticket creation messages in ticket_service.go to reflect English localization. - Updated default locale settings in i18n configuration files to English (en-US). - Changed HTML language attribute in layout.tsx to English. - Refactored widget locale detection logic in agent-desk-sdk.ts to prioritize English.
37 lines
713 B
Go
37 lines
713 B
Go
package i18nx
|
|
|
|
import (
|
|
"embed"
|
|
"log/slog"
|
|
"sync"
|
|
|
|
"github.com/nicksnyder/go-i18n/v2/i18n"
|
|
"github.com/pelletier/go-toml/v2"
|
|
"golang.org/x/text/language"
|
|
)
|
|
|
|
//go:embed locales/*.toml
|
|
var messageFiles embed.FS
|
|
|
|
var (
|
|
bundleOnce sync.Once
|
|
bundle *i18n.Bundle
|
|
)
|
|
|
|
func Bundle() *i18n.Bundle {
|
|
bundleOnce.Do(func() {
|
|
b := i18n.NewBundle(language.AmericanEnglish)
|
|
b.RegisterUnmarshalFunc("toml", toml.Unmarshal)
|
|
for _, name := range []string{
|
|
"locales/active.zh-CN.toml",
|
|
"locales/active.en-US.toml",
|
|
} {
|
|
if _, err := b.LoadMessageFileFS(messageFiles, name); err != nil {
|
|
slog.Error("load i18n message file failed", "file", name, "err", err)
|
|
}
|
|
}
|
|
bundle = b
|
|
})
|
|
return bundle
|
|
}
|