terminal-shop 1.8.0 → 2.0.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.
- checksums.yaml +4 -4
- data/README.md +14 -0
- data/lib/terminal-shop/base_client.rb +11 -10
- data/lib/terminal-shop/base_model.rb +257 -244
- data/lib/terminal-shop/base_page.rb +19 -20
- data/lib/terminal-shop/client.rb +1 -0
- data/lib/terminal-shop/models/product.rb +7 -3
- data/lib/terminal-shop/models/region.rb +7 -3
- data/lib/terminal-shop/models/subscription.rb +5 -7
- data/lib/terminal-shop/pooled_net_requester.rb +12 -1
- data/lib/terminal-shop/request_options.rb +1 -1
- data/lib/terminal-shop/util.rb +16 -7
- data/lib/terminal-shop/version.rb +1 -1
- data/lib/terminal-shop.rb +15 -0
- data/rbi/lib/terminal-shop/base_client.rbi +40 -41
- data/rbi/lib/terminal-shop/base_model.rbi +139 -116
- data/rbi/lib/terminal-shop/base_page.rbi +0 -2
- data/rbi/lib/terminal-shop/client.rbi +18 -30
- data/rbi/lib/terminal-shop/errors.rbi +7 -42
- data/rbi/lib/terminal-shop/models/address.rbi +15 -51
- data/rbi/lib/terminal-shop/models/address_create_params.rbi +15 -46
- data/rbi/lib/terminal-shop/models/address_create_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/address_delete_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/address_delete_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/address_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/address_get_response.rbi +7 -6
- data/rbi/lib/terminal-shop/models/address_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/address_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/app.rbi +4 -24
- data/rbi/lib/terminal-shop/models/app_create_params.rbi +3 -13
- data/rbi/lib/terminal-shop/models/app_create_response.rbi +8 -20
- data/rbi/lib/terminal-shop/models/app_delete_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/app_delete_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/app_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/app_get_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/app_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/app_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/card.rbi +14 -36
- data/rbi/lib/terminal-shop/models/card_collect_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/card_collect_response.rbi +7 -14
- data/rbi/lib/terminal-shop/models/card_create_params.rbi +2 -7
- data/rbi/lib/terminal-shop/models/card_create_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/card_delete_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/card_delete_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/card_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/card_get_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/card_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/card_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/cart.rbi +34 -88
- data/rbi/lib/terminal-shop/models/cart_clear_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/cart_clear_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/cart_convert_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/cart_convert_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/cart_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/cart_get_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/cart_set_address_params.rbi +2 -7
- data/rbi/lib/terminal-shop/models/cart_set_address_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/cart_set_card_params.rbi +2 -7
- data/rbi/lib/terminal-shop/models/cart_set_card_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/cart_set_item_params.rbi +3 -13
- data/rbi/lib/terminal-shop/models/cart_set_item_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/email_create_params.rbi +2 -7
- data/rbi/lib/terminal-shop/models/email_create_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/order.rbi +52 -139
- data/rbi/lib/terminal-shop/models/order_create_params.rbi +4 -19
- data/rbi/lib/terminal-shop/models/order_create_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/order_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/order_get_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/order_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/order_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/product.rbi +43 -77
- data/rbi/lib/terminal-shop/models/product_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/product_get_response.rbi +7 -6
- data/rbi/lib/terminal-shop/models/product_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/product_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/product_variant.rbi +3 -18
- data/rbi/lib/terminal-shop/models/profile.rbi +12 -36
- data/rbi/lib/terminal-shop/models/profile_me_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/profile_me_response.rbi +7 -6
- data/rbi/lib/terminal-shop/models/profile_update_params.rbi +3 -13
- data/rbi/lib/terminal-shop/models/profile_update_response.rbi +7 -6
- data/rbi/lib/terminal-shop/models/region.rbi +10 -5
- data/rbi/lib/terminal-shop/models/subscription.rbi +28 -75
- data/rbi/lib/terminal-shop/models/subscription_create_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/subscription_create_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/subscription_delete_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/subscription_delete_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/subscription_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/subscription_get_response.rbi +7 -6
- data/rbi/lib/terminal-shop/models/subscription_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/subscription_list_response.rbi +3 -8
- data/rbi/lib/terminal-shop/models/token.rbi +3 -18
- data/rbi/lib/terminal-shop/models/token_create_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/token_create_response.rbi +8 -20
- data/rbi/lib/terminal-shop/models/token_delete_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/token_delete_response.rbi +1 -6
- data/rbi/lib/terminal-shop/models/token_get_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/token_get_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/token_list_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/token_list_response.rbi +4 -6
- data/rbi/lib/terminal-shop/models/view_init_params.rbi +1 -1
- data/rbi/lib/terminal-shop/models/view_init_response.rbi +32 -81
- data/rbi/lib/terminal-shop/pooled_net_requester.rbi +14 -3
- data/rbi/lib/terminal-shop/request_options.rbi +11 -55
- data/rbi/lib/terminal-shop/resources/address.rbi +4 -4
- data/rbi/lib/terminal-shop/resources/app.rbi +4 -4
- data/rbi/lib/terminal-shop/resources/card.rbi +5 -5
- data/rbi/lib/terminal-shop/resources/cart.rbi +6 -6
- data/rbi/lib/terminal-shop/resources/email.rbi +1 -1
- data/rbi/lib/terminal-shop/resources/order.rbi +3 -3
- data/rbi/lib/terminal-shop/resources/product.rbi +2 -2
- data/rbi/lib/terminal-shop/resources/profile.rbi +2 -2
- data/rbi/lib/terminal-shop/resources/subscription.rbi +5 -4
- data/rbi/lib/terminal-shop/resources/token.rbi +4 -4
- data/rbi/lib/terminal-shop/resources/view.rbi +1 -1
- data/rbi/lib/terminal-shop/util.rbi +24 -13
- data/rbi/lib/terminal-shop/version.rbi +1 -1
- data/sig/terminal-shop/base_client.rbs +14 -14
- data/sig/terminal-shop/base_model.rbs +34 -18
- data/sig/terminal-shop/client.rbs +8 -8
- data/sig/terminal-shop/errors.rbs +17 -17
- data/sig/terminal-shop/models/address.rbs +11 -15
- data/sig/terminal-shop/models/address_create_params.rbs +11 -16
- data/sig/terminal-shop/models/address_create_response.rbs +1 -6
- data/sig/terminal-shop/models/address_delete_params.rbs +1 -6
- data/sig/terminal-shop/models/address_delete_response.rbs +1 -6
- data/sig/terminal-shop/models/address_get_params.rbs +1 -6
- data/sig/terminal-shop/models/address_get_response.rbs +1 -6
- data/sig/terminal-shop/models/address_list_params.rbs +1 -6
- data/sig/terminal-shop/models/address_list_response.rbs +1 -6
- data/sig/terminal-shop/models/app.rbs +6 -5
- data/sig/terminal-shop/models/app_create_params.rbs +5 -10
- data/sig/terminal-shop/models/app_create_response.rbs +4 -12
- data/sig/terminal-shop/models/app_delete_params.rbs +1 -6
- data/sig/terminal-shop/models/app_delete_response.rbs +1 -6
- data/sig/terminal-shop/models/app_get_params.rbs +1 -5
- data/sig/terminal-shop/models/app_get_response.rbs +1 -5
- data/sig/terminal-shop/models/app_list_params.rbs +1 -5
- data/sig/terminal-shop/models/app_list_response.rbs +1 -6
- data/sig/terminal-shop/models/card.rbs +7 -16
- data/sig/terminal-shop/models/card_collect_params.rbs +1 -6
- data/sig/terminal-shop/models/card_collect_response.rbs +4 -12
- data/sig/terminal-shop/models/card_create_params.rbs +4 -6
- data/sig/terminal-shop/models/card_create_response.rbs +1 -6
- data/sig/terminal-shop/models/card_delete_params.rbs +1 -6
- data/sig/terminal-shop/models/card_delete_response.rbs +1 -6
- data/sig/terminal-shop/models/card_get_params.rbs +1 -5
- data/sig/terminal-shop/models/card_get_response.rbs +1 -6
- data/sig/terminal-shop/models/card_list_params.rbs +1 -5
- data/sig/terminal-shop/models/card_list_response.rbs +1 -6
- data/sig/terminal-shop/models/cart.rbs +20 -34
- data/sig/terminal-shop/models/cart_clear_params.rbs +1 -6
- data/sig/terminal-shop/models/cart_clear_response.rbs +1 -6
- data/sig/terminal-shop/models/cart_convert_params.rbs +1 -6
- data/sig/terminal-shop/models/cart_convert_response.rbs +1 -6
- data/sig/terminal-shop/models/cart_get_params.rbs +1 -5
- data/sig/terminal-shop/models/cart_get_response.rbs +1 -6
- data/sig/terminal-shop/models/cart_set_address_params.rbs +4 -9
- data/sig/terminal-shop/models/cart_set_address_response.rbs +1 -6
- data/sig/terminal-shop/models/cart_set_card_params.rbs +4 -6
- data/sig/terminal-shop/models/cart_set_card_response.rbs +1 -6
- data/sig/terminal-shop/models/cart_set_item_params.rbs +5 -10
- data/sig/terminal-shop/models/cart_set_item_response.rbs +1 -6
- data/sig/terminal-shop/models/email_create_params.rbs +4 -6
- data/sig/terminal-shop/models/email_create_response.rbs +1 -6
- data/sig/terminal-shop/models/order.rbs +31 -50
- data/sig/terminal-shop/models/order_create_params.rbs +6 -11
- data/sig/terminal-shop/models/order_create_response.rbs +1 -6
- data/sig/terminal-shop/models/order_get_params.rbs +1 -5
- data/sig/terminal-shop/models/order_get_response.rbs +1 -6
- data/sig/terminal-shop/models/order_list_params.rbs +1 -6
- data/sig/terminal-shop/models/order_list_response.rbs +1 -6
- data/sig/terminal-shop/models/product.rbs +20 -27
- data/sig/terminal-shop/models/product_get_params.rbs +1 -6
- data/sig/terminal-shop/models/product_get_response.rbs +1 -6
- data/sig/terminal-shop/models/product_list_params.rbs +1 -6
- data/sig/terminal-shop/models/product_list_response.rbs +1 -6
- data/sig/terminal-shop/models/product_variant.rbs +1 -5
- data/sig/terminal-shop/models/profile.rbs +8 -17
- data/sig/terminal-shop/models/profile_me_params.rbs +1 -6
- data/sig/terminal-shop/models/profile_me_response.rbs +1 -6
- data/sig/terminal-shop/models/profile_update_params.rbs +5 -10
- data/sig/terminal-shop/models/profile_update_response.rbs +1 -6
- data/sig/terminal-shop/models/region.rbs +4 -2
- data/sig/terminal-shop/models/subscription.rbs +15 -27
- data/sig/terminal-shop/models/subscription_create_params.rbs +1 -6
- data/sig/terminal-shop/models/subscription_create_response.rbs +1 -6
- data/sig/terminal-shop/models/subscription_delete_params.rbs +1 -6
- data/sig/terminal-shop/models/subscription_delete_response.rbs +1 -6
- data/sig/terminal-shop/models/subscription_get_params.rbs +1 -6
- data/sig/terminal-shop/models/subscription_get_response.rbs +1 -6
- data/sig/terminal-shop/models/subscription_list_params.rbs +1 -6
- data/sig/terminal-shop/models/subscription_list_response.rbs +3 -6
- data/sig/terminal-shop/models/token.rbs +1 -5
- data/sig/terminal-shop/models/token_create_params.rbs +1 -6
- data/sig/terminal-shop/models/token_create_response.rbs +4 -12
- data/sig/terminal-shop/models/token_delete_params.rbs +1 -6
- data/sig/terminal-shop/models/token_delete_response.rbs +1 -6
- data/sig/terminal-shop/models/token_get_params.rbs +1 -5
- data/sig/terminal-shop/models/token_get_response.rbs +1 -6
- data/sig/terminal-shop/models/token_list_params.rbs +1 -6
- data/sig/terminal-shop/models/token_list_response.rbs +1 -6
- data/sig/terminal-shop/models/view_init_params.rbs +1 -5
- data/sig/terminal-shop/models/view_init_response.rbs +15 -23
- data/sig/terminal-shop/pooled_net_requester.rbs +3 -1
- data/sig/terminal-shop/request_options.rbs +2 -2
- data/sig/terminal-shop/resources/address.rbs +22 -41
- data/sig/terminal-shop/resources/app.rbs +16 -34
- data/sig/terminal-shop/resources/card.rbs +18 -40
- data/sig/terminal-shop/resources/cart.rbs +22 -47
- data/sig/terminal-shop/resources/email.rbs +4 -8
- data/sig/terminal-shop/resources/order.rbs +13 -26
- data/sig/terminal-shop/resources/product.rbs +7 -16
- data/sig/terminal-shop/resources/profile.rbs +8 -16
- data/sig/terminal-shop/resources/subscription.rbs +21 -43
- data/sig/terminal-shop/resources/token.rbs +14 -32
- data/sig/terminal-shop/resources/view.rbs +3 -7
- data/sig/terminal-shop/util.rbs +5 -5
- data/sig/terminal-shop/version.rbs +1 -1
- metadata +2 -2
@@ -170,132 +170,116 @@ module TerminalShop
|
|
170
170
|
#
|
171
171
|
# We can therefore convert string values to Symbols, but can't convert other
|
172
172
|
# values safely.
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
abstract!
|
177
|
-
|
178
|
-
Value = type_template(:out)
|
173
|
+
module Enum
|
174
|
+
include TerminalShop::Converter
|
179
175
|
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
end
|
176
|
+
# All of the valid Symbol values for this enum.
|
177
|
+
sig { overridable.returns(T::Array[T.any(NilClass, T::Boolean, Integer, Float, Symbol)]) }
|
178
|
+
def values
|
179
|
+
end
|
185
180
|
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
end
|
181
|
+
# @api private
|
182
|
+
#
|
183
|
+
# Guard against thread safety issues by instantiating `@values`.
|
184
|
+
sig { void }
|
185
|
+
private def finalize!
|
192
186
|
end
|
193
187
|
|
194
188
|
sig { params(other: T.anything).returns(T::Boolean) }
|
195
|
-
def
|
189
|
+
def ===(other)
|
196
190
|
end
|
197
191
|
|
198
192
|
sig { params(other: T.anything).returns(T::Boolean) }
|
199
|
-
def
|
193
|
+
def ==(other)
|
200
194
|
end
|
201
195
|
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
end
|
196
|
+
# @api private
|
197
|
+
sig { override.params(value: T.any(String, Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
|
198
|
+
def coerce(value)
|
199
|
+
end
|
207
200
|
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
201
|
+
# @api private
|
202
|
+
sig { override.params(value: T.any(Symbol, T.anything)).returns(T.any(Symbol, T.anything)) }
|
203
|
+
def dump(value)
|
204
|
+
end
|
212
205
|
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
end
|
206
|
+
# @api private
|
207
|
+
sig do
|
208
|
+
override
|
209
|
+
.params(value: T.anything)
|
210
|
+
.returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
|
211
|
+
end
|
212
|
+
def try_strict_coerce(value)
|
221
213
|
end
|
222
214
|
end
|
223
215
|
|
224
216
|
# @api private
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
abstract!
|
229
|
-
|
230
|
-
Variants = type_template(:out)
|
217
|
+
module Union
|
218
|
+
include TerminalShop::Converter
|
231
219
|
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
end
|
220
|
+
# @api private
|
221
|
+
#
|
222
|
+
# All of the specified variant info for this union.
|
223
|
+
sig { returns(T::Array[[T.nilable(Symbol), T.proc.returns(TerminalShop::Converter::Input)]]) }
|
224
|
+
private def known_variants
|
225
|
+
end
|
239
226
|
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
227
|
+
# @api private
|
228
|
+
sig { returns(T::Array[[T.nilable(Symbol), T.anything]]) }
|
229
|
+
protected def derefed_variants
|
230
|
+
end
|
244
231
|
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
232
|
+
# All of the specified variants for this union.
|
233
|
+
sig { overridable.returns(T::Array[T.anything]) }
|
234
|
+
def variants
|
235
|
+
end
|
249
236
|
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
237
|
+
# @api private
|
238
|
+
sig { params(property: Symbol).void }
|
239
|
+
private def discriminator(property)
|
240
|
+
end
|
254
241
|
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
242
|
+
# @api private
|
243
|
+
sig do
|
244
|
+
params(
|
245
|
+
key: T.any(Symbol, TerminalShop::Util::AnyHash, T.proc.returns(T.anything), T.anything),
|
246
|
+
spec: T.any(TerminalShop::Util::AnyHash, T.proc.returns(T.anything), T.anything)
|
247
|
+
)
|
248
|
+
.void
|
249
|
+
end
|
250
|
+
private def variant(key, spec = nil)
|
251
|
+
end
|
265
252
|
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
end
|
253
|
+
# @api private
|
254
|
+
sig { params(value: T.anything).returns(T.nilable(T.anything)) }
|
255
|
+
private def resolve_variant(value)
|
270
256
|
end
|
271
257
|
|
272
258
|
sig { params(other: T.anything).returns(T::Boolean) }
|
273
|
-
def
|
259
|
+
def ===(other)
|
274
260
|
end
|
275
261
|
|
276
262
|
sig { params(other: T.anything).returns(T::Boolean) }
|
277
|
-
def
|
263
|
+
def ==(other)
|
278
264
|
end
|
279
265
|
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
end
|
266
|
+
# @api private
|
267
|
+
sig { override.params(value: T.anything).returns(T.anything) }
|
268
|
+
def coerce(value)
|
269
|
+
end
|
285
270
|
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
271
|
+
# @api private
|
272
|
+
sig { override.params(value: T.anything).returns(T.anything) }
|
273
|
+
def dump(value)
|
274
|
+
end
|
290
275
|
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
end
|
276
|
+
# @api private
|
277
|
+
sig do
|
278
|
+
override
|
279
|
+
.params(value: T.anything)
|
280
|
+
.returns(T.any([T::Boolean, T.anything, NilClass], [T::Boolean, T::Boolean, Integer]))
|
281
|
+
end
|
282
|
+
def try_strict_coerce(value)
|
299
283
|
end
|
300
284
|
end
|
301
285
|
|
@@ -308,7 +292,19 @@ module TerminalShop
|
|
308
292
|
abstract!
|
309
293
|
final!
|
310
294
|
|
311
|
-
|
295
|
+
sig(:final) do
|
296
|
+
params(
|
297
|
+
type_info: T.any(
|
298
|
+
TerminalShop::Util::AnyHash,
|
299
|
+
T.proc.returns(TerminalShop::Converter::Input),
|
300
|
+
TerminalShop::Converter::Input
|
301
|
+
),
|
302
|
+
spec: TerminalShop::Util::AnyHash
|
303
|
+
)
|
304
|
+
.returns(T.attached_class)
|
305
|
+
end
|
306
|
+
def self.[](type_info, spec = {})
|
307
|
+
end
|
312
308
|
|
313
309
|
sig(:final) { params(other: T.anything).returns(T::Boolean) }
|
314
310
|
def ===(other)
|
@@ -346,7 +342,7 @@ module TerminalShop
|
|
346
342
|
end
|
347
343
|
|
348
344
|
# @api private
|
349
|
-
sig(:final) { returns(
|
345
|
+
sig(:final) { returns(T.anything) }
|
350
346
|
protected def item_type
|
351
347
|
end
|
352
348
|
|
@@ -354,15 +350,15 @@ module TerminalShop
|
|
354
350
|
sig(:final) do
|
355
351
|
params(
|
356
352
|
type_info: T.any(
|
357
|
-
|
353
|
+
TerminalShop::Util::AnyHash,
|
358
354
|
T.proc.returns(TerminalShop::Converter::Input),
|
359
355
|
TerminalShop::Converter::Input
|
360
356
|
),
|
361
|
-
spec:
|
357
|
+
spec: TerminalShop::Util::AnyHash
|
362
358
|
)
|
363
|
-
.
|
359
|
+
.void
|
364
360
|
end
|
365
|
-
def
|
361
|
+
def initialize(type_info, spec = {})
|
366
362
|
end
|
367
363
|
end
|
368
364
|
|
@@ -375,7 +371,19 @@ module TerminalShop
|
|
375
371
|
abstract!
|
376
372
|
final!
|
377
373
|
|
378
|
-
|
374
|
+
sig(:final) do
|
375
|
+
params(
|
376
|
+
type_info: T.any(
|
377
|
+
TerminalShop::Util::AnyHash,
|
378
|
+
T.proc.returns(TerminalShop::Converter::Input),
|
379
|
+
TerminalShop::Converter::Input
|
380
|
+
),
|
381
|
+
spec: TerminalShop::Util::AnyHash
|
382
|
+
)
|
383
|
+
.returns(T.attached_class)
|
384
|
+
end
|
385
|
+
def self.[](type_info, spec = {})
|
386
|
+
end
|
379
387
|
|
380
388
|
sig(:final) { params(other: T.anything).returns(T::Boolean) }
|
381
389
|
def ===(other)
|
@@ -389,7 +397,7 @@ module TerminalShop
|
|
389
397
|
sig(:final) do
|
390
398
|
override
|
391
399
|
.params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
|
392
|
-
.returns(T.any(
|
400
|
+
.returns(T.any(TerminalShop::Util::AnyHash, T.anything))
|
393
401
|
end
|
394
402
|
def coerce(value)
|
395
403
|
end
|
@@ -398,7 +406,7 @@ module TerminalShop
|
|
398
406
|
sig(:final) do
|
399
407
|
override
|
400
408
|
.params(value: T.any(T::Hash[T.anything, T.anything], T.anything))
|
401
|
-
.returns(T.any(
|
409
|
+
.returns(T.any(TerminalShop::Util::AnyHash, T.anything))
|
402
410
|
end
|
403
411
|
def dump(value)
|
404
412
|
end
|
@@ -413,7 +421,7 @@ module TerminalShop
|
|
413
421
|
end
|
414
422
|
|
415
423
|
# @api private
|
416
|
-
sig(:final) { returns(
|
424
|
+
sig(:final) { returns(T.anything) }
|
417
425
|
protected def item_type
|
418
426
|
end
|
419
427
|
|
@@ -421,15 +429,15 @@ module TerminalShop
|
|
421
429
|
sig(:final) do
|
422
430
|
params(
|
423
431
|
type_info: T.any(
|
424
|
-
|
432
|
+
TerminalShop::Util::AnyHash,
|
425
433
|
T.proc.returns(TerminalShop::Converter::Input),
|
426
434
|
TerminalShop::Converter::Input
|
427
435
|
),
|
428
|
-
spec:
|
436
|
+
spec: TerminalShop::Util::AnyHash
|
429
437
|
)
|
430
|
-
.
|
438
|
+
.void
|
431
439
|
end
|
432
|
-
def
|
440
|
+
def initialize(type_info, spec = {})
|
433
441
|
end
|
434
442
|
end
|
435
443
|
|
@@ -459,6 +467,11 @@ module TerminalShop
|
|
459
467
|
def known_fields
|
460
468
|
end
|
461
469
|
|
470
|
+
# @api private
|
471
|
+
sig { returns(T::Hash[Symbol, Symbol]) }
|
472
|
+
def reverse_map
|
473
|
+
end
|
474
|
+
|
462
475
|
# @api private
|
463
476
|
sig do
|
464
477
|
returns(
|
@@ -490,7 +503,7 @@ module TerminalShop
|
|
490
503
|
T.proc.returns(TerminalShop::Converter::Input),
|
491
504
|
TerminalShop::Converter::Input
|
492
505
|
),
|
493
|
-
spec:
|
506
|
+
spec: TerminalShop::Util::AnyHash
|
494
507
|
)
|
495
508
|
.void
|
496
509
|
end
|
@@ -502,11 +515,11 @@ module TerminalShop
|
|
502
515
|
params(
|
503
516
|
name_sym: Symbol,
|
504
517
|
type_info: T.any(
|
505
|
-
|
518
|
+
TerminalShop::Util::AnyHash,
|
506
519
|
T.proc.returns(TerminalShop::Converter::Input),
|
507
520
|
TerminalShop::Converter::Input
|
508
521
|
),
|
509
|
-
spec:
|
522
|
+
spec: TerminalShop::Util::AnyHash
|
510
523
|
)
|
511
524
|
.void
|
512
525
|
end
|
@@ -518,11 +531,11 @@ module TerminalShop
|
|
518
531
|
params(
|
519
532
|
name_sym: Symbol,
|
520
533
|
type_info: T.any(
|
521
|
-
|
534
|
+
TerminalShop::Util::AnyHash,
|
522
535
|
T.proc.returns(TerminalShop::Converter::Input),
|
523
536
|
TerminalShop::Converter::Input
|
524
537
|
),
|
525
|
-
spec:
|
538
|
+
spec: TerminalShop::Util::AnyHash
|
526
539
|
)
|
527
540
|
.void
|
528
541
|
end
|
@@ -596,13 +609,23 @@ module TerminalShop
|
|
596
609
|
#
|
597
610
|
# This method is not recursive. The returned value is shared by the object, so it
|
598
611
|
# should not be mutated.
|
599
|
-
sig { overridable.returns(
|
612
|
+
sig { overridable.returns(TerminalShop::Util::AnyHash) }
|
600
613
|
def to_h
|
601
614
|
end
|
602
615
|
|
603
|
-
|
616
|
+
# Returns a Hash of the data underlying this object. O(1)
|
617
|
+
#
|
618
|
+
# Keys are Symbols and values are the raw values from the response. The return
|
619
|
+
# value indicates which values were ever set on the object. i.e. there will be a
|
620
|
+
# key in this hash if they ever were, even if the set value was nil.
|
621
|
+
#
|
622
|
+
# This method is not recursive. The returned value is shared by the object, so it
|
623
|
+
# should not be mutated.
|
624
|
+
sig { overridable.returns(TerminalShop::Util::AnyHash) }
|
625
|
+
def to_hash
|
626
|
+
end
|
604
627
|
|
605
|
-
sig { params(keys: T.nilable(T::Array[Symbol])).returns(
|
628
|
+
sig { params(keys: T.nilable(T::Array[Symbol])).returns(TerminalShop::Util::AnyHash) }
|
606
629
|
def deconstruct_keys(keys)
|
607
630
|
end
|
608
631
|
|
@@ -10,62 +10,50 @@ module TerminalShop
|
|
10
10
|
|
11
11
|
DEFAULT_MAX_RETRY_DELAY = T.let(8.0, Float)
|
12
12
|
|
13
|
-
ENVIRONMENTS =
|
14
|
-
|
15
|
-
|
16
|
-
|
13
|
+
ENVIRONMENTS =
|
14
|
+
T.let(
|
15
|
+
{production: "https://api.terminal.shop/", dev: "https://api.dev.terminal.shop/"},
|
16
|
+
T::Hash[Symbol, String]
|
17
|
+
)
|
17
18
|
|
18
19
|
sig { returns(String) }
|
19
|
-
|
20
|
-
end
|
20
|
+
attr_reader :bearer_token
|
21
21
|
|
22
22
|
sig { returns(T.nilable(String)) }
|
23
|
-
|
24
|
-
end
|
23
|
+
attr_reader :app_id
|
25
24
|
|
26
25
|
sig { returns(TerminalShop::Resources::Product) }
|
27
|
-
|
28
|
-
end
|
26
|
+
attr_reader :product
|
29
27
|
|
30
28
|
sig { returns(TerminalShop::Resources::Profile) }
|
31
|
-
|
32
|
-
end
|
29
|
+
attr_reader :profile
|
33
30
|
|
34
31
|
sig { returns(TerminalShop::Resources::Address) }
|
35
|
-
|
36
|
-
end
|
32
|
+
attr_reader :address
|
37
33
|
|
38
34
|
sig { returns(TerminalShop::Resources::Card) }
|
39
|
-
|
40
|
-
end
|
35
|
+
attr_reader :card
|
41
36
|
|
42
37
|
sig { returns(TerminalShop::Resources::Cart) }
|
43
|
-
|
44
|
-
end
|
38
|
+
attr_reader :cart
|
45
39
|
|
46
40
|
sig { returns(TerminalShop::Resources::Order) }
|
47
|
-
|
48
|
-
end
|
41
|
+
attr_reader :order
|
49
42
|
|
50
43
|
sig { returns(TerminalShop::Resources::Subscription) }
|
51
|
-
|
52
|
-
end
|
44
|
+
attr_reader :subscription
|
53
45
|
|
54
46
|
sig { returns(TerminalShop::Resources::Token) }
|
55
|
-
|
56
|
-
end
|
47
|
+
attr_reader :token
|
57
48
|
|
58
49
|
sig { returns(TerminalShop::Resources::App) }
|
59
|
-
|
60
|
-
end
|
50
|
+
attr_reader :app
|
61
51
|
|
62
52
|
sig { returns(TerminalShop::Resources::Email) }
|
63
|
-
|
64
|
-
end
|
53
|
+
attr_reader :email
|
65
54
|
|
66
55
|
sig { returns(TerminalShop::Resources::View) }
|
67
|
-
|
68
|
-
end
|
56
|
+
attr_reader :view
|
69
57
|
|
70
58
|
# @api private
|
71
59
|
sig { override.returns(T::Hash[String, String]) }
|
@@ -3,12 +3,7 @@
|
|
3
3
|
module TerminalShop
|
4
4
|
class Error < StandardError
|
5
5
|
sig { returns(T.nilable(StandardError)) }
|
6
|
-
|
7
|
-
end
|
8
|
-
|
9
|
-
sig { params(_: T.nilable(StandardError)).returns(T.nilable(StandardError)) }
|
10
|
-
def cause=(_)
|
11
|
-
end
|
6
|
+
attr_accessor :cause
|
12
7
|
end
|
13
8
|
|
14
9
|
class ConversionError < TerminalShop::Error
|
@@ -16,28 +11,13 @@ module TerminalShop
|
|
16
11
|
|
17
12
|
class APIError < TerminalShop::Error
|
18
13
|
sig { returns(URI::Generic) }
|
19
|
-
|
20
|
-
end
|
21
|
-
|
22
|
-
sig { params(_: URI::Generic).returns(URI::Generic) }
|
23
|
-
def url=(_)
|
24
|
-
end
|
14
|
+
attr_accessor :url
|
25
15
|
|
26
16
|
sig { returns(T.nilable(Integer)) }
|
27
|
-
|
28
|
-
end
|
29
|
-
|
30
|
-
sig { params(_: T.nilable(Integer)).returns(T.nilable(Integer)) }
|
31
|
-
def status=(_)
|
32
|
-
end
|
17
|
+
attr_accessor :status
|
33
18
|
|
34
19
|
sig { returns(T.nilable(T.anything)) }
|
35
|
-
|
36
|
-
end
|
37
|
-
|
38
|
-
sig { params(_: T.nilable(T.anything)).returns(T.nilable(T.anything)) }
|
39
|
-
def body=(_)
|
40
|
-
end
|
20
|
+
attr_accessor :body
|
41
21
|
|
42
22
|
# @api private
|
43
23
|
sig do
|
@@ -57,20 +37,10 @@ module TerminalShop
|
|
57
37
|
|
58
38
|
class APIConnectionError < TerminalShop::APIError
|
59
39
|
sig { void }
|
60
|
-
|
61
|
-
end
|
62
|
-
|
63
|
-
sig { params(_: NilClass).void }
|
64
|
-
def status=(_)
|
65
|
-
end
|
40
|
+
attr_accessor :status
|
66
41
|
|
67
42
|
sig { void }
|
68
|
-
|
69
|
-
end
|
70
|
-
|
71
|
-
sig { params(_: NilClass).void }
|
72
|
-
def body=(_)
|
73
|
-
end
|
43
|
+
attr_accessor :body
|
74
44
|
|
75
45
|
# @api private
|
76
46
|
sig do
|
@@ -122,12 +92,7 @@ module TerminalShop
|
|
122
92
|
end
|
123
93
|
|
124
94
|
sig { returns(Integer) }
|
125
|
-
|
126
|
-
end
|
127
|
-
|
128
|
-
sig { params(_: Integer).returns(Integer) }
|
129
|
-
def status=(_)
|
130
|
-
end
|
95
|
+
attr_accessor :status
|
131
96
|
|
132
97
|
# @api private
|
133
98
|
sig do
|
@@ -5,84 +5,48 @@ module TerminalShop
|
|
5
5
|
class AddressAPI < TerminalShop::BaseModel
|
6
6
|
# Unique object identifier. The format and length of IDs may change over time.
|
7
7
|
sig { returns(String) }
|
8
|
-
|
9
|
-
end
|
10
|
-
|
11
|
-
sig { params(_: String).returns(String) }
|
12
|
-
def id=(_)
|
13
|
-
end
|
8
|
+
attr_accessor :id
|
14
9
|
|
15
10
|
# City of the address.
|
16
11
|
sig { returns(String) }
|
17
|
-
|
18
|
-
end
|
19
|
-
|
20
|
-
sig { params(_: String).returns(String) }
|
21
|
-
def city=(_)
|
22
|
-
end
|
12
|
+
attr_accessor :city
|
23
13
|
|
24
14
|
# ISO 3166-1 alpha-2 country code of the address.
|
25
15
|
sig { returns(String) }
|
26
|
-
|
27
|
-
end
|
28
|
-
|
29
|
-
sig { params(_: String).returns(String) }
|
30
|
-
def country=(_)
|
31
|
-
end
|
16
|
+
attr_accessor :country
|
32
17
|
|
33
18
|
# The recipient's name.
|
34
19
|
sig { returns(String) }
|
35
|
-
|
36
|
-
end
|
37
|
-
|
38
|
-
sig { params(_: String).returns(String) }
|
39
|
-
def name=(_)
|
40
|
-
end
|
20
|
+
attr_accessor :name
|
41
21
|
|
42
22
|
# Street of the address.
|
43
23
|
sig { returns(String) }
|
44
|
-
|
45
|
-
end
|
46
|
-
|
47
|
-
sig { params(_: String).returns(String) }
|
48
|
-
def street1=(_)
|
49
|
-
end
|
24
|
+
attr_accessor :street1
|
50
25
|
|
51
26
|
# Zip code of the address.
|
52
27
|
sig { returns(String) }
|
53
|
-
|
54
|
-
end
|
55
|
-
|
56
|
-
sig { params(_: String).returns(String) }
|
57
|
-
def zip=(_)
|
58
|
-
end
|
28
|
+
attr_accessor :zip
|
59
29
|
|
60
30
|
# Phone number of the recipient.
|
61
31
|
sig { returns(T.nilable(String)) }
|
62
|
-
|
63
|
-
end
|
32
|
+
attr_reader :phone
|
64
33
|
|
65
|
-
sig { params(
|
66
|
-
|
67
|
-
end
|
34
|
+
sig { params(phone: String).void }
|
35
|
+
attr_writer :phone
|
68
36
|
|
69
37
|
# Province or state of the address.
|
70
38
|
sig { returns(T.nilable(String)) }
|
71
|
-
|
72
|
-
end
|
39
|
+
attr_reader :province
|
73
40
|
|
74
|
-
sig { params(
|
75
|
-
|
76
|
-
end
|
41
|
+
sig { params(province: String).void }
|
42
|
+
attr_writer :province
|
77
43
|
|
78
44
|
# Apartment, suite, etc. of the address.
|
79
45
|
sig { returns(T.nilable(String)) }
|
80
|
-
|
81
|
-
end
|
46
|
+
attr_reader :street2
|
82
47
|
|
83
|
-
sig { params(
|
84
|
-
|
85
|
-
end
|
48
|
+
sig { params(street2: String).void }
|
49
|
+
attr_writer :street2
|
86
50
|
|
87
51
|
# Physical address associated with a Terminal shop user.
|
88
52
|
sig do
|