imagekitio 3.0.0 → 4.0.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 (483) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +116 -0
  4. data/README.md +538 -679
  5. data/SECURITY.md +27 -0
  6. data/lib/imagekitio/client.rb +122 -195
  7. data/lib/imagekitio/errors.rb +226 -2
  8. data/lib/imagekitio/file_part.rb +58 -0
  9. data/lib/imagekitio/helpers/crypto_utils.rb +25 -0
  10. data/lib/imagekitio/helpers/helper.rb +689 -0
  11. data/lib/imagekitio/helpers/transformation_utils.rb +164 -0
  12. data/lib/imagekitio/helpers/uuid_utils.rb +18 -0
  13. data/lib/imagekitio/internal/transport/base_client.rb +567 -0
  14. data/lib/imagekitio/internal/transport/pooled_net_requester.rb +217 -0
  15. data/lib/imagekitio/internal/type/array_of.rb +168 -0
  16. data/lib/imagekitio/internal/type/base_model.rb +530 -0
  17. data/lib/imagekitio/internal/type/base_page.rb +55 -0
  18. data/lib/imagekitio/internal/type/boolean.rb +77 -0
  19. data/lib/imagekitio/internal/type/converter.rb +327 -0
  20. data/lib/imagekitio/internal/type/enum.rb +156 -0
  21. data/lib/imagekitio/internal/type/file_input.rb +111 -0
  22. data/lib/imagekitio/internal/type/hash_of.rb +188 -0
  23. data/lib/imagekitio/internal/type/request_parameters.rb +42 -0
  24. data/lib/imagekitio/internal/type/union.rb +250 -0
  25. data/lib/imagekitio/internal/type/unknown.rb +81 -0
  26. data/lib/imagekitio/internal/util.rb +915 -0
  27. data/lib/imagekitio/internal.rb +20 -0
  28. data/lib/imagekitio/models/accounts/origin_create_params.rb +24 -0
  29. data/lib/imagekitio/models/accounts/origin_delete_params.rb +16 -0
  30. data/lib/imagekitio/models/accounts/origin_get_params.rb +16 -0
  31. data/lib/imagekitio/models/accounts/origin_list_params.rb +16 -0
  32. data/lib/imagekitio/models/accounts/origin_list_response.rb +11 -0
  33. data/lib/imagekitio/models/accounts/origin_request.rb +547 -0
  34. data/lib/imagekitio/models/accounts/origin_response.rb +568 -0
  35. data/lib/imagekitio/models/accounts/origin_update_params.rb +24 -0
  36. data/lib/imagekitio/models/accounts/url_endpoint_create_params.rb +16 -0
  37. data/lib/imagekitio/models/accounts/url_endpoint_delete_params.rb +16 -0
  38. data/lib/imagekitio/models/accounts/url_endpoint_get_params.rb +16 -0
  39. data/lib/imagekitio/models/accounts/url_endpoint_list_params.rb +16 -0
  40. data/lib/imagekitio/models/accounts/url_endpoint_list_response.rb +11 -0
  41. data/lib/imagekitio/models/accounts/url_endpoint_request.rb +110 -0
  42. data/lib/imagekitio/models/accounts/url_endpoint_response.rb +123 -0
  43. data/lib/imagekitio/models/accounts/url_endpoint_update_params.rb +16 -0
  44. data/lib/imagekitio/models/accounts/usage_get_params.rb +37 -0
  45. data/lib/imagekitio/models/accounts/usage_get_response.rb +51 -0
  46. data/lib/imagekitio/models/asset_list_params.rb +158 -0
  47. data/lib/imagekitio/models/asset_list_response.rb +24 -0
  48. data/lib/imagekitio/models/base_overlay.rb +21 -0
  49. data/lib/imagekitio/models/base_webhook_event.rb +24 -0
  50. data/lib/imagekitio/models/beta/v2/file_upload_params.rb +510 -0
  51. data/lib/imagekitio/models/beta/v2/file_upload_response.rb +618 -0
  52. data/lib/imagekitio/models/cache/invalidation_create_params.rb +27 -0
  53. data/lib/imagekitio/models/cache/invalidation_create_response.rb +23 -0
  54. data/lib/imagekitio/models/cache/invalidation_get_params.rb +16 -0
  55. data/lib/imagekitio/models/cache/invalidation_get_response.rb +35 -0
  56. data/lib/imagekitio/models/custom_metadata_field.rb +243 -0
  57. data/lib/imagekitio/models/custom_metadata_field_create_params.rb +238 -0
  58. data/lib/imagekitio/models/custom_metadata_field_delete_params.rb +14 -0
  59. data/lib/imagekitio/models/custom_metadata_field_delete_response.rb +10 -0
  60. data/lib/imagekitio/models/custom_metadata_field_list_params.rb +36 -0
  61. data/lib/imagekitio/models/custom_metadata_field_list_response.rb +9 -0
  62. data/lib/imagekitio/models/custom_metadata_field_update_params.rb +212 -0
  63. data/lib/imagekitio/models/extensions.rb +136 -0
  64. data/lib/imagekitio/models/file.rb +497 -0
  65. data/lib/imagekitio/models/file_copy_params.rb +43 -0
  66. data/lib/imagekitio/models/file_copy_response.rb +10 -0
  67. data/lib/imagekitio/models/file_delete_params.rb +14 -0
  68. data/lib/imagekitio/models/file_get_params.rb +14 -0
  69. data/lib/imagekitio/models/file_move_params.rb +33 -0
  70. data/lib/imagekitio/models/file_move_response.rb +10 -0
  71. data/lib/imagekitio/models/file_rename_params.rb +61 -0
  72. data/lib/imagekitio/models/file_rename_response.rb +21 -0
  73. data/lib/imagekitio/models/file_update_params.rb +22 -0
  74. data/lib/imagekitio/models/file_update_response.rb +104 -0
  75. data/lib/imagekitio/models/file_upload_params.rb +540 -0
  76. data/lib/imagekitio/models/file_upload_response.rb +611 -0
  77. data/lib/imagekitio/models/files/bulk_add_tags_params.rb +35 -0
  78. data/lib/imagekitio/models/files/bulk_add_tags_response.rb +24 -0
  79. data/lib/imagekitio/models/files/bulk_delete_params.rb +27 -0
  80. data/lib/imagekitio/models/files/bulk_delete_response.rb +24 -0
  81. data/lib/imagekitio/models/files/bulk_remove_ai_tags_params.rb +35 -0
  82. data/lib/imagekitio/models/files/bulk_remove_ai_tags_response.rb +24 -0
  83. data/lib/imagekitio/models/files/bulk_remove_tags_params.rb +35 -0
  84. data/lib/imagekitio/models/files/bulk_remove_tags_response.rb +24 -0
  85. data/lib/imagekitio/models/files/metadata_get_from_url_params.rb +28 -0
  86. data/lib/imagekitio/models/files/metadata_get_params.rb +16 -0
  87. data/lib/imagekitio/models/files/version_delete_params.rb +22 -0
  88. data/lib/imagekitio/models/files/version_delete_response.rb +12 -0
  89. data/lib/imagekitio/models/files/version_get_params.rb +22 -0
  90. data/lib/imagekitio/models/files/version_list_params.rb +16 -0
  91. data/lib/imagekitio/models/files/version_list_response.rb +10 -0
  92. data/lib/imagekitio/models/files/version_restore_params.rb +22 -0
  93. data/lib/imagekitio/models/folder.rb +76 -0
  94. data/lib/imagekitio/models/folder_copy_params.rb +44 -0
  95. data/lib/imagekitio/models/folder_copy_response.rb +23 -0
  96. data/lib/imagekitio/models/folder_create_params.rb +43 -0
  97. data/lib/imagekitio/models/folder_create_response.rb +10 -0
  98. data/lib/imagekitio/models/folder_delete_params.rb +25 -0
  99. data/lib/imagekitio/models/folder_delete_response.rb +10 -0
  100. data/lib/imagekitio/models/folder_move_params.rb +34 -0
  101. data/lib/imagekitio/models/folder_move_response.rb +23 -0
  102. data/lib/imagekitio/models/folder_rename_params.rb +59 -0
  103. data/lib/imagekitio/models/folder_rename_response.rb +23 -0
  104. data/lib/imagekitio/models/folders/job_get_params.rb +16 -0
  105. data/lib/imagekitio/models/folders/job_get_response.rb +74 -0
  106. data/lib/imagekitio/models/get_image_attributes_options.rb +68 -0
  107. data/lib/imagekitio/models/image_overlay.rb +66 -0
  108. data/lib/imagekitio/models/metadata.rb +483 -0
  109. data/lib/imagekitio/models/overlay.rb +28 -0
  110. data/lib/imagekitio/models/overlay_position.rb +101 -0
  111. data/lib/imagekitio/models/overlay_timing.rb +97 -0
  112. data/lib/imagekitio/models/responsive_image_attributes.rb +48 -0
  113. data/lib/imagekitio/models/solid_color_overlay.rb +42 -0
  114. data/lib/imagekitio/models/solid_color_overlay_transformation.rb +135 -0
  115. data/lib/imagekitio/models/src_options.rb +96 -0
  116. data/lib/imagekitio/models/streaming_resolution.rb +22 -0
  117. data/lib/imagekitio/models/subtitle_overlay.rb +64 -0
  118. data/lib/imagekitio/models/subtitle_overlay_transformation.rb +113 -0
  119. data/lib/imagekitio/models/text_overlay.rb +65 -0
  120. data/lib/imagekitio/models/text_overlay_transformation.rb +267 -0
  121. data/lib/imagekitio/models/transformation.rb +1100 -0
  122. data/lib/imagekitio/models/transformation_position.rb +19 -0
  123. data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +36 -0
  124. data/lib/imagekitio/models/unwrap_webhook_event.rb +36 -0
  125. data/lib/imagekitio/models/update_file_request.rb +164 -0
  126. data/lib/imagekitio/models/upload_post_transform_error_event.rb +180 -0
  127. data/lib/imagekitio/models/upload_post_transform_success_event.rb +143 -0
  128. data/lib/imagekitio/models/upload_pre_transform_error_event.rb +108 -0
  129. data/lib/imagekitio/models/upload_pre_transform_success_event.rb +690 -0
  130. data/lib/imagekitio/models/video_overlay.rb +64 -0
  131. data/lib/imagekitio/models/video_transformation_accepted_event.rb +279 -0
  132. data/lib/imagekitio/models/video_transformation_error_event.rb +326 -0
  133. data/lib/imagekitio/models/video_transformation_ready_event.rb +379 -0
  134. data/lib/imagekitio/models/webhook_unsafe_unwrap_params.rb +14 -0
  135. data/lib/imagekitio/models/webhook_unwrap_params.rb +14 -0
  136. data/lib/imagekitio/models.rb +160 -0
  137. data/lib/imagekitio/request_options.rb +77 -0
  138. data/lib/imagekitio/resources/accounts/origins.rb +145 -0
  139. data/lib/imagekitio/resources/accounts/url_endpoints.rb +151 -0
  140. data/lib/imagekitio/resources/accounts/usage.rb +46 -0
  141. data/lib/imagekitio/resources/accounts.rb +26 -0
  142. data/lib/imagekitio/resources/assets.rb +54 -0
  143. data/lib/imagekitio/resources/beta/v2/files.rb +110 -0
  144. data/lib/imagekitio/resources/beta/v2.rb +20 -0
  145. data/lib/imagekitio/resources/beta.rb +18 -0
  146. data/lib/imagekitio/resources/cache/invalidation.rb +66 -0
  147. data/lib/imagekitio/resources/cache.rb +18 -0
  148. data/lib/imagekitio/resources/custom_metadata_fields.rb +133 -0
  149. data/lib/imagekitio/resources/files/bulk.rb +131 -0
  150. data/lib/imagekitio/resources/files/metadata.rb +69 -0
  151. data/lib/imagekitio/resources/files/versions.rb +132 -0
  152. data/lib/imagekitio/resources/files.rb +305 -0
  153. data/lib/imagekitio/resources/folders/job.rb +39 -0
  154. data/lib/imagekitio/resources/folders.rb +166 -0
  155. data/lib/imagekitio/resources/webhooks.rb +30 -0
  156. data/lib/imagekitio/version.rb +5 -0
  157. data/lib/imagekitio.rb +181 -13
  158. data/manifest.yaml +15 -0
  159. data/rbi/imagekitio/client.rbi +92 -0
  160. data/rbi/imagekitio/errors.rbi +205 -0
  161. data/rbi/imagekitio/file_part.rbi +37 -0
  162. data/rbi/imagekitio/helpers/helper.rbi +41 -0
  163. data/rbi/imagekitio/internal/transport/base_client.rbi +295 -0
  164. data/rbi/imagekitio/internal/transport/pooled_net_requester.rbi +80 -0
  165. data/rbi/imagekitio/internal/type/array_of.rbi +104 -0
  166. data/rbi/imagekitio/internal/type/base_model.rbi +304 -0
  167. data/rbi/imagekitio/internal/type/base_page.rbi +42 -0
  168. data/rbi/imagekitio/internal/type/boolean.rbi +58 -0
  169. data/rbi/imagekitio/internal/type/converter.rbi +216 -0
  170. data/rbi/imagekitio/internal/type/enum.rbi +82 -0
  171. data/rbi/imagekitio/internal/type/file_input.rbi +59 -0
  172. data/rbi/imagekitio/internal/type/hash_of.rbi +104 -0
  173. data/rbi/imagekitio/internal/type/request_parameters.rbi +29 -0
  174. data/rbi/imagekitio/internal/type/union.rbi +128 -0
  175. data/rbi/imagekitio/internal/type/unknown.rbi +58 -0
  176. data/rbi/imagekitio/internal/util.rbi +487 -0
  177. data/rbi/imagekitio/internal.rbi +18 -0
  178. data/rbi/imagekitio/models/accounts/origin_create_params.rbi +81 -0
  179. data/rbi/imagekitio/models/accounts/origin_delete_params.rbi +34 -0
  180. data/rbi/imagekitio/models/accounts/origin_get_params.rbi +34 -0
  181. data/rbi/imagekitio/models/accounts/origin_list_params.rbi +34 -0
  182. data/rbi/imagekitio/models/accounts/origin_list_response.rbi +15 -0
  183. data/rbi/imagekitio/models/accounts/origin_request.rbi +775 -0
  184. data/rbi/imagekitio/models/accounts/origin_response.rbi +718 -0
  185. data/rbi/imagekitio/models/accounts/origin_update_params.rbi +81 -0
  186. data/rbi/imagekitio/models/accounts/url_endpoint_create_params.rbi +34 -0
  187. data/rbi/imagekitio/models/accounts/url_endpoint_delete_params.rbi +34 -0
  188. data/rbi/imagekitio/models/accounts/url_endpoint_get_params.rbi +34 -0
  189. data/rbi/imagekitio/models/accounts/url_endpoint_list_params.rbi +34 -0
  190. data/rbi/imagekitio/models/accounts/url_endpoint_list_response.rbi +15 -0
  191. data/rbi/imagekitio/models/accounts/url_endpoint_request.rbi +218 -0
  192. data/rbi/imagekitio/models/accounts/url_endpoint_response.rbi +213 -0
  193. data/rbi/imagekitio/models/accounts/url_endpoint_update_params.rbi +34 -0
  194. data/rbi/imagekitio/models/accounts/usage_get_params.rbi +60 -0
  195. data/rbi/imagekitio/models/accounts/usage_get_response.rbi +89 -0
  196. data/rbi/imagekitio/models/asset_list_params.rbi +281 -0
  197. data/rbi/imagekitio/models/asset_list_response.rbi +28 -0
  198. data/rbi/imagekitio/models/base_overlay.rbi +44 -0
  199. data/rbi/imagekitio/models/base_webhook_event.rbi +33 -0
  200. data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +861 -0
  201. data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +1197 -0
  202. data/rbi/imagekitio/models/cache/invalidation_create_params.rbi +45 -0
  203. data/rbi/imagekitio/models/cache/invalidation_create_response.rbi +37 -0
  204. data/rbi/imagekitio/models/cache/invalidation_get_params.rbi +34 -0
  205. data/rbi/imagekitio/models/cache/invalidation_get_response.rbi +93 -0
  206. data/rbi/imagekitio/models/custom_metadata_field.rbi +422 -0
  207. data/rbi/imagekitio/models/custom_metadata_field_create_params.rbi +443 -0
  208. data/rbi/imagekitio/models/custom_metadata_field_delete_params.rbi +30 -0
  209. data/rbi/imagekitio/models/custom_metadata_field_delete_response.rbi +23 -0
  210. data/rbi/imagekitio/models/custom_metadata_field_list_params.rbi +66 -0
  211. data/rbi/imagekitio/models/custom_metadata_field_list_response.rbi +11 -0
  212. data/rbi/imagekitio/models/custom_metadata_field_update_params.rbi +376 -0
  213. data/rbi/imagekitio/models/extensions.rbi +274 -0
  214. data/rbi/imagekitio/models/file.rbi +789 -0
  215. data/rbi/imagekitio/models/file_copy_params.rbi +66 -0
  216. data/rbi/imagekitio/models/file_copy_response.rbi +23 -0
  217. data/rbi/imagekitio/models/file_delete_params.rbi +27 -0
  218. data/rbi/imagekitio/models/file_get_params.rbi +27 -0
  219. data/rbi/imagekitio/models/file_move_params.rbi +51 -0
  220. data/rbi/imagekitio/models/file_move_response.rbi +23 -0
  221. data/rbi/imagekitio/models/file_rename_params.rbi +102 -0
  222. data/rbi/imagekitio/models/file_rename_response.rbi +35 -0
  223. data/rbi/imagekitio/models/file_update_params.rbi +58 -0
  224. data/rbi/imagekitio/models/file_update_response.rbi +322 -0
  225. data/rbi/imagekitio/models/file_upload_params.rbi +897 -0
  226. data/rbi/imagekitio/models/file_upload_response.rbi +1176 -0
  227. data/rbi/imagekitio/models/files/bulk_add_tags_params.rbi +56 -0
  228. data/rbi/imagekitio/models/files/bulk_add_tags_response.rbi +41 -0
  229. data/rbi/imagekitio/models/files/bulk_delete_params.rbi +48 -0
  230. data/rbi/imagekitio/models/files/bulk_delete_response.rbi +41 -0
  231. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_params.rbi +56 -0
  232. data/rbi/imagekitio/models/files/bulk_remove_ai_tags_response.rbi +41 -0
  233. data/rbi/imagekitio/models/files/bulk_remove_tags_params.rbi +56 -0
  234. data/rbi/imagekitio/models/files/bulk_remove_tags_response.rbi +41 -0
  235. data/rbi/imagekitio/models/files/metadata_get_from_url_params.rbi +47 -0
  236. data/rbi/imagekitio/models/files/metadata_get_params.rbi +34 -0
  237. data/rbi/imagekitio/models/files/version_delete_params.rbi +40 -0
  238. data/rbi/imagekitio/models/files/version_delete_response.rbi +25 -0
  239. data/rbi/imagekitio/models/files/version_get_params.rbi +40 -0
  240. data/rbi/imagekitio/models/files/version_list_params.rbi +34 -0
  241. data/rbi/imagekitio/models/files/version_list_response.rbi +13 -0
  242. data/rbi/imagekitio/models/files/version_restore_params.rbi +40 -0
  243. data/rbi/imagekitio/models/folder.rbi +121 -0
  244. data/rbi/imagekitio/models/folder_copy_params.rbi +68 -0
  245. data/rbi/imagekitio/models/folder_copy_response.rbi +33 -0
  246. data/rbi/imagekitio/models/folder_create_params.rbi +71 -0
  247. data/rbi/imagekitio/models/folder_create_response.rbi +23 -0
  248. data/rbi/imagekitio/models/folder_delete_params.rbi +40 -0
  249. data/rbi/imagekitio/models/folder_delete_response.rbi +23 -0
  250. data/rbi/imagekitio/models/folder_move_params.rbi +53 -0
  251. data/rbi/imagekitio/models/folder_move_response.rbi +33 -0
  252. data/rbi/imagekitio/models/folder_rename_params.rbi +98 -0
  253. data/rbi/imagekitio/models/folder_rename_response.rbi +33 -0
  254. data/rbi/imagekitio/models/folders/job_get_params.rbi +34 -0
  255. data/rbi/imagekitio/models/folders/job_get_response.rbi +173 -0
  256. data/rbi/imagekitio/models/get_image_attributes_options.rbi +121 -0
  257. data/rbi/imagekitio/models/image_overlay.rbi +109 -0
  258. data/rbi/imagekitio/models/metadata.rbi +813 -0
  259. data/rbi/imagekitio/models/overlay.rbi +28 -0
  260. data/rbi/imagekitio/models/overlay_position.rbi +148 -0
  261. data/rbi/imagekitio/models/overlay_timing.rbi +135 -0
  262. data/rbi/imagekitio/models/responsive_image_attributes.rbi +74 -0
  263. data/rbi/imagekitio/models/solid_color_overlay.rbi +79 -0
  264. data/rbi/imagekitio/models/solid_color_overlay_transformation.rbi +218 -0
  265. data/rbi/imagekitio/models/src_options.rbi +159 -0
  266. data/rbi/imagekitio/models/streaming_resolution.rbi +38 -0
  267. data/rbi/imagekitio/models/subtitle_overlay.rbi +114 -0
  268. data/rbi/imagekitio/models/subtitle_overlay_transformation.rbi +215 -0
  269. data/rbi/imagekitio/models/text_overlay.rbi +110 -0
  270. data/rbi/imagekitio/models/text_overlay_transformation.rbi +451 -0
  271. data/rbi/imagekitio/models/transformation.rbi +1646 -0
  272. data/rbi/imagekitio/models/transformation_position.rbi +28 -0
  273. data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +33 -0
  274. data/rbi/imagekitio/models/unwrap_webhook_event.rbi +31 -0
  275. data/rbi/imagekitio/models/update_file_request.rbi +316 -0
  276. data/rbi/imagekitio/models/upload_post_transform_error_event.rbi +434 -0
  277. data/rbi/imagekitio/models/upload_post_transform_success_event.rbi +327 -0
  278. data/rbi/imagekitio/models/upload_pre_transform_error_event.rbi +244 -0
  279. data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +1300 -0
  280. data/rbi/imagekitio/models/video_overlay.rbi +105 -0
  281. data/rbi/imagekitio/models/video_transformation_accepted_event.rbi +659 -0
  282. data/rbi/imagekitio/models/video_transformation_error_event.rbi +772 -0
  283. data/rbi/imagekitio/models/video_transformation_ready_event.rbi +864 -0
  284. data/rbi/imagekitio/models/webhook_unsafe_unwrap_params.rbi +30 -0
  285. data/rbi/imagekitio/models/webhook_unwrap_params.rbi +27 -0
  286. data/rbi/imagekitio/models.rbi +135 -0
  287. data/rbi/imagekitio/request_options.rbi +59 -0
  288. data/rbi/imagekitio/resources/accounts/origins.rbi +91 -0
  289. data/rbi/imagekitio/resources/accounts/url_endpoints.rbi +129 -0
  290. data/rbi/imagekitio/resources/accounts/usage.rbi +36 -0
  291. data/rbi/imagekitio/resources/accounts.rbi +21 -0
  292. data/rbi/imagekitio/resources/assets.rbi +74 -0
  293. data/rbi/imagekitio/resources/beta/v2/files.rbi +193 -0
  294. data/rbi/imagekitio/resources/beta/v2.rbi +17 -0
  295. data/rbi/imagekitio/resources/beta.rbi +15 -0
  296. data/rbi/imagekitio/resources/cache/invalidation.rbi +44 -0
  297. data/rbi/imagekitio/resources/cache.rbi +15 -0
  298. data/rbi/imagekitio/resources/custom_metadata_fields.rbi +106 -0
  299. data/rbi/imagekitio/resources/files/bulk.rbi +88 -0
  300. data/rbi/imagekitio/resources/files/metadata.rbi +49 -0
  301. data/rbi/imagekitio/resources/files/versions.rbi +89 -0
  302. data/rbi/imagekitio/resources/files.rbi +364 -0
  303. data/rbi/imagekitio/resources/folders/job.rbi +29 -0
  304. data/rbi/imagekitio/resources/folders.rbi +146 -0
  305. data/rbi/imagekitio/resources/webhooks.rbi +50 -0
  306. data/rbi/imagekitio/version.rbi +5 -0
  307. data/sig/imagekitio/client.rbs +47 -0
  308. data/sig/imagekitio/errors.rbs +117 -0
  309. data/sig/imagekitio/file_part.rbs +21 -0
  310. data/sig/imagekitio/helpers/helper.rbs +24 -0
  311. data/sig/imagekitio/internal/transport/base_client.rbs +131 -0
  312. data/sig/imagekitio/internal/transport/pooled_net_requester.rbs +45 -0
  313. data/sig/imagekitio/internal/type/array_of.rbs +48 -0
  314. data/sig/imagekitio/internal/type/base_model.rbs +102 -0
  315. data/sig/imagekitio/internal/type/base_page.rbs +24 -0
  316. data/sig/imagekitio/internal/type/boolean.rbs +26 -0
  317. data/sig/imagekitio/internal/type/converter.rbs +79 -0
  318. data/sig/imagekitio/internal/type/enum.rbs +32 -0
  319. data/sig/imagekitio/internal/type/file_input.rbs +25 -0
  320. data/sig/imagekitio/internal/type/hash_of.rbs +48 -0
  321. data/sig/imagekitio/internal/type/request_parameters.rbs +19 -0
  322. data/sig/imagekitio/internal/type/union.rbs +52 -0
  323. data/sig/imagekitio/internal/type/unknown.rbs +26 -0
  324. data/sig/imagekitio/internal/util.rbs +185 -0
  325. data/sig/imagekitio/internal.rbs +9 -0
  326. data/sig/imagekitio/models/accounts/origin_create_params.rbs +30 -0
  327. data/sig/imagekitio/models/accounts/origin_delete_params.rbs +17 -0
  328. data/sig/imagekitio/models/accounts/origin_get_params.rbs +17 -0
  329. data/sig/imagekitio/models/accounts/origin_list_params.rbs +17 -0
  330. data/sig/imagekitio/models/accounts/origin_list_response.rbs +10 -0
  331. data/sig/imagekitio/models/accounts/origin_request.rbs +468 -0
  332. data/sig/imagekitio/models/accounts/origin_response.rbs +418 -0
  333. data/sig/imagekitio/models/accounts/origin_update_params.rbs +30 -0
  334. data/sig/imagekitio/models/accounts/url_endpoint_create_params.rbs +17 -0
  335. data/sig/imagekitio/models/accounts/url_endpoint_delete_params.rbs +17 -0
  336. data/sig/imagekitio/models/accounts/url_endpoint_get_params.rbs +17 -0
  337. data/sig/imagekitio/models/accounts/url_endpoint_list_params.rbs +17 -0
  338. data/sig/imagekitio/models/accounts/url_endpoint_list_response.rbs +10 -0
  339. data/sig/imagekitio/models/accounts/url_endpoint_request.rbs +97 -0
  340. data/sig/imagekitio/models/accounts/url_endpoint_response.rbs +96 -0
  341. data/sig/imagekitio/models/accounts/url_endpoint_update_params.rbs +17 -0
  342. data/sig/imagekitio/models/accounts/usage_get_params.rbs +30 -0
  343. data/sig/imagekitio/models/accounts/usage_get_response.rbs +52 -0
  344. data/sig/imagekitio/models/asset_list_params.rbs +138 -0
  345. data/sig/imagekitio/models/asset_list_response.rbs +16 -0
  346. data/sig/imagekitio/models/base_overlay.rbs +31 -0
  347. data/sig/imagekitio/models/base_webhook_event.rbs +15 -0
  348. data/sig/imagekitio/models/beta/v2/file_upload_params.rbs +310 -0
  349. data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +487 -0
  350. data/sig/imagekitio/models/cache/invalidation_create_params.rbs +25 -0
  351. data/sig/imagekitio/models/cache/invalidation_create_response.rbs +17 -0
  352. data/sig/imagekitio/models/cache/invalidation_get_params.rbs +17 -0
  353. data/sig/imagekitio/models/cache/invalidation_get_response.rbs +35 -0
  354. data/sig/imagekitio/models/custom_metadata_field.rbs +178 -0
  355. data/sig/imagekitio/models/custom_metadata_field_create_params.rbs +179 -0
  356. data/sig/imagekitio/models/custom_metadata_field_delete_params.rbs +15 -0
  357. data/sig/imagekitio/models/custom_metadata_field_delete_response.rbs +11 -0
  358. data/sig/imagekitio/models/custom_metadata_field_list_params.rbs +32 -0
  359. data/sig/imagekitio/models/custom_metadata_field_list_response.rbs +8 -0
  360. data/sig/imagekitio/models/custom_metadata_field_update_params.rbs +152 -0
  361. data/sig/imagekitio/models/extensions.rbs +132 -0
  362. data/sig/imagekitio/models/file.rbs +384 -0
  363. data/sig/imagekitio/models/file_copy_params.rbs +38 -0
  364. data/sig/imagekitio/models/file_copy_response.rbs +11 -0
  365. data/sig/imagekitio/models/file_delete_params.rbs +15 -0
  366. data/sig/imagekitio/models/file_get_params.rbs +14 -0
  367. data/sig/imagekitio/models/file_move_params.rbs +28 -0
  368. data/sig/imagekitio/models/file_move_response.rbs +11 -0
  369. data/sig/imagekitio/models/file_rename_params.rbs +34 -0
  370. data/sig/imagekitio/models/file_rename_response.rbs +15 -0
  371. data/sig/imagekitio/models/file_update_params.rbs +28 -0
  372. data/sig/imagekitio/models/file_update_response.rbs +120 -0
  373. data/sig/imagekitio/models/file_upload_params.rbs +327 -0
  374. data/sig/imagekitio/models/file_upload_response.rbs +483 -0
  375. data/sig/imagekitio/models/files/bulk_add_tags_params.rbs +30 -0
  376. data/sig/imagekitio/models/files/bulk_add_tags_response.rbs +20 -0
  377. data/sig/imagekitio/models/files/bulk_delete_params.rbs +26 -0
  378. data/sig/imagekitio/models/files/bulk_delete_response.rbs +20 -0
  379. data/sig/imagekitio/models/files/bulk_remove_ai_tags_params.rbs +30 -0
  380. data/sig/imagekitio/models/files/bulk_remove_ai_tags_response.rbs +20 -0
  381. data/sig/imagekitio/models/files/bulk_remove_tags_params.rbs +30 -0
  382. data/sig/imagekitio/models/files/bulk_remove_tags_response.rbs +20 -0
  383. data/sig/imagekitio/models/files/metadata_get_from_url_params.rbs +25 -0
  384. data/sig/imagekitio/models/files/metadata_get_params.rbs +17 -0
  385. data/sig/imagekitio/models/files/version_delete_params.rbs +25 -0
  386. data/sig/imagekitio/models/files/version_delete_response.rbs +13 -0
  387. data/sig/imagekitio/models/files/version_get_params.rbs +25 -0
  388. data/sig/imagekitio/models/files/version_list_params.rbs +17 -0
  389. data/sig/imagekitio/models/files/version_list_response.rbs +9 -0
  390. data/sig/imagekitio/models/files/version_restore_params.rbs +25 -0
  391. data/sig/imagekitio/models/folder.rbs +69 -0
  392. data/sig/imagekitio/models/folder_copy_params.rbs +38 -0
  393. data/sig/imagekitio/models/folder_copy_response.rbs +13 -0
  394. data/sig/imagekitio/models/folder_create_params.rbs +28 -0
  395. data/sig/imagekitio/models/folder_create_response.rbs +11 -0
  396. data/sig/imagekitio/models/folder_delete_params.rbs +23 -0
  397. data/sig/imagekitio/models/folder_delete_response.rbs +11 -0
  398. data/sig/imagekitio/models/folder_move_params.rbs +28 -0
  399. data/sig/imagekitio/models/folder_move_response.rbs +13 -0
  400. data/sig/imagekitio/models/folder_rename_params.rbs +34 -0
  401. data/sig/imagekitio/models/folder_rename_response.rbs +13 -0
  402. data/sig/imagekitio/models/folders/job_get_params.rbs +17 -0
  403. data/sig/imagekitio/models/folders/job_get_response.rbs +72 -0
  404. data/sig/imagekitio/models/get_image_attributes_options.rbs +43 -0
  405. data/sig/imagekitio/models/image_overlay.rbs +59 -0
  406. data/sig/imagekitio/models/metadata.rbs +546 -0
  407. data/sig/imagekitio/models/overlay.rbs +16 -0
  408. data/sig/imagekitio/models/overlay_position.rbs +85 -0
  409. data/sig/imagekitio/models/overlay_timing.rbs +66 -0
  410. data/sig/imagekitio/models/responsive_image_attributes.rbs +36 -0
  411. data/sig/imagekitio/models/solid_color_overlay.rbs +38 -0
  412. data/sig/imagekitio/models/solid_color_overlay_transformation.rbs +97 -0
  413. data/sig/imagekitio/models/src_options.rbs +64 -0
  414. data/sig/imagekitio/models/streaming_resolution.rbs +20 -0
  415. data/sig/imagekitio/models/subtitle_overlay.rbs +59 -0
  416. data/sig/imagekitio/models/subtitle_overlay_transformation.rbs +78 -0
  417. data/sig/imagekitio/models/text_overlay.rbs +59 -0
  418. data/sig/imagekitio/models/text_overlay_transformation.rbs +195 -0
  419. data/sig/imagekitio/models/transformation.rbs +763 -0
  420. data/sig/imagekitio/models/transformation_position.rbs +14 -0
  421. data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +18 -0
  422. data/sig/imagekitio/models/unwrap_webhook_event.rbs +18 -0
  423. data/sig/imagekitio/models/update_file_request.rbs +122 -0
  424. data/sig/imagekitio/models/upload_post_transform_error_event.rbs +192 -0
  425. data/sig/imagekitio/models/upload_post_transform_success_event.rbs +142 -0
  426. data/sig/imagekitio/models/upload_pre_transform_error_event.rbs +115 -0
  427. data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +541 -0
  428. data/sig/imagekitio/models/video_overlay.rbs +59 -0
  429. data/sig/imagekitio/models/video_transformation_accepted_event.rbs +261 -0
  430. data/sig/imagekitio/models/video_transformation_error_event.rbs +300 -0
  431. data/sig/imagekitio/models/video_transformation_ready_event.rbs +359 -0
  432. data/sig/imagekitio/models/webhook_unsafe_unwrap_params.rbs +15 -0
  433. data/sig/imagekitio/models/webhook_unwrap_params.rbs +15 -0
  434. data/sig/imagekitio/models.rbs +119 -0
  435. data/sig/imagekitio/request_options.rbs +36 -0
  436. data/sig/imagekitio/resources/accounts/origins.rbs +34 -0
  437. data/sig/imagekitio/resources/accounts/url_endpoints.rbs +40 -0
  438. data/sig/imagekitio/resources/accounts/usage.rbs +15 -0
  439. data/sig/imagekitio/resources/accounts.rbs +13 -0
  440. data/sig/imagekitio/resources/assets.rbs +18 -0
  441. data/sig/imagekitio/resources/beta/v2/files.rbs +35 -0
  442. data/sig/imagekitio/resources/beta/v2.rbs +11 -0
  443. data/sig/imagekitio/resources/beta.rbs +9 -0
  444. data/sig/imagekitio/resources/cache/invalidation.rbs +19 -0
  445. data/sig/imagekitio/resources/cache.rbs +9 -0
  446. data/sig/imagekitio/resources/custom_metadata_fields.rbs +32 -0
  447. data/sig/imagekitio/resources/files/bulk.rbs +32 -0
  448. data/sig/imagekitio/resources/files/metadata.rbs +19 -0
  449. data/sig/imagekitio/resources/files/versions.rbs +32 -0
  450. data/sig/imagekitio/resources/files.rbs +76 -0
  451. data/sig/imagekitio/resources/folders/job.rbs +14 -0
  452. data/sig/imagekitio/resources/folders.rbs +40 -0
  453. data/sig/imagekitio/resources/webhooks.rbs +27 -0
  454. data/sig/imagekitio/version.rbs +3 -0
  455. metadata +470 -136
  456. data/Rakefile +0 -27
  457. data/lib/active_storage/active_storage.rb +0 -7
  458. data/lib/active_storage/service/ik_file.rb +0 -115
  459. data/lib/active_storage/service/image_kit_io_service.rb +0 -188
  460. data/lib/carrierwave/carrierwave.rb +0 -83
  461. data/lib/carrierwave/storage/ik_file.rb +0 -51
  462. data/lib/carrierwave/storage/imagekit_store.rb +0 -68
  463. data/lib/carrierwave/support/uri_filename.rb +0 -12
  464. data/lib/imagekitio/api_service/bulk.rb +0 -58
  465. data/lib/imagekitio/api_service/custom_metadata_field.rb +0 -52
  466. data/lib/imagekitio/api_service/file.rb +0 -221
  467. data/lib/imagekitio/api_service/folder.rb +0 -49
  468. data/lib/imagekitio/base.rb +0 -12
  469. data/lib/imagekitio/configurable.rb +0 -43
  470. data/lib/imagekitio/constant.rb +0 -36
  471. data/lib/imagekitio/constants/default.rb +0 -22
  472. data/lib/imagekitio/constants/error.rb +0 -69
  473. data/lib/imagekitio/constants/file.rb +0 -11
  474. data/lib/imagekitio/constants/supported_transformation.rb +0 -39
  475. data/lib/imagekitio/constants/url.rb +0 -14
  476. data/lib/imagekitio/railtie.rb +0 -4
  477. data/lib/imagekitio/request.rb +0 -98
  478. data/lib/imagekitio/sdk/version.rb +0 -5
  479. data/lib/imagekitio/url.rb +0 -216
  480. data/lib/imagekitio/utils/calculation.rb +0 -45
  481. data/lib/imagekitio/utils/formatter.rb +0 -48
  482. data/lib/imagekitio/utils/option_validator.rb +0 -36
  483. data/lib/tasks/imagekitio/imagekitio_tasks.rake +0 -4
@@ -0,0 +1,64 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class VideoOverlay < Imagekitio::Models::BaseOverlay
6
+ # @!attribute input
7
+ # Specifies the relative path to the video used as an overlay.
8
+ #
9
+ # @return [String]
10
+ required :input, String
11
+
12
+ # @!attribute type
13
+ #
14
+ # @return [Symbol, :video]
15
+ required :type, const: :video
16
+
17
+ # @!attribute encoding
18
+ # The input path can be included in the layer as either `i-{input}` or
19
+ # `ie-{base64_encoded_input}`. By default, the SDK determines the appropriate
20
+ # format automatically. To always use base64 encoding (`ie-{base64}`), set this
21
+ # parameter to `base64`. To always use plain text (`i-{input}`), set it to
22
+ # `plain`.
23
+ #
24
+ # @return [Symbol, Imagekitio::Models::VideoOverlay::Encoding, nil]
25
+ optional :encoding, enum: -> { Imagekitio::VideoOverlay::Encoding }
26
+
27
+ # @!attribute transformation
28
+ # Array of transformation to be applied to the overlay video. Except
29
+ # `streamingResolutions`, all other video transformations are supported. See
30
+ # [Video transformations](https://imagekit.io/docs/video-transformation).
31
+ #
32
+ # @return [Array<Imagekitio::Models::Transformation>, nil]
33
+ optional :transformation, -> { Imagekitio::Internal::Type::ArrayOf[Imagekitio::Transformation] }
34
+
35
+ # @!method initialize(input:, encoding: nil, transformation: nil, type: :video)
36
+ # Some parameter documentations has been truncated, see
37
+ # {Imagekitio::Models::VideoOverlay} for more details.
38
+ #
39
+ # @param input [String] Specifies the relative path to the video used as an overlay.
40
+ #
41
+ # @param encoding [Symbol, Imagekitio::Models::VideoOverlay::Encoding] The input path can be included in the layer as either `i-{input}` or `ie-{base64
42
+ #
43
+ # @param transformation [Array<Imagekitio::Models::Transformation>] Array of transformation to be applied to the overlay video. Except `streamingRes
44
+ #
45
+ # @param type [Symbol, :video]
46
+
47
+ # The input path can be included in the layer as either `i-{input}` or
48
+ # `ie-{base64_encoded_input}`. By default, the SDK determines the appropriate
49
+ # format automatically. To always use base64 encoding (`ie-{base64}`), set this
50
+ # parameter to `base64`. To always use plain text (`i-{input}`), set it to
51
+ # `plain`.
52
+ module Encoding
53
+ extend Imagekitio::Internal::Type::Enum
54
+
55
+ AUTO = :auto
56
+ PLAIN = :plain
57
+ BASE64 = :base64
58
+
59
+ # @!method self.values
60
+ # @return [Array<Symbol>]
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,279 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class VideoTransformationAcceptedEvent < Imagekitio::Models::BaseWebhookEvent
6
+ # @!attribute created_at
7
+ # Timestamp when the event was created in ISO8601 format.
8
+ #
9
+ # @return [Time]
10
+ required :created_at, Time
11
+
12
+ # @!attribute data
13
+ #
14
+ # @return [Imagekitio::Models::VideoTransformationAcceptedEvent::Data]
15
+ required :data, -> { Imagekitio::VideoTransformationAcceptedEvent::Data }
16
+
17
+ # @!attribute request
18
+ # Information about the original request that triggered the video transformation.
19
+ #
20
+ # @return [Imagekitio::Models::VideoTransformationAcceptedEvent::Request]
21
+ required :request, -> { Imagekitio::VideoTransformationAcceptedEvent::Request }
22
+
23
+ # @!attribute type
24
+ #
25
+ # @return [Symbol, :"video.transformation.accepted"]
26
+ required :type, const: :"video.transformation.accepted"
27
+
28
+ # @!method initialize(created_at:, data:, request:, type: :"video.transformation.accepted")
29
+ # Triggered when a new video transformation request is accepted for processing.
30
+ # This event confirms that ImageKit has received and queued your transformation
31
+ # request. Use this for debugging and tracking transformation lifecycle.
32
+ #
33
+ # @param created_at [Time] Timestamp when the event was created in ISO8601 format.
34
+ #
35
+ # @param data [Imagekitio::Models::VideoTransformationAcceptedEvent::Data]
36
+ #
37
+ # @param request [Imagekitio::Models::VideoTransformationAcceptedEvent::Request] Information about the original request that triggered the video transformation.
38
+ #
39
+ # @param type [Symbol, :"video.transformation.accepted"]
40
+
41
+ class Data < Imagekitio::Internal::Type::BaseModel
42
+ # @!attribute asset
43
+ # Information about the source video asset being transformed.
44
+ #
45
+ # @return [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Asset]
46
+ required :asset, -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Asset }
47
+
48
+ # @!attribute transformation
49
+ # Base information about a video transformation request.
50
+ #
51
+ # @return [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation]
52
+ required :transformation, -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation }
53
+
54
+ # @!method initialize(asset:, transformation:)
55
+ # @param asset [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Asset] Information about the source video asset being transformed.
56
+ #
57
+ # @param transformation [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation] Base information about a video transformation request.
58
+
59
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data#asset
60
+ class Asset < Imagekitio::Internal::Type::BaseModel
61
+ # @!attribute url
62
+ # URL to download or access the source video file.
63
+ #
64
+ # @return [String]
65
+ required :url, String
66
+
67
+ # @!method initialize(url:)
68
+ # Information about the source video asset being transformed.
69
+ #
70
+ # @param url [String] URL to download or access the source video file.
71
+ end
72
+
73
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data#transformation
74
+ class Transformation < Imagekitio::Internal::Type::BaseModel
75
+ # @!attribute type
76
+ # Type of video transformation:
77
+ #
78
+ # - `video-transformation`: Standard video processing (resize, format conversion,
79
+ # etc.)
80
+ # - `gif-to-video`: Convert animated GIF to video format
81
+ # - `video-thumbnail`: Generate thumbnail image from video
82
+ #
83
+ # @return [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Type]
84
+ required :type, enum: -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Type }
85
+
86
+ # @!attribute options
87
+ # Configuration options for video transformations.
88
+ #
89
+ # @return [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options, nil]
90
+ optional :options, -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Options }
91
+
92
+ # @!method initialize(type:, options: nil)
93
+ # Some parameter documentations has been truncated, see
94
+ # {Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation} for
95
+ # more details.
96
+ #
97
+ # Base information about a video transformation request.
98
+ #
99
+ # @param type [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Type] Type of video transformation:
100
+ #
101
+ # @param options [Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options] Configuration options for video transformations.
102
+
103
+ # Type of video transformation:
104
+ #
105
+ # - `video-transformation`: Standard video processing (resize, format conversion,
106
+ # etc.)
107
+ # - `gif-to-video`: Convert animated GIF to video format
108
+ # - `video-thumbnail`: Generate thumbnail image from video
109
+ #
110
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation#type
111
+ module Type
112
+ extend Imagekitio::Internal::Type::Enum
113
+
114
+ VIDEO_TRANSFORMATION = :"video-transformation"
115
+ GIF_TO_VIDEO = :"gif-to-video"
116
+ VIDEO_THUMBNAIL = :"video-thumbnail"
117
+
118
+ # @!method self.values
119
+ # @return [Array<Symbol>]
120
+ end
121
+
122
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation#options
123
+ class Options < Imagekitio::Internal::Type::BaseModel
124
+ # @!attribute audio_codec
125
+ # Audio codec used for encoding (aac or opus).
126
+ #
127
+ # @return [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::AudioCodec, nil]
128
+ optional :audio_codec,
129
+ enum: -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Options::AudioCodec }
130
+
131
+ # @!attribute auto_rotate
132
+ # Whether to automatically rotate the video based on metadata.
133
+ #
134
+ # @return [Boolean, nil]
135
+ optional :auto_rotate, Imagekitio::Internal::Type::Boolean
136
+
137
+ # @!attribute format_
138
+ # Output format for the transformed video or thumbnail.
139
+ #
140
+ # @return [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::Format, nil]
141
+ optional :format_,
142
+ enum: -> {
143
+ Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Options::Format
144
+ },
145
+ api_name: :format
146
+
147
+ # @!attribute quality
148
+ # Quality setting for the output video.
149
+ #
150
+ # @return [Integer, nil]
151
+ optional :quality, Integer
152
+
153
+ # @!attribute stream_protocol
154
+ # Streaming protocol for adaptive bitrate streaming.
155
+ #
156
+ # @return [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::StreamProtocol, nil]
157
+ optional :stream_protocol,
158
+ enum: -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Options::StreamProtocol }
159
+
160
+ # @!attribute variants
161
+ # Array of quality representations for adaptive bitrate streaming.
162
+ #
163
+ # @return [Array<String>, nil]
164
+ optional :variants, Imagekitio::Internal::Type::ArrayOf[String]
165
+
166
+ # @!attribute video_codec
167
+ # Video codec used for encoding (h264, vp9, or av1).
168
+ #
169
+ # @return [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::VideoCodec, nil]
170
+ optional :video_codec,
171
+ enum: -> { Imagekitio::VideoTransformationAcceptedEvent::Data::Transformation::Options::VideoCodec }
172
+
173
+ # @!method initialize(audio_codec: nil, auto_rotate: nil, format_: nil, quality: nil, stream_protocol: nil, variants: nil, video_codec: nil)
174
+ # Configuration options for video transformations.
175
+ #
176
+ # @param audio_codec [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::AudioCodec] Audio codec used for encoding (aac or opus).
177
+ #
178
+ # @param auto_rotate [Boolean] Whether to automatically rotate the video based on metadata.
179
+ #
180
+ # @param format_ [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::Format] Output format for the transformed video or thumbnail.
181
+ #
182
+ # @param quality [Integer] Quality setting for the output video.
183
+ #
184
+ # @param stream_protocol [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::StreamProtocol] Streaming protocol for adaptive bitrate streaming.
185
+ #
186
+ # @param variants [Array<String>] Array of quality representations for adaptive bitrate streaming.
187
+ #
188
+ # @param video_codec [Symbol, Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options::VideoCodec] Video codec used for encoding (h264, vp9, or av1).
189
+
190
+ # Audio codec used for encoding (aac or opus).
191
+ #
192
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options#audio_codec
193
+ module AudioCodec
194
+ extend Imagekitio::Internal::Type::Enum
195
+
196
+ AAC = :aac
197
+ OPUS = :opus
198
+
199
+ # @!method self.values
200
+ # @return [Array<Symbol>]
201
+ end
202
+
203
+ # Output format for the transformed video or thumbnail.
204
+ #
205
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options#format_
206
+ module Format
207
+ extend Imagekitio::Internal::Type::Enum
208
+
209
+ MP4 = :mp4
210
+ WEBM = :webm
211
+ JPG = :jpg
212
+ PNG = :png
213
+ WEBP = :webp
214
+
215
+ # @!method self.values
216
+ # @return [Array<Symbol>]
217
+ end
218
+
219
+ # Streaming protocol for adaptive bitrate streaming.
220
+ #
221
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options#stream_protocol
222
+ module StreamProtocol
223
+ extend Imagekitio::Internal::Type::Enum
224
+
225
+ HLS = :HLS
226
+ DASH = :DASH
227
+
228
+ # @!method self.values
229
+ # @return [Array<Symbol>]
230
+ end
231
+
232
+ # Video codec used for encoding (h264, vp9, or av1).
233
+ #
234
+ # @see Imagekitio::Models::VideoTransformationAcceptedEvent::Data::Transformation::Options#video_codec
235
+ module VideoCodec
236
+ extend Imagekitio::Internal::Type::Enum
237
+
238
+ H264 = :h264
239
+ VP9 = :vp9
240
+ AV1 = :av1
241
+
242
+ # @!method self.values
243
+ # @return [Array<Symbol>]
244
+ end
245
+ end
246
+ end
247
+ end
248
+
249
+ class Request < Imagekitio::Internal::Type::BaseModel
250
+ # @!attribute url
251
+ # Full URL of the transformation request that was submitted.
252
+ #
253
+ # @return [String]
254
+ required :url, String
255
+
256
+ # @!attribute x_request_id
257
+ # Unique identifier for the originating transformation request.
258
+ #
259
+ # @return [String]
260
+ required :x_request_id, String
261
+
262
+ # @!attribute user_agent
263
+ # User-Agent header from the original request that triggered the transformation.
264
+ #
265
+ # @return [String, nil]
266
+ optional :user_agent, String
267
+
268
+ # @!method initialize(url:, x_request_id:, user_agent: nil)
269
+ # Information about the original request that triggered the video transformation.
270
+ #
271
+ # @param url [String] Full URL of the transformation request that was submitted.
272
+ #
273
+ # @param x_request_id [String] Unique identifier for the originating transformation request.
274
+ #
275
+ # @param user_agent [String] User-Agent header from the original request that triggered the transformation.
276
+ end
277
+ end
278
+ end
279
+ end
@@ -0,0 +1,326 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ class VideoTransformationErrorEvent < Imagekitio::Models::BaseWebhookEvent
6
+ # @!attribute created_at
7
+ # Timestamp when the event was created in ISO8601 format.
8
+ #
9
+ # @return [Time]
10
+ required :created_at, Time
11
+
12
+ # @!attribute data
13
+ #
14
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Data]
15
+ required :data, -> { Imagekitio::VideoTransformationErrorEvent::Data }
16
+
17
+ # @!attribute request
18
+ # Information about the original request that triggered the video transformation.
19
+ #
20
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Request]
21
+ required :request, -> { Imagekitio::VideoTransformationErrorEvent::Request }
22
+
23
+ # @!attribute type
24
+ #
25
+ # @return [Symbol, :"video.transformation.error"]
26
+ required :type, const: :"video.transformation.error"
27
+
28
+ # @!method initialize(created_at:, data:, request:, type: :"video.transformation.error")
29
+ # Triggered when an error occurs during video encoding. Listen to this webhook to
30
+ # log error reasons and debug issues. Check your origin and URL endpoint settings
31
+ # if the reason is related to download failure. For other errors, contact ImageKit
32
+ # support.
33
+ #
34
+ # @param created_at [Time] Timestamp when the event was created in ISO8601 format.
35
+ #
36
+ # @param data [Imagekitio::Models::VideoTransformationErrorEvent::Data]
37
+ #
38
+ # @param request [Imagekitio::Models::VideoTransformationErrorEvent::Request] Information about the original request that triggered the video transformation.
39
+ #
40
+ # @param type [Symbol, :"video.transformation.error"]
41
+
42
+ class Data < Imagekitio::Internal::Type::BaseModel
43
+ # @!attribute asset
44
+ # Information about the source video asset being transformed.
45
+ #
46
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Data::Asset]
47
+ required :asset, -> { Imagekitio::VideoTransformationErrorEvent::Data::Asset }
48
+
49
+ # @!attribute transformation
50
+ #
51
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation]
52
+ required :transformation, -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation }
53
+
54
+ # @!method initialize(asset:, transformation:)
55
+ # @param asset [Imagekitio::Models::VideoTransformationErrorEvent::Data::Asset] Information about the source video asset being transformed.
56
+ #
57
+ # @param transformation [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation]
58
+
59
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data#asset
60
+ class Asset < Imagekitio::Internal::Type::BaseModel
61
+ # @!attribute url
62
+ # URL to download or access the source video file.
63
+ #
64
+ # @return [String]
65
+ required :url, String
66
+
67
+ # @!method initialize(url:)
68
+ # Information about the source video asset being transformed.
69
+ #
70
+ # @param url [String] URL to download or access the source video file.
71
+ end
72
+
73
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data#transformation
74
+ class Transformation < Imagekitio::Internal::Type::BaseModel
75
+ # @!attribute type
76
+ # Type of video transformation:
77
+ #
78
+ # - `video-transformation`: Standard video processing (resize, format conversion,
79
+ # etc.)
80
+ # - `gif-to-video`: Convert animated GIF to video format
81
+ # - `video-thumbnail`: Generate thumbnail image from video
82
+ #
83
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Type]
84
+ required :type, enum: -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Type }
85
+
86
+ # @!attribute error
87
+ # Details about the transformation error.
88
+ #
89
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error, nil]
90
+ optional :error, -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Error }
91
+
92
+ # @!attribute options
93
+ # Configuration options for video transformations.
94
+ #
95
+ # @return [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options, nil]
96
+ optional :options, -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Options }
97
+
98
+ # @!method initialize(type:, error: nil, options: nil)
99
+ # Some parameter documentations has been truncated, see
100
+ # {Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation} for
101
+ # more details.
102
+ #
103
+ # @param type [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Type] Type of video transformation:
104
+ #
105
+ # @param error [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error] Details about the transformation error.
106
+ #
107
+ # @param options [Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options] Configuration options for video transformations.
108
+
109
+ # Type of video transformation:
110
+ #
111
+ # - `video-transformation`: Standard video processing (resize, format conversion,
112
+ # etc.)
113
+ # - `gif-to-video`: Convert animated GIF to video format
114
+ # - `video-thumbnail`: Generate thumbnail image from video
115
+ #
116
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation#type
117
+ module Type
118
+ extend Imagekitio::Internal::Type::Enum
119
+
120
+ VIDEO_TRANSFORMATION = :"video-transformation"
121
+ GIF_TO_VIDEO = :"gif-to-video"
122
+ VIDEO_THUMBNAIL = :"video-thumbnail"
123
+
124
+ # @!method self.values
125
+ # @return [Array<Symbol>]
126
+ end
127
+
128
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation#error
129
+ class Error < Imagekitio::Internal::Type::BaseModel
130
+ # @!attribute reason
131
+ # Specific reason for the transformation failure:
132
+ #
133
+ # - `encoding_failed`: Error during video encoding process
134
+ # - `download_failed`: Could not download source video
135
+ # - `internal_server_error`: Unexpected server error
136
+ #
137
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error::Reason]
138
+ required :reason,
139
+ enum: -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Error::Reason }
140
+
141
+ # @!method initialize(reason:)
142
+ # Some parameter documentations has been truncated, see
143
+ # {Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error}
144
+ # for more details.
145
+ #
146
+ # Details about the transformation error.
147
+ #
148
+ # @param reason [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error::Reason] Specific reason for the transformation failure:
149
+
150
+ # Specific reason for the transformation failure:
151
+ #
152
+ # - `encoding_failed`: Error during video encoding process
153
+ # - `download_failed`: Could not download source video
154
+ # - `internal_server_error`: Unexpected server error
155
+ #
156
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Error#reason
157
+ module Reason
158
+ extend Imagekitio::Internal::Type::Enum
159
+
160
+ ENCODING_FAILED = :encoding_failed
161
+ DOWNLOAD_FAILED = :download_failed
162
+ INTERNAL_SERVER_ERROR = :internal_server_error
163
+
164
+ # @!method self.values
165
+ # @return [Array<Symbol>]
166
+ end
167
+ end
168
+
169
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation#options
170
+ class Options < Imagekitio::Internal::Type::BaseModel
171
+ # @!attribute audio_codec
172
+ # Audio codec used for encoding (aac or opus).
173
+ #
174
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::AudioCodec, nil]
175
+ optional :audio_codec,
176
+ enum: -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Options::AudioCodec }
177
+
178
+ # @!attribute auto_rotate
179
+ # Whether to automatically rotate the video based on metadata.
180
+ #
181
+ # @return [Boolean, nil]
182
+ optional :auto_rotate, Imagekitio::Internal::Type::Boolean
183
+
184
+ # @!attribute format_
185
+ # Output format for the transformed video or thumbnail.
186
+ #
187
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::Format, nil]
188
+ optional :format_,
189
+ enum: -> {
190
+ Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Options::Format
191
+ },
192
+ api_name: :format
193
+
194
+ # @!attribute quality
195
+ # Quality setting for the output video.
196
+ #
197
+ # @return [Integer, nil]
198
+ optional :quality, Integer
199
+
200
+ # @!attribute stream_protocol
201
+ # Streaming protocol for adaptive bitrate streaming.
202
+ #
203
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::StreamProtocol, nil]
204
+ optional :stream_protocol,
205
+ enum: -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Options::StreamProtocol }
206
+
207
+ # @!attribute variants
208
+ # Array of quality representations for adaptive bitrate streaming.
209
+ #
210
+ # @return [Array<String>, nil]
211
+ optional :variants, Imagekitio::Internal::Type::ArrayOf[String]
212
+
213
+ # @!attribute video_codec
214
+ # Video codec used for encoding (h264, vp9, or av1).
215
+ #
216
+ # @return [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::VideoCodec, nil]
217
+ optional :video_codec,
218
+ enum: -> { Imagekitio::VideoTransformationErrorEvent::Data::Transformation::Options::VideoCodec }
219
+
220
+ # @!method initialize(audio_codec: nil, auto_rotate: nil, format_: nil, quality: nil, stream_protocol: nil, variants: nil, video_codec: nil)
221
+ # Configuration options for video transformations.
222
+ #
223
+ # @param audio_codec [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::AudioCodec] Audio codec used for encoding (aac or opus).
224
+ #
225
+ # @param auto_rotate [Boolean] Whether to automatically rotate the video based on metadata.
226
+ #
227
+ # @param format_ [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::Format] Output format for the transformed video or thumbnail.
228
+ #
229
+ # @param quality [Integer] Quality setting for the output video.
230
+ #
231
+ # @param stream_protocol [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::StreamProtocol] Streaming protocol for adaptive bitrate streaming.
232
+ #
233
+ # @param variants [Array<String>] Array of quality representations for adaptive bitrate streaming.
234
+ #
235
+ # @param video_codec [Symbol, Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options::VideoCodec] Video codec used for encoding (h264, vp9, or av1).
236
+
237
+ # Audio codec used for encoding (aac or opus).
238
+ #
239
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options#audio_codec
240
+ module AudioCodec
241
+ extend Imagekitio::Internal::Type::Enum
242
+
243
+ AAC = :aac
244
+ OPUS = :opus
245
+
246
+ # @!method self.values
247
+ # @return [Array<Symbol>]
248
+ end
249
+
250
+ # Output format for the transformed video or thumbnail.
251
+ #
252
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options#format_
253
+ module Format
254
+ extend Imagekitio::Internal::Type::Enum
255
+
256
+ MP4 = :mp4
257
+ WEBM = :webm
258
+ JPG = :jpg
259
+ PNG = :png
260
+ WEBP = :webp
261
+
262
+ # @!method self.values
263
+ # @return [Array<Symbol>]
264
+ end
265
+
266
+ # Streaming protocol for adaptive bitrate streaming.
267
+ #
268
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options#stream_protocol
269
+ module StreamProtocol
270
+ extend Imagekitio::Internal::Type::Enum
271
+
272
+ HLS = :HLS
273
+ DASH = :DASH
274
+
275
+ # @!method self.values
276
+ # @return [Array<Symbol>]
277
+ end
278
+
279
+ # Video codec used for encoding (h264, vp9, or av1).
280
+ #
281
+ # @see Imagekitio::Models::VideoTransformationErrorEvent::Data::Transformation::Options#video_codec
282
+ module VideoCodec
283
+ extend Imagekitio::Internal::Type::Enum
284
+
285
+ H264 = :h264
286
+ VP9 = :vp9
287
+ AV1 = :av1
288
+
289
+ # @!method self.values
290
+ # @return [Array<Symbol>]
291
+ end
292
+ end
293
+ end
294
+ end
295
+
296
+ class Request < Imagekitio::Internal::Type::BaseModel
297
+ # @!attribute url
298
+ # Full URL of the transformation request that was submitted.
299
+ #
300
+ # @return [String]
301
+ required :url, String
302
+
303
+ # @!attribute x_request_id
304
+ # Unique identifier for the originating transformation request.
305
+ #
306
+ # @return [String]
307
+ required :x_request_id, String
308
+
309
+ # @!attribute user_agent
310
+ # User-Agent header from the original request that triggered the transformation.
311
+ #
312
+ # @return [String, nil]
313
+ optional :user_agent, String
314
+
315
+ # @!method initialize(url:, x_request_id:, user_agent: nil)
316
+ # Information about the original request that triggered the video transformation.
317
+ #
318
+ # @param url [String] Full URL of the transformation request that was submitted.
319
+ #
320
+ # @param x_request_id [String] Unique identifier for the originating transformation request.
321
+ #
322
+ # @param user_agent [String] User-Agent header from the original request that triggered the transformation.
323
+ end
324
+ end
325
+ end
326
+ end