flowcommerce 0.2.68 → 0.2.69
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/flow_commerce/flow_api_v0_client.rb +1009 -154
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b40c8f05ec4b3c01d2194fe74b1801e5f09d3ff4
|
4
|
+
data.tar.gz: c8f1c613517ef693ecc515d3e2e090fe6230b2d3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1664c3d883587e8bfae89868b0ccabbccd466d72513131db9eec4892a26381303fcc4ac96db5450076c98ff5a7feb4119c107b7b6b63927e96756228a8837875
|
7
|
+
data.tar.gz: 10a5cc6a52504fc72681d89946166758e78e59af01820a8d1f0a57a828034fabf6f83b6c3cdde4030d6a36bb7a49b342cebedbb4a8b6cd2bbaa65849cd7284fb
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# Generated by API Builder - https://www.apibuilder.io
|
2
2
|
# Service version: 0.6.19
|
3
|
-
# apibuilder 0.14.3 app.apibuilder.io/flow/api/0.6.
|
3
|
+
# apibuilder 0.14.3 app.apibuilder.io/flow/api/0.6.31/ruby_client
|
4
4
|
|
5
5
|
require 'cgi'
|
6
6
|
require 'net/http'
|
@@ -25,7 +25,7 @@ module Io
|
|
25
25
|
|
26
26
|
BASE_URL = 'https://api.flow.io' unless defined?(Constants::BASE_URL)
|
27
27
|
NAMESPACE = 'io.flow.v0' unless defined?(Constants::NAMESPACE)
|
28
|
-
USER_AGENT = 'apibuilder 0.14.3 app.apibuilder.io/flow/api/0.6.
|
28
|
+
USER_AGENT = 'apibuilder 0.14.3 app.apibuilder.io/flow/api/0.6.31/ruby_client' unless defined?(Constants::USER_AGENT)
|
29
29
|
VERSION = '0.6.19' unless defined?(Constants::VERSION)
|
30
30
|
VERSION_MAJOR = 0 unless defined?(VERSION_MAJOR)
|
31
31
|
|
@@ -120,6 +120,10 @@ module Io
|
|
120
120
|
@order_identifiers ||= ::Io::Flow::V0::Clients::OrderIdentifiers.new(self)
|
121
121
|
end
|
122
122
|
|
123
|
+
def order_number_generators
|
124
|
+
@order_number_generators ||= ::Io::Flow::V0::Clients::OrderNumberGenerators.new(self)
|
125
|
+
end
|
126
|
+
|
123
127
|
def order_promotions
|
124
128
|
@order_promotions ||= ::Io::Flow::V0::Clients::OrderPromotions.new(self)
|
125
129
|
end
|
@@ -140,10 +144,6 @@ module Io
|
|
140
144
|
@price_book_items ||= ::Io::Flow::V0::Clients::PriceBookItems.new(self)
|
141
145
|
end
|
142
146
|
|
143
|
-
def queries
|
144
|
-
@queries ||= ::Io::Flow::V0::Clients::Queries.new(self)
|
145
|
-
end
|
146
|
-
|
147
147
|
def subcatalogs
|
148
148
|
@subcatalogs ||= ::Io::Flow::V0::Clients::Subcatalogs.new(self)
|
149
149
|
end
|
@@ -152,6 +152,10 @@ module Io
|
|
152
152
|
@subcatalog_items ||= ::Io::Flow::V0::Clients::SubcatalogItems.new(self)
|
153
153
|
end
|
154
154
|
|
155
|
+
def subcatalog_queries
|
156
|
+
@subcatalog_queries ||= ::Io::Flow::V0::Clients::SubcatalogQueries.new(self)
|
157
|
+
end
|
158
|
+
|
155
159
|
def targetings
|
156
160
|
@targetings ||= ::Io::Flow::V0::Clients::Targetings.new(self)
|
157
161
|
end
|
@@ -894,6 +898,14 @@ module Io
|
|
894
898
|
::Io::Flow::V0::Models::Item.new(r)
|
895
899
|
end
|
896
900
|
|
901
|
+
# Builds a query to search experiences
|
902
|
+
def post_query_and_builders(organization, query_builder_form)
|
903
|
+
HttpClient::Preconditions.assert_class('organization', organization, String)
|
904
|
+
(x = query_builder_form; x.is_a?(::Io::Flow::V0::Models::QueryBuilderForm) ? x : ::Io::Flow::V0::Models::QueryBuilderForm.from_json(x))
|
905
|
+
r = @client.request("/#{CGI.escape(organization)}/experiences/query/builders").with_json(query_builder_form.to_json).post
|
906
|
+
::Io::Flow::V0::Models::QueryBuilder.new(r)
|
907
|
+
end
|
908
|
+
|
897
909
|
# Provides visibility into recent changes of each object, including deletion
|
898
910
|
def get_versions(organization, incoming={})
|
899
911
|
HttpClient::Preconditions.assert_class('organization', organization, String)
|
@@ -1737,6 +1749,33 @@ module Io
|
|
1737
1749
|
|
1738
1750
|
end
|
1739
1751
|
|
1752
|
+
class OrderNumberGenerators
|
1753
|
+
|
1754
|
+
def initialize(client)
|
1755
|
+
@client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
|
1756
|
+
end
|
1757
|
+
|
1758
|
+
def get(organization)
|
1759
|
+
HttpClient::Preconditions.assert_class('organization', organization, String)
|
1760
|
+
r = @client.request("/#{CGI.escape(organization)}/order/number/generators").get
|
1761
|
+
::Io::Flow::V0::Models::OrderNumberGenerator.from_json(r)
|
1762
|
+
end
|
1763
|
+
|
1764
|
+
def put(organization, order_number_generator)
|
1765
|
+
HttpClient::Preconditions.assert_class('organization', organization, String)
|
1766
|
+
(x = order_number_generator; x.is_a?(::Io::Flow::V0::Models::OrderNumberGenerator) ? x : ::Io::Flow::V0::Models::OrderNumberGenerator.from_json(x))
|
1767
|
+
r = @client.request("/#{CGI.escape(organization)}/order/number/generators").with_json(order_number_generator.to_json).put
|
1768
|
+
::Io::Flow::V0::Models::OrderNumberGenerator.from_json(r)
|
1769
|
+
end
|
1770
|
+
|
1771
|
+
def delete(organization)
|
1772
|
+
HttpClient::Preconditions.assert_class('organization', organization, String)
|
1773
|
+
r = @client.request("/#{CGI.escape(organization)}/order/number/generators").delete
|
1774
|
+
nil
|
1775
|
+
end
|
1776
|
+
|
1777
|
+
end
|
1778
|
+
|
1740
1779
|
class OrderPromotions
|
1741
1780
|
|
1742
1781
|
def initialize(client)
|
@@ -2040,21 +2079,6 @@ module Io
|
|
2040
2079
|
|
2041
2080
|
end
|
2042
2081
|
|
2043
|
-
class Queries
|
2044
|
-
|
2045
|
-
def initialize(client)
|
2046
|
-
@client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
|
2047
|
-
end
|
2048
|
-
|
2049
|
-
def post_validations(organization, values)
|
2050
|
-
HttpClient::Preconditions.assert_class('organization', organization, String)
|
2051
|
-
HttpClient::Preconditions.assert_class('strings', strings, Array).map { |v| HttpClient::Preconditions.assert_class('strings', v, String) }
|
2052
|
-
r = @client.request("/#{CGI.escape(organization)}/query/validations").with_json(strings.to_json).post
|
2053
|
-
::Io::Flow::V0::Models::QueryValidation.new(r)
|
2054
|
-
end
|
2055
|
-
|
2056
|
-
end
|
2057
|
-
|
2058
2082
|
class Subcatalogs
|
2059
2083
|
|
2060
2084
|
def initialize(client)
|
@@ -2296,16 +2320,16 @@ module Io
|
|
2296
2320
|
:sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "-created_at" : x), String)
|
2297
2321
|
}.delete_if { |k, v| v.nil? }
|
2298
2322
|
r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/queries").with_query(query).get
|
2299
|
-
r.map { |x| ::Io::Flow::V0::Models::
|
2323
|
+
r.map { |x| ::Io::Flow::V0::Models::SubcatalogQuery.new(x) }
|
2300
2324
|
end
|
2301
2325
|
|
2302
2326
|
# Add query
|
2303
|
-
def post_queries_by_subcatalog_id(organization, subcatalog_id,
|
2327
|
+
def post_queries_by_subcatalog_id(organization, subcatalog_id, subcatalog_query_form)
|
2304
2328
|
HttpClient::Preconditions.assert_class('organization', organization, String)
|
2305
2329
|
HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
|
2306
|
-
(x =
|
2307
|
-
r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/queries").with_json(
|
2308
|
-
::Io::Flow::V0::Models::
|
2330
|
+
(x = subcatalog_query_form; x.is_a?(::Io::Flow::V0::Models::SubcatalogQueryForm) ? x : ::Io::Flow::V0::Models::SubcatalogQueryForm.new(x))
|
2331
|
+
r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/queries").with_json(subcatalog_query_form.to_json).post
|
2332
|
+
::Io::Flow::V0::Models::SubcatalogQuery.new(r)
|
2309
2333
|
end
|
2310
2334
|
|
2311
2335
|
# Returns information about a specific query.
|
@@ -2314,7 +2338,7 @@ module Io
|
|
2314
2338
|
HttpClient::Preconditions.assert_class('subcatalog_id', subcatalog_id, String)
|
2315
2339
|
HttpClient::Preconditions.assert_class('id', id, String)
|
2316
2340
|
r = @client.request("/#{CGI.escape(organization)}/catalog/subcatalogs/#{CGI.escape(subcatalog_id)}/queries/#{CGI.escape(id)}").get
|
2317
|
-
::Io::Flow::V0::Models::
|
2341
|
+
::Io::Flow::V0::Models::SubcatalogQuery.new(r)
|
2318
2342
|
end
|
2319
2343
|
|
2320
2344
|
# Delete a query with this id
|
@@ -2387,6 +2411,21 @@ module Io
|
|
2387
2411
|
|
2388
2412
|
end
|
2389
2413
|
|
2414
|
+
class SubcatalogQueries
|
2415
|
+
|
2416
|
+
def initialize(client)
|
2417
|
+
@client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client)
|
2418
|
+
end
|
2419
|
+
|
2420
|
+
def post_validations(organization, values)
|
2421
|
+
HttpClient::Preconditions.assert_class('organization', organization, String)
|
2422
|
+
HttpClient::Preconditions.assert_class('strings', strings, Array).map { |v| HttpClient::Preconditions.assert_class('strings', v, String) }
|
2423
|
+
r = @client.request("/#{CGI.escape(organization)}/query/validations").with_json(strings.to_json).post
|
2424
|
+
::Io::Flow::V0::Models::SubcatalogQueryValidation.new(r)
|
2425
|
+
end
|
2426
|
+
|
2427
|
+
end
|
2428
|
+
|
2390
2429
|
class Targetings
|
2391
2430
|
|
2392
2431
|
def initialize(client)
|
@@ -6465,6 +6504,68 @@ module Io
|
|
6465
6504
|
|
6466
6505
|
end
|
6467
6506
|
|
6507
|
+
class AvailableFilter
|
6508
|
+
|
6509
|
+
module Types
|
6510
|
+
AVAILABLE_FILTER_STRUCTURED = 'structured' unless defined?(AVAILABLE_FILTER_STRUCTURED)
|
6511
|
+
AVAILABLE_FILTER_UNSTRUCTURED = 'unstructured' unless defined?(AVAILABLE_FILTER_UNSTRUCTURED)
|
6512
|
+
end
|
6513
|
+
|
6514
|
+
attr_reader :discriminator
|
6515
|
+
|
6516
|
+
def initialize(incoming={})
|
6517
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
6518
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'AvailableFilter')
|
6519
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
6520
|
+
end
|
6521
|
+
|
6522
|
+
def subtype_to_hash
|
6523
|
+
raise 'Cannot serialize an instance of available_filter directly - must use one of the specific types: available_filter_structured, available_filter_unstructured'
|
6524
|
+
end
|
6525
|
+
|
6526
|
+
def to_hash
|
6527
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
6528
|
+
end
|
6529
|
+
|
6530
|
+
def AvailableFilter.from_json(hash)
|
6531
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
6532
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
6533
|
+
if discriminator.empty?
|
6534
|
+
raise "Union type[available_filter] requires a field named 'discriminator'"
|
6535
|
+
end
|
6536
|
+
case discriminator
|
6537
|
+
when Types::AVAILABLE_FILTER_STRUCTURED; AvailableFilterStructured.new(hash)
|
6538
|
+
when Types::AVAILABLE_FILTER_UNSTRUCTURED; AvailableFilterUnstructured.new(hash)
|
6539
|
+
else AvailableFilterUndefinedType.new(:discriminator => discriminator)
|
6540
|
+
end
|
6541
|
+
end
|
6542
|
+
|
6543
|
+
end
|
6544
|
+
|
6545
|
+
class AvailableFilterUndefinedType < AvailableFilter
|
6546
|
+
|
6547
|
+
attr_reader :name
|
6548
|
+
|
6549
|
+
def initialize(incoming={})
|
6550
|
+
super(:discriminator => 'undefined_type')
|
6551
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
6552
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
6553
|
+
end
|
6554
|
+
|
6555
|
+
def subtype_to_hash
|
6556
|
+
raise 'Unable to serialize undefined type to json'
|
6557
|
+
end
|
6558
|
+
|
6559
|
+
def copy(incoming={})
|
6560
|
+
raise 'Operation not supported for undefined type'
|
6561
|
+
end
|
6562
|
+
|
6563
|
+
def to_hash
|
6564
|
+
raise 'Operation not supported for undefined type'
|
6565
|
+
end
|
6566
|
+
|
6567
|
+
end
|
6568
|
+
|
6468
6569
|
# Represents the data needed to create a card authorization.
|
6469
6570
|
class CardAuthorizationData
|
6470
6571
|
|
@@ -8328,6 +8429,70 @@ module Io
|
|
8328
8429
|
|
8329
8430
|
end
|
8330
8431
|
|
8432
|
+
class OrderNumberGenerator
|
8433
|
+
|
8434
|
+
module Types
|
8435
|
+
ORDER_NUMBER_GENERATOR_UUID = 'uuid' unless defined?(ORDER_NUMBER_GENERATOR_UUID)
|
8436
|
+
ORDER_NUMBER_GENERATOR_HEXADECIMAL = 'hexadecimal' unless defined?(ORDER_NUMBER_GENERATOR_HEXADECIMAL)
|
8437
|
+
ORDER_NUMBER_GENERATOR_PREFIX_SUFFIX = 'prefix_suffix' unless defined?(ORDER_NUMBER_GENERATOR_PREFIX_SUFFIX)
|
8438
|
+
end
|
8439
|
+
|
8440
|
+
attr_reader :discriminator
|
8441
|
+
|
8442
|
+
def initialize(incoming={})
|
8443
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8444
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'OrderNumberGenerator')
|
8445
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
8446
|
+
end
|
8447
|
+
|
8448
|
+
def subtype_to_hash
|
8449
|
+
raise 'Cannot serialize an instance of order_number_generator directly - must use one of the specific types: order_number_generator_uuid, order_number_generator_hexadecimal, order_number_generator_prefix_suffix'
|
8450
|
+
end
|
8451
|
+
|
8452
|
+
def to_hash
|
8453
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
8454
|
+
end
|
8455
|
+
|
8456
|
+
def OrderNumberGenerator.from_json(hash)
|
8457
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
8458
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
8459
|
+
if discriminator.empty?
|
8460
|
+
raise "Union type[order_number_generator] requires a field named 'discriminator'"
|
8461
|
+
end
|
8462
|
+
case discriminator
|
8463
|
+
when Types::ORDER_NUMBER_GENERATOR_UUID; OrderNumberGeneratorUuid.new(hash)
|
8464
|
+
when Types::ORDER_NUMBER_GENERATOR_HEXADECIMAL; OrderNumberGeneratorHexadecimal.new(hash)
|
8465
|
+
when Types::ORDER_NUMBER_GENERATOR_PREFIX_SUFFIX; OrderNumberGeneratorPrefixSuffix.new(hash)
|
8466
|
+
else OrderNumberGeneratorUndefinedType.new(:discriminator => discriminator)
|
8467
|
+
end
|
8468
|
+
end
|
8469
|
+
|
8470
|
+
end
|
8471
|
+
|
8472
|
+
class OrderNumberGeneratorUndefinedType < OrderNumberGenerator
|
8473
|
+
|
8474
|
+
attr_reader :name
|
8475
|
+
|
8476
|
+
def initialize(incoming={})
|
8477
|
+
super(:discriminator => 'undefined_type')
|
8478
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8479
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
8480
|
+
end
|
8481
|
+
|
8482
|
+
def subtype_to_hash
|
8483
|
+
raise 'Unable to serialize undefined type to json'
|
8484
|
+
end
|
8485
|
+
|
8486
|
+
def copy(incoming={})
|
8487
|
+
raise 'Operation not supported for undefined type'
|
8488
|
+
end
|
8489
|
+
|
8490
|
+
def to_hash
|
8491
|
+
raise 'Operation not supported for undefined type'
|
8492
|
+
end
|
8493
|
+
|
8494
|
+
end
|
8495
|
+
|
8331
8496
|
class OrderPromotion
|
8332
8497
|
|
8333
8498
|
module Types
|
@@ -8758,111 +8923,45 @@ module Io
|
|
8758
8923
|
|
8759
8924
|
end
|
8760
8925
|
|
8761
|
-
|
8762
|
-
class ReservationError
|
8763
|
-
|
8764
|
-
module Types
|
8765
|
-
# Inventory is not available for all or subset of item quantities requested
|
8766
|
-
NO_INVENTORY_RESERVATION_ERROR = 'no_inventory' unless defined?(NO_INVENTORY_RESERVATION_ERROR)
|
8767
|
-
# API call to external API (ex: PFS) timed out
|
8768
|
-
EXTERNAL_API_TIMEOUT_RESERVATION_ERROR = 'external_api_timeout' unless defined?(EXTERNAL_API_TIMEOUT_RESERVATION_ERROR)
|
8769
|
-
# Generic reservation error
|
8770
|
-
GENERIC_RESERVATION_ERROR = 'generic_reservation_error' unless defined?(GENERIC_RESERVATION_ERROR)
|
8771
|
-
end
|
8772
|
-
|
8773
|
-
attr_reader :code
|
8774
|
-
|
8775
|
-
def initialize(incoming={})
|
8776
|
-
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8777
|
-
HttpClient::Preconditions.require_keys(opts, [:code], 'ReservationError')
|
8778
|
-
@code = HttpClient::Preconditions.assert_class('code', opts.delete(:code), String)
|
8779
|
-
end
|
8780
|
-
|
8781
|
-
def subtype_to_hash
|
8782
|
-
raise 'Cannot serialize an instance of reservation_error directly - must use one of the specific types: no_inventory_reservation_error, external_api_timeout_reservation_error, generic_reservation_error'
|
8783
|
-
end
|
8784
|
-
|
8785
|
-
def to_hash
|
8786
|
-
subtype_to_hash.merge(:code => @code)
|
8787
|
-
end
|
8788
|
-
|
8789
|
-
def ReservationError.from_json(hash)
|
8790
|
-
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
8791
|
-
discriminator = HttpClient::Helper.symbolize_keys(hash)[:code].to_s.strip
|
8792
|
-
if discriminator.empty?
|
8793
|
-
raise "Union type[reservation_error] requires a field named 'code'"
|
8794
|
-
end
|
8795
|
-
case discriminator
|
8796
|
-
when Types::NO_INVENTORY_RESERVATION_ERROR; NoInventoryReservationError.new(hash)
|
8797
|
-
when Types::EXTERNAL_API_TIMEOUT_RESERVATION_ERROR; ExternalApiTimeoutReservationError.new(hash)
|
8798
|
-
when Types::GENERIC_RESERVATION_ERROR; GenericReservationError.new(hash)
|
8799
|
-
else ReservationErrorUndefinedType.new(:code => discriminator)
|
8800
|
-
end
|
8801
|
-
end
|
8802
|
-
|
8803
|
-
end
|
8804
|
-
|
8805
|
-
class ReservationErrorUndefinedType < ReservationError
|
8806
|
-
|
8807
|
-
attr_reader :name
|
8808
|
-
|
8809
|
-
def initialize(incoming={})
|
8810
|
-
super(:code => 'undefined_type')
|
8811
|
-
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8812
|
-
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:code), String)
|
8813
|
-
end
|
8814
|
-
|
8815
|
-
def subtype_to_hash
|
8816
|
-
raise 'Unable to serialize undefined type to json'
|
8817
|
-
end
|
8818
|
-
|
8819
|
-
def copy(incoming={})
|
8820
|
-
raise 'Operation not supported for undefined type'
|
8821
|
-
end
|
8822
|
-
|
8823
|
-
def to_hash
|
8824
|
-
raise 'Operation not supported for undefined type'
|
8825
|
-
end
|
8826
|
-
|
8827
|
-
end
|
8828
|
-
|
8829
|
-
class Session
|
8926
|
+
class QueryBuilderForm
|
8830
8927
|
|
8831
8928
|
module Types
|
8832
|
-
|
8929
|
+
QUERY_BUILDER_FILTER_FORM = 'filter' unless defined?(QUERY_BUILDER_FILTER_FORM)
|
8930
|
+
QUERY_BUILDER_QUERY_FORM = 'query' unless defined?(QUERY_BUILDER_QUERY_FORM)
|
8833
8931
|
end
|
8834
8932
|
|
8835
8933
|
attr_reader :discriminator
|
8836
8934
|
|
8837
8935
|
def initialize(incoming={})
|
8838
8936
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8839
|
-
HttpClient::Preconditions.require_keys(opts, [:discriminator], '
|
8937
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'QueryBuilderForm')
|
8840
8938
|
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
8841
8939
|
end
|
8842
8940
|
|
8843
8941
|
def subtype_to_hash
|
8844
|
-
raise 'Cannot serialize an instance of
|
8942
|
+
raise 'Cannot serialize an instance of query_builder_form directly - must use one of the specific types: query_builder_filter_form, query_builder_query_form'
|
8845
8943
|
end
|
8846
8944
|
|
8847
8945
|
def to_hash
|
8848
8946
|
subtype_to_hash.merge(:discriminator => @discriminator)
|
8849
8947
|
end
|
8850
8948
|
|
8851
|
-
def
|
8949
|
+
def QueryBuilderForm.from_json(hash)
|
8852
8950
|
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
8853
8951
|
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
8854
8952
|
if discriminator.empty?
|
8855
|
-
raise "Union type[
|
8953
|
+
raise "Union type[query_builder_form] requires a field named 'discriminator'"
|
8856
8954
|
end
|
8857
8955
|
case discriminator
|
8858
|
-
when Types::
|
8859
|
-
|
8956
|
+
when Types::QUERY_BUILDER_FILTER_FORM; QueryBuilderFilterForm.new(hash)
|
8957
|
+
when Types::QUERY_BUILDER_QUERY_FORM; QueryBuilderQueryForm.new(hash)
|
8958
|
+
else QueryBuilderFormUndefinedType.new(:discriminator => discriminator)
|
8860
8959
|
end
|
8861
8960
|
end
|
8862
8961
|
|
8863
8962
|
end
|
8864
8963
|
|
8865
|
-
class
|
8964
|
+
class QueryBuilderFormUndefinedType < QueryBuilderForm
|
8866
8965
|
|
8867
8966
|
attr_reader :name
|
8868
8967
|
|
@@ -8886,43 +8985,44 @@ module Io
|
|
8886
8985
|
|
8887
8986
|
end
|
8888
8987
|
|
8889
|
-
class
|
8988
|
+
class QueryFilter
|
8890
8989
|
|
8891
8990
|
module Types
|
8892
|
-
|
8991
|
+
QUERY_FILTER_STRUCTURED = 'structured' unless defined?(QUERY_FILTER_STRUCTURED)
|
8992
|
+
QUERY_FILTER_UNSTRUCTURED = 'unstructured' unless defined?(QUERY_FILTER_UNSTRUCTURED)
|
8893
8993
|
end
|
8894
8994
|
|
8895
8995
|
attr_reader :discriminator
|
8896
8996
|
|
8897
8997
|
def initialize(incoming={})
|
8898
8998
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8899
|
-
HttpClient::Preconditions.
|
8900
|
-
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
8999
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || 'query_filter_structured', String)
|
8901
9000
|
end
|
8902
9001
|
|
8903
9002
|
def subtype_to_hash
|
8904
|
-
raise 'Cannot serialize an instance of
|
9003
|
+
raise 'Cannot serialize an instance of query_filter directly - must use one of the specific types: query_filter_structured, query_filter_unstructured'
|
8905
9004
|
end
|
8906
9005
|
|
8907
9006
|
def to_hash
|
8908
9007
|
subtype_to_hash.merge(:discriminator => @discriminator)
|
8909
9008
|
end
|
8910
9009
|
|
8911
|
-
def
|
9010
|
+
def QueryFilter.from_json(hash)
|
8912
9011
|
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
8913
9012
|
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
8914
9013
|
if discriminator.empty?
|
8915
|
-
raise "Union type[
|
9014
|
+
raise "Union type[query_filter] requires a field named 'discriminator'"
|
8916
9015
|
end
|
8917
9016
|
case discriminator
|
8918
|
-
when Types::
|
8919
|
-
|
9017
|
+
when Types::QUERY_FILTER_STRUCTURED; QueryFilterStructured.new(hash)
|
9018
|
+
when Types::QUERY_FILTER_UNSTRUCTURED; QueryFilterUnstructured.new(hash)
|
9019
|
+
else QueryFilterUndefinedType.new(:discriminator => discriminator)
|
8920
9020
|
end
|
8921
9021
|
end
|
8922
9022
|
|
8923
9023
|
end
|
8924
9024
|
|
8925
|
-
class
|
9025
|
+
class QueryFilterUndefinedType < QueryFilter
|
8926
9026
|
|
8927
9027
|
attr_reader :name
|
8928
9028
|
|
@@ -8946,48 +9046,297 @@ module Io
|
|
8946
9046
|
|
8947
9047
|
end
|
8948
9048
|
|
8949
|
-
|
8950
|
-
# label and fulfillment was not handled by Flow. For merchant-of-record and
|
8951
|
-
# tracking purposes, clients doing their own shipping will need to notify Flow
|
8952
|
-
# of shipped packages.
|
8953
|
-
class ShippingNotificationForm
|
9049
|
+
class QueryFilterForm
|
8954
9050
|
|
8955
9051
|
module Types
|
8956
|
-
|
8957
|
-
|
9052
|
+
QUERY_FILTER_STRUCTURED_FORM = 'structured' unless defined?(QUERY_FILTER_STRUCTURED_FORM)
|
9053
|
+
QUERY_FILTER_UNSTRUCTURED_FORM = 'unstructured' unless defined?(QUERY_FILTER_UNSTRUCTURED_FORM)
|
8958
9054
|
end
|
8959
9055
|
|
8960
9056
|
attr_reader :discriminator
|
8961
9057
|
|
8962
9058
|
def initialize(incoming={})
|
8963
9059
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
8964
|
-
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || '
|
9060
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || 'query_filter_structured_form', String)
|
8965
9061
|
end
|
8966
9062
|
|
8967
9063
|
def subtype_to_hash
|
8968
|
-
raise 'Cannot serialize an instance of
|
9064
|
+
raise 'Cannot serialize an instance of query_filter_form directly - must use one of the specific types: query_filter_structured_form, query_filter_unstructured_form'
|
8969
9065
|
end
|
8970
9066
|
|
8971
9067
|
def to_hash
|
8972
9068
|
subtype_to_hash.merge(:discriminator => @discriminator)
|
8973
9069
|
end
|
8974
9070
|
|
8975
|
-
def
|
9071
|
+
def QueryFilterForm.from_json(hash)
|
8976
9072
|
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
8977
9073
|
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
8978
9074
|
if discriminator.empty?
|
8979
|
-
raise "Union type[
|
9075
|
+
raise "Union type[query_filter_form] requires a field named 'discriminator'"
|
8980
9076
|
end
|
8981
9077
|
case discriminator
|
8982
|
-
when Types::
|
8983
|
-
when Types::
|
8984
|
-
else
|
9078
|
+
when Types::QUERY_FILTER_STRUCTURED_FORM; QueryFilterStructuredForm.new(hash)
|
9079
|
+
when Types::QUERY_FILTER_UNSTRUCTURED_FORM; QueryFilterUnstructuredForm.new(hash)
|
9080
|
+
else QueryFilterFormUndefinedType.new(:discriminator => discriminator)
|
8985
9081
|
end
|
8986
9082
|
end
|
8987
9083
|
|
8988
9084
|
end
|
8989
9085
|
|
8990
|
-
class
|
9086
|
+
class QueryFilterFormUndefinedType < QueryFilterForm
|
9087
|
+
|
9088
|
+
attr_reader :name
|
9089
|
+
|
9090
|
+
def initialize(incoming={})
|
9091
|
+
super(:discriminator => 'undefined_type')
|
9092
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9093
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
9094
|
+
end
|
9095
|
+
|
9096
|
+
def subtype_to_hash
|
9097
|
+
raise 'Unable to serialize undefined type to json'
|
9098
|
+
end
|
9099
|
+
|
9100
|
+
def copy(incoming={})
|
9101
|
+
raise 'Operation not supported for undefined type'
|
9102
|
+
end
|
9103
|
+
|
9104
|
+
def to_hash
|
9105
|
+
raise 'Operation not supported for undefined type'
|
9106
|
+
end
|
9107
|
+
|
9108
|
+
end
|
9109
|
+
|
9110
|
+
# Types of failed inventory reservation reasons
|
9111
|
+
class ReservationError
|
9112
|
+
|
9113
|
+
module Types
|
9114
|
+
# Inventory is not available for all or subset of item quantities requested
|
9115
|
+
NO_INVENTORY_RESERVATION_ERROR = 'no_inventory' unless defined?(NO_INVENTORY_RESERVATION_ERROR)
|
9116
|
+
# API call to external API (ex: PFS) timed out
|
9117
|
+
EXTERNAL_API_TIMEOUT_RESERVATION_ERROR = 'external_api_timeout' unless defined?(EXTERNAL_API_TIMEOUT_RESERVATION_ERROR)
|
9118
|
+
# Generic reservation error
|
9119
|
+
GENERIC_RESERVATION_ERROR = 'generic_reservation_error' unless defined?(GENERIC_RESERVATION_ERROR)
|
9120
|
+
end
|
9121
|
+
|
9122
|
+
attr_reader :code
|
9123
|
+
|
9124
|
+
def initialize(incoming={})
|
9125
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9126
|
+
HttpClient::Preconditions.require_keys(opts, [:code], 'ReservationError')
|
9127
|
+
@code = HttpClient::Preconditions.assert_class('code', opts.delete(:code), String)
|
9128
|
+
end
|
9129
|
+
|
9130
|
+
def subtype_to_hash
|
9131
|
+
raise 'Cannot serialize an instance of reservation_error directly - must use one of the specific types: no_inventory_reservation_error, external_api_timeout_reservation_error, generic_reservation_error'
|
9132
|
+
end
|
9133
|
+
|
9134
|
+
def to_hash
|
9135
|
+
subtype_to_hash.merge(:code => @code)
|
9136
|
+
end
|
9137
|
+
|
9138
|
+
def ReservationError.from_json(hash)
|
9139
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
9140
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:code].to_s.strip
|
9141
|
+
if discriminator.empty?
|
9142
|
+
raise "Union type[reservation_error] requires a field named 'code'"
|
9143
|
+
end
|
9144
|
+
case discriminator
|
9145
|
+
when Types::NO_INVENTORY_RESERVATION_ERROR; NoInventoryReservationError.new(hash)
|
9146
|
+
when Types::EXTERNAL_API_TIMEOUT_RESERVATION_ERROR; ExternalApiTimeoutReservationError.new(hash)
|
9147
|
+
when Types::GENERIC_RESERVATION_ERROR; GenericReservationError.new(hash)
|
9148
|
+
else ReservationErrorUndefinedType.new(:code => discriminator)
|
9149
|
+
end
|
9150
|
+
end
|
9151
|
+
|
9152
|
+
end
|
9153
|
+
|
9154
|
+
class ReservationErrorUndefinedType < ReservationError
|
9155
|
+
|
9156
|
+
attr_reader :name
|
9157
|
+
|
9158
|
+
def initialize(incoming={})
|
9159
|
+
super(:code => 'undefined_type')
|
9160
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9161
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:code), String)
|
9162
|
+
end
|
9163
|
+
|
9164
|
+
def subtype_to_hash
|
9165
|
+
raise 'Unable to serialize undefined type to json'
|
9166
|
+
end
|
9167
|
+
|
9168
|
+
def copy(incoming={})
|
9169
|
+
raise 'Operation not supported for undefined type'
|
9170
|
+
end
|
9171
|
+
|
9172
|
+
def to_hash
|
9173
|
+
raise 'Operation not supported for undefined type'
|
9174
|
+
end
|
9175
|
+
|
9176
|
+
end
|
9177
|
+
|
9178
|
+
class Session
|
9179
|
+
|
9180
|
+
module Types
|
9181
|
+
ORGANIZATION_SESSION = 'organization_session' unless defined?(ORGANIZATION_SESSION)
|
9182
|
+
end
|
9183
|
+
|
9184
|
+
attr_reader :discriminator
|
9185
|
+
|
9186
|
+
def initialize(incoming={})
|
9187
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9188
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'Session')
|
9189
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
9190
|
+
end
|
9191
|
+
|
9192
|
+
def subtype_to_hash
|
9193
|
+
raise 'Cannot serialize an instance of session directly - must use one of the specific types: organization_session'
|
9194
|
+
end
|
9195
|
+
|
9196
|
+
def to_hash
|
9197
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
9198
|
+
end
|
9199
|
+
|
9200
|
+
def Session.from_json(hash)
|
9201
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
9202
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
9203
|
+
if discriminator.empty?
|
9204
|
+
raise "Union type[session] requires a field named 'discriminator'"
|
9205
|
+
end
|
9206
|
+
case discriminator
|
9207
|
+
when Types::ORGANIZATION_SESSION; OrganizationSession.new(hash)
|
9208
|
+
else SessionUndefinedType.new(:discriminator => discriminator)
|
9209
|
+
end
|
9210
|
+
end
|
9211
|
+
|
9212
|
+
end
|
9213
|
+
|
9214
|
+
class SessionUndefinedType < Session
|
9215
|
+
|
9216
|
+
attr_reader :name
|
9217
|
+
|
9218
|
+
def initialize(incoming={})
|
9219
|
+
super(:discriminator => 'undefined_type')
|
9220
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9221
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
9222
|
+
end
|
9223
|
+
|
9224
|
+
def subtype_to_hash
|
9225
|
+
raise 'Unable to serialize undefined type to json'
|
9226
|
+
end
|
9227
|
+
|
9228
|
+
def copy(incoming={})
|
9229
|
+
raise 'Operation not supported for undefined type'
|
9230
|
+
end
|
9231
|
+
|
9232
|
+
def to_hash
|
9233
|
+
raise 'Operation not supported for undefined type'
|
9234
|
+
end
|
9235
|
+
|
9236
|
+
end
|
9237
|
+
|
9238
|
+
class SessionAuthorization
|
9239
|
+
|
9240
|
+
module Types
|
9241
|
+
ORGANIZATION_SESSION_AUTHORIZATION = 'organization_session_authorization' unless defined?(ORGANIZATION_SESSION_AUTHORIZATION)
|
9242
|
+
end
|
9243
|
+
|
9244
|
+
attr_reader :discriminator
|
9245
|
+
|
9246
|
+
def initialize(incoming={})
|
9247
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9248
|
+
HttpClient::Preconditions.require_keys(opts, [:discriminator], 'SessionAuthorization')
|
9249
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator), String)
|
9250
|
+
end
|
9251
|
+
|
9252
|
+
def subtype_to_hash
|
9253
|
+
raise 'Cannot serialize an instance of session_authorization directly - must use one of the specific types: organization_session_authorization'
|
9254
|
+
end
|
9255
|
+
|
9256
|
+
def to_hash
|
9257
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
9258
|
+
end
|
9259
|
+
|
9260
|
+
def SessionAuthorization.from_json(hash)
|
9261
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
9262
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
9263
|
+
if discriminator.empty?
|
9264
|
+
raise "Union type[session_authorization] requires a field named 'discriminator'"
|
9265
|
+
end
|
9266
|
+
case discriminator
|
9267
|
+
when Types::ORGANIZATION_SESSION_AUTHORIZATION; OrganizationSessionAuthorization.new(hash)
|
9268
|
+
else SessionAuthorizationUndefinedType.new(:discriminator => discriminator)
|
9269
|
+
end
|
9270
|
+
end
|
9271
|
+
|
9272
|
+
end
|
9273
|
+
|
9274
|
+
class SessionAuthorizationUndefinedType < SessionAuthorization
|
9275
|
+
|
9276
|
+
attr_reader :name
|
9277
|
+
|
9278
|
+
def initialize(incoming={})
|
9279
|
+
super(:discriminator => 'undefined_type')
|
9280
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9281
|
+
@name = HttpClient::Preconditions.assert_class('name', opts.delete(:discriminator), String)
|
9282
|
+
end
|
9283
|
+
|
9284
|
+
def subtype_to_hash
|
9285
|
+
raise 'Unable to serialize undefined type to json'
|
9286
|
+
end
|
9287
|
+
|
9288
|
+
def copy(incoming={})
|
9289
|
+
raise 'Operation not supported for undefined type'
|
9290
|
+
end
|
9291
|
+
|
9292
|
+
def to_hash
|
9293
|
+
raise 'Operation not supported for undefined type'
|
9294
|
+
end
|
9295
|
+
|
9296
|
+
end
|
9297
|
+
|
9298
|
+
# Form for information about a client-facilitated shipment where the shipping
|
9299
|
+
# label and fulfillment was not handled by Flow. For merchant-of-record and
|
9300
|
+
# tracking purposes, clients doing their own shipping will need to notify Flow
|
9301
|
+
# of shipped packages.
|
9302
|
+
class ShippingNotificationForm
|
9303
|
+
|
9304
|
+
module Types
|
9305
|
+
DETAILED_SHIPPING_NOTIFICATION_FORM = 'detailed_shipping_notification_form' unless defined?(DETAILED_SHIPPING_NOTIFICATION_FORM)
|
9306
|
+
SINGLE_PACKAGE_SHIPPING_NOTIFICATION_FORM = 'single_package_shipping_notification_form' unless defined?(SINGLE_PACKAGE_SHIPPING_NOTIFICATION_FORM)
|
9307
|
+
end
|
9308
|
+
|
9309
|
+
attr_reader :discriminator
|
9310
|
+
|
9311
|
+
def initialize(incoming={})
|
9312
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
9313
|
+
@discriminator = HttpClient::Preconditions.assert_class('discriminator', opts.delete(:discriminator) || 'detailed_shipping_notification_form', String)
|
9314
|
+
end
|
9315
|
+
|
9316
|
+
def subtype_to_hash
|
9317
|
+
raise 'Cannot serialize an instance of shipping_notification_form directly - must use one of the specific types: detailed_shipping_notification_form, single_package_shipping_notification_form'
|
9318
|
+
end
|
9319
|
+
|
9320
|
+
def to_hash
|
9321
|
+
subtype_to_hash.merge(:discriminator => @discriminator)
|
9322
|
+
end
|
9323
|
+
|
9324
|
+
def ShippingNotificationForm.from_json(hash)
|
9325
|
+
HttpClient::Preconditions.assert_class('hash', hash, Hash)
|
9326
|
+
discriminator = HttpClient::Helper.symbolize_keys(hash)[:discriminator].to_s.strip
|
9327
|
+
if discriminator.empty?
|
9328
|
+
raise "Union type[shipping_notification_form] requires a field named 'discriminator'"
|
9329
|
+
end
|
9330
|
+
case discriminator
|
9331
|
+
when Types::DETAILED_SHIPPING_NOTIFICATION_FORM; DetailedShippingNotificationForm.new(hash)
|
9332
|
+
when Types::SINGLE_PACKAGE_SHIPPING_NOTIFICATION_FORM; SinglePackageShippingNotificationForm.new(hash)
|
9333
|
+
else ShippingNotificationFormUndefinedType.new(:discriminator => discriminator)
|
9334
|
+
end
|
9335
|
+
end
|
9336
|
+
|
9337
|
+
end
|
9338
|
+
|
9339
|
+
class ShippingNotificationFormUndefinedType < ShippingNotificationForm
|
8991
9340
|
|
8992
9341
|
attr_reader :name
|
8993
9342
|
|
@@ -9876,6 +10225,69 @@ module Io
|
|
9876
10225
|
|
9877
10226
|
end
|
9878
10227
|
|
10228
|
+
class AvailableFilterFormat
|
10229
|
+
|
10230
|
+
attr_reader :value
|
10231
|
+
|
10232
|
+
def initialize(value)
|
10233
|
+
@value = HttpClient::Preconditions.assert_class('value', value, String)
|
10234
|
+
end
|
10235
|
+
|
10236
|
+
# Returns the instance of AvailableFilterFormat for this value, creating a new instance for an unknown value
|
10237
|
+
def AvailableFilterFormat.apply(value)
|
10238
|
+
if value.instance_of?(AvailableFilterFormat)
|
10239
|
+
value
|
10240
|
+
else
|
10241
|
+
HttpClient::Preconditions.assert_class_or_nil('value', value, String)
|
10242
|
+
value.nil? ? nil : (from_string(value) || AvailableFilterFormat.new(value))
|
10243
|
+
end
|
10244
|
+
end
|
10245
|
+
|
10246
|
+
# Returns the instance of AvailableFilterFormat for this value, or nil if not found
|
10247
|
+
def AvailableFilterFormat.from_string(value)
|
10248
|
+
HttpClient::Preconditions.assert_class('value', value, String)
|
10249
|
+
AvailableFilterFormat.ALL.find { |v| v.value == value }
|
10250
|
+
end
|
10251
|
+
|
10252
|
+
def AvailableFilterFormat.ALL
|
10253
|
+
@@all ||= [AvailableFilterFormat.boolean, AvailableFilterFormat.date, AvailableFilterFormat.money, AvailableFilterFormat.decimal, AvailableFilterFormat.string, AvailableFilterFormat.unit_of_length, AvailableFilterFormat.unit_of_mass]
|
10254
|
+
end
|
10255
|
+
|
10256
|
+
def AvailableFilterFormat.boolean
|
10257
|
+
@@_boolean ||= AvailableFilterFormat.new('boolean')
|
10258
|
+
end
|
10259
|
+
|
10260
|
+
# Expects date in format YYYY-MM-DD
|
10261
|
+
def AvailableFilterFormat.date
|
10262
|
+
@@_date ||= AvailableFilterFormat.new('date')
|
10263
|
+
end
|
10264
|
+
|
10265
|
+
def AvailableFilterFormat.money
|
10266
|
+
@@_money ||= AvailableFilterFormat.new('money')
|
10267
|
+
end
|
10268
|
+
|
10269
|
+
def AvailableFilterFormat.decimal
|
10270
|
+
@@_decimal ||= AvailableFilterFormat.new('decimal')
|
10271
|
+
end
|
10272
|
+
|
10273
|
+
def AvailableFilterFormat.string
|
10274
|
+
@@_string ||= AvailableFilterFormat.new('string')
|
10275
|
+
end
|
10276
|
+
|
10277
|
+
def AvailableFilterFormat.unit_of_length
|
10278
|
+
@@_unit_of_length ||= AvailableFilterFormat.new('unit_of_length')
|
10279
|
+
end
|
10280
|
+
|
10281
|
+
def AvailableFilterFormat.unit_of_mass
|
10282
|
+
@@_unit_of_mass ||= AvailableFilterFormat.new('unit_of_mass')
|
10283
|
+
end
|
10284
|
+
|
10285
|
+
def to_hash
|
10286
|
+
value
|
10287
|
+
end
|
10288
|
+
|
10289
|
+
end
|
10290
|
+
|
9879
10291
|
class AvsCode
|
9880
10292
|
|
9881
10293
|
attr_reader :value
|
@@ -17530,6 +17942,67 @@ module Io
|
|
17530
17942
|
|
17531
17943
|
end
|
17532
17944
|
|
17945
|
+
class AvailableFilterStructured < AvailableFilter
|
17946
|
+
|
17947
|
+
attr_reader :field, :operators, :format, :valid_values, :placeholder
|
17948
|
+
|
17949
|
+
def initialize(incoming={})
|
17950
|
+
super(:discriminator => AvailableFilter::Types::AVAILABLE_FILTER_STRUCTURED)
|
17951
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
17952
|
+
HttpClient::Preconditions.require_keys(opts, [:field, :operators, :format], 'AvailableFilterStructured')
|
17953
|
+
@field = HttpClient::Preconditions.assert_class('field', opts.delete(:field), String)
|
17954
|
+
@operators = HttpClient::Preconditions.assert_class('operators', opts.delete(:operators), Array).map { |v| HttpClient::Preconditions.assert_class('operators', v, String) }
|
17955
|
+
@format = (x = opts.delete(:format); x.is_a?(::Io::Flow::V0::Models::AvailableFilterFormat) ? x : ::Io::Flow::V0::Models::AvailableFilterFormat.apply(x))
|
17956
|
+
@valid_values = (x = opts.delete(:valid_values); x.nil? ? nil : HttpClient::Preconditions.assert_class('valid_values', x, Array).map { |v| HttpClient::Preconditions.assert_class('valid_values', v, String) })
|
17957
|
+
@placeholder = (x = opts.delete(:placeholder); x.nil? ? nil : HttpClient::Preconditions.assert_class('placeholder', x, String))
|
17958
|
+
end
|
17959
|
+
|
17960
|
+
def to_json
|
17961
|
+
JSON.dump(to_hash)
|
17962
|
+
end
|
17963
|
+
|
17964
|
+
def copy(incoming={})
|
17965
|
+
AvailableFilterStructured.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
17966
|
+
end
|
17967
|
+
|
17968
|
+
def subtype_to_hash
|
17969
|
+
{
|
17970
|
+
:field => field,
|
17971
|
+
:operators => operators,
|
17972
|
+
:format => format.value,
|
17973
|
+
:valid_values => valid_values.nil? ? nil : valid_values,
|
17974
|
+
:placeholder => placeholder
|
17975
|
+
}
|
17976
|
+
end
|
17977
|
+
|
17978
|
+
end
|
17979
|
+
|
17980
|
+
class AvailableFilterUnstructured < AvailableFilter
|
17981
|
+
|
17982
|
+
attr_reader :placeholder
|
17983
|
+
|
17984
|
+
def initialize(incoming={})
|
17985
|
+
super(:discriminator => AvailableFilter::Types::AVAILABLE_FILTER_UNSTRUCTURED)
|
17986
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
17987
|
+
@placeholder = (x = opts.delete(:placeholder); x.nil? ? nil : HttpClient::Preconditions.assert_class('placeholder', x, String))
|
17988
|
+
end
|
17989
|
+
|
17990
|
+
def to_json
|
17991
|
+
JSON.dump(to_hash)
|
17992
|
+
end
|
17993
|
+
|
17994
|
+
def copy(incoming={})
|
17995
|
+
AvailableFilterUnstructured.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
17996
|
+
end
|
17997
|
+
|
17998
|
+
def subtype_to_hash
|
17999
|
+
{
|
18000
|
+
:placeholder => placeholder
|
18001
|
+
}
|
18002
|
+
end
|
18003
|
+
|
18004
|
+
end
|
18005
|
+
|
17533
18006
|
class AvailablePromotion
|
17534
18007
|
|
17535
18008
|
attr_reader :id, :shipping_configuration, :region, :promotions
|
@@ -30369,6 +30842,154 @@ module Io
|
|
30369
30842
|
|
30370
30843
|
end
|
30371
30844
|
|
30845
|
+
class OrderNumberGeneratorDefaults
|
30846
|
+
|
30847
|
+
attr_reader :starts_with, :min_hex_length, :min_starts_with
|
30848
|
+
|
30849
|
+
def initialize(incoming={})
|
30850
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
30851
|
+
@starts_with = HttpClient::Preconditions.assert_class('starts_with', (x = opts.delete(:starts_with); x.nil? ? 1001 : x), Integer)
|
30852
|
+
@min_hex_length = HttpClient::Preconditions.assert_class('min_hex_length', (x = opts.delete(:min_hex_length); x.nil? ? 6 : x), Integer)
|
30853
|
+
@min_starts_with = HttpClient::Preconditions.assert_class('min_starts_with', (x = opts.delete(:min_starts_with); x.nil? ? 1 : x), Integer)
|
30854
|
+
end
|
30855
|
+
|
30856
|
+
def to_json
|
30857
|
+
JSON.dump(to_hash)
|
30858
|
+
end
|
30859
|
+
|
30860
|
+
def copy(incoming={})
|
30861
|
+
OrderNumberGeneratorDefaults.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
30862
|
+
end
|
30863
|
+
|
30864
|
+
def to_hash
|
30865
|
+
{
|
30866
|
+
:starts_with => starts_with,
|
30867
|
+
:min_hex_length => min_hex_length,
|
30868
|
+
:min_starts_with => min_starts_with
|
30869
|
+
}
|
30870
|
+
end
|
30871
|
+
|
30872
|
+
end
|
30873
|
+
|
30874
|
+
class OrderNumberGeneratorFixedLength
|
30875
|
+
|
30876
|
+
attr_reader :length, :padding
|
30877
|
+
|
30878
|
+
def initialize(incoming={})
|
30879
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
30880
|
+
HttpClient::Preconditions.require_keys(opts, [:length, :padding], 'OrderNumberGeneratorFixedLength')
|
30881
|
+
@length = HttpClient::Preconditions.assert_class('length', opts.delete(:length), Integer)
|
30882
|
+
@padding = HttpClient::Preconditions.assert_class('padding', opts.delete(:padding), String)
|
30883
|
+
end
|
30884
|
+
|
30885
|
+
def to_json
|
30886
|
+
JSON.dump(to_hash)
|
30887
|
+
end
|
30888
|
+
|
30889
|
+
def copy(incoming={})
|
30890
|
+
OrderNumberGeneratorFixedLength.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
30891
|
+
end
|
30892
|
+
|
30893
|
+
def to_hash
|
30894
|
+
{
|
30895
|
+
:length => length,
|
30896
|
+
:padding => padding
|
30897
|
+
}
|
30898
|
+
end
|
30899
|
+
|
30900
|
+
end
|
30901
|
+
|
30902
|
+
# Hexadecimal generator generates a random string, starting with a letter, of a
|
30903
|
+
# given length
|
30904
|
+
class OrderNumberGeneratorHexadecimal < OrderNumberGenerator
|
30905
|
+
|
30906
|
+
attr_reader :length
|
30907
|
+
|
30908
|
+
def initialize(incoming={})
|
30909
|
+
super(:discriminator => OrderNumberGenerator::Types::ORDER_NUMBER_GENERATOR_HEXADECIMAL)
|
30910
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
30911
|
+
HttpClient::Preconditions.require_keys(opts, [:length], 'OrderNumberGeneratorHexadecimal')
|
30912
|
+
@length = HttpClient::Preconditions.assert_class('length', opts.delete(:length), Integer)
|
30913
|
+
end
|
30914
|
+
|
30915
|
+
def to_json
|
30916
|
+
JSON.dump(to_hash)
|
30917
|
+
end
|
30918
|
+
|
30919
|
+
def copy(incoming={})
|
30920
|
+
OrderNumberGeneratorHexadecimal.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
30921
|
+
end
|
30922
|
+
|
30923
|
+
def subtype_to_hash
|
30924
|
+
{
|
30925
|
+
:length => length
|
30926
|
+
}
|
30927
|
+
end
|
30928
|
+
|
30929
|
+
end
|
30930
|
+
|
30931
|
+
# Generator with an optional prefix, followed by an integer and an optional
|
30932
|
+
# suffix
|
30933
|
+
class OrderNumberGeneratorPrefixSuffix < OrderNumberGenerator
|
30934
|
+
|
30935
|
+
attr_reader :prefix, :starts_with, :suffix, :fixed_length
|
30936
|
+
|
30937
|
+
def initialize(incoming={})
|
30938
|
+
super(:discriminator => OrderNumberGenerator::Types::ORDER_NUMBER_GENERATOR_PREFIX_SUFFIX)
|
30939
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
30940
|
+
@prefix = (x = opts.delete(:prefix); x.nil? ? nil : HttpClient::Preconditions.assert_class('prefix', x, String))
|
30941
|
+
@starts_with = (x = opts.delete(:starts_with); x.nil? ? nil : HttpClient::Preconditions.assert_class('starts_with', x, Integer))
|
30942
|
+
@suffix = (x = opts.delete(:suffix); x.nil? ? nil : HttpClient::Preconditions.assert_class('suffix', x, String))
|
30943
|
+
@fixed_length = (x = opts.delete(:fixed_length); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::OrderNumberGeneratorFixedLength) ? x : ::Io::Flow::V0::Models::OrderNumberGeneratorFixedLength.new(x)))
|
30944
|
+
end
|
30945
|
+
|
30946
|
+
def to_json
|
30947
|
+
JSON.dump(to_hash)
|
30948
|
+
end
|
30949
|
+
|
30950
|
+
def copy(incoming={})
|
30951
|
+
OrderNumberGeneratorPrefixSuffix.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
30952
|
+
end
|
30953
|
+
|
30954
|
+
def subtype_to_hash
|
30955
|
+
{
|
30956
|
+
:prefix => prefix,
|
30957
|
+
:starts_with => starts_with,
|
30958
|
+
:suffix => suffix,
|
30959
|
+
:fixed_length => fixed_length.nil? ? nil : fixed_length.to_hash
|
30960
|
+
}
|
30961
|
+
end
|
30962
|
+
|
30963
|
+
end
|
30964
|
+
|
30965
|
+
# Generates an order number based on a UUID (no dashes or other formatting).
|
30966
|
+
# This is the default for Flow orders (with order number prefixed by ord-)
|
30967
|
+
class OrderNumberGeneratorUuid < OrderNumberGenerator
|
30968
|
+
|
30969
|
+
attr_reader :prefix
|
30970
|
+
|
30971
|
+
def initialize(incoming={})
|
30972
|
+
super(:discriminator => OrderNumberGenerator::Types::ORDER_NUMBER_GENERATOR_UUID)
|
30973
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
30974
|
+
@prefix = HttpClient::Preconditions.assert_class('prefix', (x = opts.delete(:prefix); x.nil? ? "ord-" : x), String)
|
30975
|
+
end
|
30976
|
+
|
30977
|
+
def to_json
|
30978
|
+
JSON.dump(to_hash)
|
30979
|
+
end
|
30980
|
+
|
30981
|
+
def copy(incoming={})
|
30982
|
+
OrderNumberGeneratorUuid.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
30983
|
+
end
|
30984
|
+
|
30985
|
+
def subtype_to_hash
|
30986
|
+
{
|
30987
|
+
:prefix => prefix
|
30988
|
+
}
|
30989
|
+
end
|
30990
|
+
|
30991
|
+
end
|
30992
|
+
|
30372
30993
|
class OrderNumberReference
|
30373
30994
|
|
30374
30995
|
attr_reader :number
|
@@ -33789,18 +34410,17 @@ module Io
|
|
33789
34410
|
|
33790
34411
|
end
|
33791
34412
|
|
33792
|
-
#
|
33793
|
-
#
|
34413
|
+
# The query model is used to present a query to a user, containing both the raw
|
34414
|
+
# query as well as the filter representation of the query.
|
33794
34415
|
class Query
|
33795
34416
|
|
33796
|
-
attr_reader :
|
34417
|
+
attr_reader :q, :filters
|
33797
34418
|
|
33798
34419
|
def initialize(incoming={})
|
33799
34420
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
33800
|
-
HttpClient::Preconditions.require_keys(opts, [:
|
33801
|
-
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
34421
|
+
HttpClient::Preconditions.require_keys(opts, [:q, :filters], 'Query')
|
33802
34422
|
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
33803
|
-
@
|
34423
|
+
@filters = HttpClient::Preconditions.assert_class('filters', opts.delete(:filters), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::QueryFilter) ? x : ::Io::Flow::V0::Models::QueryFilter.from_json(x)) }
|
33804
34424
|
end
|
33805
34425
|
|
33806
34426
|
def to_json
|
@@ -33813,24 +34433,25 @@ module Io
|
|
33813
34433
|
|
33814
34434
|
def to_hash
|
33815
34435
|
{
|
33816
|
-
:id => id,
|
33817
34436
|
:q => q,
|
33818
|
-
:
|
34437
|
+
:filters => filters.map { |o| o.to_hash }
|
33819
34438
|
}
|
33820
34439
|
end
|
33821
34440
|
|
33822
34441
|
end
|
33823
34442
|
|
33824
|
-
#
|
33825
|
-
|
34443
|
+
# The query builder model is used to build a query using structured filters. The
|
34444
|
+
# end result is a single 'q' string - e.g. 'category:jewelry and brand:Flow'
|
34445
|
+
class QueryBuilder
|
33826
34446
|
|
33827
|
-
attr_reader :q, :
|
34447
|
+
attr_reader :q, :filters, :available
|
33828
34448
|
|
33829
34449
|
def initialize(incoming={})
|
33830
34450
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
33831
|
-
HttpClient::Preconditions.require_keys(opts, [:q, :
|
34451
|
+
HttpClient::Preconditions.require_keys(opts, [:q, :filters, :available], 'QueryBuilder')
|
33832
34452
|
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
33833
|
-
@
|
34453
|
+
@filters = HttpClient::Preconditions.assert_class('filters', opts.delete(:filters), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::QueryFilter) ? x : ::Io::Flow::V0::Models::QueryFilter.from_json(x)) }
|
34454
|
+
@available = HttpClient::Preconditions.assert_class('available', opts.delete(:available), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::AvailableFilter) ? x : ::Io::Flow::V0::Models::AvailableFilter.from_json(x)) }
|
33834
34455
|
end
|
33835
34456
|
|
33836
34457
|
def to_json
|
@@ -33838,28 +34459,28 @@ module Io
|
|
33838
34459
|
end
|
33839
34460
|
|
33840
34461
|
def copy(incoming={})
|
33841
|
-
|
34462
|
+
QueryBuilder.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
33842
34463
|
end
|
33843
34464
|
|
33844
34465
|
def to_hash
|
33845
34466
|
{
|
33846
34467
|
:q => q,
|
33847
|
-
:
|
34468
|
+
:filters => filters.map { |o| o.to_hash },
|
34469
|
+
:available => available.map { |o| o.to_hash }
|
33848
34470
|
}
|
33849
34471
|
end
|
33850
34472
|
|
33851
34473
|
end
|
33852
34474
|
|
33853
|
-
|
33854
|
-
class QueryValidation
|
34475
|
+
class QueryBuilderFilterForm < QueryBuilderForm
|
33855
34476
|
|
33856
|
-
attr_reader :
|
34477
|
+
attr_reader :filters
|
33857
34478
|
|
33858
34479
|
def initialize(incoming={})
|
34480
|
+
super(:discriminator => QueryBuilderForm::Types::QUERY_BUILDER_FILTER_FORM)
|
33859
34481
|
opts = HttpClient::Helper.symbolize_keys(incoming)
|
33860
|
-
HttpClient::Preconditions.require_keys(opts, [:
|
33861
|
-
@
|
33862
|
-
@invalid = HttpClient::Preconditions.assert_class('invalid', opts.delete(:invalid), Array).map { |v| HttpClient::Preconditions.assert_class('invalid', v, String) }
|
34482
|
+
HttpClient::Preconditions.require_keys(opts, [:filters], 'QueryBuilderFilterForm')
|
34483
|
+
@filters = HttpClient::Preconditions.assert_class('filters', opts.delete(:filters), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::QueryFilterForm) ? x : ::Io::Flow::V0::Models::QueryFilterForm.from_json(x)) }
|
33863
34484
|
end
|
33864
34485
|
|
33865
34486
|
def to_json
|
@@ -33867,13 +34488,157 @@ module Io
|
|
33867
34488
|
end
|
33868
34489
|
|
33869
34490
|
def copy(incoming={})
|
33870
|
-
|
34491
|
+
QueryBuilderFilterForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
33871
34492
|
end
|
33872
34493
|
|
33873
|
-
def
|
34494
|
+
def subtype_to_hash
|
33874
34495
|
{
|
33875
|
-
:
|
33876
|
-
|
34496
|
+
:filters => filters.map { |o| o.to_hash }
|
34497
|
+
}
|
34498
|
+
end
|
34499
|
+
|
34500
|
+
end
|
34501
|
+
|
34502
|
+
class QueryBuilderQueryForm < QueryBuilderForm
|
34503
|
+
|
34504
|
+
attr_reader :q
|
34505
|
+
|
34506
|
+
def initialize(incoming={})
|
34507
|
+
super(:discriminator => QueryBuilderForm::Types::QUERY_BUILDER_QUERY_FORM)
|
34508
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
34509
|
+
HttpClient::Preconditions.require_keys(opts, [:q], 'QueryBuilderQueryForm')
|
34510
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
34511
|
+
end
|
34512
|
+
|
34513
|
+
def to_json
|
34514
|
+
JSON.dump(to_hash)
|
34515
|
+
end
|
34516
|
+
|
34517
|
+
def copy(incoming={})
|
34518
|
+
QueryBuilderQueryForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
34519
|
+
end
|
34520
|
+
|
34521
|
+
def subtype_to_hash
|
34522
|
+
{
|
34523
|
+
:q => q
|
34524
|
+
}
|
34525
|
+
end
|
34526
|
+
|
34527
|
+
end
|
34528
|
+
|
34529
|
+
class QueryFilterStructured < QueryFilter
|
34530
|
+
|
34531
|
+
attr_reader :q, :field, :operator, :values
|
34532
|
+
|
34533
|
+
def initialize(incoming={})
|
34534
|
+
super(:discriminator => QueryFilter::Types::QUERY_FILTER_STRUCTURED)
|
34535
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
34536
|
+
HttpClient::Preconditions.require_keys(opts, [:q, :field, :operator, :values], 'QueryFilterStructured')
|
34537
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
34538
|
+
@field = HttpClient::Preconditions.assert_class('field', opts.delete(:field), String)
|
34539
|
+
@operator = HttpClient::Preconditions.assert_class('operator', opts.delete(:operator), String)
|
34540
|
+
@values = HttpClient::Preconditions.assert_class('values', opts.delete(:values), Array).map { |v| HttpClient::Preconditions.assert_class('values', v, String) }
|
34541
|
+
end
|
34542
|
+
|
34543
|
+
def to_json
|
34544
|
+
JSON.dump(to_hash)
|
34545
|
+
end
|
34546
|
+
|
34547
|
+
def copy(incoming={})
|
34548
|
+
QueryFilterStructured.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
34549
|
+
end
|
34550
|
+
|
34551
|
+
def subtype_to_hash
|
34552
|
+
{
|
34553
|
+
:q => q,
|
34554
|
+
:field => field,
|
34555
|
+
:operator => operator,
|
34556
|
+
:values => values
|
34557
|
+
}
|
34558
|
+
end
|
34559
|
+
|
34560
|
+
end
|
34561
|
+
|
34562
|
+
class QueryFilterStructuredForm < QueryFilterForm
|
34563
|
+
|
34564
|
+
attr_reader :field, :operator, :values
|
34565
|
+
|
34566
|
+
def initialize(incoming={})
|
34567
|
+
super(:discriminator => QueryFilterForm::Types::QUERY_FILTER_STRUCTURED_FORM)
|
34568
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
34569
|
+
HttpClient::Preconditions.require_keys(opts, [:field, :operator, :values], 'QueryFilterStructuredForm')
|
34570
|
+
@field = HttpClient::Preconditions.assert_class('field', opts.delete(:field), String)
|
34571
|
+
@operator = HttpClient::Preconditions.assert_class('operator', opts.delete(:operator), String)
|
34572
|
+
@values = HttpClient::Preconditions.assert_class('values', opts.delete(:values), Array).map { |v| HttpClient::Preconditions.assert_class('values', v, String) }
|
34573
|
+
end
|
34574
|
+
|
34575
|
+
def to_json
|
34576
|
+
JSON.dump(to_hash)
|
34577
|
+
end
|
34578
|
+
|
34579
|
+
def copy(incoming={})
|
34580
|
+
QueryFilterStructuredForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
34581
|
+
end
|
34582
|
+
|
34583
|
+
def subtype_to_hash
|
34584
|
+
{
|
34585
|
+
:field => field,
|
34586
|
+
:operator => operator,
|
34587
|
+
:values => values
|
34588
|
+
}
|
34589
|
+
end
|
34590
|
+
|
34591
|
+
end
|
34592
|
+
|
34593
|
+
class QueryFilterUnstructured < QueryFilter
|
34594
|
+
|
34595
|
+
attr_reader :q
|
34596
|
+
|
34597
|
+
def initialize(incoming={})
|
34598
|
+
super(:discriminator => QueryFilter::Types::QUERY_FILTER_UNSTRUCTURED)
|
34599
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
34600
|
+
HttpClient::Preconditions.require_keys(opts, [:q], 'QueryFilterUnstructured')
|
34601
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
34602
|
+
end
|
34603
|
+
|
34604
|
+
def to_json
|
34605
|
+
JSON.dump(to_hash)
|
34606
|
+
end
|
34607
|
+
|
34608
|
+
def copy(incoming={})
|
34609
|
+
QueryFilterUnstructured.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
34610
|
+
end
|
34611
|
+
|
34612
|
+
def subtype_to_hash
|
34613
|
+
{
|
34614
|
+
:q => q
|
34615
|
+
}
|
34616
|
+
end
|
34617
|
+
|
34618
|
+
end
|
34619
|
+
|
34620
|
+
class QueryFilterUnstructuredForm < QueryFilterForm
|
34621
|
+
|
34622
|
+
attr_reader :q
|
34623
|
+
|
34624
|
+
def initialize(incoming={})
|
34625
|
+
super(:discriminator => QueryFilterForm::Types::QUERY_FILTER_UNSTRUCTURED_FORM)
|
34626
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
34627
|
+
HttpClient::Preconditions.require_keys(opts, [:q], 'QueryFilterUnstructuredForm')
|
34628
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
34629
|
+
end
|
34630
|
+
|
34631
|
+
def to_json
|
34632
|
+
JSON.dump(to_hash)
|
34633
|
+
end
|
34634
|
+
|
34635
|
+
def copy(incoming={})
|
34636
|
+
QueryFilterUnstructuredForm.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
34637
|
+
end
|
34638
|
+
|
34639
|
+
def subtype_to_hash
|
34640
|
+
{
|
34641
|
+
:q => q
|
33877
34642
|
}
|
33878
34643
|
end
|
33879
34644
|
|
@@ -38506,6 +39271,96 @@ module Io
|
|
38506
39271
|
|
38507
39272
|
end
|
38508
39273
|
|
39274
|
+
# Represents a typed query to indicate which items to include or exclude in a
|
39275
|
+
# subcatalog
|
39276
|
+
class SubcatalogQuery
|
39277
|
+
|
39278
|
+
attr_reader :id, :q, :type
|
39279
|
+
|
39280
|
+
def initialize(incoming={})
|
39281
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
39282
|
+
HttpClient::Preconditions.require_keys(opts, [:id, :q, :type], 'SubcatalogQuery')
|
39283
|
+
@id = HttpClient::Preconditions.assert_class('id', opts.delete(:id), String)
|
39284
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
39285
|
+
@type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::QueryType) ? x : ::Io::Flow::V0::Models::QueryType.apply(x))
|
39286
|
+
end
|
39287
|
+
|
39288
|
+
def to_json
|
39289
|
+
JSON.dump(to_hash)
|
39290
|
+
end
|
39291
|
+
|
39292
|
+
def copy(incoming={})
|
39293
|
+
SubcatalogQuery.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
39294
|
+
end
|
39295
|
+
|
39296
|
+
def to_hash
|
39297
|
+
{
|
39298
|
+
:id => id,
|
39299
|
+
:q => q,
|
39300
|
+
:type => type.value
|
39301
|
+
}
|
39302
|
+
end
|
39303
|
+
|
39304
|
+
end
|
39305
|
+
|
39306
|
+
# Defines a query specifying items to be included or excluded in a subcatalog
|
39307
|
+
class SubcatalogQueryForm
|
39308
|
+
|
39309
|
+
attr_reader :q, :type
|
39310
|
+
|
39311
|
+
def initialize(incoming={})
|
39312
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
39313
|
+
HttpClient::Preconditions.require_keys(opts, [:q, :type], 'SubcatalogQueryForm')
|
39314
|
+
@q = HttpClient::Preconditions.assert_class('q', opts.delete(:q), String)
|
39315
|
+
@type = (x = opts.delete(:type); x.is_a?(::Io::Flow::V0::Models::QueryType) ? x : ::Io::Flow::V0::Models::QueryType.apply(x))
|
39316
|
+
end
|
39317
|
+
|
39318
|
+
def to_json
|
39319
|
+
JSON.dump(to_hash)
|
39320
|
+
end
|
39321
|
+
|
39322
|
+
def copy(incoming={})
|
39323
|
+
SubcatalogQueryForm.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
39324
|
+
end
|
39325
|
+
|
39326
|
+
def to_hash
|
39327
|
+
{
|
39328
|
+
:q => q,
|
39329
|
+
:type => type.value
|
39330
|
+
}
|
39331
|
+
end
|
39332
|
+
|
39333
|
+
end
|
39334
|
+
|
39335
|
+
# Indicates valid and invalid queries
|
39336
|
+
class SubcatalogQueryValidation
|
39337
|
+
|
39338
|
+
attr_reader :valid, :invalid
|
39339
|
+
|
39340
|
+
def initialize(incoming={})
|
39341
|
+
opts = HttpClient::Helper.symbolize_keys(incoming)
|
39342
|
+
HttpClient::Preconditions.require_keys(opts, [:valid, :invalid], 'SubcatalogQueryValidation')
|
39343
|
+
@valid = HttpClient::Preconditions.assert_class('valid', opts.delete(:valid), Array).map { |v| HttpClient::Preconditions.assert_class('valid', v, String) }
|
39344
|
+
@invalid = HttpClient::Preconditions.assert_class('invalid', opts.delete(:invalid), Array).map { |v| HttpClient::Preconditions.assert_class('invalid', v, String) }
|
39345
|
+
end
|
39346
|
+
|
39347
|
+
def to_json
|
39348
|
+
JSON.dump(to_hash)
|
39349
|
+
end
|
39350
|
+
|
39351
|
+
def copy(incoming={})
|
39352
|
+
SubcatalogQueryValidation.new(to_hash.merge(HttpClient::Helper.symbolize_keys(incoming)))
|
39353
|
+
end
|
39354
|
+
|
39355
|
+
def to_hash
|
39356
|
+
{
|
39357
|
+
:valid => valid,
|
39358
|
+
:invalid => invalid
|
39359
|
+
}
|
39360
|
+
end
|
39361
|
+
|
39362
|
+
end
|
39363
|
+
|
38509
39364
|
class SubcatalogReference < ExpandableSubcatalog
|
38510
39365
|
|
38511
39366
|
attr_reader :id
|