e-invoice-api 0.16.1 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +10 -1
  4. data/lib/e_invoice_api/internal/util.rb +7 -2
  5. data/lib/e_invoice_api/models/document_type.rb +2 -0
  6. data/lib/e_invoice_api/models/inbox_list_credit_notes_params.rb +44 -1
  7. data/lib/e_invoice_api/models/inbox_list_invoices_params.rb +44 -1
  8. data/lib/e_invoice_api/models/inbox_list_params.rb +46 -3
  9. data/lib/e_invoice_api/models/outbox_list_draft_documents_params.rb +68 -1
  10. data/lib/e_invoice_api/models/outbox_list_received_documents_params.rb +60 -3
  11. data/lib/e_invoice_api/models/paginated_document_response.rb +7 -1
  12. data/lib/e_invoice_api/resources/documents.rb +3 -3
  13. data/lib/e_invoice_api/resources/inbox.rb +16 -4
  14. data/lib/e_invoice_api/resources/outbox.rb +24 -4
  15. data/lib/e_invoice_api/version.rb +1 -1
  16. data/rbi/e_invoice_api/models/document_type.rbi +4 -0
  17. data/rbi/e_invoice_api/models/inbox_list_credit_notes_params.rbi +132 -0
  18. data/rbi/e_invoice_api/models/inbox_list_invoices_params.rbi +126 -0
  19. data/rbi/e_invoice_api/models/inbox_list_params.rbi +99 -2
  20. data/rbi/e_invoice_api/models/outbox_list_draft_documents_params.rbi +163 -0
  21. data/rbi/e_invoice_api/models/outbox_list_received_documents_params.rbi +155 -2
  22. data/rbi/e_invoice_api/models/paginated_document_response.rbi +6 -1
  23. data/rbi/e_invoice_api/resources/documents.rbi +3 -3
  24. data/rbi/e_invoice_api/resources/inbox.rbi +20 -1
  25. data/rbi/e_invoice_api/resources/outbox.rbi +32 -2
  26. data/sig/e_invoice_api/models/document_type.rbs +8 -1
  27. data/sig/e_invoice_api/models/inbox_list_credit_notes_params.rbs +56 -1
  28. data/sig/e_invoice_api/models/inbox_list_invoices_params.rbs +56 -1
  29. data/sig/e_invoice_api/models/inbox_list_params.rbs +52 -0
  30. data/sig/e_invoice_api/models/outbox_list_draft_documents_params.rbs +71 -1
  31. data/sig/e_invoice_api/models/outbox_list_received_documents_params.rbs +57 -0
  32. data/sig/e_invoice_api/models/paginated_document_response.rbs +5 -0
  33. data/sig/e_invoice_api/resources/inbox.rbs +6 -0
  34. data/sig/e_invoice_api/resources/outbox.rbs +8 -0
  35. metadata +16 -2
@@ -36,14 +36,55 @@ module EInvoiceAPI
36
36
  sig { params(page_size: Integer).void }
37
37
  attr_writer :page_size
38
38
 
39
+ # Filter by receiver (customer_name, customer_email, customer_tax_id,
40
+ # customer_company_id, customer_id)
41
+ sig { returns(T.nilable(String)) }
42
+ attr_accessor :receiver
43
+
39
44
  # Search in invoice number, seller/buyer names
40
45
  sig { returns(T.nilable(String)) }
41
46
  attr_accessor :search
42
47
 
43
- # Filter by sender ID
48
+ # (Deprecated) Filter by sender ID
44
49
  sig { returns(T.nilable(String)) }
45
50
  attr_accessor :sender
46
51
 
52
+ # Field to sort by
53
+ sig do
54
+ returns(
55
+ T.nilable(
56
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::OrSymbol
57
+ )
58
+ )
59
+ end
60
+ attr_reader :sort_by
61
+
62
+ sig do
63
+ params(
64
+ sort_by:
65
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::OrSymbol
66
+ ).void
67
+ end
68
+ attr_writer :sort_by
69
+
70
+ # Sort direction (asc/desc)
71
+ sig do
72
+ returns(
73
+ T.nilable(
74
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::OrSymbol
75
+ )
76
+ )
77
+ end
78
+ attr_reader :sort_order
79
+
80
+ sig do
81
+ params(
82
+ sort_order:
83
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::OrSymbol
84
+ ).void
85
+ end
86
+ attr_writer :sort_order
87
+
47
88
  # Filter by document state
48
89
  sig { returns(T.nilable(EInvoiceAPI::DocumentState::OrSymbol)) }
49
90
  attr_accessor :state
@@ -58,8 +99,13 @@ module EInvoiceAPI
58
99
  date_to: T.nilable(Time),
59
100
  page: Integer,
60
101
  page_size: Integer,
102
+ receiver: T.nilable(String),
61
103
  search: T.nilable(String),
62
104
  sender: T.nilable(String),
105
+ sort_by:
106
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::OrSymbol,
107
+ sort_order:
108
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::OrSymbol,
63
109
  state: T.nilable(EInvoiceAPI::DocumentState::OrSymbol),
64
110
  type: T.nilable(EInvoiceAPI::DocumentType::OrSymbol),
65
111
  request_options: EInvoiceAPI::RequestOptions::OrHash
@@ -74,10 +120,17 @@ module EInvoiceAPI
74
120
  page: nil,
75
121
  # Number of items per page
76
122
  page_size: nil,
123
+ # Filter by receiver (customer_name, customer_email, customer_tax_id,
124
+ # customer_company_id, customer_id)
125
+ receiver: nil,
77
126
  # Search in invoice number, seller/buyer names
78
127
  search: nil,
79
- # Filter by sender ID
128
+ # (Deprecated) Filter by sender ID
80
129
  sender: nil,
130
+ # Field to sort by
131
+ sort_by: nil,
132
+ # Sort direction (asc/desc)
133
+ sort_order: nil,
81
134
  # Filter by document state
82
135
  state: nil,
83
136
  # Filter by document type
@@ -93,8 +146,13 @@ module EInvoiceAPI
93
146
  date_to: T.nilable(Time),
94
147
  page: Integer,
95
148
  page_size: Integer,
149
+ receiver: T.nilable(String),
96
150
  search: T.nilable(String),
97
151
  sender: T.nilable(String),
152
+ sort_by:
153
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::OrSymbol,
154
+ sort_order:
155
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::OrSymbol,
98
156
  state: T.nilable(EInvoiceAPI::DocumentState::OrSymbol),
99
157
  type: T.nilable(EInvoiceAPI::DocumentType::OrSymbol),
100
158
  request_options: EInvoiceAPI::RequestOptions
@@ -103,6 +161,101 @@ module EInvoiceAPI
103
161
  end
104
162
  def to_hash
105
163
  end
164
+
165
+ # Field to sort by
166
+ module SortBy
167
+ extend EInvoiceAPI::Internal::Type::Enum
168
+
169
+ TaggedSymbol =
170
+ T.type_alias do
171
+ T.all(
172
+ Symbol,
173
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy
174
+ )
175
+ end
176
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
177
+
178
+ CREATED_AT =
179
+ T.let(
180
+ :created_at,
181
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
182
+ )
183
+ INVOICE_DATE =
184
+ T.let(
185
+ :invoice_date,
186
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
187
+ )
188
+ DUE_DATE =
189
+ T.let(
190
+ :due_date,
191
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
192
+ )
193
+ INVOICE_TOTAL =
194
+ T.let(
195
+ :invoice_total,
196
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
197
+ )
198
+ CUSTOMER_NAME =
199
+ T.let(
200
+ :customer_name,
201
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
202
+ )
203
+ VENDOR_NAME =
204
+ T.let(
205
+ :vendor_name,
206
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
207
+ )
208
+ INVOICE_ID =
209
+ T.let(
210
+ :invoice_id,
211
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
212
+ )
213
+
214
+ sig do
215
+ override.returns(
216
+ T::Array[
217
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::TaggedSymbol
218
+ ]
219
+ )
220
+ end
221
+ def self.values
222
+ end
223
+ end
224
+
225
+ # Sort direction (asc/desc)
226
+ module SortOrder
227
+ extend EInvoiceAPI::Internal::Type::Enum
228
+
229
+ TaggedSymbol =
230
+ T.type_alias do
231
+ T.all(
232
+ Symbol,
233
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder
234
+ )
235
+ end
236
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
237
+
238
+ ASC =
239
+ T.let(
240
+ :asc,
241
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::TaggedSymbol
242
+ )
243
+ DESC =
244
+ T.let(
245
+ :desc,
246
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::TaggedSymbol
247
+ )
248
+
249
+ sig do
250
+ override.returns(
251
+ T::Array[
252
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::TaggedSymbol
253
+ ]
254
+ )
255
+ end
256
+ def self.values
257
+ end
258
+ end
106
259
  end
107
260
  end
108
261
  end
@@ -11,6 +11,9 @@ module EInvoiceAPI
11
11
  )
12
12
  end
13
13
 
14
+ sig { returns(T::Boolean) }
15
+ attr_accessor :has_next_page
16
+
14
17
  sig { returns(T::Array[EInvoiceAPI::DocumentResponse]) }
15
18
  attr_accessor :items
16
19
 
@@ -28,6 +31,7 @@ module EInvoiceAPI
28
31
 
29
32
  sig do
30
33
  params(
34
+ has_next_page: T::Boolean,
31
35
  items: T::Array[EInvoiceAPI::DocumentResponse::OrHash],
32
36
  page: Integer,
33
37
  page_size: Integer,
@@ -35,12 +39,13 @@ module EInvoiceAPI
35
39
  total: Integer
36
40
  ).returns(T.attached_class)
37
41
  end
38
- def self.new(items:, page:, page_size:, pages:, total:)
42
+ def self.new(has_next_page:, items:, page:, page_size:, pages:, total:)
39
43
  end
40
44
 
41
45
  sig do
42
46
  override.returns(
43
47
  {
48
+ has_next_page: T::Boolean,
44
49
  items: T::Array[EInvoiceAPI::DocumentResponse],
45
50
  page: Integer,
46
51
  page_size: Integer,
@@ -218,11 +218,11 @@ module EInvoiceAPI
218
218
  ).returns(EInvoiceAPI::Models::DocumentCreateFromPdfResponse)
219
219
  end
220
220
  def create_from_pdf(
221
- # Body param:
221
+ # Body param
222
222
  file:,
223
- # Query param:
223
+ # Query param
224
224
  customer_tax_id: nil,
225
- # Query param:
225
+ # Query param
226
226
  vendor_tax_id: nil,
227
227
  request_options: {}
228
228
  )
@@ -13,6 +13,8 @@ module EInvoiceAPI
13
13
  page_size: Integer,
14
14
  search: T.nilable(String),
15
15
  sender: T.nilable(String),
16
+ sort_by: EInvoiceAPI::InboxListParams::SortBy::OrSymbol,
17
+ sort_order: EInvoiceAPI::InboxListParams::SortOrder::OrSymbol,
16
18
  state: T.nilable(EInvoiceAPI::DocumentState::OrSymbol),
17
19
  type: T.nilable(EInvoiceAPI::DocumentType::OrSymbol),
18
20
  request_options: EInvoiceAPI::RequestOptions::OrHash
@@ -33,8 +35,12 @@ module EInvoiceAPI
33
35
  page_size: nil,
34
36
  # Search in invoice number, seller/buyer names
35
37
  search: nil,
36
- # Filter by sender ID
38
+ # Filter by sender (vendor_name, vendor_email, vendor_tax_id, vendor_company_id)
37
39
  sender: nil,
40
+ # Field to sort by
41
+ sort_by: nil,
42
+ # Sort direction (asc/desc)
43
+ sort_order: nil,
38
44
  # Filter by document state
39
45
  state: nil,
40
46
  # Filter by document type
@@ -48,6 +54,9 @@ module EInvoiceAPI
48
54
  params(
49
55
  page: Integer,
50
56
  page_size: Integer,
57
+ sort_by: EInvoiceAPI::InboxListCreditNotesParams::SortBy::OrSymbol,
58
+ sort_order:
59
+ EInvoiceAPI::InboxListCreditNotesParams::SortOrder::OrSymbol,
51
60
  request_options: EInvoiceAPI::RequestOptions::OrHash
52
61
  ).returns(
53
62
  EInvoiceAPI::Internal::DocumentsNumberPage[
@@ -60,6 +69,10 @@ module EInvoiceAPI
60
69
  page: nil,
61
70
  # Number of items per page
62
71
  page_size: nil,
72
+ # Field to sort by
73
+ sort_by: nil,
74
+ # Sort direction (asc/desc)
75
+ sort_order: nil,
63
76
  request_options: {}
64
77
  )
65
78
  end
@@ -69,6 +82,8 @@ module EInvoiceAPI
69
82
  params(
70
83
  page: Integer,
71
84
  page_size: Integer,
85
+ sort_by: EInvoiceAPI::InboxListInvoicesParams::SortBy::OrSymbol,
86
+ sort_order: EInvoiceAPI::InboxListInvoicesParams::SortOrder::OrSymbol,
72
87
  request_options: EInvoiceAPI::RequestOptions::OrHash
73
88
  ).returns(
74
89
  EInvoiceAPI::Internal::DocumentsNumberPage[
@@ -81,6 +96,10 @@ module EInvoiceAPI
81
96
  page: nil,
82
97
  # Number of items per page
83
98
  page_size: nil,
99
+ # Field to sort by
100
+ sort_by: nil,
101
+ # Sort direction (asc/desc)
102
+ sort_order: nil,
84
103
  request_options: {}
85
104
  )
86
105
  end
@@ -3,11 +3,19 @@
3
3
  module EInvoiceAPI
4
4
  module Resources
5
5
  class Outbox
6
- # Retrieve a paginated list of draft documents with filtering options.
6
+ # Retrieve a paginated list of draft documents with filtering options including
7
+ # state and text search.
7
8
  sig do
8
9
  params(
9
10
  page: Integer,
10
11
  page_size: Integer,
12
+ search: T.nilable(String),
13
+ sort_by:
14
+ EInvoiceAPI::OutboxListDraftDocumentsParams::SortBy::OrSymbol,
15
+ sort_order:
16
+ EInvoiceAPI::OutboxListDraftDocumentsParams::SortOrder::OrSymbol,
17
+ state: T.nilable(EInvoiceAPI::DocumentState::OrSymbol),
18
+ type: T.nilable(EInvoiceAPI::DocumentType::OrSymbol),
11
19
  request_options: EInvoiceAPI::RequestOptions::OrHash
12
20
  ).returns(
13
21
  EInvoiceAPI::Internal::DocumentsNumberPage[
@@ -20,6 +28,16 @@ module EInvoiceAPI
20
28
  page: nil,
21
29
  # Number of items per page
22
30
  page_size: nil,
31
+ # Search in invoice number, seller/buyer names
32
+ search: nil,
33
+ # Field to sort by
34
+ sort_by: nil,
35
+ # Sort direction (asc/desc)
36
+ sort_order: nil,
37
+ # Filter by document state
38
+ state: nil,
39
+ # Filter by document type
40
+ type: nil,
23
41
  request_options: {}
24
42
  )
25
43
  end
@@ -32,8 +50,13 @@ module EInvoiceAPI
32
50
  date_to: T.nilable(Time),
33
51
  page: Integer,
34
52
  page_size: Integer,
53
+ receiver: T.nilable(String),
35
54
  search: T.nilable(String),
36
55
  sender: T.nilable(String),
56
+ sort_by:
57
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortBy::OrSymbol,
58
+ sort_order:
59
+ EInvoiceAPI::OutboxListReceivedDocumentsParams::SortOrder::OrSymbol,
37
60
  state: T.nilable(EInvoiceAPI::DocumentState::OrSymbol),
38
61
  type: T.nilable(EInvoiceAPI::DocumentType::OrSymbol),
39
62
  request_options: EInvoiceAPI::RequestOptions::OrHash
@@ -52,10 +75,17 @@ module EInvoiceAPI
52
75
  page: nil,
53
76
  # Number of items per page
54
77
  page_size: nil,
78
+ # Filter by receiver (customer_name, customer_email, customer_tax_id,
79
+ # customer_company_id, customer_id)
80
+ receiver: nil,
55
81
  # Search in invoice number, seller/buyer names
56
82
  search: nil,
57
- # Filter by sender ID
83
+ # (Deprecated) Filter by sender ID
58
84
  sender: nil,
85
+ # Field to sort by
86
+ sort_by: nil,
87
+ # Sort direction (asc/desc)
88
+ sort_order: nil,
59
89
  # Filter by document state
60
90
  state: nil,
61
91
  # Filter by document type
@@ -1,6 +1,11 @@
1
1
  module EInvoiceAPI
2
2
  module Models
3
- type document_type = :INVOICE | :CREDIT_NOTE | :DEBIT_NOTE
3
+ type document_type =
4
+ :INVOICE
5
+ | :CREDIT_NOTE
6
+ | :DEBIT_NOTE
7
+ | :SELFBILLING_INVOICE
8
+ | :SELFBILLING_CREDIT_NOTE
4
9
 
5
10
  module DocumentType
6
11
  extend EInvoiceAPI::Internal::Type::Enum
@@ -8,6 +13,8 @@ module EInvoiceAPI
8
13
  INVOICE: :INVOICE
9
14
  CREDIT_NOTE: :CREDIT_NOTE
10
15
  DEBIT_NOTE: :DEBIT_NOTE
16
+ SELFBILLING_INVOICE: :SELFBILLING_INVOICE
17
+ SELFBILLING_CREDIT_NOTE: :SELFBILLING_CREDIT_NOTE
11
18
 
12
19
  def self?.values: -> ::Array[EInvoiceAPI::Models::document_type]
13
20
  end
@@ -1,7 +1,12 @@
1
1
  module EInvoiceAPI
2
2
  module Models
3
3
  type inbox_list_credit_notes_params =
4
- { page: Integer, page_size: Integer }
4
+ {
5
+ page: Integer,
6
+ page_size: Integer,
7
+ sort_by: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by,
8
+ sort_order: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order
9
+ }
5
10
  & EInvoiceAPI::Internal::Type::request_parameters
6
11
 
7
12
  class InboxListCreditNotesParams < EInvoiceAPI::Internal::Type::BaseModel
@@ -16,17 +21,67 @@ module EInvoiceAPI
16
21
 
17
22
  def page_size=: (Integer) -> Integer
18
23
 
24
+ attr_reader sort_by: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by?
25
+
26
+ def sort_by=: (
27
+ EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by
28
+ ) -> EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by
29
+
30
+ attr_reader sort_order: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order?
31
+
32
+ def sort_order=: (
33
+ EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order
34
+ ) -> EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order
35
+
19
36
  def initialize: (
20
37
  ?page: Integer,
21
38
  ?page_size: Integer,
39
+ ?sort_by: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by,
40
+ ?sort_order: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order,
22
41
  ?request_options: EInvoiceAPI::request_opts
23
42
  ) -> void
24
43
 
25
44
  def to_hash: -> {
26
45
  page: Integer,
27
46
  page_size: Integer,
47
+ sort_by: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by,
48
+ sort_order: EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order,
28
49
  request_options: EInvoiceAPI::RequestOptions
29
50
  }
51
+
52
+ type sort_by =
53
+ :created_at
54
+ | :invoice_date
55
+ | :due_date
56
+ | :invoice_total
57
+ | :customer_name
58
+ | :vendor_name
59
+ | :invoice_id
60
+
61
+ module SortBy
62
+ extend EInvoiceAPI::Internal::Type::Enum
63
+
64
+ CREATED_AT: :created_at
65
+ INVOICE_DATE: :invoice_date
66
+ DUE_DATE: :due_date
67
+ INVOICE_TOTAL: :invoice_total
68
+ CUSTOMER_NAME: :customer_name
69
+ VENDOR_NAME: :vendor_name
70
+ INVOICE_ID: :invoice_id
71
+
72
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListCreditNotesParams::sort_by]
73
+ end
74
+
75
+ type sort_order = :asc | :desc
76
+
77
+ module SortOrder
78
+ extend EInvoiceAPI::Internal::Type::Enum
79
+
80
+ ASC: :asc
81
+ DESC: :desc
82
+
83
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListCreditNotesParams::sort_order]
84
+ end
30
85
  end
31
86
  end
32
87
  end
@@ -1,7 +1,12 @@
1
1
  module EInvoiceAPI
2
2
  module Models
3
3
  type inbox_list_invoices_params =
4
- { page: Integer, page_size: Integer }
4
+ {
5
+ page: Integer,
6
+ page_size: Integer,
7
+ sort_by: EInvoiceAPI::Models::InboxListInvoicesParams::sort_by,
8
+ sort_order: EInvoiceAPI::Models::InboxListInvoicesParams::sort_order
9
+ }
5
10
  & EInvoiceAPI::Internal::Type::request_parameters
6
11
 
7
12
  class InboxListInvoicesParams < EInvoiceAPI::Internal::Type::BaseModel
@@ -16,17 +21,67 @@ module EInvoiceAPI
16
21
 
17
22
  def page_size=: (Integer) -> Integer
18
23
 
24
+ attr_reader sort_by: EInvoiceAPI::Models::InboxListInvoicesParams::sort_by?
25
+
26
+ def sort_by=: (
27
+ EInvoiceAPI::Models::InboxListInvoicesParams::sort_by
28
+ ) -> EInvoiceAPI::Models::InboxListInvoicesParams::sort_by
29
+
30
+ attr_reader sort_order: EInvoiceAPI::Models::InboxListInvoicesParams::sort_order?
31
+
32
+ def sort_order=: (
33
+ EInvoiceAPI::Models::InboxListInvoicesParams::sort_order
34
+ ) -> EInvoiceAPI::Models::InboxListInvoicesParams::sort_order
35
+
19
36
  def initialize: (
20
37
  ?page: Integer,
21
38
  ?page_size: Integer,
39
+ ?sort_by: EInvoiceAPI::Models::InboxListInvoicesParams::sort_by,
40
+ ?sort_order: EInvoiceAPI::Models::InboxListInvoicesParams::sort_order,
22
41
  ?request_options: EInvoiceAPI::request_opts
23
42
  ) -> void
24
43
 
25
44
  def to_hash: -> {
26
45
  page: Integer,
27
46
  page_size: Integer,
47
+ sort_by: EInvoiceAPI::Models::InboxListInvoicesParams::sort_by,
48
+ sort_order: EInvoiceAPI::Models::InboxListInvoicesParams::sort_order,
28
49
  request_options: EInvoiceAPI::RequestOptions
29
50
  }
51
+
52
+ type sort_by =
53
+ :created_at
54
+ | :invoice_date
55
+ | :due_date
56
+ | :invoice_total
57
+ | :customer_name
58
+ | :vendor_name
59
+ | :invoice_id
60
+
61
+ module SortBy
62
+ extend EInvoiceAPI::Internal::Type::Enum
63
+
64
+ CREATED_AT: :created_at
65
+ INVOICE_DATE: :invoice_date
66
+ DUE_DATE: :due_date
67
+ INVOICE_TOTAL: :invoice_total
68
+ CUSTOMER_NAME: :customer_name
69
+ VENDOR_NAME: :vendor_name
70
+ INVOICE_ID: :invoice_id
71
+
72
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListInvoicesParams::sort_by]
73
+ end
74
+
75
+ type sort_order = :asc | :desc
76
+
77
+ module SortOrder
78
+ extend EInvoiceAPI::Internal::Type::Enum
79
+
80
+ ASC: :asc
81
+ DESC: :desc
82
+
83
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListInvoicesParams::sort_order]
84
+ end
30
85
  end
31
86
  end
32
87
  end
@@ -8,6 +8,8 @@ module EInvoiceAPI
8
8
  page_size: Integer,
9
9
  search: String?,
10
10
  sender: String?,
11
+ sort_by: EInvoiceAPI::Models::InboxListParams::sort_by,
12
+ sort_order: EInvoiceAPI::Models::InboxListParams::sort_order,
11
13
  state: EInvoiceAPI::Models::document_state?,
12
14
  type: EInvoiceAPI::Models::document_type?
13
15
  }
@@ -33,6 +35,18 @@ module EInvoiceAPI
33
35
 
34
36
  attr_accessor sender: String?
35
37
 
38
+ attr_reader sort_by: EInvoiceAPI::Models::InboxListParams::sort_by?
39
+
40
+ def sort_by=: (
41
+ EInvoiceAPI::Models::InboxListParams::sort_by
42
+ ) -> EInvoiceAPI::Models::InboxListParams::sort_by
43
+
44
+ attr_reader sort_order: EInvoiceAPI::Models::InboxListParams::sort_order?
45
+
46
+ def sort_order=: (
47
+ EInvoiceAPI::Models::InboxListParams::sort_order
48
+ ) -> EInvoiceAPI::Models::InboxListParams::sort_order
49
+
36
50
  attr_accessor state: EInvoiceAPI::Models::document_state?
37
51
 
38
52
  attr_accessor type: EInvoiceAPI::Models::document_type?
@@ -44,6 +58,8 @@ module EInvoiceAPI
44
58
  ?page_size: Integer,
45
59
  ?search: String?,
46
60
  ?sender: String?,
61
+ ?sort_by: EInvoiceAPI::Models::InboxListParams::sort_by,
62
+ ?sort_order: EInvoiceAPI::Models::InboxListParams::sort_order,
47
63
  ?state: EInvoiceAPI::Models::document_state?,
48
64
  ?type: EInvoiceAPI::Models::document_type?,
49
65
  ?request_options: EInvoiceAPI::request_opts
@@ -56,10 +72,46 @@ module EInvoiceAPI
56
72
  page_size: Integer,
57
73
  search: String?,
58
74
  sender: String?,
75
+ sort_by: EInvoiceAPI::Models::InboxListParams::sort_by,
76
+ sort_order: EInvoiceAPI::Models::InboxListParams::sort_order,
59
77
  state: EInvoiceAPI::Models::document_state?,
60
78
  type: EInvoiceAPI::Models::document_type?,
61
79
  request_options: EInvoiceAPI::RequestOptions
62
80
  }
81
+
82
+ type sort_by =
83
+ :created_at
84
+ | :invoice_date
85
+ | :due_date
86
+ | :invoice_total
87
+ | :customer_name
88
+ | :vendor_name
89
+ | :invoice_id
90
+
91
+ module SortBy
92
+ extend EInvoiceAPI::Internal::Type::Enum
93
+
94
+ CREATED_AT: :created_at
95
+ INVOICE_DATE: :invoice_date
96
+ DUE_DATE: :due_date
97
+ INVOICE_TOTAL: :invoice_total
98
+ CUSTOMER_NAME: :customer_name
99
+ VENDOR_NAME: :vendor_name
100
+ INVOICE_ID: :invoice_id
101
+
102
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListParams::sort_by]
103
+ end
104
+
105
+ type sort_order = :asc | :desc
106
+
107
+ module SortOrder
108
+ extend EInvoiceAPI::Internal::Type::Enum
109
+
110
+ ASC: :asc
111
+ DESC: :desc
112
+
113
+ def self?.values: -> ::Array[EInvoiceAPI::Models::InboxListParams::sort_order]
114
+ end
63
115
  end
64
116
  end
65
117
  end