package converts import ( "strings" "github.com/aarondl/opt/omit" "github.com/tigorlazuardi/bluemage/go/api" "github.com/tigorlazuardi/bluemage/go/gen/jet/model" "github.com/tigorlazuardi/bluemage/go/gen/models" subreddits "github.com/tigorlazuardi/bluemage/go/gen/proto/subreddits/v1" ) // goverter:converter // goverter:extend BoolToInt8 // goverter:extend Int8ToBool // goverter:extend PtrBoolToOmitInt8 // goverter:extend BoolToOmitInt8 // goverter:extend PtrStringToOmitString // goverter:extend PtrFloat64ToOmitFloat64 // goverter:extend PtrInt32ToOmitInt32 // goverter:extend PtrInt64ToOmitInt64 // goverter:extend PtrIntToOmitInt // goverter:extend PtrInt8ToOmitInt8 // goverter:extend IntToOmitInt // goverter:extend Int8ToOmitInt8 // goverter:extend Int32ToOmitInt32 // goverter:extend Int64ToOmitInt64 // goverter:extend Float64ToOmitFloat64 // goverter:extend StringToOmitString // goverter:extend SubredditTypeToString // goverter:extend SubredditTypeToOmitString // goverter:extend SubredditsDisabledFilterToPtrBool // goverter:extend Int8ToSubredditDisabledFilter // goverter:extend StringToSubredditType // goverter:extend SubredditsOrderByToString // goverter:extend SubredditsSortToString type SubredditConverter interface { // goverter:ignore CreatedAt UpdatedAt CoverImageID CreateSubredditRequestToModelsSubredditSetter(*subreddits.CreateSubredditRequest) *models.SubredditSetter // goverter:useZeroValueOnPointerInconsistency ProtoCountSubredditsRequestToAPICountSubredditsRequest(*subreddits.CountSubredditsRequest) api.CountSubredditsRequest // goverter:ignore state sizeCache unknownFields // goverter:map CoverImageID CoverImageId JetSubredditToProtoSubreddit(model.Subreddits) *subreddits.Subreddit JetSubredditsToProtoSubreddits([]model.Subreddits) []*subreddits.Subreddit // goverter:useZeroValueOnPointerInconsistency ProtoListSubredditsRequestToAPIListSubredditsRequest(*subreddits.ListSubredditsRequest) api.ListSubredditsRequest } func SubredditTypeToString(subType subreddits.SubredditType) string { if subType == subreddits.SubredditType_SUBREDDIT_TYPE_USER { return "user" } return "r" } func SubredditTypeToOmitString(subType subreddits.SubredditType) omit.Val[string] { if subType == subreddits.SubredditType_SUBREDDIT_TYPE_USER { return omit.From("user") } return omit.From("r") } func SubredditsDisabledFilterToPtrBool(filter subreddits.DisabledFilter) *bool { switch filter { case subreddits.DisabledFilter_DISABLED_FILTER_TRUE: return boolPtr(true) case subreddits.DisabledFilter_DISABLED_FILTER_FALSE: return boolPtr(false) } return nil } func Int8ToSubredditDisabledFilter(i int8) subreddits.DisabledFilter { if i == 1 { return subreddits.DisabledFilter_DISABLED_FILTER_TRUE } return subreddits.DisabledFilter_DISABLED_FILTER_FALSE } func StringToSubredditType(s string) subreddits.SubredditType { if s == "user" { return subreddits.SubredditType_SUBREDDIT_TYPE_USER } return subreddits.SubredditType_SUBREDDIT_TYPE_SUBREDDIT } func SubredditsOrderByToString(order subreddits.OrderBy) string { if order == subreddits.OrderBy_ORDER_BY_UNSPECIFIED { return "" } field, _ := strings.CutPrefix(subreddits.OrderBy_name[int32(order)], "ORDER_BY_") field = strings.ToLower(field) return field } func SubredditsSortToString(sort subreddits.Sort) api.Sort { if sort == subreddits.Sort_SORT_DESCENDING { return api.SortDesc } return api.SortAsc }