terminal-shop 3.6.1 → 3.7.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 (274) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +3 -3
  4. data/lib/terminal_shop/errors.rb +1 -1
  5. data/lib/terminal_shop/file_part.rb +2 -2
  6. data/lib/terminal_shop/internal/transport/base_client.rb +77 -5
  7. data/lib/terminal_shop/internal/transport/pooled_net_requester.rb +14 -0
  8. data/lib/terminal_shop/internal/type/array_of.rb +1 -1
  9. data/lib/terminal_shop/internal/type/base_model.rb +62 -30
  10. data/lib/terminal_shop/internal/type/converter.rb +18 -0
  11. data/lib/terminal_shop/internal/type/enum.rb +5 -4
  12. data/lib/terminal_shop/internal/type/hash_of.rb +1 -1
  13. data/lib/terminal_shop/internal/type/request_parameters.rb +4 -4
  14. data/lib/terminal_shop/internal/type/union.rb +1 -0
  15. data/lib/terminal_shop/internal/util.rb +57 -1
  16. data/lib/terminal_shop/internal.rb +6 -0
  17. data/lib/terminal_shop/models/address.rb +3 -3
  18. data/lib/terminal_shop/models/address_get_response.rb +3 -3
  19. data/lib/terminal_shop/models/address_list_response.rb +3 -3
  20. data/lib/terminal_shop/models/app.rb +3 -3
  21. data/lib/terminal_shop/models/app_get_response.rb +3 -3
  22. data/lib/terminal_shop/models/app_list_response.rb +3 -3
  23. data/lib/terminal_shop/models/card.rb +7 -7
  24. data/lib/terminal_shop/models/card_collect_response.rb +0 -1
  25. data/lib/terminal_shop/models/card_create_params.rb +0 -1
  26. data/lib/terminal_shop/models/card_get_response.rb +3 -3
  27. data/lib/terminal_shop/models/card_list_response.rb +3 -3
  28. data/lib/terminal_shop/models/cart.rb +13 -13
  29. data/lib/terminal_shop/models/cart_convert_response.rb +3 -3
  30. data/lib/terminal_shop/models/cart_get_response.rb +3 -3
  31. data/lib/terminal_shop/models/cart_set_item_response.rb +3 -3
  32. data/lib/terminal_shop/models/order.rb +24 -24
  33. data/lib/terminal_shop/models/order_get_response.rb +3 -3
  34. data/lib/terminal_shop/models/order_list_response.rb +3 -3
  35. data/lib/terminal_shop/models/product.rb +14 -14
  36. data/lib/terminal_shop/models/product_get_response.rb +3 -3
  37. data/lib/terminal_shop/models/product_list_response.rb +3 -3
  38. data/lib/terminal_shop/models/product_variant.rb +6 -6
  39. data/lib/terminal_shop/models/profile.rb +6 -6
  40. data/lib/terminal_shop/models/profile_me_response.rb +3 -3
  41. data/lib/terminal_shop/models/profile_update_response.rb +3 -3
  42. data/lib/terminal_shop/models/subscription.rb +18 -9
  43. data/lib/terminal_shop/models/subscription_get_response.rb +3 -3
  44. data/lib/terminal_shop/models/subscription_list_response.rb +3 -3
  45. data/lib/terminal_shop/models/subscription_update_params.rb +15 -6
  46. data/lib/terminal_shop/models/subscription_update_response.rb +3 -3
  47. data/lib/terminal_shop/models/token.rb +3 -3
  48. data/lib/terminal_shop/models/token_create_response.rb +0 -1
  49. data/lib/terminal_shop/models/token_get_response.rb +3 -4
  50. data/lib/terminal_shop/models/token_list_response.rb +3 -3
  51. data/lib/terminal_shop/models/view_init_response.rb +30 -31
  52. data/lib/terminal_shop/models.rb +27 -0
  53. data/lib/terminal_shop/request_options.rb +4 -0
  54. data/lib/terminal_shop/resources/address.rb +1 -1
  55. data/lib/terminal_shop/resources/app.rb +1 -1
  56. data/lib/terminal_shop/resources/card.rb +1 -2
  57. data/lib/terminal_shop/resources/cart.rb +3 -3
  58. data/lib/terminal_shop/resources/email.rb +1 -1
  59. data/lib/terminal_shop/resources/order.rb +1 -1
  60. data/lib/terminal_shop/resources/profile.rb +1 -1
  61. data/lib/terminal_shop/resources/subscription.rb +5 -5
  62. data/lib/terminal_shop/version.rb +1 -1
  63. data/lib/terminal_shop.rb +3 -0
  64. data/rbi/terminal_shop/client.rbi +9 -5
  65. data/rbi/terminal_shop/errors.rbi +35 -16
  66. data/rbi/terminal_shop/file_part.rbi +9 -6
  67. data/rbi/terminal_shop/internal/transport/base_client.rbi +165 -77
  68. data/rbi/terminal_shop/internal/transport/pooled_net_requester.rbi +29 -13
  69. data/rbi/terminal_shop/internal/type/array_of.rbi +34 -24
  70. data/rbi/terminal_shop/internal/type/base_model.rbi +155 -70
  71. data/rbi/terminal_shop/internal/type/base_page.rbi +13 -8
  72. data/rbi/terminal_shop/internal/type/boolean.rbi +16 -14
  73. data/rbi/terminal_shop/internal/type/converter.rbi +72 -28
  74. data/rbi/terminal_shop/internal/type/enum.rbi +24 -13
  75. data/rbi/terminal_shop/internal/type/file_input.rbi +8 -4
  76. data/rbi/terminal_shop/internal/type/hash_of.rbi +34 -24
  77. data/rbi/terminal_shop/internal/type/request_parameters.rbi +14 -4
  78. data/rbi/terminal_shop/internal/type/union.rbi +53 -22
  79. data/rbi/terminal_shop/internal/type/unknown.rbi +16 -6
  80. data/rbi/terminal_shop/internal/util.rbi +236 -91
  81. data/rbi/terminal_shop/internal.rbi +2 -0
  82. data/rbi/terminal_shop/models/address.rbi +25 -19
  83. data/rbi/terminal_shop/models/address_create_params.rbi +28 -19
  84. data/rbi/terminal_shop/models/address_create_response.rbi +14 -3
  85. data/rbi/terminal_shop/models/address_delete_params.rbi +18 -5
  86. data/rbi/terminal_shop/models/address_delete_response.rbi +13 -3
  87. data/rbi/terminal_shop/models/address_get_params.rbi +15 -5
  88. data/rbi/terminal_shop/models/address_get_response.rbi +17 -7
  89. data/rbi/terminal_shop/models/address_list_params.rbi +18 -5
  90. data/rbi/terminal_shop/models/address_list_response.rbi +18 -6
  91. data/rbi/terminal_shop/models/app.rbi +23 -4
  92. data/rbi/terminal_shop/models/app_create_params.rbi +18 -6
  93. data/rbi/terminal_shop/models/app_create_response.rbi +37 -9
  94. data/rbi/terminal_shop/models/app_delete_params.rbi +15 -5
  95. data/rbi/terminal_shop/models/app_delete_response.rbi +13 -3
  96. data/rbi/terminal_shop/models/app_get_params.rbi +15 -5
  97. data/rbi/terminal_shop/models/app_get_response.rbi +17 -7
  98. data/rbi/terminal_shop/models/app_list_params.rbi +15 -5
  99. data/rbi/terminal_shop/models/app_list_response.rbi +18 -6
  100. data/rbi/terminal_shop/models/card.rbi +37 -14
  101. data/rbi/terminal_shop/models/card_collect_params.rbi +18 -5
  102. data/rbi/terminal_shop/models/card_collect_response.rbi +40 -9
  103. data/rbi/terminal_shop/models/card_create_params.rbi +17 -6
  104. data/rbi/terminal_shop/models/card_create_response.rbi +14 -3
  105. data/rbi/terminal_shop/models/card_delete_params.rbi +15 -5
  106. data/rbi/terminal_shop/models/card_delete_response.rbi +13 -3
  107. data/rbi/terminal_shop/models/card_get_params.rbi +15 -5
  108. data/rbi/terminal_shop/models/card_get_response.rbi +17 -7
  109. data/rbi/terminal_shop/models/card_list_params.rbi +15 -5
  110. data/rbi/terminal_shop/models/card_list_response.rbi +18 -6
  111. data/rbi/terminal_shop/models/cart.rbi +93 -36
  112. data/rbi/terminal_shop/models/cart_clear_params.rbi +15 -5
  113. data/rbi/terminal_shop/models/cart_clear_response.rbi +13 -3
  114. data/rbi/terminal_shop/models/cart_convert_params.rbi +18 -5
  115. data/rbi/terminal_shop/models/cart_convert_response.rbi +17 -7
  116. data/rbi/terminal_shop/models/cart_get_params.rbi +15 -5
  117. data/rbi/terminal_shop/models/cart_get_response.rbi +17 -7
  118. data/rbi/terminal_shop/models/cart_set_address_params.rbi +20 -6
  119. data/rbi/terminal_shop/models/cart_set_address_response.rbi +13 -3
  120. data/rbi/terminal_shop/models/cart_set_card_params.rbi +20 -6
  121. data/rbi/terminal_shop/models/cart_set_card_response.rbi +13 -3
  122. data/rbi/terminal_shop/models/cart_set_item_params.rbi +22 -11
  123. data/rbi/terminal_shop/models/cart_set_item_response.rbi +17 -7
  124. data/rbi/terminal_shop/models/email_create_params.rbi +20 -6
  125. data/rbi/terminal_shop/models/email_create_response.rbi +13 -3
  126. data/rbi/terminal_shop/models/order.rbi +172 -87
  127. data/rbi/terminal_shop/models/order_create_params.rbi +23 -14
  128. data/rbi/terminal_shop/models/order_create_response.rbi +14 -3
  129. data/rbi/terminal_shop/models/order_get_params.rbi +15 -5
  130. data/rbi/terminal_shop/models/order_get_response.rbi +17 -7
  131. data/rbi/terminal_shop/models/order_list_params.rbi +15 -5
  132. data/rbi/terminal_shop/models/order_list_response.rbi +18 -6
  133. data/rbi/terminal_shop/models/product.rbi +78 -44
  134. data/rbi/terminal_shop/models/product_get_params.rbi +15 -5
  135. data/rbi/terminal_shop/models/product_get_response.rbi +17 -7
  136. data/rbi/terminal_shop/models/product_list_params.rbi +18 -5
  137. data/rbi/terminal_shop/models/product_list_response.rbi +18 -6
  138. data/rbi/terminal_shop/models/product_variant.rbi +46 -15
  139. data/rbi/terminal_shop/models/profile.rbi +39 -21
  140. data/rbi/terminal_shop/models/profile_me_params.rbi +15 -5
  141. data/rbi/terminal_shop/models/profile_me_response.rbi +17 -7
  142. data/rbi/terminal_shop/models/profile_update_params.rbi +23 -6
  143. data/rbi/terminal_shop/models/profile_update_response.rbi +17 -7
  144. data/rbi/terminal_shop/models/region.rbi +7 -6
  145. data/rbi/terminal_shop/models/subscription.rbi +82 -46
  146. data/rbi/terminal_shop/models/subscription_create_params.rbi +18 -5
  147. data/rbi/terminal_shop/models/subscription_create_response.rbi +13 -3
  148. data/rbi/terminal_shop/models/subscription_delete_params.rbi +18 -5
  149. data/rbi/terminal_shop/models/subscription_delete_response.rbi +13 -3
  150. data/rbi/terminal_shop/models/subscription_get_params.rbi +18 -5
  151. data/rbi/terminal_shop/models/subscription_get_response.rbi +19 -7
  152. data/rbi/terminal_shop/models/subscription_list_params.rbi +18 -5
  153. data/rbi/terminal_shop/models/subscription_list_response.rbi +20 -6
  154. data/rbi/terminal_shop/models/subscription_update_params.rbi +81 -42
  155. data/rbi/terminal_shop/models/subscription_update_response.rbi +19 -7
  156. data/rbi/terminal_shop/models/token.rbi +16 -4
  157. data/rbi/terminal_shop/models/token_create_params.rbi +18 -5
  158. data/rbi/terminal_shop/models/token_create_response.rbi +39 -9
  159. data/rbi/terminal_shop/models/token_delete_params.rbi +18 -5
  160. data/rbi/terminal_shop/models/token_delete_response.rbi +13 -3
  161. data/rbi/terminal_shop/models/token_get_params.rbi +15 -5
  162. data/rbi/terminal_shop/models/token_get_response.rbi +17 -7
  163. data/rbi/terminal_shop/models/token_list_params.rbi +15 -5
  164. data/rbi/terminal_shop/models/token_list_response.rbi +18 -6
  165. data/rbi/terminal_shop/models/view_init_params.rbi +15 -5
  166. data/rbi/terminal_shop/models/view_init_response.rbi +72 -47
  167. data/rbi/terminal_shop/request_options.rbi +18 -7
  168. data/rbi/terminal_shop/resources/address.rbi +28 -13
  169. data/rbi/terminal_shop/resources/app.rbi +30 -12
  170. data/rbi/terminal_shop/resources/card.rbi +37 -14
  171. data/rbi/terminal_shop/resources/cart.rbi +45 -16
  172. data/rbi/terminal_shop/resources/email.rbi +9 -4
  173. data/rbi/terminal_shop/resources/order.rbi +21 -10
  174. data/rbi/terminal_shop/resources/product.rbi +16 -6
  175. data/rbi/terminal_shop/resources/profile.rbi +16 -6
  176. data/rbi/terminal_shop/resources/subscription.rbi +43 -27
  177. data/rbi/terminal_shop/resources/token.rbi +30 -11
  178. data/rbi/terminal_shop/resources/view.rbi +9 -3
  179. data/sig/terminal_shop/internal/transport/base_client.rbs +16 -1
  180. data/sig/terminal_shop/internal/transport/pooled_net_requester.rbs +2 -0
  181. data/sig/terminal_shop/internal/type/base_model.rbs +11 -5
  182. data/sig/terminal_shop/internal/type/base_page.rbs +1 -1
  183. data/sig/terminal_shop/internal/type/converter.rbs +2 -0
  184. data/sig/terminal_shop/internal/type/enum.rbs +1 -0
  185. data/sig/terminal_shop/internal/type/request_parameters.rbs +5 -1
  186. data/sig/terminal_shop/internal/type/union.rbs +1 -0
  187. data/sig/terminal_shop/internal/util.rbs +13 -0
  188. data/sig/terminal_shop/internal.rbs +2 -0
  189. data/sig/terminal_shop/models/address.rbs +0 -2
  190. data/sig/terminal_shop/models/address_create_params.rbs +0 -2
  191. data/sig/terminal_shop/models/address_create_response.rbs +0 -2
  192. data/sig/terminal_shop/models/address_delete_params.rbs +0 -2
  193. data/sig/terminal_shop/models/address_delete_response.rbs +0 -2
  194. data/sig/terminal_shop/models/address_get_params.rbs +0 -2
  195. data/sig/terminal_shop/models/address_get_response.rbs +3 -5
  196. data/sig/terminal_shop/models/address_list_params.rbs +0 -2
  197. data/sig/terminal_shop/models/address_list_response.rbs +3 -6
  198. data/sig/terminal_shop/models/app.rbs +0 -2
  199. data/sig/terminal_shop/models/app_create_params.rbs +0 -2
  200. data/sig/terminal_shop/models/app_create_response.rbs +0 -4
  201. data/sig/terminal_shop/models/app_delete_params.rbs +0 -2
  202. data/sig/terminal_shop/models/app_delete_response.rbs +0 -2
  203. data/sig/terminal_shop/models/app_get_params.rbs +0 -2
  204. data/sig/terminal_shop/models/app_get_response.rbs +3 -5
  205. data/sig/terminal_shop/models/app_list_params.rbs +0 -2
  206. data/sig/terminal_shop/models/app_list_response.rbs +3 -5
  207. data/sig/terminal_shop/models/card.rbs +3 -7
  208. data/sig/terminal_shop/models/card_collect_params.rbs +0 -2
  209. data/sig/terminal_shop/models/card_collect_response.rbs +0 -4
  210. data/sig/terminal_shop/models/card_create_params.rbs +0 -2
  211. data/sig/terminal_shop/models/card_create_response.rbs +0 -2
  212. data/sig/terminal_shop/models/card_delete_params.rbs +0 -2
  213. data/sig/terminal_shop/models/card_delete_response.rbs +0 -2
  214. data/sig/terminal_shop/models/card_get_params.rbs +0 -2
  215. data/sig/terminal_shop/models/card_get_response.rbs +3 -5
  216. data/sig/terminal_shop/models/card_list_params.rbs +0 -2
  217. data/sig/terminal_shop/models/card_list_response.rbs +3 -5
  218. data/sig/terminal_shop/models/cart.rbs +11 -19
  219. data/sig/terminal_shop/models/cart_clear_params.rbs +0 -2
  220. data/sig/terminal_shop/models/cart_clear_response.rbs +0 -2
  221. data/sig/terminal_shop/models/cart_convert_params.rbs +0 -2
  222. data/sig/terminal_shop/models/cart_convert_response.rbs +3 -5
  223. data/sig/terminal_shop/models/cart_get_params.rbs +0 -2
  224. data/sig/terminal_shop/models/cart_get_response.rbs +3 -5
  225. data/sig/terminal_shop/models/cart_set_address_params.rbs +0 -2
  226. data/sig/terminal_shop/models/cart_set_address_response.rbs +0 -2
  227. data/sig/terminal_shop/models/cart_set_card_params.rbs +0 -2
  228. data/sig/terminal_shop/models/cart_set_card_response.rbs +0 -2
  229. data/sig/terminal_shop/models/cart_set_item_params.rbs +0 -2
  230. data/sig/terminal_shop/models/cart_set_item_response.rbs +3 -5
  231. data/sig/terminal_shop/models/email_create_params.rbs +0 -2
  232. data/sig/terminal_shop/models/email_create_response.rbs +0 -2
  233. data/sig/terminal_shop/models/order.rbs +18 -28
  234. data/sig/terminal_shop/models/order_create_params.rbs +0 -2
  235. data/sig/terminal_shop/models/order_create_response.rbs +0 -2
  236. data/sig/terminal_shop/models/order_get_params.rbs +0 -2
  237. data/sig/terminal_shop/models/order_get_response.rbs +3 -5
  238. data/sig/terminal_shop/models/order_list_params.rbs +0 -2
  239. data/sig/terminal_shop/models/order_list_response.rbs +3 -5
  240. data/sig/terminal_shop/models/product.rbs +14 -18
  241. data/sig/terminal_shop/models/product_get_params.rbs +0 -2
  242. data/sig/terminal_shop/models/product_get_response.rbs +3 -5
  243. data/sig/terminal_shop/models/product_list_params.rbs +0 -2
  244. data/sig/terminal_shop/models/product_list_response.rbs +3 -6
  245. data/sig/terminal_shop/models/product_variant.rbs +5 -9
  246. data/sig/terminal_shop/models/profile.rbs +3 -7
  247. data/sig/terminal_shop/models/profile_me_params.rbs +0 -2
  248. data/sig/terminal_shop/models/profile_me_response.rbs +3 -5
  249. data/sig/terminal_shop/models/profile_update_params.rbs +0 -2
  250. data/sig/terminal_shop/models/profile_update_response.rbs +3 -5
  251. data/sig/terminal_shop/models/subscription.rbs +8 -14
  252. data/sig/terminal_shop/models/subscription_create_params.rbs +0 -2
  253. data/sig/terminal_shop/models/subscription_create_response.rbs +0 -2
  254. data/sig/terminal_shop/models/subscription_delete_params.rbs +0 -2
  255. data/sig/terminal_shop/models/subscription_delete_response.rbs +0 -2
  256. data/sig/terminal_shop/models/subscription_get_params.rbs +0 -2
  257. data/sig/terminal_shop/models/subscription_get_response.rbs +3 -6
  258. data/sig/terminal_shop/models/subscription_list_params.rbs +0 -2
  259. data/sig/terminal_shop/models/subscription_list_response.rbs +3 -7
  260. data/sig/terminal_shop/models/subscription_update_params.rbs +3 -9
  261. data/sig/terminal_shop/models/subscription_update_response.rbs +3 -6
  262. data/sig/terminal_shop/models/token.rbs +0 -2
  263. data/sig/terminal_shop/models/token_create_params.rbs +0 -2
  264. data/sig/terminal_shop/models/token_create_response.rbs +0 -4
  265. data/sig/terminal_shop/models/token_delete_params.rbs +0 -2
  266. data/sig/terminal_shop/models/token_delete_response.rbs +0 -2
  267. data/sig/terminal_shop/models/token_get_params.rbs +0 -2
  268. data/sig/terminal_shop/models/token_get_response.rbs +3 -5
  269. data/sig/terminal_shop/models/token_list_params.rbs +0 -2
  270. data/sig/terminal_shop/models/token_list_response.rbs +3 -5
  271. data/sig/terminal_shop/models/view_init_params.rbs +0 -2
  272. data/sig/terminal_shop/models/view_init_response.rbs +27 -31
  273. data/sig/terminal_shop/request_options.rbs +1 -1
  274. metadata +2 -2
@@ -5,41 +5,57 @@ module TerminalShop
5
5
  module Transport
6
6
  # @api private
7
7
  class BaseClient
8
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
9
+
8
10
  abstract!
9
11
 
10
- RequestComponentsShape =
12
+ RequestComponents =
11
13
  T.type_alias do
12
14
  {
13
15
  method: Symbol,
14
16
  path: T.any(String, T::Array[String]),
15
- query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]),
16
- headers: T.nilable(
17
- T::Hash[String,
18
- T.nilable(
19
- T.any(
20
- String,
21
- Integer,
22
- T::Array[T.nilable(T.any(String, Integer))]
23
- )
24
- )]
25
- ),
17
+ query:
18
+ T.nilable(
19
+ T::Hash[String, T.nilable(T.any(T::Array[String], String))]
20
+ ),
21
+ headers:
22
+ T.nilable(
23
+ T::Hash[
24
+ String,
25
+ T.nilable(
26
+ T.any(
27
+ String,
28
+ Integer,
29
+ T::Array[T.nilable(T.any(String, Integer))]
30
+ )
31
+ )
32
+ ]
33
+ ),
26
34
  body: T.nilable(T.anything),
27
- unwrap: T.nilable(
28
- T.any(
29
- Symbol,
30
- Integer,
31
- T::Array[T.any(Symbol, Integer)],
32
- T.proc.params(arg0: T.anything).returns(T.anything)
33
- )
34
- ),
35
- page: T.nilable(T::Class[TerminalShop::Internal::Type::BasePage[TerminalShop::Internal::Type::BaseModel]]),
35
+ unwrap:
36
+ T.nilable(
37
+ T.any(
38
+ Symbol,
39
+ Integer,
40
+ T::Array[T.any(Symbol, Integer)],
41
+ T.proc.params(arg0: T.anything).returns(T.anything)
42
+ )
43
+ ),
44
+ page:
45
+ T.nilable(
46
+ T::Class[
47
+ TerminalShop::Internal::Type::BasePage[
48
+ TerminalShop::Internal::Type::BaseModel
49
+ ]
50
+ ]
51
+ ),
36
52
  stream: T.nilable(T::Class[T.anything]),
37
53
  model: T.nilable(TerminalShop::Internal::Type::Converter::Input),
38
- options: T.nilable(TerminalShop::RequestOpts)
54
+ options: T.nilable(TerminalShop::RequestOptions::OrHash)
39
55
  }
40
56
  end
41
57
 
42
- RequestInputShape =
58
+ RequestInput =
43
59
  T.type_alias do
44
60
  {
45
61
  method: Symbol,
@@ -58,43 +74,71 @@ module TerminalShop
58
74
 
59
75
  class << self
60
76
  # @api private
61
- sig { params(req: TerminalShop::Internal::Transport::BaseClient::RequestComponentsShape).void }
62
- def validate!(req); end
77
+ sig do
78
+ params(
79
+ req:
80
+ TerminalShop::Internal::Transport::BaseClient::RequestComponents
81
+ ).void
82
+ end
83
+ def validate!(req)
84
+ end
63
85
 
64
86
  # @api private
65
87
  sig do
66
88
  params(
67
89
  status: Integer,
68
- headers: T.any(
69
- T::Hash[String, String],
70
- Net::HTTPHeader
71
- )
90
+ headers: T.any(T::Hash[String, String], Net::HTTPHeader)
72
91
  ).returns(T::Boolean)
73
92
  end
74
- def should_retry?(status, headers:); end
93
+ def should_retry?(status, headers:)
94
+ end
75
95
 
76
96
  # @api private
77
97
  sig do
78
98
  params(
79
- request: TerminalShop::Internal::Transport::BaseClient::RequestInputShape,
99
+ request:
100
+ TerminalShop::Internal::Transport::BaseClient::RequestInput,
80
101
  status: Integer,
81
102
  response_headers: T.any(T::Hash[String, String], Net::HTTPHeader)
103
+ ).returns(
104
+ TerminalShop::Internal::Transport::BaseClient::RequestInput
82
105
  )
83
- .returns(TerminalShop::Internal::Transport::BaseClient::RequestInputShape)
84
106
  end
85
- def follow_redirect(request, status:, response_headers:); end
107
+ def follow_redirect(request, status:, response_headers:)
108
+ end
86
109
 
87
110
  # @api private
88
111
  sig do
89
112
  params(
90
113
  status: T.any(Integer, TerminalShop::Errors::APIConnectionError),
91
114
  stream: T.nilable(T::Enumerable[String])
92
- )
93
- .void
115
+ ).void
116
+ end
117
+ def reap_connection!(status, stream:)
94
118
  end
95
- def reap_connection!(status, stream:); end
96
119
  end
97
120
 
121
+ sig { returns(URI::Generic) }
122
+ attr_reader :base_url
123
+
124
+ sig { returns(Float) }
125
+ attr_reader :timeout
126
+
127
+ sig { returns(Integer) }
128
+ attr_reader :max_retries
129
+
130
+ sig { returns(Float) }
131
+ attr_reader :initial_retry_delay
132
+
133
+ sig { returns(Float) }
134
+ attr_reader :max_retry_delay
135
+
136
+ sig { returns(T::Hash[String, String]) }
137
+ attr_reader :headers
138
+
139
+ sig { returns(T.nilable(String)) }
140
+ attr_reader :idempotency_header
141
+
98
142
  # @api private
99
143
  sig { returns(TerminalShop::Internal::Transport::PooledNetRequester) }
100
144
  attr_reader :requester
@@ -107,11 +151,19 @@ module TerminalShop
107
151
  max_retries: Integer,
108
152
  initial_retry_delay: Float,
109
153
  max_retry_delay: Float,
110
- headers: T::Hash[String,
111
- T.nilable(T.any(String, Integer, T::Array[T.nilable(T.any(String, Integer))]))],
154
+ headers:
155
+ T::Hash[
156
+ String,
157
+ T.nilable(
158
+ T.any(
159
+ String,
160
+ Integer,
161
+ T::Array[T.nilable(T.any(String, Integer))]
162
+ )
163
+ )
164
+ ],
112
165
  idempotency_header: T.nilable(String)
113
- )
114
- .returns(T.attached_class)
166
+ ).returns(T.attached_class)
115
167
  end
116
168
  def self.new(
117
169
  base_url:,
@@ -121,41 +173,61 @@ module TerminalShop
121
173
  max_retry_delay: 0.0,
122
174
  headers: {},
123
175
  idempotency_header: nil
124
- ); end
176
+ )
177
+ end
178
+
125
179
  # @api private
126
180
  sig { overridable.returns(T::Hash[String, String]) }
127
- private def auth_headers; end
181
+ private def auth_headers
182
+ end
128
183
 
129
184
  # @api private
130
185
  sig { returns(String) }
131
- private def generate_idempotency_key; end
186
+ private def generate_idempotency_key
187
+ end
132
188
 
133
189
  # @api private
134
190
  sig do
135
191
  overridable
136
192
  .params(
137
- req: TerminalShop::Internal::Transport::BaseClient::RequestComponentsShape,
193
+ req:
194
+ TerminalShop::Internal::Transport::BaseClient::RequestComponents,
138
195
  opts: TerminalShop::Internal::AnyHash
139
196
  )
140
- .returns(TerminalShop::Internal::Transport::BaseClient::RequestInputShape)
197
+ .returns(
198
+ TerminalShop::Internal::Transport::BaseClient::RequestInput
199
+ )
200
+ end
201
+ private def build_request(req, opts)
141
202
  end
142
- private def build_request(req, opts); end
143
203
 
144
204
  # @api private
145
- sig { params(headers: T::Hash[String, String], retry_count: Integer).returns(Float) }
146
- private def retry_delay(headers, retry_count:); end
205
+ sig do
206
+ params(
207
+ headers: T::Hash[String, String],
208
+ retry_count: Integer
209
+ ).returns(Float)
210
+ end
211
+ private def retry_delay(headers, retry_count:)
212
+ end
147
213
 
148
214
  # @api private
149
215
  sig do
150
216
  params(
151
- request: TerminalShop::Internal::Transport::BaseClient::RequestInputShape,
217
+ request:
218
+ TerminalShop::Internal::Transport::BaseClient::RequestInput,
152
219
  redirect_count: Integer,
153
220
  retry_count: Integer,
154
221
  send_retry_header: T::Boolean
155
- )
156
- .returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
222
+ ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
223
+ end
224
+ private def send_request(
225
+ request,
226
+ redirect_count:,
227
+ retry_count:,
228
+ send_retry_header:
229
+ )
157
230
  end
158
- private def send_request(request, redirect_count:, retry_count:, send_retry_header:); end
159
231
 
160
232
  # Execute the request specified by `req`. This is the method that all resource
161
233
  # methods call into.
@@ -165,32 +237,45 @@ module TerminalShop
165
237
  params(
166
238
  method: Symbol,
167
239
  path: T.any(String, T::Array[String]),
168
- query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]),
169
- headers: T.nilable(
170
- T::Hash[String,
171
- T.nilable(
172
- T.any(
173
- String,
174
- Integer,
175
- T::Array[T.nilable(T.any(String, Integer))]
176
- )
177
- )]
178
- ),
240
+ query:
241
+ T.nilable(
242
+ T::Hash[String, T.nilable(T.any(T::Array[String], String))]
243
+ ),
244
+ headers:
245
+ T.nilable(
246
+ T::Hash[
247
+ String,
248
+ T.nilable(
249
+ T.any(
250
+ String,
251
+ Integer,
252
+ T::Array[T.nilable(T.any(String, Integer))]
253
+ )
254
+ )
255
+ ]
256
+ ),
179
257
  body: T.nilable(T.anything),
180
- unwrap: T.nilable(
181
- T.any(
182
- Symbol,
183
- Integer,
184
- T::Array[T.any(Symbol, Integer)],
185
- T.proc.params(arg0: T.anything).returns(T.anything)
186
- )
187
- ),
188
- page: T.nilable(T::Class[TerminalShop::Internal::Type::BasePage[TerminalShop::Internal::Type::BaseModel]]),
258
+ unwrap:
259
+ T.nilable(
260
+ T.any(
261
+ Symbol,
262
+ Integer,
263
+ T::Array[T.any(Symbol, Integer)],
264
+ T.proc.params(arg0: T.anything).returns(T.anything)
265
+ )
266
+ ),
267
+ page:
268
+ T.nilable(
269
+ T::Class[
270
+ TerminalShop::Internal::Type::BasePage[
271
+ TerminalShop::Internal::Type::BaseModel
272
+ ]
273
+ ]
274
+ ),
189
275
  stream: T.nilable(T::Class[T.anything]),
190
276
  model: T.nilable(TerminalShop::Internal::Type::Converter::Input),
191
- options: T.nilable(TerminalShop::RequestOpts)
192
- )
193
- .returns(T.anything)
277
+ options: T.nilable(TerminalShop::RequestOptions::OrHash)
278
+ ).returns(T.anything)
194
279
  end
195
280
  def request(
196
281
  method,
@@ -203,10 +288,13 @@ module TerminalShop
203
288
  stream: nil,
204
289
  model: TerminalShop::Internal::Type::Unknown,
205
290
  options: {}
206
- ); end
291
+ )
292
+ end
293
+
207
294
  # @api private
208
295
  sig { returns(String) }
209
- def inspect; end
296
+ def inspect
297
+ end
210
298
  end
211
299
  end
212
300
  end
@@ -5,7 +5,9 @@ module TerminalShop
5
5
  module Transport
6
6
  # @api private
7
7
  class PooledNetRequester
8
- RequestShape =
8
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
9
+
10
+ Request =
9
11
  T.type_alias do
10
12
  {
11
13
  method: Symbol,
@@ -23,37 +25,51 @@ module TerminalShop
23
25
  class << self
24
26
  # @api private
25
27
  sig { params(url: URI::Generic).returns(Net::HTTP) }
26
- def connect(url); end
28
+ def connect(url)
29
+ end
27
30
 
28
31
  # @api private
29
32
  sig { params(conn: Net::HTTP, deadline: Float).void }
30
- def calibrate_socket_timeout(conn, deadline); end
33
+ def calibrate_socket_timeout(conn, deadline)
34
+ end
31
35
 
32
36
  # @api private
33
37
  sig do
34
38
  params(
35
- request: TerminalShop::Internal::Transport::PooledNetRequester::RequestShape,
39
+ request:
40
+ TerminalShop::Internal::Transport::PooledNetRequester::Request,
36
41
  blk: T.proc.params(arg0: String).void
37
- )
38
- .returns([Net::HTTPGenericRequest, T.proc.void])
42
+ ).returns([Net::HTTPGenericRequest, T.proc.void])
43
+ end
44
+ def build_request(request, &blk)
39
45
  end
40
- def build_request(request, &blk); end
41
46
  end
42
47
 
43
48
  # @api private
44
- sig { params(url: URI::Generic, deadline: Float, blk: T.proc.params(arg0: Net::HTTP).void).void }
45
- private def with_pool(url, deadline:, &blk); end
49
+ sig do
50
+ params(
51
+ url: URI::Generic,
52
+ deadline: Float,
53
+ blk: T.proc.params(arg0: Net::HTTP).void
54
+ ).void
55
+ end
56
+ private def with_pool(url, deadline:, &blk)
57
+ end
46
58
 
47
59
  # @api private
48
60
  sig do
49
- params(request: TerminalShop::Internal::Transport::PooledNetRequester::RequestShape)
50
- .returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
61
+ params(
62
+ request:
63
+ TerminalShop::Internal::Transport::PooledNetRequester::Request
64
+ ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
65
+ end
66
+ def execute(request)
51
67
  end
52
- def execute(request); end
53
68
 
54
69
  # @api private
55
70
  sig { params(size: Integer).returns(T.attached_class) }
56
- def self.new(size: Etc.nprocessors); end
71
+ def self.new(size: Etc.nprocessors)
72
+ end
57
73
  end
58
74
  end
59
75
  end
@@ -15,25 +15,29 @@ module TerminalShop
15
15
 
16
16
  sig do
17
17
  params(
18
- type_info: T.any(
19
- TerminalShop::Internal::AnyHash,
20
- T.proc.returns(TerminalShop::Internal::Type::Converter::Input),
21
- TerminalShop::Internal::Type::Converter::Input
22
- ),
18
+ type_info:
19
+ T.any(
20
+ TerminalShop::Internal::AnyHash,
21
+ T.proc.returns(TerminalShop::Internal::Type::Converter::Input),
22
+ TerminalShop::Internal::Type::Converter::Input
23
+ ),
23
24
  spec: TerminalShop::Internal::AnyHash
24
- )
25
- .returns(T.attached_class)
25
+ ).returns(T.attached_class)
26
+ end
27
+ def self.[](type_info, spec = {})
26
28
  end
27
- def self.[](type_info, spec = {}); end
28
29
 
29
30
  sig { params(other: T.anything).returns(T::Boolean) }
30
- def ===(other); end
31
+ def ===(other)
32
+ end
31
33
 
32
34
  sig { params(other: T.anything).returns(T::Boolean) }
33
- def ==(other); end
35
+ def ==(other)
36
+ end
34
37
 
35
38
  sig { returns(Integer) }
36
- def hash; end
39
+ def hash
40
+ end
37
41
 
38
42
  # @api private
39
43
  sig do
@@ -44,7 +48,8 @@ module TerminalShop
44
48
  )
45
49
  .returns(T.any(T::Array[T.anything], T.anything))
46
50
  end
47
- def coerce(value, state:); end
51
+ def coerce(value, state:)
52
+ end
48
53
 
49
54
  # @api private
50
55
  sig do
@@ -55,33 +60,38 @@ module TerminalShop
55
60
  )
56
61
  .returns(T.any(T::Array[T.anything], T.anything))
57
62
  end
58
- def dump(value, state:); end
63
+ def dump(value, state:)
64
+ end
59
65
 
60
66
  # @api private
61
67
  sig { returns(Elem) }
62
- protected def item_type; end
68
+ protected def item_type
69
+ end
63
70
 
64
71
  # @api private
65
72
  sig { returns(T::Boolean) }
66
- protected def nilable?; end
73
+ protected def nilable?
74
+ end
67
75
 
68
76
  # @api private
69
77
  sig do
70
78
  params(
71
- type_info: T.any(
72
- TerminalShop::Internal::AnyHash,
73
- T.proc.returns(TerminalShop::Internal::Type::Converter::Input),
74
- TerminalShop::Internal::Type::Converter::Input
75
- ),
79
+ type_info:
80
+ T.any(
81
+ TerminalShop::Internal::AnyHash,
82
+ T.proc.returns(TerminalShop::Internal::Type::Converter::Input),
83
+ TerminalShop::Internal::Type::Converter::Input
84
+ ),
76
85
  spec: TerminalShop::Internal::AnyHash
77
- )
78
- .void
86
+ ).void
87
+ end
88
+ def initialize(type_info, spec = {})
79
89
  end
80
- def initialize(type_info, spec = {}); end
81
90
 
82
91
  # @api private
83
92
  sig { params(depth: Integer).returns(String) }
84
- def inspect(depth: 0); end
93
+ def inspect(depth: 0)
94
+ end
85
95
  end
86
96
  end
87
97
  end