algolia 3.10.2 → 3.12.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/.github/ISSUE_TEMPLATE/Bug_report.yml +1 -1
- data/.github/workflows/release.yml +1 -1
- data/CHANGELOG.md +24 -0
- data/Gemfile.lock +1 -1
- data/lib/algolia/api/abtesting_client.rb +3 -1
- data/lib/algolia/api/analytics_client.rb +45 -43
- data/lib/algolia/api/composition_client.rb +174 -0
- data/lib/algolia/api/ingestion_client.rb +15 -3
- data/lib/algolia/api/insights_client.rb +3 -1
- data/lib/algolia/api/monitoring_client.rb +2 -0
- data/lib/algolia/api/personalization_client.rb +3 -1
- data/lib/algolia/api/query_suggestions_client.rb +3 -1
- data/lib/algolia/api/recommend_client.rb +20 -18
- data/lib/algolia/api/search_client.rb +160 -141
- data/lib/algolia/models/abtesting/ab_test.rb +2 -5
- data/lib/algolia/models/abtesting/ab_test_configuration.rb +2 -5
- data/lib/algolia/models/abtesting/ab_test_response.rb +2 -5
- data/lib/algolia/models/abtesting/ab_tests_variant.rb +2 -5
- data/lib/algolia/models/abtesting/ab_tests_variant_search_params.rb +7 -3
- data/lib/algolia/models/abtesting/add_ab_tests_request.rb +2 -5
- data/lib/algolia/models/abtesting/add_ab_tests_variant.rb +7 -6
- data/lib/algolia/models/abtesting/currency.rb +2 -5
- data/lib/algolia/models/abtesting/effect_metric.rb +2 -0
- data/lib/algolia/models/abtesting/empty_search.rb +2 -5
- data/lib/algolia/models/abtesting/empty_search_filter.rb +2 -5
- data/lib/algolia/models/abtesting/error_base.rb +2 -5
- data/lib/algolia/models/abtesting/estimate_ab_test_request.rb +2 -5
- data/lib/algolia/models/abtesting/estimate_ab_test_response.rb +2 -5
- data/lib/algolia/models/abtesting/estimate_configuration.rb +2 -5
- data/lib/algolia/models/abtesting/filter_effects.rb +2 -5
- data/lib/algolia/models/abtesting/list_ab_tests_response.rb +2 -5
- data/lib/algolia/models/abtesting/minimum_detectable_effect.rb +2 -5
- data/lib/algolia/models/abtesting/outliers.rb +2 -5
- data/lib/algolia/models/abtesting/outliers_filter.rb +2 -5
- data/lib/algolia/models/abtesting/schedule_ab_test_response.rb +2 -5
- data/lib/algolia/models/abtesting/schedule_ab_tests_request.rb +2 -5
- data/lib/algolia/models/abtesting/status.rb +2 -0
- data/lib/algolia/models/abtesting/variant.rb +2 -5
- data/lib/algolia/models/analytics/click_position.rb +2 -5
- data/lib/algolia/models/analytics/currency_code.rb +2 -5
- data/lib/algolia/models/analytics/daily_add_to_cart_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_average_clicks.rb +2 -5
- data/lib/algolia/models/analytics/daily_click_through_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_conversion_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_no_click_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_no_results_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_purchase_rates.rb +3 -6
- data/lib/algolia/models/analytics/daily_revenue.rb +3 -6
- data/lib/algolia/models/analytics/daily_searches.rb +2 -5
- data/lib/algolia/models/analytics/daily_searches_no_clicks.rb +2 -5
- data/lib/algolia/models/analytics/daily_searches_no_results.rb +2 -5
- data/lib/algolia/models/analytics/daily_users.rb +2 -5
- data/lib/algolia/models/analytics/direction.rb +2 -0
- data/lib/algolia/models/analytics/error_base.rb +2 -5
- data/lib/algolia/models/analytics/get_add_to_cart_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_average_click_position_response.rb +2 -5
- data/lib/algolia/models/analytics/get_click_positions_response.rb +2 -5
- data/lib/algolia/models/analytics/get_click_through_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_conversion_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_no_click_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_no_results_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_purchase_rate_response.rb +3 -6
- data/lib/algolia/models/analytics/get_revenue.rb +3 -6
- data/lib/algolia/models/analytics/get_searches_count_response.rb +2 -5
- data/lib/algolia/models/analytics/get_searches_no_clicks_response.rb +2 -5
- data/lib/algolia/models/analytics/get_searches_no_results_response.rb +2 -5
- data/lib/algolia/models/analytics/get_status_response.rb +2 -5
- data/lib/algolia/models/analytics/get_top_countries_response.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filter_attribute.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filter_attributes_response.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filter_for_attribute.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filter_for_attribute_response.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filters_no_results_response.rb +3 -6
- data/lib/algolia/models/analytics/get_top_filters_no_results_value.rb +2 -5
- data/lib/algolia/models/analytics/get_top_filters_no_results_values.rb +2 -5
- data/lib/algolia/models/analytics/get_top_hits_response.rb +7 -6
- data/lib/algolia/models/analytics/get_top_searches_response.rb +7 -6
- data/lib/algolia/models/analytics/get_users_count_response.rb +2 -5
- data/lib/algolia/models/analytics/operator.rb +2 -0
- data/lib/algolia/models/analytics/order_by.rb +2 -0
- data/lib/algolia/models/analytics/top_country.rb +2 -5
- data/lib/algolia/models/analytics/top_hit.rb +3 -6
- data/lib/algolia/models/analytics/top_hit_with_analytics.rb +5 -8
- data/lib/algolia/models/analytics/top_hit_with_revenue_analytics.rb +8 -11
- data/lib/algolia/models/analytics/top_hits_response.rb +2 -5
- data/lib/algolia/models/analytics/top_hits_response_with_analytics.rb +2 -5
- data/lib/algolia/models/analytics/top_hits_response_with_revenue_analytics.rb +2 -5
- data/lib/algolia/models/analytics/top_search.rb +2 -5
- data/lib/algolia/models/analytics/top_search_with_analytics.rb +4 -7
- data/lib/algolia/models/analytics/top_search_with_revenue_analytics.rb +7 -10
- data/lib/algolia/models/analytics/top_searches_response.rb +2 -5
- data/lib/algolia/models/analytics/top_searches_response_with_analytics.rb +2 -5
- data/lib/algolia/models/analytics/top_searches_response_with_revenue_analytics.rb +2 -5
- data/lib/algolia/models/composition/around_precision.rb +110 -0
- data/lib/algolia/models/composition/around_radius.rb +110 -0
- data/lib/algolia/models/{ingestion/docker_registry.rb → composition/around_radius_all.rb} +8 -7
- data/lib/algolia/models/composition/banner.rb +215 -0
- data/lib/algolia/models/composition/banner_image.rb +220 -0
- data/lib/algolia/models/composition/banner_image_url.rb +209 -0
- data/lib/algolia/models/composition/banner_link.rb +209 -0
- data/lib/algolia/models/composition/composition_id_ranking_info.rb +221 -0
- data/lib/algolia/models/composition/composition_run_applied_rules.rb +211 -0
- data/lib/algolia/models/composition/composition_run_search_response.rb +222 -0
- data/lib/algolia/models/composition/compositions_search_response.rb +212 -0
- data/lib/algolia/models/composition/error_base.rb +209 -0
- data/lib/algolia/models/composition/exhaustive.rb +250 -0
- data/lib/algolia/models/composition/facet_filters.rb +110 -0
- data/lib/algolia/models/composition/facet_hits.rb +235 -0
- data/lib/algolia/models/composition/facet_ordering.rb +221 -0
- data/lib/algolia/models/composition/facet_stats.rb +239 -0
- data/lib/algolia/models/composition/facets.rb +209 -0
- data/lib/algolia/models/composition/highlight_result.rb +110 -0
- data/lib/algolia/models/composition/highlight_result_option.rb +255 -0
- data/lib/algolia/models/composition/hit.rb +251 -0
- data/lib/algolia/models/composition/hit_ranking_info.rb +371 -0
- data/lib/algolia/models/composition/inside_bounding_box.rb +109 -0
- data/lib/algolia/models/{ingestion/docker_image_type.rb → composition/match_level.rb} +10 -8
- data/lib/algolia/models/composition/matched_geo_location.rb +229 -0
- data/lib/algolia/models/composition/numeric_filters.rb +110 -0
- data/lib/algolia/models/composition/optional_filters.rb +110 -0
- data/lib/algolia/models/composition/params.rb +488 -0
- data/lib/algolia/models/composition/personalization.rb +229 -0
- data/lib/algolia/models/composition/range.rb +217 -0
- data/lib/algolia/models/composition/redirect.rb +208 -0
- data/lib/algolia/models/composition/redirect_rule_index_data.rb +211 -0
- data/lib/algolia/models/composition/redirect_rule_index_metadata.rb +258 -0
- data/lib/algolia/models/composition/redirect_url.rb +209 -0
- data/lib/algolia/models/composition/rendering_content.rb +227 -0
- data/lib/algolia/models/composition/request_body.rb +208 -0
- data/lib/algolia/models/composition/results_composition_info_response.rb +212 -0
- data/lib/algolia/models/composition/results_injected_item_applied_rules_info_response.rb +211 -0
- data/lib/algolia/models/composition/results_injected_item_info_response.rb +221 -0
- data/lib/algolia/models/composition/search_for_facet_values_params.rb +228 -0
- data/lib/algolia/models/composition/search_for_facet_values_request.rb +208 -0
- data/lib/algolia/models/composition/search_for_facet_values_response.rb +211 -0
- data/lib/algolia/models/composition/search_for_facet_values_results.rb +253 -0
- data/lib/algolia/models/composition/search_response.rb +230 -0
- data/lib/algolia/models/composition/search_results_item.rb +608 -0
- data/lib/algolia/models/composition/snippet_result.rb +110 -0
- data/lib/algolia/models/composition/snippet_result_option.rb +230 -0
- data/lib/algolia/models/composition/sort_remaining_by.rb +35 -0
- data/lib/algolia/models/composition/supported_language.rb +169 -0
- data/lib/algolia/models/composition/value.rb +229 -0
- data/lib/algolia/models/composition/widgets.rb +209 -0
- data/lib/algolia/models/ingestion/action.rb +2 -0
- data/lib/algolia/models/ingestion/action_type.rb +2 -0
- data/lib/algolia/models/ingestion/auth_algolia.rb +2 -5
- data/lib/algolia/models/ingestion/auth_algolia_insights.rb +2 -5
- data/lib/algolia/models/ingestion/auth_algolia_insights_partial.rb +2 -5
- data/lib/algolia/models/ingestion/auth_algolia_partial.rb +2 -5
- data/lib/algolia/models/ingestion/auth_api_key.rb +7 -3
- data/lib/algolia/models/ingestion/auth_api_key_partial.rb +7 -3
- data/lib/algolia/models/ingestion/auth_basic.rb +8 -3
- data/lib/algolia/models/ingestion/auth_basic_partial.rb +7 -3
- data/lib/algolia/models/ingestion/auth_google_service_account.rb +8 -3
- data/lib/algolia/models/ingestion/auth_google_service_account_partial.rb +7 -3
- data/lib/algolia/models/ingestion/auth_input.rb +7 -6
- data/lib/algolia/models/ingestion/auth_input_partial.rb +7 -6
- data/lib/algolia/models/ingestion/auth_o_auth.rb +9 -3
- data/lib/algolia/models/ingestion/auth_o_auth_partial.rb +7 -3
- data/lib/algolia/models/ingestion/authentication.rb +2 -5
- data/lib/algolia/models/ingestion/authentication_create.rb +2 -5
- data/lib/algolia/models/ingestion/authentication_create_response.rb +2 -5
- data/lib/algolia/models/ingestion/authentication_search.rb +2 -5
- data/lib/algolia/models/ingestion/authentication_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/authentication_type.rb +2 -0
- data/lib/algolia/models/ingestion/authentication_update.rb +2 -5
- data/lib/algolia/models/ingestion/authentication_update_response.rb +2 -5
- data/lib/algolia/models/ingestion/big_commerce_channel.rb +2 -5
- data/lib/algolia/models/ingestion/big_commerce_metafield.rb +2 -5
- data/lib/algolia/models/ingestion/big_query_data_type.rb +2 -0
- data/lib/algolia/models/ingestion/commercetools_custom_fields.rb +2 -5
- data/lib/algolia/models/ingestion/delete_response.rb +2 -5
- data/lib/algolia/models/ingestion/destination.rb +2 -5
- data/lib/algolia/models/ingestion/destination_create.rb +2 -5
- data/lib/algolia/models/ingestion/destination_create_response.rb +2 -5
- data/lib/algolia/models/ingestion/destination_index_name.rb +2 -5
- data/lib/algolia/models/ingestion/destination_input.rb +7 -6
- data/lib/algolia/models/ingestion/destination_search.rb +2 -5
- data/lib/algolia/models/ingestion/destination_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/destination_type.rb +2 -0
- data/lib/algolia/models/ingestion/destination_update.rb +2 -5
- data/lib/algolia/models/ingestion/destination_update_response.rb +2 -5
- data/lib/algolia/models/ingestion/docker_streams.rb +2 -5
- data/lib/algolia/models/ingestion/docker_streams_input.rb +8 -4
- data/lib/algolia/models/ingestion/docker_streams_sync_mode.rb +2 -0
- data/lib/algolia/models/ingestion/email_notifications.rb +209 -0
- data/lib/algolia/models/ingestion/entity_type.rb +2 -0
- data/lib/algolia/models/ingestion/error_base.rb +2 -5
- data/lib/algolia/models/ingestion/event.rb +2 -5
- data/lib/algolia/models/ingestion/event_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/event_status.rb +2 -0
- data/lib/algolia/models/ingestion/event_type.rb +2 -0
- data/lib/algolia/models/ingestion/list_authentications_response.rb +2 -5
- data/lib/algolia/models/ingestion/list_destinations_response.rb +2 -5
- data/lib/algolia/models/ingestion/list_events_response.rb +2 -5
- data/lib/algolia/models/ingestion/list_sources_response.rb +2 -5
- data/lib/algolia/models/ingestion/list_tasks_response.rb +2 -5
- data/lib/algolia/models/ingestion/list_tasks_response_v1.rb +2 -5
- data/lib/algolia/models/ingestion/list_transformations_response.rb +2 -5
- data/lib/algolia/models/ingestion/mapping_field_directive.rb +2 -5
- data/lib/algolia/models/ingestion/mapping_format_schema.rb +2 -0
- data/lib/algolia/models/ingestion/mapping_input.rb +8 -3
- data/lib/algolia/models/ingestion/mapping_kit_action.rb +2 -5
- data/lib/algolia/models/ingestion/mapping_type_csv.rb +2 -0
- data/lib/algolia/models/ingestion/method_type.rb +2 -0
- data/lib/algolia/models/ingestion/notifications.rb +211 -0
- data/lib/algolia/models/ingestion/on_demand_trigger.rb +2 -5
- data/lib/algolia/models/ingestion/on_demand_trigger_input.rb +2 -5
- data/lib/algolia/models/ingestion/on_demand_trigger_type.rb +2 -0
- data/lib/algolia/models/ingestion/order_keys.rb +2 -0
- data/lib/algolia/models/ingestion/pagination.rb +2 -5
- data/lib/algolia/models/ingestion/platform.rb +2 -0
- data/lib/algolia/models/ingestion/platform_none.rb +2 -0
- data/lib/algolia/models/ingestion/platform_with_none.rb +7 -6
- data/lib/algolia/models/ingestion/policies.rb +207 -0
- data/lib/algolia/models/ingestion/push_task_payload.rb +2 -5
- data/lib/algolia/models/ingestion/push_task_records.rb +10 -13
- data/lib/algolia/models/ingestion/record_type.rb +2 -0
- data/lib/algolia/models/ingestion/run.rb +2 -5
- data/lib/algolia/models/ingestion/run_list_response.rb +2 -5
- data/lib/algolia/models/ingestion/run_outcome.rb +3 -2
- data/lib/algolia/models/ingestion/run_progress.rb +6 -5
- data/lib/algolia/models/ingestion/run_reason_code.rb +2 -0
- data/lib/algolia/models/ingestion/run_response.rb +2 -5
- data/lib/algolia/models/ingestion/run_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/run_source_payload.rb +2 -5
- data/lib/algolia/models/ingestion/run_source_response.rb +2 -5
- data/lib/algolia/models/ingestion/run_status.rb +2 -0
- data/lib/algolia/models/ingestion/run_type.rb +2 -0
- data/lib/algolia/models/ingestion/schedule_trigger.rb +2 -5
- data/lib/algolia/models/ingestion/schedule_trigger_input.rb +7 -3
- data/lib/algolia/models/ingestion/schedule_trigger_type.rb +2 -0
- data/lib/algolia/models/ingestion/shopify_input.rb +2 -5
- data/lib/algolia/models/ingestion/shopify_market.rb +2 -5
- data/lib/algolia/models/ingestion/shopify_metafield.rb +2 -5
- data/lib/algolia/models/ingestion/source.rb +2 -5
- data/lib/algolia/models/ingestion/source_big_commerce.rb +7 -3
- data/lib/algolia/models/ingestion/source_big_query.rb +7 -3
- data/lib/algolia/models/ingestion/source_commercetools.rb +7 -3
- data/lib/algolia/models/ingestion/source_create.rb +2 -5
- data/lib/algolia/models/ingestion/source_create_response.rb +2 -5
- data/lib/algolia/models/ingestion/source_csv.rb +2 -5
- data/lib/algolia/models/ingestion/source_docker.rb +10 -37
- data/lib/algolia/models/ingestion/source_ga4_big_query_export.rb +9 -3
- data/lib/algolia/models/ingestion/source_input.rb +7 -6
- data/lib/algolia/models/ingestion/source_json.rb +2 -5
- data/lib/algolia/models/ingestion/source_search.rb +2 -5
- data/lib/algolia/models/ingestion/source_shopify.rb +7 -3
- data/lib/algolia/models/ingestion/source_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/source_type.rb +2 -0
- data/lib/algolia/models/ingestion/source_update.rb +2 -5
- data/lib/algolia/models/ingestion/source_update_commercetools.rb +2 -5
- data/lib/algolia/models/ingestion/source_update_docker.rb +8 -33
- data/lib/algolia/models/ingestion/source_update_input.rb +7 -6
- data/lib/algolia/models/ingestion/source_update_response.rb +2 -5
- data/lib/algolia/models/ingestion/source_update_shopify.rb +2 -5
- data/lib/algolia/models/ingestion/streaming_input.rb +7 -3
- data/lib/algolia/models/ingestion/streaming_trigger.rb +2 -5
- data/lib/algolia/models/ingestion/streaming_trigger_type.rb +2 -0
- data/lib/algolia/models/ingestion/subscription_trigger.rb +2 -5
- data/lib/algolia/models/ingestion/subscription_trigger_type.rb +2 -0
- data/lib/algolia/models/ingestion/task.rb +22 -5
- data/lib/algolia/models/ingestion/task_create.rb +24 -9
- data/lib/algolia/models/ingestion/task_create_response.rb +2 -5
- data/lib/algolia/models/ingestion/task_create_trigger.rb +7 -6
- data/lib/algolia/models/ingestion/task_create_v1.rb +2 -5
- data/lib/algolia/models/ingestion/task_input.rb +7 -6
- data/lib/algolia/models/ingestion/task_search.rb +2 -5
- data/lib/algolia/models/ingestion/task_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/task_update.rb +24 -9
- data/lib/algolia/models/ingestion/task_update_response.rb +2 -5
- data/lib/algolia/models/ingestion/task_update_v1.rb +2 -5
- data/lib/algolia/models/ingestion/task_v1.rb +22 -5
- data/lib/algolia/models/ingestion/transformation.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_create.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_create_response.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_error.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_search.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_sort_keys.rb +2 -0
- data/lib/algolia/models/ingestion/transformation_try.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_try_response.rb +2 -5
- data/lib/algolia/models/ingestion/transformation_update_response.rb +2 -5
- data/lib/algolia/models/ingestion/trigger.rb +7 -6
- data/lib/algolia/models/ingestion/trigger_type.rb +2 -0
- data/lib/algolia/models/ingestion/trigger_update_input.rb +2 -5
- data/lib/algolia/models/ingestion/watch_response.rb +2 -5
- data/lib/algolia/models/ingestion/window.rb +2 -5
- data/lib/algolia/models/insights/add_to_cart_event.rb +2 -0
- data/lib/algolia/models/insights/added_to_cart_object_ids.rb +9 -3
- data/lib/algolia/models/insights/added_to_cart_object_ids_after_search.rb +10 -3
- data/lib/algolia/models/insights/click_event.rb +2 -0
- data/lib/algolia/models/insights/clicked_filters.rb +8 -3
- data/lib/algolia/models/insights/clicked_object_ids.rb +8 -3
- data/lib/algolia/models/insights/clicked_object_ids_after_search.rb +9 -3
- data/lib/algolia/models/insights/conversion_event.rb +2 -0
- data/lib/algolia/models/insights/converted_filters.rb +8 -3
- data/lib/algolia/models/insights/converted_object_ids.rb +8 -3
- data/lib/algolia/models/insights/converted_object_ids_after_search.rb +8 -3
- data/lib/algolia/models/insights/discount.rb +7 -6
- data/lib/algolia/models/insights/error_base.rb +2 -5
- data/lib/algolia/models/insights/events_items.rb +7 -6
- data/lib/algolia/models/insights/events_response.rb +2 -5
- data/lib/algolia/models/insights/insights_events.rb +2 -5
- data/lib/algolia/models/insights/object_data.rb +2 -5
- data/lib/algolia/models/insights/object_data_after_search.rb +2 -5
- data/lib/algolia/models/insights/price.rb +7 -6
- data/lib/algolia/models/insights/purchase_event.rb +2 -0
- data/lib/algolia/models/insights/purchased_object_ids.rb +9 -3
- data/lib/algolia/models/insights/purchased_object_ids_after_search.rb +10 -3
- data/lib/algolia/models/insights/value.rb +7 -6
- data/lib/algolia/models/insights/view_event.rb +2 -0
- data/lib/algolia/models/insights/viewed_filters.rb +8 -3
- data/lib/algolia/models/insights/viewed_object_ids.rb +8 -3
- data/lib/algolia/models/monitoring/error_base.rb +2 -5
- data/lib/algolia/models/monitoring/incident.rb +2 -5
- data/lib/algolia/models/monitoring/incident_entry.rb +2 -5
- data/lib/algolia/models/monitoring/incidents_response.rb +2 -5
- data/lib/algolia/models/monitoring/indexing_metric.rb +2 -5
- data/lib/algolia/models/monitoring/indexing_time_response.rb +2 -5
- data/lib/algolia/models/monitoring/infrastructure_response.rb +2 -5
- data/lib/algolia/models/monitoring/inventory_response.rb +2 -5
- data/lib/algolia/models/monitoring/latency_metric.rb +2 -5
- data/lib/algolia/models/monitoring/latency_response.rb +2 -5
- data/lib/algolia/models/monitoring/metric.rb +2 -0
- data/lib/algolia/models/monitoring/metrics.rb +2 -5
- data/lib/algolia/models/monitoring/period.rb +2 -0
- data/lib/algolia/models/monitoring/probes_metric.rb +2 -5
- data/lib/algolia/models/monitoring/region.rb +2 -0
- data/lib/algolia/models/monitoring/server.rb +2 -5
- data/lib/algolia/models/monitoring/server_status.rb +2 -0
- data/lib/algolia/models/monitoring/status.rb +2 -0
- data/lib/algolia/models/monitoring/status_response.rb +2 -5
- data/lib/algolia/models/monitoring/time_entry.rb +2 -5
- data/lib/algolia/models/monitoring/type.rb +2 -0
- data/lib/algolia/models/personalization/delete_user_profile_response.rb +2 -5
- data/lib/algolia/models/personalization/error_base.rb +2 -5
- data/lib/algolia/models/personalization/event_type.rb +2 -0
- data/lib/algolia/models/personalization/{event_scoring.rb → events_scoring.rb} +5 -8
- data/lib/algolia/models/personalization/{facet_scoring.rb → facets_scoring.rb} +5 -8
- data/lib/algolia/models/personalization/get_user_token_response.rb +2 -5
- data/lib/algolia/models/personalization/personalization_strategy_params.rb +19 -22
- data/lib/algolia/models/personalization/set_personalization_strategy_response.rb +2 -5
- data/lib/algolia/models/query-suggestions/base_response.rb +2 -5
- data/lib/algolia/models/query-suggestions/config_status.rb +2 -5
- data/lib/algolia/models/query-suggestions/configuration.rb +2 -5
- data/lib/algolia/models/query-suggestions/configuration_response.rb +2 -5
- data/lib/algolia/models/query-suggestions/configuration_with_index.rb +2 -5
- data/lib/algolia/models/query-suggestions/error_base.rb +2 -5
- data/lib/algolia/models/query-suggestions/facet.rb +2 -5
- data/lib/algolia/models/query-suggestions/languages.rb +7 -6
- data/lib/algolia/models/query-suggestions/log_file.rb +2 -5
- data/lib/algolia/models/query-suggestions/log_level.rb +2 -0
- data/lib/algolia/models/query-suggestions/source_index.rb +2 -5
- data/lib/algolia/models/recommend/advanced_syntax_features.rb +2 -0
- data/lib/algolia/models/recommend/alternatives_as_exact.rb +2 -0
- data/lib/algolia/models/recommend/around_precision.rb +7 -6
- data/lib/algolia/models/recommend/around_radius.rb +7 -6
- data/lib/algolia/models/recommend/around_radius_all.rb +2 -0
- data/lib/algolia/models/recommend/auto_facet_filter.rb +2 -5
- data/lib/algolia/models/recommend/banner.rb +3 -6
- data/lib/algolia/models/recommend/banner_image.rb +3 -6
- data/lib/algolia/models/recommend/banner_image_url.rb +3 -6
- data/lib/algolia/models/recommend/banner_link.rb +3 -6
- data/lib/algolia/models/recommend/boolean_string.rb +2 -0
- data/lib/algolia/models/recommend/bought_together_query.rb +10 -13
- data/lib/algolia/models/recommend/condition.rb +2 -5
- data/lib/algolia/models/recommend/consequence.rb +2 -5
- data/lib/algolia/models/recommend/deleted_at_response.rb +2 -5
- data/lib/algolia/models/recommend/distinct.rb +7 -6
- data/lib/algolia/models/recommend/error_base.rb +2 -5
- data/lib/algolia/models/recommend/exact_on_single_word_query.rb +2 -0
- data/lib/algolia/models/recommend/exhaustive.rb +2 -5
- data/lib/algolia/models/recommend/facet_filters.rb +7 -6
- data/lib/algolia/models/recommend/facet_ordering.rb +2 -5
- data/lib/algolia/models/recommend/facet_stats.rb +2 -5
- data/lib/algolia/models/recommend/fallback_params.rb +26 -5
- data/lib/algolia/models/recommend/fbt_model.rb +2 -0
- data/lib/algolia/models/recommend/get_recommend_task_response.rb +2 -5
- data/lib/algolia/models/recommend/get_recommendations_params.rb +2 -5
- data/lib/algolia/models/recommend/get_recommendations_response.rb +2 -5
- data/lib/algolia/models/recommend/hide_consequence_object.rb +9 -12
- data/lib/algolia/models/recommend/highlight_result.rb +7 -6
- data/lib/algolia/models/recommend/highlight_result_option.rb +8 -3
- data/lib/algolia/models/recommend/ignore_plurals.rb +7 -6
- data/lib/algolia/models/recommend/index_settings_facets.rb +2 -5
- data/lib/algolia/models/recommend/inside_bounding_box.rb +7 -6
- data/lib/algolia/models/recommend/looking_similar_model.rb +2 -0
- data/lib/algolia/models/recommend/looking_similar_query.rb +10 -13
- data/lib/algolia/models/recommend/match_level.rb +2 -0
- data/lib/algolia/models/recommend/matched_geo_location.rb +2 -5
- data/lib/algolia/models/recommend/numeric_filters.rb +7 -6
- data/lib/algolia/models/recommend/optional_filters.rb +8 -7
- data/lib/algolia/models/recommend/optional_words.rb +7 -6
- data/lib/algolia/models/recommend/params_consequence.rb +2 -5
- data/lib/algolia/models/recommend/personalization.rb +2 -5
- data/lib/algolia/models/recommend/promote_consequence_object.rb +9 -12
- data/lib/algolia/models/recommend/query_type.rb +2 -0
- data/lib/algolia/models/recommend/range.rb +2 -5
- data/lib/algolia/models/recommend/ranking_info.rb +2 -5
- data/lib/algolia/models/recommend/re_ranking_apply_filter.rb +7 -6
- data/lib/algolia/models/recommend/recommend_hit.rb +15 -11
- data/lib/algolia/models/recommend/recommend_models.rb +2 -0
- data/lib/algolia/models/recommend/recommend_rule.rb +9 -12
- data/lib/algolia/models/recommend/recommend_search_params.rb +26 -5
- data/lib/algolia/models/recommend/recommend_updated_at_response.rb +2 -5
- data/lib/algolia/models/recommend/recommendations_hit.rb +7 -6
- data/lib/algolia/models/recommend/recommendations_request.rb +7 -6
- data/lib/algolia/models/recommend/recommendations_results.rb +2 -5
- data/lib/algolia/models/recommend/redirect.rb +2 -5
- data/lib/algolia/models/recommend/redirect_rule_index_data.rb +2 -5
- data/lib/algolia/models/recommend/redirect_rule_index_metadata.rb +2 -5
- data/lib/algolia/models/recommend/redirect_url.rb +2 -5
- data/lib/algolia/models/recommend/related_model.rb +2 -0
- data/lib/algolia/models/recommend/related_query.rb +10 -13
- data/lib/algolia/models/recommend/remove_stop_words.rb +7 -6
- data/lib/algolia/models/recommend/remove_words_if_no_results.rb +2 -0
- data/lib/algolia/models/recommend/rendering_content.rb +2 -5
- data/lib/algolia/models/recommend/rule_metadata.rb +2 -5
- data/lib/algolia/models/recommend/search_recommend_rules_params.rb +2 -5
- data/lib/algolia/models/recommend/search_recommend_rules_response.rb +2 -5
- data/lib/algolia/models/recommend/snippet_result.rb +7 -6
- data/lib/algolia/models/recommend/snippet_result_option.rb +7 -3
- data/lib/algolia/models/recommend/sort_remaining_by.rb +2 -0
- data/lib/algolia/models/recommend/supported_language.rb +2 -0
- data/lib/algolia/models/recommend/tag_filters.rb +7 -6
- data/lib/algolia/models/recommend/task_status.rb +2 -0
- data/lib/algolia/models/recommend/time_range.rb +2 -5
- data/lib/algolia/models/recommend/trending_facet_hit.rb +8 -3
- data/lib/algolia/models/recommend/trending_facets_model.rb +2 -0
- data/lib/algolia/models/recommend/trending_facets_query.rb +2 -5
- data/lib/algolia/models/recommend/trending_items_model.rb +2 -0
- data/lib/algolia/models/recommend/trending_items_query.rb +2 -5
- data/lib/algolia/models/recommend/typo_tolerance.rb +7 -6
- data/lib/algolia/models/recommend/typo_tolerance_enum.rb +2 -0
- data/lib/algolia/models/recommend/value.rb +2 -5
- data/lib/algolia/models/recommend/widgets.rb +4 -7
- data/lib/algolia/models/search/acl.rb +2 -0
- data/lib/algolia/models/search/action.rb +2 -0
- data/lib/algolia/models/search/add_api_key_response.rb +2 -5
- data/lib/algolia/models/search/advanced_syntax_features.rb +2 -0
- data/lib/algolia/models/search/alternatives_as_exact.rb +2 -0
- data/lib/algolia/models/search/anchoring.rb +2 -0
- data/lib/algolia/models/search/api_key.rb +2 -5
- data/lib/algolia/models/search/api_key_operation.rb +2 -0
- data/lib/algolia/models/search/around_precision.rb +7 -6
- data/lib/algolia/models/search/around_radius.rb +7 -6
- data/lib/algolia/models/search/around_radius_all.rb +2 -0
- data/lib/algolia/models/search/assign_user_id_params.rb +2 -5
- data/lib/algolia/models/search/attribute_to_update.rb +7 -6
- data/lib/algolia/models/search/automatic_facet_filter.rb +2 -5
- data/lib/algolia/models/search/automatic_facet_filters.rb +7 -6
- data/lib/algolia/models/search/banner.rb +3 -6
- data/lib/algolia/models/search/banner_image.rb +3 -6
- data/lib/algolia/models/search/banner_image_url.rb +3 -6
- data/lib/algolia/models/search/banner_link.rb +3 -6
- data/lib/algolia/models/search/batch_assign_user_ids_params.rb +2 -5
- data/lib/algolia/models/search/batch_dictionary_entries_params.rb +2 -5
- data/lib/algolia/models/search/batch_dictionary_entries_request.rb +2 -5
- data/lib/algolia/models/search/batch_params.rb +2 -5
- data/lib/algolia/models/search/batch_request.rb +2 -5
- data/lib/algolia/models/search/batch_response.rb +2 -5
- data/lib/algolia/models/search/batch_write_params.rb +2 -5
- data/lib/algolia/models/search/boolean_string.rb +2 -0
- data/lib/algolia/models/search/browse_params.rb +7 -6
- data/lib/algolia/models/search/browse_params_object.rb +2 -29
- data/lib/algolia/models/search/browse_response.rb +2 -5
- data/lib/algolia/models/search/built_in_operation.rb +2 -5
- data/lib/algolia/models/search/built_in_operation_type.rb +2 -0
- data/lib/algolia/models/search/built_in_operation_value.rb +7 -6
- data/lib/algolia/models/search/condition.rb +2 -5
- data/lib/algolia/models/search/consequence.rb +2 -5
- data/lib/algolia/models/search/consequence_hide.rb +10 -13
- data/lib/algolia/models/search/consequence_params.rb +2 -29
- data/lib/algolia/models/search/consequence_query.rb +7 -6
- data/lib/algolia/models/search/consequence_query_object.rb +2 -5
- data/lib/algolia/models/search/created_at_response.rb +2 -5
- data/lib/algolia/models/search/delete_api_key_response.rb +2 -5
- data/lib/algolia/models/search/delete_by_params.rb +2 -5
- data/lib/algolia/models/search/delete_source_response.rb +2 -5
- data/lib/algolia/models/search/deleted_at_response.rb +2 -5
- data/lib/algolia/models/search/dictionary_action.rb +2 -0
- data/lib/algolia/models/search/dictionary_entry.rb +10 -13
- data/lib/algolia/models/search/dictionary_entry_state.rb +2 -0
- data/lib/algolia/models/search/dictionary_entry_type.rb +2 -0
- data/lib/algolia/models/search/dictionary_language.rb +2 -5
- data/lib/algolia/models/search/dictionary_settings_params.rb +2 -5
- data/lib/algolia/models/search/dictionary_type.rb +2 -0
- data/lib/algolia/models/search/distinct.rb +7 -6
- data/lib/algolia/models/search/edit.rb +2 -5
- data/lib/algolia/models/search/edit_type.rb +2 -0
- data/lib/algolia/models/search/error_base.rb +2 -5
- data/lib/algolia/models/search/exact_on_single_word_query.rb +2 -0
- data/lib/algolia/models/search/exhaustive.rb +2 -5
- data/lib/algolia/models/search/facet_filters.rb +7 -6
- data/lib/algolia/models/search/facet_hits.rb +2 -5
- data/lib/algolia/models/search/facet_ordering.rb +2 -5
- data/lib/algolia/models/search/facet_stats.rb +2 -5
- data/lib/algolia/models/search/facets.rb +2 -5
- data/lib/algolia/models/search/fetched_index.rb +2 -5
- data/lib/algolia/models/search/get_api_key_response.rb +2 -5
- data/lib/algolia/models/search/get_dictionary_settings_response.rb +2 -5
- data/lib/algolia/models/search/get_logs_response.rb +2 -5
- data/lib/algolia/models/search/get_objects_params.rb +2 -5
- data/lib/algolia/models/search/get_objects_request.rb +10 -13
- data/lib/algolia/models/search/get_objects_response.rb +2 -5
- data/lib/algolia/models/search/get_task_response.rb +2 -5
- data/lib/algolia/models/search/get_top_user_ids_response.rb +2 -5
- data/lib/algolia/models/search/has_pending_mappings_response.rb +2 -5
- data/lib/algolia/models/search/highlight_result.rb +7 -6
- data/lib/algolia/models/search/highlight_result_option.rb +8 -3
- data/lib/algolia/models/search/hit.rb +10 -13
- data/lib/algolia/models/search/ignore_plurals.rb +7 -6
- data/lib/algolia/models/search/index_settings.rb +26 -29
- data/lib/algolia/models/search/inside_bounding_box.rb +7 -6
- data/lib/algolia/models/search/languages.rb +2 -5
- data/lib/algolia/models/search/list_api_keys_response.rb +2 -5
- data/lib/algolia/models/search/list_clusters_response.rb +2 -5
- data/lib/algolia/models/search/list_indices_response.rb +2 -5
- data/lib/algolia/models/search/list_user_ids_response.rb +2 -5
- data/lib/algolia/models/search/log.rb +2 -5
- data/lib/algolia/models/search/log_query.rb +2 -5
- data/lib/algolia/models/search/log_type.rb +2 -0
- data/lib/algolia/models/search/match_level.rb +2 -0
- data/lib/algolia/models/search/matched_geo_location.rb +2 -5
- data/lib/algolia/models/search/mode.rb +2 -0
- data/lib/algolia/models/search/multiple_batch_request.rb +2 -5
- data/lib/algolia/models/search/multiple_batch_response.rb +2 -5
- data/lib/algolia/models/search/numeric_filters.rb +7 -6
- data/lib/algolia/models/search/operation_index_params.rb +2 -5
- data/lib/algolia/models/search/operation_type.rb +2 -0
- data/lib/algolia/models/search/optional_filters.rb +8 -7
- data/lib/algolia/models/search/optional_words.rb +7 -6
- data/lib/algolia/models/search/personalization.rb +2 -5
- data/lib/algolia/models/search/promote.rb +7 -6
- data/lib/algolia/models/search/promote_object_id.rb +15 -11
- data/lib/algolia/models/search/promote_object_ids.rb +7 -3
- data/lib/algolia/models/search/query_type.rb +2 -0
- data/lib/algolia/models/search/range.rb +2 -5
- data/lib/algolia/models/search/ranking_info.rb +2 -5
- data/lib/algolia/models/search/re_ranking_apply_filter.rb +7 -6
- data/lib/algolia/models/search/redirect.rb +2 -5
- data/lib/algolia/models/search/redirect_rule_index_data.rb +2 -5
- data/lib/algolia/models/search/redirect_rule_index_metadata.rb +2 -5
- data/lib/algolia/models/search/redirect_url.rb +2 -5
- data/lib/algolia/models/search/remove_stop_words.rb +7 -6
- data/lib/algolia/models/search/remove_user_id_response.rb +2 -5
- data/lib/algolia/models/search/remove_words_if_no_results.rb +2 -0
- data/lib/algolia/models/search/rendering_content.rb +2 -5
- data/lib/algolia/models/search/replace_all_objects_response.rb +2 -5
- data/lib/algolia/models/search/replace_source_response.rb +2 -5
- data/lib/algolia/models/search/rule.rb +10 -13
- data/lib/algolia/models/search/save_object_response.rb +9 -12
- data/lib/algolia/models/search/save_synonym_response.rb +2 -5
- data/lib/algolia/models/search/scope_type.rb +2 -0
- data/lib/algolia/models/search/search_dictionary_entries_params.rb +2 -5
- data/lib/algolia/models/search/search_dictionary_entries_response.rb +2 -5
- data/lib/algolia/models/search/search_for_facet_values_request.rb +2 -5
- data/lib/algolia/models/search/search_for_facet_values_response.rb +7 -3
- data/lib/algolia/models/search/search_for_facets.rb +8 -27
- data/lib/algolia/models/search/search_for_hits.rb +2 -29
- data/lib/algolia/models/search/search_method_params.rb +2 -5
- data/lib/algolia/models/search/search_params.rb +7 -6
- data/lib/algolia/models/search/search_params_object.rb +2 -29
- data/lib/algolia/models/search/search_params_string.rb +7 -3
- data/lib/algolia/models/search/search_query.rb +7 -6
- data/lib/algolia/models/search/search_response.rb +2 -5
- data/lib/algolia/models/search/search_responses.rb +2 -5
- data/lib/algolia/models/search/search_result.rb +7 -6
- data/lib/algolia/models/search/search_rules_params.rb +2 -5
- data/lib/algolia/models/search/search_rules_response.rb +2 -5
- data/lib/algolia/models/search/search_strategy.rb +2 -0
- data/lib/algolia/models/search/search_synonyms_params.rb +2 -5
- data/lib/algolia/models/search/search_synonyms_response.rb +2 -5
- data/lib/algolia/models/search/search_type_default.rb +2 -0
- data/lib/algolia/models/search/search_type_facet.rb +2 -0
- data/lib/algolia/models/search/search_user_ids_params.rb +2 -5
- data/lib/algolia/models/search/search_user_ids_response.rb +2 -5
- data/lib/algolia/models/search/secured_api_key_restrictions.rb +2 -5
- data/lib/algolia/models/search/semantic_search.rb +2 -5
- data/lib/algolia/models/search/settings_response.rb +26 -29
- data/lib/algolia/models/search/snippet_result.rb +7 -6
- data/lib/algolia/models/search/snippet_result_option.rb +7 -3
- data/lib/algolia/models/search/sort_remaining_by.rb +2 -0
- data/lib/algolia/models/search/source.rb +2 -5
- data/lib/algolia/models/search/standard_entries.rb +2 -5
- data/lib/algolia/models/search/supported_language.rb +2 -0
- data/lib/algolia/models/search/synonym_hit.rb +10 -13
- data/lib/algolia/models/search/synonym_type.rb +2 -0
- data/lib/algolia/models/search/tag_filters.rb +7 -6
- data/lib/algolia/models/search/task_status.rb +2 -0
- data/lib/algolia/models/search/time_range.rb +2 -5
- data/lib/algolia/models/search/typo_tolerance.rb +7 -6
- data/lib/algolia/models/search/typo_tolerance_enum.rb +2 -0
- data/lib/algolia/models/search/update_api_key_response.rb +2 -5
- data/lib/algolia/models/search/updated_at_response.rb +2 -5
- data/lib/algolia/models/search/updated_at_with_object_id_response.rb +9 -12
- data/lib/algolia/models/search/user_highlight_result.rb +2 -5
- data/lib/algolia/models/search/user_hit.rb +10 -13
- data/lib/algolia/models/search/user_id.rb +2 -5
- data/lib/algolia/models/search/value.rb +2 -5
- data/lib/algolia/models/search/widgets.rb +4 -7
- data/lib/algolia/version.rb +3 -1
- metadata +60 -11
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -20,11 +22,6 @@ module Algolia
|
|
|
20
22
|
}
|
|
21
23
|
end
|
|
22
24
|
|
|
23
|
-
# Returns all the JSON keys this model knows about
|
|
24
|
-
def self.acceptable_attributes
|
|
25
|
-
attribute_map.values
|
|
26
|
-
end
|
|
27
|
-
|
|
28
25
|
# Attribute type mapping.
|
|
29
26
|
def self.types_mapping
|
|
30
27
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -6,7 +8,7 @@ require "time"
|
|
|
6
8
|
module Algolia
|
|
7
9
|
module Analytics
|
|
8
10
|
class TopHit
|
|
9
|
-
# Object ID of a record
|
|
11
|
+
# Object ID of a record returned as a search result.
|
|
10
12
|
attr_accessor :hit
|
|
11
13
|
|
|
12
14
|
# Number of occurrences.
|
|
@@ -20,11 +22,6 @@ module Algolia
|
|
|
20
22
|
}
|
|
21
23
|
end
|
|
22
24
|
|
|
23
|
-
# Returns all the JSON keys this model knows about
|
|
24
|
-
def self.acceptable_attributes
|
|
25
|
-
attribute_map.values
|
|
26
|
-
end
|
|
27
|
-
|
|
28
25
|
# Attribute type mapping.
|
|
29
26
|
def self.types_mapping
|
|
30
27
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -6,16 +8,16 @@ require "time"
|
|
|
6
8
|
module Algolia
|
|
7
9
|
module Analytics
|
|
8
10
|
class TopHitWithAnalytics
|
|
9
|
-
# Object ID of a record
|
|
11
|
+
# Object ID of a record returned as a search result.
|
|
10
12
|
attr_accessor :hit
|
|
11
13
|
|
|
12
14
|
# Number of occurrences.
|
|
13
15
|
attr_accessor :count
|
|
14
16
|
|
|
15
|
-
# Click-through rate
|
|
17
|
+
# Click-through rate: calculated as the number of tracked searches with at least one click event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
16
18
|
attr_accessor :click_through_rate
|
|
17
19
|
|
|
18
|
-
# Conversion rate
|
|
20
|
+
# Conversion rate: calculated as the number of tracked searches with at least one conversion event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
19
21
|
attr_accessor :conversion_rate
|
|
20
22
|
|
|
21
23
|
# Number of tracked searches. Tracked searches are search requests where the `clickAnalytics` parameter is true.
|
|
@@ -40,11 +42,6 @@ module Algolia
|
|
|
40
42
|
}
|
|
41
43
|
end
|
|
42
44
|
|
|
43
|
-
# Returns all the JSON keys this model knows about
|
|
44
|
-
def self.acceptable_attributes
|
|
45
|
-
attribute_map.values
|
|
46
|
-
end
|
|
47
|
-
|
|
48
45
|
# Attribute type mapping.
|
|
49
46
|
def self.types_mapping
|
|
50
47
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -6,16 +8,16 @@ require "time"
|
|
|
6
8
|
module Algolia
|
|
7
9
|
module Analytics
|
|
8
10
|
class TopHitWithRevenueAnalytics
|
|
9
|
-
# Object ID of a record
|
|
11
|
+
# Object ID of a record returned as a search result.
|
|
10
12
|
attr_accessor :hit
|
|
11
13
|
|
|
12
14
|
# Number of occurrences.
|
|
13
15
|
attr_accessor :count
|
|
14
16
|
|
|
15
|
-
# Click-through rate
|
|
17
|
+
# Click-through rate: calculated as the number of tracked searches with at least one click event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
16
18
|
attr_accessor :click_through_rate
|
|
17
19
|
|
|
18
|
-
# Conversion rate
|
|
20
|
+
# Conversion rate: calculated as the number of tracked searches with at least one conversion event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
19
21
|
attr_accessor :conversion_rate
|
|
20
22
|
|
|
21
23
|
# Number of tracked searches. Tracked searches are search requests where the `clickAnalytics` parameter is true.
|
|
@@ -27,19 +29,19 @@ module Algolia
|
|
|
27
29
|
# Number of conversions from this search.
|
|
28
30
|
attr_accessor :conversion_count
|
|
29
31
|
|
|
30
|
-
# Add-to-cart rate
|
|
32
|
+
# Add-to-cart rate: calculated as the number of tracked searches with at least one add-to-cart event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
31
33
|
attr_accessor :add_to_cart_rate
|
|
32
34
|
|
|
33
35
|
# Number of add-to-cart events from this search.
|
|
34
36
|
attr_accessor :add_to_cart_count
|
|
35
37
|
|
|
36
|
-
# Purchase rate
|
|
38
|
+
# Purchase rate: calculated as the number of tracked searches with at least one purchase event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
37
39
|
attr_accessor :purchase_rate
|
|
38
40
|
|
|
39
41
|
# Number of purchase events from this search.
|
|
40
42
|
attr_accessor :purchase_count
|
|
41
43
|
|
|
42
|
-
# Revenue associated with this search
|
|
44
|
+
# Revenue associated with this search: broken down by currency.
|
|
43
45
|
attr_accessor :currencies
|
|
44
46
|
|
|
45
47
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
@@ -60,11 +62,6 @@ module Algolia
|
|
|
60
62
|
}
|
|
61
63
|
end
|
|
62
64
|
|
|
63
|
-
# Returns all the JSON keys this model knows about
|
|
64
|
-
def self.acceptable_attributes
|
|
65
|
-
attribute_map.values
|
|
66
|
-
end
|
|
67
|
-
|
|
68
65
|
# Attribute type mapping.
|
|
69
66
|
def self.types_mapping
|
|
70
67
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -24,11 +26,6 @@ module Algolia
|
|
|
24
26
|
}
|
|
25
27
|
end
|
|
26
28
|
|
|
27
|
-
# Returns all the JSON keys this model knows about
|
|
28
|
-
def self.acceptable_attributes
|
|
29
|
-
attribute_map.values
|
|
30
|
-
end
|
|
31
|
-
|
|
32
29
|
# Attribute type mapping.
|
|
33
30
|
def self.types_mapping
|
|
34
31
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -12,7 +14,7 @@ module Algolia
|
|
|
12
14
|
# Number of searches.
|
|
13
15
|
attr_accessor :count
|
|
14
16
|
|
|
15
|
-
# Click-through rate
|
|
17
|
+
# Click-through rate: calculated as the number of tracked searches with at least one click event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
16
18
|
attr_accessor :click_through_rate
|
|
17
19
|
|
|
18
20
|
# Average position of a clicked search result in the list of search results. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
@@ -21,7 +23,7 @@ module Algolia
|
|
|
21
23
|
# List of positions in the search results and clicks associated with this search.
|
|
22
24
|
attr_accessor :click_positions
|
|
23
25
|
|
|
24
|
-
# Conversion rate
|
|
26
|
+
# Conversion rate: calculated as the number of tracked searches with at least one conversion event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
25
27
|
attr_accessor :conversion_rate
|
|
26
28
|
|
|
27
29
|
# Number of tracked searches. Tracked searches are search requests where the `clickAnalytics` parameter is true.
|
|
@@ -52,11 +54,6 @@ module Algolia
|
|
|
52
54
|
}
|
|
53
55
|
end
|
|
54
56
|
|
|
55
|
-
# Returns all the JSON keys this model knows about
|
|
56
|
-
def self.acceptable_attributes
|
|
57
|
-
attribute_map.values
|
|
58
|
-
end
|
|
59
|
-
|
|
60
57
|
# Attribute type mapping.
|
|
61
58
|
def self.types_mapping
|
|
62
59
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -12,7 +14,7 @@ module Algolia
|
|
|
12
14
|
# Number of searches.
|
|
13
15
|
attr_accessor :count
|
|
14
16
|
|
|
15
|
-
# Click-through rate
|
|
17
|
+
# Click-through rate: calculated as the number of tracked searches with at least one click event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
16
18
|
attr_accessor :click_through_rate
|
|
17
19
|
|
|
18
20
|
# Average position of a clicked search result in the list of search results. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
@@ -21,7 +23,7 @@ module Algolia
|
|
|
21
23
|
# List of positions in the search results and clicks associated with this search.
|
|
22
24
|
attr_accessor :click_positions
|
|
23
25
|
|
|
24
|
-
# Conversion rate
|
|
26
|
+
# Conversion rate: calculated as the number of tracked searches with at least one conversion event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
25
27
|
attr_accessor :conversion_rate
|
|
26
28
|
|
|
27
29
|
# Number of tracked searches. Tracked searches are search requests where the `clickAnalytics` parameter is true.
|
|
@@ -36,16 +38,16 @@ module Algolia
|
|
|
36
38
|
# Number of results (hits).
|
|
37
39
|
attr_accessor :nb_hits
|
|
38
40
|
|
|
39
|
-
# Revenue associated with this search
|
|
41
|
+
# Revenue associated with this search: broken down by currency.
|
|
40
42
|
attr_accessor :currencies
|
|
41
43
|
|
|
42
|
-
# Add-to-cart rate
|
|
44
|
+
# Add-to-cart rate: calculated as the number of tracked searches with at least one add-to-cart event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
43
45
|
attr_accessor :add_to_cart_rate
|
|
44
46
|
|
|
45
47
|
# Number of add-to-cart events from this search.
|
|
46
48
|
attr_accessor :add_to_cart_count
|
|
47
49
|
|
|
48
|
-
# Purchase rate
|
|
50
|
+
# Purchase rate: calculated as the number of tracked searches with at least one purchase event divided by the number of tracked searches. If null, Algolia didn't receive any search requests with `clickAnalytics` set to true.
|
|
49
51
|
attr_accessor :purchase_rate
|
|
50
52
|
|
|
51
53
|
# Number of purchase events from this search.
|
|
@@ -72,11 +74,6 @@ module Algolia
|
|
|
72
74
|
}
|
|
73
75
|
end
|
|
74
76
|
|
|
75
|
-
# Returns all the JSON keys this model knows about
|
|
76
|
-
def self.acceptable_attributes
|
|
77
|
-
attribute_map.values
|
|
78
|
-
end
|
|
79
|
-
|
|
80
77
|
# Attribute type mapping.
|
|
81
78
|
def self.types_mapping
|
|
82
79
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
@@ -16,11 +18,6 @@ module Algolia
|
|
|
16
18
|
}
|
|
17
19
|
end
|
|
18
20
|
|
|
19
|
-
# Returns all the JSON keys this model knows about
|
|
20
|
-
def self.acceptable_attributes
|
|
21
|
-
attribute_map.values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
21
|
# Attribute type mapping.
|
|
25
22
|
def self.types_mapping
|
|
26
23
|
{
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
4
|
+
|
|
5
|
+
require "date"
|
|
6
|
+
require "time"
|
|
7
|
+
|
|
8
|
+
module Algolia
|
|
9
|
+
module Composition
|
|
10
|
+
# Precision of a coordinate-based search in meters to group results with similar distances. The Geo ranking criterion considers all matches within the same range of distances to be equal.
|
|
11
|
+
module AroundPrecision
|
|
12
|
+
class << self
|
|
13
|
+
# List of class defined in oneOf (OpenAPI v3)
|
|
14
|
+
def openapi_one_of
|
|
15
|
+
[
|
|
16
|
+
:"Array<Range>",
|
|
17
|
+
:"Integer"
|
|
18
|
+
]
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Builds the object
|
|
22
|
+
# @param [Mixed] Data to be matched against the list of oneOf items
|
|
23
|
+
# @return [Object] Returns the model or the data itself
|
|
24
|
+
def build(data)
|
|
25
|
+
# Go through the list of oneOf items and attempt to identify the appropriate one.
|
|
26
|
+
# Note:
|
|
27
|
+
# - We do not attempt to check whether exactly one item matches.
|
|
28
|
+
# - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
|
|
29
|
+
# due to the way the deserialization is made in the base_object template (it just casts without verifying).
|
|
30
|
+
# - TODO: scalar values are de facto behaving as if they were nullable.
|
|
31
|
+
# - TODO: logging when debugging is set.
|
|
32
|
+
openapi_one_of.each do |klass|
|
|
33
|
+
begin
|
|
34
|
+
# "nullable: true"
|
|
35
|
+
next if klass == :AnyType
|
|
36
|
+
typed_data = find_and_cast_into_type(klass, data)
|
|
37
|
+
return typed_data if typed_data
|
|
38
|
+
# rescue all errors so we keep iterating even if the current item lookup raises
|
|
39
|
+
rescue
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
openapi_one_of.include?(:AnyType) ? data : nil
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
private
|
|
47
|
+
|
|
48
|
+
SchemaMismatchError = Class.new(StandardError)
|
|
49
|
+
|
|
50
|
+
def find_and_cast_into_type(klass, data)
|
|
51
|
+
return if data.nil?
|
|
52
|
+
|
|
53
|
+
case klass.to_s
|
|
54
|
+
when "Boolean"
|
|
55
|
+
return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
|
|
56
|
+
when "Float"
|
|
57
|
+
return data if data.instance_of?(Float)
|
|
58
|
+
when "Integer"
|
|
59
|
+
return data if data.instance_of?(Integer)
|
|
60
|
+
when "Time"
|
|
61
|
+
return Time.parse(data)
|
|
62
|
+
when "Date"
|
|
63
|
+
return Date.parse(data)
|
|
64
|
+
when "String"
|
|
65
|
+
return data if data.instance_of?(String)
|
|
66
|
+
# "type: object"
|
|
67
|
+
when "Object"
|
|
68
|
+
return data if data.instance_of?(Hash)
|
|
69
|
+
# "type: array"
|
|
70
|
+
when /\AArray<(?<sub_type>.+)>\z/
|
|
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
|
+
# "type: object" with "additionalProperties: { ... }"
|
|
76
|
+
when /\AHash<String, (?<sub_type>.+)>\z/
|
|
77
|
+
if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
|
|
78
|
+
sub_type = Regexp.last_match[:sub_type]
|
|
79
|
+
return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
|
|
80
|
+
end
|
|
81
|
+
# model
|
|
82
|
+
else
|
|
83
|
+
const = Algolia::Composition.const_get(klass)
|
|
84
|
+
if const
|
|
85
|
+
if const.respond_to?(:openapi_one_of)
|
|
86
|
+
# nested oneOf model
|
|
87
|
+
model = const.build(data)
|
|
88
|
+
elsif const.respond_to?(:discriminator_attributes)
|
|
89
|
+
if const.discriminator_attributes.all? { |attr| data.key?(attr) }
|
|
90
|
+
model = const.build_from_hash(data)
|
|
91
|
+
end
|
|
92
|
+
else
|
|
93
|
+
# maybe it's an enum, or doens't have discriminators
|
|
94
|
+
model = const.build_from_hash(data)
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
return model if model
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# if no match by now, raise
|
|
102
|
+
raise
|
|
103
|
+
rescue
|
|
104
|
+
raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
end
|
|
110
|
+
end
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
4
|
+
|
|
5
|
+
require "date"
|
|
6
|
+
require "time"
|
|
7
|
+
|
|
8
|
+
module Algolia
|
|
9
|
+
module Composition
|
|
10
|
+
# Maximum radius for a search around a central location. This parameter works in combination with the `aroundLatLng` and `aroundLatLngViaIP` parameters. By default, the search radius is determined automatically from the density of hits around the central location. The search radius is small if there are many hits close to the central coordinates.
|
|
11
|
+
module AroundRadius
|
|
12
|
+
class << self
|
|
13
|
+
# List of class defined in oneOf (OpenAPI v3)
|
|
14
|
+
def openapi_one_of
|
|
15
|
+
[
|
|
16
|
+
:"AroundRadiusAll",
|
|
17
|
+
:"Integer"
|
|
18
|
+
]
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Builds the object
|
|
22
|
+
# @param [Mixed] Data to be matched against the list of oneOf items
|
|
23
|
+
# @return [Object] Returns the model or the data itself
|
|
24
|
+
def build(data)
|
|
25
|
+
# Go through the list of oneOf items and attempt to identify the appropriate one.
|
|
26
|
+
# Note:
|
|
27
|
+
# - We do not attempt to check whether exactly one item matches.
|
|
28
|
+
# - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
|
|
29
|
+
# due to the way the deserialization is made in the base_object template (it just casts without verifying).
|
|
30
|
+
# - TODO: scalar values are de facto behaving as if they were nullable.
|
|
31
|
+
# - TODO: logging when debugging is set.
|
|
32
|
+
openapi_one_of.each do |klass|
|
|
33
|
+
begin
|
|
34
|
+
# "nullable: true"
|
|
35
|
+
next if klass == :AnyType
|
|
36
|
+
typed_data = find_and_cast_into_type(klass, data)
|
|
37
|
+
return typed_data if typed_data
|
|
38
|
+
# rescue all errors so we keep iterating even if the current item lookup raises
|
|
39
|
+
rescue
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
openapi_one_of.include?(:AnyType) ? data : nil
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
private
|
|
47
|
+
|
|
48
|
+
SchemaMismatchError = Class.new(StandardError)
|
|
49
|
+
|
|
50
|
+
def find_and_cast_into_type(klass, data)
|
|
51
|
+
return if data.nil?
|
|
52
|
+
|
|
53
|
+
case klass.to_s
|
|
54
|
+
when "Boolean"
|
|
55
|
+
return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
|
|
56
|
+
when "Float"
|
|
57
|
+
return data if data.instance_of?(Float)
|
|
58
|
+
when "Integer"
|
|
59
|
+
return data if data.instance_of?(Integer)
|
|
60
|
+
when "Time"
|
|
61
|
+
return Time.parse(data)
|
|
62
|
+
when "Date"
|
|
63
|
+
return Date.parse(data)
|
|
64
|
+
when "String"
|
|
65
|
+
return data if data.instance_of?(String)
|
|
66
|
+
# "type: object"
|
|
67
|
+
when "Object"
|
|
68
|
+
return data if data.instance_of?(Hash)
|
|
69
|
+
# "type: array"
|
|
70
|
+
when /\AArray<(?<sub_type>.+)>\z/
|
|
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
|
+
# "type: object" with "additionalProperties: { ... }"
|
|
76
|
+
when /\AHash<String, (?<sub_type>.+)>\z/
|
|
77
|
+
if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
|
|
78
|
+
sub_type = Regexp.last_match[:sub_type]
|
|
79
|
+
return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
|
|
80
|
+
end
|
|
81
|
+
# model
|
|
82
|
+
else
|
|
83
|
+
const = Algolia::Composition.const_get(klass)
|
|
84
|
+
if const
|
|
85
|
+
if const.respond_to?(:openapi_one_of)
|
|
86
|
+
# nested oneOf model
|
|
87
|
+
model = const.build(data)
|
|
88
|
+
elsif const.respond_to?(:discriminator_attributes)
|
|
89
|
+
if const.discriminator_attributes.all? { |attr| data.key?(attr) }
|
|
90
|
+
model = const.build_from_hash(data)
|
|
91
|
+
end
|
|
92
|
+
else
|
|
93
|
+
# maybe it's an enum, or doens't have discriminators
|
|
94
|
+
model = const.build_from_hash(data)
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
return model if model
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# if no match by now, raise
|
|
102
|
+
raise
|
|
103
|
+
rescue
|
|
104
|
+
raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
end
|
|
110
|
+
end
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.
|
|
2
4
|
|
|
3
5
|
require "date"
|
|
4
6
|
require "time"
|
|
5
7
|
|
|
6
8
|
module Algolia
|
|
7
|
-
module
|
|
8
|
-
class
|
|
9
|
-
|
|
10
|
-
GHCR = "ghcr".freeze
|
|
9
|
+
module Composition
|
|
10
|
+
class AroundRadiusAll
|
|
11
|
+
ALL = "all".freeze
|
|
11
12
|
|
|
12
13
|
def self.all_vars
|
|
13
|
-
@all_vars ||= [
|
|
14
|
+
@all_vars ||= [ALL].freeze
|
|
14
15
|
end
|
|
15
16
|
|
|
16
17
|
# Builds the enum from string
|
|
@@ -24,8 +25,8 @@ module Algolia
|
|
|
24
25
|
# @param [String] The enum value in the form of the string
|
|
25
26
|
# @return [String] The enum value
|
|
26
27
|
def build_from_hash(value)
|
|
27
|
-
return value if
|
|
28
|
-
raise "Invalid ENUM value #{value} for class #
|
|
28
|
+
return value if AroundRadiusAll.all_vars.include?(value)
|
|
29
|
+
raise "Invalid ENUM value #{value} for class #AroundRadiusAll"
|
|
29
30
|
end
|
|
30
31
|
end
|
|
31
32
|
end
|