Sha256: e7d7e0040a9d9dee16712562d4935746f753d44cdd823b1389030f720e24ce87

Contents?: true

Size: 1.28 KB

Versions: 12

Compression:

Stored size: 1.28 KB

Contents

module Spree
  module Api
    module V2
      module Storefront
        class TaxonsController < ::Spree::Api::V2::ResourceController
          private

          def collection_serializer
            Spree::Api::Dependencies.storefront_taxon_serializer.constantize
          end

          def resource_serializer
            Spree::Api::Dependencies.storefront_taxon_serializer.constantize
          end

          def collection_finder
            Spree::Api::Dependencies.storefront_taxon_finder.constantize
          end

          def paginated_collection
            collection_paginator.new(collection, params).call
          end

          def collection
            collection_finder.new(scope: scope, params: params).execute
          end

          def resource
            scope.find_by(permalink: params[:id]) || scope.find(params[:id])
          end

          def model_class
            Spree::Taxon
          end

          def scope_includes
            node_includes = %i[icon products parent taxonomy]

            {
              parent: node_includes,
              children: node_includes,
              taxonomy: [root: node_includes],
              products: [],
              icon: [attachment_attachment: :blob]
            }
          end
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
spree_api-4.2.7 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.6 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.5 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.4 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.3.1 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.3 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.2 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.1 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.0 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.0.rc5 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.0.rc4 app/controllers/spree/api/v2/storefront/taxons_controller.rb
spree_api-4.2.0.rc3 app/controllers/spree/api/v2/storefront/taxons_controller.rb