feat: add test database setup and usage helpers
- Introduced a new test file for setting up an in-memory SQLite database for testing purposes. - Added helper functions for seeding test data, including users, plans, subscriptions, and wallet transactions. - Implemented usage helpers to load user video counts and storage usage. - Created user payload struct and functions to build user payloads with preferences and wallet balance. - Refactored gRPC server setup to include new services and handlers. - Updated proto files to simplify service definitions by removing redundant service prefixes.
This commit is contained in:
631
internal/api/proto/app/v1/payments.pb.go
Normal file
631
internal/api/proto/app/v1/payments.pb.go
Normal file
@@ -0,0 +1,631 @@
|
||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||||
// versions:
|
||||
// protoc-gen-go v1.36.11
|
||||
// protoc (unknown)
|
||||
// source: app/v1/payments.proto
|
||||
|
||||
package appv1
|
||||
|
||||
import (
|
||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||||
reflect "reflect"
|
||||
sync "sync"
|
||||
unsafe "unsafe"
|
||||
)
|
||||
|
||||
const (
|
||||
// Verify that this generated code is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||||
)
|
||||
|
||||
type CreatePaymentRequest struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
PlanId string `protobuf:"bytes,1,opt,name=plan_id,json=planId,proto3" json:"plan_id,omitempty"`
|
||||
TermMonths int32 `protobuf:"varint,2,opt,name=term_months,json=termMonths,proto3" json:"term_months,omitempty"`
|
||||
PaymentMethod string `protobuf:"bytes,3,opt,name=payment_method,json=paymentMethod,proto3" json:"payment_method,omitempty"`
|
||||
TopupAmount *float64 `protobuf:"fixed64,4,opt,name=topup_amount,json=topupAmount,proto3,oneof" json:"topup_amount,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) Reset() {
|
||||
*x = CreatePaymentRequest{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[0]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CreatePaymentRequest) ProtoMessage() {}
|
||||
|
||||
func (x *CreatePaymentRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[0]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CreatePaymentRequest.ProtoReflect.Descriptor instead.
|
||||
func (*CreatePaymentRequest) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{0}
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) GetPlanId() string {
|
||||
if x != nil {
|
||||
return x.PlanId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) GetTermMonths() int32 {
|
||||
if x != nil {
|
||||
return x.TermMonths
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) GetPaymentMethod() string {
|
||||
if x != nil {
|
||||
return x.PaymentMethod
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *CreatePaymentRequest) GetTopupAmount() float64 {
|
||||
if x != nil && x.TopupAmount != nil {
|
||||
return *x.TopupAmount
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type CreatePaymentResponse struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Payment *Payment `protobuf:"bytes,1,opt,name=payment,proto3" json:"payment,omitempty"`
|
||||
Subscription *PlanSubscription `protobuf:"bytes,2,opt,name=subscription,proto3" json:"subscription,omitempty"`
|
||||
WalletBalance float64 `protobuf:"fixed64,3,opt,name=wallet_balance,json=walletBalance,proto3" json:"wallet_balance,omitempty"`
|
||||
InvoiceId string `protobuf:"bytes,4,opt,name=invoice_id,json=invoiceId,proto3" json:"invoice_id,omitempty"`
|
||||
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) Reset() {
|
||||
*x = CreatePaymentResponse{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[1]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*CreatePaymentResponse) ProtoMessage() {}
|
||||
|
||||
func (x *CreatePaymentResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[1]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use CreatePaymentResponse.ProtoReflect.Descriptor instead.
|
||||
func (*CreatePaymentResponse) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{1}
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) GetPayment() *Payment {
|
||||
if x != nil {
|
||||
return x.Payment
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) GetSubscription() *PlanSubscription {
|
||||
if x != nil {
|
||||
return x.Subscription
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) GetWalletBalance() float64 {
|
||||
if x != nil {
|
||||
return x.WalletBalance
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) GetInvoiceId() string {
|
||||
if x != nil {
|
||||
return x.InvoiceId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *CreatePaymentResponse) GetMessage() string {
|
||||
if x != nil {
|
||||
return x.Message
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type ListPaymentHistoryRequest struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Page int32 `protobuf:"varint,1,opt,name=page,proto3" json:"page,omitempty"`
|
||||
Limit int32 `protobuf:"varint,2,opt,name=limit,proto3" json:"limit,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryRequest) Reset() {
|
||||
*x = ListPaymentHistoryRequest{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[2]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*ListPaymentHistoryRequest) ProtoMessage() {}
|
||||
|
||||
func (x *ListPaymentHistoryRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[2]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use ListPaymentHistoryRequest.ProtoReflect.Descriptor instead.
|
||||
func (*ListPaymentHistoryRequest) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{2}
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryRequest) GetPage() int32 {
|
||||
if x != nil {
|
||||
return x.Page
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryRequest) GetLimit() int32 {
|
||||
if x != nil {
|
||||
return x.Limit
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type ListPaymentHistoryResponse struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Payments []*PaymentHistoryItem `protobuf:"bytes,1,rep,name=payments,proto3" json:"payments,omitempty"`
|
||||
Total int64 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
|
||||
Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page,omitempty"`
|
||||
Limit int32 `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
|
||||
HasPrev bool `protobuf:"varint,5,opt,name=has_prev,json=hasPrev,proto3" json:"has_prev,omitempty"`
|
||||
HasNext bool `protobuf:"varint,6,opt,name=has_next,json=hasNext,proto3" json:"has_next,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) Reset() {
|
||||
*x = ListPaymentHistoryResponse{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[3]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*ListPaymentHistoryResponse) ProtoMessage() {}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[3]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use ListPaymentHistoryResponse.ProtoReflect.Descriptor instead.
|
||||
func (*ListPaymentHistoryResponse) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{3}
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetPayments() []*PaymentHistoryItem {
|
||||
if x != nil {
|
||||
return x.Payments
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetTotal() int64 {
|
||||
if x != nil {
|
||||
return x.Total
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetPage() int32 {
|
||||
if x != nil {
|
||||
return x.Page
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetLimit() int32 {
|
||||
if x != nil {
|
||||
return x.Limit
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetHasPrev() bool {
|
||||
if x != nil {
|
||||
return x.HasPrev
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (x *ListPaymentHistoryResponse) GetHasNext() bool {
|
||||
if x != nil {
|
||||
return x.HasNext
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
type TopupWalletRequest struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Amount float64 `protobuf:"fixed64,1,opt,name=amount,proto3" json:"amount,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *TopupWalletRequest) Reset() {
|
||||
*x = TopupWalletRequest{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[4]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *TopupWalletRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*TopupWalletRequest) ProtoMessage() {}
|
||||
|
||||
func (x *TopupWalletRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[4]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use TopupWalletRequest.ProtoReflect.Descriptor instead.
|
||||
func (*TopupWalletRequest) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{4}
|
||||
}
|
||||
|
||||
func (x *TopupWalletRequest) GetAmount() float64 {
|
||||
if x != nil {
|
||||
return x.Amount
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
type TopupWalletResponse struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
WalletTransaction *WalletTransaction `protobuf:"bytes,1,opt,name=wallet_transaction,json=walletTransaction,proto3" json:"wallet_transaction,omitempty"`
|
||||
WalletBalance float64 `protobuf:"fixed64,2,opt,name=wallet_balance,json=walletBalance,proto3" json:"wallet_balance,omitempty"`
|
||||
InvoiceId string `protobuf:"bytes,3,opt,name=invoice_id,json=invoiceId,proto3" json:"invoice_id,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *TopupWalletResponse) Reset() {
|
||||
*x = TopupWalletResponse{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[5]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *TopupWalletResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*TopupWalletResponse) ProtoMessage() {}
|
||||
|
||||
func (x *TopupWalletResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[5]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use TopupWalletResponse.ProtoReflect.Descriptor instead.
|
||||
func (*TopupWalletResponse) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{5}
|
||||
}
|
||||
|
||||
func (x *TopupWalletResponse) GetWalletTransaction() *WalletTransaction {
|
||||
if x != nil {
|
||||
return x.WalletTransaction
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (x *TopupWalletResponse) GetWalletBalance() float64 {
|
||||
if x != nil {
|
||||
return x.WalletBalance
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
func (x *TopupWalletResponse) GetInvoiceId() string {
|
||||
if x != nil {
|
||||
return x.InvoiceId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type DownloadInvoiceRequest struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceRequest) Reset() {
|
||||
*x = DownloadInvoiceRequest{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[6]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceRequest) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*DownloadInvoiceRequest) ProtoMessage() {}
|
||||
|
||||
func (x *DownloadInvoiceRequest) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[6]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use DownloadInvoiceRequest.ProtoReflect.Descriptor instead.
|
||||
func (*DownloadInvoiceRequest) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{6}
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceRequest) GetId() string {
|
||||
if x != nil {
|
||||
return x.Id
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type DownloadInvoiceResponse struct {
|
||||
state protoimpl.MessageState `protogen:"open.v1"`
|
||||
Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"`
|
||||
ContentType string `protobuf:"bytes,2,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
|
||||
Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content,omitempty"`
|
||||
unknownFields protoimpl.UnknownFields
|
||||
sizeCache protoimpl.SizeCache
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceResponse) Reset() {
|
||||
*x = DownloadInvoiceResponse{}
|
||||
mi := &file_app_v1_payments_proto_msgTypes[7]
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceResponse) String() string {
|
||||
return protoimpl.X.MessageStringOf(x)
|
||||
}
|
||||
|
||||
func (*DownloadInvoiceResponse) ProtoMessage() {}
|
||||
|
||||
func (x *DownloadInvoiceResponse) ProtoReflect() protoreflect.Message {
|
||||
mi := &file_app_v1_payments_proto_msgTypes[7]
|
||||
if x != nil {
|
||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||||
if ms.LoadMessageInfo() == nil {
|
||||
ms.StoreMessageInfo(mi)
|
||||
}
|
||||
return ms
|
||||
}
|
||||
return mi.MessageOf(x)
|
||||
}
|
||||
|
||||
// Deprecated: Use DownloadInvoiceResponse.ProtoReflect.Descriptor instead.
|
||||
func (*DownloadInvoiceResponse) Descriptor() ([]byte, []int) {
|
||||
return file_app_v1_payments_proto_rawDescGZIP(), []int{7}
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceResponse) GetFilename() string {
|
||||
if x != nil {
|
||||
return x.Filename
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceResponse) GetContentType() string {
|
||||
if x != nil {
|
||||
return x.ContentType
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DownloadInvoiceResponse) GetContent() string {
|
||||
if x != nil {
|
||||
return x.Content
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
var File_app_v1_payments_proto protoreflect.FileDescriptor
|
||||
|
||||
const file_app_v1_payments_proto_rawDesc = "" +
|
||||
"\n" +
|
||||
"\x15app/v1/payments.proto\x12\rstream.app.v1\x1a\x13app/v1/common.proto\"\xb0\x01\n" +
|
||||
"\x14CreatePaymentRequest\x12\x17\n" +
|
||||
"\aplan_id\x18\x01 \x01(\tR\x06planId\x12\x1f\n" +
|
||||
"\vterm_months\x18\x02 \x01(\x05R\n" +
|
||||
"termMonths\x12%\n" +
|
||||
"\x0epayment_method\x18\x03 \x01(\tR\rpaymentMethod\x12&\n" +
|
||||
"\ftopup_amount\x18\x04 \x01(\x01H\x00R\vtopupAmount\x88\x01\x01B\x0f\n" +
|
||||
"\r_topup_amount\"\xee\x01\n" +
|
||||
"\x15CreatePaymentResponse\x120\n" +
|
||||
"\apayment\x18\x01 \x01(\v2\x16.stream.app.v1.PaymentR\apayment\x12C\n" +
|
||||
"\fsubscription\x18\x02 \x01(\v2\x1f.stream.app.v1.PlanSubscriptionR\fsubscription\x12%\n" +
|
||||
"\x0ewallet_balance\x18\x03 \x01(\x01R\rwalletBalance\x12\x1d\n" +
|
||||
"\n" +
|
||||
"invoice_id\x18\x04 \x01(\tR\tinvoiceId\x12\x18\n" +
|
||||
"\amessage\x18\x05 \x01(\tR\amessage\"E\n" +
|
||||
"\x19ListPaymentHistoryRequest\x12\x12\n" +
|
||||
"\x04page\x18\x01 \x01(\x05R\x04page\x12\x14\n" +
|
||||
"\x05limit\x18\x02 \x01(\x05R\x05limit\"\xd1\x01\n" +
|
||||
"\x1aListPaymentHistoryResponse\x12=\n" +
|
||||
"\bpayments\x18\x01 \x03(\v2!.stream.app.v1.PaymentHistoryItemR\bpayments\x12\x14\n" +
|
||||
"\x05total\x18\x02 \x01(\x03R\x05total\x12\x12\n" +
|
||||
"\x04page\x18\x03 \x01(\x05R\x04page\x12\x14\n" +
|
||||
"\x05limit\x18\x04 \x01(\x05R\x05limit\x12\x19\n" +
|
||||
"\bhas_prev\x18\x05 \x01(\bR\ahasPrev\x12\x19\n" +
|
||||
"\bhas_next\x18\x06 \x01(\bR\ahasNext\",\n" +
|
||||
"\x12TopupWalletRequest\x12\x16\n" +
|
||||
"\x06amount\x18\x01 \x01(\x01R\x06amount\"\xac\x01\n" +
|
||||
"\x13TopupWalletResponse\x12O\n" +
|
||||
"\x12wallet_transaction\x18\x01 \x01(\v2 .stream.app.v1.WalletTransactionR\x11walletTransaction\x12%\n" +
|
||||
"\x0ewallet_balance\x18\x02 \x01(\x01R\rwalletBalance\x12\x1d\n" +
|
||||
"\n" +
|
||||
"invoice_id\x18\x03 \x01(\tR\tinvoiceId\"(\n" +
|
||||
"\x16DownloadInvoiceRequest\x12\x0e\n" +
|
||||
"\x02id\x18\x01 \x01(\tR\x02id\"r\n" +
|
||||
"\x17DownloadInvoiceResponse\x12\x1a\n" +
|
||||
"\bfilename\x18\x01 \x01(\tR\bfilename\x12!\n" +
|
||||
"\fcontent_type\x18\x02 \x01(\tR\vcontentType\x12\x18\n" +
|
||||
"\acontent\x18\x03 \x01(\tR\acontent2\x89\x03\n" +
|
||||
"\bPayments\x12Z\n" +
|
||||
"\rCreatePayment\x12#.stream.app.v1.CreatePaymentRequest\x1a$.stream.app.v1.CreatePaymentResponse\x12i\n" +
|
||||
"\x12ListPaymentHistory\x12(.stream.app.v1.ListPaymentHistoryRequest\x1a).stream.app.v1.ListPaymentHistoryResponse\x12T\n" +
|
||||
"\vTopupWallet\x12!.stream.app.v1.TopupWalletRequest\x1a\".stream.app.v1.TopupWalletResponse\x12`\n" +
|
||||
"\x0fDownloadInvoice\x12%.stream.app.v1.DownloadInvoiceRequest\x1a&.stream.app.v1.DownloadInvoiceResponseB,Z*stream.api/internal/gen/proto/app/v1;appv1b\x06proto3"
|
||||
|
||||
var (
|
||||
file_app_v1_payments_proto_rawDescOnce sync.Once
|
||||
file_app_v1_payments_proto_rawDescData []byte
|
||||
)
|
||||
|
||||
func file_app_v1_payments_proto_rawDescGZIP() []byte {
|
||||
file_app_v1_payments_proto_rawDescOnce.Do(func() {
|
||||
file_app_v1_payments_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_app_v1_payments_proto_rawDesc), len(file_app_v1_payments_proto_rawDesc)))
|
||||
})
|
||||
return file_app_v1_payments_proto_rawDescData
|
||||
}
|
||||
|
||||
var file_app_v1_payments_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
|
||||
var file_app_v1_payments_proto_goTypes = []any{
|
||||
(*CreatePaymentRequest)(nil), // 0: stream.app.v1.CreatePaymentRequest
|
||||
(*CreatePaymentResponse)(nil), // 1: stream.app.v1.CreatePaymentResponse
|
||||
(*ListPaymentHistoryRequest)(nil), // 2: stream.app.v1.ListPaymentHistoryRequest
|
||||
(*ListPaymentHistoryResponse)(nil), // 3: stream.app.v1.ListPaymentHistoryResponse
|
||||
(*TopupWalletRequest)(nil), // 4: stream.app.v1.TopupWalletRequest
|
||||
(*TopupWalletResponse)(nil), // 5: stream.app.v1.TopupWalletResponse
|
||||
(*DownloadInvoiceRequest)(nil), // 6: stream.app.v1.DownloadInvoiceRequest
|
||||
(*DownloadInvoiceResponse)(nil), // 7: stream.app.v1.DownloadInvoiceResponse
|
||||
(*Payment)(nil), // 8: stream.app.v1.Payment
|
||||
(*PlanSubscription)(nil), // 9: stream.app.v1.PlanSubscription
|
||||
(*PaymentHistoryItem)(nil), // 10: stream.app.v1.PaymentHistoryItem
|
||||
(*WalletTransaction)(nil), // 11: stream.app.v1.WalletTransaction
|
||||
}
|
||||
var file_app_v1_payments_proto_depIdxs = []int32{
|
||||
8, // 0: stream.app.v1.CreatePaymentResponse.payment:type_name -> stream.app.v1.Payment
|
||||
9, // 1: stream.app.v1.CreatePaymentResponse.subscription:type_name -> stream.app.v1.PlanSubscription
|
||||
10, // 2: stream.app.v1.ListPaymentHistoryResponse.payments:type_name -> stream.app.v1.PaymentHistoryItem
|
||||
11, // 3: stream.app.v1.TopupWalletResponse.wallet_transaction:type_name -> stream.app.v1.WalletTransaction
|
||||
0, // 4: stream.app.v1.Payments.CreatePayment:input_type -> stream.app.v1.CreatePaymentRequest
|
||||
2, // 5: stream.app.v1.Payments.ListPaymentHistory:input_type -> stream.app.v1.ListPaymentHistoryRequest
|
||||
4, // 6: stream.app.v1.Payments.TopupWallet:input_type -> stream.app.v1.TopupWalletRequest
|
||||
6, // 7: stream.app.v1.Payments.DownloadInvoice:input_type -> stream.app.v1.DownloadInvoiceRequest
|
||||
1, // 8: stream.app.v1.Payments.CreatePayment:output_type -> stream.app.v1.CreatePaymentResponse
|
||||
3, // 9: stream.app.v1.Payments.ListPaymentHistory:output_type -> stream.app.v1.ListPaymentHistoryResponse
|
||||
5, // 10: stream.app.v1.Payments.TopupWallet:output_type -> stream.app.v1.TopupWalletResponse
|
||||
7, // 11: stream.app.v1.Payments.DownloadInvoice:output_type -> stream.app.v1.DownloadInvoiceResponse
|
||||
8, // [8:12] is the sub-list for method output_type
|
||||
4, // [4:8] is the sub-list for method input_type
|
||||
4, // [4:4] is the sub-list for extension type_name
|
||||
4, // [4:4] is the sub-list for extension extendee
|
||||
0, // [0:4] is the sub-list for field type_name
|
||||
}
|
||||
|
||||
func init() { file_app_v1_payments_proto_init() }
|
||||
func file_app_v1_payments_proto_init() {
|
||||
if File_app_v1_payments_proto != nil {
|
||||
return
|
||||
}
|
||||
file_app_v1_common_proto_init()
|
||||
file_app_v1_payments_proto_msgTypes[0].OneofWrappers = []any{}
|
||||
type x struct{}
|
||||
out := protoimpl.TypeBuilder{
|
||||
File: protoimpl.DescBuilder{
|
||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||||
RawDescriptor: unsafe.Slice(unsafe.StringData(file_app_v1_payments_proto_rawDesc), len(file_app_v1_payments_proto_rawDesc)),
|
||||
NumEnums: 0,
|
||||
NumMessages: 8,
|
||||
NumExtensions: 0,
|
||||
NumServices: 1,
|
||||
},
|
||||
GoTypes: file_app_v1_payments_proto_goTypes,
|
||||
DependencyIndexes: file_app_v1_payments_proto_depIdxs,
|
||||
MessageInfos: file_app_v1_payments_proto_msgTypes,
|
||||
}.Build()
|
||||
File_app_v1_payments_proto = out.File
|
||||
file_app_v1_payments_proto_goTypes = nil
|
||||
file_app_v1_payments_proto_depIdxs = nil
|
||||
}
|
||||
Reference in New Issue
Block a user