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,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ module Cache
6
+ # @see Imagekitio::Resources::Cache::Invalidation#get
7
+ class InvalidationGetResponse < Imagekitio::Internal::Type::BaseModel
8
+ # @!attribute status
9
+ # Status of the purge request.
10
+ #
11
+ # @return [Symbol, Imagekitio::Models::Cache::InvalidationGetResponse::Status, nil]
12
+ optional :status, enum: -> { Imagekitio::Models::Cache::InvalidationGetResponse::Status }
13
+
14
+ # @!method initialize(status: nil)
15
+ # Some parameter documentations has been truncated, see
16
+ # {Imagekitio::Models::Cache::InvalidationGetResponse} for more details.
17
+ #
18
+ # @param status [Symbol, Imagekitio::Models::Cache::InvalidationGetResponse::Status] Status of the purge request.
19
+
20
+ # Status of the purge request.
21
+ #
22
+ # @see Imagekitio::Models::Cache::InvalidationGetResponse#status
23
+ module Status
24
+ extend Imagekitio::Internal::Type::Enum
25
+
26
+ PENDING = :Pending
27
+ COMPLETED = :Completed
28
+
29
+ # @!method self.values
30
+ # @return [Array<Symbol>]
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,243 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @see Imagekitio::Resources::CustomMetadataFields#create
6
+ class CustomMetadataField < Imagekitio::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Unique identifier for the custom metadata field. Use this to update the field.
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute label
14
+ # Human readable name of the custom metadata field. This name is displayed as form
15
+ # field label to the users while setting field value on the asset in the media
16
+ # library UI.
17
+ #
18
+ # @return [String]
19
+ required :label, String
20
+
21
+ # @!attribute name
22
+ # API name of the custom metadata field. This becomes the key while setting
23
+ # `customMetadata` (key-value object) for an asset using upload or update API.
24
+ #
25
+ # @return [String]
26
+ required :name, String
27
+
28
+ # @!attribute schema
29
+ # An object that describes the rules for the custom metadata field value.
30
+ #
31
+ # @return [Imagekitio::Models::CustomMetadataField::Schema]
32
+ required :schema, -> { Imagekitio::CustomMetadataField::Schema }
33
+
34
+ # @!method initialize(id:, label:, name:, schema:)
35
+ # Some parameter documentations has been truncated, see
36
+ # {Imagekitio::Models::CustomMetadataField} for more details.
37
+ #
38
+ # Object containing details of a custom metadata field.
39
+ #
40
+ # @param id [String] Unique identifier for the custom metadata field. Use this to update the field.
41
+ #
42
+ # @param label [String] Human readable name of the custom metadata field. This name is displayed as form
43
+ #
44
+ # @param name [String] API name of the custom metadata field. This becomes the key while setting `custo
45
+ #
46
+ # @param schema [Imagekitio::Models::CustomMetadataField::Schema] An object that describes the rules for the custom metadata field value.
47
+
48
+ # @see Imagekitio::Models::CustomMetadataField#schema
49
+ class Schema < Imagekitio::Internal::Type::BaseModel
50
+ # @!attribute type
51
+ # Type of the custom metadata field.
52
+ #
53
+ # @return [Symbol, Imagekitio::Models::CustomMetadataField::Schema::Type]
54
+ required :type, enum: -> { Imagekitio::CustomMetadataField::Schema::Type }
55
+
56
+ # @!attribute default_value
57
+ # The default value for this custom metadata field. Data type of default value
58
+ # depends on the field type.
59
+ #
60
+ # @return [String, Float, Boolean, Array<String, Float, Boolean>, nil]
61
+ optional :default_value,
62
+ union: -> { Imagekitio::CustomMetadataField::Schema::DefaultValue },
63
+ api_name: :defaultValue
64
+
65
+ # @!attribute is_value_required
66
+ # Specifies if the this custom metadata field is required or not.
67
+ #
68
+ # @return [Boolean, nil]
69
+ optional :is_value_required, Imagekitio::Internal::Type::Boolean, api_name: :isValueRequired
70
+
71
+ # @!attribute max_length
72
+ # Maximum length of string. Only set if `type` is set to `Text` or `Textarea`.
73
+ #
74
+ # @return [Float, nil]
75
+ optional :max_length, Float, api_name: :maxLength
76
+
77
+ # @!attribute max_value
78
+ # Maximum value of the field. Only set if field type is `Date` or `Number`. For
79
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
80
+ # field, it will be a numeric value.
81
+ #
82
+ # @return [String, Float, nil]
83
+ optional :max_value,
84
+ union: -> {
85
+ Imagekitio::CustomMetadataField::Schema::MaxValue
86
+ },
87
+ api_name: :maxValue
88
+
89
+ # @!attribute min_length
90
+ # Minimum length of string. Only set if `type` is set to `Text` or `Textarea`.
91
+ #
92
+ # @return [Float, nil]
93
+ optional :min_length, Float, api_name: :minLength
94
+
95
+ # @!attribute min_value
96
+ # Minimum value of the field. Only set if field type is `Date` or `Number`. For
97
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
98
+ # field, it will be a numeric value.
99
+ #
100
+ # @return [String, Float, nil]
101
+ optional :min_value,
102
+ union: -> {
103
+ Imagekitio::CustomMetadataField::Schema::MinValue
104
+ },
105
+ api_name: :minValue
106
+
107
+ # @!attribute select_options
108
+ # An array of allowed values when field type is `SingleSelect` or `MultiSelect`.
109
+ #
110
+ # @return [Array<String, Float, Boolean>, nil]
111
+ optional :select_options,
112
+ -> {
113
+ Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::CustomMetadataField::Schema::SelectOption]
114
+ },
115
+ api_name: :selectOptions
116
+
117
+ # @!method initialize(type:, default_value: nil, is_value_required: nil, max_length: nil, max_value: nil, min_length: nil, min_value: nil, select_options: nil)
118
+ # Some parameter documentations has been truncated, see
119
+ # {Imagekitio::Models::CustomMetadataField::Schema} for more details.
120
+ #
121
+ # An object that describes the rules for the custom metadata field value.
122
+ #
123
+ # @param type [Symbol, Imagekitio::Models::CustomMetadataField::Schema::Type] Type of the custom metadata field.
124
+ #
125
+ # @param default_value [String, Float, Boolean, Array<String, Float, Boolean>] The default value for this custom metadata field. Data type of default value dep
126
+ #
127
+ # @param is_value_required [Boolean] Specifies if the this custom metadata field is required or not.
128
+ #
129
+ # @param max_length [Float] Maximum length of string. Only set if `type` is set to `Text` or `Textarea`.
130
+ #
131
+ # @param max_value [String, Float] Maximum value of the field. Only set if field type is `Date` or `Number`. For `D
132
+ #
133
+ # @param min_length [Float] Minimum length of string. Only set if `type` is set to `Text` or `Textarea`.
134
+ #
135
+ # @param min_value [String, Float] Minimum value of the field. Only set if field type is `Date` or `Number`. For `D
136
+ #
137
+ # @param select_options [Array<String, Float, Boolean>] An array of allowed values when field type is `SingleSelect` or `MultiSelect`.
138
+
139
+ # Type of the custom metadata field.
140
+ #
141
+ # @see Imagekitio::Models::CustomMetadataField::Schema#type
142
+ module Type
143
+ extend Imagekitio::Internal::Type::Enum
144
+
145
+ TEXT = :Text
146
+ TEXTAREA = :Textarea
147
+ NUMBER = :Number
148
+ DATE = :Date
149
+ BOOLEAN = :Boolean
150
+ SINGLE_SELECT = :SingleSelect
151
+ MULTI_SELECT = :MultiSelect
152
+
153
+ # @!method self.values
154
+ # @return [Array<Symbol>]
155
+ end
156
+
157
+ # The default value for this custom metadata field. Data type of default value
158
+ # depends on the field type.
159
+ #
160
+ # @see Imagekitio::Models::CustomMetadataField::Schema#default_value
161
+ module DefaultValue
162
+ extend Imagekitio::Internal::Type::Union
163
+
164
+ variant String
165
+
166
+ variant Float
167
+
168
+ variant Imagekitio::Internal::Type::Boolean
169
+
170
+ # Default value should be of type array when custom metadata field type is set to `MultiSelect`.
171
+ variant -> { Imagekitio::Models::CustomMetadataField::Schema::DefaultValue::MixedArray }
172
+
173
+ module Mixed
174
+ extend Imagekitio::Internal::Type::Union
175
+
176
+ variant String
177
+
178
+ variant Float
179
+
180
+ variant Imagekitio::Internal::Type::Boolean
181
+
182
+ # @!method self.variants
183
+ # @return [Array(String, Float, Boolean)]
184
+ end
185
+
186
+ # @!method self.variants
187
+ # @return [Array(String, Float, Boolean, Array<String, Float, Boolean>)]
188
+
189
+ # @type [Imagekitio::Internal::Type::Converter]
190
+ MixedArray =
191
+ Imagekitio::Internal::Type::ArrayOf[union: -> {
192
+ Imagekitio::CustomMetadataField::Schema::DefaultValue::Mixed
193
+ }]
194
+ end
195
+
196
+ # Maximum value of the field. Only set if field type is `Date` or `Number`. For
197
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
198
+ # field, it will be a numeric value.
199
+ #
200
+ # @see Imagekitio::Models::CustomMetadataField::Schema#max_value
201
+ module MaxValue
202
+ extend Imagekitio::Internal::Type::Union
203
+
204
+ variant String
205
+
206
+ variant Float
207
+
208
+ # @!method self.variants
209
+ # @return [Array(String, Float)]
210
+ end
211
+
212
+ # Minimum value of the field. Only set if field type is `Date` or `Number`. For
213
+ # `Date` type field, the value will be in ISO8601 string format. For `Number` type
214
+ # field, it will be a numeric value.
215
+ #
216
+ # @see Imagekitio::Models::CustomMetadataField::Schema#min_value
217
+ module MinValue
218
+ extend Imagekitio::Internal::Type::Union
219
+
220
+ variant String
221
+
222
+ variant Float
223
+
224
+ # @!method self.variants
225
+ # @return [Array(String, Float)]
226
+ end
227
+
228
+ module SelectOption
229
+ extend Imagekitio::Internal::Type::Union
230
+
231
+ variant String
232
+
233
+ variant Float
234
+
235
+ variant Imagekitio::Internal::Type::Boolean
236
+
237
+ # @!method self.variants
238
+ # @return [Array(String, Float, Boolean)]
239
+ end
240
+ end
241
+ end
242
+ end
243
+ end
@@ -0,0 +1,238 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @see Imagekitio::Resources::CustomMetadataFields#create
6
+ class CustomMetadataFieldCreateParams < Imagekitio::Internal::Type::BaseModel
7
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
8
+ include Imagekitio::Internal::Type::RequestParameters
9
+
10
+ # @!attribute label
11
+ # Human readable name of the custom metadata field. This should be unique across
12
+ # all non deleted custom metadata fields. This name is displayed as form field
13
+ # label to the users while setting field value on an asset in the media library
14
+ # UI.
15
+ #
16
+ # @return [String]
17
+ required :label, String
18
+
19
+ # @!attribute name
20
+ # API name of the custom metadata field. This should be unique across all
21
+ # (including deleted) custom metadata fields.
22
+ #
23
+ # @return [String]
24
+ required :name, String
25
+
26
+ # @!attribute schema
27
+ #
28
+ # @return [Imagekitio::Models::CustomMetadataFieldCreateParams::Schema]
29
+ required :schema, -> { Imagekitio::CustomMetadataFieldCreateParams::Schema }
30
+
31
+ # @!method initialize(label:, name:, schema:, request_options: {})
32
+ # Some parameter documentations has been truncated, see
33
+ # {Imagekitio::Models::CustomMetadataFieldCreateParams} for more details.
34
+ #
35
+ # @param label [String] Human readable name of the custom metadata field. This should be unique across a
36
+ #
37
+ # @param name [String] API name of the custom metadata field. This should be unique across all (includi
38
+ #
39
+ # @param schema [Imagekitio::Models::CustomMetadataFieldCreateParams::Schema]
40
+ #
41
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}]
42
+
43
+ class Schema < Imagekitio::Internal::Type::BaseModel
44
+ # @!attribute type
45
+ # Type of the custom metadata field.
46
+ #
47
+ # @return [Symbol, Imagekitio::Models::CustomMetadataFieldCreateParams::Schema::Type]
48
+ required :type, enum: -> { Imagekitio::CustomMetadataFieldCreateParams::Schema::Type }
49
+
50
+ # @!attribute default_value
51
+ # The default value for this custom metadata field. This property is only required
52
+ # if `isValueRequired` property is set to `true`. The value should match the
53
+ # `type` of custom metadata field.
54
+ #
55
+ # @return [String, Float, Boolean, Array<String, Float, Boolean>, nil]
56
+ optional :default_value,
57
+ union: -> { Imagekitio::CustomMetadataFieldCreateParams::Schema::DefaultValue },
58
+ api_name: :defaultValue
59
+
60
+ # @!attribute is_value_required
61
+ # Sets this custom metadata field as required. Setting custom metadata fields on
62
+ # an asset will throw error if the value for all required fields are not present
63
+ # in upload or update asset API request body.
64
+ #
65
+ # @return [Boolean, nil]
66
+ optional :is_value_required, Imagekitio::Internal::Type::Boolean, api_name: :isValueRequired
67
+
68
+ # @!attribute max_length
69
+ # Maximum length of string. Only set this property if `type` is set to `Text` or
70
+ # `Textarea`.
71
+ #
72
+ # @return [Float, nil]
73
+ optional :max_length, Float, api_name: :maxLength
74
+
75
+ # @!attribute max_value
76
+ # Maximum value of the field. Only set this property if field type is `Date` or
77
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
78
+ # For `Number` type field, set the minimum numeric value.
79
+ #
80
+ # @return [String, Float, nil]
81
+ optional :max_value,
82
+ union: -> { Imagekitio::CustomMetadataFieldCreateParams::Schema::MaxValue },
83
+ api_name: :maxValue
84
+
85
+ # @!attribute min_length
86
+ # Minimum length of string. Only set this property if `type` is set to `Text` or
87
+ # `Textarea`.
88
+ #
89
+ # @return [Float, nil]
90
+ optional :min_length, Float, api_name: :minLength
91
+
92
+ # @!attribute min_value
93
+ # Minimum value of the field. Only set this property if field type is `Date` or
94
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
95
+ # For `Number` type field, set the minimum numeric value.
96
+ #
97
+ # @return [String, Float, nil]
98
+ optional :min_value,
99
+ union: -> { Imagekitio::CustomMetadataFieldCreateParams::Schema::MinValue },
100
+ api_name: :minValue
101
+
102
+ # @!attribute select_options
103
+ # An array of allowed values. This property is only required if `type` property is
104
+ # set to `SingleSelect` or `MultiSelect`.
105
+ #
106
+ # @return [Array<String, Float, Boolean>, nil]
107
+ optional :select_options,
108
+ -> {
109
+ Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::CustomMetadataFieldCreateParams::Schema::SelectOption]
110
+ },
111
+ api_name: :selectOptions
112
+
113
+ # @!method initialize(type:, default_value: nil, is_value_required: nil, max_length: nil, max_value: nil, min_length: nil, min_value: nil, select_options: nil)
114
+ # Some parameter documentations has been truncated, see
115
+ # {Imagekitio::Models::CustomMetadataFieldCreateParams::Schema} for more details.
116
+ #
117
+ # @param type [Symbol, Imagekitio::Models::CustomMetadataFieldCreateParams::Schema::Type] Type of the custom metadata field.
118
+ #
119
+ # @param default_value [String, Float, Boolean, Array<String, Float, Boolean>] The default value for this custom metadata field. This property is only required
120
+ #
121
+ # @param is_value_required [Boolean] Sets this custom metadata field as required. Setting custom metadata fields on a
122
+ #
123
+ # @param max_length [Float] Maximum length of string. Only set this property if `type` is set to `Text` or `
124
+ #
125
+ # @param max_value [String, Float] Maximum value of the field. Only set this property if field type is `Date` or `N
126
+ #
127
+ # @param min_length [Float] Minimum length of string. Only set this property if `type` is set to `Text` or `
128
+ #
129
+ # @param min_value [String, Float] Minimum value of the field. Only set this property if field type is `Date` or `N
130
+ #
131
+ # @param select_options [Array<String, Float, Boolean>] An array of allowed values. This property is only required if `type` property is
132
+
133
+ # Type of the custom metadata field.
134
+ #
135
+ # @see Imagekitio::Models::CustomMetadataFieldCreateParams::Schema#type
136
+ module Type
137
+ extend Imagekitio::Internal::Type::Enum
138
+
139
+ TEXT = :Text
140
+ TEXTAREA = :Textarea
141
+ NUMBER = :Number
142
+ DATE = :Date
143
+ BOOLEAN = :Boolean
144
+ SINGLE_SELECT = :SingleSelect
145
+ MULTI_SELECT = :MultiSelect
146
+
147
+ # @!method self.values
148
+ # @return [Array<Symbol>]
149
+ end
150
+
151
+ # The default value for this custom metadata field. This property is only required
152
+ # if `isValueRequired` property is set to `true`. The value should match the
153
+ # `type` of custom metadata field.
154
+ #
155
+ # @see Imagekitio::Models::CustomMetadataFieldCreateParams::Schema#default_value
156
+ module DefaultValue
157
+ extend Imagekitio::Internal::Type::Union
158
+
159
+ variant String
160
+
161
+ variant Float
162
+
163
+ variant Imagekitio::Internal::Type::Boolean
164
+
165
+ # Default value should be of type array when custom metadata field type is set to `MultiSelect`.
166
+ variant -> { Imagekitio::Models::CustomMetadataFieldCreateParams::Schema::DefaultValue::MixedArray }
167
+
168
+ module Mixed
169
+ extend Imagekitio::Internal::Type::Union
170
+
171
+ variant String
172
+
173
+ variant Float
174
+
175
+ variant Imagekitio::Internal::Type::Boolean
176
+
177
+ # @!method self.variants
178
+ # @return [Array(String, Float, Boolean)]
179
+ end
180
+
181
+ # @!method self.variants
182
+ # @return [Array(String, Float, Boolean, Array<String, Float, Boolean>)]
183
+
184
+ # @type [Imagekitio::Internal::Type::Converter]
185
+ MixedArray =
186
+ Imagekitio::Internal::Type::ArrayOf[union: -> {
187
+ Imagekitio::CustomMetadataFieldCreateParams::Schema::DefaultValue::Mixed
188
+ }]
189
+ end
190
+
191
+ # Maximum value of the field. Only set this property if field type is `Date` or
192
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
193
+ # For `Number` type field, set the minimum numeric value.
194
+ #
195
+ # @see Imagekitio::Models::CustomMetadataFieldCreateParams::Schema#max_value
196
+ module MaxValue
197
+ extend Imagekitio::Internal::Type::Union
198
+
199
+ variant String
200
+
201
+ variant Float
202
+
203
+ # @!method self.variants
204
+ # @return [Array(String, Float)]
205
+ end
206
+
207
+ # Minimum value of the field. Only set this property if field type is `Date` or
208
+ # `Number`. For `Date` type field, set the minimum date in ISO8601 string format.
209
+ # For `Number` type field, set the minimum numeric value.
210
+ #
211
+ # @see Imagekitio::Models::CustomMetadataFieldCreateParams::Schema#min_value
212
+ module MinValue
213
+ extend Imagekitio::Internal::Type::Union
214
+
215
+ variant String
216
+
217
+ variant Float
218
+
219
+ # @!method self.variants
220
+ # @return [Array(String, Float)]
221
+ end
222
+
223
+ module SelectOption
224
+ extend Imagekitio::Internal::Type::Union
225
+
226
+ variant String
227
+
228
+ variant Float
229
+
230
+ variant Imagekitio::Internal::Type::Boolean
231
+
232
+ # @!method self.variants
233
+ # @return [Array(String, Float, Boolean)]
234
+ end
235
+ end
236
+ end
237
+ end
238
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @see Imagekitio::Resources::CustomMetadataFields#delete
6
+ class CustomMetadataFieldDeleteParams < Imagekitio::Internal::Type::BaseModel
7
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
8
+ include Imagekitio::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @see Imagekitio::Resources::CustomMetadataFields#delete
6
+ class CustomMetadataFieldDeleteResponse < Imagekitio::Internal::Type::BaseModel
7
+ # @!method initialize
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @see Imagekitio::Resources::CustomMetadataFields#list
6
+ class CustomMetadataFieldListParams < Imagekitio::Internal::Type::BaseModel
7
+ extend Imagekitio::Internal::Type::RequestParameters::Converter
8
+ include Imagekitio::Internal::Type::RequestParameters
9
+
10
+ # @!attribute folder_path
11
+ # The folder path (e.g., `/path/to/folder`) for which to retrieve applicable
12
+ # custom metadata fields. Useful for determining path-specific field selections
13
+ # when the [Path policy](https://imagekit.io/docs/dam/path-policy) feature is in
14
+ # use.
15
+ #
16
+ # @return [String, nil]
17
+ optional :folder_path, String
18
+
19
+ # @!attribute include_deleted
20
+ # Set it to `true` to include deleted field objects in the API response.
21
+ #
22
+ # @return [Boolean, nil]
23
+ optional :include_deleted, Imagekitio::Internal::Type::Boolean
24
+
25
+ # @!method initialize(folder_path: nil, include_deleted: nil, request_options: {})
26
+ # Some parameter documentations has been truncated, see
27
+ # {Imagekitio::Models::CustomMetadataFieldListParams} for more details.
28
+ #
29
+ # @param folder_path [String] The folder path (e.g., `/path/to/folder`) for which to retrieve applicable custo
30
+ #
31
+ # @param include_deleted [Boolean] Set it to `true` to include deleted field objects in the API response.
32
+ #
33
+ # @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}]
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Imagekitio
4
+ module Models
5
+ # @type [Imagekitio::Internal::Type::Converter]
6
+ CustomMetadataFieldListResponse =
7
+ Imagekitio::Internal::Type::ArrayOf[-> { Imagekitio::CustomMetadataField }]
8
+ end
9
+ end