filestack icon indicating copy to clipboard operation
filestack copied to clipboard

Enable Filestack uploader inside the Asset Manager

GrapesJS Filestack

This plugin replaces the default file uploader with the one from Filestack

Demo: http://grapesjs.com/demo.html

GrapesJS


Summary

  • Plugin
    • Name: gjs-plugin-filestack
    • Options:
      • key Filestack's API key (required)
      • btnEl Custom button element which triggers Filestack modal
      • btnText Text for the button in case the custom one is not provided, default: Add images
      • filestackOpts Filestack's options, default: {accept: 'image/*', maxFiles: 10}
      • onComplete On complete upload callback, eg. onComplete: (blobs, assets) => {...} blobs Array of Objects, eg. [{url:'...', filename: 'name.jpeg', ...}] assets Array of inserted assets

Prerequisites

  • filestack-js up to v0.11.5 only (not compatible with filestack-js v1 and above)

Download

  • npm i grapesjs-plugin-filestack
  • Latest release link https://github.com/artf/grapesjs-plugin-filestack/releases/latest

Usage

<link href="path/to/grapes.min.css" rel="stylesheet"/>
<link href="path/to/grapesjs-plugin-filestack.css" rel="stylesheet"/>

<script src="path/to/grapes.min.js"></script>
<script src="path/to/grapesjs-plugin-filestack.min.js"></script>

<div id="gjs"></div>

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

Development

Clone the repository

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

Install it

$ npm i

The plugin relies on GrapesJS via peerDependencies so you have to install it manually (without adding it to package.json)

$ npm i grapesjs --no-save

Start the dev server

$ npm start

License

BSD 3-Clause