mjml-rails 4.3.2 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 835831f3f46a19ac9adccc6315e14b4406471b33248bbb8706c179af1b2d95ec
4
- data.tar.gz: 69eea1e58bea9682d785121777842198347bf15b147c3c2b42cac793c14943e3
3
+ metadata.gz: 88e3f9ecbcbb4ddc89a64ae73dc35f62df462edc2e52a80ffcce8b76b17e7324
4
+ data.tar.gz: 44f3771373b38d7ba49ebee9ae6e503a4f094f2c7ab96bb0be88e6b3326ee38d
5
5
  SHA512:
6
- metadata.gz: f42b61228d444e1fedf443f0fcec60ca546c3020216aca7419d75b2f2660e18b08e189516e8015f75435d30c7200fe93245a95e770fba8ea8a87870fe1b872b5
7
- data.tar.gz: 9bf3caefaf4d1eeb23e82aca83bdb8a77fcf3f6bb3759c99ea38f9ec4779de69111353def1afbfda518ba0b38f53477bd28bc7da806a4ac5aabe766d1e73e81d
6
+ metadata.gz: 60001f52fd6d52b7ed1babb9e1387e6488b7f05624ddc5565f411caf87c4455c1c92d47466216b84f7aec540ad3e19343c178c9c64f82f8751447f52500e2dce
7
+ data.tar.gz: 43df7639a83deb7ffa0fb2e13ce28c5d2e6faa357fb18d7415a1b3a7ea022d25875365653b989783de72d4f4b7a4453cf0bc340e36d4a9f69769807c93e8815e
Binary file
data.tar.gz.sig CHANGED
Binary file
data/README.md CHANGED
@@ -89,8 +89,10 @@ If there are configurations you'd like change:
89
89
  - render errors: defaults to `true` (errors raised)
90
90
  - minify: defaults to `false` (not minified)
91
91
  - beautify: defaults to `true` (beautified)
92
+ - validation_level: defaults to `soft` (MJML syntax validation)
92
93
 
93
94
  ```ruby
95
+ # config/initializers/mjml.rb
94
96
  Mjml.setup do |config|
95
97
  # set to `false` to ignore errors silently
96
98
  config.raise_render_exception = true
@@ -98,12 +100,14 @@ Mjml.setup do |config|
98
100
  # optimize the size of your email
99
101
  config.beautify = false
100
102
  config.minify = true
103
+ config.validation_level = "strict"
101
104
  end
102
105
  ```
103
106
 
104
107
  If you’d like to specify a different MJML binary to run other than `4.`:
105
108
 
106
109
  ```ruby
110
+ # config/initializers/mjml.rb
107
111
  Mjml.setup do |config|
108
112
  config.mjml_binary_version_supported = "3.3.5"
109
113
  end
@@ -7,7 +7,7 @@ require "rubygems"
7
7
  require "open3"
8
8
 
9
9
  module Mjml
10
- mattr_accessor :template_language, :raise_render_exception, :mjml_binary_version_supported, :mjml_binary_error_string, :beautify, :minify
10
+ mattr_accessor :template_language, :raise_render_exception, :mjml_binary_version_supported, :mjml_binary_error_string, :beautify, :minify, :validation_level
11
11
 
12
12
  @@template_language = :erb
13
13
  @@raise_render_exception = true
@@ -15,6 +15,7 @@ module Mjml
15
15
  @@mjml_binary_error_string = "Couldn't find the MJML #{Mjml.mjml_binary_version_supported} binary.. have you run $ npm install mjml?"
16
16
  @@beautify = true
17
17
  @@minify = false
18
+ @@validation_level = "soft"
18
19
 
19
20
  def self.check_version(bin)
20
21
  IO.popen([bin, '--version']) { |io| io.read.include?("mjml-core: #{Mjml.mjml_binary_version_supported}") }
@@ -22,7 +22,7 @@ module Mjml
22
22
  file.write(input)
23
23
  file # return tempfile from block so #unlink works later
24
24
  end
25
- run(in_tmp_file.path, Mjml.beautify, Mjml.minify)
25
+ run(in_tmp_file.path, Mjml.beautify, Mjml.minify, Mjml.validation_level)
26
26
  rescue
27
27
  raise if Mjml.raise_render_exception
28
28
  ""
@@ -33,9 +33,9 @@ module Mjml
33
33
  # Exec mjml command
34
34
  #
35
35
  # @return [String] The result as string
36
- def run(in_tmp_file, beautify=true, minify=false)
36
+ def run(in_tmp_file, beautify=true, minify=false, validation_level="soft")
37
37
  Tempfile.create(["out", ".html"]) do |out_tmp_file|
38
- command = "#{mjml_bin} -r #{in_tmp_file} -o #{out_tmp_file.path} --config.beautify #{beautify} --config.minify #{minify}"
38
+ command = "#{mjml_bin} -r #{in_tmp_file} -o #{out_tmp_file.path} --config.beautify #{beautify} --config.minify #{minify} --config.validationLevel #{validation_level}"
39
39
  _, _, stderr, _ = Open3.popen3(command)
40
40
  raise ParseError.new(stderr.read.chomp) unless stderr.eof?
41
41
  out_tmp_file.read
@@ -1,4 +1,4 @@
1
1
  module Mjml
2
2
  # Version number no longer matches MJML.io version
3
- VERSION = "4.3.2"
3
+ VERSION = "4.4.0"
4
4
  end
@@ -38,20 +38,23 @@ describe Mjml::Parser do
38
38
  end
39
39
  end
40
40
 
41
- describe 'can read beautify and minify configs' do
41
+ describe 'can read beautify, minify, and validation_level configs' do
42
42
  it 'use defaults if no config is set' do
43
- expect(Mjml.beautify).equal?(true);
44
- expect(Mjml.minify).equal?(false);
43
+ expect(Mjml.beautify).must_equal(true)
44
+ expect(Mjml.minify).must_equal(false)
45
+ expect(Mjml.validation_level).must_equal('soft')
45
46
  end
46
47
 
47
48
  it 'use setup config' do
48
49
  Mjml.setup do |config|
49
50
  config.beautify = false
50
51
  config.minify = true
52
+ config.validation_level = 'strict'
51
53
  end
52
54
 
53
- expect(Mjml.beautify).equal?(false);
54
- expect(Mjml.minify).equal?(true);
55
+ expect(Mjml.beautify).must_equal(false)
56
+ expect(Mjml.minify).must_equal(true)
57
+ expect(Mjml.validation_level).must_equal('strict')
55
58
  end
56
59
  end
57
60
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mjml-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.3.2
4
+ version: 4.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Loffler
@@ -35,7 +35,7 @@ cert_chain:
35
35
  HIqlmrbWgQA1FL8W9hf5pmQBhNu6zNDtZooPwDPGf0klvVt/Lkh4zjDHlO284UV5
36
36
  Z3vePI5/udzlcrq80eIHh5Ch5NVPG8B7O1qMSwJo4to=
37
37
  -----END CERTIFICATE-----
38
- date: 2020-01-11 00:00:00.000000000 Z
38
+ date: 2020-04-04 00:00:00.000000000 Z
39
39
  dependencies: []
40
40
  description: Render MJML + ERb template views in Rails
41
41
  email: sighmon@sighmon.com
metadata.gz.sig CHANGED
Binary file