dodopayments 2.9.1 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (302) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +9 -9
  4. data/lib/dodopayments/client.rb +4 -0
  5. data/lib/dodopayments/internal/transport/base_client.rb +2 -0
  6. data/lib/dodopayments/internal/type/union.rb +21 -7
  7. data/lib/dodopayments/models/abandoned_checkout_detected_webhook_event.rb +4 -16
  8. data/lib/dodopayments/models/abandoned_checkout_recovered_webhook_event.rb +4 -16
  9. data/lib/dodopayments/models/checkout_session_flags.rb +15 -1
  10. data/lib/dodopayments/models/checkout_session_request.rb +25 -2
  11. data/lib/dodopayments/models/checkout_session_response.rb +33 -1
  12. data/lib/dodopayments/models/credit_added_webhook_event.rb +4 -16
  13. data/lib/dodopayments/models/credit_balance_low_webhook_event.rb +4 -16
  14. data/lib/dodopayments/models/credit_deducted_webhook_event.rb +4 -16
  15. data/lib/dodopayments/models/credit_expired_webhook_event.rb +4 -16
  16. data/lib/dodopayments/models/credit_manual_adjustment_webhook_event.rb +4 -16
  17. data/lib/dodopayments/models/credit_overage_charged_webhook_event.rb +4 -16
  18. data/lib/dodopayments/models/credit_overage_reset_webhook_event.rb +4 -16
  19. data/lib/dodopayments/models/credit_rolled_over_webhook_event.rb +4 -16
  20. data/lib/dodopayments/models/credit_rollover_forfeited_webhook_event.rb +4 -16
  21. data/lib/dodopayments/models/discount_detail.rb +143 -0
  22. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +4 -16
  23. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +4 -16
  24. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +4 -16
  25. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +4 -16
  26. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +4 -16
  27. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +4 -16
  28. data/lib/dodopayments/models/dispute_won_webhook_event.rb +4 -16
  29. data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +4 -16
  30. data/lib/dodopayments/models/dunning_started_webhook_event.rb +4 -16
  31. data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +4 -16
  32. data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +4 -16
  33. data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +4 -16
  34. data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +4 -16
  35. data/lib/dodopayments/models/filter_type.rb +71 -0
  36. data/lib/dodopayments/models/github_permission.rb +19 -0
  37. data/lib/dodopayments/models/integration_config.rb +3 -19
  38. data/lib/dodopayments/models/integration_config_response.rb +3 -19
  39. data/lib/dodopayments/models/invoices/payment_retrieve_payout_params.rb +22 -0
  40. data/lib/dodopayments/models/license_key_created_webhook_event.rb +4 -16
  41. data/lib/dodopayments/models/meter_filter.rb +3 -331
  42. data/lib/dodopayments/models/payment.rb +15 -3
  43. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +4 -16
  44. data/lib/dodopayments/models/payment_create_params.rb +25 -3
  45. data/lib/dodopayments/models/payment_create_response.rb +14 -3
  46. data/lib/dodopayments/models/payment_failed_webhook_event.rb +4 -16
  47. data/lib/dodopayments/models/payment_method_types.rb +1 -0
  48. data/lib/dodopayments/models/payment_processing_webhook_event.rb +4 -16
  49. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +4 -16
  50. data/lib/dodopayments/models/payout_list_response.rb +6 -3
  51. data/lib/dodopayments/models/price.rb +20 -48
  52. data/lib/dodopayments/models/product.rb +3 -3
  53. data/lib/dodopayments/models/product_collection.rb +74 -0
  54. data/lib/dodopayments/models/product_collection_create_params.rb +47 -0
  55. data/lib/dodopayments/models/product_collection_delete_params.rb +20 -0
  56. data/lib/dodopayments/models/product_collection_list_params.rb +46 -0
  57. data/lib/dodopayments/models/product_collection_list_response.rb +65 -0
  58. data/lib/dodopayments/models/product_collection_retrieve_params.rb +20 -0
  59. data/lib/dodopayments/models/product_collection_unarchive_params.rb +20 -0
  60. data/lib/dodopayments/models/product_collection_unarchive_response.rb +33 -0
  61. data/lib/dodopayments/models/product_collection_update_images_params.rb +29 -0
  62. data/lib/dodopayments/models/product_collection_update_images_response.rb +25 -0
  63. data/lib/dodopayments/models/product_collection_update_params.rb +61 -0
  64. data/lib/dodopayments/models/product_collections/group_create_params.rb +22 -0
  65. data/lib/dodopayments/models/product_collections/group_delete_params.rb +28 -0
  66. data/lib/dodopayments/models/product_collections/group_product.rb +26 -0
  67. data/lib/dodopayments/models/product_collections/group_update_params.rb +59 -0
  68. data/lib/dodopayments/models/product_collections/groups/item_create_params.rb +41 -0
  69. data/lib/dodopayments/models/product_collections/groups/item_create_response.rb +15 -0
  70. data/lib/dodopayments/models/product_collections/groups/item_delete_params.rb +36 -0
  71. data/lib/dodopayments/models/product_collections/groups/item_update_params.rb +47 -0
  72. data/lib/dodopayments/models/product_collections/groups/product_collection_product.rb +132 -0
  73. data/lib/dodopayments/models/product_collections/product_collection_group_details.rb +42 -0
  74. data/lib/dodopayments/models/product_collections/product_collection_group_response.rb +39 -0
  75. data/lib/dodopayments/models/product_create_params.rb +3 -3
  76. data/lib/dodopayments/models/product_item_req.rb +42 -1
  77. data/lib/dodopayments/models/product_update_params.rb +3 -3
  78. data/lib/dodopayments/models/refund_failed_webhook_event.rb +4 -16
  79. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +4 -16
  80. data/lib/dodopayments/models/subscription.rb +24 -5
  81. data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -16
  82. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -16
  83. data/lib/dodopayments/models/subscription_create_params.rb +25 -3
  84. data/lib/dodopayments/models/subscription_create_response.rb +14 -3
  85. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -16
  86. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -16
  87. data/lib/dodopayments/models/subscription_list_response.rb +45 -5
  88. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -16
  89. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -16
  90. data/lib/dodopayments/models/subscription_preview_change_plan_response.rb +21 -49
  91. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -16
  92. data/lib/dodopayments/models/subscription_update_params.rb +12 -1
  93. data/lib/dodopayments/models/subscription_update_payment_method_params.rb +19 -37
  94. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -16
  95. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +41 -39
  96. data/lib/dodopayments/models/unwrap_webhook_event.rb +41 -39
  97. data/lib/dodopayments/models/update_subscription_plan_req.rb +17 -6
  98. data/lib/dodopayments/models/webhook_event_type.rb +1 -2
  99. data/lib/dodopayments/models/webhook_payload.rb +52 -143
  100. data/lib/dodopayments/models.rb +24 -0
  101. data/lib/dodopayments/resources/checkout_sessions.rb +12 -4
  102. data/lib/dodopayments/resources/invoices/payments.rb +18 -0
  103. data/lib/dodopayments/resources/payments.rb +6 -2
  104. data/lib/dodopayments/resources/product_collections/groups/items.rb +111 -0
  105. data/lib/dodopayments/resources/product_collections/groups.rb +109 -0
  106. data/lib/dodopayments/resources/product_collections.rb +179 -0
  107. data/lib/dodopayments/resources/subscriptions.rb +20 -10
  108. data/lib/dodopayments/version.rb +1 -1
  109. data/lib/dodopayments.rb +29 -0
  110. data/rbi/dodopayments/client.rbi +3 -0
  111. data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +4 -40
  112. data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +4 -40
  113. data/rbi/dodopayments/models/checkout_session_flags.rbi +23 -0
  114. data/rbi/dodopayments/models/checkout_session_request.rbi +26 -0
  115. data/rbi/dodopayments/models/checkout_session_response.rbi +43 -5
  116. data/rbi/dodopayments/models/credit_added_webhook_event.rbi +4 -29
  117. data/rbi/dodopayments/models/credit_balance_low_webhook_event.rbi +4 -33
  118. data/rbi/dodopayments/models/credit_deducted_webhook_event.rbi +4 -33
  119. data/rbi/dodopayments/models/credit_expired_webhook_event.rbi +4 -33
  120. data/rbi/dodopayments/models/credit_manual_adjustment_webhook_event.rbi +4 -39
  121. data/rbi/dodopayments/models/credit_overage_charged_webhook_event.rbi +4 -36
  122. data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +4 -36
  123. data/rbi/dodopayments/models/credit_rolled_over_webhook_event.rbi +4 -33
  124. data/rbi/dodopayments/models/credit_rollover_forfeited_webhook_event.rbi +4 -40
  125. data/rbi/dodopayments/models/discount_detail.rbi +161 -0
  126. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -33
  127. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -33
  128. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -34
  129. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -33
  130. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -29
  131. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -33
  132. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -29
  133. data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +4 -33
  134. data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +4 -33
  135. data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +4 -40
  136. data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +4 -40
  137. data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +4 -39
  138. data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +4 -40
  139. data/rbi/dodopayments/models/filter_type.rbi +112 -0
  140. data/rbi/dodopayments/models/github_permission.rbi +26 -0
  141. data/rbi/dodopayments/models/integration_config.rbi +3 -59
  142. data/rbi/dodopayments/models/integration_config_response.rbi +3 -59
  143. data/rbi/dodopayments/models/invoices/payment_retrieve_payout_params.rbi +40 -0
  144. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -34
  145. data/rbi/dodopayments/models/meter_filter.rbi +3 -572
  146. data/rbi/dodopayments/models/payment.rbi +10 -2
  147. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -33
  148. data/rbi/dodopayments/models/payment_create_params.rbi +26 -2
  149. data/rbi/dodopayments/models/payment_create_response.rbi +12 -2
  150. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -33
  151. data/rbi/dodopayments/models/payment_method_types.rbi +1 -0
  152. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -34
  153. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -33
  154. data/rbi/dodopayments/models/price.rbi +18 -90
  155. data/rbi/dodopayments/models/product_collection.rbi +108 -0
  156. data/rbi/dodopayments/models/product_collection_create_params.rbi +82 -0
  157. data/rbi/dodopayments/models/product_collection_delete_params.rbi +38 -0
  158. data/rbi/dodopayments/models/product_collection_list_params.rbi +82 -0
  159. data/rbi/dodopayments/models/product_collection_list_response.rbi +88 -0
  160. data/rbi/dodopayments/models/product_collection_retrieve_params.rbi +38 -0
  161. data/rbi/dodopayments/models/product_collection_unarchive_params.rbi +38 -0
  162. data/rbi/dodopayments/models/product_collection_unarchive_response.rbi +56 -0
  163. data/rbi/dodopayments/models/product_collection_update_images_params.rbi +52 -0
  164. data/rbi/dodopayments/models/product_collection_update_images_response.rbi +40 -0
  165. data/rbi/dodopayments/models/product_collection_update_params.rbi +84 -0
  166. data/rbi/dodopayments/models/product_collections/group_create_params.rbi +40 -0
  167. data/rbi/dodopayments/models/product_collections/group_delete_params.rbi +48 -0
  168. data/rbi/dodopayments/models/product_collections/group_product.rbi +46 -0
  169. data/rbi/dodopayments/models/product_collections/group_update_params.rbi +80 -0
  170. data/rbi/dodopayments/models/product_collections/groups/item_create_params.rbi +68 -0
  171. data/rbi/dodopayments/models/product_collections/groups/item_create_response.rbi +17 -0
  172. data/rbi/dodopayments/models/product_collections/groups/item_delete_params.rbi +55 -0
  173. data/rbi/dodopayments/models/product_collections/groups/item_update_params.rbi +68 -0
  174. data/rbi/dodopayments/models/product_collections/groups/product_collection_product.rbi +148 -0
  175. data/rbi/dodopayments/models/product_collections/product_collection_group_details.rbi +67 -0
  176. data/rbi/dodopayments/models/product_collections/product_collection_group_response.rbi +68 -0
  177. data/rbi/dodopayments/models/product_item_req.rbi +74 -3
  178. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -31
  179. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -33
  180. data/rbi/dodopayments/models/subscription.rbi +22 -4
  181. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +4 -36
  182. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +4 -36
  183. data/rbi/dodopayments/models/subscription_create_params.rbi +26 -2
  184. data/rbi/dodopayments/models/subscription_create_response.rbi +12 -2
  185. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +4 -36
  186. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +4 -36
  187. data/rbi/dodopayments/models/subscription_list_response.rbi +77 -4
  188. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +4 -36
  189. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +4 -40
  190. data/rbi/dodopayments/models/subscription_preview_change_plan_response.rbi +18 -123
  191. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +4 -36
  192. data/rbi/dodopayments/models/subscription_update_params.rbi +14 -0
  193. data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +28 -112
  194. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +4 -36
  195. data/rbi/dodopayments/models/update_subscription_plan_req.rbi +18 -8
  196. data/rbi/dodopayments/models/webhook_event_type.rbi +5 -4
  197. data/rbi/dodopayments/models/webhook_payload.rbi +46 -466
  198. data/rbi/dodopayments/models.rbi +31 -0
  199. data/rbi/dodopayments/resources/checkout_sessions.rbi +22 -0
  200. data/rbi/dodopayments/resources/invoices/payments.rbi +9 -0
  201. data/rbi/dodopayments/resources/payments.rbi +11 -1
  202. data/rbi/dodopayments/resources/product_collections/groups/items.rbi +83 -0
  203. data/rbi/dodopayments/resources/product_collections/groups.rbi +88 -0
  204. data/rbi/dodopayments/resources/product_collections.rbi +149 -0
  205. data/rbi/dodopayments/resources/subscriptions.rbi +37 -13
  206. data/sig/dodopayments/client.rbs +2 -0
  207. data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +4 -14
  208. data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +4 -14
  209. data/sig/dodopayments/models/checkout_session_flags.rbs +7 -0
  210. data/sig/dodopayments/models/checkout_session_request.rbs +10 -0
  211. data/sig/dodopayments/models/checkout_session_response.rbs +27 -3
  212. data/sig/dodopayments/models/credit_added_webhook_event.rbs +4 -14
  213. data/sig/dodopayments/models/credit_balance_low_webhook_event.rbs +4 -14
  214. data/sig/dodopayments/models/credit_deducted_webhook_event.rbs +4 -14
  215. data/sig/dodopayments/models/credit_expired_webhook_event.rbs +4 -14
  216. data/sig/dodopayments/models/credit_manual_adjustment_webhook_event.rbs +4 -14
  217. data/sig/dodopayments/models/credit_overage_charged_webhook_event.rbs +4 -14
  218. data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +4 -14
  219. data/sig/dodopayments/models/credit_rolled_over_webhook_event.rbs +4 -14
  220. data/sig/dodopayments/models/credit_rollover_forfeited_webhook_event.rbs +4 -14
  221. data/sig/dodopayments/models/discount_detail.rbs +95 -0
  222. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -14
  223. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -14
  224. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -14
  225. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -14
  226. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -14
  227. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -14
  228. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -14
  229. data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +4 -14
  230. data/sig/dodopayments/models/dunning_started_webhook_event.rbs +4 -14
  231. data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +4 -14
  232. data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +4 -14
  233. data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +4 -14
  234. data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +4 -14
  235. data/sig/dodopayments/models/filter_type.rbs +52 -0
  236. data/sig/dodopayments/models/github_permission.rbs +17 -0
  237. data/sig/dodopayments/models/integration_config.rbs +4 -18
  238. data/sig/dodopayments/models/integration_config_response.rbs +4 -18
  239. data/sig/dodopayments/models/invoices/payment_retrieve_payout_params.rbs +25 -0
  240. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -14
  241. data/sig/dodopayments/models/meter_filter.rbs +4 -252
  242. data/sig/dodopayments/models/payment.rbs +5 -0
  243. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -14
  244. data/sig/dodopayments/models/payment_create_params.rbs +10 -0
  245. data/sig/dodopayments/models/payment_create_response.rbs +5 -0
  246. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -14
  247. data/sig/dodopayments/models/payment_method_types.rbs +2 -0
  248. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -14
  249. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -14
  250. data/sig/dodopayments/models/price.rbs +15 -45
  251. data/sig/dodopayments/models/product_collection.rbs +55 -0
  252. data/sig/dodopayments/models/product_collection_create_params.rbs +41 -0
  253. data/sig/dodopayments/models/product_collection_delete_params.rbs +23 -0
  254. data/sig/dodopayments/models/product_collection_list_params.rbs +49 -0
  255. data/sig/dodopayments/models/product_collection_list_response.rbs +50 -0
  256. data/sig/dodopayments/models/product_collection_retrieve_params.rbs +23 -0
  257. data/sig/dodopayments/models/product_collection_unarchive_params.rbs +23 -0
  258. data/sig/dodopayments/models/product_collection_unarchive_response.rbs +30 -0
  259. data/sig/dodopayments/models/product_collection_update_images_params.rbs +28 -0
  260. data/sig/dodopayments/models/product_collection_update_images_response.rbs +16 -0
  261. data/sig/dodopayments/models/product_collection_update_params.rbs +51 -0
  262. data/sig/dodopayments/models/product_collections/group_create_params.rbs +27 -0
  263. data/sig/dodopayments/models/product_collections/group_delete_params.rbs +30 -0
  264. data/sig/dodopayments/models/product_collections/group_product.rbs +17 -0
  265. data/sig/dodopayments/models/product_collections/group_update_params.rbs +48 -0
  266. data/sig/dodopayments/models/product_collections/groups/item_create_params.rbs +40 -0
  267. data/sig/dodopayments/models/product_collections/groups/item_create_response.rbs +12 -0
  268. data/sig/dodopayments/models/product_collections/groups/item_delete_params.rbs +36 -0
  269. data/sig/dodopayments/models/product_collections/groups/item_update_params.rbs +40 -0
  270. data/sig/dodopayments/models/product_collections/groups/product_collection_product.rbs +99 -0
  271. data/sig/dodopayments/models/product_collections/product_collection_group_details.rbs +34 -0
  272. data/sig/dodopayments/models/product_collections/product_collection_group_response.rbs +39 -0
  273. data/sig/dodopayments/models/product_item_req.rbs +27 -3
  274. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -14
  275. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -14
  276. data/sig/dodopayments/models/subscription.rbs +10 -0
  277. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -14
  278. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -14
  279. data/sig/dodopayments/models/subscription_create_params.rbs +10 -0
  280. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  281. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -14
  282. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -14
  283. data/sig/dodopayments/models/subscription_list_response.rbs +29 -0
  284. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -14
  285. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -14
  286. data/sig/dodopayments/models/subscription_preview_change_plan_response.rbs +15 -45
  287. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -14
  288. data/sig/dodopayments/models/subscription_update_params.rbs +5 -0
  289. data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +17 -57
  290. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -14
  291. data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
  292. data/sig/dodopayments/models/webhook_event_type.rbs +2 -4
  293. data/sig/dodopayments/models/webhook_payload.rbs +50 -213
  294. data/sig/dodopayments/models.rbs +24 -0
  295. data/sig/dodopayments/resources/checkout_sessions.rbs +4 -0
  296. data/sig/dodopayments/resources/invoices/payments.rbs +5 -0
  297. data/sig/dodopayments/resources/payments.rbs +2 -0
  298. data/sig/dodopayments/resources/product_collections/groups/items.rbs +33 -0
  299. data/sig/dodopayments/resources/product_collections/groups.rbs +34 -0
  300. data/sig/dodopayments/resources/product_collections.rbs +56 -0
  301. data/sig/dodopayments/resources/subscriptions.rbs +6 -1
  302. metadata +89 -2
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Payment,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::PaymentProcessingWebhookEvent::type_
8
+ type: :"payment.processing"
9
9
  }
10
10
 
11
11
  class PaymentProcessingWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::PaymentProcessingWebhookEvent::type_
18
+ attr_accessor type: :"payment.processing"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Payment,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::PaymentProcessingWebhookEvent::type_
24
+ ?type: :"payment.processing"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Payment,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::PaymentProcessingWebhookEvent::type_
31
+ type: :"payment.processing"
32
32
  }
33
-
34
- type type_ = :"payment.processing"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- PAYMENT_PROCESSING: :"payment.processing"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::PaymentProcessingWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Payment,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
8
+ type: :"payment.succeeded"
9
9
  }
10
10
 
11
11
  class PaymentSucceededWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
18
+ attr_accessor type: :"payment.succeeded"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Payment,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
24
+ ?type: :"payment.succeeded"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Payment,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
31
+ type: :"payment.succeeded"
32
32
  }
33
-
34
- type type_ = :"payment.succeeded"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- PAYMENT_SUCCEEDED: :"payment.succeeded"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::PaymentSucceededWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -14,7 +14,7 @@ module Dodopayments
14
14
  discount: Integer,
15
15
  price: Integer,
16
16
  purchasing_power_parity: bool,
17
- type: Dodopayments::Models::Price::OneTimePrice::type_,
17
+ type: :one_time_price,
18
18
  pay_what_you_want: bool,
19
19
  suggested_price: Integer?,
20
20
  tax_inclusive: bool?
@@ -29,7 +29,7 @@ module Dodopayments
29
29
 
30
30
  attr_accessor purchasing_power_parity: bool
31
31
 
32
- attr_accessor type: Dodopayments::Models::Price::OneTimePrice::type_
32
+ attr_accessor type: :one_time_price
33
33
 
34
34
  attr_reader pay_what_you_want: bool?
35
35
 
@@ -44,10 +44,10 @@ module Dodopayments
44
44
  discount: Integer,
45
45
  price: Integer,
46
46
  purchasing_power_parity: bool,
47
- type: Dodopayments::Models::Price::OneTimePrice::type_,
48
47
  ?pay_what_you_want: bool,
49
48
  ?suggested_price: Integer?,
50
- ?tax_inclusive: bool?
49
+ ?tax_inclusive: bool?,
50
+ ?type: :one_time_price
51
51
  ) -> void
52
52
 
53
53
  def to_hash: -> {
@@ -55,21 +55,11 @@ module Dodopayments
55
55
  discount: Integer,
56
56
  price: Integer,
57
57
  purchasing_power_parity: bool,
58
- type: Dodopayments::Models::Price::OneTimePrice::type_,
58
+ type: :one_time_price,
59
59
  pay_what_you_want: bool,
60
60
  suggested_price: Integer?,
61
61
  tax_inclusive: bool?
62
62
  }
63
-
64
- type type_ = :one_time_price
65
-
66
- module Type
67
- extend Dodopayments::Internal::Type::Enum
68
-
69
- ONE_TIME_PRICE: :one_time_price
70
-
71
- def self?.values: -> ::Array[Dodopayments::Models::Price::OneTimePrice::type_]
72
- end
73
63
  end
74
64
 
75
65
  type recurring_price =
@@ -82,7 +72,7 @@ module Dodopayments
82
72
  purchasing_power_parity: bool,
83
73
  subscription_period_count: Integer,
84
74
  subscription_period_interval: Dodopayments::Models::time_interval,
85
- type: Dodopayments::Models::Price::RecurringPrice::type_,
75
+ type: :recurring_price,
86
76
  tax_inclusive: bool?,
87
77
  trial_period_days: Integer
88
78
  }
@@ -104,7 +94,7 @@ module Dodopayments
104
94
 
105
95
  attr_accessor subscription_period_interval: Dodopayments::Models::time_interval
106
96
 
107
- attr_accessor type: Dodopayments::Models::Price::RecurringPrice::type_
97
+ attr_accessor type: :recurring_price
108
98
 
109
99
  attr_accessor tax_inclusive: bool?
110
100
 
@@ -121,9 +111,9 @@ module Dodopayments
121
111
  purchasing_power_parity: bool,
122
112
  subscription_period_count: Integer,
123
113
  subscription_period_interval: Dodopayments::Models::time_interval,
124
- type: Dodopayments::Models::Price::RecurringPrice::type_,
125
114
  ?tax_inclusive: bool?,
126
- ?trial_period_days: Integer
115
+ ?trial_period_days: Integer,
116
+ ?type: :recurring_price
127
117
  ) -> void
128
118
 
129
119
  def to_hash: -> {
@@ -135,20 +125,10 @@ module Dodopayments
135
125
  purchasing_power_parity: bool,
136
126
  subscription_period_count: Integer,
137
127
  subscription_period_interval: Dodopayments::Models::time_interval,
138
- type: Dodopayments::Models::Price::RecurringPrice::type_,
128
+ type: :recurring_price,
139
129
  tax_inclusive: bool?,
140
130
  trial_period_days: Integer
141
131
  }
142
-
143
- type type_ = :recurring_price
144
-
145
- module Type
146
- extend Dodopayments::Internal::Type::Enum
147
-
148
- RECURRING_PRICE: :recurring_price
149
-
150
- def self?.values: -> ::Array[Dodopayments::Models::Price::RecurringPrice::type_]
151
- end
152
132
  end
153
133
 
154
134
  type usage_based_price =
@@ -161,7 +141,7 @@ module Dodopayments
161
141
  purchasing_power_parity: bool,
162
142
  subscription_period_count: Integer,
163
143
  subscription_period_interval: Dodopayments::Models::time_interval,
164
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
144
+ type: :usage_based_price,
165
145
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
166
146
  tax_inclusive: bool?
167
147
  }
@@ -183,7 +163,7 @@ module Dodopayments
183
163
 
184
164
  attr_accessor subscription_period_interval: Dodopayments::Models::time_interval
185
165
 
186
- attr_accessor type: Dodopayments::Models::Price::UsageBasedPrice::type_
166
+ attr_accessor type: :usage_based_price
187
167
 
188
168
  attr_accessor meters: ::Array[Dodopayments::AddMeterToPrice]?
189
169
 
@@ -198,9 +178,9 @@ module Dodopayments
198
178
  purchasing_power_parity: bool,
199
179
  subscription_period_count: Integer,
200
180
  subscription_period_interval: Dodopayments::Models::time_interval,
201
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
202
181
  ?meters: ::Array[Dodopayments::AddMeterToPrice]?,
203
- ?tax_inclusive: bool?
182
+ ?tax_inclusive: bool?,
183
+ ?type: :usage_based_price
204
184
  ) -> void
205
185
 
206
186
  def to_hash: -> {
@@ -212,20 +192,10 @@ module Dodopayments
212
192
  purchasing_power_parity: bool,
213
193
  subscription_period_count: Integer,
214
194
  subscription_period_interval: Dodopayments::Models::time_interval,
215
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
195
+ type: :usage_based_price,
216
196
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
217
197
  tax_inclusive: bool?
218
198
  }
219
-
220
- type type_ = :usage_based_price
221
-
222
- module Type
223
- extend Dodopayments::Internal::Type::Enum
224
-
225
- USAGE_BASED_PRICE: :usage_based_price
226
-
227
- def self?.values: -> ::Array[Dodopayments::Models::Price::UsageBasedPrice::type_]
228
- end
229
199
  end
230
200
 
231
201
  def self?.variants: -> ::Array[Dodopayments::Models::price]
@@ -0,0 +1,55 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection =
4
+ {
5
+ id: String,
6
+ brand_id: String,
7
+ created_at: Time,
8
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupResponse],
9
+ name: String,
10
+ updated_at: Time,
11
+ description: String?,
12
+ image: String?
13
+ }
14
+
15
+ class ProductCollection < Dodopayments::Internal::Type::BaseModel
16
+ attr_accessor id: String
17
+
18
+ attr_accessor brand_id: String
19
+
20
+ attr_accessor created_at: Time
21
+
22
+ attr_accessor groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupResponse]
23
+
24
+ attr_accessor name: String
25
+
26
+ attr_accessor updated_at: Time
27
+
28
+ attr_accessor description: String?
29
+
30
+ attr_accessor image: String?
31
+
32
+ def initialize: (
33
+ id: String,
34
+ brand_id: String,
35
+ created_at: Time,
36
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupResponse],
37
+ name: String,
38
+ updated_at: Time,
39
+ ?description: String?,
40
+ ?image: String?
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ id: String,
45
+ brand_id: String,
46
+ created_at: Time,
47
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupResponse],
48
+ name: String,
49
+ updated_at: Time,
50
+ description: String?,
51
+ image: String?
52
+ }
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,41 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_create_params =
4
+ {
5
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupDetails],
6
+ name: String,
7
+ brand_id: String?,
8
+ description: String?
9
+ }
10
+ & Dodopayments::Internal::Type::request_parameters
11
+
12
+ class ProductCollectionCreateParams < Dodopayments::Internal::Type::BaseModel
13
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
14
+ include Dodopayments::Internal::Type::RequestParameters
15
+
16
+ attr_accessor groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupDetails]
17
+
18
+ attr_accessor name: String
19
+
20
+ attr_accessor brand_id: String?
21
+
22
+ attr_accessor description: String?
23
+
24
+ def initialize: (
25
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupDetails],
26
+ name: String,
27
+ ?brand_id: String?,
28
+ ?description: String?,
29
+ ?request_options: Dodopayments::request_opts
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ groups: ::Array[Dodopayments::ProductCollections::ProductCollectionGroupDetails],
34
+ name: String,
35
+ brand_id: String?,
36
+ description: String?,
37
+ request_options: Dodopayments::RequestOptions
38
+ }
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,23 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_delete_params =
4
+ { id: String } & Dodopayments::Internal::Type::request_parameters
5
+
6
+ class ProductCollectionDeleteParams < Dodopayments::Internal::Type::BaseModel
7
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
8
+ include Dodopayments::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: Dodopayments::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ id: String,
19
+ request_options: Dodopayments::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,49 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_list_params =
4
+ {
5
+ archived: bool,
6
+ brand_id: String,
7
+ page_number: Integer,
8
+ page_size: Integer
9
+ }
10
+ & Dodopayments::Internal::Type::request_parameters
11
+
12
+ class ProductCollectionListParams < Dodopayments::Internal::Type::BaseModel
13
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
14
+ include Dodopayments::Internal::Type::RequestParameters
15
+
16
+ attr_reader archived: bool?
17
+
18
+ def archived=: (bool) -> bool
19
+
20
+ attr_reader brand_id: String?
21
+
22
+ def brand_id=: (String) -> String
23
+
24
+ attr_reader page_number: Integer?
25
+
26
+ def page_number=: (Integer) -> Integer
27
+
28
+ attr_reader page_size: Integer?
29
+
30
+ def page_size=: (Integer) -> Integer
31
+
32
+ def initialize: (
33
+ ?archived: bool,
34
+ ?brand_id: String,
35
+ ?page_number: Integer,
36
+ ?page_size: Integer,
37
+ ?request_options: Dodopayments::request_opts
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ archived: bool,
42
+ brand_id: String,
43
+ page_number: Integer,
44
+ page_size: Integer,
45
+ request_options: Dodopayments::RequestOptions
46
+ }
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,50 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_list_response =
4
+ {
5
+ id: String,
6
+ created_at: Time,
7
+ name: String,
8
+ products_count: Integer,
9
+ updated_at: Time,
10
+ description: String?,
11
+ image: String?
12
+ }
13
+
14
+ class ProductCollectionListResponse < Dodopayments::Internal::Type::BaseModel
15
+ attr_accessor id: String
16
+
17
+ attr_accessor created_at: Time
18
+
19
+ attr_accessor name: String
20
+
21
+ attr_accessor products_count: Integer
22
+
23
+ attr_accessor updated_at: Time
24
+
25
+ attr_accessor description: String?
26
+
27
+ attr_accessor image: String?
28
+
29
+ def initialize: (
30
+ id: String,
31
+ created_at: Time,
32
+ name: String,
33
+ products_count: Integer,
34
+ updated_at: Time,
35
+ ?description: String?,
36
+ ?image: String?
37
+ ) -> void
38
+
39
+ def to_hash: -> {
40
+ id: String,
41
+ created_at: Time,
42
+ name: String,
43
+ products_count: Integer,
44
+ updated_at: Time,
45
+ description: String?,
46
+ image: String?
47
+ }
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,23 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_retrieve_params =
4
+ { id: String } & Dodopayments::Internal::Type::request_parameters
5
+
6
+ class ProductCollectionRetrieveParams < Dodopayments::Internal::Type::BaseModel
7
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
8
+ include Dodopayments::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: Dodopayments::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ id: String,
19
+ request_options: Dodopayments::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,23 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_unarchive_params =
4
+ { id: String } & Dodopayments::Internal::Type::request_parameters
5
+
6
+ class ProductCollectionUnarchiveParams < Dodopayments::Internal::Type::BaseModel
7
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
8
+ include Dodopayments::Internal::Type::RequestParameters
9
+
10
+ attr_accessor id: String
11
+
12
+ def initialize: (
13
+ id: String,
14
+ ?request_options: Dodopayments::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ id: String,
19
+ request_options: Dodopayments::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,30 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_unarchive_response =
4
+ {
5
+ collection_id: String,
6
+ excluded_product_ids: ::Array[String],
7
+ message: String
8
+ }
9
+
10
+ class ProductCollectionUnarchiveResponse < Dodopayments::Internal::Type::BaseModel
11
+ attr_accessor collection_id: String
12
+
13
+ attr_accessor excluded_product_ids: ::Array[String]
14
+
15
+ attr_accessor message: String
16
+
17
+ def initialize: (
18
+ collection_id: String,
19
+ excluded_product_ids: ::Array[String],
20
+ message: String
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ collection_id: String,
25
+ excluded_product_ids: ::Array[String],
26
+ message: String
27
+ }
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,28 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_update_images_params =
4
+ { id: String, force_update: bool? }
5
+ & Dodopayments::Internal::Type::request_parameters
6
+
7
+ class ProductCollectionUpdateImagesParams < Dodopayments::Internal::Type::BaseModel
8
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
9
+ include Dodopayments::Internal::Type::RequestParameters
10
+
11
+ attr_accessor id: String
12
+
13
+ attr_accessor force_update: bool?
14
+
15
+ def initialize: (
16
+ id: String,
17
+ ?force_update: bool?,
18
+ ?request_options: Dodopayments::request_opts
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ id: String,
23
+ force_update: bool?,
24
+ request_options: Dodopayments::RequestOptions
25
+ }
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,16 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_update_images_response =
4
+ { url: String, image_id: String? }
5
+
6
+ class ProductCollectionUpdateImagesResponse < Dodopayments::Internal::Type::BaseModel
7
+ attr_accessor url: String
8
+
9
+ attr_accessor image_id: String?
10
+
11
+ def initialize: (url: String, ?image_id: String?) -> void
12
+
13
+ def to_hash: -> { url: String, image_id: String? }
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,51 @@
1
+ module Dodopayments
2
+ module Models
3
+ type product_collection_update_params =
4
+ {
5
+ id: String,
6
+ brand_id: String?,
7
+ description: String?,
8
+ group_order: ::Array[String]?,
9
+ image_id: String?,
10
+ name: String?
11
+ }
12
+ & Dodopayments::Internal::Type::request_parameters
13
+
14
+ class ProductCollectionUpdateParams < Dodopayments::Internal::Type::BaseModel
15
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
16
+ include Dodopayments::Internal::Type::RequestParameters
17
+
18
+ attr_accessor id: String
19
+
20
+ attr_accessor brand_id: String?
21
+
22
+ attr_accessor description: String?
23
+
24
+ attr_accessor group_order: ::Array[String]?
25
+
26
+ attr_accessor image_id: String?
27
+
28
+ attr_accessor name: String?
29
+
30
+ def initialize: (
31
+ id: String,
32
+ ?brand_id: String?,
33
+ ?description: String?,
34
+ ?group_order: ::Array[String]?,
35
+ ?image_id: String?,
36
+ ?name: String?,
37
+ ?request_options: Dodopayments::request_opts
38
+ ) -> void
39
+
40
+ def to_hash: -> {
41
+ id: String,
42
+ brand_id: String?,
43
+ description: String?,
44
+ group_order: ::Array[String]?,
45
+ image_id: String?,
46
+ name: String?,
47
+ request_options: Dodopayments::RequestOptions
48
+ }
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,27 @@
1
+ module Dodopayments
2
+ module Models
3
+ module ProductCollections
4
+ type group_create_params =
5
+ { id: String } & Dodopayments::Internal::Type::request_parameters
6
+
7
+ class GroupCreateParams < Dodopayments::Models::ProductCollections::ProductCollectionGroupDetails
8
+ extend Dodopayments::Internal::Type::RequestParameters::Converter
9
+ include Dodopayments::Internal::Type::RequestParameters
10
+
11
+ def id: -> String
12
+
13
+ def id=: (String _) -> String
14
+
15
+ def initialize: (
16
+ id: String,
17
+ ?request_options: Dodopayments::request_opts
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ id: String,
22
+ request_options: Dodopayments::RequestOptions
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end