0.0.139 • Published 3 years ago

@adabra/ui-libs-grapesjs-mjml v0.0.139

Weekly downloads
11
License
MIT
Repository
-
Last release
3 years ago

GrapesJS MJML

This plugin enables the usage of MJML components inside the GrapesJS environment. MJML components are rendered in real-time using the official compiler, therefore the result is, almost, the same as using the MJML Live Editor.

Demo

Supported components: mj-container mj-section mj-column mj-text mj-image mj-button mj-social mj-divider mj-spacer

Options

OptionDescriptionDefault
categoryLabelCategory for blocks''
importPlaceholderImport placeholder MJML''
modalTitleImportTitle for the import modalImport MJML
modalBtnImportTest for the import buttonImport
modalLabelImportDescription for the import modal''
modalTitleExportTitle for the export modalExport MJML
modalLabelExportDescription for the export modal''
overwriteExportOverwrite default export commandtrue
preMjmlString before the MJML in export code''
postMjmlString after the MJML in export code''
resetBlocksClean all previous blocks if truetrue
resetDevicesClean all previous devices and set a new one for mobiletrue,
resetStyleManagerReset the Style Manager and add new properties for MJMLtrue,

Download

  • npm i grapesjs-mjml

Usage

<link href="path/to/grapes.min.css" rel="stylesheet"/>
<script src="path/to/grapes.min.js"></script>
<script src="path/to/grapesjs-mjml.min.js"></script>

<div id="gjs">
  <!-- Your MJML body here -->
  <mj-container>
        <mj-section>
          <mj-column>
            <mj-text>My Company</mj-text>
          </mj-column>
        </mj-section>
  <mj-container>
</div>

<script type="text/javascript">
  var editor = grapesjs.init({
      fromElement: 1,
      container : '#gjs',
      plugins: ['gjs-mjml'],
      pluginsOpts: {
        'gjs-mjml': {/* ...options */}
      }
  });
</script>

Development

Clone the repository

$ git clone https://github.com/artf/grapesjs-mjml.git
$ cd grapesjs-mjml

Install it

$ npm i

The plugin relies on GrapesJS via peerDependencies so you have to install it manually

$ npm i grapesjs --no-save

Start the dev server

$ npm start

Alternatively, you can clone the grapesjs repository in a different directory, npm link it and use that as the grapesjs dependency. This lets you simultaneously run grapesjs-mjml and grapesjs from source.

Install grapesjs and run the webpack watcher in it:

$ git clone https://github.com/artf/grapesjs
$ cd grapesjs
$ npm install
$ npm link
$ webpack --watch

Install grapesjs-mjml, link the grapesjs repo from above and start the dev server:

$ git clone https://github.com/artf/grapesjs-mjml
$ npm install
$ npm link grapesjs
$ npm run

License

BSD 3-Clause