terminal-shop 3.6.2 → 3.8.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 (137) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +81 -53
  4. data/SECURITY.md +2 -2
  5. data/lib/terminal_shop/client.rb +4 -4
  6. data/lib/terminal_shop/errors.rb +1 -1
  7. data/lib/terminal_shop/internal/transport/base_client.rb +77 -5
  8. data/lib/terminal_shop/internal/transport/pooled_net_requester.rb +17 -1
  9. data/lib/terminal_shop/internal/type/array_of.rb +9 -1
  10. data/lib/terminal_shop/internal/type/base_model.rb +77 -30
  11. data/lib/terminal_shop/internal/type/boolean.rb +8 -0
  12. data/lib/terminal_shop/internal/type/converter.rb +18 -0
  13. data/lib/terminal_shop/internal/type/enum.rb +13 -0
  14. data/lib/terminal_shop/internal/type/file_input.rb +7 -0
  15. data/lib/terminal_shop/internal/type/hash_of.rb +9 -1
  16. data/lib/terminal_shop/internal/type/union.rb +13 -0
  17. data/lib/terminal_shop/internal/type/unknown.rb +8 -0
  18. data/lib/terminal_shop/internal/util.rb +101 -0
  19. data/lib/terminal_shop/internal.rb +9 -0
  20. data/lib/terminal_shop/models.rb +38 -0
  21. data/lib/terminal_shop/request_options.rb +4 -0
  22. data/lib/terminal_shop/version.rb +1 -1
  23. data/lib/terminal_shop.rb +2 -0
  24. data/rbi/terminal_shop/internal/transport/base_client.rbi +31 -8
  25. data/rbi/terminal_shop/internal/transport/pooled_net_requester.rbi +10 -4
  26. data/rbi/terminal_shop/internal/type/array_of.rbi +6 -0
  27. data/rbi/terminal_shop/internal/type/base_model.rbi +38 -15
  28. data/rbi/terminal_shop/internal/type/base_page.rbi +1 -1
  29. data/rbi/terminal_shop/internal/type/boolean.rbi +6 -0
  30. data/rbi/terminal_shop/internal/type/converter.rbi +2 -0
  31. data/rbi/terminal_shop/internal/type/enum.rbi +6 -0
  32. data/rbi/terminal_shop/internal/type/file_input.rbi +5 -0
  33. data/rbi/terminal_shop/internal/type/hash_of.rbi +6 -0
  34. data/rbi/terminal_shop/internal/type/union.rbi +6 -0
  35. data/rbi/terminal_shop/internal/type/unknown.rbi +6 -0
  36. data/rbi/terminal_shop/internal/util.rbi +62 -5
  37. data/rbi/terminal_shop/internal.rbi +7 -0
  38. data/rbi/terminal_shop/models/address.rbi +3 -1
  39. data/rbi/terminal_shop/models/address_create_params.rbi +6 -1
  40. data/rbi/terminal_shop/models/address_create_response.rbi +6 -1
  41. data/rbi/terminal_shop/models/address_delete_params.rbi +6 -1
  42. data/rbi/terminal_shop/models/address_delete_response.rbi +6 -1
  43. data/rbi/terminal_shop/models/address_get_params.rbi +3 -1
  44. data/rbi/terminal_shop/models/address_get_response.rbi +6 -1
  45. data/rbi/terminal_shop/models/address_list_params.rbi +6 -1
  46. data/rbi/terminal_shop/models/address_list_response.rbi +6 -1
  47. data/rbi/terminal_shop/models/app.rbi +3 -1
  48. data/rbi/terminal_shop/models/app_create_params.rbi +3 -1
  49. data/rbi/terminal_shop/models/app_create_response.rbi +12 -2
  50. data/rbi/terminal_shop/models/app_delete_params.rbi +3 -1
  51. data/rbi/terminal_shop/models/app_delete_response.rbi +6 -1
  52. data/rbi/terminal_shop/models/app_get_params.rbi +3 -1
  53. data/rbi/terminal_shop/models/app_get_response.rbi +6 -1
  54. data/rbi/terminal_shop/models/app_list_params.rbi +3 -1
  55. data/rbi/terminal_shop/models/app_list_response.rbi +6 -1
  56. data/rbi/terminal_shop/models/card.rbi +9 -2
  57. data/rbi/terminal_shop/models/card_collect_params.rbi +6 -1
  58. data/rbi/terminal_shop/models/card_collect_response.rbi +12 -2
  59. data/rbi/terminal_shop/models/card_create_params.rbi +3 -1
  60. data/rbi/terminal_shop/models/card_create_response.rbi +6 -1
  61. data/rbi/terminal_shop/models/card_delete_params.rbi +3 -1
  62. data/rbi/terminal_shop/models/card_delete_response.rbi +6 -1
  63. data/rbi/terminal_shop/models/card_get_params.rbi +3 -1
  64. data/rbi/terminal_shop/models/card_get_response.rbi +6 -1
  65. data/rbi/terminal_shop/models/card_list_params.rbi +3 -1
  66. data/rbi/terminal_shop/models/card_list_response.rbi +6 -1
  67. data/rbi/terminal_shop/models/cart.rbi +18 -4
  68. data/rbi/terminal_shop/models/cart_clear_params.rbi +3 -1
  69. data/rbi/terminal_shop/models/cart_clear_response.rbi +6 -1
  70. data/rbi/terminal_shop/models/cart_convert_params.rbi +6 -1
  71. data/rbi/terminal_shop/models/cart_convert_response.rbi +6 -1
  72. data/rbi/terminal_shop/models/cart_get_params.rbi +3 -1
  73. data/rbi/terminal_shop/models/cart_get_response.rbi +6 -1
  74. data/rbi/terminal_shop/models/cart_set_address_params.rbi +6 -1
  75. data/rbi/terminal_shop/models/cart_set_address_response.rbi +6 -1
  76. data/rbi/terminal_shop/models/cart_set_card_params.rbi +6 -1
  77. data/rbi/terminal_shop/models/cart_set_card_response.rbi +6 -1
  78. data/rbi/terminal_shop/models/cart_set_item_params.rbi +6 -1
  79. data/rbi/terminal_shop/models/cart_set_item_response.rbi +6 -1
  80. data/rbi/terminal_shop/models/email_create_params.rbi +6 -1
  81. data/rbi/terminal_shop/models/email_create_response.rbi +6 -1
  82. data/rbi/terminal_shop/models/order.rbi +24 -5
  83. data/rbi/terminal_shop/models/order_create_params.rbi +6 -1
  84. data/rbi/terminal_shop/models/order_create_response.rbi +6 -1
  85. data/rbi/terminal_shop/models/order_get_params.rbi +3 -1
  86. data/rbi/terminal_shop/models/order_get_response.rbi +6 -1
  87. data/rbi/terminal_shop/models/order_list_params.rbi +3 -1
  88. data/rbi/terminal_shop/models/order_list_response.rbi +6 -1
  89. data/rbi/terminal_shop/models/product.rbi +9 -2
  90. data/rbi/terminal_shop/models/product_get_params.rbi +3 -1
  91. data/rbi/terminal_shop/models/product_get_response.rbi +6 -1
  92. data/rbi/terminal_shop/models/product_list_params.rbi +6 -1
  93. data/rbi/terminal_shop/models/product_list_response.rbi +6 -1
  94. data/rbi/terminal_shop/models/product_variant.rbi +9 -2
  95. data/rbi/terminal_shop/models/profile.rbi +9 -2
  96. data/rbi/terminal_shop/models/profile_me_params.rbi +3 -1
  97. data/rbi/terminal_shop/models/profile_me_response.rbi +6 -1
  98. data/rbi/terminal_shop/models/profile_update_params.rbi +6 -1
  99. data/rbi/terminal_shop/models/profile_update_response.rbi +6 -1
  100. data/rbi/terminal_shop/models/subscription.rbi +17 -16
  101. data/rbi/terminal_shop/models/subscription_create_params.rbi +6 -1
  102. data/rbi/terminal_shop/models/subscription_create_response.rbi +6 -1
  103. data/rbi/terminal_shop/models/subscription_delete_params.rbi +6 -1
  104. data/rbi/terminal_shop/models/subscription_delete_response.rbi +6 -1
  105. data/rbi/terminal_shop/models/subscription_get_params.rbi +6 -1
  106. data/rbi/terminal_shop/models/subscription_get_response.rbi +6 -1
  107. data/rbi/terminal_shop/models/subscription_list_params.rbi +6 -1
  108. data/rbi/terminal_shop/models/subscription_list_response.rbi +6 -1
  109. data/rbi/terminal_shop/models/subscription_update_params.rbi +18 -3
  110. data/rbi/terminal_shop/models/subscription_update_response.rbi +6 -1
  111. data/rbi/terminal_shop/models/token.rbi +3 -1
  112. data/rbi/terminal_shop/models/token_create_params.rbi +6 -1
  113. data/rbi/terminal_shop/models/token_create_response.rbi +12 -2
  114. data/rbi/terminal_shop/models/token_delete_params.rbi +6 -1
  115. data/rbi/terminal_shop/models/token_delete_response.rbi +6 -1
  116. data/rbi/terminal_shop/models/token_get_params.rbi +3 -1
  117. data/rbi/terminal_shop/models/token_get_response.rbi +6 -1
  118. data/rbi/terminal_shop/models/token_list_params.rbi +3 -1
  119. data/rbi/terminal_shop/models/token_list_response.rbi +6 -1
  120. data/rbi/terminal_shop/models/view_init_params.rbi +3 -1
  121. data/rbi/terminal_shop/models/view_init_response.rbi +12 -2
  122. data/rbi/terminal_shop/request_options.rbi +3 -1
  123. data/sig/terminal_shop/internal/transport/base_client.rbs +16 -1
  124. data/sig/terminal_shop/internal/transport/pooled_net_requester.rbs +4 -0
  125. data/sig/terminal_shop/internal/type/array_of.rbs +3 -0
  126. data/sig/terminal_shop/internal/type/base_model.rbs +13 -5
  127. data/sig/terminal_shop/internal/type/base_page.rbs +1 -1
  128. data/sig/terminal_shop/internal/type/boolean.rbs +3 -0
  129. data/sig/terminal_shop/internal/type/converter.rbs +2 -0
  130. data/sig/terminal_shop/internal/type/enum.rbs +3 -0
  131. data/sig/terminal_shop/internal/type/file_input.rbs +2 -0
  132. data/sig/terminal_shop/internal/type/hash_of.rbs +3 -0
  133. data/sig/terminal_shop/internal/type/union.rbs +3 -0
  134. data/sig/terminal_shop/internal/type/unknown.rbs +3 -0
  135. data/sig/terminal_shop/internal/util.rbs +25 -0
  136. data/sig/terminal_shop/internal.rbs +4 -0
  137. metadata +2 -2
@@ -3,10 +3,13 @@ module TerminalShop
3
3
  module Type
4
4
  class BaseModel
5
5
  extend TerminalShop::Internal::Type::Converter
6
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  type known_field =
8
9
  { mode: (:coerce | :dump)?, required: bool, nilable: bool }
9
10
 
11
+ def self.inherited: (self child) -> void
12
+
10
13
  def self.known_fields: -> ::Hash[Symbol, (TerminalShop::Internal::Type::BaseModel::known_field
11
14
  & { type_fn: (^-> TerminalShop::Internal::Type::Converter::input) })]
12
15
 
@@ -67,23 +70,28 @@ module TerminalShop
67
70
  state: TerminalShop::Internal::Type::Converter::dump_state
68
71
  ) -> (::Hash[top, top] | top)
69
72
 
73
+ def self.to_sorbet_type: -> top
74
+
75
+ def self.recursively_to_h: (
76
+ TerminalShop::Internal::Type::BaseModel model,
77
+ convert: bool
78
+ ) -> ::Hash[Symbol, top]
79
+
70
80
  def []: (Symbol key) -> top?
71
81
 
72
82
  def to_h: -> ::Hash[Symbol, top]
73
83
 
74
84
  alias to_hash to_h
75
85
 
76
- def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
86
+ def deep_to_h: -> ::Hash[Symbol, top]
77
87
 
78
- def self.walk: (
79
- TerminalShop::Internal::Type::BaseModel model
80
- ) -> ::Hash[Symbol, top]
88
+ def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
81
89
 
82
90
  def to_json: (*top a) -> String
83
91
 
84
92
  def to_yaml: (*top a) -> String
85
93
 
86
- def initialize: (?::Hash[Symbol, top] | self data) -> void
94
+ def initialize: (?::Hash[Symbol, top] | instance data) -> void
87
95
 
88
96
  def self.inspect: (?depth: Integer) -> String
89
97
 
@@ -4,7 +4,7 @@ module TerminalShop
4
4
  module BasePage[Elem]
5
5
  def next_page?: -> bool
6
6
 
7
- def next_page: -> self
7
+ def next_page: -> instance
8
8
 
9
9
  def auto_paging_each: { (Elem arg0) -> void } -> void
10
10
 
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  class Boolean
5
5
  extend TerminalShop::Internal::Type::Converter
6
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.===: (top other) -> bool
8
9
 
@@ -17,6 +18,8 @@ module TerminalShop
17
18
  bool | top value,
18
19
  state: TerminalShop::Internal::Type::Converter::dump_state
19
20
  ) -> (bool | top)
21
+
22
+ def self.to_sorbet_type: -> top
20
23
  end
21
24
  end
22
25
  end
@@ -2,6 +2,8 @@ module TerminalShop
2
2
  module Internal
3
3
  module Type
4
4
  module Converter
5
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type input = TerminalShop::Internal::Type::Converter | Class
6
8
 
7
9
  type coerce_state =
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  module Enum
5
5
  include TerminalShop::Internal::Type::Converter
6
+ include TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)]
8
9
 
@@ -22,6 +23,8 @@ module TerminalShop
22
23
  state: TerminalShop::Internal::Type::Converter::dump_state
23
24
  ) -> (Symbol | top)
24
25
 
26
+ def to_sorbet_type: -> top
27
+
25
28
  def inspect: (?depth: Integer) -> String
26
29
  end
27
30
  end
@@ -17,6 +17,8 @@ module TerminalShop
17
17
  Pathname | StringIO | IO | String | top value,
18
18
  state: TerminalShop::Internal::Type::Converter::dump_state
19
19
  ) -> (Pathname | StringIO | IO | String | top)
20
+
21
+ def self.to_sorbet_type: -> top
20
22
  end
21
23
  end
22
24
  end
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  class HashOf[Elem]
5
5
  include TerminalShop::Internal::Type::Converter
6
+ include TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.[]: (
8
9
  ::Hash[Symbol, top]
@@ -27,6 +28,8 @@ module TerminalShop
27
28
  state: TerminalShop::Internal::Type::Converter::dump_state
28
29
  ) -> (::Hash[Symbol, top] | top)
29
30
 
31
+ def to_sorbet_type: -> top
32
+
30
33
  def item_type: -> Elem
31
34
 
32
35
  def nilable?: -> bool
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  module Union
5
5
  include TerminalShop::Internal::Type::Converter
6
+ include TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  private def self.known_variants: -> ::Array[[Symbol?, (^-> TerminalShop::Internal::Type::Converter::input)]]
8
9
 
@@ -42,6 +43,8 @@ module TerminalShop
42
43
  state: TerminalShop::Internal::Type::Converter::dump_state
43
44
  ) -> top
44
45
 
46
+ def to_sorbet_type: -> top
47
+
45
48
  def inspect: (?depth: Integer) -> String
46
49
  end
47
50
  end
@@ -3,6 +3,7 @@ module TerminalShop
3
3
  module Type
4
4
  class Unknown
5
5
  extend TerminalShop::Internal::Type::Converter
6
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.===: (top other) -> bool
8
9
 
@@ -17,6 +18,8 @@ module TerminalShop
17
18
  top value,
18
19
  state: TerminalShop::Internal::Type::Converter::dump_state
19
20
  ) -> top
21
+
22
+ def self.to_sorbet_type: -> top
20
23
  end
21
24
  end
22
25
  end
@@ -1,8 +1,14 @@
1
1
  module TerminalShop
2
2
  module Internal
3
3
  module Util
4
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
5
+
4
6
  def self?.monotonic_secs: -> Float
5
7
 
8
+ def self?.walk_namespaces: (
9
+ Module | Class ns
10
+ ) -> Enumerable[(Module | Class)]
11
+
6
12
  def self?.arch: -> String
7
13
 
8
14
  def self?.os: -> String
@@ -155,6 +161,25 @@ module TerminalShop
155
161
  def self?.decode_sse: (
156
162
  Enumerable[String] lines
157
163
  ) -> Enumerable[TerminalShop::Internal::Util::server_sent_event]
164
+
165
+ module SorbetRuntimeSupport
166
+ class MissingSorbetRuntimeError < ::RuntimeError
167
+ end
168
+
169
+ private def sorbet_runtime_constants: -> ::Hash[Symbol, top]
170
+
171
+ def const_missing: (Symbol name) -> void
172
+
173
+ def sorbet_constant_defined?: (Symbol name) -> bool
174
+
175
+ def define_sorbet_constant!: (Symbol name) { -> top } -> void
176
+
177
+ def to_sorbet_type: -> top
178
+
179
+ def self.to_sorbet_type: (
180
+ TerminalShop::Internal::Util::SorbetRuntimeSupport | top `type`
181
+ ) -> top
182
+ end
158
183
  end
159
184
  end
160
185
  end
@@ -1,5 +1,9 @@
1
1
  module TerminalShop
2
2
  module Internal
3
+ extend TerminalShop::Internal::Util::SorbetRuntimeSupport
4
+
5
+ type file_input = Pathname | StringIO | IO | String | TerminalShop::FilePart
6
+
3
7
  OMIT: Object
4
8
  end
5
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terminal-shop
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.2
4
+ version: 3.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Terminal
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-09 00:00:00.000000000 Z
11
+ date: 2025-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool