imagekitio 4.3.0 → 4.4.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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +9 -2
  4. data/lib/imagekitio/internal/type/base_model.rb +5 -5
  5. data/lib/imagekitio/internal/util.rb +3 -1
  6. data/lib/imagekitio/models/ai_tag.rb +39 -0
  7. data/lib/imagekitio/models/beta/v2/file_upload_response.rb +9 -270
  8. data/lib/imagekitio/models/custom_metadata.rb +8 -0
  9. data/lib/imagekitio/models/embedded_metadata.rb +8 -0
  10. data/lib/imagekitio/models/file.rb +11 -275
  11. data/lib/imagekitio/models/file_create_event.rb +34 -0
  12. data/lib/imagekitio/models/file_delete_event.rb +44 -0
  13. data/lib/imagekitio/models/file_update_event.rb +34 -0
  14. data/lib/imagekitio/models/file_upload_response.rb +9 -267
  15. data/lib/imagekitio/models/file_version_create_event.rb +34 -0
  16. data/lib/imagekitio/models/file_version_delete_event.rb +52 -0
  17. data/lib/imagekitio/models/selected_fields_schema.rb +212 -0
  18. data/lib/imagekitio/models/unsafe_unwrap_webhook_event.rb +16 -1
  19. data/lib/imagekitio/models/unwrap_webhook_event.rb +16 -1
  20. data/lib/imagekitio/models/upload_pre_transform_success_event.rb +9 -285
  21. data/lib/imagekitio/models/version_info.rb +26 -0
  22. data/lib/imagekitio/models.rb +25 -0
  23. data/lib/imagekitio/resources/webhooks.rb +4 -3
  24. data/lib/imagekitio/version.rb +1 -1
  25. data/lib/imagekitio.rb +11 -1
  26. data/rbi/imagekitio/models/ai_tag.rbi +56 -0
  27. data/rbi/imagekitio/models/beta/v2/file_upload_response.rbi +11 -535
  28. data/rbi/imagekitio/models/custom_metadata.rbi +11 -0
  29. data/rbi/imagekitio/models/embedded_metadata.rbi +11 -0
  30. data/rbi/imagekitio/models/file.rbi +15 -475
  31. data/rbi/imagekitio/models/file_create_event.rbi +53 -0
  32. data/rbi/imagekitio/models/file_delete_event.rbi +80 -0
  33. data/rbi/imagekitio/models/file_update_event.rbi +53 -0
  34. data/rbi/imagekitio/models/file_upload_response.rbi +11 -520
  35. data/rbi/imagekitio/models/file_version_create_event.rbi +56 -0
  36. data/rbi/imagekitio/models/file_version_delete_event.rbi +93 -0
  37. data/rbi/imagekitio/models/selected_fields_schema.rbi +364 -0
  38. data/rbi/imagekitio/models/unsafe_unwrap_webhook_event.rbi +6 -1
  39. data/rbi/imagekitio/models/unwrap_webhook_event.rbi +6 -1
  40. data/rbi/imagekitio/models/upload_pre_transform_success_event.rbi +11 -533
  41. data/rbi/imagekitio/models/version_info.rbi +40 -0
  42. data/rbi/imagekitio/models.rbi +34 -0
  43. data/rbi/imagekitio/resources/webhooks.rbi +12 -2
  44. data/sig/imagekitio/models/ai_tag.rbs +27 -0
  45. data/sig/imagekitio/models/beta/v2/file_upload_response.rbs +30 -223
  46. data/sig/imagekitio/models/custom_metadata.rbs +7 -0
  47. data/sig/imagekitio/models/embedded_metadata.rbs +7 -0
  48. data/sig/imagekitio/models/file.rbs +29 -224
  49. data/sig/imagekitio/models/file_create_event.rbs +32 -0
  50. data/sig/imagekitio/models/file_delete_event.rbs +48 -0
  51. data/sig/imagekitio/models/file_update_event.rbs +32 -0
  52. data/sig/imagekitio/models/file_upload_response.rbs +29 -224
  53. data/sig/imagekitio/models/file_version_create_event.rbs +36 -0
  54. data/sig/imagekitio/models/file_version_delete_event.rbs +50 -0
  55. data/sig/imagekitio/models/selected_fields_schema.rbs +165 -0
  56. data/sig/imagekitio/models/unsafe_unwrap_webhook_event.rbs +5 -0
  57. data/sig/imagekitio/models/unwrap_webhook_event.rbs +5 -0
  58. data/sig/imagekitio/models/upload_pre_transform_success_event.rbs +29 -224
  59. data/sig/imagekitio/models/version_info.rbs +19 -0
  60. data/sig/imagekitio/models.rbs +22 -0
  61. data/sig/imagekitio/resources/webhooks.rbs +12 -2
  62. metadata +32 -2
@@ -2,15 +2,15 @@ module Imagekitio
2
2
  module Models
3
3
  type file =
4
4
  {
5
- ai_tags: ::Array[Imagekitio::File::AITag]?,
5
+ ai_tags: ::Array[Imagekitio::AITag]?,
6
6
  audio_codec: String,
7
7
  bit_rate: Integer,
8
8
  created_at: Time,
9
9
  custom_coordinates: String?,
10
- custom_metadata: ::Hash[Symbol, top],
10
+ custom_metadata: Imagekitio::Models::custom_metadata,
11
11
  description: String,
12
12
  duration: Integer,
13
- embedded_metadata: ::Hash[Symbol, top],
13
+ embedded_metadata: Imagekitio::Models::embedded_metadata,
14
14
  file_id: String,
15
15
  file_path: String,
16
16
  file_type: String,
@@ -20,20 +20,20 @@ module Imagekitio
20
20
  is_published: bool,
21
21
  mime: String,
22
22
  name: String,
23
- selected_fields_schema: ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema],
23
+ selected_fields_schema: Imagekitio::Models::selected_fields_schema,
24
24
  size: Float,
25
25
  tags: ::Array[String]?,
26
26
  thumbnail: String,
27
27
  type: Imagekitio::Models::File::type_,
28
28
  updated_at: Time,
29
29
  url: String,
30
- version_info: Imagekitio::File::VersionInfo,
30
+ version_info: Imagekitio::VersionInfo,
31
31
  video_codec: String,
32
32
  width: Float
33
33
  }
34
34
 
35
35
  class File < Imagekitio::Internal::Type::BaseModel
36
- attr_accessor ai_tags: ::Array[Imagekitio::File::AITag]?
36
+ attr_accessor ai_tags: ::Array[Imagekitio::AITag]?
37
37
 
38
38
  attr_reader audio_codec: String?
39
39
 
@@ -49,9 +49,11 @@ module Imagekitio
49
49
 
50
50
  attr_accessor custom_coordinates: String?
51
51
 
52
- attr_reader custom_metadata: ::Hash[Symbol, top]?
52
+ attr_reader custom_metadata: Imagekitio::Models::custom_metadata?
53
53
 
54
- def custom_metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
54
+ def custom_metadata=: (
55
+ Imagekitio::Models::custom_metadata
56
+ ) -> Imagekitio::Models::custom_metadata
55
57
 
56
58
  attr_reader description: String?
57
59
 
@@ -61,9 +63,11 @@ module Imagekitio
61
63
 
62
64
  def duration=: (Integer) -> Integer
63
65
 
64
- attr_reader embedded_metadata: ::Hash[Symbol, top]?
66
+ attr_reader embedded_metadata: Imagekitio::Models::embedded_metadata?
65
67
 
66
- def embedded_metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
68
+ def embedded_metadata=: (
69
+ Imagekitio::Models::embedded_metadata
70
+ ) -> Imagekitio::Models::embedded_metadata
67
71
 
68
72
  attr_reader file_id: String?
69
73
 
@@ -101,11 +105,11 @@ module Imagekitio
101
105
 
102
106
  def name=: (String) -> String
103
107
 
104
- attr_reader selected_fields_schema: ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema]?
108
+ attr_reader selected_fields_schema: Imagekitio::Models::selected_fields_schema?
105
109
 
106
110
  def selected_fields_schema=: (
107
- ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema]
108
- ) -> ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema]
111
+ Imagekitio::Models::selected_fields_schema
112
+ ) -> Imagekitio::Models::selected_fields_schema
109
113
 
110
114
  attr_reader size: Float?
111
115
 
@@ -131,11 +135,9 @@ module Imagekitio
131
135
 
132
136
  def url=: (String) -> String
133
137
 
134
- attr_reader version_info: Imagekitio::File::VersionInfo?
138
+ attr_reader version_info: Imagekitio::VersionInfo?
135
139
 
136
- def version_info=: (
137
- Imagekitio::File::VersionInfo
138
- ) -> Imagekitio::File::VersionInfo
140
+ def version_info=: (Imagekitio::VersionInfo) -> Imagekitio::VersionInfo
139
141
 
140
142
  attr_reader video_codec: String?
141
143
 
@@ -146,15 +148,15 @@ module Imagekitio
146
148
  def width=: (Float) -> Float
147
149
 
148
150
  def initialize: (
149
- ?ai_tags: ::Array[Imagekitio::File::AITag]?,
151
+ ?ai_tags: ::Array[Imagekitio::AITag]?,
150
152
  ?audio_codec: String,
151
153
  ?bit_rate: Integer,
152
154
  ?created_at: Time,
153
155
  ?custom_coordinates: String?,
154
- ?custom_metadata: ::Hash[Symbol, top],
156
+ ?custom_metadata: Imagekitio::Models::custom_metadata,
155
157
  ?description: String,
156
158
  ?duration: Integer,
157
- ?embedded_metadata: ::Hash[Symbol, top],
159
+ ?embedded_metadata: Imagekitio::Models::embedded_metadata,
158
160
  ?file_id: String,
159
161
  ?file_path: String,
160
162
  ?file_type: String,
@@ -164,28 +166,28 @@ module Imagekitio
164
166
  ?is_published: bool,
165
167
  ?mime: String,
166
168
  ?name: String,
167
- ?selected_fields_schema: ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema],
169
+ ?selected_fields_schema: Imagekitio::Models::selected_fields_schema,
168
170
  ?size: Float,
169
171
  ?tags: ::Array[String]?,
170
172
  ?thumbnail: String,
171
173
  ?type: Imagekitio::Models::File::type_,
172
174
  ?updated_at: Time,
173
175
  ?url: String,
174
- ?version_info: Imagekitio::File::VersionInfo,
176
+ ?version_info: Imagekitio::VersionInfo,
175
177
  ?video_codec: String,
176
178
  ?width: Float
177
179
  ) -> void
178
180
 
179
181
  def to_hash: -> {
180
- ai_tags: ::Array[Imagekitio::File::AITag]?,
182
+ ai_tags: ::Array[Imagekitio::AITag]?,
181
183
  audio_codec: String,
182
184
  bit_rate: Integer,
183
185
  created_at: Time,
184
186
  custom_coordinates: String?,
185
- custom_metadata: ::Hash[Symbol, top],
187
+ custom_metadata: Imagekitio::Models::custom_metadata,
186
188
  description: String,
187
189
  duration: Integer,
188
- embedded_metadata: ::Hash[Symbol, top],
190
+ embedded_metadata: Imagekitio::Models::embedded_metadata,
189
191
  file_id: String,
190
192
  file_path: String,
191
193
  file_type: String,
@@ -195,199 +197,18 @@ module Imagekitio
195
197
  is_published: bool,
196
198
  mime: String,
197
199
  name: String,
198
- selected_fields_schema: ::Hash[Symbol, Imagekitio::File::SelectedFieldsSchema],
200
+ selected_fields_schema: Imagekitio::Models::selected_fields_schema,
199
201
  size: Float,
200
202
  tags: ::Array[String]?,
201
203
  thumbnail: String,
202
204
  type: Imagekitio::Models::File::type_,
203
205
  updated_at: Time,
204
206
  url: String,
205
- version_info: Imagekitio::File::VersionInfo,
207
+ version_info: Imagekitio::VersionInfo,
206
208
  video_codec: String,
207
209
  width: Float
208
210
  }
209
211
 
210
- type ai_tag = { confidence: Float, name: String, source: String }
211
-
212
- class AITag < Imagekitio::Internal::Type::BaseModel
213
- attr_reader confidence: Float?
214
-
215
- def confidence=: (Float) -> Float
216
-
217
- attr_reader name: String?
218
-
219
- def name=: (String) -> String
220
-
221
- attr_reader source: String?
222
-
223
- def source=: (String) -> String
224
-
225
- def initialize: (
226
- ?confidence: Float,
227
- ?name: String,
228
- ?source: String
229
- ) -> void
230
-
231
- def to_hash: -> { confidence: Float, name: String, source: String }
232
- end
233
-
234
- type selected_fields_schema =
235
- {
236
- type: Imagekitio::Models::File::SelectedFieldsSchema::type_,
237
- default_value: Imagekitio::Models::File::SelectedFieldsSchema::default_value,
238
- is_value_required: bool,
239
- max_length: Float,
240
- max_value: Imagekitio::Models::File::SelectedFieldsSchema::max_value,
241
- min_length: Float,
242
- min_value: Imagekitio::Models::File::SelectedFieldsSchema::min_value,
243
- read_only: bool,
244
- select_options: ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option],
245
- select_options_truncated: bool
246
- }
247
-
248
- class SelectedFieldsSchema < Imagekitio::Internal::Type::BaseModel
249
- attr_accessor type: Imagekitio::Models::File::SelectedFieldsSchema::type_
250
-
251
- attr_reader default_value: Imagekitio::Models::File::SelectedFieldsSchema::default_value?
252
-
253
- def default_value=: (
254
- Imagekitio::Models::File::SelectedFieldsSchema::default_value
255
- ) -> Imagekitio::Models::File::SelectedFieldsSchema::default_value
256
-
257
- attr_reader is_value_required: bool?
258
-
259
- def is_value_required=: (bool) -> bool
260
-
261
- attr_reader max_length: Float?
262
-
263
- def max_length=: (Float) -> Float
264
-
265
- attr_reader max_value: Imagekitio::Models::File::SelectedFieldsSchema::max_value?
266
-
267
- def max_value=: (
268
- Imagekitio::Models::File::SelectedFieldsSchema::max_value
269
- ) -> Imagekitio::Models::File::SelectedFieldsSchema::max_value
270
-
271
- attr_reader min_length: Float?
272
-
273
- def min_length=: (Float) -> Float
274
-
275
- attr_reader min_value: Imagekitio::Models::File::SelectedFieldsSchema::min_value?
276
-
277
- def min_value=: (
278
- Imagekitio::Models::File::SelectedFieldsSchema::min_value
279
- ) -> Imagekitio::Models::File::SelectedFieldsSchema::min_value
280
-
281
- attr_reader read_only: bool?
282
-
283
- def read_only=: (bool) -> bool
284
-
285
- attr_reader select_options: ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option]?
286
-
287
- def select_options=: (
288
- ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option]
289
- ) -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option]
290
-
291
- attr_reader select_options_truncated: bool?
292
-
293
- def select_options_truncated=: (bool) -> bool
294
-
295
- def initialize: (
296
- type: Imagekitio::Models::File::SelectedFieldsSchema::type_,
297
- ?default_value: Imagekitio::Models::File::SelectedFieldsSchema::default_value,
298
- ?is_value_required: bool,
299
- ?max_length: Float,
300
- ?max_value: Imagekitio::Models::File::SelectedFieldsSchema::max_value,
301
- ?min_length: Float,
302
- ?min_value: Imagekitio::Models::File::SelectedFieldsSchema::min_value,
303
- ?read_only: bool,
304
- ?select_options: ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option],
305
- ?select_options_truncated: bool
306
- ) -> void
307
-
308
- def to_hash: -> {
309
- type: Imagekitio::Models::File::SelectedFieldsSchema::type_,
310
- default_value: Imagekitio::Models::File::SelectedFieldsSchema::default_value,
311
- is_value_required: bool,
312
- max_length: Float,
313
- max_value: Imagekitio::Models::File::SelectedFieldsSchema::max_value,
314
- min_length: Float,
315
- min_value: Imagekitio::Models::File::SelectedFieldsSchema::min_value,
316
- read_only: bool,
317
- select_options: ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option],
318
- select_options_truncated: bool
319
- }
320
-
321
- type type_ =
322
- :Text
323
- | :Textarea
324
- | :Number
325
- | :Date
326
- | :Boolean
327
- | :SingleSelect
328
- | :MultiSelect
329
-
330
- module Type
331
- extend Imagekitio::Internal::Type::Enum
332
-
333
- TEXT: :Text
334
- TEXTAREA: :Textarea
335
- NUMBER: :Number
336
- DATE: :Date
337
- BOOLEAN: :Boolean
338
- SINGLE_SELECT: :SingleSelect
339
- MULTI_SELECT: :MultiSelect
340
-
341
- def self?.values: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::type_]
342
- end
343
-
344
- type default_value =
345
- String
346
- | Float
347
- | bool
348
- | ::Array[Imagekitio::Models::File::SelectedFieldsSchema::DefaultValue::mixed]
349
-
350
- module DefaultValue
351
- extend Imagekitio::Internal::Type::Union
352
-
353
- type mixed = String | Float | bool
354
-
355
- module Mixed
356
- extend Imagekitio::Internal::Type::Union
357
-
358
- def self?.variants: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::DefaultValue::mixed]
359
- end
360
-
361
- def self?.variants: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::default_value]
362
-
363
- MixedArray: Imagekitio::Internal::Type::Converter
364
- end
365
-
366
- type max_value = String | Float
367
-
368
- module MaxValue
369
- extend Imagekitio::Internal::Type::Union
370
-
371
- def self?.variants: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::max_value]
372
- end
373
-
374
- type min_value = String | Float
375
-
376
- module MinValue
377
- extend Imagekitio::Internal::Type::Union
378
-
379
- def self?.variants: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::min_value]
380
- end
381
-
382
- type select_option = String | Float | bool
383
-
384
- module SelectOption
385
- extend Imagekitio::Internal::Type::Union
386
-
387
- def self?.variants: -> ::Array[Imagekitio::Models::File::SelectedFieldsSchema::select_option]
388
- end
389
- end
390
-
391
212
  type type_ = :file | :"file-version"
392
213
 
393
214
  module Type
@@ -398,22 +219,6 @@ module Imagekitio
398
219
 
399
220
  def self?.values: -> ::Array[Imagekitio::Models::File::type_]
400
221
  end
401
-
402
- type version_info = { id: String, name: String }
403
-
404
- class VersionInfo < Imagekitio::Internal::Type::BaseModel
405
- attr_reader id: String?
406
-
407
- def id=: (String) -> String
408
-
409
- attr_reader name: String?
410
-
411
- def name=: (String) -> String
412
-
413
- def initialize: (?id: String, ?name: String) -> void
414
-
415
- def to_hash: -> { id: String, name: String }
416
- end
417
222
  end
418
223
  end
419
224
  end
@@ -0,0 +1,32 @@
1
+ module Imagekitio
2
+ module Models
3
+ type file_create_event =
4
+ { created_at: Time, data: Imagekitio::File, type: :"file.created" }
5
+
6
+ class FileCreateEvent < Imagekitio::Models::BaseWebhookEvent
7
+ def created_at: -> Time
8
+
9
+ def created_at=: (Time _) -> Time
10
+
11
+ def data: -> Imagekitio::File
12
+
13
+ def data=: (Imagekitio::File _) -> Imagekitio::File
14
+
15
+ def `type`: -> :"file.created"
16
+
17
+ def type=: (:"file.created" _) -> :"file.created"
18
+
19
+ def initialize: (
20
+ created_at: Time,
21
+ data: Imagekitio::File,
22
+ ?type: :"file.created"
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ created_at: Time,
27
+ data: Imagekitio::File,
28
+ type: :"file.created"
29
+ }
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,48 @@
1
+ module Imagekitio
2
+ module Models
3
+ type file_delete_event =
4
+ {
5
+ created_at: Time,
6
+ data: Imagekitio::FileDeleteEvent::Data,
7
+ type: :"file.deleted"
8
+ }
9
+
10
+ class FileDeleteEvent < Imagekitio::Models::BaseWebhookEvent
11
+ def created_at: -> Time
12
+
13
+ def created_at=: (Time _) -> Time
14
+
15
+ def data: -> Imagekitio::FileDeleteEvent::Data
16
+
17
+ def data=: (
18
+ Imagekitio::FileDeleteEvent::Data _
19
+ ) -> Imagekitio::FileDeleteEvent::Data
20
+
21
+ def `type`: -> :"file.deleted"
22
+
23
+ def type=: (:"file.deleted" _) -> :"file.deleted"
24
+
25
+ def initialize: (
26
+ created_at: Time,
27
+ data: Imagekitio::FileDeleteEvent::Data,
28
+ ?type: :"file.deleted"
29
+ ) -> void
30
+
31
+ def to_hash: -> {
32
+ created_at: Time,
33
+ data: Imagekitio::FileDeleteEvent::Data,
34
+ type: :"file.deleted"
35
+ }
36
+
37
+ type data = { file_id: String }
38
+
39
+ class Data < Imagekitio::Internal::Type::BaseModel
40
+ attr_accessor file_id: String
41
+
42
+ def initialize: (file_id: String) -> void
43
+
44
+ def to_hash: -> { file_id: String }
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,32 @@
1
+ module Imagekitio
2
+ module Models
3
+ type file_update_event =
4
+ { created_at: Time, data: Imagekitio::File, type: :"file.updated" }
5
+
6
+ class FileUpdateEvent < Imagekitio::Models::BaseWebhookEvent
7
+ def created_at: -> Time
8
+
9
+ def created_at=: (Time _) -> Time
10
+
11
+ def data: -> Imagekitio::File
12
+
13
+ def data=: (Imagekitio::File _) -> Imagekitio::File
14
+
15
+ def `type`: -> :"file.updated"
16
+
17
+ def type=: (:"file.updated" _) -> :"file.updated"
18
+
19
+ def initialize: (
20
+ created_at: Time,
21
+ data: Imagekitio::File,
22
+ ?type: :"file.updated"
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ created_at: Time,
27
+ data: Imagekitio::File,
28
+ type: :"file.updated"
29
+ }
30
+ end
31
+ end
32
+ end