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.
- checksums.yaml +4 -4
- data/.ignore +2 -0
- data/CHANGELOG.md +116 -0
- data/README.md +538 -679
- data/SECURITY.md +27 -0
- data/lib/imagekitio/client.rb +122 -195
- data/lib/imagekitio/errors.rb +226 -2
- data/lib/imagekitio/file_part.rb +58 -0
- data/lib/imagekitio/helpers/crypto_utils.rb +25 -0
- data/lib/imagekitio/helpers/helper.rb +689 -0
- data/lib/imagekitio/helpers/transformation_utils.rb +164 -0
- data/lib/imagekitio/helpers/uuid_utils.rb +18 -0
- data/lib/imagekitio/internal/transport/base_client.rb +567 -0
- data/lib/imagekitio/internal/transport/pooled_net_requester.rb +217 -0
- data/lib/imagekitio/internal/type/array_of.rb +168 -0
- data/lib/imagekitio/internal/type/base_model.rb +530 -0
- data/lib/imagekitio/internal/type/base_page.rb +55 -0
- data/lib/imagekitio/internal/type/boolean.rb +77 -0
- data/lib/imagekitio/internal/type/converter.rb +327 -0
- data/lib/imagekitio/internal/type/enum.rb +156 -0
- data/lib/imagekitio/internal/type/file_input.rb +111 -0
- data/lib/imagekitio/internal/type/hash_of.rb +188 -0
- data/lib/imagekitio/internal/type/request_parameters.rb +42 -0
- data/lib/imagekitio/internal/type/union.rb +250 -0
- data/lib/imagekitio/internal/type/unknown.rb +81 -0
- data/lib/imagekitio/internal/util.rb +915 -0
- data/lib/imagekitio/internal.rb +20 -0
- data/lib/imagekitio/models/accounts/origin_create_params.rb +24 -0
- data/lib/imagekitio/models/accounts/origin_delete_params.rb +16 -0
- data/lib/imagekitio/models/accounts/origin_get_params.rb +16 -0
- data/lib/imagekitio/models/accounts/origin_list_params.rb +16 -0
- data/lib/imagekitio/models/accounts/origin_list_response.rb +11 -0
- data/lib/imagekitio/models/accounts/origin_request.rb +547 -0
- data/lib/imagekitio/models/accounts/origin_response.rb +568 -0
- data/lib/imagekitio/models/accounts/origin_update_params.rb +24 -0
- data/lib/imagekitio/models/accounts/url_endpoint_create_params.rb +16 -0
- data/lib/imagekitio/models/accounts/url_endpoint_delete_params.rb +16 -0
- data/lib/imagekitio/models/accounts/url_endpoint_get_params.rb +16 -0
- data/lib/imagekitio/models/accounts/url_endpoint_list_params.rb +16 -0
- data/lib/imagekitio/models/accounts/url_endpoint_list_response.rb +11 -0
- data/lib/imagekitio/models/accounts/url_endpoint_request.rb +110 -0
- data/lib/imagekitio/models/accounts/url_endpoint_response.rb +123 -0
- data/lib/imagekitio/models/accounts/url_endpoint_update_params.rb +16 -0
- data/lib/imagekitio/models/accounts/usage_get_params.rb +37 -0
- data/lib/imagekitio/models/accounts/usage_get_response.rb +51 -0
- data/lib/imagekitio/models/asset_list_params.rb +158 -0
- data/lib/imagekitio/models/asset_list_response.rb +24 -0
- data/lib/imagekitio/models/base_overlay.rb +21 -0
- data/lib/imagekitio/models/base_webhook_event.rb +24 -0
- data/lib/imagekitio/models/beta/v2/file_upload_params.rb +510 -0
- data/lib/imagekitio/models/beta/v2/file_upload_response.rb +618 -0
- data/lib/imagekitio/models/cache/invalidation_create_params.rb +27 -0
- data/lib/imagekitio/models/cache/invalidation_create_response.rb +23 -0
- data/lib/imagekitio/models/cache/invalidation_get_params.rb +16 -0
- data/lib/imagekitio/models/cache/invalidation_get_response.rb +35 -0
- data/lib/imagekitio/models/custom_metadata_field.rb +243 -0
- data/lib/imagekitio/models/custom_metadata_field_create_params.rb +238 -0
- data/lib/imagekitio/models/custom_metadata_field_delete_params.rb +14 -0
- data/lib/imagekitio/models/custom_metadata_field_delete_response.rb +10 -0
- data/lib/imagekitio/models/custom_metadata_field_list_params.rb +36 -0
- data/lib/imagekitio/models/custom_metadata_field_list_response.rb +9 -0
- data/lib/imagekitio/models/custom_metadata_field_update_params.rb +212 -0
- data/lib/imagekitio/models/extensions.rb +136 -0
- data/lib/imagekitio/models/file.rb +497 -0
- data/lib/imagekitio/models/file_copy_params.rb +43 -0
- data/lib/imagekitio/models/file_copy_response.rb +10 -0
- data/lib/imagekitio/models/file_delete_params.rb +14 -0
- data/lib/imagekitio/models/file_get_params.rb +14 -0
- data/lib/imagekitio/models/file_move_params.rb +33 -0
- data/lib/imagekitio/models/file_move_response.rb +10 -0
- data/lib/imagekitio/models/file_rename_params.rb +61 -0
- data/lib/imagekitio/models/file_rename_response.rb +21 -0
- data/lib/imagekitio/models/file_update_params.rb +22 -0
- data/lib/imagekitio/models/file_update_response.rb +104 -0
- data/lib/imagekitio/models/file_upload_params.rb +540 -0
- data/lib/imagekitio/models/file_upload_response.rb +611 -0
- data/lib/imagekitio/models/files/bulk_add_tags_params.rb +35 -0
- data/lib/imagekitio/models/files/bulk_add_tags_response.rb +24 -0
- data/lib/imagekitio/models/files/bulk_delete_params.rb +27 -0
- data/lib/imagekitio/models/files/bulk_delete_response.rb +24 -0
- data/lib/imagekitio/models/files/bulk_remove_ai_tags_params.rb +35 -0
- data/lib/imagekitio/models/files/bulk_remove_ai_tags_response.rb +24 -0
- data/lib/imagekitio/models/files/bulk_remove_tags_params.rb +35 -0
- data/lib/imagekitio/models/files/bulk_remove_tags_response.rb +24 -0
- data/lib/imagekitio/models/files/metadata_get_from_url_params.rb +28 -0
- data/lib/imagekitio/models/files/metadata_get_params.rb +16 -0
- data/lib/imagekitio/models/files/version_delete_params.rb +22 -0
- data/lib/imagekitio/models/files/version_delete_response.rb +12 -0
- data/lib/imagekitio/models/files/version_get_params.rb +22 -0
- data/lib/imagekitio/models/files/version_list_params.rb +16 -0
- data/lib/imagekitio/models/files/version_list_response.rb +10 -0
- data/lib/imagekitio/models/files/version_restore_params.rb +22 -0
- data/lib/imagekitio/models/folder.rb +76 -0
- data/lib/imagekitio/models/folder_copy_params.rb +44 -0
- data/lib/imagekitio/models/folder_copy_response.rb +23 -0
- data/lib/imagekitio/models/folder_create_params.rb +43 -0
- data/lib/imagekitio/models/folder_create_response.rb +10 -0
- data/lib/imagekitio/models/folder_delete_params.rb +25 -0
- data/lib/imagekitio/models/folder_delete_response.rb +10 -0
- data/lib/imagekitio/models/folder_move_params.rb +34 -0
- data/lib/imagekitio/models/folder_move_response.rb +23 -0
- data/lib/imagekitio/models/folder_rename_params.rb +59 -0
- data/lib/imagekitio/models/folder_rename_response.rb +23 -0
- data/lib/imagekitio/models/folders/job_get_params.rb +16 -0
- data/lib/imagekitio/models/folders/job_get_response.rb +74 -0
- data/lib/imagekitio/models/get_image_attributes_options.rb +68 -0
- data/lib/imagekitio/models/image_overlay.rb +66 -0
- data/lib/imagekitio/models/metadata.rb +483 -0
- data/lib/imagekitio/models/overlay.rb +28 -0
- data/lib/imagekitio/models/overlay_position.rb +101 -0
- data/lib/imagekitio/models/overlay_timing.rb +97 -0
- data/lib/imagekitio/models/responsive_image_attributes.rb +48 -0
- data/lib/imagekitio/models/solid_color_overlay.rb +42 -0
- data/lib/imagekitio/models/solid_color_overlay_transformation.rb +135 -0
- data/lib/imagekitio/models/src_options.rb +96 -0
- data/lib/imagekitio/models/streaming_resolution.rb +22 -0
- data/lib/imagekitio/models/subtitle_overlay.rb +64 -0
- data/lib/imagekitio/models/subtitle_overlay_transformation.rb +113 -0
- data/lib/imagekitio/models/text_overlay.rb +65 -0
- data/lib/imagekitio/models/text_overlay_transformation.rb +267 -0
- data/lib/imagekitio/models/transformation.rb +1100 -0
- data/lib/imagekitio/models/transformation_position.rb +19 -0
- data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +36 -0
- data/lib/imagekitio/models/unwrap_webhook_event.rb +36 -0
- data/lib/imagekitio/models/update_file_request.rb +164 -0
- data/lib/imagekitio/models/upload_post_transform_error_event.rb +180 -0
- data/lib/imagekitio/models/upload_post_transform_success_event.rb +143 -0
- data/lib/imagekitio/models/upload_pre_transform_error_event.rb +108 -0
- data/lib/imagekitio/models/upload_pre_transform_success_event.rb +690 -0
- data/lib/imagekitio/models/video_overlay.rb +64 -0
- data/lib/imagekitio/models/video_transformation_accepted_event.rb +279 -0
- data/lib/imagekitio/models/video_transformation_error_event.rb +326 -0
- data/lib/imagekitio/models/video_transformation_ready_event.rb +379 -0
- data/lib/imagekitio/models/webhook_unsafe_unwrap_params.rb +14 -0
- data/lib/imagekitio/models/webhook_unwrap_params.rb +14 -0
- data/lib/imagekitio/models.rb +160 -0
- data/lib/imagekitio/request_options.rb +77 -0
- data/lib/imagekitio/resources/accounts/origins.rb +145 -0
- data/lib/imagekitio/resources/accounts/url_endpoints.rb +151 -0
- data/lib/imagekitio/resources/accounts/usage.rb +46 -0
- data/lib/imagekitio/resources/accounts.rb +26 -0
- data/lib/imagekitio/resources/assets.rb +54 -0
- data/lib/imagekitio/resources/beta/v2/files.rb +110 -0
- data/lib/imagekitio/resources/beta/v2.rb +20 -0
- data/lib/imagekitio/resources/beta.rb +18 -0
- data/lib/imagekitio/resources/cache/invalidation.rb +66 -0
- data/lib/imagekitio/resources/cache.rb +18 -0
- data/lib/imagekitio/resources/custom_metadata_fields.rb +133 -0
- data/lib/imagekitio/resources/files/bulk.rb +131 -0
- data/lib/imagekitio/resources/files/metadata.rb +69 -0
- data/lib/imagekitio/resources/files/versions.rb +132 -0
- data/lib/imagekitio/resources/files.rb +305 -0
- data/lib/imagekitio/resources/folders/job.rb +39 -0
- data/lib/imagekitio/resources/folders.rb +166 -0
- data/lib/imagekitio/resources/webhooks.rb +30 -0
- data/lib/imagekitio/version.rb +5 -0
- data/lib/imagekitio.rb +181 -13
- data/manifest.yaml +15 -0
- data/rbi/imagekitio/client.rbi +92 -0
- data/rbi/imagekitio/errors.rbi +205 -0
- data/rbi/imagekitio/file_part.rbi +37 -0
- data/rbi/imagekitio/helpers/helper.rbi +41 -0
- data/rbi/imagekitio/internal/transport/base_client.rbi +295 -0
- data/rbi/imagekitio/internal/transport/pooled_net_requester.rbi +80 -0
- data/rbi/imagekitio/internal/type/array_of.rbi +104 -0
- data/rbi/imagekitio/internal/type/base_model.rbi +304 -0
- data/rbi/imagekitio/internal/type/base_page.rbi +42 -0
- data/rbi/imagekitio/internal/type/boolean.rbi +58 -0
- data/rbi/imagekitio/internal/type/converter.rbi +216 -0
- data/rbi/imagekitio/internal/type/enum.rbi +82 -0
- data/rbi/imagekitio/internal/type/file_input.rbi +59 -0
- data/rbi/imagekitio/internal/type/hash_of.rbi +104 -0
- data/rbi/imagekitio/internal/type/request_parameters.rbi +29 -0
- data/rbi/imagekitio/internal/type/union.rbi +128 -0
- data/rbi/imagekitio/internal/type/unknown.rbi +58 -0
- data/rbi/imagekitio/internal/util.rbi +487 -0
- data/rbi/imagekitio/internal.rbi +18 -0
- data/rbi/imagekitio/models/accounts/origin_create_params.rbi +81 -0
- data/rbi/imagekitio/models/accounts/origin_delete_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/origin_get_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/origin_list_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/origin_list_response.rbi +15 -0
- data/rbi/imagekitio/models/accounts/origin_request.rbi +775 -0
- data/rbi/imagekitio/models/accounts/origin_response.rbi +718 -0
- data/rbi/imagekitio/models/accounts/origin_update_params.rbi +81 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_create_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_delete_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_get_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_list_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_list_response.rbi +15 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_request.rbi +218 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_response.rbi +213 -0
- data/rbi/imagekitio/models/accounts/url_endpoint_update_params.rbi +34 -0
- data/rbi/imagekitio/models/accounts/usage_get_params.rbi +60 -0
- data/rbi/imagekitio/models/accounts/usage_get_response.rbi +89 -0
- data/rbi/imagekitio/models/asset_list_params.rbi +281 -0
- data/rbi/imagekitio/models/asset_list_response.rbi +28 -0
- data/rbi/imagekitio/models/base_overlay.rbi +44 -0
- data/rbi/imagekitio/models/base_webhook_event.rbi +33 -0
- data/rbi/imagekitio/models/beta/v2/file_upload_params.rbi +861 -0
- data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +1197 -0
- data/rbi/imagekitio/models/cache/invalidation_create_params.rbi +45 -0
- data/rbi/imagekitio/models/cache/invalidation_create_response.rbi +37 -0
- data/rbi/imagekitio/models/cache/invalidation_get_params.rbi +34 -0
- data/rbi/imagekitio/models/cache/invalidation_get_response.rbi +93 -0
- data/rbi/imagekitio/models/custom_metadata_field.rbi +422 -0
- data/rbi/imagekitio/models/custom_metadata_field_create_params.rbi +443 -0
- data/rbi/imagekitio/models/custom_metadata_field_delete_params.rbi +30 -0
- data/rbi/imagekitio/models/custom_metadata_field_delete_response.rbi +23 -0
- data/rbi/imagekitio/models/custom_metadata_field_list_params.rbi +66 -0
- data/rbi/imagekitio/models/custom_metadata_field_list_response.rbi +11 -0
- data/rbi/imagekitio/models/custom_metadata_field_update_params.rbi +376 -0
- data/rbi/imagekitio/models/extensions.rbi +274 -0
- data/rbi/imagekitio/models/file.rbi +789 -0
- data/rbi/imagekitio/models/file_copy_params.rbi +66 -0
- data/rbi/imagekitio/models/file_copy_response.rbi +23 -0
- data/rbi/imagekitio/models/file_delete_params.rbi +27 -0
- data/rbi/imagekitio/models/file_get_params.rbi +27 -0
- data/rbi/imagekitio/models/file_move_params.rbi +51 -0
- data/rbi/imagekitio/models/file_move_response.rbi +23 -0
- data/rbi/imagekitio/models/file_rename_params.rbi +102 -0
- data/rbi/imagekitio/models/file_rename_response.rbi +35 -0
- data/rbi/imagekitio/models/file_update_params.rbi +58 -0
- data/rbi/imagekitio/models/file_update_response.rbi +322 -0
- data/rbi/imagekitio/models/file_upload_params.rbi +897 -0
- data/rbi/imagekitio/models/file_upload_response.rbi +1176 -0
- data/rbi/imagekitio/models/files/bulk_add_tags_params.rbi +56 -0
- data/rbi/imagekitio/models/files/bulk_add_tags_response.rbi +41 -0
- data/rbi/imagekitio/models/files/bulk_delete_params.rbi +48 -0
- data/rbi/imagekitio/models/files/bulk_delete_response.rbi +41 -0
- data/rbi/imagekitio/models/files/bulk_remove_ai_tags_params.rbi +56 -0
- data/rbi/imagekitio/models/files/bulk_remove_ai_tags_response.rbi +41 -0
- data/rbi/imagekitio/models/files/bulk_remove_tags_params.rbi +56 -0
- data/rbi/imagekitio/models/files/bulk_remove_tags_response.rbi +41 -0
- data/rbi/imagekitio/models/files/metadata_get_from_url_params.rbi +47 -0
- data/rbi/imagekitio/models/files/metadata_get_params.rbi +34 -0
- data/rbi/imagekitio/models/files/version_delete_params.rbi +40 -0
- data/rbi/imagekitio/models/files/version_delete_response.rbi +25 -0
- data/rbi/imagekitio/models/files/version_get_params.rbi +40 -0
- data/rbi/imagekitio/models/files/version_list_params.rbi +34 -0
- data/rbi/imagekitio/models/files/version_list_response.rbi +13 -0
- data/rbi/imagekitio/models/files/version_restore_params.rbi +40 -0
- data/rbi/imagekitio/models/folder.rbi +121 -0
- data/rbi/imagekitio/models/folder_copy_params.rbi +68 -0
- data/rbi/imagekitio/models/folder_copy_response.rbi +33 -0
- data/rbi/imagekitio/models/folder_create_params.rbi +71 -0
- data/rbi/imagekitio/models/folder_create_response.rbi +23 -0
- data/rbi/imagekitio/models/folder_delete_params.rbi +40 -0
- data/rbi/imagekitio/models/folder_delete_response.rbi +23 -0
- data/rbi/imagekitio/models/folder_move_params.rbi +53 -0
- data/rbi/imagekitio/models/folder_move_response.rbi +33 -0
- data/rbi/imagekitio/models/folder_rename_params.rbi +98 -0
- data/rbi/imagekitio/models/folder_rename_response.rbi +33 -0
- data/rbi/imagekitio/models/folders/job_get_params.rbi +34 -0
- data/rbi/imagekitio/models/folders/job_get_response.rbi +173 -0
- data/rbi/imagekitio/models/get_image_attributes_options.rbi +121 -0
- data/rbi/imagekitio/models/image_overlay.rbi +109 -0
- data/rbi/imagekitio/models/metadata.rbi +813 -0
- data/rbi/imagekitio/models/overlay.rbi +28 -0
- data/rbi/imagekitio/models/overlay_position.rbi +148 -0
- data/rbi/imagekitio/models/overlay_timing.rbi +135 -0
- data/rbi/imagekitio/models/responsive_image_attributes.rbi +74 -0
- data/rbi/imagekitio/models/solid_color_overlay.rbi +79 -0
- data/rbi/imagekitio/models/solid_color_overlay_transformation.rbi +218 -0
- data/rbi/imagekitio/models/src_options.rbi +159 -0
- data/rbi/imagekitio/models/streaming_resolution.rbi +38 -0
- data/rbi/imagekitio/models/subtitle_overlay.rbi +114 -0
- data/rbi/imagekitio/models/subtitle_overlay_transformation.rbi +215 -0
- data/rbi/imagekitio/models/text_overlay.rbi +110 -0
- data/rbi/imagekitio/models/text_overlay_transformation.rbi +451 -0
- data/rbi/imagekitio/models/transformation.rbi +1646 -0
- data/rbi/imagekitio/models/transformation_position.rbi +28 -0
- data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +33 -0
- data/rbi/imagekitio/models/unwrap_webhook_event.rbi +31 -0
- data/rbi/imagekitio/models/update_file_request.rbi +316 -0
- data/rbi/imagekitio/models/upload_post_transform_error_event.rbi +434 -0
- data/rbi/imagekitio/models/upload_post_transform_success_event.rbi +327 -0
- data/rbi/imagekitio/models/upload_pre_transform_error_event.rbi +244 -0
- data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +1300 -0
- data/rbi/imagekitio/models/video_overlay.rbi +105 -0
- data/rbi/imagekitio/models/video_transformation_accepted_event.rbi +659 -0
- data/rbi/imagekitio/models/video_transformation_error_event.rbi +772 -0
- data/rbi/imagekitio/models/video_transformation_ready_event.rbi +864 -0
- data/rbi/imagekitio/models/webhook_unsafe_unwrap_params.rbi +30 -0
- data/rbi/imagekitio/models/webhook_unwrap_params.rbi +27 -0
- data/rbi/imagekitio/models.rbi +135 -0
- data/rbi/imagekitio/request_options.rbi +59 -0
- data/rbi/imagekitio/resources/accounts/origins.rbi +91 -0
- data/rbi/imagekitio/resources/accounts/url_endpoints.rbi +129 -0
- data/rbi/imagekitio/resources/accounts/usage.rbi +36 -0
- data/rbi/imagekitio/resources/accounts.rbi +21 -0
- data/rbi/imagekitio/resources/assets.rbi +74 -0
- data/rbi/imagekitio/resources/beta/v2/files.rbi +193 -0
- data/rbi/imagekitio/resources/beta/v2.rbi +17 -0
- data/rbi/imagekitio/resources/beta.rbi +15 -0
- data/rbi/imagekitio/resources/cache/invalidation.rbi +44 -0
- data/rbi/imagekitio/resources/cache.rbi +15 -0
- data/rbi/imagekitio/resources/custom_metadata_fields.rbi +106 -0
- data/rbi/imagekitio/resources/files/bulk.rbi +88 -0
- data/rbi/imagekitio/resources/files/metadata.rbi +49 -0
- data/rbi/imagekitio/resources/files/versions.rbi +89 -0
- data/rbi/imagekitio/resources/files.rbi +364 -0
- data/rbi/imagekitio/resources/folders/job.rbi +29 -0
- data/rbi/imagekitio/resources/folders.rbi +146 -0
- data/rbi/imagekitio/resources/webhooks.rbi +50 -0
- data/rbi/imagekitio/version.rbi +5 -0
- data/sig/imagekitio/client.rbs +47 -0
- data/sig/imagekitio/errors.rbs +117 -0
- data/sig/imagekitio/file_part.rbs +21 -0
- data/sig/imagekitio/helpers/helper.rbs +24 -0
- data/sig/imagekitio/internal/transport/base_client.rbs +131 -0
- data/sig/imagekitio/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/imagekitio/internal/type/array_of.rbs +48 -0
- data/sig/imagekitio/internal/type/base_model.rbs +102 -0
- data/sig/imagekitio/internal/type/base_page.rbs +24 -0
- data/sig/imagekitio/internal/type/boolean.rbs +26 -0
- data/sig/imagekitio/internal/type/converter.rbs +79 -0
- data/sig/imagekitio/internal/type/enum.rbs +32 -0
- data/sig/imagekitio/internal/type/file_input.rbs +25 -0
- data/sig/imagekitio/internal/type/hash_of.rbs +48 -0
- data/sig/imagekitio/internal/type/request_parameters.rbs +19 -0
- data/sig/imagekitio/internal/type/union.rbs +52 -0
- data/sig/imagekitio/internal/type/unknown.rbs +26 -0
- data/sig/imagekitio/internal/util.rbs +185 -0
- data/sig/imagekitio/internal.rbs +9 -0
- data/sig/imagekitio/models/accounts/origin_create_params.rbs +30 -0
- data/sig/imagekitio/models/accounts/origin_delete_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/origin_get_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/origin_list_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/origin_list_response.rbs +10 -0
- data/sig/imagekitio/models/accounts/origin_request.rbs +468 -0
- data/sig/imagekitio/models/accounts/origin_response.rbs +418 -0
- data/sig/imagekitio/models/accounts/origin_update_params.rbs +30 -0
- data/sig/imagekitio/models/accounts/url_endpoint_create_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/url_endpoint_delete_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/url_endpoint_get_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/url_endpoint_list_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/url_endpoint_list_response.rbs +10 -0
- data/sig/imagekitio/models/accounts/url_endpoint_request.rbs +97 -0
- data/sig/imagekitio/models/accounts/url_endpoint_response.rbs +96 -0
- data/sig/imagekitio/models/accounts/url_endpoint_update_params.rbs +17 -0
- data/sig/imagekitio/models/accounts/usage_get_params.rbs +30 -0
- data/sig/imagekitio/models/accounts/usage_get_response.rbs +52 -0
- data/sig/imagekitio/models/asset_list_params.rbs +138 -0
- data/sig/imagekitio/models/asset_list_response.rbs +16 -0
- data/sig/imagekitio/models/base_overlay.rbs +31 -0
- data/sig/imagekitio/models/base_webhook_event.rbs +15 -0
- data/sig/imagekitio/models/beta/v2/file_upload_params.rbs +310 -0
- data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +487 -0
- data/sig/imagekitio/models/cache/invalidation_create_params.rbs +25 -0
- data/sig/imagekitio/models/cache/invalidation_create_response.rbs +17 -0
- data/sig/imagekitio/models/cache/invalidation_get_params.rbs +17 -0
- data/sig/imagekitio/models/cache/invalidation_get_response.rbs +35 -0
- data/sig/imagekitio/models/custom_metadata_field.rbs +178 -0
- data/sig/imagekitio/models/custom_metadata_field_create_params.rbs +179 -0
- data/sig/imagekitio/models/custom_metadata_field_delete_params.rbs +15 -0
- data/sig/imagekitio/models/custom_metadata_field_delete_response.rbs +11 -0
- data/sig/imagekitio/models/custom_metadata_field_list_params.rbs +32 -0
- data/sig/imagekitio/models/custom_metadata_field_list_response.rbs +8 -0
- data/sig/imagekitio/models/custom_metadata_field_update_params.rbs +152 -0
- data/sig/imagekitio/models/extensions.rbs +132 -0
- data/sig/imagekitio/models/file.rbs +384 -0
- data/sig/imagekitio/models/file_copy_params.rbs +38 -0
- data/sig/imagekitio/models/file_copy_response.rbs +11 -0
- data/sig/imagekitio/models/file_delete_params.rbs +15 -0
- data/sig/imagekitio/models/file_get_params.rbs +14 -0
- data/sig/imagekitio/models/file_move_params.rbs +28 -0
- data/sig/imagekitio/models/file_move_response.rbs +11 -0
- data/sig/imagekitio/models/file_rename_params.rbs +34 -0
- data/sig/imagekitio/models/file_rename_response.rbs +15 -0
- data/sig/imagekitio/models/file_update_params.rbs +28 -0
- data/sig/imagekitio/models/file_update_response.rbs +120 -0
- data/sig/imagekitio/models/file_upload_params.rbs +327 -0
- data/sig/imagekitio/models/file_upload_response.rbs +483 -0
- data/sig/imagekitio/models/files/bulk_add_tags_params.rbs +30 -0
- data/sig/imagekitio/models/files/bulk_add_tags_response.rbs +20 -0
- data/sig/imagekitio/models/files/bulk_delete_params.rbs +26 -0
- data/sig/imagekitio/models/files/bulk_delete_response.rbs +20 -0
- data/sig/imagekitio/models/files/bulk_remove_ai_tags_params.rbs +30 -0
- data/sig/imagekitio/models/files/bulk_remove_ai_tags_response.rbs +20 -0
- data/sig/imagekitio/models/files/bulk_remove_tags_params.rbs +30 -0
- data/sig/imagekitio/models/files/bulk_remove_tags_response.rbs +20 -0
- data/sig/imagekitio/models/files/metadata_get_from_url_params.rbs +25 -0
- data/sig/imagekitio/models/files/metadata_get_params.rbs +17 -0
- data/sig/imagekitio/models/files/version_delete_params.rbs +25 -0
- data/sig/imagekitio/models/files/version_delete_response.rbs +13 -0
- data/sig/imagekitio/models/files/version_get_params.rbs +25 -0
- data/sig/imagekitio/models/files/version_list_params.rbs +17 -0
- data/sig/imagekitio/models/files/version_list_response.rbs +9 -0
- data/sig/imagekitio/models/files/version_restore_params.rbs +25 -0
- data/sig/imagekitio/models/folder.rbs +69 -0
- data/sig/imagekitio/models/folder_copy_params.rbs +38 -0
- data/sig/imagekitio/models/folder_copy_response.rbs +13 -0
- data/sig/imagekitio/models/folder_create_params.rbs +28 -0
- data/sig/imagekitio/models/folder_create_response.rbs +11 -0
- data/sig/imagekitio/models/folder_delete_params.rbs +23 -0
- data/sig/imagekitio/models/folder_delete_response.rbs +11 -0
- data/sig/imagekitio/models/folder_move_params.rbs +28 -0
- data/sig/imagekitio/models/folder_move_response.rbs +13 -0
- data/sig/imagekitio/models/folder_rename_params.rbs +34 -0
- data/sig/imagekitio/models/folder_rename_response.rbs +13 -0
- data/sig/imagekitio/models/folders/job_get_params.rbs +17 -0
- data/sig/imagekitio/models/folders/job_get_response.rbs +72 -0
- data/sig/imagekitio/models/get_image_attributes_options.rbs +43 -0
- data/sig/imagekitio/models/image_overlay.rbs +59 -0
- data/sig/imagekitio/models/metadata.rbs +546 -0
- data/sig/imagekitio/models/overlay.rbs +16 -0
- data/sig/imagekitio/models/overlay_position.rbs +85 -0
- data/sig/imagekitio/models/overlay_timing.rbs +66 -0
- data/sig/imagekitio/models/responsive_image_attributes.rbs +36 -0
- data/sig/imagekitio/models/solid_color_overlay.rbs +38 -0
- data/sig/imagekitio/models/solid_color_overlay_transformation.rbs +97 -0
- data/sig/imagekitio/models/src_options.rbs +64 -0
- data/sig/imagekitio/models/streaming_resolution.rbs +20 -0
- data/sig/imagekitio/models/subtitle_overlay.rbs +59 -0
- data/sig/imagekitio/models/subtitle_overlay_transformation.rbs +78 -0
- data/sig/imagekitio/models/text_overlay.rbs +59 -0
- data/sig/imagekitio/models/text_overlay_transformation.rbs +195 -0
- data/sig/imagekitio/models/transformation.rbs +763 -0
- data/sig/imagekitio/models/transformation_position.rbs +14 -0
- data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +18 -0
- data/sig/imagekitio/models/unwrap_webhook_event.rbs +18 -0
- data/sig/imagekitio/models/update_file_request.rbs +122 -0
- data/sig/imagekitio/models/upload_post_transform_error_event.rbs +192 -0
- data/sig/imagekitio/models/upload_post_transform_success_event.rbs +142 -0
- data/sig/imagekitio/models/upload_pre_transform_error_event.rbs +115 -0
- data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +541 -0
- data/sig/imagekitio/models/video_overlay.rbs +59 -0
- data/sig/imagekitio/models/video_transformation_accepted_event.rbs +261 -0
- data/sig/imagekitio/models/video_transformation_error_event.rbs +300 -0
- data/sig/imagekitio/models/video_transformation_ready_event.rbs +359 -0
- data/sig/imagekitio/models/webhook_unsafe_unwrap_params.rbs +15 -0
- data/sig/imagekitio/models/webhook_unwrap_params.rbs +15 -0
- data/sig/imagekitio/models.rbs +119 -0
- data/sig/imagekitio/request_options.rbs +36 -0
- data/sig/imagekitio/resources/accounts/origins.rbs +34 -0
- data/sig/imagekitio/resources/accounts/url_endpoints.rbs +40 -0
- data/sig/imagekitio/resources/accounts/usage.rbs +15 -0
- data/sig/imagekitio/resources/accounts.rbs +13 -0
- data/sig/imagekitio/resources/assets.rbs +18 -0
- data/sig/imagekitio/resources/beta/v2/files.rbs +35 -0
- data/sig/imagekitio/resources/beta/v2.rbs +11 -0
- data/sig/imagekitio/resources/beta.rbs +9 -0
- data/sig/imagekitio/resources/cache/invalidation.rbs +19 -0
- data/sig/imagekitio/resources/cache.rbs +9 -0
- data/sig/imagekitio/resources/custom_metadata_fields.rbs +32 -0
- data/sig/imagekitio/resources/files/bulk.rbs +32 -0
- data/sig/imagekitio/resources/files/metadata.rbs +19 -0
- data/sig/imagekitio/resources/files/versions.rbs +32 -0
- data/sig/imagekitio/resources/files.rbs +76 -0
- data/sig/imagekitio/resources/folders/job.rbs +14 -0
- data/sig/imagekitio/resources/folders.rbs +40 -0
- data/sig/imagekitio/resources/webhooks.rbs +27 -0
- data/sig/imagekitio/version.rbs +3 -0
- metadata +470 -136
- data/Rakefile +0 -27
- data/lib/active_storage/active_storage.rb +0 -7
- data/lib/active_storage/service/ik_file.rb +0 -115
- data/lib/active_storage/service/image_kit_io_service.rb +0 -188
- data/lib/carrierwave/carrierwave.rb +0 -83
- data/lib/carrierwave/storage/ik_file.rb +0 -51
- data/lib/carrierwave/storage/imagekit_store.rb +0 -68
- data/lib/carrierwave/support/uri_filename.rb +0 -12
- data/lib/imagekitio/api_service/bulk.rb +0 -58
- data/lib/imagekitio/api_service/custom_metadata_field.rb +0 -52
- data/lib/imagekitio/api_service/file.rb +0 -221
- data/lib/imagekitio/api_service/folder.rb +0 -49
- data/lib/imagekitio/base.rb +0 -12
- data/lib/imagekitio/configurable.rb +0 -43
- data/lib/imagekitio/constant.rb +0 -36
- data/lib/imagekitio/constants/default.rb +0 -22
- data/lib/imagekitio/constants/error.rb +0 -69
- data/lib/imagekitio/constants/file.rb +0 -11
- data/lib/imagekitio/constants/supported_transformation.rb +0 -39
- data/lib/imagekitio/constants/url.rb +0 -14
- data/lib/imagekitio/railtie.rb +0 -4
- data/lib/imagekitio/request.rb +0 -98
- data/lib/imagekitio/sdk/version.rb +0 -5
- data/lib/imagekitio/url.rb +0 -216
- data/lib/imagekitio/utils/calculation.rb +0 -45
- data/lib/imagekitio/utils/formatter.rb +0 -48
- data/lib/imagekitio/utils/option_validator.rb +0 -36
- data/lib/tasks/imagekitio/imagekitio_tasks.rake +0 -4
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Imagekitio
|
|
4
|
+
module Models
|
|
5
|
+
module Beta
|
|
6
|
+
module V2
|
|
7
|
+
# @see Imagekitio::Resources::Beta::V2::Files#upload
|
|
8
|
+
class FileUploadParams < Imagekitio::Internal::Type::BaseModel
|
|
9
|
+
extend Imagekitio::Internal::Type::RequestParameters::Converter
|
|
10
|
+
include Imagekitio::Internal::Type::RequestParameters
|
|
11
|
+
|
|
12
|
+
# Serialize upload options to handle proper formatting for ImageKit backend API.
|
|
13
|
+
# Special cases handled:
|
|
14
|
+
# - tags: converted to comma-separated string
|
|
15
|
+
# - responseFields: converted to comma-separated string
|
|
16
|
+
# - extensions: JSON stringified
|
|
17
|
+
# - customMetadata: JSON stringified
|
|
18
|
+
# - transformation: JSON stringified
|
|
19
|
+
#
|
|
20
|
+
# @api private
|
|
21
|
+
#
|
|
22
|
+
# @param params [Object]
|
|
23
|
+
#
|
|
24
|
+
# @return [Array(Object, Hash{Symbol=>Object})]
|
|
25
|
+
def self.dump_request(params)
|
|
26
|
+
state = {can_retry: true}
|
|
27
|
+
case (dumped = dump(params, state: state))
|
|
28
|
+
in Hash
|
|
29
|
+
serialized = serialize_upload_options(dumped)
|
|
30
|
+
options = Imagekitio::Internal::Util.coerce_hash!(serialized[:request_options]).to_h
|
|
31
|
+
request_options = state.fetch(:can_retry) ? options : {**options, max_retries: 0}
|
|
32
|
+
[serialized.except(:request_options), request_options]
|
|
33
|
+
else
|
|
34
|
+
[dumped, nil]
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# @api private
|
|
39
|
+
#
|
|
40
|
+
# @param upload_options [Hash{Symbol=>Object}]
|
|
41
|
+
#
|
|
42
|
+
# @return [Hash{Symbol=>Object}]
|
|
43
|
+
def self.serialize_upload_options(upload_options)
|
|
44
|
+
serialized = {}
|
|
45
|
+
|
|
46
|
+
upload_options.each do |key, value|
|
|
47
|
+
# Skip nil values
|
|
48
|
+
if value.nil?
|
|
49
|
+
serialized[key] = value
|
|
50
|
+
next
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
serialized[key] = case key
|
|
54
|
+
when :tags, :responseFields
|
|
55
|
+
# Tags and response fields should be comma-separated strings
|
|
56
|
+
value.is_a?(Array) ? value.join(",") : value
|
|
57
|
+
when :extensions
|
|
58
|
+
# Extensions should be JSON stringified
|
|
59
|
+
value.is_a?(Array) ? JSON.generate(value) : value
|
|
60
|
+
when :customMetadata
|
|
61
|
+
# Custom metadata should be JSON stringified
|
|
62
|
+
value.is_a?(Hash) ? JSON.generate(value) : value
|
|
63
|
+
when :transformation
|
|
64
|
+
# Transformation should be JSON stringified
|
|
65
|
+
value.is_a?(Hash) || value.respond_to?(:to_h) ? JSON.generate(value) : value
|
|
66
|
+
else
|
|
67
|
+
value
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
serialized
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# @!attribute file
|
|
75
|
+
# The API accepts any of the following:
|
|
76
|
+
#
|
|
77
|
+
# - **Binary data** – send the raw bytes as `multipart/form-data`.
|
|
78
|
+
# - **HTTP / HTTPS URL** – a publicly reachable URL that ImageKit’s servers can
|
|
79
|
+
# fetch.
|
|
80
|
+
# - **Base64 string** – the file encoded as a Base64 data URI or plain Base64.
|
|
81
|
+
#
|
|
82
|
+
# When supplying a URL, the server must receive the response headers within 8
|
|
83
|
+
# seconds; otherwise the request fails with 400 Bad Request.
|
|
84
|
+
#
|
|
85
|
+
# @return [Pathname, StringIO, IO, String, Imagekitio::FilePart]
|
|
86
|
+
required :file, Imagekitio::Internal::Type::FileInput
|
|
87
|
+
|
|
88
|
+
# @!attribute file_name
|
|
89
|
+
# The name with which the file has to be uploaded.
|
|
90
|
+
#
|
|
91
|
+
# @return [String]
|
|
92
|
+
required :file_name, String, api_name: :fileName
|
|
93
|
+
|
|
94
|
+
# @!attribute token
|
|
95
|
+
# This is the client-generated JSON Web Token (JWT). The ImageKit.io server uses
|
|
96
|
+
# it to authenticate and check that the upload request parameters have not been
|
|
97
|
+
# tampered with after the token has been generated. Learn how to create the token
|
|
98
|
+
# on the page below. This field is only required for authentication when uploading
|
|
99
|
+
# a file from the client side.
|
|
100
|
+
#
|
|
101
|
+
# **Note**: Sending a JWT that has been used in the past will result in a
|
|
102
|
+
# validation error. Even if your previous request resulted in an error, you should
|
|
103
|
+
# always send a new token.
|
|
104
|
+
#
|
|
105
|
+
# **⚠️Warning**: JWT must be generated on the server-side because it is generated
|
|
106
|
+
# using your account's private API key. This field is required for authentication
|
|
107
|
+
# when uploading a file from the client-side.
|
|
108
|
+
#
|
|
109
|
+
# @return [String, nil]
|
|
110
|
+
optional :token, String
|
|
111
|
+
|
|
112
|
+
# @!attribute checks
|
|
113
|
+
# Server-side checks to run on the asset. Read more about
|
|
114
|
+
# [Upload API checks](/docs/api-reference/upload-file/upload-file-v2#upload-api-checks).
|
|
115
|
+
#
|
|
116
|
+
# @return [String, nil]
|
|
117
|
+
optional :checks, String
|
|
118
|
+
|
|
119
|
+
# @!attribute custom_coordinates
|
|
120
|
+
# Define an important area in the image. This is only relevant for image type
|
|
121
|
+
# files.
|
|
122
|
+
#
|
|
123
|
+
# - To be passed as a string with the x and y coordinates of the top-left corner,
|
|
124
|
+
# and width and height of the area of interest in the format `x,y,width,height`.
|
|
125
|
+
# For example - `10,10,100,100`
|
|
126
|
+
# - Can be used with fo-customtransformation.
|
|
127
|
+
# - If this field is not specified and the file is overwritten, then
|
|
128
|
+
# customCoordinates will be removed.
|
|
129
|
+
#
|
|
130
|
+
# @return [String, nil]
|
|
131
|
+
optional :custom_coordinates, String, api_name: :customCoordinates
|
|
132
|
+
|
|
133
|
+
# @!attribute custom_metadata
|
|
134
|
+
# JSON key-value pairs to associate with the asset. Create the custom metadata
|
|
135
|
+
# fields before setting these values.
|
|
136
|
+
#
|
|
137
|
+
# @return [Hash{Symbol=>Object}, nil]
|
|
138
|
+
optional :custom_metadata,
|
|
139
|
+
Imagekitio::Internal::Type::HashOf[Imagekitio::Internal::Type::Unknown],
|
|
140
|
+
api_name: :customMetadata
|
|
141
|
+
|
|
142
|
+
# @!attribute description
|
|
143
|
+
# Optional text to describe the contents of the file.
|
|
144
|
+
#
|
|
145
|
+
# @return [String, nil]
|
|
146
|
+
optional :description, String
|
|
147
|
+
|
|
148
|
+
# @!attribute extensions
|
|
149
|
+
# Array of extensions to be applied to the asset. Each extension can be configured
|
|
150
|
+
# with specific parameters based on the extension type.
|
|
151
|
+
#
|
|
152
|
+
# @return [Array<Imagekitio::Models::ExtensionItem::RemoveBg, Imagekitio::Models::ExtensionItem::AIAutoDescription, Imagekitio::Models::ExtensionItem::AutoTaggingExtension>, nil]
|
|
153
|
+
optional :extensions, -> { Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::ExtensionItem] }
|
|
154
|
+
|
|
155
|
+
# @!attribute folder
|
|
156
|
+
# The folder path in which the image has to be uploaded. If the folder(s) didn't
|
|
157
|
+
# exist before, a new folder(s) is created. Using multiple `/` creates a nested
|
|
158
|
+
# folder.
|
|
159
|
+
#
|
|
160
|
+
# @return [String, nil]
|
|
161
|
+
optional :folder, String
|
|
162
|
+
|
|
163
|
+
# @!attribute is_private_file
|
|
164
|
+
# Whether to mark the file as private or not.
|
|
165
|
+
#
|
|
166
|
+
# If `true`, the file is marked as private and is accessible only using named
|
|
167
|
+
# transformation or signed URL.
|
|
168
|
+
#
|
|
169
|
+
# @return [Boolean, nil]
|
|
170
|
+
optional :is_private_file, Imagekitio::Internal::Type::Boolean, api_name: :isPrivateFile
|
|
171
|
+
|
|
172
|
+
# @!attribute is_published
|
|
173
|
+
# Whether to upload file as published or not.
|
|
174
|
+
#
|
|
175
|
+
# If `false`, the file is marked as unpublished, which restricts access to the
|
|
176
|
+
# file only via the media library. Files in draft or unpublished state can only be
|
|
177
|
+
# publicly accessed after being published.
|
|
178
|
+
#
|
|
179
|
+
# The option to upload in draft state is only available in custom enterprise
|
|
180
|
+
# pricing plans.
|
|
181
|
+
#
|
|
182
|
+
# @return [Boolean, nil]
|
|
183
|
+
optional :is_published, Imagekitio::Internal::Type::Boolean, api_name: :isPublished
|
|
184
|
+
|
|
185
|
+
# @!attribute overwrite_ai_tags
|
|
186
|
+
# If set to `true` and a file already exists at the exact location, its AITags
|
|
187
|
+
# will be removed. Set `overwriteAITags` to `false` to preserve AITags.
|
|
188
|
+
#
|
|
189
|
+
# @return [Boolean, nil]
|
|
190
|
+
optional :overwrite_ai_tags, Imagekitio::Internal::Type::Boolean, api_name: :overwriteAITags
|
|
191
|
+
|
|
192
|
+
# @!attribute overwrite_custom_metadata
|
|
193
|
+
# If the request does not have `customMetadata`, and a file already exists at the
|
|
194
|
+
# exact location, existing customMetadata will be removed.
|
|
195
|
+
#
|
|
196
|
+
# @return [Boolean, nil]
|
|
197
|
+
optional :overwrite_custom_metadata,
|
|
198
|
+
Imagekitio::Internal::Type::Boolean,
|
|
199
|
+
api_name: :overwriteCustomMetadata
|
|
200
|
+
|
|
201
|
+
# @!attribute overwrite_file
|
|
202
|
+
# If `false` and `useUniqueFileName` is also `false`, and a file already exists at
|
|
203
|
+
# the exact location, upload API will return an error immediately.
|
|
204
|
+
#
|
|
205
|
+
# @return [Boolean, nil]
|
|
206
|
+
optional :overwrite_file, Imagekitio::Internal::Type::Boolean, api_name: :overwriteFile
|
|
207
|
+
|
|
208
|
+
# @!attribute overwrite_tags
|
|
209
|
+
# If the request does not have `tags`, and a file already exists at the exact
|
|
210
|
+
# location, existing tags will be removed.
|
|
211
|
+
#
|
|
212
|
+
# @return [Boolean, nil]
|
|
213
|
+
optional :overwrite_tags, Imagekitio::Internal::Type::Boolean, api_name: :overwriteTags
|
|
214
|
+
|
|
215
|
+
# @!attribute response_fields
|
|
216
|
+
# Array of response field keys to include in the API response body.
|
|
217
|
+
#
|
|
218
|
+
# @return [Array<Symbol, Imagekitio::Models::Beta::V2::FileUploadParams::ResponseField>, nil]
|
|
219
|
+
optional :response_fields,
|
|
220
|
+
-> {
|
|
221
|
+
Imagekitio::Internal::Type::ArrayOf[enum: Imagekitio::Beta::V2::FileUploadParams::ResponseField]
|
|
222
|
+
},
|
|
223
|
+
api_name: :responseFields
|
|
224
|
+
|
|
225
|
+
# @!attribute tags
|
|
226
|
+
# Set the tags while uploading the file. Provide an array of tag strings (e.g.
|
|
227
|
+
# `["tag1", "tag2", "tag3"]`). The combined length of all tag characters must not
|
|
228
|
+
# exceed 500, and the `%` character is not allowed. If this field is not specified
|
|
229
|
+
# and the file is overwritten, the existing tags will be removed.
|
|
230
|
+
#
|
|
231
|
+
# @return [Array<String>, nil]
|
|
232
|
+
optional :tags, Imagekitio::Internal::Type::ArrayOf[String]
|
|
233
|
+
|
|
234
|
+
# @!attribute transformation
|
|
235
|
+
# Configure pre-processing (`pre`) and post-processing (`post`) transformations.
|
|
236
|
+
#
|
|
237
|
+
# - `pre` — applied before the file is uploaded to the Media Library.
|
|
238
|
+
# Useful for reducing file size or applying basic optimizations upfront (e.g.,
|
|
239
|
+
# resize, compress).
|
|
240
|
+
#
|
|
241
|
+
# - `post` — applied immediately after upload.
|
|
242
|
+
# Ideal for generating transformed versions (like video encodes or thumbnails)
|
|
243
|
+
# in advance, so they're ready for delivery without delay.
|
|
244
|
+
#
|
|
245
|
+
# You can mix and match any combination of post-processing types.
|
|
246
|
+
#
|
|
247
|
+
# @return [Imagekitio::Models::Beta::V2::FileUploadParams::Transformation, nil]
|
|
248
|
+
optional :transformation, -> { Imagekitio::Beta::V2::FileUploadParams::Transformation }
|
|
249
|
+
|
|
250
|
+
# @!attribute use_unique_file_name
|
|
251
|
+
# Whether to use a unique filename for this file or not.
|
|
252
|
+
#
|
|
253
|
+
# If `true`, ImageKit.io will add a unique suffix to the filename parameter to get
|
|
254
|
+
# a unique filename.
|
|
255
|
+
#
|
|
256
|
+
# If `false`, then the image is uploaded with the provided filename parameter, and
|
|
257
|
+
# any existing file with the same name is replaced.
|
|
258
|
+
#
|
|
259
|
+
# @return [Boolean, nil]
|
|
260
|
+
optional :use_unique_file_name, Imagekitio::Internal::Type::Boolean, api_name: :useUniqueFileName
|
|
261
|
+
|
|
262
|
+
# @!attribute webhook_url
|
|
263
|
+
# The final status of extensions after they have completed execution will be
|
|
264
|
+
# delivered to this endpoint as a POST request.
|
|
265
|
+
# [Learn more](/docs/api-reference/digital-asset-management-dam/managing-assets/update-file-details#webhook-payload-structure)
|
|
266
|
+
# about the webhook payload structure.
|
|
267
|
+
#
|
|
268
|
+
# @return [String, nil]
|
|
269
|
+
optional :webhook_url, String, api_name: :webhookUrl
|
|
270
|
+
|
|
271
|
+
# @!method initialize(file:, file_name:, token: nil, checks: nil, custom_coordinates: nil, custom_metadata: nil, description: nil, extensions: nil, folder: nil, is_private_file: nil, is_published: nil, overwrite_ai_tags: nil, overwrite_custom_metadata: nil, overwrite_file: nil, overwrite_tags: nil, response_fields: nil, tags: nil, transformation: nil, use_unique_file_name: nil, webhook_url: nil, request_options: {})
|
|
272
|
+
# Some parameter documentations has been truncated, see
|
|
273
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams} for more details.
|
|
274
|
+
#
|
|
275
|
+
# @param file [Pathname, StringIO, IO, String, Imagekitio::FilePart] The API accepts any of the following:
|
|
276
|
+
#
|
|
277
|
+
# @param file_name [String] The name with which the file has to be uploaded.
|
|
278
|
+
#
|
|
279
|
+
# @param token [String] This is the client-generated JSON Web Token (JWT). The ImageKit.io server uses i
|
|
280
|
+
#
|
|
281
|
+
# @param checks [String] Server-side checks to run on the asset.
|
|
282
|
+
#
|
|
283
|
+
# @param custom_coordinates [String] Define an important area in the image. This is only relevant for image type file
|
|
284
|
+
#
|
|
285
|
+
# @param custom_metadata [Hash{Symbol=>Object}] JSON key-value pairs to associate with the asset. Create the custom metadata fie
|
|
286
|
+
#
|
|
287
|
+
# @param description [String] Optional text to describe the contents of the file.
|
|
288
|
+
#
|
|
289
|
+
# @param extensions [Array<Imagekitio::Models::ExtensionItem::RemoveBg, Imagekitio::Models::ExtensionItem::AIAutoDescription, Imagekitio::Models::ExtensionItem::AutoTaggingExtension>] Array of extensions to be applied to the asset. Each extension can be configured
|
|
290
|
+
#
|
|
291
|
+
# @param folder [String] The folder path in which the image has to be uploaded. If the folder(s) didn't e
|
|
292
|
+
#
|
|
293
|
+
# @param is_private_file [Boolean] Whether to mark the file as private or not.
|
|
294
|
+
#
|
|
295
|
+
# @param is_published [Boolean] Whether to upload file as published or not.
|
|
296
|
+
#
|
|
297
|
+
# @param overwrite_ai_tags [Boolean] If set to `true` and a file already exists at the exact location, its AITags wil
|
|
298
|
+
#
|
|
299
|
+
# @param overwrite_custom_metadata [Boolean] If the request does not have `customMetadata`, and a file already exists at the
|
|
300
|
+
#
|
|
301
|
+
# @param overwrite_file [Boolean] If `false` and `useUniqueFileName` is also `false`, and a file already exists at
|
|
302
|
+
#
|
|
303
|
+
# @param overwrite_tags [Boolean] If the request does not have `tags`, and a file already exists at the exact loca
|
|
304
|
+
#
|
|
305
|
+
# @param response_fields [Array<Symbol, Imagekitio::Models::Beta::V2::FileUploadParams::ResponseField>] Array of response field keys to include in the API response body.
|
|
306
|
+
#
|
|
307
|
+
# @param tags [Array<String>] Set the tags while uploading the file.
|
|
308
|
+
#
|
|
309
|
+
# @param transformation [Imagekitio::Models::Beta::V2::FileUploadParams::Transformation] Configure pre-processing (`pre`) and post-processing (`post`) transformations.
|
|
310
|
+
#
|
|
311
|
+
# @param use_unique_file_name [Boolean] Whether to use a unique filename for this file or not.
|
|
312
|
+
#
|
|
313
|
+
# @param webhook_url [String] The final status of extensions after they have completed execution will be deliv
|
|
314
|
+
#
|
|
315
|
+
# @param request_options [Imagekitio::RequestOptions, Hash{Symbol=>Object}]
|
|
316
|
+
|
|
317
|
+
module ResponseField
|
|
318
|
+
extend Imagekitio::Internal::Type::Enum
|
|
319
|
+
|
|
320
|
+
TAGS = :tags
|
|
321
|
+
CUSTOM_COORDINATES = :customCoordinates
|
|
322
|
+
IS_PRIVATE_FILE = :isPrivateFile
|
|
323
|
+
EMBEDDED_METADATA = :embeddedMetadata
|
|
324
|
+
IS_PUBLISHED = :isPublished
|
|
325
|
+
CUSTOM_METADATA = :customMetadata
|
|
326
|
+
METADATA = :metadata
|
|
327
|
+
SELECTED_FIELDS_SCHEMA = :selectedFieldsSchema
|
|
328
|
+
|
|
329
|
+
# @!method self.values
|
|
330
|
+
# @return [Array<Symbol>]
|
|
331
|
+
end
|
|
332
|
+
|
|
333
|
+
class Transformation < Imagekitio::Internal::Type::BaseModel
|
|
334
|
+
# @!attribute post
|
|
335
|
+
# List of transformations to apply _after_ the file is uploaded.
|
|
336
|
+
# Each item must match one of the following types: `transformation`,
|
|
337
|
+
# `gif-to-video`, `thumbnail`, `abs`.
|
|
338
|
+
#
|
|
339
|
+
# @return [Array<Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Transformation, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::GifToVideo, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Thumbnail, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs>, nil]
|
|
340
|
+
optional :post,
|
|
341
|
+
-> { Imagekitio::Internal::Type::ArrayOf[union: Imagekitio::Beta::V2::FileUploadParams::Transformation::Post] }
|
|
342
|
+
|
|
343
|
+
# @!attribute pre
|
|
344
|
+
# Transformation string to apply before uploading the file to the Media Library.
|
|
345
|
+
# Useful for optimizing files at ingestion.
|
|
346
|
+
#
|
|
347
|
+
# @return [String, nil]
|
|
348
|
+
optional :pre, String
|
|
349
|
+
|
|
350
|
+
# @!method initialize(post: nil, pre: nil)
|
|
351
|
+
# Some parameter documentations has been truncated, see
|
|
352
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams::Transformation} for more
|
|
353
|
+
# details.
|
|
354
|
+
#
|
|
355
|
+
# Configure pre-processing (`pre`) and post-processing (`post`) transformations.
|
|
356
|
+
#
|
|
357
|
+
# - `pre` — applied before the file is uploaded to the Media Library.
|
|
358
|
+
# Useful for reducing file size or applying basic optimizations upfront (e.g.,
|
|
359
|
+
# resize, compress).
|
|
360
|
+
#
|
|
361
|
+
# - `post` — applied immediately after upload.
|
|
362
|
+
# Ideal for generating transformed versions (like video encodes or thumbnails)
|
|
363
|
+
# in advance, so they're ready for delivery without delay.
|
|
364
|
+
#
|
|
365
|
+
# You can mix and match any combination of post-processing types.
|
|
366
|
+
#
|
|
367
|
+
# @param post [Array<Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Transformation, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::GifToVideo, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Thumbnail, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs>] List of transformations to apply _after_ the file is uploaded.
|
|
368
|
+
#
|
|
369
|
+
# @param pre [String] Transformation string to apply before uploading the file to the Media Library. U
|
|
370
|
+
|
|
371
|
+
module Post
|
|
372
|
+
extend Imagekitio::Internal::Type::Union
|
|
373
|
+
|
|
374
|
+
discriminator :type
|
|
375
|
+
|
|
376
|
+
variant :transformation,
|
|
377
|
+
-> { Imagekitio::Beta::V2::FileUploadParams::Transformation::Post::Transformation }
|
|
378
|
+
|
|
379
|
+
variant :"gif-to-video", -> { Imagekitio::Beta::V2::FileUploadParams::Transformation::Post::GifToVideo }
|
|
380
|
+
|
|
381
|
+
variant :thumbnail, -> { Imagekitio::Beta::V2::FileUploadParams::Transformation::Post::Thumbnail }
|
|
382
|
+
|
|
383
|
+
variant :abs, -> { Imagekitio::Beta::V2::FileUploadParams::Transformation::Post::Abs }
|
|
384
|
+
|
|
385
|
+
class Transformation < Imagekitio::Internal::Type::BaseModel
|
|
386
|
+
# @!attribute type
|
|
387
|
+
# Transformation type.
|
|
388
|
+
#
|
|
389
|
+
# @return [Symbol, :transformation]
|
|
390
|
+
required :type, const: :transformation
|
|
391
|
+
|
|
392
|
+
# @!attribute value
|
|
393
|
+
# Transformation string (e.g. `w-200,h-200`).
|
|
394
|
+
# Same syntax as ImageKit URL-based transformations.
|
|
395
|
+
#
|
|
396
|
+
# @return [String]
|
|
397
|
+
required :value, String
|
|
398
|
+
|
|
399
|
+
# @!method initialize(value:, type: :transformation)
|
|
400
|
+
# Some parameter documentations has been truncated, see
|
|
401
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Transformation}
|
|
402
|
+
# for more details.
|
|
403
|
+
#
|
|
404
|
+
# @param value [String] Transformation string (e.g. `w-200,h-200`).
|
|
405
|
+
#
|
|
406
|
+
# @param type [Symbol, :transformation] Transformation type.
|
|
407
|
+
end
|
|
408
|
+
|
|
409
|
+
class GifToVideo < Imagekitio::Internal::Type::BaseModel
|
|
410
|
+
# @!attribute type
|
|
411
|
+
# Converts an animated GIF into an MP4.
|
|
412
|
+
#
|
|
413
|
+
# @return [Symbol, :"gif-to-video"]
|
|
414
|
+
required :type, const: :"gif-to-video"
|
|
415
|
+
|
|
416
|
+
# @!attribute value
|
|
417
|
+
# Optional transformation string to apply to the output video.
|
|
418
|
+
# **Example**: `q-80`
|
|
419
|
+
#
|
|
420
|
+
# @return [String, nil]
|
|
421
|
+
optional :value, String
|
|
422
|
+
|
|
423
|
+
# @!method initialize(value: nil, type: :"gif-to-video")
|
|
424
|
+
# Some parameter documentations has been truncated, see
|
|
425
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::GifToVideo}
|
|
426
|
+
# for more details.
|
|
427
|
+
#
|
|
428
|
+
# @param value [String] Optional transformation string to apply to the output video.
|
|
429
|
+
#
|
|
430
|
+
# @param type [Symbol, :"gif-to-video"] Converts an animated GIF into an MP4.
|
|
431
|
+
end
|
|
432
|
+
|
|
433
|
+
class Thumbnail < Imagekitio::Internal::Type::BaseModel
|
|
434
|
+
# @!attribute type
|
|
435
|
+
# Generates a thumbnail image.
|
|
436
|
+
#
|
|
437
|
+
# @return [Symbol, :thumbnail]
|
|
438
|
+
required :type, const: :thumbnail
|
|
439
|
+
|
|
440
|
+
# @!attribute value
|
|
441
|
+
# Optional transformation string.
|
|
442
|
+
# **Example**: `w-150,h-150`
|
|
443
|
+
#
|
|
444
|
+
# @return [String, nil]
|
|
445
|
+
optional :value, String
|
|
446
|
+
|
|
447
|
+
# @!method initialize(value: nil, type: :thumbnail)
|
|
448
|
+
# Some parameter documentations has been truncated, see
|
|
449
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Thumbnail}
|
|
450
|
+
# for more details.
|
|
451
|
+
#
|
|
452
|
+
# @param value [String] Optional transformation string.
|
|
453
|
+
#
|
|
454
|
+
# @param type [Symbol, :thumbnail] Generates a thumbnail image.
|
|
455
|
+
end
|
|
456
|
+
|
|
457
|
+
class Abs < Imagekitio::Internal::Type::BaseModel
|
|
458
|
+
# @!attribute protocol
|
|
459
|
+
# Streaming protocol to use (`hls` or `dash`).
|
|
460
|
+
#
|
|
461
|
+
# @return [Symbol, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs::Protocol]
|
|
462
|
+
required :protocol,
|
|
463
|
+
enum: -> { Imagekitio::Beta::V2::FileUploadParams::Transformation::Post::Abs::Protocol }
|
|
464
|
+
|
|
465
|
+
# @!attribute type
|
|
466
|
+
# Adaptive Bitrate Streaming (ABS) setup.
|
|
467
|
+
#
|
|
468
|
+
# @return [Symbol, :abs]
|
|
469
|
+
required :type, const: :abs
|
|
470
|
+
|
|
471
|
+
# @!attribute value
|
|
472
|
+
# List of different representations you want to create separated by an underscore.
|
|
473
|
+
#
|
|
474
|
+
# @return [String]
|
|
475
|
+
required :value, String
|
|
476
|
+
|
|
477
|
+
# @!method initialize(protocol:, value:, type: :abs)
|
|
478
|
+
# Some parameter documentations has been truncated, see
|
|
479
|
+
# {Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs} for
|
|
480
|
+
# more details.
|
|
481
|
+
#
|
|
482
|
+
# @param protocol [Symbol, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs::Protocol] Streaming protocol to use (`hls` or `dash`).
|
|
483
|
+
#
|
|
484
|
+
# @param value [String] List of different representations you want to create separated by an underscore.
|
|
485
|
+
#
|
|
486
|
+
# @param type [Symbol, :abs] Adaptive Bitrate Streaming (ABS) setup.
|
|
487
|
+
|
|
488
|
+
# Streaming protocol to use (`hls` or `dash`).
|
|
489
|
+
#
|
|
490
|
+
# @see Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs#protocol
|
|
491
|
+
module Protocol
|
|
492
|
+
extend Imagekitio::Internal::Type::Enum
|
|
493
|
+
|
|
494
|
+
HLS = :hls
|
|
495
|
+
DASH = :dash
|
|
496
|
+
|
|
497
|
+
# @!method self.values
|
|
498
|
+
# @return [Array<Symbol>]
|
|
499
|
+
end
|
|
500
|
+
end
|
|
501
|
+
|
|
502
|
+
# @!method self.variants
|
|
503
|
+
# @return [Array(Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Transformation, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::GifToVideo, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Thumbnail, Imagekitio::Models::Beta::V2::FileUploadParams::Transformation::Post::Abs)]
|
|
504
|
+
end
|
|
505
|
+
end
|
|
506
|
+
end
|
|
507
|
+
end
|
|
508
|
+
end
|
|
509
|
+
end
|
|
510
|
+
end
|