Sha256: 3d1d5019a9e52fc14e9bb17c8fa98e64f650b5f0fad1b3a1561da64b5dce8155

Contents?: true

Size: 1.73 KB

Versions: 3

Compression:

Stored size: 1.73 KB

Contents

module FontAwesome
  module Sass
    class << self
      def load!
        register_compass_extension if compass?

        if rails?
          register_rails_engine
        elsif sprockets?
          register_sprockets
        end

        configure_sass
      end

      # Paths
      def gem_path
        @gem_path ||= File.expand_path('..', File.dirname(__FILE__))
      end

      def stylesheets_path
        File.join(assets_path, 'stylesheets')
      end

      def fonts_path
        File.join(assets_path, 'fonts')
      end

      def assets_path
        @assets_path ||= File.join(gem_path, 'assets')
      end

      # Environment detection helpers
      def sprockets?
        defined?(::Sprockets)
      end

      def compass?
        defined?(::Compass)
      end

      def rails?
        defined?(::Rails)
      end

      def sprockets?
        defined?(::Sprockets)
      end

      private

      def configure_sass
        require 'sass'

        ::Sass.load_paths << stylesheets_path
      end

      def register_compass_extension
        require 'font_awesome/sass/version'

        ::Compass::Frameworks.register(
            'font-awesome',
            :version               => FontAwesome::Sass::VERSION,
            :path                  => gem_path,
            :stylesheets_directory => stylesheets_path,
            :templates_directory   => File.join(gem_path, 'templates')
        )
      end

      def register_rails_engine
        require 'sass-rails'
        require 'font_awesome/sass/rails/engine'
        require 'font_awesome/sass/rails/railtie'
      end

      def register_sprockets
        Sprockets.append_path(stylesheets_path)
        Sprockets.append_path(fonts_path)
      end
    end
  end
end

FontAwesome::Sass.load!

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
semantic-fa-sass-1.0.0 lib/semantic-fa-sass.rb
font-awesome-sass-4.3.2.1 lib/font-awesome-sass.rb
font-awesome-sass-4.3.2 lib/font-awesome-sass.rb