Skip to content

Releases: mjmlio/mjml

3.3.5

25 Sep 13:59
Compare
Choose a tag to compare

Fix because of major issue in 3.3.4 ( should be the real last release this time )

Fixes

  • HTML comment in mj-raw no longer break the email thanks to @witzig PR !

3.3.4

20 Sep 11:13
Compare
Choose a tag to compare

Note : This should be the last release of MJML 3 branch, (if no breaking bug is found in this release)

Features

  • mj-image supports srcset attributes thanks to @ctborg
  • mj-button supports text-align now #699
  • mj-carousel-image supports title attribute #734

Fixes

  • mj-social logo can have extra height on Outlook
  • mj-section with a background image can have extra 20px padding on Outlook solved by @ogonkov
  • Encode thin arrows -> <- to prevent issue with the XML parser solved by @zouxuoz
  • Documentation warning on base-url for mj-social not applied to custom network
  • Replacing deprecated fs-promise with mz thanks to @jackytck
  • If mjContent has more than one react node it no longer adds an unwanted , see #675 thanks to @etiennemarais

Thanks to @zouxuoz and @jamesblight for contributing on the documentation

4.0.0-alpha.3

23 Aug 09:20
Compare
Choose a tag to compare

To follow the advancement of MJML 4, please have a look at this PR: #706

Breaking changes

  • MJML doesn't use React anymore, meaning custom components created for a previous version of MJML don't work anymore
  • mj-container and mj-body are merged into a single mj-body component. Templates created for a previous version of MJML to be adapted to reflect this change.
  • The structure of the mj-social component changes for more consistency, following the semantic structure below. Templates created for a previous version of MJML to be adapted to reflect this change.
<mj-social>
  <mj-social-link name="facebook" ... />
  <mj-social-link src="custom-icon-url" ... />
</mj-social>

Features

  • mj-column now supports the padding attribute (especially useful to create gutters between columns!) (#160)
  • Full-width sections are now correctly displayed in Outlook desktop (#284)
  • mj-raw doesn't alter the xml/html content anymore (such as auto-closing tags) and is added in the HTML output where it is expected (cf #485 & #600)
  • The new component mj-breakpoint enables to change the default breakpoint used by MJML
  • The new API createComponent enables you to render MJML inside a component without importing it
  • Attributes inheritance is now supported when using MJML inside components

List of components supported in this alpha

  • mj-preview
  • mj-body
  • mj-wrapper
  • mj-section
  • mj-column
  • mj-group
  • mj-button
  • mj-image
  • mj-text
  • mj-divider
  • mj-spacer
  • mj-social (new syntax)

3.3.3

07 Jun 12:22
Compare
Choose a tag to compare

Features

  • New component: mj-preview in mj-head enables to set an email preview that will be displayed in email clients but hidden from the body of the email (#388)
  • New attribute: all MJML body tags now support the css-class attribute. The class name set in css-class will be passed to the root HTML element created from the MJML tag as well as the Outlook conditional comment if any, with a -outlook suffix (#532)
  • New attribute: mj-button, mj-image, mj-carousel-image, mj-location, mj-navbar and mj-social now support the rel attribute (#533)
  • mj-social now supports the border-radius attribute (#556)

Fixes

  • The line-height attribute of mj-button is now set to 1.2 by default to avoid any issue with multi-line buttons thanks to @rogierslag
  • The text-transform attribute on mj-link is now correctly validated by the mjml-validator (#596)
  • The alt attribute on mj-image is now set to 13px by default instead of 0px to avoid it from being invisible

3.3.3-beta.3

22 May 12:22
Compare
Choose a tag to compare

Features

Fixes

  • mj-text now only adds the class on the root tr when using css-class
  • MJML-Validator should no longer return a validation error about css-class being invalid

3.3.3-beta.1

04 May 16:05
Compare
Choose a tag to compare

Features

  • mj-buttons are now fully clickable, including in the area set with inner-padding. Thanks a lot to @guillaumebreux for this contribution (#557)
  • mj-button has now a default line-height of 1.2 to avoid any issue with multi line buttons thanks to @rogierslag
  • mj-button, mj-image, mj-carousel-image, mj-location, mj-navbar and mj-social now support the rel attribute (#533)
  • All MJML body tags now support the css-class attribute. The class name set in css-class will be passed to the root HTML element created from the MJML tag (#532)
  • mj-social now supports the border-radius attribute (#556)

Fixes

  • The text-transform attribute on mj-link is now correctly recognized by the mjml-validator (#596)
  • The alt attribute on mj-image doesn't have a default font-size set to 0px anymore but to 13px instead

3.3.2

20 Apr 12:00
Compare
Choose a tag to compare

Fixes

  • Hotfix to prevent the sanitizing of < & > from breaking inline styles

3.3.1

20 Apr 11:59
Compare
Choose a tag to compare

Features

  • Added a viewport meta (#631)

Fixes

  • Sanitize specific patterns of special characters ({{ & <% or {%) at transpilation time to prevent Juice to loop infintely or misinterprete them as pseudo tags
  • Replace the use of word-break by word-wrap for better support compatibility (Firefox)

3.3.0

17 Mar 15:21
Compare
Choose a tag to compare

Features

  • New component mj-wrapper lets you wrap multiple sections to share a background or borders across multiple sections
  • New component mj-accordion enables to add an accordion readers can interact with inside their email client
  • mj-style no longer inlines styles by default but adds the css into the head (as a consequence, it now supports media queries!)
  • mj-style now supports inline="inline" attribute to inline the given css instead of adding it to the head

API

  • mj-head is now available when passing MJML as a JSON object to mjml2html

Fixes

  • Updated the error message when mj-body has no children thanks to @michelgotta #514
  • Fixed numeral on mjml-invoice
  • Fixed default border-radius on mj-image which was set to null #538
  • Fixed encoding/decoding issues with special characters
  • Fixed the issue where $ + a number was duplicating content, thanks to @koss-lebedev #559
  • MJML is now using Cheerio instead of jQuery inside an Electron app (especially useful for Atom packages)
  • Fixed the issue where nested mj-includeinside an mj-head wasn't parsed correctly (introduced in 3.2)
  • MJML doesn't use Juice by default anymore, but only if there is CSS to inline (using mj-style inline="inline") for better performances
  • Fixed the issue where --validate wasn't working properly, especially if mj-head was used

3.3.0-beta.8

07 Mar 16:10
Compare
Choose a tag to compare

Fixes

  • Fix numeral on mjml-invoice