Skip to content

Commit 428829b

Browse files
feat(api): manual updates
1 parent 72c02c3 commit 428829b

File tree

16 files changed

+186
-356
lines changed

16 files changed

+186
-356
lines changed

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 42
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-bc7c0d27962b30c19c778656988e154b54696819389289f34420a5e5fdfbd3b8.yml
3-
openapi_spec_hash: 1bfde02a63416c036e9545927f727459
4-
config_hash: b415c06a3b29485af4601beb94ae1aeb
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-dd864816d7f4316ae89f57394da2fd1926166d4704db5a0bb5d23461d2d75e49.yml
3+
openapi_spec_hash: 7f7c416563a15bbaea98804ecdc1a8f9
4+
config_hash: 54c05a157f2cc730fac9e1df5dc3ca29

lib/imagekit.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
require_relative "imagekit/client"
5353
require_relative "imagekit/models/accounts/origin_request"
5454
require_relative "imagekit/models/accounts/url_endpoint_request"
55-
require_relative "imagekit/models/update_file_details_request"
55+
require_relative "imagekit/models/update_file_request"
5656
require_relative "imagekit/models/file"
5757
require_relative "imagekit/models/base_overlay"
5858
require_relative "imagekit/models/base_webhook_event"

lib/imagekit/models.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ module Imagekit
132132

133133
UnwrapWebhookEvent = Imagekit::Models::UnwrapWebhookEvent
134134

135-
UpdateFileDetailsRequest = Imagekit::Models::UpdateFileDetailsRequest
135+
UpdateFileRequest = Imagekit::Models::UpdateFileRequest
136136

137137
UploadPostTransformErrorEvent = Imagekit::Models::UploadPostTransformErrorEvent
138138

lib/imagekit/models/file_update_params.rb

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,11 @@
33
module Imagekit
44
module Models
55
# @see Imagekit::Resources::Files#update
6-
class FileUpdateParams < Imagekit::Internal::Type::BaseModel
6+
class FileUpdateParams < Imagekit::Models::UpdateFileRequest
77
extend Imagekit::Internal::Type::RequestParameters::Converter
88
include Imagekit::Internal::Type::RequestParameters
99

10-
# @!attribute update_file_details_request
11-
#
12-
# @return [Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails, Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus]
13-
required :update_file_details_request, union: -> { Imagekit::UpdateFileDetailsRequest }
14-
15-
# @!method initialize(update_file_details_request:, request_options: {})
16-
# @param update_file_details_request [Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails, Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus]
10+
# @!method initialize(request_options: {})
1711
# @param request_options [Imagekit::RequestOptions, Hash{Symbol=>Object}]
1812
end
1913
end

lib/imagekit/models/update_file_details_request.rb renamed to lib/imagekit/models/update_file_request.rb

Lines changed: 9 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@
22

33
module Imagekit
44
module Models
5-
module UpdateFileDetailsRequest
5+
# Schema for update file update request.
6+
module UpdateFileRequest
67
extend Imagekit::Internal::Type::Union
78

8-
variant -> { Imagekit::UpdateFileDetailsRequest::UpdateFileDetails }
9+
variant -> { Imagekit::UpdateFileRequest::UpdateFileDetails }
910

10-
variant -> { Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus }
11+
variant Imagekit::Internal::Type::Unknown
1112

1213
class UpdateFileDetails < Imagekit::Internal::Type::BaseModel
1314
# @!attribute custom_coordinates
@@ -52,7 +53,7 @@ class UpdateFileDetails < Imagekit::Internal::Type::BaseModel
5253
#
5354
# @return [Array<String>, Symbol, :all, nil]
5455
optional :remove_ai_tags,
55-
union: -> { Imagekit::UpdateFileDetailsRequest::UpdateFileDetails::RemoveAITags },
56+
union: -> { Imagekit::UpdateFileRequest::UpdateFileDetails::RemoveAITags },
5657
api_name: :removeAITags
5758

5859
# @!attribute tags
@@ -73,8 +74,7 @@ class UpdateFileDetails < Imagekit::Internal::Type::BaseModel
7374

7475
# @!method initialize(custom_coordinates: nil, custom_metadata: nil, description: nil, extensions: nil, remove_ai_tags: nil, tags: nil, webhook_url: nil)
7576
# Some parameter documentations has been truncated, see
76-
# {Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails} for more
77-
# details.
77+
# {Imagekit::Models::UpdateFileRequest::UpdateFileDetails} for more details.
7878
#
7979
# @param custom_coordinates [String, nil] Define an important area in the image in the format `x,y,width,height` e.g. `10,
8080
#
@@ -99,11 +99,11 @@ class UpdateFileDetails < Imagekit::Internal::Type::BaseModel
9999
# Note: The remove operation for `AITags` executes before any of the `extensions`
100100
# are processed.
101101
#
102-
# @see Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails#remove_ai_tags
102+
# @see Imagekit::Models::UpdateFileRequest::UpdateFileDetails#remove_ai_tags
103103
module RemoveAITags
104104
extend Imagekit::Internal::Type::Union
105105

106-
variant -> { Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails::RemoveAITags::StringArray }
106+
variant -> { Imagekit::Models::UpdateFileRequest::UpdateFileDetails::RemoveAITags::StringArray }
107107

108108
variant const: :all
109109

@@ -115,50 +115,8 @@ module RemoveAITags
115115
end
116116
end
117117

118-
class ChangePublicationStatus < Imagekit::Internal::Type::BaseModel
119-
# @!attribute publish
120-
# Configure the publication status of a file and its versions.
121-
#
122-
# @return [Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus::Publish, nil]
123-
optional :publish, -> { Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish }
124-
125-
# @!method initialize(publish: nil)
126-
# Some parameter documentations has been truncated, see
127-
# {Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus} for more
128-
# details.
129-
#
130-
# @param publish [Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus::Publish] Configure the publication status of a file and its versions.
131-
132-
# @see Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus#publish
133-
class Publish < Imagekit::Internal::Type::BaseModel
134-
# @!attribute is_published
135-
# Set to `true` to publish the file. Set to `false` to unpublish the file.
136-
#
137-
# @return [Boolean]
138-
required :is_published, Imagekit::Internal::Type::Boolean, api_name: :isPublished
139-
140-
# @!attribute include_file_versions
141-
# Set to `true` to publish/unpublish all versions of the file. Set to `false` to
142-
# publish/unpublish only the current version of the file.
143-
#
144-
# @return [Boolean, nil]
145-
optional :include_file_versions, Imagekit::Internal::Type::Boolean, api_name: :includeFileVersions
146-
147-
# @!method initialize(is_published:, include_file_versions: nil)
148-
# Some parameter documentations has been truncated, see
149-
# {Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus::Publish}
150-
# for more details.
151-
#
152-
# Configure the publication status of a file and its versions.
153-
#
154-
# @param is_published [Boolean] Set to `true` to publish the file. Set to `false` to unpublish the file.
155-
#
156-
# @param include_file_versions [Boolean] Set to `true` to publish/unpublish all versions of the file. Set to `false` to p
157-
end
158-
end
159-
160118
# @!method self.variants
161-
# @return [Array(Imagekit::Models::UpdateFileDetailsRequest::UpdateFileDetails, Imagekit::Models::UpdateFileDetailsRequest::ChangePublicationStatus)]
119+
# @return [Array(Imagekit::Models::UpdateFileRequest::UpdateFileDetails, Object)]
162120
end
163121
end
164122
end

lib/imagekit/resources/files.rb

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,25 @@ class Files
1919
# You can update `tags`, `customCoordinates`, `customMetadata`, publication
2020
# status, remove existing `AITags` and apply extensions using this API.
2121
#
22-
# @overload update(file_id, update_file_details_request:, request_options: {})
22+
# @overload update(file_id, body:, custom_coordinates: nil, custom_metadata: nil, description: nil, extensions: nil, remove_ai_tags: nil, tags: nil, webhook_url: nil, request_options: {})
2323
#
2424
# @param file_id [String] The unique `fileId` of the uploaded file. `fileId` is returned in list and searc
2525
#
26-
# @param update_file_details_request [Imagekit::UpdateFileDetailsRequest]
26+
# @param body [Object]
27+
#
28+
# @param custom_coordinates [String, nil] Define an important area in the image in the format `x,y,width,height` e.g. `10,
29+
#
30+
# @param custom_metadata [Hash{Symbol=>Object}] A key-value data to be associated with the asset. To unset a key, send `null` va
31+
#
32+
# @param description [String] Optional text to describe the contents of the file.
33+
#
34+
# @param extensions [Array<Imagekit::Models::ExtensionItem::RemoveBg, Imagekit::Models::ExtensionItem::AIAutoDescription, Imagekit::Models::ExtensionItem::AutoTaggingExtension>] Array of extensions to be applied to the asset. Each extension can be configured
35+
#
36+
# @param remove_ai_tags [Array<String>, Symbol, :all] An array of AITags associated with the file that you want to remove, e.g. `["car
37+
#
38+
# @param tags [Array<String>, nil] An array of tags associated with the file, such as `["tag1", "tag2"]`. Send `nul
39+
#
40+
# @param webhook_url [String] The final status of extensions after they have completed execution will be deliv
2741
#
2842
# @param request_options [Imagekit::RequestOptions, Hash{Symbol=>Object}, nil]
2943
#
@@ -32,11 +46,6 @@ class Files
3246
# @see Imagekit::Models::FileUpdateParams
3347
def update(file_id, params)
3448
parsed, options = Imagekit::FileUpdateParams.dump_request(params)
35-
case parsed
36-
in {update_file_details_request: Hash => union, **rest}
37-
parsed = {**rest, **union}
38-
else
39-
end
4049
@client.request(
4150
method: :patch,
4251
path: ["v1/files/%1$s/details", file_id],

rbi/imagekit/models.rbi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ module Imagekit
100100

101101
UnwrapWebhookEvent = Imagekit::Models::UnwrapWebhookEvent
102102

103-
UpdateFileDetailsRequest = Imagekit::Models::UpdateFileDetailsRequest
103+
UpdateFileRequest = Imagekit::Models::UpdateFileRequest
104104

105105
UploadPostTransformErrorEvent =
106106
Imagekit::Models::UploadPostTransformErrorEvent

rbi/imagekit/models/file_update_params.rbi

Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
module Imagekit
44
module Models
5-
class FileUpdateParams < Imagekit::Internal::Type::BaseModel
5+
class FileUpdateParams < Imagekit::Models::UpdateFileRequest
66
extend Imagekit::Internal::Type::RequestParameters::Converter
77
include Imagekit::Internal::Type::RequestParameters
88

@@ -12,40 +12,14 @@ module Imagekit
1212
end
1313

1414
sig do
15-
returns(
16-
T.any(
17-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails,
18-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus
19-
)
15+
params(request_options: Imagekit::RequestOptions::OrHash).returns(
16+
T.attached_class
2017
)
2118
end
22-
attr_accessor :update_file_details_request
23-
24-
sig do
25-
params(
26-
update_file_details_request:
27-
T.any(
28-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails::OrHash,
29-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::OrHash
30-
),
31-
request_options: Imagekit::RequestOptions::OrHash
32-
).returns(T.attached_class)
33-
end
34-
def self.new(update_file_details_request:, request_options: {})
19+
def self.new(request_options: {})
3520
end
3621

37-
sig do
38-
override.returns(
39-
{
40-
update_file_details_request:
41-
T.any(
42-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails,
43-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus
44-
),
45-
request_options: Imagekit::RequestOptions
46-
}
47-
)
48-
end
22+
sig { override.returns({ request_options: Imagekit::RequestOptions }) }
4923
def to_hash
5024
end
5125
end

rbi/imagekit/models/update_file_details_request.rbi renamed to rbi/imagekit/models/update_file_request.rbi

Lines changed: 6 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,20 @@
22

33
module Imagekit
44
module Models
5-
module UpdateFileDetailsRequest
5+
# Schema for update file update request.
6+
module UpdateFileRequest
67
extend Imagekit::Internal::Type::Union
78

89
Variants =
910
T.type_alias do
10-
T.any(
11-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails,
12-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus
13-
)
11+
T.any(Imagekit::UpdateFileRequest::UpdateFileDetails, T.anything)
1412
end
1513

1614
class UpdateFileDetails < Imagekit::Internal::Type::BaseModel
1715
OrHash =
1816
T.type_alias do
1917
T.any(
20-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails,
18+
Imagekit::UpdateFileRequest::UpdateFileDetails,
2119
Imagekit::Internal::AnyHash
2220
)
2321
end
@@ -193,7 +191,7 @@ module Imagekit
193191
sig do
194192
override.returns(
195193
T::Array[
196-
Imagekit::UpdateFileDetailsRequest::UpdateFileDetails::RemoveAITags::Variants
194+
Imagekit::UpdateFileRequest::UpdateFileDetails::RemoveAITags::Variants
197195
]
198196
)
199197
end
@@ -208,106 +206,7 @@ module Imagekit
208206
end
209207
end
210208

211-
class ChangePublicationStatus < Imagekit::Internal::Type::BaseModel
212-
OrHash =
213-
T.type_alias do
214-
T.any(
215-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus,
216-
Imagekit::Internal::AnyHash
217-
)
218-
end
219-
220-
# Configure the publication status of a file and its versions.
221-
sig do
222-
returns(
223-
T.nilable(
224-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish
225-
)
226-
)
227-
end
228-
attr_reader :publish
229-
230-
sig do
231-
params(
232-
publish:
233-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish::OrHash
234-
).void
235-
end
236-
attr_writer :publish
237-
238-
sig do
239-
params(
240-
publish:
241-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish::OrHash
242-
).returns(T.attached_class)
243-
end
244-
def self.new(
245-
# Configure the publication status of a file and its versions.
246-
publish: nil
247-
)
248-
end
249-
250-
sig do
251-
override.returns(
252-
{
253-
publish:
254-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish
255-
}
256-
)
257-
end
258-
def to_hash
259-
end
260-
261-
class Publish < Imagekit::Internal::Type::BaseModel
262-
OrHash =
263-
T.type_alias do
264-
T.any(
265-
Imagekit::UpdateFileDetailsRequest::ChangePublicationStatus::Publish,
266-
Imagekit::Internal::AnyHash
267-
)
268-
end
269-
270-
# Set to `true` to publish the file. Set to `false` to unpublish the file.
271-
sig { returns(T::Boolean) }
272-
attr_accessor :is_published
273-
274-
# Set to `true` to publish/unpublish all versions of the file. Set to `false` to
275-
# publish/unpublish only the current version of the file.
276-
sig { returns(T.nilable(T::Boolean)) }
277-
attr_reader :include_file_versions
278-
279-
sig { params(include_file_versions: T::Boolean).void }
280-
attr_writer :include_file_versions
281-
282-
# Configure the publication status of a file and its versions.
283-
sig do
284-
params(
285-
is_published: T::Boolean,
286-
include_file_versions: T::Boolean
287-
).returns(T.attached_class)
288-
end
289-
def self.new(
290-
# Set to `true` to publish the file. Set to `false` to unpublish the file.
291-
is_published:,
292-
# Set to `true` to publish/unpublish all versions of the file. Set to `false` to
293-
# publish/unpublish only the current version of the file.
294-
include_file_versions: nil
295-
)
296-
end
297-
298-
sig do
299-
override.returns(
300-
{ is_published: T::Boolean, include_file_versions: T::Boolean }
301-
)
302-
end
303-
def to_hash
304-
end
305-
end
306-
end
307-
308-
sig do
309-
override.returns(T::Array[Imagekit::UpdateFileDetailsRequest::Variants])
310-
end
209+
sig { override.returns(T::Array[Imagekit::UpdateFileRequest::Variants]) }
311210
def self.variants
312211
end
313212
end

0 commit comments

Comments
 (0)