package service import ( "strings" "time" "google.golang.org/protobuf/types/known/timestamppb" ) func stringPointerOrNil(value string) *string { trimmed := strings.TrimSpace(value) if trimmed == "" { return nil } return &trimmed } func timeToProto(value *time.Time) *timestamppb.Timestamp { if value == nil { return nil } return timestamppb.New(value.UTC()) } func boolValue(value *bool) bool { return value != nil && *value } func stringValue(value *string) string { if value == nil { return "" } return *value } func int32PtrToInt64Ptr(value *int32) *int64 { if value == nil { return nil } converted := int64(*value) return &converted } func int64PtrToInt32Ptr(value *int64) *int32 { if value == nil { return nil } converted := int32(*value) return &converted } func int32Ptr(value int32) *int32 { return &value } func protoTimestampToTime(value *timestamppb.Timestamp) *time.Time { if value == nil { return nil } timeValue := value.AsTime().UTC() return &timeValue } func protoStringValue(value *string) string { if value == nil { return "" } return strings.TrimSpace(*value) } func nullableTrimmedStringPtr(value *string) *string { if value == nil { return nil } trimmed := strings.TrimSpace(*value) if trimmed == "" { return nil } return &trimmed } func nullableTrimmedString(value *string) *string { if value == nil { return nil } trimmed := strings.TrimSpace(*value) if trimmed == "" { return nil } return &trimmed }