Module: Pago::V2026_04::Unions::CustomField
- Defined in:
- lib/pago/v2026_04/unions.rb,
sig/pago/v2026_04/generated.rbs
Overview
Variants: Models::CustomFieldText, Models::CustomFieldNumber, Models::CustomFieldDate, Models::CustomFieldCheckbox, Models::CustomFieldSelect.
Constant Summary collapse
- DISCRIMINATOR =
"type"
Class Method Summary collapse
-
.from_json(data) ⇒ Object?
The resolved variant, or the raw payload.
-
.mapping ⇒ Hash{String => Class}
Discriminator value to model class.
-
.variants ⇒ Array<Class>
Every model this union can resolve to.
Class Method Details
.from_json(data) ⇒ Object?
Returns the resolved variant, or the raw payload.
157 158 159 160 |
# File 'lib/pago/v2026_04/unions.rb', line 157 def self.from_json(data) data = ::JSON.parse(data) if data.is_a?(String) ::Pago::Serde.union(data, discriminator: DISCRIMINATOR, mapping: mapping, variants: variants) end |
.mapping ⇒ Hash{String => Class}
Returns discriminator value to model class.
140 141 142 143 144 145 146 147 148 |
# File 'lib/pago/v2026_04/unions.rb', line 140 def self.mapping @mapping ||= { "checkbox" => Models::CustomFieldCheckbox, "date" => Models::CustomFieldDate, "number" => Models::CustomFieldNumber, "select" => Models::CustomFieldSelect, "text" => Models::CustomFieldText }.freeze end |
.variants ⇒ Array<Class>
Returns every model this union can resolve to.
151 152 153 |
# File 'lib/pago/v2026_04/unions.rb', line 151 def self.variants @variants ||= [Models::CustomFieldText, Models::CustomFieldNumber, Models::CustomFieldDate, Models::CustomFieldCheckbox, Models::CustomFieldSelect].freeze end |