algolia 3.0.0.beta.8 → 3.0.0.beta.9

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.
Files changed (586) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release.yml +2 -0
  3. data/CHANGELOG.md +8 -0
  4. data/Gemfile.lock +3 -30
  5. data/Rakefile +0 -2
  6. data/algolia.gemspec +1 -1
  7. data/lib/algolia/api/abtesting_client.rb +52 -37
  8. data/lib/algolia/api/analytics_client.rb +415 -116
  9. data/lib/algolia/api/ingestion_client.rb +462 -182
  10. data/lib/algolia/api/insights_client.rb +45 -28
  11. data/lib/algolia/api/monitoring_client.rb +50 -44
  12. data/lib/algolia/api/personalization_client.rb +57 -32
  13. data/lib/algolia/api/query_suggestions_client.rb +59 -40
  14. data/lib/algolia/api/recommend_client.rb +70 -43
  15. data/lib/algolia/api/search_client.rb +461 -264
  16. data/lib/algolia/api/usage_client.rb +48 -28
  17. data/lib/algolia/api_client.rb +25 -24
  18. data/lib/algolia/api_error.rb +8 -8
  19. data/lib/algolia/configuration.rb +17 -6
  20. data/lib/algolia/error.rb +2 -2
  21. data/lib/algolia/logger_helper.rb +4 -4
  22. data/lib/algolia/models/abtesting/ab_test.rb +62 -37
  23. data/lib/algolia/models/abtesting/ab_test_configuration.rb +35 -20
  24. data/lib/algolia/models/abtesting/ab_test_response.rb +35 -20
  25. data/lib/algolia/models/abtesting/ab_tests_variant.rb +38 -23
  26. data/lib/algolia/models/abtesting/ab_tests_variant_search_params.rb +41 -26
  27. data/lib/algolia/models/abtesting/add_ab_tests_request.rb +38 -23
  28. data/lib/algolia/models/abtesting/add_ab_tests_variant.rb +33 -24
  29. data/lib/algolia/models/abtesting/currency.rb +32 -20
  30. data/lib/algolia/models/abtesting/custom_search_params.rb +33 -18
  31. data/lib/algolia/models/abtesting/effect.rb +2 -3
  32. data/lib/algolia/models/abtesting/empty_search.rb +33 -18
  33. data/lib/algolia/models/abtesting/error_base.rb +24 -13
  34. data/lib/algolia/models/abtesting/filter_effects.rb +34 -19
  35. data/lib/algolia/models/abtesting/filter_effects_empty_search.rb +34 -19
  36. data/lib/algolia/models/abtesting/filter_effects_outliers.rb +34 -19
  37. data/lib/algolia/models/abtesting/list_ab_tests_response.rb +37 -22
  38. data/lib/algolia/models/abtesting/minimum_detectable_effect.rb +37 -22
  39. data/lib/algolia/models/abtesting/outliers.rb +29 -17
  40. data/lib/algolia/models/abtesting/status.rb +2 -3
  41. data/lib/algolia/models/abtesting/variant.rb +83 -51
  42. data/lib/algolia/models/analytics/click_positions_inner.rb +39 -24
  43. data/lib/algolia/models/analytics/currencies_value.rb +34 -19
  44. data/lib/algolia/models/analytics/daily_add_to_cart_rates.rb +42 -27
  45. data/lib/algolia/models/analytics/daily_average_clicks.rb +40 -25
  46. data/lib/algolia/models/analytics/daily_click_through_rates.rb +42 -27
  47. data/lib/algolia/models/analytics/daily_conversion_rates.rb +42 -27
  48. data/lib/algolia/models/analytics/daily_no_click_rates.rb +41 -26
  49. data/lib/algolia/models/analytics/daily_no_results_rates.rb +39 -24
  50. data/lib/algolia/models/analytics/daily_purchase_rates.rb +40 -25
  51. data/lib/algolia/models/analytics/daily_revenue.rb +34 -19
  52. data/lib/algolia/models/analytics/daily_searches.rb +34 -19
  53. data/lib/algolia/models/analytics/daily_searches_no_clicks.rb +37 -22
  54. data/lib/algolia/models/analytics/daily_searches_no_results.rb +37 -22
  55. data/lib/algolia/models/analytics/daily_users.rb +34 -19
  56. data/lib/algolia/models/analytics/direction.rb +2 -3
  57. data/lib/algolia/models/analytics/error_base.rb +24 -13
  58. data/lib/algolia/models/analytics/get_add_to_cart_rate_response.rb +42 -27
  59. data/lib/algolia/models/analytics/get_average_click_position_response.rb +40 -25
  60. data/lib/algolia/models/analytics/get_click_positions_response.rb +36 -21
  61. data/lib/algolia/models/analytics/get_click_through_rate_response.rb +42 -27
  62. data/lib/algolia/models/analytics/get_conversion_rate_response.rb +42 -27
  63. data/lib/algolia/models/analytics/get_no_click_rate_response.rb +41 -26
  64. data/lib/algolia/models/analytics/get_no_results_rate_response.rb +39 -24
  65. data/lib/algolia/models/analytics/get_purchase_rate_response.rb +40 -25
  66. data/lib/algolia/models/analytics/get_revenue.rb +34 -19
  67. data/lib/algolia/models/analytics/get_searches_count_response.rb +34 -19
  68. data/lib/algolia/models/analytics/get_searches_no_clicks_response.rb +33 -18
  69. data/lib/algolia/models/analytics/get_searches_no_results_response.rb +33 -18
  70. data/lib/algolia/models/analytics/get_status_response.rb +35 -20
  71. data/lib/algolia/models/analytics/get_top_countries_response.rb +33 -18
  72. data/lib/algolia/models/analytics/get_top_filter_attribute.rb +34 -19
  73. data/lib/algolia/models/analytics/get_top_filter_attributes_response.rb +33 -18
  74. data/lib/algolia/models/analytics/get_top_filter_for_attribute.rb +36 -21
  75. data/lib/algolia/models/analytics/get_top_filter_for_attribute_response.rb +33 -18
  76. data/lib/algolia/models/analytics/get_top_filters_no_results_response.rb +35 -20
  77. data/lib/algolia/models/analytics/get_top_filters_no_results_value.rb +35 -20
  78. data/lib/algolia/models/analytics/get_top_filters_no_results_values.rb +34 -19
  79. data/lib/algolia/models/analytics/get_top_hits_response.rb +34 -25
  80. data/lib/algolia/models/analytics/get_top_searches_response.rb +34 -25
  81. data/lib/algolia/models/analytics/get_users_count_response.rb +34 -19
  82. data/lib/algolia/models/analytics/operator.rb +2 -3
  83. data/lib/algolia/models/analytics/order_by.rb +2 -3
  84. data/lib/algolia/models/analytics/top_country.rb +34 -19
  85. data/lib/algolia/models/analytics/top_hit.rb +30 -18
  86. data/lib/algolia/models/analytics/top_hit_with_analytics.rb +50 -35
  87. data/lib/algolia/models/analytics/top_hit_with_revenue_analytics.rb +77 -50
  88. data/lib/algolia/models/analytics/top_hits_response.rb +33 -18
  89. data/lib/algolia/models/analytics/top_hits_response_with_analytics.rb +33 -18
  90. data/lib/algolia/models/analytics/top_hits_response_with_revenue_analytics.rb +33 -18
  91. data/lib/algolia/models/analytics/top_search.rb +35 -20
  92. data/lib/algolia/models/analytics/top_search_with_analytics.rb +76 -44
  93. data/lib/algolia/models/analytics/top_search_with_revenue_analytics.rb +94 -58
  94. data/lib/algolia/models/analytics/top_searches_response.rb +33 -18
  95. data/lib/algolia/models/analytics/top_searches_response_with_analytics.rb +33 -18
  96. data/lib/algolia/models/analytics/top_searches_response_with_revenue_analytics.rb +33 -18
  97. data/lib/algolia/models/ingestion/action_type.rb +2 -3
  98. data/lib/algolia/models/ingestion/auth_algolia.rb +34 -19
  99. data/lib/algolia/models/ingestion/auth_algolia_insights.rb +34 -19
  100. data/lib/algolia/models/ingestion/auth_algolia_insights_partial.rb +34 -19
  101. data/lib/algolia/models/ingestion/auth_algolia_partial.rb +34 -19
  102. data/lib/algolia/models/ingestion/auth_api_key.rb +33 -18
  103. data/lib/algolia/models/ingestion/auth_api_key_partial.rb +33 -18
  104. data/lib/algolia/models/ingestion/auth_basic.rb +34 -19
  105. data/lib/algolia/models/ingestion/auth_basic_partial.rb +34 -19
  106. data/lib/algolia/models/ingestion/auth_google_service_account.rb +34 -19
  107. data/lib/algolia/models/ingestion/auth_google_service_account_partial.rb +34 -19
  108. data/lib/algolia/models/ingestion/auth_input.rb +37 -28
  109. data/lib/algolia/models/ingestion/auth_input_partial.rb +37 -28
  110. data/lib/algolia/models/ingestion/auth_o_auth.rb +36 -21
  111. data/lib/algolia/models/ingestion/auth_o_auth_partial.rb +36 -21
  112. data/lib/algolia/models/ingestion/authentication.rb +41 -26
  113. data/lib/algolia/models/ingestion/authentication_create.rb +38 -23
  114. data/lib/algolia/models/ingestion/authentication_create_response.rb +35 -20
  115. data/lib/algolia/models/ingestion/authentication_search.rb +33 -18
  116. data/lib/algolia/models/ingestion/authentication_sort_keys.rb +2 -3
  117. data/lib/algolia/models/ingestion/authentication_type.rb +2 -3
  118. data/lib/algolia/models/ingestion/authentication_update.rb +38 -23
  119. data/lib/algolia/models/ingestion/authentication_update_response.rb +35 -20
  120. data/lib/algolia/models/ingestion/big_commerce_channel.rb +34 -19
  121. data/lib/algolia/models/ingestion/big_commerce_metafield.rb +34 -19
  122. data/lib/algolia/models/ingestion/big_query_data_type.rb +2 -3
  123. data/lib/algolia/models/ingestion/commercetools_custom_fields.rb +39 -24
  124. data/lib/algolia/models/ingestion/delete_response.rb +33 -18
  125. data/lib/algolia/models/ingestion/destination.rb +39 -24
  126. data/lib/algolia/models/ingestion/destination_create.rb +36 -21
  127. data/lib/algolia/models/ingestion/destination_create_response.rb +35 -20
  128. data/lib/algolia/models/ingestion/destination_index_name.rb +35 -20
  129. data/lib/algolia/models/ingestion/destination_index_prefix.rb +33 -18
  130. data/lib/algolia/models/ingestion/destination_input.rb +33 -24
  131. data/lib/algolia/models/ingestion/destination_search.rb +33 -18
  132. data/lib/algolia/models/ingestion/destination_sort_keys.rb +2 -3
  133. data/lib/algolia/models/ingestion/destination_type.rb +2 -3
  134. data/lib/algolia/models/ingestion/destination_update.rb +36 -21
  135. data/lib/algolia/models/ingestion/destination_update_response.rb +35 -20
  136. data/lib/algolia/models/ingestion/docker_image_type.rb +2 -3
  137. data/lib/algolia/models/ingestion/docker_registry.rb +2 -3
  138. data/lib/algolia/models/ingestion/{on_demand_date_utils_input.rb → docker_streams_input.rb} +41 -49
  139. data/lib/algolia/models/ingestion/error_base.rb +24 -13
  140. data/lib/algolia/models/ingestion/event.rb +38 -26
  141. data/lib/algolia/models/ingestion/event_sort_keys.rb +2 -3
  142. data/lib/algolia/models/ingestion/event_status.rb +2 -3
  143. data/lib/algolia/models/ingestion/event_type.rb +2 -3
  144. data/lib/algolia/models/ingestion/list_authentications_response.rb +34 -19
  145. data/lib/algolia/models/ingestion/list_destinations_response.rb +34 -19
  146. data/lib/algolia/models/ingestion/list_events_response.rb +35 -20
  147. data/lib/algolia/models/ingestion/list_sources_response.rb +34 -19
  148. data/lib/algolia/models/ingestion/list_tasks_response.rb +34 -19
  149. data/lib/algolia/models/ingestion/list_transformations_response.rb +34 -19
  150. data/lib/algolia/models/ingestion/mapping_field_directive.rb +34 -19
  151. data/lib/algolia/models/ingestion/mapping_format_schema.rb +2 -3
  152. data/lib/algolia/models/ingestion/mapping_input.rb +34 -19
  153. data/lib/algolia/models/ingestion/mapping_kit_action.rb +36 -21
  154. data/lib/algolia/models/ingestion/mapping_type_csv.rb +2 -3
  155. data/lib/algolia/models/ingestion/method_type.rb +2 -3
  156. data/lib/algolia/models/ingestion/on_demand_trigger.rb +34 -19
  157. data/lib/algolia/models/ingestion/on_demand_trigger_input.rb +33 -18
  158. data/lib/algolia/models/ingestion/on_demand_trigger_type.rb +2 -3
  159. data/lib/algolia/models/ingestion/order_keys.rb +2 -3
  160. data/lib/algolia/models/ingestion/pagination.rb +45 -30
  161. data/lib/algolia/models/ingestion/platform.rb +2 -3
  162. data/lib/algolia/models/ingestion/platform_none.rb +2 -3
  163. data/lib/algolia/models/ingestion/platform_with_none.rb +33 -24
  164. data/lib/algolia/models/ingestion/record_type.rb +2 -3
  165. data/lib/algolia/models/ingestion/run.rb +59 -33
  166. data/lib/algolia/models/ingestion/run_list_response.rb +35 -20
  167. data/lib/algolia/models/ingestion/run_outcome.rb +2 -3
  168. data/lib/algolia/models/ingestion/run_progress.rb +34 -19
  169. data/lib/algolia/models/ingestion/run_reason_code.rb +2 -3
  170. data/lib/algolia/models/ingestion/run_response.rb +34 -19
  171. data/lib/algolia/models/ingestion/run_sort_keys.rb +2 -3
  172. data/lib/algolia/models/ingestion/run_status.rb +2 -3
  173. data/lib/algolia/models/ingestion/run_type.rb +2 -3
  174. data/lib/algolia/models/ingestion/schedule_trigger.rb +36 -21
  175. data/lib/algolia/models/ingestion/schedule_trigger_input.rb +34 -19
  176. data/lib/algolia/models/ingestion/schedule_trigger_type.rb +2 -3
  177. data/lib/algolia/models/ingestion/shopify_input.rb +34 -19
  178. data/lib/algolia/models/ingestion/shopify_market.rb +35 -20
  179. data/lib/algolia/models/ingestion/shopify_metafield.rb +35 -20
  180. data/lib/algolia/models/ingestion/sort_keys.rb +2 -3
  181. data/lib/algolia/models/ingestion/source.rb +35 -23
  182. data/lib/algolia/models/ingestion/source_big_commerce.rb +37 -22
  183. data/lib/algolia/models/ingestion/source_big_query.rb +39 -24
  184. data/lib/algolia/models/ingestion/source_commercetools.rb +38 -23
  185. data/lib/algolia/models/ingestion/source_create.rb +36 -21
  186. data/lib/algolia/models/ingestion/source_create_response.rb +35 -20
  187. data/lib/algolia/models/ingestion/source_csv.rb +43 -25
  188. data/lib/algolia/models/ingestion/source_docker.rb +37 -22
  189. data/lib/algolia/models/ingestion/source_ga4_big_query_export.rb +35 -20
  190. data/lib/algolia/models/ingestion/source_input.rb +39 -30
  191. data/lib/algolia/models/ingestion/source_json.rb +35 -20
  192. data/lib/algolia/models/ingestion/source_search.rb +33 -18
  193. data/lib/algolia/models/ingestion/source_shopify.rb +52 -29
  194. data/lib/algolia/models/ingestion/source_shopify_base.rb +33 -18
  195. data/lib/algolia/models/ingestion/source_sort_keys.rb +2 -3
  196. data/lib/algolia/models/ingestion/source_type.rb +2 -3
  197. data/lib/algolia/models/ingestion/source_update.rb +35 -20
  198. data/lib/algolia/models/ingestion/source_update_commercetools.rb +37 -22
  199. data/lib/algolia/models/ingestion/source_update_docker.rb +36 -21
  200. data/lib/algolia/models/ingestion/source_update_input.rb +38 -29
  201. data/lib/algolia/models/ingestion/source_update_response.rb +35 -20
  202. data/lib/algolia/models/ingestion/source_update_shopify.rb +48 -26
  203. data/lib/algolia/models/ingestion/source_watch_response.rb +36 -21
  204. data/lib/algolia/models/ingestion/{streaming_utils_input.rb → streaming_input.rb} +34 -19
  205. data/lib/algolia/models/ingestion/streaming_trigger.rb +33 -18
  206. data/lib/algolia/models/ingestion/streaming_trigger_type.rb +2 -3
  207. data/lib/algolia/models/ingestion/subscription_trigger.rb +33 -18
  208. data/lib/algolia/models/ingestion/subscription_trigger_type.rb +2 -3
  209. data/lib/algolia/models/ingestion/task.rb +55 -31
  210. data/lib/algolia/models/ingestion/task_create.rb +43 -28
  211. data/lib/algolia/models/ingestion/task_create_response.rb +34 -19
  212. data/lib/algolia/models/ingestion/task_create_trigger.rb +35 -26
  213. data/lib/algolia/models/ingestion/task_input.rb +34 -26
  214. data/lib/algolia/models/ingestion/task_search.rb +33 -18
  215. data/lib/algolia/models/ingestion/task_sort_keys.rb +2 -3
  216. data/lib/algolia/models/ingestion/task_update.rb +40 -25
  217. data/lib/algolia/models/ingestion/task_update_response.rb +34 -19
  218. data/lib/algolia/models/ingestion/transformation.rb +38 -25
  219. data/lib/algolia/models/ingestion/transformation_create.rb +35 -22
  220. data/lib/algolia/models/ingestion/transformation_create_response.rb +34 -19
  221. data/lib/algolia/models/ingestion/transformation_search.rb +33 -18
  222. data/lib/algolia/models/ingestion/transformation_try.rb +34 -19
  223. data/lib/algolia/models/ingestion/transformation_try_response.rb +34 -19
  224. data/lib/algolia/models/ingestion/transformation_try_response_error.rb +34 -19
  225. data/lib/algolia/models/ingestion/transformation_update_response.rb +34 -19
  226. data/lib/algolia/models/ingestion/trigger.rb +35 -26
  227. data/lib/algolia/models/ingestion/trigger_type.rb +2 -3
  228. data/lib/algolia/models/ingestion/trigger_update_input.rb +33 -18
  229. data/lib/algolia/models/ingestion/window.rb +30 -18
  230. data/lib/algolia/models/insights/add_to_cart_event.rb +2 -3
  231. data/lib/algolia/models/insights/added_to_cart_object_ids.rb +91 -46
  232. data/lib/algolia/models/insights/added_to_cart_object_ids_after_search.rb +99 -50
  233. data/lib/algolia/models/insights/click_event.rb +2 -3
  234. data/lib/algolia/models/insights/clicked_filters.rb +71 -38
  235. data/lib/algolia/models/insights/clicked_object_ids.rb +71 -38
  236. data/lib/algolia/models/insights/clicked_object_ids_after_search.rb +93 -47
  237. data/lib/algolia/models/insights/conversion_event.rb +2 -3
  238. data/lib/algolia/models/insights/converted_filters.rb +71 -38
  239. data/lib/algolia/models/insights/converted_object_ids.rb +71 -38
  240. data/lib/algolia/models/insights/converted_object_ids_after_search.rb +78 -42
  241. data/lib/algolia/models/insights/discount.rb +33 -24
  242. data/lib/algolia/models/insights/error_base.rb +24 -13
  243. data/lib/algolia/models/insights/events_items.rb +43 -34
  244. data/lib/algolia/models/insights/events_response.rb +34 -19
  245. data/lib/algolia/models/insights/insights_events.rb +36 -21
  246. data/lib/algolia/models/insights/object_data.rb +35 -20
  247. data/lib/algolia/models/insights/object_data_after_search.rb +42 -24
  248. data/lib/algolia/models/insights/price.rb +33 -24
  249. data/lib/algolia/models/insights/purchase_event.rb +2 -3
  250. data/lib/algolia/models/insights/purchased_object_ids.rb +91 -46
  251. data/lib/algolia/models/insights/purchased_object_ids_after_search.rb +91 -46
  252. data/lib/algolia/models/insights/value.rb +33 -24
  253. data/lib/algolia/models/insights/view_event.rb +2 -3
  254. data/lib/algolia/models/insights/viewed_filters.rb +71 -38
  255. data/lib/algolia/models/insights/viewed_object_ids.rb +71 -38
  256. data/lib/algolia/models/monitoring/error_base.rb +24 -13
  257. data/lib/algolia/models/monitoring/get_servers403_response.rb +33 -18
  258. data/lib/algolia/models/monitoring/incident.rb +30 -18
  259. data/lib/algolia/models/monitoring/incidents_inner.rb +34 -19
  260. data/lib/algolia/models/monitoring/incidents_response.rb +33 -18
  261. data/lib/algolia/models/monitoring/indexing_time_response.rb +33 -18
  262. data/lib/algolia/models/monitoring/indexing_time_response_metrics.rb +33 -18
  263. data/lib/algolia/models/monitoring/infrastructure_response.rb +33 -18
  264. data/lib/algolia/models/monitoring/infrastructure_response_metrics.rb +37 -22
  265. data/lib/algolia/models/monitoring/inventory_response.rb +33 -18
  266. data/lib/algolia/models/monitoring/latency_response.rb +33 -18
  267. data/lib/algolia/models/monitoring/latency_response_metrics.rb +33 -18
  268. data/lib/algolia/models/monitoring/metric.rb +2 -3
  269. data/lib/algolia/models/monitoring/period.rb +2 -3
  270. data/lib/algolia/models/monitoring/probes_metric.rb +34 -19
  271. data/lib/algolia/models/monitoring/region.rb +2 -3
  272. data/lib/algolia/models/monitoring/server.rb +35 -23
  273. data/lib/algolia/models/monitoring/server_status.rb +2 -3
  274. data/lib/algolia/models/monitoring/status.rb +2 -3
  275. data/lib/algolia/models/monitoring/status_response.rb +33 -18
  276. data/lib/algolia/models/monitoring/time_inner.rb +34 -19
  277. data/lib/algolia/models/monitoring/type.rb +2 -3
  278. data/lib/algolia/models/personalization/delete_user_profile_response.rb +34 -19
  279. data/lib/algolia/models/personalization/error_base.rb +24 -13
  280. data/lib/algolia/models/personalization/event_scoring.rb +35 -20
  281. data/lib/algolia/models/personalization/event_type.rb +2 -3
  282. data/lib/algolia/models/personalization/facet_scoring.rb +34 -19
  283. data/lib/algolia/models/personalization/get_user_token_response.rb +35 -20
  284. data/lib/algolia/models/personalization/personalization_strategy_params.rb +38 -23
  285. data/lib/algolia/models/personalization/set_personalization_strategy_response.rb +33 -18
  286. data/lib/algolia/models/query-suggestions/app_id.rb +29 -17
  287. data/lib/algolia/models/query-suggestions/base_query_suggestions_configuration_response.rb +22 -9
  288. data/lib/algolia/models/query-suggestions/base_query_suggestions_configuration_with_index.rb +22 -9
  289. data/lib/algolia/models/query-suggestions/base_response.rb +34 -19
  290. data/lib/algolia/models/query-suggestions/configuration.rb +44 -26
  291. data/lib/algolia/models/query-suggestions/configuration_response.rb +48 -30
  292. data/lib/algolia/models/query-suggestions/configuration_with_index.rb +46 -28
  293. data/lib/algolia/models/query-suggestions/error_base.rb +24 -13
  294. data/lib/algolia/models/query-suggestions/facet.rb +30 -18
  295. data/lib/algolia/models/query-suggestions/get_config_status200_response.rb +37 -22
  296. data/lib/algolia/models/query-suggestions/get_log_file200_response.rb +36 -21
  297. data/lib/algolia/models/query-suggestions/languages.rb +33 -24
  298. data/lib/algolia/models/query-suggestions/log_level.rb +2 -3
  299. data/lib/algolia/models/query-suggestions/query_suggestions_configuration.rb +34 -16
  300. data/lib/algolia/models/query-suggestions/query_suggestions_configuration_response.rb +34 -16
  301. data/lib/algolia/models/query-suggestions/query_suggestions_configuration_with_index.rb +34 -16
  302. data/lib/algolia/models/query-suggestions/source_index.rb +49 -34
  303. data/lib/algolia/models/recommend/advanced_syntax_features.rb +2 -3
  304. data/lib/algolia/models/recommend/alternatives_as_exact.rb +2 -3
  305. data/lib/algolia/models/recommend/around_precision.rb +33 -24
  306. data/lib/algolia/models/recommend/around_precision_from_value_inner.rb +34 -19
  307. data/lib/algolia/models/recommend/around_radius.rb +33 -24
  308. data/lib/algolia/models/recommend/around_radius_all.rb +2 -3
  309. data/lib/algolia/models/recommend/auto_facet_filter.rb +34 -19
  310. data/lib/algolia/models/recommend/base_recommend_request.rb +42 -27
  311. data/lib/algolia/models/recommend/base_search_params.rb +110 -63
  312. data/lib/algolia/models/recommend/base_search_params_without_query.rb +106 -60
  313. data/lib/algolia/models/recommend/base_search_response.rb +76 -121
  314. data/lib/algolia/models/recommend/bought_together_query.rb +46 -31
  315. data/lib/algolia/models/recommend/condition.rb +35 -20
  316. data/lib/algolia/models/recommend/consequence.rb +39 -24
  317. data/lib/algolia/models/recommend/deleted_at_response.rb +34 -19
  318. data/lib/algolia/models/recommend/distinct.rb +33 -24
  319. data/lib/algolia/models/recommend/error_base.rb +24 -13
  320. data/lib/algolia/models/recommend/exact_on_single_word_query.rb +2 -3
  321. data/lib/algolia/models/recommend/exhaustive.rb +37 -22
  322. data/lib/algolia/models/recommend/facet_filters.rb +33 -24
  323. data/lib/algolia/models/recommend/facet_ordering.rb +34 -19
  324. data/lib/algolia/models/recommend/facets.rb +29 -17
  325. data/lib/algolia/models/recommend/facets_stats.rb +36 -21
  326. data/lib/algolia/models/recommend/fallback_params.rb +207 -118
  327. data/lib/algolia/models/recommend/fbt_model.rb +2 -3
  328. data/lib/algolia/models/recommend/frequently_bought_together.rb +34 -19
  329. data/lib/algolia/models/recommend/get_recommend_task_response.rb +33 -18
  330. data/lib/algolia/models/recommend/get_recommendations_params.rb +33 -18
  331. data/lib/algolia/models/recommend/get_recommendations_response.rb +33 -18
  332. data/lib/algolia/models/recommend/hide_consequence_object.rb +33 -18
  333. data/lib/algolia/models/recommend/highlight_result.rb +34 -25
  334. data/lib/algolia/models/recommend/highlight_result_option.rb +36 -21
  335. data/lib/algolia/models/recommend/ignore_plurals.rb +33 -24
  336. data/lib/algolia/models/recommend/index_settings_as_search_params.rb +134 -75
  337. data/lib/algolia/models/recommend/looking_similar.rb +35 -20
  338. data/lib/algolia/models/recommend/looking_similar_model.rb +2 -3
  339. data/lib/algolia/models/recommend/looking_similar_query.rb +47 -32
  340. data/lib/algolia/models/recommend/match_level.rb +2 -3
  341. data/lib/algolia/models/recommend/matched_geo_location.rb +35 -20
  342. data/lib/algolia/models/recommend/mode.rb +2 -3
  343. data/lib/algolia/models/recommend/numeric_filters.rb +33 -24
  344. data/lib/algolia/models/recommend/optional_filters.rb +33 -24
  345. data/lib/algolia/models/recommend/params_consequence.rb +35 -20
  346. data/lib/algolia/models/recommend/personalization.rb +35 -20
  347. data/lib/algolia/models/recommend/promote_consequence_object.rb +36 -21
  348. data/lib/algolia/models/recommend/query_type.rb +2 -3
  349. data/lib/algolia/models/recommend/ranking_info.rb +76 -48
  350. data/lib/algolia/models/recommend/re_ranking_apply_filter.rb +33 -24
  351. data/lib/algolia/models/recommend/recommend_hit.rb +32 -21
  352. data/lib/algolia/models/recommend/recommend_models.rb +2 -3
  353. data/lib/algolia/models/recommend/recommend_rule.rb +38 -23
  354. data/lib/algolia/models/recommend/recommend_rule_metadata.rb +33 -18
  355. data/lib/algolia/models/recommend/recommendations_hit.rb +33 -24
  356. data/lib/algolia/models/recommend/recommendations_hits.rb +33 -18
  357. data/lib/algolia/models/recommend/recommendations_request.rb +37 -28
  358. data/lib/algolia/models/recommend/recommendations_results.rb +159 -114
  359. data/lib/algolia/models/recommend/recommended_for_you.rb +34 -19
  360. data/lib/algolia/models/recommend/recommended_for_you_model.rb +2 -3
  361. data/lib/algolia/models/recommend/recommended_for_you_query.rb +46 -31
  362. data/lib/algolia/models/recommend/redirect.rb +29 -17
  363. data/lib/algolia/models/recommend/redirect_rule_index_metadata.rb +37 -22
  364. data/lib/algolia/models/recommend/redirect_rule_index_metadata_data.rb +33 -18
  365. data/lib/algolia/models/recommend/redirect_url.rb +33 -18
  366. data/lib/algolia/models/recommend/related_model.rb +2 -3
  367. data/lib/algolia/models/recommend/related_products.rb +35 -20
  368. data/lib/algolia/models/recommend/related_query.rb +47 -32
  369. data/lib/algolia/models/recommend/remove_stop_words.rb +33 -24
  370. data/lib/algolia/models/recommend/remove_words_if_no_results.rb +2 -3
  371. data/lib/algolia/models/recommend/rendering_content.rb +34 -19
  372. data/lib/algolia/models/recommend/search_pagination.rb +282 -0
  373. data/lib/algolia/models/recommend/search_params.rb +207 -118
  374. data/lib/algolia/models/recommend/search_params_object.rb +208 -119
  375. data/lib/algolia/models/recommend/search_params_query.rb +33 -18
  376. data/lib/algolia/models/recommend/search_recommend_rules_params.rb +48 -33
  377. data/lib/algolia/models/recommend/search_recommend_rules_response.rb +38 -23
  378. data/lib/algolia/models/recommend/semantic_search.rb +35 -20
  379. data/lib/algolia/models/recommend/snippet_result.rb +34 -25
  380. data/lib/algolia/models/recommend/snippet_result_option.rb +34 -19
  381. data/lib/algolia/models/recommend/sort_remaining_by.rb +2 -3
  382. data/lib/algolia/models/recommend/supported_language.rb +72 -5
  383. data/lib/algolia/models/recommend/tag_filters.rb +33 -24
  384. data/lib/algolia/models/recommend/task_status.rb +2 -3
  385. data/lib/algolia/models/recommend/trending_facet_hit.rb +38 -23
  386. data/lib/algolia/models/recommend/trending_facets.rb +37 -22
  387. data/lib/algolia/models/recommend/trending_facets_model.rb +2 -3
  388. data/lib/algolia/models/recommend/trending_facets_query.rb +49 -34
  389. data/lib/algolia/models/recommend/trending_items.rb +36 -21
  390. data/lib/algolia/models/recommend/trending_items_model.rb +2 -3
  391. data/lib/algolia/models/recommend/trending_items_query.rb +58 -34
  392. data/lib/algolia/models/recommend/typo_tolerance.rb +33 -24
  393. data/lib/algolia/models/recommend/typo_tolerance_enum.rb +2 -3
  394. data/lib/algolia/models/recommend/value.rb +31 -19
  395. data/lib/algolia/models/search/acl.rb +19 -5
  396. data/lib/algolia/models/search/action.rb +11 -4
  397. data/lib/algolia/models/search/add_api_key_response.rb +34 -19
  398. data/lib/algolia/models/search/advanced_syntax_features.rb +2 -3
  399. data/lib/algolia/models/search/alternatives_as_exact.rb +2 -3
  400. data/lib/algolia/models/search/anchoring.rb +2 -3
  401. data/lib/algolia/models/search/api_key.rb +46 -25
  402. data/lib/algolia/models/search/api_key_operation.rb +2 -3
  403. data/lib/algolia/models/search/around_precision.rb +33 -24
  404. data/lib/algolia/models/search/around_precision_from_value_inner.rb +34 -19
  405. data/lib/algolia/models/search/around_radius.rb +33 -24
  406. data/lib/algolia/models/search/around_radius_all.rb +2 -3
  407. data/lib/algolia/models/search/assign_user_id_params.rb +33 -18
  408. data/lib/algolia/models/search/attribute_to_update.rb +33 -24
  409. data/lib/algolia/models/search/automatic_facet_filter.rb +35 -20
  410. data/lib/algolia/models/search/automatic_facet_filters.rb +33 -24
  411. data/lib/algolia/models/search/base_get_api_key_response.rb +34 -19
  412. data/lib/algolia/models/search/base_index_settings.rb +71 -39
  413. data/lib/algolia/models/search/base_search_params.rb +110 -63
  414. data/lib/algolia/models/search/base_search_params_without_query.rb +106 -60
  415. data/lib/algolia/models/search/base_search_response.rb +76 -121
  416. data/lib/algolia/models/search/batch_assign_user_ids_params.rb +34 -19
  417. data/lib/algolia/models/search/batch_dictionary_entries_params.rb +34 -19
  418. data/lib/algolia/models/search/batch_dictionary_entries_request.rb +34 -19
  419. data/lib/algolia/models/search/batch_params.rb +33 -18
  420. data/lib/algolia/models/search/batch_request.rb +34 -19
  421. data/lib/algolia/models/search/batch_response.rb +34 -19
  422. data/lib/algolia/models/search/batch_write_params.rb +33 -18
  423. data/lib/algolia/models/{ingestion/schedule_date_utils_input.rb → search/browse_pagination.rb} +92 -45
  424. data/lib/algolia/models/search/browse_params.rb +33 -24
  425. data/lib/algolia/models/search/browse_params_object.rb +210 -120
  426. data/lib/algolia/models/search/browse_response.rb +158 -118
  427. data/lib/algolia/models/search/built_in_operation.rb +34 -19
  428. data/lib/algolia/models/search/built_in_operation_type.rb +2 -3
  429. data/lib/algolia/models/search/condition.rb +38 -23
  430. data/lib/algolia/models/search/consequence.rb +43 -28
  431. data/lib/algolia/models/search/consequence_hide.rb +33 -18
  432. data/lib/algolia/models/search/consequence_params.rb +213 -122
  433. data/lib/algolia/models/search/consequence_query.rb +33 -24
  434. data/lib/algolia/models/search/consequence_query_object.rb +34 -19
  435. data/lib/algolia/models/search/created_at_response.rb +33 -18
  436. data/lib/algolia/models/search/cursor.rb +29 -17
  437. data/lib/algolia/models/search/delete_api_key_response.rb +33 -18
  438. data/lib/algolia/models/search/delete_by_params.rb +50 -26
  439. data/lib/algolia/models/search/delete_source_response.rb +33 -18
  440. data/lib/algolia/models/search/deleted_at_response.rb +34 -19
  441. data/lib/algolia/models/search/dictionary_action.rb +2 -3
  442. data/lib/algolia/models/search/dictionary_entry.rb +29 -18
  443. data/lib/algolia/models/search/dictionary_entry_state.rb +2 -3
  444. data/lib/algolia/models/search/dictionary_language.rb +33 -18
  445. data/lib/algolia/models/search/dictionary_settings_params.rb +33 -18
  446. data/lib/algolia/models/search/dictionary_type.rb +2 -3
  447. data/lib/algolia/models/search/distinct.rb +33 -24
  448. data/lib/algolia/models/search/edit.rb +31 -19
  449. data/lib/algolia/models/search/edit_type.rb +2 -3
  450. data/lib/algolia/models/search/error_base.rb +24 -13
  451. data/lib/algolia/models/search/exact_on_single_word_query.rb +2 -3
  452. data/lib/algolia/models/search/exhaustive.rb +37 -22
  453. data/lib/algolia/models/search/facet_filters.rb +33 -24
  454. data/lib/algolia/models/search/facet_hits.rb +35 -20
  455. data/lib/algolia/models/search/facet_ordering.rb +34 -19
  456. data/lib/algolia/models/search/facets.rb +29 -17
  457. data/lib/algolia/models/search/facets_stats.rb +36 -21
  458. data/lib/algolia/models/search/fetched_index.rb +58 -30
  459. data/lib/algolia/models/search/get_api_key_response.rb +56 -30
  460. data/lib/algolia/models/search/get_dictionary_settings_response.rb +33 -18
  461. data/lib/algolia/models/search/get_logs_response.rb +33 -18
  462. data/lib/algolia/models/search/get_objects_params.rb +33 -18
  463. data/lib/algolia/models/search/get_objects_request.rb +35 -20
  464. data/lib/algolia/models/search/get_objects_response.rb +33 -18
  465. data/lib/algolia/models/search/get_task_response.rb +33 -18
  466. data/lib/algolia/models/search/get_top_user_ids_response.rb +33 -18
  467. data/lib/algolia/models/search/has_pending_mappings_response.rb +34 -19
  468. data/lib/algolia/models/search/highlight_result.rb +34 -25
  469. data/lib/algolia/models/search/highlight_result_option.rb +36 -21
  470. data/lib/algolia/models/search/hit.rb +24 -16
  471. data/lib/algolia/models/search/ignore_plurals.rb +33 -24
  472. data/lib/algolia/models/search/index_settings.rb +171 -97
  473. data/lib/algolia/models/search/index_settings_as_search_params.rb +134 -75
  474. data/lib/algolia/models/search/languages.rb +39 -24
  475. data/lib/algolia/models/search/list_api_keys_response.rb +33 -18
  476. data/lib/algolia/models/search/list_clusters_response.rb +33 -18
  477. data/lib/algolia/models/search/list_indices_response.rb +34 -19
  478. data/lib/algolia/models/search/list_user_ids_response.rb +33 -18
  479. data/lib/algolia/models/search/log.rb +70 -37
  480. data/lib/algolia/models/search/log_query.rb +31 -19
  481. data/lib/algolia/models/search/log_type.rb +2 -3
  482. data/lib/algolia/models/search/match_level.rb +2 -3
  483. data/lib/algolia/models/search/matched_geo_location.rb +35 -20
  484. data/lib/algolia/models/search/mode.rb +2 -3
  485. data/lib/algolia/models/search/multiple_batch_request.rb +35 -20
  486. data/lib/algolia/models/search/multiple_batch_response.rb +34 -19
  487. data/lib/algolia/models/search/numeric_filters.rb +33 -24
  488. data/lib/algolia/models/search/operation_index_params.rb +35 -20
  489. data/lib/algolia/models/search/operation_type.rb +2 -3
  490. data/lib/algolia/models/search/optional_filters.rb +33 -24
  491. data/lib/algolia/models/search/params.rb +32 -20
  492. data/lib/algolia/models/search/personalization.rb +35 -20
  493. data/lib/algolia/models/search/promote.rb +33 -24
  494. data/lib/algolia/models/search/promote_object_id.rb +34 -19
  495. data/lib/algolia/models/search/promote_object_ids.rb +36 -21
  496. data/lib/algolia/models/search/query_type.rb +2 -3
  497. data/lib/algolia/models/search/ranking_info.rb +76 -48
  498. data/lib/algolia/models/search/re_ranking_apply_filter.rb +33 -24
  499. data/lib/algolia/models/search/redirect.rb +29 -17
  500. data/lib/algolia/models/search/redirect_rule_index_metadata.rb +37 -22
  501. data/lib/algolia/models/search/redirect_rule_index_metadata_data.rb +33 -18
  502. data/lib/algolia/models/search/redirect_url.rb +33 -18
  503. data/lib/algolia/models/search/remove_stop_words.rb +33 -24
  504. data/lib/algolia/models/search/remove_user_id_response.rb +33 -18
  505. data/lib/algolia/models/search/remove_words_if_no_results.rb +2 -3
  506. data/lib/algolia/models/search/rendering_content.rb +34 -19
  507. data/lib/algolia/models/search/replace_all_objects_response.rb +35 -20
  508. data/lib/algolia/models/search/replace_source_response.rb +33 -18
  509. data/lib/algolia/models/search/rule.rb +37 -25
  510. data/lib/algolia/models/search/save_object_response.rb +35 -20
  511. data/lib/algolia/models/search/save_synonym_response.rb +35 -20
  512. data/lib/algolia/models/search/scope_type.rb +2 -3
  513. data/lib/algolia/models/search/search_dictionary_entries_params.rb +41 -26
  514. data/lib/algolia/models/search/search_dictionary_entries_response.rb +38 -23
  515. data/lib/algolia/models/search/search_for_facet_values_request.rb +37 -22
  516. data/lib/algolia/models/search/search_for_facet_values_response.rb +35 -20
  517. data/lib/algolia/models/search/search_for_facets.rb +218 -124
  518. data/lib/algolia/models/search/search_for_facets_options.rb +39 -24
  519. data/lib/algolia/models/search/search_for_hits.rb +214 -122
  520. data/lib/algolia/models/search/search_for_hits_options.rb +34 -19
  521. data/lib/algolia/models/search/search_hits.rb +26 -15
  522. data/lib/algolia/models/search/search_method_params.rb +34 -19
  523. data/lib/algolia/models/search/search_pagination.rb +282 -0
  524. data/lib/algolia/models/search/search_params.rb +33 -24
  525. data/lib/algolia/models/search/search_params_object.rb +208 -119
  526. data/lib/algolia/models/search/search_params_query.rb +33 -18
  527. data/lib/algolia/models/search/search_params_string.rb +33 -18
  528. data/lib/algolia/models/search/search_query.rb +33 -24
  529. data/lib/algolia/models/search/search_response.rb +154 -111
  530. data/lib/algolia/models/search/search_responses.rb +33 -18
  531. data/lib/algolia/models/search/search_result.rb +33 -24
  532. data/lib/algolia/models/search/search_rules_params.rb +45 -30
  533. data/lib/algolia/models/search/search_rules_response.rb +36 -21
  534. data/lib/algolia/models/search/search_strategy.rb +2 -3
  535. data/lib/algolia/models/search/search_synonyms_params.rb +41 -26
  536. data/lib/algolia/models/search/search_synonyms_response.rb +25 -14
  537. data/lib/algolia/models/search/search_type_default.rb +2 -3
  538. data/lib/algolia/models/search/search_type_facet.rb +2 -3
  539. data/lib/algolia/models/search/search_user_ids_params.rb +41 -26
  540. data/lib/algolia/models/search/search_user_ids_response.rb +42 -27
  541. data/lib/algolia/models/search/secured_api_key_restrictions.rb +38 -23
  542. data/lib/algolia/models/search/semantic_search.rb +35 -20
  543. data/lib/algolia/models/search/snippet_result.rb +34 -25
  544. data/lib/algolia/models/search/snippet_result_option.rb +34 -19
  545. data/lib/algolia/models/search/sort_remaining_by.rb +2 -3
  546. data/lib/algolia/models/search/source.rb +30 -18
  547. data/lib/algolia/models/search/standard_entries.rb +39 -24
  548. data/lib/algolia/models/search/supported_language.rb +72 -5
  549. data/lib/algolia/models/search/synonym_hit.rb +40 -25
  550. data/lib/algolia/models/search/synonym_type.rb +2 -3
  551. data/lib/algolia/models/search/tag_filters.rb +33 -24
  552. data/lib/algolia/models/search/task_status.rb +2 -3
  553. data/lib/algolia/models/search/time_range.rb +34 -19
  554. data/lib/algolia/models/search/typo_tolerance.rb +33 -24
  555. data/lib/algolia/models/search/typo_tolerance_enum.rb +2 -3
  556. data/lib/algolia/models/search/update_api_key_response.rb +34 -19
  557. data/lib/algolia/models/search/updated_at_response.rb +34 -19
  558. data/lib/algolia/models/search/updated_at_with_object_id_response.rb +35 -20
  559. data/lib/algolia/models/search/updated_rule_response.rb +35 -20
  560. data/lib/algolia/models/search/user_highlight_result.rb +34 -19
  561. data/lib/algolia/models/search/user_hit.rb +35 -23
  562. data/lib/algolia/models/search/user_id.rb +33 -21
  563. data/lib/algolia/models/search/value.rb +31 -19
  564. data/lib/algolia/models/usage/error_base.rb +24 -13
  565. data/lib/algolia/models/usage/get_usage200_response.rb +33 -18
  566. data/lib/algolia/models/usage/get_usage200_response_statistics_inner.rb +34 -19
  567. data/lib/algolia/models/usage/get_usage400_response.rb +33 -18
  568. data/lib/algolia/models/usage/get_usage400_response_error.rb +35 -20
  569. data/lib/algolia/models/usage/get_usage400_response_error_errors_inner.rb +36 -21
  570. data/lib/algolia/models/usage/granularity.rb +2 -3
  571. data/lib/algolia/models/usage/statistic.rb +88 -5
  572. data/lib/algolia/models/usage/statistic_value.rb +33 -24
  573. data/lib/algolia/transport/call_type.rb +1 -1
  574. data/lib/algolia/transport/echo_requester.rb +11 -2
  575. data/lib/algolia/transport/http/http_requester.rb +23 -15
  576. data/lib/algolia/transport/http/response.rb +8 -8
  577. data/lib/algolia/transport/request_options.rb +6 -4
  578. data/lib/algolia/transport/retry_outcome_type.rb +3 -3
  579. data/lib/algolia/transport/retry_strategy.rb +8 -7
  580. data/lib/algolia/transport/stateful_host.rb +6 -6
  581. data/lib/algolia/transport/transport.rb +27 -20
  582. data/lib/algolia/user_agent.rb +1 -1
  583. data/lib/algolia/version.rb +1 -1
  584. data/lib/algolia.rb +16 -16
  585. metadata +20 -13
  586. 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 'date'
4
- require 'time'
3
+ require "date"
4
+ require "time"
5
5
 
6
6
  module Algolia
7
7
  module Search
@@ -340,119 +340,125 @@ module Algolia
340
340
  # Attribute type mapping.
341
341
  def self.types_mapping
342
342
  {
343
- :params => :String,
344
- :query => :String,
345
- :similar_query => :String,
346
- :filters => :String,
347
- :facet_filters => :FacetFilters,
348
- :optional_filters => :OptionalFilters,
349
- :numeric_filters => :NumericFilters,
350
- :tag_filters => :TagFilters,
351
- :sum_or_filters_scores => :Boolean,
352
- :restrict_searchable_attributes => :'Array<String>',
353
- :facets => :'Array<String>',
354
- :faceting_after_distinct => :Boolean,
355
- :page => :Integer,
356
- :offset => :Integer,
357
- :length => :Integer,
358
- :around_lat_lng => :String,
359
- :around_lat_lng_via_ip => :Boolean,
360
- :around_radius => :AroundRadius,
361
- :around_precision => :AroundPrecision,
362
- :minimum_around_radius => :Integer,
363
- :inside_bounding_box => :'Array<Array<Float>>',
364
- :inside_polygon => :'Array<Array<Float>>',
365
- :natural_languages => :'Array<SupportedLanguage>',
366
- :rule_contexts => :'Array<String>',
367
- :personalization_impact => :Integer,
368
- :user_token => :String,
369
- :get_ranking_info => :Boolean,
370
- :synonyms => :Boolean,
371
- :click_analytics => :Boolean,
372
- :analytics => :Boolean,
373
- :analytics_tags => :'Array<String>',
374
- :percentile_computation => :Boolean,
375
- :enable_ab_test => :Boolean,
376
- :attributes_to_retrieve => :'Array<String>',
377
- :ranking => :'Array<String>',
378
- :custom_ranking => :'Array<String>',
379
- :relevancy_strictness => :Integer,
380
- :attributes_to_highlight => :'Array<String>',
381
- :attributes_to_snippet => :'Array<String>',
382
- :highlight_pre_tag => :String,
383
- :highlight_post_tag => :String,
384
- :snippet_ellipsis_text => :String,
385
- :restrict_highlight_and_snippet_arrays => :Boolean,
386
- :hits_per_page => :Integer,
387
- :min_word_sizefor1_typo => :Integer,
388
- :min_word_sizefor2_typos => :Integer,
389
- :typo_tolerance => :TypoTolerance,
390
- :allow_typos_on_numeric_tokens => :Boolean,
391
- :disable_typo_tolerance_on_attributes => :'Array<String>',
392
- :ignore_plurals => :IgnorePlurals,
393
- :remove_stop_words => :RemoveStopWords,
394
- :keep_diacritics_on_characters => :String,
395
- :query_languages => :'Array<SupportedLanguage>',
396
- :decompound_query => :Boolean,
397
- :enable_rules => :Boolean,
398
- :enable_personalization => :Boolean,
399
- :query_type => :QueryType,
400
- :remove_words_if_no_results => :RemoveWordsIfNoResults,
401
- :mode => :Mode,
402
- :semantic_search => :SemanticSearch,
403
- :advanced_syntax => :Boolean,
404
- :optional_words => :'Array<String>',
405
- :disable_exact_on_attributes => :'Array<String>',
406
- :exact_on_single_word_query => :ExactOnSingleWordQuery,
407
- :alternatives_as_exact => :'Array<AlternativesAsExact>',
408
- :advanced_syntax_features => :'Array<AdvancedSyntaxFeatures>',
409
- :distinct => :Distinct,
410
- :replace_synonyms_in_highlight => :Boolean,
411
- :min_proximity => :Integer,
412
- :response_fields => :'Array<String>',
413
- :max_facet_hits => :Integer,
414
- :max_values_per_facet => :Integer,
415
- :sort_facet_values_by => :String,
416
- :attribute_criteria_computed_by_min_proximity => :Boolean,
417
- :rendering_content => :RenderingContent,
418
- :enable_re_ranking => :Boolean,
419
- :re_ranking_apply_filter => :ReRankingApplyFilter,
420
- :index_name => :String,
421
- :type => :SearchTypeDefault
343
+ :params => :"String",
344
+ :query => :"String",
345
+ :similar_query => :"String",
346
+ :filters => :"String",
347
+ :facet_filters => :"FacetFilters",
348
+ :optional_filters => :"OptionalFilters",
349
+ :numeric_filters => :"NumericFilters",
350
+ :tag_filters => :"TagFilters",
351
+ :sum_or_filters_scores => :"Boolean",
352
+ :restrict_searchable_attributes => :"Array<String>",
353
+ :facets => :"Array<String>",
354
+ :faceting_after_distinct => :"Boolean",
355
+ :page => :"Integer",
356
+ :offset => :"Integer",
357
+ :length => :"Integer",
358
+ :around_lat_lng => :"String",
359
+ :around_lat_lng_via_ip => :"Boolean",
360
+ :around_radius => :"AroundRadius",
361
+ :around_precision => :"AroundPrecision",
362
+ :minimum_around_radius => :"Integer",
363
+ :inside_bounding_box => :"Array<Array<Float>>",
364
+ :inside_polygon => :"Array<Array<Float>>",
365
+ :natural_languages => :"Array<SupportedLanguage>",
366
+ :rule_contexts => :"Array<String>",
367
+ :personalization_impact => :"Integer",
368
+ :user_token => :"String",
369
+ :get_ranking_info => :"Boolean",
370
+ :synonyms => :"Boolean",
371
+ :click_analytics => :"Boolean",
372
+ :analytics => :"Boolean",
373
+ :analytics_tags => :"Array<String>",
374
+ :percentile_computation => :"Boolean",
375
+ :enable_ab_test => :"Boolean",
376
+ :attributes_to_retrieve => :"Array<String>",
377
+ :ranking => :"Array<String>",
378
+ :custom_ranking => :"Array<String>",
379
+ :relevancy_strictness => :"Integer",
380
+ :attributes_to_highlight => :"Array<String>",
381
+ :attributes_to_snippet => :"Array<String>",
382
+ :highlight_pre_tag => :"String",
383
+ :highlight_post_tag => :"String",
384
+ :snippet_ellipsis_text => :"String",
385
+ :restrict_highlight_and_snippet_arrays => :"Boolean",
386
+ :hits_per_page => :"Integer",
387
+ :min_word_sizefor1_typo => :"Integer",
388
+ :min_word_sizefor2_typos => :"Integer",
389
+ :typo_tolerance => :"TypoTolerance",
390
+ :allow_typos_on_numeric_tokens => :"Boolean",
391
+ :disable_typo_tolerance_on_attributes => :"Array<String>",
392
+ :ignore_plurals => :"IgnorePlurals",
393
+ :remove_stop_words => :"RemoveStopWords",
394
+ :keep_diacritics_on_characters => :"String",
395
+ :query_languages => :"Array<SupportedLanguage>",
396
+ :decompound_query => :"Boolean",
397
+ :enable_rules => :"Boolean",
398
+ :enable_personalization => :"Boolean",
399
+ :query_type => :"QueryType",
400
+ :remove_words_if_no_results => :"RemoveWordsIfNoResults",
401
+ :mode => :"Mode",
402
+ :semantic_search => :"SemanticSearch",
403
+ :advanced_syntax => :"Boolean",
404
+ :optional_words => :"Array<String>",
405
+ :disable_exact_on_attributes => :"Array<String>",
406
+ :exact_on_single_word_query => :"ExactOnSingleWordQuery",
407
+ :alternatives_as_exact => :"Array<AlternativesAsExact>",
408
+ :advanced_syntax_features => :"Array<AdvancedSyntaxFeatures>",
409
+ :distinct => :"Distinct",
410
+ :replace_synonyms_in_highlight => :"Boolean",
411
+ :min_proximity => :"Integer",
412
+ :response_fields => :"Array<String>",
413
+ :max_facet_hits => :"Integer",
414
+ :max_values_per_facet => :"Integer",
415
+ :sort_facet_values_by => :"String",
416
+ :attribute_criteria_computed_by_min_proximity => :"Boolean",
417
+ :rendering_content => :"RenderingContent",
418
+ :enable_re_ranking => :"Boolean",
419
+ :re_ranking_apply_filter => :"ReRankingApplyFilter",
420
+ :index_name => :"String",
421
+ :type => :"SearchTypeDefault"
422
422
  }
423
423
  end
424
424
 
425
425
  # List of attributes with nullable: true
426
426
  def self.openapi_nullable
427
- Set.new([
428
- :re_ranking_apply_filter
429
- ])
427
+ Set.new(
428
+ []
429
+ )
430
430
  end
431
431
 
432
432
  # List of class defined in allOf (OpenAPI v3)
433
433
  def self.openapi_all_of
434
434
  [
435
- :SearchForHitsOptions,
436
- :SearchParams
435
+ :"SearchForHitsOptions",
436
+ :"SearchParams"
437
437
  ]
438
438
  end
439
439
 
440
440
  # Initializes the object
441
441
  # @param [Hash] attributes Model attributes in the form of hash
442
442
  def initialize(attributes = {})
443
- unless attributes.is_a?(Hash)
444
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::SearchForHits` initialize method"
443
+ if (!attributes.is_a?(Hash))
444
+ raise(
445
+ ArgumentError,
446
+ "The input argument (attributes) must be a hash in `Algolia::SearchForHits` initialize method"
447
+ )
445
448
  end
446
449
 
447
450
  # check to see if the attribute exists and convert string to symbol for hash key
448
- attributes = attributes.each_with_object({}) do |(k, v), h|
449
- unless self.class.attribute_map.key?(k.to_sym)
450
- raise ArgumentError,
451
- "`#{k}` is not a valid attribute in `Algolia::SearchForHits`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
451
+ attributes = attributes.each_with_object({}) { |(k, v), h|
452
+ if (!self.class.attribute_map.key?(k.to_sym))
453
+ raise(
454
+ ArgumentError,
455
+ "`#{k}` is not a valid attribute in `Algolia::SearchForHits`. Please check the name to make sure it's valid. List of attributes: " +
456
+ self.class.attribute_map.keys.inspect
457
+ )
452
458
  end
453
459
 
454
460
  h[k.to_sym] = v
455
- end
461
+ }
456
462
 
457
463
  if attributes.key?(:params)
458
464
  self.params = attributes[:params]
@@ -815,11 +821,11 @@ module Algolia
815
821
  # @param [Object] page Value to be assigned
816
822
  def page=(page)
817
823
  if page.nil?
818
- raise ArgumentError, 'page cannot be nil'
824
+ raise ArgumentError, "page cannot be nil"
819
825
  end
820
826
 
821
827
  if page < 0
822
- raise ArgumentError, 'invalid value for "page", must be greater than or equal to 0.'
828
+ raise ArgumentError, "invalid value for \"page\", must be greater than or equal to 0."
823
829
  end
824
830
 
825
831
  @page = page
@@ -829,15 +835,15 @@ module Algolia
829
835
  # @param [Object] length Value to be assigned
830
836
  def length=(length)
831
837
  if length.nil?
832
- raise ArgumentError, 'length cannot be nil'
838
+ raise ArgumentError, "length cannot be nil"
833
839
  end
834
840
 
835
841
  if length > 1000
836
- raise ArgumentError, 'invalid value for "length", must be smaller than or equal to 1000.'
842
+ raise ArgumentError, "invalid value for \"length\", must be smaller than or equal to 1000."
837
843
  end
838
844
 
839
845
  if length < 1
840
- raise ArgumentError, 'invalid value for "length", must be greater than or equal to 1.'
846
+ raise ArgumentError, "invalid value for \"length\", must be greater than or equal to 1."
841
847
  end
842
848
 
843
849
  @length = length
@@ -847,11 +853,11 @@ module Algolia
847
853
  # @param [Object] minimum_around_radius Value to be assigned
848
854
  def minimum_around_radius=(minimum_around_radius)
849
855
  if minimum_around_radius.nil?
850
- raise ArgumentError, 'minimum_around_radius cannot be nil'
856
+ raise ArgumentError, "minimum_around_radius cannot be nil"
851
857
  end
852
858
 
853
859
  if minimum_around_radius < 1
854
- raise ArgumentError, 'invalid value for "minimum_around_radius", must be greater than or equal to 1.'
860
+ raise ArgumentError, "invalid value for \"minimum_around_radius\", must be greater than or equal to 1."
855
861
  end
856
862
 
857
863
  @minimum_around_radius = minimum_around_radius
@@ -861,15 +867,15 @@ module Algolia
861
867
  # @param [Object] personalization_impact Value to be assigned
862
868
  def personalization_impact=(personalization_impact)
863
869
  if personalization_impact.nil?
864
- raise ArgumentError, 'personalization_impact cannot be nil'
870
+ raise ArgumentError, "personalization_impact cannot be nil"
865
871
  end
866
872
 
867
873
  if personalization_impact > 100
868
- raise ArgumentError, 'invalid value for "personalization_impact", must be smaller than or equal to 100.'
874
+ raise ArgumentError, "invalid value for \"personalization_impact\", must be smaller than or equal to 100."
869
875
  end
870
876
 
871
877
  if personalization_impact < 0
872
- raise ArgumentError, 'invalid value for "personalization_impact", must be greater than or equal to 0.'
878
+ raise ArgumentError, "invalid value for \"personalization_impact\", must be greater than or equal to 0."
873
879
  end
874
880
 
875
881
  @personalization_impact = personalization_impact
@@ -879,15 +885,15 @@ module Algolia
879
885
  # @param [Object] hits_per_page Value to be assigned
880
886
  def hits_per_page=(hits_per_page)
881
887
  if hits_per_page.nil?
882
- raise ArgumentError, 'hits_per_page cannot be nil'
888
+ raise ArgumentError, "hits_per_page cannot be nil"
883
889
  end
884
890
 
885
891
  if hits_per_page > 1000
886
- raise ArgumentError, 'invalid value for "hits_per_page", must be smaller than or equal to 1000.'
892
+ raise ArgumentError, "invalid value for \"hits_per_page\", must be smaller than or equal to 1000."
887
893
  end
888
894
 
889
895
  if hits_per_page < 1
890
- raise ArgumentError, 'invalid value for "hits_per_page", must be greater than or equal to 1.'
896
+ raise ArgumentError, "invalid value for \"hits_per_page\", must be greater than or equal to 1."
891
897
  end
892
898
 
893
899
  @hits_per_page = hits_per_page
@@ -897,15 +903,15 @@ module Algolia
897
903
  # @param [Object] min_proximity Value to be assigned
898
904
  def min_proximity=(min_proximity)
899
905
  if min_proximity.nil?
900
- raise ArgumentError, 'min_proximity cannot be nil'
906
+ raise ArgumentError, "min_proximity cannot be nil"
901
907
  end
902
908
 
903
909
  if min_proximity > 7
904
- raise ArgumentError, 'invalid value for "min_proximity", must be smaller than or equal to 7.'
910
+ raise ArgumentError, "invalid value for \"min_proximity\", must be smaller than or equal to 7."
905
911
  end
906
912
 
907
913
  if min_proximity < 1
908
- raise ArgumentError, 'invalid value for "min_proximity", must be greater than or equal to 1.'
914
+ raise ArgumentError, "invalid value for \"min_proximity\", must be greater than or equal to 1."
909
915
  end
910
916
 
911
917
  @min_proximity = min_proximity
@@ -915,11 +921,11 @@ module Algolia
915
921
  # @param [Object] max_facet_hits Value to be assigned
916
922
  def max_facet_hits=(max_facet_hits)
917
923
  if max_facet_hits.nil?
918
- raise ArgumentError, 'max_facet_hits cannot be nil'
924
+ raise ArgumentError, "max_facet_hits cannot be nil"
919
925
  end
920
926
 
921
927
  if max_facet_hits > 100
922
- raise ArgumentError, 'invalid value for "max_facet_hits", must be smaller than or equal to 100.'
928
+ raise ArgumentError, "invalid value for \"max_facet_hits\", must be smaller than or equal to 100."
923
929
  end
924
930
 
925
931
  @max_facet_hits = max_facet_hits
@@ -929,11 +935,11 @@ module Algolia
929
935
  # @param [Object] max_values_per_facet Value to be assigned
930
936
  def max_values_per_facet=(max_values_per_facet)
931
937
  if max_values_per_facet.nil?
932
- raise ArgumentError, 'max_values_per_facet cannot be nil'
938
+ raise ArgumentError, "max_values_per_facet cannot be nil"
933
939
  end
934
940
 
935
941
  if max_values_per_facet > 1000
936
- raise ArgumentError, 'invalid value for "max_values_per_facet", must be smaller than or equal to 1000.'
942
+ raise ArgumentError, "invalid value for \"max_values_per_facet\", must be smaller than or equal to 1000."
937
943
  end
938
944
 
939
945
  @max_values_per_facet = max_values_per_facet
@@ -942,8 +948,7 @@ module Algolia
942
948
  # Checks equality by comparing each attribute.
943
949
  # @param [Object] Object to be compared
944
950
  def ==(other)
945
- return true if equal?(other)
946
-
951
+ return true if self.equal?(other)
947
952
  self.class == other.class &&
948
953
  params == other.params &&
949
954
  query == other.query &&
@@ -1035,8 +1040,87 @@ module Algolia
1035
1040
  # Calculates hash code according to all attributes.
1036
1041
  # @return [Integer] Hash code
1037
1042
  def hash
1038
- [params, query, similar_query, filters, facet_filters, optional_filters, numeric_filters, tag_filters, sum_or_filters_scores, restrict_searchable_attributes, facets,
1039
- faceting_after_distinct, page, offset, length, around_lat_lng, around_lat_lng_via_ip, around_radius, around_precision, minimum_around_radius, inside_bounding_box, inside_polygon, natural_languages, rule_contexts, personalization_impact, user_token, get_ranking_info, synonyms, click_analytics, analytics, analytics_tags, percentile_computation, enable_ab_test, attributes_to_retrieve, ranking, custom_ranking, relevancy_strictness, attributes_to_highlight, attributes_to_snippet, highlight_pre_tag, highlight_post_tag, snippet_ellipsis_text, restrict_highlight_and_snippet_arrays, hits_per_page, min_word_sizefor1_typo, min_word_sizefor2_typos, typo_tolerance, allow_typos_on_numeric_tokens, disable_typo_tolerance_on_attributes, ignore_plurals, remove_stop_words, keep_diacritics_on_characters, query_languages, decompound_query, enable_rules, enable_personalization, query_type, remove_words_if_no_results, mode, semantic_search, advanced_syntax, optional_words, disable_exact_on_attributes, exact_on_single_word_query, alternatives_as_exact, advanced_syntax_features, distinct, replace_synonyms_in_highlight, min_proximity, response_fields, max_facet_hits, max_values_per_facet, sort_facet_values_by, attribute_criteria_computed_by_min_proximity, rendering_content, enable_re_ranking, re_ranking_apply_filter, index_name, type].hash
1043
+ [
1044
+ params,
1045
+ query,
1046
+ similar_query,
1047
+ filters,
1048
+ facet_filters,
1049
+ optional_filters,
1050
+ numeric_filters,
1051
+ tag_filters,
1052
+ sum_or_filters_scores,
1053
+ restrict_searchable_attributes,
1054
+ facets,
1055
+ faceting_after_distinct,
1056
+ page,
1057
+ offset,
1058
+ length,
1059
+ around_lat_lng,
1060
+ around_lat_lng_via_ip,
1061
+ around_radius,
1062
+ around_precision,
1063
+ minimum_around_radius,
1064
+ inside_bounding_box,
1065
+ inside_polygon,
1066
+ natural_languages,
1067
+ rule_contexts,
1068
+ personalization_impact,
1069
+ user_token,
1070
+ get_ranking_info,
1071
+ synonyms,
1072
+ click_analytics,
1073
+ analytics,
1074
+ analytics_tags,
1075
+ percentile_computation,
1076
+ enable_ab_test,
1077
+ attributes_to_retrieve,
1078
+ ranking,
1079
+ custom_ranking,
1080
+ relevancy_strictness,
1081
+ attributes_to_highlight,
1082
+ attributes_to_snippet,
1083
+ highlight_pre_tag,
1084
+ highlight_post_tag,
1085
+ snippet_ellipsis_text,
1086
+ restrict_highlight_and_snippet_arrays,
1087
+ hits_per_page,
1088
+ min_word_sizefor1_typo,
1089
+ min_word_sizefor2_typos,
1090
+ typo_tolerance,
1091
+ allow_typos_on_numeric_tokens,
1092
+ disable_typo_tolerance_on_attributes,
1093
+ ignore_plurals,
1094
+ remove_stop_words,
1095
+ keep_diacritics_on_characters,
1096
+ query_languages,
1097
+ decompound_query,
1098
+ enable_rules,
1099
+ enable_personalization,
1100
+ query_type,
1101
+ remove_words_if_no_results,
1102
+ mode,
1103
+ semantic_search,
1104
+ advanced_syntax,
1105
+ optional_words,
1106
+ disable_exact_on_attributes,
1107
+ exact_on_single_word_query,
1108
+ alternatives_as_exact,
1109
+ advanced_syntax_features,
1110
+ distinct,
1111
+ replace_synonyms_in_highlight,
1112
+ min_proximity,
1113
+ response_fields,
1114
+ max_facet_hits,
1115
+ max_values_per_facet,
1116
+ sort_facet_values_by,
1117
+ attribute_criteria_computed_by_min_proximity,
1118
+ rendering_content,
1119
+ enable_re_ranking,
1120
+ re_ranking_apply_filter,
1121
+ index_name,
1122
+ type
1123
+ ].hash
1040
1124
  end
1041
1125
 
1042
1126
  # Builds the object from hash
@@ -1044,7 +1128,6 @@ module Algolia
1044
1128
  # @return [Object] Returns the model itself
1045
1129
  def self.build_from_hash(attributes)
1046
1130
  return nil unless attributes.is_a?(Hash)
1047
-
1048
1131
  attributes = attributes.transform_keys(&:to_sym)
1049
1132
  transformed_hash = {}
1050
1133
  types_mapping.each_pair do |key, type|
@@ -1054,12 +1137,15 @@ module Algolia
1054
1137
  # check to ensure the input is an array given that the attribute
1055
1138
  # is documented as an array but the input is not
1056
1139
  if attributes[attribute_map[key]].is_a?(Array)
1057
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
1140
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
1141
+ _deserialize(::Regexp.last_match(1), v)
1142
+ }
1058
1143
  end
1059
1144
  elsif !attributes[attribute_map[key]].nil?
1060
1145
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
1061
1146
  end
1062
1147
  end
1148
+
1063
1149
  new(transformed_hash)
1064
1150
  end
1065
1151
 
@@ -1085,6 +1171,7 @@ module Algolia
1085
1171
  else
1086
1172
  false
1087
1173
  end
1174
+
1088
1175
  when :Object
1089
1176
  # generic object (usually a Hash), return directly
1090
1177
  value
@@ -1099,10 +1186,12 @@ module Algolia
1099
1186
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
1100
1187
  end
1101
1188
  end
1102
- else # model
1189
+ # model
1190
+ else
1103
1191
  # models (e.g. Pet) or oneOf
1104
1192
  klass = Algolia::Search.const_get(type)
1105
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
1193
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
1194
+ .build_from_hash(value)
1106
1195
  end
1107
1196
  end
1108
1197
 
@@ -1135,6 +1224,7 @@ module Algolia
1135
1224
 
1136
1225
  hash[param] = _to_hash(value)
1137
1226
  end
1227
+
1138
1228
  hash
1139
1229
  end
1140
1230
 
@@ -1149,12 +1239,14 @@ module Algolia
1149
1239
  {}.tap do |hash|
1150
1240
  value.each { |k, v| hash[k] = _to_hash(v) }
1151
1241
  end
1152
- elsif value.respond_to? :to_hash
1242
+ elsif value.respond_to?(:to_hash)
1153
1243
  value.to_hash
1154
1244
  else
1155
1245
  value
1156
1246
  end
1157
1247
  end
1248
+
1158
1249
  end
1250
+
1159
1251
  end
1160
1252
  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 'date'
4
- require 'time'
3
+ require "date"
4
+ require "time"
5
5
 
6
6
  module Algolia
7
7
  module Search
@@ -49,32 +49,40 @@ module Algolia
49
49
  # Attribute type mapping.
50
50
  def self.types_mapping
51
51
  {
52
- :index_name => :String,
53
- :type => :SearchTypeDefault
52
+ :index_name => :"String",
53
+ :type => :"SearchTypeDefault"
54
54
  }
55
55
  end
56
56
 
57
57
  # List of attributes with nullable: true
58
58
  def self.openapi_nullable
59
- Set.new([])
59
+ Set.new(
60
+ []
61
+ )
60
62
  end
61
63
 
62
64
  # Initializes the object
63
65
  # @param [Hash] attributes Model attributes in the form of hash
64
66
  def initialize(attributes = {})
65
- unless attributes.is_a?(Hash)
66
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::SearchForHitsOptions` initialize method"
67
+ if (!attributes.is_a?(Hash))
68
+ raise(
69
+ ArgumentError,
70
+ "The input argument (attributes) must be a hash in `Algolia::SearchForHitsOptions` initialize method"
71
+ )
67
72
  end
68
73
 
69
74
  # check to see if the attribute exists and convert string to symbol for hash key
70
- attributes = attributes.each_with_object({}) do |(k, v), h|
71
- unless self.class.attribute_map.key?(k.to_sym)
72
- raise ArgumentError,
73
- "`#{k}` is not a valid attribute in `Algolia::SearchForHitsOptions`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
75
+ attributes = attributes.each_with_object({}) { |(k, v), h|
76
+ if (!self.class.attribute_map.key?(k.to_sym))
77
+ raise(
78
+ ArgumentError,
79
+ "`#{k}` is not a valid attribute in `Algolia::SearchForHitsOptions`. Please check the name to make sure it's valid. List of attributes: " +
80
+ self.class.attribute_map.keys.inspect
81
+ )
74
82
  end
75
83
 
76
84
  h[k.to_sym] = v
77
- end
85
+ }
78
86
 
79
87
  if attributes.key?(:index_name)
80
88
  self.index_name = attributes[:index_name]
@@ -90,8 +98,7 @@ module Algolia
90
98
  # Checks equality by comparing each attribute.
91
99
  # @param [Object] Object to be compared
92
100
  def ==(other)
93
- return true if equal?(other)
94
-
101
+ return true if self.equal?(other)
95
102
  self.class == other.class &&
96
103
  index_name == other.index_name &&
97
104
  type == other.type
@@ -114,7 +121,6 @@ module Algolia
114
121
  # @return [Object] Returns the model itself
115
122
  def self.build_from_hash(attributes)
116
123
  return nil unless attributes.is_a?(Hash)
117
-
118
124
  attributes = attributes.transform_keys(&:to_sym)
119
125
  transformed_hash = {}
120
126
  types_mapping.each_pair do |key, type|
@@ -124,12 +130,15 @@ module Algolia
124
130
  # check to ensure the input is an array given that the attribute
125
131
  # is documented as an array but the input is not
126
132
  if attributes[attribute_map[key]].is_a?(Array)
127
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
133
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
134
+ _deserialize(::Regexp.last_match(1), v)
135
+ }
128
136
  end
129
137
  elsif !attributes[attribute_map[key]].nil?
130
138
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
131
139
  end
132
140
  end
141
+
133
142
  new(transformed_hash)
134
143
  end
135
144
 
@@ -155,6 +164,7 @@ module Algolia
155
164
  else
156
165
  false
157
166
  end
167
+
158
168
  when :Object
159
169
  # generic object (usually a Hash), return directly
160
170
  value
@@ -169,10 +179,12 @@ module Algolia
169
179
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
170
180
  end
171
181
  end
172
- else # model
182
+ # model
183
+ else
173
184
  # models (e.g. Pet) or oneOf
174
185
  klass = Algolia::Search.const_get(type)
175
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
186
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
187
+ .build_from_hash(value)
176
188
  end
177
189
  end
178
190
 
@@ -205,6 +217,7 @@ module Algolia
205
217
 
206
218
  hash[param] = _to_hash(value)
207
219
  end
220
+
208
221
  hash
209
222
  end
210
223
 
@@ -219,12 +232,14 @@ module Algolia
219
232
  {}.tap do |hash|
220
233
  value.each { |k, v| hash[k] = _to_hash(v) }
221
234
  end
222
- elsif value.respond_to? :to_hash
235
+ elsif value.respond_to?(:to_hash)
223
236
  value.to_hash
224
237
  else
225
238
  value
226
239
  end
227
240
  end
241
+
228
242
  end
243
+
229
244
  end
230
245
  end