Sha256: fe44354cda782ab731655bc6ed115448104ecf020e4f28d9efc1e24c64a4b67d

Contents?: true

Size: 805 Bytes

Versions: 7

Compression:

Stored size: 805 Bytes

Contents

# frozen_string_literal: true

require_relative 'tagged_with_query/query_base'
require_relative 'tagged_with_query/exclude_tags_query'
require_relative 'tagged_with_query/any_tags_query'
require_relative 'tagged_with_query/all_tags_query'

module ActsAsTaggableOn
  module Taggable
    module TaggedWithQuery
      def self.build(taggable_model, tag_model, tagging_model, tag_list, options)
        if options[:exclude].present?
          ExcludeTagsQuery.new(taggable_model, tag_model, tagging_model, tag_list, options).build
        elsif options[:any].present?
          AnyTagsQuery.new(taggable_model, tag_model, tagging_model, tag_list, options).build
        else
          AllTagsQuery.new(taggable_model, tag_model, tagging_model, tag_list, options).build
        end
      end
    end
  end
end

Version data entries

7 entries across 6 versions & 2 rubygems

Version Path
acts-as-taggable-on-12.0.0 lib/acts-as-taggable-on/taggable/tagged_with_query.rb
acts-as-taggable-on-11.0.0 lib/acts-as-taggable-on/taggable/tagged_with_query.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/acts-as-taggable-on-10.0.0/lib/acts_as_taggable_on/taggable/tagged_with_query.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/acts-as-taggable-on-9.0.1/lib/acts_as_taggable_on/taggable/tagged_with_query.rb
acts-as-taggable-on-10.0.0 lib/acts_as_taggable_on/taggable/tagged_with_query.rb
acts-as-taggable-on-9.0.1 lib/acts_as_taggable_on/taggable/tagged_with_query.rb
acts-as-taggable-on-9.0.0 lib/acts_as_taggable_on/taggable/tagged_with_query.rb