mjml-rails 4.0.0 → 4.0.1
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +2 -2
- data/README.md +21 -1
- data/lib/mjml.rb +2 -1
- data/lib/mjml/parser.rb +1 -1
- data/lib/mjml/version.rb +1 -1
- data/test/parser_test.rb +41 -0
- data/test/test_helper.rb +1 -0
- metadata +4 -2
- metadata.gz.sig +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5014e13de47b20eba32fbaeadc7b709c709a641a
|
4
|
+
data.tar.gz: e480e849f097186c3cc15689304b31e0a677dbda
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 288223021e733b84cad492e4f8a096b25dca32aed961a669758a855299ee2e85a6fafe248ad3025525d911690b31f49eb42bbd6b051935b173b611870fe33314
|
7
|
+
data.tar.gz: 645b6fd54de458ea4b5907b908013b77066f65b5c9925aab1293af4dc7232261353178f5adcb3f1adb08079ed3759c8875d196cdc0dedb734690bd4373790271
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
Y?�>�2�[�`Iŀ�Zs�z����П�f<��φ���8���棠��=Kɕ�p�DPϾ��0��E�&�)=���S)A
|
2
|
+
�<�K��kc���Ȋ����^#����a�q#�uD���XHp?xX�c
|
data/README.md
CHANGED
@@ -4,11 +4,16 @@
|
|
4
4
|
|
5
5
|
**MJML-Rails** allows you to render HTML e-mails from an [MJML](https://mjml.io) template.
|
6
6
|
|
7
|
+
*Please note: this gem has recently updated to support MJML 4 - so there may be rendering changes. Check your output! And please submit pull requests for updates to the documentation if needed*
|
8
|
+
|
7
9
|
An example template might look like:
|
8
10
|
|
9
11
|
```erb
|
10
12
|
<!-- ./app/views/user_mailer/email.mjml -->
|
11
13
|
<mjml>
|
14
|
+
<mj-head>
|
15
|
+
<mj-preview>Hello World</mj-preview>
|
16
|
+
</mj-head>
|
12
17
|
<mj-body>
|
13
18
|
<mj-container>
|
14
19
|
<mj-section>
|
@@ -62,7 +67,7 @@ bundle install
|
|
62
67
|
Install the MJML parser (optional -g to install it globally):
|
63
68
|
|
64
69
|
```console
|
65
|
-
npm install -g mjml
|
70
|
+
npm install -g mjml
|
66
71
|
```
|
67
72
|
|
68
73
|
Note that you'll need at least Node.js version 6 for MJML to function properly.
|
@@ -76,6 +81,15 @@ Mjml.setup do |config|
|
|
76
81
|
end
|
77
82
|
```
|
78
83
|
|
84
|
+
If you'd like to see render errors:
|
85
|
+
|
86
|
+
```ruby
|
87
|
+
Mjml.setup do |config|
|
88
|
+
# Default is `false` (errors suppressed), set to `true` to enable error raising
|
89
|
+
config.raise_render_exception = true
|
90
|
+
end
|
91
|
+
```
|
92
|
+
|
79
93
|
### MJML v3.x & v4.0.x support
|
80
94
|
|
81
95
|
Version 4.0.x of this gem brings support for MJML 4.0.x
|
@@ -94,6 +108,12 @@ For MJML 3.x lock the mjml-rails gem:
|
|
94
108
|
gem 'mjml-rails', '2.4.3'
|
95
109
|
```
|
96
110
|
|
111
|
+
And then to install MJML 3.x
|
112
|
+
|
113
|
+
```console
|
114
|
+
npm install -g mjml@3.3.5
|
115
|
+
```
|
116
|
+
|
97
117
|
### How to guides
|
98
118
|
|
99
119
|
[Hugo Giraudel](https://twitter.com/hugogiraudel) wrote a post on [using MJML in Rails](http://dev.edenspiekermann.com/2016/06/02/using-mjml-in-rails/).
|
data/lib/mjml.rb
CHANGED
@@ -5,9 +5,10 @@ require "mjml/railtie"
|
|
5
5
|
require "rubygems"
|
6
6
|
|
7
7
|
module Mjml
|
8
|
-
mattr_accessor :template_language
|
8
|
+
mattr_accessor :template_language, :raise_render_exception
|
9
9
|
|
10
10
|
@@template_language = :erb
|
11
|
+
@@raise_render_exception = false
|
11
12
|
|
12
13
|
def self.check_version(bin)
|
13
14
|
IO.popen("#{bin} --version").read.include?('mjml-core: 4.0.')
|
data/lib/mjml/parser.rb
CHANGED
data/lib/mjml/version.rb
CHANGED
data/test/parser_test.rb
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe Mjml::Parser do
|
4
|
+
let(:input) { mock('input') }
|
5
|
+
let(:parser) { Mjml::Parser.new(input) }
|
6
|
+
|
7
|
+
describe '#render' do
|
8
|
+
describe 'when execption is raised' do
|
9
|
+
let(:custom_error_class) { Class.new(StandardError) }
|
10
|
+
let(:error) { custom_error_class.new('custom error') }
|
11
|
+
|
12
|
+
before do
|
13
|
+
parser.stubs(:run).raises(error)
|
14
|
+
end
|
15
|
+
|
16
|
+
describe 'when render exception raising is enabled' do
|
17
|
+
before do
|
18
|
+
Mjml.setup do |config|
|
19
|
+
config.raise_render_exception = true
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'raises exception' do
|
24
|
+
-> { parser.render }.must_raise(custom_error_class, error.message)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe 'when render exception raising is disabled' do
|
29
|
+
before do
|
30
|
+
Mjml.setup do |config|
|
31
|
+
config.raise_render_exception = false
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'returns empty string' do
|
36
|
+
parser.render.must_equal ''
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
data/test/test_helper.rb
CHANGED
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.0.
|
4
|
+
version: 4.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Simon Loffler
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
IUdCp7zF7QpeLz6cgerOpdG0NLHQOEPcWqHpt4yM++TieNrYOuJlkkSd11Ypvgsc
|
32
32
|
RRE0kJj2aO7haTBQ7uQl3cTv2c1s4bLu
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2018-03
|
34
|
+
date: 2018-04-03 00:00:00.000000000 Z
|
35
35
|
dependencies: []
|
36
36
|
description: Render MJML + ERb template views in Rails
|
37
37
|
email: sighmon@sighmon.com
|
@@ -53,6 +53,7 @@ files:
|
|
53
53
|
- test/generator_test.rb
|
54
54
|
- test/mjml_subdir_test.rb
|
55
55
|
- test/mjml_test.rb
|
56
|
+
- test/parser_test.rb
|
56
57
|
- test/template_test.rb
|
57
58
|
- test/test_helper.rb
|
58
59
|
homepage: https://github.com/sighmon/mjml-rails
|
@@ -82,6 +83,7 @@ summary: MJML + ERb templates
|
|
82
83
|
test_files:
|
83
84
|
- test/generator_test.rb
|
84
85
|
- test/mjml_subdir_test.rb
|
86
|
+
- test/parser_test.rb
|
85
87
|
- test/mjml_test.rb
|
86
88
|
- test/template_test.rb
|
87
89
|
- test/test_helper.rb
|
metadata.gz.sig
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
|
1
|
+
�b���W
|
2
|
+
1�s��D�'f�>��Z����U�p��P��X��]�{e������_�z�'�0M]�����6�9]t��Rq���F����N�LL
|