orb-billing 1.11.1 → 1.11.2

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 (40) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/README.md +1 -1
  4. data/lib/orb/internal/transport/base_client.rb +1 -1
  5. data/lib/orb/internal/transport/pooled_net_requester.rb +1 -9
  6. data/lib/orb/internal/type/array_of.rb +1 -0
  7. data/lib/orb/internal/type/base_model.rb +3 -1
  8. data/lib/orb/internal/type/converter.rb +27 -0
  9. data/lib/orb/internal/type/hash_of.rb +1 -0
  10. data/lib/orb/internal/type/union.rb +9 -7
  11. data/lib/orb/internal/util.rb +1 -1
  12. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +3 -11
  13. data/lib/orb/models/beta_create_plan_version_params.rb +2 -8
  14. data/lib/orb/models/customer.rb +1 -3
  15. data/lib/orb/models/customers/credits/credit_block_expiry_ledger_entry.rb +1 -4
  16. data/lib/orb/models/customers/credits/expiration_change_ledger_entry.rb +1 -4
  17. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +1 -4
  18. data/lib/orb/models/customers/credits/top_up_create_by_external_id_params.rb +1 -4
  19. data/lib/orb/models/invoice.rb +1 -4
  20. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -2
  21. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -2
  22. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -2
  23. data/lib/orb/models/plan_create_params.rb +1 -4
  24. data/lib/orb/models/price.rb +3 -6
  25. data/lib/orb/models/price_create_params.rb +1 -2
  26. data/lib/orb/models/price_evaluate_multiple_params.rb +3 -9
  27. data/lib/orb/models/price_evaluate_preview_events_params.rb +3 -9
  28. data/lib/orb/models/subscription_create_params.rb +2 -8
  29. data/lib/orb/models/subscription_price_intervals_params.rb +3 -9
  30. data/lib/orb/models/subscription_schedule_plan_change_params.rb +3 -12
  31. data/lib/orb/models/subscription_usage.rb +4 -14
  32. data/lib/orb/version.rb +1 -1
  33. data/rbi/orb/errors.rbi +2 -2
  34. data/rbi/orb/internal/transport/base_client.rbi +1 -1
  35. data/rbi/orb/internal/type/converter.rbi +46 -0
  36. data/rbi/orb/internal/type/union.rbi +7 -2
  37. data/sig/orb/internal/transport/base_client.rbs +1 -1
  38. data/sig/orb/internal/type/converter.rbs +17 -0
  39. data/sig/orb/internal/type/union.rbs +2 -2
  40. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bbc292df45f05df2381af0ae615a35d7ec4bc662fdf5e4d69175b5fb370e7c0f
4
- data.tar.gz: baf2d9112fc361135dce2b68b6227f003fa708a7354fd354d19b40e91b60ef23
3
+ metadata.gz: c21aa9aa90d14aae4b1217351fcc1965c62bd62914a28567d22dba99767ecbf0
4
+ data.tar.gz: c5875edf3c46feb5108b8ecfe4e6fda56321e7f5b0950b8c1ca24ae3c05be6f8
5
5
  SHA512:
6
- metadata.gz: 100768f277d665c6313dc1e13ab1ec332a02cbbfeb6dd38b1639c76f9f62f0ab768c566c1b93011d34fe40079949421ac57f2191da8b2043ccfe87d59c70d30d
7
- data.tar.gz: 48d5917ec31430c8190afd968ab28503c3f62b66de7bcadc32d21df3c3b5a1d2368456f4ceab8040637373e82c15621d67762498d35d71a39204a32b09344fbc
6
+ metadata.gz: 29aa4fd5af33498cbcbcc7f46436b2e29ecb1692466571a01c28c2cc80bc103dfe7147d50868ede1c8d238d25c1b18662131a1103bf77fd8bfadc37fe7896a7d
7
+ data.tar.gz: 81e835602384198d7bba9aa834edcd98fc8753b026b15873f065c104ef5bc0db2fb98f3e03fa605751dc354f27bd876b3e60c704cee877eff7d3be16d00db77c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.11.2 (2025-08-29)
4
+
5
+ Full Changelog: [v1.11.1...v1.11.2](https://github.com/orbcorp/orb-ruby/compare/v1.11.1...v1.11.2)
6
+
7
+ ### Chores
8
+
9
+ * **internal:** codegen related update ([5d327ef](https://github.com/orbcorp/orb-ruby/commit/5d327ef881b03c338f8ae48b2703c3325734a93f))
10
+ * **internal:** increase visibility of internal helper method ([141449b](https://github.com/orbcorp/orb-ruby/commit/141449b56bb7c064becf69ec548ce2d99cb1942f))
11
+
3
12
  ## 1.11.1 (2025-07-28)
4
13
 
5
14
  Full Changelog: [v1.11.0...v1.11.1](https://github.com/orbcorp/orb-ruby/compare/v1.11.0...v1.11.1)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "orb-billing", "~> 1.11.1"
18
+ gem "orb-billing", "~> 1.11.2"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -362,7 +362,7 @@ module Orb
362
362
  #
363
363
  # @raise [Orb::Errors::APIError]
364
364
  # @return [Array(Integer, Net::HTTPResponse, Enumerable<String>)]
365
- private def send_request(request, redirect_count:, retry_count:, send_retry_header:)
365
+ def send_request(request, redirect_count:, retry_count:, send_retry_header:)
366
366
  url, headers, max_retries, timeout = request.fetch_values(:url, :headers, :max_retries, :timeout)
367
367
  input = {**request.except(:timeout), deadline: Orb::Internal::Util.monotonic_secs + timeout}
368
368
 
@@ -193,15 +193,7 @@ module Orb
193
193
  end
194
194
 
195
195
  define_sorbet_constant!(:Request) do
196
- T.type_alias do
197
- {
198
- method: Symbol,
199
- url: URI::Generic,
200
- headers: T::Hash[String, String],
201
- body: T.anything,
202
- deadline: Float
203
- }
204
- end
196
+ T.type_alias { {method: Symbol, url: URI::Generic, headers: T::Hash[String, String], body: T.anything, deadline: Float} }
205
197
  end
206
198
  end
207
199
  end
@@ -148,6 +148,7 @@ module Orb
148
148
  # @option spec [Boolean] :"nil?"
149
149
  def initialize(type_info, spec = {})
150
150
  @item_type_fn = Orb::Internal::Type::Converter.type_info(type_info || spec)
151
+ @meta = Orb::Internal::Type::Converter.meta_info(type_info, spec)
151
152
  @nilable = spec.fetch(:nil?, false)
152
153
  end
153
154
 
@@ -52,6 +52,7 @@ module Orb
52
52
  #
53
53
  # @option spec [Boolean] :"nil?"
54
54
  private def add_field(name_sym, required:, type_info:, spec:)
55
+ meta = Orb::Internal::Type::Converter.meta_info(type_info, spec)
55
56
  type_fn, info =
56
57
  case type_info
57
58
  in Proc | Orb::Internal::Type::Converter | Class
@@ -74,7 +75,8 @@ module Orb
74
75
  required: required,
75
76
  nilable: nilable,
76
77
  const: const,
77
- type_fn: type_fn
78
+ type_fn: type_fn,
79
+ meta: meta
78
80
  }
79
81
 
80
82
  define_method(setter) do |value|
@@ -98,6 +98,33 @@ module Orb
98
98
  end
99
99
  end
100
100
 
101
+ # @api private
102
+ #
103
+ # @param type_info [Hash{Symbol=>Object}, Proc, Orb::Internal::Type::Converter, Class] .
104
+ #
105
+ # @option type_info [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const
106
+ #
107
+ # @option type_info [Proc] :enum
108
+ #
109
+ # @option type_info [Proc] :union
110
+ #
111
+ # @option type_info [Boolean] :"nil?"
112
+ #
113
+ # @param spec [Hash{Symbol=>Object}, Proc, Orb::Internal::Type::Converter, Class] .
114
+ #
115
+ # @option spec [NilClass, TrueClass, FalseClass, Integer, Float, Symbol] :const
116
+ #
117
+ # @option spec [Proc] :enum
118
+ #
119
+ # @option spec [Proc] :union
120
+ #
121
+ # @option spec [Boolean] :"nil?"
122
+ #
123
+ # @return [Hash{Symbol=>Object}]
124
+ def meta_info(type_info, spec)
125
+ [spec, type_info].grep(Hash).first.to_h.except(:const, :enum, :union, :nil?)
126
+ end
127
+
101
128
  # @api private
102
129
  #
103
130
  # @param translate_names [Boolean]
@@ -168,6 +168,7 @@ module Orb
168
168
  # @option spec [Boolean] :"nil?"
169
169
  def initialize(type_info, spec = {})
170
170
  @item_type_fn = Orb::Internal::Type::Converter.type_info(type_info || spec)
171
+ @meta = Orb::Internal::Type::Converter.meta_info(type_info, spec)
171
172
  @nilable = spec.fetch(:nil?, false)
172
173
  end
173
174
 
@@ -47,20 +47,20 @@ module Orb
47
47
  #
48
48
  # All of the specified variant info for this union.
49
49
  #
50
- # @return [Array<Array(Symbol, Proc)>]
50
+ # @return [Array<Array(Symbol, Proc, Hash{Symbol=>Object})>]
51
51
  private def known_variants = (@known_variants ||= [])
52
52
 
53
53
  # @api private
54
54
  #
55
- # @return [Array<Array(Symbol, Object)>]
55
+ # @return [Array<Array(Symbol, Object, Hash{Symbol=>Object})>]
56
56
  protected def derefed_variants
57
- known_variants.map { |key, variant_fn| [key, variant_fn.call] }
57
+ known_variants.map { |key, variant_fn, meta| [key, variant_fn.call, meta] }
58
58
  end
59
59
 
60
60
  # All of the specified variants for this union.
61
61
  #
62
62
  # @return [Array<Object>]
63
- def variants = derefed_variants.map(&:last)
63
+ def variants = derefed_variants.map { _2 }
64
64
 
65
65
  # @api private
66
66
  #
@@ -86,12 +86,13 @@ module Orb
86
86
  #
87
87
  # @option spec [Boolean] :"nil?"
88
88
  private def variant(key, spec = nil)
89
+ meta = Orb::Internal::Type::Converter.meta_info(nil, spec)
89
90
  variant_info =
90
91
  case key
91
92
  in Symbol
92
- [key, Orb::Internal::Type::Converter.type_info(spec)]
93
+ [key, Orb::Internal::Type::Converter.type_info(spec), meta]
93
94
  in Proc | Orb::Internal::Type::Converter | Class | Hash
94
- [nil, Orb::Internal::Type::Converter.type_info(key)]
95
+ [nil, Orb::Internal::Type::Converter.type_info(key), meta]
95
96
  end
96
97
 
97
98
  known_variants << variant_info
@@ -114,7 +115,8 @@ module Orb
114
115
  return nil if key == Orb::Internal::OMIT
115
116
 
116
117
  key = key.to_sym if key.is_a?(String)
117
- known_variants.find { |k,| k == key }&.last&.call
118
+ _, found = known_variants.find { |k,| k == key }
119
+ found&.call
118
120
  else
119
121
  nil
120
122
  end
@@ -244,7 +244,7 @@ module Orb
244
244
  #
245
245
  # @return [String]
246
246
  def uri_origin(uri)
247
- "#{uri.scheme}://#{uri.host}#{uri.port == uri.default_port ? '' : ":#{uri.port}"}"
247
+ "#{uri.scheme}://#{uri.host}#{":#{uri.port}" unless uri.port == uri.default_port}"
248
248
  end
249
249
 
250
250
  # @api private
@@ -223,10 +223,7 @@ module Orb
223
223
 
224
224
  variant :scalable_matrix_with_unit_pricing, -> { Orb::NewPlanScalableMatrixWithUnitPricingPrice }
225
225
 
226
- variant :scalable_matrix_with_tiered_pricing,
227
- -> {
228
- Orb::NewPlanScalableMatrixWithTieredPricingPrice
229
- }
226
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewPlanScalableMatrixWithTieredPricingPrice }
230
227
 
231
228
  variant :cumulative_grouped_bulk, -> { Orb::NewPlanCumulativeGroupedBulkPrice }
232
229
 
@@ -285,9 +282,7 @@ module Orb
285
282
  #
286
283
  # @return [Orb::Models::NewPercentageDiscount, Orb::Models::NewUsageDiscount, Orb::Models::NewAmountDiscount, Orb::Models::NewMinimum, Orb::Models::NewMaximum]
287
284
  required :adjustment,
288
- union: -> {
289
- Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplaceAdjustment::Adjustment
290
- }
285
+ union: -> { Orb::Beta::ExternalPlanIDCreatePlanVersionParams::ReplaceAdjustment::Adjustment }
291
286
 
292
287
  # @!attribute replaces_adjustment_id
293
288
  # The id of the adjustment on the plan to replace in the plan.
@@ -421,10 +416,7 @@ module Orb
421
416
 
422
417
  variant :scalable_matrix_with_unit_pricing, -> { Orb::NewPlanScalableMatrixWithUnitPricingPrice }
423
418
 
424
- variant :scalable_matrix_with_tiered_pricing,
425
- -> {
426
- Orb::NewPlanScalableMatrixWithTieredPricingPrice
427
- }
419
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewPlanScalableMatrixWithTieredPricingPrice }
428
420
 
429
421
  variant :cumulative_grouped_bulk, -> { Orb::NewPlanCumulativeGroupedBulkPrice }
430
422
 
@@ -207,10 +207,7 @@ module Orb
207
207
 
208
208
  variant :scalable_matrix_with_unit_pricing, -> { Orb::NewPlanScalableMatrixWithUnitPricingPrice }
209
209
 
210
- variant :scalable_matrix_with_tiered_pricing,
211
- -> {
212
- Orb::NewPlanScalableMatrixWithTieredPricingPrice
213
- }
210
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewPlanScalableMatrixWithTieredPricingPrice }
214
211
 
215
212
  variant :cumulative_grouped_bulk, -> { Orb::NewPlanCumulativeGroupedBulkPrice }
216
213
 
@@ -400,10 +397,7 @@ module Orb
400
397
 
401
398
  variant :scalable_matrix_with_unit_pricing, -> { Orb::NewPlanScalableMatrixWithUnitPricingPrice }
402
399
 
403
- variant :scalable_matrix_with_tiered_pricing,
404
- -> {
405
- Orb::NewPlanScalableMatrixWithTieredPricingPrice
406
- }
400
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewPlanScalableMatrixWithTieredPricingPrice }
407
401
 
408
402
  variant :cumulative_grouped_bulk, -> { Orb::NewPlanCumulativeGroupedBulkPrice }
409
403
 
@@ -389,9 +389,7 @@ module Orb
389
389
  #
390
390
  # @return [Array<Orb::Models::Customer::AccountingSyncConfiguration::AccountingProvider>]
391
391
  required :accounting_providers,
392
- -> {
393
- Orb::Internal::Type::ArrayOf[Orb::Customer::AccountingSyncConfiguration::AccountingProvider]
394
- }
392
+ -> { Orb::Internal::Type::ArrayOf[Orb::Customer::AccountingSyncConfiguration::AccountingProvider] }
395
393
 
396
394
  # @!attribute excluded
397
395
  #
@@ -48,10 +48,7 @@ module Orb
48
48
  # @!attribute entry_status
49
49
  #
50
50
  # @return [Symbol, Orb::Models::Customers::Credits::CreditBlockExpiryLedgerEntry::EntryStatus]
51
- required :entry_status,
52
- enum: -> {
53
- Orb::Customers::Credits::CreditBlockExpiryLedgerEntry::EntryStatus
54
- }
51
+ required :entry_status, enum: -> { Orb::Customers::Credits::CreditBlockExpiryLedgerEntry::EntryStatus }
55
52
 
56
53
  # @!attribute entry_type
57
54
  #
@@ -48,10 +48,7 @@ module Orb
48
48
  # @!attribute entry_status
49
49
  #
50
50
  # @return [Symbol, Orb::Models::Customers::Credits::ExpirationChangeLedgerEntry::EntryStatus]
51
- required :entry_status,
52
- enum: -> {
53
- Orb::Customers::Credits::ExpirationChangeLedgerEntry::EntryStatus
54
- }
51
+ required :entry_status, enum: -> { Orb::Customers::Credits::ExpirationChangeLedgerEntry::EntryStatus }
55
52
 
56
53
  # @!attribute entry_type
57
54
  #
@@ -19,10 +19,7 @@ module Orb
19
19
  # @!attribute entry_type
20
20
  #
21
21
  # @return [Symbol, Orb::Models::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType]
22
- required :entry_type,
23
- enum: -> {
24
- Orb::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType
25
- }
22
+ required :entry_type, enum: -> { Orb::Customers::Credits::LedgerCreateEntryByExternalIDParams::EntryType }
26
23
 
27
24
  # @!attribute currency
28
25
  # The currency or custom pricing unit to use for this ledger entry. If this is a
@@ -26,10 +26,7 @@ module Orb
26
26
  # Settings for invoices generated by triggered top-ups.
27
27
  #
28
28
  # @return [Orb::Models::Customers::Credits::TopUpCreateByExternalIDParams::InvoiceSettings]
29
- required :invoice_settings,
30
- -> {
31
- Orb::Customers::Credits::TopUpCreateByExternalIDParams::InvoiceSettings
32
- }
29
+ required :invoice_settings, -> { Orb::Customers::Credits::TopUpCreateByExternalIDParams::InvoiceSettings }
33
30
 
34
31
  # @!attribute per_unit_cost_basis
35
32
  # How much, in the customer's currency, to charge for each unit.
@@ -864,10 +864,7 @@ module Orb
864
864
  # `sub_line_items`.
865
865
  #
866
866
  # @return [Array<Orb::Models::MatrixSubLineItem, Orb::Models::TierSubLineItem, Orb::Models::OtherSubLineItem>]
867
- required :sub_line_items,
868
- -> {
869
- Orb::Internal::Type::ArrayOf[union: Orb::Invoice::LineItem::SubLineItem]
870
- }
867
+ required :sub_line_items, -> { Orb::Internal::Type::ArrayOf[union: Orb::Invoice::LineItem::SubLineItem] }
871
868
 
872
869
  # @!attribute subtotal
873
870
  # The line amount before before any adjustments.
@@ -18,8 +18,7 @@ module Orb
18
18
  # @!attribute grouped_with_prorated_minimum_config
19
19
  #
20
20
  # @return [Hash{Symbol=>Object}]
21
- required :grouped_with_prorated_minimum_config,
22
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
21
+ required :grouped_with_prorated_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
23
22
 
24
23
  # @!attribute item_id
25
24
  # The id of the item the price will be associated with.
@@ -12,8 +12,7 @@ module Orb
12
12
  # @!attribute grouped_with_prorated_minimum_config
13
13
  #
14
14
  # @return [Hash{Symbol=>Object}]
15
- required :grouped_with_prorated_minimum_config,
16
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
15
+ required :grouped_with_prorated_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
17
16
 
18
17
  # @!attribute item_id
19
18
  # The id of the item the price will be associated with.
@@ -12,8 +12,7 @@ module Orb
12
12
  # @!attribute grouped_with_prorated_minimum_config
13
13
  #
14
14
  # @return [Hash{Symbol=>Object}]
15
- required :grouped_with_prorated_minimum_config,
16
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
15
+ required :grouped_with_prorated_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
17
16
 
18
17
  # @!attribute item_id
19
18
  # The id of the item the price will be associated with.
@@ -184,10 +184,7 @@ module Orb
184
184
 
185
185
  variant :scalable_matrix_with_unit_pricing, -> { Orb::NewPlanScalableMatrixWithUnitPricingPrice }
186
186
 
187
- variant :scalable_matrix_with_tiered_pricing,
188
- -> {
189
- Orb::NewPlanScalableMatrixWithTieredPricingPrice
190
- }
187
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewPlanScalableMatrixWithTieredPricingPrice }
191
188
 
192
189
  variant :cumulative_grouped_bulk, -> { Orb::NewPlanCumulativeGroupedBulkPrice }
193
190
 
@@ -3092,8 +3092,7 @@ module Orb
3092
3092
  # @!attribute tiered_package_with_minimum_config
3093
3093
  #
3094
3094
  # @return [Hash{Symbol=>Object}]
3095
- required :tiered_package_with_minimum_config,
3096
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
3095
+ required :tiered_package_with_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
3097
3096
 
3098
3097
  # @!attribute dimensional_price_configuration
3099
3098
  #
@@ -4710,8 +4709,7 @@ module Orb
4710
4709
  # @!attribute grouped_with_prorated_minimum_config
4711
4710
  #
4712
4711
  # @return [Hash{Symbol=>Object}]
4713
- required :grouped_with_prorated_minimum_config,
4714
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
4712
+ required :grouped_with_prorated_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
4715
4713
 
4716
4714
  # @!attribute invoicing_cycle_configuration
4717
4715
  #
@@ -4952,8 +4950,7 @@ module Orb
4952
4950
  # @!attribute grouped_with_metered_minimum_config
4953
4951
  #
4954
4952
  # @return [Hash{Symbol=>Object}]
4955
- required :grouped_with_metered_minimum_config,
4956
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
4953
+ required :grouped_with_metered_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
4957
4954
 
4958
4955
  # @!attribute invoicing_cycle_configuration
4959
4956
  #
@@ -212,8 +212,7 @@ module Orb
212
212
  # @!attribute grouped_with_prorated_minimum_config
213
213
  #
214
214
  # @return [Hash{Symbol=>Object}]
215
- required :grouped_with_prorated_minimum_config,
216
- Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
215
+ required :grouped_with_prorated_minimum_config, Orb::Internal::Type::HashOf[Orb::Internal::Type::Unknown]
217
216
 
218
217
  # @!attribute grouped_with_metered_minimum_config
219
218
  #
@@ -160,15 +160,9 @@ module Orb
160
160
 
161
161
  variant :grouped_tiered_package, -> { Orb::NewFloatingGroupedTieredPackagePrice }
162
162
 
163
- variant :scalable_matrix_with_unit_pricing,
164
- -> {
165
- Orb::NewFloatingScalableMatrixWithUnitPricingPrice
166
- }
167
-
168
- variant :scalable_matrix_with_tiered_pricing,
169
- -> {
170
- Orb::NewFloatingScalableMatrixWithTieredPricingPrice
171
- }
163
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewFloatingScalableMatrixWithUnitPricingPrice }
164
+
165
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewFloatingScalableMatrixWithTieredPricingPrice }
172
166
 
173
167
  variant :cumulative_grouped_bulk, -> { Orb::NewFloatingCumulativeGroupedBulkPrice }
174
168
 
@@ -223,15 +223,9 @@ module Orb
223
223
 
224
224
  variant :grouped_tiered_package, -> { Orb::NewFloatingGroupedTieredPackagePrice }
225
225
 
226
- variant :scalable_matrix_with_unit_pricing,
227
- -> {
228
- Orb::NewFloatingScalableMatrixWithUnitPricingPrice
229
- }
230
-
231
- variant :scalable_matrix_with_tiered_pricing,
232
- -> {
233
- Orb::NewFloatingScalableMatrixWithTieredPricingPrice
234
- }
226
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewFloatingScalableMatrixWithUnitPricingPrice }
227
+
228
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewFloatingScalableMatrixWithTieredPricingPrice }
235
229
 
236
230
  variant :cumulative_grouped_bulk, -> { Orb::NewFloatingCumulativeGroupedBulkPrice }
237
231
 
@@ -525,10 +525,7 @@ module Orb
525
525
 
526
526
  variant :bulk_with_proration, -> { Orb::NewSubscriptionBulkWithProrationPrice }
527
527
 
528
- variant :scalable_matrix_with_unit_pricing,
529
- -> {
530
- Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice
531
- }
528
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice }
532
529
 
533
530
  variant :scalable_matrix_with_tiered_pricing,
534
531
  -> { Orb::NewSubscriptionScalableMatrixWithTieredPricingPrice }
@@ -767,10 +764,7 @@ module Orb
767
764
 
768
765
  variant :bulk_with_proration, -> { Orb::NewSubscriptionBulkWithProrationPrice }
769
766
 
770
- variant :scalable_matrix_with_unit_pricing,
771
- -> {
772
- Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice
773
- }
767
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice }
774
768
 
775
769
  variant :scalable_matrix_with_tiered_pricing,
776
770
  -> { Orb::NewSubscriptionScalableMatrixWithTieredPricingPrice }
@@ -364,15 +364,9 @@ module Orb
364
364
 
365
365
  variant :grouped_tiered_package, -> { Orb::NewFloatingGroupedTieredPackagePrice }
366
366
 
367
- variant :scalable_matrix_with_unit_pricing,
368
- -> {
369
- Orb::NewFloatingScalableMatrixWithUnitPricingPrice
370
- }
371
-
372
- variant :scalable_matrix_with_tiered_pricing,
373
- -> {
374
- Orb::NewFloatingScalableMatrixWithTieredPricingPrice
375
- }
367
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewFloatingScalableMatrixWithUnitPricingPrice }
368
+
369
+ variant :scalable_matrix_with_tiered_pricing, -> { Orb::NewFloatingScalableMatrixWithTieredPricingPrice }
376
370
 
377
371
  variant :cumulative_grouped_bulk, -> { Orb::NewFloatingCumulativeGroupedBulkPrice }
378
372
 
@@ -289,10 +289,7 @@ module Orb
289
289
  # The definition of a new adjustment to create and add to the subscription.
290
290
  #
291
291
  # @return [Orb::Models::NewPercentageDiscount, Orb::Models::NewUsageDiscount, Orb::Models::NewAmountDiscount, Orb::Models::NewMinimum, Orb::Models::NewMaximum]
292
- required :adjustment,
293
- union: -> {
294
- Orb::SubscriptionSchedulePlanChangeParams::AddAdjustment::Adjustment
295
- }
292
+ required :adjustment, union: -> { Orb::SubscriptionSchedulePlanChangeParams::AddAdjustment::Adjustment }
296
293
 
297
294
  # @!attribute end_date
298
295
  # The end date of the adjustment interval. This is the date that the adjustment
@@ -493,10 +490,7 @@ module Orb
493
490
 
494
491
  variant :bulk_with_proration, -> { Orb::NewSubscriptionBulkWithProrationPrice }
495
492
 
496
- variant :scalable_matrix_with_unit_pricing,
497
- -> {
498
- Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice
499
- }
493
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice }
500
494
 
501
495
  variant :scalable_matrix_with_tiered_pricing,
502
496
  -> { Orb::NewSubscriptionScalableMatrixWithTieredPricingPrice }
@@ -743,10 +737,7 @@ module Orb
743
737
 
744
738
  variant :bulk_with_proration, -> { Orb::NewSubscriptionBulkWithProrationPrice }
745
739
 
746
- variant :scalable_matrix_with_unit_pricing,
747
- -> {
748
- Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice
749
- }
740
+ variant :scalable_matrix_with_unit_pricing, -> { Orb::NewSubscriptionScalableMatrixWithUnitPricingPrice }
750
741
 
751
742
  variant :scalable_matrix_with_tiered_pricing,
752
743
  -> { Orb::NewSubscriptionScalableMatrixWithTieredPricingPrice }
@@ -24,18 +24,13 @@ module Orb
24
24
  # @!attribute billable_metric
25
25
  #
26
26
  # @return [Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric]
27
- required :billable_metric,
28
- -> {
29
- Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric
30
- }
27
+ required :billable_metric, -> { Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::BillableMetric }
31
28
 
32
29
  # @!attribute usage
33
30
  #
34
31
  # @return [Array<Orb::Models::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage>]
35
32
  required :usage,
36
- -> {
37
- Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage]
38
- }
33
+ -> { Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::UngroupedSubscriptionUsage::Data::Usage] }
39
34
 
40
35
  # @!attribute view_mode
41
36
  #
@@ -119,10 +114,7 @@ module Orb
119
114
  # @!attribute billable_metric
120
115
  #
121
116
  # @return [Orb::Models::SubscriptionUsage::GroupedSubscriptionUsage::Data::BillableMetric]
122
- required :billable_metric,
123
- -> {
124
- Orb::SubscriptionUsage::GroupedSubscriptionUsage::Data::BillableMetric
125
- }
117
+ required :billable_metric, -> { Orb::SubscriptionUsage::GroupedSubscriptionUsage::Data::BillableMetric }
126
118
 
127
119
  # @!attribute metric_group
128
120
  #
@@ -133,9 +125,7 @@ module Orb
133
125
  #
134
126
  # @return [Array<Orb::Models::SubscriptionUsage::GroupedSubscriptionUsage::Data::Usage>]
135
127
  required :usage,
136
- -> {
137
- Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::GroupedSubscriptionUsage::Data::Usage]
138
- }
128
+ -> { Orb::Internal::Type::ArrayOf[Orb::SubscriptionUsage::GroupedSubscriptionUsage::Data::Usage] }
139
129
 
140
130
  # @!attribute view_mode
141
131
  #
data/lib/orb/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Orb
4
- VERSION = "1.11.1"
4
+ VERSION = "1.11.2"
5
5
  end
data/rbi/orb/errors.rbi CHANGED
@@ -59,10 +59,10 @@ module Orb
59
59
  end
60
60
 
61
61
  class APIConnectionError < Orb::Errors::APIError
62
- sig { void }
62
+ sig { returns(NilClass) }
63
63
  attr_accessor :status
64
64
 
65
- sig { void }
65
+ sig { returns(NilClass) }
66
66
  attr_accessor :body
67
67
 
68
68
  # @api private
@@ -213,7 +213,7 @@ module Orb
213
213
  send_retry_header: T::Boolean
214
214
  ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
215
215
  end
216
- private def send_request(
216
+ def send_request(
217
217
  request,
218
218
  redirect_count:,
219
219
  retry_count:,
@@ -86,6 +86,52 @@ module Orb
86
86
  def self.type_info(spec)
87
87
  end
88
88
 
89
+ # @api private
90
+ sig do
91
+ params(
92
+ type_info:
93
+ T.any(
94
+ {
95
+ const:
96
+ T.nilable(
97
+ T.any(NilClass, T::Boolean, Integer, Float, Symbol)
98
+ ),
99
+ enum:
100
+ T.nilable(
101
+ T.proc.returns(Orb::Internal::Type::Converter::Input)
102
+ ),
103
+ union:
104
+ T.nilable(
105
+ T.proc.returns(Orb::Internal::Type::Converter::Input)
106
+ )
107
+ },
108
+ T.proc.returns(Orb::Internal::Type::Converter::Input),
109
+ Orb::Internal::Type::Converter::Input
110
+ ),
111
+ spec:
112
+ T.any(
113
+ {
114
+ const:
115
+ T.nilable(
116
+ T.any(NilClass, T::Boolean, Integer, Float, Symbol)
117
+ ),
118
+ enum:
119
+ T.nilable(
120
+ T.proc.returns(Orb::Internal::Type::Converter::Input)
121
+ ),
122
+ union:
123
+ T.nilable(
124
+ T.proc.returns(Orb::Internal::Type::Converter::Input)
125
+ )
126
+ },
127
+ T.proc.returns(Orb::Internal::Type::Converter::Input),
128
+ Orb::Internal::Type::Converter::Input
129
+ )
130
+ ).returns(Orb::Internal::AnyHash)
131
+ end
132
+ def self.meta_info(type_info, spec)
133
+ end
134
+
89
135
  # @api private
90
136
  sig do
91
137
  params(translate_names: T::Boolean).returns(
@@ -16,7 +16,8 @@ module Orb
16
16
  T::Array[
17
17
  [
18
18
  T.nilable(Symbol),
19
- T.proc.returns(Orb::Internal::Type::Converter::Input)
19
+ T.proc.returns(Orb::Internal::Type::Converter::Input),
20
+ Orb::Internal::AnyHash
20
21
  ]
21
22
  ]
22
23
  )
@@ -25,7 +26,11 @@ module Orb
25
26
  end
26
27
 
27
28
  # @api private
28
- sig { returns(T::Array[[T.nilable(Symbol), T.anything]]) }
29
+ sig do
30
+ returns(
31
+ T::Array[[T.nilable(Symbol), T.anything, Orb::Internal::AnyHash]]
32
+ )
33
+ end
29
34
  protected def derefed_variants
30
35
  end
31
36
 
@@ -99,7 +99,7 @@ module Orb
99
99
  retry_count: Integer
100
100
  ) -> Float
101
101
 
102
- private def send_request: (
102
+ def send_request: (
103
103
  Orb::Internal::Transport::BaseClient::request_input request,
104
104
  redirect_count: Integer,
105
105
  retry_count: Integer,
@@ -39,6 +39,23 @@ module Orb
39
39
  | Orb::Internal::Type::Converter::input spec
40
40
  ) -> (^-> top)
41
41
 
42
+ def self.meta_info: (
43
+ {
44
+ const: (nil | bool | Integer | Float | Symbol)?,
45
+ enum: ^-> Orb::Internal::Type::Converter::input?,
46
+ union: ^-> Orb::Internal::Type::Converter::input?
47
+ }
48
+ | ^-> Orb::Internal::Type::Converter::input
49
+ | Orb::Internal::Type::Converter::input type_info,
50
+ {
51
+ const: (nil | bool | Integer | Float | Symbol)?,
52
+ enum: ^-> Orb::Internal::Type::Converter::input?,
53
+ union: ^-> Orb::Internal::Type::Converter::input?
54
+ }
55
+ | ^-> Orb::Internal::Type::Converter::input
56
+ | Orb::Internal::Type::Converter::input spec
57
+ ) -> ::Hash[Symbol, top]
58
+
42
59
  def self.new_coerce_state: (
43
60
  ?translate_names: bool
44
61
  ) -> Orb::Internal::Type::Converter::coerce_state
@@ -5,9 +5,9 @@ module Orb
5
5
  include Orb::Internal::Type::Converter
6
6
  include Orb::Internal::Util::SorbetRuntimeSupport
7
7
 
8
- private def self.known_variants: -> ::Array[[Symbol?, (^-> Orb::Internal::Type::Converter::input)]]
8
+ private def self.known_variants: -> ::Array[[Symbol?, (^-> Orb::Internal::Type::Converter::input), ::Hash[Symbol, top]]]
9
9
 
10
- def self.derefed_variants: -> ::Array[[Symbol?, top]]
10
+ def self.derefed_variants: -> ::Array[[Symbol?, top, ::Hash[Symbol, top]]]
11
11
 
12
12
  def self.variants: -> ::Array[top]
13
13
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: orb-billing
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.1
4
+ version: 1.11.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Orb
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-28 00:00:00.000000000 Z
11
+ date: 2025-08-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool