Module: Mjml

Defined in:
lib/mjml.rb,
lib/mjml/parser.rb,
lib/mjml/railtie.rb,
lib/mjml/version.rb,
lib/mjml/mjmltemplate.rb,
lib/generators/mjml/mailer/mailer_generator.rb

Defined Under Namespace

Modules: Generators Classes: Handler, Mjmltemplate, Parser, Railtie

Constant Summary collapse

BIN =
discover_mjml_bin
VERSION =
'0.2.0'.freeze
@@processing_options =
{}

Class Method Summary collapse

Class Method Details

.check_version(bin) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/mjml.rb', line 10

def self.check_version(bin)
  begin
    Gem::Dependency.new('','~> 2.0').match?('',`#{bin} --version`)
  rescue
    false
  end
end

.discover_mjml_binObject

Raises:

  • (RuntimeError)


18
19
20
21
22
23
24
25
26
27
28
# File 'lib/mjml.rb', line 18

def self.discover_mjml_bin
  # Check for a global install of MJML binary
  mjml_bin = 'mjml'
  return mjml_bin if check_version(mjml_bin)

  # Check for a local install of MJML binary
  mjml_bin = File.join(`npm bin`.chomp, 'mjml')
  return mjml_bin if check_version(mjml_bin)

  raise RuntimeError, "Couldn't find the MJML binary.. have you run $ npm install mjml?"
end