class Middleman::Sprockets::Extension

Private Instance Methods

try_require(script) click to toggle source
# File lib/middleman4-sprockets3-sassc/monkey-patches.rb, line 52
def try_require script
  begin
    require script
    true
  rescue LoadError
    false
  end
end
use_sassc_if_available() click to toggle source
# File lib/middleman4-sprockets3-sassc/monkey-patches.rb, line 35
def use_sassc_if_available
  if try_require('sassc-rails') && defined?(::SassC::Rails)
    environment.register_engine '.sass', ::Sprockets::SassC::SassProcessor, mime_type: 'text/css',
      silence_deprecation: true
    environment.register_engine '.scss', ::Sprockets::SassC::ScssProcessor, mime_type: 'text/css',
      silence_deprecation: true
    logger.info '== Sprockets will render css with SassC'
  elsif try_require('sprockets/sassc_processor') && defined?(::SassC)
    environment.register_transformer 'text/sass', 'text/css', ::Sprockets::SasscProcessor.new
    environment.register_transformer 'text/scss', 'text/css', ::Sprockets::ScsscProcessor.new
    logger.info '== Sprockets will render css with SassC'
  else
    logger.info "== Sprockets will render css with ruby sass\n" \
      '   consider using Sprockets 4.x to render with SassC'
  end
end