post-for-me 0.1.0.pre.alpha.7 → 0.1.0.pre.alpha.9

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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +38 -0
  3. data/README.md +1 -1
  4. data/lib/post_for_me/errors.rb +25 -11
  5. data/lib/post_for_me/file_part.rb +10 -7
  6. data/lib/post_for_me/internal/transport/base_client.rb +11 -7
  7. data/lib/post_for_me/internal/transport/pooled_net_requester.rb +7 -10
  8. data/lib/post_for_me/internal/type/base_page.rb +1 -1
  9. data/lib/post_for_me/internal/type/file_input.rb +7 -4
  10. data/lib/post_for_me/internal/util.rb +3 -2
  11. data/lib/post_for_me/models/bluesky_configuration_dto.rb +118 -3
  12. data/lib/post_for_me/models/create_social_post.rb +221 -2
  13. data/lib/post_for_me/models/facebook_configuration_dto.rb +137 -4
  14. data/lib/post_for_me/models/instagram_configuration_dto.rb +135 -4
  15. data/lib/post_for_me/models/linkedin_configuration_dto.rb +118 -3
  16. data/lib/post_for_me/models/pinterest_configuration_dto.rb +118 -3
  17. data/lib/post_for_me/models/social_account_create_auth_url_params.rb +43 -1
  18. data/lib/post_for_me/models/social_post.rb +221 -2
  19. data/lib/post_for_me/models/threads_configuration_dto.rb +118 -3
  20. data/lib/post_for_me/models/tiktok_configuration.rb +127 -4
  21. data/lib/post_for_me/models/twitter_configuration_dto.rb +211 -4
  22. data/lib/post_for_me/models/youtube_configuration_dto.rb +118 -3
  23. data/lib/post_for_me/version.rb +1 -1
  24. data/rbi/post_for_me/errors.rbi +29 -2
  25. data/rbi/post_for_me/file_part.rbi +1 -1
  26. data/rbi/post_for_me/internal/transport/base_client.rbi +4 -5
  27. data/rbi/post_for_me/internal/type/base_page.rbi +1 -1
  28. data/rbi/post_for_me/internal/util.rbi +1 -1
  29. data/rbi/post_for_me/models/bluesky_configuration_dto.rbi +243 -3
  30. data/rbi/post_for_me/models/create_social_post.rbi +424 -0
  31. data/rbi/post_for_me/models/facebook_configuration_dto.rbi +258 -3
  32. data/rbi/post_for_me/models/instagram_configuration_dto.rbi +267 -6
  33. data/rbi/post_for_me/models/linkedin_configuration_dto.rbi +245 -3
  34. data/rbi/post_for_me/models/pinterest_configuration_dto.rbi +246 -3
  35. data/rbi/post_for_me/models/social_account_create_auth_url_params.rbi +104 -0
  36. data/rbi/post_for_me/models/social_post.rbi +414 -0
  37. data/rbi/post_for_me/models/threads_configuration_dto.rbi +240 -3
  38. data/rbi/post_for_me/models/tiktok_configuration.rbi +237 -3
  39. data/rbi/post_for_me/models/twitter_configuration_dto.rbi +452 -4
  40. data/rbi/post_for_me/models/youtube_configuration_dto.rbi +240 -3
  41. data/sig/post_for_me/errors.rbs +7 -0
  42. data/sig/post_for_me/file_part.rbs +1 -1
  43. data/sig/post_for_me/models/bluesky_configuration_dto.rbs +109 -4
  44. data/sig/post_for_me/models/create_social_post.rbs +180 -1
  45. data/sig/post_for_me/models/facebook_configuration_dto.rbs +109 -4
  46. data/sig/post_for_me/models/instagram_configuration_dto.rbs +112 -7
  47. data/sig/post_for_me/models/linkedin_configuration_dto.rbs +109 -4
  48. data/sig/post_for_me/models/pinterest_configuration_dto.rbs +99 -4
  49. data/sig/post_for_me/models/social_account_create_auth_url_params.rbs +37 -0
  50. data/sig/post_for_me/models/social_post.rbs +180 -1
  51. data/sig/post_for_me/models/threads_configuration_dto.rbs +99 -4
  52. data/sig/post_for_me/models/tiktok_configuration.rbs +104 -4
  53. data/sig/post_for_me/models/twitter_configuration_dto.rbs +196 -4
  54. data/sig/post_for_me/models/youtube_configuration_dto.rbs +107 -4
  55. metadata +2 -2
@@ -5,7 +5,7 @@ module PostForMe
5
5
  board_ids: ::Array[String]?,
6
6
  caption: top?,
7
7
  link: String?,
8
- media: ::Array[String]?
8
+ media: ::Array[PostForMe::PinterestConfigurationDto::Media]?
9
9
  }
10
10
 
11
11
  class PinterestConfigurationDto < PostForMe::Internal::Type::BaseModel
@@ -15,21 +15,116 @@ module PostForMe
15
15
 
16
16
  attr_accessor link: String?
17
17
 
18
- attr_accessor media: ::Array[String]?
18
+ attr_accessor media: ::Array[PostForMe::PinterestConfigurationDto::Media]?
19
19
 
20
20
  def initialize: (
21
21
  ?board_ids: ::Array[String]?,
22
22
  ?caption: top?,
23
23
  ?link: String?,
24
- ?media: ::Array[String]?
24
+ ?media: ::Array[PostForMe::PinterestConfigurationDto::Media]?
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  board_ids: ::Array[String]?,
29
29
  caption: top?,
30
30
  link: String?,
31
- media: ::Array[String]?
31
+ media: ::Array[PostForMe::PinterestConfigurationDto::Media]?
32
32
  }
33
+
34
+ type media =
35
+ {
36
+ url: String,
37
+ tags: ::Array[PostForMe::PinterestConfigurationDto::Media::Tag]?,
38
+ thumbnail_timestamp_ms: top?,
39
+ thumbnail_url: top?
40
+ }
41
+
42
+ class Media < PostForMe::Internal::Type::BaseModel
43
+ attr_accessor url: String
44
+
45
+ attr_accessor tags: ::Array[PostForMe::PinterestConfigurationDto::Media::Tag]?
46
+
47
+ attr_accessor thumbnail_timestamp_ms: top?
48
+
49
+ attr_accessor thumbnail_url: top?
50
+
51
+ def initialize: (
52
+ url: String,
53
+ ?tags: ::Array[PostForMe::PinterestConfigurationDto::Media::Tag]?,
54
+ ?thumbnail_timestamp_ms: top?,
55
+ ?thumbnail_url: top?
56
+ ) -> void
57
+
58
+ def to_hash: -> {
59
+ url: String,
60
+ tags: ::Array[PostForMe::PinterestConfigurationDto::Media::Tag]?,
61
+ thumbnail_timestamp_ms: top?,
62
+ thumbnail_url: top?
63
+ }
64
+
65
+ type tag =
66
+ {
67
+ id: String,
68
+ platform: PostForMe::Models::PinterestConfigurationDto::Media::Tag::platform,
69
+ type: PostForMe::Models::PinterestConfigurationDto::Media::Tag::type_,
70
+ x: Float,
71
+ y_: Float
72
+ }
73
+
74
+ class Tag < PostForMe::Internal::Type::BaseModel
75
+ attr_accessor id: String
76
+
77
+ attr_accessor platform: PostForMe::Models::PinterestConfigurationDto::Media::Tag::platform
78
+
79
+ attr_accessor type: PostForMe::Models::PinterestConfigurationDto::Media::Tag::type_
80
+
81
+ attr_reader x: Float?
82
+
83
+ def x=: (Float) -> Float
84
+
85
+ attr_reader y_: Float?
86
+
87
+ def y_=: (Float) -> Float
88
+
89
+ def initialize: (
90
+ id: String,
91
+ platform: PostForMe::Models::PinterestConfigurationDto::Media::Tag::platform,
92
+ type: PostForMe::Models::PinterestConfigurationDto::Media::Tag::type_,
93
+ ?x: Float,
94
+ ?y_: Float
95
+ ) -> void
96
+
97
+ def to_hash: -> {
98
+ id: String,
99
+ platform: PostForMe::Models::PinterestConfigurationDto::Media::Tag::platform,
100
+ type: PostForMe::Models::PinterestConfigurationDto::Media::Tag::type_,
101
+ x: Float,
102
+ y_: Float
103
+ }
104
+
105
+ type platform = :facebook | :instagram
106
+
107
+ module Platform
108
+ extend PostForMe::Internal::Type::Enum
109
+
110
+ FACEBOOK: :facebook
111
+ INSTAGRAM: :instagram
112
+
113
+ def self?.values: -> ::Array[PostForMe::Models::PinterestConfigurationDto::Media::Tag::platform]
114
+ end
115
+
116
+ type type_ = :user | :product
117
+
118
+ module Type
119
+ extend PostForMe::Internal::Type::Enum
120
+
121
+ USER: :user
122
+ PRODUCT: :product
123
+
124
+ def self?.values: -> ::Array[PostForMe::Models::PinterestConfigurationDto::Media::Tag::type_]
125
+ end
126
+ end
127
+ end
33
128
  end
34
129
  end
35
130
  end
@@ -41,6 +41,7 @@ module PostForMe
41
41
  type platform_data =
42
42
  {
43
43
  bluesky: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Bluesky,
44
+ instagram: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram,
44
45
  linkedin: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Linkedin
45
46
  }
46
47
 
@@ -51,6 +52,12 @@ module PostForMe
51
52
  PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Bluesky
52
53
  ) -> PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Bluesky
53
54
 
55
+ attr_reader instagram: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram?
56
+
57
+ def instagram=: (
58
+ PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram
59
+ ) -> PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram
60
+
54
61
  attr_reader linkedin: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Linkedin?
55
62
 
56
63
  def linkedin=: (
@@ -59,11 +66,13 @@ module PostForMe
59
66
 
60
67
  def initialize: (
61
68
  ?bluesky: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Bluesky,
69
+ ?instagram: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram,
62
70
  ?linkedin: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Linkedin
63
71
  ) -> void
64
72
 
65
73
  def to_hash: -> {
66
74
  bluesky: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Bluesky,
75
+ instagram: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Instagram,
67
76
  linkedin: PostForMe::SocialAccountCreateAuthURLParams::PlatformData::Linkedin
68
77
  }
69
78
 
@@ -79,6 +88,34 @@ module PostForMe
79
88
  def to_hash: -> { app_password: String, handle: String }
80
89
  end
81
90
 
91
+ type instagram =
92
+ {
93
+ connection_type: PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Instagram::connection_type
94
+ }
95
+
96
+ class Instagram < PostForMe::Internal::Type::BaseModel
97
+ attr_accessor connection_type: PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Instagram::connection_type
98
+
99
+ def initialize: (
100
+ connection_type: PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Instagram::connection_type
101
+ ) -> void
102
+
103
+ def to_hash: -> {
104
+ connection_type: PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Instagram::connection_type
105
+ }
106
+
107
+ type connection_type = :instagram | :facebook
108
+
109
+ module ConnectionType
110
+ extend PostForMe::Internal::Type::Enum
111
+
112
+ INSTAGRAM: :instagram
113
+ FACEBOOK: :facebook
114
+
115
+ def self?.values: -> ::Array[PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Instagram::connection_type]
116
+ end
117
+ end
118
+
82
119
  type linkedin =
83
120
  {
84
121
  connection_type: PostForMe::Models::SocialAccountCreateAuthURLParams::PlatformData::Linkedin::connection_type
@@ -92,16 +92,24 @@ module PostForMe
92
92
  allow_comment: bool?,
93
93
  allow_duet: bool?,
94
94
  allow_stitch: bool?,
95
+ auto_add_music: bool?,
95
96
  board_ids: ::Array[String]?,
96
97
  caption: top?,
98
+ collaborators: ::Array[::Array[top]]?,
99
+ community_id: String,
97
100
  disclose_branded_content: bool?,
98
101
  disclose_your_brand: bool?,
99
102
  is_ai_generated: bool?,
100
103
  is_draft: bool?,
101
104
  link: String?,
105
+ location: String?,
102
106
  media: ::Array[String]?,
103
107
  placement: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::placement?,
108
+ poll: PostForMe::SocialPost::AccountConfiguration::Configuration::Poll,
104
109
  privacy_status: String?,
110
+ quote_tweet_id: String,
111
+ reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::reply_settings?,
112
+ share_to_feed: bool?,
105
113
  title: String?
106
114
  }
107
115
 
@@ -112,10 +120,18 @@ module PostForMe
112
120
 
113
121
  attr_accessor allow_stitch: bool?
114
122
 
123
+ attr_accessor auto_add_music: bool?
124
+
115
125
  attr_accessor board_ids: ::Array[String]?
116
126
 
117
127
  attr_accessor caption: top?
118
128
 
129
+ attr_accessor collaborators: ::Array[::Array[top]]?
130
+
131
+ attr_reader community_id: String?
132
+
133
+ def community_id=: (String) -> String
134
+
119
135
  attr_accessor disclose_branded_content: bool?
120
136
 
121
137
  attr_accessor disclose_your_brand: bool?
@@ -126,28 +142,52 @@ module PostForMe
126
142
 
127
143
  attr_accessor link: String?
128
144
 
145
+ attr_accessor location: String?
146
+
129
147
  attr_accessor media: ::Array[String]?
130
148
 
131
149
  attr_accessor placement: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::placement?
132
150
 
151
+ attr_reader poll: PostForMe::SocialPost::AccountConfiguration::Configuration::Poll?
152
+
153
+ def poll=: (
154
+ PostForMe::SocialPost::AccountConfiguration::Configuration::Poll
155
+ ) -> PostForMe::SocialPost::AccountConfiguration::Configuration::Poll
156
+
133
157
  attr_accessor privacy_status: String?
134
158
 
159
+ attr_reader quote_tweet_id: String?
160
+
161
+ def quote_tweet_id=: (String) -> String
162
+
163
+ attr_accessor reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::reply_settings?
164
+
165
+ attr_accessor share_to_feed: bool?
166
+
135
167
  attr_accessor title: String?
136
168
 
137
169
  def initialize: (
138
170
  ?allow_comment: bool?,
139
171
  ?allow_duet: bool?,
140
172
  ?allow_stitch: bool?,
173
+ ?auto_add_music: bool?,
141
174
  ?board_ids: ::Array[String]?,
142
175
  ?caption: top?,
176
+ ?collaborators: ::Array[::Array[top]]?,
177
+ ?community_id: String,
143
178
  ?disclose_branded_content: bool?,
144
179
  ?disclose_your_brand: bool?,
145
180
  ?is_ai_generated: bool?,
146
181
  ?is_draft: bool?,
147
182
  ?link: String?,
183
+ ?location: String?,
148
184
  ?media: ::Array[String]?,
149
185
  ?placement: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::placement?,
186
+ ?poll: PostForMe::SocialPost::AccountConfiguration::Configuration::Poll,
150
187
  ?privacy_status: String?,
188
+ ?quote_tweet_id: String,
189
+ ?reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::reply_settings?,
190
+ ?share_to_feed: bool?,
151
191
  ?title: String?
152
192
  ) -> void
153
193
 
@@ -155,16 +195,24 @@ module PostForMe
155
195
  allow_comment: bool?,
156
196
  allow_duet: bool?,
157
197
  allow_stitch: bool?,
198
+ auto_add_music: bool?,
158
199
  board_ids: ::Array[String]?,
159
200
  caption: top?,
201
+ collaborators: ::Array[::Array[top]]?,
202
+ community_id: String,
160
203
  disclose_branded_content: bool?,
161
204
  disclose_your_brand: bool?,
162
205
  is_ai_generated: bool?,
163
206
  is_draft: bool?,
164
207
  link: String?,
208
+ location: String?,
165
209
  media: ::Array[String]?,
166
210
  placement: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::placement?,
211
+ poll: PostForMe::SocialPost::AccountConfiguration::Configuration::Poll,
167
212
  privacy_status: String?,
213
+ quote_tweet_id: String,
214
+ reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::reply_settings?,
215
+ share_to_feed: bool?,
168
216
  title: String?
169
217
  }
170
218
 
@@ -179,30 +227,161 @@ module PostForMe
179
227
 
180
228
  def self?.values: -> ::Array[PostForMe::Models::SocialPost::AccountConfiguration::Configuration::placement]
181
229
  end
230
+
231
+ type poll =
232
+ {
233
+ duration_minutes: Float,
234
+ options: ::Array[String],
235
+ reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings
236
+ }
237
+
238
+ class Poll < PostForMe::Internal::Type::BaseModel
239
+ attr_accessor duration_minutes: Float
240
+
241
+ attr_accessor options: ::Array[String]
242
+
243
+ attr_reader reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings?
244
+
245
+ def reply_settings=: (
246
+ PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings
247
+ ) -> PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings
248
+
249
+ def initialize: (
250
+ duration_minutes: Float,
251
+ options: ::Array[String],
252
+ ?reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings
253
+ ) -> void
254
+
255
+ def to_hash: -> {
256
+ duration_minutes: Float,
257
+ options: ::Array[String],
258
+ reply_settings: PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings
259
+ }
260
+
261
+ type reply_settings =
262
+ :following | :mentionedUsers | :subscribers | :verified
263
+
264
+ module ReplySettings
265
+ extend PostForMe::Internal::Type::Enum
266
+
267
+ FOLLOWING: :following
268
+ MENTIONED_USERS: :mentionedUsers
269
+ SUBSCRIBERS: :subscribers
270
+ VERIFIED: :verified
271
+
272
+ def self?.values: -> ::Array[PostForMe::Models::SocialPost::AccountConfiguration::Configuration::Poll::reply_settings]
273
+ end
274
+ end
275
+
276
+ type reply_settings =
277
+ :following | :mentionedUsers | :subscribers | :verified
278
+
279
+ module ReplySettings
280
+ extend PostForMe::Internal::Type::Enum
281
+
282
+ FOLLOWING: :following
283
+ MENTIONED_USERS: :mentionedUsers
284
+ SUBSCRIBERS: :subscribers
285
+ VERIFIED: :verified
286
+
287
+ def self?.values: -> ::Array[PostForMe::Models::SocialPost::AccountConfiguration::Configuration::reply_settings]
288
+ end
182
289
  end
183
290
  end
184
291
 
185
292
  type media =
186
- { url: String, thumbnail_timestamp_ms: top?, thumbnail_url: top? }
293
+ {
294
+ url: String,
295
+ tags: ::Array[PostForMe::SocialPost::Media::Tag]?,
296
+ thumbnail_timestamp_ms: top?,
297
+ thumbnail_url: top?
298
+ }
187
299
 
188
300
  class Media < PostForMe::Internal::Type::BaseModel
189
301
  attr_accessor url: String
190
302
 
303
+ attr_accessor tags: ::Array[PostForMe::SocialPost::Media::Tag]?
304
+
191
305
  attr_accessor thumbnail_timestamp_ms: top?
192
306
 
193
307
  attr_accessor thumbnail_url: top?
194
308
 
195
309
  def initialize: (
196
310
  url: String,
311
+ ?tags: ::Array[PostForMe::SocialPost::Media::Tag]?,
197
312
  ?thumbnail_timestamp_ms: top?,
198
313
  ?thumbnail_url: top?
199
314
  ) -> void
200
315
 
201
316
  def to_hash: -> {
202
317
  url: String,
318
+ tags: ::Array[PostForMe::SocialPost::Media::Tag]?,
203
319
  thumbnail_timestamp_ms: top?,
204
320
  thumbnail_url: top?
205
321
  }
322
+
323
+ type tag =
324
+ {
325
+ id: String,
326
+ platform: PostForMe::Models::SocialPost::Media::Tag::platform,
327
+ type: PostForMe::Models::SocialPost::Media::Tag::type_,
328
+ x: Float,
329
+ y_: Float
330
+ }
331
+
332
+ class Tag < PostForMe::Internal::Type::BaseModel
333
+ attr_accessor id: String
334
+
335
+ attr_accessor platform: PostForMe::Models::SocialPost::Media::Tag::platform
336
+
337
+ attr_accessor type: PostForMe::Models::SocialPost::Media::Tag::type_
338
+
339
+ attr_reader x: Float?
340
+
341
+ def x=: (Float) -> Float
342
+
343
+ attr_reader y_: Float?
344
+
345
+ def y_=: (Float) -> Float
346
+
347
+ def initialize: (
348
+ id: String,
349
+ platform: PostForMe::Models::SocialPost::Media::Tag::platform,
350
+ type: PostForMe::Models::SocialPost::Media::Tag::type_,
351
+ ?x: Float,
352
+ ?y_: Float
353
+ ) -> void
354
+
355
+ def to_hash: -> {
356
+ id: String,
357
+ platform: PostForMe::Models::SocialPost::Media::Tag::platform,
358
+ type: PostForMe::Models::SocialPost::Media::Tag::type_,
359
+ x: Float,
360
+ y_: Float
361
+ }
362
+
363
+ type platform = :facebook | :instagram
364
+
365
+ module Platform
366
+ extend PostForMe::Internal::Type::Enum
367
+
368
+ FACEBOOK: :facebook
369
+ INSTAGRAM: :instagram
370
+
371
+ def self?.values: -> ::Array[PostForMe::Models::SocialPost::Media::Tag::platform]
372
+ end
373
+
374
+ type type_ = :user | :product
375
+
376
+ module Type
377
+ extend PostForMe::Internal::Type::Enum
378
+
379
+ USER: :user
380
+ PRODUCT: :product
381
+
382
+ def self?.values: -> ::Array[PostForMe::Models::SocialPost::Media::Tag::type_]
383
+ end
384
+ end
206
385
  end
207
386
 
208
387
  type status = :draft | :scheduled | :processing | :processed
@@ -3,29 +3,124 @@ module PostForMe
3
3
  type threads_configuration_dto =
4
4
  {
5
5
  caption: top?,
6
- media: ::Array[String]?,
6
+ media: ::Array[PostForMe::ThreadsConfigurationDto::Media]?,
7
7
  placement: PostForMe::Models::ThreadsConfigurationDto::placement?
8
8
  }
9
9
 
10
10
  class ThreadsConfigurationDto < PostForMe::Internal::Type::BaseModel
11
11
  attr_accessor caption: top?
12
12
 
13
- attr_accessor media: ::Array[String]?
13
+ attr_accessor media: ::Array[PostForMe::ThreadsConfigurationDto::Media]?
14
14
 
15
15
  attr_accessor placement: PostForMe::Models::ThreadsConfigurationDto::placement?
16
16
 
17
17
  def initialize: (
18
18
  ?caption: top?,
19
- ?media: ::Array[String]?,
19
+ ?media: ::Array[PostForMe::ThreadsConfigurationDto::Media]?,
20
20
  ?placement: PostForMe::Models::ThreadsConfigurationDto::placement?
21
21
  ) -> void
22
22
 
23
23
  def to_hash: -> {
24
24
  caption: top?,
25
- media: ::Array[String]?,
25
+ media: ::Array[PostForMe::ThreadsConfigurationDto::Media]?,
26
26
  placement: PostForMe::Models::ThreadsConfigurationDto::placement?
27
27
  }
28
28
 
29
+ type media =
30
+ {
31
+ url: String,
32
+ tags: ::Array[PostForMe::ThreadsConfigurationDto::Media::Tag]?,
33
+ thumbnail_timestamp_ms: top?,
34
+ thumbnail_url: top?
35
+ }
36
+
37
+ class Media < PostForMe::Internal::Type::BaseModel
38
+ attr_accessor url: String
39
+
40
+ attr_accessor tags: ::Array[PostForMe::ThreadsConfigurationDto::Media::Tag]?
41
+
42
+ attr_accessor thumbnail_timestamp_ms: top?
43
+
44
+ attr_accessor thumbnail_url: top?
45
+
46
+ def initialize: (
47
+ url: String,
48
+ ?tags: ::Array[PostForMe::ThreadsConfigurationDto::Media::Tag]?,
49
+ ?thumbnail_timestamp_ms: top?,
50
+ ?thumbnail_url: top?
51
+ ) -> void
52
+
53
+ def to_hash: -> {
54
+ url: String,
55
+ tags: ::Array[PostForMe::ThreadsConfigurationDto::Media::Tag]?,
56
+ thumbnail_timestamp_ms: top?,
57
+ thumbnail_url: top?
58
+ }
59
+
60
+ type tag =
61
+ {
62
+ id: String,
63
+ platform: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::platform,
64
+ type: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::type_,
65
+ x: Float,
66
+ y_: Float
67
+ }
68
+
69
+ class Tag < PostForMe::Internal::Type::BaseModel
70
+ attr_accessor id: String
71
+
72
+ attr_accessor platform: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::platform
73
+
74
+ attr_accessor type: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::type_
75
+
76
+ attr_reader x: Float?
77
+
78
+ def x=: (Float) -> Float
79
+
80
+ attr_reader y_: Float?
81
+
82
+ def y_=: (Float) -> Float
83
+
84
+ def initialize: (
85
+ id: String,
86
+ platform: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::platform,
87
+ type: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::type_,
88
+ ?x: Float,
89
+ ?y_: Float
90
+ ) -> void
91
+
92
+ def to_hash: -> {
93
+ id: String,
94
+ platform: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::platform,
95
+ type: PostForMe::Models::ThreadsConfigurationDto::Media::Tag::type_,
96
+ x: Float,
97
+ y_: Float
98
+ }
99
+
100
+ type platform = :facebook | :instagram
101
+
102
+ module Platform
103
+ extend PostForMe::Internal::Type::Enum
104
+
105
+ FACEBOOK: :facebook
106
+ INSTAGRAM: :instagram
107
+
108
+ def self?.values: -> ::Array[PostForMe::Models::ThreadsConfigurationDto::Media::Tag::platform]
109
+ end
110
+
111
+ type type_ = :user | :product
112
+
113
+ module Type
114
+ extend PostForMe::Internal::Type::Enum
115
+
116
+ USER: :user
117
+ PRODUCT: :product
118
+
119
+ def self?.values: -> ::Array[PostForMe::Models::ThreadsConfigurationDto::Media::Tag::type_]
120
+ end
121
+ end
122
+ end
123
+
29
124
  type placement = :reels | :timeline
30
125
 
31
126
  module Placement