class Epuber::Compiler::FileTypes::StylusFile
Public Class Methods
Source
# File lib/epuber/compiler/file_types/stylus_file.rb, line 38 def self.find_imports(content) content.to_enum(:scan, /^\s*@import ("|')([^'"]*)("|')/).map { Regexp.last_match[2] } end
@return [Array<String>]
Public Instance Methods
Source
# File lib/epuber/compiler/file_types/stylus_file.rb, line 32 def find_dependencies self.class.find_imports(File.read(abs_source_path)) end
Source
# File lib/epuber/compiler/file_types/stylus_file.rb, line 13 def process(compilation_context) if destination_file_up_to_date? # HACK: for now, we need to process the file again, because we need to find linked files process_css(File.read(final_destination_path), compilation_context) return end Stylus.define('__is_debug', !compilation_context.release_build) Stylus.define('__is_verbose_mode', compilation_context.verbose?) Stylus.define('__target_name', compilation_context.target.name) Stylus.define('__book_title', compilation_context.book.title) Stylus.define('__const', compilation_context.target.constants) css = Stylus.compile(File.new(abs_source_path)) write_compiled(process_css(css, compilation_context)) update_metadata! end
@param [Compiler::CompilationContext] compilation_context