moov_ruby 0.0.0.pre.dev.22 → 0.0.0.pre.dev.24
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.
- checksums.yaml +4 -4
- data/lib/moov/avatars.rb +275 -0
- data/lib/moov/models/components/allowedscheduleerror.rb +36 -0
- data/lib/moov/models/components/allowedscheduleerror.rbi +15 -0
- data/lib/moov/models/components/avataruploadrequest.rb +32 -0
- data/lib/moov/models/components/avataruploadrequest.rbi +13 -0
- data/lib/moov/models/components/avataruploadrequest_file.rb +36 -0
- data/lib/moov/models/components/avataruploadrequest_file.rbi +15 -0
- data/lib/moov/models/components/capabilityid.rb +1 -0
- data/lib/moov/models/components/cardbrandfees.rb +6 -2
- data/lib/moov/models/components/cardbrandfees.rbi +2 -0
- data/lib/moov/models/components/contributingrule.rb +32 -0
- data/lib/moov/models/components/contributingrule.rbi +13 -0
- data/lib/moov/models/components/createtransfer.rb +6 -2
- data/lib/moov/models/components/createtransfer.rbi +2 -0
- data/lib/moov/models/components/feepaidby.rb +19 -0
- data/lib/moov/models/components/feepaidby.rbi +11 -0
- data/lib/moov/models/components/filedetails.rb +1 -1
- data/lib/moov/models/components/filepurpose.rb +1 -1
- data/lib/moov/models/components/fullissuedcard.rb +3 -3
- data/lib/moov/models/components/incurredfee.rb +6 -2
- data/lib/moov/models/components/incurredfee.rbi +2 -0
- data/lib/moov/models/components/issuedcard.rb +3 -3
- data/lib/moov/models/components/issuedcontrols.rb +52 -0
- data/lib/moov/models/components/issuedcontrols.rbi +23 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuedvelocitylimit.rb +60 -0
- data/lib/moov/models/components/issuedvelocitylimit.rbi +27 -0
- data/lib/moov/models/components/issuingcontrols.rb +18 -2
- data/lib/moov/models/components/issuingcontrols.rbi +8 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuingcontrolserror.rb +18 -2
- data/lib/moov/models/components/issuingcontrolserror.rbi +8 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +19 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rbi +11 -0
- data/lib/moov/models/components/issuingintervallimit.rb +4 -1
- data/lib/moov/models/components/issuingmerchantcategory.rb +43 -0
- data/lib/moov/models/components/issuingmerchantcategory.rbi +11 -0
- data/lib/moov/models/components/issuingscheduleday.rb +24 -0
- data/lib/moov/models/components/issuingscheduleday.rbi +11 -0
- data/lib/moov/models/components/issuingvelocitylimit.rb +11 -7
- data/lib/moov/models/components/issuingvelocitylimit.rbi +4 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rb +6 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rbi +2 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rbi +19 -0
- data/lib/moov/models/components/merchantentry.rb +40 -0
- data/lib/moov/models/components/merchantentry.rbi +17 -0
- data/lib/moov/models/components/merchantentryerror.rb +36 -0
- data/lib/moov/models/components/merchantentryerror.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictionserror.rb +36 -0
- data/lib/moov/models/components/merchantrestrictionserror.rbi +15 -0
- data/lib/moov/models/components/onboardinginvite.rb +1 -1
- data/lib/moov/models/components/partnerriskoutcomesresponse.rb +38 -0
- data/lib/moov/models/components/partnerriskoutcomesresponse.rbi +15 -0
- data/lib/moov/models/components/paymentlinkpayoutdetails.rb +8 -2
- data/lib/moov/models/components/paymentlinkpayoutdetails.rbi +2 -0
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +8 -2
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rbi +2 -0
- data/lib/moov/models/components/payoutdetailserror.rb +6 -2
- data/lib/moov/models/components/payoutdetailserror.rbi +2 -0
- data/lib/moov/models/components/product.rb +6 -2
- data/lib/moov/models/components/product.rbi +2 -0
- data/lib/moov/models/components/productcategories.rb +32 -0
- data/lib/moov/models/components/productcategories.rbi +13 -0
- data/lib/moov/models/components/productcategory.rb +48 -0
- data/lib/moov/models/components/productcategory.rbi +21 -0
- data/lib/moov/models/components/productrequest.rb +6 -2
- data/lib/moov/models/components/productrequest.rbi +2 -0
- data/lib/moov/models/components/schedulewindow.rb +40 -0
- data/lib/moov/models/components/schedulewindow.rbi +17 -0
- data/lib/moov/models/components/schedulewindowerror.rb +40 -0
- data/lib/moov/models/components/schedulewindowerror.rbi +17 -0
- data/lib/moov/models/components/schemebasicauth.rb +36 -0
- data/lib/moov/models/components/schemebasicauth.rbi +15 -0
- data/lib/moov/models/components/schemeoauth2auth.rb +40 -0
- data/lib/moov/models/components/schemeoauth2auth.rbi +17 -0
- data/lib/moov/models/components/transferfeepaidby.rb +32 -0
- data/lib/moov/models/components/transferfeepaidby.rbi +13 -0
- data/lib/moov/models/components/updateissuedcard.rb +6 -2
- data/lib/moov/models/components/updateissuedcard.rbi +2 -0
- data/lib/moov/models/components/updateissuingcontrols.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrols.rbi +21 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rbi +21 -0
- data/lib/moov/models/components.rb +31 -0
- data/lib/moov/models/errors/productrequestvalidationerror.rb +6 -2
- data/lib/moov/models/errors/productrequestvalidationerror.rbi +2 -0
- data/lib/moov/models/errors/updateissuedcarderror.rb +6 -2
- data/lib/moov/models/errors/updateissuedcarderror.rbi +2 -0
- data/lib/moov/models/operations/deleteavatar_request.rb +32 -0
- data/lib/moov/models/operations/deleteavatar_request.rbi +13 -0
- data/lib/moov/models/operations/deleteavatar_response.rb +44 -0
- data/lib/moov/models/operations/deleteavatar_response.rbi +19 -0
- data/lib/moov/models/operations/deleteavatar_security.rb +36 -0
- data/lib/moov/models/operations/deleteavatar_security.rbi +15 -0
- data/lib/moov/models/operations/gettransferriskoutcomes_request.rb +37 -0
- data/lib/moov/models/operations/gettransferriskoutcomes_request.rbi +15 -0
- data/lib/moov/models/operations/gettransferriskoutcomes_response.rb +48 -0
- data/lib/moov/models/operations/gettransferriskoutcomes_response.rbi +21 -0
- data/lib/moov/models/operations/listproductcategories_response.rb +48 -0
- data/lib/moov/models/operations/listproductcategories_response.rbi +21 -0
- data/lib/moov/models/operations/listproducts_request.rb +8 -2
- data/lib/moov/models/operations/listproducts_request.rbi +2 -0
- data/lib/moov/models/operations/uploadavatar_request.rb +36 -0
- data/lib/moov/models/operations/uploadavatar_request.rbi +15 -0
- data/lib/moov/models/operations/uploadavatar_response.rb +44 -0
- data/lib/moov/models/operations/uploadavatar_response.rbi +19 -0
- data/lib/moov/models/operations/uploadavatar_security.rb +36 -0
- data/lib/moov/models/operations/uploadavatar_security.rbi +15 -0
- data/lib/moov/models/operations.rb +9 -0
- data/lib/moov/products.rb +113 -8
- data/lib/moov/sdk_hooks/clientcredentials.rb +386 -0
- data/lib/moov/sdk_hooks/hooks.rb +6 -0
- data/lib/moov/sdk_hooks/oauth2scopes.rb +18 -0
- data/lib/moov/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +125 -0
- metadata +84 -2
|
@@ -15,11 +15,14 @@ module Moov
|
|
|
15
15
|
|
|
16
16
|
field :amount, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
17
17
|
|
|
18
|
+
field :count, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count') } }
|
|
19
|
+
|
|
18
20
|
field :interval, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('interval') } }
|
|
19
21
|
|
|
20
|
-
sig { params(amount: T.nilable(::String), interval: T.nilable(::String)).void }
|
|
21
|
-
def initialize(amount: nil, interval: nil)
|
|
22
|
+
sig { params(amount: T.nilable(::String), count: T.nilable(::String), interval: T.nilable(::String)).void }
|
|
23
|
+
def initialize(amount: nil, count: nil, interval: nil)
|
|
22
24
|
@amount = amount
|
|
25
|
+
@count = count
|
|
23
26
|
@interval = interval
|
|
24
27
|
end
|
|
25
28
|
|
|
@@ -27,6 +30,7 @@ module Moov
|
|
|
27
30
|
def ==(other)
|
|
28
31
|
return false unless other.is_a? self.class
|
|
29
32
|
return false unless @amount == other.amount
|
|
33
|
+
return false unless @count == other.count
|
|
30
34
|
return false unless @interval == other.interval
|
|
31
35
|
true
|
|
32
36
|
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# Restricts card usage by merchant category.
|
|
11
|
+
class MerchantCategoryRestrictions
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Whether the listed categories are the only ones allowed, or the ones to block.
|
|
16
|
+
field :mode, Models::Components::IssuingControlsRestrictionMode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuingControlsRestrictionMode, false) } }
|
|
17
|
+
# Predefined category groups to allow or block.
|
|
18
|
+
field :categories, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuingMerchantCategory)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('categories') } }
|
|
19
|
+
# Individual merchant category codes (MCCs) to allow or block, for codes not covered by a predefined category.
|
|
20
|
+
field :custom_mc_cs, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customMCCs') } }
|
|
21
|
+
# Merchants that are exempt from category restrictions regardless of their category.
|
|
22
|
+
field :exempt_merchants, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::MerchantEntry)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('exemptMerchants') } }
|
|
23
|
+
|
|
24
|
+
sig { params(mode: Models::Components::IssuingControlsRestrictionMode, categories: T.nilable(T::Array[Models::Components::IssuingMerchantCategory]), custom_mc_cs: T.nilable(T::Array[::String]), exempt_merchants: T.nilable(T::Array[Models::Components::MerchantEntry])).void }
|
|
25
|
+
def initialize(mode:, categories: nil, custom_mc_cs: nil, exempt_merchants: nil)
|
|
26
|
+
@mode = mode
|
|
27
|
+
@categories = categories
|
|
28
|
+
@custom_mc_cs = custom_mc_cs
|
|
29
|
+
@exempt_merchants = exempt_merchants
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @mode == other.mode
|
|
36
|
+
return false unless @categories == other.categories
|
|
37
|
+
return false unless @custom_mc_cs == other.custom_mc_cs
|
|
38
|
+
return false unless @exempt_merchants == other.exempt_merchants
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantCategoryRestrictions
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantCategoryRestrictions
|
|
11
|
+
def mode(); end
|
|
12
|
+
def mode=(str_); end
|
|
13
|
+
def categories(); end
|
|
14
|
+
def categories=(str_); end
|
|
15
|
+
def custom_mc_cs(); end
|
|
16
|
+
def custom_mc_cs=(str_); end
|
|
17
|
+
def exempt_merchants(); end
|
|
18
|
+
def exempt_merchants=(str_); end
|
|
19
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class MerchantCategoryRestrictionsError
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :mode, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode') } }
|
|
17
|
+
|
|
18
|
+
field :categories, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('categories') } }
|
|
19
|
+
|
|
20
|
+
field :custom_mc_cs, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customMCCs') } }
|
|
21
|
+
|
|
22
|
+
field :exempt_merchants, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::MerchantEntryError)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('exemptMerchants') } }
|
|
23
|
+
|
|
24
|
+
sig { params(mode: T.nilable(::String), categories: T.nilable(T::Hash[Symbol, ::String]), custom_mc_cs: T.nilable(T::Hash[Symbol, ::String]), exempt_merchants: T.nilable(T::Hash[Symbol, Models::Components::MerchantEntryError])).void }
|
|
25
|
+
def initialize(mode: nil, categories: nil, custom_mc_cs: nil, exempt_merchants: nil)
|
|
26
|
+
@mode = mode
|
|
27
|
+
@categories = categories
|
|
28
|
+
@custom_mc_cs = custom_mc_cs
|
|
29
|
+
@exempt_merchants = exempt_merchants
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @mode == other.mode
|
|
36
|
+
return false unless @categories == other.categories
|
|
37
|
+
return false unless @custom_mc_cs == other.custom_mc_cs
|
|
38
|
+
return false unless @exempt_merchants == other.exempt_merchants
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantCategoryRestrictionsError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantCategoryRestrictionsError
|
|
11
|
+
def mode(); end
|
|
12
|
+
def mode=(str_); end
|
|
13
|
+
def categories(); end
|
|
14
|
+
def categories=(str_); end
|
|
15
|
+
def custom_mc_cs(); end
|
|
16
|
+
def custom_mc_cs=(str_); end
|
|
17
|
+
def exempt_merchants(); end
|
|
18
|
+
def exempt_merchants=(str_); end
|
|
19
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# Identifies a merchant by ID, descriptor pattern, or both. At least one of `mid` or `descriptorPattern` must be set.
|
|
11
|
+
class MerchantEntry
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The merchant's unique identifier (ISO 8583 DE42), matched exactly.
|
|
16
|
+
field :mid, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mid') } }
|
|
17
|
+
# A case-insensitive RE2 regular expression matched against the merchant descriptor (ISO 8583 DE43).
|
|
18
|
+
field :descriptor_pattern, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('descriptorPattern') } }
|
|
19
|
+
# An optional label for this entry.
|
|
20
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name') } }
|
|
21
|
+
|
|
22
|
+
sig { params(mid: T.nilable(::String), descriptor_pattern: T.nilable(::String), name: T.nilable(::String)).void }
|
|
23
|
+
def initialize(mid: nil, descriptor_pattern: nil, name: nil)
|
|
24
|
+
@mid = mid
|
|
25
|
+
@descriptor_pattern = descriptor_pattern
|
|
26
|
+
@name = name
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @mid == other.mid
|
|
33
|
+
return false unless @descriptor_pattern == other.descriptor_pattern
|
|
34
|
+
return false unless @name == other.name
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantEntry
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantEntry
|
|
11
|
+
def mid(); end
|
|
12
|
+
def mid=(str_); end
|
|
13
|
+
def descriptor_pattern(); end
|
|
14
|
+
def descriptor_pattern=(str_); end
|
|
15
|
+
def name(); end
|
|
16
|
+
def name=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class MerchantEntryError
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :mid, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mid') } }
|
|
17
|
+
|
|
18
|
+
field :descriptor_pattern, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('descriptorPattern') } }
|
|
19
|
+
|
|
20
|
+
sig { params(mid: T.nilable(::String), descriptor_pattern: T.nilable(::String)).void }
|
|
21
|
+
def initialize(mid: nil, descriptor_pattern: nil)
|
|
22
|
+
@mid = mid
|
|
23
|
+
@descriptor_pattern = descriptor_pattern
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @mid == other.mid
|
|
30
|
+
return false unless @descriptor_pattern == other.descriptor_pattern
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantEntryError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantEntryError
|
|
11
|
+
def mid(); end
|
|
12
|
+
def mid=(str_); end
|
|
13
|
+
def descriptor_pattern(); end
|
|
14
|
+
def descriptor_pattern=(str_); end
|
|
15
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# Restricts card usage to specific merchants, independent of merchant category.
|
|
11
|
+
class MerchantRestrictions
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Whether the listed merchants are the only ones allowed, or the ones to block.
|
|
16
|
+
field :mode, Models::Components::IssuingControlsRestrictionMode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuingControlsRestrictionMode, false) } }
|
|
17
|
+
# The merchants to allow or block.
|
|
18
|
+
field :merchants, Crystalline::Array.new(Models::Components::MerchantEntry), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchants'), required: true } }
|
|
19
|
+
|
|
20
|
+
sig { params(mode: Models::Components::IssuingControlsRestrictionMode, merchants: T::Array[Models::Components::MerchantEntry]).void }
|
|
21
|
+
def initialize(mode:, merchants:)
|
|
22
|
+
@mode = mode
|
|
23
|
+
@merchants = merchants
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @mode == other.mode
|
|
30
|
+
return false unless @merchants == other.merchants
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantRestrictions
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantRestrictions
|
|
11
|
+
def mode(); end
|
|
12
|
+
def mode=(str_); end
|
|
13
|
+
def merchants(); end
|
|
14
|
+
def merchants=(str_); end
|
|
15
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class MerchantRestrictionsError
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :mode, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode') } }
|
|
17
|
+
|
|
18
|
+
field :merchants, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::MerchantEntryError)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchants') } }
|
|
19
|
+
|
|
20
|
+
sig { params(mode: T.nilable(::String), merchants: T.nilable(T::Hash[Symbol, Models::Components::MerchantEntryError])).void }
|
|
21
|
+
def initialize(mode: nil, merchants: nil)
|
|
22
|
+
@mode = mode
|
|
23
|
+
@merchants = merchants
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @mode == other.mode
|
|
30
|
+
return false unless @merchants == other.merchants
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::MerchantRestrictionsError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::MerchantRestrictionsError
|
|
11
|
+
def mode(); end
|
|
12
|
+
def mode=(str_); end
|
|
13
|
+
def merchants(); end
|
|
14
|
+
def merchants=(str_); end
|
|
15
|
+
end
|
|
@@ -26,7 +26,7 @@ module Moov
|
|
|
26
26
|
field :fee_plan_codes, Crystalline::Array.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePlanCodes'), required: true } }
|
|
27
27
|
|
|
28
28
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
29
|
-
#
|
|
29
|
+
# Optional URL to redirect the user to after they complete the onboarding process.
|
|
30
30
|
field :return_url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('returnURL') } }
|
|
31
31
|
# The terms of service URL set by the inviter.
|
|
32
32
|
field :terms_of_service_url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('termsOfServiceURL') } }
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# The risk rules that contributed to a transfer's risk decision.
|
|
11
|
+
#
|
|
12
|
+
# This information has limited availability and must be enabled for your account by Moov.
|
|
13
|
+
class PartnerRiskOutcomesResponse
|
|
14
|
+
extend T::Sig
|
|
15
|
+
include Crystalline::MetadataFields
|
|
16
|
+
|
|
17
|
+
# Identifier of the transfer these outcomes belong to.
|
|
18
|
+
field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
|
|
19
|
+
# The risk rules that contributed to the decision. May be empty when no rules are disclosed.
|
|
20
|
+
field :contributing_rules, Crystalline::Array.new(Models::Components::ContributingRule), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('contributingRules'), required: true } }
|
|
21
|
+
|
|
22
|
+
sig { params(transfer_id: ::String, contributing_rules: T::Array[Models::Components::ContributingRule]).void }
|
|
23
|
+
def initialize(transfer_id:, contributing_rules:)
|
|
24
|
+
@transfer_id = transfer_id
|
|
25
|
+
@contributing_rules = contributing_rules
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
29
|
+
def ==(other)
|
|
30
|
+
return false unless other.is_a? self.class
|
|
31
|
+
return false unless @transfer_id == other.transfer_id
|
|
32
|
+
return false unless @contributing_rules == other.contributing_rules
|
|
33
|
+
true
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::PartnerRiskOutcomesResponse
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::PartnerRiskOutcomesResponse
|
|
11
|
+
def transfer_id(); end
|
|
12
|
+
def transfer_id=(str_); end
|
|
13
|
+
def contributing_rules(); end
|
|
14
|
+
def contributing_rules=(str_); end
|
|
15
|
+
end
|
|
@@ -26,13 +26,18 @@ module Moov
|
|
|
26
26
|
# The `deferred` speed and `deferredBy` apply to `push-to-card` only. Other push methods
|
|
27
27
|
# (`push-to-apple-pay`, `push-to-google-pay`) are always delivered instantly regardless of these options.
|
|
28
28
|
field :push_options, Crystalline::Nilable.new(Models::Components::PushOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushOptions') } }
|
|
29
|
+
# Indicates which party bears the fee, keyed by disbursement payment method (`DisbursementPaymentMethodType`).
|
|
30
|
+
#
|
|
31
|
+
# Sparse — include only the methods you want to attribute. Any method left unset defaults to `source`.
|
|
32
|
+
field :fee_paid_by, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::FeePaidBy)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy') } }
|
|
29
33
|
|
|
30
|
-
sig { params(allowed_methods: T::Array[Models::Components::DisbursementPaymentMethodType], recipient: Models::Components::PayoutRecipient, metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptions)).void }
|
|
31
|
-
def initialize(allowed_methods:, recipient:, metadata: nil, push_options: nil)
|
|
34
|
+
sig { params(allowed_methods: T::Array[Models::Components::DisbursementPaymentMethodType], recipient: Models::Components::PayoutRecipient, metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptions), fee_paid_by: T.nilable(T::Hash[Symbol, Models::Components::FeePaidBy])).void }
|
|
35
|
+
def initialize(allowed_methods:, recipient:, metadata: nil, push_options: nil, fee_paid_by: nil)
|
|
32
36
|
@allowed_methods = allowed_methods
|
|
33
37
|
@recipient = recipient
|
|
34
38
|
@metadata = metadata
|
|
35
39
|
@push_options = push_options
|
|
40
|
+
@fee_paid_by = fee_paid_by
|
|
36
41
|
end
|
|
37
42
|
|
|
38
43
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -42,6 +47,7 @@ module Moov
|
|
|
42
47
|
return false unless @recipient == other.recipient
|
|
43
48
|
return false unless @metadata == other.metadata
|
|
44
49
|
return false unless @push_options == other.push_options
|
|
50
|
+
return false unless @fee_paid_by == other.fee_paid_by
|
|
45
51
|
true
|
|
46
52
|
end
|
|
47
53
|
end
|
|
@@ -26,13 +26,18 @@ module Moov
|
|
|
26
26
|
# The `deferred` speed and `deferredBy` apply to `push-to-card` only. Other push methods
|
|
27
27
|
# (`push-to-apple-pay`, `push-to-google-pay`) are always delivered instantly regardless of these options.
|
|
28
28
|
field :push_options, Crystalline::Nilable.new(Models::Components::PushOptionsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushOptions') } }
|
|
29
|
+
# Indicates which party bears the fee, keyed by disbursement payment method (`DisbursementPaymentMethodType`).
|
|
30
|
+
#
|
|
31
|
+
# Sparse — include only the methods you want to attribute. Any method left unset defaults to `source`.
|
|
32
|
+
field :fee_paid_by, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::FeePaidBy)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy') } }
|
|
29
33
|
|
|
30
|
-
sig { params(allowed_methods: T.nilable(T::Array[Models::Components::DisbursementPaymentMethodType]), recipient: T.nilable(Models::Components::PayoutRecipient), metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptionsUpdate)).void }
|
|
31
|
-
def initialize(allowed_methods: nil, recipient: nil, metadata: nil, push_options: nil)
|
|
34
|
+
sig { params(allowed_methods: T.nilable(T::Array[Models::Components::DisbursementPaymentMethodType]), recipient: T.nilable(Models::Components::PayoutRecipient), metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptionsUpdate), fee_paid_by: T.nilable(T::Hash[Symbol, Models::Components::FeePaidBy])).void }
|
|
35
|
+
def initialize(allowed_methods: nil, recipient: nil, metadata: nil, push_options: nil, fee_paid_by: nil)
|
|
32
36
|
@allowed_methods = allowed_methods
|
|
33
37
|
@recipient = recipient
|
|
34
38
|
@metadata = metadata
|
|
35
39
|
@push_options = push_options
|
|
40
|
+
@fee_paid_by = fee_paid_by
|
|
36
41
|
end
|
|
37
42
|
|
|
38
43
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -42,6 +47,7 @@ module Moov
|
|
|
42
47
|
return false unless @recipient == other.recipient
|
|
43
48
|
return false unless @metadata == other.metadata
|
|
44
49
|
return false unless @push_options == other.push_options
|
|
50
|
+
return false unless @fee_paid_by == other.fee_paid_by
|
|
45
51
|
true
|
|
46
52
|
end
|
|
47
53
|
end
|
|
@@ -21,12 +21,15 @@ module Moov
|
|
|
21
21
|
|
|
22
22
|
field :push_options, Crystalline::Nilable.new(Models::Components::PushOptionsError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushOptions') } }
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
field :fee_paid_by, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy') } }
|
|
25
|
+
|
|
26
|
+
sig { params(allowed_methods: T.nilable(::String), recipient: T.nilable(Models::Components::PayoutRecipientError), metadata: T.nilable(::String), push_options: T.nilable(Models::Components::PushOptionsError), fee_paid_by: T.nilable(::String)).void }
|
|
27
|
+
def initialize(allowed_methods: nil, recipient: nil, metadata: nil, push_options: nil, fee_paid_by: nil)
|
|
26
28
|
@allowed_methods = allowed_methods
|
|
27
29
|
@recipient = recipient
|
|
28
30
|
@metadata = metadata
|
|
29
31
|
@push_options = push_options
|
|
32
|
+
@fee_paid_by = fee_paid_by
|
|
30
33
|
end
|
|
31
34
|
|
|
32
35
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -36,6 +39,7 @@ module Moov
|
|
|
36
39
|
return false unless @recipient == other.recipient
|
|
37
40
|
return false unless @metadata == other.metadata
|
|
38
41
|
return false unless @push_options == other.push_options
|
|
42
|
+
return false unless @fee_paid_by == other.fee_paid_by
|
|
39
43
|
true
|
|
40
44
|
end
|
|
41
45
|
end
|
|
@@ -32,11 +32,13 @@ module Moov
|
|
|
32
32
|
field :option_groups, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::ProductOptionGroup)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('optionGroups') } }
|
|
33
33
|
# Optional images associated with the product.
|
|
34
34
|
field :images, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::ProductImageMetadata)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('images') } }
|
|
35
|
+
# The product taxonomy category associated with the product, if any.
|
|
36
|
+
field :category, Crystalline::Nilable.new(Models::Components::ProductCategory), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('category') } }
|
|
35
37
|
# The date and time when the product was disabled.
|
|
36
38
|
field :disabled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disabledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
37
39
|
|
|
38
|
-
sig { params(product_id: ::String, title: ::String, base_price: Models::Components::AmountDecimal, created_on: ::DateTime, updated_on: ::DateTime, description: T.nilable(::String), option_groups: T.nilable(T::Array[Models::Components::ProductOptionGroup]), images: T.nilable(T::Array[Models::Components::ProductImageMetadata]), disabled_on: T.nilable(::DateTime)).void }
|
|
39
|
-
def initialize(product_id:, title:, base_price:, created_on:, updated_on:, description: nil, option_groups: nil, images: nil, disabled_on: nil)
|
|
40
|
+
sig { params(product_id: ::String, title: ::String, base_price: Models::Components::AmountDecimal, created_on: ::DateTime, updated_on: ::DateTime, description: T.nilable(::String), option_groups: T.nilable(T::Array[Models::Components::ProductOptionGroup]), images: T.nilable(T::Array[Models::Components::ProductImageMetadata]), category: T.nilable(Models::Components::ProductCategory), disabled_on: T.nilable(::DateTime)).void }
|
|
41
|
+
def initialize(product_id:, title:, base_price:, created_on:, updated_on:, description: nil, option_groups: nil, images: nil, category: nil, disabled_on: nil)
|
|
40
42
|
@product_id = product_id
|
|
41
43
|
@title = title
|
|
42
44
|
@base_price = base_price
|
|
@@ -45,6 +47,7 @@ module Moov
|
|
|
45
47
|
@description = description
|
|
46
48
|
@option_groups = option_groups
|
|
47
49
|
@images = images
|
|
50
|
+
@category = category
|
|
48
51
|
@disabled_on = disabled_on
|
|
49
52
|
end
|
|
50
53
|
|
|
@@ -59,6 +62,7 @@ module Moov
|
|
|
59
62
|
return false unless @description == other.description
|
|
60
63
|
return false unless @option_groups == other.option_groups
|
|
61
64
|
return false unless @images == other.images
|
|
65
|
+
return false unless @category == other.category
|
|
62
66
|
return false unless @disabled_on == other.disabled_on
|
|
63
67
|
true
|
|
64
68
|
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# A list of product categories from the product taxonomy.
|
|
11
|
+
class ProductCategories
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :categories, Crystalline::Array.new(Models::Components::ProductCategory), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('categories'), required: true } }
|
|
17
|
+
|
|
18
|
+
sig { params(categories: T::Array[Models::Components::ProductCategory]).void }
|
|
19
|
+
def initialize(categories:)
|
|
20
|
+
@categories = categories
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @categories == other.categories
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::ProductCategories
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::ProductCategories
|
|
11
|
+
def categories(); end
|
|
12
|
+
def categories=(str_); end
|
|
13
|
+
end
|