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
         
     |