chore: support fr locale

This commit is contained in:
Steven
2024-05-21 21:57:03 +08:00
parent 4444c72042
commit 6746b9dc58
17 changed files with 216 additions and 197 deletions

View File

@ -260,7 +260,7 @@ func (s *APIV1Service) DeleteUserAccessToken(ctx context.Context, request *apiv1
}
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
UserId: user.ID,
Key: storepb.UserSettingKey_USER_SETTING_ACCESS_TOKENS,
Key: storepb.UserSettingKey_ACCESS_TOKENS,
Value: &storepb.UserSetting_AccessTokens{
AccessTokens: &storepb.AccessTokensUserSetting{
AccessTokens: updatedUserAccessTokens,
@ -285,7 +285,7 @@ func (s *APIV1Service) UpsertAccessTokenToStore(ctx context.Context, user *store
userAccessTokens = append(userAccessTokens, &userAccessToken)
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
UserId: user.ID,
Key: storepb.UserSettingKey_USER_SETTING_ACCESS_TOKENS,
Key: storepb.UserSettingKey_ACCESS_TOKENS,
Value: &storepb.UserSetting_AccessTokens{
AccessTokens: &storepb.AccessTokensUserSetting{
AccessTokens: userAccessTokens,

View File

@ -35,7 +35,7 @@ func (s *APIV1Service) UpdateUserSetting(ctx context.Context, request *apiv1pb.U
if path == "locale" {
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
UserId: user.ID,
Key: storepb.UserSettingKey_USER_SETTING_LOCALE,
Key: storepb.UserSettingKey_LOCALE,
Value: &storepb.UserSetting_Locale{
Locale: convertUserSettingLocaleToStore(request.UserSetting.Locale),
},
@ -45,7 +45,7 @@ func (s *APIV1Service) UpdateUserSetting(ctx context.Context, request *apiv1pb.U
} else if path == "color_theme" {
if _, err := s.Store.UpsertUserSetting(ctx, &storepb.UserSetting{
UserId: user.ID,
Key: storepb.UserSettingKey_USER_SETTING_COLOR_THEME,
Key: storepb.UserSettingKey_COLOR_THEME,
Value: &storepb.UserSetting_ColorTheme{
ColorTheme: convertUserSettingColorThemeToStore(request.UserSetting.ColorTheme),
},
@ -80,9 +80,9 @@ func getUserSetting(ctx context.Context, s *store.Store, userID int32) (*apiv1pb
ColorTheme: apiv1pb.UserSetting_COLOR_THEME_SYSTEM,
}
for _, setting := range userSettings {
if setting.Key == storepb.UserSettingKey_USER_SETTING_LOCALE {
if setting.Key == storepb.UserSettingKey_LOCALE {
userSetting.Locale = convertUserSettingLocaleFromStore(setting.GetLocale())
} else if setting.Key == storepb.UserSettingKey_USER_SETTING_COLOR_THEME {
} else if setting.Key == storepb.UserSettingKey_COLOR_THEME {
userSetting.ColorTheme = convertUserSettingColorThemeFromStore(setting.GetColorTheme())
}
}
@ -92,9 +92,11 @@ func getUserSetting(ctx context.Context, s *store.Store, userID int32) (*apiv1pb
func convertUserSettingLocaleToStore(locale apiv1pb.UserSetting_Locale) storepb.LocaleUserSetting {
switch locale {
case apiv1pb.UserSetting_LOCALE_EN:
return storepb.LocaleUserSetting_LOCALE_USER_SETTING_EN
return storepb.LocaleUserSetting_EN
case apiv1pb.UserSetting_LOCALE_ZH:
return storepb.LocaleUserSetting_LOCALE_USER_SETTING_ZH
return storepb.LocaleUserSetting_ZH
case apiv1pb.UserSetting_LOCALE_FR:
return storepb.LocaleUserSetting_FR
default:
return storepb.LocaleUserSetting_LOCALE_USER_SETTING_UNSPECIFIED
}
@ -102,10 +104,12 @@ func convertUserSettingLocaleToStore(locale apiv1pb.UserSetting_Locale) storepb.
func convertUserSettingLocaleFromStore(locale storepb.LocaleUserSetting) apiv1pb.UserSetting_Locale {
switch locale {
case storepb.LocaleUserSetting_LOCALE_USER_SETTING_EN:
case storepb.LocaleUserSetting_EN:
return apiv1pb.UserSetting_LOCALE_EN
case storepb.LocaleUserSetting_LOCALE_USER_SETTING_ZH:
case storepb.LocaleUserSetting_ZH:
return apiv1pb.UserSetting_LOCALE_ZH
case storepb.LocaleUserSetting_FR:
return apiv1pb.UserSetting_LOCALE_FR
default:
return apiv1pb.UserSetting_LOCALE_UNSPECIFIED
}
@ -114,11 +118,11 @@ func convertUserSettingLocaleFromStore(locale storepb.LocaleUserSetting) apiv1pb
func convertUserSettingColorThemeToStore(colorTheme apiv1pb.UserSetting_ColorTheme) storepb.ColorThemeUserSetting {
switch colorTheme {
case apiv1pb.UserSetting_COLOR_THEME_SYSTEM:
return storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_SYSTEM
return storepb.ColorThemeUserSetting_SYSTEM
case apiv1pb.UserSetting_COLOR_THEME_LIGHT:
return storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_LIGHT
return storepb.ColorThemeUserSetting_LIGHT
case apiv1pb.UserSetting_COLOR_THEME_DARK:
return storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_DARK
return storepb.ColorThemeUserSetting_DARK
default:
return storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_UNSPECIFIED
}
@ -126,11 +130,11 @@ func convertUserSettingColorThemeToStore(colorTheme apiv1pb.UserSetting_ColorThe
func convertUserSettingColorThemeFromStore(colorTheme storepb.ColorThemeUserSetting) apiv1pb.UserSetting_ColorTheme {
switch colorTheme {
case storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_SYSTEM:
case storepb.ColorThemeUserSetting_SYSTEM:
return apiv1pb.UserSetting_COLOR_THEME_SYSTEM
case storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_LIGHT:
case storepb.ColorThemeUserSetting_LIGHT:
return apiv1pb.UserSetting_COLOR_THEME_LIGHT
case storepb.ColorThemeUserSetting_COLOR_THEME_USER_SETTING_DARK:
case storepb.ColorThemeUserSetting_DARK:
return apiv1pb.UserSetting_COLOR_THEME_DARK
default:
return apiv1pb.UserSetting_COLOR_THEME_UNSPECIFIED

View File

@ -87,7 +87,7 @@ func NewServer(ctx context.Context, profile *profile.Profile, store *store.Store
func (s *Server) Start(ctx context.Context) error {
// Load subscription.
if _, err := s.licenseService.LoadSubscription(ctx); err != nil {
slog.Error("failed to load subscription", err)
slog.Error("failed to load subscription", slog.Any("error", err))
}
// Start gRPC server.
listen, err := net.Listen("tcp", fmt.Sprintf(":%d", s.Profile.Port+1))