Class: Lanes::API::LanesTemplates
Instance Method Summary
collapse
#prepare, register, #wrap_js
Instance Method Details
#combined_contents ⇒ Object
115
116
117
|
# File 'lib/lanes/api/javascript_processor.rb', line 115
def combined_contents
[CoffeeScript::Source.contents, contents].join(";\n")
end
|
#compile(template) ⇒ Object
123
124
125
126
|
# File 'lib/lanes/api/javascript_processor.rb', line 123
def compile(template)
template = template.read if template.respond_to?(:read)
context.call("eco.precompile", template, 'Lanes.Templates.Wrapper','Lanes.Views.Helpers')
end
|
#contents ⇒ Object
111
112
113
|
# File 'lib/lanes/api/javascript_processor.rb', line 111
def contents
@contents ||= Pathname.new(__FILE__).dirname.join('eco.js').read
end
|
#context ⇒ Object
119
120
121
|
# File 'lib/lanes/api/javascript_processor.rb', line 119
def context
@context ||= ExecJS.compile(combined_contents)
end
|
#evaluate(scope, locals, &block) ⇒ Object
107
108
109
|
# File 'lib/lanes/api/javascript_processor.rb', line 107
def evaluate(scope, locals, &block)
"Lanes.Templates['#{scope.logical_path}']=" + self.compile(data)
end
|