Class: TurnipFormatter::Template

Inherits:
Object
  • Object
show all
Defined in:
lib/turnip_formatter/template.rb

Class Method Summary collapse

Class Method Details

.add_js(js_string) ⇒ Object



13
14
15
# File 'lib/turnip_formatter/template.rb', line 13

def add_js(js_string)
  js_list << js_string
end

.add_js_file(file) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/turnip_formatter/template.rb', line 17

def add_js_file(file)
  if URI(file).scheme
    js_file_list << file
  else
    js_list << File.read(file)
  end
end

.add_scss(scss_string) ⇒ Object



25
26
27
# File 'lib/turnip_formatter/template.rb', line 25

def add_scss(scss_string)
  css_list << Sass::Engine.new(scss_string, scss_option).render
end

.add_scss_file(path) ⇒ Object



29
30
31
# File 'lib/turnip_formatter/template.rb', line 29

def add_scss_file(path)
  css_list << Sass::Engine.for_file(path, scss_option).render
end

.css_listObject



55
56
57
# File 'lib/turnip_formatter/template.rb', line 55

def css_list
  @css_list ||= []
end

.css_renderObject



43
44
45
# File 'lib/turnip_formatter/template.rb', line 43

def css_render
  css_list.join("\n")
end

.js_file_listObject



51
52
53
# File 'lib/turnip_formatter/template.rb', line 51

def js_file_list
  @js_file_list ||= []
end

.js_file_renderObject



37
38
39
40
41
# File 'lib/turnip_formatter/template.rb', line 37

def js_file_render
  js_file_list.map do |file|
    "<script src=\"#{file}\" type=\"text/javascript\"></script>"
  end.join("\n")
end

.js_listObject



47
48
49
# File 'lib/turnip_formatter/template.rb', line 47

def js_list
  @js_list ||= []
end

.js_renderObject



33
34
35
# File 'lib/turnip_formatter/template.rb', line 33

def js_render
  js_list.join("\n")
end

.project_nameObject



9
10
11
# File 'lib/turnip_formatter/template.rb', line 9

def project_name
  RSpec.configuration.respond_to?(:project_name) ? RSpec.configuration.project_name : 'Turnip'
end

.scss_optionObject



59
60
61
# File 'lib/turnip_formatter/template.rb', line 59

def scss_option
  { syntax: :scss, style: :compressed }
end