whop_sdk 0.0.4 → 0.0.5

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 (185) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +4 -0
  5. data/lib/whop_sdk/internal/transport/base_client.rb +7 -1
  6. data/lib/whop_sdk/internal/transport/pooled_net_requester.rb +6 -2
  7. data/lib/whop_sdk/models/access_level.rb +1 -1
  8. data/lib/whop_sdk/models/access_pass_type.rb +2 -1
  9. data/lib/whop_sdk/models/access_token_create_params.rb +67 -0
  10. data/lib/whop_sdk/models/access_token_create_response.rb +27 -0
  11. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +4 -4
  12. data/lib/whop_sdk/models/course.rb +18 -1
  13. data/lib/whop_sdk/models/course_create_params.rb +20 -1
  14. data/lib/whop_sdk/models/course_lesson_create_params.rb +77 -1
  15. data/lib/whop_sdk/models/course_lesson_list_response.rb +43 -1
  16. data/lib/whop_sdk/models/course_lesson_update_params.rb +77 -1
  17. data/lib/whop_sdk/models/course_list_response.rb +18 -1
  18. data/lib/whop_sdk/models/course_update_params.rb +19 -1
  19. data/lib/whop_sdk/models/course_visibilities.rb +17 -0
  20. data/lib/whop_sdk/models/embed_type.rb +16 -0
  21. data/lib/whop_sdk/models/entry.rb +3 -3
  22. data/lib/whop_sdk/models/entry_list_response.rb +3 -3
  23. data/lib/whop_sdk/models/experience.rb +5 -6
  24. data/lib/whop_sdk/models/forum_post.rb +2 -2
  25. data/lib/whop_sdk/models/forum_post_list_response.rb +2 -2
  26. data/lib/whop_sdk/models/global_affiliate_status.rb +1 -1
  27. data/lib/whop_sdk/models/invoice_create_params.rb +2 -2
  28. data/lib/whop_sdk/models/invoice_list_params.rb +27 -40
  29. data/lib/whop_sdk/models/lesson.rb +43 -1
  30. data/lib/whop_sdk/models/member_list_params.rb +11 -11
  31. data/lib/whop_sdk/models/member_list_response.rb +3 -3
  32. data/lib/whop_sdk/models/member_retrieve_response.rb +3 -3
  33. data/lib/whop_sdk/models/membership_list_params.rb +9 -9
  34. data/lib/whop_sdk/models/message.rb +2 -2
  35. data/lib/whop_sdk/models/message_list_response.rb +2 -2
  36. data/lib/whop_sdk/models/payment.rb +3 -3
  37. data/lib/whop_sdk/models/payment_list_response.rb +3 -3
  38. data/lib/whop_sdk/models/plan.rb +6 -4
  39. data/lib/whop_sdk/models/plan_create_params.rb +2 -2
  40. data/lib/whop_sdk/models/plan_list_response.rb +6 -4
  41. data/lib/whop_sdk/models/plan_type.rb +1 -1
  42. data/lib/whop_sdk/models/product.rb +1 -1
  43. data/lib/whop_sdk/models/product_create_params.rb +6 -6
  44. data/lib/whop_sdk/models/product_list_item.rb +1 -1
  45. data/lib/whop_sdk/models/product_update_params.rb +4 -4
  46. data/lib/whop_sdk/models/promo_code.rb +3 -3
  47. data/lib/whop_sdk/models/promo_code_list_response.rb +3 -3
  48. data/lib/whop_sdk/models.rb +6 -0
  49. data/lib/whop_sdk/resources/access_tokens.rb +46 -0
  50. data/lib/whop_sdk/resources/app_builds.rb +4 -2
  51. data/lib/whop_sdk/resources/apps.rb +3 -2
  52. data/lib/whop_sdk/resources/authorized_users.rb +2 -1
  53. data/lib/whop_sdk/resources/chat_channels.rb +9 -2
  54. data/lib/whop_sdk/resources/checkout_configurations.rb +2 -1
  55. data/lib/whop_sdk/resources/companies.rb +2 -1
  56. data/lib/whop_sdk/resources/course_chapters.rb +5 -3
  57. data/lib/whop_sdk/resources/course_lesson_interactions.rb +2 -1
  58. data/lib/whop_sdk/resources/course_lessons.rb +19 -5
  59. data/lib/whop_sdk/resources/course_students.rb +2 -1
  60. data/lib/whop_sdk/resources/courses.rb +15 -5
  61. data/lib/whop_sdk/resources/entries.rb +6 -3
  62. data/lib/whop_sdk/resources/experiences.rb +8 -6
  63. data/lib/whop_sdk/resources/forum_posts.rb +3 -2
  64. data/lib/whop_sdk/resources/forums.rb +3 -2
  65. data/lib/whop_sdk/resources/invoices.rb +11 -5
  66. data/lib/whop_sdk/resources/ledger_accounts.rb +6 -2
  67. data/lib/whop_sdk/resources/members.rb +6 -5
  68. data/lib/whop_sdk/resources/memberships.rb +10 -8
  69. data/lib/whop_sdk/resources/messages.rb +3 -2
  70. data/lib/whop_sdk/resources/payments.rb +7 -4
  71. data/lib/whop_sdk/resources/plans.rb +6 -4
  72. data/lib/whop_sdk/resources/products.rb +9 -7
  73. data/lib/whop_sdk/resources/promo_codes.rb +4 -2
  74. data/lib/whop_sdk/resources/reactions.rb +2 -1
  75. data/lib/whop_sdk/resources/reviews.rb +2 -1
  76. data/lib/whop_sdk/resources/shipments.rb +2 -1
  77. data/lib/whop_sdk/resources/support_channels.rb +2 -1
  78. data/lib/whop_sdk/resources/transfers.rb +2 -1
  79. data/lib/whop_sdk/resources/users.rb +9 -3
  80. data/lib/whop_sdk/version.rb +1 -1
  81. data/lib/whop_sdk.rb +6 -0
  82. data/manifest.yaml +1 -0
  83. data/rbi/whop_sdk/client.rbi +3 -0
  84. data/rbi/whop_sdk/internal/transport/base_client.rbi +5 -0
  85. data/rbi/whop_sdk/internal/transport/pooled_net_requester.rbi +6 -2
  86. data/rbi/whop_sdk/internal/type/base_model.rbi +8 -4
  87. data/rbi/whop_sdk/models/access_level.rbi +1 -1
  88. data/rbi/whop_sdk/models/access_pass_type.rbi +2 -1
  89. data/rbi/whop_sdk/models/access_token_create_params.rbi +126 -0
  90. data/rbi/whop_sdk/models/access_token_create_response.rbi +37 -0
  91. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +4 -4
  92. data/rbi/whop_sdk/models/course.rbi +21 -3
  93. data/rbi/whop_sdk/models/course_create_params.rbi +22 -0
  94. data/rbi/whop_sdk/models/course_lesson_create_params.rbi +126 -0
  95. data/rbi/whop_sdk/models/course_lesson_list_response.rbi +68 -0
  96. data/rbi/whop_sdk/models/course_lesson_update_params.rbi +126 -0
  97. data/rbi/whop_sdk/models/course_list_response.rbi +21 -3
  98. data/rbi/whop_sdk/models/course_update_params.rbi +20 -0
  99. data/rbi/whop_sdk/models/course_visibilities.rbi +23 -0
  100. data/rbi/whop_sdk/models/embed_type.rbi +20 -0
  101. data/rbi/whop_sdk/models/entry.rbi +3 -3
  102. data/rbi/whop_sdk/models/entry_list_response.rbi +3 -3
  103. data/rbi/whop_sdk/models/experience.rbi +7 -9
  104. data/rbi/whop_sdk/models/forum_post.rbi +2 -2
  105. data/rbi/whop_sdk/models/forum_post_list_response.rbi +2 -2
  106. data/rbi/whop_sdk/models/global_affiliate_status.rbi +1 -1
  107. data/rbi/whop_sdk/models/invoice_create_params.rbi +2 -2
  108. data/rbi/whop_sdk/models/invoice_list_params.rbi +26 -71
  109. data/rbi/whop_sdk/models/lesson.rbi +54 -0
  110. data/rbi/whop_sdk/models/member_list_params.rbi +10 -10
  111. data/rbi/whop_sdk/models/member_list_response.rbi +6 -6
  112. data/rbi/whop_sdk/models/member_retrieve_response.rbi +6 -6
  113. data/rbi/whop_sdk/models/membership_list_params.rbi +8 -8
  114. data/rbi/whop_sdk/models/message.rbi +2 -2
  115. data/rbi/whop_sdk/models/message_list_response.rbi +2 -2
  116. data/rbi/whop_sdk/models/payment.rbi +3 -3
  117. data/rbi/whop_sdk/models/payment_list_response.rbi +3 -3
  118. data/rbi/whop_sdk/models/plan.rbi +6 -4
  119. data/rbi/whop_sdk/models/plan_create_params.rbi +2 -2
  120. data/rbi/whop_sdk/models/plan_list_response.rbi +6 -4
  121. data/rbi/whop_sdk/models/plan_type.rbi +1 -1
  122. data/rbi/whop_sdk/models/product.rbi +1 -1
  123. data/rbi/whop_sdk/models/product_create_params.rbi +6 -6
  124. data/rbi/whop_sdk/models/product_list_item.rbi +1 -1
  125. data/rbi/whop_sdk/models/product_update_params.rbi +4 -4
  126. data/rbi/whop_sdk/models/promo_code.rbi +3 -3
  127. data/rbi/whop_sdk/models/promo_code_list_response.rbi +3 -3
  128. data/rbi/whop_sdk/models.rbi +6 -0
  129. data/rbi/whop_sdk/resources/access_tokens.rbi +41 -0
  130. data/rbi/whop_sdk/resources/app_builds.rbi +10 -2
  131. data/rbi/whop_sdk/resources/apps.rbi +6 -1
  132. data/rbi/whop_sdk/resources/authorized_users.rbi +5 -1
  133. data/rbi/whop_sdk/resources/chat_channels.rbi +8 -1
  134. data/rbi/whop_sdk/resources/checkout_configurations.rbi +5 -1
  135. data/rbi/whop_sdk/resources/companies.rbi +5 -1
  136. data/rbi/whop_sdk/resources/course_chapters.rbi +11 -2
  137. data/rbi/whop_sdk/resources/course_lesson_interactions.rbi +5 -1
  138. data/rbi/whop_sdk/resources/course_lessons.rbi +41 -2
  139. data/rbi/whop_sdk/resources/course_students.rbi +5 -1
  140. data/rbi/whop_sdk/resources/courses.rbi +28 -2
  141. data/rbi/whop_sdk/resources/entries.rbi +15 -3
  142. data/rbi/whop_sdk/resources/experiences.rbi +14 -2
  143. data/rbi/whop_sdk/resources/forum_posts.rbi +6 -1
  144. data/rbi/whop_sdk/resources/forums.rbi +6 -1
  145. data/rbi/whop_sdk/resources/invoices.rbi +20 -5
  146. data/rbi/whop_sdk/resources/ledger_accounts.rbi +7 -2
  147. data/rbi/whop_sdk/resources/members.rbi +9 -5
  148. data/rbi/whop_sdk/resources/memberships.rbi +16 -5
  149. data/rbi/whop_sdk/resources/messages.rbi +6 -1
  150. data/rbi/whop_sdk/resources/payments.rbi +16 -3
  151. data/rbi/whop_sdk/resources/plans.rbi +12 -3
  152. data/rbi/whop_sdk/resources/products.rbi +15 -6
  153. data/rbi/whop_sdk/resources/promo_codes.rbi +10 -2
  154. data/rbi/whop_sdk/resources/reactions.rbi +5 -1
  155. data/rbi/whop_sdk/resources/reviews.rbi +5 -1
  156. data/rbi/whop_sdk/resources/shipments.rbi +5 -1
  157. data/rbi/whop_sdk/resources/support_channels.rbi +5 -1
  158. data/rbi/whop_sdk/resources/transfers.rbi +5 -1
  159. data/rbi/whop_sdk/resources/users.rbi +13 -2
  160. data/sig/whop_sdk/client.rbs +2 -0
  161. data/sig/whop_sdk/internal/transport/base_client.rbs +2 -0
  162. data/sig/whop_sdk/internal/transport/pooled_net_requester.rbs +4 -1
  163. data/sig/whop_sdk/models/access_token_create_params.rbs +56 -0
  164. data/sig/whop_sdk/models/access_token_create_response.rbs +15 -0
  165. data/sig/whop_sdk/models/course.rbs +13 -3
  166. data/sig/whop_sdk/models/course_create_params.rbs +11 -1
  167. data/sig/whop_sdk/models/course_lesson_create_params.rbs +46 -0
  168. data/sig/whop_sdk/models/course_lesson_list_response.rbs +25 -0
  169. data/sig/whop_sdk/models/course_lesson_update_params.rbs +46 -0
  170. data/sig/whop_sdk/models/course_list_response.rbs +13 -3
  171. data/sig/whop_sdk/models/course_update_params.rbs +11 -1
  172. data/sig/whop_sdk/models/course_visibilities.rbs +14 -0
  173. data/sig/whop_sdk/models/embed_type.rbs +14 -0
  174. data/sig/whop_sdk/models/invoice_list_params.rbs +16 -33
  175. data/sig/whop_sdk/models/lesson.rbs +25 -0
  176. data/sig/whop_sdk/models/member_list_params.rbs +5 -5
  177. data/sig/whop_sdk/models/membership_list_params.rbs +5 -5
  178. data/sig/whop_sdk/models.rbs +6 -0
  179. data/sig/whop_sdk/resources/access_tokens.rbs +15 -0
  180. data/sig/whop_sdk/resources/course_lessons.rbs +6 -0
  181. data/sig/whop_sdk/resources/courses.rbs +4 -0
  182. data/sig/whop_sdk/resources/invoices.rbs +3 -1
  183. data/sig/whop_sdk/resources/members.rbs +1 -1
  184. data/sig/whop_sdk/resources/memberships.rbs +1 -1
  185. metadata +17 -2
@@ -40,7 +40,11 @@ module WhopSDK
40
40
  request_options: WhopSDK::RequestOptions::OrHash
41
41
  ).returns(WhopSDK::Shipment)
42
42
  end
43
- def retrieve(id, request_options: {})
43
+ def retrieve(
44
+ # The ID of the shipment
45
+ id,
46
+ request_options: {}
47
+ )
44
48
  end
45
49
 
46
50
  # Lists shipments for a payment
@@ -36,7 +36,11 @@ module WhopSDK
36
36
  request_options: WhopSDK::RequestOptions::OrHash
37
37
  ).returns(WhopSDK::SupportChannel)
38
38
  end
39
- def retrieve(id, request_options: {})
39
+ def retrieve(
40
+ # The ID of the support channel to fetch
41
+ id,
42
+ request_options: {}
43
+ )
40
44
  end
41
45
 
42
46
  # Lists chat channels inside a company
@@ -52,7 +52,11 @@ module WhopSDK
52
52
  request_options: WhopSDK::RequestOptions::OrHash
53
53
  ).returns(WhopSDK::Transfer)
54
54
  end
55
- def retrieve(id, request_options: {})
55
+ def retrieve(
56
+ # The ID of the transfer
57
+ id,
58
+ request_options: {}
59
+ )
56
60
  end
57
61
 
58
62
  # Lists transfers
@@ -10,7 +10,11 @@ module WhopSDK
10
10
  request_options: WhopSDK::RequestOptions::OrHash
11
11
  ).returns(WhopSDK::Models::UserRetrieveResponse)
12
12
  end
13
- def retrieve(id, request_options: {})
13
+ def retrieve(
14
+ # The ID (user_xxx) or username of the user
15
+ id,
16
+ request_options: {}
17
+ )
14
18
  end
15
19
 
16
20
  # Check if a user has access (and their access level) to a resource
@@ -21,7 +25,14 @@ module WhopSDK
21
25
  request_options: WhopSDK::RequestOptions::OrHash
22
26
  ).returns(WhopSDK::Models::UserCheckAccessResponse)
23
27
  end
24
- def check_access(resource_id, id:, request_options: {})
28
+ def check_access(
29
+ # The ID of the resource. Can be a company (biz_xxx), product (prod_xxx), or
30
+ # experience (exp_xxx)
31
+ resource_id,
32
+ # The ID (user_xxx) or username of the user
33
+ id:,
34
+ request_options: {}
35
+ )
25
36
  end
26
37
 
27
38
  # @api private
@@ -74,6 +74,8 @@ module WhopSDK
74
74
 
75
75
  attr_reader course_students: WhopSDK::Resources::CourseStudents
76
76
 
77
+ attr_reader access_tokens: WhopSDK::Resources::AccessTokens
78
+
77
79
  private def auth_headers: -> ::Hash[String, String]
78
80
 
79
81
  def initialize: (
@@ -87,6 +87,8 @@ module WhopSDK
87
87
 
88
88
  private def auth_headers: -> ::Hash[String, String]
89
89
 
90
+ private def user_agent: -> String
91
+
90
92
  private def generate_idempotency_key: -> String
91
93
 
92
94
  private def build_request: (
@@ -17,7 +17,10 @@ module WhopSDK
17
17
 
18
18
  DEFAULT_MAX_CONNECTIONS: Integer
19
19
 
20
- def self.connect: (URI::Generic url) -> top
20
+ def self.connect: (
21
+ cert_store: OpenSSL::X509::Store,
22
+ url: URI::Generic
23
+ ) -> top
21
24
 
22
25
  def self.calibrate_socket_timeout: (top conn, Float deadline) -> void
23
26
 
@@ -0,0 +1,56 @@
1
+ module WhopSDK
2
+ module Models
3
+ type access_token_create_params =
4
+ {
5
+ scoped_actions: ::Array[String],
6
+ target_resource_id: String,
7
+ target_resource_type: WhopSDK::Models::AccessTokenCreateParams::target_resource_type,
8
+ expires_at: Time?
9
+ }
10
+ & WhopSDK::Internal::Type::request_parameters
11
+
12
+ class AccessTokenCreateParams < WhopSDK::Internal::Type::BaseModel
13
+ extend WhopSDK::Internal::Type::RequestParameters::Converter
14
+ include WhopSDK::Internal::Type::RequestParameters
15
+
16
+ attr_accessor scoped_actions: ::Array[String]
17
+
18
+ attr_accessor target_resource_id: String
19
+
20
+ attr_accessor target_resource_type: WhopSDK::Models::AccessTokenCreateParams::target_resource_type
21
+
22
+ attr_accessor expires_at: Time?
23
+
24
+ def initialize: (
25
+ scoped_actions: ::Array[String],
26
+ target_resource_id: String,
27
+ target_resource_type: WhopSDK::Models::AccessTokenCreateParams::target_resource_type,
28
+ ?expires_at: Time?,
29
+ ?request_options: WhopSDK::request_opts
30
+ ) -> void
31
+
32
+ def to_hash: -> {
33
+ scoped_actions: ::Array[String],
34
+ target_resource_id: String,
35
+ target_resource_type: WhopSDK::Models::AccessTokenCreateParams::target_resource_type,
36
+ expires_at: Time?,
37
+ request_options: WhopSDK::RequestOptions
38
+ }
39
+
40
+ type target_resource_type =
41
+ :company | :product | :experience | :app | :user
42
+
43
+ module TargetResourceType
44
+ extend WhopSDK::Internal::Type::Enum
45
+
46
+ COMPANY: :company
47
+ PRODUCT: :product
48
+ EXPERIENCE: :experience
49
+ APP: :app
50
+ USER: :user
51
+
52
+ def self?.values: -> ::Array[WhopSDK::Models::AccessTokenCreateParams::target_resource_type]
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,15 @@
1
+ module WhopSDK
2
+ module Models
3
+ type access_token_create_response = { token: String, expires_at: Time }
4
+
5
+ class AccessTokenCreateResponse < WhopSDK::Internal::Type::BaseModel
6
+ attr_accessor token: String
7
+
8
+ attr_accessor expires_at: Time
9
+
10
+ def initialize: (token: String, expires_at: Time) -> void
11
+
12
+ def to_hash: -> { token: String, expires_at: Time }
13
+ end
14
+ end
15
+ end
@@ -8,11 +8,13 @@ module WhopSDK
8
8
  created_at: Time,
9
9
  description: String?,
10
10
  language: WhopSDK::Models::languages,
11
+ order: String,
11
12
  require_completing_lessons_in_order: bool,
12
13
  tagline: String?,
13
14
  thumbnail: WhopSDK::Course::Thumbnail?,
14
15
  title: String?,
15
- updated_at: Time
16
+ updated_at: Time,
17
+ visibility: WhopSDK::Models::course_visibilities
16
18
  }
17
19
 
18
20
  class Course < WhopSDK::Internal::Type::BaseModel
@@ -28,6 +30,8 @@ module WhopSDK
28
30
 
29
31
  attr_accessor language: WhopSDK::Models::languages
30
32
 
33
+ attr_accessor order: String
34
+
31
35
  attr_accessor require_completing_lessons_in_order: bool
32
36
 
33
37
  attr_accessor tagline: String?
@@ -38,6 +42,8 @@ module WhopSDK
38
42
 
39
43
  attr_accessor updated_at: Time
40
44
 
45
+ attr_accessor visibility: WhopSDK::Models::course_visibilities
46
+
41
47
  def initialize: (
42
48
  id: String,
43
49
  certificate_after_completion_enabled: bool?,
@@ -45,11 +51,13 @@ module WhopSDK
45
51
  created_at: Time,
46
52
  description: String?,
47
53
  language: WhopSDK::Models::languages,
54
+ order: String,
48
55
  require_completing_lessons_in_order: bool,
49
56
  tagline: String?,
50
57
  thumbnail: WhopSDK::Course::Thumbnail?,
51
58
  title: String?,
52
- updated_at: Time
59
+ updated_at: Time,
60
+ visibility: WhopSDK::Models::course_visibilities
53
61
  ) -> void
54
62
 
55
63
  def to_hash: -> {
@@ -59,11 +67,13 @@ module WhopSDK
59
67
  created_at: Time,
60
68
  description: String?,
61
69
  language: WhopSDK::Models::languages,
70
+ order: String,
62
71
  require_completing_lessons_in_order: bool,
63
72
  tagline: String?,
64
73
  thumbnail: WhopSDK::Course::Thumbnail?,
65
74
  title: String?,
66
- updated_at: Time
75
+ updated_at: Time,
76
+ visibility: WhopSDK::Models::course_visibilities
67
77
  }
68
78
 
69
79
  type chapter =
@@ -6,9 +6,11 @@ module WhopSDK
6
6
  title: String,
7
7
  certificate_after_completion_enabled: bool?,
8
8
  cover_image: String?,
9
+ order: String?,
9
10
  require_completing_lessons_in_order: bool?,
10
11
  tagline: String?,
11
- thumbnail: WhopSDK::Models::CourseCreateParams::thumbnail?
12
+ thumbnail: WhopSDK::Models::CourseCreateParams::thumbnail?,
13
+ visibility: WhopSDK::Models::course_visibilities?
12
14
  }
13
15
  & WhopSDK::Internal::Type::request_parameters
14
16
 
@@ -24,20 +26,26 @@ module WhopSDK
24
26
 
25
27
  attr_accessor cover_image: String?
26
28
 
29
+ attr_accessor order: String?
30
+
27
31
  attr_accessor require_completing_lessons_in_order: bool?
28
32
 
29
33
  attr_accessor tagline: String?
30
34
 
31
35
  attr_accessor thumbnail: WhopSDK::Models::CourseCreateParams::thumbnail?
32
36
 
37
+ attr_accessor visibility: WhopSDK::Models::course_visibilities?
38
+
33
39
  def initialize: (
34
40
  experience_id: String,
35
41
  title: String,
36
42
  ?certificate_after_completion_enabled: bool?,
37
43
  ?cover_image: String?,
44
+ ?order: String?,
38
45
  ?require_completing_lessons_in_order: bool?,
39
46
  ?tagline: String?,
40
47
  ?thumbnail: WhopSDK::Models::CourseCreateParams::thumbnail?,
48
+ ?visibility: WhopSDK::Models::course_visibilities?,
41
49
  ?request_options: WhopSDK::request_opts
42
50
  ) -> void
43
51
 
@@ -46,9 +54,11 @@ module WhopSDK
46
54
  title: String,
47
55
  certificate_after_completion_enabled: bool?,
48
56
  cover_image: String?,
57
+ order: String?,
49
58
  require_completing_lessons_in_order: bool?,
50
59
  tagline: String?,
51
60
  thumbnail: WhopSDK::Models::CourseCreateParams::thumbnail?,
61
+ visibility: WhopSDK::Models::course_visibilities?,
52
62
  request_options: WhopSDK::RequestOptions
53
63
  }
54
64
 
@@ -6,6 +6,9 @@ module WhopSDK
6
6
  lesson_type: WhopSDK::Models::lesson_types,
7
7
  content: String?,
8
8
  days_from_course_start_until_unlock: Integer?,
9
+ embed_id: String?,
10
+ embed_type: WhopSDK::Models::embed_type?,
11
+ thumbnail: WhopSDK::Models::CourseLessonCreateParams::thumbnail?,
9
12
  title: String?
10
13
  }
11
14
  & WhopSDK::Internal::Type::request_parameters
@@ -22,6 +25,12 @@ module WhopSDK
22
25
 
23
26
  attr_accessor days_from_course_start_until_unlock: Integer?
24
27
 
28
+ attr_accessor embed_id: String?
29
+
30
+ attr_accessor embed_type: WhopSDK::Models::embed_type?
31
+
32
+ attr_accessor thumbnail: WhopSDK::Models::CourseLessonCreateParams::thumbnail?
33
+
25
34
  attr_accessor title: String?
26
35
 
27
36
  def initialize: (
@@ -29,6 +38,9 @@ module WhopSDK
29
38
  lesson_type: WhopSDK::Models::lesson_types,
30
39
  ?content: String?,
31
40
  ?days_from_course_start_until_unlock: Integer?,
41
+ ?embed_id: String?,
42
+ ?embed_type: WhopSDK::Models::embed_type?,
43
+ ?thumbnail: WhopSDK::Models::CourseLessonCreateParams::thumbnail?,
32
44
  ?title: String?,
33
45
  ?request_options: WhopSDK::request_opts
34
46
  ) -> void
@@ -38,9 +50,43 @@ module WhopSDK
38
50
  lesson_type: WhopSDK::Models::lesson_types,
39
51
  content: String?,
40
52
  days_from_course_start_until_unlock: Integer?,
53
+ embed_id: String?,
54
+ embed_type: WhopSDK::Models::embed_type?,
55
+ thumbnail: WhopSDK::Models::CourseLessonCreateParams::thumbnail?,
41
56
  title: String?,
42
57
  request_options: WhopSDK::RequestOptions
43
58
  }
59
+
60
+ type thumbnail =
61
+ WhopSDK::CourseLessonCreateParams::Thumbnail::AttachmentInputWithDirectUploadID
62
+ | WhopSDK::CourseLessonCreateParams::Thumbnail::AttachmentInputWithID
63
+
64
+ module Thumbnail
65
+ extend WhopSDK::Internal::Type::Union
66
+
67
+ type attachment_input_with_direct_upload_id =
68
+ { direct_upload_id: String }
69
+
70
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
71
+ attr_accessor direct_upload_id: String
72
+
73
+ def initialize: (direct_upload_id: String) -> void
74
+
75
+ def to_hash: -> { direct_upload_id: String }
76
+ end
77
+
78
+ type attachment_input_with_id = { id: String }
79
+
80
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
81
+ attr_accessor id: String
82
+
83
+ def initialize: (id: String) -> void
84
+
85
+ def to_hash: -> { id: String }
86
+ end
87
+
88
+ def self?.variants: -> ::Array[WhopSDK::Models::CourseLessonCreateParams::thumbnail]
89
+ end
44
90
  end
45
91
  end
46
92
  end
@@ -5,8 +5,11 @@ module WhopSDK
5
5
  id: String,
6
6
  content: String?,
7
7
  days_from_course_start_until_unlock: Integer?,
8
+ embed_id: String?,
9
+ embed_type: WhopSDK::Models::embed_type?,
8
10
  lesson_type: WhopSDK::Models::lesson_types,
9
11
  order: Integer,
12
+ thumbnail: WhopSDK::Models::CourseLessonListResponse::Thumbnail?,
10
13
  title: String,
11
14
  visibility: WhopSDK::Models::lesson_visibilities
12
15
  }
@@ -18,10 +21,16 @@ module WhopSDK
18
21
 
19
22
  attr_accessor days_from_course_start_until_unlock: Integer?
20
23
 
24
+ attr_accessor embed_id: String?
25
+
26
+ attr_accessor embed_type: WhopSDK::Models::embed_type?
27
+
21
28
  attr_accessor lesson_type: WhopSDK::Models::lesson_types
22
29
 
23
30
  attr_accessor order: Integer
24
31
 
32
+ attr_accessor thumbnail: WhopSDK::Models::CourseLessonListResponse::Thumbnail?
33
+
25
34
  attr_accessor title: String
26
35
 
27
36
  attr_accessor visibility: WhopSDK::Models::lesson_visibilities
@@ -30,8 +39,11 @@ module WhopSDK
30
39
  id: String,
31
40
  content: String?,
32
41
  days_from_course_start_until_unlock: Integer?,
42
+ embed_id: String?,
43
+ embed_type: WhopSDK::Models::embed_type?,
33
44
  lesson_type: WhopSDK::Models::lesson_types,
34
45
  order: Integer,
46
+ thumbnail: WhopSDK::Models::CourseLessonListResponse::Thumbnail?,
35
47
  title: String,
36
48
  visibility: WhopSDK::Models::lesson_visibilities
37
49
  ) -> void
@@ -40,11 +52,24 @@ module WhopSDK
40
52
  id: String,
41
53
  content: String?,
42
54
  days_from_course_start_until_unlock: Integer?,
55
+ embed_id: String?,
56
+ embed_type: WhopSDK::Models::embed_type?,
43
57
  lesson_type: WhopSDK::Models::lesson_types,
44
58
  order: Integer,
59
+ thumbnail: WhopSDK::Models::CourseLessonListResponse::Thumbnail?,
45
60
  title: String,
46
61
  visibility: WhopSDK::Models::lesson_visibilities
47
62
  }
63
+
64
+ type thumbnail = { url: String? }
65
+
66
+ class Thumbnail < WhopSDK::Internal::Type::BaseModel
67
+ attr_accessor url: String?
68
+
69
+ def initialize: (url: String?) -> void
70
+
71
+ def to_hash: -> { url: String? }
72
+ end
48
73
  end
49
74
  end
50
75
  end
@@ -7,10 +7,13 @@ module WhopSDK
7
7
  attachments: ::Array[WhopSDK::Models::CourseLessonUpdateParams::attachment]?,
8
8
  content: String?,
9
9
  days_from_course_start_until_unlock: Integer?,
10
+ embed_id: String?,
11
+ embed_type: WhopSDK::Models::embed_type?,
10
12
  lesson_type: WhopSDK::Models::lesson_types?,
11
13
  main_pdf: WhopSDK::Models::CourseLessonUpdateParams::main_pdf?,
12
14
  max_attempts: Integer?,
13
15
  mux_asset_id: String?,
16
+ thumbnail: WhopSDK::Models::CourseLessonUpdateParams::thumbnail?,
14
17
  title: String?,
15
18
  visibility: WhopSDK::Models::lesson_visibilities?
16
19
  }
@@ -30,6 +33,10 @@ module WhopSDK
30
33
 
31
34
  attr_accessor days_from_course_start_until_unlock: Integer?
32
35
 
36
+ attr_accessor embed_id: String?
37
+
38
+ attr_accessor embed_type: WhopSDK::Models::embed_type?
39
+
33
40
  attr_accessor lesson_type: WhopSDK::Models::lesson_types?
34
41
 
35
42
  attr_accessor main_pdf: WhopSDK::Models::CourseLessonUpdateParams::main_pdf?
@@ -38,6 +45,8 @@ module WhopSDK
38
45
 
39
46
  attr_accessor mux_asset_id: String?
40
47
 
48
+ attr_accessor thumbnail: WhopSDK::Models::CourseLessonUpdateParams::thumbnail?
49
+
41
50
  attr_accessor title: String?
42
51
 
43
52
  attr_accessor visibility: WhopSDK::Models::lesson_visibilities?
@@ -48,10 +57,13 @@ module WhopSDK
48
57
  ?attachments: ::Array[WhopSDK::Models::CourseLessonUpdateParams::attachment]?,
49
58
  ?content: String?,
50
59
  ?days_from_course_start_until_unlock: Integer?,
60
+ ?embed_id: String?,
61
+ ?embed_type: WhopSDK::Models::embed_type?,
51
62
  ?lesson_type: WhopSDK::Models::lesson_types?,
52
63
  ?main_pdf: WhopSDK::Models::CourseLessonUpdateParams::main_pdf?,
53
64
  ?max_attempts: Integer?,
54
65
  ?mux_asset_id: String?,
66
+ ?thumbnail: WhopSDK::Models::CourseLessonUpdateParams::thumbnail?,
55
67
  ?title: String?,
56
68
  ?visibility: WhopSDK::Models::lesson_visibilities?,
57
69
  ?request_options: WhopSDK::request_opts
@@ -63,10 +75,13 @@ module WhopSDK
63
75
  attachments: ::Array[WhopSDK::Models::CourseLessonUpdateParams::attachment]?,
64
76
  content: String?,
65
77
  days_from_course_start_until_unlock: Integer?,
78
+ embed_id: String?,
79
+ embed_type: WhopSDK::Models::embed_type?,
66
80
  lesson_type: WhopSDK::Models::lesson_types?,
67
81
  main_pdf: WhopSDK::Models::CourseLessonUpdateParams::main_pdf?,
68
82
  max_attempts: Integer?,
69
83
  mux_asset_id: String?,
84
+ thumbnail: WhopSDK::Models::CourseLessonUpdateParams::thumbnail?,
70
85
  title: String?,
71
86
  visibility: WhopSDK::Models::lesson_visibilities?,
72
87
  request_options: WhopSDK::RequestOptions
@@ -243,6 +258,37 @@ module WhopSDK
243
258
 
244
259
  def self?.variants: -> ::Array[WhopSDK::Models::CourseLessonUpdateParams::main_pdf]
245
260
  end
261
+
262
+ type thumbnail =
263
+ WhopSDK::CourseLessonUpdateParams::Thumbnail::AttachmentInputWithDirectUploadID
264
+ | WhopSDK::CourseLessonUpdateParams::Thumbnail::AttachmentInputWithID
265
+
266
+ module Thumbnail
267
+ extend WhopSDK::Internal::Type::Union
268
+
269
+ type attachment_input_with_direct_upload_id =
270
+ { direct_upload_id: String }
271
+
272
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
273
+ attr_accessor direct_upload_id: String
274
+
275
+ def initialize: (direct_upload_id: String) -> void
276
+
277
+ def to_hash: -> { direct_upload_id: String }
278
+ end
279
+
280
+ type attachment_input_with_id = { id: String }
281
+
282
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
283
+ attr_accessor id: String
284
+
285
+ def initialize: (id: String) -> void
286
+
287
+ def to_hash: -> { id: String }
288
+ end
289
+
290
+ def self?.variants: -> ::Array[WhopSDK::Models::CourseLessonUpdateParams::thumbnail]
291
+ end
246
292
  end
247
293
  end
248
294
  end
@@ -7,11 +7,13 @@ module WhopSDK
7
7
  created_at: Time,
8
8
  description: String?,
9
9
  language: WhopSDK::Models::languages,
10
+ order: String,
10
11
  require_completing_lessons_in_order: bool,
11
12
  tagline: String?,
12
13
  thumbnail: WhopSDK::Models::CourseListResponse::Thumbnail?,
13
14
  title: String?,
14
- updated_at: Time
15
+ updated_at: Time,
16
+ visibility: WhopSDK::Models::course_visibilities
15
17
  }
16
18
 
17
19
  class CourseListResponse < WhopSDK::Internal::Type::BaseModel
@@ -25,6 +27,8 @@ module WhopSDK
25
27
 
26
28
  attr_accessor language: WhopSDK::Models::languages
27
29
 
30
+ attr_accessor order: String
31
+
28
32
  attr_accessor require_completing_lessons_in_order: bool
29
33
 
30
34
  attr_accessor tagline: String?
@@ -35,17 +39,21 @@ module WhopSDK
35
39
 
36
40
  attr_accessor updated_at: Time
37
41
 
42
+ attr_accessor visibility: WhopSDK::Models::course_visibilities
43
+
38
44
  def initialize: (
39
45
  id: String,
40
46
  certificate_after_completion_enabled: bool?,
41
47
  created_at: Time,
42
48
  description: String?,
43
49
  language: WhopSDK::Models::languages,
50
+ order: String,
44
51
  require_completing_lessons_in_order: bool,
45
52
  tagline: String?,
46
53
  thumbnail: WhopSDK::Models::CourseListResponse::Thumbnail?,
47
54
  title: String?,
48
- updated_at: Time
55
+ updated_at: Time,
56
+ visibility: WhopSDK::Models::course_visibilities
49
57
  ) -> void
50
58
 
51
59
  def to_hash: -> {
@@ -54,11 +62,13 @@ module WhopSDK
54
62
  created_at: Time,
55
63
  description: String?,
56
64
  language: WhopSDK::Models::languages,
65
+ order: String,
57
66
  require_completing_lessons_in_order: bool,
58
67
  tagline: String?,
59
68
  thumbnail: WhopSDK::Models::CourseListResponse::Thumbnail?,
60
69
  title: String?,
61
- updated_at: Time
70
+ updated_at: Time,
71
+ visibility: WhopSDK::Models::course_visibilities
62
72
  }
63
73
 
64
74
  type thumbnail =
@@ -7,10 +7,12 @@ module WhopSDK
7
7
  cover_image: String?,
8
8
  description: String?,
9
9
  language: WhopSDK::Models::languages?,
10
+ order: String?,
10
11
  require_completing_lessons_in_order: bool?,
11
12
  tagline: String?,
12
13
  thumbnail: WhopSDK::Models::CourseUpdateParams::thumbnail?,
13
- title: String?
14
+ title: String?,
15
+ visibility: WhopSDK::Models::course_visibilities?
14
16
  }
15
17
  & WhopSDK::Internal::Type::request_parameters
16
18
 
@@ -28,6 +30,8 @@ module WhopSDK
28
30
 
29
31
  attr_accessor language: WhopSDK::Models::languages?
30
32
 
33
+ attr_accessor order: String?
34
+
31
35
  attr_accessor require_completing_lessons_in_order: bool?
32
36
 
33
37
  attr_accessor tagline: String?
@@ -36,16 +40,20 @@ module WhopSDK
36
40
 
37
41
  attr_accessor title: String?
38
42
 
43
+ attr_accessor visibility: WhopSDK::Models::course_visibilities?
44
+
39
45
  def initialize: (
40
46
  ?certificate_after_completion_enabled: bool?,
41
47
  ?chapters: ::Array[WhopSDK::CourseUpdateParams::Chapter]?,
42
48
  ?cover_image: String?,
43
49
  ?description: String?,
44
50
  ?language: WhopSDK::Models::languages?,
51
+ ?order: String?,
45
52
  ?require_completing_lessons_in_order: bool?,
46
53
  ?tagline: String?,
47
54
  ?thumbnail: WhopSDK::Models::CourseUpdateParams::thumbnail?,
48
55
  ?title: String?,
56
+ ?visibility: WhopSDK::Models::course_visibilities?,
49
57
  ?request_options: WhopSDK::request_opts
50
58
  ) -> void
51
59
 
@@ -55,10 +63,12 @@ module WhopSDK
55
63
  cover_image: String?,
56
64
  description: String?,
57
65
  language: WhopSDK::Models::languages?,
66
+ order: String?,
58
67
  require_completing_lessons_in_order: bool?,
59
68
  tagline: String?,
60
69
  thumbnail: WhopSDK::Models::CourseUpdateParams::thumbnail?,
61
70
  title: String?,
71
+ visibility: WhopSDK::Models::course_visibilities?,
62
72
  request_options: WhopSDK::RequestOptions
63
73
  }
64
74
 
@@ -0,0 +1,14 @@
1
+ module WhopSDK
2
+ module Models
3
+ type course_visibilities = :visible | :hidden
4
+
5
+ module CourseVisibilities
6
+ extend WhopSDK::Internal::Type::Enum
7
+
8
+ VISIBLE: :visible
9
+ HIDDEN: :hidden
10
+
11
+ def self?.values: -> ::Array[WhopSDK::Models::course_visibilities]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ module WhopSDK
2
+ module Models
3
+ type embed_type = :youtube | :loom
4
+
5
+ module EmbedType
6
+ extend WhopSDK::Internal::Type::Enum
7
+
8
+ YOUTUBE: :youtube
9
+ LOOM: :loom
10
+
11
+ def self?.values: -> ::Array[WhopSDK::Models::embed_type]
12
+ end
13
+ end
14
+ end