flowcommerce 0.2.68 → 0.2.69
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/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
|