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
@@ -24,31 +24,39 @@ module Algolia
24
24
  # Attribute type mapping.
25
25
  def self.types_mapping
26
26
  {
27
- :results => :'Array<Object>'
27
+ :results => :"Array<Object>"
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
- unless attributes.is_a?(Hash)
40
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::GetObjectsResponse` initialize method"
41
+ if (!attributes.is_a?(Hash))
42
+ raise(
43
+ ArgumentError,
44
+ "The input argument (attributes) must be a hash in `Algolia::GetObjectsResponse` 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({}) do |(k, v), h|
45
- unless self.class.attribute_map.key?(k.to_sym)
46
- raise ArgumentError,
47
- "`#{k}` is not a valid attribute in `Algolia::GetObjectsResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
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::GetObjectsResponse`. 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
- end
59
+ }
52
60
 
53
61
  if attributes.key?(:results)
54
62
  if (value = attributes[:results]).is_a?(Array)
@@ -62,8 +70,7 @@ module Algolia
62
70
  # Checks equality by comparing each attribute.
63
71
  # @param [Object] Object to be compared
64
72
  def ==(other)
65
- return true if equal?(other)
66
-
73
+ return true if self.equal?(other)
67
74
  self.class == other.class &&
68
75
  results == other.results
69
76
  end
@@ -85,7 +92,6 @@ module Algolia
85
92
  # @return [Object] Returns the model itself
86
93
  def self.build_from_hash(attributes)
87
94
  return nil unless attributes.is_a?(Hash)
88
-
89
95
  attributes = attributes.transform_keys(&:to_sym)
90
96
  transformed_hash = {}
91
97
  types_mapping.each_pair do |key, type|
@@ -95,12 +101,15 @@ module Algolia
95
101
  # check to ensure the input is an array given that the attribute
96
102
  # is documented as an array but the input is not
97
103
  if attributes[attribute_map[key]].is_a?(Array)
98
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
104
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
105
+ _deserialize(::Regexp.last_match(1), v)
106
+ }
99
107
  end
100
108
  elsif !attributes[attribute_map[key]].nil?
101
109
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
102
110
  end
103
111
  end
112
+
104
113
  new(transformed_hash)
105
114
  end
106
115
 
@@ -126,6 +135,7 @@ module Algolia
126
135
  else
127
136
  false
128
137
  end
138
+
129
139
  when :Object
130
140
  # generic object (usually a Hash), return directly
131
141
  value
@@ -140,10 +150,12 @@ module Algolia
140
150
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
141
151
  end
142
152
  end
143
- else # model
153
+ # model
154
+ else
144
155
  # models (e.g. Pet) or oneOf
145
156
  klass = Algolia::Search.const_get(type)
146
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
157
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
158
+ .build_from_hash(value)
147
159
  end
148
160
  end
149
161
 
@@ -176,6 +188,7 @@ module Algolia
176
188
 
177
189
  hash[param] = _to_hash(value)
178
190
  end
191
+
179
192
  hash
180
193
  end
181
194
 
@@ -190,12 +203,14 @@ module Algolia
190
203
  {}.tap do |hash|
191
204
  value.each { |k, v| hash[k] = _to_hash(v) }
192
205
  end
193
- elsif value.respond_to? :to_hash
206
+ elsif value.respond_to?(:to_hash)
194
207
  value.to_hash
195
208
  else
196
209
  value
197
210
  end
198
211
  end
212
+
199
213
  end
214
+
200
215
  end
201
216
  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
@@ -45,31 +45,39 @@ module Algolia
45
45
  # Attribute type mapping.
46
46
  def self.types_mapping
47
47
  {
48
- :status => :TaskStatus
48
+ :status => :"TaskStatus"
49
49
  }
50
50
  end
51
51
 
52
52
  # List of attributes with nullable: true
53
53
  def self.openapi_nullable
54
- Set.new([])
54
+ Set.new(
55
+ []
56
+ )
55
57
  end
56
58
 
57
59
  # Initializes the object
58
60
  # @param [Hash] attributes Model attributes in the form of hash
59
61
  def initialize(attributes = {})
60
- unless attributes.is_a?(Hash)
61
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::GetTaskResponse` initialize method"
62
+ if (!attributes.is_a?(Hash))
63
+ raise(
64
+ ArgumentError,
65
+ "The input argument (attributes) must be a hash in `Algolia::GetTaskResponse` initialize method"
66
+ )
62
67
  end
63
68
 
64
69
  # check to see if the attribute exists and convert string to symbol for hash key
65
- attributes = attributes.each_with_object({}) do |(k, v), h|
66
- unless self.class.attribute_map.key?(k.to_sym)
67
- raise ArgumentError,
68
- "`#{k}` is not a valid attribute in `Algolia::GetTaskResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ raise(
73
+ ArgumentError,
74
+ "`#{k}` is not a valid attribute in `Algolia::GetTaskResponse`. Please check the name to make sure it's valid. List of attributes: " +
75
+ self.class.attribute_map.keys.inspect
76
+ )
69
77
  end
70
78
 
71
79
  h[k.to_sym] = v
72
- end
80
+ }
73
81
 
74
82
  if attributes.key?(:status)
75
83
  self.status = attributes[:status]
@@ -81,8 +89,7 @@ module Algolia
81
89
  # Checks equality by comparing each attribute.
82
90
  # @param [Object] Object to be compared
83
91
  def ==(other)
84
- return true if equal?(other)
85
-
92
+ return true if self.equal?(other)
86
93
  self.class == other.class &&
87
94
  status == other.status
88
95
  end
@@ -104,7 +111,6 @@ module Algolia
104
111
  # @return [Object] Returns the model itself
105
112
  def self.build_from_hash(attributes)
106
113
  return nil unless attributes.is_a?(Hash)
107
-
108
114
  attributes = attributes.transform_keys(&:to_sym)
109
115
  transformed_hash = {}
110
116
  types_mapping.each_pair do |key, type|
@@ -114,12 +120,15 @@ module Algolia
114
120
  # check to ensure the input is an array given that the attribute
115
121
  # is documented as an array but the input is not
116
122
  if attributes[attribute_map[key]].is_a?(Array)
117
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
123
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
124
+ _deserialize(::Regexp.last_match(1), v)
125
+ }
118
126
  end
119
127
  elsif !attributes[attribute_map[key]].nil?
120
128
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
121
129
  end
122
130
  end
131
+
123
132
  new(transformed_hash)
124
133
  end
125
134
 
@@ -145,6 +154,7 @@ module Algolia
145
154
  else
146
155
  false
147
156
  end
157
+
148
158
  when :Object
149
159
  # generic object (usually a Hash), return directly
150
160
  value
@@ -159,10 +169,12 @@ module Algolia
159
169
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
160
170
  end
161
171
  end
162
- else # model
172
+ # model
173
+ else
163
174
  # models (e.g. Pet) or oneOf
164
175
  klass = Algolia::Search.const_get(type)
165
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
176
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
177
+ .build_from_hash(value)
166
178
  end
167
179
  end
168
180
 
@@ -195,6 +207,7 @@ module Algolia
195
207
 
196
208
  hash[param] = _to_hash(value)
197
209
  end
210
+
198
211
  hash
199
212
  end
200
213
 
@@ -209,12 +222,14 @@ module Algolia
209
222
  {}.tap do |hash|
210
223
  value.each { |k, v| hash[k] = _to_hash(v) }
211
224
  end
212
- elsif value.respond_to? :to_hash
225
+ elsif value.respond_to?(:to_hash)
213
226
  value.to_hash
214
227
  else
215
228
  value
216
229
  end
217
230
  end
231
+
218
232
  end
233
+
219
234
  end
220
235
  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
@@ -25,31 +25,39 @@ module Algolia
25
25
  # Attribute type mapping.
26
26
  def self.types_mapping
27
27
  {
28
- :top_users => :'Array<Hash<String, Array<UserId>>>'
28
+ :top_users => :"Array<Hash<String, Array<UserId>>>"
29
29
  }
30
30
  end
31
31
 
32
32
  # List of attributes with nullable: true
33
33
  def self.openapi_nullable
34
- Set.new([])
34
+ Set.new(
35
+ []
36
+ )
35
37
  end
36
38
 
37
39
  # Initializes the object
38
40
  # @param [Hash] attributes Model attributes in the form of hash
39
41
  def initialize(attributes = {})
40
- unless attributes.is_a?(Hash)
41
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::GetTopUserIdsResponse` initialize method"
42
+ if (!attributes.is_a?(Hash))
43
+ raise(
44
+ ArgumentError,
45
+ "The input argument (attributes) must be a hash in `Algolia::GetTopUserIdsResponse` initialize method"
46
+ )
42
47
  end
43
48
 
44
49
  # check to see if the attribute exists and convert string to symbol for hash key
45
- attributes = attributes.each_with_object({}) do |(k, v), h|
46
- unless self.class.attribute_map.key?(k.to_sym)
47
- raise ArgumentError,
48
- "`#{k}` is not a valid attribute in `Algolia::GetTopUserIdsResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
50
+ attributes = attributes.each_with_object({}) { |(k, v), h|
51
+ if (!self.class.attribute_map.key?(k.to_sym))
52
+ raise(
53
+ ArgumentError,
54
+ "`#{k}` is not a valid attribute in `Algolia::GetTopUserIdsResponse`. Please check the name to make sure it's valid. List of attributes: " +
55
+ self.class.attribute_map.keys.inspect
56
+ )
49
57
  end
50
58
 
51
59
  h[k.to_sym] = v
52
- end
60
+ }
53
61
 
54
62
  if attributes.key?(:top_users)
55
63
  if (value = attributes[:top_users]).is_a?(Array)
@@ -63,8 +71,7 @@ module Algolia
63
71
  # Checks equality by comparing each attribute.
64
72
  # @param [Object] Object to be compared
65
73
  def ==(other)
66
- return true if equal?(other)
67
-
74
+ return true if self.equal?(other)
68
75
  self.class == other.class &&
69
76
  top_users == other.top_users
70
77
  end
@@ -86,7 +93,6 @@ module Algolia
86
93
  # @return [Object] Returns the model itself
87
94
  def self.build_from_hash(attributes)
88
95
  return nil unless attributes.is_a?(Hash)
89
-
90
96
  attributes = attributes.transform_keys(&:to_sym)
91
97
  transformed_hash = {}
92
98
  types_mapping.each_pair do |key, type|
@@ -96,12 +102,15 @@ module Algolia
96
102
  # check to ensure the input is an array given that the attribute
97
103
  # is documented as an array but the input is not
98
104
  if attributes[attribute_map[key]].is_a?(Array)
99
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
105
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
106
+ _deserialize(::Regexp.last_match(1), v)
107
+ }
100
108
  end
101
109
  elsif !attributes[attribute_map[key]].nil?
102
110
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
103
111
  end
104
112
  end
113
+
105
114
  new(transformed_hash)
106
115
  end
107
116
 
@@ -127,6 +136,7 @@ module Algolia
127
136
  else
128
137
  false
129
138
  end
139
+
130
140
  when :Object
131
141
  # generic object (usually a Hash), return directly
132
142
  value
@@ -141,10 +151,12 @@ module Algolia
141
151
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
142
152
  end
143
153
  end
144
- else # model
154
+ # model
155
+ else
145
156
  # models (e.g. Pet) or oneOf
146
157
  klass = Algolia::Search.const_get(type)
147
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
158
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
159
+ .build_from_hash(value)
148
160
  end
149
161
  end
150
162
 
@@ -177,6 +189,7 @@ module Algolia
177
189
 
178
190
  hash[param] = _to_hash(value)
179
191
  end
192
+
180
193
  hash
181
194
  end
182
195
 
@@ -191,12 +204,14 @@ module Algolia
191
204
  {}.tap do |hash|
192
205
  value.each { |k, v| hash[k] = _to_hash(v) }
193
206
  end
194
- elsif value.respond_to? :to_hash
207
+ elsif value.respond_to?(:to_hash)
195
208
  value.to_hash
196
209
  else
197
210
  value
198
211
  end
199
212
  end
213
+
200
214
  end
215
+
201
216
  end
202
217
  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
@@ -28,32 +28,40 @@ module Algolia
28
28
  # Attribute type mapping.
29
29
  def self.types_mapping
30
30
  {
31
- :pending => :Boolean,
32
- :clusters => :'Hash<String, Array<String>>'
31
+ :pending => :"Boolean",
32
+ :clusters => :"Hash<String, Array<String>>"
33
33
  }
34
34
  end
35
35
 
36
36
  # List of attributes with nullable: true
37
37
  def self.openapi_nullable
38
- Set.new([])
38
+ Set.new(
39
+ []
40
+ )
39
41
  end
40
42
 
41
43
  # Initializes the object
42
44
  # @param [Hash] attributes Model attributes in the form of hash
43
45
  def initialize(attributes = {})
44
- unless attributes.is_a?(Hash)
45
- raise ArgumentError, "The input argument (attributes) must be a hash in `Algolia::HasPendingMappingsResponse` initialize method"
46
+ if (!attributes.is_a?(Hash))
47
+ raise(
48
+ ArgumentError,
49
+ "The input argument (attributes) must be a hash in `Algolia::HasPendingMappingsResponse` initialize method"
50
+ )
46
51
  end
47
52
 
48
53
  # check to see if the attribute exists and convert string to symbol for hash key
49
- attributes = attributes.each_with_object({}) do |(k, v), h|
50
- unless self.class.attribute_map.key?(k.to_sym)
51
- raise ArgumentError,
52
- "`#{k}` is not a valid attribute in `Algolia::HasPendingMappingsResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
+ attributes = attributes.each_with_object({}) { |(k, v), h|
55
+ if (!self.class.attribute_map.key?(k.to_sym))
56
+ raise(
57
+ ArgumentError,
58
+ "`#{k}` is not a valid attribute in `Algolia::HasPendingMappingsResponse`. Please check the name to make sure it's valid. List of attributes: " +
59
+ self.class.attribute_map.keys.inspect
60
+ )
53
61
  end
54
62
 
55
63
  h[k.to_sym] = v
56
- end
64
+ }
57
65
 
58
66
  if attributes.key?(:pending)
59
67
  self.pending = attributes[:pending]
@@ -71,8 +79,7 @@ module Algolia
71
79
  # Checks equality by comparing each attribute.
72
80
  # @param [Object] Object to be compared
73
81
  def ==(other)
74
- return true if equal?(other)
75
-
82
+ return true if self.equal?(other)
76
83
  self.class == other.class &&
77
84
  pending == other.pending &&
78
85
  clusters == other.clusters
@@ -95,7 +102,6 @@ module Algolia
95
102
  # @return [Object] Returns the model itself
96
103
  def self.build_from_hash(attributes)
97
104
  return nil unless attributes.is_a?(Hash)
98
-
99
105
  attributes = attributes.transform_keys(&:to_sym)
100
106
  transformed_hash = {}
101
107
  types_mapping.each_pair do |key, type|
@@ -105,12 +111,15 @@ module Algolia
105
111
  # check to ensure the input is an array given that the attribute
106
112
  # is documented as an array but the input is not
107
113
  if attributes[attribute_map[key]].is_a?(Array)
108
- transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v| _deserialize(::Regexp.last_match(1), v) }
114
+ transformed_hash[key.to_sym] = attributes[attribute_map[key]].map { |v|
115
+ _deserialize(::Regexp.last_match(1), v)
116
+ }
109
117
  end
110
118
  elsif !attributes[attribute_map[key]].nil?
111
119
  transformed_hash[key.to_sym] = _deserialize(type, attributes[attribute_map[key]])
112
120
  end
113
121
  end
122
+
114
123
  new(transformed_hash)
115
124
  end
116
125
 
@@ -136,6 +145,7 @@ module Algolia
136
145
  else
137
146
  false
138
147
  end
148
+
139
149
  when :Object
140
150
  # generic object (usually a Hash), return directly
141
151
  value
@@ -150,10 +160,12 @@ module Algolia
150
160
  hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
151
161
  end
152
162
  end
153
- else # model
163
+ # model
164
+ else
154
165
  # models (e.g. Pet) or oneOf
155
166
  klass = Algolia::Search.const_get(type)
156
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
167
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass
168
+ .build_from_hash(value)
157
169
  end
158
170
  end
159
171
 
@@ -186,6 +198,7 @@ module Algolia
186
198
 
187
199
  hash[param] = _to_hash(value)
188
200
  end
201
+
189
202
  hash
190
203
  end
191
204
 
@@ -200,12 +213,14 @@ module Algolia
200
213
  {}.tap do |hash|
201
214
  value.each { |k, v| hash[k] = _to_hash(v) }
202
215
  end
203
- elsif value.respond_to? :to_hash
216
+ elsif value.respond_to?(:to_hash)
204
217
  value.to_hash
205
218
  else
206
219
  value
207
220
  end
208
221
  end
222
+
209
223
  end
224
+
210
225
  end
211
226
  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 'date'
4
- require 'time'
3
+ require "date"
4
+ require "time"
5
5
 
6
6
  module Algolia
7
7
  module Search
8
8
  module HighlightResult
9
9
  class << self
10
- # List of class defined in oneOf (OpenAPI v3)
10
+ # List of class defined in oneOf (OpenAPI v3)
11
11
  def openapi_one_of
12
12
  [
13
- :'Array<HighlightResultOption>',
14
- :'Hash<String, HighlightResultOption>',
15
- :HighlightResultOption
13
+ :"Array<HighlightResultOption>",
14
+ :"Hash<String, HighlightResultOption>",
15
+ :"HighlightResultOption"
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
- next if klass == :AnyType # "nullable: true"
32
-
33
- typed_data = find_and_cast_into_type(klass, data)
34
- return typed_data if typed_data
35
- rescue # rescue all errors so we keep iterating even if the current item lookup raises
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
- # NOTE: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
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 'Boolean'
53
+ when "Boolean"
51
54
  return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
52
- when 'Float'
55
+ when "Float"
53
56
  return data if data.instance_of?(Float)
54
- when 'Integer'
57
+ when "Integer"
55
58
  return data if data.instance_of?(Integer)
56
- when 'Time'
59
+ when "Time"
57
60
  return Time.parse(data)
58
- when 'Date'
61
+ when "Date"
59
62
  return Date.parse(data)
60
- when 'String'
63
+ when "String"
61
64
  return data if data.instance_of?(String)
62
- when 'Object' # "type: object"
65
+ # "type: object"
66
+ when "Object"
63
67
  return data if data.instance_of?(Hash)
64
- when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
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
- when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
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
- else # model
80
+ # model
81
+ else
75
82
  const = Algolia::Search.const_get(klass)
76
83
  if const
77
- if const.respond_to?(:openapi_one_of) # nested oneOf model
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
- raise # if no match by now, raise
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