post-for-me 0.1.0.pre.alpha.4 → 0.1.0.pre.alpha.6

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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +24 -0
  3. data/README.md +11 -9
  4. data/lib/post_for_me/internal/transport/pooled_net_requester.rb +1 -9
  5. data/lib/post_for_me/internal/type/base_model.rb +1 -8
  6. data/lib/post_for_me/internal/util.rb +1 -1
  7. data/lib/post_for_me/models/bluesky_configuration_dto.rb +24 -0
  8. data/lib/post_for_me/models/create_social_post.rb +25 -373
  9. data/lib/post_for_me/models/facebook_configuration_dto.rb +46 -0
  10. data/lib/post_for_me/models/instagram_configuration_dto.rb +54 -0
  11. data/lib/post_for_me/models/linkedin_configuration_dto.rb +24 -0
  12. data/lib/post_for_me/models/pinterest_configuration_dto.rb +40 -0
  13. data/lib/post_for_me/models/platform_configurations_dto.rb +88 -0
  14. data/lib/post_for_me/models/social_account.rb +1 -1
  15. data/lib/post_for_me/models/social_account_create_auth_url_params.rb +10 -4
  16. data/lib/post_for_me/models/social_account_create_params.rb +105 -0
  17. data/lib/post_for_me/models/social_post.rb +197 -12
  18. data/lib/post_for_me/models/social_post_list_params.rb +1 -4
  19. data/lib/post_for_me/models/threads_configuration_dto.rb +45 -0
  20. data/lib/post_for_me/models/tiktok_configuration.rb +13 -1
  21. data/lib/post_for_me/models/twitter_configuration_dto.rb +24 -0
  22. data/lib/post_for_me/models/youtube_configuration_dto.rb +32 -0
  23. data/lib/post_for_me/models.rb +20 -0
  24. data/lib/post_for_me/resources/social_accounts.rb +42 -1
  25. data/lib/post_for_me/resources/social_posts.rb +2 -2
  26. data/lib/post_for_me/version.rb +1 -1
  27. data/lib/post_for_me.rb +10 -0
  28. data/rbi/post_for_me/errors.rbi +2 -2
  29. data/rbi/post_for_me/models/bluesky_configuration_dto.rbi +45 -0
  30. data/rbi/post_for_me/models/create_social_post.rbi +22 -863
  31. data/rbi/post_for_me/models/facebook_configuration_dto.rbi +101 -0
  32. data/rbi/post_for_me/models/instagram_configuration_dto.rbi +109 -0
  33. data/rbi/post_for_me/models/linkedin_configuration_dto.rbi +45 -0
  34. data/rbi/post_for_me/models/pinterest_configuration_dto.rbi +64 -0
  35. data/rbi/post_for_me/models/platform_configurations_dto.rbi +178 -0
  36. data/rbi/post_for_me/models/social_account_create_auth_url_params.rbi +11 -0
  37. data/rbi/post_for_me/models/social_account_create_params.rbi +185 -0
  38. data/rbi/post_for_me/models/social_post.rbi +328 -13
  39. data/rbi/post_for_me/models/threads_configuration_dto.rbi +94 -0
  40. data/rbi/post_for_me/models/tiktok_configuration.rbi +10 -0
  41. data/rbi/post_for_me/models/twitter_configuration_dto.rbi +45 -0
  42. data/rbi/post_for_me/models/youtube_configuration_dto.rbi +56 -0
  43. data/rbi/post_for_me/models.rbi +20 -0
  44. data/rbi/post_for_me/resources/social_accounts.rbi +42 -0
  45. data/rbi/post_for_me/resources/social_posts.rbi +2 -6
  46. data/sig/post_for_me/models/bluesky_configuration_dto.rbs +15 -0
  47. data/sig/post_for_me/models/create_social_post.rbs +14 -278
  48. data/sig/post_for_me/models/facebook_configuration_dto.rbs +42 -0
  49. data/sig/post_for_me/models/instagram_configuration_dto.rbs +47 -0
  50. data/sig/post_for_me/models/linkedin_configuration_dto.rbs +15 -0
  51. data/sig/post_for_me/models/pinterest_configuration_dto.rbs +35 -0
  52. data/sig/post_for_me/models/platform_configurations_dto.rbs +65 -0
  53. data/sig/post_for_me/models/social_account_create_auth_url_params.rbs +7 -0
  54. data/sig/post_for_me/models/social_account_create_params.rbs +97 -0
  55. data/sig/post_for_me/models/social_post.rbs +155 -16
  56. data/sig/post_for_me/models/threads_configuration_dto.rbs +41 -0
  57. data/sig/post_for_me/models/tiktok_configuration.rbs +5 -0
  58. data/sig/post_for_me/models/twitter_configuration_dto.rbs +15 -0
  59. data/sig/post_for_me/models/youtube_configuration_dto.rbs +22 -0
  60. data/sig/post_for_me/models.rbs +20 -0
  61. data/sig/post_for_me/resources/social_accounts.rbs +14 -0
  62. data/sig/post_for_me/resources/social_posts.rbs +2 -2
  63. metadata +32 -2
@@ -0,0 +1,45 @@
1
+ # typed: strong
2
+
3
+ module PostForMe
4
+ module Models
5
+ class TwitterConfigurationDto < PostForMe::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ PostForMe::TwitterConfigurationDto,
10
+ PostForMe::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Overrides the `caption` from the post
15
+ sig { returns(T.nilable(T.anything)) }
16
+ attr_accessor :caption
17
+
18
+ # Overrides the `media` from the post
19
+ sig { returns(T.nilable(T::Array[String])) }
20
+ attr_accessor :media
21
+
22
+ sig do
23
+ params(
24
+ caption: T.nilable(T.anything),
25
+ media: T.nilable(T::Array[String])
26
+ ).returns(T.attached_class)
27
+ end
28
+ def self.new(
29
+ # Overrides the `caption` from the post
30
+ caption: nil,
31
+ # Overrides the `media` from the post
32
+ media: nil
33
+ )
34
+ end
35
+
36
+ sig do
37
+ override.returns(
38
+ { caption: T.nilable(T.anything), media: T.nilable(T::Array[String]) }
39
+ )
40
+ end
41
+ def to_hash
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,56 @@
1
+ # typed: strong
2
+
3
+ module PostForMe
4
+ module Models
5
+ class YoutubeConfigurationDto < PostForMe::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ PostForMe::YoutubeConfigurationDto,
10
+ PostForMe::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # Overrides the `caption` from the post
15
+ sig { returns(T.nilable(T.anything)) }
16
+ attr_accessor :caption
17
+
18
+ # Overrides the `media` from the post
19
+ sig { returns(T.nilable(T::Array[String])) }
20
+ attr_accessor :media
21
+
22
+ # Overrides the `title` from the post
23
+ sig { returns(T.nilable(String)) }
24
+ attr_accessor :title
25
+
26
+ sig do
27
+ params(
28
+ caption: T.nilable(T.anything),
29
+ media: T.nilable(T::Array[String]),
30
+ title: T.nilable(String)
31
+ ).returns(T.attached_class)
32
+ end
33
+ def self.new(
34
+ # Overrides the `caption` from the post
35
+ caption: nil,
36
+ # Overrides the `media` from the post
37
+ media: nil,
38
+ # Overrides the `title` from the post
39
+ title: nil
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ {
46
+ caption: T.nilable(T.anything),
47
+ media: T.nilable(T::Array[String]),
48
+ title: T.nilable(String)
49
+ }
50
+ )
51
+ end
52
+ def to_hash
53
+ end
54
+ end
55
+ end
56
+ end
@@ -1,15 +1,29 @@
1
1
  # typed: strong
2
2
 
3
3
  module PostForMe
4
+ BlueskyConfigurationDto = PostForMe::Models::BlueskyConfigurationDto
5
+
4
6
  CreateSocialPost = PostForMe::Models::CreateSocialPost
5
7
 
8
+ FacebookConfigurationDto = PostForMe::Models::FacebookConfigurationDto
9
+
10
+ InstagramConfigurationDto = PostForMe::Models::InstagramConfigurationDto
11
+
12
+ LinkedinConfigurationDto = PostForMe::Models::LinkedinConfigurationDto
13
+
6
14
  MediaCreateUploadURLParams = PostForMe::Models::MediaCreateUploadURLParams
7
15
 
16
+ PinterestConfigurationDto = PostForMe::Models::PinterestConfigurationDto
17
+
18
+ PlatformConfigurationsDto = PostForMe::Models::PlatformConfigurationsDto
19
+
8
20
  SocialAccount = PostForMe::Models::SocialAccount
9
21
 
10
22
  SocialAccountCreateAuthURLParams =
11
23
  PostForMe::Models::SocialAccountCreateAuthURLParams
12
24
 
25
+ SocialAccountCreateParams = PostForMe::Models::SocialAccountCreateParams
26
+
13
27
  SocialAccountDisconnectParams =
14
28
  PostForMe::Models::SocialAccountDisconnectParams
15
29
 
@@ -38,5 +52,11 @@ module PostForMe
38
52
 
39
53
  SocialPostUpdateParams = PostForMe::Models::SocialPostUpdateParams
40
54
 
55
+ ThreadsConfigurationDto = PostForMe::Models::ThreadsConfigurationDto
56
+
41
57
  TiktokConfiguration = PostForMe::Models::TiktokConfiguration
58
+
59
+ TwitterConfigurationDto = PostForMe::Models::TwitterConfigurationDto
60
+
61
+ YoutubeConfigurationDto = PostForMe::Models::YoutubeConfigurationDto
42
62
  end
@@ -3,6 +3,45 @@
3
3
  module PostForMe
4
4
  module Resources
5
5
  class SocialAccounts
6
+ # If a social account with the same platform and user_id already exists, it will
7
+ # be updated. If not, a new social account will be created.
8
+ sig do
9
+ params(
10
+ access_token: String,
11
+ access_token_expires_at: Time,
12
+ platform: PostForMe::SocialAccountCreateParams::Platform::OrSymbol,
13
+ user_id: String,
14
+ external_id: T.nilable(String),
15
+ metadata: T.anything,
16
+ refresh_token: T.nilable(String),
17
+ refresh_token_expires_at: T.nilable(Time),
18
+ username: T.nilable(String),
19
+ request_options: PostForMe::RequestOptions::OrHash
20
+ ).returns(PostForMe::SocialAccount)
21
+ end
22
+ def create(
23
+ # The access token of the social account
24
+ access_token:,
25
+ # The access token expiration date of the social account
26
+ access_token_expires_at:,
27
+ # The platform of the social account
28
+ platform:,
29
+ # The user id of the social account
30
+ user_id:,
31
+ # The external id of the social account
32
+ external_id: nil,
33
+ # The metadata of the social account
34
+ metadata: nil,
35
+ # The refresh token of the social account
36
+ refresh_token: nil,
37
+ # The refresh token expiration date of the social account
38
+ refresh_token_expires_at: nil,
39
+ # The platform's username of the social account
40
+ username: nil,
41
+ request_options: {}
42
+ )
43
+ end
44
+
6
45
  # Get social account by ID
7
46
  sig do
8
47
  params(
@@ -77,6 +116,7 @@ module PostForMe
77
116
  sig do
78
117
  params(
79
118
  platform: String,
119
+ external_id: String,
80
120
  platform_data:
81
121
  PostForMe::SocialAccountCreateAuthURLParams::PlatformData::OrHash,
82
122
  request_options: PostForMe::RequestOptions::OrHash
@@ -85,6 +125,8 @@ module PostForMe
85
125
  def create_auth_url(
86
126
  # The social account provider
87
127
  platform:,
128
+ # Your unique identifier for the social account
129
+ external_id: nil,
88
130
  # Additional data needed for the provider
89
131
  platform_data: nil,
90
132
  request_options: {}
@@ -19,9 +19,7 @@ module PostForMe
19
19
  media:
20
20
  T.nilable(T::Array[PostForMe::CreateSocialPost::Media::OrHash]),
21
21
  platform_configurations:
22
- T.nilable(
23
- PostForMe::CreateSocialPost::PlatformConfigurations::OrHash
24
- ),
22
+ T.nilable(PostForMe::PlatformConfigurationsDto::OrHash),
25
23
  scheduled_at: T.nilable(Time),
26
24
  request_options: PostForMe::RequestOptions::OrHash
27
25
  ).returns(PostForMe::SocialPost)
@@ -79,9 +77,7 @@ module PostForMe
79
77
  media:
80
78
  T.nilable(T::Array[PostForMe::CreateSocialPost::Media::OrHash]),
81
79
  platform_configurations:
82
- T.nilable(
83
- PostForMe::CreateSocialPost::PlatformConfigurations::OrHash
84
- ),
80
+ T.nilable(PostForMe::PlatformConfigurationsDto::OrHash),
85
81
  scheduled_at: T.nilable(Time),
86
82
  request_options: PostForMe::RequestOptions::OrHash
87
83
  ).returns(PostForMe::SocialPost)
@@ -0,0 +1,15 @@
1
+ module PostForMe
2
+ module Models
3
+ type bluesky_configuration_dto = { caption: top?, media: ::Array[String]? }
4
+
5
+ class BlueskyConfigurationDto < PostForMe::Internal::Type::BaseModel
6
+ attr_accessor caption: top?
7
+
8
+ attr_accessor media: ::Array[String]?
9
+
10
+ def initialize: (?caption: top?, ?media: ::Array[String]?) -> void
11
+
12
+ def to_hash: -> { caption: top?, media: ::Array[String]? }
13
+ end
14
+ end
15
+ end
@@ -8,7 +8,7 @@ module PostForMe
8
8
  external_id: String?,
9
9
  is_draft: bool?,
10
10
  media: ::Array[PostForMe::CreateSocialPost::Media]?,
11
- platform_configurations: PostForMe::CreateSocialPost::PlatformConfigurations?,
11
+ platform_configurations: PostForMe::PlatformConfigurationsDto?,
12
12
  scheduled_at: Time?
13
13
  }
14
14
 
@@ -25,7 +25,7 @@ module PostForMe
25
25
 
26
26
  attr_accessor media: ::Array[PostForMe::CreateSocialPost::Media]?
27
27
 
28
- attr_accessor platform_configurations: PostForMe::CreateSocialPost::PlatformConfigurations?
28
+ attr_accessor platform_configurations: PostForMe::PlatformConfigurationsDto?
29
29
 
30
30
  attr_accessor scheduled_at: Time?
31
31
 
@@ -36,7 +36,7 @@ module PostForMe
36
36
  ?external_id: String?,
37
37
  ?is_draft: bool?,
38
38
  ?media: ::Array[PostForMe::CreateSocialPost::Media]?,
39
- ?platform_configurations: PostForMe::CreateSocialPost::PlatformConfigurations?,
39
+ ?platform_configurations: PostForMe::PlatformConfigurationsDto?,
40
40
  ?scheduled_at: Time?
41
41
  ) -> void
42
42
 
@@ -47,7 +47,7 @@ module PostForMe
47
47
  external_id: String?,
48
48
  is_draft: bool?,
49
49
  media: ::Array[PostForMe::CreateSocialPost::Media]?,
50
- platform_configurations: PostForMe::CreateSocialPost::PlatformConfigurations?,
50
+ platform_configurations: PostForMe::PlatformConfigurationsDto?,
51
51
  scheduled_at: Time?
52
52
  }
53
53
 
@@ -81,6 +81,8 @@ module PostForMe
81
81
  caption: top?,
82
82
  disclose_branded_content: bool?,
83
83
  disclose_your_brand: bool?,
84
+ is_ai_generated: bool?,
85
+ is_draft: bool?,
84
86
  link: String?,
85
87
  media: ::Array[String]?,
86
88
  placement: PostForMe::Models::CreateSocialPost::AccountConfiguration::Configuration::placement?,
@@ -103,6 +105,10 @@ module PostForMe
103
105
 
104
106
  attr_accessor disclose_your_brand: bool?
105
107
 
108
+ attr_accessor is_ai_generated: bool?
109
+
110
+ attr_accessor is_draft: bool?
111
+
106
112
  attr_accessor link: String?
107
113
 
108
114
  attr_accessor media: ::Array[String]?
@@ -121,6 +127,8 @@ module PostForMe
121
127
  ?caption: top?,
122
128
  ?disclose_branded_content: bool?,
123
129
  ?disclose_your_brand: bool?,
130
+ ?is_ai_generated: bool?,
131
+ ?is_draft: bool?,
124
132
  ?link: String?,
125
133
  ?media: ::Array[String]?,
126
134
  ?placement: PostForMe::Models::CreateSocialPost::AccountConfiguration::Configuration::placement?,
@@ -136,6 +144,8 @@ module PostForMe
136
144
  caption: top?,
137
145
  disclose_branded_content: bool?,
138
146
  disclose_your_brand: bool?,
147
+ is_ai_generated: bool?,
148
+ is_draft: bool?,
139
149
  link: String?,
140
150
  media: ::Array[String]?,
141
151
  placement: PostForMe::Models::CreateSocialPost::AccountConfiguration::Configuration::placement?,
@@ -179,280 +189,6 @@ module PostForMe
179
189
  thumbnail_url: top?
180
190
  }
181
191
  end
182
-
183
- type platform_configurations =
184
- {
185
- bluesky: PostForMe::CreateSocialPost::PlatformConfigurations::Bluesky?,
186
- facebook: PostForMe::CreateSocialPost::PlatformConfigurations::Facebook?,
187
- instagram: PostForMe::CreateSocialPost::PlatformConfigurations::Instagram?,
188
- linkedin: PostForMe::CreateSocialPost::PlatformConfigurations::Linkedin?,
189
- pinterest: PostForMe::CreateSocialPost::PlatformConfigurations::Pinterest?,
190
- threads: PostForMe::CreateSocialPost::PlatformConfigurations::Threads?,
191
- tiktok: PostForMe::TiktokConfiguration?,
192
- tiktok_business: PostForMe::TiktokConfiguration?,
193
- x: PostForMe::CreateSocialPost::PlatformConfigurations::X?,
194
- youtube: PostForMe::CreateSocialPost::PlatformConfigurations::Youtube?
195
- }
196
-
197
- class PlatformConfigurations < PostForMe::Internal::Type::BaseModel
198
- attr_accessor bluesky: PostForMe::CreateSocialPost::PlatformConfigurations::Bluesky?
199
-
200
- attr_accessor facebook: PostForMe::CreateSocialPost::PlatformConfigurations::Facebook?
201
-
202
- attr_accessor instagram: PostForMe::CreateSocialPost::PlatformConfigurations::Instagram?
203
-
204
- attr_accessor linkedin: PostForMe::CreateSocialPost::PlatformConfigurations::Linkedin?
205
-
206
- attr_accessor pinterest: PostForMe::CreateSocialPost::PlatformConfigurations::Pinterest?
207
-
208
- attr_accessor threads: PostForMe::CreateSocialPost::PlatformConfigurations::Threads?
209
-
210
- attr_accessor tiktok: PostForMe::TiktokConfiguration?
211
-
212
- attr_accessor tiktok_business: PostForMe::TiktokConfiguration?
213
-
214
- attr_accessor x: PostForMe::CreateSocialPost::PlatformConfigurations::X?
215
-
216
- attr_accessor youtube: PostForMe::CreateSocialPost::PlatformConfigurations::Youtube?
217
-
218
- def initialize: (
219
- ?bluesky: PostForMe::CreateSocialPost::PlatformConfigurations::Bluesky?,
220
- ?facebook: PostForMe::CreateSocialPost::PlatformConfigurations::Facebook?,
221
- ?instagram: PostForMe::CreateSocialPost::PlatformConfigurations::Instagram?,
222
- ?linkedin: PostForMe::CreateSocialPost::PlatformConfigurations::Linkedin?,
223
- ?pinterest: PostForMe::CreateSocialPost::PlatformConfigurations::Pinterest?,
224
- ?threads: PostForMe::CreateSocialPost::PlatformConfigurations::Threads?,
225
- ?tiktok: PostForMe::TiktokConfiguration?,
226
- ?tiktok_business: PostForMe::TiktokConfiguration?,
227
- ?x: PostForMe::CreateSocialPost::PlatformConfigurations::X?,
228
- ?youtube: PostForMe::CreateSocialPost::PlatformConfigurations::Youtube?
229
- ) -> void
230
-
231
- def to_hash: -> {
232
- bluesky: PostForMe::CreateSocialPost::PlatformConfigurations::Bluesky?,
233
- facebook: PostForMe::CreateSocialPost::PlatformConfigurations::Facebook?,
234
- instagram: PostForMe::CreateSocialPost::PlatformConfigurations::Instagram?,
235
- linkedin: PostForMe::CreateSocialPost::PlatformConfigurations::Linkedin?,
236
- pinterest: PostForMe::CreateSocialPost::PlatformConfigurations::Pinterest?,
237
- threads: PostForMe::CreateSocialPost::PlatformConfigurations::Threads?,
238
- tiktok: PostForMe::TiktokConfiguration?,
239
- tiktok_business: PostForMe::TiktokConfiguration?,
240
- x: PostForMe::CreateSocialPost::PlatformConfigurations::X?,
241
- youtube: PostForMe::CreateSocialPost::PlatformConfigurations::Youtube?
242
- }
243
-
244
- type bluesky = { caption: top?, media: ::Array[String]? }
245
-
246
- class Bluesky < PostForMe::Internal::Type::BaseModel
247
- attr_accessor caption: top?
248
-
249
- attr_accessor media: ::Array[String]?
250
-
251
- def initialize: (?caption: top?, ?media: ::Array[String]?) -> void
252
-
253
- def to_hash: -> { caption: top?, media: ::Array[String]? }
254
- end
255
-
256
- type facebook =
257
- {
258
- caption: top?,
259
- media: ::Array[String]?,
260
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Facebook::placement?
261
- }
262
-
263
- class Facebook < PostForMe::Internal::Type::BaseModel
264
- attr_accessor caption: top?
265
-
266
- attr_accessor media: ::Array[String]?
267
-
268
- attr_accessor placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Facebook::placement?
269
-
270
- def initialize: (
271
- ?caption: top?,
272
- ?media: ::Array[String]?,
273
- ?placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Facebook::placement?
274
- ) -> void
275
-
276
- def to_hash: -> {
277
- caption: top?,
278
- media: ::Array[String]?,
279
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Facebook::placement?
280
- }
281
-
282
- type placement = :reels | :stories | :timeline
283
-
284
- module Placement
285
- extend PostForMe::Internal::Type::Enum
286
-
287
- REELS: :reels
288
- STORIES: :stories
289
- TIMELINE: :timeline
290
-
291
- def self?.values: -> ::Array[PostForMe::Models::CreateSocialPost::PlatformConfigurations::Facebook::placement]
292
- end
293
- end
294
-
295
- type instagram =
296
- {
297
- caption: top?,
298
- collaborators: ::Array[String]?,
299
- media: ::Array[String]?,
300
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Instagram::placement?
301
- }
302
-
303
- class Instagram < PostForMe::Internal::Type::BaseModel
304
- attr_accessor caption: top?
305
-
306
- attr_accessor collaborators: ::Array[String]?
307
-
308
- attr_accessor media: ::Array[String]?
309
-
310
- attr_accessor placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Instagram::placement?
311
-
312
- def initialize: (
313
- ?caption: top?,
314
- ?collaborators: ::Array[String]?,
315
- ?media: ::Array[String]?,
316
- ?placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Instagram::placement?
317
- ) -> void
318
-
319
- def to_hash: -> {
320
- caption: top?,
321
- collaborators: ::Array[String]?,
322
- media: ::Array[String]?,
323
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Instagram::placement?
324
- }
325
-
326
- type placement = :reels | :stories | :timeline
327
-
328
- module Placement
329
- extend PostForMe::Internal::Type::Enum
330
-
331
- REELS: :reels
332
- STORIES: :stories
333
- TIMELINE: :timeline
334
-
335
- def self?.values: -> ::Array[PostForMe::Models::CreateSocialPost::PlatformConfigurations::Instagram::placement]
336
- end
337
- end
338
-
339
- type linkedin = { caption: top?, media: ::Array[String]? }
340
-
341
- class Linkedin < PostForMe::Internal::Type::BaseModel
342
- attr_accessor caption: top?
343
-
344
- attr_accessor media: ::Array[String]?
345
-
346
- def initialize: (?caption: top?, ?media: ::Array[String]?) -> void
347
-
348
- def to_hash: -> { caption: top?, media: ::Array[String]? }
349
- end
350
-
351
- type pinterest =
352
- {
353
- board_ids: ::Array[String]?,
354
- caption: top?,
355
- link: String?,
356
- media: ::Array[String]?
357
- }
358
-
359
- class Pinterest < PostForMe::Internal::Type::BaseModel
360
- attr_accessor board_ids: ::Array[String]?
361
-
362
- attr_accessor caption: top?
363
-
364
- attr_accessor link: String?
365
-
366
- attr_accessor media: ::Array[String]?
367
-
368
- def initialize: (
369
- ?board_ids: ::Array[String]?,
370
- ?caption: top?,
371
- ?link: String?,
372
- ?media: ::Array[String]?
373
- ) -> void
374
-
375
- def to_hash: -> {
376
- board_ids: ::Array[String]?,
377
- caption: top?,
378
- link: String?,
379
- media: ::Array[String]?
380
- }
381
- end
382
-
383
- type threads =
384
- {
385
- caption: top?,
386
- media: ::Array[String]?,
387
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Threads::placement?
388
- }
389
-
390
- class Threads < PostForMe::Internal::Type::BaseModel
391
- attr_accessor caption: top?
392
-
393
- attr_accessor media: ::Array[String]?
394
-
395
- attr_accessor placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Threads::placement?
396
-
397
- def initialize: (
398
- ?caption: top?,
399
- ?media: ::Array[String]?,
400
- ?placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Threads::placement?
401
- ) -> void
402
-
403
- def to_hash: -> {
404
- caption: top?,
405
- media: ::Array[String]?,
406
- placement: PostForMe::Models::CreateSocialPost::PlatformConfigurations::Threads::placement?
407
- }
408
-
409
- type placement = :reels | :timeline
410
-
411
- module Placement
412
- extend PostForMe::Internal::Type::Enum
413
-
414
- REELS: :reels
415
- TIMELINE: :timeline
416
-
417
- def self?.values: -> ::Array[PostForMe::Models::CreateSocialPost::PlatformConfigurations::Threads::placement]
418
- end
419
- end
420
-
421
- type x = { caption: top?, media: ::Array[String]? }
422
-
423
- class X < PostForMe::Internal::Type::BaseModel
424
- attr_accessor caption: top?
425
-
426
- attr_accessor media: ::Array[String]?
427
-
428
- def initialize: (?caption: top?, ?media: ::Array[String]?) -> void
429
-
430
- def to_hash: -> { caption: top?, media: ::Array[String]? }
431
- end
432
-
433
- type youtube =
434
- { caption: top?, media: ::Array[String]?, title: String? }
435
-
436
- class Youtube < PostForMe::Internal::Type::BaseModel
437
- attr_accessor caption: top?
438
-
439
- attr_accessor media: ::Array[String]?
440
-
441
- attr_accessor title: String?
442
-
443
- def initialize: (
444
- ?caption: top?,
445
- ?media: ::Array[String]?,
446
- ?title: String?
447
- ) -> void
448
-
449
- def to_hash: -> {
450
- caption: top?,
451
- media: ::Array[String]?,
452
- title: String?
453
- }
454
- end
455
- end
456
192
  end
457
193
  end
458
194
  end
@@ -0,0 +1,42 @@
1
+ module PostForMe
2
+ module Models
3
+ type facebook_configuration_dto =
4
+ {
5
+ caption: top?,
6
+ media: ::Array[String]?,
7
+ placement: PostForMe::Models::FacebookConfigurationDto::placement?
8
+ }
9
+
10
+ class FacebookConfigurationDto < PostForMe::Internal::Type::BaseModel
11
+ attr_accessor caption: top?
12
+
13
+ attr_accessor media: ::Array[String]?
14
+
15
+ attr_accessor placement: PostForMe::Models::FacebookConfigurationDto::placement?
16
+
17
+ def initialize: (
18
+ ?caption: top?,
19
+ ?media: ::Array[String]?,
20
+ ?placement: PostForMe::Models::FacebookConfigurationDto::placement?
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ caption: top?,
25
+ media: ::Array[String]?,
26
+ placement: PostForMe::Models::FacebookConfigurationDto::placement?
27
+ }
28
+
29
+ type placement = :reels | :stories | :timeline
30
+
31
+ module Placement
32
+ extend PostForMe::Internal::Type::Enum
33
+
34
+ REELS: :reels
35
+ STORIES: :stories
36
+ TIMELINE: :timeline
37
+
38
+ def self?.values: -> ::Array[PostForMe::Models::FacebookConfigurationDto::placement]
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,47 @@
1
+ module PostForMe
2
+ module Models
3
+ type instagram_configuration_dto =
4
+ {
5
+ caption: top?,
6
+ collaborators: ::Array[String]?,
7
+ media: ::Array[String]?,
8
+ placement: PostForMe::Models::InstagramConfigurationDto::placement?
9
+ }
10
+
11
+ class InstagramConfigurationDto < PostForMe::Internal::Type::BaseModel
12
+ attr_accessor caption: top?
13
+
14
+ attr_accessor collaborators: ::Array[String]?
15
+
16
+ attr_accessor media: ::Array[String]?
17
+
18
+ attr_accessor placement: PostForMe::Models::InstagramConfigurationDto::placement?
19
+
20
+ def initialize: (
21
+ ?caption: top?,
22
+ ?collaborators: ::Array[String]?,
23
+ ?media: ::Array[String]?,
24
+ ?placement: PostForMe::Models::InstagramConfigurationDto::placement?
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ caption: top?,
29
+ collaborators: ::Array[String]?,
30
+ media: ::Array[String]?,
31
+ placement: PostForMe::Models::InstagramConfigurationDto::placement?
32
+ }
33
+
34
+ type placement = :reels | :stories | :timeline
35
+
36
+ module Placement
37
+ extend PostForMe::Internal::Type::Enum
38
+
39
+ REELS: :reels
40
+ STORIES: :stories
41
+ TIMELINE: :timeline
42
+
43
+ def self?.values: -> ::Array[PostForMe::Models::InstagramConfigurationDto::placement]
44
+ end
45
+ end
46
+ end
47
+ end