Sha256: 7fdfd809a8aef92a8a005df8bec7aa950816fccbd401805c00435e7dc2f12afc

Contents?: true

Size: 732 Bytes

Versions: 53

Compression:

Stored size: 732 Bytes

Contents

module Para
  module Plugins
    class Set
      include Enumerable

      attr_accessor :items

      delegate :+, :<<, :each, to: :items

      def initialize
        @items = []
      end

      def javascript_includes
        each_with_object([]) do |plugin, collection|
          collection.concat(includes_for(:javascript, plugin))
        end
      end

      def stylesheet_includes
        each_with_object([]) do |plugin, collection|
          collection.concat(includes_for(:stylesheet, plugin))
        end
      end

      private

      def includes_for(type, plugin)
        mod = Para::Plugins.module_name_for(plugin).constantize
        mod.try(:config).try(:"#{ type }_includes") || []
      end
    end
  end
end

Version data entries

53 entries across 53 versions & 1 rubygems

Version Path
para-0.12.5 lib/para/plugins/set.rb
para-0.12.4 lib/para/plugins/set.rb
para-0.12.3 lib/para/plugins/set.rb
para-0.12.2 lib/para/plugins/set.rb
para-0.12.1 lib/para/plugins/set.rb
para-0.12.0 lib/para/plugins/set.rb
para-0.11.4 lib/para/plugins/set.rb
para-0.11.3 lib/para/plugins/set.rb
para-0.11.2 lib/para/plugins/set.rb
para-0.11.1 lib/para/plugins/set.rb
para-0.11.0 lib/para/plugins/set.rb
para-0.10.0 lib/para/plugins/set.rb
para-0.9.4 lib/para/plugins/set.rb
para-0.9.3.3 lib/para/plugins/set.rb
para-0.9.3.2 lib/para/plugins/set.rb
para-0.9.3.1 lib/para/plugins/set.rb
para-0.9.2 lib/para/plugins/set.rb
para-0.9.0 lib/para/plugins/set.rb
para-0.8.15 lib/para/plugins/set.rb
para-0.8.14 lib/para/plugins/set.rb