algolia 3.0.0.beta.8 → 3.0.0.beta.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/release.yml +2 -0
- data/CHANGELOG.md +15 -0
- data/Gemfile.lock +6 -31
- data/Rakefile +0 -2
- data/algolia.gemspec +1 -1
- data/lib/algolia/api/abtesting_client.rb +52 -37
- data/lib/algolia/api/analytics_client.rb +415 -116
- data/lib/algolia/api/ingestion_client.rb +462 -182
- data/lib/algolia/api/insights_client.rb +45 -28
- data/lib/algolia/api/monitoring_client.rb +50 -44
- data/lib/algolia/api/personalization_client.rb +57 -32
- data/lib/algolia/api/query_suggestions_client.rb +59 -40
- data/lib/algolia/api/recommend_client.rb +70 -43
- data/lib/algolia/api/search_client.rb +474 -277
- data/lib/algolia/api/usage_client.rb +48 -28
- data/lib/algolia/api_client.rb +25 -24
- data/lib/algolia/api_error.rb +8 -8
- data/lib/algolia/configuration.rb +17 -6
- data/lib/algolia/error.rb +2 -2
- data/lib/algolia/logger_helper.rb +4 -4
- data/lib/algolia/models/abtesting/ab_test.rb +62 -37
- data/lib/algolia/models/abtesting/ab_test_configuration.rb +35 -20
- data/lib/algolia/models/abtesting/ab_test_response.rb +35 -20
- data/lib/algolia/models/abtesting/ab_tests_variant.rb +38 -23
- data/lib/algolia/models/abtesting/ab_tests_variant_search_params.rb +41 -26
- data/lib/algolia/models/abtesting/add_ab_tests_request.rb +38 -23
- data/lib/algolia/models/abtesting/add_ab_tests_variant.rb +33 -24
- data/lib/algolia/models/abtesting/currency.rb +32 -20
- data/lib/algolia/models/abtesting/custom_search_params.rb +33 -18
- data/lib/algolia/models/abtesting/effect.rb +2 -3
- data/lib/algolia/models/abtesting/empty_search.rb +33 -18
- data/lib/algolia/models/abtesting/error_base.rb +24 -13
- data/lib/algolia/models/abtesting/filter_effects.rb +34 -19
- data/lib/algolia/models/abtesting/filter_effects_empty_search.rb +34 -19
- data/lib/algolia/models/abtesting/filter_effects_outliers.rb +34 -19
- data/lib/algolia/models/abtesting/list_ab_tests_response.rb +37 -22
- data/lib/algolia/models/abtesting/minimum_detectable_effect.rb +37 -22
- data/lib/algolia/models/abtesting/outliers.rb +29 -17
- data/lib/algolia/models/abtesting/status.rb +2 -3
- data/lib/algolia/models/abtesting/variant.rb +83 -51
- data/lib/algolia/models/analytics/click_positions_inner.rb +39 -24
- data/lib/algolia/models/analytics/currencies_value.rb +34 -19
- data/lib/algolia/models/analytics/daily_add_to_cart_rates.rb +42 -27
- data/lib/algolia/models/analytics/daily_average_clicks.rb +40 -25
- data/lib/algolia/models/analytics/daily_click_through_rates.rb +42 -27
- data/lib/algolia/models/analytics/daily_conversion_rates.rb +42 -27
- data/lib/algolia/models/analytics/daily_no_click_rates.rb +41 -26
- data/lib/algolia/models/analytics/daily_no_results_rates.rb +39 -24
- data/lib/algolia/models/analytics/daily_purchase_rates.rb +40 -25
- data/lib/algolia/models/analytics/daily_revenue.rb +34 -19
- data/lib/algolia/models/analytics/daily_searches.rb +34 -19
- data/lib/algolia/models/analytics/daily_searches_no_clicks.rb +37 -22
- data/lib/algolia/models/analytics/daily_searches_no_results.rb +37 -22
- data/lib/algolia/models/analytics/daily_users.rb +34 -19
- data/lib/algolia/models/analytics/direction.rb +2 -3
- data/lib/algolia/models/analytics/error_base.rb +24 -13
- data/lib/algolia/models/analytics/get_add_to_cart_rate_response.rb +42 -27
- data/lib/algolia/models/analytics/get_average_click_position_response.rb +40 -25
- data/lib/algolia/models/analytics/get_click_positions_response.rb +36 -21
- data/lib/algolia/models/analytics/get_click_through_rate_response.rb +42 -27
- data/lib/algolia/models/analytics/get_conversion_rate_response.rb +42 -27
- data/lib/algolia/models/analytics/get_no_click_rate_response.rb +41 -26
- data/lib/algolia/models/analytics/get_no_results_rate_response.rb +39 -24
- data/lib/algolia/models/analytics/get_purchase_rate_response.rb +40 -25
- data/lib/algolia/models/analytics/get_revenue.rb +34 -19
- data/lib/algolia/models/analytics/get_searches_count_response.rb +34 -19
- data/lib/algolia/models/analytics/get_searches_no_clicks_response.rb +33 -18
- data/lib/algolia/models/analytics/get_searches_no_results_response.rb +33 -18
- data/lib/algolia/models/analytics/get_status_response.rb +35 -20
- data/lib/algolia/models/analytics/get_top_countries_response.rb +33 -18
- data/lib/algolia/models/analytics/get_top_filter_attribute.rb +34 -19
- data/lib/algolia/models/analytics/get_top_filter_attributes_response.rb +33 -18
- data/lib/algolia/models/analytics/get_top_filter_for_attribute.rb +36 -21
- data/lib/algolia/models/analytics/get_top_filter_for_attribute_response.rb +33 -18
- data/lib/algolia/models/analytics/get_top_filters_no_results_response.rb +35 -20
- data/lib/algolia/models/analytics/get_top_filters_no_results_value.rb +35 -20
- data/lib/algolia/models/analytics/get_top_filters_no_results_values.rb +34 -19
- data/lib/algolia/models/analytics/get_top_hits_response.rb +34 -25
- data/lib/algolia/models/analytics/get_top_searches_response.rb +34 -25
- data/lib/algolia/models/analytics/get_users_count_response.rb +34 -19
- data/lib/algolia/models/analytics/operator.rb +2 -3
- data/lib/algolia/models/analytics/order_by.rb +2 -3
- data/lib/algolia/models/analytics/top_country.rb +34 -19
- data/lib/algolia/models/analytics/top_hit.rb +30 -18
- data/lib/algolia/models/analytics/top_hit_with_analytics.rb +50 -35
- data/lib/algolia/models/analytics/top_hit_with_revenue_analytics.rb +77 -50
- data/lib/algolia/models/analytics/top_hits_response.rb +33 -18
- data/lib/algolia/models/analytics/top_hits_response_with_analytics.rb +33 -18
- data/lib/algolia/models/analytics/top_hits_response_with_revenue_analytics.rb +33 -18
- data/lib/algolia/models/analytics/top_search.rb +35 -20
- data/lib/algolia/models/analytics/top_search_with_analytics.rb +76 -44
- data/lib/algolia/models/analytics/top_search_with_revenue_analytics.rb +94 -58
- data/lib/algolia/models/analytics/top_searches_response.rb +33 -18
- data/lib/algolia/models/analytics/top_searches_response_with_analytics.rb +33 -18
- data/lib/algolia/models/analytics/top_searches_response_with_revenue_analytics.rb +33 -18
- data/lib/algolia/models/ingestion/action_type.rb +2 -3
- data/lib/algolia/models/ingestion/auth_algolia.rb +34 -19
- data/lib/algolia/models/ingestion/auth_algolia_insights.rb +34 -19
- data/lib/algolia/models/ingestion/auth_algolia_insights_partial.rb +34 -19
- data/lib/algolia/models/ingestion/auth_algolia_partial.rb +34 -19
- data/lib/algolia/models/ingestion/auth_api_key.rb +33 -18
- data/lib/algolia/models/ingestion/auth_api_key_partial.rb +33 -18
- data/lib/algolia/models/ingestion/auth_basic.rb +34 -19
- data/lib/algolia/models/ingestion/auth_basic_partial.rb +34 -19
- data/lib/algolia/models/ingestion/auth_google_service_account.rb +34 -19
- data/lib/algolia/models/ingestion/auth_google_service_account_partial.rb +34 -19
- data/lib/algolia/models/ingestion/auth_input.rb +37 -28
- data/lib/algolia/models/ingestion/auth_input_partial.rb +37 -28
- data/lib/algolia/models/ingestion/auth_o_auth.rb +36 -21
- data/lib/algolia/models/ingestion/auth_o_auth_partial.rb +36 -21
- data/lib/algolia/models/ingestion/authentication.rb +41 -26
- data/lib/algolia/models/ingestion/authentication_create.rb +38 -23
- data/lib/algolia/models/ingestion/authentication_create_response.rb +35 -20
- data/lib/algolia/models/ingestion/authentication_search.rb +33 -18
- data/lib/algolia/models/ingestion/authentication_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/authentication_type.rb +2 -3
- data/lib/algolia/models/ingestion/authentication_update.rb +38 -23
- data/lib/algolia/models/ingestion/authentication_update_response.rb +35 -20
- data/lib/algolia/models/ingestion/big_commerce_channel.rb +34 -19
- data/lib/algolia/models/ingestion/big_commerce_metafield.rb +34 -19
- data/lib/algolia/models/ingestion/big_query_data_type.rb +2 -3
- data/lib/algolia/models/ingestion/commercetools_custom_fields.rb +39 -24
- data/lib/algolia/models/ingestion/delete_response.rb +33 -18
- data/lib/algolia/models/ingestion/destination.rb +39 -24
- data/lib/algolia/models/ingestion/destination_create.rb +36 -21
- data/lib/algolia/models/ingestion/destination_create_response.rb +35 -20
- data/lib/algolia/models/ingestion/destination_index_name.rb +35 -20
- data/lib/algolia/models/ingestion/destination_index_prefix.rb +33 -18
- data/lib/algolia/models/ingestion/destination_input.rb +33 -24
- data/lib/algolia/models/ingestion/destination_search.rb +33 -18
- data/lib/algolia/models/ingestion/destination_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/destination_type.rb +2 -3
- data/lib/algolia/models/ingestion/destination_update.rb +36 -21
- data/lib/algolia/models/ingestion/destination_update_response.rb +35 -20
- data/lib/algolia/models/ingestion/docker_image_type.rb +2 -3
- data/lib/algolia/models/ingestion/docker_registry.rb +2 -3
- data/lib/algolia/models/ingestion/{on_demand_date_utils_input.rb → docker_streams_input.rb} +41 -49
- data/lib/algolia/models/ingestion/error_base.rb +24 -13
- data/lib/algolia/models/ingestion/event.rb +38 -26
- data/lib/algolia/models/ingestion/event_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/event_status.rb +2 -3
- data/lib/algolia/models/ingestion/event_type.rb +2 -3
- data/lib/algolia/models/ingestion/list_authentications_response.rb +34 -19
- data/lib/algolia/models/ingestion/list_destinations_response.rb +34 -19
- data/lib/algolia/models/ingestion/list_events_response.rb +35 -20
- data/lib/algolia/models/ingestion/list_sources_response.rb +34 -19
- data/lib/algolia/models/ingestion/list_tasks_response.rb +34 -19
- data/lib/algolia/models/ingestion/list_transformations_response.rb +34 -19
- data/lib/algolia/models/ingestion/mapping_field_directive.rb +34 -19
- data/lib/algolia/models/ingestion/mapping_format_schema.rb +2 -3
- data/lib/algolia/models/ingestion/mapping_input.rb +34 -19
- data/lib/algolia/models/ingestion/mapping_kit_action.rb +36 -21
- data/lib/algolia/models/ingestion/mapping_type_csv.rb +2 -3
- data/lib/algolia/models/ingestion/method_type.rb +2 -3
- data/lib/algolia/models/ingestion/on_demand_trigger.rb +34 -19
- data/lib/algolia/models/ingestion/on_demand_trigger_input.rb +33 -18
- data/lib/algolia/models/ingestion/on_demand_trigger_type.rb +2 -3
- data/lib/algolia/models/ingestion/order_keys.rb +2 -3
- data/lib/algolia/models/ingestion/pagination.rb +45 -30
- data/lib/algolia/models/ingestion/platform.rb +2 -3
- data/lib/algolia/models/ingestion/platform_none.rb +2 -3
- data/lib/algolia/models/ingestion/platform_with_none.rb +33 -24
- data/lib/algolia/models/ingestion/record_type.rb +2 -3
- data/lib/algolia/models/ingestion/run.rb +59 -33
- data/lib/algolia/models/ingestion/run_list_response.rb +35 -20
- data/lib/algolia/models/ingestion/run_outcome.rb +2 -3
- data/lib/algolia/models/ingestion/run_progress.rb +34 -19
- data/lib/algolia/models/ingestion/run_reason_code.rb +2 -3
- data/lib/algolia/models/ingestion/run_response.rb +34 -19
- data/lib/algolia/models/ingestion/run_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/run_status.rb +2 -3
- data/lib/algolia/models/ingestion/run_type.rb +2 -3
- data/lib/algolia/models/ingestion/schedule_trigger.rb +36 -21
- data/lib/algolia/models/ingestion/schedule_trigger_input.rb +34 -19
- data/lib/algolia/models/ingestion/schedule_trigger_type.rb +2 -3
- data/lib/algolia/models/ingestion/shopify_input.rb +34 -19
- data/lib/algolia/models/ingestion/shopify_market.rb +35 -20
- data/lib/algolia/models/ingestion/shopify_metafield.rb +35 -20
- data/lib/algolia/models/ingestion/sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/source.rb +35 -23
- data/lib/algolia/models/ingestion/source_big_commerce.rb +37 -22
- data/lib/algolia/models/ingestion/source_big_query.rb +39 -24
- data/lib/algolia/models/ingestion/source_commercetools.rb +38 -23
- data/lib/algolia/models/ingestion/source_create.rb +36 -21
- data/lib/algolia/models/ingestion/source_create_response.rb +35 -20
- data/lib/algolia/models/ingestion/source_csv.rb +43 -25
- data/lib/algolia/models/ingestion/source_docker.rb +37 -22
- data/lib/algolia/models/ingestion/source_ga4_big_query_export.rb +35 -20
- data/lib/algolia/models/ingestion/source_input.rb +39 -30
- data/lib/algolia/models/ingestion/source_json.rb +35 -20
- data/lib/algolia/models/ingestion/source_search.rb +33 -18
- data/lib/algolia/models/ingestion/source_shopify.rb +45 -89
- data/lib/algolia/models/ingestion/source_shopify_base.rb +33 -18
- data/lib/algolia/models/ingestion/source_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/source_type.rb +2 -3
- data/lib/algolia/models/ingestion/source_update.rb +35 -20
- data/lib/algolia/models/ingestion/source_update_commercetools.rb +37 -22
- data/lib/algolia/models/ingestion/source_update_docker.rb +36 -21
- data/lib/algolia/models/ingestion/source_update_input.rb +38 -29
- data/lib/algolia/models/ingestion/source_update_response.rb +35 -20
- data/lib/algolia/models/ingestion/source_update_shopify.rb +42 -86
- data/lib/algolia/models/ingestion/source_watch_response.rb +36 -21
- data/lib/algolia/models/ingestion/{streaming_utils_input.rb → streaming_input.rb} +34 -19
- data/lib/algolia/models/ingestion/streaming_trigger.rb +33 -18
- data/lib/algolia/models/ingestion/streaming_trigger_type.rb +2 -3
- data/lib/algolia/models/ingestion/subscription_trigger.rb +33 -18
- data/lib/algolia/models/ingestion/subscription_trigger_type.rb +2 -3
- data/lib/algolia/models/ingestion/task.rb +55 -31
- data/lib/algolia/models/ingestion/task_create.rb +43 -28
- data/lib/algolia/models/ingestion/task_create_response.rb +34 -19
- data/lib/algolia/models/ingestion/task_create_trigger.rb +35 -26
- data/lib/algolia/models/ingestion/task_input.rb +34 -26
- data/lib/algolia/models/ingestion/task_search.rb +33 -18
- data/lib/algolia/models/ingestion/task_sort_keys.rb +2 -3
- data/lib/algolia/models/ingestion/task_update.rb +40 -25
- data/lib/algolia/models/ingestion/task_update_response.rb +34 -19
- data/lib/algolia/models/ingestion/transformation.rb +38 -25
- data/lib/algolia/models/ingestion/transformation_create.rb +35 -22
- data/lib/algolia/models/ingestion/transformation_create_response.rb +34 -19
- data/lib/algolia/models/ingestion/transformation_search.rb +33 -18
- data/lib/algolia/models/ingestion/transformation_try.rb +34 -19
- data/lib/algolia/models/ingestion/transformation_try_response.rb +34 -19
- data/lib/algolia/models/ingestion/transformation_try_response_error.rb +34 -19
- data/lib/algolia/models/ingestion/transformation_update_response.rb +34 -19
- data/lib/algolia/models/ingestion/trigger.rb +35 -26
- data/lib/algolia/models/ingestion/trigger_type.rb +2 -3
- data/lib/algolia/models/ingestion/trigger_update_input.rb +33 -18
- data/lib/algolia/models/ingestion/window.rb +30 -18
- data/lib/algolia/models/insights/add_to_cart_event.rb +2 -3
- data/lib/algolia/models/insights/added_to_cart_object_ids.rb +91 -46
- data/lib/algolia/models/insights/added_to_cart_object_ids_after_search.rb +99 -50
- data/lib/algolia/models/insights/click_event.rb +2 -3
- data/lib/algolia/models/insights/clicked_filters.rb +71 -38
- data/lib/algolia/models/insights/clicked_object_ids.rb +71 -38
- data/lib/algolia/models/insights/clicked_object_ids_after_search.rb +93 -47
- data/lib/algolia/models/insights/conversion_event.rb +2 -3
- data/lib/algolia/models/insights/converted_filters.rb +71 -38
- data/lib/algolia/models/insights/converted_object_ids.rb +71 -38
- data/lib/algolia/models/insights/converted_object_ids_after_search.rb +78 -42
- data/lib/algolia/models/insights/discount.rb +33 -24
- data/lib/algolia/models/insights/error_base.rb +24 -13
- data/lib/algolia/models/insights/events_items.rb +43 -34
- data/lib/algolia/models/insights/events_response.rb +34 -19
- data/lib/algolia/models/insights/insights_events.rb +36 -21
- data/lib/algolia/models/insights/object_data.rb +35 -20
- data/lib/algolia/models/insights/object_data_after_search.rb +42 -24
- data/lib/algolia/models/insights/price.rb +33 -24
- data/lib/algolia/models/insights/purchase_event.rb +2 -3
- data/lib/algolia/models/insights/purchased_object_ids.rb +91 -46
- data/lib/algolia/models/insights/purchased_object_ids_after_search.rb +91 -46
- data/lib/algolia/models/insights/value.rb +33 -24
- data/lib/algolia/models/insights/view_event.rb +2 -3
- data/lib/algolia/models/insights/viewed_filters.rb +71 -38
- data/lib/algolia/models/insights/viewed_object_ids.rb +71 -38
- data/lib/algolia/models/monitoring/error_base.rb +24 -13
- data/lib/algolia/models/monitoring/get_servers403_response.rb +33 -18
- data/lib/algolia/models/monitoring/incident.rb +30 -18
- data/lib/algolia/models/monitoring/incidents_inner.rb +34 -19
- data/lib/algolia/models/monitoring/incidents_response.rb +33 -18
- data/lib/algolia/models/monitoring/indexing_time_response.rb +33 -18
- data/lib/algolia/models/monitoring/indexing_time_response_metrics.rb +33 -18
- data/lib/algolia/models/monitoring/infrastructure_response.rb +33 -18
- data/lib/algolia/models/monitoring/infrastructure_response_metrics.rb +37 -22
- data/lib/algolia/models/monitoring/inventory_response.rb +33 -18
- data/lib/algolia/models/monitoring/latency_response.rb +33 -18
- data/lib/algolia/models/monitoring/latency_response_metrics.rb +33 -18
- data/lib/algolia/models/monitoring/metric.rb +2 -3
- data/lib/algolia/models/monitoring/period.rb +2 -3
- data/lib/algolia/models/monitoring/probes_metric.rb +34 -19
- data/lib/algolia/models/monitoring/region.rb +2 -3
- data/lib/algolia/models/monitoring/server.rb +35 -23
- data/lib/algolia/models/monitoring/server_status.rb +2 -3
- data/lib/algolia/models/monitoring/status.rb +2 -3
- data/lib/algolia/models/monitoring/status_response.rb +33 -18
- data/lib/algolia/models/monitoring/time_inner.rb +34 -19
- data/lib/algolia/models/monitoring/type.rb +2 -3
- data/lib/algolia/models/personalization/delete_user_profile_response.rb +34 -19
- data/lib/algolia/models/personalization/error_base.rb +24 -13
- data/lib/algolia/models/personalization/event_scoring.rb +35 -20
- data/lib/algolia/models/personalization/event_type.rb +2 -3
- data/lib/algolia/models/personalization/facet_scoring.rb +34 -19
- data/lib/algolia/models/personalization/get_user_token_response.rb +35 -20
- data/lib/algolia/models/personalization/personalization_strategy_params.rb +38 -23
- data/lib/algolia/models/personalization/set_personalization_strategy_response.rb +33 -18
- data/lib/algolia/models/query-suggestions/app_id.rb +29 -17
- data/lib/algolia/models/query-suggestions/base_query_suggestions_configuration_response.rb +22 -9
- data/lib/algolia/models/query-suggestions/base_query_suggestions_configuration_with_index.rb +22 -9
- data/lib/algolia/models/query-suggestions/base_response.rb +34 -19
- data/lib/algolia/models/query-suggestions/configuration.rb +44 -26
- data/lib/algolia/models/query-suggestions/configuration_response.rb +48 -30
- data/lib/algolia/models/query-suggestions/configuration_with_index.rb +46 -28
- data/lib/algolia/models/query-suggestions/error_base.rb +24 -13
- data/lib/algolia/models/query-suggestions/facet.rb +30 -18
- data/lib/algolia/models/query-suggestions/get_config_status200_response.rb +37 -22
- data/lib/algolia/models/query-suggestions/get_log_file200_response.rb +36 -21
- data/lib/algolia/models/query-suggestions/languages.rb +33 -24
- data/lib/algolia/models/query-suggestions/log_level.rb +2 -3
- data/lib/algolia/models/query-suggestions/query_suggestions_configuration.rb +34 -16
- data/lib/algolia/models/query-suggestions/query_suggestions_configuration_response.rb +34 -16
- data/lib/algolia/models/query-suggestions/query_suggestions_configuration_with_index.rb +34 -16
- data/lib/algolia/models/query-suggestions/source_index.rb +49 -34
- data/lib/algolia/models/recommend/advanced_syntax_features.rb +2 -3
- data/lib/algolia/models/recommend/alternatives_as_exact.rb +2 -3
- data/lib/algolia/models/recommend/around_precision.rb +33 -24
- data/lib/algolia/models/recommend/around_precision_from_value_inner.rb +34 -19
- data/lib/algolia/models/recommend/around_radius.rb +33 -24
- data/lib/algolia/models/recommend/around_radius_all.rb +2 -3
- data/lib/algolia/models/recommend/auto_facet_filter.rb +34 -19
- data/lib/algolia/models/recommend/base_recommend_request.rb +42 -27
- data/lib/algolia/models/recommend/base_search_params.rb +110 -63
- data/lib/algolia/models/recommend/base_search_params_without_query.rb +106 -60
- data/lib/algolia/models/recommend/base_search_response.rb +76 -121
- data/lib/algolia/models/recommend/bought_together_query.rb +46 -31
- data/lib/algolia/models/recommend/condition.rb +35 -20
- data/lib/algolia/models/recommend/consequence.rb +39 -24
- data/lib/algolia/models/recommend/deleted_at_response.rb +34 -19
- data/lib/algolia/models/recommend/distinct.rb +33 -24
- data/lib/algolia/models/recommend/error_base.rb +24 -13
- data/lib/algolia/models/recommend/exact_on_single_word_query.rb +2 -3
- data/lib/algolia/models/recommend/exhaustive.rb +37 -22
- data/lib/algolia/models/recommend/facet_filters.rb +33 -24
- data/lib/algolia/models/recommend/facet_ordering.rb +34 -19
- data/lib/algolia/models/recommend/facets.rb +29 -17
- data/lib/algolia/models/recommend/facets_stats.rb +36 -21
- data/lib/algolia/models/recommend/fallback_params.rb +207 -118
- data/lib/algolia/models/recommend/fbt_model.rb +2 -3
- data/lib/algolia/models/recommend/frequently_bought_together.rb +34 -19
- data/lib/algolia/models/recommend/get_recommend_task_response.rb +33 -18
- data/lib/algolia/models/recommend/get_recommendations_params.rb +33 -18
- data/lib/algolia/models/recommend/get_recommendations_response.rb +35 -18
- data/lib/algolia/models/recommend/hide_consequence_object.rb +33 -18
- data/lib/algolia/models/recommend/highlight_result.rb +34 -25
- data/lib/algolia/models/recommend/highlight_result_option.rb +36 -21
- data/lib/algolia/models/recommend/ignore_plurals.rb +33 -24
- data/lib/algolia/models/recommend/index_settings_as_search_params.rb +134 -75
- data/lib/algolia/models/recommend/looking_similar.rb +35 -20
- data/lib/algolia/models/recommend/looking_similar_model.rb +2 -3
- data/lib/algolia/models/recommend/looking_similar_query.rb +47 -32
- data/lib/algolia/models/recommend/match_level.rb +2 -3
- data/lib/algolia/models/recommend/matched_geo_location.rb +35 -20
- data/lib/algolia/models/recommend/mode.rb +2 -3
- data/lib/algolia/models/recommend/numeric_filters.rb +33 -24
- data/lib/algolia/models/recommend/optional_filters.rb +33 -24
- data/lib/algolia/models/recommend/params_consequence.rb +35 -20
- data/lib/algolia/models/recommend/personalization.rb +35 -20
- data/lib/algolia/models/recommend/promote_consequence_object.rb +36 -21
- data/lib/algolia/models/recommend/query_type.rb +2 -3
- data/lib/algolia/models/recommend/ranking_info.rb +76 -48
- data/lib/algolia/models/recommend/re_ranking_apply_filter.rb +33 -24
- data/lib/algolia/models/recommend/recommend_hit.rb +32 -21
- data/lib/algolia/models/recommend/recommend_models.rb +2 -3
- data/lib/algolia/models/recommend/recommend_rule.rb +38 -23
- data/lib/algolia/models/recommend/recommend_rule_metadata.rb +33 -18
- data/lib/algolia/models/recommend/recommendations_hit.rb +33 -24
- data/lib/algolia/models/recommend/recommendations_hits.rb +33 -18
- data/lib/algolia/models/recommend/recommendations_request.rb +37 -28
- data/lib/algolia/models/recommend/recommendations_results.rb +159 -114
- data/lib/algolia/models/recommend/recommended_for_you.rb +34 -19
- data/lib/algolia/models/recommend/recommended_for_you_model.rb +2 -3
- data/lib/algolia/models/recommend/recommended_for_you_query.rb +46 -31
- data/lib/algolia/models/recommend/redirect.rb +29 -17
- data/lib/algolia/models/recommend/redirect_rule_index_metadata.rb +37 -22
- data/lib/algolia/models/recommend/redirect_rule_index_metadata_data.rb +33 -18
- data/lib/algolia/models/recommend/redirect_url.rb +33 -18
- data/lib/algolia/models/recommend/related_model.rb +2 -3
- data/lib/algolia/models/recommend/related_products.rb +35 -20
- data/lib/algolia/models/recommend/related_query.rb +47 -32
- data/lib/algolia/models/recommend/remove_stop_words.rb +33 -24
- data/lib/algolia/models/recommend/remove_words_if_no_results.rb +2 -3
- data/lib/algolia/models/recommend/rendering_content.rb +34 -19
- data/lib/algolia/models/recommend/search_pagination.rb +282 -0
- data/lib/algolia/models/recommend/search_params.rb +207 -118
- data/lib/algolia/models/recommend/search_params_object.rb +208 -119
- data/lib/algolia/models/recommend/search_params_query.rb +33 -18
- data/lib/algolia/models/recommend/search_recommend_rules_params.rb +48 -33
- data/lib/algolia/models/recommend/search_recommend_rules_response.rb +38 -23
- data/lib/algolia/models/recommend/semantic_search.rb +35 -20
- data/lib/algolia/models/recommend/snippet_result.rb +34 -25
- data/lib/algolia/models/recommend/snippet_result_option.rb +34 -19
- data/lib/algolia/models/recommend/sort_remaining_by.rb +2 -3
- data/lib/algolia/models/recommend/supported_language.rb +72 -5
- data/lib/algolia/models/recommend/tag_filters.rb +33 -24
- data/lib/algolia/models/recommend/task_status.rb +2 -3
- data/lib/algolia/models/recommend/trending_facet_hit.rb +38 -23
- data/lib/algolia/models/recommend/trending_facets.rb +37 -22
- data/lib/algolia/models/recommend/trending_facets_model.rb +2 -3
- data/lib/algolia/models/recommend/trending_facets_query.rb +49 -34
- data/lib/algolia/models/recommend/trending_items.rb +36 -25
- data/lib/algolia/models/recommend/trending_items_model.rb +2 -3
- data/lib/algolia/models/recommend/trending_items_query.rb +58 -38
- data/lib/algolia/models/recommend/typo_tolerance.rb +33 -24
- data/lib/algolia/models/recommend/typo_tolerance_enum.rb +2 -3
- data/lib/algolia/models/recommend/value.rb +31 -19
- data/lib/algolia/models/search/acl.rb +19 -5
- data/lib/algolia/models/search/action.rb +11 -4
- data/lib/algolia/models/search/add_api_key_response.rb +34 -19
- data/lib/algolia/models/search/advanced_syntax_features.rb +2 -3
- data/lib/algolia/models/search/alternatives_as_exact.rb +2 -3
- data/lib/algolia/models/search/anchoring.rb +2 -3
- data/lib/algolia/models/search/api_key.rb +46 -25
- data/lib/algolia/models/search/api_key_operation.rb +2 -3
- data/lib/algolia/models/search/around_precision.rb +33 -24
- data/lib/algolia/models/search/around_precision_from_value_inner.rb +34 -19
- data/lib/algolia/models/search/around_radius.rb +33 -24
- data/lib/algolia/models/search/around_radius_all.rb +2 -3
- data/lib/algolia/models/search/assign_user_id_params.rb +33 -18
- data/lib/algolia/models/search/attribute_to_update.rb +33 -24
- data/lib/algolia/models/search/automatic_facet_filter.rb +35 -20
- data/lib/algolia/models/search/automatic_facet_filters.rb +33 -24
- data/lib/algolia/models/search/base_get_api_key_response.rb +34 -19
- data/lib/algolia/models/search/base_index_settings.rb +71 -39
- data/lib/algolia/models/search/base_search_params.rb +110 -63
- data/lib/algolia/models/search/base_search_params_without_query.rb +106 -60
- data/lib/algolia/models/search/base_search_response.rb +76 -121
- data/lib/algolia/models/search/batch_assign_user_ids_params.rb +34 -19
- data/lib/algolia/models/search/batch_dictionary_entries_params.rb +34 -19
- data/lib/algolia/models/search/batch_dictionary_entries_request.rb +34 -19
- data/lib/algolia/models/search/batch_params.rb +33 -18
- data/lib/algolia/models/search/batch_request.rb +34 -19
- data/lib/algolia/models/search/batch_response.rb +34 -19
- data/lib/algolia/models/search/batch_write_params.rb +33 -18
- data/lib/algolia/models/{ingestion/schedule_date_utils_input.rb → search/browse_pagination.rb} +92 -45
- data/lib/algolia/models/search/browse_params.rb +33 -24
- data/lib/algolia/models/search/browse_params_object.rb +210 -120
- data/lib/algolia/models/search/browse_response.rb +158 -118
- data/lib/algolia/models/search/built_in_operation.rb +34 -19
- data/lib/algolia/models/search/built_in_operation_type.rb +2 -3
- data/lib/algolia/models/search/condition.rb +38 -23
- data/lib/algolia/models/search/consequence.rb +43 -28
- data/lib/algolia/models/search/consequence_hide.rb +33 -18
- data/lib/algolia/models/search/consequence_params.rb +213 -122
- data/lib/algolia/models/search/consequence_query.rb +33 -24
- data/lib/algolia/models/search/consequence_query_object.rb +34 -19
- data/lib/algolia/models/search/created_at_response.rb +33 -18
- data/lib/algolia/models/search/cursor.rb +29 -17
- data/lib/algolia/models/search/delete_api_key_response.rb +33 -18
- data/lib/algolia/models/search/delete_by_params.rb +50 -26
- data/lib/algolia/models/search/delete_source_response.rb +33 -18
- data/lib/algolia/models/search/deleted_at_response.rb +34 -19
- data/lib/algolia/models/search/dictionary_action.rb +2 -3
- data/lib/algolia/models/search/dictionary_entry.rb +29 -18
- data/lib/algolia/models/search/dictionary_entry_state.rb +2 -3
- data/lib/algolia/models/search/dictionary_language.rb +33 -18
- data/lib/algolia/models/search/dictionary_settings_params.rb +33 -18
- data/lib/algolia/models/search/dictionary_type.rb +2 -3
- data/lib/algolia/models/search/distinct.rb +33 -24
- data/lib/algolia/models/search/edit.rb +31 -19
- data/lib/algolia/models/search/edit_type.rb +2 -3
- data/lib/algolia/models/search/error_base.rb +24 -13
- data/lib/algolia/models/search/exact_on_single_word_query.rb +2 -3
- data/lib/algolia/models/search/exhaustive.rb +37 -22
- data/lib/algolia/models/search/facet_filters.rb +33 -24
- data/lib/algolia/models/search/facet_hits.rb +35 -20
- data/lib/algolia/models/search/facet_ordering.rb +34 -19
- data/lib/algolia/models/search/facets.rb +29 -17
- data/lib/algolia/models/search/facets_stats.rb +36 -21
- data/lib/algolia/models/search/fetched_index.rb +58 -30
- data/lib/algolia/models/search/get_api_key_response.rb +56 -30
- data/lib/algolia/models/search/get_dictionary_settings_response.rb +33 -18
- data/lib/algolia/models/search/get_logs_response.rb +33 -18
- data/lib/algolia/models/search/get_objects_params.rb +33 -18
- data/lib/algolia/models/search/get_objects_request.rb +35 -20
- data/lib/algolia/models/search/get_objects_response.rb +33 -18
- data/lib/algolia/models/search/get_task_response.rb +33 -18
- data/lib/algolia/models/search/get_top_user_ids_response.rb +33 -18
- data/lib/algolia/models/search/has_pending_mappings_response.rb +34 -19
- data/lib/algolia/models/search/highlight_result.rb +34 -25
- data/lib/algolia/models/search/highlight_result_option.rb +36 -21
- data/lib/algolia/models/search/hit.rb +24 -16
- data/lib/algolia/models/search/ignore_plurals.rb +33 -24
- data/lib/algolia/models/search/index_settings.rb +171 -97
- data/lib/algolia/models/search/index_settings_as_search_params.rb +134 -75
- data/lib/algolia/models/search/languages.rb +39 -24
- data/lib/algolia/models/search/list_api_keys_response.rb +33 -18
- data/lib/algolia/models/search/list_clusters_response.rb +33 -18
- data/lib/algolia/models/search/list_indices_response.rb +34 -19
- data/lib/algolia/models/search/list_user_ids_response.rb +33 -18
- data/lib/algolia/models/search/log.rb +70 -37
- data/lib/algolia/models/search/log_query.rb +31 -19
- data/lib/algolia/models/search/log_type.rb +2 -3
- data/lib/algolia/models/search/match_level.rb +2 -3
- data/lib/algolia/models/search/matched_geo_location.rb +35 -20
- data/lib/algolia/models/search/mode.rb +2 -3
- data/lib/algolia/models/search/multiple_batch_request.rb +35 -20
- data/lib/algolia/models/search/multiple_batch_response.rb +34 -19
- data/lib/algolia/models/search/numeric_filters.rb +33 -24
- data/lib/algolia/models/search/operation_index_params.rb +35 -20
- data/lib/algolia/models/search/operation_type.rb +2 -3
- data/lib/algolia/models/search/optional_filters.rb +33 -24
- data/lib/algolia/models/search/params.rb +32 -20
- data/lib/algolia/models/search/personalization.rb +35 -20
- data/lib/algolia/models/search/promote.rb +33 -24
- data/lib/algolia/models/search/promote_object_id.rb +34 -19
- data/lib/algolia/models/search/promote_object_ids.rb +36 -21
- data/lib/algolia/models/search/query_type.rb +2 -3
- data/lib/algolia/models/search/ranking_info.rb +76 -48
- data/lib/algolia/models/search/re_ranking_apply_filter.rb +33 -24
- data/lib/algolia/models/search/redirect.rb +29 -17
- data/lib/algolia/models/search/redirect_rule_index_metadata.rb +37 -22
- data/lib/algolia/models/search/redirect_rule_index_metadata_data.rb +33 -18
- data/lib/algolia/models/search/redirect_url.rb +33 -18
- data/lib/algolia/models/search/remove_stop_words.rb +33 -24
- data/lib/algolia/models/search/remove_user_id_response.rb +33 -18
- data/lib/algolia/models/search/remove_words_if_no_results.rb +2 -3
- data/lib/algolia/models/search/rendering_content.rb +34 -19
- data/lib/algolia/models/search/replace_all_objects_response.rb +35 -20
- data/lib/algolia/models/search/replace_source_response.rb +33 -18
- data/lib/algolia/models/search/rule.rb +37 -25
- data/lib/algolia/models/search/save_object_response.rb +35 -20
- data/lib/algolia/models/search/save_synonym_response.rb +35 -20
- data/lib/algolia/models/search/scope_type.rb +2 -3
- data/lib/algolia/models/search/search_dictionary_entries_params.rb +41 -26
- data/lib/algolia/models/search/search_dictionary_entries_response.rb +38 -23
- data/lib/algolia/models/search/search_for_facet_values_request.rb +37 -22
- data/lib/algolia/models/search/search_for_facet_values_response.rb +35 -20
- data/lib/algolia/models/search/search_for_facets.rb +218 -124
- data/lib/algolia/models/search/search_for_facets_options.rb +39 -24
- data/lib/algolia/models/search/search_for_hits.rb +214 -122
- data/lib/algolia/models/search/search_for_hits_options.rb +34 -19
- data/lib/algolia/models/search/search_hits.rb +26 -15
- data/lib/algolia/models/search/search_method_params.rb +34 -19
- data/lib/algolia/models/search/search_pagination.rb +282 -0
- data/lib/algolia/models/search/search_params.rb +33 -24
- data/lib/algolia/models/search/search_params_object.rb +208 -119
- data/lib/algolia/models/search/search_params_query.rb +33 -18
- data/lib/algolia/models/search/search_params_string.rb +33 -18
- data/lib/algolia/models/search/search_query.rb +33 -24
- data/lib/algolia/models/search/search_response.rb +154 -111
- data/lib/algolia/models/search/search_responses.rb +33 -18
- data/lib/algolia/models/search/search_result.rb +33 -24
- data/lib/algolia/models/search/search_rules_params.rb +45 -30
- data/lib/algolia/models/search/search_rules_response.rb +36 -21
- data/lib/algolia/models/search/search_strategy.rb +2 -3
- data/lib/algolia/models/search/search_synonyms_params.rb +41 -26
- data/lib/algolia/models/search/search_synonyms_response.rb +25 -14
- data/lib/algolia/models/search/search_type_default.rb +2 -3
- data/lib/algolia/models/search/search_type_facet.rb +2 -3
- data/lib/algolia/models/search/search_user_ids_params.rb +41 -26
- data/lib/algolia/models/search/search_user_ids_response.rb +42 -27
- data/lib/algolia/models/search/secured_api_key_restrictions.rb +38 -23
- data/lib/algolia/models/search/semantic_search.rb +35 -20
- data/lib/algolia/models/search/snippet_result.rb +34 -25
- data/lib/algolia/models/search/snippet_result_option.rb +34 -19
- data/lib/algolia/models/search/sort_remaining_by.rb +2 -3
- data/lib/algolia/models/search/source.rb +30 -18
- data/lib/algolia/models/search/standard_entries.rb +39 -24
- data/lib/algolia/models/search/supported_language.rb +72 -5
- data/lib/algolia/models/search/synonym_hit.rb +40 -25
- data/lib/algolia/models/search/synonym_type.rb +2 -3
- data/lib/algolia/models/search/tag_filters.rb +33 -24
- data/lib/algolia/models/search/task_status.rb +2 -3
- data/lib/algolia/models/search/time_range.rb +34 -19
- data/lib/algolia/models/search/typo_tolerance.rb +33 -24
- data/lib/algolia/models/search/typo_tolerance_enum.rb +2 -3
- data/lib/algolia/models/search/update_api_key_response.rb +34 -19
- data/lib/algolia/models/search/updated_at_response.rb +34 -19
- data/lib/algolia/models/search/updated_at_with_object_id_response.rb +35 -20
- data/lib/algolia/models/search/updated_rule_response.rb +35 -20
- data/lib/algolia/models/search/user_highlight_result.rb +34 -19
- data/lib/algolia/models/search/user_hit.rb +35 -23
- data/lib/algolia/models/search/user_id.rb +33 -21
- data/lib/algolia/models/search/value.rb +31 -19
- data/lib/algolia/models/usage/error_base.rb +24 -13
- data/lib/algolia/models/usage/get_usage200_response.rb +33 -18
- data/lib/algolia/models/usage/get_usage200_response_statistics_inner.rb +34 -19
- data/lib/algolia/models/usage/get_usage400_response.rb +33 -18
- data/lib/algolia/models/usage/get_usage400_response_error.rb +35 -20
- data/lib/algolia/models/usage/get_usage400_response_error_errors_inner.rb +36 -21
- data/lib/algolia/models/usage/granularity.rb +2 -3
- data/lib/algolia/models/usage/statistic.rb +88 -5
- data/lib/algolia/models/usage/statistic_value.rb +33 -24
- data/lib/algolia/transport/call_type.rb +1 -1
- data/lib/algolia/transport/echo_requester.rb +11 -2
- data/lib/algolia/transport/http/http_requester.rb +23 -15
- data/lib/algolia/transport/http/response.rb +8 -8
- data/lib/algolia/transport/request_options.rb +6 -4
- data/lib/algolia/transport/retry_outcome_type.rb +3 -3
- data/lib/algolia/transport/retry_strategy.rb +8 -7
- data/lib/algolia/transport/stateful_host.rb +6 -6
- data/lib/algolia/transport/transport.rb +28 -21
- data/lib/algolia/user_agent.rb +1 -1
- data/lib/algolia/version.rb +1 -1
- data/lib/algolia.rb +16 -16
- metadata +20 -13
- data/.rubocop.yml +0 -99
@@ -1,7 +1,7 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
@@ -24,31 +24,39 @@ module Algolia
|
|
24
24
|
# Attribute type mapping.
|
25
25
|
def self.types_mapping
|
26
26
|
{
|
27
|
-
:url => :String
|
27
|
+
:url => :"String"
|
28
28
|
}
|
29
29
|
end
|
30
30
|
|
31
31
|
# List of attributes with nullable: true
|
32
32
|
def self.openapi_nullable
|
33
|
-
Set.new(
|
33
|
+
Set.new(
|
34
|
+
[]
|
35
|
+
)
|
34
36
|
end
|
35
37
|
|
36
38
|
# Initializes the object
|
37
39
|
# @param [Hash] attributes Model attributes in the form of hash
|
38
40
|
def initialize(attributes = {})
|
39
|
-
|
40
|
-
raise
|
41
|
+
if (!attributes.is_a?(Hash))
|
42
|
+
raise(
|
43
|
+
ArgumentError,
|
44
|
+
"The input argument (attributes) must be a hash in `Algolia::RedirectURL` initialize method"
|
45
|
+
)
|
41
46
|
end
|
42
47
|
|
43
48
|
# check to see if the attribute exists and convert string to symbol for hash key
|
44
|
-
attributes = attributes.each_with_object({})
|
45
|
-
|
46
|
-
raise
|
47
|
-
|
49
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
50
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
51
|
+
raise(
|
52
|
+
ArgumentError,
|
53
|
+
"`#{k}` is not a valid attribute in `Algolia::RedirectURL`. Please check the name to make sure it's valid. List of attributes: " +
|
54
|
+
self.class.attribute_map.keys.inspect
|
55
|
+
)
|
48
56
|
end
|
49
57
|
|
50
58
|
h[k.to_sym] = v
|
51
|
-
|
59
|
+
}
|
52
60
|
|
53
61
|
if attributes.key?(:url)
|
54
62
|
self.url = attributes[:url]
|
@@ -58,8 +66,7 @@ module Algolia
|
|
58
66
|
# Checks equality by comparing each attribute.
|
59
67
|
# @param [Object] Object to be compared
|
60
68
|
def ==(other)
|
61
|
-
return true if equal?(other)
|
62
|
-
|
69
|
+
return true if self.equal?(other)
|
63
70
|
self.class == other.class &&
|
64
71
|
url == other.url
|
65
72
|
end
|
@@ -81,7 +88,6 @@ module Algolia
|
|
81
88
|
# @return [Object] Returns the model itself
|
82
89
|
def self.build_from_hash(attributes)
|
83
90
|
return nil unless attributes.is_a?(Hash)
|
84
|
-
|
85
91
|
attributes = attributes.transform_keys(&:to_sym)
|
86
92
|
transformed_hash = {}
|
87
93
|
types_mapping.each_pair do |key, type|
|
@@ -91,12 +97,15 @@ module Algolia
|
|
91
97
|
# check to ensure the input is an array given that the attribute
|
92
98
|
# is documented as an array but the input is not
|
93
99
|
if attributes[attribute_map[key]].is_a?(Array)
|
94
|
-
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
100
|
+
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
101
|
+
_deserialize(::Regexp.last_match(1), v)
|
102
|
+
}
|
95
103
|
end
|
96
104
|
elsif !attributes[attribute_map[key]].nil?
|
97
105
|
transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
|
98
106
|
end
|
99
107
|
end
|
108
|
+
|
100
109
|
new(transformed_hash)
|
101
110
|
end
|
102
111
|
|
@@ -122,6 +131,7 @@ module Algolia
|
|
122
131
|
else
|
123
132
|
false
|
124
133
|
end
|
134
|
+
|
125
135
|
when :Object
|
126
136
|
# generic object (usually a Hash), return directly
|
127
137
|
value
|
@@ -136,10 +146,12 @@ module Algolia
|
|
136
146
|
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
137
147
|
end
|
138
148
|
end
|
139
|
-
|
149
|
+
# model
|
150
|
+
else
|
140
151
|
# models (e.g. Pet) or oneOf
|
141
152
|
klass = Algolia::Recommend.const_get(type)
|
142
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
153
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
154
|
+
.build_from_hash(value)
|
143
155
|
end
|
144
156
|
end
|
145
157
|
|
@@ -172,6 +184,7 @@ module Algolia
|
|
172
184
|
|
173
185
|
hash[param] = _to_hash(value)
|
174
186
|
end
|
187
|
+
|
175
188
|
hash
|
176
189
|
end
|
177
190
|
|
@@ -186,12 +199,14 @@ module Algolia
|
|
186
199
|
{}.tap do |hash|
|
187
200
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
188
201
|
end
|
189
|
-
elsif value.respond_to?
|
202
|
+
elsif value.respond_to?(:to_hash)
|
190
203
|
value.to_hash
|
191
204
|
else
|
192
205
|
value
|
193
206
|
end
|
194
207
|
end
|
208
|
+
|
195
209
|
end
|
210
|
+
|
196
211
|
end
|
197
212
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
@@ -24,7 +24,6 @@ module Algolia
|
|
24
24
|
# @return [String] The enum value
|
25
25
|
def build_from_hash(value)
|
26
26
|
return value if RelatedModel.all_vars.include?(value)
|
27
|
-
|
28
27
|
raise "Invalid ENUM value #{value} for class #RelatedModel"
|
29
28
|
end
|
30
29
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
@@ -52,33 +52,41 @@ module Algolia
|
|
52
52
|
# Attribute type mapping.
|
53
53
|
def self.types_mapping
|
54
54
|
{
|
55
|
-
:model => :RelatedModel,
|
56
|
-
:object_id => :String,
|
57
|
-
:fallback_parameters => :FallbackParams
|
55
|
+
:model => :"RelatedModel",
|
56
|
+
:object_id => :"String",
|
57
|
+
:fallback_parameters => :"FallbackParams"
|
58
58
|
}
|
59
59
|
end
|
60
60
|
|
61
61
|
# List of attributes with nullable: true
|
62
62
|
def self.openapi_nullable
|
63
|
-
Set.new(
|
63
|
+
Set.new(
|
64
|
+
[]
|
65
|
+
)
|
64
66
|
end
|
65
67
|
|
66
68
|
# Initializes the object
|
67
69
|
# @param [Hash] attributes Model attributes in the form of hash
|
68
70
|
def initialize(attributes = {})
|
69
|
-
|
70
|
-
raise
|
71
|
+
if (!attributes.is_a?(Hash))
|
72
|
+
raise(
|
73
|
+
ArgumentError,
|
74
|
+
"The input argument (attributes) must be a hash in `Algolia::RelatedProducts` initialize method"
|
75
|
+
)
|
71
76
|
end
|
72
77
|
|
73
78
|
# check to see if the attribute exists and convert string to symbol for hash key
|
74
|
-
attributes = attributes.each_with_object({})
|
75
|
-
|
76
|
-
raise
|
77
|
-
|
79
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
80
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
81
|
+
raise(
|
82
|
+
ArgumentError,
|
83
|
+
"`#{k}` is not a valid attribute in `Algolia::RelatedProducts`. Please check the name to make sure it's valid. List of attributes: " +
|
84
|
+
self.class.attribute_map.keys.inspect
|
85
|
+
)
|
78
86
|
end
|
79
87
|
|
80
88
|
h[k.to_sym] = v
|
81
|
-
|
89
|
+
}
|
82
90
|
|
83
91
|
if attributes.key?(:model)
|
84
92
|
self.model = attributes[:model]
|
@@ -100,8 +108,7 @@ module Algolia
|
|
100
108
|
# Checks equality by comparing each attribute.
|
101
109
|
# @param [Object] Object to be compared
|
102
110
|
def ==(other)
|
103
|
-
return true if equal?(other)
|
104
|
-
|
111
|
+
return true if self.equal?(other)
|
105
112
|
self.class == other.class &&
|
106
113
|
model == other.model &&
|
107
114
|
object_id == other.object_id &&
|
@@ -125,7 +132,6 @@ module Algolia
|
|
125
132
|
# @return [Object] Returns the model itself
|
126
133
|
def self.build_from_hash(attributes)
|
127
134
|
return nil unless attributes.is_a?(Hash)
|
128
|
-
|
129
135
|
attributes = attributes.transform_keys(&:to_sym)
|
130
136
|
transformed_hash = {}
|
131
137
|
types_mapping.each_pair do |key, type|
|
@@ -135,12 +141,15 @@ module Algolia
|
|
135
141
|
# check to ensure the input is an array given that the attribute
|
136
142
|
# is documented as an array but the input is not
|
137
143
|
if attributes[attribute_map[key]].is_a?(Array)
|
138
|
-
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
144
|
+
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
145
|
+
_deserialize(::Regexp.last_match(1), v)
|
146
|
+
}
|
139
147
|
end
|
140
148
|
elsif !attributes[attribute_map[key]].nil?
|
141
149
|
transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
|
142
150
|
end
|
143
151
|
end
|
152
|
+
|
144
153
|
new(transformed_hash)
|
145
154
|
end
|
146
155
|
|
@@ -166,6 +175,7 @@ module Algolia
|
|
166
175
|
else
|
167
176
|
false
|
168
177
|
end
|
178
|
+
|
169
179
|
when :Object
|
170
180
|
# generic object (usually a Hash), return directly
|
171
181
|
value
|
@@ -180,10 +190,12 @@ module Algolia
|
|
180
190
|
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
181
191
|
end
|
182
192
|
end
|
183
|
-
|
193
|
+
# model
|
194
|
+
else
|
184
195
|
# models (e.g. Pet) or oneOf
|
185
196
|
klass = Algolia::Recommend.const_get(type)
|
186
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
197
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
198
|
+
.build_from_hash(value)
|
187
199
|
end
|
188
200
|
end
|
189
201
|
|
@@ -216,6 +228,7 @@ module Algolia
|
|
216
228
|
|
217
229
|
hash[param] = _to_hash(value)
|
218
230
|
end
|
231
|
+
|
219
232
|
hash
|
220
233
|
end
|
221
234
|
|
@@ -230,12 +243,14 @@ module Algolia
|
|
230
243
|
{}.tap do |hash|
|
231
244
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
232
245
|
end
|
233
|
-
elsif value.respond_to?
|
246
|
+
elsif value.respond_to?(:to_hash)
|
234
247
|
value.to_hash
|
235
248
|
else
|
236
249
|
value
|
237
250
|
end
|
238
251
|
end
|
252
|
+
|
239
253
|
end
|
254
|
+
|
240
255
|
end
|
241
256
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
@@ -67,45 +67,53 @@ module Algolia
|
|
67
67
|
# Attribute type mapping.
|
68
68
|
def self.types_mapping
|
69
69
|
{
|
70
|
-
:index_name => :String,
|
71
|
-
:threshold => :Float,
|
72
|
-
:max_recommendations => :Integer,
|
73
|
-
:query_parameters => :SearchParams,
|
74
|
-
:model => :RelatedModel,
|
75
|
-
:object_id => :String,
|
76
|
-
:fallback_parameters => :FallbackParams
|
70
|
+
:index_name => :"String",
|
71
|
+
:threshold => :"Float",
|
72
|
+
:max_recommendations => :"Integer",
|
73
|
+
:query_parameters => :"SearchParams",
|
74
|
+
:model => :"RelatedModel",
|
75
|
+
:object_id => :"String",
|
76
|
+
:fallback_parameters => :"FallbackParams"
|
77
77
|
}
|
78
78
|
end
|
79
79
|
|
80
80
|
# List of attributes with nullable: true
|
81
81
|
def self.openapi_nullable
|
82
|
-
Set.new(
|
82
|
+
Set.new(
|
83
|
+
[]
|
84
|
+
)
|
83
85
|
end
|
84
86
|
|
85
87
|
# List of class defined in allOf (OpenAPI v3)
|
86
88
|
def self.openapi_all_of
|
87
89
|
[
|
88
|
-
:BaseRecommendRequest,
|
89
|
-
:RelatedProducts
|
90
|
+
:"BaseRecommendRequest",
|
91
|
+
:"RelatedProducts"
|
90
92
|
]
|
91
93
|
end
|
92
94
|
|
93
95
|
# Initializes the object
|
94
96
|
# @param [Hash] attributes Model attributes in the form of hash
|
95
97
|
def initialize(attributes = {})
|
96
|
-
|
97
|
-
raise
|
98
|
+
if (!attributes.is_a?(Hash))
|
99
|
+
raise(
|
100
|
+
ArgumentError,
|
101
|
+
"The input argument (attributes) must be a hash in `Algolia::RelatedQuery` initialize method"
|
102
|
+
)
|
98
103
|
end
|
99
104
|
|
100
105
|
# check to see if the attribute exists and convert string to symbol for hash key
|
101
|
-
attributes = attributes.each_with_object({})
|
102
|
-
|
103
|
-
raise
|
104
|
-
|
106
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
107
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
108
|
+
raise(
|
109
|
+
ArgumentError,
|
110
|
+
"`#{k}` is not a valid attribute in `Algolia::RelatedQuery`. Please check the name to make sure it's valid. List of attributes: " +
|
111
|
+
self.class.attribute_map.keys.inspect
|
112
|
+
)
|
105
113
|
end
|
106
114
|
|
107
115
|
h[k.to_sym] = v
|
108
|
-
|
116
|
+
}
|
109
117
|
|
110
118
|
if attributes.key?(:index_name)
|
111
119
|
self.index_name = attributes[:index_name]
|
@@ -148,15 +156,15 @@ module Algolia
|
|
148
156
|
# @param [Object] threshold Value to be assigned
|
149
157
|
def threshold=(threshold)
|
150
158
|
if threshold.nil?
|
151
|
-
raise ArgumentError,
|
159
|
+
raise ArgumentError, "threshold cannot be nil"
|
152
160
|
end
|
153
161
|
|
154
162
|
if threshold > 100
|
155
|
-
raise ArgumentError,
|
163
|
+
raise ArgumentError, "invalid value for \"threshold\", must be smaller than or equal to 100."
|
156
164
|
end
|
157
165
|
|
158
166
|
if threshold < 0
|
159
|
-
raise ArgumentError,
|
167
|
+
raise ArgumentError, "invalid value for \"threshold\", must be greater than or equal to 0."
|
160
168
|
end
|
161
169
|
|
162
170
|
@threshold = threshold
|
@@ -166,15 +174,15 @@ module Algolia
|
|
166
174
|
# @param [Object] max_recommendations Value to be assigned
|
167
175
|
def max_recommendations=(max_recommendations)
|
168
176
|
if max_recommendations.nil?
|
169
|
-
raise ArgumentError,
|
177
|
+
raise ArgumentError, "max_recommendations cannot be nil"
|
170
178
|
end
|
171
179
|
|
172
180
|
if max_recommendations > 1000
|
173
|
-
raise ArgumentError,
|
181
|
+
raise ArgumentError, "invalid value for \"max_recommendations\", must be smaller than or equal to 1000."
|
174
182
|
end
|
175
183
|
|
176
184
|
if max_recommendations < 1
|
177
|
-
raise ArgumentError,
|
185
|
+
raise ArgumentError, "invalid value for \"max_recommendations\", must be greater than or equal to 1."
|
178
186
|
end
|
179
187
|
|
180
188
|
@max_recommendations = max_recommendations
|
@@ -183,8 +191,7 @@ module Algolia
|
|
183
191
|
# Checks equality by comparing each attribute.
|
184
192
|
# @param [Object] Object to be compared
|
185
193
|
def ==(other)
|
186
|
-
return true if equal?(other)
|
187
|
-
|
194
|
+
return true if self.equal?(other)
|
188
195
|
self.class == other.class &&
|
189
196
|
index_name == other.index_name &&
|
190
197
|
threshold == other.threshold &&
|
@@ -212,7 +219,6 @@ module Algolia
|
|
212
219
|
# @return [Object] Returns the model itself
|
213
220
|
def self.build_from_hash(attributes)
|
214
221
|
return nil unless attributes.is_a?(Hash)
|
215
|
-
|
216
222
|
attributes = attributes.transform_keys(&:to_sym)
|
217
223
|
transformed_hash = {}
|
218
224
|
types_mapping.each_pair do |key, type|
|
@@ -222,12 +228,15 @@ module Algolia
|
|
222
228
|
# check to ensure the input is an array given that the attribute
|
223
229
|
# is documented as an array but the input is not
|
224
230
|
if attributes[attribute_map[key]].is_a?(Array)
|
225
|
-
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
231
|
+
transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
|
232
|
+
_deserialize(::Regexp.last_match(1), v)
|
233
|
+
}
|
226
234
|
end
|
227
235
|
elsif !attributes[attribute_map[key]].nil?
|
228
236
|
transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
|
229
237
|
end
|
230
238
|
end
|
239
|
+
|
231
240
|
new(transformed_hash)
|
232
241
|
end
|
233
242
|
|
@@ -253,6 +262,7 @@ module Algolia
|
|
253
262
|
else
|
254
263
|
false
|
255
264
|
end
|
265
|
+
|
256
266
|
when :Object
|
257
267
|
# generic object (usually a Hash), return directly
|
258
268
|
value
|
@@ -267,10 +277,12 @@ module Algolia
|
|
267
277
|
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
268
278
|
end
|
269
279
|
end
|
270
|
-
|
280
|
+
# model
|
281
|
+
else
|
271
282
|
# models (e.g. Pet) or oneOf
|
272
283
|
klass = Algolia::Recommend.const_get(type)
|
273
|
-
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
284
|
+
klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
|
285
|
+
.build_from_hash(value)
|
274
286
|
end
|
275
287
|
end
|
276
288
|
|
@@ -303,6 +315,7 @@ module Algolia
|
|
303
315
|
|
304
316
|
hash[param] = _to_hash(value)
|
305
317
|
end
|
318
|
+
|
306
319
|
hash
|
307
320
|
end
|
308
321
|
|
@@ -317,12 +330,14 @@ module Algolia
|
|
317
330
|
{}.tap do |hash|
|
318
331
|
value.each { |k, v| hash[k] = _to_hash(v) }
|
319
332
|
end
|
320
|
-
elsif value.respond_to?
|
333
|
+
elsif value.respond_to?(:to_hash)
|
321
334
|
value.to_hash
|
322
335
|
else
|
323
336
|
value
|
324
337
|
end
|
325
338
|
end
|
339
|
+
|
326
340
|
end
|
341
|
+
|
327
342
|
end
|
328
343
|
end
|
@@ -1,18 +1,18 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
8
8
|
# Removes stop words from the search query. Stop words are common words like articles, conjunctions, prepositions, or pronouns that have little or no meaning on their own. In English, \"the\", \"a\", or \"and\" are stop words. You should only use this feature for the languages used in your index.
|
9
9
|
module RemoveStopWords
|
10
10
|
class << self
|
11
|
-
|
11
|
+
# List of class defined in oneOf (OpenAPI v3)
|
12
12
|
def openapi_one_of
|
13
13
|
[
|
14
|
-
:
|
15
|
-
:Boolean
|
14
|
+
:"Array<SupportedLanguage>",
|
15
|
+
:"Boolean"
|
16
16
|
]
|
17
17
|
end
|
18
18
|
|
@@ -28,11 +28,14 @@ module Algolia
|
|
28
28
|
# - TODO: scalar values are de facto behaving as if they were nullable.
|
29
29
|
# - TODO: logging when debugging is set.
|
30
30
|
openapi_one_of.each do |klass|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
begin
|
32
|
+
# "nullable: true"
|
33
|
+
next if klass == :AnyType
|
34
|
+
typed_data = find_and_cast_into_type(klass, data)
|
35
|
+
return typed_data if typed_data
|
36
|
+
# rescue all errors so we keep iterating even if the current item lookup raises
|
37
|
+
rescue
|
38
|
+
end
|
36
39
|
end
|
37
40
|
|
38
41
|
openapi_one_of.include?(:AnyType) ? data : nil
|
@@ -42,44 +45,48 @@ module Algolia
|
|
42
45
|
|
43
46
|
SchemaMismatchError = Class.new(StandardError)
|
44
47
|
|
45
|
-
#
|
48
|
+
# Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
|
46
49
|
def find_and_cast_into_type(klass, data)
|
47
50
|
return if data.nil?
|
48
51
|
|
49
52
|
case klass.to_s
|
50
|
-
when
|
53
|
+
when "Boolean"
|
51
54
|
return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
|
52
|
-
when
|
55
|
+
when "Float"
|
53
56
|
return data if data.instance_of?(Float)
|
54
|
-
when
|
57
|
+
when "Integer"
|
55
58
|
return data if data.instance_of?(Integer)
|
56
|
-
when
|
59
|
+
when "Time"
|
57
60
|
return Time.parse(data)
|
58
|
-
when
|
61
|
+
when "Date"
|
59
62
|
return Date.parse(data)
|
60
|
-
when
|
63
|
+
when "String"
|
61
64
|
return data if data.instance_of?(String)
|
62
|
-
|
65
|
+
# "type: object"
|
66
|
+
when "Object"
|
63
67
|
return data if data.instance_of?(Hash)
|
64
|
-
|
68
|
+
# "type: array"
|
69
|
+
when /\AArray<(?<sub_type>.+)>\z/
|
65
70
|
if data.instance_of?(Array)
|
66
71
|
sub_type = Regexp.last_match[:sub_type]
|
67
72
|
return data.map { |item| find_and_cast_into_type(sub_type, item) }
|
68
73
|
end
|
69
|
-
|
74
|
+
# "type: object" with "additionalProperties: { ... }"
|
75
|
+
when /\AHash<String, (?<sub_type>.+)>\z/
|
70
76
|
if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
|
71
77
|
sub_type = Regexp.last_match[:sub_type]
|
72
78
|
return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
|
73
79
|
end
|
74
|
-
|
80
|
+
# model
|
81
|
+
else
|
75
82
|
const = Algolia::Recommend.const_get(klass)
|
76
83
|
if const
|
77
|
-
|
84
|
+
# nested oneOf model
|
85
|
+
if const.respond_to?(:openapi_one_of)
|
78
86
|
model = const.build(data)
|
79
87
|
else
|
80
88
|
# raise if data contains keys that are not known to the model
|
81
89
|
raise unless (data.keys - const.acceptable_attributes).empty?
|
82
|
-
|
83
90
|
model = const.build_from_hash(data)
|
84
91
|
end
|
85
92
|
|
@@ -87,11 +94,13 @@ module Algolia
|
|
87
94
|
end
|
88
95
|
end
|
89
96
|
|
90
|
-
|
97
|
+
# if no match by now, raise
|
98
|
+
raise
|
91
99
|
rescue
|
92
100
|
raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
|
93
101
|
end
|
94
102
|
end
|
95
103
|
end
|
104
|
+
|
96
105
|
end
|
97
106
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# 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
2
|
|
3
|
-
require
|
4
|
-
require
|
3
|
+
require "date"
|
4
|
+
require "time"
|
5
5
|
|
6
6
|
module Algolia
|
7
7
|
module Recommend
|
@@ -27,7 +27,6 @@ module Algolia
|
|
27
27
|
# @return [String] The enum value
|
28
28
|
def build_from_hash(value)
|
29
29
|
return value if RemoveWordsIfNoResults.all_vars.include?(value)
|
30
|
-
|
31
30
|
raise "Invalid ENUM value #{value} for class #RemoveWordsIfNoResults"
|
32
31
|
end
|
33
32
|
end
|