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
@@ -4,62 +4,106 @@ module TerminalShop
4
4
  module Internal
5
5
  # @api private
6
6
  module Util
7
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
8
+
7
9
  # @api private
8
10
  sig { returns(Float) }
9
- def self.monotonic_secs; end
11
+ def self.monotonic_secs
12
+ end
10
13
 
11
14
  class << self
12
15
  # @api private
13
16
  sig { returns(String) }
14
- def arch; end
17
+ def arch
18
+ end
15
19
 
16
20
  # @api private
17
21
  sig { returns(String) }
18
- def os; end
22
+ def os
23
+ end
19
24
  end
20
25
 
21
26
  class << self
22
27
  # @api private
23
28
  sig { params(input: T.anything).returns(T::Boolean) }
24
- def primitive?(input); end
29
+ def primitive?(input)
30
+ end
25
31
 
26
32
  # @api private
27
- sig { params(input: T.any(String, T::Boolean)).returns(T.any(T::Boolean, T.anything)) }
28
- def coerce_boolean(input); end
33
+ sig do
34
+ params(input: T.any(String, T::Boolean)).returns(
35
+ T.any(T::Boolean, T.anything)
36
+ )
37
+ end
38
+ def coerce_boolean(input)
39
+ end
29
40
 
30
41
  # @api private
31
- sig { params(input: T.any(String, T::Boolean)).returns(T.nilable(T::Boolean)) }
32
- def coerce_boolean!(input); end
42
+ sig do
43
+ params(input: T.any(String, T::Boolean)).returns(
44
+ T.nilable(T::Boolean)
45
+ )
46
+ end
47
+ def coerce_boolean!(input)
48
+ end
33
49
 
34
50
  # @api private
35
- sig { params(input: T.any(String, Integer)).returns(T.any(Integer, T.anything)) }
36
- def coerce_integer(input); end
51
+ sig do
52
+ params(input: T.any(String, Integer)).returns(
53
+ T.any(Integer, T.anything)
54
+ )
55
+ end
56
+ def coerce_integer(input)
57
+ end
37
58
 
38
59
  # @api private
39
- sig { params(input: T.any(String, Integer, Float)).returns(T.any(Float, T.anything)) }
40
- def coerce_float(input); end
60
+ sig do
61
+ params(input: T.any(String, Integer, Float)).returns(
62
+ T.any(Float, T.anything)
63
+ )
64
+ end
65
+ def coerce_float(input)
66
+ end
41
67
 
42
68
  # @api private
43
- sig { params(input: T.anything).returns(T.any(T::Hash[T.anything, T.anything], T.anything)) }
44
- def coerce_hash(input); end
69
+ sig do
70
+ params(input: T.anything).returns(
71
+ T.any(T::Hash[T.anything, T.anything], T.anything)
72
+ )
73
+ end
74
+ def coerce_hash(input)
75
+ end
45
76
 
46
77
  # @api private
47
- sig { params(input: T.anything).returns(T.nilable(T::Hash[T.anything, T.anything])) }
48
- def coerce_hash!(input); end
78
+ sig do
79
+ params(input: T.anything).returns(
80
+ T.nilable(T::Hash[T.anything, T.anything])
81
+ )
82
+ end
83
+ def coerce_hash!(input)
84
+ end
49
85
  end
50
86
 
51
87
  class << self
52
88
  # @api private
53
- sig { params(lhs: T.anything, rhs: T.anything, concat: T::Boolean).returns(T.anything) }
54
- private def deep_merge_lr(lhs, rhs, concat: false); end
89
+ sig do
90
+ params(lhs: T.anything, rhs: T.anything, concat: T::Boolean).returns(
91
+ T.anything
92
+ )
93
+ end
94
+ private def deep_merge_lr(lhs, rhs, concat: false)
95
+ end
55
96
 
56
97
  # @api private
57
98
  #
58
99
  # Recursively merge one hash with another. If the values at a given key are not
59
100
  # both hashes, just take the new value.
60
101
  sig do
61
- params(values: T::Array[T.anything], sentinel: T.nilable(T.anything), concat: T::Boolean)
62
- .returns(T.anything)
102
+ params(
103
+ values: T::Array[T.anything],
104
+ sentinel: T.nilable(T.anything),
105
+ concat: T::Boolean
106
+ ).returns(T.anything)
63
107
  end
64
108
  def deep_merge(
65
109
  *values,
@@ -67,50 +111,70 @@ module TerminalShop
67
111
  sentinel: nil,
68
112
  # whether to merge sequences by concatenation.
69
113
  concat: false
70
- ); end
114
+ )
115
+ end
116
+
71
117
  # @api private
72
118
  sig do
73
119
  params(
74
- data: T.any(TerminalShop::Internal::AnyHash, T::Array[T.anything], T.anything),
75
- pick: T.nilable(
120
+ data:
76
121
  T.any(
77
- Symbol,
78
- Integer,
79
- T::Array[T.any(Symbol, Integer)],
80
- T.proc.params(arg0: T.anything).returns(T.anything)
81
- )
82
- ),
122
+ TerminalShop::Internal::AnyHash,
123
+ T::Array[T.anything],
124
+ T.anything
125
+ ),
126
+ pick:
127
+ T.nilable(
128
+ T.any(
129
+ Symbol,
130
+ Integer,
131
+ T::Array[T.any(Symbol, Integer)],
132
+ T.proc.params(arg0: T.anything).returns(T.anything)
133
+ )
134
+ ),
83
135
  blk: T.nilable(T.proc.returns(T.anything))
84
- )
85
- .returns(T.nilable(T.anything))
136
+ ).returns(T.nilable(T.anything))
137
+ end
138
+ def dig(data, pick, &blk)
86
139
  end
87
- def dig(data, pick, &blk); end
88
140
  end
89
141
 
90
142
  class << self
91
143
  # @api private
92
144
  sig { params(uri: URI::Generic).returns(String) }
93
- def uri_origin(uri); end
145
+ def uri_origin(uri)
146
+ end
94
147
 
95
148
  # @api private
96
149
  sig { params(path: T.any(String, T::Array[String])).returns(String) }
97
- def interpolate_path(path); end
150
+ def interpolate_path(path)
151
+ end
98
152
  end
99
153
 
100
154
  class << self
101
155
  # @api private
102
- sig { params(query: T.nilable(String)).returns(T::Hash[String, T::Array[String]]) }
103
- def decode_query(query); end
156
+ sig do
157
+ params(query: T.nilable(String)).returns(
158
+ T::Hash[String, T::Array[String]]
159
+ )
160
+ end
161
+ def decode_query(query)
162
+ end
104
163
 
105
164
  # @api private
106
165
  sig do
107
- params(query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]))
108
- .returns(T.nilable(String))
166
+ params(
167
+ query:
168
+ T.nilable(
169
+ T::Hash[String, T.nilable(T.any(T::Array[String], String))]
170
+ )
171
+ ).returns(T.nilable(String))
172
+ end
173
+ def encode_query(query)
109
174
  end
110
- def encode_query(query); end
111
175
  end
112
176
 
113
- ParsedUriShape =
177
+ ParsedUri =
114
178
  T.type_alias do
115
179
  {
116
180
  scheme: T.nilable(String),
@@ -123,34 +187,53 @@ module TerminalShop
123
187
 
124
188
  class << self
125
189
  # @api private
126
- sig { params(url: T.any(URI::Generic, String)).returns(TerminalShop::Internal::Util::ParsedUriShape) }
127
- def parse_uri(url); end
190
+ sig do
191
+ params(url: T.any(URI::Generic, String)).returns(
192
+ TerminalShop::Internal::Util::ParsedUri
193
+ )
194
+ end
195
+ def parse_uri(url)
196
+ end
128
197
 
129
198
  # @api private
130
- sig { params(parsed: TerminalShop::Internal::Util::ParsedUriShape).returns(URI::Generic) }
131
- def unparse_uri(parsed); end
199
+ sig do
200
+ params(parsed: TerminalShop::Internal::Util::ParsedUri).returns(
201
+ URI::Generic
202
+ )
203
+ end
204
+ def unparse_uri(parsed)
205
+ end
132
206
 
133
207
  # @api private
134
208
  sig do
135
209
  params(
136
- lhs: TerminalShop::Internal::Util::ParsedUriShape,
137
- rhs: TerminalShop::Internal::Util::ParsedUriShape
138
- )
139
- .returns(URI::Generic)
210
+ lhs: TerminalShop::Internal::Util::ParsedUri,
211
+ rhs: TerminalShop::Internal::Util::ParsedUri
212
+ ).returns(URI::Generic)
213
+ end
214
+ def join_parsed_uri(lhs, rhs)
140
215
  end
141
- def join_parsed_uri(lhs, rhs); end
142
216
  end
143
217
 
144
218
  class << self
145
219
  # @api private
146
220
  sig do
147
221
  params(
148
- headers: T::Hash[String,
149
- T.nilable(T.any(String, Integer, T::Array[T.nilable(T.any(String, Integer))]))]
150
- )
151
- .returns(T::Hash[String, String])
222
+ headers:
223
+ T::Hash[
224
+ String,
225
+ T.nilable(
226
+ T.any(
227
+ String,
228
+ Integer,
229
+ T::Array[T.nilable(T.any(String, Integer))]
230
+ )
231
+ )
232
+ ]
233
+ ).returns(T::Hash[String, String])
234
+ end
235
+ def normalized_headers(*headers)
152
236
  end
153
- def normalized_headers(*headers); end
154
237
  end
155
238
 
156
239
  # @api private
@@ -159,38 +242,54 @@ module TerminalShop
159
242
  class ReadIOAdapter
160
243
  # @api private
161
244
  sig { returns(T.nilable(T::Boolean)) }
162
- def close?; end
245
+ def close?
246
+ end
163
247
 
164
248
  # @api private
165
249
  sig { void }
166
- def close; end
250
+ def close
251
+ end
167
252
 
168
253
  # @api private
169
254
  sig { params(max_len: T.nilable(Integer)).returns(String) }
170
- private def read_enum(max_len); end
255
+ private def read_enum(max_len)
256
+ end
171
257
 
172
258
  # @api private
173
- sig { params(max_len: T.nilable(Integer), out_string: T.nilable(String)).returns(T.nilable(String)) }
174
- def read(max_len = nil, out_string = nil); end
259
+ sig do
260
+ params(
261
+ max_len: T.nilable(Integer),
262
+ out_string: T.nilable(String)
263
+ ).returns(T.nilable(String))
264
+ end
265
+ def read(max_len = nil, out_string = nil)
266
+ end
175
267
 
176
268
  # @api private
177
269
  sig do
178
270
  params(
179
271
  src: T.any(String, Pathname, StringIO, T::Enumerable[String]),
180
272
  blk: T.proc.params(arg0: String).void
181
- )
182
- .returns(T.attached_class)
273
+ ).returns(T.attached_class)
274
+ end
275
+ def self.new(src, &blk)
183
276
  end
184
- def self.new(src, &blk); end
185
277
  end
186
278
 
187
279
  class << self
188
- sig { params(blk: T.proc.params(y: Enumerator::Yielder).void).returns(T::Enumerable[String]) }
189
- def writable_enum(&blk); end
280
+ sig do
281
+ params(blk: T.proc.params(y: Enumerator::Yielder).void).returns(
282
+ T::Enumerable[String]
283
+ )
284
+ end
285
+ def writable_enum(&blk)
286
+ end
190
287
  end
191
288
 
192
- JSON_CONTENT = T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp)
193
- JSONL_CONTENT = T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
289
+ JSON_CONTENT =
290
+ T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp)
291
+ JSONL_CONTENT =
292
+ T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp)
194
293
 
195
294
  class << self
196
295
  # @api private
@@ -200,10 +299,15 @@ module TerminalShop
200
299
  val: T.anything,
201
300
  closing: T::Array[T.proc.void],
202
301
  content_type: T.nilable(String)
203
- )
204
- .void
302
+ ).void
303
+ end
304
+ private def write_multipart_content(
305
+ y,
306
+ val:,
307
+ closing:,
308
+ content_type: nil
309
+ )
205
310
  end
206
- private def write_multipart_content(y, val:, closing:, content_type: nil); end
207
311
 
208
312
  # @api private
209
313
  sig do
@@ -213,24 +317,33 @@ module TerminalShop
213
317
  key: T.any(Symbol, String),
214
318
  val: T.anything,
215
319
  closing: T::Array[T.proc.void]
216
- )
217
- .void
320
+ ).void
321
+ end
322
+ private def write_multipart_chunk(y, boundary:, key:, val:, closing:)
218
323
  end
219
- private def write_multipart_chunk(y, boundary:, key:, val:, closing:); end
220
324
 
221
325
  # @api private
222
- sig { params(body: T.anything).returns([String, T::Enumerable[String]]) }
223
- private def encode_multipart_streaming(body); end
326
+ sig do
327
+ params(body: T.anything).returns([String, T::Enumerable[String]])
328
+ end
329
+ private def encode_multipart_streaming(body)
330
+ end
224
331
 
225
332
  # @api private
226
- sig { params(headers: T::Hash[String, String], body: T.anything).returns(T.anything) }
227
- def encode_content(headers, body); end
333
+ sig do
334
+ params(headers: T::Hash[String, String], body: T.anything).returns(
335
+ T.anything
336
+ )
337
+ end
338
+ def encode_content(headers, body)
339
+ end
228
340
 
229
341
  # @api private
230
342
  #
231
343
  # https://www.iana.org/assignments/character-sets/character-sets.xhtml
232
344
  sig { params(content_type: String, text: String).void }
233
- def force_charset!(content_type, text:); end
345
+ def force_charset!(content_type, text:)
346
+ end
234
347
 
235
348
  # @api private
236
349
  #
@@ -240,10 +353,10 @@ module TerminalShop
240
353
  headers: T.any(T::Hash[String, String], Net::HTTPHeader),
241
354
  stream: T::Enumerable[String],
242
355
  suppress_error: T::Boolean
243
- )
244
- .returns(T.anything)
356
+ ).returns(T.anything)
357
+ end
358
+ def decode_content(headers, stream:, suppress_error: false)
245
359
  end
246
- def decode_content(headers, stream:, suppress_error: false); end
247
360
  end
248
361
 
249
362
  class << self
@@ -251,24 +364,29 @@ module TerminalShop
251
364
  #
252
365
  # https://doc.rust-lang.org/std/iter/trait.FusedIterator.html
253
366
  sig do
254
- params(enum: T::Enumerable[T.anything], external: T::Boolean, close: T.proc.void)
255
- .returns(T::Enumerable[T.anything])
367
+ params(
368
+ enum: T::Enumerable[T.anything],
369
+ external: T::Boolean,
370
+ close: T.proc.void
371
+ ).returns(T::Enumerable[T.anything])
372
+ end
373
+ def fused_enum(enum, external: false, &close)
256
374
  end
257
- def fused_enum(enum, external: false, &close); end
258
375
 
259
376
  # @api private
260
377
  sig { params(enum: T.nilable(T::Enumerable[T.anything])).void }
261
- def close_fused!(enum); end
378
+ def close_fused!(enum)
379
+ end
262
380
 
263
381
  # @api private
264
382
  sig do
265
383
  params(
266
384
  enum: T.nilable(T::Enumerable[T.anything]),
267
385
  blk: T.proc.params(arg0: Enumerator::Yielder).void
268
- )
269
- .returns(T::Enumerable[T.anything])
386
+ ).returns(T::Enumerable[T.anything])
387
+ end
388
+ def chain_fused(enum, &blk)
270
389
  end
271
- def chain_fused(enum, &blk); end
272
390
  end
273
391
 
274
392
  ServerSentEvent =
@@ -288,8 +406,11 @@ module TerminalShop
288
406
  #
289
407
  # This decoder is responsible for reassembling lines split across multiple
290
408
  # fragments.
291
- sig { params(enum: T::Enumerable[String]).returns(T::Enumerable[String]) }
292
- def decode_lines(enum); end
409
+ sig do
410
+ params(enum: T::Enumerable[String]).returns(T::Enumerable[String])
411
+ end
412
+ def decode_lines(enum)
413
+ end
293
414
 
294
415
  # @api private
295
416
  #
@@ -297,9 +418,33 @@ module TerminalShop
297
418
  #
298
419
  # Assumes that `lines` has been decoded with `#decode_lines`.
299
420
  sig do
300
- params(lines: T::Enumerable[String]).returns(T::Enumerable[TerminalShop::Internal::Util::ServerSentEvent])
421
+ params(lines: T::Enumerable[String]).returns(
422
+ T::Enumerable[TerminalShop::Internal::Util::ServerSentEvent]
423
+ )
424
+ end
425
+ def decode_sse(lines)
426
+ end
427
+ end
428
+
429
+ # @api private
430
+ module SorbetRuntimeSupport
431
+ class MissingSorbetRuntimeError < ::RuntimeError
432
+ end
433
+
434
+ # @api private
435
+ sig { returns(T::Hash[Symbol, T.anything]) }
436
+ private def sorbet_runtime_constants
437
+ end
438
+
439
+ # @api private
440
+ sig { params(name: Symbol).void }
441
+ def const_missing(name)
442
+ end
443
+
444
+ # @api private
445
+ sig { params(name: Symbol, blk: T.proc.returns(T.anything)).void }
446
+ def define_sorbet_constant!(name, &blk)
301
447
  end
302
- def decode_sse(lines); end
303
448
  end
304
449
  end
305
450
  end
@@ -2,6 +2,8 @@
2
2
 
3
3
  module TerminalShop
4
4
  module Internal
5
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  # Due to the current WIP status of Shapes support in Sorbet, types referencing
6
8
  # this alias might be refined in the future.
7
9
  AnyHash = T.type_alias { T::Hash[Symbol, T.anything] }
@@ -3,6 +3,11 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class AddressAPI < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(TerminalShop::AddressAPI, TerminalShop::Internal::AnyHash)
9
+ end
10
+
6
11
  # Unique object identifier. The format and length of IDs may change over time.
7
12
  sig { returns(String) }
8
13
  attr_accessor :id
@@ -65,8 +70,7 @@ module TerminalShop
65
70
  phone: String,
66
71
  province: String,
67
72
  street2: String
68
- )
69
- .returns(T.attached_class)
73
+ ).returns(T.attached_class)
70
74
  end
71
75
  def self.new(
72
76
  # Unique object identifier. The format and length of IDs may change over time.
@@ -89,25 +93,27 @@ module TerminalShop
89
93
  province: nil,
90
94
  # Apartment, suite, etc. of the address.
91
95
  street2: nil
92
- ); end
96
+ )
97
+ end
98
+
93
99
  sig do
94
- override
95
- .returns(
96
- {
97
- id: String,
98
- city: String,
99
- country: String,
100
- created: String,
101
- name: String,
102
- street1: String,
103
- zip: String,
104
- phone: String,
105
- province: String,
106
- street2: String
107
- }
108
- )
100
+ override.returns(
101
+ {
102
+ id: String,
103
+ city: String,
104
+ country: String,
105
+ created: String,
106
+ name: String,
107
+ street1: String,
108
+ zip: String,
109
+ phone: String,
110
+ province: String,
111
+ street2: String
112
+ }
113
+ )
114
+ end
115
+ def to_hash
109
116
  end
110
- def to_hash; end
111
117
  end
112
118
  end
113
119
  end
@@ -6,6 +6,14 @@ module TerminalShop
6
6
  extend TerminalShop::Internal::Type::RequestParameters::Converter
7
7
  include TerminalShop::Internal::Type::RequestParameters
8
8
 
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ TerminalShop::AddressCreateParams,
13
+ TerminalShop::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  # City of the address.
10
18
  sig { returns(String) }
11
19
  attr_accessor :city
@@ -57,9 +65,8 @@ module TerminalShop
57
65
  phone: String,
58
66
  province: String,
59
67
  street2: String,
60
- request_options: T.any(TerminalShop::RequestOptions, TerminalShop::Internal::AnyHash)
61
- )
62
- .returns(T.attached_class)
68
+ request_options: TerminalShop::RequestOptions::OrHash
69
+ ).returns(T.attached_class)
63
70
  end
64
71
  def self.new(
65
72
  # City of the address.
@@ -79,24 +86,26 @@ module TerminalShop
79
86
  # Apartment, suite, etc. of the address.
80
87
  street2: nil,
81
88
  request_options: {}
82
- ); end
89
+ )
90
+ end
91
+
83
92
  sig do
84
- override
85
- .returns(
86
- {
87
- city: String,
88
- country: String,
89
- name: String,
90
- street1: String,
91
- zip: String,
92
- phone: String,
93
- province: String,
94
- street2: String,
95
- request_options: TerminalShop::RequestOptions
96
- }
97
- )
93
+ override.returns(
94
+ {
95
+ city: String,
96
+ country: String,
97
+ name: String,
98
+ street1: String,
99
+ zip: String,
100
+ phone: String,
101
+ province: String,
102
+ street2: String,
103
+ request_options: TerminalShop::RequestOptions
104
+ }
105
+ )
106
+ end
107
+ def to_hash
98
108
  end
99
- def to_hash; end
100
109
  end
101
110
  end
102
111
  end
@@ -3,6 +3,14 @@
3
3
  module TerminalShop
4
4
  module Models
5
5
  class AddressCreateResponse < TerminalShop::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ TerminalShop::Models::AddressCreateResponse,
10
+ TerminalShop::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  # Shipping address ID.
7
15
  sig { returns(String) }
8
16
  attr_accessor :data
@@ -11,9 +19,12 @@ module TerminalShop
11
19
  def self.new(
12
20
  # Shipping address ID.
13
21
  data:
14
- ); end
15
- sig { override.returns({data: String}) }
16
- def to_hash; end
22
+ )
23
+ end
24
+
25
+ sig { override.returns({ data: String }) }
26
+ def to_hash
27
+ end
17
28
  end
18
29
  end
19
30
  end