tremendous_ruby 5.29.0 → 5.30.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.
- checksums.yaml +4 -4
- data/lib/tremendous/api/tremendous_api.rb +48 -45
- data/lib/tremendous/api_client.rb +7 -3
- data/lib/tremendous/api_error.rb +1 -1
- data/lib/tremendous/api_model_base.rb +88 -0
- data/lib/tremendous/configuration.rb +1 -1
- data/lib/tremendous/models/allow_email.rb +2 -75
- data/lib/tremendous/models/allow_ip.rb +2 -75
- data/lib/tremendous/models/balance_transaction.rb +2 -75
- data/lib/tremendous/models/balance_transaction_order.rb +2 -75
- data/lib/tremendous/models/balance_transaction_order_payment.rb +2 -75
- data/lib/tremendous/models/base_order_for_create.rb +2 -75
- data/lib/tremendous/models/campaign.rb +4 -77
- data/lib/tremendous/models/campaign_base.rb +4 -77
- data/lib/tremendous/models/campaign_base_products_inner.rb +102 -0
- data/lib/tremendous/models/channel.rb +1 -1
- data/lib/tremendous/models/connected_organization.rb +2 -75
- data/lib/tremendous/models/connected_organization_member.rb +2 -75
- data/lib/tremendous/models/connected_organization_member_member.rb +2 -75
- data/lib/tremendous/models/connected_organization_member_response.rb +164 -0
- data/lib/tremendous/models/connected_organization_member_response_connected_organization_member.rb +273 -0
- data/lib/tremendous/models/connected_organization_member_session.rb +2 -75
- data/lib/tremendous/models/connected_organization_member_session_response.rb +164 -0
- data/lib/tremendous/models/connected_organization_member_session_response_connected_organization_member_session.rb +310 -0
- data/lib/tremendous/models/connected_organization_organization.rb +2 -75
- data/lib/tremendous/models/{generate_reward_link403_response.rb → connected_organization_response.rb} +20 -103
- data/lib/tremendous/models/connected_organization_response_connected_organization.rb +240 -0
- data/lib/tremendous/models/create_api_key200_response.rb +2 -75
- data/lib/tremendous/models/create_api_key_request.rb +2 -75
- data/lib/tremendous/models/create_campaign200_response.rb +2 -75
- data/lib/tremendous/models/create_campaign_request.rb +4 -77
- data/lib/tremendous/models/create_connected_organization200_response.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_member200_response.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_member_request.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_member_session200_response.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_member_session200_response_connected_organization_member_session.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_member_session_request.rb +2 -75
- data/lib/tremendous/models/create_connected_organization_request.rb +3 -76
- data/lib/tremendous/models/create_connected_organization_request_kyb_prefill.rb +13 -76
- data/lib/tremendous/models/create_field.rb +2 -75
- data/lib/tremendous/models/create_field200_response.rb +2 -75
- data/lib/tremendous/models/create_field_request.rb +2 -75
- data/lib/tremendous/models/create_field_request_data.rb +2 -75
- data/lib/tremendous/models/create_invoice200_response.rb +2 -75
- data/lib/tremendous/models/create_invoice_request.rb +4 -77
- data/lib/tremendous/models/create_member.rb +2 -75
- data/lib/tremendous/models/create_member200_response.rb +2 -75
- data/lib/tremendous/models/create_member_request.rb +2 -75
- data/lib/tremendous/models/create_order200_response.rb +2 -75
- data/lib/tremendous/models/create_order200_response_order.rb +3 -76
- data/lib/tremendous/models/create_order200_response_order_rewards_inner.rb +2 -75
- data/lib/tremendous/models/create_order200_response_order_rewards_inner_delivery.rb +2 -75
- data/lib/tremendous/models/create_order_request.rb +3 -4
- data/lib/tremendous/models/create_organization.rb +2 -75
- data/lib/tremendous/models/create_organization200_response.rb +2 -75
- data/lib/tremendous/models/create_organization200_response_organization.rb +2 -75
- data/lib/tremendous/models/create_organization_for_response.rb +2 -75
- data/lib/tremendous/models/create_organization_properties.rb +2 -75
- data/lib/tremendous/models/create_organization_request.rb +2 -75
- data/lib/tremendous/models/create_organization_request_copy_settings.rb +2 -75
- data/lib/tremendous/models/create_organization_response.rb +147 -0
- data/lib/tremendous/models/create_organization_response_organization.rb +282 -0
- data/lib/tremendous/models/create_report200_response.rb +2 -75
- data/lib/tremendous/models/create_report200_response_report.rb +2 -75
- data/lib/tremendous/models/create_report_request.rb +2 -75
- data/lib/tremendous/models/create_report_request_filters.rb +2 -75
- data/lib/tremendous/models/create_report_request_filters_digital_rewards.rb +2 -75
- data/lib/tremendous/models/create_report_request_filters_digital_rewards_amount.rb +2 -75
- data/lib/tremendous/models/create_report_request_filters_digital_rewards_created_at.rb +2 -75
- data/lib/tremendous/models/create_topup200_response.rb +2 -75
- data/lib/tremendous/models/create_topup_request.rb +2 -75
- data/lib/tremendous/models/create_webhook200_response.rb +2 -75
- data/lib/tremendous/models/create_webhook_request.rb +2 -75
- data/lib/tremendous/models/currency_codes.rb +1 -1
- data/lib/tremendous/models/custom_field.rb +2 -75
- data/lib/tremendous/models/delivery_details.rb +2 -75
- data/lib/tremendous/models/delivery_details_with_link.rb +2 -75
- data/lib/tremendous/models/delivery_metadata.rb +2 -75
- data/lib/tremendous/models/delivery_method.rb +1 -1
- data/lib/tremendous/models/delivery_status.rb +1 -1
- data/lib/tremendous/models/error_model.rb +2 -75
- data/lib/tremendous/models/field.rb +2 -75
- data/lib/tremendous/models/fraud_config_allow_email.rb +2 -75
- data/lib/tremendous/models/fraud_config_country.rb +2 -75
- data/lib/tremendous/models/fraud_config_country_update_list.rb +2 -75
- data/lib/tremendous/models/fraud_config_ip.rb +2 -75
- data/lib/tremendous/models/fraud_config_redeemed_rewards_amount.rb +2 -75
- data/lib/tremendous/models/fraud_config_redeemed_rewards_count.rb +2 -75
- data/lib/tremendous/models/fraud_config_review_email.rb +2 -75
- data/lib/tremendous/models/fraud_config_review_vpn.rb +2 -75
- data/lib/tremendous/models/fraud_generic_response.rb +2 -75
- data/lib/tremendous/models/fraud_review.rb +3 -76
- data/lib/tremendous/models/fraud_review_base.rb +3 -76
- data/lib/tremendous/models/fraud_review_geo.rb +2 -75
- data/lib/tremendous/models/fraud_review_list_item.rb +3 -76
- data/lib/tremendous/models/fraud_review_reason.rb +1 -1
- data/lib/tremendous/models/fraud_review_redemption_method.rb +1 -1
- data/lib/tremendous/models/fraud_review_related_rewards.rb +2 -75
- data/lib/tremendous/models/fraud_review_risk.rb +1 -1
- data/lib/tremendous/models/fraud_review_status.rb +1 -1
- data/lib/tremendous/models/fraud_rule200_response.rb +2 -75
- data/lib/tremendous/models/fraud_rule_request.rb +2 -75
- data/lib/tremendous/models/fraud_rule_request_config.rb +3 -4
- data/lib/tremendous/models/fraud_rule_type.rb +1 -1
- data/lib/tremendous/models/fraud_rules_list_item.rb +2 -75
- data/lib/tremendous/models/funding_source.rb +3 -76
- data/lib/tremendous/models/generate_reward_link200_response.rb +2 -75
- data/lib/tremendous/models/generate_reward_link200_response_reward.rb +2 -75
- data/lib/tremendous/models/get_fraud_review200_response.rb +2 -75
- data/lib/tremendous/models/get_fraud_review200_response_fraud_review.rb +2 -75
- data/lib/tremendous/models/get_fraud_review200_response_fraud_review_related_rewards.rb +2 -75
- data/lib/tremendous/models/get_funding_source200_response.rb +2 -75
- data/lib/tremendous/models/get_member200_response.rb +2 -75
- data/lib/tremendous/models/get_member200_response_member.rb +2 -75
- data/lib/tremendous/models/get_member200_response_member_events_inner.rb +2 -75
- data/lib/tremendous/models/get_order200_response.rb +2 -75
- data/lib/tremendous/models/get_organization200_response.rb +2 -75
- data/lib/tremendous/models/get_product_response.rb +2 -75
- data/lib/tremendous/models/get_reward200_response.rb +2 -75
- data/lib/tremendous/models/inline_object.rb +2 -75
- data/lib/tremendous/models/invoice.rb +4 -77
- data/lib/tremendous/models/invoice_response.rb +164 -0
- data/lib/tremendous/models/invoice_response_invoice.rb +370 -0
- data/lib/tremendous/models/list_balance_transactions200_response.rb +2 -75
- data/lib/tremendous/models/list_balance_transactions200_response_transactions_inner.rb +2 -75
- data/lib/tremendous/models/list_balance_transactions200_response_transactions_inner_order.rb +2 -75
- data/lib/tremendous/models/list_balance_transactions200_response_transactions_inner_order_payment.rb +2 -75
- data/lib/tremendous/models/list_campaigns200_response.rb +2 -75
- data/lib/tremendous/models/list_campaigns200_response_campaigns_inner.rb +4 -77
- data/lib/tremendous/models/list_campaigns200_response_campaigns_inner_auto_add_product_rule.rb +2 -75
- data/lib/tremendous/models/list_campaigns200_response_campaigns_inner_email_style.rb +2 -75
- data/lib/tremendous/models/list_campaigns200_response_campaigns_inner_products_inner.rb +102 -0
- data/lib/tremendous/models/list_campaigns200_response_campaigns_inner_webpage_style.rb +2 -75
- data/lib/tremendous/models/list_connected_organization_members200_response.rb +2 -75
- data/lib/tremendous/models/list_connected_organization_members200_response_connected_organization_members_inner.rb +2 -75
- data/lib/tremendous/models/list_connected_organization_members200_response_connected_organization_members_inner_member.rb +2 -75
- data/lib/tremendous/models/list_connected_organizations200_response.rb +2 -75
- data/lib/tremendous/models/list_connected_organizations200_response_connected_organizations_inner.rb +2 -75
- data/lib/tremendous/models/list_connected_organizations200_response_connected_organizations_inner_organization.rb +2 -75
- data/lib/tremendous/models/list_fields200_response.rb +2 -75
- data/lib/tremendous/models/list_fields200_response_fields_inner.rb +2 -75
- data/lib/tremendous/models/list_fields200_response_fields_inner_data.rb +2 -75
- data/lib/tremendous/models/list_forex_response.rb +2 -75
- data/lib/tremendous/models/list_fraud_reviews200_response.rb +2 -75
- data/lib/tremendous/models/list_fraud_reviews200_response_fraud_reviews_inner.rb +2 -75
- data/lib/tremendous/models/list_fraud_reviews200_response_fraud_reviews_inner_geo.rb +2 -75
- data/lib/tremendous/models/list_fraud_rules200_response.rb +2 -75
- data/lib/tremendous/models/list_fraud_rules200_response_fraud_rules_inner.rb +2 -75
- data/lib/tremendous/models/list_funding_sources200_response.rb +2 -75
- data/lib/tremendous/models/list_funding_sources200_response_funding_sources_inner.rb +3 -76
- data/lib/tremendous/models/list_funding_sources200_response_funding_sources_inner_meta.rb +17 -78
- data/lib/tremendous/models/list_funding_sources200_response_funding_sources_inner_meta_failure_details.rb +2 -75
- data/lib/tremendous/models/list_invoices200_response.rb +2 -75
- data/lib/tremendous/models/list_invoices200_response_invoices_inner.rb +4 -77
- data/lib/tremendous/models/list_members200_response.rb +2 -75
- data/lib/tremendous/models/list_members200_response_members_inner.rb +2 -75
- data/lib/tremendous/models/list_orders200_response.rb +2 -75
- data/lib/tremendous/models/list_orders200_response_orders_inner.rb +3 -76
- data/lib/tremendous/models/list_orders200_response_orders_inner_payment.rb +2 -75
- data/lib/tremendous/models/list_orders200_response_orders_inner_payment_refund.rb +2 -75
- data/lib/tremendous/models/list_organizations200_response.rb +2 -75
- data/lib/tremendous/models/list_organizations200_response_organizations_inner.rb +2 -75
- data/lib/tremendous/models/list_products_response.rb +2 -75
- data/lib/tremendous/models/list_products_response_products_inner.rb +4 -77
- data/lib/tremendous/models/list_products_response_products_inner_countries_inner.rb +2 -75
- data/lib/tremendous/models/list_products_response_products_inner_documents.rb +2 -75
- data/lib/tremendous/models/list_products_response_products_inner_images_inner.rb +2 -75
- data/lib/tremendous/models/list_products_response_products_inner_skus_inner.rb +61 -81
- data/lib/tremendous/models/list_rewards200_response.rb +2 -75
- data/lib/tremendous/models/list_rewards200_response_rewards_inner.rb +2 -75
- data/lib/tremendous/models/list_rewards200_response_rewards_inner_custom_fields_inner.rb +2 -75
- data/lib/tremendous/models/list_rewards200_response_rewards_inner_delivery.rb +2 -75
- data/lib/tremendous/models/list_rewards200_response_rewards_inner_recipient.rb +2 -75
- data/lib/tremendous/models/list_rewards200_response_rewards_inner_value.rb +2 -75
- data/lib/tremendous/models/list_rewards401_response.rb +2 -75
- data/lib/tremendous/models/list_rewards401_response_errors.rb +2 -75
- data/lib/tremendous/models/list_roles200_response.rb +2 -75
- data/lib/tremendous/models/list_roles200_response_roles_inner.rb +2 -75
- data/lib/tremendous/models/list_topups200_response.rb +2 -75
- data/lib/tremendous/models/list_topups200_response_topups_inner.rb +3 -76
- data/lib/tremendous/models/list_webhook_events200_response.rb +2 -75
- data/lib/tremendous/models/list_webhooks200_response.rb +2 -75
- data/lib/tremendous/models/list_webhooks200_response_webhooks_inner.rb +2 -75
- data/lib/tremendous/models/member.rb +2 -75
- data/lib/tremendous/models/member_base.rb +2 -75
- data/lib/tremendous/models/member_with_events.rb +2 -75
- data/lib/tremendous/models/member_without_events.rb +2 -75
- data/lib/tremendous/models/{fraud_rule400_response.rb → member_without_events_response.rb} +20 -103
- data/lib/tremendous/models/member_without_events_response_member.rb +311 -0
- data/lib/tremendous/models/order.rb +4 -77
- data/lib/tremendous/models/order_base.rb +3 -76
- data/lib/tremendous/models/order_base_payment.rb +2 -75
- data/lib/tremendous/models/order_status.rb +1 -1
- data/lib/tremendous/models/order_with_link.rb +3 -76
- data/lib/tremendous/models/order_with_link_rewards_inner.rb +2 -75
- data/lib/tremendous/models/order_without_link.rb +4 -77
- data/lib/tremendous/models/organization.rb +2 -75
- data/lib/tremendous/models/organization_response.rb +147 -0
- data/lib/tremendous/models/organization_response_organization.rb +285 -0
- data/lib/tremendous/models/payment_details.rb +2 -75
- data/lib/tremendous/models/payment_details_refund.rb +2 -75
- data/lib/tremendous/models/payout.rb +2 -75
- data/lib/tremendous/models/product.rb +4 -77
- data/lib/tremendous/models/product_documents.rb +2 -75
- data/lib/tremendous/models/recipient.rb +2 -75
- data/lib/tremendous/models/refund_details.rb +2 -75
- data/lib/tremendous/models/report.rb +2 -75
- data/lib/tremendous/models/{delete_fraud_rule200_response.rb → report_response.rb} +25 -89
- data/lib/tremendous/models/resend_reward_request.rb +2 -75
- data/lib/tremendous/models/review_country.rb +2 -75
- data/lib/tremendous/models/review_country1.rb +2 -75
- data/lib/tremendous/models/review_email.rb +2 -75
- data/lib/tremendous/models/review_ip.rb +2 -75
- data/lib/tremendous/models/review_redeemed_rewards_amount.rb +2 -75
- data/lib/tremendous/models/review_redeemed_rewards_count.rb +2 -75
- data/lib/tremendous/models/review_vpn.rb +2 -75
- data/lib/tremendous/models/reward.rb +2 -75
- data/lib/tremendous/models/reward_base.rb +2 -75
- data/lib/tremendous/models/reward_base_custom_fields_inner.rb +2 -75
- data/lib/tremendous/models/reward_for_order_create.rb +2 -75
- data/lib/tremendous/models/reward_link.rb +2 -75
- data/lib/tremendous/models/{inline_object1.rb → reward_link_response.rb} +5 -78
- data/lib/tremendous/models/reward_link_response_reward.rb +180 -0
- data/lib/tremendous/models/reward_response.rb +164 -0
- data/lib/tremendous/models/{order_without_link_rewards_inner.rb → reward_response_reward.rb} +4 -77
- data/lib/tremendous/models/reward_token.rb +2 -75
- data/lib/tremendous/models/reward_token_response.rb +164 -0
- data/lib/tremendous/models/{inline_object1_reward.rb → reward_token_response_reward.rb} +4 -77
- data/lib/tremendous/models/reward_value.rb +2 -75
- data/lib/tremendous/models/reward_with_link.rb +2 -75
- data/lib/tremendous/models/reward_with_link_delivery.rb +2 -75
- data/lib/tremendous/models/reward_without_link.rb +2 -75
- data/lib/tremendous/models/reward_without_link_delivery.rb +2 -75
- data/lib/tremendous/models/role.rb +2 -75
- data/lib/tremendous/models/simulate_webhook_request.rb +2 -75
- data/lib/tremendous/models/single_reward_order.rb +2 -75
- data/lib/tremendous/models/single_reward_order_payment.rb +2 -75
- data/lib/tremendous/models/single_reward_order_reward.rb +2 -75
- data/lib/tremendous/models/single_reward_order_reward_custom_fields_inner.rb +2 -75
- data/lib/tremendous/models/single_reward_order_reward_delivery.rb +2 -75
- data/lib/tremendous/models/single_reward_order_reward_delivery_meta.rb +2 -75
- data/lib/tremendous/models/single_reward_order_with_link.rb +2 -75
- data/lib/tremendous/models/single_reward_order_with_link_order.rb +3 -76
- data/lib/tremendous/models/single_reward_order_without_link.rb +2 -75
- data/lib/tremendous/models/single_reward_order_without_link_order.rb +4 -77
- data/lib/tremendous/models/topup.rb +3 -76
- data/lib/tremendous/models/topup_create_request.rb +2 -75
- data/lib/tremendous/models/topup_response.rb +147 -0
- data/lib/tremendous/models/update_campaign.rb +4 -77
- data/lib/tremendous/models/update_campaign_request.rb +4 -77
- data/lib/tremendous/models/update_fraud_rule_list_request.rb +2 -75
- data/lib/tremendous/models/update_fraud_rule_list_request_config.rb +7 -8
- data/lib/tremendous/models/update_member.rb +2 -75
- data/lib/tremendous/models/update_member_request.rb +2 -75
- data/lib/tremendous/models/webhook.rb +2 -75
- data/lib/tremendous/models/webhook_post.rb +2 -75
- data/lib/tremendous/models/webhook_response.rb +147 -0
- data/lib/tremendous/models/{update_fraud_rule_list200_response.rb → webhook_response_webhook.rb} +47 -94
- data/lib/tremendous/version.rb +1 -1
- data/lib/tremendous.rb +28 -15
- metadata +28 -15
- data/lib/tremendous/models/allow_email1.rb +0 -250
- data/lib/tremendous/models/allow_ip1.rb +0 -250
- data/lib/tremendous/models/fraud_rule422_response.rb +0 -247
- data/lib/tremendous/models/list_rewards429_response.rb +0 -247
- data/lib/tremendous/models/resend_reward422_response.rb +0 -247
- data/lib/tremendous/models/review_email1.rb +0 -255
- data/lib/tremendous/models/review_ip1.rb +0 -250
data/lib/tremendous/models/list_balance_transactions200_response_transactions_inner_order_payment.rb
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
The version of the OpenAPI document: 2
|
|
7
7
|
Contact: developers@tremendous.com
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.25.0
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -14,7 +14,7 @@ require 'date'
|
|
|
14
14
|
require 'time'
|
|
15
15
|
|
|
16
16
|
module Tremendous
|
|
17
|
-
class ListBalanceTransactions200ResponseTransactionsInnerOrderPayment
|
|
17
|
+
class ListBalanceTransactions200ResponseTransactionsInnerOrderPayment < ApiModelBase
|
|
18
18
|
# Total price of the order before fees, denominated in `currency_code`.
|
|
19
19
|
attr_accessor :subtotal
|
|
20
20
|
|
|
@@ -297,61 +297,6 @@ module Tremendous
|
|
|
297
297
|
new(transformed_hash)
|
|
298
298
|
end
|
|
299
299
|
|
|
300
|
-
# Deserializes the data based on type
|
|
301
|
-
# @param string type Data type
|
|
302
|
-
# @param string value Value to be deserialized
|
|
303
|
-
# @return [Object] Deserialized data
|
|
304
|
-
def self._deserialize(type, value)
|
|
305
|
-
case type.to_sym
|
|
306
|
-
when :Time
|
|
307
|
-
Time.parse(value)
|
|
308
|
-
when :Date
|
|
309
|
-
Date.parse(value)
|
|
310
|
-
when :String
|
|
311
|
-
value.to_s
|
|
312
|
-
when :Integer
|
|
313
|
-
value.to_i
|
|
314
|
-
when :Float
|
|
315
|
-
value.to_f
|
|
316
|
-
when :Boolean
|
|
317
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
318
|
-
true
|
|
319
|
-
else
|
|
320
|
-
false
|
|
321
|
-
end
|
|
322
|
-
when :Object
|
|
323
|
-
# generic object (usually a Hash), return directly
|
|
324
|
-
value
|
|
325
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
|
326
|
-
inner_type = Regexp.last_match[:inner_type]
|
|
327
|
-
value.map { |v| _deserialize(inner_type, v) }
|
|
328
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
329
|
-
k_type = Regexp.last_match[:k_type]
|
|
330
|
-
v_type = Regexp.last_match[:v_type]
|
|
331
|
-
{}.tap do |hash|
|
|
332
|
-
value.each do |k, v|
|
|
333
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
334
|
-
end
|
|
335
|
-
end
|
|
336
|
-
else # model
|
|
337
|
-
# models (e.g. Pet) or oneOf
|
|
338
|
-
klass = Tremendous.const_get(type)
|
|
339
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
340
|
-
end
|
|
341
|
-
end
|
|
342
|
-
|
|
343
|
-
# Returns the string representation of the object
|
|
344
|
-
# @return [String] String presentation of the object
|
|
345
|
-
def to_s
|
|
346
|
-
to_hash.to_s
|
|
347
|
-
end
|
|
348
|
-
|
|
349
|
-
# to_body is an alias to to_hash (backward compatibility)
|
|
350
|
-
# @return [Hash] Returns the object in the form of hash
|
|
351
|
-
def to_body
|
|
352
|
-
to_hash
|
|
353
|
-
end
|
|
354
|
-
|
|
355
300
|
# Returns the object in the form of hash
|
|
356
301
|
# @return [Hash] Returns the object in the form of hash
|
|
357
302
|
def to_hash
|
|
@@ -368,24 +313,6 @@ module Tremendous
|
|
|
368
313
|
hash
|
|
369
314
|
end
|
|
370
315
|
|
|
371
|
-
# Outputs non-array value in the form of hash
|
|
372
|
-
# For object, use to_hash. Otherwise, just return the value
|
|
373
|
-
# @param [Object] value Any valid value
|
|
374
|
-
# @return [Hash] Returns the value in the form of hash
|
|
375
|
-
def _to_hash(value)
|
|
376
|
-
if value.is_a?(Array)
|
|
377
|
-
value.compact.map { |v| _to_hash(v) }
|
|
378
|
-
elsif value.is_a?(Hash)
|
|
379
|
-
{}.tap do |hash|
|
|
380
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
381
|
-
end
|
|
382
|
-
elsif value.respond_to? :to_hash
|
|
383
|
-
value.to_hash
|
|
384
|
-
else
|
|
385
|
-
value
|
|
386
|
-
end
|
|
387
|
-
end
|
|
388
|
-
|
|
389
316
|
end
|
|
390
317
|
|
|
391
318
|
end
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
The version of the OpenAPI document: 2
|
|
7
7
|
Contact: developers@tremendous.com
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.25.0
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -14,7 +14,7 @@ require 'date'
|
|
|
14
14
|
require 'time'
|
|
15
15
|
|
|
16
16
|
module Tremendous
|
|
17
|
-
class ListCampaigns200Response
|
|
17
|
+
class ListCampaigns200Response < ApiModelBase
|
|
18
18
|
attr_accessor :campaigns
|
|
19
19
|
|
|
20
20
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
@@ -145,61 +145,6 @@ module Tremendous
|
|
|
145
145
|
new(transformed_hash)
|
|
146
146
|
end
|
|
147
147
|
|
|
148
|
-
# Deserializes the data based on type
|
|
149
|
-
# @param string type Data type
|
|
150
|
-
# @param string value Value to be deserialized
|
|
151
|
-
# @return [Object] Deserialized data
|
|
152
|
-
def self._deserialize(type, value)
|
|
153
|
-
case type.to_sym
|
|
154
|
-
when :Time
|
|
155
|
-
Time.parse(value)
|
|
156
|
-
when :Date
|
|
157
|
-
Date.parse(value)
|
|
158
|
-
when :String
|
|
159
|
-
value.to_s
|
|
160
|
-
when :Integer
|
|
161
|
-
value.to_i
|
|
162
|
-
when :Float
|
|
163
|
-
value.to_f
|
|
164
|
-
when :Boolean
|
|
165
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
166
|
-
true
|
|
167
|
-
else
|
|
168
|
-
false
|
|
169
|
-
end
|
|
170
|
-
when :Object
|
|
171
|
-
# generic object (usually a Hash), return directly
|
|
172
|
-
value
|
|
173
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
|
174
|
-
inner_type = Regexp.last_match[:inner_type]
|
|
175
|
-
value.map { |v| _deserialize(inner_type, v) }
|
|
176
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
177
|
-
k_type = Regexp.last_match[:k_type]
|
|
178
|
-
v_type = Regexp.last_match[:v_type]
|
|
179
|
-
{}.tap do |hash|
|
|
180
|
-
value.each do |k, v|
|
|
181
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
182
|
-
end
|
|
183
|
-
end
|
|
184
|
-
else # model
|
|
185
|
-
# models (e.g. Pet) or oneOf
|
|
186
|
-
klass = Tremendous.const_get(type)
|
|
187
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
188
|
-
end
|
|
189
|
-
end
|
|
190
|
-
|
|
191
|
-
# Returns the string representation of the object
|
|
192
|
-
# @return [String] String presentation of the object
|
|
193
|
-
def to_s
|
|
194
|
-
to_hash.to_s
|
|
195
|
-
end
|
|
196
|
-
|
|
197
|
-
# to_body is an alias to to_hash (backward compatibility)
|
|
198
|
-
# @return [Hash] Returns the object in the form of hash
|
|
199
|
-
def to_body
|
|
200
|
-
to_hash
|
|
201
|
-
end
|
|
202
|
-
|
|
203
148
|
# Returns the object in the form of hash
|
|
204
149
|
# @return [Hash] Returns the object in the form of hash
|
|
205
150
|
def to_hash
|
|
@@ -216,24 +161,6 @@ module Tremendous
|
|
|
216
161
|
hash
|
|
217
162
|
end
|
|
218
163
|
|
|
219
|
-
# Outputs non-array value in the form of hash
|
|
220
|
-
# For object, use to_hash. Otherwise, just return the value
|
|
221
|
-
# @param [Object] value Any valid value
|
|
222
|
-
# @return [Hash] Returns the value in the form of hash
|
|
223
|
-
def _to_hash(value)
|
|
224
|
-
if value.is_a?(Array)
|
|
225
|
-
value.compact.map { |v| _to_hash(v) }
|
|
226
|
-
elsif value.is_a?(Hash)
|
|
227
|
-
{}.tap do |hash|
|
|
228
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
229
|
-
end
|
|
230
|
-
elsif value.respond_to? :to_hash
|
|
231
|
-
value.to_hash
|
|
232
|
-
else
|
|
233
|
-
value
|
|
234
|
-
end
|
|
235
|
-
end
|
|
236
|
-
|
|
237
164
|
end
|
|
238
165
|
|
|
239
166
|
end
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
The version of the OpenAPI document: 2
|
|
7
7
|
Contact: developers@tremendous.com
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.25.0
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -15,7 +15,7 @@ require 'time'
|
|
|
15
15
|
|
|
16
16
|
module Tremendous
|
|
17
17
|
# With a campaign you can define the look & feel of how rewards are sent out. It also lets you set the available products (different gift cards, charity, etc.) recipients can choose from.
|
|
18
|
-
class ListCampaigns200ResponseCampaignsInner
|
|
18
|
+
class ListCampaigns200ResponseCampaignsInner < ApiModelBase
|
|
19
19
|
attr_accessor :id
|
|
20
20
|
|
|
21
21
|
# Name of the campaign
|
|
@@ -24,7 +24,7 @@ module Tremendous
|
|
|
24
24
|
# Description of the campaign
|
|
25
25
|
attr_accessor :description
|
|
26
26
|
|
|
27
|
-
# List of IDs of products (different gift cards, charity, etc.) that are available in this campaign.
|
|
27
|
+
# List of IDs of products (different gift cards, charity, etc.) that are available in this campaign. On write, the special value `ALL_FEE_FREE` stands for every product in your catalog that carries no fee at the time of the call.
|
|
28
28
|
attr_accessor :products
|
|
29
29
|
|
|
30
30
|
# Determines whether fees for premium products are added to the order total (`SENDER`) or deducted from the recipient's reward amount (`RECIPIENT`). Campaigns with `RECIPIENT` must include at least one fee-free product.
|
|
@@ -88,7 +88,7 @@ module Tremendous
|
|
|
88
88
|
:'id' => :'String',
|
|
89
89
|
:'name' => :'String',
|
|
90
90
|
:'description' => :'String',
|
|
91
|
-
:'products' => :'Array<
|
|
91
|
+
:'products' => :'Array<ListCampaigns200ResponseCampaignsInnerProductsInner>',
|
|
92
92
|
:'fee_charged_to' => :'String',
|
|
93
93
|
:'auto_add_product_rule' => :'ListCampaigns200ResponseCampaignsInnerAutoAddProductRule',
|
|
94
94
|
:'webpage_style' => :'ListCampaigns200ResponseCampaignsInnerWebpageStyle',
|
|
@@ -288,61 +288,6 @@ module Tremendous
|
|
|
288
288
|
new(transformed_hash)
|
|
289
289
|
end
|
|
290
290
|
|
|
291
|
-
# Deserializes the data based on type
|
|
292
|
-
# @param string type Data type
|
|
293
|
-
# @param string value Value to be deserialized
|
|
294
|
-
# @return [Object] Deserialized data
|
|
295
|
-
def self._deserialize(type, value)
|
|
296
|
-
case type.to_sym
|
|
297
|
-
when :Time
|
|
298
|
-
Time.parse(value)
|
|
299
|
-
when :Date
|
|
300
|
-
Date.parse(value)
|
|
301
|
-
when :String
|
|
302
|
-
value.to_s
|
|
303
|
-
when :Integer
|
|
304
|
-
value.to_i
|
|
305
|
-
when :Float
|
|
306
|
-
value.to_f
|
|
307
|
-
when :Boolean
|
|
308
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
309
|
-
true
|
|
310
|
-
else
|
|
311
|
-
false
|
|
312
|
-
end
|
|
313
|
-
when :Object
|
|
314
|
-
# generic object (usually a Hash), return directly
|
|
315
|
-
value
|
|
316
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
|
317
|
-
inner_type = Regexp.last_match[:inner_type]
|
|
318
|
-
value.map { |v| _deserialize(inner_type, v) }
|
|
319
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
320
|
-
k_type = Regexp.last_match[:k_type]
|
|
321
|
-
v_type = Regexp.last_match[:v_type]
|
|
322
|
-
{}.tap do |hash|
|
|
323
|
-
value.each do |k, v|
|
|
324
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
325
|
-
end
|
|
326
|
-
end
|
|
327
|
-
else # model
|
|
328
|
-
# models (e.g. Pet) or oneOf
|
|
329
|
-
klass = Tremendous.const_get(type)
|
|
330
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
331
|
-
end
|
|
332
|
-
end
|
|
333
|
-
|
|
334
|
-
# Returns the string representation of the object
|
|
335
|
-
# @return [String] String presentation of the object
|
|
336
|
-
def to_s
|
|
337
|
-
to_hash.to_s
|
|
338
|
-
end
|
|
339
|
-
|
|
340
|
-
# to_body is an alias to to_hash (backward compatibility)
|
|
341
|
-
# @return [Hash] Returns the object in the form of hash
|
|
342
|
-
def to_body
|
|
343
|
-
to_hash
|
|
344
|
-
end
|
|
345
|
-
|
|
346
291
|
# Returns the object in the form of hash
|
|
347
292
|
# @return [Hash] Returns the object in the form of hash
|
|
348
293
|
def to_hash
|
|
@@ -359,24 +304,6 @@ module Tremendous
|
|
|
359
304
|
hash
|
|
360
305
|
end
|
|
361
306
|
|
|
362
|
-
# Outputs non-array value in the form of hash
|
|
363
|
-
# For object, use to_hash. Otherwise, just return the value
|
|
364
|
-
# @param [Object] value Any valid value
|
|
365
|
-
# @return [Hash] Returns the value in the form of hash
|
|
366
|
-
def _to_hash(value)
|
|
367
|
-
if value.is_a?(Array)
|
|
368
|
-
value.compact.map { |v| _to_hash(v) }
|
|
369
|
-
elsif value.is_a?(Hash)
|
|
370
|
-
{}.tap do |hash|
|
|
371
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
372
|
-
end
|
|
373
|
-
elsif value.respond_to? :to_hash
|
|
374
|
-
value.to_hash
|
|
375
|
-
else
|
|
376
|
-
value
|
|
377
|
-
end
|
|
378
|
-
end
|
|
379
|
-
|
|
380
307
|
end
|
|
381
308
|
|
|
382
309
|
end
|
data/lib/tremendous/models/list_campaigns200_response_campaigns_inner_auto_add_product_rule.rb
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
The version of the OpenAPI document: 2
|
|
7
7
|
Contact: developers@tremendous.com
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.25.0
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -15,7 +15,7 @@ require 'time'
|
|
|
15
15
|
|
|
16
16
|
module Tremendous
|
|
17
17
|
# When enabled, newly activated gift card products that match the optional country and currency filters are added to this campaign automatically. Applies to gift cards only — premium options, prepaid cards, and merchant cards with vendor fees are excluded. Affects future rewards only and does not retroactively add products to unredeemed rewards. On read, `enabled` is `true` whenever a rule is configured; `countries` and `currencies` are only present when the rule actually filters on them — an absent filter matches all values. On write: * Omit the field on `PUT` to leave the existing rule unchanged. * Send `null` or `{ \"enabled\": false }` to clear any existing rule. * Send `{ \"enabled\": true, ... }` to upsert. `countries` and `currencies` are optional; when present they must contain at least one entry. To match all countries (or all currencies), simply omit the key. * An empty object (`{}`) is rejected because `enabled` is required — use `{ \"enabled\": false }` or `null` to clear the rule.
|
|
18
|
-
class ListCampaigns200ResponseCampaignsInnerAutoAddProductRule
|
|
18
|
+
class ListCampaigns200ResponseCampaignsInnerAutoAddProductRule < ApiModelBase
|
|
19
19
|
# Whether the auto-add rule is active.
|
|
20
20
|
attr_accessor :enabled
|
|
21
21
|
|
|
@@ -207,61 +207,6 @@ module Tremendous
|
|
|
207
207
|
new(transformed_hash)
|
|
208
208
|
end
|
|
209
209
|
|
|
210
|
-
# Deserializes the data based on type
|
|
211
|
-
# @param string type Data type
|
|
212
|
-
# @param string value Value to be deserialized
|
|
213
|
-
# @return [Object] Deserialized data
|
|
214
|
-
def self._deserialize(type, value)
|
|
215
|
-
case type.to_sym
|
|
216
|
-
when :Time
|
|
217
|
-
Time.parse(value)
|
|
218
|
-
when :Date
|
|
219
|
-
Date.parse(value)
|
|
220
|
-
when :String
|
|
221
|
-
value.to_s
|
|
222
|
-
when :Integer
|
|
223
|
-
value.to_i
|
|
224
|
-
when :Float
|
|
225
|
-
value.to_f
|
|
226
|
-
when :Boolean
|
|
227
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
228
|
-
true
|
|
229
|
-
else
|
|
230
|
-
false
|
|
231
|
-
end
|
|
232
|
-
when :Object
|
|
233
|
-
# generic object (usually a Hash), return directly
|
|
234
|
-
value
|
|
235
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
|
236
|
-
inner_type = Regexp.last_match[:inner_type]
|
|
237
|
-
value.map { |v| _deserialize(inner_type, v) }
|
|
238
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
239
|
-
k_type = Regexp.last_match[:k_type]
|
|
240
|
-
v_type = Regexp.last_match[:v_type]
|
|
241
|
-
{}.tap do |hash|
|
|
242
|
-
value.each do |k, v|
|
|
243
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
244
|
-
end
|
|
245
|
-
end
|
|
246
|
-
else # model
|
|
247
|
-
# models (e.g. Pet) or oneOf
|
|
248
|
-
klass = Tremendous.const_get(type)
|
|
249
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
250
|
-
end
|
|
251
|
-
end
|
|
252
|
-
|
|
253
|
-
# Returns the string representation of the object
|
|
254
|
-
# @return [String] String presentation of the object
|
|
255
|
-
def to_s
|
|
256
|
-
to_hash.to_s
|
|
257
|
-
end
|
|
258
|
-
|
|
259
|
-
# to_body is an alias to to_hash (backward compatibility)
|
|
260
|
-
# @return [Hash] Returns the object in the form of hash
|
|
261
|
-
def to_body
|
|
262
|
-
to_hash
|
|
263
|
-
end
|
|
264
|
-
|
|
265
210
|
# Returns the object in the form of hash
|
|
266
211
|
# @return [Hash] Returns the object in the form of hash
|
|
267
212
|
def to_hash
|
|
@@ -278,24 +223,6 @@ module Tremendous
|
|
|
278
223
|
hash
|
|
279
224
|
end
|
|
280
225
|
|
|
281
|
-
# Outputs non-array value in the form of hash
|
|
282
|
-
# For object, use to_hash. Otherwise, just return the value
|
|
283
|
-
# @param [Object] value Any valid value
|
|
284
|
-
# @return [Hash] Returns the value in the form of hash
|
|
285
|
-
def _to_hash(value)
|
|
286
|
-
if value.is_a?(Array)
|
|
287
|
-
value.compact.map { |v| _to_hash(v) }
|
|
288
|
-
elsif value.is_a?(Hash)
|
|
289
|
-
{}.tap do |hash|
|
|
290
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
291
|
-
end
|
|
292
|
-
elsif value.respond_to? :to_hash
|
|
293
|
-
value.to_hash
|
|
294
|
-
else
|
|
295
|
-
value
|
|
296
|
-
end
|
|
297
|
-
end
|
|
298
|
-
|
|
299
226
|
end
|
|
300
227
|
|
|
301
228
|
end
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
The version of the OpenAPI document: 2
|
|
7
7
|
Contact: developers@tremendous.com
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
|
-
Generator version: 7.
|
|
9
|
+
Generator version: 7.25.0
|
|
10
10
|
|
|
11
11
|
=end
|
|
12
12
|
|
|
@@ -15,7 +15,7 @@ require 'time'
|
|
|
15
15
|
|
|
16
16
|
module Tremendous
|
|
17
17
|
# Definition of the email style
|
|
18
|
-
class ListCampaigns200ResponseCampaignsInnerEmailStyle
|
|
18
|
+
class ListCampaigns200ResponseCampaignsInnerEmailStyle < ApiModelBase
|
|
19
19
|
# If sending via email, this is how the email will appear to be sent from
|
|
20
20
|
attr_accessor :sender_name
|
|
21
21
|
|
|
@@ -184,61 +184,6 @@ module Tremendous
|
|
|
184
184
|
new(transformed_hash)
|
|
185
185
|
end
|
|
186
186
|
|
|
187
|
-
# Deserializes the data based on type
|
|
188
|
-
# @param string type Data type
|
|
189
|
-
# @param string value Value to be deserialized
|
|
190
|
-
# @return [Object] Deserialized data
|
|
191
|
-
def self._deserialize(type, value)
|
|
192
|
-
case type.to_sym
|
|
193
|
-
when :Time
|
|
194
|
-
Time.parse(value)
|
|
195
|
-
when :Date
|
|
196
|
-
Date.parse(value)
|
|
197
|
-
when :String
|
|
198
|
-
value.to_s
|
|
199
|
-
when :Integer
|
|
200
|
-
value.to_i
|
|
201
|
-
when :Float
|
|
202
|
-
value.to_f
|
|
203
|
-
when :Boolean
|
|
204
|
-
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
205
|
-
true
|
|
206
|
-
else
|
|
207
|
-
false
|
|
208
|
-
end
|
|
209
|
-
when :Object
|
|
210
|
-
# generic object (usually a Hash), return directly
|
|
211
|
-
value
|
|
212
|
-
when /\AArray<(?<inner_type>.+)>\z/
|
|
213
|
-
inner_type = Regexp.last_match[:inner_type]
|
|
214
|
-
value.map { |v| _deserialize(inner_type, v) }
|
|
215
|
-
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
216
|
-
k_type = Regexp.last_match[:k_type]
|
|
217
|
-
v_type = Regexp.last_match[:v_type]
|
|
218
|
-
{}.tap do |hash|
|
|
219
|
-
value.each do |k, v|
|
|
220
|
-
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
221
|
-
end
|
|
222
|
-
end
|
|
223
|
-
else # model
|
|
224
|
-
# models (e.g. Pet) or oneOf
|
|
225
|
-
klass = Tremendous.const_get(type)
|
|
226
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
227
|
-
end
|
|
228
|
-
end
|
|
229
|
-
|
|
230
|
-
# Returns the string representation of the object
|
|
231
|
-
# @return [String] String presentation of the object
|
|
232
|
-
def to_s
|
|
233
|
-
to_hash.to_s
|
|
234
|
-
end
|
|
235
|
-
|
|
236
|
-
# to_body is an alias to to_hash (backward compatibility)
|
|
237
|
-
# @return [Hash] Returns the object in the form of hash
|
|
238
|
-
def to_body
|
|
239
|
-
to_hash
|
|
240
|
-
end
|
|
241
|
-
|
|
242
187
|
# Returns the object in the form of hash
|
|
243
188
|
# @return [Hash] Returns the object in the form of hash
|
|
244
189
|
def to_hash
|
|
@@ -255,24 +200,6 @@ module Tremendous
|
|
|
255
200
|
hash
|
|
256
201
|
end
|
|
257
202
|
|
|
258
|
-
# Outputs non-array value in the form of hash
|
|
259
|
-
# For object, use to_hash. Otherwise, just return the value
|
|
260
|
-
# @param [Object] value Any valid value
|
|
261
|
-
# @return [Hash] Returns the value in the form of hash
|
|
262
|
-
def _to_hash(value)
|
|
263
|
-
if value.is_a?(Array)
|
|
264
|
-
value.compact.map { |v| _to_hash(v) }
|
|
265
|
-
elsif value.is_a?(Hash)
|
|
266
|
-
{}.tap do |hash|
|
|
267
|
-
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
268
|
-
end
|
|
269
|
-
elsif value.respond_to? :to_hash
|
|
270
|
-
value.to_hash
|
|
271
|
-
else
|
|
272
|
-
value
|
|
273
|
-
end
|
|
274
|
-
end
|
|
275
|
-
|
|
276
203
|
end
|
|
277
204
|
|
|
278
205
|
end
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#API Endpoints
|
|
3
|
+
|
|
4
|
+
#Deliver monetary rewards and incentives to employees, customers, survey participants, and more through the Tremendous API. For organizational tasks, like managing your organization and its members within Tremendous, please see the Tremendous Organizational API.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 2
|
|
7
|
+
Contact: developers@tremendous.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.25.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module Tremendous
|
|
17
|
+
module ListCampaigns200ResponseCampaignsInnerProductsInner
|
|
18
|
+
class << self
|
|
19
|
+
# List of class defined in anyOf (OpenAPI v3)
|
|
20
|
+
def openapi_any_of
|
|
21
|
+
[
|
|
22
|
+
:'String'
|
|
23
|
+
]
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# Builds the object
|
|
27
|
+
# @param [Mixed] Data to be matched against the list of anyOf items
|
|
28
|
+
# @return [Object] Returns the model or the data itself
|
|
29
|
+
def build(data)
|
|
30
|
+
# Go through the list of anyOf items and attempt to identify the appropriate one.
|
|
31
|
+
# Note:
|
|
32
|
+
# - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
|
|
33
|
+
# due to the way the deserialization is made in the base_object template (it just casts without verifying).
|
|
34
|
+
# - TODO: scalar values are de facto behaving as if they were nullable.
|
|
35
|
+
# - TODO: logging when debugging is set.
|
|
36
|
+
openapi_any_of.each do |klass|
|
|
37
|
+
begin
|
|
38
|
+
next if klass == :AnyType # "nullable: true"
|
|
39
|
+
return find_and_cast_into_type(klass, data)
|
|
40
|
+
rescue # rescue all errors so we keep iterating even if the current item lookup raises
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
openapi_any_of.include?(:AnyType) ? data : nil
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
private
|
|
48
|
+
|
|
49
|
+
SchemaMismatchError = Class.new(StandardError)
|
|
50
|
+
|
|
51
|
+
# Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
|
|
52
|
+
def find_and_cast_into_type(klass, data)
|
|
53
|
+
return if data.nil?
|
|
54
|
+
|
|
55
|
+
case klass.to_s
|
|
56
|
+
when 'Boolean'
|
|
57
|
+
return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
|
|
58
|
+
when 'Float'
|
|
59
|
+
return data if data.instance_of?(Float)
|
|
60
|
+
when 'Integer'
|
|
61
|
+
return data if data.instance_of?(Integer)
|
|
62
|
+
when 'Time'
|
|
63
|
+
return Time.parse(data)
|
|
64
|
+
when 'Date'
|
|
65
|
+
return Date.iso8601(data)
|
|
66
|
+
when 'String'
|
|
67
|
+
return data if data.instance_of?(String)
|
|
68
|
+
when 'Object' # "type: object"
|
|
69
|
+
return data if data.instance_of?(Hash)
|
|
70
|
+
when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
|
|
71
|
+
if data.instance_of?(Array)
|
|
72
|
+
sub_type = Regexp.last_match[:sub_type]
|
|
73
|
+
return data.map { |item| find_and_cast_into_type(sub_type, item) }
|
|
74
|
+
end
|
|
75
|
+
when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
|
|
76
|
+
if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
|
|
77
|
+
sub_type = Regexp.last_match[:sub_type]
|
|
78
|
+
return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
|
|
79
|
+
end
|
|
80
|
+
else # model
|
|
81
|
+
const = Tremendous.const_get(klass)
|
|
82
|
+
if const
|
|
83
|
+
if const.respond_to?(:openapi_any_of) # nested anyOf model
|
|
84
|
+
model = const.build(data)
|
|
85
|
+
return model if model
|
|
86
|
+
else
|
|
87
|
+
# raise if data contains keys that are not known to the model
|
|
88
|
+
raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
|
|
89
|
+
model = const.build_from_hash(data)
|
|
90
|
+
return model if model
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
raise # if no match by now, raise
|
|
96
|
+
rescue
|
|
97
|
+
raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
end
|