/******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
/******/ 		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function(exports, name, getter) {
/******/ 		if(!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ 		}
/******/ 	};
/******/
/******/ 	// define __esModule on exports
/******/ 	__webpack_require__.r = function(exports) {
/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 		}
/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
/******/ 	};
/******/
/******/ 	// create a fake namespace object
/******/ 	// mode & 1: value is a module id, require it
/******/ 	// mode & 2: merge all properties of value into the ns
/******/ 	// mode & 4: return value when already ns object
/******/ 	// mode & 8|1: behave like require
/******/ 	__webpack_require__.t = function(value, mode) {
/******/ 		if(mode & 1) value = __webpack_require__(value);
/******/ 		if(mode & 8) return value;
/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ 		var ns = Object.create(null);
/******/ 		__webpack_require__.r(ns);
/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ 		return ns;
/******/ 	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function(module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
/******/ 	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "";
/******/
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = "./src/blocks.js");
/******/ })
/************************************************************************/
/******/ ({

/***/ "./node_modules/@babel/runtime/helpers/defineProperty.js":
/*!***************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/defineProperty.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

module.exports = _defineProperty;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/extends.js":
/*!********************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/extends.js ***!
  \********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _extends() {
  module.exports = _extends = Object.assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  return _extends.apply(this, arguments);
}

module.exports = _extends;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js":
/*!************************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var objectWithoutPropertiesLoose = __webpack_require__(/*! ./objectWithoutPropertiesLoose */ "./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js");

function _objectWithoutProperties(source, excluded) {
  if (source == null) return {};
  var target = objectWithoutPropertiesLoose(source, excluded);
  var key, i;

  if (Object.getOwnPropertySymbols) {
    var sourceSymbolKeys = Object.getOwnPropertySymbols(source);

    for (i = 0; i < sourceSymbolKeys.length; i++) {
      key = sourceSymbolKeys[i];
      if (excluded.indexOf(key) >= 0) continue;
      if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
      target[key] = source[key];
    }
  }

  return target;
}

module.exports = _objectWithoutProperties;

/***/ }),

/***/ "./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js":
/*!*****************************************************************************!*\
  !*** ./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js ***!
  \*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

function _objectWithoutPropertiesLoose(source, excluded) {
  if (source == null) return {};
  var target = {};
  var sourceKeys = Object.keys(source);
  var key, i;

  for (i = 0; i < sourceKeys.length; i++) {
    key = sourceKeys[i];
    if (excluded.indexOf(key) >= 0) continue;
    target[key] = source[key];
  }

  return target;
}

module.exports = _objectWithoutPropertiesLoose;

/***/ }),

/***/ "./node_modules/batch-processor/src/batch-processor.js":
/*!*************************************************************!*\
  !*** ./node_modules/batch-processor/src/batch-processor.js ***!
  \*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__(/*! ./utils */ "./node_modules/batch-processor/src/utils.js");

module.exports = function batchProcessorMaker(options) {
    options             = options || {};
    var reporter        = options.reporter;
    var asyncProcess    = utils.getOption(options, "async", true);
    var autoProcess     = utils.getOption(options, "auto", true);

    if(autoProcess && !asyncProcess) {
        reporter && reporter.warn("Invalid options combination. auto=true and async=false is invalid. Setting async=true.");
        asyncProcess = true;
    }

    var batch = Batch();
    var asyncFrameHandler;
    var isProcessing = false;

    function addFunction(level, fn) {
        if(!isProcessing && autoProcess && asyncProcess && batch.size() === 0) {
            // Since this is async, it is guaranteed to be executed after that the fn is added to the batch.
            // This needs to be done before, since we're checking the size of the batch to be 0.
            processBatchAsync();
        }

        batch.add(level, fn);
    }

    function processBatch() {
        // Save the current batch, and create a new batch so that incoming functions are not added into the currently processing batch.
        // Continue processing until the top-level batch is empty (functions may be added to the new batch while processing, and so on).
        isProcessing = true;
        while (batch.size()) {
            var processingBatch = batch;
            batch = Batch();
            processingBatch.process();
        }
        isProcessing = false;
    }

    function forceProcessBatch(localAsyncProcess) {
        if (isProcessing) {
            return;
        }

        if(localAsyncProcess === undefined) {
            localAsyncProcess = asyncProcess;
        }

        if(asyncFrameHandler) {
            cancelFrame(asyncFrameHandler);
            asyncFrameHandler = null;
        }

        if(localAsyncProcess) {
            processBatchAsync();
        } else {
            processBatch();
        }
    }

    function processBatchAsync() {
        asyncFrameHandler = requestFrame(processBatch);
    }

    function clearBatch() {
        batch           = {};
        batchSize       = 0;
        topLevel        = 0;
        bottomLevel     = 0;
    }

    function cancelFrame(listener) {
        // var cancel = window.cancelAnimationFrame || window.mozCancelAnimationFrame || window.webkitCancelAnimationFrame || window.clearTimeout;
        var cancel = clearTimeout;
        return cancel(listener);
    }

    function requestFrame(callback) {
        // var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || function(fn) { return window.setTimeout(fn, 20); };
        var raf = function(fn) { return setTimeout(fn, 0); };
        return raf(callback);
    }

    return {
        add: addFunction,
        force: forceProcessBatch
    };
};

function Batch() {
    var batch       = {};
    var size        = 0;
    var topLevel    = 0;
    var bottomLevel = 0;

    function add(level, fn) {
        if(!fn) {
            fn = level;
            level = 0;
        }

        if(level > topLevel) {
            topLevel = level;
        } else if(level < bottomLevel) {
            bottomLevel = level;
        }

        if(!batch[level]) {
            batch[level] = [];
        }

        batch[level].push(fn);
        size++;
    }

    function process() {
        for(var level = bottomLevel; level <= topLevel; level++) {
            var fns = batch[level];

            for(var i = 0; i < fns.length; i++) {
                var fn = fns[i];
                fn();
            }
        }
    }

    function getSize() {
        return size;
    }

    return {
        add: add,
        process: process,
        size: getSize
    };
}


/***/ }),

/***/ "./node_modules/batch-processor/src/utils.js":
/*!***************************************************!*\
  !*** ./node_modules/batch-processor/src/utils.js ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = module.exports = {};

utils.getOption = getOption;

function getOption(options, name, defaultValue) {
    var value = options[name];

    if((value === undefined || value === null) && defaultValue !== undefined) {
        return defaultValue;
    }

    return value;
}


/***/ }),

/***/ "./node_modules/bowser/src/bowser.js":
/*!*******************************************!*\
  !*** ./node_modules/bowser/src/bowser.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/*!
 * Bowser - a browser detector
 * https://github.com/ded/bowser
 * MIT License | (c) Dustin Diaz 2015
 */

!function (root, name, definition) {
  if ( true && module.exports) module.exports = definition()
  else if (true) __webpack_require__(/*! !webpack amd define */ "./node_modules/webpack/buildin/amd-define.js")(name, definition)
  else {}
}(this, 'bowser', function () {
  /**
    * See useragents.js for examples of navigator.userAgent
    */

  var t = true

  function detect(ua) {

    function getFirstMatch(regex) {
      var match = ua.match(regex);
      return (match && match.length > 1 && match[1]) || '';
    }

    function getSecondMatch(regex) {
      var match = ua.match(regex);
      return (match && match.length > 1 && match[2]) || '';
    }

    var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase()
      , likeAndroid = /like android/i.test(ua)
      , android = !likeAndroid && /android/i.test(ua)
      , nexusMobile = /nexus\s*[0-6]\s*/i.test(ua)
      , nexusTablet = !nexusMobile && /nexus\s*[0-9]+/i.test(ua)
      , chromeos = /CrOS/.test(ua)
      , silk = /silk/i.test(ua)
      , sailfish = /sailfish/i.test(ua)
      , tizen = /tizen/i.test(ua)
      , webos = /(web|hpw)(o|0)s/i.test(ua)
      , windowsphone = /windows phone/i.test(ua)
      , samsungBrowser = /SamsungBrowser/i.test(ua)
      , windows = !windowsphone && /windows/i.test(ua)
      , mac = !iosdevice && !silk && /macintosh/i.test(ua)
      , linux = !android && !sailfish && !tizen && !webos && /linux/i.test(ua)
      , edgeVersion = getSecondMatch(/edg([ea]|ios)\/(\d+(\.\d+)?)/i)
      , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i)
      , tablet = /tablet/i.test(ua) && !/tablet pc/i.test(ua)
      , mobile = !tablet && /[^-]mobi/i.test(ua)
      , xbox = /xbox/i.test(ua)
      , result

    if (/opera/i.test(ua)) {
      //  an old Opera
      result = {
        name: 'Opera'
      , opera: t
      , version: versionIdentifier || getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i)
      }
    } else if (/opr\/|opios/i.test(ua)) {
      // a new Opera
      result = {
        name: 'Opera'
        , opera: t
        , version: getFirstMatch(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i) || versionIdentifier
      }
    }
    else if (/SamsungBrowser/i.test(ua)) {
      result = {
        name: 'Samsung Internet for Android'
        , samsungBrowser: t
        , version: versionIdentifier || getFirstMatch(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i)
      }
    }
    else if (/Whale/i.test(ua)) {
      result = {
        name: 'NAVER Whale browser'
        , whale: t
        , version: getFirstMatch(/(?:whale)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/MZBrowser/i.test(ua)) {
      result = {
        name: 'MZ Browser'
        , mzbrowser: t
        , version: getFirstMatch(/(?:MZBrowser)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/coast/i.test(ua)) {
      result = {
        name: 'Opera Coast'
        , coast: t
        , version: versionIdentifier || getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i)
      }
    }
    else if (/focus/i.test(ua)) {
      result = {
        name: 'Focus'
        , focus: t
        , version: getFirstMatch(/(?:focus)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/yabrowser/i.test(ua)) {
      result = {
        name: 'Yandex Browser'
      , yandexbrowser: t
      , version: versionIdentifier || getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i)
      }
    }
    else if (/ucbrowser/i.test(ua)) {
      result = {
          name: 'UC Browser'
        , ucbrowser: t
        , version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/mxios/i.test(ua)) {
      result = {
        name: 'Maxthon'
        , maxthon: t
        , version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/epiphany/i.test(ua)) {
      result = {
        name: 'Epiphany'
        , epiphany: t
        , version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/puffin/i.test(ua)) {
      result = {
        name: 'Puffin'
        , puffin: t
        , version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i)
      }
    }
    else if (/sleipnir/i.test(ua)) {
      result = {
        name: 'Sleipnir'
        , sleipnir: t
        , version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (/k-meleon/i.test(ua)) {
      result = {
        name: 'K-Meleon'
        , kMeleon: t
        , version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i)
      }
    }
    else if (windowsphone) {
      result = {
        name: 'Windows Phone'
      , osname: 'Windows Phone'
      , windowsphone: t
      }
      if (edgeVersion) {
        result.msedge = t
        result.version = edgeVersion
      }
      else {
        result.msie = t
        result.version = getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/msie|trident/i.test(ua)) {
      result = {
        name: 'Internet Explorer'
      , msie: t
      , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i)
      }
    } else if (chromeos) {
      result = {
        name: 'Chrome'
      , osname: 'Chrome OS'
      , chromeos: t
      , chromeBook: t
      , chrome: t
      , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
      }
    } else if (/edg([ea]|ios)/i.test(ua)) {
      result = {
        name: 'Microsoft Edge'
      , msedge: t
      , version: edgeVersion
      }
    }
    else if (/vivaldi/i.test(ua)) {
      result = {
        name: 'Vivaldi'
        , vivaldi: t
        , version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i) || versionIdentifier
      }
    }
    else if (sailfish) {
      result = {
        name: 'Sailfish'
      , osname: 'Sailfish OS'
      , sailfish: t
      , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/seamonkey\//i.test(ua)) {
      result = {
        name: 'SeaMonkey'
      , seamonkey: t
      , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/firefox|iceweasel|fxios/i.test(ua)) {
      result = {
        name: 'Firefox'
      , firefox: t
      , version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i)
      }
      if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) {
        result.firefoxos = t
        result.osname = 'Firefox OS'
      }
    }
    else if (silk) {
      result =  {
        name: 'Amazon Silk'
      , silk: t
      , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/phantom/i.test(ua)) {
      result = {
        name: 'PhantomJS'
      , phantom: t
      , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/slimerjs/i.test(ua)) {
      result = {
        name: 'SlimerJS'
        , slimer: t
        , version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i)
      }
    }
    else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) {
      result = {
        name: 'BlackBerry'
      , osname: 'BlackBerry OS'
      , blackberry: t
      , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i)
      }
    }
    else if (webos) {
      result = {
        name: 'WebOS'
      , osname: 'WebOS'
      , webos: t
      , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i)
      };
      /touchpad\//i.test(ua) && (result.touchpad = t)
    }
    else if (/bada/i.test(ua)) {
      result = {
        name: 'Bada'
      , osname: 'Bada'
      , bada: t
      , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i)
      };
    }
    else if (tizen) {
      result = {
        name: 'Tizen'
      , osname: 'Tizen'
      , tizen: t
      , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier
      };
    }
    else if (/qupzilla/i.test(ua)) {
      result = {
        name: 'QupZilla'
        , qupzilla: t
        , version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i) || versionIdentifier
      }
    }
    else if (/chromium/i.test(ua)) {
      result = {
        name: 'Chromium'
        , chromium: t
        , version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i) || versionIdentifier
      }
    }
    else if (/chrome|crios|crmo/i.test(ua)) {
      result = {
        name: 'Chrome'
        , chrome: t
        , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i)
      }
    }
    else if (android) {
      result = {
        name: 'Android'
        , version: versionIdentifier
      }
    }
    else if (/safari|applewebkit/i.test(ua)) {
      result = {
        name: 'Safari'
      , safari: t
      }
      if (versionIdentifier) {
        result.version = versionIdentifier
      }
    }
    else if (iosdevice) {
      result = {
        name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod'
      }
      // WTF: version is not part of user agent in web apps
      if (versionIdentifier) {
        result.version = versionIdentifier
      }
    }
    else if(/googlebot/i.test(ua)) {
      result = {
        name: 'Googlebot'
      , googlebot: t
      , version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i) || versionIdentifier
      }
    }
    else {
      result = {
        name: getFirstMatch(/^(.*)\/(.*) /),
        version: getSecondMatch(/^(.*)\/(.*) /)
     };
   }

    // set webkit or gecko flag for browsers based on these engines
    if (!result.msedge && /(apple)?webkit/i.test(ua)) {
      if (/(apple)?webkit\/537\.36/i.test(ua)) {
        result.name = result.name || "Blink"
        result.blink = t
      } else {
        result.name = result.name || "Webkit"
        result.webkit = t
      }
      if (!result.version && versionIdentifier) {
        result.version = versionIdentifier
      }
    } else if (!result.opera && /gecko\//i.test(ua)) {
      result.name = result.name || "Gecko"
      result.gecko = t
      result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i)
    }

    // set OS flags for platforms that have multiple browsers
    if (!result.windowsphone && (android || result.silk)) {
      result.android = t
      result.osname = 'Android'
    } else if (!result.windowsphone && iosdevice) {
      result[iosdevice] = t
      result.ios = t
      result.osname = 'iOS'
    } else if (mac) {
      result.mac = t
      result.osname = 'macOS'
    } else if (xbox) {
      result.xbox = t
      result.osname = 'Xbox'
    } else if (windows) {
      result.windows = t
      result.osname = 'Windows'
    } else if (linux) {
      result.linux = t
      result.osname = 'Linux'
    }

    function getWindowsVersion (s) {
      switch (s) {
        case 'NT': return 'NT'
        case 'XP': return 'XP'
        case 'NT 5.0': return '2000'
        case 'NT 5.1': return 'XP'
        case 'NT 5.2': return '2003'
        case 'NT 6.0': return 'Vista'
        case 'NT 6.1': return '7'
        case 'NT 6.2': return '8'
        case 'NT 6.3': return '8.1'
        case 'NT 10.0': return '10'
        default: return undefined
      }
    }

    // OS version extraction
    var osVersion = '';
    if (result.windows) {
      osVersion = getWindowsVersion(getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i))
    } else if (result.windowsphone) {
      osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i);
    } else if (result.mac) {
      osVersion = getFirstMatch(/Mac OS X (\d+([_\.\s]\d+)*)/i);
      osVersion = osVersion.replace(/[_\s]/g, '.');
    } else if (iosdevice) {
      osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i);
      osVersion = osVersion.replace(/[_\s]/g, '.');
    } else if (android) {
      osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i);
    } else if (result.webos) {
      osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i);
    } else if (result.blackberry) {
      osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i);
    } else if (result.bada) {
      osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i);
    } else if (result.tizen) {
      osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i);
    }
    if (osVersion) {
      result.osversion = osVersion;
    }

    // device type extraction
    var osMajorVersion = !result.windows && osVersion.split('.')[0];
    if (
         tablet
      || nexusTablet
      || iosdevice == 'ipad'
      || (android && (osMajorVersion == 3 || (osMajorVersion >= 4 && !mobile)))
      || result.silk
    ) {
      result.tablet = t
    } else if (
         mobile
      || iosdevice == 'iphone'
      || iosdevice == 'ipod'
      || android
      || nexusMobile
      || result.blackberry
      || result.webos
      || result.bada
    ) {
      result.mobile = t
    }

    // Graded Browser Support
    // http://developer.yahoo.com/yui/articles/gbs
    if (result.msedge ||
        (result.msie && result.version >= 10) ||
        (result.yandexbrowser && result.version >= 15) ||
		    (result.vivaldi && result.version >= 1.0) ||
        (result.chrome && result.version >= 20) ||
        (result.samsungBrowser && result.version >= 4) ||
        (result.whale && compareVersions([result.version, '1.0']) === 1) ||
        (result.mzbrowser && compareVersions([result.version, '6.0']) === 1) ||
        (result.focus && compareVersions([result.version, '1.0']) === 1) ||
        (result.firefox && result.version >= 20.0) ||
        (result.safari && result.version >= 6) ||
        (result.opera && result.version >= 10.0) ||
        (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) ||
        (result.blackberry && result.version >= 10.1)
        || (result.chromium && result.version >= 20)
        ) {
      result.a = t;
    }
    else if ((result.msie && result.version < 10) ||
        (result.chrome && result.version < 20) ||
        (result.firefox && result.version < 20.0) ||
        (result.safari && result.version < 6) ||
        (result.opera && result.version < 10.0) ||
        (result.ios && result.osversion && result.osversion.split(".")[0] < 6)
        || (result.chromium && result.version < 20)
        ) {
      result.c = t
    } else result.x = t

    return result
  }

  var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent || '' : '')

  bowser.test = function (browserList) {
    for (var i = 0; i < browserList.length; ++i) {
      var browserItem = browserList[i];
      if (typeof browserItem=== 'string') {
        if (browserItem in bowser) {
          return true;
        }
      }
    }
    return false;
  }

  /**
   * Get version precisions count
   *
   * @example
   *   getVersionPrecision("1.10.3") // 3
   *
   * @param  {string} version
   * @return {number}
   */
  function getVersionPrecision(version) {
    return version.split(".").length;
  }

  /**
   * Array::map polyfill
   *
   * @param  {Array} arr
   * @param  {Function} iterator
   * @return {Array}
   */
  function map(arr, iterator) {
    var result = [], i;
    if (Array.prototype.map) {
      return Array.prototype.map.call(arr, iterator);
    }
    for (i = 0; i < arr.length; i++) {
      result.push(iterator(arr[i]));
    }
    return result;
  }

  /**
   * Calculate browser version weight
   *
   * @example
   *   compareVersions(['1.10.2.1',  '1.8.2.1.90'])    // 1
   *   compareVersions(['1.010.2.1', '1.09.2.1.90']);  // 1
   *   compareVersions(['1.10.2.1',  '1.10.2.1']);     // 0
   *   compareVersions(['1.10.2.1',  '1.0800.2']);     // -1
   *
   * @param  {Array<String>} versions versions to compare
   * @return {Number} comparison result
   */
  function compareVersions(versions) {
    // 1) get common precision for both versions, for example for "10.0" and "9" it should be 2
    var precision = Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1]));
    var chunks = map(versions, function (version) {
      var delta = precision - getVersionPrecision(version);

      // 2) "9" -> "9.0" (for precision = 2)
      version = version + new Array(delta + 1).join(".0");

      // 3) "9.0" -> ["000000000"", "000000009"]
      return map(version.split("."), function (chunk) {
        return new Array(20 - chunk.length).join("0") + chunk;
      }).reverse();
    });

    // iterate in reverse order by reversed chunks array
    while (--precision >= 0) {
      // 4) compare: "000000009" > "000000010" = false (but "9" > "10" = true)
      if (chunks[0][precision] > chunks[1][precision]) {
        return 1;
      }
      else if (chunks[0][precision] === chunks[1][precision]) {
        if (precision === 0) {
          // all version chunks are same
          return 0;
        }
      }
      else {
        return -1;
      }
    }
  }

  /**
   * Check if browser is unsupported
   *
   * @example
   *   bowser.isUnsupportedBrowser({
   *     msie: "10",
   *     firefox: "23",
   *     chrome: "29",
   *     safari: "5.1",
   *     opera: "16",
   *     phantom: "534"
   *   });
   *
   * @param  {Object}  minVersions map of minimal version to browser
   * @param  {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
   * @param  {String}  [ua] user agent string
   * @return {Boolean}
   */
  function isUnsupportedBrowser(minVersions, strictMode, ua) {
    var _bowser = bowser;

    // make strictMode param optional with ua param usage
    if (typeof strictMode === 'string') {
      ua = strictMode;
      strictMode = void(0);
    }

    if (strictMode === void(0)) {
      strictMode = false;
    }
    if (ua) {
      _bowser = detect(ua);
    }

    var version = "" + _bowser.version;
    for (var browser in minVersions) {
      if (minVersions.hasOwnProperty(browser)) {
        if (_bowser[browser]) {
          if (typeof minVersions[browser] !== 'string') {
            throw new Error('Browser version in the minVersion map should be a string: ' + browser + ': ' + String(minVersions));
          }

          // browser version and min supported version.
          return compareVersions([version, minVersions[browser]]) < 0;
        }
      }
    }

    return strictMode; // not found
  }

  /**
   * Check if browser is supported
   *
   * @param  {Object} minVersions map of minimal version to browser
   * @param  {Boolean} [strictMode = false] flag to return false if browser wasn't found in map
   * @param  {String}  [ua] user agent string
   * @return {Boolean}
   */
  function check(minVersions, strictMode, ua) {
    return !isUnsupportedBrowser(minVersions, strictMode, ua);
  }

  bowser.isUnsupportedBrowser = isUnsupportedBrowser;
  bowser.compareVersions = compareVersions;
  bowser.check = check;

  /*
   * Set our detect method to the main bowser object so we can
   * reuse it to test other user agents.
   * This is needed to implement future tests.
   */
  bowser._detect = detect;

  /*
   * Set our detect public method to the main bowser object
   * This is needed to implement bowser in server side
   */
  bowser.detect = detect;
  return bowser
});


/***/ }),

/***/ "./node_modules/classnames/index.js":
/*!******************************************!*\
  !*** ./node_modules/classnames/index.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
  Copyright (c) 2017 Jed Watson.
  Licensed under the MIT License (MIT), see
  http://jedwatson.github.io/classnames
*/
/* global define */

(function () {
	'use strict';

	var hasOwn = {}.hasOwnProperty;

	function classNames () {
		var classes = [];

		for (var i = 0; i < arguments.length; i++) {
			var arg = arguments[i];
			if (!arg) continue;

			var argType = typeof arg;

			if (argType === 'string' || argType === 'number') {
				classes.push(arg);
			} else if (Array.isArray(arg) && arg.length) {
				var inner = classNames.apply(null, arg);
				if (inner) {
					classes.push(inner);
				}
			} else if (argType === 'object') {
				for (var key in arg) {
					if (hasOwn.call(arg, key) && arg[key]) {
						classes.push(key);
					}
				}
			}
		}

		return classes.join(' ');
	}

	if ( true && module.exports) {
		classNames.default = classNames;
		module.exports = classNames;
	} else if (true) {
		// register as 'classnames', consistent with npm package name
		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
			return classNames;
		}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
	} else {}
}());


/***/ }),

/***/ "./node_modules/create-react-class/factory.js":
/*!****************************************************!*\
  !*** ./node_modules/create-react-class/factory.js ***!
  \****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */



var _assign = __webpack_require__(/*! object-assign */ "./node_modules/object-assign/index.js");

var emptyObject = __webpack_require__(/*! fbjs/lib/emptyObject */ "./node_modules/fbjs/lib/emptyObject.js");
var _invariant = __webpack_require__(/*! fbjs/lib/invariant */ "./node_modules/fbjs/lib/invariant.js");

if (true) {
  var warning = __webpack_require__(/*! fbjs/lib/warning */ "./node_modules/fbjs/lib/warning.js");
}

var MIXINS_KEY = 'mixins';

// Helper function to allow the creation of anonymous functions which do not
// have .name set to the name of the variable being assigned to.
function identity(fn) {
  return fn;
}

var ReactPropTypeLocationNames;
if (true) {
  ReactPropTypeLocationNames = {
    prop: 'prop',
    context: 'context',
    childContext: 'child context'
  };
} else {}

function factory(ReactComponent, isValidElement, ReactNoopUpdateQueue) {
  /**
   * Policies that describe methods in `ReactClassInterface`.
   */

  var injectedMixins = [];

  /**
   * Composite components are higher-level components that compose other composite
   * or host components.
   *
   * To create a new type of `ReactClass`, pass a specification of
   * your new class to `React.createClass`. The only requirement of your class
   * specification is that you implement a `render` method.
   *
   *   var MyComponent = React.createClass({
   *     render: function() {
   *       return <div>Hello World</div>;
   *     }
   *   });
   *
   * The class specification supports a specific protocol of methods that have
   * special meaning (e.g. `render`). See `ReactClassInterface` for
   * more the comprehensive protocol. Any other properties and methods in the
   * class specification will be available on the prototype.
   *
   * @interface ReactClassInterface
   * @internal
   */
  var ReactClassInterface = {
    /**
     * An array of Mixin objects to include when defining your component.
     *
     * @type {array}
     * @optional
     */
    mixins: 'DEFINE_MANY',

    /**
     * An object containing properties and methods that should be defined on
     * the component's constructor instead of its prototype (static methods).
     *
     * @type {object}
     * @optional
     */
    statics: 'DEFINE_MANY',

    /**
     * Definition of prop types for this component.
     *
     * @type {object}
     * @optional
     */
    propTypes: 'DEFINE_MANY',

    /**
     * Definition of context types for this component.
     *
     * @type {object}
     * @optional
     */
    contextTypes: 'DEFINE_MANY',

    /**
     * Definition of context types this component sets for its children.
     *
     * @type {object}
     * @optional
     */
    childContextTypes: 'DEFINE_MANY',

    // ==== Definition methods ====

    /**
     * Invoked when the component is mounted. Values in the mapping will be set on
     * `this.props` if that prop is not specified (i.e. using an `in` check).
     *
     * This method is invoked before `getInitialState` and therefore cannot rely
     * on `this.state` or use `this.setState`.
     *
     * @return {object}
     * @optional
     */
    getDefaultProps: 'DEFINE_MANY_MERGED',

    /**
     * Invoked once before the component is mounted. The return value will be used
     * as the initial value of `this.state`.
     *
     *   getInitialState: function() {
     *     return {
     *       isOn: false,
     *       fooBaz: new BazFoo()
     *     }
     *   }
     *
     * @return {object}
     * @optional
     */
    getInitialState: 'DEFINE_MANY_MERGED',

    /**
     * @return {object}
     * @optional
     */
    getChildContext: 'DEFINE_MANY_MERGED',

    /**
     * Uses props from `this.props` and state from `this.state` to render the
     * structure of the component.
     *
     * No guarantees are made about when or how often this method is invoked, so
     * it must not have side effects.
     *
     *   render: function() {
     *     var name = this.props.name;
     *     return <div>Hello, {name}!</div>;
     *   }
     *
     * @return {ReactComponent}
     * @required
     */
    render: 'DEFINE_ONCE',

    // ==== Delegate methods ====

    /**
     * Invoked when the component is initially created and about to be mounted.
     * This may have side effects, but any external subscriptions or data created
     * by this method must be cleaned up in `componentWillUnmount`.
     *
     * @optional
     */
    componentWillMount: 'DEFINE_MANY',

    /**
     * Invoked when the component has been mounted and has a DOM representation.
     * However, there is no guarantee that the DOM node is in the document.
     *
     * Use this as an opportunity to operate on the DOM when the component has
     * been mounted (initialized and rendered) for the first time.
     *
     * @param {DOMElement} rootNode DOM element representing the component.
     * @optional
     */
    componentDidMount: 'DEFINE_MANY',

    /**
     * Invoked before the component receives new props.
     *
     * Use this as an opportunity to react to a prop transition by updating the
     * state using `this.setState`. Current props are accessed via `this.props`.
     *
     *   componentWillReceiveProps: function(nextProps, nextContext) {
     *     this.setState({
     *       likesIncreasing: nextProps.likeCount > this.props.likeCount
     *     });
     *   }
     *
     * NOTE: There is no equivalent `componentWillReceiveState`. An incoming prop
     * transition may cause a state change, but the opposite is not true. If you
     * need it, you are probably looking for `componentWillUpdate`.
     *
     * @param {object} nextProps
     * @optional
     */
    componentWillReceiveProps: 'DEFINE_MANY',

    /**
     * Invoked while deciding if the component should be updated as a result of
     * receiving new props, state and/or context.
     *
     * Use this as an opportunity to `return false` when you're certain that the
     * transition to the new props/state/context will not require a component
     * update.
     *
     *   shouldComponentUpdate: function(nextProps, nextState, nextContext) {
     *     return !equal(nextProps, this.props) ||
     *       !equal(nextState, this.state) ||
     *       !equal(nextContext, this.context);
     *   }
     *
     * @param {object} nextProps
     * @param {?object} nextState
     * @param {?object} nextContext
     * @return {boolean} True if the component should update.
     * @optional
     */
    shouldComponentUpdate: 'DEFINE_ONCE',

    /**
     * Invoked when the component is about to update due to a transition from
     * `this.props`, `this.state` and `this.context` to `nextProps`, `nextState`
     * and `nextContext`.
     *
     * Use this as an opportunity to perform preparation before an update occurs.
     *
     * NOTE: You **cannot** use `this.setState()` in this method.
     *
     * @param {object} nextProps
     * @param {?object} nextState
     * @param {?object} nextContext
     * @param {ReactReconcileTransaction} transaction
     * @optional
     */
    componentWillUpdate: 'DEFINE_MANY',

    /**
     * Invoked when the component's DOM representation has been updated.
     *
     * Use this as an opportunity to operate on the DOM when the component has
     * been updated.
     *
     * @param {object} prevProps
     * @param {?object} prevState
     * @param {?object} prevContext
     * @param {DOMElement} rootNode DOM element representing the component.
     * @optional
     */
    componentDidUpdate: 'DEFINE_MANY',

    /**
     * Invoked when the component is about to be removed from its parent and have
     * its DOM representation destroyed.
     *
     * Use this as an opportunity to deallocate any external resources.
     *
     * NOTE: There is no `componentDidUnmount` since your component will have been
     * destroyed by that point.
     *
     * @optional
     */
    componentWillUnmount: 'DEFINE_MANY',

    /**
     * Replacement for (deprecated) `componentWillMount`.
     *
     * @optional
     */
    UNSAFE_componentWillMount: 'DEFINE_MANY',

    /**
     * Replacement for (deprecated) `componentWillReceiveProps`.
     *
     * @optional
     */
    UNSAFE_componentWillReceiveProps: 'DEFINE_MANY',

    /**
     * Replacement for (deprecated) `componentWillUpdate`.
     *
     * @optional
     */
    UNSAFE_componentWillUpdate: 'DEFINE_MANY',

    // ==== Advanced methods ====

    /**
     * Updates the component's currently mounted DOM representation.
     *
     * By default, this implements React's rendering and reconciliation algorithm.
     * Sophisticated clients may wish to override this.
     *
     * @param {ReactReconcileTransaction} transaction
     * @internal
     * @overridable
     */
    updateComponent: 'OVERRIDE_BASE'
  };

  /**
   * Similar to ReactClassInterface but for static methods.
   */
  var ReactClassStaticInterface = {
    /**
     * This method is invoked after a component is instantiated and when it
     * receives new props. Return an object to update state in response to
     * prop changes. Return null to indicate no change to state.
     *
     * If an object is returned, its keys will be merged into the existing state.
     *
     * @return {object || null}
     * @optional
     */
    getDerivedStateFromProps: 'DEFINE_MANY_MERGED'
  };

  /**
   * Mapping from class specification keys to special processing functions.
   *
   * Although these are declared like instance properties in the specification
   * when defining classes using `React.createClass`, they are actually static
   * and are accessible on the constructor instead of the prototype. Despite
   * being static, they must be defined outside of the "statics" key under
   * which all other static methods are defined.
   */
  var RESERVED_SPEC_KEYS = {
    displayName: function(Constructor, displayName) {
      Constructor.displayName = displayName;
    },
    mixins: function(Constructor, mixins) {
      if (mixins) {
        for (var i = 0; i < mixins.length; i++) {
          mixSpecIntoComponent(Constructor, mixins[i]);
        }
      }
    },
    childContextTypes: function(Constructor, childContextTypes) {
      if (true) {
        validateTypeDef(Constructor, childContextTypes, 'childContext');
      }
      Constructor.childContextTypes = _assign(
        {},
        Constructor.childContextTypes,
        childContextTypes
      );
    },
    contextTypes: function(Constructor, contextTypes) {
      if (true) {
        validateTypeDef(Constructor, contextTypes, 'context');
      }
      Constructor.contextTypes = _assign(
        {},
        Constructor.contextTypes,
        contextTypes
      );
    },
    /**
     * Special case getDefaultProps which should move into statics but requires
     * automatic merging.
     */
    getDefaultProps: function(Constructor, getDefaultProps) {
      if (Constructor.getDefaultProps) {
        Constructor.getDefaultProps = createMergedResultFunction(
          Constructor.getDefaultProps,
          getDefaultProps
        );
      } else {
        Constructor.getDefaultProps = getDefaultProps;
      }
    },
    propTypes: function(Constructor, propTypes) {
      if (true) {
        validateTypeDef(Constructor, propTypes, 'prop');
      }
      Constructor.propTypes = _assign({}, Constructor.propTypes, propTypes);
    },
    statics: function(Constructor, statics) {
      mixStaticSpecIntoComponent(Constructor, statics);
    },
    autobind: function() {}
  };

  function validateTypeDef(Constructor, typeDef, location) {
    for (var propName in typeDef) {
      if (typeDef.hasOwnProperty(propName)) {
        // use a warning instead of an _invariant so components
        // don't show up in prod but only in __DEV__
        if (true) {
          warning(
            typeof typeDef[propName] === 'function',
            '%s: %s type `%s` is invalid; it must be a function, usually from ' +
              'React.PropTypes.',
            Constructor.displayName || 'ReactClass',
            ReactPropTypeLocationNames[location],
            propName
          );
        }
      }
    }
  }

  function validateMethodOverride(isAlreadyDefined, name) {
    var specPolicy = ReactClassInterface.hasOwnProperty(name)
      ? ReactClassInterface[name]
      : null;

    // Disallow overriding of base class methods unless explicitly allowed.
    if (ReactClassMixin.hasOwnProperty(name)) {
      _invariant(
        specPolicy === 'OVERRIDE_BASE',
        'ReactClassInterface: You are attempting to override ' +
          '`%s` from your class specification. Ensure that your method names ' +
          'do not overlap with React methods.',
        name
      );
    }

    // Disallow defining methods more than once unless explicitly allowed.
    if (isAlreadyDefined) {
      _invariant(
        specPolicy === 'DEFINE_MANY' || specPolicy === 'DEFINE_MANY_MERGED',
        'ReactClassInterface: You are attempting to define ' +
          '`%s` on your component more than once. This conflict may be due ' +
          'to a mixin.',
        name
      );
    }
  }

  /**
   * Mixin helper which handles policy validation and reserved
   * specification keys when building React classes.
   */
  function mixSpecIntoComponent(Constructor, spec) {
    if (!spec) {
      if (true) {
        var typeofSpec = typeof spec;
        var isMixinValid = typeofSpec === 'object' && spec !== null;

        if (true) {
          warning(
            isMixinValid,
            "%s: You're attempting to include a mixin that is either null " +
              'or not an object. Check the mixins included by the component, ' +
              'as well as any mixins they include themselves. ' +
              'Expected object but got %s.',
            Constructor.displayName || 'ReactClass',
            spec === null ? null : typeofSpec
          );
        }
      }

      return;
    }

    _invariant(
      typeof spec !== 'function',
      "ReactClass: You're attempting to " +
        'use a component class or function as a mixin. Instead, just use a ' +
        'regular object.'
    );
    _invariant(
      !isValidElement(spec),
      "ReactClass: You're attempting to " +
        'use a component as a mixin. Instead, just use a regular object.'
    );

    var proto = Constructor.prototype;
    var autoBindPairs = proto.__reactAutoBindPairs;

    // By handling mixins before any other properties, we ensure the same
    // chaining order is applied to methods with DEFINE_MANY policy, whether
    // mixins are listed before or after these methods in the spec.
    if (spec.hasOwnProperty(MIXINS_KEY)) {
      RESERVED_SPEC_KEYS.mixins(Constructor, spec.mixins);
    }

    for (var name in spec) {
      if (!spec.hasOwnProperty(name)) {
        continue;
      }

      if (name === MIXINS_KEY) {
        // We have already handled mixins in a special case above.
        continue;
      }

      var property = spec[name];
      var isAlreadyDefined = proto.hasOwnProperty(name);
      validateMethodOverride(isAlreadyDefined, name);

      if (RESERVED_SPEC_KEYS.hasOwnProperty(name)) {
        RESERVED_SPEC_KEYS[name](Constructor, property);
      } else {
        // Setup methods on prototype:
        // The following member methods should not be automatically bound:
        // 1. Expected ReactClass methods (in the "interface").
        // 2. Overridden methods (that were mixed in).
        var isReactClassMethod = ReactClassInterface.hasOwnProperty(name);
        var isFunction = typeof property === 'function';
        var shouldAutoBind =
          isFunction &&
          !isReactClassMethod &&
          !isAlreadyDefined &&
          spec.autobind !== false;

        if (shouldAutoBind) {
          autoBindPairs.push(name, property);
          proto[name] = property;
        } else {
          if (isAlreadyDefined) {
            var specPolicy = ReactClassInterface[name];

            // These cases should already be caught by validateMethodOverride.
            _invariant(
              isReactClassMethod &&
                (specPolicy === 'DEFINE_MANY_MERGED' ||
                  specPolicy === 'DEFINE_MANY'),
              'ReactClass: Unexpected spec policy %s for key %s ' +
                'when mixing in component specs.',
              specPolicy,
              name
            );

            // For methods which are defined more than once, call the existing
            // methods before calling the new property, merging if appropriate.
            if (specPolicy === 'DEFINE_MANY_MERGED') {
              proto[name] = createMergedResultFunction(proto[name], property);
            } else if (specPolicy === 'DEFINE_MANY') {
              proto[name] = createChainedFunction(proto[name], property);
            }
          } else {
            proto[name] = property;
            if (true) {
              // Add verbose displayName to the function, which helps when looking
              // at profiling tools.
              if (typeof property === 'function' && spec.displayName) {
                proto[name].displayName = spec.displayName + '_' + name;
              }
            }
          }
        }
      }
    }
  }

  function mixStaticSpecIntoComponent(Constructor, statics) {
    if (!statics) {
      return;
    }

    for (var name in statics) {
      var property = statics[name];
      if (!statics.hasOwnProperty(name)) {
        continue;
      }

      var isReserved = name in RESERVED_SPEC_KEYS;
      _invariant(
        !isReserved,
        'ReactClass: You are attempting to define a reserved ' +
          'property, `%s`, that shouldn\'t be on the "statics" key. Define it ' +
          'as an instance property instead; it will still be accessible on the ' +
          'constructor.',
        name
      );

      var isAlreadyDefined = name in Constructor;
      if (isAlreadyDefined) {
        var specPolicy = ReactClassStaticInterface.hasOwnProperty(name)
          ? ReactClassStaticInterface[name]
          : null;

        _invariant(
          specPolicy === 'DEFINE_MANY_MERGED',
          'ReactClass: You are attempting to define ' +
            '`%s` on your component more than once. This conflict may be ' +
            'due to a mixin.',
          name
        );

        Constructor[name] = createMergedResultFunction(Constructor[name], property);

        return;
      }

      Constructor[name] = property;
    }
  }

  /**
   * Merge two objects, but throw if both contain the same key.
   *
   * @param {object} one The first object, which is mutated.
   * @param {object} two The second object
   * @return {object} one after it has been mutated to contain everything in two.
   */
  function mergeIntoWithNoDuplicateKeys(one, two) {
    _invariant(
      one && two && typeof one === 'object' && typeof two === 'object',
      'mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.'
    );

    for (var key in two) {
      if (two.hasOwnProperty(key)) {
        _invariant(
          one[key] === undefined,
          'mergeIntoWithNoDuplicateKeys(): ' +
            'Tried to merge two objects with the same key: `%s`. This conflict ' +
            'may be due to a mixin; in particular, this may be caused by two ' +
            'getInitialState() or getDefaultProps() methods returning objects ' +
            'with clashing keys.',
          key
        );
        one[key] = two[key];
      }
    }
    return one;
  }

  /**
   * Creates a function that invokes two functions and merges their return values.
   *
   * @param {function} one Function to invoke first.
   * @param {function} two Function to invoke second.
   * @return {function} Function that invokes the two argument functions.
   * @private
   */
  function createMergedResultFunction(one, two) {
    return function mergedResult() {
      var a = one.apply(this, arguments);
      var b = two.apply(this, arguments);
      if (a == null) {
        return b;
      } else if (b == null) {
        return a;
      }
      var c = {};
      mergeIntoWithNoDuplicateKeys(c, a);
      mergeIntoWithNoDuplicateKeys(c, b);
      return c;
    };
  }

  /**
   * Creates a function that invokes two functions and ignores their return vales.
   *
   * @param {function} one Function to invoke first.
   * @param {function} two Function to invoke second.
   * @return {function} Function that invokes the two argument functions.
   * @private
   */
  function createChainedFunction(one, two) {
    return function chainedFunction() {
      one.apply(this, arguments);
      two.apply(this, arguments);
    };
  }

  /**
   * Binds a method to the component.
   *
   * @param {object} component Component whose method is going to be bound.
   * @param {function} method Method to be bound.
   * @return {function} The bound method.
   */
  function bindAutoBindMethod(component, method) {
    var boundMethod = method.bind(component);
    if (true) {
      boundMethod.__reactBoundContext = component;
      boundMethod.__reactBoundMethod = method;
      boundMethod.__reactBoundArguments = null;
      var componentName = component.constructor.displayName;
      var _bind = boundMethod.bind;
      boundMethod.bind = function(newThis) {
        for (
          var _len = arguments.length,
            args = Array(_len > 1 ? _len - 1 : 0),
            _key = 1;
          _key < _len;
          _key++
        ) {
          args[_key - 1] = arguments[_key];
        }

        // User is trying to bind() an autobound method; we effectively will
        // ignore the value of "this" that the user is trying to use, so
        // let's warn.
        if (newThis !== component && newThis !== null) {
          if (true) {
            warning(
              false,
              'bind(): React component methods may only be bound to the ' +
                'component instance. See %s',
              componentName
            );
          }
        } else if (!args.length) {
          if (true) {
            warning(
              false,
              'bind(): You are binding a component method to the component. ' +
                'React does this for you automatically in a high-performance ' +
                'way, so you can safely remove this call. See %s',
              componentName
            );
          }
          return boundMethod;
        }
        var reboundMethod = _bind.apply(boundMethod, arguments);
        reboundMethod.__reactBoundContext = component;
        reboundMethod.__reactBoundMethod = method;
        reboundMethod.__reactBoundArguments = args;
        return reboundMethod;
      };
    }
    return boundMethod;
  }

  /**
   * Binds all auto-bound methods in a component.
   *
   * @param {object} component Component whose method is going to be bound.
   */
  function bindAutoBindMethods(component) {
    var pairs = component.__reactAutoBindPairs;
    for (var i = 0; i < pairs.length; i += 2) {
      var autoBindKey = pairs[i];
      var method = pairs[i + 1];
      component[autoBindKey] = bindAutoBindMethod(component, method);
    }
  }

  var IsMountedPreMixin = {
    componentDidMount: function() {
      this.__isMounted = true;
    }
  };

  var IsMountedPostMixin = {
    componentWillUnmount: function() {
      this.__isMounted = false;
    }
  };

  /**
   * Add more to the ReactClass base class. These are all legacy features and
   * therefore not already part of the modern ReactComponent.
   */
  var ReactClassMixin = {
    /**
     * TODO: This will be deprecated because state should always keep a consistent
     * type signature and the only use case for this, is to avoid that.
     */
    replaceState: function(newState, callback) {
      this.updater.enqueueReplaceState(this, newState, callback);
    },

    /**
     * Checks whether or not this composite component is mounted.
     * @return {boolean} True if mounted, false otherwise.
     * @protected
     * @final
     */
    isMounted: function() {
      if (true) {
        warning(
          this.__didWarnIsMounted,
          '%s: isMounted is deprecated. Instead, make sure to clean up ' +
            'subscriptions and pending requests in componentWillUnmount to ' +
            'prevent memory leaks.',
          (this.constructor && this.constructor.displayName) ||
            this.name ||
            'Component'
        );
        this.__didWarnIsMounted = true;
      }
      return !!this.__isMounted;
    }
  };

  var ReactClassComponent = function() {};
  _assign(
    ReactClassComponent.prototype,
    ReactComponent.prototype,
    ReactClassMixin
  );

  /**
   * Creates a composite component class given a class specification.
   * See https://facebook.github.io/react/docs/top-level-api.html#react.createclass
   *
   * @param {object} spec Class specification (which must define `render`).
   * @return {function} Component constructor function.
   * @public
   */
  function createClass(spec) {
    // To keep our warnings more understandable, we'll use a little hack here to
    // ensure that Constructor.name !== 'Constructor'. This makes sure we don't
    // unnecessarily identify a class without displayName as 'Constructor'.
    var Constructor = identity(function(props, context, updater) {
      // This constructor gets overridden by mocks. The argument is used
      // by mocks to assert on what gets mounted.

      if (true) {
        warning(
          this instanceof Constructor,
          'Something is calling a React component directly. Use a factory or ' +
            'JSX instead. See: https://fb.me/react-legacyfactory'
        );
      }

      // Wire up auto-binding
      if (this.__reactAutoBindPairs.length) {
        bindAutoBindMethods(this);
      }

      this.props = props;
      this.context = context;
      this.refs = emptyObject;
      this.updater = updater || ReactNoopUpdateQueue;

      this.state = null;

      // ReactClasses doesn't have constructors. Instead, they use the
      // getInitialState and componentWillMount methods for initialization.

      var initialState = this.getInitialState ? this.getInitialState() : null;
      if (true) {
        // We allow auto-mocks to proceed as if they're returning null.
        if (
          initialState === undefined &&
          this.getInitialState._isMockFunction
        ) {
          // This is probably bad practice. Consider warning here and
          // deprecating this convenience.
          initialState = null;
        }
      }
      _invariant(
        typeof initialState === 'object' && !Array.isArray(initialState),
        '%s.getInitialState(): must return an object or null',
        Constructor.displayName || 'ReactCompositeComponent'
      );

      this.state = initialState;
    });
    Constructor.prototype = new ReactClassComponent();
    Constructor.prototype.constructor = Constructor;
    Constructor.prototype.__reactAutoBindPairs = [];

    injectedMixins.forEach(mixSpecIntoComponent.bind(null, Constructor));

    mixSpecIntoComponent(Constructor, IsMountedPreMixin);
    mixSpecIntoComponent(Constructor, spec);
    mixSpecIntoComponent(Constructor, IsMountedPostMixin);

    // Initialize the defaultProps property after all mixins have been merged.
    if (Constructor.getDefaultProps) {
      Constructor.defaultProps = Constructor.getDefaultProps();
    }

    if (true) {
      // This is a tag to indicate that the use of these method names is ok,
      // since it's used with createClass. If it's not, then it's likely a
      // mistake so we'll warn you to use the static property, property
      // initializer or constructor respectively.
      if (Constructor.getDefaultProps) {
        Constructor.getDefaultProps.isReactClassApproved = {};
      }
      if (Constructor.prototype.getInitialState) {
        Constructor.prototype.getInitialState.isReactClassApproved = {};
      }
    }

    _invariant(
      Constructor.prototype.render,
      'createClass(...): Class specification must implement a `render` method.'
    );

    if (true) {
      warning(
        !Constructor.prototype.componentShouldUpdate,
        '%s has a method called ' +
          'componentShouldUpdate(). Did you mean shouldComponentUpdate()? ' +
          'The name is phrased as a question because the function is ' +
          'expected to return a value.',
        spec.displayName || 'A component'
      );
      warning(
        !Constructor.prototype.componentWillRecieveProps,
        '%s has a method called ' +
          'componentWillRecieveProps(). Did you mean componentWillReceiveProps()?',
        spec.displayName || 'A component'
      );
      warning(
        !Constructor.prototype.UNSAFE_componentWillRecieveProps,
        '%s has a method called UNSAFE_componentWillRecieveProps(). ' +
          'Did you mean UNSAFE_componentWillReceiveProps()?',
        spec.displayName || 'A component'
      );
    }

    // Reduce time spent doing lookups by setting these on the prototype.
    for (var methodName in ReactClassInterface) {
      if (!Constructor.prototype[methodName]) {
        Constructor.prototype[methodName] = null;
      }
    }

    return Constructor;
  }

  return createClass;
}

module.exports = factory;


/***/ }),

/***/ "./node_modules/create-react-class/index.js":
/*!**************************************************!*\
  !*** ./node_modules/create-react-class/index.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */



var React = __webpack_require__(/*! react */ "react");
var factory = __webpack_require__(/*! ./factory */ "./node_modules/create-react-class/factory.js");

if (typeof React === 'undefined') {
  throw Error(
    'create-react-class could not find the React object. If you are using script tags, ' +
      'make sure that React is being loaded before create-react-class.'
  );
}

// Hack to grab NoopUpdateQueue from isomorphic React
var ReactNoopUpdateQueue = new React.Component().updater;

module.exports = factory(
  React.Component,
  React.isValidElement,
  ReactNoopUpdateQueue
);


/***/ }),

/***/ "./node_modules/css-in-js-utils/lib/hyphenateProperty.js":
/*!***************************************************************!*\
  !*** ./node_modules/css-in-js-utils/lib/hyphenateProperty.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = hyphenateProperty;

var _hyphenateStyleName = __webpack_require__(/*! hyphenate-style-name */ "./node_modules/hyphenate-style-name/index.js");

var _hyphenateStyleName2 = _interopRequireDefault(_hyphenateStyleName);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function hyphenateProperty(property) {
  return (0, _hyphenateStyleName2.default)(property);
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js":
/*!*************************************************************!*\
  !*** ./node_modules/css-in-js-utils/lib/isPrefixedValue.js ***!
  \*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = isPrefixedValue;
var regex = /-webkit-|-moz-|-ms-/;

function isPrefixedValue(value) {
  return typeof value === 'string' && regex.test(value);
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/desandro-matches-selector/matches-selector.js":
/*!********************************************************************!*\
  !*** ./node_modules/desandro-matches-selector/matches-selector.js ***!
  \********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**
 * matchesSelector v2.0.2
 * matchesSelector( element, '.selector' )
 * MIT license
 */

/*jshint browser: true, strict: true, undef: true, unused: true */

( function( window, factory ) {
  /*global define: false, module: false */
  'use strict';
  // universal module definition
  if ( true ) {
    // AMD
    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :
				__WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( window, function factory() {
  'use strict';

  var matchesMethod = ( function() {
    var ElemProto = window.Element.prototype;
    // check for the standard method name first
    if ( ElemProto.matches ) {
      return 'matches';
    }
    // check un-prefixed
    if ( ElemProto.matchesSelector ) {
      return 'matchesSelector';
    }
    // check vendor prefixes
    var prefixes = [ 'webkit', 'moz', 'ms', 'o' ];

    for ( var i=0; i < prefixes.length; i++ ) {
      var prefix = prefixes[i];
      var method = prefix + 'MatchesSelector';
      if ( ElemProto[ method ] ) {
        return method;
      }
    }
  })();

  return function matchesSelector( elem, selector ) {
    return elem[ matchesMethod ]( selector );
  };

}));


/***/ }),

/***/ "./node_modules/element-resize-detector/src/browser-detector.js":
/*!**********************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/browser-detector.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var detector = module.exports = {};

detector.isIE = function(version) {
    function isAnyIeVersion() {
        var agent = navigator.userAgent.toLowerCase();
        return agent.indexOf("msie") !== -1 || agent.indexOf("trident") !== -1 || agent.indexOf(" edge/") !== -1;
    }

    if(!isAnyIeVersion()) {
        return false;
    }

    if(!version) {
        return true;
    }

    //Shamelessly stolen from https://gist.github.com/padolsey/527683
    var ieVersion = (function(){
        var undef,
            v = 3,
            div = document.createElement("div"),
            all = div.getElementsByTagName("i");

        do {
            div.innerHTML = "<!--[if gt IE " + (++v) + "]><i></i><![endif]-->";
        }
        while (all[0]);

        return v > 4 ? v : undef;
    }());

    return version === ieVersion;
};

detector.isLegacyOpera = function() {
    return !!window.opera;
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/collection-utils.js":
/*!**********************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/collection-utils.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = module.exports = {};

/**
 * Loops through the collection and calls the callback for each element. if the callback returns truthy, the loop is broken and returns the same value.
 * @public
 * @param {*} collection The collection to loop through. Needs to have a length property set and have indices set from 0 to length - 1.
 * @param {function} callback The callback to be called for each element. The element will be given as a parameter to the callback. If this callback returns truthy, the loop is broken and the same value is returned.
 * @returns {*} The value that a callback has returned (if truthy). Otherwise nothing.
 */
utils.forEach = function(collection, callback) {
    for(var i = 0; i < collection.length; i++) {
        var result = callback(collection[i]);
        if(result) {
            return result;
        }
    }
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/detection-strategy/object.js":
/*!*******************************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/detection-strategy/object.js ***!
  \*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Resize detection strategy that injects objects to elements in order to detect resize events.
 * Heavily inspired by: http://www.backalleycoder.com/2013/03/18/cross-browser-event-based-element-resize-detection/
 */



var browserDetector = __webpack_require__(/*! ../browser-detector */ "./node_modules/element-resize-detector/src/browser-detector.js");

module.exports = function(options) {
    options             = options || {};
    var reporter        = options.reporter;
    var batchProcessor  = options.batchProcessor;
    var getState        = options.stateHandler.getState;

    if(!reporter) {
        throw new Error("Missing required dependency: reporter.");
    }

    /**
     * Adds a resize event listener to the element.
     * @public
     * @param {element} element The element that should have the listener added.
     * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.
     */
    function addListener(element, listener) {
        function listenerProxy() {
            listener(element);
        }

        if(browserDetector.isIE(8)) {
            //IE 8 does not support object, but supports the resize event directly on elements.
            getState(element).object = {
                proxy: listenerProxy
            };
            element.attachEvent("onresize", listenerProxy);
        } else {
            var object = getObject(element);

            if(!object) {
                throw new Error("Element is not detectable by this strategy.");
            }

            object.contentDocument.defaultView.addEventListener("resize", listenerProxy);
        }
    }

    function buildCssTextString(rules) {
        var seperator = options.important ? " !important; " : "; ";

        return (rules.join(seperator) + seperator).trim();
    }

    /**
     * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.
     * @private
     * @param {object} options Optional options object.
     * @param {element} element The element to make detectable
     * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.
     */
    function makeDetectable(options, element, callback) {
        if (!callback) {
            callback = element;
            element = options;
            options = null;
        }

        options = options || {};
        var debug = options.debug;

        function injectObject(element, callback) {
            var OBJECT_STYLE = buildCssTextString(["display: block", "position: absolute", "top: 0", "left: 0", "width: 100%", "height: 100%", "border: none", "padding: 0", "margin: 0", "opacity: 0", "z-index: -1000", "pointer-events: none"]);

            //The target element needs to be positioned (everything except static) so the absolute positioned object will be positioned relative to the target element.

            // Position altering may be performed directly or on object load, depending on if style resolution is possible directly or not.
            var positionCheckPerformed = false;

            // The element may not yet be attached to the DOM, and therefore the style object may be empty in some browsers.
            // Since the style object is a reference, it will be updated as soon as the element is attached to the DOM.
            var style = window.getComputedStyle(element);
            var width = element.offsetWidth;
            var height = element.offsetHeight;

            getState(element).startSize = {
                width: width,
                height: height
            };

            function mutateDom() {
                function alterPositionStyles() {
                    if(style.position === "static") {
                        element.style.setProperty("position", "relative", options.important ? "important" : "");

                        var removeRelativeStyles = function(reporter, element, style, property) {
                            function getNumericalValue(value) {
                                return value.replace(/[^-\d\.]/g, "");
                            }

                            var value = style[property];

                            if(value !== "auto" && getNumericalValue(value) !== "0") {
                                reporter.warn("An element that is positioned static has style." + property + "=" + value + " which is ignored due to the static positioning. The element will need to be positioned relative, so the style." + property + " will be set to 0. Element: ", element);
                                element.style.setProperty(property, "0", options.important ? "important" : "");
                            }
                        };

                        //Check so that there are no accidental styles that will make the element styled differently now that is is relative.
                        //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).
                        removeRelativeStyles(reporter, element, style, "top");
                        removeRelativeStyles(reporter, element, style, "right");
                        removeRelativeStyles(reporter, element, style, "bottom");
                        removeRelativeStyles(reporter, element, style, "left");
                    }
                }

                function onObjectLoad() {
                    // The object has been loaded, which means that the element now is guaranteed to be attached to the DOM.
                    if (!positionCheckPerformed) {
                        alterPositionStyles();
                    }

                    /*jshint validthis: true */

                    function getDocument(element, callback) {
                        //Opera 12 seem to call the object.onload before the actual document has been created.
                        //So if it is not present, poll it with an timeout until it is present.
                        //TODO: Could maybe be handled better with object.onreadystatechange or similar.
                        if(!element.contentDocument) {
                            var state = getState(element);
                            if (state.checkForObjectDocumentTimeoutId) {
                                window.clearTimeout(state.checkForObjectDocumentTimeoutId);
                            }
                            state.checkForObjectDocumentTimeoutId = setTimeout(function checkForObjectDocument() {
                                state.checkForObjectDocumentTimeoutId = 0;
                                getDocument(element, callback);
                            }, 100);

                            return;
                        }

                        callback(element.contentDocument);
                    }

                    //Mutating the object element here seems to fire another load event.
                    //Mutating the inner document of the object element is fine though.
                    var objectElement = this;

                    //Create the style element to be added to the object.
                    getDocument(objectElement, function onObjectDocumentReady(objectDocument) {
                        //Notify that the element is ready to be listened to.
                        callback(element);
                    });
                }

                // The element may be detached from the DOM, and some browsers does not support style resolving of detached elements.
                // The alterPositionStyles needs to be delayed until we know the element has been attached to the DOM (which we are sure of when the onObjectLoad has been fired), if style resolution is not possible.
                if (style.position !== "") {
                    alterPositionStyles(style);
                    positionCheckPerformed = true;
                }

                //Add an object element as a child to the target element that will be listened to for resize events.
                var object = document.createElement("object");
                object.style.cssText = OBJECT_STYLE;
                object.tabIndex = -1;
                object.type = "text/html";
                object.setAttribute("aria-hidden", "true");
                object.onload = onObjectLoad;

                //Safari: This must occur before adding the object to the DOM.
                //IE: Does not like that this happens before, even if it is also added after.
                if(!browserDetector.isIE()) {
                    object.data = "about:blank";
                }

                if (!getState(element)) {
                    // The element has been uninstalled before the actual loading happened.
                    return;
                }

                element.appendChild(object);
                getState(element).object = object;

                //IE: This must occur after adding the object to the DOM.
                if(browserDetector.isIE()) {
                    object.data = "about:blank";
                }
            }

            if(batchProcessor) {
                batchProcessor.add(mutateDom);
            } else {
                mutateDom();
            }
        }

        if(browserDetector.isIE(8)) {
            //IE 8 does not support objects properly. Luckily they do support the resize event.
            //So do not inject the object and notify that the element is already ready to be listened to.
            //The event handler for the resize event is attached in the utils.addListener instead.
            callback(element);
        } else {
            injectObject(element, callback);
        }
    }

    /**
     * Returns the child object of the target element.
     * @private
     * @param {element} element The target element.
     * @returns The object element of the target.
     */
    function getObject(element) {
        return getState(element).object;
    }

    function uninstall(element) {
        if (!getState(element)) {
            return;
        }

        var object = getObject(element);

        if (!object) {
            return;
        }

        if (browserDetector.isIE(8)) {
            element.detachEvent("onresize", object.proxy);
        } else {
            element.removeChild(object);
        }

        if (getState(element).checkForObjectDocumentTimeoutId) {
            window.clearTimeout(getState(element).checkForObjectDocumentTimeoutId);
        }

        delete getState(element).object;
    }

    return {
        makeDetectable: makeDetectable,
        addListener: addListener,
        uninstall: uninstall
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/detection-strategy/scroll.js":
/*!*******************************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/detection-strategy/scroll.js ***!
  \*******************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Resize detection strategy that injects divs to elements in order to detect resize events on scroll events.
 * Heavily inspired by: https://github.com/marcj/css-element-queries/blob/master/src/ResizeSensor.js
 */



var forEach = __webpack_require__(/*! ../collection-utils */ "./node_modules/element-resize-detector/src/collection-utils.js").forEach;

module.exports = function(options) {
    options             = options || {};
    var reporter        = options.reporter;
    var batchProcessor  = options.batchProcessor;
    var getState        = options.stateHandler.getState;
    var hasState        = options.stateHandler.hasState;
    var idHandler       = options.idHandler;

    if (!batchProcessor) {
        throw new Error("Missing required dependency: batchProcessor");
    }

    if (!reporter) {
        throw new Error("Missing required dependency: reporter.");
    }

    //TODO: Could this perhaps be done at installation time?
    var scrollbarSizes = getScrollbarSizes();

    var styleId = "erd_scroll_detection_scrollbar_style";
    var detectionContainerClass = "erd_scroll_detection_container";

    function initDocument(targetDocument) {
        // Inject the scrollbar styling that prevents them from appearing sometimes in Chrome.
        // The injected container needs to have a class, so that it may be styled with CSS (pseudo elements).
        injectScrollStyle(targetDocument, styleId, detectionContainerClass);
    }

    initDocument(window.document);

    function buildCssTextString(rules) {
        var seperator = options.important ? " !important; " : "; ";

        return (rules.join(seperator) + seperator).trim();
    }

    function getScrollbarSizes() {
        var width = 500;
        var height = 500;

        var child = document.createElement("div");
        child.style.cssText = buildCssTextString(["position: absolute", "width: " + width*2 + "px", "height: " + height*2 + "px", "visibility: hidden", "margin: 0", "padding: 0"]);

        var container = document.createElement("div");
        container.style.cssText = buildCssTextString(["position: absolute", "width: " + width + "px", "height: " + height + "px", "overflow: scroll", "visibility: none", "top: " + -width*3 + "px", "left: " + -height*3 + "px", "visibility: hidden", "margin: 0", "padding: 0"]);

        container.appendChild(child);

        document.body.insertBefore(container, document.body.firstChild);

        var widthSize = width - container.clientWidth;
        var heightSize = height - container.clientHeight;

        document.body.removeChild(container);

        return {
            width: widthSize,
            height: heightSize
        };
    }

    function injectScrollStyle(targetDocument, styleId, containerClass) {
        function injectStyle(style, method) {
            method = method || function (element) {
                targetDocument.head.appendChild(element);
            };

            var styleElement = targetDocument.createElement("style");
            styleElement.innerHTML = style;
            styleElement.id = styleId;
            method(styleElement);
            return styleElement;
        }

        if (!targetDocument.getElementById(styleId)) {
            var containerAnimationClass = containerClass + "_animation";
            var containerAnimationActiveClass = containerClass + "_animation_active";
            var style = "/* Created by the element-resize-detector library. */\n";
            style += "." + containerClass + " > div::-webkit-scrollbar { " + buildCssTextString(["display: none"]) + " }\n\n";
            style += "." + containerAnimationActiveClass + " { " + buildCssTextString(["-webkit-animation-duration: 0.1s", "animation-duration: 0.1s", "-webkit-animation-name: " + containerAnimationClass, "animation-name: " + containerAnimationClass]) + " }\n";
            style += "@-webkit-keyframes " + containerAnimationClass +  " { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }\n";
            style += "@keyframes " + containerAnimationClass +          " { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }";
            injectStyle(style);
        }
    }

    function addAnimationClass(element) {
        element.className += " " + detectionContainerClass + "_animation_active";
    }

    function addEvent(el, name, cb) {
        if (el.addEventListener) {
            el.addEventListener(name, cb);
        } else if(el.attachEvent) {
            el.attachEvent("on" + name, cb);
        } else {
            return reporter.error("[scroll] Don't know how to add event listeners.");
        }
    }

    function removeEvent(el, name, cb) {
        if (el.removeEventListener) {
            el.removeEventListener(name, cb);
        } else if(el.detachEvent) {
            el.detachEvent("on" + name, cb);
        } else {
            return reporter.error("[scroll] Don't know how to remove event listeners.");
        }
    }

    function getExpandElement(element) {
        return getState(element).container.childNodes[0].childNodes[0].childNodes[0];
    }

    function getShrinkElement(element) {
        return getState(element).container.childNodes[0].childNodes[0].childNodes[1];
    }

    /**
     * Adds a resize event listener to the element.
     * @public
     * @param {element} element The element that should have the listener added.
     * @param {function} listener The listener callback to be called for each resize event of the element. The element will be given as a parameter to the listener callback.
     */
    function addListener(element, listener) {
        var listeners = getState(element).listeners;

        if (!listeners.push) {
            throw new Error("Cannot add listener to an element that is not detectable.");
        }

        getState(element).listeners.push(listener);
    }

    /**
     * Makes an element detectable and ready to be listened for resize events. Will call the callback when the element is ready to be listened for resize changes.
     * @private
     * @param {object} options Optional options object.
     * @param {element} element The element to make detectable
     * @param {function} callback The callback to be called when the element is ready to be listened for resize changes. Will be called with the element as first parameter.
     */
    function makeDetectable(options, element, callback) {
        if (!callback) {
            callback = element;
            element = options;
            options = null;
        }

        options = options || {};

        function debug() {
            if (options.debug) {
                var args = Array.prototype.slice.call(arguments);
                args.unshift(idHandler.get(element), "Scroll: ");
                if (reporter.log.apply) {
                    reporter.log.apply(null, args);
                } else {
                    for (var i = 0; i < args.length; i++) {
                        reporter.log(args[i]);
                    }
                }
            }
        }

        function isDetached(element) {
            function isInDocument(element) {
                return element === element.ownerDocument.body || element.ownerDocument.body.contains(element);
            }

            if (!isInDocument(element)) {
                return true;
            }

            // FireFox returns null style in hidden iframes. See https://github.com/wnr/element-resize-detector/issues/68 and https://bugzilla.mozilla.org/show_bug.cgi?id=795520
            if (window.getComputedStyle(element) === null) {
                return true;
            }

            return false;
        }

        function isUnrendered(element) {
            // Check the absolute positioned container since the top level container is display: inline.
            var container = getState(element).container.childNodes[0];
            var style = window.getComputedStyle(container);
            return !style.width || style.width.indexOf("px") === -1; //Can only compute pixel value when rendered.
        }

        function getStyle() {
            // Some browsers only force layouts when actually reading the style properties of the style object, so make sure that they are all read here,
            // so that the user of the function can be sure that it will perform the layout here, instead of later (important for batching).
            var elementStyle            = window.getComputedStyle(element);
            var style                   = {};
            style.position              = elementStyle.position;
            style.width                 = element.offsetWidth;
            style.height                = element.offsetHeight;
            style.top                   = elementStyle.top;
            style.right                 = elementStyle.right;
            style.bottom                = elementStyle.bottom;
            style.left                  = elementStyle.left;
            style.widthCSS              = elementStyle.width;
            style.heightCSS             = elementStyle.height;
            return style;
        }

        function storeStartSize() {
            var style = getStyle();
            getState(element).startSize = {
                width: style.width,
                height: style.height
            };
            debug("Element start size", getState(element).startSize);
        }

        function initListeners() {
            getState(element).listeners = [];
        }

        function storeStyle() {
            debug("storeStyle invoked.");
            if (!getState(element)) {
                debug("Aborting because element has been uninstalled");
                return;
            }

            var style = getStyle();
            getState(element).style = style;
        }

        function storeCurrentSize(element, width, height) {
            getState(element).lastWidth = width;
            getState(element).lastHeight  = height;
        }

        function getExpandChildElement(element) {
            return getExpandElement(element).childNodes[0];
        }

        function getWidthOffset() {
            return 2 * scrollbarSizes.width + 1;
        }

        function getHeightOffset() {
            return 2 * scrollbarSizes.height + 1;
        }

        function getExpandWidth(width) {
            return width + 10 + getWidthOffset();
        }

        function getExpandHeight(height) {
            return height + 10 + getHeightOffset();
        }

        function getShrinkWidth(width) {
            return width * 2 + getWidthOffset();
        }

        function getShrinkHeight(height) {
            return height * 2 + getHeightOffset();
        }

        function positionScrollbars(element, width, height) {
            var expand          = getExpandElement(element);
            var shrink          = getShrinkElement(element);
            var expandWidth     = getExpandWidth(width);
            var expandHeight    = getExpandHeight(height);
            var shrinkWidth     = getShrinkWidth(width);
            var shrinkHeight    = getShrinkHeight(height);
            expand.scrollLeft   = expandWidth;
            expand.scrollTop    = expandHeight;
            shrink.scrollLeft   = shrinkWidth;
            shrink.scrollTop    = shrinkHeight;
        }

        function injectContainerElement() {
            var container = getState(element).container;

            if (!container) {
                container                   = document.createElement("div");
                container.className         = detectionContainerClass;
                container.style.cssText     = buildCssTextString(["visibility: hidden", "display: inline", "width: 0px", "height: 0px", "z-index: -1", "overflow: hidden", "margin: 0", "padding: 0"]);
                getState(element).container = container;
                addAnimationClass(container);
                element.appendChild(container);

                var onAnimationStart = function () {
                    getState(element).onRendered && getState(element).onRendered();
                };

                addEvent(container, "animationstart", onAnimationStart);

                // Store the event handler here so that they may be removed when uninstall is called.
                // See uninstall function for an explanation why it is needed.
                getState(element).onAnimationStart = onAnimationStart;
            }

            return container;
        }

        function injectScrollElements() {
            function alterPositionStyles() {
                var style = getState(element).style;

                if(style.position === "static") {
                    element.style.setProperty("position", "relative",options.important ? "important" : "");

                    var removeRelativeStyles = function(reporter, element, style, property) {
                        function getNumericalValue(value) {
                            return value.replace(/[^-\d\.]/g, "");
                        }

                        var value = style[property];

                        if(value !== "auto" && getNumericalValue(value) !== "0") {
                            reporter.warn("An element that is positioned static has style." + property + "=" + value + " which is ignored due to the static positioning. The element will need to be positioned relative, so the style." + property + " will be set to 0. Element: ", element);
                            element.style[property] = 0;
                        }
                    };

                    //Check so that there are no accidental styles that will make the element styled differently now that is is relative.
                    //If there are any, set them to 0 (this should be okay with the user since the style properties did nothing before [since the element was positioned static] anyway).
                    removeRelativeStyles(reporter, element, style, "top");
                    removeRelativeStyles(reporter, element, style, "right");
                    removeRelativeStyles(reporter, element, style, "bottom");
                    removeRelativeStyles(reporter, element, style, "left");
                }
            }

            function getLeftTopBottomRightCssText(left, top, bottom, right) {
                left = (!left ? "0" : (left + "px"));
                top = (!top ? "0" : (top + "px"));
                bottom = (!bottom ? "0" : (bottom + "px"));
                right = (!right ? "0" : (right + "px"));

                return ["left: " + left, "top: " + top, "right: " + right, "bottom: " + bottom];
            }

            debug("Injecting elements");

            if (!getState(element)) {
                debug("Aborting because element has been uninstalled");
                return;
            }

            alterPositionStyles();

            var rootContainer = getState(element).container;

            if (!rootContainer) {
                rootContainer = injectContainerElement();
            }

            // Due to this WebKit bug https://bugs.webkit.org/show_bug.cgi?id=80808 (currently fixed in Blink, but still present in WebKit browsers such as Safari),
            // we need to inject two containers, one that is width/height 100% and another that is left/top -1px so that the final container always is 1x1 pixels bigger than
            // the targeted element.
            // When the bug is resolved, "containerContainer" may be removed.

            // The outer container can occasionally be less wide than the targeted when inside inline elements element in WebKit (see https://bugs.webkit.org/show_bug.cgi?id=152980).
            // This should be no problem since the inner container either way makes sure the injected scroll elements are at least 1x1 px.

            var scrollbarWidth          = scrollbarSizes.width;
            var scrollbarHeight         = scrollbarSizes.height;
            var containerContainerStyle = buildCssTextString(["position: absolute", "flex: none", "overflow: hidden", "z-index: -1", "visibility: hidden", "width: 100%", "height: 100%", "left: 0px", "top: 0px"]);
            var containerStyle          = buildCssTextString(["position: absolute", "flex: none", "overflow: hidden", "z-index: -1", "visibility: hidden"].concat(getLeftTopBottomRightCssText(-(1 + scrollbarWidth), -(1 + scrollbarHeight), -scrollbarHeight, -scrollbarWidth)));
            var expandStyle             = buildCssTextString(["position: absolute", "flex: none", "overflow: scroll", "z-index: -1", "visibility: hidden", "width: 100%", "height: 100%"]);
            var shrinkStyle             = buildCssTextString(["position: absolute", "flex: none", "overflow: scroll", "z-index: -1", "visibility: hidden", "width: 100%", "height: 100%"]);
            var expandChildStyle        = buildCssTextString(["position: absolute", "left: 0", "top: 0"]);
            var shrinkChildStyle        = buildCssTextString(["position: absolute", "width: 200%", "height: 200%"]);

            var containerContainer      = document.createElement("div");
            var container               = document.createElement("div");
            var expand                  = document.createElement("div");
            var expandChild             = document.createElement("div");
            var shrink                  = document.createElement("div");
            var shrinkChild             = document.createElement("div");

            // Some browsers choke on the resize system being rtl, so force it to ltr. https://github.com/wnr/element-resize-detector/issues/56
            // However, dir should not be set on the top level container as it alters the dimensions of the target element in some browsers.
            containerContainer.dir              = "ltr";

            containerContainer.style.cssText    = containerContainerStyle;
            containerContainer.className        = detectionContainerClass;
            container.className                 = detectionContainerClass;
            container.style.cssText             = containerStyle;
            expand.style.cssText                = expandStyle;
            expandChild.style.cssText           = expandChildStyle;
            shrink.style.cssText                = shrinkStyle;
            shrinkChild.style.cssText           = shrinkChildStyle;

            expand.appendChild(expandChild);
            shrink.appendChild(shrinkChild);
            container.appendChild(expand);
            container.appendChild(shrink);
            containerContainer.appendChild(container);
            rootContainer.appendChild(containerContainer);

            function onExpandScroll() {
                getState(element).onExpand && getState(element).onExpand();
            }

            function onShrinkScroll() {
                getState(element).onShrink && getState(element).onShrink();
            }

            addEvent(expand, "scroll", onExpandScroll);
            addEvent(shrink, "scroll", onShrinkScroll);

            // Store the event handlers here so that they may be removed when uninstall is called.
            // See uninstall function for an explanation why it is needed.
            getState(element).onExpandScroll = onExpandScroll;
            getState(element).onShrinkScroll = onShrinkScroll;
        }

        function registerListenersAndPositionElements() {
            function updateChildSizes(element, width, height) {
                var expandChild             = getExpandChildElement(element);
                var expandWidth             = getExpandWidth(width);
                var expandHeight            = getExpandHeight(height);
                expandChild.style.setProperty("width", expandWidth + "px", options.important ? "important" : "");
                expandChild.style.setProperty("height", expandHeight + "px", options.important ? "important" : "");
            }

            function updateDetectorElements(done) {
                var width           = element.offsetWidth;
                var height          = element.offsetHeight;

                // Check whether the size has actually changed since last time the algorithm ran. If not, some steps may be skipped.
                var sizeChanged = width !== getState(element).lastWidth || height !== getState(element).lastHeight;

                debug("Storing current size", width, height);

                // Store the size of the element sync here, so that multiple scroll events may be ignored in the event listeners.
                // Otherwise the if-check in handleScroll is useless.
                storeCurrentSize(element, width, height);

                // Since we delay the processing of the batch, there is a risk that uninstall has been called before the batch gets to execute.
                // Since there is no way to cancel the fn executions, we need to add an uninstall guard to all fns of the batch.

                batchProcessor.add(0, function performUpdateChildSizes() {
                    if (!sizeChanged) {
                        return;
                    }

                    if (!getState(element)) {
                        debug("Aborting because element has been uninstalled");
                        return;
                    }

                    if (!areElementsInjected()) {
                        debug("Aborting because element container has not been initialized");
                        return;
                    }

                    if (options.debug) {
                        var w = element.offsetWidth;
                        var h = element.offsetHeight;

                        if (w !== width || h !== height) {
                            reporter.warn(idHandler.get(element), "Scroll: Size changed before updating detector elements.");
                        }
                    }

                    updateChildSizes(element, width, height);
                });

                batchProcessor.add(1, function updateScrollbars() {
                    // This function needs to be invoked event though the size is unchanged. The element could have been resized very quickly and then
                    // been restored to the original size, which will have changed the scrollbar positions.

                    if (!getState(element)) {
                        debug("Aborting because element has been uninstalled");
                        return;
                    }

                    if (!areElementsInjected()) {
                        debug("Aborting because element container has not been initialized");
                        return;
                    }

                    positionScrollbars(element, width, height);
                });

                if (sizeChanged && done) {
                    batchProcessor.add(2, function () {
                        if (!getState(element)) {
                            debug("Aborting because element has been uninstalled");
                            return;
                        }

                        if (!areElementsInjected()) {
                          debug("Aborting because element container has not been initialized");
                          return;
                        }

                        done();
                    });
                }
            }

            function areElementsInjected() {
                return !!getState(element).container;
            }

            function notifyListenersIfNeeded() {
                function isFirstNotify() {
                    return getState(element).lastNotifiedWidth === undefined;
                }

                debug("notifyListenersIfNeeded invoked");

                var state = getState(element);

                // Don't notify if the current size is the start size, and this is the first notification.
                if (isFirstNotify() && state.lastWidth === state.startSize.width && state.lastHeight === state.startSize.height) {
                    return debug("Not notifying: Size is the same as the start size, and there has been no notification yet.");
                }

                // Don't notify if the size already has been notified.
                if (state.lastWidth === state.lastNotifiedWidth && state.lastHeight === state.lastNotifiedHeight) {
                    return debug("Not notifying: Size already notified");
                }


                debug("Current size not notified, notifying...");
                state.lastNotifiedWidth = state.lastWidth;
                state.lastNotifiedHeight = state.lastHeight;
                forEach(getState(element).listeners, function (listener) {
                    listener(element);
                });
            }

            function handleRender() {
                debug("startanimation triggered.");

                if (isUnrendered(element)) {
                    debug("Ignoring since element is still unrendered...");
                    return;
                }

                debug("Element rendered.");
                var expand = getExpandElement(element);
                var shrink = getShrinkElement(element);
                if (expand.scrollLeft === 0 || expand.scrollTop === 0 || shrink.scrollLeft === 0 || shrink.scrollTop === 0) {
                    debug("Scrollbars out of sync. Updating detector elements...");
                    updateDetectorElements(notifyListenersIfNeeded);
                }
            }

            function handleScroll() {
                debug("Scroll detected.");

                if (isUnrendered(element)) {
                    // Element is still unrendered. Skip this scroll event.
                    debug("Scroll event fired while unrendered. Ignoring...");
                    return;
                }

                updateDetectorElements(notifyListenersIfNeeded);
            }

            debug("registerListenersAndPositionElements invoked.");

            if (!getState(element)) {
                debug("Aborting because element has been uninstalled");
                return;
            }

            getState(element).onRendered = handleRender;
            getState(element).onExpand = handleScroll;
            getState(element).onShrink = handleScroll;

            var style = getState(element).style;
            updateChildSizes(element, style.width, style.height);
        }

        function finalizeDomMutation() {
            debug("finalizeDomMutation invoked.");

            if (!getState(element)) {
                debug("Aborting because element has been uninstalled");
                return;
            }

            var style = getState(element).style;
            storeCurrentSize(element, style.width, style.height);
            positionScrollbars(element, style.width, style.height);
        }

        function ready() {
            callback(element);
        }

        function install() {
            debug("Installing...");
            initListeners();
            storeStartSize();

            batchProcessor.add(0, storeStyle);
            batchProcessor.add(1, injectScrollElements);
            batchProcessor.add(2, registerListenersAndPositionElements);
            batchProcessor.add(3, finalizeDomMutation);
            batchProcessor.add(4, ready);
        }

        debug("Making detectable...");

        if (isDetached(element)) {
            debug("Element is detached");

            injectContainerElement();

            debug("Waiting until element is attached...");

            getState(element).onRendered = function () {
                debug("Element is now attached");
                install();
            };
        } else {
            install();
        }
    }

    function uninstall(element) {
        var state = getState(element);

        if (!state) {
            // Uninstall has been called on a non-erd element.
            return;
        }

        // Uninstall may have been called in the following scenarios:
        // (1) Right between the sync code and async batch (here state.busy = true, but nothing have been registered or injected).
        // (2) In the ready callback of the last level of the batch by another element (here, state.busy = true, but all the stuff has been injected).
        // (3) After the installation process (here, state.busy = false and all the stuff has been injected).
        // So to be on the safe side, let's check for each thing before removing.

        // We need to remove the event listeners, because otherwise the event might fire on an uninstall element which results in an error when trying to get the state of the element.
        state.onExpandScroll && removeEvent(getExpandElement(element), "scroll", state.onExpandScroll);
        state.onShrinkScroll && removeEvent(getShrinkElement(element), "scroll", state.onShrinkScroll);
        state.onAnimationStart && removeEvent(state.container, "animationstart", state.onAnimationStart);

        state.container && element.removeChild(state.container);
    }

    return {
        makeDetectable: makeDetectable,
        addListener: addListener,
        uninstall: uninstall,
        initDocument: initDocument
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/element-resize-detector.js":
/*!*****************************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/element-resize-detector.js ***!
  \*****************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var forEach                 = __webpack_require__(/*! ./collection-utils */ "./node_modules/element-resize-detector/src/collection-utils.js").forEach;
var elementUtilsMaker       = __webpack_require__(/*! ./element-utils */ "./node_modules/element-resize-detector/src/element-utils.js");
var listenerHandlerMaker    = __webpack_require__(/*! ./listener-handler */ "./node_modules/element-resize-detector/src/listener-handler.js");
var idGeneratorMaker        = __webpack_require__(/*! ./id-generator */ "./node_modules/element-resize-detector/src/id-generator.js");
var idHandlerMaker          = __webpack_require__(/*! ./id-handler */ "./node_modules/element-resize-detector/src/id-handler.js");
var reporterMaker           = __webpack_require__(/*! ./reporter */ "./node_modules/element-resize-detector/src/reporter.js");
var browserDetector         = __webpack_require__(/*! ./browser-detector */ "./node_modules/element-resize-detector/src/browser-detector.js");
var batchProcessorMaker     = __webpack_require__(/*! batch-processor */ "./node_modules/batch-processor/src/batch-processor.js");
var stateHandler            = __webpack_require__(/*! ./state-handler */ "./node_modules/element-resize-detector/src/state-handler.js");

//Detection strategies.
var objectStrategyMaker     = __webpack_require__(/*! ./detection-strategy/object.js */ "./node_modules/element-resize-detector/src/detection-strategy/object.js");
var scrollStrategyMaker     = __webpack_require__(/*! ./detection-strategy/scroll.js */ "./node_modules/element-resize-detector/src/detection-strategy/scroll.js");

function isCollection(obj) {
    return Array.isArray(obj) || obj.length !== undefined;
}

function toArray(collection) {
    if (!Array.isArray(collection)) {
        var array = [];
        forEach(collection, function (obj) {
            array.push(obj);
        });
        return array;
    } else {
        return collection;
    }
}

function isElement(obj) {
    return obj && obj.nodeType === 1;
}

/**
 * @typedef idHandler
 * @type {object}
 * @property {function} get Gets the resize detector id of the element.
 * @property {function} set Generate and sets the resize detector id of the element.
 */

/**
 * @typedef Options
 * @type {object}
 * @property {boolean} callOnAdd    Determines if listeners should be called when they are getting added.
                                    Default is true. If true, the listener is guaranteed to be called when it has been added.
                                    If false, the listener will not be guarenteed to be called when it has been added (does not prevent it from being called).
 * @property {idHandler} idHandler  A custom id handler that is responsible for generating, setting and retrieving id's for elements.
                                    If not provided, a default id handler will be used.
 * @property {reporter} reporter    A custom reporter that handles reporting logs, warnings and errors.
                                    If not provided, a default id handler will be used.
                                    If set to false, then nothing will be reported.
 * @property {boolean} debug        If set to true, the the system will report debug messages as default for the listenTo method.
 */

/**
 * Creates an element resize detector instance.
 * @public
 * @param {Options?} options Optional global options object that will decide how this instance will work.
 */
module.exports = function(options) {
    options = options || {};

    //idHandler is currently not an option to the listenTo function, so it should not be added to globalOptions.
    var idHandler;

    if (options.idHandler) {
        // To maintain compatability with idHandler.get(element, readonly), make sure to wrap the given idHandler
        // so that readonly flag always is true when it's used here. This may be removed next major version bump.
        idHandler = {
            get: function (element) { return options.idHandler.get(element, true); },
            set: options.idHandler.set
        };
    } else {
        var idGenerator = idGeneratorMaker();
        var defaultIdHandler = idHandlerMaker({
            idGenerator: idGenerator,
            stateHandler: stateHandler
        });
        idHandler = defaultIdHandler;
    }

    //reporter is currently not an option to the listenTo function, so it should not be added to globalOptions.
    var reporter = options.reporter;

    if(!reporter) {
        //If options.reporter is false, then the reporter should be quiet.
        var quiet = reporter === false;
        reporter = reporterMaker(quiet);
    }

    //batchProcessor is currently not an option to the listenTo function, so it should not be added to globalOptions.
    var batchProcessor = getOption(options, "batchProcessor", batchProcessorMaker({ reporter: reporter }));

    //Options to be used as default for the listenTo function.
    var globalOptions = {};
    globalOptions.callOnAdd     = !!getOption(options, "callOnAdd", true);
    globalOptions.debug         = !!getOption(options, "debug", false);

    var eventListenerHandler    = listenerHandlerMaker(idHandler);
    var elementUtils            = elementUtilsMaker({
        stateHandler: stateHandler
    });

    //The detection strategy to be used.
    var detectionStrategy;
    var desiredStrategy = getOption(options, "strategy", "object");
    var importantCssRules = getOption(options, "important", false);
    var strategyOptions = {
        reporter: reporter,
        batchProcessor: batchProcessor,
        stateHandler: stateHandler,
        idHandler: idHandler,
        important: importantCssRules
    };

    if(desiredStrategy === "scroll") {
        if (browserDetector.isLegacyOpera()) {
            reporter.warn("Scroll strategy is not supported on legacy Opera. Changing to object strategy.");
            desiredStrategy = "object";
        } else if (browserDetector.isIE(9)) {
            reporter.warn("Scroll strategy is not supported on IE9. Changing to object strategy.");
            desiredStrategy = "object";
        }
    }

    if(desiredStrategy === "scroll") {
        detectionStrategy = scrollStrategyMaker(strategyOptions);
    } else if(desiredStrategy === "object") {
        detectionStrategy = objectStrategyMaker(strategyOptions);
    } else {
        throw new Error("Invalid strategy name: " + desiredStrategy);
    }

    //Calls can be made to listenTo with elements that are still being installed.
    //Also, same elements can occur in the elements list in the listenTo function.
    //With this map, the ready callbacks can be synchronized between the calls
    //so that the ready callback can always be called when an element is ready - even if
    //it wasn't installed from the function itself.
    var onReadyCallbacks = {};

    /**
     * Makes the given elements resize-detectable and starts listening to resize events on the elements. Calls the event callback for each event for each element.
     * @public
     * @param {Options?} options Optional options object. These options will override the global options. Some options may not be overriden, such as idHandler.
     * @param {element[]|element} elements The given array of elements to detect resize events of. Single element is also valid.
     * @param {function} listener The callback to be executed for each resize event for each element.
     */
    function listenTo(options, elements, listener) {
        function onResizeCallback(element) {
            var listeners = eventListenerHandler.get(element);
            forEach(listeners, function callListenerProxy(listener) {
                listener(element);
            });
        }

        function addListener(callOnAdd, element, listener) {
            eventListenerHandler.add(element, listener);

            if(callOnAdd) {
                listener(element);
            }
        }

        //Options object may be omitted.
        if(!listener) {
            listener = elements;
            elements = options;
            options = {};
        }

        if(!elements) {
            throw new Error("At least one element required.");
        }

        if(!listener) {
            throw new Error("Listener required.");
        }

        if (isElement(elements)) {
            // A single element has been passed in.
            elements = [elements];
        } else if (isCollection(elements)) {
            // Convert collection to array for plugins.
            // TODO: May want to check so that all the elements in the collection are valid elements.
            elements = toArray(elements);
        } else {
            return reporter.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");
        }

        var elementsReady = 0;

        var callOnAdd = getOption(options, "callOnAdd", globalOptions.callOnAdd);
        var onReadyCallback = getOption(options, "onReady", function noop() {});
        var debug = getOption(options, "debug", globalOptions.debug);

        forEach(elements, function attachListenerToElement(element) {
            if (!stateHandler.getState(element)) {
                stateHandler.initState(element);
                idHandler.set(element);
            }

            var id = idHandler.get(element);

            debug && reporter.log("Attaching listener to element", id, element);

            if(!elementUtils.isDetectable(element)) {
                debug && reporter.log(id, "Not detectable.");
                if(elementUtils.isBusy(element)) {
                    debug && reporter.log(id, "System busy making it detectable");

                    //The element is being prepared to be detectable. Do not make it detectable.
                    //Just add the listener, because the element will soon be detectable.
                    addListener(callOnAdd, element, listener);
                    onReadyCallbacks[id] = onReadyCallbacks[id] || [];
                    onReadyCallbacks[id].push(function onReady() {
                        elementsReady++;

                        if(elementsReady === elements.length) {
                            onReadyCallback();
                        }
                    });
                    return;
                }

                debug && reporter.log(id, "Making detectable...");
                //The element is not prepared to be detectable, so do prepare it and add a listener to it.
                elementUtils.markBusy(element, true);
                return detectionStrategy.makeDetectable({ debug: debug, important: importantCssRules }, element, function onElementDetectable(element) {
                    debug && reporter.log(id, "onElementDetectable");

                    if (stateHandler.getState(element)) {
                        elementUtils.markAsDetectable(element);
                        elementUtils.markBusy(element, false);
                        detectionStrategy.addListener(element, onResizeCallback);
                        addListener(callOnAdd, element, listener);

                        // Since the element size might have changed since the call to "listenTo", we need to check for this change,
                        // so that a resize event may be emitted.
                        // Having the startSize object is optional (since it does not make sense in some cases such as unrendered elements), so check for its existance before.
                        // Also, check the state existance before since the element may have been uninstalled in the installation process.
                        var state = stateHandler.getState(element);
                        if (state && state.startSize) {
                            var width = element.offsetWidth;
                            var height = element.offsetHeight;
                            if (state.startSize.width !== width || state.startSize.height !== height) {
                                onResizeCallback(element);
                            }
                        }

                        if(onReadyCallbacks[id]) {
                            forEach(onReadyCallbacks[id], function(callback) {
                                callback();
                            });
                        }
                    } else {
                        // The element has been unisntalled before being detectable.
                        debug && reporter.log(id, "Element uninstalled before being detectable.");
                    }

                    delete onReadyCallbacks[id];

                    elementsReady++;
                    if(elementsReady === elements.length) {
                        onReadyCallback();
                    }
                });
            }

            debug && reporter.log(id, "Already detecable, adding listener.");

            //The element has been prepared to be detectable and is ready to be listened to.
            addListener(callOnAdd, element, listener);
            elementsReady++;
        });

        if(elementsReady === elements.length) {
            onReadyCallback();
        }
    }

    function uninstall(elements) {
        if(!elements) {
            return reporter.error("At least one element is required.");
        }

        if (isElement(elements)) {
            // A single element has been passed in.
            elements = [elements];
        } else if (isCollection(elements)) {
            // Convert collection to array for plugins.
            // TODO: May want to check so that all the elements in the collection are valid elements.
            elements = toArray(elements);
        } else {
            return reporter.error("Invalid arguments. Must be a DOM element or a collection of DOM elements.");
        }

        forEach(elements, function (element) {
            eventListenerHandler.removeAllListeners(element);
            detectionStrategy.uninstall(element);
            stateHandler.cleanState(element);
        });
    }

    function initDocument(targetDocument) {
        detectionStrategy.initDocument && detectionStrategy.initDocument(targetDocument);
    }

    return {
        listenTo: listenTo,
        removeListener: eventListenerHandler.removeListener,
        removeAllListeners: eventListenerHandler.removeAllListeners,
        uninstall: uninstall,
        initDocument: initDocument
    };
};

function getOption(options, name, defaultValue) {
    var value = options[name];

    if((value === undefined || value === null) && defaultValue !== undefined) {
        return defaultValue;
    }

    return value;
}


/***/ }),

/***/ "./node_modules/element-resize-detector/src/element-utils.js":
/*!*******************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/element-utils.js ***!
  \*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function(options) {
    var getState = options.stateHandler.getState;

    /**
     * Tells if the element has been made detectable and ready to be listened for resize events.
     * @public
     * @param {element} The element to check.
     * @returns {boolean} True or false depending on if the element is detectable or not.
     */
    function isDetectable(element) {
        var state = getState(element);
        return state && !!state.isDetectable;
    }

    /**
     * Marks the element that it has been made detectable and ready to be listened for resize events.
     * @public
     * @param {element} The element to mark.
     */
    function markAsDetectable(element) {
        getState(element).isDetectable = true;
    }

    /**
     * Tells if the element is busy or not.
     * @public
     * @param {element} The element to check.
     * @returns {boolean} True or false depending on if the element is busy or not.
     */
    function isBusy(element) {
        return !!getState(element).busy;
    }

    /**
     * Marks the object is busy and should not be made detectable.
     * @public
     * @param {element} element The element to mark.
     * @param {boolean} busy If the element is busy or not.
     */
    function markBusy(element, busy) {
        getState(element).busy = !!busy;
    }

    return {
        isDetectable: isDetectable,
        markAsDetectable: markAsDetectable,
        isBusy: isBusy,
        markBusy: markBusy
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/id-generator.js":
/*!******************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/id-generator.js ***!
  \******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function() {
    var idCount = 1;

    /**
     * Generates a new unique id in the context.
     * @public
     * @returns {number} A unique id in the context.
     */
    function generate() {
        return idCount++;
    }

    return {
        generate: generate
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/id-handler.js":
/*!****************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/id-handler.js ***!
  \****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function(options) {
    var idGenerator     = options.idGenerator;
    var getState        = options.stateHandler.getState;

    /**
     * Gets the resize detector id of the element.
     * @public
     * @param {element} element The target element to get the id of.
     * @returns {string|number|null} The id of the element. Null if it has no id.
     */
    function getId(element) {
        var state = getState(element);

        if (state && state.id !== undefined) {
            return state.id;
        }

        return null;
    }

    /**
     * Sets the resize detector id of the element. Requires the element to have a resize detector state initialized.
     * @public
     * @param {element} element The target element to set the id of.
     * @returns {string|number|null} The id of the element.
     */
    function setId(element) {
        var state = getState(element);

        if (!state) {
            throw new Error("setId required the element to have a resize detection state.");
        }

        var id = idGenerator.generate();

        state.id = id;

        return id;
    }

    return {
        get: getId,
        set: setId
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/listener-handler.js":
/*!**********************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/listener-handler.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function(idHandler) {
    var eventListeners = {};

    /**
     * Gets all listeners for the given element.
     * @public
     * @param {element} element The element to get all listeners for.
     * @returns All listeners for the given element.
     */
    function getListeners(element) {
        var id = idHandler.get(element);

        if (id === undefined) {
            return [];
        }

        return eventListeners[id] || [];
    }

    /**
     * Stores the given listener for the given element. Will not actually add the listener to the element.
     * @public
     * @param {element} element The element that should have the listener added.
     * @param {function} listener The callback that the element has added.
     */
    function addListener(element, listener) {
        var id = idHandler.get(element);

        if(!eventListeners[id]) {
            eventListeners[id] = [];
        }

        eventListeners[id].push(listener);
    }

    function removeListener(element, listener) {
        var listeners = getListeners(element);
        for (var i = 0, len = listeners.length; i < len; ++i) {
            if (listeners[i] === listener) {
              listeners.splice(i, 1);
              break;
            }
        }
    }

    function removeAllListeners(element) {
      var listeners = getListeners(element);
      if (!listeners) { return; }
      listeners.length = 0;
    }

    return {
        get: getListeners,
        add: addListener,
        removeListener: removeListener,
        removeAllListeners: removeAllListeners
    };
};


/***/ }),

/***/ "./node_modules/element-resize-detector/src/reporter.js":
/*!**************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/reporter.js ***!
  \**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/* global console: false */

/**
 * Reporter that handles the reporting of logs, warnings and errors.
 * @public
 * @param {boolean} quiet Tells if the reporter should be quiet or not.
 */
module.exports = function(quiet) {
    function noop() {
        //Does nothing.
    }

    var reporter = {
        log: noop,
        warn: noop,
        error: noop
    };

    if(!quiet && window.console) {
        var attachFunction = function(reporter, name) {
            //The proxy is needed to be able to call the method with the console context,
            //since we cannot use bind.
            reporter[name] = function reporterProxy() {
                var f = console[name];
                if (f.apply) { //IE9 does not support console.log.apply :)
                    f.apply(console, arguments);
                } else {
                    for (var i = 0; i < arguments.length; i++) {
                        f(arguments[i]);
                    }
                }
            };
        };

        attachFunction(reporter, "log");
        attachFunction(reporter, "warn");
        attachFunction(reporter, "error");
    }

    return reporter;
};

/***/ }),

/***/ "./node_modules/element-resize-detector/src/state-handler.js":
/*!*******************************************************************!*\
  !*** ./node_modules/element-resize-detector/src/state-handler.js ***!
  \*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var prop = "_erd";

function initState(element) {
    element[prop] = {};
    return getState(element);
}

function getState(element) {
    return element[prop];
}

function cleanState(element) {
    delete element[prop];
}

module.exports = {
    initState: initState,
    getState: getState,
    cleanState: cleanState
};


/***/ }),

/***/ "./node_modules/enquire.js/src/MediaQuery.js":
/*!***************************************************!*\
  !*** ./node_modules/enquire.js/src/MediaQuery.js ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var QueryHandler = __webpack_require__(/*! ./QueryHandler */ "./node_modules/enquire.js/src/QueryHandler.js");
var each = __webpack_require__(/*! ./Util */ "./node_modules/enquire.js/src/Util.js").each;

/**
 * Represents a single media query, manages it's state and registered handlers for this query
 *
 * @constructor
 * @param {string} query the media query string
 * @param {boolean} [isUnconditional=false] whether the media query should run regardless of whether the conditions are met. Primarily for helping older browsers deal with mobile-first design
 */
function MediaQuery(query, isUnconditional) {
    this.query = query;
    this.isUnconditional = isUnconditional;
    this.handlers = [];
    this.mql = window.matchMedia(query);

    var self = this;
    this.listener = function(mql) {
        // Chrome passes an MediaQueryListEvent object, while other browsers pass MediaQueryList directly
        self.mql = mql.currentTarget || mql;
        self.assess();
    };
    this.mql.addListener(this.listener);
}

MediaQuery.prototype = {

    constuctor : MediaQuery,

    /**
     * add a handler for this query, triggering if already active
     *
     * @param {object} handler
     * @param {function} handler.match callback for when query is activated
     * @param {function} [handler.unmatch] callback for when query is deactivated
     * @param {function} [handler.setup] callback for immediate execution when a query handler is registered
     * @param {boolean} [handler.deferSetup=false] should the setup callback be deferred until the first time the handler is matched?
     */
    addHandler : function(handler) {
        var qh = new QueryHandler(handler);
        this.handlers.push(qh);

        this.matches() && qh.on();
    },

    /**
     * removes the given handler from the collection, and calls it's destroy methods
     *
     * @param {object || function} handler the handler to remove
     */
    removeHandler : function(handler) {
        var handlers = this.handlers;
        each(handlers, function(h, i) {
            if(h.equals(handler)) {
                h.destroy();
                return !handlers.splice(i,1); //remove from array and exit each early
            }
        });
    },

    /**
     * Determine whether the media query should be considered a match
     *
     * @return {Boolean} true if media query can be considered a match, false otherwise
     */
    matches : function() {
        return this.mql.matches || this.isUnconditional;
    },

    /**
     * Clears all handlers and unbinds events
     */
    clear : function() {
        each(this.handlers, function(handler) {
            handler.destroy();
        });
        this.mql.removeListener(this.listener);
        this.handlers.length = 0; //clear array
    },

    /*
        * Assesses the query, turning on all handlers if it matches, turning them off if it doesn't match
        */
    assess : function() {
        var action = this.matches() ? 'on' : 'off';

        each(this.handlers, function(handler) {
            handler[action]();
        });
    }
};

module.exports = MediaQuery;


/***/ }),

/***/ "./node_modules/enquire.js/src/MediaQueryDispatch.js":
/*!***********************************************************!*\
  !*** ./node_modules/enquire.js/src/MediaQueryDispatch.js ***!
  \***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var MediaQuery = __webpack_require__(/*! ./MediaQuery */ "./node_modules/enquire.js/src/MediaQuery.js");
var Util = __webpack_require__(/*! ./Util */ "./node_modules/enquire.js/src/Util.js");
var each = Util.each;
var isFunction = Util.isFunction;
var isArray = Util.isArray;

/**
 * Allows for registration of query handlers.
 * Manages the query handler's state and is responsible for wiring up browser events
 *
 * @constructor
 */
function MediaQueryDispatch () {
    if(!window.matchMedia) {
        throw new Error('matchMedia not present, legacy browsers require a polyfill');
    }

    this.queries = {};
    this.browserIsIncapable = !window.matchMedia('only all').matches;
}

MediaQueryDispatch.prototype = {

    constructor : MediaQueryDispatch,

    /**
     * Registers a handler for the given media query
     *
     * @param {string} q the media query
     * @param {object || Array || Function} options either a single query handler object, a function, or an array of query handlers
     * @param {function} options.match fired when query matched
     * @param {function} [options.unmatch] fired when a query is no longer matched
     * @param {function} [options.setup] fired when handler first triggered
     * @param {boolean} [options.deferSetup=false] whether setup should be run immediately or deferred until query is first matched
     * @param {boolean} [shouldDegrade=false] whether this particular media query should always run on incapable browsers
     */
    register : function(q, options, shouldDegrade) {
        var queries         = this.queries,
            isUnconditional = shouldDegrade && this.browserIsIncapable;

        if(!queries[q]) {
            queries[q] = new MediaQuery(q, isUnconditional);
        }

        //normalise to object in an array
        if(isFunction(options)) {
            options = { match : options };
        }
        if(!isArray(options)) {
            options = [options];
        }
        each(options, function(handler) {
            if (isFunction(handler)) {
                handler = { match : handler };
            }
            queries[q].addHandler(handler);
        });

        return this;
    },

    /**
     * unregisters a query and all it's handlers, or a specific handler for a query
     *
     * @param {string} q the media query to target
     * @param {object || function} [handler] specific handler to unregister
     */
    unregister : function(q, handler) {
        var query = this.queries[q];

        if(query) {
            if(handler) {
                query.removeHandler(handler);
            }
            else {
                query.clear();
                delete this.queries[q];
            }
        }

        return this;
    }
};

module.exports = MediaQueryDispatch;


/***/ }),

/***/ "./node_modules/enquire.js/src/QueryHandler.js":
/*!*****************************************************!*\
  !*** ./node_modules/enquire.js/src/QueryHandler.js ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Delegate to handle a media query being matched and unmatched.
 *
 * @param {object} options
 * @param {function} options.match callback for when the media query is matched
 * @param {function} [options.unmatch] callback for when the media query is unmatched
 * @param {function} [options.setup] one-time callback triggered the first time a query is matched
 * @param {boolean} [options.deferSetup=false] should the setup callback be run immediately, rather than first time query is matched?
 * @constructor
 */
function QueryHandler(options) {
    this.options = options;
    !options.deferSetup && this.setup();
}

QueryHandler.prototype = {

    constructor : QueryHandler,

    /**
     * coordinates setup of the handler
     *
     * @function
     */
    setup : function() {
        if(this.options.setup) {
            this.options.setup();
        }
        this.initialised = true;
    },

    /**
     * coordinates setup and triggering of the handler
     *
     * @function
     */
    on : function() {
        !this.initialised && this.setup();
        this.options.match && this.options.match();
    },

    /**
     * coordinates the unmatch event for the handler
     *
     * @function
     */
    off : function() {
        this.options.unmatch && this.options.unmatch();
    },

    /**
     * called when a handler is to be destroyed.
     * delegates to the destroy or unmatch callbacks, depending on availability.
     *
     * @function
     */
    destroy : function() {
        this.options.destroy ? this.options.destroy() : this.off();
    },

    /**
     * determines equality by reference.
     * if object is supplied compare options, if function, compare match callback
     *
     * @function
     * @param {object || function} [target] the target for comparison
     */
    equals : function(target) {
        return this.options === target || this.options.match === target;
    }

};

module.exports = QueryHandler;


/***/ }),

/***/ "./node_modules/enquire.js/src/Util.js":
/*!*********************************************!*\
  !*** ./node_modules/enquire.js/src/Util.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Helper function for iterating over a collection
 *
 * @param collection
 * @param fn
 */
function each(collection, fn) {
    var i      = 0,
        length = collection.length,
        cont;

    for(i; i < length; i++) {
        cont = fn(collection[i], i);
        if(cont === false) {
            break; //allow early exit
        }
    }
}

/**
 * Helper function for determining whether target object is an array
 *
 * @param target the object under test
 * @return {Boolean} true if array, false otherwise
 */
function isArray(target) {
    return Object.prototype.toString.apply(target) === '[object Array]';
}

/**
 * Helper function for determining whether target object is a function
 *
 * @param target the object under test
 * @return {Boolean} true if function, false otherwise
 */
function isFunction(target) {
    return typeof target === 'function';
}

module.exports = {
    isFunction : isFunction,
    isArray : isArray,
    each : each
};


/***/ }),

/***/ "./node_modules/enquire.js/src/index.js":
/*!**********************************************!*\
  !*** ./node_modules/enquire.js/src/index.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var MediaQueryDispatch = __webpack_require__(/*! ./MediaQueryDispatch */ "./node_modules/enquire.js/src/MediaQueryDispatch.js");
module.exports = new MediaQueryDispatch();


/***/ }),

/***/ "./node_modules/ev-emitter/ev-emitter.js":
/*!***********************************************!*\
  !*** ./node_modules/ev-emitter/ev-emitter.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**
 * EvEmitter v1.1.0
 * Lil' event emitter
 * MIT License
 */

/* jshint unused: true, undef: true, strict: true */

( function( global, factory ) {
  // universal module definition
  /* jshint strict: false */ /* globals define, module, window */
  if ( true ) {
    // AMD - RequireJS
    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :
				__WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( typeof window != 'undefined' ? window : this, function() {

"use strict";

function EvEmitter() {}

var proto = EvEmitter.prototype;

proto.on = function( eventName, listener ) {
  if ( !eventName || !listener ) {
    return;
  }
  // set events hash
  var events = this._events = this._events || {};
  // set listeners array
  var listeners = events[ eventName ] = events[ eventName ] || [];
  // only add once
  if ( listeners.indexOf( listener ) == -1 ) {
    listeners.push( listener );
  }

  return this;
};

proto.once = function( eventName, listener ) {
  if ( !eventName || !listener ) {
    return;
  }
  // add event
  this.on( eventName, listener );
  // set once flag
  // set onceEvents hash
  var onceEvents = this._onceEvents = this._onceEvents || {};
  // set onceListeners object
  var onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};
  // set flag
  onceListeners[ listener ] = true;

  return this;
};

proto.off = function( eventName, listener ) {
  var listeners = this._events && this._events[ eventName ];
  if ( !listeners || !listeners.length ) {
    return;
  }
  var index = listeners.indexOf( listener );
  if ( index != -1 ) {
    listeners.splice( index, 1 );
  }

  return this;
};

proto.emitEvent = function( eventName, args ) {
  var listeners = this._events && this._events[ eventName ];
  if ( !listeners || !listeners.length ) {
    return;
  }
  // copy over to avoid interference if .off() in listener
  listeners = listeners.slice(0);
  args = args || [];
  // once stuff
  var onceListeners = this._onceEvents && this._onceEvents[ eventName ];

  for ( var i=0; i < listeners.length; i++ ) {
    var listener = listeners[i]
    var isOnce = onceListeners && onceListeners[ listener ];
    if ( isOnce ) {
      // remove listener
      // remove before trigger to prevent recursion
      this.off( eventName, listener );
      // unset once flag
      delete onceListeners[ listener ];
    }
    // trigger listener
    listener.apply( this, args );
  }

  return this;
};

proto.allOff = function() {
  delete this._events;
  delete this._onceEvents;
};

return EvEmitter;

}));


/***/ }),

/***/ "./node_modules/exenv/index.js":
/*!*************************************!*\
  !*** ./node_modules/exenv/index.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_RESULT__;/*!
  Copyright (c) 2015 Jed Watson.
  Based on code that is Copyright 2013-2015, Facebook, Inc.
  All rights reserved.
*/
/* global define */

(function () {
	'use strict';

	var canUseDOM = !!(
		typeof window !== 'undefined' &&
		window.document &&
		window.document.createElement
	);

	var ExecutionEnvironment = {

		canUseDOM: canUseDOM,

		canUseWorkers: typeof Worker !== 'undefined',

		canUseEventListeners:
			canUseDOM && !!(window.addEventListener || window.attachEvent),

		canUseViewport: canUseDOM && !!window.screen

	};

	if (true) {
		!(__WEBPACK_AMD_DEFINE_RESULT__ = (function () {
			return ExecutionEnvironment;
		}).call(exports, __webpack_require__, exports, module),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
	} else {}

}());


/***/ }),

/***/ "./node_modules/fbjs/lib/emptyFunction.js":
/*!************************************************!*\
  !*** ./node_modules/fbjs/lib/emptyFunction.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * 
 */

function makeEmptyFunction(arg) {
  return function () {
    return arg;
  };
}

/**
 * This function accepts and discards inputs; it has no side effects. This is
 * primarily useful idiomatically for overridable function endpoints which
 * always need to be callable, since JS lacks a null-call idiom ala Cocoa.
 */
var emptyFunction = function emptyFunction() {};

emptyFunction.thatReturns = makeEmptyFunction;
emptyFunction.thatReturnsFalse = makeEmptyFunction(false);
emptyFunction.thatReturnsTrue = makeEmptyFunction(true);
emptyFunction.thatReturnsNull = makeEmptyFunction(null);
emptyFunction.thatReturnsThis = function () {
  return this;
};
emptyFunction.thatReturnsArgument = function (arg) {
  return arg;
};

module.exports = emptyFunction;

/***/ }),

/***/ "./node_modules/fbjs/lib/emptyObject.js":
/*!**********************************************!*\
  !*** ./node_modules/fbjs/lib/emptyObject.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */



var emptyObject = {};

if (true) {
  Object.freeze(emptyObject);
}

module.exports = emptyObject;

/***/ }),

/***/ "./node_modules/fbjs/lib/invariant.js":
/*!********************************************!*\
  !*** ./node_modules/fbjs/lib/invariant.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */



/**
 * Use invariant() to assert state which your program assumes to be true.
 *
 * Provide sprintf-style format (only %s is supported) and arguments
 * to provide information about what broke and what you were
 * expecting.
 *
 * The invariant message will be stripped in production, but the invariant
 * will remain to ensure logic does not differ in production.
 */

var validateFormat = function validateFormat(format) {};

if (true) {
  validateFormat = function validateFormat(format) {
    if (format === undefined) {
      throw new Error('invariant requires an error message argument');
    }
  };
}

function invariant(condition, format, a, b, c, d, e, f) {
  validateFormat(format);

  if (!condition) {
    var error;
    if (format === undefined) {
      error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');
    } else {
      var args = [a, b, c, d, e, f];
      var argIndex = 0;
      error = new Error(format.replace(/%s/g, function () {
        return args[argIndex++];
      }));
      error.name = 'Invariant Violation';
    }

    error.framesToPop = 1; // we don't care about invariant's own frame
    throw error;
  }
}

module.exports = invariant;

/***/ }),

/***/ "./node_modules/fbjs/lib/warning.js":
/*!******************************************!*\
  !*** ./node_modules/fbjs/lib/warning.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2014-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */



var emptyFunction = __webpack_require__(/*! ./emptyFunction */ "./node_modules/fbjs/lib/emptyFunction.js");

/**
 * Similar to invariant but only logs a warning if the condition is not met.
 * This can be used to log issues in development environments in critical
 * paths. Removing the logging code for production environments will keep the
 * same logic and follow the same code paths.
 */

var warning = emptyFunction;

if (true) {
  var printWarning = function printWarning(format) {
    for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
      args[_key - 1] = arguments[_key];
    }

    var argIndex = 0;
    var message = 'Warning: ' + format.replace(/%s/g, function () {
      return args[argIndex++];
    });
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };

  warning = function warning(condition, format) {
    if (format === undefined) {
      throw new Error('`warning(condition, format, ...args)` requires a warning ' + 'message argument');
    }

    if (format.indexOf('Failed Composite propType: ') === 0) {
      return; // Ignore CompositeComponent proptype check.
    }

    if (!condition) {
      for (var _len2 = arguments.length, args = Array(_len2 > 2 ? _len2 - 2 : 0), _key2 = 2; _key2 < _len2; _key2++) {
        args[_key2 - 2] = arguments[_key2];
      }

      printWarning.apply(undefined, [format].concat(args));
    }
  };
}

module.exports = warning;

/***/ }),

/***/ "./node_modules/fizzy-ui-utils/utils.js":
/*!**********************************************!*\
  !*** ./node_modules/fizzy-ui-utils/utils.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**
 * Fizzy UI utils v2.0.7
 * MIT license
 */

/*jshint browser: true, undef: true, unused: true, strict: true */

( function( window, factory ) {
  // universal module definition
  /*jshint strict: false */ /*globals define, module, require */

  if ( true ) {
    // AMD
    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
      __webpack_require__(/*! desandro-matches-selector/matches-selector */ "./node_modules/desandro-matches-selector/matches-selector.js")
    ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( matchesSelector ) {
      return factory( window, matchesSelector );
    }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( window, function factory( window, matchesSelector ) {

'use strict';

var utils = {};

// ----- extend ----- //

// extends objects
utils.extend = function( a, b ) {
  for ( var prop in b ) {
    a[ prop ] = b[ prop ];
  }
  return a;
};

// ----- modulo ----- //

utils.modulo = function( num, div ) {
  return ( ( num % div ) + div ) % div;
};

// ----- makeArray ----- //

var arraySlice = Array.prototype.slice;

// turn element or nodeList into an array
utils.makeArray = function( obj ) {
  if ( Array.isArray( obj ) ) {
    // use object if already an array
    return obj;
  }
  // return empty array if undefined or null. #6
  if ( obj === null || obj === undefined ) {
    return [];
  }

  var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
  if ( isArrayLike ) {
    // convert nodeList to array
    return arraySlice.call( obj );
  }

  // array of single index
  return [ obj ];
};

// ----- removeFrom ----- //

utils.removeFrom = function( ary, obj ) {
  var index = ary.indexOf( obj );
  if ( index != -1 ) {
    ary.splice( index, 1 );
  }
};

// ----- getParent ----- //

utils.getParent = function( elem, selector ) {
  while ( elem.parentNode && elem != document.body ) {
    elem = elem.parentNode;
    if ( matchesSelector( elem, selector ) ) {
      return elem;
    }
  }
};

// ----- getQueryElement ----- //

// use element as selector string
utils.getQueryElement = function( elem ) {
  if ( typeof elem == 'string' ) {
    return document.querySelector( elem );
  }
  return elem;
};

// ----- handleEvent ----- //

// enable .ontype to trigger from .addEventListener( elem, 'type' )
utils.handleEvent = function( event ) {
  var method = 'on' + event.type;
  if ( this[ method ] ) {
    this[ method ]( event );
  }
};

// ----- filterFindElements ----- //

utils.filterFindElements = function( elems, selector ) {
  // make array of elems
  elems = utils.makeArray( elems );
  var ffElems = [];

  elems.forEach( function( elem ) {
    // check that elem is an actual element
    if ( !( elem instanceof HTMLElement ) ) {
      return;
    }
    // add elem if no selector
    if ( !selector ) {
      ffElems.push( elem );
      return;
    }
    // filter & find items if we have a selector
    // filter
    if ( matchesSelector( elem, selector ) ) {
      ffElems.push( elem );
    }
    // find children
    var childElems = elem.querySelectorAll( selector );
    // concat childElems to filterFound array
    for ( var i=0; i < childElems.length; i++ ) {
      ffElems.push( childElems[i] );
    }
  });

  return ffElems;
};

// ----- debounceMethod ----- //

utils.debounceMethod = function( _class, methodName, threshold ) {
  threshold = threshold || 100;
  // original method
  var method = _class.prototype[ methodName ];
  var timeoutName = methodName + 'Timeout';

  _class.prototype[ methodName ] = function() {
    var timeout = this[ timeoutName ];
    clearTimeout( timeout );

    var args = arguments;
    var _this = this;
    this[ timeoutName ] = setTimeout( function() {
      method.apply( _this, args );
      delete _this[ timeoutName ];
    }, threshold );
  };
};

// ----- docReady ----- //

utils.docReady = function( callback ) {
  var readyState = document.readyState;
  if ( readyState == 'complete' || readyState == 'interactive' ) {
    // do async to allow for other scripts to run. metafizzy/flickity#441
    setTimeout( callback );
  } else {
    document.addEventListener( 'DOMContentLoaded', callback );
  }
};

// ----- htmlInit ----- //

// http://jamesroberts.name/blog/2010/02/22/string-functions-for-javascript-trim-to-camel-case-to-dashed-and-to-underscore/
utils.toDashed = function( str ) {
  return str.replace( /(.)([A-Z])/g, function( match, $1, $2 ) {
    return $1 + '-' + $2;
  }).toLowerCase();
};

var console = window.console;
/**
 * allow user to initialize classes via [data-namespace] or .js-namespace class
 * htmlInit( Widget, 'widgetName' )
 * options are parsed from data-namespace-options
 */
utils.htmlInit = function( WidgetClass, namespace ) {
  utils.docReady( function() {
    var dashedNamespace = utils.toDashed( namespace );
    var dataAttr = 'data-' + dashedNamespace;
    var dataAttrElems = document.querySelectorAll( '[' + dataAttr + ']' );
    var jsDashElems = document.querySelectorAll( '.js-' + dashedNamespace );
    var elems = utils.makeArray( dataAttrElems )
      .concat( utils.makeArray( jsDashElems ) );
    var dataOptionsAttr = dataAttr + '-options';
    var jQuery = window.jQuery;

    elems.forEach( function( elem ) {
      var attr = elem.getAttribute( dataAttr ) ||
        elem.getAttribute( dataOptionsAttr );
      var options;
      try {
        options = attr && JSON.parse( attr );
      } catch ( error ) {
        // log error, do not initialize
        if ( console ) {
          console.error( 'Error parsing ' + dataAttr + ' on ' + elem.className +
          ': ' + error );
        }
        return;
      }
      // initialize
      var instance = new WidgetClass( elem, options );
      // make available via $().data('namespace')
      if ( jQuery ) {
        jQuery.data( elem, namespace, instance );
      }
    });

  });
};

// -----  ----- //

return utils;

}));


/***/ }),

/***/ "./node_modules/get-size/get-size.js":
/*!*******************************************!*\
  !*** ./node_modules/get-size/get-size.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * getSize v2.0.3
 * measure size of elements
 * MIT license
 */

/* jshint browser: true, strict: true, undef: true, unused: true */
/* globals console: false */

( function( window, factory ) {
  /* jshint strict: false */ /* globals define, module */
  if ( true ) {
    // AMD
    !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :
				__WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

})( window, function factory() {
'use strict';

// -------------------------- helpers -------------------------- //

// get a number from a string, not a percentage
function getStyleSize( value ) {
  var num = parseFloat( value );
  // not a percent like '100%', and a number
  var isValid = value.indexOf('%') == -1 && !isNaN( num );
  return isValid && num;
}

function noop() {}

var logError = typeof console == 'undefined' ? noop :
  function( message ) {
    console.error( message );
  };

// -------------------------- measurements -------------------------- //

var measurements = [
  'paddingLeft',
  'paddingRight',
  'paddingTop',
  'paddingBottom',
  'marginLeft',
  'marginRight',
  'marginTop',
  'marginBottom',
  'borderLeftWidth',
  'borderRightWidth',
  'borderTopWidth',
  'borderBottomWidth'
];

var measurementsLength = measurements.length;

function getZeroSize() {
  var size = {
    width: 0,
    height: 0,
    innerWidth: 0,
    innerHeight: 0,
    outerWidth: 0,
    outerHeight: 0
  };
  for ( var i=0; i < measurementsLength; i++ ) {
    var measurement = measurements[i];
    size[ measurement ] = 0;
  }
  return size;
}

// -------------------------- getStyle -------------------------- //

/**
 * getStyle, get style of element, check for Firefox bug
 * https://bugzilla.mozilla.org/show_bug.cgi?id=548397
 */
function getStyle( elem ) {
  var style = getComputedStyle( elem );
  if ( !style ) {
    logError( 'Style returned ' + style +
      '. Are you running this code in a hidden iframe on Firefox? ' +
      'See https://bit.ly/getsizebug1' );
  }
  return style;
}

// -------------------------- setup -------------------------- //

var isSetup = false;

var isBoxSizeOuter;

/**
 * setup
 * check isBoxSizerOuter
 * do on first getSize() rather than on page load for Firefox bug
 */
function setup() {
  // setup once
  if ( isSetup ) {
    return;
  }
  isSetup = true;

  // -------------------------- box sizing -------------------------- //

  /**
   * Chrome & Safari measure the outer-width on style.width on border-box elems
   * IE11 & Firefox<29 measures the inner-width
   */
  var div = document.createElement('div');
  div.style.width = '200px';
  div.style.padding = '1px 2px 3px 4px';
  div.style.borderStyle = 'solid';
  div.style.borderWidth = '1px 2px 3px 4px';
  div.style.boxSizing = 'border-box';

  var body = document.body || document.documentElement;
  body.appendChild( div );
  var style = getStyle( div );
  // round value for browser zoom. desandro/masonry#928
  isBoxSizeOuter = Math.round( getStyleSize( style.width ) ) == 200;
  getSize.isBoxSizeOuter = isBoxSizeOuter;

  body.removeChild( div );
}

// -------------------------- getSize -------------------------- //

function getSize( elem ) {
  setup();

  // use querySeletor if elem is string
  if ( typeof elem == 'string' ) {
    elem = document.querySelector( elem );
  }

  // do not proceed on non-objects
  if ( !elem || typeof elem != 'object' || !elem.nodeType ) {
    return;
  }

  var style = getStyle( elem );

  // if hidden, everything is 0
  if ( style.display == 'none' ) {
    return getZeroSize();
  }

  var size = {};
  size.width = elem.offsetWidth;
  size.height = elem.offsetHeight;

  var isBorderBox = size.isBorderBox = style.boxSizing == 'border-box';

  // get all measurements
  for ( var i=0; i < measurementsLength; i++ ) {
    var measurement = measurements[i];
    var value = style[ measurement ];
    var num = parseFloat( value );
    // any 'auto', 'medium' value will be 0
    size[ measurement ] = !isNaN( num ) ? num : 0;
  }

  var paddingWidth = size.paddingLeft + size.paddingRight;
  var paddingHeight = size.paddingTop + size.paddingBottom;
  var marginWidth = size.marginLeft + size.marginRight;
  var marginHeight = size.marginTop + size.marginBottom;
  var borderWidth = size.borderLeftWidth + size.borderRightWidth;
  var borderHeight = size.borderTopWidth + size.borderBottomWidth;

  var isBorderBoxSizeOuter = isBorderBox && isBoxSizeOuter;

  // overwrite width and height if we can get it from style
  var styleWidth = getStyleSize( style.width );
  if ( styleWidth !== false ) {
    size.width = styleWidth +
      // add padding and border unless it's already including it
      ( isBorderBoxSizeOuter ? 0 : paddingWidth + borderWidth );
  }

  var styleHeight = getStyleSize( style.height );
  if ( styleHeight !== false ) {
    size.height = styleHeight +
      // add padding and border unless it's already including it
      ( isBorderBoxSizeOuter ? 0 : paddingHeight + borderHeight );
  }

  size.innerWidth = size.width - ( paddingWidth + borderWidth );
  size.innerHeight = size.height - ( paddingHeight + borderHeight );

  size.outerWidth = size.width + marginWidth;
  size.outerHeight = size.height + marginHeight;

  return size;
}

return getSize;

});


/***/ }),

/***/ "./node_modules/hyphenate-style-name/index.js":
/*!****************************************************!*\
  !*** ./node_modules/hyphenate-style-name/index.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* eslint-disable no-var, prefer-template */
var uppercasePattern = /[A-Z]/g
var msPattern = /^ms-/
var cache = {}

function toHyphenLower(match) {
  return '-' + match.toLowerCase()
}

function hyphenateStyleName(name) {
  if (cache.hasOwnProperty(name)) {
    return cache[name]
  }

  var hName = name.replace(uppercasePattern, toHyphenLower)
  return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)
}

/* harmony default export */ __webpack_exports__["default"] = (hyphenateStyleName);


/***/ }),

/***/ "./node_modules/imagesloaded/imagesloaded.js":
/*!***************************************************!*\
  !*** ./node_modules/imagesloaded/imagesloaded.js ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * imagesLoaded v4.1.4
 * JavaScript is all like "You images are done yet or what?"
 * MIT License
 */

( function( window, factory ) { 'use strict';
  // universal module definition

  /*global define: false, module: false, require: false */

  if ( true ) {
    // AMD
    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
      __webpack_require__(/*! ev-emitter/ev-emitter */ "./node_modules/ev-emitter/ev-emitter.js")
    ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter ) {
      return factory( window, EvEmitter );
    }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

})( typeof window !== 'undefined' ? window : this,

// --------------------------  factory -------------------------- //

function factory( window, EvEmitter ) {

'use strict';

var $ = window.jQuery;
var console = window.console;

// -------------------------- helpers -------------------------- //

// extend objects
function extend( a, b ) {
  for ( var prop in b ) {
    a[ prop ] = b[ prop ];
  }
  return a;
}

var arraySlice = Array.prototype.slice;

// turn element or nodeList into an array
function makeArray( obj ) {
  if ( Array.isArray( obj ) ) {
    // use object if already an array
    return obj;
  }

  var isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';
  if ( isArrayLike ) {
    // convert nodeList to array
    return arraySlice.call( obj );
  }

  // array of single index
  return [ obj ];
}

// -------------------------- imagesLoaded -------------------------- //

/**
 * @param {Array, Element, NodeList, String} elem
 * @param {Object or Function} options - if function, use as callback
 * @param {Function} onAlways - callback function
 */
function ImagesLoaded( elem, options, onAlways ) {
  // coerce ImagesLoaded() without new, to be new ImagesLoaded()
  if ( !( this instanceof ImagesLoaded ) ) {
    return new ImagesLoaded( elem, options, onAlways );
  }
  // use elem as selector string
  var queryElem = elem;
  if ( typeof elem == 'string' ) {
    queryElem = document.querySelectorAll( elem );
  }
  // bail if bad element
  if ( !queryElem ) {
    console.error( 'Bad element for imagesLoaded ' + ( queryElem || elem ) );
    return;
  }

  this.elements = makeArray( queryElem );
  this.options = extend( {}, this.options );
  // shift arguments if no options set
  if ( typeof options == 'function' ) {
    onAlways = options;
  } else {
    extend( this.options, options );
  }

  if ( onAlways ) {
    this.on( 'always', onAlways );
  }

  this.getImages();

  if ( $ ) {
    // add jQuery Deferred object
    this.jqDeferred = new $.Deferred();
  }

  // HACK check async to allow time to bind listeners
  setTimeout( this.check.bind( this ) );
}

ImagesLoaded.prototype = Object.create( EvEmitter.prototype );

ImagesLoaded.prototype.options = {};

ImagesLoaded.prototype.getImages = function() {
  this.images = [];

  // filter & find items if we have an item selector
  this.elements.forEach( this.addElementImages, this );
};

/**
 * @param {Node} element
 */
ImagesLoaded.prototype.addElementImages = function( elem ) {
  // filter siblings
  if ( elem.nodeName == 'IMG' ) {
    this.addImage( elem );
  }
  // get background image on element
  if ( this.options.background === true ) {
    this.addElementBackgroundImages( elem );
  }

  // find children
  // no non-element nodes, #143
  var nodeType = elem.nodeType;
  if ( !nodeType || !elementNodeTypes[ nodeType ] ) {
    return;
  }
  var childImgs = elem.querySelectorAll('img');
  // concat childElems to filterFound array
  for ( var i=0; i < childImgs.length; i++ ) {
    var img = childImgs[i];
    this.addImage( img );
  }

  // get child background images
  if ( typeof this.options.background == 'string' ) {
    var children = elem.querySelectorAll( this.options.background );
    for ( i=0; i < children.length; i++ ) {
      var child = children[i];
      this.addElementBackgroundImages( child );
    }
  }
};

var elementNodeTypes = {
  1: true,
  9: true,
  11: true
};

ImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {
  var style = getComputedStyle( elem );
  if ( !style ) {
    // Firefox returns null if in a hidden iframe https://bugzil.la/548397
    return;
  }
  // get url inside url("...")
  var reURL = /url\((['"])?(.*?)\1\)/gi;
  var matches = reURL.exec( style.backgroundImage );
  while ( matches !== null ) {
    var url = matches && matches[2];
    if ( url ) {
      this.addBackground( url, elem );
    }
    matches = reURL.exec( style.backgroundImage );
  }
};

/**
 * @param {Image} img
 */
ImagesLoaded.prototype.addImage = function( img ) {
  var loadingImage = new LoadingImage( img );
  this.images.push( loadingImage );
};

ImagesLoaded.prototype.addBackground = function( url, elem ) {
  var background = new Background( url, elem );
  this.images.push( background );
};

ImagesLoaded.prototype.check = function() {
  var _this = this;
  this.progressedCount = 0;
  this.hasAnyBroken = false;
  // complete if no images
  if ( !this.images.length ) {
    this.complete();
    return;
  }

  function onProgress( image, elem, message ) {
    // HACK - Chrome triggers event before object properties have changed. #83
    setTimeout( function() {
      _this.progress( image, elem, message );
    });
  }

  this.images.forEach( function( loadingImage ) {
    loadingImage.once( 'progress', onProgress );
    loadingImage.check();
  });
};

ImagesLoaded.prototype.progress = function( image, elem, message ) {
  this.progressedCount++;
  this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;
  // progress event
  this.emitEvent( 'progress', [ this, image, elem ] );
  if ( this.jqDeferred && this.jqDeferred.notify ) {
    this.jqDeferred.notify( this, image );
  }
  // check if completed
  if ( this.progressedCount == this.images.length ) {
    this.complete();
  }

  if ( this.options.debug && console ) {
    console.log( 'progress: ' + message, image, elem );
  }
};

ImagesLoaded.prototype.complete = function() {
  var eventName = this.hasAnyBroken ? 'fail' : 'done';
  this.isComplete = true;
  this.emitEvent( eventName, [ this ] );
  this.emitEvent( 'always', [ this ] );
  if ( this.jqDeferred ) {
    var jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';
    this.jqDeferred[ jqMethod ]( this );
  }
};

// --------------------------  -------------------------- //

function LoadingImage( img ) {
  this.img = img;
}

LoadingImage.prototype = Object.create( EvEmitter.prototype );

LoadingImage.prototype.check = function() {
  // If complete is true and browser supports natural sizes,
  // try to check for image status manually.
  var isComplete = this.getIsImageComplete();
  if ( isComplete ) {
    // report based on naturalWidth
    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
    return;
  }

  // If none of the checks above matched, simulate loading on detached element.
  this.proxyImage = new Image();
  this.proxyImage.addEventListener( 'load', this );
  this.proxyImage.addEventListener( 'error', this );
  // bind to image as well for Firefox. #191
  this.img.addEventListener( 'load', this );
  this.img.addEventListener( 'error', this );
  this.proxyImage.src = this.img.src;
};

LoadingImage.prototype.getIsImageComplete = function() {
  // check for non-zero, non-undefined naturalWidth
  // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671
  return this.img.complete && this.img.naturalWidth;
};

LoadingImage.prototype.confirm = function( isLoaded, message ) {
  this.isLoaded = isLoaded;
  this.emitEvent( 'progress', [ this, this.img, message ] );
};

// ----- events ----- //

// trigger specified handler for event type
LoadingImage.prototype.handleEvent = function( event ) {
  var method = 'on' + event.type;
  if ( this[ method ] ) {
    this[ method ]( event );
  }
};

LoadingImage.prototype.onload = function() {
  this.confirm( true, 'onload' );
  this.unbindEvents();
};

LoadingImage.prototype.onerror = function() {
  this.confirm( false, 'onerror' );
  this.unbindEvents();
};

LoadingImage.prototype.unbindEvents = function() {
  this.proxyImage.removeEventListener( 'load', this );
  this.proxyImage.removeEventListener( 'error', this );
  this.img.removeEventListener( 'load', this );
  this.img.removeEventListener( 'error', this );
};

// -------------------------- Background -------------------------- //

function Background( url, element ) {
  this.url = url;
  this.element = element;
  this.img = new Image();
}

// inherit LoadingImage prototype
Background.prototype = Object.create( LoadingImage.prototype );

Background.prototype.check = function() {
  this.img.addEventListener( 'load', this );
  this.img.addEventListener( 'error', this );
  this.img.src = this.url;
  // check if image is already complete
  var isComplete = this.getIsImageComplete();
  if ( isComplete ) {
    this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );
    this.unbindEvents();
  }
};

Background.prototype.unbindEvents = function() {
  this.img.removeEventListener( 'load', this );
  this.img.removeEventListener( 'error', this );
};

Background.prototype.confirm = function( isLoaded, message ) {
  this.isLoaded = isLoaded;
  this.emitEvent( 'progress', [ this, this.element, message ] );
};

// -------------------------- jQuery -------------------------- //

ImagesLoaded.makeJQueryPlugin = function( jQuery ) {
  jQuery = jQuery || window.jQuery;
  if ( !jQuery ) {
    return;
  }
  // set local variable
  $ = jQuery;
  // $().imagesLoaded()
  $.fn.imagesLoaded = function( options, callback ) {
    var instance = new ImagesLoaded( this, options, callback );
    return instance.jqDeferred.promise( $(this) );
  };
};
// try making plugin
ImagesLoaded.makeJQueryPlugin();

// --------------------------  -------------------------- //

return ImagesLoaded;

});


/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/createPrefixer.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/createPrefixer.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

exports.default = createPrefixer;

var _getBrowserInformation = __webpack_require__(/*! ../utils/getBrowserInformation */ "./node_modules/inline-style-prefixer/utils/getBrowserInformation.js");

var _getBrowserInformation2 = _interopRequireDefault(_getBrowserInformation);

var _getPrefixedKeyframes = __webpack_require__(/*! ../utils/getPrefixedKeyframes */ "./node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js");

var _getPrefixedKeyframes2 = _interopRequireDefault(_getPrefixedKeyframes);

var _capitalizeString = __webpack_require__(/*! ../utils/capitalizeString */ "./node_modules/inline-style-prefixer/utils/capitalizeString.js");

var _capitalizeString2 = _interopRequireDefault(_capitalizeString);

var _addNewValuesOnly = __webpack_require__(/*! ../utils/addNewValuesOnly */ "./node_modules/inline-style-prefixer/utils/addNewValuesOnly.js");

var _addNewValuesOnly2 = _interopRequireDefault(_addNewValuesOnly);

var _isObject = __webpack_require__(/*! ../utils/isObject */ "./node_modules/inline-style-prefixer/utils/isObject.js");

var _isObject2 = _interopRequireDefault(_isObject);

var _prefixValue = __webpack_require__(/*! ../utils/prefixValue */ "./node_modules/inline-style-prefixer/utils/prefixValue.js");

var _prefixValue2 = _interopRequireDefault(_prefixValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function createPrefixer(_ref) {
  var prefixMap = _ref.prefixMap,
      plugins = _ref.plugins;
  var fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function (style) {
    return style;
  };

  return function () {
    /**
     * Instantiante a new prefixer
     * @param {string} userAgent - userAgent to gather prefix information according to caniuse.com
     * @param {string} keepUnprefixed - keeps unprefixed properties and values
     */
    function Prefixer() {
      var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};

      _classCallCheck(this, Prefixer);

      var defaultUserAgent = typeof navigator !== 'undefined' ? navigator.userAgent : undefined;

      this._userAgent = options.userAgent || defaultUserAgent;
      this._keepUnprefixed = options.keepUnprefixed || false;

      if (this._userAgent) {
        this._browserInfo = (0, _getBrowserInformation2.default)(this._userAgent);
      }

      // Checks if the userAgent was resolved correctly
      if (this._browserInfo && this._browserInfo.cssPrefix) {
        this.prefixedKeyframes = (0, _getPrefixedKeyframes2.default)(this._browserInfo.browserName, this._browserInfo.browserVersion, this._browserInfo.cssPrefix);
      } else {
        this._useFallback = true;
        return false;
      }

      var prefixData = this._browserInfo.browserName && prefixMap[this._browserInfo.browserName];
      if (prefixData) {
        this._requiresPrefix = {};

        for (var property in prefixData) {
          if (prefixData[property] >= this._browserInfo.browserVersion) {
            this._requiresPrefix[property] = true;
          }
        }

        this._hasPropsRequiringPrefix = Object.keys(this._requiresPrefix).length > 0;
      } else {
        this._useFallback = true;
      }

      this._metaData = {
        browserVersion: this._browserInfo.browserVersion,
        browserName: this._browserInfo.browserName,
        cssPrefix: this._browserInfo.cssPrefix,
        jsPrefix: this._browserInfo.jsPrefix,
        keepUnprefixed: this._keepUnprefixed,
        requiresPrefix: this._requiresPrefix
      };
    }

    _createClass(Prefixer, [{
      key: 'prefix',
      value: function prefix(style) {
        // use static prefixer as fallback if userAgent can not be resolved
        if (this._useFallback) {
          return fallback(style);
        }

        // only add prefixes if needed
        if (!this._hasPropsRequiringPrefix) {
          return style;
        }

        return this._prefixStyle(style);
      }
    }, {
      key: '_prefixStyle',
      value: function _prefixStyle(style) {
        for (var property in style) {
          var value = style[property];

          // handle nested objects
          if ((0, _isObject2.default)(value)) {
            style[property] = this.prefix(value);
            // handle array values
          } else if (Array.isArray(value)) {
            var combinedValue = [];

            for (var i = 0, len = value.length; i < len; ++i) {
              var processedValue = (0, _prefixValue2.default)(plugins, property, value[i], style, this._metaData);
              (0, _addNewValuesOnly2.default)(combinedValue, processedValue || value[i]);
            }

            // only modify the value if it was touched
            // by any plugin to prevent unnecessary mutations
            if (combinedValue.length > 0) {
              style[property] = combinedValue;
            }
          } else {
            var _processedValue = (0, _prefixValue2.default)(plugins, property, value, style, this._metaData);

            // only modify the value if it was touched
            // by any plugin to prevent unnecessary mutations
            if (_processedValue) {
              style[property] = _processedValue;
            }

            // add prefixes to properties
            if (this._requiresPrefix.hasOwnProperty(property)) {
              style[this._browserInfo.jsPrefix + (0, _capitalizeString2.default)(property)] = value;
              if (!this._keepUnprefixed) {
                delete style[property];
              }
            }
          }
        }

        return style;
      }

      /**
       * Returns a prefixed version of the style object using all vendor prefixes
       * @param {Object} styles - Style object that gets prefixed properties added
       * @returns {Object} - Style object with prefixed properties and values
       */

    }], [{
      key: 'prefixAll',
      value: function prefixAll(styles) {
        return fallback(styles);
      }
    }]);

    return Prefixer;
  }();
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/calc.js":
/*!********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/calc.js ***!
  \********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = calc;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function calc(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (typeof value === 'string' && value.indexOf('calc(') > -1 && (browserName === 'firefox' && browserVersion < 15 || browserName === 'chrome' && browserVersion < 25 || browserName === 'safari' && browserVersion < 6.1 || browserName === 'ios_saf' && browserVersion < 7)) {
    return (0, _getPrefixedValue2.default)(value.replace(/calc\(/g, cssPrefix + 'calc('), value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js":
/*!*************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = crossFade;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function crossFade(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (typeof value === 'string' && value.indexOf('cross-fade(') > -1 && (browserName === 'chrome' || browserName === 'opera' || browserName === 'and_chr' || (browserName === 'ios_saf' || browserName === 'safari') && browserVersion < 10)) {
    return (0, _getPrefixedValue2.default)(value.replace(/cross-fade\(/g, cssPrefix + 'cross-fade('), value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/cursor.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/cursor.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = cursor;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var grabValues = {
  grab: true,
  grabbing: true
};


var zoomValues = {
  'zoom-in': true,
  'zoom-out': true
};

function cursor(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  // adds prefixes for firefox, chrome, safari, and opera regardless of
  // version until a reliable browser support info can be found
  // see: https://github.com/rofrischmann/inline-style-prefixer/issues/79
  if (property === 'cursor' && grabValues[value] && (browserName === 'firefox' || browserName === 'chrome' || browserName === 'safari' || browserName === 'opera')) {
    return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
  }

  if (property === 'cursor' && zoomValues[value] && (browserName === 'firefox' && browserVersion < 24 || browserName === 'chrome' && browserVersion < 37 || browserName === 'safari' && browserVersion < 9 || browserName === 'opera' && browserVersion < 24)) {
    return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/filter.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/filter.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = filter;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function filter(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (typeof value === 'string' && value.indexOf('filter(') > -1 && (browserName === 'ios_saf' || browserName === 'safari' && browserVersion < 9.1)) {
    return (0, _getPrefixedValue2.default)(value.replace(/filter\(/g, cssPrefix + 'filter('), value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/flex.js":
/*!********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/flex.js ***!
  \********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flex;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var values = {
  flex: true,
  'inline-flex': true
};
function flex(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (property === 'display' && values[value] && (browserName === 'chrome' && browserVersion < 29 && browserVersion > 20 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 9 && browserVersion > 6 || browserName === 'opera' && (browserVersion === 15 || browserVersion === 16))) {
    return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js":
/*!*************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flexboxIE;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var alternativeValues = {
  'space-around': 'distribute',
  'space-between': 'justify',
  'flex-start': 'start',
  'flex-end': 'end',
  flex: 'flexbox',
  'inline-flex': 'inline-flexbox'
};

var alternativeProps = {
  alignContent: 'msFlexLinePack',
  alignSelf: 'msFlexItemAlign',
  alignItems: 'msFlexAlign',
  justifyContent: 'msFlexPack',
  order: 'msFlexOrder',
  flexGrow: 'msFlexPositive',
  flexShrink: 'msFlexNegative',
  flexBasis: 'msFlexPreferredSize'
};

function flexboxIE(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed,
      requiresPrefix = _ref.requiresPrefix;

  if ((alternativeProps.hasOwnProperty(property) || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browserName === 'ie_mob' || browserName === 'ie') && browserVersion === 10) {
    delete requiresPrefix[property];

    if (!keepUnprefixed && !Array.isArray(style[property])) {
      delete style[property];
    }
    if (property === 'display' && alternativeValues.hasOwnProperty(value)) {
      return (0, _getPrefixedValue2.default)(cssPrefix + alternativeValues[value], value, keepUnprefixed);
    }
    if (alternativeProps.hasOwnProperty(property)) {
      style[alternativeProps[property]] = alternativeValues[value] || value;
    }
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js":
/*!**************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js ***!
  \**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flexboxOld;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var alternativeValues = {
  'space-around': 'justify',
  'space-between': 'justify',
  'flex-start': 'start',
  'flex-end': 'end',
  'wrap-reverse': 'multiple',
  wrap: 'multiple',
  flex: 'box',
  'inline-flex': 'inline-box'
};


var alternativeProps = {
  alignItems: 'WebkitBoxAlign',
  justifyContent: 'WebkitBoxPack',
  flexWrap: 'WebkitBoxLines',
  flexGrow: 'WebkitBoxFlex'
};

var otherProps = ['alignContent', 'alignSelf', 'order', 'flexGrow', 'flexShrink', 'flexBasis', 'flexDirection'];
var properties = Object.keys(alternativeProps).concat(otherProps);

function flexboxOld(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed,
      requiresPrefix = _ref.requiresPrefix;

  if ((properties.indexOf(property) > -1 || property === 'display' && typeof value === 'string' && value.indexOf('flex') > -1) && (browserName === 'firefox' && browserVersion < 22 || browserName === 'chrome' && browserVersion < 21 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion <= 6.1 || browserName === 'android' && browserVersion < 4.4 || browserName === 'and_uc')) {
    delete requiresPrefix[property];

    if (!keepUnprefixed && !Array.isArray(style[property])) {
      delete style[property];
    }
    if (property === 'flexDirection' && typeof value === 'string') {
      if (value.indexOf('column') > -1) {
        style.WebkitBoxOrient = 'vertical';
      } else {
        style.WebkitBoxOrient = 'horizontal';
      }
      if (value.indexOf('reverse') > -1) {
        style.WebkitBoxDirection = 'reverse';
      } else {
        style.WebkitBoxDirection = 'normal';
      }
    }
    if (property === 'display' && alternativeValues.hasOwnProperty(value)) {
      return (0, _getPrefixedValue2.default)(cssPrefix + alternativeValues[value], value, keepUnprefixed);
    }
    if (alternativeProps.hasOwnProperty(property)) {
      style[alternativeProps[property]] = alternativeValues[value] || value;
    }
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/gradient.js":
/*!************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/gradient.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = gradient;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/gi;
function gradient(property, value, style, _ref) {
  var browserName = _ref.browserName,
      browserVersion = _ref.browserVersion,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (typeof value === 'string' && values.test(value) && (browserName === 'firefox' && browserVersion < 16 || browserName === 'chrome' && browserVersion < 26 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 7 || (browserName === 'opera' || browserName === 'op_mini') && browserVersion < 12.1 || browserName === 'android' && browserVersion < 4.4 || browserName === 'and_uc')) {
    return (0, _getPrefixedValue2.default)(value.replace(values, function (grad) {
      return cssPrefix + grad;
    }), value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js":
/*!************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = imageSet;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function imageSet(property, value, style, _ref) {
  var browserName = _ref.browserName,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (typeof value === 'string' && value.indexOf('image-set(') > -1 && (browserName === 'chrome' || browserName === 'opera' || browserName === 'and_chr' || browserName === 'and_uc' || browserName === 'ios_saf' || browserName === 'safari')) {
    return (0, _getPrefixedValue2.default)(value.replace(/image-set\(/g, cssPrefix + 'image-set('), value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/position.js":
/*!************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/position.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = position;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function position(property, value, style, _ref) {
  var browserName = _ref.browserName,
      cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  if (property === 'position' && value === 'sticky' && (browserName === 'safari' || browserName === 'ios_saf')) {
    return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/sizing.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/sizing.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = sizing;

var _getPrefixedValue = __webpack_require__(/*! ../../utils/getPrefixedValue */ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js");

var _getPrefixedValue2 = _interopRequireDefault(_getPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var properties = {
  maxHeight: true,
  maxWidth: true,
  width: true,
  height: true,
  columnWidth: true,
  minWidth: true,
  minHeight: true
};

var values = {
  'min-content': true,
  'max-content': true,
  'fill-available': true,
  'fit-content': true,
  'contain-floats': true

  // TODO: chrome & opera support it
};function sizing(property, value, style, _ref) {
  var cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed;

  // This might change in the future
  // Keep an eye on it
  if (properties.hasOwnProperty(property) && values.hasOwnProperty(value)) {
    return (0, _getPrefixedValue2.default)(cssPrefix + value, value, keepUnprefixed);
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/dynamic/plugins/transition.js":
/*!**************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/dynamic/plugins/transition.js ***!
  \**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = transition;

var _hyphenateProperty = __webpack_require__(/*! css-in-js-utils/lib/hyphenateProperty */ "./node_modules/css-in-js-utils/lib/hyphenateProperty.js");

var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var properties = {
  transition: true,
  transitionProperty: true,
  WebkitTransition: true,
  WebkitTransitionProperty: true,
  MozTransition: true,
  MozTransitionProperty: true
};


var requiresPrefixDashCased = void 0;

function transition(property, value, style, _ref) {
  var cssPrefix = _ref.cssPrefix,
      keepUnprefixed = _ref.keepUnprefixed,
      requiresPrefix = _ref.requiresPrefix;

  if (typeof value === 'string' && properties.hasOwnProperty(property)) {
    // memoize the prefix array for later use
    if (!requiresPrefixDashCased) {
      requiresPrefixDashCased = Object.keys(requiresPrefix).map(function (prop) {
        return (0, _hyphenateProperty2.default)(prop);
      });
    }

    // only split multi values, not cubic beziers
    var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g);

    requiresPrefixDashCased.forEach(function (prop) {
      multipleValues.forEach(function (val, index) {
        if (val.indexOf(prop) > -1 && prop !== 'order') {
          multipleValues[index] = val.replace(prop, cssPrefix + prop) + (keepUnprefixed ? ',' + val : '');
        }
      });
    });

    return multipleValues.join(',');
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/createPrefixer.js":
/*!*********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/createPrefixer.js ***!
  \*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = createPrefixer;

var _prefixProperty = __webpack_require__(/*! ../utils/prefixProperty */ "./node_modules/inline-style-prefixer/utils/prefixProperty.js");

var _prefixProperty2 = _interopRequireDefault(_prefixProperty);

var _prefixValue = __webpack_require__(/*! ../utils/prefixValue */ "./node_modules/inline-style-prefixer/utils/prefixValue.js");

var _prefixValue2 = _interopRequireDefault(_prefixValue);

var _addNewValuesOnly = __webpack_require__(/*! ../utils/addNewValuesOnly */ "./node_modules/inline-style-prefixer/utils/addNewValuesOnly.js");

var _addNewValuesOnly2 = _interopRequireDefault(_addNewValuesOnly);

var _isObject = __webpack_require__(/*! ../utils/isObject */ "./node_modules/inline-style-prefixer/utils/isObject.js");

var _isObject2 = _interopRequireDefault(_isObject);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function createPrefixer(_ref) {
  var prefixMap = _ref.prefixMap,
      plugins = _ref.plugins;

  function prefixAll(style) {
    for (var property in style) {
      var value = style[property];

      // handle nested objects
      if ((0, _isObject2.default)(value)) {
        style[property] = prefixAll(value);
        // handle array values
      } else if (Array.isArray(value)) {
        var combinedValue = [];

        for (var i = 0, len = value.length; i < len; ++i) {
          var processedValue = (0, _prefixValue2.default)(plugins, property, value[i], style, prefixMap);
          (0, _addNewValuesOnly2.default)(combinedValue, processedValue || value[i]);
        }

        // only modify the value if it was touched
        // by any plugin to prevent unnecessary mutations
        if (combinedValue.length > 0) {
          style[property] = combinedValue;
        }
      } else {
        var _processedValue = (0, _prefixValue2.default)(plugins, property, value, style, prefixMap);

        // only modify the value if it was touched
        // by any plugin to prevent unnecessary mutations
        if (_processedValue) {
          style[property] = _processedValue;
        }

        style = (0, _prefixProperty2.default)(prefixMap, property, style);
      }
    }

    return style;
  }

  return prefixAll;
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/calc.js":
/*!*******************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/calc.js ***!
  \*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = calc;

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var prefixes = ['-webkit-', '-moz-', ''];
function calc(property, value) {
  if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('calc(') > -1) {
    return prefixes.map(function (prefix) {
      return value.replace(/calc\(/g, prefix + 'calc(');
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/crossFade.js":
/*!************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/crossFade.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = crossFade;

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

// http://caniuse.com/#search=cross-fade
var prefixes = ['-webkit-', ''];
function crossFade(property, value) {
  if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('cross-fade(') > -1) {
    return prefixes.map(function (prefix) {
      return value.replace(/cross-fade\(/g, prefix + 'cross-fade(');
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/cursor.js":
/*!*********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/cursor.js ***!
  \*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = cursor;
var prefixes = ['-webkit-', '-moz-', ''];

var values = {
  'zoom-in': true,
  'zoom-out': true,
  grab: true,
  grabbing: true
};

function cursor(property, value) {
  if (property === 'cursor' && values.hasOwnProperty(value)) {
    return prefixes.map(function (prefix) {
      return prefix + value;
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/filter.js":
/*!*********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/filter.js ***!
  \*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = filter;

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

// http://caniuse.com/#feat=css-filter-function
var prefixes = ['-webkit-', ''];
function filter(property, value) {
  if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('filter(') > -1) {
    return prefixes.map(function (prefix) {
      return value.replace(/filter\(/g, prefix + 'filter(');
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/flex.js":
/*!*******************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/flex.js ***!
  \*******************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flex;
var values = {
  flex: ['-webkit-box', '-moz-box', '-ms-flexbox', '-webkit-flex', 'flex'],
  'inline-flex': ['-webkit-inline-box', '-moz-inline-box', '-ms-inline-flexbox', '-webkit-inline-flex', 'inline-flex']
};

function flex(property, value) {
  if (property === 'display' && values.hasOwnProperty(value)) {
    return values[value];
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/flexboxIE.js":
/*!************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/flexboxIE.js ***!
  \************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flexboxIE;
var alternativeValues = {
  'space-around': 'distribute',
  'space-between': 'justify',
  'flex-start': 'start',
  'flex-end': 'end'
};
var alternativeProps = {
  alignContent: 'msFlexLinePack',
  alignSelf: 'msFlexItemAlign',
  alignItems: 'msFlexAlign',
  justifyContent: 'msFlexPack',
  order: 'msFlexOrder',
  flexGrow: 'msFlexPositive',
  flexShrink: 'msFlexNegative',
  flexBasis: 'msFlexPreferredSize'
};

function flexboxIE(property, value, style) {
  if (alternativeProps.hasOwnProperty(property)) {
    style[alternativeProps[property]] = alternativeValues[value] || value;
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/flexboxOld.js":
/*!*************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/flexboxOld.js ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = flexboxOld;
var alternativeValues = {
  'space-around': 'justify',
  'space-between': 'justify',
  'flex-start': 'start',
  'flex-end': 'end',
  'wrap-reverse': 'multiple',
  wrap: 'multiple',
  flex: 'box',
  'inline-flex': 'inline-box'
};

var alternativeProps = {
  alignItems: 'WebkitBoxAlign',
  justifyContent: 'WebkitBoxPack',
  flexWrap: 'WebkitBoxLines',
  flexGrow: 'WebkitBoxFlex'
};

function flexboxOld(property, value, style) {
  if (property === 'flexDirection' && typeof value === 'string') {
    if (value.indexOf('column') > -1) {
      style.WebkitBoxOrient = 'vertical';
    } else {
      style.WebkitBoxOrient = 'horizontal';
    }
    if (value.indexOf('reverse') > -1) {
      style.WebkitBoxDirection = 'reverse';
    } else {
      style.WebkitBoxDirection = 'normal';
    }
  }
  if (alternativeProps.hasOwnProperty(property)) {
    style[alternativeProps[property]] = alternativeValues[value] || value;
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/gradient.js":
/*!***********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/gradient.js ***!
  \***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = gradient;

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var prefixes = ['-webkit-', '-moz-', ''];

var values = /linear-gradient|radial-gradient|repeating-linear-gradient|repeating-radial-gradient/gi;

function gradient(property, value) {
  if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && values.test(value)) {
    return prefixes.map(function (prefix) {
      return value.replace(values, function (grad) {
        return prefix + grad;
      });
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/imageSet.js":
/*!***********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/imageSet.js ***!
  \***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = imageSet;

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

// http://caniuse.com/#feat=css-image-set
var prefixes = ['-webkit-', ''];
function imageSet(property, value) {
  if (typeof value === 'string' && !(0, _isPrefixedValue2.default)(value) && value.indexOf('image-set(') > -1) {
    return prefixes.map(function (prefix) {
      return value.replace(/image-set\(/g, prefix + 'image-set(');
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/position.js":
/*!***********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/position.js ***!
  \***********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = position;
function position(property, value) {
  if (property === 'position' && value === 'sticky') {
    return ['-webkit-sticky', 'sticky'];
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/sizing.js":
/*!*********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/sizing.js ***!
  \*********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = sizing;
var prefixes = ['-webkit-', '-moz-', ''];

var properties = {
  maxHeight: true,
  maxWidth: true,
  width: true,
  height: true,
  columnWidth: true,
  minWidth: true,
  minHeight: true
};
var values = {
  'min-content': true,
  'max-content': true,
  'fill-available': true,
  'fit-content': true,
  'contain-floats': true
};

function sizing(property, value) {
  if (properties.hasOwnProperty(property) && values.hasOwnProperty(value)) {
    return prefixes.map(function (prefix) {
      return prefix + value;
    });
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/static/plugins/transition.js":
/*!*************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/static/plugins/transition.js ***!
  \*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = transition;

var _hyphenateProperty = __webpack_require__(/*! css-in-js-utils/lib/hyphenateProperty */ "./node_modules/css-in-js-utils/lib/hyphenateProperty.js");

var _hyphenateProperty2 = _interopRequireDefault(_hyphenateProperty);

var _isPrefixedValue = __webpack_require__(/*! css-in-js-utils/lib/isPrefixedValue */ "./node_modules/css-in-js-utils/lib/isPrefixedValue.js");

var _isPrefixedValue2 = _interopRequireDefault(_isPrefixedValue);

var _capitalizeString = __webpack_require__(/*! ../../utils/capitalizeString */ "./node_modules/inline-style-prefixer/utils/capitalizeString.js");

var _capitalizeString2 = _interopRequireDefault(_capitalizeString);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var properties = {
  transition: true,
  transitionProperty: true,
  WebkitTransition: true,
  WebkitTransitionProperty: true,
  MozTransition: true,
  MozTransitionProperty: true
};


var prefixMapping = {
  Webkit: '-webkit-',
  Moz: '-moz-',
  ms: '-ms-'
};

function prefixValue(value, propertyPrefixMap) {
  if ((0, _isPrefixedValue2.default)(value)) {
    return value;
  }

  // only split multi values, not cubic beziers
  var multipleValues = value.split(/,(?![^()]*(?:\([^()]*\))?\))/g);

  for (var i = 0, len = multipleValues.length; i < len; ++i) {
    var singleValue = multipleValues[i];
    var values = [singleValue];
    for (var property in propertyPrefixMap) {
      var dashCaseProperty = (0, _hyphenateProperty2.default)(property);

      if (singleValue.indexOf(dashCaseProperty) > -1 && dashCaseProperty !== 'order') {
        var prefixes = propertyPrefixMap[property];
        for (var j = 0, pLen = prefixes.length; j < pLen; ++j) {
          // join all prefixes and create a new value
          values.unshift(singleValue.replace(dashCaseProperty, prefixMapping[prefixes[j]] + dashCaseProperty));
        }
      }
    }

    multipleValues[i] = values.join(',');
  }

  return multipleValues.join(',');
}

function transition(property, value, style, propertyPrefixMap) {
  // also check for already prefixed transitions
  if (typeof value === 'string' && properties.hasOwnProperty(property)) {
    var outputValue = prefixValue(value, propertyPrefixMap);
    // if the property is already prefixed
    var webkitOutput = outputValue.split(/,(?![^()]*(?:\([^()]*\))?\))/g).filter(function (val) {
      return !/-moz-|-ms-/.test(val);
    }).join(',');

    if (property.indexOf('Webkit') > -1) {
      return webkitOutput;
    }

    var mozOutput = outputValue.split(/,(?![^()]*(?:\([^()]*\))?\))/g).filter(function (val) {
      return !/-webkit-|-ms-/.test(val);
    }).join(',');

    if (property.indexOf('Moz') > -1) {
      return mozOutput;
    }

    style['Webkit' + (0, _capitalizeString2.default)(property)] = webkitOutput;
    style['Moz' + (0, _capitalizeString2.default)(property)] = mozOutput;
    return outputValue;
  }
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/addNewValuesOnly.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/addNewValuesOnly.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = addNewValuesOnly;
function addIfNew(list, value) {
  if (list.indexOf(value) === -1) {
    list.push(value);
  }
}

function addNewValuesOnly(list, values) {
  if (Array.isArray(values)) {
    for (var i = 0, len = values.length; i < len; ++i) {
      addIfNew(list, values[i]);
    }
  } else {
    addIfNew(list, values);
  }
}
module.exports = exports["default"];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/capitalizeString.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/capitalizeString.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = capitalizeString;
function capitalizeString(str) {
  return str.charAt(0).toUpperCase() + str.slice(1);
}
module.exports = exports["default"];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/getBrowserInformation.js":
/*!***************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/getBrowserInformation.js ***!
  \***************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = getBrowserInformation;

var _bowser = __webpack_require__(/*! bowser */ "./node_modules/bowser/src/bowser.js");

var _bowser2 = _interopRequireDefault(_bowser);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var prefixByBrowser = {
  chrome: 'Webkit',
  safari: 'Webkit',
  ios: 'Webkit',
  android: 'Webkit',
  phantom: 'Webkit',
  opera: 'Webkit',
  webos: 'Webkit',
  blackberry: 'Webkit',
  bada: 'Webkit',
  tizen: 'Webkit',
  chromium: 'Webkit',
  vivaldi: 'Webkit',
  firefox: 'Moz',
  seamoney: 'Moz',
  sailfish: 'Moz',
  msie: 'ms',
  msedge: 'ms'
};


var browserByCanIuseAlias = {
  chrome: 'chrome',
  chromium: 'chrome',
  safari: 'safari',
  firfox: 'firefox',
  msedge: 'edge',
  opera: 'opera',
  vivaldi: 'opera',
  msie: 'ie'
};

function getBrowserName(browserInfo) {
  if (browserInfo.firefox) {
    return 'firefox';
  }

  if (browserInfo.mobile || browserInfo.tablet) {
    if (browserInfo.ios) {
      return 'ios_saf';
    } else if (browserInfo.android) {
      return 'android';
    } else if (browserInfo.opera) {
      return 'op_mini';
    }
  }

  for (var browser in browserByCanIuseAlias) {
    if (browserInfo.hasOwnProperty(browser)) {
      return browserByCanIuseAlias[browser];
    }
  }
}

/**
 * Uses bowser to get default browser browserInformation such as version and name
 * Evaluates bowser browserInfo and adds vendorPrefix browserInformation
 * @param {string} userAgent - userAgent that gets evaluated
 */
function getBrowserInformation(userAgent) {
  var browserInfo = _bowser2.default._detect(userAgent);

  if (browserInfo.yandexbrowser) {
    browserInfo = _bowser2.default._detect(userAgent.replace(/YaBrowser\/[0-9.]*/, ''));
  }

  for (var browser in prefixByBrowser) {
    if (browserInfo.hasOwnProperty(browser)) {
      var prefix = prefixByBrowser[browser];

      browserInfo.jsPrefix = prefix;
      browserInfo.cssPrefix = '-' + prefix.toLowerCase() + '-';
      break;
    }
  }

  browserInfo.browserName = getBrowserName(browserInfo);

  // For cordova IOS 8 the version is missing, set truncated osversion to prevent NaN
  if (browserInfo.version) {
    browserInfo.browserVersion = parseFloat(browserInfo.version);
  } else {
    browserInfo.browserVersion = parseInt(parseFloat(browserInfo.osversion), 10);
  }

  browserInfo.osVersion = parseFloat(browserInfo.osversion);

  // iOS forces all browsers to use Safari under the hood
  // as the Safari version seems to match the iOS version
  // we just explicitely use the osversion instead
  // https://github.com/rofrischmann/inline-style-prefixer/issues/72
  if (browserInfo.browserName === 'ios_saf' && browserInfo.browserVersion > browserInfo.osVersion) {
    browserInfo.browserVersion = browserInfo.osVersion;
  }

  // seperate native android chrome
  // https://github.com/rofrischmann/inline-style-prefixer/issues/45
  if (browserInfo.browserName === 'android' && browserInfo.chrome && browserInfo.browserVersion > 37) {
    browserInfo.browserName = 'and_chr';
  }

  // For android < 4.4 we want to check the osversion
  // not the chrome version, see issue #26
  // https://github.com/rofrischmann/inline-style-prefixer/issues/26
  if (browserInfo.browserName === 'android' && browserInfo.osVersion < 5) {
    browserInfo.browserVersion = browserInfo.osVersion;
  }

  // Samsung browser are basically build on Chrome > 44
  // https://github.com/rofrischmann/inline-style-prefixer/issues/102
  if (browserInfo.browserName === 'android' && browserInfo.samsungBrowser) {
    browserInfo.browserName = 'and_chr';
    browserInfo.browserVersion = 44;
  }

  return browserInfo;
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js":
/*!**************************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/getPrefixedKeyframes.js ***!
  \**************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = getPrefixedKeyframes;
function getPrefixedKeyframes(browserName, browserVersion, cssPrefix) {
  var prefixedKeyframes = 'keyframes';

  if (browserName === 'chrome' && browserVersion < 43 || (browserName === 'safari' || browserName === 'ios_saf') && browserVersion < 9 || browserName === 'opera' && browserVersion < 30 || browserName === 'android' && browserVersion <= 4.4 || browserName === 'and_uc') {
    return cssPrefix + prefixedKeyframes;
  }
  return prefixedKeyframes;
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/getPrefixedValue.js":
/*!**********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/getPrefixedValue.js ***!
  \**********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = getPrefixedValue;
function getPrefixedValue(prefixedValue, value, keepUnprefixed) {
  if (keepUnprefixed) {
    return [prefixedValue, value];
  }
  return prefixedValue;
}
module.exports = exports["default"];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/isObject.js":
/*!**************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/isObject.js ***!
  \**************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = isObject;
function isObject(value) {
  return value instanceof Object && !Array.isArray(value);
}
module.exports = exports["default"];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/prefixProperty.js":
/*!********************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/prefixProperty.js ***!
  \********************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = prefixProperty;

var _capitalizeString = __webpack_require__(/*! ./capitalizeString */ "./node_modules/inline-style-prefixer/utils/capitalizeString.js");

var _capitalizeString2 = _interopRequireDefault(_capitalizeString);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function prefixProperty(prefixProperties, property, style) {
  if (prefixProperties.hasOwnProperty(property)) {
    var newStyle = {};
    var requiredPrefixes = prefixProperties[property];
    var capitalizedProperty = (0, _capitalizeString2.default)(property);
    var keys = Object.keys(style);
    for (var i = 0; i < keys.length; i++) {
      var styleProperty = keys[i];
      if (styleProperty === property) {
        for (var j = 0; j < requiredPrefixes.length; j++) {
          newStyle[requiredPrefixes[j] + capitalizedProperty] = style[property];
        }
      }
      newStyle[styleProperty] = style[styleProperty];
    }
    return newStyle;
  }
  return style;
}
module.exports = exports['default'];

/***/ }),

/***/ "./node_modules/inline-style-prefixer/utils/prefixValue.js":
/*!*****************************************************************!*\
  !*** ./node_modules/inline-style-prefixer/utils/prefixValue.js ***!
  \*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = prefixValue;
function prefixValue(plugins, property, value, style, metaData) {
  for (var i = 0, len = plugins.length; i < len; ++i) {
    var processedValue = plugins[i](property, value, style, metaData);

    // we can stop processing if a value is returned
    // as all plugin criteria are unique
    if (processedValue) {
      return processedValue;
    }
  }
}
module.exports = exports["default"];

/***/ }),

/***/ "./node_modules/json2mq/index.js":
/*!***************************************!*\
  !*** ./node_modules/json2mq/index.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var camel2hyphen = __webpack_require__(/*! string-convert/camel2hyphen */ "./node_modules/string-convert/camel2hyphen.js");

var isDimension = function (feature) {
  var re = /[height|width]$/;
  return re.test(feature);
};

var obj2mq = function (obj) {
  var mq = '';
  var features = Object.keys(obj);
  features.forEach(function (feature, index) {
    var value = obj[feature];
    feature = camel2hyphen(feature);
    // Add px to dimension features
    if (isDimension(feature) && typeof value === 'number') {
      value = value + 'px';
    }
    if (value === true) {
      mq += feature;
    } else if (value === false) {
      mq += 'not ' + feature;
    } else {
      mq += '(' + feature + ': ' + value + ')';
    }
    if (index < features.length-1) {
      mq += ' and '
    }
  });
  return mq;
};

var json2mq = function (query) {
  var mq = '';
  if (typeof query === 'string') {
    return query;
  }
  // Handling array of media queries
  if (query instanceof Array) {
    query.forEach(function (q, index) {
      mq += obj2mq(q);
      if (index < query.length-1) {
        mq += ', '
      }
    });
    return mq;
  }
  // Handling single media query
  return obj2mq(query);
};

module.exports = json2mq;

/***/ }),

/***/ "./node_modules/lodash.debounce/index.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash.debounce/index.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global) {/**
 * lodash (Custom Build) <https://lodash.com/>
 * Build: `lodash modularize exports="npm" -o ./`
 * Copyright jQuery Foundation and other contributors <https://jquery.org/>
 * Released under MIT license <https://lodash.com/license>
 * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
 */

/** Used as the `TypeError` message for "Functions" methods. */
var FUNC_ERROR_TEXT = 'Expected a function';

/** Used as references for various `Number` constants. */
var NAN = 0 / 0;

/** `Object#toString` result references. */
var symbolTag = '[object Symbol]';

/** Used to match leading and trailing whitespace. */
var reTrim = /^\s+|\s+$/g;

/** Used to detect bad signed hexadecimal string values. */
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;

/** Used to detect binary string values. */
var reIsBinary = /^0b[01]+$/i;

/** Used to detect octal string values. */
var reIsOctal = /^0o[0-7]+$/i;

/** Built-in method references without a dependency on `root`. */
var freeParseInt = parseInt;

/** Detect free variable `global` from Node.js. */
var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;

/** Detect free variable `self`. */
var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

/** Used as a reference to the global object. */
var root = freeGlobal || freeSelf || Function('return this')();

/** Used for built-in method references. */
var objectProto = Object.prototype;

/**
 * Used to resolve the
 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
 * of values.
 */
var objectToString = objectProto.toString;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max,
    nativeMin = Math.min;

/**
 * Gets the timestamp of the number of milliseconds that have elapsed since
 * the Unix epoch (1 January 1970 00:00:00 UTC).
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Date
 * @returns {number} Returns the timestamp.
 * @example
 *
 * _.defer(function(stamp) {
 *   console.log(_.now() - stamp);
 * }, _.now());
 * // => Logs the number of milliseconds it took for the deferred invocation.
 */
var now = function() {
  return root.Date.now();
};

/**
 * Creates a debounced function that delays invoking `func` until after `wait`
 * milliseconds have elapsed since the last time the debounced function was
 * invoked. The debounced function comes with a `cancel` method to cancel
 * delayed `func` invocations and a `flush` method to immediately invoke them.
 * Provide `options` to indicate whether `func` should be invoked on the
 * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
 * with the last arguments provided to the debounced function. Subsequent
 * calls to the debounced function return the result of the last `func`
 * invocation.
 *
 * **Note:** If `leading` and `trailing` options are `true`, `func` is
 * invoked on the trailing edge of the timeout only if the debounced function
 * is invoked more than once during the `wait` timeout.
 *
 * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
 * until to the next tick, similar to `setTimeout` with a timeout of `0`.
 *
 * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
 * for details over the differences between `_.debounce` and `_.throttle`.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Function
 * @param {Function} func The function to debounce.
 * @param {number} [wait=0] The number of milliseconds to delay.
 * @param {Object} [options={}] The options object.
 * @param {boolean} [options.leading=false]
 *  Specify invoking on the leading edge of the timeout.
 * @param {number} [options.maxWait]
 *  The maximum time `func` is allowed to be delayed before it's invoked.
 * @param {boolean} [options.trailing=true]
 *  Specify invoking on the trailing edge of the timeout.
 * @returns {Function} Returns the new debounced function.
 * @example
 *
 * // Avoid costly calculations while the window size is in flux.
 * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
 *
 * // Invoke `sendMail` when clicked, debouncing subsequent calls.
 * jQuery(element).on('click', _.debounce(sendMail, 300, {
 *   'leading': true,
 *   'trailing': false
 * }));
 *
 * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
 * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
 * var source = new EventSource('/stream');
 * jQuery(source).on('message', debounced);
 *
 * // Cancel the trailing debounced invocation.
 * jQuery(window).on('popstate', debounced.cancel);
 */
function debounce(func, wait, options) {
  var lastArgs,
      lastThis,
      maxWait,
      result,
      timerId,
      lastCallTime,
      lastInvokeTime = 0,
      leading = false,
      maxing = false,
      trailing = true;

  if (typeof func != 'function') {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  wait = toNumber(wait) || 0;
  if (isObject(options)) {
    leading = !!options.leading;
    maxing = 'maxWait' in options;
    maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
    trailing = 'trailing' in options ? !!options.trailing : trailing;
  }

  function invokeFunc(time) {
    var args = lastArgs,
        thisArg = lastThis;

    lastArgs = lastThis = undefined;
    lastInvokeTime = time;
    result = func.apply(thisArg, args);
    return result;
  }

  function leadingEdge(time) {
    // Reset any `maxWait` timer.
    lastInvokeTime = time;
    // Start the timer for the trailing edge.
    timerId = setTimeout(timerExpired, wait);
    // Invoke the leading edge.
    return leading ? invokeFunc(time) : result;
  }

  function remainingWait(time) {
    var timeSinceLastCall = time - lastCallTime,
        timeSinceLastInvoke = time - lastInvokeTime,
        result = wait - timeSinceLastCall;

    return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;
  }

  function shouldInvoke(time) {
    var timeSinceLastCall = time - lastCallTime,
        timeSinceLastInvoke = time - lastInvokeTime;

    // Either this is the first call, activity has stopped and we're at the
    // trailing edge, the system time has gone backwards and we're treating
    // it as the trailing edge, or we've hit the `maxWait` limit.
    return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
      (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
  }

  function timerExpired() {
    var time = now();
    if (shouldInvoke(time)) {
      return trailingEdge(time);
    }
    // Restart the timer.
    timerId = setTimeout(timerExpired, remainingWait(time));
  }

  function trailingEdge(time) {
    timerId = undefined;

    // Only invoke if we have `lastArgs` which means `func` has been
    // debounced at least once.
    if (trailing && lastArgs) {
      return invokeFunc(time);
    }
    lastArgs = lastThis = undefined;
    return result;
  }

  function cancel() {
    if (timerId !== undefined) {
      clearTimeout(timerId);
    }
    lastInvokeTime = 0;
    lastArgs = lastCallTime = lastThis = timerId = undefined;
  }

  function flush() {
    return timerId === undefined ? result : trailingEdge(now());
  }

  function debounced() {
    var time = now(),
        isInvoking = shouldInvoke(time);

    lastArgs = arguments;
    lastThis = this;
    lastCallTime = time;

    if (isInvoking) {
      if (timerId === undefined) {
        return leadingEdge(lastCallTime);
      }
      if (maxing) {
        // Handle invocations in a tight loop.
        timerId = setTimeout(timerExpired, wait);
        return invokeFunc(lastCallTime);
      }
    }
    if (timerId === undefined) {
      timerId = setTimeout(timerExpired, wait);
    }
    return result;
  }
  debounced.cancel = cancel;
  debounced.flush = flush;
  return debounced;
}

/**
 * Checks if `value` is the
 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
 * @example
 *
 * _.isObject({});
 * // => true
 *
 * _.isObject([1, 2, 3]);
 * // => true
 *
 * _.isObject(_.noop);
 * // => true
 *
 * _.isObject(null);
 * // => false
 */
function isObject(value) {
  var type = typeof value;
  return !!value && (type == 'object' || type == 'function');
}

/**
 * Checks if `value` is object-like. A value is object-like if it's not `null`
 * and has a `typeof` result of "object".
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
 * @example
 *
 * _.isObjectLike({});
 * // => true
 *
 * _.isObjectLike([1, 2, 3]);
 * // => true
 *
 * _.isObjectLike(_.noop);
 * // => false
 *
 * _.isObjectLike(null);
 * // => false
 */
function isObjectLike(value) {
  return !!value && typeof value == 'object';
}

/**
 * Checks if `value` is classified as a `Symbol` primitive or object.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
 * @example
 *
 * _.isSymbol(Symbol.iterator);
 * // => true
 *
 * _.isSymbol('abc');
 * // => false
 */
function isSymbol(value) {
  return typeof value == 'symbol' ||
    (isObjectLike(value) && objectToString.call(value) == symbolTag);
}

/**
 * Converts `value` to a number.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to process.
 * @returns {number} Returns the number.
 * @example
 *
 * _.toNumber(3.2);
 * // => 3.2
 *
 * _.toNumber(Number.MIN_VALUE);
 * // => 5e-324
 *
 * _.toNumber(Infinity);
 * // => Infinity
 *
 * _.toNumber('3.2');
 * // => 3.2
 */
function toNumber(value) {
  if (typeof value == 'number') {
    return value;
  }
  if (isSymbol(value)) {
    return NAN;
  }
  if (isObject(value)) {
    var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
    value = isObject(other) ? (other + '') : other;
  }
  if (typeof value != 'string') {
    return value === 0 ? value : +value;
  }
  value = value.replace(reTrim, '');
  var isBinary = reIsBinary.test(value);
  return (isBinary || reIsOctal.test(value))
    ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
    : (reIsBadHex.test(value) ? NAN : +value);
}

module.exports = debounce;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ "./node_modules/webpack/buildin/global.js")))

/***/ }),

/***/ "./node_modules/lodash/_DataView.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_DataView.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"),
    root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/* Built-in method references that are verified to be native. */
var DataView = getNative(root, 'DataView');

module.exports = DataView;


/***/ }),

/***/ "./node_modules/lodash/_Hash.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/_Hash.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var hashClear = __webpack_require__(/*! ./_hashClear */ "./node_modules/lodash/_hashClear.js"),
    hashDelete = __webpack_require__(/*! ./_hashDelete */ "./node_modules/lodash/_hashDelete.js"),
    hashGet = __webpack_require__(/*! ./_hashGet */ "./node_modules/lodash/_hashGet.js"),
    hashHas = __webpack_require__(/*! ./_hashHas */ "./node_modules/lodash/_hashHas.js"),
    hashSet = __webpack_require__(/*! ./_hashSet */ "./node_modules/lodash/_hashSet.js");

/**
 * Creates a hash object.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function Hash(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `Hash`.
Hash.prototype.clear = hashClear;
Hash.prototype['delete'] = hashDelete;
Hash.prototype.get = hashGet;
Hash.prototype.has = hashHas;
Hash.prototype.set = hashSet;

module.exports = Hash;


/***/ }),

/***/ "./node_modules/lodash/_ListCache.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_ListCache.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var listCacheClear = __webpack_require__(/*! ./_listCacheClear */ "./node_modules/lodash/_listCacheClear.js"),
    listCacheDelete = __webpack_require__(/*! ./_listCacheDelete */ "./node_modules/lodash/_listCacheDelete.js"),
    listCacheGet = __webpack_require__(/*! ./_listCacheGet */ "./node_modules/lodash/_listCacheGet.js"),
    listCacheHas = __webpack_require__(/*! ./_listCacheHas */ "./node_modules/lodash/_listCacheHas.js"),
    listCacheSet = __webpack_require__(/*! ./_listCacheSet */ "./node_modules/lodash/_listCacheSet.js");

/**
 * Creates an list cache object.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function ListCache(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `ListCache`.
ListCache.prototype.clear = listCacheClear;
ListCache.prototype['delete'] = listCacheDelete;
ListCache.prototype.get = listCacheGet;
ListCache.prototype.has = listCacheHas;
ListCache.prototype.set = listCacheSet;

module.exports = ListCache;


/***/ }),

/***/ "./node_modules/lodash/_Map.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/_Map.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"),
    root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/* Built-in method references that are verified to be native. */
var Map = getNative(root, 'Map');

module.exports = Map;


/***/ }),

/***/ "./node_modules/lodash/_MapCache.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_MapCache.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var mapCacheClear = __webpack_require__(/*! ./_mapCacheClear */ "./node_modules/lodash/_mapCacheClear.js"),
    mapCacheDelete = __webpack_require__(/*! ./_mapCacheDelete */ "./node_modules/lodash/_mapCacheDelete.js"),
    mapCacheGet = __webpack_require__(/*! ./_mapCacheGet */ "./node_modules/lodash/_mapCacheGet.js"),
    mapCacheHas = __webpack_require__(/*! ./_mapCacheHas */ "./node_modules/lodash/_mapCacheHas.js"),
    mapCacheSet = __webpack_require__(/*! ./_mapCacheSet */ "./node_modules/lodash/_mapCacheSet.js");

/**
 * Creates a map cache object to store key-value pairs.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function MapCache(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `MapCache`.
MapCache.prototype.clear = mapCacheClear;
MapCache.prototype['delete'] = mapCacheDelete;
MapCache.prototype.get = mapCacheGet;
MapCache.prototype.has = mapCacheHas;
MapCache.prototype.set = mapCacheSet;

module.exports = MapCache;


/***/ }),

/***/ "./node_modules/lodash/_Promise.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_Promise.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"),
    root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/* Built-in method references that are verified to be native. */
var Promise = getNative(root, 'Promise');

module.exports = Promise;


/***/ }),

/***/ "./node_modules/lodash/_Set.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/_Set.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"),
    root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/* Built-in method references that are verified to be native. */
var Set = getNative(root, 'Set');

module.exports = Set;


/***/ }),

/***/ "./node_modules/lodash/_SetCache.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_SetCache.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var MapCache = __webpack_require__(/*! ./_MapCache */ "./node_modules/lodash/_MapCache.js"),
    setCacheAdd = __webpack_require__(/*! ./_setCacheAdd */ "./node_modules/lodash/_setCacheAdd.js"),
    setCacheHas = __webpack_require__(/*! ./_setCacheHas */ "./node_modules/lodash/_setCacheHas.js");

/**
 *
 * Creates an array cache object to store unique values.
 *
 * @private
 * @constructor
 * @param {Array} [values] The values to cache.
 */
function SetCache(values) {
  var index = -1,
      length = values == null ? 0 : values.length;

  this.__data__ = new MapCache;
  while (++index < length) {
    this.add(values[index]);
  }
}

// Add methods to `SetCache`.
SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
SetCache.prototype.has = setCacheHas;

module.exports = SetCache;


/***/ }),

/***/ "./node_modules/lodash/_Stack.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/_Stack.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"),
    stackClear = __webpack_require__(/*! ./_stackClear */ "./node_modules/lodash/_stackClear.js"),
    stackDelete = __webpack_require__(/*! ./_stackDelete */ "./node_modules/lodash/_stackDelete.js"),
    stackGet = __webpack_require__(/*! ./_stackGet */ "./node_modules/lodash/_stackGet.js"),
    stackHas = __webpack_require__(/*! ./_stackHas */ "./node_modules/lodash/_stackHas.js"),
    stackSet = __webpack_require__(/*! ./_stackSet */ "./node_modules/lodash/_stackSet.js");

/**
 * Creates a stack cache object to store key-value pairs.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function Stack(entries) {
  var data = this.__data__ = new ListCache(entries);
  this.size = data.size;
}

// Add methods to `Stack`.
Stack.prototype.clear = stackClear;
Stack.prototype['delete'] = stackDelete;
Stack.prototype.get = stackGet;
Stack.prototype.has = stackHas;
Stack.prototype.set = stackSet;

module.exports = Stack;


/***/ }),

/***/ "./node_modules/lodash/_Symbol.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/_Symbol.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/** Built-in value references. */
var Symbol = root.Symbol;

module.exports = Symbol;


/***/ }),

/***/ "./node_modules/lodash/_Uint8Array.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_Uint8Array.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/** Built-in value references. */
var Uint8Array = root.Uint8Array;

module.exports = Uint8Array;


/***/ }),

/***/ "./node_modules/lodash/_WeakMap.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_WeakMap.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js"),
    root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/* Built-in method references that are verified to be native. */
var WeakMap = getNative(root, 'WeakMap');

module.exports = WeakMap;


/***/ }),

/***/ "./node_modules/lodash/_apply.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/_apply.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A faster alternative to `Function#apply`, this function invokes `func`
 * with the `this` binding of `thisArg` and the arguments of `args`.
 *
 * @private
 * @param {Function} func The function to invoke.
 * @param {*} thisArg The `this` binding of `func`.
 * @param {Array} args The arguments to invoke `func` with.
 * @returns {*} Returns the result of `func`.
 */
function apply(func, thisArg, args) {
  switch (args.length) {
    case 0: return func.call(thisArg);
    case 1: return func.call(thisArg, args[0]);
    case 2: return func.call(thisArg, args[0], args[1]);
    case 3: return func.call(thisArg, args[0], args[1], args[2]);
  }
  return func.apply(thisArg, args);
}

module.exports = apply;


/***/ }),

/***/ "./node_modules/lodash/_arrayEach.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_arrayEach.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `_.forEach` for arrays without support for
 * iteratee shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns `array`.
 */
function arrayEach(array, iteratee) {
  var index = -1,
      length = array == null ? 0 : array.length;

  while (++index < length) {
    if (iteratee(array[index], index, array) === false) {
      break;
    }
  }
  return array;
}

module.exports = arrayEach;


/***/ }),

/***/ "./node_modules/lodash/_arrayFilter.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_arrayFilter.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `_.filter` for arrays without support for
 * iteratee shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {Array} Returns the new filtered array.
 */
function arrayFilter(array, predicate) {
  var index = -1,
      length = array == null ? 0 : array.length,
      resIndex = 0,
      result = [];

  while (++index < length) {
    var value = array[index];
    if (predicate(value, index, array)) {
      result[resIndex++] = value;
    }
  }
  return result;
}

module.exports = arrayFilter;


/***/ }),

/***/ "./node_modules/lodash/_arrayIncludes.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_arrayIncludes.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIndexOf = __webpack_require__(/*! ./_baseIndexOf */ "./node_modules/lodash/_baseIndexOf.js");

/**
 * A specialized version of `_.includes` for arrays without support for
 * specifying an index to search from.
 *
 * @private
 * @param {Array} [array] The array to inspect.
 * @param {*} target The value to search for.
 * @returns {boolean} Returns `true` if `target` is found, else `false`.
 */
function arrayIncludes(array, value) {
  var length = array == null ? 0 : array.length;
  return !!length && baseIndexOf(array, value, 0) > -1;
}

module.exports = arrayIncludes;


/***/ }),

/***/ "./node_modules/lodash/_arrayIncludesWith.js":
/*!***************************************************!*\
  !*** ./node_modules/lodash/_arrayIncludesWith.js ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This function is like `arrayIncludes` except that it accepts a comparator.
 *
 * @private
 * @param {Array} [array] The array to inspect.
 * @param {*} target The value to search for.
 * @param {Function} comparator The comparator invoked per element.
 * @returns {boolean} Returns `true` if `target` is found, else `false`.
 */
function arrayIncludesWith(array, value, comparator) {
  var index = -1,
      length = array == null ? 0 : array.length;

  while (++index < length) {
    if (comparator(value, array[index])) {
      return true;
    }
  }
  return false;
}

module.exports = arrayIncludesWith;


/***/ }),

/***/ "./node_modules/lodash/_arrayLikeKeys.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_arrayLikeKeys.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseTimes = __webpack_require__(/*! ./_baseTimes */ "./node_modules/lodash/_baseTimes.js"),
    isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"),
    isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"),
    isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Creates an array of the enumerable property names of the array-like `value`.
 *
 * @private
 * @param {*} value The value to query.
 * @param {boolean} inherited Specify returning inherited property names.
 * @returns {Array} Returns the array of property names.
 */
function arrayLikeKeys(value, inherited) {
  var isArr = isArray(value),
      isArg = !isArr && isArguments(value),
      isBuff = !isArr && !isArg && isBuffer(value),
      isType = !isArr && !isArg && !isBuff && isTypedArray(value),
      skipIndexes = isArr || isArg || isBuff || isType,
      result = skipIndexes ? baseTimes(value.length, String) : [],
      length = result.length;

  for (var key in value) {
    if ((inherited || hasOwnProperty.call(value, key)) &&
        !(skipIndexes && (
           // Safari 9 has enumerable `arguments.length` in strict mode.
           key == 'length' ||
           // Node.js 0.10 has enumerable non-index properties on buffers.
           (isBuff && (key == 'offset' || key == 'parent')) ||
           // PhantomJS 2 has enumerable non-index properties on typed arrays.
           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
           // Skip index properties.
           isIndex(key, length)
        ))) {
      result.push(key);
    }
  }
  return result;
}

module.exports = arrayLikeKeys;


/***/ }),

/***/ "./node_modules/lodash/_arrayMap.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_arrayMap.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `_.map` for arrays without support for iteratee
 * shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns the new mapped array.
 */
function arrayMap(array, iteratee) {
  var index = -1,
      length = array == null ? 0 : array.length,
      result = Array(length);

  while (++index < length) {
    result[index] = iteratee(array[index], index, array);
  }
  return result;
}

module.exports = arrayMap;


/***/ }),

/***/ "./node_modules/lodash/_arrayPush.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_arrayPush.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Appends the elements of `values` to `array`.
 *
 * @private
 * @param {Array} array The array to modify.
 * @param {Array} values The values to append.
 * @returns {Array} Returns `array`.
 */
function arrayPush(array, values) {
  var index = -1,
      length = values.length,
      offset = array.length;

  while (++index < length) {
    array[offset + index] = values[index];
  }
  return array;
}

module.exports = arrayPush;


/***/ }),

/***/ "./node_modules/lodash/_arraySome.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_arraySome.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `_.some` for arrays without support for iteratee
 * shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {boolean} Returns `true` if any element passes the predicate check,
 *  else `false`.
 */
function arraySome(array, predicate) {
  var index = -1,
      length = array == null ? 0 : array.length;

  while (++index < length) {
    if (predicate(array[index], index, array)) {
      return true;
    }
  }
  return false;
}

module.exports = arraySome;


/***/ }),

/***/ "./node_modules/lodash/_assignMergeValue.js":
/*!**************************************************!*\
  !*** ./node_modules/lodash/_assignMergeValue.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js"),
    eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js");

/**
 * This function is like `assignValue` except that it doesn't assign
 * `undefined` values.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function assignMergeValue(object, key, value) {
  if ((value !== undefined && !eq(object[key], value)) ||
      (value === undefined && !(key in object))) {
    baseAssignValue(object, key, value);
  }
}

module.exports = assignMergeValue;


/***/ }),

/***/ "./node_modules/lodash/_assignValue.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_assignValue.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js"),
    eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Assigns `value` to `key` of `object` if the existing value is not equivalent
 * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
 * for equality comparisons.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function assignValue(object, key, value) {
  var objValue = object[key];
  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
      (value === undefined && !(key in object))) {
    baseAssignValue(object, key, value);
  }
}

module.exports = assignValue;


/***/ }),

/***/ "./node_modules/lodash/_assocIndexOf.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_assocIndexOf.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js");

/**
 * Gets the index at which the `key` is found in `array` of key-value pairs.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} key The key to search for.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function assocIndexOf(array, key) {
  var length = array.length;
  while (length--) {
    if (eq(array[length][0], key)) {
      return length;
    }
  }
  return -1;
}

module.exports = assocIndexOf;


/***/ }),

/***/ "./node_modules/lodash/_baseAssign.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseAssign.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js");

/**
 * The base implementation of `_.assign` without support for multiple sources
 * or `customizer` functions.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @returns {Object} Returns `object`.
 */
function baseAssign(object, source) {
  return object && copyObject(source, keys(source), object);
}

module.exports = baseAssign;


/***/ }),

/***/ "./node_modules/lodash/_baseAssignIn.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseAssignIn.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js");

/**
 * The base implementation of `_.assignIn` without support for multiple sources
 * or `customizer` functions.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @returns {Object} Returns `object`.
 */
function baseAssignIn(object, source) {
  return object && copyObject(source, keysIn(source), object);
}

module.exports = baseAssignIn;


/***/ }),

/***/ "./node_modules/lodash/_baseAssignValue.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseAssignValue.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var defineProperty = __webpack_require__(/*! ./_defineProperty */ "./node_modules/lodash/_defineProperty.js");

/**
 * The base implementation of `assignValue` and `assignMergeValue` without
 * value checks.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function baseAssignValue(object, key, value) {
  if (key == '__proto__' && defineProperty) {
    defineProperty(object, key, {
      'configurable': true,
      'enumerable': true,
      'value': value,
      'writable': true
    });
  } else {
    object[key] = value;
  }
}

module.exports = baseAssignValue;


/***/ }),

/***/ "./node_modules/lodash/_baseClone.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseClone.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"),
    arrayEach = __webpack_require__(/*! ./_arrayEach */ "./node_modules/lodash/_arrayEach.js"),
    assignValue = __webpack_require__(/*! ./_assignValue */ "./node_modules/lodash/_assignValue.js"),
    baseAssign = __webpack_require__(/*! ./_baseAssign */ "./node_modules/lodash/_baseAssign.js"),
    baseAssignIn = __webpack_require__(/*! ./_baseAssignIn */ "./node_modules/lodash/_baseAssignIn.js"),
    cloneBuffer = __webpack_require__(/*! ./_cloneBuffer */ "./node_modules/lodash/_cloneBuffer.js"),
    copyArray = __webpack_require__(/*! ./_copyArray */ "./node_modules/lodash/_copyArray.js"),
    copySymbols = __webpack_require__(/*! ./_copySymbols */ "./node_modules/lodash/_copySymbols.js"),
    copySymbolsIn = __webpack_require__(/*! ./_copySymbolsIn */ "./node_modules/lodash/_copySymbolsIn.js"),
    getAllKeys = __webpack_require__(/*! ./_getAllKeys */ "./node_modules/lodash/_getAllKeys.js"),
    getAllKeysIn = __webpack_require__(/*! ./_getAllKeysIn */ "./node_modules/lodash/_getAllKeysIn.js"),
    getTag = __webpack_require__(/*! ./_getTag */ "./node_modules/lodash/_getTag.js"),
    initCloneArray = __webpack_require__(/*! ./_initCloneArray */ "./node_modules/lodash/_initCloneArray.js"),
    initCloneByTag = __webpack_require__(/*! ./_initCloneByTag */ "./node_modules/lodash/_initCloneByTag.js"),
    initCloneObject = __webpack_require__(/*! ./_initCloneObject */ "./node_modules/lodash/_initCloneObject.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"),
    isMap = __webpack_require__(/*! ./isMap */ "./node_modules/lodash/isMap.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    isSet = __webpack_require__(/*! ./isSet */ "./node_modules/lodash/isSet.js"),
    keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js"),
    keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js");

/** Used to compose bitmasks for cloning. */
var CLONE_DEEP_FLAG = 1,
    CLONE_FLAT_FLAG = 2,
    CLONE_SYMBOLS_FLAG = 4;

/** `Object#toString` result references. */
var argsTag = '[object Arguments]',
    arrayTag = '[object Array]',
    boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    errorTag = '[object Error]',
    funcTag = '[object Function]',
    genTag = '[object GeneratorFunction]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    objectTag = '[object Object]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    symbolTag = '[object Symbol]',
    weakMapTag = '[object WeakMap]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]',
    float32Tag = '[object Float32Array]',
    float64Tag = '[object Float64Array]',
    int8Tag = '[object Int8Array]',
    int16Tag = '[object Int16Array]',
    int32Tag = '[object Int32Array]',
    uint8Tag = '[object Uint8Array]',
    uint8ClampedTag = '[object Uint8ClampedArray]',
    uint16Tag = '[object Uint16Array]',
    uint32Tag = '[object Uint32Array]';

/** Used to identify `toStringTag` values supported by `_.clone`. */
var cloneableTags = {};
cloneableTags[argsTag] = cloneableTags[arrayTag] =
cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =
cloneableTags[boolTag] = cloneableTags[dateTag] =
cloneableTags[float32Tag] = cloneableTags[float64Tag] =
cloneableTags[int8Tag] = cloneableTags[int16Tag] =
cloneableTags[int32Tag] = cloneableTags[mapTag] =
cloneableTags[numberTag] = cloneableTags[objectTag] =
cloneableTags[regexpTag] = cloneableTags[setTag] =
cloneableTags[stringTag] = cloneableTags[symbolTag] =
cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
cloneableTags[errorTag] = cloneableTags[funcTag] =
cloneableTags[weakMapTag] = false;

/**
 * The base implementation of `_.clone` and `_.cloneDeep` which tracks
 * traversed objects.
 *
 * @private
 * @param {*} value The value to clone.
 * @param {boolean} bitmask The bitmask flags.
 *  1 - Deep clone
 *  2 - Flatten inherited properties
 *  4 - Clone symbols
 * @param {Function} [customizer] The function to customize cloning.
 * @param {string} [key] The key of `value`.
 * @param {Object} [object] The parent object of `value`.
 * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
 * @returns {*} Returns the cloned value.
 */
function baseClone(value, bitmask, customizer, key, object, stack) {
  var result,
      isDeep = bitmask & CLONE_DEEP_FLAG,
      isFlat = bitmask & CLONE_FLAT_FLAG,
      isFull = bitmask & CLONE_SYMBOLS_FLAG;

  if (customizer) {
    result = object ? customizer(value, key, object, stack) : customizer(value);
  }
  if (result !== undefined) {
    return result;
  }
  if (!isObject(value)) {
    return value;
  }
  var isArr = isArray(value);
  if (isArr) {
    result = initCloneArray(value);
    if (!isDeep) {
      return copyArray(value, result);
    }
  } else {
    var tag = getTag(value),
        isFunc = tag == funcTag || tag == genTag;

    if (isBuffer(value)) {
      return cloneBuffer(value, isDeep);
    }
    if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
      result = (isFlat || isFunc) ? {} : initCloneObject(value);
      if (!isDeep) {
        return isFlat
          ? copySymbolsIn(value, baseAssignIn(result, value))
          : copySymbols(value, baseAssign(result, value));
      }
    } else {
      if (!cloneableTags[tag]) {
        return object ? value : {};
      }
      result = initCloneByTag(value, tag, isDeep);
    }
  }
  // Check for circular references and return its corresponding clone.
  stack || (stack = new Stack);
  var stacked = stack.get(value);
  if (stacked) {
    return stacked;
  }
  stack.set(value, result);

  if (isSet(value)) {
    value.forEach(function(subValue) {
      result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
    });
  } else if (isMap(value)) {
    value.forEach(function(subValue, key) {
      result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
    });
  }

  var keysFunc = isFull
    ? (isFlat ? getAllKeysIn : getAllKeys)
    : (isFlat ? keysIn : keys);

  var props = isArr ? undefined : keysFunc(value);
  arrayEach(props || value, function(subValue, key) {
    if (props) {
      key = subValue;
      subValue = value[key];
    }
    // Recursively populate clone (susceptible to call stack limits).
    assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
  });
  return result;
}

module.exports = baseClone;


/***/ }),

/***/ "./node_modules/lodash/_baseCreate.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseCreate.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js");

/** Built-in value references. */
var objectCreate = Object.create;

/**
 * The base implementation of `_.create` without support for assigning
 * properties to the created object.
 *
 * @private
 * @param {Object} proto The object to inherit from.
 * @returns {Object} Returns the new object.
 */
var baseCreate = (function() {
  function object() {}
  return function(proto) {
    if (!isObject(proto)) {
      return {};
    }
    if (objectCreate) {
      return objectCreate(proto);
    }
    object.prototype = proto;
    var result = new object;
    object.prototype = undefined;
    return result;
  };
}());

module.exports = baseCreate;


/***/ }),

/***/ "./node_modules/lodash/_baseFindIndex.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_baseFindIndex.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.findIndex` and `_.findLastIndex` without
 * support for iteratee shorthands.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {Function} predicate The function invoked per iteration.
 * @param {number} fromIndex The index to search from.
 * @param {boolean} [fromRight] Specify iterating from right to left.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function baseFindIndex(array, predicate, fromIndex, fromRight) {
  var length = array.length,
      index = fromIndex + (fromRight ? 1 : -1);

  while ((fromRight ? index-- : ++index < length)) {
    if (predicate(array[index], index, array)) {
      return index;
    }
  }
  return -1;
}

module.exports = baseFindIndex;


/***/ }),

/***/ "./node_modules/lodash/_baseFlatten.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseFlatten.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayPush = __webpack_require__(/*! ./_arrayPush */ "./node_modules/lodash/_arrayPush.js"),
    isFlattenable = __webpack_require__(/*! ./_isFlattenable */ "./node_modules/lodash/_isFlattenable.js");

/**
 * The base implementation of `_.flatten` with support for restricting flattening.
 *
 * @private
 * @param {Array} array The array to flatten.
 * @param {number} depth The maximum recursion depth.
 * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.
 * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.
 * @param {Array} [result=[]] The initial result value.
 * @returns {Array} Returns the new flattened array.
 */
function baseFlatten(array, depth, predicate, isStrict, result) {
  var index = -1,
      length = array.length;

  predicate || (predicate = isFlattenable);
  result || (result = []);

  while (++index < length) {
    var value = array[index];
    if (depth > 0 && predicate(value)) {
      if (depth > 1) {
        // Recursively flatten arrays (susceptible to call stack limits).
        baseFlatten(value, depth - 1, predicate, isStrict, result);
      } else {
        arrayPush(result, value);
      }
    } else if (!isStrict) {
      result[result.length] = value;
    }
  }
  return result;
}

module.exports = baseFlatten;


/***/ }),

/***/ "./node_modules/lodash/_baseFor.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseFor.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var createBaseFor = __webpack_require__(/*! ./_createBaseFor */ "./node_modules/lodash/_createBaseFor.js");

/**
 * The base implementation of `baseForOwn` which iterates over `object`
 * properties returned by `keysFunc` and invokes `iteratee` for each property.
 * Iteratee functions may exit iteration early by explicitly returning `false`.
 *
 * @private
 * @param {Object} object The object to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @param {Function} keysFunc The function to get the keys of `object`.
 * @returns {Object} Returns `object`.
 */
var baseFor = createBaseFor();

module.exports = baseFor;


/***/ }),

/***/ "./node_modules/lodash/_baseGet.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseGet.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/**
 * The base implementation of `_.get` without support for default values.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Array|string} path The path of the property to get.
 * @returns {*} Returns the resolved value.
 */
function baseGet(object, path) {
  path = castPath(path, object);

  var index = 0,
      length = path.length;

  while (object != null && index < length) {
    object = object[toKey(path[index++])];
  }
  return (index && index == length) ? object : undefined;
}

module.exports = baseGet;


/***/ }),

/***/ "./node_modules/lodash/_baseGetAllKeys.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_baseGetAllKeys.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayPush = __webpack_require__(/*! ./_arrayPush */ "./node_modules/lodash/_arrayPush.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js");

/**
 * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
 * `keysFunc` and `symbolsFunc` to get the enumerable property names and
 * symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Function} keysFunc The function to get the keys of `object`.
 * @param {Function} symbolsFunc The function to get the symbols of `object`.
 * @returns {Array} Returns the array of property names and symbols.
 */
function baseGetAllKeys(object, keysFunc, symbolsFunc) {
  var result = keysFunc(object);
  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
}

module.exports = baseGetAllKeys;


/***/ }),

/***/ "./node_modules/lodash/_baseGetTag.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseGetTag.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"),
    getRawTag = __webpack_require__(/*! ./_getRawTag */ "./node_modules/lodash/_getRawTag.js"),
    objectToString = __webpack_require__(/*! ./_objectToString */ "./node_modules/lodash/_objectToString.js");

/** `Object#toString` result references. */
var nullTag = '[object Null]',
    undefinedTag = '[object Undefined]';

/** Built-in value references. */
var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

/**
 * The base implementation of `getTag` without fallbacks for buggy environments.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the `toStringTag`.
 */
function baseGetTag(value) {
  if (value == null) {
    return value === undefined ? undefinedTag : nullTag;
  }
  return (symToStringTag && symToStringTag in Object(value))
    ? getRawTag(value)
    : objectToString(value);
}

module.exports = baseGetTag;


/***/ }),

/***/ "./node_modules/lodash/_baseHas.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseHas.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * The base implementation of `_.has` without support for deep paths.
 *
 * @private
 * @param {Object} [object] The object to query.
 * @param {Array|string} key The key to check.
 * @returns {boolean} Returns `true` if `key` exists, else `false`.
 */
function baseHas(object, key) {
  return object != null && hasOwnProperty.call(object, key);
}

module.exports = baseHas;


/***/ }),

/***/ "./node_modules/lodash/_baseHasIn.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseHasIn.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.hasIn` without support for deep paths.
 *
 * @private
 * @param {Object} [object] The object to query.
 * @param {Array|string} key The key to check.
 * @returns {boolean} Returns `true` if `key` exists, else `false`.
 */
function baseHasIn(object, key) {
  return object != null && key in Object(object);
}

module.exports = baseHasIn;


/***/ }),

/***/ "./node_modules/lodash/_baseIndexOf.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseIndexOf.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseFindIndex = __webpack_require__(/*! ./_baseFindIndex */ "./node_modules/lodash/_baseFindIndex.js"),
    baseIsNaN = __webpack_require__(/*! ./_baseIsNaN */ "./node_modules/lodash/_baseIsNaN.js"),
    strictIndexOf = __webpack_require__(/*! ./_strictIndexOf */ "./node_modules/lodash/_strictIndexOf.js");

/**
 * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} value The value to search for.
 * @param {number} fromIndex The index to search from.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function baseIndexOf(array, value, fromIndex) {
  return value === value
    ? strictIndexOf(array, value, fromIndex)
    : baseFindIndex(array, baseIsNaN, fromIndex);
}

module.exports = baseIndexOf;


/***/ }),

/***/ "./node_modules/lodash/_baseIsArguments.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseIsArguments.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var argsTag = '[object Arguments]';

/**
 * The base implementation of `_.isArguments`.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
 */
function baseIsArguments(value) {
  return isObjectLike(value) && baseGetTag(value) == argsTag;
}

module.exports = baseIsArguments;


/***/ }),

/***/ "./node_modules/lodash/_baseIsEqual.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseIsEqual.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsEqualDeep = __webpack_require__(/*! ./_baseIsEqualDeep */ "./node_modules/lodash/_baseIsEqualDeep.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/**
 * The base implementation of `_.isEqual` which supports partial comparisons
 * and tracks traversed objects.
 *
 * @private
 * @param {*} value The value to compare.
 * @param {*} other The other value to compare.
 * @param {boolean} bitmask The bitmask flags.
 *  1 - Unordered comparison
 *  2 - Partial comparison
 * @param {Function} [customizer] The function to customize comparisons.
 * @param {Object} [stack] Tracks traversed `value` and `other` objects.
 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
 */
function baseIsEqual(value, other, bitmask, customizer, stack) {
  if (value === other) {
    return true;
  }
  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
    return value !== value && other !== other;
  }
  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
}

module.exports = baseIsEqual;


/***/ }),

/***/ "./node_modules/lodash/_baseIsEqualDeep.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseIsEqualDeep.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"),
    equalArrays = __webpack_require__(/*! ./_equalArrays */ "./node_modules/lodash/_equalArrays.js"),
    equalByTag = __webpack_require__(/*! ./_equalByTag */ "./node_modules/lodash/_equalByTag.js"),
    equalObjects = __webpack_require__(/*! ./_equalObjects */ "./node_modules/lodash/_equalObjects.js"),
    getTag = __webpack_require__(/*! ./_getTag */ "./node_modules/lodash/_getTag.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"),
    isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1;

/** `Object#toString` result references. */
var argsTag = '[object Arguments]',
    arrayTag = '[object Array]',
    objectTag = '[object Object]';

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * A specialized version of `baseIsEqual` for arrays and objects which performs
 * deep comparisons and tracks traversed objects enabling objects with circular
 * references to be compared.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} [stack] Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
  var objIsArr = isArray(object),
      othIsArr = isArray(other),
      objTag = objIsArr ? arrayTag : getTag(object),
      othTag = othIsArr ? arrayTag : getTag(other);

  objTag = objTag == argsTag ? objectTag : objTag;
  othTag = othTag == argsTag ? objectTag : othTag;

  var objIsObj = objTag == objectTag,
      othIsObj = othTag == objectTag,
      isSameTag = objTag == othTag;

  if (isSameTag && isBuffer(object)) {
    if (!isBuffer(other)) {
      return false;
    }
    objIsArr = true;
    objIsObj = false;
  }
  if (isSameTag && !objIsObj) {
    stack || (stack = new Stack);
    return (objIsArr || isTypedArray(object))
      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
  }
  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');

    if (objIsWrapped || othIsWrapped) {
      var objUnwrapped = objIsWrapped ? object.value() : object,
          othUnwrapped = othIsWrapped ? other.value() : other;

      stack || (stack = new Stack);
      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
    }
  }
  if (!isSameTag) {
    return false;
  }
  stack || (stack = new Stack);
  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
}

module.exports = baseIsEqualDeep;


/***/ }),

/***/ "./node_modules/lodash/_baseIsMap.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseIsMap.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getTag = __webpack_require__(/*! ./_getTag */ "./node_modules/lodash/_getTag.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var mapTag = '[object Map]';

/**
 * The base implementation of `_.isMap` without Node.js optimizations.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a map, else `false`.
 */
function baseIsMap(value) {
  return isObjectLike(value) && getTag(value) == mapTag;
}

module.exports = baseIsMap;


/***/ }),

/***/ "./node_modules/lodash/_baseIsMatch.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseIsMatch.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"),
    baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ "./node_modules/lodash/_baseIsEqual.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * The base implementation of `_.isMatch` without support for iteratee shorthands.
 *
 * @private
 * @param {Object} object The object to inspect.
 * @param {Object} source The object of property values to match.
 * @param {Array} matchData The property names, values, and compare flags to match.
 * @param {Function} [customizer] The function to customize comparisons.
 * @returns {boolean} Returns `true` if `object` is a match, else `false`.
 */
function baseIsMatch(object, source, matchData, customizer) {
  var index = matchData.length,
      length = index,
      noCustomizer = !customizer;

  if (object == null) {
    return !length;
  }
  object = Object(object);
  while (index--) {
    var data = matchData[index];
    if ((noCustomizer && data[2])
          ? data[1] !== object[data[0]]
          : !(data[0] in object)
        ) {
      return false;
    }
  }
  while (++index < length) {
    data = matchData[index];
    var key = data[0],
        objValue = object[key],
        srcValue = data[1];

    if (noCustomizer && data[2]) {
      if (objValue === undefined && !(key in object)) {
        return false;
      }
    } else {
      var stack = new Stack;
      if (customizer) {
        var result = customizer(objValue, srcValue, key, object, source, stack);
      }
      if (!(result === undefined
            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
            : result
          )) {
        return false;
      }
    }
  }
  return true;
}

module.exports = baseIsMatch;


/***/ }),

/***/ "./node_modules/lodash/_baseIsNaN.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseIsNaN.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.isNaN` without support for number objects.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
 */
function baseIsNaN(value) {
  return value !== value;
}

module.exports = baseIsNaN;


/***/ }),

/***/ "./node_modules/lodash/_baseIsNative.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseIsNative.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"),
    isMasked = __webpack_require__(/*! ./_isMasked */ "./node_modules/lodash/_isMasked.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    toSource = __webpack_require__(/*! ./_toSource */ "./node_modules/lodash/_toSource.js");

/**
 * Used to match `RegExp`
 * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
 */
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;

/** Used to detect host constructors (Safari). */
var reIsHostCtor = /^\[object .+?Constructor\]$/;

/** Used for built-in method references. */
var funcProto = Function.prototype,
    objectProto = Object.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Used to detect if a method is native. */
var reIsNative = RegExp('^' +
  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
);

/**
 * The base implementation of `_.isNative` without bad shim checks.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a native function,
 *  else `false`.
 */
function baseIsNative(value) {
  if (!isObject(value) || isMasked(value)) {
    return false;
  }
  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
  return pattern.test(toSource(value));
}

module.exports = baseIsNative;


/***/ }),

/***/ "./node_modules/lodash/_baseIsSet.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseIsSet.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getTag = __webpack_require__(/*! ./_getTag */ "./node_modules/lodash/_getTag.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var setTag = '[object Set]';

/**
 * The base implementation of `_.isSet` without Node.js optimizations.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a set, else `false`.
 */
function baseIsSet(value) {
  return isObjectLike(value) && getTag(value) == setTag;
}

module.exports = baseIsSet;


/***/ }),

/***/ "./node_modules/lodash/_baseIsTypedArray.js":
/*!**************************************************!*\
  !*** ./node_modules/lodash/_baseIsTypedArray.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    isLength = __webpack_require__(/*! ./isLength */ "./node_modules/lodash/isLength.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var argsTag = '[object Arguments]',
    arrayTag = '[object Array]',
    boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    errorTag = '[object Error]',
    funcTag = '[object Function]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    objectTag = '[object Object]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    weakMapTag = '[object WeakMap]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]',
    float32Tag = '[object Float32Array]',
    float64Tag = '[object Float64Array]',
    int8Tag = '[object Int8Array]',
    int16Tag = '[object Int16Array]',
    int32Tag = '[object Int32Array]',
    uint8Tag = '[object Uint8Array]',
    uint8ClampedTag = '[object Uint8ClampedArray]',
    uint16Tag = '[object Uint16Array]',
    uint32Tag = '[object Uint32Array]';

/** Used to identify `toStringTag` values of typed arrays. */
var typedArrayTags = {};
typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
typedArrayTags[uint32Tag] = true;
typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
typedArrayTags[errorTag] = typedArrayTags[funcTag] =
typedArrayTags[mapTag] = typedArrayTags[numberTag] =
typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
typedArrayTags[setTag] = typedArrayTags[stringTag] =
typedArrayTags[weakMapTag] = false;

/**
 * The base implementation of `_.isTypedArray` without Node.js optimizations.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
 */
function baseIsTypedArray(value) {
  return isObjectLike(value) &&
    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
}

module.exports = baseIsTypedArray;


/***/ }),

/***/ "./node_modules/lodash/_baseIteratee.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseIteratee.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseMatches = __webpack_require__(/*! ./_baseMatches */ "./node_modules/lodash/_baseMatches.js"),
    baseMatchesProperty = __webpack_require__(/*! ./_baseMatchesProperty */ "./node_modules/lodash/_baseMatchesProperty.js"),
    identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    property = __webpack_require__(/*! ./property */ "./node_modules/lodash/property.js");

/**
 * The base implementation of `_.iteratee`.
 *
 * @private
 * @param {*} [value=_.identity] The value to convert to an iteratee.
 * @returns {Function} Returns the iteratee.
 */
function baseIteratee(value) {
  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
  if (typeof value == 'function') {
    return value;
  }
  if (value == null) {
    return identity;
  }
  if (typeof value == 'object') {
    return isArray(value)
      ? baseMatchesProperty(value[0], value[1])
      : baseMatches(value);
  }
  return property(value);
}

module.exports = baseIteratee;


/***/ }),

/***/ "./node_modules/lodash/_baseKeys.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_baseKeys.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"),
    nativeKeys = __webpack_require__(/*! ./_nativeKeys */ "./node_modules/lodash/_nativeKeys.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function baseKeys(object) {
  if (!isPrototype(object)) {
    return nativeKeys(object);
  }
  var result = [];
  for (var key in Object(object)) {
    if (hasOwnProperty.call(object, key) && key != 'constructor') {
      result.push(key);
    }
  }
  return result;
}

module.exports = baseKeys;


/***/ }),

/***/ "./node_modules/lodash/_baseKeysIn.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_baseKeysIn.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"),
    nativeKeysIn = __webpack_require__(/*! ./_nativeKeysIn */ "./node_modules/lodash/_nativeKeysIn.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function baseKeysIn(object) {
  if (!isObject(object)) {
    return nativeKeysIn(object);
  }
  var isProto = isPrototype(object),
      result = [];

  for (var key in object) {
    if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
      result.push(key);
    }
  }
  return result;
}

module.exports = baseKeysIn;


/***/ }),

/***/ "./node_modules/lodash/_baseMatches.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_baseMatches.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsMatch = __webpack_require__(/*! ./_baseIsMatch */ "./node_modules/lodash/_baseIsMatch.js"),
    getMatchData = __webpack_require__(/*! ./_getMatchData */ "./node_modules/lodash/_getMatchData.js"),
    matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ "./node_modules/lodash/_matchesStrictComparable.js");

/**
 * The base implementation of `_.matches` which doesn't clone `source`.
 *
 * @private
 * @param {Object} source The object of property values to match.
 * @returns {Function} Returns the new spec function.
 */
function baseMatches(source) {
  var matchData = getMatchData(source);
  if (matchData.length == 1 && matchData[0][2]) {
    return matchesStrictComparable(matchData[0][0], matchData[0][1]);
  }
  return function(object) {
    return object === source || baseIsMatch(object, source, matchData);
  };
}

module.exports = baseMatches;


/***/ }),

/***/ "./node_modules/lodash/_baseMatchesProperty.js":
/*!*****************************************************!*\
  !*** ./node_modules/lodash/_baseMatchesProperty.js ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsEqual = __webpack_require__(/*! ./_baseIsEqual */ "./node_modules/lodash/_baseIsEqual.js"),
    get = __webpack_require__(/*! ./get */ "./node_modules/lodash/get.js"),
    hasIn = __webpack_require__(/*! ./hasIn */ "./node_modules/lodash/hasIn.js"),
    isKey = __webpack_require__(/*! ./_isKey */ "./node_modules/lodash/_isKey.js"),
    isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ "./node_modules/lodash/_isStrictComparable.js"),
    matchesStrictComparable = __webpack_require__(/*! ./_matchesStrictComparable */ "./node_modules/lodash/_matchesStrictComparable.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
 *
 * @private
 * @param {string} path The path of the property to get.
 * @param {*} srcValue The value to match.
 * @returns {Function} Returns the new spec function.
 */
function baseMatchesProperty(path, srcValue) {
  if (isKey(path) && isStrictComparable(srcValue)) {
    return matchesStrictComparable(toKey(path), srcValue);
  }
  return function(object) {
    var objValue = get(object, path);
    return (objValue === undefined && objValue === srcValue)
      ? hasIn(object, path)
      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
  };
}

module.exports = baseMatchesProperty;


/***/ }),

/***/ "./node_modules/lodash/_baseMerge.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseMerge.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__(/*! ./_Stack */ "./node_modules/lodash/_Stack.js"),
    assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "./node_modules/lodash/_assignMergeValue.js"),
    baseFor = __webpack_require__(/*! ./_baseFor */ "./node_modules/lodash/_baseFor.js"),
    baseMergeDeep = __webpack_require__(/*! ./_baseMergeDeep */ "./node_modules/lodash/_baseMergeDeep.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js"),
    safeGet = __webpack_require__(/*! ./_safeGet */ "./node_modules/lodash/_safeGet.js");

/**
 * The base implementation of `_.merge` without support for multiple sources.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @param {number} srcIndex The index of `source`.
 * @param {Function} [customizer] The function to customize merged values.
 * @param {Object} [stack] Tracks traversed source values and their merged
 *  counterparts.
 */
function baseMerge(object, source, srcIndex, customizer, stack) {
  if (object === source) {
    return;
  }
  baseFor(source, function(srcValue, key) {
    stack || (stack = new Stack);
    if (isObject(srcValue)) {
      baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
    }
    else {
      var newValue = customizer
        ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
        : undefined;

      if (newValue === undefined) {
        newValue = srcValue;
      }
      assignMergeValue(object, key, newValue);
    }
  }, keysIn);
}

module.exports = baseMerge;


/***/ }),

/***/ "./node_modules/lodash/_baseMergeDeep.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_baseMergeDeep.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assignMergeValue = __webpack_require__(/*! ./_assignMergeValue */ "./node_modules/lodash/_assignMergeValue.js"),
    cloneBuffer = __webpack_require__(/*! ./_cloneBuffer */ "./node_modules/lodash/_cloneBuffer.js"),
    cloneTypedArray = __webpack_require__(/*! ./_cloneTypedArray */ "./node_modules/lodash/_cloneTypedArray.js"),
    copyArray = __webpack_require__(/*! ./_copyArray */ "./node_modules/lodash/_copyArray.js"),
    initCloneObject = __webpack_require__(/*! ./_initCloneObject */ "./node_modules/lodash/_initCloneObject.js"),
    isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isArrayLikeObject = __webpack_require__(/*! ./isArrayLikeObject */ "./node_modules/lodash/isArrayLikeObject.js"),
    isBuffer = __webpack_require__(/*! ./isBuffer */ "./node_modules/lodash/isBuffer.js"),
    isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    isPlainObject = __webpack_require__(/*! ./isPlainObject */ "./node_modules/lodash/isPlainObject.js"),
    isTypedArray = __webpack_require__(/*! ./isTypedArray */ "./node_modules/lodash/isTypedArray.js"),
    safeGet = __webpack_require__(/*! ./_safeGet */ "./node_modules/lodash/_safeGet.js"),
    toPlainObject = __webpack_require__(/*! ./toPlainObject */ "./node_modules/lodash/toPlainObject.js");

/**
 * A specialized version of `baseMerge` for arrays and objects which performs
 * deep merges and tracks traversed objects enabling objects with circular
 * references to be merged.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @param {string} key The key of the value to merge.
 * @param {number} srcIndex The index of `source`.
 * @param {Function} mergeFunc The function to merge values.
 * @param {Function} [customizer] The function to customize assigned values.
 * @param {Object} [stack] Tracks traversed source values and their merged
 *  counterparts.
 */
function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
  var objValue = safeGet(object, key),
      srcValue = safeGet(source, key),
      stacked = stack.get(srcValue);

  if (stacked) {
    assignMergeValue(object, key, stacked);
    return;
  }
  var newValue = customizer
    ? customizer(objValue, srcValue, (key + ''), object, source, stack)
    : undefined;

  var isCommon = newValue === undefined;

  if (isCommon) {
    var isArr = isArray(srcValue),
        isBuff = !isArr && isBuffer(srcValue),
        isTyped = !isArr && !isBuff && isTypedArray(srcValue);

    newValue = srcValue;
    if (isArr || isBuff || isTyped) {
      if (isArray(objValue)) {
        newValue = objValue;
      }
      else if (isArrayLikeObject(objValue)) {
        newValue = copyArray(objValue);
      }
      else if (isBuff) {
        isCommon = false;
        newValue = cloneBuffer(srcValue, true);
      }
      else if (isTyped) {
        isCommon = false;
        newValue = cloneTypedArray(srcValue, true);
      }
      else {
        newValue = [];
      }
    }
    else if (isPlainObject(srcValue) || isArguments(srcValue)) {
      newValue = objValue;
      if (isArguments(objValue)) {
        newValue = toPlainObject(objValue);
      }
      else if (!isObject(objValue) || isFunction(objValue)) {
        newValue = initCloneObject(srcValue);
      }
    }
    else {
      isCommon = false;
    }
  }
  if (isCommon) {
    // Recursively merge objects and arrays (susceptible to call stack limits).
    stack.set(srcValue, newValue);
    mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
    stack['delete'](srcValue);
  }
  assignMergeValue(object, key, newValue);
}

module.exports = baseMergeDeep;


/***/ }),

/***/ "./node_modules/lodash/_basePickBy.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_basePickBy.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__(/*! ./_baseGet */ "./node_modules/lodash/_baseGet.js"),
    baseSet = __webpack_require__(/*! ./_baseSet */ "./node_modules/lodash/_baseSet.js"),
    castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js");

/**
 * The base implementation of  `_.pickBy` without support for iteratee shorthands.
 *
 * @private
 * @param {Object} object The source object.
 * @param {string[]} paths The property paths to pick.
 * @param {Function} predicate The function invoked per property.
 * @returns {Object} Returns the new object.
 */
function basePickBy(object, paths, predicate) {
  var index = -1,
      length = paths.length,
      result = {};

  while (++index < length) {
    var path = paths[index],
        value = baseGet(object, path);

    if (predicate(value, path)) {
      baseSet(result, castPath(path, object), value);
    }
  }
  return result;
}

module.exports = basePickBy;


/***/ }),

/***/ "./node_modules/lodash/_baseProperty.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseProperty.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.property` without support for deep paths.
 *
 * @private
 * @param {string} key The key of the property to get.
 * @returns {Function} Returns the new accessor function.
 */
function baseProperty(key) {
  return function(object) {
    return object == null ? undefined : object[key];
  };
}

module.exports = baseProperty;


/***/ }),

/***/ "./node_modules/lodash/_basePropertyDeep.js":
/*!**************************************************!*\
  !*** ./node_modules/lodash/_basePropertyDeep.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__(/*! ./_baseGet */ "./node_modules/lodash/_baseGet.js");

/**
 * A specialized version of `baseProperty` which supports deep paths.
 *
 * @private
 * @param {Array|string} path The path of the property to get.
 * @returns {Function} Returns the new accessor function.
 */
function basePropertyDeep(path) {
  return function(object) {
    return baseGet(object, path);
  };
}

module.exports = basePropertyDeep;


/***/ }),

/***/ "./node_modules/lodash/_baseRest.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_baseRest.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js"),
    overRest = __webpack_require__(/*! ./_overRest */ "./node_modules/lodash/_overRest.js"),
    setToString = __webpack_require__(/*! ./_setToString */ "./node_modules/lodash/_setToString.js");

/**
 * The base implementation of `_.rest` which doesn't validate or coerce arguments.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @param {number} [start=func.length-1] The start position of the rest parameter.
 * @returns {Function} Returns the new function.
 */
function baseRest(func, start) {
  return setToString(overRest(func, start, identity), func + '');
}

module.exports = baseRest;


/***/ }),

/***/ "./node_modules/lodash/_baseSet.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_baseSet.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__(/*! ./_assignValue */ "./node_modules/lodash/_assignValue.js"),
    castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js"),
    isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/**
 * The base implementation of `_.set`.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {Array|string} path The path of the property to set.
 * @param {*} value The value to set.
 * @param {Function} [customizer] The function to customize path creation.
 * @returns {Object} Returns `object`.
 */
function baseSet(object, path, value, customizer) {
  if (!isObject(object)) {
    return object;
  }
  path = castPath(path, object);

  var index = -1,
      length = path.length,
      lastIndex = length - 1,
      nested = object;

  while (nested != null && ++index < length) {
    var key = toKey(path[index]),
        newValue = value;

    if (key === '__proto__' || key === 'constructor' || key === 'prototype') {
      return object;
    }

    if (index != lastIndex) {
      var objValue = nested[key];
      newValue = customizer ? customizer(objValue, key, nested) : undefined;
      if (newValue === undefined) {
        newValue = isObject(objValue)
          ? objValue
          : (isIndex(path[index + 1]) ? [] : {});
      }
    }
    assignValue(nested, key, newValue);
    nested = nested[key];
  }
  return object;
}

module.exports = baseSet;


/***/ }),

/***/ "./node_modules/lodash/_baseSetToString.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_baseSetToString.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var constant = __webpack_require__(/*! ./constant */ "./node_modules/lodash/constant.js"),
    defineProperty = __webpack_require__(/*! ./_defineProperty */ "./node_modules/lodash/_defineProperty.js"),
    identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js");

/**
 * The base implementation of `setToString` without support for hot loop shorting.
 *
 * @private
 * @param {Function} func The function to modify.
 * @param {Function} string The `toString` result.
 * @returns {Function} Returns `func`.
 */
var baseSetToString = !defineProperty ? identity : function(func, string) {
  return defineProperty(func, 'toString', {
    'configurable': true,
    'enumerable': false,
    'value': constant(string),
    'writable': true
  });
};

module.exports = baseSetToString;


/***/ }),

/***/ "./node_modules/lodash/_baseSlice.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseSlice.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.slice` without an iteratee call guard.
 *
 * @private
 * @param {Array} array The array to slice.
 * @param {number} [start=0] The start position.
 * @param {number} [end=array.length] The end position.
 * @returns {Array} Returns the slice of `array`.
 */
function baseSlice(array, start, end) {
  var index = -1,
      length = array.length;

  if (start < 0) {
    start = -start > length ? 0 : (length + start);
  }
  end = end > length ? length : end;
  if (end < 0) {
    end += length;
  }
  length = start > end ? 0 : ((end - start) >>> 0);
  start >>>= 0;

  var result = Array(length);
  while (++index < length) {
    result[index] = array[index + start];
  }
  return result;
}

module.exports = baseSlice;


/***/ }),

/***/ "./node_modules/lodash/_baseTimes.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseTimes.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.times` without support for iteratee shorthands
 * or max array length checks.
 *
 * @private
 * @param {number} n The number of times to invoke `iteratee`.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns the array of results.
 */
function baseTimes(n, iteratee) {
  var index = -1,
      result = Array(n);

  while (++index < n) {
    result[index] = iteratee(index);
  }
  return result;
}

module.exports = baseTimes;


/***/ }),

/***/ "./node_modules/lodash/_baseToString.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_baseToString.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"),
    arrayMap = __webpack_require__(/*! ./_arrayMap */ "./node_modules/lodash/_arrayMap.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isSymbol = __webpack_require__(/*! ./isSymbol */ "./node_modules/lodash/isSymbol.js");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;

/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
    symbolToString = symbolProto ? symbolProto.toString : undefined;

/**
 * The base implementation of `_.toString` which doesn't convert nullish
 * values to empty strings.
 *
 * @private
 * @param {*} value The value to process.
 * @returns {string} Returns the string.
 */
function baseToString(value) {
  // Exit early for strings to avoid a performance hit in some environments.
  if (typeof value == 'string') {
    return value;
  }
  if (isArray(value)) {
    // Recursively convert values (susceptible to call stack limits).
    return arrayMap(value, baseToString) + '';
  }
  if (isSymbol(value)) {
    return symbolToString ? symbolToString.call(value) : '';
  }
  var result = (value + '');
  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
}

module.exports = baseToString;


/***/ }),

/***/ "./node_modules/lodash/_baseUnary.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseUnary.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * The base implementation of `_.unary` without support for storing metadata.
 *
 * @private
 * @param {Function} func The function to cap arguments for.
 * @returns {Function} Returns the new capped function.
 */
function baseUnary(func) {
  return function(value) {
    return func(value);
  };
}

module.exports = baseUnary;


/***/ }),

/***/ "./node_modules/lodash/_baseUniq.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_baseUniq.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var SetCache = __webpack_require__(/*! ./_SetCache */ "./node_modules/lodash/_SetCache.js"),
    arrayIncludes = __webpack_require__(/*! ./_arrayIncludes */ "./node_modules/lodash/_arrayIncludes.js"),
    arrayIncludesWith = __webpack_require__(/*! ./_arrayIncludesWith */ "./node_modules/lodash/_arrayIncludesWith.js"),
    cacheHas = __webpack_require__(/*! ./_cacheHas */ "./node_modules/lodash/_cacheHas.js"),
    createSet = __webpack_require__(/*! ./_createSet */ "./node_modules/lodash/_createSet.js"),
    setToArray = __webpack_require__(/*! ./_setToArray */ "./node_modules/lodash/_setToArray.js");

/** Used as the size to enable large array optimizations. */
var LARGE_ARRAY_SIZE = 200;

/**
 * The base implementation of `_.uniqBy` without support for iteratee shorthands.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {Function} [iteratee] The iteratee invoked per element.
 * @param {Function} [comparator] The comparator invoked per element.
 * @returns {Array} Returns the new duplicate free array.
 */
function baseUniq(array, iteratee, comparator) {
  var index = -1,
      includes = arrayIncludes,
      length = array.length,
      isCommon = true,
      result = [],
      seen = result;

  if (comparator) {
    isCommon = false;
    includes = arrayIncludesWith;
  }
  else if (length >= LARGE_ARRAY_SIZE) {
    var set = iteratee ? null : createSet(array);
    if (set) {
      return setToArray(set);
    }
    isCommon = false;
    includes = cacheHas;
    seen = new SetCache;
  }
  else {
    seen = iteratee ? [] : result;
  }
  outer:
  while (++index < length) {
    var value = array[index],
        computed = iteratee ? iteratee(value) : value;

    value = (comparator || value !== 0) ? value : 0;
    if (isCommon && computed === computed) {
      var seenIndex = seen.length;
      while (seenIndex--) {
        if (seen[seenIndex] === computed) {
          continue outer;
        }
      }
      if (iteratee) {
        seen.push(computed);
      }
      result.push(value);
    }
    else if (!includes(seen, computed, comparator)) {
      if (seen !== result) {
        seen.push(computed);
      }
      result.push(value);
    }
  }
  return result;
}

module.exports = baseUniq;


/***/ }),

/***/ "./node_modules/lodash/_baseUnset.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_baseUnset.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js"),
    last = __webpack_require__(/*! ./last */ "./node_modules/lodash/last.js"),
    parent = __webpack_require__(/*! ./_parent */ "./node_modules/lodash/_parent.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/**
 * The base implementation of `_.unset`.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {Array|string} path The property path to unset.
 * @returns {boolean} Returns `true` if the property is deleted, else `false`.
 */
function baseUnset(object, path) {
  path = castPath(path, object);
  object = parent(object, path);
  return object == null || delete object[toKey(last(path))];
}

module.exports = baseUnset;


/***/ }),

/***/ "./node_modules/lodash/_cacheHas.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_cacheHas.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if a `cache` value for `key` exists.
 *
 * @private
 * @param {Object} cache The cache to query.
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function cacheHas(cache, key) {
  return cache.has(key);
}

module.exports = cacheHas;


/***/ }),

/***/ "./node_modules/lodash/_castFunction.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_castFunction.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var identity = __webpack_require__(/*! ./identity */ "./node_modules/lodash/identity.js");

/**
 * Casts `value` to `identity` if it's not a function.
 *
 * @private
 * @param {*} value The value to inspect.
 * @returns {Function} Returns cast function.
 */
function castFunction(value) {
  return typeof value == 'function' ? value : identity;
}

module.exports = castFunction;


/***/ }),

/***/ "./node_modules/lodash/_castPath.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_castPath.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isKey = __webpack_require__(/*! ./_isKey */ "./node_modules/lodash/_isKey.js"),
    stringToPath = __webpack_require__(/*! ./_stringToPath */ "./node_modules/lodash/_stringToPath.js"),
    toString = __webpack_require__(/*! ./toString */ "./node_modules/lodash/toString.js");

/**
 * Casts `value` to a path array if it's not one.
 *
 * @private
 * @param {*} value The value to inspect.
 * @param {Object} [object] The object to query keys on.
 * @returns {Array} Returns the cast property path array.
 */
function castPath(value, object) {
  if (isArray(value)) {
    return value;
  }
  return isKey(value, object) ? [value] : stringToPath(toString(value));
}

module.exports = castPath;


/***/ }),

/***/ "./node_modules/lodash/_cloneArrayBuffer.js":
/*!**************************************************!*\
  !*** ./node_modules/lodash/_cloneArrayBuffer.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "./node_modules/lodash/_Uint8Array.js");

/**
 * Creates a clone of `arrayBuffer`.
 *
 * @private
 * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
 * @returns {ArrayBuffer} Returns the cloned array buffer.
 */
function cloneArrayBuffer(arrayBuffer) {
  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
  new Uint8Array(result).set(new Uint8Array(arrayBuffer));
  return result;
}

module.exports = cloneArrayBuffer;


/***/ }),

/***/ "./node_modules/lodash/_cloneBuffer.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_cloneBuffer.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Built-in value references. */
var Buffer = moduleExports ? root.Buffer : undefined,
    allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;

/**
 * Creates a clone of  `buffer`.
 *
 * @private
 * @param {Buffer} buffer The buffer to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Buffer} Returns the cloned buffer.
 */
function cloneBuffer(buffer, isDeep) {
  if (isDeep) {
    return buffer.slice();
  }
  var length = buffer.length,
      result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);

  buffer.copy(result);
  return result;
}

module.exports = cloneBuffer;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "./node_modules/webpack/buildin/module.js")(module)))

/***/ }),

/***/ "./node_modules/lodash/_cloneDataView.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_cloneDataView.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "./node_modules/lodash/_cloneArrayBuffer.js");

/**
 * Creates a clone of `dataView`.
 *
 * @private
 * @param {Object} dataView The data view to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Object} Returns the cloned data view.
 */
function cloneDataView(dataView, isDeep) {
  var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
  return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
}

module.exports = cloneDataView;


/***/ }),

/***/ "./node_modules/lodash/_cloneRegExp.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_cloneRegExp.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used to match `RegExp` flags from their coerced string values. */
var reFlags = /\w*$/;

/**
 * Creates a clone of `regexp`.
 *
 * @private
 * @param {Object} regexp The regexp to clone.
 * @returns {Object} Returns the cloned regexp.
 */
function cloneRegExp(regexp) {
  var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
  result.lastIndex = regexp.lastIndex;
  return result;
}

module.exports = cloneRegExp;


/***/ }),

/***/ "./node_modules/lodash/_cloneSymbol.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_cloneSymbol.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js");

/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;

/**
 * Creates a clone of the `symbol` object.
 *
 * @private
 * @param {Object} symbol The symbol object to clone.
 * @returns {Object} Returns the cloned symbol object.
 */
function cloneSymbol(symbol) {
  return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
}

module.exports = cloneSymbol;


/***/ }),

/***/ "./node_modules/lodash/_cloneTypedArray.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_cloneTypedArray.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "./node_modules/lodash/_cloneArrayBuffer.js");

/**
 * Creates a clone of `typedArray`.
 *
 * @private
 * @param {Object} typedArray The typed array to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Object} Returns the cloned typed array.
 */
function cloneTypedArray(typedArray, isDeep) {
  var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
  return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
}

module.exports = cloneTypedArray;


/***/ }),

/***/ "./node_modules/lodash/_copyArray.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_copyArray.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Copies the values of `source` to `array`.
 *
 * @private
 * @param {Array} source The array to copy values from.
 * @param {Array} [array=[]] The array to copy values to.
 * @returns {Array} Returns `array`.
 */
function copyArray(source, array) {
  var index = -1,
      length = source.length;

  array || (array = Array(length));
  while (++index < length) {
    array[index] = source[index];
  }
  return array;
}

module.exports = copyArray;


/***/ }),

/***/ "./node_modules/lodash/_copyObject.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_copyObject.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__(/*! ./_assignValue */ "./node_modules/lodash/_assignValue.js"),
    baseAssignValue = __webpack_require__(/*! ./_baseAssignValue */ "./node_modules/lodash/_baseAssignValue.js");

/**
 * Copies properties of `source` to `object`.
 *
 * @private
 * @param {Object} source The object to copy properties from.
 * @param {Array} props The property identifiers to copy.
 * @param {Object} [object={}] The object to copy properties to.
 * @param {Function} [customizer] The function to customize copied values.
 * @returns {Object} Returns `object`.
 */
function copyObject(source, props, object, customizer) {
  var isNew = !object;
  object || (object = {});

  var index = -1,
      length = props.length;

  while (++index < length) {
    var key = props[index];

    var newValue = customizer
      ? customizer(object[key], source[key], key, object, source)
      : undefined;

    if (newValue === undefined) {
      newValue = source[key];
    }
    if (isNew) {
      baseAssignValue(object, key, newValue);
    } else {
      assignValue(object, key, newValue);
    }
  }
  return object;
}

module.exports = copyObject;


/***/ }),

/***/ "./node_modules/lodash/_copySymbols.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_copySymbols.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    getSymbols = __webpack_require__(/*! ./_getSymbols */ "./node_modules/lodash/_getSymbols.js");

/**
 * Copies own symbols of `source` to `object`.
 *
 * @private
 * @param {Object} source The object to copy symbols from.
 * @param {Object} [object={}] The object to copy symbols to.
 * @returns {Object} Returns `object`.
 */
function copySymbols(source, object) {
  return copyObject(source, getSymbols(source), object);
}

module.exports = copySymbols;


/***/ }),

/***/ "./node_modules/lodash/_copySymbolsIn.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_copySymbolsIn.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    getSymbolsIn = __webpack_require__(/*! ./_getSymbolsIn */ "./node_modules/lodash/_getSymbolsIn.js");

/**
 * Copies own and inherited symbols of `source` to `object`.
 *
 * @private
 * @param {Object} source The object to copy symbols from.
 * @param {Object} [object={}] The object to copy symbols to.
 * @returns {Object} Returns `object`.
 */
function copySymbolsIn(source, object) {
  return copyObject(source, getSymbolsIn(source), object);
}

module.exports = copySymbolsIn;


/***/ }),

/***/ "./node_modules/lodash/_coreJsData.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_coreJsData.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/** Used to detect overreaching core-js shims. */
var coreJsData = root['__core-js_shared__'];

module.exports = coreJsData;


/***/ }),

/***/ "./node_modules/lodash/_createAssigner.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_createAssigner.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseRest = __webpack_require__(/*! ./_baseRest */ "./node_modules/lodash/_baseRest.js"),
    isIterateeCall = __webpack_require__(/*! ./_isIterateeCall */ "./node_modules/lodash/_isIterateeCall.js");

/**
 * Creates a function like `_.assign`.
 *
 * @private
 * @param {Function} assigner The function to assign values.
 * @returns {Function} Returns the new assigner function.
 */
function createAssigner(assigner) {
  return baseRest(function(object, sources) {
    var index = -1,
        length = sources.length,
        customizer = length > 1 ? sources[length - 1] : undefined,
        guard = length > 2 ? sources[2] : undefined;

    customizer = (assigner.length > 3 && typeof customizer == 'function')
      ? (length--, customizer)
      : undefined;

    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
      customizer = length < 3 ? undefined : customizer;
      length = 1;
    }
    object = Object(object);
    while (++index < length) {
      var source = sources[index];
      if (source) {
        assigner(object, source, index, customizer);
      }
    }
    return object;
  });
}

module.exports = createAssigner;


/***/ }),

/***/ "./node_modules/lodash/_createBaseFor.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_createBaseFor.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Creates a base function for methods like `_.forIn` and `_.forOwn`.
 *
 * @private
 * @param {boolean} [fromRight] Specify iterating from right to left.
 * @returns {Function} Returns the new base function.
 */
function createBaseFor(fromRight) {
  return function(object, iteratee, keysFunc) {
    var index = -1,
        iterable = Object(object),
        props = keysFunc(object),
        length = props.length;

    while (length--) {
      var key = props[fromRight ? length : ++index];
      if (iteratee(iterable[key], key, iterable) === false) {
        break;
      }
    }
    return object;
  };
}

module.exports = createBaseFor;


/***/ }),

/***/ "./node_modules/lodash/_createSet.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_createSet.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Set = __webpack_require__(/*! ./_Set */ "./node_modules/lodash/_Set.js"),
    noop = __webpack_require__(/*! ./noop */ "./node_modules/lodash/noop.js"),
    setToArray = __webpack_require__(/*! ./_setToArray */ "./node_modules/lodash/_setToArray.js");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;

/**
 * Creates a set object of `values`.
 *
 * @private
 * @param {Array} values The values to add to the set.
 * @returns {Object} Returns the new set.
 */
var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {
  return new Set(values);
};

module.exports = createSet;


/***/ }),

/***/ "./node_modules/lodash/_customOmitClone.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_customOmitClone.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isPlainObject = __webpack_require__(/*! ./isPlainObject */ "./node_modules/lodash/isPlainObject.js");

/**
 * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain
 * objects.
 *
 * @private
 * @param {*} value The value to inspect.
 * @param {string} key The key of the property to inspect.
 * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.
 */
function customOmitClone(value) {
  return isPlainObject(value) ? undefined : value;
}

module.exports = customOmitClone;


/***/ }),

/***/ "./node_modules/lodash/_defineProperty.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_defineProperty.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js");

var defineProperty = (function() {
  try {
    var func = getNative(Object, 'defineProperty');
    func({}, '', {});
    return func;
  } catch (e) {}
}());

module.exports = defineProperty;


/***/ }),

/***/ "./node_modules/lodash/_equalArrays.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_equalArrays.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var SetCache = __webpack_require__(/*! ./_SetCache */ "./node_modules/lodash/_SetCache.js"),
    arraySome = __webpack_require__(/*! ./_arraySome */ "./node_modules/lodash/_arraySome.js"),
    cacheHas = __webpack_require__(/*! ./_cacheHas */ "./node_modules/lodash/_cacheHas.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * A specialized version of `baseIsEqualDeep` for arrays with support for
 * partial deep comparisons.
 *
 * @private
 * @param {Array} array The array to compare.
 * @param {Array} other The other array to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `array` and `other` objects.
 * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
 */
function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
      arrLength = array.length,
      othLength = other.length;

  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
    return false;
  }
  // Check that cyclic values are equal.
  var arrStacked = stack.get(array);
  var othStacked = stack.get(other);
  if (arrStacked && othStacked) {
    return arrStacked == other && othStacked == array;
  }
  var index = -1,
      result = true,
      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;

  stack.set(array, other);
  stack.set(other, array);

  // Ignore non-index properties.
  while (++index < arrLength) {
    var arrValue = array[index],
        othValue = other[index];

    if (customizer) {
      var compared = isPartial
        ? customizer(othValue, arrValue, index, other, array, stack)
        : customizer(arrValue, othValue, index, array, other, stack);
    }
    if (compared !== undefined) {
      if (compared) {
        continue;
      }
      result = false;
      break;
    }
    // Recursively compare arrays (susceptible to call stack limits).
    if (seen) {
      if (!arraySome(other, function(othValue, othIndex) {
            if (!cacheHas(seen, othIndex) &&
                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
              return seen.push(othIndex);
            }
          })) {
        result = false;
        break;
      }
    } else if (!(
          arrValue === othValue ||
            equalFunc(arrValue, othValue, bitmask, customizer, stack)
        )) {
      result = false;
      break;
    }
  }
  stack['delete'](array);
  stack['delete'](other);
  return result;
}

module.exports = equalArrays;


/***/ }),

/***/ "./node_modules/lodash/_equalByTag.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_equalByTag.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"),
    Uint8Array = __webpack_require__(/*! ./_Uint8Array */ "./node_modules/lodash/_Uint8Array.js"),
    eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"),
    equalArrays = __webpack_require__(/*! ./_equalArrays */ "./node_modules/lodash/_equalArrays.js"),
    mapToArray = __webpack_require__(/*! ./_mapToArray */ "./node_modules/lodash/_mapToArray.js"),
    setToArray = __webpack_require__(/*! ./_setToArray */ "./node_modules/lodash/_setToArray.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/** `Object#toString` result references. */
var boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    errorTag = '[object Error]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    symbolTag = '[object Symbol]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]';

/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;

/**
 * A specialized version of `baseIsEqualDeep` for comparing objects of
 * the same `toStringTag`.
 *
 * **Note:** This function only supports comparing values with tags of
 * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {string} tag The `toStringTag` of the objects to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
  switch (tag) {
    case dataViewTag:
      if ((object.byteLength != other.byteLength) ||
          (object.byteOffset != other.byteOffset)) {
        return false;
      }
      object = object.buffer;
      other = other.buffer;

    case arrayBufferTag:
      if ((object.byteLength != other.byteLength) ||
          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
        return false;
      }
      return true;

    case boolTag:
    case dateTag:
    case numberTag:
      // Coerce booleans to `1` or `0` and dates to milliseconds.
      // Invalid dates are coerced to `NaN`.
      return eq(+object, +other);

    case errorTag:
      return object.name == other.name && object.message == other.message;

    case regexpTag:
    case stringTag:
      // Coerce regexes to strings and treat strings, primitives and objects,
      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
      // for more details.
      return object == (other + '');

    case mapTag:
      var convert = mapToArray;

    case setTag:
      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
      convert || (convert = setToArray);

      if (object.size != other.size && !isPartial) {
        return false;
      }
      // Assume cyclic values are equal.
      var stacked = stack.get(object);
      if (stacked) {
        return stacked == other;
      }
      bitmask |= COMPARE_UNORDERED_FLAG;

      // Recursively compare objects (susceptible to call stack limits).
      stack.set(object, other);
      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
      stack['delete'](object);
      return result;

    case symbolTag:
      if (symbolValueOf) {
        return symbolValueOf.call(object) == symbolValueOf.call(other);
      }
  }
  return false;
}

module.exports = equalByTag;


/***/ }),

/***/ "./node_modules/lodash/_equalObjects.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_equalObjects.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getAllKeys = __webpack_require__(/*! ./_getAllKeys */ "./node_modules/lodash/_getAllKeys.js");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1;

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * A specialized version of `baseIsEqualDeep` for objects with support for
 * partial deep comparisons.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
      objProps = getAllKeys(object),
      objLength = objProps.length,
      othProps = getAllKeys(other),
      othLength = othProps.length;

  if (objLength != othLength && !isPartial) {
    return false;
  }
  var index = objLength;
  while (index--) {
    var key = objProps[index];
    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
      return false;
    }
  }
  // Check that cyclic values are equal.
  var objStacked = stack.get(object);
  var othStacked = stack.get(other);
  if (objStacked && othStacked) {
    return objStacked == other && othStacked == object;
  }
  var result = true;
  stack.set(object, other);
  stack.set(other, object);

  var skipCtor = isPartial;
  while (++index < objLength) {
    key = objProps[index];
    var objValue = object[key],
        othValue = other[key];

    if (customizer) {
      var compared = isPartial
        ? customizer(othValue, objValue, key, other, object, stack)
        : customizer(objValue, othValue, key, object, other, stack);
    }
    // Recursively compare objects (susceptible to call stack limits).
    if (!(compared === undefined
          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
          : compared
        )) {
      result = false;
      break;
    }
    skipCtor || (skipCtor = key == 'constructor');
  }
  if (result && !skipCtor) {
    var objCtor = object.constructor,
        othCtor = other.constructor;

    // Non `Object` object instances with different constructors are not equal.
    if (objCtor != othCtor &&
        ('constructor' in object && 'constructor' in other) &&
        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
      result = false;
    }
  }
  stack['delete'](object);
  stack['delete'](other);
  return result;
}

module.exports = equalObjects;


/***/ }),

/***/ "./node_modules/lodash/_flatRest.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_flatRest.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var flatten = __webpack_require__(/*! ./flatten */ "./node_modules/lodash/flatten.js"),
    overRest = __webpack_require__(/*! ./_overRest */ "./node_modules/lodash/_overRest.js"),
    setToString = __webpack_require__(/*! ./_setToString */ "./node_modules/lodash/_setToString.js");

/**
 * A specialized version of `baseRest` which flattens the rest array.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @returns {Function} Returns the new function.
 */
function flatRest(func) {
  return setToString(overRest(func, undefined, flatten), func + '');
}

module.exports = flatRest;


/***/ }),

/***/ "./node_modules/lodash/_freeGlobal.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_freeGlobal.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;

module.exports = freeGlobal;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ "./node_modules/webpack/buildin/global.js")))

/***/ }),

/***/ "./node_modules/lodash/_getAllKeys.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_getAllKeys.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ "./node_modules/lodash/_baseGetAllKeys.js"),
    getSymbols = __webpack_require__(/*! ./_getSymbols */ "./node_modules/lodash/_getSymbols.js"),
    keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js");

/**
 * Creates an array of own enumerable property names and symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names and symbols.
 */
function getAllKeys(object) {
  return baseGetAllKeys(object, keys, getSymbols);
}

module.exports = getAllKeys;


/***/ }),

/***/ "./node_modules/lodash/_getAllKeysIn.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getAllKeysIn.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetAllKeys = __webpack_require__(/*! ./_baseGetAllKeys */ "./node_modules/lodash/_baseGetAllKeys.js"),
    getSymbolsIn = __webpack_require__(/*! ./_getSymbolsIn */ "./node_modules/lodash/_getSymbolsIn.js"),
    keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js");

/**
 * Creates an array of own and inherited enumerable property names and
 * symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names and symbols.
 */
function getAllKeysIn(object) {
  return baseGetAllKeys(object, keysIn, getSymbolsIn);
}

module.exports = getAllKeysIn;


/***/ }),

/***/ "./node_modules/lodash/_getMapData.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_getMapData.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isKeyable = __webpack_require__(/*! ./_isKeyable */ "./node_modules/lodash/_isKeyable.js");

/**
 * Gets the data for `map`.
 *
 * @private
 * @param {Object} map The map to query.
 * @param {string} key The reference key.
 * @returns {*} Returns the map data.
 */
function getMapData(map, key) {
  var data = map.__data__;
  return isKeyable(key)
    ? data[typeof key == 'string' ? 'string' : 'hash']
    : data.map;
}

module.exports = getMapData;


/***/ }),

/***/ "./node_modules/lodash/_getMatchData.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getMatchData.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isStrictComparable = __webpack_require__(/*! ./_isStrictComparable */ "./node_modules/lodash/_isStrictComparable.js"),
    keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js");

/**
 * Gets the property names, values, and compare flags of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the match data of `object`.
 */
function getMatchData(object) {
  var result = keys(object),
      length = result.length;

  while (length--) {
    var key = result[length],
        value = object[key];

    result[length] = [key, value, isStrictComparable(value)];
  }
  return result;
}

module.exports = getMatchData;


/***/ }),

/***/ "./node_modules/lodash/_getNative.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_getNative.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsNative = __webpack_require__(/*! ./_baseIsNative */ "./node_modules/lodash/_baseIsNative.js"),
    getValue = __webpack_require__(/*! ./_getValue */ "./node_modules/lodash/_getValue.js");

/**
 * Gets the native function at `key` of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {string} key The key of the method to get.
 * @returns {*} Returns the function if it's native, else `undefined`.
 */
function getNative(object, key) {
  var value = getValue(object, key);
  return baseIsNative(value) ? value : undefined;
}

module.exports = getNative;


/***/ }),

/***/ "./node_modules/lodash/_getPrototype.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getPrototype.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var overArg = __webpack_require__(/*! ./_overArg */ "./node_modules/lodash/_overArg.js");

/** Built-in value references. */
var getPrototype = overArg(Object.getPrototypeOf, Object);

module.exports = getPrototype;


/***/ }),

/***/ "./node_modules/lodash/_getRawTag.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_getRawTag.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Used to resolve the
 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
 * of values.
 */
var nativeObjectToString = objectProto.toString;

/** Built-in value references. */
var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

/**
 * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the raw `toStringTag`.
 */
function getRawTag(value) {
  var isOwn = hasOwnProperty.call(value, symToStringTag),
      tag = value[symToStringTag];

  try {
    value[symToStringTag] = undefined;
    var unmasked = true;
  } catch (e) {}

  var result = nativeObjectToString.call(value);
  if (unmasked) {
    if (isOwn) {
      value[symToStringTag] = tag;
    } else {
      delete value[symToStringTag];
    }
  }
  return result;
}

module.exports = getRawTag;


/***/ }),

/***/ "./node_modules/lodash/_getSymbols.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_getSymbols.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayFilter = __webpack_require__(/*! ./_arrayFilter */ "./node_modules/lodash/_arrayFilter.js"),
    stubArray = __webpack_require__(/*! ./stubArray */ "./node_modules/lodash/stubArray.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Built-in value references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeGetSymbols = Object.getOwnPropertySymbols;

/**
 * Creates an array of the own enumerable symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of symbols.
 */
var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
  if (object == null) {
    return [];
  }
  object = Object(object);
  return arrayFilter(nativeGetSymbols(object), function(symbol) {
    return propertyIsEnumerable.call(object, symbol);
  });
};

module.exports = getSymbols;


/***/ }),

/***/ "./node_modules/lodash/_getSymbolsIn.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_getSymbolsIn.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayPush = __webpack_require__(/*! ./_arrayPush */ "./node_modules/lodash/_arrayPush.js"),
    getPrototype = __webpack_require__(/*! ./_getPrototype */ "./node_modules/lodash/_getPrototype.js"),
    getSymbols = __webpack_require__(/*! ./_getSymbols */ "./node_modules/lodash/_getSymbols.js"),
    stubArray = __webpack_require__(/*! ./stubArray */ "./node_modules/lodash/stubArray.js");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeGetSymbols = Object.getOwnPropertySymbols;

/**
 * Creates an array of the own and inherited enumerable symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of symbols.
 */
var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {
  var result = [];
  while (object) {
    arrayPush(result, getSymbols(object));
    object = getPrototype(object);
  }
  return result;
};

module.exports = getSymbolsIn;


/***/ }),

/***/ "./node_modules/lodash/_getTag.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/_getTag.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var DataView = __webpack_require__(/*! ./_DataView */ "./node_modules/lodash/_DataView.js"),
    Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js"),
    Promise = __webpack_require__(/*! ./_Promise */ "./node_modules/lodash/_Promise.js"),
    Set = __webpack_require__(/*! ./_Set */ "./node_modules/lodash/_Set.js"),
    WeakMap = __webpack_require__(/*! ./_WeakMap */ "./node_modules/lodash/_WeakMap.js"),
    baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    toSource = __webpack_require__(/*! ./_toSource */ "./node_modules/lodash/_toSource.js");

/** `Object#toString` result references. */
var mapTag = '[object Map]',
    objectTag = '[object Object]',
    promiseTag = '[object Promise]',
    setTag = '[object Set]',
    weakMapTag = '[object WeakMap]';

var dataViewTag = '[object DataView]';

/** Used to detect maps, sets, and weakmaps. */
var dataViewCtorString = toSource(DataView),
    mapCtorString = toSource(Map),
    promiseCtorString = toSource(Promise),
    setCtorString = toSource(Set),
    weakMapCtorString = toSource(WeakMap);

/**
 * Gets the `toStringTag` of `value`.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the `toStringTag`.
 */
var getTag = baseGetTag;

// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
    (Map && getTag(new Map) != mapTag) ||
    (Promise && getTag(Promise.resolve()) != promiseTag) ||
    (Set && getTag(new Set) != setTag) ||
    (WeakMap && getTag(new WeakMap) != weakMapTag)) {
  getTag = function(value) {
    var result = baseGetTag(value),
        Ctor = result == objectTag ? value.constructor : undefined,
        ctorString = Ctor ? toSource(Ctor) : '';

    if (ctorString) {
      switch (ctorString) {
        case dataViewCtorString: return dataViewTag;
        case mapCtorString: return mapTag;
        case promiseCtorString: return promiseTag;
        case setCtorString: return setTag;
        case weakMapCtorString: return weakMapTag;
      }
    }
    return result;
  };
}

module.exports = getTag;


/***/ }),

/***/ "./node_modules/lodash/_getValue.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_getValue.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Gets the value at `key` of `object`.
 *
 * @private
 * @param {Object} [object] The object to query.
 * @param {string} key The key of the property to get.
 * @returns {*} Returns the property value.
 */
function getValue(object, key) {
  return object == null ? undefined : object[key];
}

module.exports = getValue;


/***/ }),

/***/ "./node_modules/lodash/_hasPath.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hasPath.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js"),
    isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"),
    isLength = __webpack_require__(/*! ./isLength */ "./node_modules/lodash/isLength.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/**
 * Checks if `path` exists on `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Array|string} path The path to check.
 * @param {Function} hasFunc The function to check properties.
 * @returns {boolean} Returns `true` if `path` exists, else `false`.
 */
function hasPath(object, path, hasFunc) {
  path = castPath(path, object);

  var index = -1,
      length = path.length,
      result = false;

  while (++index < length) {
    var key = toKey(path[index]);
    if (!(result = object != null && hasFunc(object, key))) {
      break;
    }
    object = object[key];
  }
  if (result || ++index != length) {
    return result;
  }
  length = object == null ? 0 : object.length;
  return !!length && isLength(length) && isIndex(key, length) &&
    (isArray(object) || isArguments(object));
}

module.exports = hasPath;


/***/ }),

/***/ "./node_modules/lodash/_hashClear.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_hashClear.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js");

/**
 * Removes all key-value entries from the hash.
 *
 * @private
 * @name clear
 * @memberOf Hash
 */
function hashClear() {
  this.__data__ = nativeCreate ? nativeCreate(null) : {};
  this.size = 0;
}

module.exports = hashClear;


/***/ }),

/***/ "./node_modules/lodash/_hashDelete.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_hashDelete.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Removes `key` and its value from the hash.
 *
 * @private
 * @name delete
 * @memberOf Hash
 * @param {Object} hash The hash to modify.
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function hashDelete(key) {
  var result = this.has(key) && delete this.__data__[key];
  this.size -= result ? 1 : 0;
  return result;
}

module.exports = hashDelete;


/***/ }),

/***/ "./node_modules/lodash/_hashGet.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashGet.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js");

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Gets the hash value for `key`.
 *
 * @private
 * @name get
 * @memberOf Hash
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function hashGet(key) {
  var data = this.__data__;
  if (nativeCreate) {
    var result = data[key];
    return result === HASH_UNDEFINED ? undefined : result;
  }
  return hasOwnProperty.call(data, key) ? data[key] : undefined;
}

module.exports = hashGet;


/***/ }),

/***/ "./node_modules/lodash/_hashHas.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashHas.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Checks if a hash value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf Hash
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function hashHas(key) {
  var data = this.__data__;
  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
}

module.exports = hashHas;


/***/ }),

/***/ "./node_modules/lodash/_hashSet.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_hashSet.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__(/*! ./_nativeCreate */ "./node_modules/lodash/_nativeCreate.js");

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/**
 * Sets the hash `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf Hash
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the hash instance.
 */
function hashSet(key, value) {
  var data = this.__data__;
  this.size += this.has(key) ? 0 : 1;
  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
  return this;
}

module.exports = hashSet;


/***/ }),

/***/ "./node_modules/lodash/_initCloneArray.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_initCloneArray.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Initializes an array clone.
 *
 * @private
 * @param {Array} array The array to clone.
 * @returns {Array} Returns the initialized clone.
 */
function initCloneArray(array) {
  var length = array.length,
      result = new array.constructor(length);

  // Add properties assigned by `RegExp#exec`.
  if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
    result.index = array.index;
    result.input = array.input;
  }
  return result;
}

module.exports = initCloneArray;


/***/ }),

/***/ "./node_modules/lodash/_initCloneByTag.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_initCloneByTag.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var cloneArrayBuffer = __webpack_require__(/*! ./_cloneArrayBuffer */ "./node_modules/lodash/_cloneArrayBuffer.js"),
    cloneDataView = __webpack_require__(/*! ./_cloneDataView */ "./node_modules/lodash/_cloneDataView.js"),
    cloneRegExp = __webpack_require__(/*! ./_cloneRegExp */ "./node_modules/lodash/_cloneRegExp.js"),
    cloneSymbol = __webpack_require__(/*! ./_cloneSymbol */ "./node_modules/lodash/_cloneSymbol.js"),
    cloneTypedArray = __webpack_require__(/*! ./_cloneTypedArray */ "./node_modules/lodash/_cloneTypedArray.js");

/** `Object#toString` result references. */
var boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    symbolTag = '[object Symbol]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]',
    float32Tag = '[object Float32Array]',
    float64Tag = '[object Float64Array]',
    int8Tag = '[object Int8Array]',
    int16Tag = '[object Int16Array]',
    int32Tag = '[object Int32Array]',
    uint8Tag = '[object Uint8Array]',
    uint8ClampedTag = '[object Uint8ClampedArray]',
    uint16Tag = '[object Uint16Array]',
    uint32Tag = '[object Uint32Array]';

/**
 * Initializes an object clone based on its `toStringTag`.
 *
 * **Note:** This function only supports cloning values with tags of
 * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
 *
 * @private
 * @param {Object} object The object to clone.
 * @param {string} tag The `toStringTag` of the object to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Object} Returns the initialized clone.
 */
function initCloneByTag(object, tag, isDeep) {
  var Ctor = object.constructor;
  switch (tag) {
    case arrayBufferTag:
      return cloneArrayBuffer(object);

    case boolTag:
    case dateTag:
      return new Ctor(+object);

    case dataViewTag:
      return cloneDataView(object, isDeep);

    case float32Tag: case float64Tag:
    case int8Tag: case int16Tag: case int32Tag:
    case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
      return cloneTypedArray(object, isDeep);

    case mapTag:
      return new Ctor;

    case numberTag:
    case stringTag:
      return new Ctor(object);

    case regexpTag:
      return cloneRegExp(object);

    case setTag:
      return new Ctor;

    case symbolTag:
      return cloneSymbol(object);
  }
}

module.exports = initCloneByTag;


/***/ }),

/***/ "./node_modules/lodash/_initCloneObject.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_initCloneObject.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseCreate = __webpack_require__(/*! ./_baseCreate */ "./node_modules/lodash/_baseCreate.js"),
    getPrototype = __webpack_require__(/*! ./_getPrototype */ "./node_modules/lodash/_getPrototype.js"),
    isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js");

/**
 * Initializes an object clone.
 *
 * @private
 * @param {Object} object The object to clone.
 * @returns {Object} Returns the initialized clone.
 */
function initCloneObject(object) {
  return (typeof object.constructor == 'function' && !isPrototype(object))
    ? baseCreate(getPrototype(object))
    : {};
}

module.exports = initCloneObject;


/***/ }),

/***/ "./node_modules/lodash/_isFlattenable.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_isFlattenable.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__(/*! ./_Symbol */ "./node_modules/lodash/_Symbol.js"),
    isArguments = __webpack_require__(/*! ./isArguments */ "./node_modules/lodash/isArguments.js"),
    isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js");

/** Built-in value references. */
var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;

/**
 * Checks if `value` is a flattenable `arguments` object or array.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
 */
function isFlattenable(value) {
  return isArray(value) || isArguments(value) ||
    !!(spreadableSymbol && value && value[spreadableSymbol]);
}

module.exports = isFlattenable;


/***/ }),

/***/ "./node_modules/lodash/_isIndex.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_isIndex.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used as references for various `Number` constants. */
var MAX_SAFE_INTEGER = 9007199254740991;

/** Used to detect unsigned integer values. */
var reIsUint = /^(?:0|[1-9]\d*)$/;

/**
 * Checks if `value` is a valid array-like index.
 *
 * @private
 * @param {*} value The value to check.
 * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
 * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
 */
function isIndex(value, length) {
  var type = typeof value;
  length = length == null ? MAX_SAFE_INTEGER : length;

  return !!length &&
    (type == 'number' ||
      (type != 'symbol' && reIsUint.test(value))) &&
        (value > -1 && value % 1 == 0 && value < length);
}

module.exports = isIndex;


/***/ }),

/***/ "./node_modules/lodash/_isIterateeCall.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_isIterateeCall.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var eq = __webpack_require__(/*! ./eq */ "./node_modules/lodash/eq.js"),
    isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"),
    isIndex = __webpack_require__(/*! ./_isIndex */ "./node_modules/lodash/_isIndex.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js");

/**
 * Checks if the given arguments are from an iteratee call.
 *
 * @private
 * @param {*} value The potential iteratee value argument.
 * @param {*} index The potential iteratee index or key argument.
 * @param {*} object The potential iteratee object argument.
 * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
 *  else `false`.
 */
function isIterateeCall(value, index, object) {
  if (!isObject(object)) {
    return false;
  }
  var type = typeof index;
  if (type == 'number'
        ? (isArrayLike(object) && isIndex(index, object.length))
        : (type == 'string' && index in object)
      ) {
    return eq(object[index], value);
  }
  return false;
}

module.exports = isIterateeCall;


/***/ }),

/***/ "./node_modules/lodash/_isKey.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/_isKey.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isArray = __webpack_require__(/*! ./isArray */ "./node_modules/lodash/isArray.js"),
    isSymbol = __webpack_require__(/*! ./isSymbol */ "./node_modules/lodash/isSymbol.js");

/** Used to match property names within property paths. */
var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
    reIsPlainProp = /^\w*$/;

/**
 * Checks if `value` is a property name and not a property path.
 *
 * @private
 * @param {*} value The value to check.
 * @param {Object} [object] The object to query keys on.
 * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
 */
function isKey(value, object) {
  if (isArray(value)) {
    return false;
  }
  var type = typeof value;
  if (type == 'number' || type == 'symbol' || type == 'boolean' ||
      value == null || isSymbol(value)) {
    return true;
  }
  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
    (object != null && value in Object(object));
}

module.exports = isKey;


/***/ }),

/***/ "./node_modules/lodash/_isKeyable.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/_isKeyable.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is suitable for use as unique object key.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
 */
function isKeyable(value) {
  var type = typeof value;
  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
    ? (value !== '__proto__')
    : (value === null);
}

module.exports = isKeyable;


/***/ }),

/***/ "./node_modules/lodash/_isMasked.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_isMasked.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var coreJsData = __webpack_require__(/*! ./_coreJsData */ "./node_modules/lodash/_coreJsData.js");

/** Used to detect methods masquerading as native. */
var maskSrcKey = (function() {
  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
  return uid ? ('Symbol(src)_1.' + uid) : '';
}());

/**
 * Checks if `func` has its source masked.
 *
 * @private
 * @param {Function} func The function to check.
 * @returns {boolean} Returns `true` if `func` is masked, else `false`.
 */
function isMasked(func) {
  return !!maskSrcKey && (maskSrcKey in func);
}

module.exports = isMasked;


/***/ }),

/***/ "./node_modules/lodash/_isPrototype.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_isPrototype.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/**
 * Checks if `value` is likely a prototype object.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
 */
function isPrototype(value) {
  var Ctor = value && value.constructor,
      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;

  return value === proto;
}

module.exports = isPrototype;


/***/ }),

/***/ "./node_modules/lodash/_isStrictComparable.js":
/*!****************************************************!*\
  !*** ./node_modules/lodash/_isStrictComparable.js ***!
  \****************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js");

/**
 * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` if suitable for strict
 *  equality comparisons, else `false`.
 */
function isStrictComparable(value) {
  return value === value && !isObject(value);
}

module.exports = isStrictComparable;


/***/ }),

/***/ "./node_modules/lodash/_listCacheClear.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_listCacheClear.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Removes all key-value entries from the list cache.
 *
 * @private
 * @name clear
 * @memberOf ListCache
 */
function listCacheClear() {
  this.__data__ = [];
  this.size = 0;
}

module.exports = listCacheClear;


/***/ }),

/***/ "./node_modules/lodash/_listCacheDelete.js":
/*!*************************************************!*\
  !*** ./node_modules/lodash/_listCacheDelete.js ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js");

/** Used for built-in method references. */
var arrayProto = Array.prototype;

/** Built-in value references. */
var splice = arrayProto.splice;

/**
 * Removes `key` and its value from the list cache.
 *
 * @private
 * @name delete
 * @memberOf ListCache
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function listCacheDelete(key) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  if (index < 0) {
    return false;
  }
  var lastIndex = data.length - 1;
  if (index == lastIndex) {
    data.pop();
  } else {
    splice.call(data, index, 1);
  }
  --this.size;
  return true;
}

module.exports = listCacheDelete;


/***/ }),

/***/ "./node_modules/lodash/_listCacheGet.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheGet.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js");

/**
 * Gets the list cache value for `key`.
 *
 * @private
 * @name get
 * @memberOf ListCache
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function listCacheGet(key) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  return index < 0 ? undefined : data[index][1];
}

module.exports = listCacheGet;


/***/ }),

/***/ "./node_modules/lodash/_listCacheHas.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheHas.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js");

/**
 * Checks if a list cache value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf ListCache
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function listCacheHas(key) {
  return assocIndexOf(this.__data__, key) > -1;
}

module.exports = listCacheHas;


/***/ }),

/***/ "./node_modules/lodash/_listCacheSet.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_listCacheSet.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__(/*! ./_assocIndexOf */ "./node_modules/lodash/_assocIndexOf.js");

/**
 * Sets the list cache `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf ListCache
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the list cache instance.
 */
function listCacheSet(key, value) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  if (index < 0) {
    ++this.size;
    data.push([key, value]);
  } else {
    data[index][1] = value;
  }
  return this;
}

module.exports = listCacheSet;


/***/ }),

/***/ "./node_modules/lodash/_mapCacheClear.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_mapCacheClear.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var Hash = __webpack_require__(/*! ./_Hash */ "./node_modules/lodash/_Hash.js"),
    ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"),
    Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js");

/**
 * Removes all key-value entries from the map.
 *
 * @private
 * @name clear
 * @memberOf MapCache
 */
function mapCacheClear() {
  this.size = 0;
  this.__data__ = {
    'hash': new Hash,
    'map': new (Map || ListCache),
    'string': new Hash
  };
}

module.exports = mapCacheClear;


/***/ }),

/***/ "./node_modules/lodash/_mapCacheDelete.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_mapCacheDelete.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js");

/**
 * Removes `key` and its value from the map.
 *
 * @private
 * @name delete
 * @memberOf MapCache
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function mapCacheDelete(key) {
  var result = getMapData(this, key)['delete'](key);
  this.size -= result ? 1 : 0;
  return result;
}

module.exports = mapCacheDelete;


/***/ }),

/***/ "./node_modules/lodash/_mapCacheGet.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheGet.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js");

/**
 * Gets the map value for `key`.
 *
 * @private
 * @name get
 * @memberOf MapCache
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function mapCacheGet(key) {
  return getMapData(this, key).get(key);
}

module.exports = mapCacheGet;


/***/ }),

/***/ "./node_modules/lodash/_mapCacheHas.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheHas.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js");

/**
 * Checks if a map value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf MapCache
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function mapCacheHas(key) {
  return getMapData(this, key).has(key);
}

module.exports = mapCacheHas;


/***/ }),

/***/ "./node_modules/lodash/_mapCacheSet.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_mapCacheSet.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__(/*! ./_getMapData */ "./node_modules/lodash/_getMapData.js");

/**
 * Sets the map `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf MapCache
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the map cache instance.
 */
function mapCacheSet(key, value) {
  var data = getMapData(this, key),
      size = data.size;

  data.set(key, value);
  this.size += data.size == size ? 0 : 1;
  return this;
}

module.exports = mapCacheSet;


/***/ }),

/***/ "./node_modules/lodash/_mapToArray.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_mapToArray.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Converts `map` to its key-value pairs.
 *
 * @private
 * @param {Object} map The map to convert.
 * @returns {Array} Returns the key-value pairs.
 */
function mapToArray(map) {
  var index = -1,
      result = Array(map.size);

  map.forEach(function(value, key) {
    result[++index] = [key, value];
  });
  return result;
}

module.exports = mapToArray;


/***/ }),

/***/ "./node_modules/lodash/_matchesStrictComparable.js":
/*!*********************************************************!*\
  !*** ./node_modules/lodash/_matchesStrictComparable.js ***!
  \*********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `matchesProperty` for source values suitable
 * for strict equality comparisons, i.e. `===`.
 *
 * @private
 * @param {string} key The key of the property to get.
 * @param {*} srcValue The value to match.
 * @returns {Function} Returns the new spec function.
 */
function matchesStrictComparable(key, srcValue) {
  return function(object) {
    if (object == null) {
      return false;
    }
    return object[key] === srcValue &&
      (srcValue !== undefined || (key in Object(object)));
  };
}

module.exports = matchesStrictComparable;


/***/ }),

/***/ "./node_modules/lodash/_memoizeCapped.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_memoizeCapped.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var memoize = __webpack_require__(/*! ./memoize */ "./node_modules/lodash/memoize.js");

/** Used as the maximum memoize cache size. */
var MAX_MEMOIZE_SIZE = 500;

/**
 * A specialized version of `_.memoize` which clears the memoized function's
 * cache when it exceeds `MAX_MEMOIZE_SIZE`.
 *
 * @private
 * @param {Function} func The function to have its output memoized.
 * @returns {Function} Returns the new memoized function.
 */
function memoizeCapped(func) {
  var result = memoize(func, function(key) {
    if (cache.size === MAX_MEMOIZE_SIZE) {
      cache.clear();
    }
    return key;
  });

  var cache = result.cache;
  return result;
}

module.exports = memoizeCapped;


/***/ }),

/***/ "./node_modules/lodash/_nativeCreate.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_nativeCreate.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__(/*! ./_getNative */ "./node_modules/lodash/_getNative.js");

/* Built-in method references that are verified to be native. */
var nativeCreate = getNative(Object, 'create');

module.exports = nativeCreate;


/***/ }),

/***/ "./node_modules/lodash/_nativeKeys.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_nativeKeys.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var overArg = __webpack_require__(/*! ./_overArg */ "./node_modules/lodash/_overArg.js");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeKeys = overArg(Object.keys, Object);

module.exports = nativeKeys;


/***/ }),

/***/ "./node_modules/lodash/_nativeKeysIn.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_nativeKeysIn.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This function is like
 * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
 * except that it includes inherited enumerable properties.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function nativeKeysIn(object) {
  var result = [];
  if (object != null) {
    for (var key in Object(object)) {
      result.push(key);
    }
  }
  return result;
}

module.exports = nativeKeysIn;


/***/ }),

/***/ "./node_modules/lodash/_nodeUtil.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_nodeUtil.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "./node_modules/lodash/_freeGlobal.js");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Detect free variable `process` from Node.js. */
var freeProcess = moduleExports && freeGlobal.process;

/** Used to access faster Node.js helpers. */
var nodeUtil = (function() {
  try {
    // Use `util.types` for Node.js 10+.
    var types = freeModule && freeModule.require && freeModule.require('util').types;

    if (types) {
      return types;
    }

    // Legacy `process.binding('util')` for Node.js < 10.
    return freeProcess && freeProcess.binding && freeProcess.binding('util');
  } catch (e) {}
}());

module.exports = nodeUtil;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "./node_modules/webpack/buildin/module.js")(module)))

/***/ }),

/***/ "./node_modules/lodash/_objectToString.js":
/*!************************************************!*\
  !*** ./node_modules/lodash/_objectToString.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/**
 * Used to resolve the
 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
 * of values.
 */
var nativeObjectToString = objectProto.toString;

/**
 * Converts `value` to a string using `Object.prototype.toString`.
 *
 * @private
 * @param {*} value The value to convert.
 * @returns {string} Returns the converted string.
 */
function objectToString(value) {
  return nativeObjectToString.call(value);
}

module.exports = objectToString;


/***/ }),

/***/ "./node_modules/lodash/_overArg.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_overArg.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Creates a unary function that invokes `func` with its argument transformed.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {Function} transform The argument transform.
 * @returns {Function} Returns the new function.
 */
function overArg(func, transform) {
  return function(arg) {
    return func(transform(arg));
  };
}

module.exports = overArg;


/***/ }),

/***/ "./node_modules/lodash/_overRest.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_overRest.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var apply = __webpack_require__(/*! ./_apply */ "./node_modules/lodash/_apply.js");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * A specialized version of `baseRest` which transforms the rest array.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @param {number} [start=func.length-1] The start position of the rest parameter.
 * @param {Function} transform The rest array transform.
 * @returns {Function} Returns the new function.
 */
function overRest(func, start, transform) {
  start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
  return function() {
    var args = arguments,
        index = -1,
        length = nativeMax(args.length - start, 0),
        array = Array(length);

    while (++index < length) {
      array[index] = args[start + index];
    }
    index = -1;
    var otherArgs = Array(start + 1);
    while (++index < start) {
      otherArgs[index] = args[index];
    }
    otherArgs[start] = transform(array);
    return apply(func, this, otherArgs);
  };
}

module.exports = overRest;


/***/ }),

/***/ "./node_modules/lodash/_parent.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/_parent.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__(/*! ./_baseGet */ "./node_modules/lodash/_baseGet.js"),
    baseSlice = __webpack_require__(/*! ./_baseSlice */ "./node_modules/lodash/_baseSlice.js");

/**
 * Gets the parent value at `path` of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Array} path The path to get the parent value of.
 * @returns {*} Returns the parent value.
 */
function parent(object, path) {
  return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));
}

module.exports = parent;


/***/ }),

/***/ "./node_modules/lodash/_root.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/_root.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var freeGlobal = __webpack_require__(/*! ./_freeGlobal */ "./node_modules/lodash/_freeGlobal.js");

/** Detect free variable `self`. */
var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

/** Used as a reference to the global object. */
var root = freeGlobal || freeSelf || Function('return this')();

module.exports = root;


/***/ }),

/***/ "./node_modules/lodash/_safeGet.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/_safeGet.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Gets the value at `key`, unless `key` is "__proto__" or "constructor".
 *
 * @private
 * @param {Object} object The object to query.
 * @param {string} key The key of the property to get.
 * @returns {*} Returns the property value.
 */
function safeGet(object, key) {
  if (key === 'constructor' && typeof object[key] === 'function') {
    return;
  }

  if (key == '__proto__') {
    return;
  }

  return object[key];
}

module.exports = safeGet;


/***/ }),

/***/ "./node_modules/lodash/_setCacheAdd.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_setCacheAdd.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/**
 * Adds `value` to the array cache.
 *
 * @private
 * @name add
 * @memberOf SetCache
 * @alias push
 * @param {*} value The value to cache.
 * @returns {Object} Returns the cache instance.
 */
function setCacheAdd(value) {
  this.__data__.set(value, HASH_UNDEFINED);
  return this;
}

module.exports = setCacheAdd;


/***/ }),

/***/ "./node_modules/lodash/_setCacheHas.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_setCacheHas.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is in the array cache.
 *
 * @private
 * @name has
 * @memberOf SetCache
 * @param {*} value The value to search for.
 * @returns {number} Returns `true` if `value` is found, else `false`.
 */
function setCacheHas(value) {
  return this.__data__.has(value);
}

module.exports = setCacheHas;


/***/ }),

/***/ "./node_modules/lodash/_setToArray.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_setToArray.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Converts `set` to an array of its values.
 *
 * @private
 * @param {Object} set The set to convert.
 * @returns {Array} Returns the values.
 */
function setToArray(set) {
  var index = -1,
      result = Array(set.size);

  set.forEach(function(value) {
    result[++index] = value;
  });
  return result;
}

module.exports = setToArray;


/***/ }),

/***/ "./node_modules/lodash/_setToString.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_setToString.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseSetToString = __webpack_require__(/*! ./_baseSetToString */ "./node_modules/lodash/_baseSetToString.js"),
    shortOut = __webpack_require__(/*! ./_shortOut */ "./node_modules/lodash/_shortOut.js");

/**
 * Sets the `toString` method of `func` to return `string`.
 *
 * @private
 * @param {Function} func The function to modify.
 * @param {Function} string The `toString` result.
 * @returns {Function} Returns `func`.
 */
var setToString = shortOut(baseSetToString);

module.exports = setToString;


/***/ }),

/***/ "./node_modules/lodash/_shortOut.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_shortOut.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used to detect hot functions by number of calls within a span of milliseconds. */
var HOT_COUNT = 800,
    HOT_SPAN = 16;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeNow = Date.now;

/**
 * Creates a function that'll short out and invoke `identity` instead
 * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
 * milliseconds.
 *
 * @private
 * @param {Function} func The function to restrict.
 * @returns {Function} Returns the new shortable function.
 */
function shortOut(func) {
  var count = 0,
      lastCalled = 0;

  return function() {
    var stamp = nativeNow(),
        remaining = HOT_SPAN - (stamp - lastCalled);

    lastCalled = stamp;
    if (remaining > 0) {
      if (++count >= HOT_COUNT) {
        return arguments[0];
      }
    } else {
      count = 0;
    }
    return func.apply(undefined, arguments);
  };
}

module.exports = shortOut;


/***/ }),

/***/ "./node_modules/lodash/_stackClear.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/_stackClear.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js");

/**
 * Removes all key-value entries from the stack.
 *
 * @private
 * @name clear
 * @memberOf Stack
 */
function stackClear() {
  this.__data__ = new ListCache;
  this.size = 0;
}

module.exports = stackClear;


/***/ }),

/***/ "./node_modules/lodash/_stackDelete.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/_stackDelete.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Removes `key` and its value from the stack.
 *
 * @private
 * @name delete
 * @memberOf Stack
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function stackDelete(key) {
  var data = this.__data__,
      result = data['delete'](key);

  this.size = data.size;
  return result;
}

module.exports = stackDelete;


/***/ }),

/***/ "./node_modules/lodash/_stackGet.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackGet.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Gets the stack value for `key`.
 *
 * @private
 * @name get
 * @memberOf Stack
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function stackGet(key) {
  return this.__data__.get(key);
}

module.exports = stackGet;


/***/ }),

/***/ "./node_modules/lodash/_stackHas.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackHas.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if a stack value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf Stack
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function stackHas(key) {
  return this.__data__.has(key);
}

module.exports = stackHas;


/***/ }),

/***/ "./node_modules/lodash/_stackSet.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_stackSet.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__(/*! ./_ListCache */ "./node_modules/lodash/_ListCache.js"),
    Map = __webpack_require__(/*! ./_Map */ "./node_modules/lodash/_Map.js"),
    MapCache = __webpack_require__(/*! ./_MapCache */ "./node_modules/lodash/_MapCache.js");

/** Used as the size to enable large array optimizations. */
var LARGE_ARRAY_SIZE = 200;

/**
 * Sets the stack `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf Stack
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the stack cache instance.
 */
function stackSet(key, value) {
  var data = this.__data__;
  if (data instanceof ListCache) {
    var pairs = data.__data__;
    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
      pairs.push([key, value]);
      this.size = ++data.size;
      return this;
    }
    data = this.__data__ = new MapCache(pairs);
  }
  data.set(key, value);
  this.size = data.size;
  return this;
}

module.exports = stackSet;


/***/ }),

/***/ "./node_modules/lodash/_strictIndexOf.js":
/*!***********************************************!*\
  !*** ./node_modules/lodash/_strictIndexOf.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * A specialized version of `_.indexOf` which performs strict equality
 * comparisons of values, i.e. `===`.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} value The value to search for.
 * @param {number} fromIndex The index to search from.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function strictIndexOf(array, value, fromIndex) {
  var index = fromIndex - 1,
      length = array.length;

  while (++index < length) {
    if (array[index] === value) {
      return index;
    }
  }
  return -1;
}

module.exports = strictIndexOf;


/***/ }),

/***/ "./node_modules/lodash/_stringToPath.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/_stringToPath.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var memoizeCapped = __webpack_require__(/*! ./_memoizeCapped */ "./node_modules/lodash/_memoizeCapped.js");

/** Used to match property names within property paths. */
var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;

/** Used to match backslashes in property paths. */
var reEscapeChar = /\\(\\)?/g;

/**
 * Converts `string` to a property path array.
 *
 * @private
 * @param {string} string The string to convert.
 * @returns {Array} Returns the property path array.
 */
var stringToPath = memoizeCapped(function(string) {
  var result = [];
  if (string.charCodeAt(0) === 46 /* . */) {
    result.push('');
  }
  string.replace(rePropName, function(match, number, quote, subString) {
    result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
  });
  return result;
});

module.exports = stringToPath;


/***/ }),

/***/ "./node_modules/lodash/_toKey.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/_toKey.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isSymbol = __webpack_require__(/*! ./isSymbol */ "./node_modules/lodash/isSymbol.js");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;

/**
 * Converts `value` to a string key if it's not a string or symbol.
 *
 * @private
 * @param {*} value The value to inspect.
 * @returns {string|symbol} Returns the key.
 */
function toKey(value) {
  if (typeof value == 'string' || isSymbol(value)) {
    return value;
  }
  var result = (value + '');
  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
}

module.exports = toKey;


/***/ }),

/***/ "./node_modules/lodash/_toSource.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/_toSource.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used for built-in method references. */
var funcProto = Function.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/**
 * Converts `func` to its source code.
 *
 * @private
 * @param {Function} func The function to convert.
 * @returns {string} Returns the source code.
 */
function toSource(func) {
  if (func != null) {
    try {
      return funcToString.call(func);
    } catch (e) {}
    try {
      return (func + '');
    } catch (e) {}
  }
  return '';
}

module.exports = toSource;


/***/ }),

/***/ "./node_modules/lodash/assign.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/assign.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__(/*! ./_assignValue */ "./node_modules/lodash/_assignValue.js"),
    copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    createAssigner = __webpack_require__(/*! ./_createAssigner */ "./node_modules/lodash/_createAssigner.js"),
    isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"),
    isPrototype = __webpack_require__(/*! ./_isPrototype */ "./node_modules/lodash/_isPrototype.js"),
    keys = __webpack_require__(/*! ./keys */ "./node_modules/lodash/keys.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Assigns own enumerable string keyed properties of source objects to the
 * destination object. Source objects are applied from left to right.
 * Subsequent sources overwrite property assignments of previous sources.
 *
 * **Note:** This method mutates `object` and is loosely based on
 * [`Object.assign`](https://mdn.io/Object/assign).
 *
 * @static
 * @memberOf _
 * @since 0.10.0
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @see _.assignIn
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 * }
 *
 * function Bar() {
 *   this.c = 3;
 * }
 *
 * Foo.prototype.b = 2;
 * Bar.prototype.d = 4;
 *
 * _.assign({ 'a': 0 }, new Foo, new Bar);
 * // => { 'a': 1, 'c': 3 }
 */
var assign = createAssigner(function(object, source) {
  if (isPrototype(source) || isArrayLike(source)) {
    copyObject(source, keys(source), object);
    return;
  }
  for (var key in source) {
    if (hasOwnProperty.call(source, key)) {
      assignValue(object, key, source[key]);
    }
  }
});

module.exports = assign;


/***/ }),

/***/ "./node_modules/lodash/constant.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/constant.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Creates a function that returns `value`.
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Util
 * @param {*} value The value to return from the new function.
 * @returns {Function} Returns the new constant function.
 * @example
 *
 * var objects = _.times(2, _.constant({ 'a': 1 }));
 *
 * console.log(objects);
 * // => [{ 'a': 1 }, { 'a': 1 }]
 *
 * console.log(objects[0] === objects[1]);
 * // => true
 */
function constant(value) {
  return function() {
    return value;
  };
}

module.exports = constant;


/***/ }),

/***/ "./node_modules/lodash/debounce.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/debounce.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    now = __webpack_require__(/*! ./now */ "./node_modules/lodash/now.js"),
    toNumber = __webpack_require__(/*! ./toNumber */ "./node_modules/lodash/toNumber.js");

/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max,
    nativeMin = Math.min;

/**
 * Creates a debounced function that delays invoking `func` until after `wait`
 * milliseconds have elapsed since the last time the debounced function was
 * invoked. The debounced function comes with a `cancel` method to cancel
 * delayed `func` invocations and a `flush` method to immediately invoke them.
 * Provide `options` to indicate whether `func` should be invoked on the
 * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
 * with the last arguments provided to the debounced function. Subsequent
 * calls to the debounced function return the result of the last `func`
 * invocation.
 *
 * **Note:** If `leading` and `trailing` options are `true`, `func` is
 * invoked on the trailing edge of the timeout only if the debounced function
 * is invoked more than once during the `wait` timeout.
 *
 * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
 * until to the next tick, similar to `setTimeout` with a timeout of `0`.
 *
 * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
 * for details over the differences between `_.debounce` and `_.throttle`.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Function
 * @param {Function} func The function to debounce.
 * @param {number} [wait=0] The number of milliseconds to delay.
 * @param {Object} [options={}] The options object.
 * @param {boolean} [options.leading=false]
 *  Specify invoking on the leading edge of the timeout.
 * @param {number} [options.maxWait]
 *  The maximum time `func` is allowed to be delayed before it's invoked.
 * @param {boolean} [options.trailing=true]
 *  Specify invoking on the trailing edge of the timeout.
 * @returns {Function} Returns the new debounced function.
 * @example
 *
 * // Avoid costly calculations while the window size is in flux.
 * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
 *
 * // Invoke `sendMail` when clicked, debouncing subsequent calls.
 * jQuery(element).on('click', _.debounce(sendMail, 300, {
 *   'leading': true,
 *   'trailing': false
 * }));
 *
 * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
 * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
 * var source = new EventSource('/stream');
 * jQuery(source).on('message', debounced);
 *
 * // Cancel the trailing debounced invocation.
 * jQuery(window).on('popstate', debounced.cancel);
 */
function debounce(func, wait, options) {
  var lastArgs,
      lastThis,
      maxWait,
      result,
      timerId,
      lastCallTime,
      lastInvokeTime = 0,
      leading = false,
      maxing = false,
      trailing = true;

  if (typeof func != 'function') {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  wait = toNumber(wait) || 0;
  if (isObject(options)) {
    leading = !!options.leading;
    maxing = 'maxWait' in options;
    maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
    trailing = 'trailing' in options ? !!options.trailing : trailing;
  }

  function invokeFunc(time) {
    var args = lastArgs,
        thisArg = lastThis;

    lastArgs = lastThis = undefined;
    lastInvokeTime = time;
    result = func.apply(thisArg, args);
    return result;
  }

  function leadingEdge(time) {
    // Reset any `maxWait` timer.
    lastInvokeTime = time;
    // Start the timer for the trailing edge.
    timerId = setTimeout(timerExpired, wait);
    // Invoke the leading edge.
    return leading ? invokeFunc(time) : result;
  }

  function remainingWait(time) {
    var timeSinceLastCall = time - lastCallTime,
        timeSinceLastInvoke = time - lastInvokeTime,
        timeWaiting = wait - timeSinceLastCall;

    return maxing
      ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
      : timeWaiting;
  }

  function shouldInvoke(time) {
    var timeSinceLastCall = time - lastCallTime,
        timeSinceLastInvoke = time - lastInvokeTime;

    // Either this is the first call, activity has stopped and we're at the
    // trailing edge, the system time has gone backwards and we're treating
    // it as the trailing edge, or we've hit the `maxWait` limit.
    return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
      (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
  }

  function timerExpired() {
    var time = now();
    if (shouldInvoke(time)) {
      return trailingEdge(time);
    }
    // Restart the timer.
    timerId = setTimeout(timerExpired, remainingWait(time));
  }

  function trailingEdge(time) {
    timerId = undefined;

    // Only invoke if we have `lastArgs` which means `func` has been
    // debounced at least once.
    if (trailing && lastArgs) {
      return invokeFunc(time);
    }
    lastArgs = lastThis = undefined;
    return result;
  }

  function cancel() {
    if (timerId !== undefined) {
      clearTimeout(timerId);
    }
    lastInvokeTime = 0;
    lastArgs = lastCallTime = lastThis = timerId = undefined;
  }

  function flush() {
    return timerId === undefined ? result : trailingEdge(now());
  }

  function debounced() {
    var time = now(),
        isInvoking = shouldInvoke(time);

    lastArgs = arguments;
    lastThis = this;
    lastCallTime = time;

    if (isInvoking) {
      if (timerId === undefined) {
        return leadingEdge(lastCallTime);
      }
      if (maxing) {
        // Handle invocations in a tight loop.
        clearTimeout(timerId);
        timerId = setTimeout(timerExpired, wait);
        return invokeFunc(lastCallTime);
      }
    }
    if (timerId === undefined) {
      timerId = setTimeout(timerExpired, wait);
    }
    return result;
  }
  debounced.cancel = cancel;
  debounced.flush = flush;
  return debounced;
}

module.exports = debounce;


/***/ }),

/***/ "./node_modules/lodash/eq.js":
/*!***********************************!*\
  !*** ./node_modules/lodash/eq.js ***!
  \***********************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Performs a
 * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
 * comparison between two values to determine if they are equivalent.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to compare.
 * @param {*} other The other value to compare.
 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
 * @example
 *
 * var object = { 'a': 1 };
 * var other = { 'a': 1 };
 *
 * _.eq(object, object);
 * // => true
 *
 * _.eq(object, other);
 * // => false
 *
 * _.eq('a', 'a');
 * // => true
 *
 * _.eq('a', Object('a'));
 * // => false
 *
 * _.eq(NaN, NaN);
 * // => true
 */
function eq(value, other) {
  return value === other || (value !== value && other !== other);
}

module.exports = eq;


/***/ }),

/***/ "./node_modules/lodash/findIndex.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/findIndex.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseFindIndex = __webpack_require__(/*! ./_baseFindIndex */ "./node_modules/lodash/_baseFindIndex.js"),
    baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "./node_modules/lodash/_baseIteratee.js"),
    toInteger = __webpack_require__(/*! ./toInteger */ "./node_modules/lodash/toInteger.js");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * This method is like `_.find` except that it returns the index of the first
 * element `predicate` returns truthy for instead of the element itself.
 *
 * @static
 * @memberOf _
 * @since 1.1.0
 * @category Array
 * @param {Array} array The array to inspect.
 * @param {Function} [predicate=_.identity] The function invoked per iteration.
 * @param {number} [fromIndex=0] The index to search from.
 * @returns {number} Returns the index of the found element, else `-1`.
 * @example
 *
 * var users = [
 *   { 'user': 'barney',  'active': false },
 *   { 'user': 'fred',    'active': false },
 *   { 'user': 'pebbles', 'active': true }
 * ];
 *
 * _.findIndex(users, function(o) { return o.user == 'barney'; });
 * // => 0
 *
 * // The `_.matches` iteratee shorthand.
 * _.findIndex(users, { 'user': 'fred', 'active': false });
 * // => 1
 *
 * // The `_.matchesProperty` iteratee shorthand.
 * _.findIndex(users, ['active', false]);
 * // => 0
 *
 * // The `_.property` iteratee shorthand.
 * _.findIndex(users, 'active');
 * // => 2
 */
function findIndex(array, predicate, fromIndex) {
  var length = array == null ? 0 : array.length;
  if (!length) {
    return -1;
  }
  var index = fromIndex == null ? 0 : toInteger(fromIndex);
  if (index < 0) {
    index = nativeMax(length + index, 0);
  }
  return baseFindIndex(array, baseIteratee(predicate, 3), index);
}

module.exports = findIndex;


/***/ }),

/***/ "./node_modules/lodash/flatten.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/flatten.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseFlatten = __webpack_require__(/*! ./_baseFlatten */ "./node_modules/lodash/_baseFlatten.js");

/**
 * Flattens `array` a single level deep.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Array
 * @param {Array} array The array to flatten.
 * @returns {Array} Returns the new flattened array.
 * @example
 *
 * _.flatten([1, [2, [3, [4]], 5]]);
 * // => [1, 2, [3, [4]], 5]
 */
function flatten(array) {
  var length = array == null ? 0 : array.length;
  return length ? baseFlatten(array, 1) : [];
}

module.exports = flatten;


/***/ }),

/***/ "./node_modules/lodash/get.js":
/*!************************************!*\
  !*** ./node_modules/lodash/get.js ***!
  \************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__(/*! ./_baseGet */ "./node_modules/lodash/_baseGet.js");

/**
 * Gets the value at `path` of `object`. If the resolved value is
 * `undefined`, the `defaultValue` is returned in its place.
 *
 * @static
 * @memberOf _
 * @since 3.7.0
 * @category Object
 * @param {Object} object The object to query.
 * @param {Array|string} path The path of the property to get.
 * @param {*} [defaultValue] The value returned for `undefined` resolved values.
 * @returns {*} Returns the resolved value.
 * @example
 *
 * var object = { 'a': [{ 'b': { 'c': 3 } }] };
 *
 * _.get(object, 'a[0].b.c');
 * // => 3
 *
 * _.get(object, ['a', '0', 'b', 'c']);
 * // => 3
 *
 * _.get(object, 'a.b.c', 'default');
 * // => 'default'
 */
function get(object, path, defaultValue) {
  var result = object == null ? undefined : baseGet(object, path);
  return result === undefined ? defaultValue : result;
}

module.exports = get;


/***/ }),

/***/ "./node_modules/lodash/has.js":
/*!************************************!*\
  !*** ./node_modules/lodash/has.js ***!
  \************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseHas = __webpack_require__(/*! ./_baseHas */ "./node_modules/lodash/_baseHas.js"),
    hasPath = __webpack_require__(/*! ./_hasPath */ "./node_modules/lodash/_hasPath.js");

/**
 * Checks if `path` is a direct property of `object`.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The object to query.
 * @param {Array|string} path The path to check.
 * @returns {boolean} Returns `true` if `path` exists, else `false`.
 * @example
 *
 * var object = { 'a': { 'b': 2 } };
 * var other = _.create({ 'a': _.create({ 'b': 2 }) });
 *
 * _.has(object, 'a');
 * // => true
 *
 * _.has(object, 'a.b');
 * // => true
 *
 * _.has(object, ['a', 'b']);
 * // => true
 *
 * _.has(other, 'a');
 * // => false
 */
function has(object, path) {
  return object != null && hasPath(object, path, baseHas);
}

module.exports = has;


/***/ }),

/***/ "./node_modules/lodash/hasIn.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/hasIn.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseHasIn = __webpack_require__(/*! ./_baseHasIn */ "./node_modules/lodash/_baseHasIn.js"),
    hasPath = __webpack_require__(/*! ./_hasPath */ "./node_modules/lodash/_hasPath.js");

/**
 * Checks if `path` is a direct or inherited property of `object`.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Object
 * @param {Object} object The object to query.
 * @param {Array|string} path The path to check.
 * @returns {boolean} Returns `true` if `path` exists, else `false`.
 * @example
 *
 * var object = _.create({ 'a': _.create({ 'b': 2 }) });
 *
 * _.hasIn(object, 'a');
 * // => true
 *
 * _.hasIn(object, 'a.b');
 * // => true
 *
 * _.hasIn(object, ['a', 'b']);
 * // => true
 *
 * _.hasIn(object, 'b');
 * // => false
 */
function hasIn(object, path) {
  return object != null && hasPath(object, path, baseHasIn);
}

module.exports = hasIn;


/***/ }),

/***/ "./node_modules/lodash/identity.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/identity.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This method returns the first argument it receives.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Util
 * @param {*} value Any value.
 * @returns {*} Returns `value`.
 * @example
 *
 * var object = { 'a': 1 };
 *
 * console.log(_.identity(object) === object);
 * // => true
 */
function identity(value) {
  return value;
}

module.exports = identity;


/***/ }),

/***/ "./node_modules/lodash/isArguments.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/isArguments.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsArguments = __webpack_require__(/*! ./_baseIsArguments */ "./node_modules/lodash/_baseIsArguments.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Built-in value references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;

/**
 * Checks if `value` is likely an `arguments` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
 *  else `false`.
 * @example
 *
 * _.isArguments(function() { return arguments; }());
 * // => true
 *
 * _.isArguments([1, 2, 3]);
 * // => false
 */
var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
    !propertyIsEnumerable.call(value, 'callee');
};

module.exports = isArguments;


/***/ }),

/***/ "./node_modules/lodash/isArray.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/isArray.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is classified as an `Array` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an array, else `false`.
 * @example
 *
 * _.isArray([1, 2, 3]);
 * // => true
 *
 * _.isArray(document.body.children);
 * // => false
 *
 * _.isArray('abc');
 * // => false
 *
 * _.isArray(_.noop);
 * // => false
 */
var isArray = Array.isArray;

module.exports = isArray;


/***/ }),

/***/ "./node_modules/lodash/isArrayLike.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/isArrayLike.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isFunction = __webpack_require__(/*! ./isFunction */ "./node_modules/lodash/isFunction.js"),
    isLength = __webpack_require__(/*! ./isLength */ "./node_modules/lodash/isLength.js");

/**
 * Checks if `value` is array-like. A value is considered array-like if it's
 * not a function and has a `value.length` that's an integer greater than or
 * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
 * @example
 *
 * _.isArrayLike([1, 2, 3]);
 * // => true
 *
 * _.isArrayLike(document.body.children);
 * // => true
 *
 * _.isArrayLike('abc');
 * // => true
 *
 * _.isArrayLike(_.noop);
 * // => false
 */
function isArrayLike(value) {
  return value != null && isLength(value.length) && !isFunction(value);
}

module.exports = isArrayLike;


/***/ }),

/***/ "./node_modules/lodash/isArrayLikeObject.js":
/*!**************************************************!*\
  !*** ./node_modules/lodash/isArrayLikeObject.js ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/**
 * This method is like `_.isArrayLike` except that it also checks if `value`
 * is an object.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an array-like object,
 *  else `false`.
 * @example
 *
 * _.isArrayLikeObject([1, 2, 3]);
 * // => true
 *
 * _.isArrayLikeObject(document.body.children);
 * // => true
 *
 * _.isArrayLikeObject('abc');
 * // => false
 *
 * _.isArrayLikeObject(_.noop);
 * // => false
 */
function isArrayLikeObject(value) {
  return isObjectLike(value) && isArrayLike(value);
}

module.exports = isArrayLikeObject;


/***/ }),

/***/ "./node_modules/lodash/isBuffer.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/isBuffer.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js"),
    stubFalse = __webpack_require__(/*! ./stubFalse */ "./node_modules/lodash/stubFalse.js");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Built-in value references. */
var Buffer = moduleExports ? root.Buffer : undefined;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;

/**
 * Checks if `value` is a buffer.
 *
 * @static
 * @memberOf _
 * @since 4.3.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
 * @example
 *
 * _.isBuffer(new Buffer(2));
 * // => true
 *
 * _.isBuffer(new Uint8Array(2));
 * // => false
 */
var isBuffer = nativeIsBuffer || stubFalse;

module.exports = isBuffer;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/module.js */ "./node_modules/webpack/buildin/module.js")(module)))

/***/ }),

/***/ "./node_modules/lodash/isFunction.js":
/*!*******************************************!*\
  !*** ./node_modules/lodash/isFunction.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js");

/** `Object#toString` result references. */
var asyncTag = '[object AsyncFunction]',
    funcTag = '[object Function]',
    genTag = '[object GeneratorFunction]',
    proxyTag = '[object Proxy]';

/**
 * Checks if `value` is classified as a `Function` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a function, else `false`.
 * @example
 *
 * _.isFunction(_);
 * // => true
 *
 * _.isFunction(/abc/);
 * // => false
 */
function isFunction(value) {
  if (!isObject(value)) {
    return false;
  }
  // The use of `Object#toString` avoids issues with the `typeof` operator
  // in Safari 9 which returns 'object' for typed arrays and other constructors.
  var tag = baseGetTag(value);
  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
}

module.exports = isFunction;


/***/ }),

/***/ "./node_modules/lodash/isLength.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/isLength.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/** Used as references for various `Number` constants. */
var MAX_SAFE_INTEGER = 9007199254740991;

/**
 * Checks if `value` is a valid array-like length.
 *
 * **Note:** This method is loosely based on
 * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
 * @example
 *
 * _.isLength(3);
 * // => true
 *
 * _.isLength(Number.MIN_VALUE);
 * // => false
 *
 * _.isLength(Infinity);
 * // => false
 *
 * _.isLength('3');
 * // => false
 */
function isLength(value) {
  return typeof value == 'number' &&
    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
}

module.exports = isLength;


/***/ }),

/***/ "./node_modules/lodash/isMap.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/isMap.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsMap = __webpack_require__(/*! ./_baseIsMap */ "./node_modules/lodash/_baseIsMap.js"),
    baseUnary = __webpack_require__(/*! ./_baseUnary */ "./node_modules/lodash/_baseUnary.js"),
    nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "./node_modules/lodash/_nodeUtil.js");

/* Node.js helper references. */
var nodeIsMap = nodeUtil && nodeUtil.isMap;

/**
 * Checks if `value` is classified as a `Map` object.
 *
 * @static
 * @memberOf _
 * @since 4.3.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a map, else `false`.
 * @example
 *
 * _.isMap(new Map);
 * // => true
 *
 * _.isMap(new WeakMap);
 * // => false
 */
var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;

module.exports = isMap;


/***/ }),

/***/ "./node_modules/lodash/isObject.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/isObject.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is the
 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
 * @example
 *
 * _.isObject({});
 * // => true
 *
 * _.isObject([1, 2, 3]);
 * // => true
 *
 * _.isObject(_.noop);
 * // => true
 *
 * _.isObject(null);
 * // => false
 */
function isObject(value) {
  var type = typeof value;
  return value != null && (type == 'object' || type == 'function');
}

module.exports = isObject;


/***/ }),

/***/ "./node_modules/lodash/isObjectLike.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/isObjectLike.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is object-like. A value is object-like if it's not `null`
 * and has a `typeof` result of "object".
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
 * @example
 *
 * _.isObjectLike({});
 * // => true
 *
 * _.isObjectLike([1, 2, 3]);
 * // => true
 *
 * _.isObjectLike(_.noop);
 * // => false
 *
 * _.isObjectLike(null);
 * // => false
 */
function isObjectLike(value) {
  return value != null && typeof value == 'object';
}

module.exports = isObjectLike;


/***/ }),

/***/ "./node_modules/lodash/isPlainObject.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/isPlainObject.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    getPrototype = __webpack_require__(/*! ./_getPrototype */ "./node_modules/lodash/_getPrototype.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var objectTag = '[object Object]';

/** Used for built-in method references. */
var funcProto = Function.prototype,
    objectProto = Object.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Used to infer the `Object` constructor. */
var objectCtorString = funcToString.call(Object);

/**
 * Checks if `value` is a plain object, that is, an object created by the
 * `Object` constructor or one with a `[[Prototype]]` of `null`.
 *
 * @static
 * @memberOf _
 * @since 0.8.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 * }
 *
 * _.isPlainObject(new Foo);
 * // => false
 *
 * _.isPlainObject([1, 2, 3]);
 * // => false
 *
 * _.isPlainObject({ 'x': 0, 'y': 0 });
 * // => true
 *
 * _.isPlainObject(Object.create(null));
 * // => true
 */
function isPlainObject(value) {
  if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
    return false;
  }
  var proto = getPrototype(value);
  if (proto === null) {
    return true;
  }
  var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
  return typeof Ctor == 'function' && Ctor instanceof Ctor &&
    funcToString.call(Ctor) == objectCtorString;
}

module.exports = isPlainObject;


/***/ }),

/***/ "./node_modules/lodash/isSet.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/isSet.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsSet = __webpack_require__(/*! ./_baseIsSet */ "./node_modules/lodash/_baseIsSet.js"),
    baseUnary = __webpack_require__(/*! ./_baseUnary */ "./node_modules/lodash/_baseUnary.js"),
    nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "./node_modules/lodash/_nodeUtil.js");

/* Node.js helper references. */
var nodeIsSet = nodeUtil && nodeUtil.isSet;

/**
 * Checks if `value` is classified as a `Set` object.
 *
 * @static
 * @memberOf _
 * @since 4.3.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a set, else `false`.
 * @example
 *
 * _.isSet(new Set);
 * // => true
 *
 * _.isSet(new WeakSet);
 * // => false
 */
var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;

module.exports = isSet;


/***/ }),

/***/ "./node_modules/lodash/isSymbol.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/isSymbol.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__(/*! ./_baseGetTag */ "./node_modules/lodash/_baseGetTag.js"),
    isObjectLike = __webpack_require__(/*! ./isObjectLike */ "./node_modules/lodash/isObjectLike.js");

/** `Object#toString` result references. */
var symbolTag = '[object Symbol]';

/**
 * Checks if `value` is classified as a `Symbol` primitive or object.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
 * @example
 *
 * _.isSymbol(Symbol.iterator);
 * // => true
 *
 * _.isSymbol('abc');
 * // => false
 */
function isSymbol(value) {
  return typeof value == 'symbol' ||
    (isObjectLike(value) && baseGetTag(value) == symbolTag);
}

module.exports = isSymbol;


/***/ }),

/***/ "./node_modules/lodash/isTypedArray.js":
/*!*********************************************!*\
  !*** ./node_modules/lodash/isTypedArray.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseIsTypedArray = __webpack_require__(/*! ./_baseIsTypedArray */ "./node_modules/lodash/_baseIsTypedArray.js"),
    baseUnary = __webpack_require__(/*! ./_baseUnary */ "./node_modules/lodash/_baseUnary.js"),
    nodeUtil = __webpack_require__(/*! ./_nodeUtil */ "./node_modules/lodash/_nodeUtil.js");

/* Node.js helper references. */
var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;

/**
 * Checks if `value` is classified as a typed array.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
 * @example
 *
 * _.isTypedArray(new Uint8Array);
 * // => true
 *
 * _.isTypedArray([]);
 * // => false
 */
var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;

module.exports = isTypedArray;


/***/ }),

/***/ "./node_modules/lodash/isUndefined.js":
/*!********************************************!*\
  !*** ./node_modules/lodash/isUndefined.js ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Checks if `value` is `undefined`.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
 * @example
 *
 * _.isUndefined(void 0);
 * // => true
 *
 * _.isUndefined(null);
 * // => false
 */
function isUndefined(value) {
  return value === undefined;
}

module.exports = isUndefined;


/***/ }),

/***/ "./node_modules/lodash/keys.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/keys.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "./node_modules/lodash/_arrayLikeKeys.js"),
    baseKeys = __webpack_require__(/*! ./_baseKeys */ "./node_modules/lodash/_baseKeys.js"),
    isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js");

/**
 * Creates an array of the own enumerable property names of `object`.
 *
 * **Note:** Non-object values are coerced to objects. See the
 * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
 * for more details.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.keys(new Foo);
 * // => ['a', 'b'] (iteration order is not guaranteed)
 *
 * _.keys('hi');
 * // => ['0', '1']
 */
function keys(object) {
  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
}

module.exports = keys;


/***/ }),

/***/ "./node_modules/lodash/keysIn.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/keysIn.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeKeys = __webpack_require__(/*! ./_arrayLikeKeys */ "./node_modules/lodash/_arrayLikeKeys.js"),
    baseKeysIn = __webpack_require__(/*! ./_baseKeysIn */ "./node_modules/lodash/_baseKeysIn.js"),
    isArrayLike = __webpack_require__(/*! ./isArrayLike */ "./node_modules/lodash/isArrayLike.js");

/**
 * Creates an array of the own and inherited enumerable property names of `object`.
 *
 * **Note:** Non-object values are coerced to objects.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Object
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.keysIn(new Foo);
 * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
 */
function keysIn(object) {
  return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
}

module.exports = keysIn;


/***/ }),

/***/ "./node_modules/lodash/last.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/last.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * Gets the last element of `array`.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Array
 * @param {Array} array The array to query.
 * @returns {*} Returns the last element of `array`.
 * @example
 *
 * _.last([1, 2, 3]);
 * // => 3
 */
function last(array) {
  var length = array == null ? 0 : array.length;
  return length ? array[length - 1] : undefined;
}

module.exports = last;


/***/ }),

/***/ "./node_modules/lodash/memoize.js":
/*!****************************************!*\
  !*** ./node_modules/lodash/memoize.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var MapCache = __webpack_require__(/*! ./_MapCache */ "./node_modules/lodash/_MapCache.js");

/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';

/**
 * Creates a function that memoizes the result of `func`. If `resolver` is
 * provided, it determines the cache key for storing the result based on the
 * arguments provided to the memoized function. By default, the first argument
 * provided to the memoized function is used as the map cache key. The `func`
 * is invoked with the `this` binding of the memoized function.
 *
 * **Note:** The cache is exposed as the `cache` property on the memoized
 * function. Its creation may be customized by replacing the `_.memoize.Cache`
 * constructor with one whose instances implement the
 * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
 * method interface of `clear`, `delete`, `get`, `has`, and `set`.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Function
 * @param {Function} func The function to have its output memoized.
 * @param {Function} [resolver] The function to resolve the cache key.
 * @returns {Function} Returns the new memoized function.
 * @example
 *
 * var object = { 'a': 1, 'b': 2 };
 * var other = { 'c': 3, 'd': 4 };
 *
 * var values = _.memoize(_.values);
 * values(object);
 * // => [1, 2]
 *
 * values(other);
 * // => [3, 4]
 *
 * object.a = 2;
 * values(object);
 * // => [1, 2]
 *
 * // Modify the result cache.
 * values.cache.set(object, ['a', 'b']);
 * values(object);
 * // => ['a', 'b']
 *
 * // Replace `_.memoize.Cache`.
 * _.memoize.Cache = WeakMap;
 */
function memoize(func, resolver) {
  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  var memoized = function() {
    var args = arguments,
        key = resolver ? resolver.apply(this, args) : args[0],
        cache = memoized.cache;

    if (cache.has(key)) {
      return cache.get(key);
    }
    var result = func.apply(this, args);
    memoized.cache = cache.set(key, result) || cache;
    return result;
  };
  memoized.cache = new (memoize.Cache || MapCache);
  return memoized;
}

// Expose `MapCache`.
memoize.Cache = MapCache;

module.exports = memoize;


/***/ }),

/***/ "./node_modules/lodash/merge.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/merge.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseMerge = __webpack_require__(/*! ./_baseMerge */ "./node_modules/lodash/_baseMerge.js"),
    createAssigner = __webpack_require__(/*! ./_createAssigner */ "./node_modules/lodash/_createAssigner.js");

/**
 * This method is like `_.assign` except that it recursively merges own and
 * inherited enumerable string keyed properties of source objects into the
 * destination object. Source properties that resolve to `undefined` are
 * skipped if a destination value exists. Array and plain object properties
 * are merged recursively. Other objects and value types are overridden by
 * assignment. Source objects are applied from left to right. Subsequent
 * sources overwrite property assignments of previous sources.
 *
 * **Note:** This method mutates `object`.
 *
 * @static
 * @memberOf _
 * @since 0.5.0
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @example
 *
 * var object = {
 *   'a': [{ 'b': 2 }, { 'd': 4 }]
 * };
 *
 * var other = {
 *   'a': [{ 'c': 3 }, { 'e': 5 }]
 * };
 *
 * _.merge(object, other);
 * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
 */
var merge = createAssigner(function(object, source, srcIndex) {
  baseMerge(object, source, srcIndex);
});

module.exports = merge;


/***/ }),

/***/ "./node_modules/lodash/noop.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/noop.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This method returns `undefined`.
 *
 * @static
 * @memberOf _
 * @since 2.3.0
 * @category Util
 * @example
 *
 * _.times(2, _.noop);
 * // => [undefined, undefined]
 */
function noop() {
  // No operation performed.
}

module.exports = noop;


/***/ }),

/***/ "./node_modules/lodash/now.js":
/*!************************************!*\
  !*** ./node_modules/lodash/now.js ***!
  \************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__(/*! ./_root */ "./node_modules/lodash/_root.js");

/**
 * Gets the timestamp of the number of milliseconds that have elapsed since
 * the Unix epoch (1 January 1970 00:00:00 UTC).
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Date
 * @returns {number} Returns the timestamp.
 * @example
 *
 * _.defer(function(stamp) {
 *   console.log(_.now() - stamp);
 * }, _.now());
 * // => Logs the number of milliseconds it took for the deferred invocation.
 */
var now = function() {
  return root.Date.now();
};

module.exports = now;


/***/ }),

/***/ "./node_modules/lodash/omit.js":
/*!*************************************!*\
  !*** ./node_modules/lodash/omit.js ***!
  \*************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayMap = __webpack_require__(/*! ./_arrayMap */ "./node_modules/lodash/_arrayMap.js"),
    baseClone = __webpack_require__(/*! ./_baseClone */ "./node_modules/lodash/_baseClone.js"),
    baseUnset = __webpack_require__(/*! ./_baseUnset */ "./node_modules/lodash/_baseUnset.js"),
    castPath = __webpack_require__(/*! ./_castPath */ "./node_modules/lodash/_castPath.js"),
    copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    customOmitClone = __webpack_require__(/*! ./_customOmitClone */ "./node_modules/lodash/_customOmitClone.js"),
    flatRest = __webpack_require__(/*! ./_flatRest */ "./node_modules/lodash/_flatRest.js"),
    getAllKeysIn = __webpack_require__(/*! ./_getAllKeysIn */ "./node_modules/lodash/_getAllKeysIn.js");

/** Used to compose bitmasks for cloning. */
var CLONE_DEEP_FLAG = 1,
    CLONE_FLAT_FLAG = 2,
    CLONE_SYMBOLS_FLAG = 4;

/**
 * The opposite of `_.pick`; this method creates an object composed of the
 * own and inherited enumerable property paths of `object` that are not omitted.
 *
 * **Note:** This method is considerably slower than `_.pick`.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The source object.
 * @param {...(string|string[])} [paths] The property paths to omit.
 * @returns {Object} Returns the new object.
 * @example
 *
 * var object = { 'a': 1, 'b': '2', 'c': 3 };
 *
 * _.omit(object, ['a', 'c']);
 * // => { 'b': '2' }
 */
var omit = flatRest(function(object, paths) {
  var result = {};
  if (object == null) {
    return result;
  }
  var isDeep = false;
  paths = arrayMap(paths, function(path) {
    path = castPath(path, object);
    isDeep || (isDeep = path.length > 1);
    return path;
  });
  copyObject(object, getAllKeysIn(object), result);
  if (isDeep) {
    result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);
  }
  var length = paths.length;
  while (length--) {
    baseUnset(result, paths[length]);
  }
  return result;
});

module.exports = omit;


/***/ }),

/***/ "./node_modules/lodash/pickBy.js":
/*!***************************************!*\
  !*** ./node_modules/lodash/pickBy.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var arrayMap = __webpack_require__(/*! ./_arrayMap */ "./node_modules/lodash/_arrayMap.js"),
    baseIteratee = __webpack_require__(/*! ./_baseIteratee */ "./node_modules/lodash/_baseIteratee.js"),
    basePickBy = __webpack_require__(/*! ./_basePickBy */ "./node_modules/lodash/_basePickBy.js"),
    getAllKeysIn = __webpack_require__(/*! ./_getAllKeysIn */ "./node_modules/lodash/_getAllKeysIn.js");

/**
 * Creates an object composed of the `object` properties `predicate` returns
 * truthy for. The predicate is invoked with two arguments: (value, key).
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Object
 * @param {Object} object The source object.
 * @param {Function} [predicate=_.identity] The function invoked per property.
 * @returns {Object} Returns the new object.
 * @example
 *
 * var object = { 'a': 1, 'b': '2', 'c': 3 };
 *
 * _.pickBy(object, _.isNumber);
 * // => { 'a': 1, 'c': 3 }
 */
function pickBy(object, predicate) {
  if (object == null) {
    return {};
  }
  var props = arrayMap(getAllKeysIn(object), function(prop) {
    return [prop];
  });
  predicate = baseIteratee(predicate);
  return basePickBy(object, props, function(value, path) {
    return predicate(value, path[0]);
  });
}

module.exports = pickBy;


/***/ }),

/***/ "./node_modules/lodash/property.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/property.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseProperty = __webpack_require__(/*! ./_baseProperty */ "./node_modules/lodash/_baseProperty.js"),
    basePropertyDeep = __webpack_require__(/*! ./_basePropertyDeep */ "./node_modules/lodash/_basePropertyDeep.js"),
    isKey = __webpack_require__(/*! ./_isKey */ "./node_modules/lodash/_isKey.js"),
    toKey = __webpack_require__(/*! ./_toKey */ "./node_modules/lodash/_toKey.js");

/**
 * Creates a function that returns the value at `path` of a given object.
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Util
 * @param {Array|string} path The path of the property to get.
 * @returns {Function} Returns the new accessor function.
 * @example
 *
 * var objects = [
 *   { 'a': { 'b': 2 } },
 *   { 'a': { 'b': 1 } }
 * ];
 *
 * _.map(objects, _.property('a.b'));
 * // => [2, 1]
 *
 * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
 * // => [1, 2]
 */
function property(path) {
  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
}

module.exports = property;


/***/ }),

/***/ "./node_modules/lodash/stubArray.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/stubArray.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This method returns a new empty array.
 *
 * @static
 * @memberOf _
 * @since 4.13.0
 * @category Util
 * @returns {Array} Returns the new empty array.
 * @example
 *
 * var arrays = _.times(2, _.stubArray);
 *
 * console.log(arrays);
 * // => [[], []]
 *
 * console.log(arrays[0] === arrays[1]);
 * // => false
 */
function stubArray() {
  return [];
}

module.exports = stubArray;


/***/ }),

/***/ "./node_modules/lodash/stubFalse.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/stubFalse.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
 * This method returns `false`.
 *
 * @static
 * @memberOf _
 * @since 4.13.0
 * @category Util
 * @returns {boolean} Returns `false`.
 * @example
 *
 * _.times(2, _.stubFalse);
 * // => [false, false]
 */
function stubFalse() {
  return false;
}

module.exports = stubFalse;


/***/ }),

/***/ "./node_modules/lodash/times.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/times.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseTimes = __webpack_require__(/*! ./_baseTimes */ "./node_modules/lodash/_baseTimes.js"),
    castFunction = __webpack_require__(/*! ./_castFunction */ "./node_modules/lodash/_castFunction.js"),
    toInteger = __webpack_require__(/*! ./toInteger */ "./node_modules/lodash/toInteger.js");

/** Used as references for various `Number` constants. */
var MAX_SAFE_INTEGER = 9007199254740991;

/** Used as references for the maximum length and index of an array. */
var MAX_ARRAY_LENGTH = 4294967295;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMin = Math.min;

/**
 * Invokes the iteratee `n` times, returning an array of the results of
 * each invocation. The iteratee is invoked with one argument; (index).
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Util
 * @param {number} n The number of times to invoke `iteratee`.
 * @param {Function} [iteratee=_.identity] The function invoked per iteration.
 * @returns {Array} Returns the array of results.
 * @example
 *
 * _.times(3, String);
 * // => ['0', '1', '2']
 *
 *  _.times(4, _.constant(0));
 * // => [0, 0, 0, 0]
 */
function times(n, iteratee) {
  n = toInteger(n);
  if (n < 1 || n > MAX_SAFE_INTEGER) {
    return [];
  }
  var index = MAX_ARRAY_LENGTH,
      length = nativeMin(n, MAX_ARRAY_LENGTH);

  iteratee = castFunction(iteratee);
  n -= MAX_ARRAY_LENGTH;

  var result = baseTimes(length, iteratee);
  while (++index < n) {
    iteratee(index);
  }
  return result;
}

module.exports = times;


/***/ }),

/***/ "./node_modules/lodash/toFinite.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/toFinite.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var toNumber = __webpack_require__(/*! ./toNumber */ "./node_modules/lodash/toNumber.js");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0,
    MAX_INTEGER = 1.7976931348623157e+308;

/**
 * Converts `value` to a finite number.
 *
 * @static
 * @memberOf _
 * @since 4.12.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {number} Returns the converted number.
 * @example
 *
 * _.toFinite(3.2);
 * // => 3.2
 *
 * _.toFinite(Number.MIN_VALUE);
 * // => 5e-324
 *
 * _.toFinite(Infinity);
 * // => 1.7976931348623157e+308
 *
 * _.toFinite('3.2');
 * // => 3.2
 */
function toFinite(value) {
  if (!value) {
    return value === 0 ? value : 0;
  }
  value = toNumber(value);
  if (value === INFINITY || value === -INFINITY) {
    var sign = (value < 0 ? -1 : 1);
    return sign * MAX_INTEGER;
  }
  return value === value ? value : 0;
}

module.exports = toFinite;


/***/ }),

/***/ "./node_modules/lodash/toInteger.js":
/*!******************************************!*\
  !*** ./node_modules/lodash/toInteger.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var toFinite = __webpack_require__(/*! ./toFinite */ "./node_modules/lodash/toFinite.js");

/**
 * Converts `value` to an integer.
 *
 * **Note:** This method is loosely based on
 * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {number} Returns the converted integer.
 * @example
 *
 * _.toInteger(3.2);
 * // => 3
 *
 * _.toInteger(Number.MIN_VALUE);
 * // => 0
 *
 * _.toInteger(Infinity);
 * // => 1.7976931348623157e+308
 *
 * _.toInteger('3.2');
 * // => 3
 */
function toInteger(value) {
  var result = toFinite(value),
      remainder = result % 1;

  return result === result ? (remainder ? result - remainder : result) : 0;
}

module.exports = toInteger;


/***/ }),

/***/ "./node_modules/lodash/toNumber.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/toNumber.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__(/*! ./isObject */ "./node_modules/lodash/isObject.js"),
    isSymbol = __webpack_require__(/*! ./isSymbol */ "./node_modules/lodash/isSymbol.js");

/** Used as references for various `Number` constants. */
var NAN = 0 / 0;

/** Used to match leading and trailing whitespace. */
var reTrim = /^\s+|\s+$/g;

/** Used to detect bad signed hexadecimal string values. */
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;

/** Used to detect binary string values. */
var reIsBinary = /^0b[01]+$/i;

/** Used to detect octal string values. */
var reIsOctal = /^0o[0-7]+$/i;

/** Built-in method references without a dependency on `root`. */
var freeParseInt = parseInt;

/**
 * Converts `value` to a number.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to process.
 * @returns {number} Returns the number.
 * @example
 *
 * _.toNumber(3.2);
 * // => 3.2
 *
 * _.toNumber(Number.MIN_VALUE);
 * // => 5e-324
 *
 * _.toNumber(Infinity);
 * // => Infinity
 *
 * _.toNumber('3.2');
 * // => 3.2
 */
function toNumber(value) {
  if (typeof value == 'number') {
    return value;
  }
  if (isSymbol(value)) {
    return NAN;
  }
  if (isObject(value)) {
    var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
    value = isObject(other) ? (other + '') : other;
  }
  if (typeof value != 'string') {
    return value === 0 ? value : +value;
  }
  value = value.replace(reTrim, '');
  var isBinary = reIsBinary.test(value);
  return (isBinary || reIsOctal.test(value))
    ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
    : (reIsBadHex.test(value) ? NAN : +value);
}

module.exports = toNumber;


/***/ }),

/***/ "./node_modules/lodash/toPlainObject.js":
/*!**********************************************!*\
  !*** ./node_modules/lodash/toPlainObject.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__(/*! ./_copyObject */ "./node_modules/lodash/_copyObject.js"),
    keysIn = __webpack_require__(/*! ./keysIn */ "./node_modules/lodash/keysIn.js");

/**
 * Converts `value` to a plain object flattening inherited enumerable string
 * keyed properties of `value` to own properties of the plain object.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {Object} Returns the converted plain object.
 * @example
 *
 * function Foo() {
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.assign({ 'a': 1 }, new Foo);
 * // => { 'a': 1, 'b': 2 }
 *
 * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
 * // => { 'a': 1, 'b': 2, 'c': 3 }
 */
function toPlainObject(value) {
  return copyObject(value, keysIn(value));
}

module.exports = toPlainObject;


/***/ }),

/***/ "./node_modules/lodash/toString.js":
/*!*****************************************!*\
  !*** ./node_modules/lodash/toString.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseToString = __webpack_require__(/*! ./_baseToString */ "./node_modules/lodash/_baseToString.js");

/**
 * Converts `value` to a string. An empty string is returned for `null`
 * and `undefined` values. The sign of `-0` is preserved.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {string} Returns the converted string.
 * @example
 *
 * _.toString(null);
 * // => ''
 *
 * _.toString(-0);
 * // => '-0'
 *
 * _.toString([1, 2, 3]);
 * // => '1,2,3'
 */
function toString(value) {
  return value == null ? '' : baseToString(value);
}

module.exports = toString;


/***/ }),

/***/ "./node_modules/lodash/union.js":
/*!**************************************!*\
  !*** ./node_modules/lodash/union.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var baseFlatten = __webpack_require__(/*! ./_baseFlatten */ "./node_modules/lodash/_baseFlatten.js"),
    baseRest = __webpack_require__(/*! ./_baseRest */ "./node_modules/lodash/_baseRest.js"),
    baseUniq = __webpack_require__(/*! ./_baseUniq */ "./node_modules/lodash/_baseUniq.js"),
    isArrayLikeObject = __webpack_require__(/*! ./isArrayLikeObject */ "./node_modules/lodash/isArrayLikeObject.js");

/**
 * Creates an array of unique values, in order, from all given arrays using
 * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
 * for equality comparisons.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Array
 * @param {...Array} [arrays] The arrays to inspect.
 * @returns {Array} Returns the new array of combined values.
 * @example
 *
 * _.union([2], [1, 2]);
 * // => [2, 1]
 */
var union = baseRest(function(arrays) {
  return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));
});

module.exports = union;


/***/ }),

/***/ "./node_modules/masonry-layout/masonry.js":
/*!************************************************!*\
  !*** ./node_modules/masonry-layout/masonry.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * Masonry v4.2.2
 * Cascading grid layout library
 * https://masonry.desandro.com
 * MIT License
 * by David DeSandro
 */

( function( window, factory ) {
  // universal module definition
  /* jshint strict: false */ /*globals define, module, require */
  if ( true ) {
    // AMD
    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
        __webpack_require__(/*! outlayer/outlayer */ "./node_modules/outlayer/outlayer.js"),
        __webpack_require__(/*! get-size/get-size */ "./node_modules/get-size/get-size.js")
      ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( window, function factory( Outlayer, getSize ) {

'use strict';

// -------------------------- masonryDefinition -------------------------- //

  // create an Outlayer layout class
  var Masonry = Outlayer.create('masonry');
  // isFitWidth -> fitWidth
  Masonry.compatOptions.fitWidth = 'isFitWidth';

  var proto = Masonry.prototype;

  proto._resetLayout = function() {
    this.getSize();
    this._getMeasurement( 'columnWidth', 'outerWidth' );
    this._getMeasurement( 'gutter', 'outerWidth' );
    this.measureColumns();

    // reset column Y
    this.colYs = [];
    for ( var i=0; i < this.cols; i++ ) {
      this.colYs.push( 0 );
    }

    this.maxY = 0;
    this.horizontalColIndex = 0;
  };

  proto.measureColumns = function() {
    this.getContainerWidth();
    // if columnWidth is 0, default to outerWidth of first item
    if ( !this.columnWidth ) {
      var firstItem = this.items[0];
      var firstItemElem = firstItem && firstItem.element;
      // columnWidth fall back to item of first element
      this.columnWidth = firstItemElem && getSize( firstItemElem ).outerWidth ||
        // if first elem has no width, default to size of container
        this.containerWidth;
    }

    var columnWidth = this.columnWidth += this.gutter;

    // calculate columns
    var containerWidth = this.containerWidth + this.gutter;
    var cols = containerWidth / columnWidth;
    // fix rounding errors, typically with gutters
    var excess = columnWidth - containerWidth % columnWidth;
    // if overshoot is less than a pixel, round up, otherwise floor it
    var mathMethod = excess && excess < 1 ? 'round' : 'floor';
    cols = Math[ mathMethod ]( cols );
    this.cols = Math.max( cols, 1 );
  };

  proto.getContainerWidth = function() {
    // container is parent if fit width
    var isFitWidth = this._getOption('fitWidth');
    var container = isFitWidth ? this.element.parentNode : this.element;
    // check that this.size and size are there
    // IE8 triggers resize on body size change, so they might not be
    var size = getSize( container );
    this.containerWidth = size && size.innerWidth;
  };

  proto._getItemLayoutPosition = function( item ) {
    item.getSize();
    // how many columns does this brick span
    var remainder = item.size.outerWidth % this.columnWidth;
    var mathMethod = remainder && remainder < 1 ? 'round' : 'ceil';
    // round if off by 1 pixel, otherwise use ceil
    var colSpan = Math[ mathMethod ]( item.size.outerWidth / this.columnWidth );
    colSpan = Math.min( colSpan, this.cols );
    // use horizontal or top column position
    var colPosMethod = this.options.horizontalOrder ?
      '_getHorizontalColPosition' : '_getTopColPosition';
    var colPosition = this[ colPosMethod ]( colSpan, item );
    // position the brick
    var position = {
      x: this.columnWidth * colPosition.col,
      y: colPosition.y
    };
    // apply setHeight to necessary columns
    var setHeight = colPosition.y + item.size.outerHeight;
    var setMax = colSpan + colPosition.col;
    for ( var i = colPosition.col; i < setMax; i++ ) {
      this.colYs[i] = setHeight;
    }

    return position;
  };

  proto._getTopColPosition = function( colSpan ) {
    var colGroup = this._getTopColGroup( colSpan );
    // get the minimum Y value from the columns
    var minimumY = Math.min.apply( Math, colGroup );

    return {
      col: colGroup.indexOf( minimumY ),
      y: minimumY,
    };
  };

  /**
   * @param {Number} colSpan - number of columns the element spans
   * @returns {Array} colGroup
   */
  proto._getTopColGroup = function( colSpan ) {
    if ( colSpan < 2 ) {
      // if brick spans only one column, use all the column Ys
      return this.colYs;
    }

    var colGroup = [];
    // how many different places could this brick fit horizontally
    var groupCount = this.cols + 1 - colSpan;
    // for each group potential horizontal position
    for ( var i = 0; i < groupCount; i++ ) {
      colGroup[i] = this._getColGroupY( i, colSpan );
    }
    return colGroup;
  };

  proto._getColGroupY = function( col, colSpan ) {
    if ( colSpan < 2 ) {
      return this.colYs[ col ];
    }
    // make an array of colY values for that one group
    var groupColYs = this.colYs.slice( col, col + colSpan );
    // and get the max value of the array
    return Math.max.apply( Math, groupColYs );
  };

  // get column position based on horizontal index. #873
  proto._getHorizontalColPosition = function( colSpan, item ) {
    var col = this.horizontalColIndex % this.cols;
    var isOver = colSpan > 1 && col + colSpan > this.cols;
    // shift to next row if item can't fit on current row
    col = isOver ? 0 : col;
    // don't let zero-size items take up space
    var hasSize = item.size.outerWidth && item.size.outerHeight;
    this.horizontalColIndex = hasSize ? col + colSpan : this.horizontalColIndex;

    return {
      col: col,
      y: this._getColGroupY( col, colSpan ),
    };
  };

  proto._manageStamp = function( stamp ) {
    var stampSize = getSize( stamp );
    var offset = this._getElementOffset( stamp );
    // get the columns that this stamp affects
    var isOriginLeft = this._getOption('originLeft');
    var firstX = isOriginLeft ? offset.left : offset.right;
    var lastX = firstX + stampSize.outerWidth;
    var firstCol = Math.floor( firstX / this.columnWidth );
    firstCol = Math.max( 0, firstCol );
    var lastCol = Math.floor( lastX / this.columnWidth );
    // lastCol should not go over if multiple of columnWidth #425
    lastCol -= lastX % this.columnWidth ? 0 : 1;
    lastCol = Math.min( this.cols - 1, lastCol );
    // set colYs to bottom of the stamp

    var isOriginTop = this._getOption('originTop');
    var stampMaxY = ( isOriginTop ? offset.top : offset.bottom ) +
      stampSize.outerHeight;
    for ( var i = firstCol; i <= lastCol; i++ ) {
      this.colYs[i] = Math.max( stampMaxY, this.colYs[i] );
    }
  };

  proto._getContainerSize = function() {
    this.maxY = Math.max.apply( Math, this.colYs );
    var size = {
      height: this.maxY
    };

    if ( this._getOption('fitWidth') ) {
      size.width = this._getContainerFitWidth();
    }

    return size;
  };

  proto._getContainerFitWidth = function() {
    var unusedCols = 0;
    // count unused columns
    var i = this.cols;
    while ( --i ) {
      if ( this.colYs[i] !== 0 ) {
        break;
      }
      unusedCols++;
    }
    // fit container to columns that have been used
    return ( this.cols - unusedCols ) * this.columnWidth - this.gutter;
  };

  proto.needsResizeLayout = function() {
    var previousWidth = this.containerWidth;
    this.getContainerWidth();
    return previousWidth != this.containerWidth;
  };

  return Masonry;

}));


/***/ }),

/***/ "./node_modules/memize/index.js":
/*!**************************************!*\
  !*** ./node_modules/memize/index.js ***!
  \**************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/**
 * Memize options object.
 *
 * @typedef MemizeOptions
 *
 * @property {number} [maxSize] Maximum size of the cache.
 */

/**
 * Internal cache entry.
 *
 * @typedef MemizeCacheNode
 *
 * @property {?MemizeCacheNode|undefined} [prev] Previous node.
 * @property {?MemizeCacheNode|undefined} [next] Next node.
 * @property {Array<*>}                   args   Function arguments for cache
 *                                               entry.
 * @property {*}                          val    Function result.
 */

/**
 * Properties of the enhanced function for controlling cache.
 *
 * @typedef MemizeMemoizedFunction
 *
 * @property {()=>void} clear Clear the cache.
 */

/**
 * Accepts a function to be memoized, and returns a new memoized function, with
 * optional options.
 *
 * @template {Function} F
 *
 * @param {F}             fn        Function to memoize.
 * @param {MemizeOptions} [options] Options object.
 *
 * @return {F & MemizeMemoizedFunction} Memoized function.
 */
function memize( fn, options ) {
	var size = 0;

	/** @type {?MemizeCacheNode|undefined} */
	var head;

	/** @type {?MemizeCacheNode|undefined} */
	var tail;

	options = options || {};

	function memoized( /* ...args */ ) {
		var node = head,
			len = arguments.length,
			args, i;

		searchCache: while ( node ) {
			// Perform a shallow equality test to confirm that whether the node
			// under test is a candidate for the arguments passed. Two arrays
			// are shallowly equal if their length matches and each entry is
			// strictly equal between the two sets. Avoid abstracting to a
			// function which could incur an arguments leaking deoptimization.

			// Check whether node arguments match arguments length
			if ( node.args.length !== arguments.length ) {
				node = node.next;
				continue;
			}

			// Check whether node arguments match arguments values
			for ( i = 0; i < len; i++ ) {
				if ( node.args[ i ] !== arguments[ i ] ) {
					node = node.next;
					continue searchCache;
				}
			}

			// At this point we can assume we've found a match

			// Surface matched node to head if not already
			if ( node !== head ) {
				// As tail, shift to previous. Must only shift if not also
				// head, since if both head and tail, there is no previous.
				if ( node === tail ) {
					tail = node.prev;
				}

				// Adjust siblings to point to each other. If node was tail,
				// this also handles new tail's empty `next` assignment.
				/** @type {MemizeCacheNode} */ ( node.prev ).next = node.next;
				if ( node.next ) {
					node.next.prev = node.prev;
				}

				node.next = head;
				node.prev = null;
				/** @type {MemizeCacheNode} */ ( head ).prev = node;
				head = node;
			}

			// Return immediately
			return node.val;
		}

		// No cached value found. Continue to insertion phase:

		// Create a copy of arguments (avoid leaking deoptimization)
		args = new Array( len );
		for ( i = 0; i < len; i++ ) {
			args[ i ] = arguments[ i ];
		}

		node = {
			args: args,

			// Generate the result from original function
			val: fn.apply( null, args ),
		};

		// Don't need to check whether node is already head, since it would
		// have been returned above already if it was

		// Shift existing head down list
		if ( head ) {
			head.prev = node;
			node.next = head;
		} else {
			// If no head, follows that there's no tail (at initial or reset)
			tail = node;
		}

		// Trim tail if we're reached max size and are pending cache insertion
		if ( size === /** @type {MemizeOptions} */ ( options ).maxSize ) {
			tail = /** @type {MemizeCacheNode} */ ( tail ).prev;
			/** @type {MemizeCacheNode} */ ( tail ).next = null;
		} else {
			size++;
		}

		head = node;

		return node.val;
	}

	memoized.clear = function() {
		head = null;
		tail = null;
		size = 0;
	};

	if ( false ) {}

	// Ignore reason: There's not a clear solution to create an intersection of
	// the function with additional properties, where the goal is to retain the
	// function signature of the incoming argument and add control properties
	// on the return value.

	// @ts-ignore
	return memoized;
}

module.exports = memize;


/***/ }),

/***/ "./node_modules/object-assign/index.js":
/*!*********************************************!*\
  !*** ./node_modules/object-assign/index.js ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/*
object-assign
(c) Sindre Sorhus
@license MIT
*/


/* eslint-disable no-unused-vars */
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
var hasOwnProperty = Object.prototype.hasOwnProperty;
var propIsEnumerable = Object.prototype.propertyIsEnumerable;

function toObject(val) {
	if (val === null || val === undefined) {
		throw new TypeError('Object.assign cannot be called with null or undefined');
	}

	return Object(val);
}

function shouldUseNative() {
	try {
		if (!Object.assign) {
			return false;
		}

		// Detect buggy property enumeration order in older V8 versions.

		// https://bugs.chromium.org/p/v8/issues/detail?id=4118
		var test1 = new String('abc');  // eslint-disable-line no-new-wrappers
		test1[5] = 'de';
		if (Object.getOwnPropertyNames(test1)[0] === '5') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test2 = {};
		for (var i = 0; i < 10; i++) {
			test2['_' + String.fromCharCode(i)] = i;
		}
		var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
			return test2[n];
		});
		if (order2.join('') !== '0123456789') {
			return false;
		}

		// https://bugs.chromium.org/p/v8/issues/detail?id=3056
		var test3 = {};
		'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
			test3[letter] = letter;
		});
		if (Object.keys(Object.assign({}, test3)).join('') !==
				'abcdefghijklmnopqrst') {
			return false;
		}

		return true;
	} catch (err) {
		// We don't expect any of the above to throw, but better to be safe.
		return false;
	}
}

module.exports = shouldUseNative() ? Object.assign : function (target, source) {
	var from;
	var to = toObject(target);
	var symbols;

	for (var s = 1; s < arguments.length; s++) {
		from = Object(arguments[s]);

		for (var key in from) {
			if (hasOwnProperty.call(from, key)) {
				to[key] = from[key];
			}
		}

		if (getOwnPropertySymbols) {
			symbols = getOwnPropertySymbols(from);
			for (var i = 0; i < symbols.length; i++) {
				if (propIsEnumerable.call(from, symbols[i])) {
					to[symbols[i]] = from[symbols[i]];
				}
			}
		}
	}

	return to;
};


/***/ }),

/***/ "./node_modules/outlayer/item.js":
/*!***************************************!*\
  !*** ./node_modules/outlayer/item.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/**
 * Outlayer Item
 */

( function( window, factory ) {
  // universal module definition
  /* jshint strict: false */ /* globals define, module, require */
  if ( true ) {
    // AMD - RequireJS
    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
        __webpack_require__(/*! ev-emitter/ev-emitter */ "./node_modules/ev-emitter/ev-emitter.js"),
        __webpack_require__(/*! get-size/get-size */ "./node_modules/get-size/get-size.js")
      ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( window, function factory( EvEmitter, getSize ) {
'use strict';

// ----- helpers ----- //

function isEmptyObj( obj ) {
  for ( var prop in obj ) {
    return false;
  }
  prop = null;
  return true;
}

// -------------------------- CSS3 support -------------------------- //


var docElemStyle = document.documentElement.style;

var transitionProperty = typeof docElemStyle.transition == 'string' ?
  'transition' : 'WebkitTransition';
var transformProperty = typeof docElemStyle.transform == 'string' ?
  'transform' : 'WebkitTransform';

var transitionEndEvent = {
  WebkitTransition: 'webkitTransitionEnd',
  transition: 'transitionend'
}[ transitionProperty ];

// cache all vendor properties that could have vendor prefix
var vendorProperties = {
  transform: transformProperty,
  transition: transitionProperty,
  transitionDuration: transitionProperty + 'Duration',
  transitionProperty: transitionProperty + 'Property',
  transitionDelay: transitionProperty + 'Delay'
};

// -------------------------- Item -------------------------- //

function Item( element, layout ) {
  if ( !element ) {
    return;
  }

  this.element = element;
  // parent layout class, i.e. Masonry, Isotope, or Packery
  this.layout = layout;
  this.position = {
    x: 0,
    y: 0
  };

  this._create();
}

// inherit EvEmitter
var proto = Item.prototype = Object.create( EvEmitter.prototype );
proto.constructor = Item;

proto._create = function() {
  // transition objects
  this._transn = {
    ingProperties: {},
    clean: {},
    onEnd: {}
  };

  this.css({
    position: 'absolute'
  });
};

// trigger specified handler for event type
proto.handleEvent = function( event ) {
  var method = 'on' + event.type;
  if ( this[ method ] ) {
    this[ method ]( event );
  }
};

proto.getSize = function() {
  this.size = getSize( this.element );
};

/**
 * apply CSS styles to element
 * @param {Object} style
 */
proto.css = function( style ) {
  var elemStyle = this.element.style;

  for ( var prop in style ) {
    // use vendor property if available
    var supportedProp = vendorProperties[ prop ] || prop;
    elemStyle[ supportedProp ] = style[ prop ];
  }
};

 // measure position, and sets it
proto.getPosition = function() {
  var style = getComputedStyle( this.element );
  var isOriginLeft = this.layout._getOption('originLeft');
  var isOriginTop = this.layout._getOption('originTop');
  var xValue = style[ isOriginLeft ? 'left' : 'right' ];
  var yValue = style[ isOriginTop ? 'top' : 'bottom' ];
  var x = parseFloat( xValue );
  var y = parseFloat( yValue );
  // convert percent to pixels
  var layoutSize = this.layout.size;
  if ( xValue.indexOf('%') != -1 ) {
    x = ( x / 100 ) * layoutSize.width;
  }
  if ( yValue.indexOf('%') != -1 ) {
    y = ( y / 100 ) * layoutSize.height;
  }
  // clean up 'auto' or other non-integer values
  x = isNaN( x ) ? 0 : x;
  y = isNaN( y ) ? 0 : y;
  // remove padding from measurement
  x -= isOriginLeft ? layoutSize.paddingLeft : layoutSize.paddingRight;
  y -= isOriginTop ? layoutSize.paddingTop : layoutSize.paddingBottom;

  this.position.x = x;
  this.position.y = y;
};

// set settled position, apply padding
proto.layoutPosition = function() {
  var layoutSize = this.layout.size;
  var style = {};
  var isOriginLeft = this.layout._getOption('originLeft');
  var isOriginTop = this.layout._getOption('originTop');

  // x
  var xPadding = isOriginLeft ? 'paddingLeft' : 'paddingRight';
  var xProperty = isOriginLeft ? 'left' : 'right';
  var xResetProperty = isOriginLeft ? 'right' : 'left';

  var x = this.position.x + layoutSize[ xPadding ];
  // set in percentage or pixels
  style[ xProperty ] = this.getXValue( x );
  // reset other property
  style[ xResetProperty ] = '';

  // y
  var yPadding = isOriginTop ? 'paddingTop' : 'paddingBottom';
  var yProperty = isOriginTop ? 'top' : 'bottom';
  var yResetProperty = isOriginTop ? 'bottom' : 'top';

  var y = this.position.y + layoutSize[ yPadding ];
  // set in percentage or pixels
  style[ yProperty ] = this.getYValue( y );
  // reset other property
  style[ yResetProperty ] = '';

  this.css( style );
  this.emitEvent( 'layout', [ this ] );
};

proto.getXValue = function( x ) {
  var isHorizontal = this.layout._getOption('horizontal');
  return this.layout.options.percentPosition && !isHorizontal ?
    ( ( x / this.layout.size.width ) * 100 ) + '%' : x + 'px';
};

proto.getYValue = function( y ) {
  var isHorizontal = this.layout._getOption('horizontal');
  return this.layout.options.percentPosition && isHorizontal ?
    ( ( y / this.layout.size.height ) * 100 ) + '%' : y + 'px';
};

proto._transitionTo = function( x, y ) {
  this.getPosition();
  // get current x & y from top/left
  var curX = this.position.x;
  var curY = this.position.y;

  var didNotMove = x == this.position.x && y == this.position.y;

  // save end position
  this.setPosition( x, y );

  // if did not move and not transitioning, just go to layout
  if ( didNotMove && !this.isTransitioning ) {
    this.layoutPosition();
    return;
  }

  var transX = x - curX;
  var transY = y - curY;
  var transitionStyle = {};
  transitionStyle.transform = this.getTranslate( transX, transY );

  this.transition({
    to: transitionStyle,
    onTransitionEnd: {
      transform: this.layoutPosition
    },
    isCleaning: true
  });
};

proto.getTranslate = function( x, y ) {
  // flip cooridinates if origin on right or bottom
  var isOriginLeft = this.layout._getOption('originLeft');
  var isOriginTop = this.layout._getOption('originTop');
  x = isOriginLeft ? x : -x;
  y = isOriginTop ? y : -y;
  return 'translate3d(' + x + 'px, ' + y + 'px, 0)';
};

// non transition + transform support
proto.goTo = function( x, y ) {
  this.setPosition( x, y );
  this.layoutPosition();
};

proto.moveTo = proto._transitionTo;

proto.setPosition = function( x, y ) {
  this.position.x = parseFloat( x );
  this.position.y = parseFloat( y );
};

// ----- transition ----- //

/**
 * @param {Object} style - CSS
 * @param {Function} onTransitionEnd
 */

// non transition, just trigger callback
proto._nonTransition = function( args ) {
  this.css( args.to );
  if ( args.isCleaning ) {
    this._removeStyles( args.to );
  }
  for ( var prop in args.onTransitionEnd ) {
    args.onTransitionEnd[ prop ].call( this );
  }
};

/**
 * proper transition
 * @param {Object} args - arguments
 *   @param {Object} to - style to transition to
 *   @param {Object} from - style to start transition from
 *   @param {Boolean} isCleaning - removes transition styles after transition
 *   @param {Function} onTransitionEnd - callback
 */
proto.transition = function( args ) {
  // redirect to nonTransition if no transition duration
  if ( !parseFloat( this.layout.options.transitionDuration ) ) {
    this._nonTransition( args );
    return;
  }

  var _transition = this._transn;
  // keep track of onTransitionEnd callback by css property
  for ( var prop in args.onTransitionEnd ) {
    _transition.onEnd[ prop ] = args.onTransitionEnd[ prop ];
  }
  // keep track of properties that are transitioning
  for ( prop in args.to ) {
    _transition.ingProperties[ prop ] = true;
    // keep track of properties to clean up when transition is done
    if ( args.isCleaning ) {
      _transition.clean[ prop ] = true;
    }
  }

  // set from styles
  if ( args.from ) {
    this.css( args.from );
    // force redraw. http://blog.alexmaccaw.com/css-transitions
    var h = this.element.offsetHeight;
    // hack for JSHint to hush about unused var
    h = null;
  }
  // enable transition
  this.enableTransition( args.to );
  // set styles that are transitioning
  this.css( args.to );

  this.isTransitioning = true;

};

// dash before all cap letters, including first for
// WebkitTransform => -webkit-transform
function toDashedAll( str ) {
  return str.replace( /([A-Z])/g, function( $1 ) {
    return '-' + $1.toLowerCase();
  });
}

var transitionProps = 'opacity,' + toDashedAll( transformProperty );

proto.enableTransition = function(/* style */) {
  // HACK changing transitionProperty during a transition
  // will cause transition to jump
  if ( this.isTransitioning ) {
    return;
  }

  // make `transition: foo, bar, baz` from style object
  // HACK un-comment this when enableTransition can work
  // while a transition is happening
  // var transitionValues = [];
  // for ( var prop in style ) {
  //   // dash-ify camelCased properties like WebkitTransition
  //   prop = vendorProperties[ prop ] || prop;
  //   transitionValues.push( toDashedAll( prop ) );
  // }
  // munge number to millisecond, to match stagger
  var duration = this.layout.options.transitionDuration;
  duration = typeof duration == 'number' ? duration + 'ms' : duration;
  // enable transition styles
  this.css({
    transitionProperty: transitionProps,
    transitionDuration: duration,
    transitionDelay: this.staggerDelay || 0
  });
  // listen for transition end event
  this.element.addEventListener( transitionEndEvent, this, false );
};

// ----- events ----- //

proto.onwebkitTransitionEnd = function( event ) {
  this.ontransitionend( event );
};

proto.onotransitionend = function( event ) {
  this.ontransitionend( event );
};

// properties that I munge to make my life easier
var dashedVendorProperties = {
  '-webkit-transform': 'transform'
};

proto.ontransitionend = function( event ) {
  // disregard bubbled events from children
  if ( event.target !== this.element ) {
    return;
  }
  var _transition = this._transn;
  // get property name of transitioned property, convert to prefix-free
  var propertyName = dashedVendorProperties[ event.propertyName ] || event.propertyName;

  // remove property that has completed transitioning
  delete _transition.ingProperties[ propertyName ];
  // check if any properties are still transitioning
  if ( isEmptyObj( _transition.ingProperties ) ) {
    // all properties have completed transitioning
    this.disableTransition();
  }
  // clean style
  if ( propertyName in _transition.clean ) {
    // clean up style
    this.element.style[ event.propertyName ] = '';
    delete _transition.clean[ propertyName ];
  }
  // trigger onTransitionEnd callback
  if ( propertyName in _transition.onEnd ) {
    var onTransitionEnd = _transition.onEnd[ propertyName ];
    onTransitionEnd.call( this );
    delete _transition.onEnd[ propertyName ];
  }

  this.emitEvent( 'transitionEnd', [ this ] );
};

proto.disableTransition = function() {
  this.removeTransitionStyles();
  this.element.removeEventListener( transitionEndEvent, this, false );
  this.isTransitioning = false;
};

/**
 * removes style property from element
 * @param {Object} style
**/
proto._removeStyles = function( style ) {
  // clean up transition styles
  var cleanStyle = {};
  for ( var prop in style ) {
    cleanStyle[ prop ] = '';
  }
  this.css( cleanStyle );
};

var cleanTransitionStyle = {
  transitionProperty: '',
  transitionDuration: '',
  transitionDelay: ''
};

proto.removeTransitionStyles = function() {
  // remove transition
  this.css( cleanTransitionStyle );
};

// ----- stagger ----- //

proto.stagger = function( delay ) {
  delay = isNaN( delay ) ? 0 : delay;
  this.staggerDelay = delay + 'ms';
};

// ----- show/hide/remove ----- //

// remove element from DOM
proto.removeElem = function() {
  this.element.parentNode.removeChild( this.element );
  // remove display: none
  this.css({ display: '' });
  this.emitEvent( 'remove', [ this ] );
};

proto.remove = function() {
  // just remove element if no transition support or no transition
  if ( !transitionProperty || !parseFloat( this.layout.options.transitionDuration ) ) {
    this.removeElem();
    return;
  }

  // start transition
  this.once( 'transitionEnd', function() {
    this.removeElem();
  });
  this.hide();
};

proto.reveal = function() {
  delete this.isHidden;
  // remove display: none
  this.css({ display: '' });

  var options = this.layout.options;

  var onTransitionEnd = {};
  var transitionEndProperty = this.getHideRevealTransitionEndProperty('visibleStyle');
  onTransitionEnd[ transitionEndProperty ] = this.onRevealTransitionEnd;

  this.transition({
    from: options.hiddenStyle,
    to: options.visibleStyle,
    isCleaning: true,
    onTransitionEnd: onTransitionEnd
  });
};

proto.onRevealTransitionEnd = function() {
  // check if still visible
  // during transition, item may have been hidden
  if ( !this.isHidden ) {
    this.emitEvent('reveal');
  }
};

/**
 * get style property use for hide/reveal transition end
 * @param {String} styleProperty - hiddenStyle/visibleStyle
 * @returns {String}
 */
proto.getHideRevealTransitionEndProperty = function( styleProperty ) {
  var optionStyle = this.layout.options[ styleProperty ];
  // use opacity
  if ( optionStyle.opacity ) {
    return 'opacity';
  }
  // get first property
  for ( var prop in optionStyle ) {
    return prop;
  }
};

proto.hide = function() {
  // set flag
  this.isHidden = true;
  // remove display: none
  this.css({ display: '' });

  var options = this.layout.options;

  var onTransitionEnd = {};
  var transitionEndProperty = this.getHideRevealTransitionEndProperty('hiddenStyle');
  onTransitionEnd[ transitionEndProperty ] = this.onHideTransitionEnd;

  this.transition({
    from: options.visibleStyle,
    to: options.hiddenStyle,
    // keep hidden stuff hidden
    isCleaning: true,
    onTransitionEnd: onTransitionEnd
  });
};

proto.onHideTransitionEnd = function() {
  // check if still hidden
  // during transition, item may have been un-hidden
  if ( this.isHidden ) {
    this.css({ display: 'none' });
    this.emitEvent('hide');
  }
};

proto.destroy = function() {
  this.css({
    position: '',
    left: '',
    right: '',
    top: '',
    bottom: '',
    transition: '',
    transform: ''
  });
};

return Item;

}));


/***/ }),

/***/ "./node_modules/outlayer/outlayer.js":
/*!*******************************************!*\
  !*** ./node_modules/outlayer/outlayer.js ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
 * Outlayer v2.1.1
 * the brains and guts of a layout library
 * MIT license
 */

( function( window, factory ) {
  'use strict';
  // universal module definition
  /* jshint strict: false */ /* globals define, module, require */
  if ( true ) {
    // AMD - RequireJS
    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [
        __webpack_require__(/*! ev-emitter/ev-emitter */ "./node_modules/ev-emitter/ev-emitter.js"),
        __webpack_require__(/*! get-size/get-size */ "./node_modules/get-size/get-size.js"),
        __webpack_require__(/*! fizzy-ui-utils/utils */ "./node_modules/fizzy-ui-utils/utils.js"),
        __webpack_require__(/*! ./item */ "./node_modules/outlayer/item.js")
      ], __WEBPACK_AMD_DEFINE_RESULT__ = (function( EvEmitter, getSize, utils, Item ) {
        return factory( window, EvEmitter, getSize, utils, Item);
      }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
  } else {}

}( window, function factory( window, EvEmitter, getSize, utils, Item ) {
'use strict';

// ----- vars ----- //

var console = window.console;
var jQuery = window.jQuery;
var noop = function() {};

// -------------------------- Outlayer -------------------------- //

// globally unique identifiers
var GUID = 0;
// internal store of all Outlayer intances
var instances = {};


/**
 * @param {Element, String} element
 * @param {Object} options
 * @constructor
 */
function Outlayer( element, options ) {
  var queryElement = utils.getQueryElement( element );
  if ( !queryElement ) {
    if ( console ) {
      console.error( 'Bad element for ' + this.constructor.namespace +
        ': ' + ( queryElement || element ) );
    }
    return;
  }
  this.element = queryElement;
  // add jQuery
  if ( jQuery ) {
    this.$element = jQuery( this.element );
  }

  // options
  this.options = utils.extend( {}, this.constructor.defaults );
  this.option( options );

  // add id for Outlayer.getFromElement
  var id = ++GUID;
  this.element.outlayerGUID = id; // expando
  instances[ id ] = this; // associate via id

  // kick it off
  this._create();

  var isInitLayout = this._getOption('initLayout');
  if ( isInitLayout ) {
    this.layout();
  }
}

// settings are for internal use only
Outlayer.namespace = 'outlayer';
Outlayer.Item = Item;

// default options
Outlayer.defaults = {
  containerStyle: {
    position: 'relative'
  },
  initLayout: true,
  originLeft: true,
  originTop: true,
  resize: true,
  resizeContainer: true,
  // item options
  transitionDuration: '0.4s',
  hiddenStyle: {
    opacity: 0,
    transform: 'scale(0.001)'
  },
  visibleStyle: {
    opacity: 1,
    transform: 'scale(1)'
  }
};

var proto = Outlayer.prototype;
// inherit EvEmitter
utils.extend( proto, EvEmitter.prototype );

/**
 * set options
 * @param {Object} opts
 */
proto.option = function( opts ) {
  utils.extend( this.options, opts );
};

/**
 * get backwards compatible option value, check old name
 */
proto._getOption = function( option ) {
  var oldOption = this.constructor.compatOptions[ option ];
  return oldOption && this.options[ oldOption ] !== undefined ?
    this.options[ oldOption ] : this.options[ option ];
};

Outlayer.compatOptions = {
  // currentName: oldName
  initLayout: 'isInitLayout',
  horizontal: 'isHorizontal',
  layoutInstant: 'isLayoutInstant',
  originLeft: 'isOriginLeft',
  originTop: 'isOriginTop',
  resize: 'isResizeBound',
  resizeContainer: 'isResizingContainer'
};

proto._create = function() {
  // get items from children
  this.reloadItems();
  // elements that affect layout, but are not laid out
  this.stamps = [];
  this.stamp( this.options.stamp );
  // set container style
  utils.extend( this.element.style, this.options.containerStyle );

  // bind resize method
  var canBindResize = this._getOption('resize');
  if ( canBindResize ) {
    this.bindResize();
  }
};

// goes through all children again and gets bricks in proper order
proto.reloadItems = function() {
  // collection of item elements
  this.items = this._itemize( this.element.children );
};


/**
 * turn elements into Outlayer.Items to be used in layout
 * @param {Array or NodeList or HTMLElement} elems
 * @returns {Array} items - collection of new Outlayer Items
 */
proto._itemize = function( elems ) {

  var itemElems = this._filterFindItemElements( elems );
  var Item = this.constructor.Item;

  // create new Outlayer Items for collection
  var items = [];
  for ( var i=0; i < itemElems.length; i++ ) {
    var elem = itemElems[i];
    var item = new Item( elem, this );
    items.push( item );
  }

  return items;
};

/**
 * get item elements to be used in layout
 * @param {Array or NodeList or HTMLElement} elems
 * @returns {Array} items - item elements
 */
proto._filterFindItemElements = function( elems ) {
  return utils.filterFindElements( elems, this.options.itemSelector );
};

/**
 * getter method for getting item elements
 * @returns {Array} elems - collection of item elements
 */
proto.getItemElements = function() {
  return this.items.map( function( item ) {
    return item.element;
  });
};

// ----- init & layout ----- //

/**
 * lays out all items
 */
proto.layout = function() {
  this._resetLayout();
  this._manageStamps();

  // don't animate first layout
  var layoutInstant = this._getOption('layoutInstant');
  var isInstant = layoutInstant !== undefined ?
    layoutInstant : !this._isLayoutInited;
  this.layoutItems( this.items, isInstant );

  // flag for initalized
  this._isLayoutInited = true;
};

// _init is alias for layout
proto._init = proto.layout;

/**
 * logic before any new layout
 */
proto._resetLayout = function() {
  this.getSize();
};


proto.getSize = function() {
  this.size = getSize( this.element );
};

/**
 * get measurement from option, for columnWidth, rowHeight, gutter
 * if option is String -> get element from selector string, & get size of element
 * if option is Element -> get size of element
 * else use option as a number
 *
 * @param {String} measurement
 * @param {String} size - width or height
 * @private
 */
proto._getMeasurement = function( measurement, size ) {
  var option = this.options[ measurement ];
  var elem;
  if ( !option ) {
    // default to 0
    this[ measurement ] = 0;
  } else {
    // use option as an element
    if ( typeof option == 'string' ) {
      elem = this.element.querySelector( option );
    } else if ( option instanceof HTMLElement ) {
      elem = option;
    }
    // use size of element, if element
    this[ measurement ] = elem ? getSize( elem )[ size ] : option;
  }
};

/**
 * layout a collection of item elements
 * @api public
 */
proto.layoutItems = function( items, isInstant ) {
  items = this._getItemsForLayout( items );

  this._layoutItems( items, isInstant );

  this._postLayout();
};

/**
 * get the items to be laid out
 * you may want to skip over some items
 * @param {Array} items
 * @returns {Array} items
 */
proto._getItemsForLayout = function( items ) {
  return items.filter( function( item ) {
    return !item.isIgnored;
  });
};

/**
 * layout items
 * @param {Array} items
 * @param {Boolean} isInstant
 */
proto._layoutItems = function( items, isInstant ) {
  this._emitCompleteOnItems( 'layout', items );

  if ( !items || !items.length ) {
    // no items, emit event with empty array
    return;
  }

  var queue = [];

  items.forEach( function( item ) {
    // get x/y object from method
    var position = this._getItemLayoutPosition( item );
    // enqueue
    position.item = item;
    position.isInstant = isInstant || item.isLayoutInstant;
    queue.push( position );
  }, this );

  this._processLayoutQueue( queue );
};

/**
 * get item layout position
 * @param {Outlayer.Item} item
 * @returns {Object} x and y position
 */
proto._getItemLayoutPosition = function( /* item */ ) {
  return {
    x: 0,
    y: 0
  };
};

/**
 * iterate over array and position each item
 * Reason being - separating this logic prevents 'layout invalidation'
 * thx @paul_irish
 * @param {Array} queue
 */
proto._processLayoutQueue = function( queue ) {
  this.updateStagger();
  queue.forEach( function( obj, i ) {
    this._positionItem( obj.item, obj.x, obj.y, obj.isInstant, i );
  }, this );
};

// set stagger from option in milliseconds number
proto.updateStagger = function() {
  var stagger = this.options.stagger;
  if ( stagger === null || stagger === undefined ) {
    this.stagger = 0;
    return;
  }
  this.stagger = getMilliseconds( stagger );
  return this.stagger;
};

/**
 * Sets position of item in DOM
 * @param {Outlayer.Item} item
 * @param {Number} x - horizontal position
 * @param {Number} y - vertical position
 * @param {Boolean} isInstant - disables transitions
 */
proto._positionItem = function( item, x, y, isInstant, i ) {
  if ( isInstant ) {
    // if not transition, just set CSS
    item.goTo( x, y );
  } else {
    item.stagger( i * this.stagger );
    item.moveTo( x, y );
  }
};

/**
 * Any logic you want to do after each layout,
 * i.e. size the container
 */
proto._postLayout = function() {
  this.resizeContainer();
};

proto.resizeContainer = function() {
  var isResizingContainer = this._getOption('resizeContainer');
  if ( !isResizingContainer ) {
    return;
  }
  var size = this._getContainerSize();
  if ( size ) {
    this._setContainerMeasure( size.width, true );
    this._setContainerMeasure( size.height, false );
  }
};

/**
 * Sets width or height of container if returned
 * @returns {Object} size
 *   @param {Number} width
 *   @param {Number} height
 */
proto._getContainerSize = noop;

/**
 * @param {Number} measure - size of width or height
 * @param {Boolean} isWidth
 */
proto._setContainerMeasure = function( measure, isWidth ) {
  if ( measure === undefined ) {
    return;
  }

  var elemSize = this.size;
  // add padding and border width if border box
  if ( elemSize.isBorderBox ) {
    measure += isWidth ? elemSize.paddingLeft + elemSize.paddingRight +
      elemSize.borderLeftWidth + elemSize.borderRightWidth :
      elemSize.paddingBottom + elemSize.paddingTop +
      elemSize.borderTopWidth + elemSize.borderBottomWidth;
  }

  measure = Math.max( measure, 0 );
  this.element.style[ isWidth ? 'width' : 'height' ] = measure + 'px';
};

/**
 * emit eventComplete on a collection of items events
 * @param {String} eventName
 * @param {Array} items - Outlayer.Items
 */
proto._emitCompleteOnItems = function( eventName, items ) {
  var _this = this;
  function onComplete() {
    _this.dispatchEvent( eventName + 'Complete', null, [ items ] );
  }

  var count = items.length;
  if ( !items || !count ) {
    onComplete();
    return;
  }

  var doneCount = 0;
  function tick() {
    doneCount++;
    if ( doneCount == count ) {
      onComplete();
    }
  }

  // bind callback
  items.forEach( function( item ) {
    item.once( eventName, tick );
  });
};

/**
 * emits events via EvEmitter and jQuery events
 * @param {String} type - name of event
 * @param {Event} event - original event
 * @param {Array} args - extra arguments
 */
proto.dispatchEvent = function( type, event, args ) {
  // add original event to arguments
  var emitArgs = event ? [ event ].concat( args ) : args;
  this.emitEvent( type, emitArgs );

  if ( jQuery ) {
    // set this.$element
    this.$element = this.$element || jQuery( this.element );
    if ( event ) {
      // create jQuery event
      var $event = jQuery.Event( event );
      $event.type = type;
      this.$element.trigger( $event, args );
    } else {
      // just trigger with type if no event available
      this.$element.trigger( type, args );
    }
  }
};

// -------------------------- ignore & stamps -------------------------- //


/**
 * keep item in collection, but do not lay it out
 * ignored items do not get skipped in layout
 * @param {Element} elem
 */
proto.ignore = function( elem ) {
  var item = this.getItem( elem );
  if ( item ) {
    item.isIgnored = true;
  }
};

/**
 * return item to layout collection
 * @param {Element} elem
 */
proto.unignore = function( elem ) {
  var item = this.getItem( elem );
  if ( item ) {
    delete item.isIgnored;
  }
};

/**
 * adds elements to stamps
 * @param {NodeList, Array, Element, or String} elems
 */
proto.stamp = function( elems ) {
  elems = this._find( elems );
  if ( !elems ) {
    return;
  }

  this.stamps = this.stamps.concat( elems );
  // ignore
  elems.forEach( this.ignore, this );
};

/**
 * removes elements to stamps
 * @param {NodeList, Array, or Element} elems
 */
proto.unstamp = function( elems ) {
  elems = this._find( elems );
  if ( !elems ){
    return;
  }

  elems.forEach( function( elem ) {
    // filter out removed stamp elements
    utils.removeFrom( this.stamps, elem );
    this.unignore( elem );
  }, this );
};

/**
 * finds child elements
 * @param {NodeList, Array, Element, or String} elems
 * @returns {Array} elems
 */
proto._find = function( elems ) {
  if ( !elems ) {
    return;
  }
  // if string, use argument as selector string
  if ( typeof elems == 'string' ) {
    elems = this.element.querySelectorAll( elems );
  }
  elems = utils.makeArray( elems );
  return elems;
};

proto._manageStamps = function() {
  if ( !this.stamps || !this.stamps.length ) {
    return;
  }

  this._getBoundingRect();

  this.stamps.forEach( this._manageStamp, this );
};

// update boundingLeft / Top
proto._getBoundingRect = function() {
  // get bounding rect for container element
  var boundingRect = this.element.getBoundingClientRect();
  var size = this.size;
  this._boundingRect = {
    left: boundingRect.left + size.paddingLeft + size.borderLeftWidth,
    top: boundingRect.top + size.paddingTop + size.borderTopWidth,
    right: boundingRect.right - ( size.paddingRight + size.borderRightWidth ),
    bottom: boundingRect.bottom - ( size.paddingBottom + size.borderBottomWidth )
  };
};

/**
 * @param {Element} stamp
**/
proto._manageStamp = noop;

/**
 * get x/y position of element relative to container element
 * @param {Element} elem
 * @returns {Object} offset - has left, top, right, bottom
 */
proto._getElementOffset = function( elem ) {
  var boundingRect = elem.getBoundingClientRect();
  var thisRect = this._boundingRect;
  var size = getSize( elem );
  var offset = {
    left: boundingRect.left - thisRect.left - size.marginLeft,
    top: boundingRect.top - thisRect.top - size.marginTop,
    right: thisRect.right - boundingRect.right - size.marginRight,
    bottom: thisRect.bottom - boundingRect.bottom - size.marginBottom
  };
  return offset;
};

// -------------------------- resize -------------------------- //

// enable event handlers for listeners
// i.e. resize -> onresize
proto.handleEvent = utils.handleEvent;

/**
 * Bind layout to window resizing
 */
proto.bindResize = function() {
  window.addEventListener( 'resize', this );
  this.isResizeBound = true;
};

/**
 * Unbind layout to window resizing
 */
proto.unbindResize = function() {
  window.removeEventListener( 'resize', this );
  this.isResizeBound = false;
};

proto.onresize = function() {
  this.resize();
};

utils.debounceMethod( Outlayer, 'onresize', 100 );

proto.resize = function() {
  // don't trigger if size did not change
  // or if resize was unbound. See #9
  if ( !this.isResizeBound || !this.needsResizeLayout() ) {
    return;
  }

  this.layout();
};

/**
 * check if layout is needed post layout
 * @returns Boolean
 */
proto.needsResizeLayout = function() {
  var size = getSize( this.element );
  // check that this.size and size are there
  // IE8 triggers resize on body size change, so they might not be
  var hasSizes = this.size && size;
  return hasSizes && size.innerWidth !== this.size.innerWidth;
};

// -------------------------- methods -------------------------- //

/**
 * add items to Outlayer instance
 * @param {Array or NodeList or Element} elems
 * @returns {Array} items - Outlayer.Items
**/
proto.addItems = function( elems ) {
  var items = this._itemize( elems );
  // add items to collection
  if ( items.length ) {
    this.items = this.items.concat( items );
  }
  return items;
};

/**
 * Layout newly-appended item elements
 * @param {Array or NodeList or Element} elems
 */
proto.appended = function( elems ) {
  var items = this.addItems( elems );
  if ( !items.length ) {
    return;
  }
  // layout and reveal just the new items
  this.layoutItems( items, true );
  this.reveal( items );
};

/**
 * Layout prepended elements
 * @param {Array or NodeList or Element} elems
 */
proto.prepended = function( elems ) {
  var items = this._itemize( elems );
  if ( !items.length ) {
    return;
  }
  // add items to beginning of collection
  var previousItems = this.items.slice(0);
  this.items = items.concat( previousItems );
  // start new layout
  this._resetLayout();
  this._manageStamps();
  // layout new stuff without transition
  this.layoutItems( items, true );
  this.reveal( items );
  // layout previous items
  this.layoutItems( previousItems );
};

/**
 * reveal a collection of items
 * @param {Array of Outlayer.Items} items
 */
proto.reveal = function( items ) {
  this._emitCompleteOnItems( 'reveal', items );
  if ( !items || !items.length ) {
    return;
  }
  var stagger = this.updateStagger();
  items.forEach( function( item, i ) {
    item.stagger( i * stagger );
    item.reveal();
  });
};

/**
 * hide a collection of items
 * @param {Array of Outlayer.Items} items
 */
proto.hide = function( items ) {
  this._emitCompleteOnItems( 'hide', items );
  if ( !items || !items.length ) {
    return;
  }
  var stagger = this.updateStagger();
  items.forEach( function( item, i ) {
    item.stagger( i * stagger );
    item.hide();
  });
};

/**
 * reveal item elements
 * @param {Array}, {Element}, {NodeList} items
 */
proto.revealItemElements = function( elems ) {
  var items = this.getItems( elems );
  this.reveal( items );
};

/**
 * hide item elements
 * @param {Array}, {Element}, {NodeList} items
 */
proto.hideItemElements = function( elems ) {
  var items = this.getItems( elems );
  this.hide( items );
};

/**
 * get Outlayer.Item, given an Element
 * @param {Element} elem
 * @param {Function} callback
 * @returns {Outlayer.Item} item
 */
proto.getItem = function( elem ) {
  // loop through items to get the one that matches
  for ( var i=0; i < this.items.length; i++ ) {
    var item = this.items[i];
    if ( item.element == elem ) {
      // return item
      return item;
    }
  }
};

/**
 * get collection of Outlayer.Items, given Elements
 * @param {Array} elems
 * @returns {Array} items - Outlayer.Items
 */
proto.getItems = function( elems ) {
  elems = utils.makeArray( elems );
  var items = [];
  elems.forEach( function( elem ) {
    var item = this.getItem( elem );
    if ( item ) {
      items.push( item );
    }
  }, this );

  return items;
};

/**
 * remove element(s) from instance and DOM
 * @param {Array or NodeList or Element} elems
 */
proto.remove = function( elems ) {
  var removeItems = this.getItems( elems );

  this._emitCompleteOnItems( 'remove', removeItems );

  // bail if no items to remove
  if ( !removeItems || !removeItems.length ) {
    return;
  }

  removeItems.forEach( function( item ) {
    item.remove();
    // remove item from collection
    utils.removeFrom( this.items, item );
  }, this );
};

// ----- destroy ----- //

// remove and disable Outlayer instance
proto.destroy = function() {
  // clean up dynamic styles
  var style = this.element.style;
  style.height = '';
  style.position = '';
  style.width = '';
  // destroy items
  this.items.forEach( function( item ) {
    item.destroy();
  });

  this.unbindResize();

  var id = this.element.outlayerGUID;
  delete instances[ id ]; // remove reference to instance by id
  delete this.element.outlayerGUID;
  // remove data for jQuery
  if ( jQuery ) {
    jQuery.removeData( this.element, this.constructor.namespace );
  }

};

// -------------------------- data -------------------------- //

/**
 * get Outlayer instance from element
 * @param {Element} elem
 * @returns {Outlayer}
 */
Outlayer.data = function( elem ) {
  elem = utils.getQueryElement( elem );
  var id = elem && elem.outlayerGUID;
  return id && instances[ id ];
};


// -------------------------- create Outlayer class -------------------------- //

/**
 * create a layout class
 * @param {String} namespace
 */
Outlayer.create = function( namespace, options ) {
  // sub-class Outlayer
  var Layout = subclass( Outlayer );
  // apply new options and compatOptions
  Layout.defaults = utils.extend( {}, Outlayer.defaults );
  utils.extend( Layout.defaults, options );
  Layout.compatOptions = utils.extend( {}, Outlayer.compatOptions  );

  Layout.namespace = namespace;

  Layout.data = Outlayer.data;

  // sub-class Item
  Layout.Item = subclass( Item );

  // -------------------------- declarative -------------------------- //

  utils.htmlInit( Layout, namespace );

  // -------------------------- jQuery bridge -------------------------- //

  // make into jQuery plugin
  if ( jQuery && jQuery.bridget ) {
    jQuery.bridget( namespace, Layout );
  }

  return Layout;
};

function subclass( Parent ) {
  function SubClass() {
    Parent.apply( this, arguments );
  }

  SubClass.prototype = Object.create( Parent.prototype );
  SubClass.prototype.constructor = SubClass;

  return SubClass;
}

// ----- helpers ----- //

// how many milliseconds are in each unit
var msUnits = {
  ms: 1,
  s: 1000
};

// munge time-like parameter into millisecond number
// '0.4s' -> 40
function getMilliseconds( time ) {
  if ( typeof time == 'number' ) {
    return time;
  }
  var matches = time.match( /(^\d*\.?\d*)(\w*)/ );
  var num = matches && matches[1];
  var unit = matches && matches[2];
  if ( !num.length ) {
    return 0;
  }
  num = parseFloat( num );
  var mult = msUnits[ unit ] || 1;
  return num * mult;
}

// ----- fin ----- //

// back in global
Outlayer.Item = Item;

return Outlayer;

}));


/***/ }),

/***/ "./node_modules/prop-types/checkPropTypes.js":
/*!***************************************************!*\
  !*** ./node_modules/prop-types/checkPropTypes.js ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var printWarning = function() {};

if (true) {
  var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "./node_modules/prop-types/lib/ReactPropTypesSecret.js");
  var loggedTypeFailures = {};
  var has = Function.call.bind(Object.prototype.hasOwnProperty);

  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

/**
 * Assert that the values match with the type specs.
 * Error messages are memorized and will only be shown once.
 *
 * @param {object} typeSpecs Map of name to a ReactPropType
 * @param {object} values Runtime values that need to be type-checked
 * @param {string} location e.g. "prop", "context", "child context"
 * @param {string} componentName Name of the component for error messages.
 * @param {?Function} getStack Returns the component stack.
 * @private
 */
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
  if (true) {
    for (var typeSpecName in typeSpecs) {
      if (has(typeSpecs, typeSpecName)) {
        var error;
        // Prop type validation may throw. In case they do, we don't want to
        // fail the render phase where it didn't fail before. So we log it.
        // After these have been cleaned up, we'll let them throw.
        try {
          // This is intentionally an invariant that gets caught. It's the same
          // behavior as without this statement except with a better message.
          if (typeof typeSpecs[typeSpecName] !== 'function') {
            var err = Error(
              (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
              'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
            );
            err.name = 'Invariant Violation';
            throw err;
          }
          error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
        } catch (ex) {
          error = ex;
        }
        if (error && !(error instanceof Error)) {
          printWarning(
            (componentName || 'React class') + ': type specification of ' +
            location + ' `' + typeSpecName + '` is invalid; the type checker ' +
            'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
            'You may have forgotten to pass an argument to the type checker ' +
            'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
            'shape all require an argument).'
          );
        }
        if (error instanceof Error && !(error.message in loggedTypeFailures)) {
          // Only monitor this failure once because there tends to be a lot of the
          // same error.
          loggedTypeFailures[error.message] = true;

          var stack = getStack ? getStack() : '';

          printWarning(
            'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
          );
        }
      }
    }
  }
}

/**
 * Resets warning cache when testing.
 *
 * @private
 */
checkPropTypes.resetWarningCache = function() {
  if (true) {
    loggedTypeFailures = {};
  }
}

module.exports = checkPropTypes;


/***/ }),

/***/ "./node_modules/prop-types/factoryWithTypeCheckers.js":
/*!************************************************************!*\
  !*** ./node_modules/prop-types/factoryWithTypeCheckers.js ***!
  \************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactIs = __webpack_require__(/*! react-is */ "./node_modules/react-is/index.js");
var assign = __webpack_require__(/*! object-assign */ "./node_modules/object-assign/index.js");

var ReactPropTypesSecret = __webpack_require__(/*! ./lib/ReactPropTypesSecret */ "./node_modules/prop-types/lib/ReactPropTypesSecret.js");
var checkPropTypes = __webpack_require__(/*! ./checkPropTypes */ "./node_modules/prop-types/checkPropTypes.js");

var has = Function.call.bind(Object.prototype.hasOwnProperty);
var printWarning = function() {};

if (true) {
  printWarning = function(text) {
    var message = 'Warning: ' + text;
    if (typeof console !== 'undefined') {
      console.error(message);
    }
    try {
      // --- Welcome to debugging React ---
      // This error was thrown as a convenience so that you can use this stack
      // to find the callsite that caused this warning to fire.
      throw new Error(message);
    } catch (x) {}
  };
}

function emptyFunctionThatReturnsNull() {
  return null;
}

module.exports = function(isValidElement, throwOnDirectAccess) {
  /* global Symbol */
  var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
  var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.

  /**
   * Returns the iterator method function contained on the iterable object.
   *
   * Be sure to invoke the function with the iterable as context:
   *
   *     var iteratorFn = getIteratorFn(myIterable);
   *     if (iteratorFn) {
   *       var iterator = iteratorFn.call(myIterable);
   *       ...
   *     }
   *
   * @param {?object} maybeIterable
   * @return {?function}
   */
  function getIteratorFn(maybeIterable) {
    var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
    if (typeof iteratorFn === 'function') {
      return iteratorFn;
    }
  }

  /**
   * Collection of methods that allow declaration and validation of props that are
   * supplied to React components. Example usage:
   *
   *   var Props = require('ReactPropTypes');
   *   var MyArticle = React.createClass({
   *     propTypes: {
   *       // An optional string prop named "description".
   *       description: Props.string,
   *
   *       // A required enum prop named "category".
   *       category: Props.oneOf(['News','Photos']).isRequired,
   *
   *       // A prop named "dialog" that requires an instance of Dialog.
   *       dialog: Props.instanceOf(Dialog).isRequired
   *     },
   *     render: function() { ... }
   *   });
   *
   * A more formal specification of how these methods are used:
   *
   *   type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
   *   decl := ReactPropTypes.{type}(.isRequired)?
   *
   * Each and every declaration produces a function with the same signature. This
   * allows the creation of custom validation functions. For example:
   *
   *  var MyLink = React.createClass({
   *    propTypes: {
   *      // An optional string or URI prop named "href".
   *      href: function(props, propName, componentName) {
   *        var propValue = props[propName];
   *        if (propValue != null && typeof propValue !== 'string' &&
   *            !(propValue instanceof URI)) {
   *          return new Error(
   *            'Expected a string or an URI for ' + propName + ' in ' +
   *            componentName
   *          );
   *        }
   *      }
   *    },
   *    render: function() {...}
   *  });
   *
   * @internal
   */

  var ANONYMOUS = '<<anonymous>>';

  // Important!
  // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
  var ReactPropTypes = {
    array: createPrimitiveTypeChecker('array'),
    bool: createPrimitiveTypeChecker('boolean'),
    func: createPrimitiveTypeChecker('function'),
    number: createPrimitiveTypeChecker('number'),
    object: createPrimitiveTypeChecker('object'),
    string: createPrimitiveTypeChecker('string'),
    symbol: createPrimitiveTypeChecker('symbol'),

    any: createAnyTypeChecker(),
    arrayOf: createArrayOfTypeChecker,
    element: createElementTypeChecker(),
    elementType: createElementTypeTypeChecker(),
    instanceOf: createInstanceTypeChecker,
    node: createNodeChecker(),
    objectOf: createObjectOfTypeChecker,
    oneOf: createEnumTypeChecker,
    oneOfType: createUnionTypeChecker,
    shape: createShapeTypeChecker,
    exact: createStrictShapeTypeChecker,
  };

  /**
   * inlined Object.is polyfill to avoid requiring consumers ship their own
   * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
   */
  /*eslint-disable no-self-compare*/
  function is(x, y) {
    // SameValue algorithm
    if (x === y) {
      // Steps 1-5, 7-10
      // Steps 6.b-6.e: +0 != -0
      return x !== 0 || 1 / x === 1 / y;
    } else {
      // Step 6.a: NaN == NaN
      return x !== x && y !== y;
    }
  }
  /*eslint-enable no-self-compare*/

  /**
   * We use an Error-like object for backward compatibility as people may call
   * PropTypes directly and inspect their output. However, we don't use real
   * Errors anymore. We don't inspect their stack anyway, and creating them
   * is prohibitively expensive if they are created too often, such as what
   * happens in oneOfType() for any type before the one that matched.
   */
  function PropTypeError(message) {
    this.message = message;
    this.stack = '';
  }
  // Make `instanceof Error` still work for returned errors.
  PropTypeError.prototype = Error.prototype;

  function createChainableTypeChecker(validate) {
    if (true) {
      var manualPropTypeCallCache = {};
      var manualPropTypeWarningCount = 0;
    }
    function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
      componentName = componentName || ANONYMOUS;
      propFullName = propFullName || propName;

      if (secret !== ReactPropTypesSecret) {
        if (throwOnDirectAccess) {
          // New behavior only for users of `prop-types` package
          var err = new Error(
            'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
            'Use `PropTypes.checkPropTypes()` to call them. ' +
            'Read more at http://fb.me/use-check-prop-types'
          );
          err.name = 'Invariant Violation';
          throw err;
        } else if ( true && typeof console !== 'undefined') {
          // Old behavior for people using React.PropTypes
          var cacheKey = componentName + ':' + propName;
          if (
            !manualPropTypeCallCache[cacheKey] &&
            // Avoid spamming the console because they are often not actionable except for lib authors
            manualPropTypeWarningCount < 3
          ) {
            printWarning(
              'You are manually calling a React.PropTypes validation ' +
              'function for the `' + propFullName + '` prop on `' + componentName  + '`. This is deprecated ' +
              'and will throw in the standalone `prop-types` package. ' +
              'You may be seeing this warning due to a third-party PropTypes ' +
              'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
            );
            manualPropTypeCallCache[cacheKey] = true;
            manualPropTypeWarningCount++;
          }
        }
      }
      if (props[propName] == null) {
        if (isRequired) {
          if (props[propName] === null) {
            return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
          }
          return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
        }
        return null;
      } else {
        return validate(props, propName, componentName, location, propFullName);
      }
    }

    var chainedCheckType = checkType.bind(null, false);
    chainedCheckType.isRequired = checkType.bind(null, true);

    return chainedCheckType;
  }

  function createPrimitiveTypeChecker(expectedType) {
    function validate(props, propName, componentName, location, propFullName, secret) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== expectedType) {
        // `propValue` being instance of, say, date/regexp, pass the 'object'
        // check, but we can offer a more precise error message here rather than
        // 'of type `object`'.
        var preciseType = getPreciseType(propValue);

        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createAnyTypeChecker() {
    return createChainableTypeChecker(emptyFunctionThatReturnsNull);
  }

  function createArrayOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
      }
      var propValue = props[propName];
      if (!Array.isArray(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
      }
      for (var i = 0; i < propValue.length; i++) {
        var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
        if (error instanceof Error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!isValidElement(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createElementTypeTypeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      if (!ReactIs.isValidElementType(propValue)) {
        var propType = getPropType(propValue);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createInstanceTypeChecker(expectedClass) {
    function validate(props, propName, componentName, location, propFullName) {
      if (!(props[propName] instanceof expectedClass)) {
        var expectedClassName = expectedClass.name || ANONYMOUS;
        var actualClassName = getClassName(props[propName]);
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createEnumTypeChecker(expectedValues) {
    if (!Array.isArray(expectedValues)) {
      if (true) {
        if (arguments.length > 1) {
          printWarning(
            'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +
            'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'
          );
        } else {
          printWarning('Invalid argument supplied to oneOf, expected an array.');
        }
      }
      return emptyFunctionThatReturnsNull;
    }

    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      for (var i = 0; i < expectedValues.length; i++) {
        if (is(propValue, expectedValues[i])) {
          return null;
        }
      }

      var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {
        var type = getPreciseType(value);
        if (type === 'symbol') {
          return String(value);
        }
        return value;
      });
      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createObjectOfTypeChecker(typeChecker) {
    function validate(props, propName, componentName, location, propFullName) {
      if (typeof typeChecker !== 'function') {
        return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
      }
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
      }
      for (var key in propValue) {
        if (has(propValue, key)) {
          var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
          if (error instanceof Error) {
            return error;
          }
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createUnionTypeChecker(arrayOfTypeCheckers) {
    if (!Array.isArray(arrayOfTypeCheckers)) {
       true ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : undefined;
      return emptyFunctionThatReturnsNull;
    }

    for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
      var checker = arrayOfTypeCheckers[i];
      if (typeof checker !== 'function') {
        printWarning(
          'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
          'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
        );
        return emptyFunctionThatReturnsNull;
      }
    }

    function validate(props, propName, componentName, location, propFullName) {
      for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
        var checker = arrayOfTypeCheckers[i];
        if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
          return null;
        }
      }

      return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
    }
    return createChainableTypeChecker(validate);
  }

  function createNodeChecker() {
    function validate(props, propName, componentName, location, propFullName) {
      if (!isNode(props[propName])) {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      for (var key in shapeTypes) {
        var checker = shapeTypes[key];
        if (!checker) {
          continue;
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }
    return createChainableTypeChecker(validate);
  }

  function createStrictShapeTypeChecker(shapeTypes) {
    function validate(props, propName, componentName, location, propFullName) {
      var propValue = props[propName];
      var propType = getPropType(propValue);
      if (propType !== 'object') {
        return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
      }
      // We need to check all keys in case some are required but missing from
      // props.
      var allKeys = assign({}, props[propName], shapeTypes);
      for (var key in allKeys) {
        var checker = shapeTypes[key];
        if (!checker) {
          return new PropTypeError(
            'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
            '\nBad object: ' + JSON.stringify(props[propName], null, '  ') +
            '\nValid keys: ' +  JSON.stringify(Object.keys(shapeTypes), null, '  ')
          );
        }
        var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
        if (error) {
          return error;
        }
      }
      return null;
    }

    return createChainableTypeChecker(validate);
  }

  function isNode(propValue) {
    switch (typeof propValue) {
      case 'number':
      case 'string':
      case 'undefined':
        return true;
      case 'boolean':
        return !propValue;
      case 'object':
        if (Array.isArray(propValue)) {
          return propValue.every(isNode);
        }
        if (propValue === null || isValidElement(propValue)) {
          return true;
        }

        var iteratorFn = getIteratorFn(propValue);
        if (iteratorFn) {
          var iterator = iteratorFn.call(propValue);
          var step;
          if (iteratorFn !== propValue.entries) {
            while (!(step = iterator.next()).done) {
              if (!isNode(step.value)) {
                return false;
              }
            }
          } else {
            // Iterator will provide entry [k,v] tuples rather than values.
            while (!(step = iterator.next()).done) {
              var entry = step.value;
              if (entry) {
                if (!isNode(entry[1])) {
                  return false;
                }
              }
            }
          }
        } else {
          return false;
        }

        return true;
      default:
        return false;
    }
  }

  function isSymbol(propType, propValue) {
    // Native Symbol.
    if (propType === 'symbol') {
      return true;
    }

    // falsy value can't be a Symbol
    if (!propValue) {
      return false;
    }

    // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
    if (propValue['@@toStringTag'] === 'Symbol') {
      return true;
    }

    // Fallback for non-spec compliant Symbols which are polyfilled.
    if (typeof Symbol === 'function' && propValue instanceof Symbol) {
      return true;
    }

    return false;
  }

  // Equivalent of `typeof` but with special handling for array and regexp.
  function getPropType(propValue) {
    var propType = typeof propValue;
    if (Array.isArray(propValue)) {
      return 'array';
    }
    if (propValue instanceof RegExp) {
      // Old webkits (at least until Android 4.0) return 'function' rather than
      // 'object' for typeof a RegExp. We'll normalize this here so that /bla/
      // passes PropTypes.object.
      return 'object';
    }
    if (isSymbol(propType, propValue)) {
      return 'symbol';
    }
    return propType;
  }

  // This handles more types than `getPropType`. Only used for error messages.
  // See `createPrimitiveTypeChecker`.
  function getPreciseType(propValue) {
    if (typeof propValue === 'undefined' || propValue === null) {
      return '' + propValue;
    }
    var propType = getPropType(propValue);
    if (propType === 'object') {
      if (propValue instanceof Date) {
        return 'date';
      } else if (propValue instanceof RegExp) {
        return 'regexp';
      }
    }
    return propType;
  }

  // Returns a string that is postfixed to a warning about an invalid type.
  // For example, "undefined" or "of type array"
  function getPostfixForTypeWarning(value) {
    var type = getPreciseType(value);
    switch (type) {
      case 'array':
      case 'object':
        return 'an ' + type;
      case 'boolean':
      case 'date':
      case 'regexp':
        return 'a ' + type;
      default:
        return type;
    }
  }

  // Returns class name of the object, if any.
  function getClassName(propValue) {
    if (!propValue.constructor || !propValue.constructor.name) {
      return ANONYMOUS;
    }
    return propValue.constructor.name;
  }

  ReactPropTypes.checkPropTypes = checkPropTypes;
  ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;
  ReactPropTypes.PropTypes = ReactPropTypes;

  return ReactPropTypes;
};


/***/ }),

/***/ "./node_modules/prop-types/index.js":
/*!******************************************!*\
  !*** ./node_modules/prop-types/index.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

if (true) {
  var ReactIs = __webpack_require__(/*! react-is */ "./node_modules/react-is/index.js");

  // By explicitly using `prop-types` you are opting into new development behavior.
  // http://fb.me/prop-types-in-prod
  var throwOnDirectAccess = true;
  module.exports = __webpack_require__(/*! ./factoryWithTypeCheckers */ "./node_modules/prop-types/factoryWithTypeCheckers.js")(ReactIs.isElement, throwOnDirectAccess);
} else {}


/***/ }),

/***/ "./node_modules/prop-types/lib/ReactPropTypesSecret.js":
/*!*************************************************************!*\
  !*** ./node_modules/prop-types/lib/ReactPropTypesSecret.js ***!
  \*************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/**
 * Copyright (c) 2013-present, Facebook, Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */



var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';

module.exports = ReactPropTypesSecret;


/***/ }),

/***/ "./node_modules/radium/es/append-important-to-each-value.js":
/*!******************************************************************!*\
  !*** ./node_modules/radium/es/append-important-to-each-value.js ***!
  \******************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return appendImportantToEachValue; });
/* harmony import */ var _append_px_if_needed__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./append-px-if-needed */ "./node_modules/radium/es/append-px-if-needed.js");
/* harmony import */ var _map_object__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./map-object */ "./node_modules/radium/es/map-object.js");



function appendImportantToEachValue(style) {
  return Object(_map_object__WEBPACK_IMPORTED_MODULE_1__["default"])(style, function (result, key) {
    return Object(_append_px_if_needed__WEBPACK_IMPORTED_MODULE_0__["default"])(key, style[key]) + ' !important';
  });
}

/***/ }),

/***/ "./node_modules/radium/es/append-px-if-needed.js":
/*!*******************************************************!*\
  !*** ./node_modules/radium/es/append-px-if-needed.js ***!
  \*******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return appendPxIfNeeded; });


// Copied from https://github.com/facebook/react/blob/
// b87aabdfe1b7461e7331abb3601d9e6bb27544bc/
// packages/react-dom/src/shared/CSSProperty.js
var isUnitlessNumber = {
  animationIterationCount: true,
  borderImageOutset: true,
  borderImageSlice: true,
  borderImageWidth: true,
  boxFlex: true,
  boxFlexGroup: true,
  boxOrdinalGroup: true,
  columnCount: true,
  columns: true,
  flex: true,
  flexGrow: true,
  flexPositive: true,
  flexShrink: true,
  flexNegative: true,
  flexOrder: true,
  gridArea: true,
  gridRow: true,
  gridRowEnd: true,
  gridRowSpan: true,
  gridRowStart: true,
  gridColumn: true,
  gridColumnEnd: true,
  gridColumnSpan: true,
  gridColumnStart: true,
  fontWeight: true,
  lineClamp: true,
  lineHeight: true,
  opacity: true,
  order: true,
  orphans: true,
  tabSize: true,
  widows: true,
  zIndex: true,
  zoom: true,

  // SVG-related properties
  fillOpacity: true,
  floodOpacity: true,
  stopOpacity: true,
  strokeDasharray: true,
  strokeDashoffset: true,
  strokeMiterlimit: true,
  strokeOpacity: true,
  strokeWidth: true
};

function appendPxIfNeeded(propertyName, value) {
  var needsPxSuffix = !isUnitlessNumber[propertyName] && typeof value === 'number' && value !== 0;
  return needsPxSuffix ? value + 'px' : value;
}

/***/ }),

/***/ "./node_modules/radium/es/camel-case-props-to-dash-case.js":
/*!*****************************************************************!*\
  !*** ./node_modules/radium/es/camel-case-props-to-dash-case.js ***!
  \*****************************************************************/
/*! exports provided: camelCaseToDashCase, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "camelCaseToDashCase", function() { return camelCaseToDashCase; });
var _camelCaseRegex = /([a-z])?([A-Z])/g;

var _camelCaseReplacer = function _camelCaseReplacer(match, p1, p2) {
  return (p1 || '') + '-' + p2.toLowerCase();
};

var camelCaseToDashCase = function camelCaseToDashCase(s) {
  return s.replace(_camelCaseRegex, _camelCaseReplacer);
};

var camelCasePropsToDashCase = function camelCasePropsToDashCase(prefixedStyle) {
  // Since prefix is expected to work on inline style objects, we must
  // translate the keys to dash case for rendering to CSS.
  return Object.keys(prefixedStyle).reduce(function (result, key) {
    var dashCaseKey = camelCaseToDashCase(key);

    // Fix IE vendor prefix
    if (/^ms-/.test(dashCaseKey)) {
      dashCaseKey = '-' + dashCaseKey;
    }

    result[dashCaseKey] = prefixedStyle[key];
    return result;
  }, {});
};

/* harmony default export */ __webpack_exports__["default"] = (camelCasePropsToDashCase);

/***/ }),

/***/ "./node_modules/radium/es/clean-state-key.js":
/*!***************************************************!*\
  !*** ./node_modules/radium/es/clean-state-key.js ***!
  \***************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* flow */

var cleanStateKey = function cleanStateKey(key) {
  return key === null || typeof key === 'undefined' ? 'main' : key.toString();
};

/* harmony default export */ __webpack_exports__["default"] = (cleanStateKey);

/***/ }),

/***/ "./node_modules/radium/es/components/style-root.js":
/*!*********************************************************!*\
  !*** ./node_modules/radium/es/components/style-root.js ***!
  \*********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _enhancer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enhancer */ "./node_modules/radium/es/enhancer.js");
/* harmony import */ var _style_keeper__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../style-keeper */ "./node_modules/radium/es/style-keeper.js");
/* harmony import */ var _style_sheet__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style-sheet */ "./node_modules/radium/es/components/style-sheet.js");
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }










function _getStyleKeeper(instance) {
  if (!instance._radiumStyleKeeper) {
    var userAgent = instance.props.radiumConfig && instance.props.radiumConfig.userAgent || instance.context._radiumConfig && instance.context._radiumConfig.userAgent;
    instance._radiumStyleKeeper = new _style_keeper__WEBPACK_IMPORTED_MODULE_3__["default"](userAgent);
  }

  return instance._radiumStyleKeeper;
}

var StyleRoot = function (_PureComponent) {
  _inherits(StyleRoot, _PureComponent);

  function StyleRoot() {
    _classCallCheck(this, StyleRoot);

    var _this = _possibleConstructorReturn(this, (StyleRoot.__proto__ || Object.getPrototypeOf(StyleRoot)).apply(this, arguments));

    _getStyleKeeper(_this);
    return _this;
  }

  _createClass(StyleRoot, [{
    key: 'getChildContext',
    value: function getChildContext() {
      return { _radiumStyleKeeper: _getStyleKeeper(this) };
    }
  }, {
    key: 'render',
    value: function render() {
      /* eslint-disable no-unused-vars */
      // Pass down all props except config to the rendered div.
      var _props = this.props,
          radiumConfig = _props.radiumConfig,
          otherProps = _objectWithoutProperties(_props, ['radiumConfig']);
      /* eslint-enable no-unused-vars */

      return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(
        'div',
        otherProps,
        this.props.children,
        react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_style_sheet__WEBPACK_IMPORTED_MODULE_4__["default"], null)
      );
    }
  }]);

  return StyleRoot;
}(react__WEBPACK_IMPORTED_MODULE_0__["PureComponent"]);

StyleRoot.contextTypes = {
  _radiumConfig: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.object,
  _radiumStyleKeeper: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.instanceOf(_style_keeper__WEBPACK_IMPORTED_MODULE_3__["default"])
};

StyleRoot.childContextTypes = {
  _radiumStyleKeeper: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.instanceOf(_style_keeper__WEBPACK_IMPORTED_MODULE_3__["default"])
};

StyleRoot = Object(_enhancer__WEBPACK_IMPORTED_MODULE_2__["default"])(StyleRoot);

/* harmony default export */ __webpack_exports__["default"] = (StyleRoot);

/***/ }),

/***/ "./node_modules/radium/es/components/style-sheet.js":
/*!**********************************************************!*\
  !*** ./node_modules/radium/es/components/style-sheet.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return StyleSheet; });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _style_keeper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../style-keeper */ "./node_modules/radium/es/style-keeper.js");
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

var _class, _temp;

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }






var StyleSheet = (_temp = _class = function (_Component) {
  _inherits(StyleSheet, _Component);

  function StyleSheet() {
    _classCallCheck(this, StyleSheet);

    var _this = _possibleConstructorReturn(this, (StyleSheet.__proto__ || Object.getPrototypeOf(StyleSheet)).apply(this, arguments));

    _this._onChange = function () {
      var nextCSS = _this.context._radiumStyleKeeper.getCSS();

      if (nextCSS !== _this._css) {
        if (_this._root) {
          _this._root.innerHTML = nextCSS;
        } else {
          throw new Error('No root style object found, even after StyleSheet mount.');
        }
        _this._css = nextCSS;
      }
    };

    _this._css = _this.context._radiumStyleKeeper.getCSS();
    return _this;
  }

  _createClass(StyleSheet, [{
    key: 'componentDidMount',
    value: function componentDidMount() {
      this._subscription = this.context._radiumStyleKeeper.subscribe(this._onChange);
      this._onChange();
    }
  }, {
    key: 'shouldComponentUpdate',
    value: function shouldComponentUpdate() {
      return false;
    }
  }, {
    key: 'componentWillUnmount',
    value: function componentWillUnmount() {
      if (this._subscription) {
        this._subscription.remove();
      }
    }
  }, {
    key: 'render',
    value: function render() {
      var _this2 = this;

      return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement('style', {
        dangerouslySetInnerHTML: { __html: this._css },
        ref: function ref(c) {
          _this2._root = c;
        }
      });
    }
  }]);

  return StyleSheet;
}(react__WEBPACK_IMPORTED_MODULE_0__["Component"]), _class.contextTypes = {
  _radiumStyleKeeper: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.instanceOf(_style_keeper__WEBPACK_IMPORTED_MODULE_2__["default"])
}, _temp);


/***/ }),

/***/ "./node_modules/radium/es/components/style.js":
/*!****************************************************!*\
  !*** ./node_modules/radium/es/components/style.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../css-rule-set-to-string */ "./node_modules/radium/es/css-rule-set-to-string.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_2__);
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

var _class, _temp;

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }






var Style = (_temp = _class = function (_PureComponent) {
  _inherits(Style, _PureComponent);

  function Style() {
    _classCallCheck(this, Style);

    return _possibleConstructorReturn(this, (Style.__proto__ || Object.getPrototypeOf(Style)).apply(this, arguments));
  }

  _createClass(Style, [{
    key: '_buildStyles',
    value: function _buildStyles(styles) {
      var _this2 = this;

      var userAgent = this.props.radiumConfig && this.props.radiumConfig.userAgent || this.context && this.context._radiumConfig && this.context._radiumConfig.userAgent;

      var scopeSelector = this.props.scopeSelector;

      var rootRules = Object.keys(styles).reduce(function (accumulator, selector) {
        if (_typeof(styles[selector]) !== 'object') {
          accumulator[selector] = styles[selector];
        }

        return accumulator;
      }, {});
      var rootStyles = Object.keys(rootRules).length ? Object(_css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_0__["default"])(scopeSelector || '', rootRules, userAgent) : '';

      return rootStyles + Object.keys(styles).reduce(function (accumulator, selector) {
        var rules = styles[selector];

        if (selector === 'mediaQueries') {
          accumulator += _this2._buildMediaQueryString(rules);
        } else if (_typeof(styles[selector]) === 'object') {
          var completeSelector = scopeSelector ? selector.split(',').map(function (part) {
            return scopeSelector + ' ' + part.trim();
          }).join(',') : selector;

          accumulator += Object(_css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_0__["default"])(completeSelector, rules, userAgent);
        }

        return accumulator;
      }, '');
    }
  }, {
    key: '_buildMediaQueryString',
    value: function _buildMediaQueryString(stylesByMediaQuery) {
      var _this3 = this;

      var mediaQueryString = '';

      Object.keys(stylesByMediaQuery).forEach(function (query) {
        mediaQueryString += '@media ' + query + '{' + _this3._buildStyles(stylesByMediaQuery[query]) + '}';
      });

      return mediaQueryString;
    }
  }, {
    key: 'render',
    value: function render() {
      if (!this.props.rules) {
        return null;
      }

      var styles = this._buildStyles(this.props.rules);

      return react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement('style', { dangerouslySetInnerHTML: { __html: styles } });
    }
  }]);

  return Style;
}(react__WEBPACK_IMPORTED_MODULE_1__["PureComponent"]), _class.propTypes = {
  radiumConfig: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.object,
  rules: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.object,
  scopeSelector: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.string
}, _class.contextTypes = {
  _radiumConfig: prop_types__WEBPACK_IMPORTED_MODULE_2___default.a.object
}, _class.defaultProps = {
  scopeSelector: ''
}, _temp);


/* harmony default export */ __webpack_exports__["default"] = (Style);

/***/ }),

/***/ "./node_modules/radium/es/css-rule-set-to-string.js":
/*!**********************************************************!*\
  !*** ./node_modules/radium/es/css-rule-set-to-string.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return cssRuleSetToString; });
/* harmony import */ var _append_px_if_needed__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./append-px-if-needed */ "./node_modules/radium/es/append-px-if-needed.js");
/* harmony import */ var _camel_case_props_to_dash_case__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./camel-case-props-to-dash-case */ "./node_modules/radium/es/camel-case-props-to-dash-case.js");
/* harmony import */ var _map_object__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./map-object */ "./node_modules/radium/es/map-object.js");
/* harmony import */ var _prefixer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./prefixer */ "./node_modules/radium/es/prefixer.js");





function createMarkupForStyles(style) {
  return Object.keys(style).map(function (property) {
    return property + ': ' + style[property] + ';';
  }).join('\n');
}

function cssRuleSetToString(selector, rules, userAgent) {
  if (!rules) {
    return '';
  }

  var rulesWithPx = Object(_map_object__WEBPACK_IMPORTED_MODULE_2__["default"])(rules, function (value, key) {
    return Object(_append_px_if_needed__WEBPACK_IMPORTED_MODULE_0__["default"])(key, value);
  });
  var prefixedRules = Object(_prefixer__WEBPACK_IMPORTED_MODULE_3__["getPrefixedStyle"])(rulesWithPx, userAgent);
  var cssPrefixedRules = Object(_camel_case_props_to_dash_case__WEBPACK_IMPORTED_MODULE_1__["default"])(prefixedRules);
  var serializedRules = createMarkupForStyles(cssPrefixedRules);
  return selector + '{' + serializedRules + '}';
}

/***/ }),

/***/ "./node_modules/radium/es/enhancer.js":
/*!********************************************!*\
  !*** ./node_modules/radium/es/enhancer.js ***!
  \********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return enhanceWithRadium; });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _style_keeper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./style-keeper */ "./node_modules/radium/es/style-keeper.js");
/* harmony import */ var _resolve_styles__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./resolve-styles */ "./node_modules/radium/es/resolve-styles.js");
/* harmony import */ var _get_radium_style_state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./get-radium-style-state */ "./node_modules/radium/es/get-radium-style-state.js");
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

var _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if ("value" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };

function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }








var KEYS_TO_IGNORE_WHEN_COPYING_PROPERTIES = ['arguments', 'callee', 'caller', 'length', 'name', 'prototype', 'type'];

var RADIUM_PROTO = void 0;
var RADIUM_METHODS = void 0;

function copyProperties(source, target) {
  Object.getOwnPropertyNames(source).forEach(function (key) {
    if (KEYS_TO_IGNORE_WHEN_COPYING_PROPERTIES.indexOf(key) < 0 && !target.hasOwnProperty(key)) {
      var descriptor = Object.getOwnPropertyDescriptor(source, key);
      Object.defineProperty(target, key, descriptor);
    }
  });
}

// Handle scenarios of:
// - Inherit from `React.Component` in any fashion
//   See: https://github.com/FormidableLabs/radium/issues/738
// - There's an explicit `render` field defined
function isStateless(component) {
  var proto = component.prototype || {};

  return !component.isReactComponent && !proto.isReactComponent && !component.render && !proto.render;
}

// Check if value is a real ES class in Native / Node code.
// See: https://stackoverflow.com/a/30760236
function isNativeClass(component) {
  return typeof component === 'function' && /^\s*class\s+/.test(component.toString());
}

// Handle es7 arrow functions on React class method names by detecting
// and transfering the instance method to original class prototype.
// (Using a copy of the class).
// See: https://github.com/FormidableLabs/radium/issues/738
function copyArrowFuncs(enhancedSelf, ComposedComponent) {
  RADIUM_METHODS.forEach(function (name) {
    var thisDesc = Object.getOwnPropertyDescriptor(enhancedSelf, name);
    var thisMethod = (thisDesc || {}).value;
    // Only care if have instance method.
    if (!thisMethod) {
      return;
    }
    var radiumDesc = Object.getOwnPropertyDescriptor(RADIUM_PROTO, name);
    var radiumProtoMethod = (radiumDesc || {}).value;
    var superProtoMethod = ComposedComponent.prototype[name];
    // Allow transfer when:
    // 1. have an instance method
    // 2. the super class prototype doesn't have any method
    // 3. it is not already the radium prototype's
    if (!superProtoMethod && thisMethod !== radiumProtoMethod) {
      // Transfer dynamic render component to Component prototype (copy).
      Object.defineProperty(ComposedComponent.prototype, name, thisDesc);
      // Remove instance property, leaving us to have a contrived
      // inheritance chain of (1) radium, (2) superclass.
      delete enhancedSelf[name];
    }
  });
}

function createEnhancedComponent(origComponent, ComposedComponent, config) {
  var _class, _temp;

  var RadiumEnhancer = (_temp = _class = function (_ComposedComponent) {
    _inherits(RadiumEnhancer, _ComposedComponent);

    function RadiumEnhancer() {
      _classCallCheck(this, RadiumEnhancer);

      var _this = _possibleConstructorReturn(this, (RadiumEnhancer.__proto__ || Object.getPrototypeOf(RadiumEnhancer)).apply(this, arguments));

      _this.state = _this.state || {};
      _this.state._radiumStyleState = {};
      _this._radiumIsMounted = true;

      var self = _this;

      // Handle es7 arrow functions on React class method
      copyArrowFuncs(self, ComposedComponent);
      return _this;
    }

    _createClass(RadiumEnhancer, [{
      key: 'componentWillUnmount',
      value: function componentWillUnmount() {
        if (_get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'componentWillUnmount', this)) {
          _get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'componentWillUnmount', this).call(this);
        }

        this._radiumIsMounted = false;

        if (this._radiumMouseUpListener) {
          this._radiumMouseUpListener.remove();
        }

        if (this._radiumMediaQueryListenersByQuery) {
          Object.keys(this._radiumMediaQueryListenersByQuery).forEach(function (query) {
            this._radiumMediaQueryListenersByQuery[query].remove();
          }, this);
        }
      }
    }, {
      key: 'getChildContext',
      value: function getChildContext() {
        var superChildContext = _get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'getChildContext', this) ? _get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'getChildContext', this).call(this) : {};

        if (!this.props.radiumConfig) {
          return superChildContext;
        }

        var newContext = _extends({}, superChildContext);

        if (this.props.radiumConfig) {
          newContext._radiumConfig = this.props.radiumConfig;
        }

        return newContext;
      }
    }, {
      key: 'render',
      value: function render() {
        var renderedElement = _get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'render', this).call(this);
        var currentConfig = this.props.radiumConfig || this.context._radiumConfig || config;

        if (config && currentConfig !== config) {
          currentConfig = _extends({}, config, currentConfig);
        }

        // do the style and interaction work

        var _resolveStyles = Object(_resolve_styles__WEBPACK_IMPORTED_MODULE_3__["default"])(this, renderedElement, currentConfig),
            extraStateKeyMap = _resolveStyles.extraStateKeyMap,
            element = _resolveStyles.element;

        this._extraRadiumStateKeys = Object.keys(extraStateKeyMap);

        return element;
      }

      /* eslint-disable react/no-did-update-set-state, no-unused-vars */

    }, {
      key: 'componentDidUpdate',
      value: function componentDidUpdate(prevProps, prevState, snapshot) {
        if (_get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'componentDidUpdate', this)) {
          _get(RadiumEnhancer.prototype.__proto__ || Object.getPrototypeOf(RadiumEnhancer.prototype), 'componentDidUpdate', this).call(this, prevProps, prevState, snapshot);
        }

        if (this._extraRadiumStateKeys && this._extraRadiumStateKeys.length > 0) {
          var trimmedRadiumState = this._extraRadiumStateKeys.reduce(function (state, key) {
            var extraStateKey = state[key],
                remainingState = _objectWithoutProperties(state, [key]);

            return remainingState;
          }, Object(_get_radium_style_state__WEBPACK_IMPORTED_MODULE_4__["default"])(this));

          this._lastRadiumState = trimmedRadiumState;
          this.setState({ _radiumStyleState: trimmedRadiumState });
        }
      }
      /* eslint-enable react/no-did-update-set-state, no-unused-vars */

    }]);

    return RadiumEnhancer;
  }(ComposedComponent), _class._isRadiumEnhanced = true, _temp);

  // Lazy infer the method names of the Enhancer.

  RADIUM_PROTO = RadiumEnhancer.prototype;
  RADIUM_METHODS = Object.getOwnPropertyNames(RADIUM_PROTO).filter(function (n) {
    return n !== 'constructor' && typeof RADIUM_PROTO[n] === 'function';
  });

  // Class inheritance uses Object.create and because of __proto__ issues
  // with IE <10 any static properties of the superclass aren't inherited and
  // so need to be manually populated.
  // See http://babeljs.io/docs/advanced/caveats/#classes-10-and-below-
  copyProperties(origComponent, RadiumEnhancer);

  if (true) {
    // This also fixes React Hot Loader by exposing the original components top
    // level prototype methods on the Radium enhanced prototype as discussed in
    // https://github.com/FormidableLabs/radium/issues/219.
    copyProperties(ComposedComponent.prototype, RadiumEnhancer.prototype);
  }

  // add Radium propTypes to enhanced component's propTypes
  if (RadiumEnhancer.propTypes && RadiumEnhancer.propTypes.style) {
    RadiumEnhancer.propTypes = _extends({}, RadiumEnhancer.propTypes, {
      style: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.oneOfType([prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.array, prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.object])
    });
  }

  // copy display name to enhanced component
  RadiumEnhancer.displayName = origComponent.displayName || origComponent.name || 'Component';

  // handle context
  RadiumEnhancer.contextTypes = _extends({}, RadiumEnhancer.contextTypes, {
    _radiumConfig: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.object,
    _radiumStyleKeeper: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.instanceOf(_style_keeper__WEBPACK_IMPORTED_MODULE_2__["default"])
  });

  RadiumEnhancer.childContextTypes = _extends({}, RadiumEnhancer.childContextTypes, {
    _radiumConfig: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.object,
    _radiumStyleKeeper: prop_types__WEBPACK_IMPORTED_MODULE_1___default.a.instanceOf(_style_keeper__WEBPACK_IMPORTED_MODULE_2__["default"])
  });

  return RadiumEnhancer;
}

function createComposedFromStatelessFunc(ComposedComponent, component) {
  ComposedComponent = function (_Component) {
    _inherits(ComposedComponent, _Component);

    function ComposedComponent() {
      _classCallCheck(this, ComposedComponent);

      return _possibleConstructorReturn(this, (ComposedComponent.__proto__ || Object.getPrototypeOf(ComposedComponent)).apply(this, arguments));
    }

    _createClass(ComposedComponent, [{
      key: 'render',
      value: function render() {
        return component(this.props, this.context);
      }
    }]);

    return ComposedComponent;
  }(react__WEBPACK_IMPORTED_MODULE_0__["Component"]);
  ComposedComponent.displayName = component.displayName || component.name;
  return ComposedComponent;
}

function createComposedFromNativeClass(ComposedComponent) {
  ComposedComponent = function (OrigComponent) {
    function NewComponent() {
      // Use Reflect.construct to simulate 'new'
      var obj = Reflect.construct(OrigComponent, arguments, this.constructor);
      return obj;
    }
    // $FlowFixMe
    Reflect.setPrototypeOf(NewComponent.prototype, OrigComponent.prototype);
    // $FlowFixMe
    Reflect.setPrototypeOf(NewComponent, OrigComponent);
    return NewComponent;
  }(ComposedComponent);
  return ComposedComponent;
}

function enhanceWithRadium(configOrComposedComponent) {
  var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};

  if (typeof configOrComposedComponent !== 'function') {
    return createFactoryFromConfig(config, configOrComposedComponent);
  }

  var origComponent = configOrComposedComponent;
  var _ComposedComponent2 = origComponent;

  // Radium is transpiled in npm, so it isn't really using es6 classes at
  // runtime.  However, the user of Radium might be.  In this case we have
  // to maintain forward compatibility with native es classes.
  if (isNativeClass(_ComposedComponent2)) {
    _ComposedComponent2 = createComposedFromNativeClass(_ComposedComponent2);
  }

  // Handle stateless components
  if (isStateless(_ComposedComponent2)) {
    _ComposedComponent2 = createComposedFromStatelessFunc(_ComposedComponent2, origComponent);
  }

  // Shallow copy composed if still original (we may mutate later).
  if (_ComposedComponent2 === origComponent) {
    _ComposedComponent2 = function (_ComposedComponent3) {
      _inherits(ComposedComponent, _ComposedComponent3);

      function ComposedComponent() {
        _classCallCheck(this, ComposedComponent);

        return _possibleConstructorReturn(this, (ComposedComponent.__proto__ || Object.getPrototypeOf(ComposedComponent)).apply(this, arguments));
      }

      return ComposedComponent;
    }(_ComposedComponent2);
  }

  return createEnhancedComponent(origComponent, _ComposedComponent2, config);
}

function createFactoryFromConfig(config, configOrComposedComponent) {
  var newConfig = _extends({}, config, configOrComposedComponent);
  return function (configOrComponent) {
    return enhanceWithRadium(configOrComponent, newConfig);
  };
}

/***/ }),

/***/ "./node_modules/radium/es/get-radium-style-state.js":
/*!**********************************************************!*\
  !*** ./node_modules/radium/es/get-radium-style-state.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
var getRadiumStyleState = function getRadiumStyleState(component) {
  return component._lastRadiumState || component.state && component.state._radiumStyleState || {};
};

/* harmony default export */ __webpack_exports__["default"] = (getRadiumStyleState);

/***/ }),

/***/ "./node_modules/radium/es/get-state-key.js":
/*!*************************************************!*\
  !*** ./node_modules/radium/es/get-state-key.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
var getStateKey = function getStateKey(renderedElement) {
  return typeof renderedElement.ref === 'string' ? renderedElement.ref : renderedElement.key;
};

/* harmony default export */ __webpack_exports__["default"] = (getStateKey);

/***/ }),

/***/ "./node_modules/radium/es/get-state.js":
/*!*********************************************!*\
  !*** ./node_modules/radium/es/get-state.js ***!
  \*********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _clean_state_key__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./clean-state-key */ "./node_modules/radium/es/clean-state-key.js");


var getState = function getState(state, elementKey, value) {
  var key = Object(_clean_state_key__WEBPACK_IMPORTED_MODULE_0__["default"])(elementKey);

  return !!state && !!state._radiumStyleState && !!state._radiumStyleState[key] && state._radiumStyleState[key][value];
};

/* harmony default export */ __webpack_exports__["default"] = (getState);

/***/ }),

/***/ "./node_modules/radium/es/hash.js":
/*!****************************************!*\
  !*** ./node_modules/radium/es/hash.js ***!
  \****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return hash; });


// a simple djb2 hash based on hash-string:
// https://github.com/MatthewBarker/hash-string/blob/master/source/hash-string.js
// returns a hex-encoded hash
function hash(text) {
  if (!text) {
    return '';
  }

  var hashValue = 5381;
  var index = text.length - 1;

  while (index) {
    hashValue = hashValue * 33 ^ text.charCodeAt(index);
    index -= 1;
  }

  return (hashValue >>> 0).toString(16);
}

/***/ }),

/***/ "./node_modules/radium/es/index.js":
/*!*****************************************!*\
  !*** ./node_modules/radium/es/index.js ***!
  \*****************************************/
/*! exports provided: default, Plugins, Style, StyleRoot, getState, keyframes */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _enhancer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enhancer */ "./node_modules/radium/es/enhancer.js");
/* harmony import */ var _plugins__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./plugins */ "./node_modules/radium/es/plugins/index.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Plugins", function() { return _plugins__WEBPACK_IMPORTED_MODULE_1__["default"]; });

/* harmony import */ var _components_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/style */ "./node_modules/radium/es/components/style.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Style", function() { return _components_style__WEBPACK_IMPORTED_MODULE_2__["default"]; });

/* harmony import */ var _components_style_root__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/style-root */ "./node_modules/radium/es/components/style-root.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "StyleRoot", function() { return _components_style_root__WEBPACK_IMPORTED_MODULE_3__["default"]; });

/* harmony import */ var _get_state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./get-state */ "./node_modules/radium/es/get-state.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getState", function() { return _get_state__WEBPACK_IMPORTED_MODULE_4__["default"]; });

/* harmony import */ var _keyframes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./keyframes */ "./node_modules/radium/es/keyframes.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "keyframes", function() { return _keyframes__WEBPACK_IMPORTED_MODULE_5__["default"]; });

/* harmony import */ var _resolve_styles__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./resolve-styles */ "./node_modules/radium/es/resolve-styles.js");








function Radium(ComposedComponent) {
  return Object(_enhancer__WEBPACK_IMPORTED_MODULE_0__["default"])(ComposedComponent);
}

// Legacy object support.
//
// Normally it would be disfavored to attach these to the `Radium` object
// because it defeats tree-shaking, using instead the ESM exports. But,
// the `Radium` `Enhancer` uses **all** of these, so there's no extra "cost"
// to them being explicitly on the `Radium` object.
Radium.Plugins = _plugins__WEBPACK_IMPORTED_MODULE_1__["default"];
Radium.Style = _components_style__WEBPACK_IMPORTED_MODULE_2__["default"];
Radium.StyleRoot = _components_style_root__WEBPACK_IMPORTED_MODULE_3__["default"];
Radium.getState = _get_state__WEBPACK_IMPORTED_MODULE_4__["default"];
Radium.keyframes = _keyframes__WEBPACK_IMPORTED_MODULE_5__["default"];

if (true) {
  Radium.TestMode = {
    clearState: _resolve_styles__WEBPACK_IMPORTED_MODULE_6__["default"].__clearStateForTests,
    disable: _resolve_styles__WEBPACK_IMPORTED_MODULE_6__["default"].__setTestMode.bind(null, false),
    enable: _resolve_styles__WEBPACK_IMPORTED_MODULE_6__["default"].__setTestMode.bind(null, true)
  };
}

/* harmony default export */ __webpack_exports__["default"] = (Radium);

// ESM re-exports


/***/ }),

/***/ "./node_modules/radium/es/keyframes.js":
/*!*********************************************!*\
  !*** ./node_modules/radium/es/keyframes.js ***!
  \*********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return keyframes; });
/* harmony import */ var _css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./css-rule-set-to-string */ "./node_modules/radium/es/css-rule-set-to-string.js");
/* harmony import */ var _hash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hash */ "./node_modules/radium/es/hash.js");
/* harmony import */ var _prefixer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./prefixer */ "./node_modules/radium/es/prefixer.js");




function keyframes(keyframeRules, name) {
  return {
    __radiumKeyframes: true,
    __process: function __process(userAgent) {
      var keyframesPrefixed = Object(_prefixer__WEBPACK_IMPORTED_MODULE_2__["getPrefixedKeyframes"])(userAgent);
      var rules = Object.keys(keyframeRules).map(function (percentage) {
        return Object(_css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_0__["default"])(percentage, keyframeRules[percentage], userAgent);
      }).join('\n');
      var animationName = (name ? name + '-' : '') + 'radium-animation-' + Object(_hash__WEBPACK_IMPORTED_MODULE_1__["default"])(rules);
      var css = '@' + keyframesPrefixed + ' ' + animationName + ' {\n' + rules + '\n}\n';
      return { css: css, animationName: animationName };
    }
  };
}

/***/ }),

/***/ "./node_modules/radium/es/map-object.js":
/*!**********************************************!*\
  !*** ./node_modules/radium/es/map-object.js ***!
  \**********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return mapObject; });
function mapObject(object, mapper) {
  return Object.keys(object).reduce(function (result, key) {
    result[key] = mapper(object[key], key);
    return result;
  }, {});
}

/***/ }),

/***/ "./node_modules/radium/es/merge-styles.js":
/*!************************************************!*\
  !*** ./node_modules/radium/es/merge-styles.js ***!
  \************************************************/
/*! exports provided: isNestedStyle, mergeStyles */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isNestedStyle", function() { return isNestedStyle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mergeStyles", function() { return mergeStyles; });
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

function isNestedStyle(value) {
  // Don't merge objects overriding toString, since they should be converted
  // to string values.
  return value && value.constructor === Object && value.toString === Object.prototype.toString;
}

// Merge style objects. Deep merge plain object values.
function mergeStyles(styles) {
  var result = {};

  styles.forEach(function (style) {
    if (!style || (typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object') {
      return;
    }

    if (Array.isArray(style)) {
      style = mergeStyles(style);
    }

    Object.keys(style).forEach(function (key) {
      // Simple case, nothing nested
      if (!isNestedStyle(style[key]) || !isNestedStyle(result[key])) {
        result[key] = style[key];
        return;
      }

      // If nested media, don't merge the nested styles, append a space to the
      // end (benign when converted to CSS). This way we don't end up merging
      // media queries that appear later in the chain with those that appear
      // earlier.
      if (key.indexOf('@media') === 0) {
        var newKey = key;
        // eslint-disable-next-line no-constant-condition
        while (true) {
          newKey += ' ';
          if (!result[newKey]) {
            result[newKey] = style[key];
            return;
          }
        }
      }

      // Merge all other nested styles recursively
      result[key] = mergeStyles([result[key], style[key]]);
    });
  });

  return result;
}

/***/ }),

/***/ "./node_modules/radium/es/plugins/check-props-plugin.js":
/*!**************************************************************!*\
  !*** ./node_modules/radium/es/plugins/check-props-plugin.js ***!
  \**************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

var _checkProps = function checkProps() {};

if (true) {
  // Warn if you use longhand and shorthand properties in the same style
  // object.
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Shorthand_properties

  var shorthandPropertyExpansions = {
    background: ['backgroundAttachment', 'backgroundBlendMode', 'backgroundClip', 'backgroundColor', 'backgroundImage', 'backgroundOrigin', 'backgroundPosition', 'backgroundPositionX', 'backgroundPositionY', 'backgroundRepeat', 'backgroundRepeatX', 'backgroundRepeatY', 'backgroundSize'],
    border: ['borderBottom', 'borderBottomColor', 'borderBottomStyle', 'borderBottomWidth', 'borderColor', 'borderLeft', 'borderLeftColor', 'borderLeftStyle', 'borderLeftWidth', 'borderRight', 'borderRightColor', 'borderRightStyle', 'borderRightWidth', 'borderStyle', 'borderTop', 'borderTopColor', 'borderTopStyle', 'borderTopWidth', 'borderWidth'],
    borderImage: ['borderImageOutset', 'borderImageRepeat', 'borderImageSlice', 'borderImageSource', 'borderImageWidth'],
    borderRadius: ['borderBottomLeftRadius', 'borderBottomRightRadius', 'borderTopLeftRadius', 'borderTopRightRadius'],
    font: ['fontFamily', 'fontKerning', 'fontSize', 'fontStretch', 'fontStyle', 'fontVariant', 'fontVariantLigatures', 'fontWeight', 'lineHeight'],
    listStyle: ['listStyleImage', 'listStylePosition', 'listStyleType'],
    margin: ['marginBottom', 'marginLeft', 'marginRight', 'marginTop'],
    padding: ['paddingBottom', 'paddingLeft', 'paddingRight', 'paddingTop'],
    transition: ['transitionDelay', 'transitionDuration', 'transitionProperty', 'transitionTimingFunction']
  };

  _checkProps = function checkProps(config) {
    var componentName = config.componentName,
        style = config.style;

    if ((typeof style === 'undefined' ? 'undefined' : _typeof(style)) !== 'object' || !style) {
      return;
    }

    var styleKeys = Object.keys(style);
    styleKeys.forEach(function (styleKey) {
      if (Array.isArray(shorthandPropertyExpansions[styleKey]) && shorthandPropertyExpansions[styleKey].some(function (sp) {
        return styleKeys.indexOf(sp) !== -1;
      })) {
        if (true) {
          /* eslint-disable no-console */
          console.warn('Radium: property "' + styleKey + '" in style object', style, ': do not mix longhand and ' + 'shorthand properties in the same style object. Check the render ' + 'method of ' + componentName + '.', 'See https://github.com/FormidableLabs/radium/issues/95 for more ' + 'information.');
          /* eslint-enable no-console */
        }
      }
    });

    styleKeys.forEach(function (k) {
      return _checkProps(_extends({}, config, { style: style[k] }));
    });
    return;
  };
}

/* harmony default export */ __webpack_exports__["default"] = (_checkProps);

/***/ }),

/***/ "./node_modules/radium/es/plugins/index.js":
/*!*************************************************!*\
  !*** ./node_modules/radium/es/plugins/index.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _check_props_plugin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./check-props-plugin */ "./node_modules/radium/es/plugins/check-props-plugin.js");
/* harmony import */ var _keyframes_plugin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./keyframes-plugin */ "./node_modules/radium/es/plugins/keyframes-plugin.js");
/* harmony import */ var _merge_style_array_plugin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./merge-style-array-plugin */ "./node_modules/radium/es/plugins/merge-style-array-plugin.js");
/* harmony import */ var _prefix_plugin__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./prefix-plugin */ "./node_modules/radium/es/plugins/prefix-plugin.js");
/* harmony import */ var _remove_nested_styles_plugin__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./remove-nested-styles-plugin */ "./node_modules/radium/es/plugins/remove-nested-styles-plugin.js");
/* harmony import */ var _resolve_interaction_styles_plugin__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./resolve-interaction-styles-plugin */ "./node_modules/radium/es/plugins/resolve-interaction-styles-plugin.js");
/* harmony import */ var _resolve_media_queries_plugin__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./resolve-media-queries-plugin */ "./node_modules/radium/es/plugins/resolve-media-queries-plugin.js");
/* harmony import */ var _visited_plugin__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./visited-plugin */ "./node_modules/radium/es/plugins/visited-plugin.js");



/* eslint-disable block-scoped-const */









/* harmony default export */ __webpack_exports__["default"] = ({
  checkProps: _check_props_plugin__WEBPACK_IMPORTED_MODULE_0__["default"],
  keyframes: _keyframes_plugin__WEBPACK_IMPORTED_MODULE_1__["default"],
  mergeStyleArray: _merge_style_array_plugin__WEBPACK_IMPORTED_MODULE_2__["default"],
  prefix: _prefix_plugin__WEBPACK_IMPORTED_MODULE_3__["default"],
  removeNestedStyles: _remove_nested_styles_plugin__WEBPACK_IMPORTED_MODULE_4__["default"],
  resolveInteractionStyles: _resolve_interaction_styles_plugin__WEBPACK_IMPORTED_MODULE_5__["default"],
  resolveMediaQueries: _resolve_media_queries_plugin__WEBPACK_IMPORTED_MODULE_6__["default"],
  visited: _visited_plugin__WEBPACK_IMPORTED_MODULE_7__["default"]
});

/***/ }),

/***/ "./node_modules/radium/es/plugins/keyframes-plugin.js":
/*!************************************************************!*\
  !*** ./node_modules/radium/es/plugins/keyframes-plugin.js ***!
  \************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return keyframesPlugin; });
function keyframesPlugin(_ref // eslint-disable-line no-shadow
) {
  var addCSS = _ref.addCSS,
      config = _ref.config,
      style = _ref.style;

  var processKeyframeStyle = function processKeyframeStyle(value) {
    var keyframesValue = value;

    var _keyframesValue$__pro = keyframesValue.__process(config.userAgent),
        animationName = _keyframesValue$__pro.animationName,
        css = _keyframesValue$__pro.css;

    addCSS(css);
    return animationName;
  };

  var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) {
    var value = style[key];
    var isKeyframeArray = Array.isArray(value);

    if (key === 'animationName' && value && (value.__radiumKeyframes || isKeyframeArray)) {
      if (isKeyframeArray) {
        value = value.map(processKeyframeStyle).join(', ');
      } else {
        value = processKeyframeStyle(value);
      }
    }

    newStyleInProgress[key] = value;
    return newStyleInProgress;
  }, {});
  return { style: newStyle };
}

/***/ }),

/***/ "./node_modules/radium/es/plugins/merge-style-array-plugin.js":
/*!********************************************************************!*\
  !*** ./node_modules/radium/es/plugins/merge-style-array-plugin.js ***!
  \********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);


// Convenient syntax for multiple styles: `style={[style1, style2, etc]}`
// Ignores non-objects, so you can do `this.state.isCool && styles.cool`.
var mergeStyleArrayPlugin = function mergeStyleArrayPlugin(_ref) {
  var style = _ref.style,
      mergeStyles = _ref.mergeStyles;

  // eslint-disable-line no-shadow
  var newStyle = Array.isArray(style) ? mergeStyles(style) : style;
  return { style: newStyle };
};

/* harmony default export */ __webpack_exports__["default"] = (mergeStyleArrayPlugin);

/***/ }),

/***/ "./node_modules/radium/es/plugins/mouse-up-listener.js":
/*!*************************************************************!*\
  !*** ./node_modules/radium/es/plugins/mouse-up-listener.js ***!
  \*************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
var _callbacks = [];
var _mouseUpListenerIsActive = false;

function _handleMouseUp() {
  _callbacks.forEach(function (callback) {
    callback();
  });
}

var subscribe = function subscribe(callback) {
  if (_callbacks.indexOf(callback) === -1) {
    _callbacks.push(callback);
  }

  if (!_mouseUpListenerIsActive) {
    window.addEventListener('mouseup', _handleMouseUp);
    _mouseUpListenerIsActive = true;
  }

  return {
    remove: function remove() {
      var index = _callbacks.indexOf(callback);
      _callbacks.splice(index, 1);

      if (_callbacks.length === 0 && _mouseUpListenerIsActive) {
        window.removeEventListener('mouseup', _handleMouseUp);
        _mouseUpListenerIsActive = false;
      }
    }
  };
};

/* harmony default export */ __webpack_exports__["default"] = ({
  subscribe: subscribe,
  __triggerForTests: _handleMouseUp
});

/***/ }),

/***/ "./node_modules/radium/es/plugins/prefix-plugin.js":
/*!*********************************************************!*\
  !*** ./node_modules/radium/es/plugins/prefix-plugin.js ***!
  \*********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return prefixPlugin; });
/* harmony import */ var _prefixer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../prefixer */ "./node_modules/radium/es/prefixer.js");




function prefixPlugin(_ref // eslint-disable-line no-shadow
) {
  var config = _ref.config,
      style = _ref.style;

  var newStyle = Object(_prefixer__WEBPACK_IMPORTED_MODULE_0__["getPrefixedStyle"])(style, config.userAgent);
  return { style: newStyle };
}

/***/ }),

/***/ "./node_modules/radium/es/plugins/remove-nested-styles-plugin.js":
/*!***********************************************************************!*\
  !*** ./node_modules/radium/es/plugins/remove-nested-styles-plugin.js ***!
  \***********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return removeNestedStyles; });


function removeNestedStyles(_ref) {
  var isNestedStyle = _ref.isNestedStyle,
      style = _ref.style;

  // eslint-disable-line no-shadow
  var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) {
    var value = style[key];
    if (!isNestedStyle(value)) {
      newStyleInProgress[key] = value;
    }
    return newStyleInProgress;
  }, {});

  return {
    style: newStyle
  };
}

/***/ }),

/***/ "./node_modules/radium/es/plugins/resolve-interaction-styles-plugin.js":
/*!*****************************************************************************!*\
  !*** ./node_modules/radium/es/plugins/resolve-interaction-styles-plugin.js ***!
  \*****************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _mouse_up_listener__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mouse-up-listener */ "./node_modules/radium/es/plugins/mouse-up-listener.js");




var _isInteractiveStyleField = function _isInteractiveStyleField(styleFieldName) {
  return styleFieldName === ':hover' || styleFieldName === ':active' || styleFieldName === ':focus';
};

var resolveInteractionStyles = function resolveInteractionStyles(config) {
  var ExecutionEnvironment = config.ExecutionEnvironment,
      getComponentField = config.getComponentField,
      getState = config.getState,
      mergeStyles = config.mergeStyles,
      props = config.props,
      setState = config.setState,
      style = config.style;


  var newComponentFields = {};
  var newProps = {};

  // Only add handlers if necessary
  if (style[':hover']) {
    // Always call the existing handler if one is already defined.
    // This code, and the very similar ones below, could be abstracted a bit
    // more, but it hurts readability IMO.
    var existingOnMouseEnter = props.onMouseEnter;
    newProps.onMouseEnter = function (e) {
      existingOnMouseEnter && existingOnMouseEnter(e);
      setState(':hover', true);
    };

    var existingOnMouseLeave = props.onMouseLeave;
    newProps.onMouseLeave = function (e) {
      existingOnMouseLeave && existingOnMouseLeave(e);
      setState(':hover', false);
    };
  }

  if (style[':active']) {
    var existingOnMouseDown = props.onMouseDown;
    newProps.onMouseDown = function (e) {
      existingOnMouseDown && existingOnMouseDown(e);
      newComponentFields._lastMouseDown = Date.now();
      setState(':active', 'viamousedown');
    };

    var existingOnKeyDown = props.onKeyDown;
    newProps.onKeyDown = function (e) {
      existingOnKeyDown && existingOnKeyDown(e);
      if (e.key === ' ' || e.key === 'Enter') {
        setState(':active', 'viakeydown');
      }
    };

    var existingOnKeyUp = props.onKeyUp;
    newProps.onKeyUp = function (e) {
      existingOnKeyUp && existingOnKeyUp(e);
      if (e.key === ' ' || e.key === 'Enter') {
        setState(':active', false);
      }
    };
  }

  if (style[':focus']) {
    var existingOnFocus = props.onFocus;
    newProps.onFocus = function (e) {
      existingOnFocus && existingOnFocus(e);
      setState(':focus', true);
    };

    var existingOnBlur = props.onBlur;
    newProps.onBlur = function (e) {
      existingOnBlur && existingOnBlur(e);
      setState(':focus', false);
    };
  }

  if (style[':active'] && !getComponentField('_radiumMouseUpListener') && ExecutionEnvironment.canUseEventListeners) {
    newComponentFields._radiumMouseUpListener = _mouse_up_listener__WEBPACK_IMPORTED_MODULE_0__["default"].subscribe(function () {
      Object.keys(getComponentField('state')._radiumStyleState).forEach(function (key) {
        if (getState(':active', key) === 'viamousedown') {
          setState(':active', false, key);
        }
      });
    });
  }

  // Merge the styles in the order they were defined
  var interactionStyles = props.disabled ? [style[':disabled']] : Object.keys(style).filter(function (name) {
    return _isInteractiveStyleField(name) && getState(name);
  }).map(function (name) {
    return style[name];
  });

  var newStyle = mergeStyles([style].concat(interactionStyles));

  // Remove interactive styles
  newStyle = Object.keys(newStyle).reduce(function (styleWithoutInteractions, name) {
    if (!_isInteractiveStyleField(name) && name !== ':disabled') {
      styleWithoutInteractions[name] = newStyle[name];
    }
    return styleWithoutInteractions;
  }, {});

  return {
    componentFields: newComponentFields,
    props: newProps,
    style: newStyle
  };
};

/* harmony default export */ __webpack_exports__["default"] = (resolveInteractionStyles);

/***/ }),

/***/ "./node_modules/radium/es/plugins/resolve-media-queries-plugin.js":
/*!************************************************************************!*\
  !*** ./node_modules/radium/es/plugins/resolve-media-queries-plugin.js ***!
  \************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return resolveMediaQueries; });
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var _windowMatchMedia = void 0;
function _getWindowMatchMedia(ExecutionEnvironment) {
  if (_windowMatchMedia === undefined) {
    _windowMatchMedia = !!ExecutionEnvironment.canUseDOM && !!window && !!window.matchMedia && function (mediaQueryString) {
      return window.matchMedia(mediaQueryString);
    } || null;
  }
  return _windowMatchMedia;
}

function _filterObject(obj, predicate) {
  return Object.keys(obj).filter(function (key) {
    return predicate(obj[key], key);
  }).reduce(function (result, key) {
    result[key] = obj[key];
    return result;
  }, {});
}

function _removeMediaQueries(style) {
  return Object.keys(style).reduce(function (styleWithoutMedia, key) {
    if (key.indexOf('@media') !== 0) {
      styleWithoutMedia[key] = style[key];
    }
    return styleWithoutMedia;
  }, {});
}

function _topLevelRulesToCSS(_ref) {
  var addCSS = _ref.addCSS,
      appendImportantToEachValue = _ref.appendImportantToEachValue,
      cssRuleSetToString = _ref.cssRuleSetToString,
      hash = _ref.hash,
      isNestedStyle = _ref.isNestedStyle,
      style = _ref.style,
      userAgent = _ref.userAgent;

  var className = '';
  Object.keys(style).filter(function (name) {
    return name.indexOf('@media') === 0;
  }).map(function (query) {
    var topLevelRules = appendImportantToEachValue(_filterObject(style[query], function (value) {
      return !isNestedStyle(value);
    }));

    if (!Object.keys(topLevelRules).length) {
      return;
    }

    var ruleCSS = cssRuleSetToString('', topLevelRules, userAgent);

    // CSS classes cannot start with a number
    var mediaQueryClassName = 'rmq-' + hash(query + ruleCSS);
    var css = query + '{ .' + mediaQueryClassName + ruleCSS + '}';

    addCSS(css);

    className += (className ? ' ' : '') + mediaQueryClassName;
  });
  return className;
}

function _subscribeToMediaQuery(_ref2) {
  var listener = _ref2.listener,
      listenersByQuery = _ref2.listenersByQuery,
      matchMedia = _ref2.matchMedia,
      mediaQueryListsByQuery = _ref2.mediaQueryListsByQuery,
      query = _ref2.query;

  query = query.replace('@media ', '');

  var mql = mediaQueryListsByQuery[query];
  if (!mql && matchMedia) {
    mediaQueryListsByQuery[query] = mql = matchMedia(query);
  }

  if (!listenersByQuery || !listenersByQuery[query]) {
    mql.addListener(listener);

    listenersByQuery[query] = {
      remove: function remove() {
        mql.removeListener(listener);
      }
    };
  }
  return mql;
}

function resolveMediaQueries(_ref3) {
  var ExecutionEnvironment = _ref3.ExecutionEnvironment,
      addCSS = _ref3.addCSS,
      appendImportantToEachValue = _ref3.appendImportantToEachValue,
      config = _ref3.config,
      cssRuleSetToString = _ref3.cssRuleSetToString,
      getComponentField = _ref3.getComponentField,
      getGlobalState = _ref3.getGlobalState,
      hash = _ref3.hash,
      isNestedStyle = _ref3.isNestedStyle,
      mergeStyles = _ref3.mergeStyles,
      props = _ref3.props,
      setState = _ref3.setState,
      style = _ref3.style;

  // eslint-disable-line no-shadow
  var newStyle = _removeMediaQueries(style);
  var mediaQueryClassNames = _topLevelRulesToCSS({
    addCSS: addCSS,
    appendImportantToEachValue: appendImportantToEachValue,
    cssRuleSetToString: cssRuleSetToString,
    hash: hash,
    isNestedStyle: isNestedStyle,
    style: style,
    userAgent: config.userAgent
  });

  var newProps = mediaQueryClassNames ? {
    className: mediaQueryClassNames + (props.className ? ' ' + props.className : '')
  } : null;

  var matchMedia = config.matchMedia || _getWindowMatchMedia(ExecutionEnvironment);

  if (!matchMedia) {
    return {
      props: newProps,
      style: newStyle
    };
  }

  var listenersByQuery = _extends({}, getComponentField('_radiumMediaQueryListenersByQuery'));
  var mediaQueryListsByQuery = getGlobalState('mediaQueryListsByQuery') || {};

  Object.keys(style).filter(function (name) {
    return name.indexOf('@media') === 0;
  }).map(function (query) {
    var nestedRules = _filterObject(style[query], isNestedStyle);

    if (!Object.keys(nestedRules).length) {
      return;
    }

    var mql = _subscribeToMediaQuery({
      listener: function listener() {
        return setState(query, mql.matches, '_all');
      },
      listenersByQuery: listenersByQuery,
      matchMedia: matchMedia,
      mediaQueryListsByQuery: mediaQueryListsByQuery,
      query: query
    });

    // Apply media query states
    if (mql.matches) {
      newStyle = mergeStyles([newStyle, nestedRules]);
    }
  });

  return {
    componentFields: {
      _radiumMediaQueryListenersByQuery: listenersByQuery
    },
    globalState: { mediaQueryListsByQuery: mediaQueryListsByQuery },
    props: newProps,
    style: newStyle
  };
}

/***/ }),

/***/ "./node_modules/radium/es/plugins/visited-plugin.js":
/*!**********************************************************!*\
  !*** ./node_modules/radium/es/plugins/visited-plugin.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return visited; });


function visited(_ref) {
  var addCSS = _ref.addCSS,
      appendImportantToEachValue = _ref.appendImportantToEachValue,
      config = _ref.config,
      cssRuleSetToString = _ref.cssRuleSetToString,
      hash = _ref.hash,
      props = _ref.props,
      style = _ref.style;

  // eslint-disable-line no-shadow
  var className = props.className;

  var newStyle = Object.keys(style).reduce(function (newStyleInProgress, key) {
    var value = style[key];
    if (key === ':visited') {
      value = appendImportantToEachValue(value);
      var ruleCSS = cssRuleSetToString('', value, config.userAgent);
      var visitedClassName = 'rad-' + hash(ruleCSS);
      var css = '.' + visitedClassName + ':visited' + ruleCSS;

      addCSS(css);
      className = (className ? className + ' ' : '') + visitedClassName;
    } else {
      newStyleInProgress[key] = value;
    }

    return newStyleInProgress;
  }, {});

  return {
    props: className === props.className ? null : { className: className },
    style: newStyle
  };
}

/***/ }),

/***/ "./node_modules/radium/es/prefix-data/dynamic.js":
/*!*******************************************************!*\
  !*** ./node_modules/radium/es/prefix-data/dynamic.js ***!
  \*******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_calc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/calc */ "./node_modules/inline-style-prefixer/dynamic/plugins/calc.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_calc__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_calc__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/crossFade */ "./node_modules/inline-style-prefixer/dynamic/plugins/crossFade.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_cursor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/cursor */ "./node_modules/inline-style-prefixer/dynamic/plugins/cursor.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_cursor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_cursor__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_filter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/filter */ "./node_modules/inline-style-prefixer/dynamic/plugins/filter.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_filter__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_filter__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/flex */ "./node_modules/inline-style-prefixer/dynamic/plugins/flex.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flex__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_flex__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/flexboxIE */ "./node_modules/inline-style-prefixer/dynamic/plugins/flexboxIE.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/flexboxOld */ "./node_modules/inline-style-prefixer/dynamic/plugins/flexboxOld.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_gradient__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/gradient */ "./node_modules/inline-style-prefixer/dynamic/plugins/gradient.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_gradient__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_gradient__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/imageSet */ "./node_modules/inline-style-prefixer/dynamic/plugins/imageSet.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_position__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/position */ "./node_modules/inline-style-prefixer/dynamic/plugins/position.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_position__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_position__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_sizing__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/sizing */ "./node_modules/inline-style-prefixer/dynamic/plugins/sizing.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_sizing__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_sizing__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var inline_style_prefixer_dynamic_plugins_transition__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! inline-style-prefixer/dynamic/plugins/transition */ "./node_modules/inline-style-prefixer/dynamic/plugins/transition.js");
/* harmony import */ var inline_style_prefixer_dynamic_plugins_transition__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_plugins_transition__WEBPACK_IMPORTED_MODULE_11__);













/* harmony default export */ __webpack_exports__["default"] = ({
  plugins: [inline_style_prefixer_dynamic_plugins_calc__WEBPACK_IMPORTED_MODULE_0___default.a, inline_style_prefixer_dynamic_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1___default.a, inline_style_prefixer_dynamic_plugins_cursor__WEBPACK_IMPORTED_MODULE_2___default.a, inline_style_prefixer_dynamic_plugins_filter__WEBPACK_IMPORTED_MODULE_3___default.a, inline_style_prefixer_dynamic_plugins_flex__WEBPACK_IMPORTED_MODULE_4___default.a, inline_style_prefixer_dynamic_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5___default.a, inline_style_prefixer_dynamic_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6___default.a, inline_style_prefixer_dynamic_plugins_gradient__WEBPACK_IMPORTED_MODULE_7___default.a, inline_style_prefixer_dynamic_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8___default.a, inline_style_prefixer_dynamic_plugins_position__WEBPACK_IMPORTED_MODULE_9___default.a, inline_style_prefixer_dynamic_plugins_sizing__WEBPACK_IMPORTED_MODULE_10___default.a, inline_style_prefixer_dynamic_plugins_transition__WEBPACK_IMPORTED_MODULE_11___default.a],
  prefixMap: {
    chrome: {
      transform: 35,
      transformOrigin: 35,
      transformOriginX: 35,
      transformOriginY: 35,
      backfaceVisibility: 35,
      perspective: 35,
      perspectiveOrigin: 35,
      transformStyle: 35,
      transformOriginZ: 35,
      animation: 42,
      animationDelay: 42,
      animationDirection: 42,
      animationFillMode: 42,
      animationDuration: 42,
      animationIterationCount: 42,
      animationName: 42,
      animationPlayState: 42,
      animationTimingFunction: 42,
      appearance: 66,
      userSelect: 53,
      fontKerning: 32,
      textEmphasisPosition: 66,
      textEmphasis: 66,
      textEmphasisStyle: 66,
      textEmphasisColor: 66,
      boxDecorationBreak: 66,
      clipPath: 54,
      maskImage: 66,
      maskMode: 66,
      maskRepeat: 66,
      maskPosition: 66,
      maskClip: 66,
      maskOrigin: 66,
      maskSize: 66,
      maskComposite: 66,
      mask: 66,
      maskBorderSource: 66,
      maskBorderMode: 66,
      maskBorderSlice: 66,
      maskBorderWidth: 66,
      maskBorderOutset: 66,
      maskBorderRepeat: 66,
      maskBorder: 66,
      maskType: 66,
      textDecorationStyle: 56,
      textDecorationSkip: 56,
      textDecorationLine: 56,
      textDecorationColor: 56,
      filter: 52,
      fontFeatureSettings: 47,
      breakAfter: 49,
      breakBefore: 49,
      breakInside: 49,
      columnCount: 49,
      columnFill: 49,
      columnGap: 49,
      columnRule: 49,
      columnRuleColor: 49,
      columnRuleStyle: 49,
      columnRuleWidth: 49,
      columns: 49,
      columnSpan: 49,
      columnWidth: 49,
      writingMode: 47
    },
    safari: {
      flex: 8,
      flexBasis: 8,
      flexDirection: 8,
      flexGrow: 8,
      flexFlow: 8,
      flexShrink: 8,
      flexWrap: 8,
      alignContent: 8,
      alignItems: 8,
      alignSelf: 8,
      justifyContent: 8,
      order: 8,
      transition: 6,
      transitionDelay: 6,
      transitionDuration: 6,
      transitionProperty: 6,
      transitionTimingFunction: 6,
      transform: 8,
      transformOrigin: 8,
      transformOriginX: 8,
      transformOriginY: 8,
      backfaceVisibility: 8,
      perspective: 8,
      perspectiveOrigin: 8,
      transformStyle: 8,
      transformOriginZ: 8,
      animation: 8,
      animationDelay: 8,
      animationDirection: 8,
      animationFillMode: 8,
      animationDuration: 8,
      animationIterationCount: 8,
      animationName: 8,
      animationPlayState: 8,
      animationTimingFunction: 8,
      appearance: 11,
      userSelect: 11,
      backdropFilter: 11,
      fontKerning: 9,
      scrollSnapType: 10.1,
      scrollSnapPointsX: 10.1,
      scrollSnapPointsY: 10.1,
      scrollSnapDestination: 10.1,
      scrollSnapCoordinate: 10.1,
      textEmphasisPosition: 7,
      textEmphasis: 7,
      textEmphasisStyle: 7,
      textEmphasisColor: 7,
      boxDecorationBreak: 11,
      clipPath: 11,
      maskImage: 11,
      maskMode: 11,
      maskRepeat: 11,
      maskPosition: 11,
      maskClip: 11,
      maskOrigin: 11,
      maskSize: 11,
      maskComposite: 11,
      mask: 11,
      maskBorderSource: 11,
      maskBorderMode: 11,
      maskBorderSlice: 11,
      maskBorderWidth: 11,
      maskBorderOutset: 11,
      maskBorderRepeat: 11,
      maskBorder: 11,
      maskType: 11,
      textDecorationStyle: 11,
      textDecorationSkip: 11,
      textDecorationLine: 11,
      textDecorationColor: 11,
      shapeImageThreshold: 10,
      shapeImageMargin: 10,
      shapeImageOutside: 10,
      filter: 9,
      hyphens: 11,
      flowInto: 11,
      flowFrom: 11,
      breakBefore: 8,
      breakAfter: 8,
      breakInside: 8,
      regionFragment: 11,
      columnCount: 8,
      columnFill: 8,
      columnGap: 8,
      columnRule: 8,
      columnRuleColor: 8,
      columnRuleStyle: 8,
      columnRuleWidth: 8,
      columns: 8,
      columnSpan: 8,
      columnWidth: 8,
      writingMode: 10.1
    },
    firefox: {
      appearance: 60,
      userSelect: 60,
      boxSizing: 28,
      textAlignLast: 48,
      textDecorationStyle: 35,
      textDecorationSkip: 35,
      textDecorationLine: 35,
      textDecorationColor: 35,
      tabSize: 60,
      hyphens: 42,
      fontFeatureSettings: 33,
      breakAfter: 51,
      breakBefore: 51,
      breakInside: 51,
      columnCount: 51,
      columnFill: 51,
      columnGap: 51,
      columnRule: 51,
      columnRuleColor: 51,
      columnRuleStyle: 51,
      columnRuleWidth: 51,
      columns: 51,
      columnSpan: 51,
      columnWidth: 51
    },
    opera: {
      flex: 16,
      flexBasis: 16,
      flexDirection: 16,
      flexGrow: 16,
      flexFlow: 16,
      flexShrink: 16,
      flexWrap: 16,
      alignContent: 16,
      alignItems: 16,
      alignSelf: 16,
      justifyContent: 16,
      order: 16,
      transform: 22,
      transformOrigin: 22,
      transformOriginX: 22,
      transformOriginY: 22,
      backfaceVisibility: 22,
      perspective: 22,
      perspectiveOrigin: 22,
      transformStyle: 22,
      transformOriginZ: 22,
      animation: 29,
      animationDelay: 29,
      animationDirection: 29,
      animationFillMode: 29,
      animationDuration: 29,
      animationIterationCount: 29,
      animationName: 29,
      animationPlayState: 29,
      animationTimingFunction: 29,
      appearance: 50,
      userSelect: 40,
      fontKerning: 19,
      textEmphasisPosition: 50,
      textEmphasis: 50,
      textEmphasisStyle: 50,
      textEmphasisColor: 50,
      boxDecorationBreak: 50,
      clipPath: 41,
      maskImage: 50,
      maskMode: 50,
      maskRepeat: 50,
      maskPosition: 50,
      maskClip: 50,
      maskOrigin: 50,
      maskSize: 50,
      maskComposite: 50,
      mask: 50,
      maskBorderSource: 50,
      maskBorderMode: 50,
      maskBorderSlice: 50,
      maskBorderWidth: 50,
      maskBorderOutset: 50,
      maskBorderRepeat: 50,
      maskBorder: 50,
      maskType: 50,
      textDecorationStyle: 43,
      textDecorationSkip: 43,
      textDecorationLine: 43,
      textDecorationColor: 43,
      filter: 39,
      fontFeatureSettings: 34,
      breakAfter: 36,
      breakBefore: 36,
      breakInside: 36,
      columnCount: 36,
      columnFill: 36,
      columnGap: 36,
      columnRule: 36,
      columnRuleColor: 36,
      columnRuleStyle: 36,
      columnRuleWidth: 36,
      columns: 36,
      columnSpan: 36,
      columnWidth: 36,
      writingMode: 34
    },
    ie: {
      flex: 10,
      flexDirection: 10,
      flexFlow: 10,
      flexWrap: 10,
      transform: 9,
      transformOrigin: 9,
      transformOriginX: 9,
      transformOriginY: 9,
      userSelect: 11,
      wrapFlow: 11,
      wrapThrough: 11,
      wrapMargin: 11,
      scrollSnapType: 11,
      scrollSnapPointsX: 11,
      scrollSnapPointsY: 11,
      scrollSnapDestination: 11,
      scrollSnapCoordinate: 11,
      touchAction: 10,
      hyphens: 11,
      flowInto: 11,
      flowFrom: 11,
      breakBefore: 11,
      breakAfter: 11,
      breakInside: 11,
      regionFragment: 11,
      gridTemplateColumns: 11,
      gridTemplateRows: 11,
      gridTemplateAreas: 11,
      gridTemplate: 11,
      gridAutoColumns: 11,
      gridAutoRows: 11,
      gridAutoFlow: 11,
      grid: 11,
      gridRowStart: 11,
      gridColumnStart: 11,
      gridRowEnd: 11,
      gridRow: 11,
      gridColumn: 11,
      gridColumnEnd: 11,
      gridColumnGap: 11,
      gridRowGap: 11,
      gridArea: 11,
      gridGap: 11,
      textSizeAdjust: 11,
      writingMode: 11
    },
    edge: {
      userSelect: 17,
      wrapFlow: 17,
      wrapThrough: 17,
      wrapMargin: 17,
      scrollSnapType: 17,
      scrollSnapPointsX: 17,
      scrollSnapPointsY: 17,
      scrollSnapDestination: 17,
      scrollSnapCoordinate: 17,
      hyphens: 17,
      flowInto: 17,
      flowFrom: 17,
      breakBefore: 17,
      breakAfter: 17,
      breakInside: 17,
      regionFragment: 17,
      gridTemplateColumns: 15,
      gridTemplateRows: 15,
      gridTemplateAreas: 15,
      gridTemplate: 15,
      gridAutoColumns: 15,
      gridAutoRows: 15,
      gridAutoFlow: 15,
      grid: 15,
      gridRowStart: 15,
      gridColumnStart: 15,
      gridRowEnd: 15,
      gridRow: 15,
      gridColumn: 15,
      gridColumnEnd: 15,
      gridColumnGap: 15,
      gridRowGap: 15,
      gridArea: 15,
      gridGap: 15
    },
    ios_saf: {
      flex: 8.1,
      flexBasis: 8.1,
      flexDirection: 8.1,
      flexGrow: 8.1,
      flexFlow: 8.1,
      flexShrink: 8.1,
      flexWrap: 8.1,
      alignContent: 8.1,
      alignItems: 8.1,
      alignSelf: 8.1,
      justifyContent: 8.1,
      order: 8.1,
      transition: 6,
      transitionDelay: 6,
      transitionDuration: 6,
      transitionProperty: 6,
      transitionTimingFunction: 6,
      transform: 8.1,
      transformOrigin: 8.1,
      transformOriginX: 8.1,
      transformOriginY: 8.1,
      backfaceVisibility: 8.1,
      perspective: 8.1,
      perspectiveOrigin: 8.1,
      transformStyle: 8.1,
      transformOriginZ: 8.1,
      animation: 8.1,
      animationDelay: 8.1,
      animationDirection: 8.1,
      animationFillMode: 8.1,
      animationDuration: 8.1,
      animationIterationCount: 8.1,
      animationName: 8.1,
      animationPlayState: 8.1,
      animationTimingFunction: 8.1,
      appearance: 11,
      userSelect: 11,
      backdropFilter: 11,
      fontKerning: 11,
      scrollSnapType: 10.3,
      scrollSnapPointsX: 10.3,
      scrollSnapPointsY: 10.3,
      scrollSnapDestination: 10.3,
      scrollSnapCoordinate: 10.3,
      boxDecorationBreak: 11,
      clipPath: 11,
      maskImage: 11,
      maskMode: 11,
      maskRepeat: 11,
      maskPosition: 11,
      maskClip: 11,
      maskOrigin: 11,
      maskSize: 11,
      maskComposite: 11,
      mask: 11,
      maskBorderSource: 11,
      maskBorderMode: 11,
      maskBorderSlice: 11,
      maskBorderWidth: 11,
      maskBorderOutset: 11,
      maskBorderRepeat: 11,
      maskBorder: 11,
      maskType: 11,
      textSizeAdjust: 11,
      textDecorationStyle: 11,
      textDecorationSkip: 11,
      textDecorationLine: 11,
      textDecorationColor: 11,
      shapeImageThreshold: 10,
      shapeImageMargin: 10,
      shapeImageOutside: 10,
      filter: 9,
      hyphens: 11,
      flowInto: 11,
      flowFrom: 11,
      breakBefore: 8.1,
      breakAfter: 8.1,
      breakInside: 8.1,
      regionFragment: 11,
      columnCount: 8.1,
      columnFill: 8.1,
      columnGap: 8.1,
      columnRule: 8.1,
      columnRuleColor: 8.1,
      columnRuleStyle: 8.1,
      columnRuleWidth: 8.1,
      columns: 8.1,
      columnSpan: 8.1,
      columnWidth: 8.1,
      writingMode: 10.3
    },
    android: {
      borderImage: 4.2,
      borderImageOutset: 4.2,
      borderImageRepeat: 4.2,
      borderImageSlice: 4.2,
      borderImageSource: 4.2,
      borderImageWidth: 4.2,
      flex: 4.2,
      flexBasis: 4.2,
      flexDirection: 4.2,
      flexGrow: 4.2,
      flexFlow: 4.2,
      flexShrink: 4.2,
      flexWrap: 4.2,
      alignContent: 4.2,
      alignItems: 4.2,
      alignSelf: 4.2,
      justifyContent: 4.2,
      order: 4.2,
      transition: 4.2,
      transitionDelay: 4.2,
      transitionDuration: 4.2,
      transitionProperty: 4.2,
      transitionTimingFunction: 4.2,
      transform: 4.4,
      transformOrigin: 4.4,
      transformOriginX: 4.4,
      transformOriginY: 4.4,
      backfaceVisibility: 4.4,
      perspective: 4.4,
      perspectiveOrigin: 4.4,
      transformStyle: 4.4,
      transformOriginZ: 4.4,
      animation: 4.4,
      animationDelay: 4.4,
      animationDirection: 4.4,
      animationFillMode: 4.4,
      animationDuration: 4.4,
      animationIterationCount: 4.4,
      animationName: 4.4,
      animationPlayState: 4.4,
      animationTimingFunction: 4.4,
      appearance: 62,
      userSelect: 4.4,
      fontKerning: 4.4,
      textEmphasisPosition: 62,
      textEmphasis: 62,
      textEmphasisStyle: 62,
      textEmphasisColor: 62,
      boxDecorationBreak: 62,
      clipPath: 4.4,
      maskImage: 62,
      maskMode: 62,
      maskRepeat: 62,
      maskPosition: 62,
      maskClip: 62,
      maskOrigin: 62,
      maskSize: 62,
      maskComposite: 62,
      mask: 62,
      maskBorderSource: 62,
      maskBorderMode: 62,
      maskBorderSlice: 62,
      maskBorderWidth: 62,
      maskBorderOutset: 62,
      maskBorderRepeat: 62,
      maskBorder: 62,
      maskType: 62,
      filter: 4.4,
      fontFeatureSettings: 4.4,
      breakAfter: 4.4,
      breakBefore: 4.4,
      breakInside: 4.4,
      columnCount: 4.4,
      columnFill: 4.4,
      columnGap: 4.4,
      columnRule: 4.4,
      columnRuleColor: 4.4,
      columnRuleStyle: 4.4,
      columnRuleWidth: 4.4,
      columns: 4.4,
      columnSpan: 4.4,
      columnWidth: 4.4,
      writingMode: 4.4
    },
    and_chr: {
      appearance: 62,
      textEmphasisPosition: 62,
      textEmphasis: 62,
      textEmphasisStyle: 62,
      textEmphasisColor: 62,
      boxDecorationBreak: 62,
      maskImage: 62,
      maskMode: 62,
      maskRepeat: 62,
      maskPosition: 62,
      maskClip: 62,
      maskOrigin: 62,
      maskSize: 62,
      maskComposite: 62,
      mask: 62,
      maskBorderSource: 62,
      maskBorderMode: 62,
      maskBorderSlice: 62,
      maskBorderWidth: 62,
      maskBorderOutset: 62,
      maskBorderRepeat: 62,
      maskBorder: 62,
      maskType: 62
    },
    and_uc: {
      flex: 11.4,
      flexBasis: 11.4,
      flexDirection: 11.4,
      flexGrow: 11.4,
      flexFlow: 11.4,
      flexShrink: 11.4,
      flexWrap: 11.4,
      alignContent: 11.4,
      alignItems: 11.4,
      alignSelf: 11.4,
      justifyContent: 11.4,
      order: 11.4,
      transform: 11.4,
      transformOrigin: 11.4,
      transformOriginX: 11.4,
      transformOriginY: 11.4,
      backfaceVisibility: 11.4,
      perspective: 11.4,
      perspectiveOrigin: 11.4,
      transformStyle: 11.4,
      transformOriginZ: 11.4,
      animation: 11.4,
      animationDelay: 11.4,
      animationDirection: 11.4,
      animationFillMode: 11.4,
      animationDuration: 11.4,
      animationIterationCount: 11.4,
      animationName: 11.4,
      animationPlayState: 11.4,
      animationTimingFunction: 11.4,
      appearance: 11.4,
      userSelect: 11.4,
      textEmphasisPosition: 11.4,
      textEmphasis: 11.4,
      textEmphasisStyle: 11.4,
      textEmphasisColor: 11.4,
      clipPath: 11.4,
      maskImage: 11.4,
      maskMode: 11.4,
      maskRepeat: 11.4,
      maskPosition: 11.4,
      maskClip: 11.4,
      maskOrigin: 11.4,
      maskSize: 11.4,
      maskComposite: 11.4,
      mask: 11.4,
      maskBorderSource: 11.4,
      maskBorderMode: 11.4,
      maskBorderSlice: 11.4,
      maskBorderWidth: 11.4,
      maskBorderOutset: 11.4,
      maskBorderRepeat: 11.4,
      maskBorder: 11.4,
      maskType: 11.4,
      textSizeAdjust: 11.4,
      filter: 11.4,
      hyphens: 11.4,
      fontFeatureSettings: 11.4,
      breakAfter: 11.4,
      breakBefore: 11.4,
      breakInside: 11.4,
      columnCount: 11.4,
      columnFill: 11.4,
      columnGap: 11.4,
      columnRule: 11.4,
      columnRuleColor: 11.4,
      columnRuleStyle: 11.4,
      columnRuleWidth: 11.4,
      columns: 11.4,
      columnSpan: 11.4,
      columnWidth: 11.4,
      writingMode: 11.4
    },
    op_mini: {}
  }
});

/***/ }),

/***/ "./node_modules/radium/es/prefix-data/static.js":
/*!******************************************************!*\
  !*** ./node_modules/radium/es/prefix-data/static.js ***!
  \******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var inline_style_prefixer_static_plugins_calc__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/calc */ "./node_modules/inline-style-prefixer/static/plugins/calc.js");
/* harmony import */ var inline_style_prefixer_static_plugins_calc__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_calc__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var inline_style_prefixer_static_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/crossFade */ "./node_modules/inline-style-prefixer/static/plugins/crossFade.js");
/* harmony import */ var inline_style_prefixer_static_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var inline_style_prefixer_static_plugins_cursor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/cursor */ "./node_modules/inline-style-prefixer/static/plugins/cursor.js");
/* harmony import */ var inline_style_prefixer_static_plugins_cursor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_cursor__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var inline_style_prefixer_static_plugins_filter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/filter */ "./node_modules/inline-style-prefixer/static/plugins/filter.js");
/* harmony import */ var inline_style_prefixer_static_plugins_filter__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_filter__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var inline_style_prefixer_static_plugins_flex__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/flex */ "./node_modules/inline-style-prefixer/static/plugins/flex.js");
/* harmony import */ var inline_style_prefixer_static_plugins_flex__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_flex__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var inline_style_prefixer_static_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/flexboxIE */ "./node_modules/inline-style-prefixer/static/plugins/flexboxIE.js");
/* harmony import */ var inline_style_prefixer_static_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var inline_style_prefixer_static_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/flexboxOld */ "./node_modules/inline-style-prefixer/static/plugins/flexboxOld.js");
/* harmony import */ var inline_style_prefixer_static_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var inline_style_prefixer_static_plugins_gradient__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/gradient */ "./node_modules/inline-style-prefixer/static/plugins/gradient.js");
/* harmony import */ var inline_style_prefixer_static_plugins_gradient__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_gradient__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var inline_style_prefixer_static_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/imageSet */ "./node_modules/inline-style-prefixer/static/plugins/imageSet.js");
/* harmony import */ var inline_style_prefixer_static_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var inline_style_prefixer_static_plugins_position__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/position */ "./node_modules/inline-style-prefixer/static/plugins/position.js");
/* harmony import */ var inline_style_prefixer_static_plugins_position__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_position__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var inline_style_prefixer_static_plugins_sizing__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/sizing */ "./node_modules/inline-style-prefixer/static/plugins/sizing.js");
/* harmony import */ var inline_style_prefixer_static_plugins_sizing__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_sizing__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var inline_style_prefixer_static_plugins_transition__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! inline-style-prefixer/static/plugins/transition */ "./node_modules/inline-style-prefixer/static/plugins/transition.js");
/* harmony import */ var inline_style_prefixer_static_plugins_transition__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_plugins_transition__WEBPACK_IMPORTED_MODULE_11__);












var w = ['Webkit'];
var m = ['Moz'];
var ms = ['ms'];
var wm = ['Webkit', 'Moz'];
var wms = ['Webkit', 'ms'];
var wmms = ['Webkit', 'Moz', 'ms'];

/* harmony default export */ __webpack_exports__["default"] = ({
  plugins: [inline_style_prefixer_static_plugins_calc__WEBPACK_IMPORTED_MODULE_0___default.a, inline_style_prefixer_static_plugins_crossFade__WEBPACK_IMPORTED_MODULE_1___default.a, inline_style_prefixer_static_plugins_cursor__WEBPACK_IMPORTED_MODULE_2___default.a, inline_style_prefixer_static_plugins_filter__WEBPACK_IMPORTED_MODULE_3___default.a, inline_style_prefixer_static_plugins_flex__WEBPACK_IMPORTED_MODULE_4___default.a, inline_style_prefixer_static_plugins_flexboxIE__WEBPACK_IMPORTED_MODULE_5___default.a, inline_style_prefixer_static_plugins_flexboxOld__WEBPACK_IMPORTED_MODULE_6___default.a, inline_style_prefixer_static_plugins_gradient__WEBPACK_IMPORTED_MODULE_7___default.a, inline_style_prefixer_static_plugins_imageSet__WEBPACK_IMPORTED_MODULE_8___default.a, inline_style_prefixer_static_plugins_position__WEBPACK_IMPORTED_MODULE_9___default.a, inline_style_prefixer_static_plugins_sizing__WEBPACK_IMPORTED_MODULE_10___default.a, inline_style_prefixer_static_plugins_transition__WEBPACK_IMPORTED_MODULE_11___default.a],
  prefixMap: {
    transform: wms,
    transformOrigin: wms,
    transformOriginX: wms,
    transformOriginY: wms,
    backfaceVisibility: w,
    perspective: w,
    perspectiveOrigin: w,
    transformStyle: w,
    transformOriginZ: w,
    animation: w,
    animationDelay: w,
    animationDirection: w,
    animationFillMode: w,
    animationDuration: w,
    animationIterationCount: w,
    animationName: w,
    animationPlayState: w,
    animationTimingFunction: w,
    appearance: wm,
    userSelect: wmms,
    fontKerning: w,
    textEmphasisPosition: w,
    textEmphasis: w,
    textEmphasisStyle: w,
    textEmphasisColor: w,
    boxDecorationBreak: w,
    clipPath: w,
    maskImage: w,
    maskMode: w,
    maskRepeat: w,
    maskPosition: w,
    maskClip: w,
    maskOrigin: w,
    maskSize: w,
    maskComposite: w,
    mask: w,
    maskBorderSource: w,
    maskBorderMode: w,
    maskBorderSlice: w,
    maskBorderWidth: w,
    maskBorderOutset: w,
    maskBorderRepeat: w,
    maskBorder: w,
    maskType: w,
    textDecorationStyle: wm,
    textDecorationSkip: wm,
    textDecorationLine: wm,
    textDecorationColor: wm,
    filter: w,
    fontFeatureSettings: wm,
    breakAfter: wmms,
    breakBefore: wmms,
    breakInside: wmms,
    columnCount: wm,
    columnFill: wm,
    columnGap: wm,
    columnRule: wm,
    columnRuleColor: wm,
    columnRuleStyle: wm,
    columnRuleWidth: wm,
    columns: wm,
    columnSpan: wm,
    columnWidth: wm,
    writingMode: wms,
    flex: wms,
    flexBasis: w,
    flexDirection: wms,
    flexGrow: w,
    flexFlow: wms,
    flexShrink: w,
    flexWrap: wms,
    alignContent: w,
    alignItems: w,
    alignSelf: w,
    justifyContent: w,
    order: w,
    transitionDelay: w,
    transitionDuration: w,
    transitionProperty: w,
    transitionTimingFunction: w,
    backdropFilter: w,
    scrollSnapType: wms,
    scrollSnapPointsX: wms,
    scrollSnapPointsY: wms,
    scrollSnapDestination: wms,
    scrollSnapCoordinate: wms,
    shapeImageThreshold: w,
    shapeImageMargin: w,
    shapeImageOutside: w,
    hyphens: wmms,
    flowInto: wms,
    flowFrom: wms,
    regionFragment: wms,
    boxSizing: m,
    textAlignLast: m,
    tabSize: m,
    wrapFlow: ms,
    wrapThrough: ms,
    wrapMargin: ms,
    touchAction: ms,
    gridTemplateColumns: ms,
    gridTemplateRows: ms,
    gridTemplateAreas: ms,
    gridTemplate: ms,
    gridAutoColumns: ms,
    gridAutoRows: ms,
    gridAutoFlow: ms,
    grid: ms,
    gridRowStart: ms,
    gridColumnStart: ms,
    gridRowEnd: ms,
    gridRow: ms,
    gridColumn: ms,
    gridColumnEnd: ms,
    gridColumnGap: ms,
    gridRowGap: ms,
    gridArea: ms,
    gridGap: ms,
    textSizeAdjust: wms,
    borderImage: w,
    borderImageOutset: w,
    borderImageRepeat: w,
    borderImageSlice: w,
    borderImageSource: w,
    borderImageWidth: w
  }
});

/***/ }),

/***/ "./node_modules/radium/es/prefixer.js":
/*!********************************************!*\
  !*** ./node_modules/radium/es/prefixer.js ***!
  \********************************************/
/*! exports provided: getPrefixedKeyframes, getPrefixedStyle */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPrefixedKeyframes", function() { return getPrefixedKeyframes; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPrefixedStyle", function() { return getPrefixedStyle; });
/* harmony import */ var inline_style_prefixer_static_createPrefixer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! inline-style-prefixer/static/createPrefixer */ "./node_modules/inline-style-prefixer/static/createPrefixer.js");
/* harmony import */ var inline_style_prefixer_static_createPrefixer__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_static_createPrefixer__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var inline_style_prefixer_dynamic_createPrefixer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! inline-style-prefixer/dynamic/createPrefixer */ "./node_modules/inline-style-prefixer/dynamic/createPrefixer.js");
/* harmony import */ var inline_style_prefixer_dynamic_createPrefixer__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(inline_style_prefixer_dynamic_createPrefixer__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var exenv__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! exenv */ "./node_modules/exenv/index.js");
/* harmony import */ var exenv__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(exenv__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _prefix_data_static__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./prefix-data/static */ "./node_modules/radium/es/prefix-data/static.js");
/* harmony import */ var _prefix_data_dynamic__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./prefix-data/dynamic */ "./node_modules/radium/es/prefix-data/dynamic.js");
/* harmony import */ var _camel_case_props_to_dash_case__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./camel-case-props-to-dash-case */ "./node_modules/radium/es/camel-case-props-to-dash-case.js");
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };

/**
 * Based on https://github.com/jsstyles/css-vendor, but without having to
 * convert between different cases all the time.
 *
 * 
 */










var prefixAll = inline_style_prefixer_static_createPrefixer__WEBPACK_IMPORTED_MODULE_0___default()(_prefix_data_static__WEBPACK_IMPORTED_MODULE_3__["default"]);
var InlineStylePrefixer = inline_style_prefixer_dynamic_createPrefixer__WEBPACK_IMPORTED_MODULE_1___default()(_prefix_data_dynamic__WEBPACK_IMPORTED_MODULE_4__["default"], prefixAll);

function transformValues(style) {
  return Object.keys(style).reduce(function (newStyle, key) {
    var value = style[key];
    if (Array.isArray(value)) {
      value = value.join(';' + key + ':');
    } else if (value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && typeof value.toString === 'function') {
      value = value.toString();
    }

    newStyle[key] = value;
    return newStyle;
  }, {});
}

// Flatten prefixed values that are arrays to strings.
//
// We get prefixed styles back in the form of:
// - `display: "flex"` OR
// - `display: "-webkit-flex"` OR
// - `display: [/* ... */, "-webkit-flex", "flex"]
//
// The last form is problematic for eventual use in the browser and server
// render. More confusingly, we have to do **different** things on the
// browser and server (noted inline below).
//
// https://github.com/FormidableLabs/radium/issues/958
function flattenStyleValues(style) {
  return Object.keys(style).reduce(function (newStyle, key) {
    var val = style[key];
    if (Array.isArray(val)) {
      if (exenv__WEBPACK_IMPORTED_MODULE_2___default.a.canUseDOM) {
        // For the **browser**, when faced with multiple values, we just take
        // the **last** one, which is the original passed in value before
        // prefixing. This _should_ work, because `inline-style-prefixer`
        // we're just passing through what would happen without ISP.

        val = val[val.length - 1].toString();
      } else {
        // For the **server**, we just concatenate things together and convert
        // the style object values into a hacked-up string of like `display:
        // "-webkit-flex;display:flex"` that will SSR render correctly to like
        // `"display:-webkit-flex;display:flex"` but would otherwise be
        // totally invalid values.

        // We convert keys to dash-case only for the serialize values and
        // leave the real key camel-cased so it's as expected to React and
        // other parts of the processing chain.
        val = val.join(';' + Object(_camel_case_props_to_dash_case__WEBPACK_IMPORTED_MODULE_5__["camelCaseToDashCase"])(key) + ':');
      }
    }

    newStyle[key] = val;
    return newStyle;
  }, {});
}

var _hasWarnedAboutUserAgent = false;
var _lastUserAgent = void 0;
var _cachedPrefixer = void 0;

function getPrefixer(userAgent) {
  var actualUserAgent = userAgent || global && global.navigator && global.navigator.userAgent;

  if (true) {
    if (!actualUserAgent && !_hasWarnedAboutUserAgent) {
      /* eslint-disable no-console */
      console.warn('Radium: userAgent should be supplied for server-side rendering. See ' + 'https://github.com/FormidableLabs/radium/tree/master/docs/api#radium ' + 'for more information.');
      /* eslint-enable no-console */
      _hasWarnedAboutUserAgent = true;
    }
  }

  if ( false || !_cachedPrefixer || actualUserAgent !== _lastUserAgent) {
    if (actualUserAgent === 'all') {
      _cachedPrefixer = {
        prefix: prefixAll,
        prefixedKeyframes: 'keyframes'
      };
    } else {
      _cachedPrefixer = new InlineStylePrefixer({ userAgent: actualUserAgent });
    }
    _lastUserAgent = actualUserAgent;
  }

  return _cachedPrefixer;
}

function getPrefixedKeyframes(userAgent) {
  return getPrefixer(userAgent).prefixedKeyframes || 'keyframes';
}

// Returns a new style object with vendor prefixes added to property names and
// values.
function getPrefixedStyle(style, userAgent) {
  var styleWithFallbacks = transformValues(style);
  var prefixer = getPrefixer(userAgent);
  var prefixedStyle = prefixer.prefix(styleWithFallbacks);
  var flattenedStyle = flattenStyleValues(prefixedStyle);
  return flattenedStyle;
}
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../webpack/buildin/global.js */ "./node_modules/webpack/buildin/global.js")))

/***/ }),

/***/ "./node_modules/radium/es/resolve-styles.js":
/*!**************************************************!*\
  !*** ./node_modules/radium/es/resolve-styles.js ***!
  \**************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _append_important_to_each_value__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./append-important-to-each-value */ "./node_modules/radium/es/append-important-to-each-value.js");
/* harmony import */ var _css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./css-rule-set-to-string */ "./node_modules/radium/es/css-rule-set-to-string.js");
/* harmony import */ var _get_state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./get-state */ "./node_modules/radium/es/get-state.js");
/* harmony import */ var _get_state_key__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./get-state-key */ "./node_modules/radium/es/get-state-key.js");
/* harmony import */ var _clean_state_key__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./clean-state-key */ "./node_modules/radium/es/clean-state-key.js");
/* harmony import */ var _get_radium_style_state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./get-radium-style-state */ "./node_modules/radium/es/get-radium-style-state.js");
/* harmony import */ var _hash__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./hash */ "./node_modules/radium/es/hash.js");
/* harmony import */ var _merge_styles__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./merge-styles */ "./node_modules/radium/es/merge-styles.js");
/* harmony import */ var _plugins___WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./plugins/ */ "./node_modules/radium/es/plugins/index.js");
/* harmony import */ var exenv__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! exenv */ "./node_modules/exenv/index.js");
/* harmony import */ var exenv__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(exenv__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_10__);
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };

var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };















var DEFAULT_CONFIG = {
  plugins: [_plugins___WEBPACK_IMPORTED_MODULE_8__["default"].mergeStyleArray, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].checkProps, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].resolveMediaQueries, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].resolveInteractionStyles, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].keyframes, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].visited, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].removeNestedStyles, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].prefix, _plugins___WEBPACK_IMPORTED_MODULE_8__["default"].checkProps]
};

// Gross
var globalState = {};

// Declare early for recursive helpers.
var _resolveStyles5 = null;

var _shouldResolveStyles = function _shouldResolveStyles(component) {
  return component.type && !component.type._isRadiumEnhanced;
};

var _resolveChildren = function _resolveChildren(_ref) {
  var children = _ref.children,
      component = _ref.component,
      config = _ref.config,
      existingKeyMap = _ref.existingKeyMap,
      extraStateKeyMap = _ref.extraStateKeyMap;

  if (!children) {
    return children;
  }

  var childrenType = typeof children === 'undefined' ? 'undefined' : _typeof(children);

  if (childrenType === 'string' || childrenType === 'number') {
    // Don't do anything with a single primitive child
    return children;
  }

  if (childrenType === 'function') {
    // Wrap the function, resolving styles on the result
    return function () {
      var result = children.apply(this, arguments);

      if (react__WEBPACK_IMPORTED_MODULE_10___default.a.isValidElement(result)) {
        var _key = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(result);
        delete extraStateKeyMap[_key];

        var _resolveStyles = _resolveStyles5(component, result, config, existingKeyMap, true, extraStateKeyMap),
            _element = _resolveStyles.element;

        return _element;
      }

      return result;
    };
  }

  if (react__WEBPACK_IMPORTED_MODULE_10___default.a.Children.count(children) === 1 && children.type) {
    // If a React Element is an only child, don't wrap it in an array for
    // React.Children.map() for React.Children.only() compatibility.
    var onlyChild = react__WEBPACK_IMPORTED_MODULE_10___default.a.Children.only(children);
    var _key2 = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(onlyChild);
    delete extraStateKeyMap[_key2];

    var _resolveStyles2 = _resolveStyles5(component, onlyChild, config, existingKeyMap, true, extraStateKeyMap),
        _element2 = _resolveStyles2.element;

    return _element2;
  }

  return react__WEBPACK_IMPORTED_MODULE_10___default.a.Children.map(children, function (child) {
    if (react__WEBPACK_IMPORTED_MODULE_10___default.a.isValidElement(child)) {
      var _key3 = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(child);
      delete extraStateKeyMap[_key3];

      var _resolveStyles3 = _resolveStyles5(component, child, config, existingKeyMap, true, extraStateKeyMap),
          _element3 = _resolveStyles3.element;

      return _element3;
    }

    return child;
  });
};

// Recurse over props, just like children
var _resolveProps = function _resolveProps(_ref2) {
  var component = _ref2.component,
      config = _ref2.config,
      existingKeyMap = _ref2.existingKeyMap,
      props = _ref2.props,
      extraStateKeyMap = _ref2.extraStateKeyMap;

  var newProps = props;

  Object.keys(props).forEach(function (prop) {
    // We already recurse over children above
    if (prop === 'children') {
      return;
    }

    var propValue = props[prop];
    if (react__WEBPACK_IMPORTED_MODULE_10___default.a.isValidElement(propValue)) {
      var _key4 = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(propValue);
      delete extraStateKeyMap[_key4];
      newProps = _extends({}, newProps);

      var _resolveStyles4 = _resolveStyles5(component, propValue, config, existingKeyMap, true, extraStateKeyMap),
          _element4 = _resolveStyles4.element;

      newProps[prop] = _element4;
    }
  });

  return newProps;
};

var _buildGetKey = function _buildGetKey(_ref3) {
  var componentName = _ref3.componentName,
      existingKeyMap = _ref3.existingKeyMap,
      renderedElement = _ref3.renderedElement;

  // We need a unique key to correlate state changes due to user interaction
  // with the rendered element, so we know to apply the proper interactive
  // styles.
  var originalKey = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(renderedElement);
  var key = Object(_clean_state_key__WEBPACK_IMPORTED_MODULE_4__["default"])(originalKey);

  var alreadyGotKey = false;
  var getKey = function getKey() {
    if (alreadyGotKey) {
      return key;
    }

    alreadyGotKey = true;

    if (existingKeyMap[key]) {
      var elementName = void 0;
      if (typeof renderedElement.type === 'string') {
        elementName = renderedElement.type;
      } else if (renderedElement.type.constructor) {
        elementName = renderedElement.type.constructor.displayName || renderedElement.type.constructor.name;
      }

      throw new Error('Radium requires each element with interactive styles to have a unique ' + 'key, set using either the ref or key prop. ' + (originalKey ? 'Key "' + originalKey + '" is a duplicate.' : 'Multiple elements have no key specified.') + ' ' + 'Component: "' + componentName + '". ' + (elementName ? 'Element: "' + elementName + '".' : ''));
    }

    existingKeyMap[key] = true;

    return key;
  };

  return getKey;
};

var _setStyleState = function _setStyleState(component, key, stateKey, value) {
  if (!component._radiumIsMounted) {
    return;
  }

  var existing = Object(_get_radium_style_state__WEBPACK_IMPORTED_MODULE_5__["default"])(component);
  var state = { _radiumStyleState: _extends({}, existing) };

  state._radiumStyleState[key] = _extends({}, state._radiumStyleState[key]);
  state._radiumStyleState[key][stateKey] = value;

  component._lastRadiumState = state._radiumStyleState;
  component.setState(state);
};

var _runPlugins = function _runPlugins(_ref4) {
  var component = _ref4.component,
      config = _ref4.config,
      existingKeyMap = _ref4.existingKeyMap,
      props = _ref4.props,
      renderedElement = _ref4.renderedElement;

  // Don't run plugins if renderedElement is not a simple ReactDOMElement or has
  // no style.
  if (!react__WEBPACK_IMPORTED_MODULE_10___default.a.isValidElement(renderedElement) || typeof renderedElement.type !== 'string' || !props.style) {
    return props;
  }

  var newProps = props;

  var plugins = config.plugins || DEFAULT_CONFIG.plugins;

  var componentName = component.constructor.displayName || component.constructor.name;
  var getKey = _buildGetKey({
    renderedElement: renderedElement,
    existingKeyMap: existingKeyMap,
    componentName: componentName
  });
  var getComponentField = function getComponentField(key) {
    return component[key];
  };
  var getGlobalState = function getGlobalState(key) {
    return globalState[key];
  };
  var componentGetState = function componentGetState(stateKey, elementKey) {
    return Object(_get_state__WEBPACK_IMPORTED_MODULE_2__["default"])(component.state, elementKey || getKey(), stateKey);
  };
  var setState = function setState(stateKey, value, elementKey) {
    return _setStyleState(component, elementKey || getKey(), stateKey, value);
  };

  var addCSS = function addCSS(css) {
    var styleKeeper = component._radiumStyleKeeper || component.context._radiumStyleKeeper;
    if (!styleKeeper) {
      if (__isTestModeEnabled) {
        return {
          remove: function remove() {}
        };
      }

      throw new Error('To use plugins requiring `addCSS` (e.g. keyframes, media queries), ' + 'please wrap your application in the StyleRoot component. Component ' + 'name: `' + componentName + '`.');
    }

    return styleKeeper.addCSS(css);
  };

  var newStyle = props.style;

  plugins.forEach(function (plugin) {
    var result = plugin({
      ExecutionEnvironment: exenv__WEBPACK_IMPORTED_MODULE_9___default.a,
      addCSS: addCSS,
      appendImportantToEachValue: _append_important_to_each_value__WEBPACK_IMPORTED_MODULE_0__["default"],
      componentName: componentName,
      config: config,
      cssRuleSetToString: _css_rule_set_to_string__WEBPACK_IMPORTED_MODULE_1__["default"],
      getComponentField: getComponentField,
      getGlobalState: getGlobalState,
      getState: componentGetState,
      hash: _hash__WEBPACK_IMPORTED_MODULE_6__["default"],
      mergeStyles: _merge_styles__WEBPACK_IMPORTED_MODULE_7__["mergeStyles"],
      props: newProps,
      setState: setState,
      isNestedStyle: _merge_styles__WEBPACK_IMPORTED_MODULE_7__["isNestedStyle"],
      style: newStyle
    }) || {};

    newStyle = result.style || newStyle;

    newProps = result.props && Object.keys(result.props).length ? _extends({}, newProps, result.props) : newProps;

    var newComponentFields = result.componentFields || {};
    Object.keys(newComponentFields).forEach(function (fieldName) {
      component[fieldName] = newComponentFields[fieldName];
    });

    var newGlobalState = result.globalState || {};
    Object.keys(newGlobalState).forEach(function (key) {
      globalState[key] = newGlobalState[key];
    });
  });

  if (newStyle !== props.style) {
    newProps = _extends({}, newProps, { style: newStyle });
  }

  return newProps;
};

// Wrapper around React.cloneElement. To avoid processing the same element
// twice, whenever we clone an element add a special prop to make sure we don't
// process this element again.
var _cloneElement = function _cloneElement(renderedElement, newProps, newChildren) {
  // Only add flag if this is a normal DOM element
  if (typeof renderedElement.type === 'string') {
    newProps = _extends({}, newProps, { 'data-radium': true });
  }

  return react__WEBPACK_IMPORTED_MODULE_10___default.a.cloneElement(renderedElement, newProps, newChildren);
};

//
// The nucleus of Radium. resolveStyles is called on the rendered elements
// before they are returned in render. It iterates over the elements and
// children, rewriting props to add event handlers required to capture user
// interactions (e.g. mouse over). It also replaces the style prop because it
// adds in the various interaction styles (e.g. :hover).
//
/* eslint-disable max-params */
_resolveStyles5 = function resolveStyles(component, // ReactComponent, flow+eslint complaining
renderedElement) {
  var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : DEFAULT_CONFIG;
  var existingKeyMap = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  var shouldCheckBeforeResolve = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
  var extraStateKeyMap = arguments[5];

  // The extraStateKeyMap is for determining which keys should be erased from
  // the state (i.e. which child components are unmounted and should no longer
  // have a style state).
  if (!extraStateKeyMap) {
    var state = Object(_get_radium_style_state__WEBPACK_IMPORTED_MODULE_5__["default"])(component);
    extraStateKeyMap = Object.keys(state).reduce(function (acc, key) {
      // 'main' is the auto-generated key when there is only one element with
      // interactive styles and if a custom key is not assigned. Because of
      // this, it is impossible to know which child is 'main', so we won't
      // count this key when generating our extraStateKeyMap.
      if (key !== 'main') {
        acc[key] = true;
      }
      return acc;
    }, {});
  }

  if (Array.isArray(renderedElement) && !renderedElement.props) {
    var elements = renderedElement.map(function (element) {
      // element is in-use, so remove from the extraStateKeyMap
      if (extraStateKeyMap) {
        var _key5 = Object(_get_state_key__WEBPACK_IMPORTED_MODULE_3__["default"])(element);
        delete extraStateKeyMap[_key5];
      }

      // this element is an array of elements,
      // so return an array of elements with resolved styles
      return _resolveStyles5(component, element, config, existingKeyMap, shouldCheckBeforeResolve, extraStateKeyMap).element;
    });
    return {
      extraStateKeyMap: extraStateKeyMap,
      element: elements
    };
  }

  // ReactElement
  if (!renderedElement ||
  // Bail if we've already processed this element. This ensures that only the
  // owner of an element processes that element, since the owner's render
  // function will be called first (which will always be the case, since you
  // can't know what else to render until you render the parent component).
  renderedElement.props && renderedElement.props['data-radium'] ||
  // Bail if this element is a radium enhanced element, because if it is,
  // then it will take care of resolving its own styles.
  shouldCheckBeforeResolve && !_shouldResolveStyles(renderedElement)) {
    return { extraStateKeyMap: extraStateKeyMap, element: renderedElement };
  }

  var children = renderedElement.props.children;

  var newChildren = _resolveChildren({
    children: children,
    component: component,
    config: config,
    existingKeyMap: existingKeyMap,
    extraStateKeyMap: extraStateKeyMap
  });

  var newProps = _resolveProps({
    component: component,
    config: config,
    existingKeyMap: existingKeyMap,
    extraStateKeyMap: extraStateKeyMap,
    props: renderedElement.props
  });

  newProps = _runPlugins({
    component: component,
    config: config,
    existingKeyMap: existingKeyMap,
    props: newProps,
    renderedElement: renderedElement
  });

  // If nothing changed, don't bother cloning the element. Might be a bit
  // wasteful, as we add the sentinel to stop double-processing when we clone.
  // Assume benign double-processing is better than unneeded cloning.
  if (newChildren === children && newProps === renderedElement.props) {
    return { extraStateKeyMap: extraStateKeyMap, element: renderedElement };
  }

  var element = _cloneElement(renderedElement, newProps !== renderedElement.props ? newProps : {}, newChildren);

  return { extraStateKeyMap: extraStateKeyMap, element: element };
};
/* eslint-enable max-params */

// Only for use by tests
var __isTestModeEnabled = false;
if (true) {
  _resolveStyles5.__clearStateForTests = function () {
    globalState = {};
  };
  _resolveStyles5.__setTestMode = function (isEnabled) {
    __isTestModeEnabled = isEnabled;
  };
}

/* harmony default export */ __webpack_exports__["default"] = (_resolveStyles5);

/***/ }),

/***/ "./node_modules/radium/es/style-keeper.js":
/*!************************************************!*\
  !*** ./node_modules/radium/es/style-keeper.js ***!
  \************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return StyleKeeper; });
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

var StyleKeeper = function () {
  function StyleKeeper(userAgent) {
    _classCallCheck(this, StyleKeeper);

    this._userAgent = userAgent;
    this._listeners = [];
    this._cssSet = {};
  }

  _createClass(StyleKeeper, [{
    key: 'subscribe',
    value: function subscribe(listener) {
      var _this = this;

      if (this._listeners.indexOf(listener) === -1) {
        this._listeners.push(listener);
      }

      return {
        // Must be fat arrow to capture `this`
        remove: function remove() {
          var listenerIndex = _this._listeners.indexOf(listener);
          if (listenerIndex > -1) {
            _this._listeners.splice(listenerIndex, 1);
          }
        }
      };
    }
  }, {
    key: 'addCSS',
    value: function addCSS(css) {
      var _this2 = this;

      if (!this._cssSet[css]) {
        this._cssSet[css] = true;
        this._emitChange();
      }

      return {
        // Must be fat arrow to capture `this`
        remove: function remove() {
          delete _this2._cssSet[css];
          _this2._emitChange();
        }
      };
    }
  }, {
    key: 'getCSS',
    value: function getCSS() {
      return Object.keys(this._cssSet).join('\n');
    }
  }, {
    key: '_emitChange',
    value: function _emitChange() {
      this._listeners.forEach(function (listener) {
        return listener();
      });
    }
  }]);

  return StyleKeeper;
}();



/***/ }),

/***/ "./node_modules/react-is/cjs/react-is.development.js":
/*!***********************************************************!*\
  !*** ./node_modules/react-is/cjs/react-is.development.js ***!
  \***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/** @license React v16.13.0
 * react-is.development.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */





if (true) {
  (function() {
'use strict';

// The Symbol used to tag the ReactElement-like types. If there is no native Symbol
// nor polyfill, then a plain number is used for performance.
var hasSymbol = typeof Symbol === 'function' && Symbol.for;
var REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;
var REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;
var REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;
var REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;
var REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;
var REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;
var REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary
// (unstable) APIs that have been removed. Can we remove the symbols?

var REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;
var REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;
var REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;
var REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;
var REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;
var REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;
var REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;
var REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;
var REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;
var REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;
var REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;

function isValidElementType(type) {
  return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
  type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);
}

function typeOf(object) {
  if (typeof object === 'object' && object !== null) {
    var $$typeof = object.$$typeof;

    switch ($$typeof) {
      case REACT_ELEMENT_TYPE:
        var type = object.type;

        switch (type) {
          case REACT_ASYNC_MODE_TYPE:
          case REACT_CONCURRENT_MODE_TYPE:
          case REACT_FRAGMENT_TYPE:
          case REACT_PROFILER_TYPE:
          case REACT_STRICT_MODE_TYPE:
          case REACT_SUSPENSE_TYPE:
            return type;

          default:
            var $$typeofType = type && type.$$typeof;

            switch ($$typeofType) {
              case REACT_CONTEXT_TYPE:
              case REACT_FORWARD_REF_TYPE:
              case REACT_LAZY_TYPE:
              case REACT_MEMO_TYPE:
              case REACT_PROVIDER_TYPE:
                return $$typeofType;

              default:
                return $$typeof;
            }

        }

      case REACT_PORTAL_TYPE:
        return $$typeof;
    }
  }

  return undefined;
} // AsyncMode is deprecated along with isAsyncMode

var AsyncMode = REACT_ASYNC_MODE_TYPE;
var ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;
var ContextConsumer = REACT_CONTEXT_TYPE;
var ContextProvider = REACT_PROVIDER_TYPE;
var Element = REACT_ELEMENT_TYPE;
var ForwardRef = REACT_FORWARD_REF_TYPE;
var Fragment = REACT_FRAGMENT_TYPE;
var Lazy = REACT_LAZY_TYPE;
var Memo = REACT_MEMO_TYPE;
var Portal = REACT_PORTAL_TYPE;
var Profiler = REACT_PROFILER_TYPE;
var StrictMode = REACT_STRICT_MODE_TYPE;
var Suspense = REACT_SUSPENSE_TYPE;
var hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated

function isAsyncMode(object) {
  {
    if (!hasWarnedAboutDeprecatedIsAsyncMode) {
      hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint

      console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');
    }
  }

  return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;
}
function isConcurrentMode(object) {
  return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;
}
function isContextConsumer(object) {
  return typeOf(object) === REACT_CONTEXT_TYPE;
}
function isContextProvider(object) {
  return typeOf(object) === REACT_PROVIDER_TYPE;
}
function isElement(object) {
  return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;
}
function isForwardRef(object) {
  return typeOf(object) === REACT_FORWARD_REF_TYPE;
}
function isFragment(object) {
  return typeOf(object) === REACT_FRAGMENT_TYPE;
}
function isLazy(object) {
  return typeOf(object) === REACT_LAZY_TYPE;
}
function isMemo(object) {
  return typeOf(object) === REACT_MEMO_TYPE;
}
function isPortal(object) {
  return typeOf(object) === REACT_PORTAL_TYPE;
}
function isProfiler(object) {
  return typeOf(object) === REACT_PROFILER_TYPE;
}
function isStrictMode(object) {
  return typeOf(object) === REACT_STRICT_MODE_TYPE;
}
function isSuspense(object) {
  return typeOf(object) === REACT_SUSPENSE_TYPE;
}

exports.AsyncMode = AsyncMode;
exports.ConcurrentMode = ConcurrentMode;
exports.ContextConsumer = ContextConsumer;
exports.ContextProvider = ContextProvider;
exports.Element = Element;
exports.ForwardRef = ForwardRef;
exports.Fragment = Fragment;
exports.Lazy = Lazy;
exports.Memo = Memo;
exports.Portal = Portal;
exports.Profiler = Profiler;
exports.StrictMode = StrictMode;
exports.Suspense = Suspense;
exports.isAsyncMode = isAsyncMode;
exports.isConcurrentMode = isConcurrentMode;
exports.isContextConsumer = isContextConsumer;
exports.isContextProvider = isContextProvider;
exports.isElement = isElement;
exports.isForwardRef = isForwardRef;
exports.isFragment = isFragment;
exports.isLazy = isLazy;
exports.isMemo = isMemo;
exports.isPortal = isPortal;
exports.isProfiler = isProfiler;
exports.isStrictMode = isStrictMode;
exports.isSuspense = isSuspense;
exports.isValidElementType = isValidElementType;
exports.typeOf = typeOf;
  })();
}


/***/ }),

/***/ "./node_modules/react-is/index.js":
/*!****************************************!*\
  !*** ./node_modules/react-is/index.js ***!
  \****************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


if (false) {} else {
  module.exports = __webpack_require__(/*! ./cjs/react-is.development.js */ "./node_modules/react-is/cjs/react-is.development.js");
}


/***/ }),

/***/ "./node_modules/react-masonry-component/lib/index.js":
/*!***********************************************************!*\
  !*** ./node_modules/react-masonry-component/lib/index.js ***!
  \***********************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

var isBrowser = typeof window !== 'undefined';
var Masonry = isBrowser ? window.Masonry || __webpack_require__(/*! masonry-layout */ "./node_modules/masonry-layout/masonry.js") : null;
var imagesloaded = isBrowser ? __webpack_require__(/*! imagesloaded */ "./node_modules/imagesloaded/imagesloaded.js") : null;
var assign = __webpack_require__(/*! lodash/assign */ "./node_modules/lodash/assign.js");
var elementResizeDetectorMaker = __webpack_require__(/*! element-resize-detector */ "./node_modules/element-resize-detector/src/element-resize-detector.js");
var debounce = __webpack_require__(/*! lodash/debounce */ "./node_modules/lodash/debounce.js");
var omit = __webpack_require__(/*! lodash/omit */ "./node_modules/lodash/omit.js");
var PropTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");
var React = __webpack_require__(/*! react */ "react");
var createReactClass = __webpack_require__(/*! create-react-class */ "./node_modules/create-react-class/index.js");

var propTypes = {
  enableResizableChildren: PropTypes.bool,
  disableImagesLoaded: PropTypes.bool,
  onImagesLoaded: PropTypes.func,
  updateOnEachImageLoad: PropTypes.bool,
  options: PropTypes.object,
  imagesLoadedOptions: PropTypes.object,
  elementType: PropTypes.string,
  onLayoutComplete: PropTypes.func,
  onRemoveComplete: PropTypes.func
};

var MasonryComponent = createReactClass({
  masonry: false,
  erd: undefined,
  latestKnownDomChildren: [],
  displayName: 'MasonryComponent',
  imagesLoadedCancelRef: undefined,
  propTypes: propTypes,

  getDefaultProps: function() {
    return {
      enableResizableChildren: false,
      disableImagesLoaded: false,
      updateOnEachImageLoad: false,
      options: {},
      imagesLoadedOptions: {},
      className: '',
      elementType: 'div',
      onLayoutComplete: function() {
      },
      onRemoveComplete: function() {
      }
    };
  },

  initializeMasonry: function(force) {
    if (!this.masonry || force) {
      this.masonry = new Masonry(
        this.masonryContainer,
        this.props.options
      );

      if (this.props.onLayoutComplete) {
        this.masonry.on('layoutComplete', this.props.onLayoutComplete);
      }

      if (this.props.onRemoveComplete) {
        this.masonry.on('removeComplete', this.props.onRemoveComplete);
      }

      this.latestKnownDomChildren = this.getCurrentDomChildren();
    }
  },

  getCurrentDomChildren: function() {
    var node = this.masonryContainer;
    var children = this.props.options.itemSelector ? node.querySelectorAll(this.props.options.itemSelector) : node.children;
    return Array.prototype.slice.call(children);
  },

  diffDomChildren: function() {
    var forceItemReload = false;

    var knownChildrenStillAttached = this.latestKnownDomChildren.filter(function(element) {
      /*
       * take only elements attached to DOM
       * (aka the parent is the masonry container, not null)
       * otherwise masonry would try to "remove it" again from the DOM
       */
      return !!element.parentNode;
    });

    /*
     * If not all known children are attached to the dom - we have no other way of notifying
     * masonry to remove the ones not still attached besides invoking a complete item reload.
     * basically all the rest of the code below does not matter in that case.
     */
    if (knownChildrenStillAttached.length !== this.latestKnownDomChildren.length) {
      forceItemReload = true;
    }

    var currentDomChildren = this.getCurrentDomChildren();

    /*
     * Since we are looking for a known child which is also attached to the dom AND
     * not attached to the dom at the same time - this would *always* produce an empty array.
     */
    var removed = knownChildrenStillAttached.filter(function(attachedKnownChild) {
      return !~currentDomChildren.indexOf(attachedKnownChild);
    });

    /*
     * This would get any children which are attached to the dom but are *unkown* to us
     * from previous renders
     */
    var newDomChildren = currentDomChildren.filter(function(currentChild) {
      return !~knownChildrenStillAttached.indexOf(currentChild);
    });

    var beginningIndex = 0;

    // get everything added to the beginning of the DOMNode list
    var prepended = newDomChildren.filter(function(newChild) {
      var prepend = (beginningIndex === currentDomChildren.indexOf(newChild));

      if (prepend) {
        // increase the index
        beginningIndex++;
      }

      return prepend;
    });

    // we assume that everything else is appended
    var appended = newDomChildren.filter(function(el) {
      return prepended.indexOf(el) === -1;
    });

    /*
     * otherwise we reverse it because so we're going through the list picking off the items that
     * have been added at the end of the list. this complex logic is preserved in case it needs to be
     * invoked
     *
     * var endingIndex = currentDomChildren.length - 1;
     *
     * newDomChildren.reverse().filter(function(newChild, i){
     *     var append = endingIndex == currentDomChildren.indexOf(newChild);
     *
     *     if (append) {
     *         endingIndex--;
     *     }
     *
     *     return append;
     * });
     */

    // get everything added to the end of the DOMNode list
    var moved = [];

    /*
     * This would always be true (see above about the lofic for "removed")
     */
    if (removed.length === 0) {
      /*
       * 'moved' will contain some random elements (if any) since the "knownChildrenStillAttached" is a filter
       * of the "known" children which are still attached - All indexes could basically change. (for example
       * if the first element is not attached)
       * Don't trust this array.
       */
      moved = knownChildrenStillAttached.filter(function(child, index) {
        return index !== currentDomChildren.indexOf(child);
      });
    }

    this.latestKnownDomChildren = currentDomChildren;

    return {
      old: knownChildrenStillAttached, // Not used
      new: currentDomChildren, // Not used
      removed: removed,
      appended: appended,
      prepended: prepended,
      moved: moved,
      forceItemReload: forceItemReload
    };
  },

  performLayout: function() {
    var diff = this.diffDomChildren();
    var reloadItems = diff.forceItemReload || diff.moved.length > 0;

    // Would never be true. (see comments of 'diffDomChildren' about 'removed')
    if (diff.removed.length > 0) {
      if (this.props.enableResizableChildren) {
        diff.removed.forEach(this.erd.removeAllListeners, this.erd);
      }
      this.masonry.remove(diff.removed);
      reloadItems = true;
    }

    if (diff.appended.length > 0) {
      this.masonry.appended(diff.appended);

      if (diff.prepended.length === 0) {
        reloadItems = true;
      }

      if (this.props.enableResizableChildren) {
        diff.appended.forEach(this.listenToElementResize, this);
      }
    }

    if (diff.prepended.length > 0) {
      this.masonry.prepended(diff.prepended);

      if (this.props.enableResizableChildren) {
        diff.prepended.forEach(this.listenToElementResize, this);
      }
    }

    if (reloadItems) {
      this.masonry.reloadItems();
    }

    this.masonry.layout();
  },

  derefImagesLoaded: function() {
    this.imagesLoadedCancelRef();
    this.imagesLoadedCancelRef = undefined;
  },

  imagesLoaded: function() {
    if (this.props.disableImagesLoaded) {
      return;
    }

    if (this.imagesLoadedCancelRef) {
      this.derefImagesLoaded();
    }

    var event = this.props.updateOnEachImageLoad ? 'progress' : 'always';
    var handler = debounce(
      function(instance) {
        if (this.props.onImagesLoaded) {
          this.props.onImagesLoaded(instance);
        }
        this.masonry.layout();
      }.bind(this), 100);

    var imgLoad = imagesloaded(this.masonryContainer, this.props.imagesLoadedOptions).on(event, handler);

    this.imagesLoadedCancelRef = function() {
      imgLoad.off(event, handler);
      handler.cancel();
    };
  },

  initializeResizableChildren: function() {
    if (!this.props.enableResizableChildren) {
      return;
    }

    this.erd = elementResizeDetectorMaker({
      strategy: 'scroll'
    });

    this.latestKnownDomChildren.forEach(this.listenToElementResize, this);
  },

  listenToElementResize: function(el) {
    this.erd.listenTo(el, function() {
      this.masonry.layout()
    }.bind(this))
  },

  destroyErd: function() {
    if (this.erd) {
      this.latestKnownDomChildren.forEach(this.erd.uninstall, this.erd);
    }
  },

  componentDidMount: function() {
    this.initializeMasonry();
    this.initializeResizableChildren();
    this.imagesLoaded();
  },

  componentDidUpdate: function() {
    this.performLayout();
    this.imagesLoaded();
  },

  componentWillUnmount: function() {
    this.destroyErd();

    // unregister events
    if (this.props.onLayoutComplete) {
      this.masonry.off('layoutComplete', this.props.onLayoutComplete);
    }

    if (this.props.onRemoveComplete) {
      this.masonry.off('removeComplete', this.props.onRemoveComplete);
    }

    if (this.imagesLoadedCancelRef) {
      this.derefImagesLoaded();
    }
    this.masonry.destroy();
  },
  
  setRef: function(n) {
    this.masonryContainer = n;
  },

  render: function() {
    var props = omit(this.props, Object.keys(propTypes));
    return React.createElement(this.props.elementType, assign({}, props, {ref: this.setRef}), this.props.children);
  }
});

module.exports = MasonryComponent;
module.exports.default = MasonryComponent;


/***/ }),

/***/ "./node_modules/react-slick/lib/arrows.js":
/*!************************************************!*\
  !*** ./node_modules/react-slick/lib/arrows.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.NextArrow = exports.PrevArrow = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));

var _innerSliderUtils = __webpack_require__(/*! ./utils/innerSliderUtils */ "./node_modules/react-slick/lib/utils/innerSliderUtils.js");

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }

function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }

function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }

function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }

function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }

function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }

var PrevArrow =
/*#__PURE__*/
function (_React$PureComponent) {
  _inherits(PrevArrow, _React$PureComponent);

  function PrevArrow() {
    _classCallCheck(this, PrevArrow);

    return _possibleConstructorReturn(this, _getPrototypeOf(PrevArrow).apply(this, arguments));
  }

  _createClass(PrevArrow, [{
    key: "clickHandler",
    value: function clickHandler(options, e) {
      if (e) {
        e.preventDefault();
      }

      this.props.clickHandler(options, e);
    }
  }, {
    key: "render",
    value: function render() {
      var prevClasses = {
        "slick-arrow": true,
        "slick-prev": true
      };
      var prevHandler = this.clickHandler.bind(this, {
        message: "previous"
      });

      if (!this.props.infinite && (this.props.currentSlide === 0 || this.props.slideCount <= this.props.slidesToShow)) {
        prevClasses["slick-disabled"] = true;
        prevHandler = null;
      }

      var prevArrowProps = {
        key: "0",
        "data-role": "none",
        className: (0, _classnames.default)(prevClasses),
        style: {
          display: "block"
        },
        onClick: prevHandler
      };
      var customProps = {
        currentSlide: this.props.currentSlide,
        slideCount: this.props.slideCount
      };
      var prevArrow;

      if (this.props.prevArrow) {
        prevArrow = _react.default.cloneElement(this.props.prevArrow, _objectSpread({}, prevArrowProps, customProps));
      } else {
        prevArrow = _react.default.createElement("button", _extends({
          key: "0",
          type: "button"
        }, prevArrowProps), " ", "Previous");
      }

      return prevArrow;
    }
  }]);

  return PrevArrow;
}(_react.default.PureComponent);

exports.PrevArrow = PrevArrow;

var NextArrow =
/*#__PURE__*/
function (_React$PureComponent2) {
  _inherits(NextArrow, _React$PureComponent2);

  function NextArrow() {
    _classCallCheck(this, NextArrow);

    return _possibleConstructorReturn(this, _getPrototypeOf(NextArrow).apply(this, arguments));
  }

  _createClass(NextArrow, [{
    key: "clickHandler",
    value: function clickHandler(options, e) {
      if (e) {
        e.preventDefault();
      }

      this.props.clickHandler(options, e);
    }
  }, {
    key: "render",
    value: function render() {
      var nextClasses = {
        "slick-arrow": true,
        "slick-next": true
      };
      var nextHandler = this.clickHandler.bind(this, {
        message: "next"
      });

      if (!(0, _innerSliderUtils.canGoNext)(this.props)) {
        nextClasses["slick-disabled"] = true;
        nextHandler = null;
      }

      var nextArrowProps = {
        key: "1",
        "data-role": "none",
        className: (0, _classnames.default)(nextClasses),
        style: {
          display: "block"
        },
        onClick: nextHandler
      };
      var customProps = {
        currentSlide: this.props.currentSlide,
        slideCount: this.props.slideCount
      };
      var nextArrow;

      if (this.props.nextArrow) {
        nextArrow = _react.default.cloneElement(this.props.nextArrow, _objectSpread({}, nextArrowProps, customProps));
      } else {
        nextArrow = _react.default.createElement("button", _extends({
          key: "1",
          type: "button"
        }, nextArrowProps), " ", "Next");
      }

      return nextArrow;
    }
  }]);

  return NextArrow;
}(_react.default.PureComponent);

exports.NextArrow = NextArrow;

/***/ }),

/***/ "./node_modules/react-slick/lib/default-props.js":
/*!*******************************************************!*\
  !*** ./node_modules/react-slick/lib/default-props.js ***!
  \*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var defaultProps = {
  accessibility: true,
  adaptiveHeight: false,
  afterChange: null,
  appendDots: function appendDots(dots) {
    return _react.default.createElement("ul", {
      style: {
        display: "block"
      }
    }, dots);
  },
  arrows: true,
  autoplay: false,
  autoplaySpeed: 3000,
  beforeChange: null,
  centerMode: false,
  centerPadding: "50px",
  className: "",
  cssEase: "ease",
  customPaging: function customPaging(i) {
    return _react.default.createElement("button", null, i + 1);
  },
  dots: false,
  dotsClass: "slick-dots",
  draggable: true,
  easing: "linear",
  edgeFriction: 0.35,
  fade: false,
  focusOnSelect: false,
  infinite: true,
  initialSlide: 0,
  lazyLoad: null,
  nextArrow: null,
  onEdge: null,
  onInit: null,
  onLazyLoadError: null,
  onReInit: null,
  pauseOnDotsHover: false,
  pauseOnFocus: false,
  pauseOnHover: true,
  prevArrow: null,
  responsive: null,
  rows: 1,
  rtl: false,
  slide: "div",
  slidesPerRow: 1,
  slidesToScroll: 1,
  slidesToShow: 1,
  speed: 500,
  swipe: true,
  swipeEvent: null,
  swipeToSlide: false,
  touchMove: true,
  touchThreshold: 5,
  useCSS: true,
  useTransform: true,
  variableWidth: false,
  vertical: false,
  waitForAnimate: true
};
var _default = defaultProps;
exports.default = _default;

/***/ }),

/***/ "./node_modules/react-slick/lib/dots.js":
/*!**********************************************!*\
  !*** ./node_modules/react-slick/lib/dots.js ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.Dots = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }

function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }

function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }

function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }

function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }

var getDotCount = function getDotCount(spec) {
  var dots;

  if (spec.infinite) {
    dots = Math.ceil(spec.slideCount / spec.slidesToScroll);
  } else {
    dots = Math.ceil((spec.slideCount - spec.slidesToShow) / spec.slidesToScroll) + 1;
  }

  return dots;
};

var Dots =
/*#__PURE__*/
function (_React$PureComponent) {
  _inherits(Dots, _React$PureComponent);

  function Dots() {
    _classCallCheck(this, Dots);

    return _possibleConstructorReturn(this, _getPrototypeOf(Dots).apply(this, arguments));
  }

  _createClass(Dots, [{
    key: "clickHandler",
    value: function clickHandler(options, e) {
      // In Autoplay the focus stays on clicked button even after transition
      // to next slide. That only goes away by click somewhere outside
      e.preventDefault();
      this.props.clickHandler(options);
    }
  }, {
    key: "render",
    value: function render() {
      var _this = this;

      var dotCount = getDotCount({
        slideCount: this.props.slideCount,
        slidesToScroll: this.props.slidesToScroll,
        slidesToShow: this.props.slidesToShow,
        infinite: this.props.infinite
      }); // Apply join & split to Array to pre-fill it for IE8
      //
      // Credit: http://stackoverflow.com/a/13735425/1849458

      var _this$props = this.props,
          onMouseEnter = _this$props.onMouseEnter,
          onMouseOver = _this$props.onMouseOver,
          onMouseLeave = _this$props.onMouseLeave;
      var mouseEvents = {
        onMouseEnter: onMouseEnter,
        onMouseOver: onMouseOver,
        onMouseLeave: onMouseLeave
      };
      var dots = Array.apply(null, Array(dotCount + 1).join("0").split("")).map(function (x, i) {
        var leftBound = i * _this.props.slidesToScroll;
        var rightBound = i * _this.props.slidesToScroll + (_this.props.slidesToScroll - 1);
        var className = (0, _classnames.default)({
          "slick-active": _this.props.currentSlide >= leftBound && _this.props.currentSlide <= rightBound
        });
        var dotOptions = {
          message: "dots",
          index: i,
          slidesToScroll: _this.props.slidesToScroll,
          currentSlide: _this.props.currentSlide
        };

        var onClick = _this.clickHandler.bind(_this, dotOptions);

        return _react.default.createElement("li", {
          key: i,
          className: className
        }, _react.default.cloneElement(_this.props.customPaging(i), {
          onClick: onClick
        }));
      });
      return _react.default.cloneElement(this.props.appendDots(dots), _objectSpread({
        className: this.props.dotsClass
      }, mouseEvents));
    }
  }]);

  return Dots;
}(_react.default.PureComponent);

exports.Dots = Dots;

/***/ }),

/***/ "./node_modules/react-slick/lib/index.js":
/*!***********************************************!*\
  !*** ./node_modules/react-slick/lib/index.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _slider = _interopRequireDefault(__webpack_require__(/*! ./slider */ "./node_modules/react-slick/lib/slider.js"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

var _default = _slider.default;
exports.default = _default;

/***/ }),

/***/ "./node_modules/react-slick/lib/initial-state.js":
/*!*******************************************************!*\
  !*** ./node_modules/react-slick/lib/initial-state.js ***!
  \*******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;
var initialState = {
  animating: false,
  autoplaying: null,
  currentDirection: 0,
  currentLeft: null,
  currentSlide: 0,
  direction: 1,
  dragging: false,
  edgeDragged: false,
  initialized: false,
  lazyLoadedList: [],
  listHeight: null,
  listWidth: null,
  scrolling: false,
  slideCount: null,
  slideHeight: null,
  slideWidth: null,
  swipeLeft: null,
  swiped: false,
  // used by swipeEvent. differentites between touch and swipe.
  swiping: false,
  touchObject: {
    startX: 0,
    startY: 0,
    curX: 0,
    curY: 0
  },
  trackStyle: {},
  trackWidth: 0
};
var _default = initialState;
exports.default = _default;

/***/ }),

/***/ "./node_modules/react-slick/lib/inner-slider.js":
/*!******************************************************!*\
  !*** ./node_modules/react-slick/lib/inner-slider.js ***!
  \******************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.InnerSlider = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));

var _initialState = _interopRequireDefault(__webpack_require__(/*! ./initial-state */ "./node_modules/react-slick/lib/initial-state.js"));

var _lodash = _interopRequireDefault(__webpack_require__(/*! lodash.debounce */ "./node_modules/lodash.debounce/index.js"));

var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));

var _innerSliderUtils = __webpack_require__(/*! ./utils/innerSliderUtils */ "./node_modules/react-slick/lib/utils/innerSliderUtils.js");

var _track = __webpack_require__(/*! ./track */ "./node_modules/react-slick/lib/track.js");

var _dots = __webpack_require__(/*! ./dots */ "./node_modules/react-slick/lib/dots.js");

var _arrows = __webpack_require__(/*! ./arrows */ "./node_modules/react-slick/lib/arrows.js");

var _resizeObserverPolyfill = _interopRequireDefault(__webpack_require__(/*! resize-observer-polyfill */ "./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }

function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }

function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }

function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }

function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }

function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

var InnerSlider =
/*#__PURE__*/
function (_React$Component) {
  _inherits(InnerSlider, _React$Component);

  function InnerSlider(props) {
    var _this;

    _classCallCheck(this, InnerSlider);

    _this = _possibleConstructorReturn(this, _getPrototypeOf(InnerSlider).call(this, props));

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "listRefHandler", function (ref) {
      return _this.list = ref;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "trackRefHandler", function (ref) {
      return _this.track = ref;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "adaptHeight", function () {
      if (_this.props.adaptiveHeight && _this.list) {
        var elem = _this.list.querySelector("[data-index=\"".concat(_this.state.currentSlide, "\"]"));

        _this.list.style.height = (0, _innerSliderUtils.getHeight)(elem) + "px";
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "componentWillMount", function () {
      _this.ssrInit();

      _this.props.onInit && _this.props.onInit();

      if (_this.props.lazyLoad) {
        var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread({}, _this.props, _this.state));

        if (slidesToLoad.length > 0) {
          _this.setState(function (prevState) {
            return {
              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)
            };
          });

          if (_this.props.onLazyLoad) {
            _this.props.onLazyLoad(slidesToLoad);
          }
        }
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "componentDidMount", function () {
      var spec = _objectSpread({
        listRef: _this.list,
        trackRef: _this.track
      }, _this.props);

      _this.updateState(spec, true, function () {
        _this.adaptHeight();

        _this.props.autoplay && _this.autoPlay("update");
      });

      if (_this.props.lazyLoad === "progressive") {
        _this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000);
      }

      _this.ro = new _resizeObserverPolyfill.default(function () {
        if (_this.state.animating) {
          _this.onWindowResized(false); // don't set trackStyle hence don't break animation


          _this.callbackTimers.push(setTimeout(function () {
            return _this.onWindowResized();
          }, _this.props.speed));
        } else {
          _this.onWindowResized();
        }
      });

      _this.ro.observe(_this.list);

      Array.prototype.forEach.call(document.querySelectorAll(".slick-slide"), function (slide) {
        slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null;
        slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null;
      }); // To support server-side rendering

      if (!window) {
        return;
      }

      if (window.addEventListener) {
        window.addEventListener("resize", _this.onWindowResized);
      } else {
        window.attachEvent("onresize", _this.onWindowResized);
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "componentWillUnmount", function () {
      if (_this.animationEndCallback) {
        clearTimeout(_this.animationEndCallback);
      }

      if (_this.lazyLoadTimer) {
        clearInterval(_this.lazyLoadTimer);
      }

      if (_this.callbackTimers.length) {
        _this.callbackTimers.forEach(function (timer) {
          return clearTimeout(timer);
        });

        _this.callbackTimers = [];
      }

      if (window.addEventListener) {
        window.removeEventListener("resize", _this.onWindowResized);
      } else {
        window.detachEvent("onresize", _this.onWindowResized);
      }

      if (_this.autoplayTimer) {
        clearInterval(_this.autoplayTimer);
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "componentWillReceiveProps", function (nextProps) {
      var spec = _objectSpread({
        listRef: _this.list,
        trackRef: _this.track
      }, nextProps, _this.state);

      var setTrackStyle = false;

      var _arr = Object.keys(_this.props);

      for (var _i = 0; _i < _arr.length; _i++) {
        var key = _arr[_i];

        if (!nextProps.hasOwnProperty(key)) {
          setTrackStyle = true;
          break;
        }

        if (_typeof(nextProps[key]) === "object" || typeof nextProps[key] === "function") {
          continue;
        }

        if (nextProps[key] !== _this.props[key]) {
          setTrackStyle = true;
          break;
        }
      }

      _this.updateState(spec, setTrackStyle, function () {
        if (_this.state.currentSlide >= _react.default.Children.count(nextProps.children)) {
          _this.changeSlide({
            message: "index",
            index: _react.default.Children.count(nextProps.children) - nextProps.slidesToShow,
            currentSlide: _this.state.currentSlide
          });
        }

        if (nextProps.autoplay) {
          _this.autoPlay("update");
        } else {
          _this.pause("paused");
        }
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "componentDidUpdate", function () {
      _this.checkImagesLoad();

      _this.props.onReInit && _this.props.onReInit();

      if (_this.props.lazyLoad) {
        var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_objectSpread({}, _this.props, _this.state));

        if (slidesToLoad.length > 0) {
          _this.setState(function (prevState) {
            return {
              lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad)
            };
          });

          if (_this.props.onLazyLoad) {
            _this.props.onLazyLoad(slidesToLoad);
          }
        }
      } // if (this.props.onLazyLoad) {
      //   this.props.onLazyLoad([leftMostSlide])
      // }


      _this.adaptHeight();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onWindowResized", function (setTrackStyle) {
      if (_this.debouncedResize) _this.debouncedResize.cancel();
      _this.debouncedResize = (0, _lodash.default)(function () {
        return _this.resizeWindow(setTrackStyle);
      }, 50);

      _this.debouncedResize();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "resizeWindow", function () {
      var setTrackStyle = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
      if (!_reactDom.default.findDOMNode(_this.track)) return;

      var spec = _objectSpread({
        listRef: _this.list,
        trackRef: _this.track
      }, _this.props, _this.state);

      _this.updateState(spec, setTrackStyle, function () {
        if (_this.props.autoplay) _this.autoPlay("update");else _this.pause("paused");
      }); // animating state should be cleared while resizing, otherwise autoplay stops working


      _this.setState({
        animating: false
      });

      clearTimeout(_this.animationEndCallback);
      delete _this.animationEndCallback;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "updateState", function (spec, setTrackStyle, callback) {
      var updatedState = (0, _innerSliderUtils.initializedState)(spec);
      spec = _objectSpread({}, spec, updatedState, {
        slideIndex: updatedState.currentSlide
      });
      var targetLeft = (0, _innerSliderUtils.getTrackLeft)(spec);
      spec = _objectSpread({}, spec, {
        left: targetLeft
      });
      var trackStyle = (0, _innerSliderUtils.getTrackCSS)(spec);

      if (setTrackStyle || _react.default.Children.count(_this.props.children) !== _react.default.Children.count(spec.children)) {
        updatedState["trackStyle"] = trackStyle;
      }

      _this.setState(updatedState, callback);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "ssrInit", function () {
      if (_this.props.variableWidth) {
        var _trackWidth = 0,
            _trackLeft = 0;
        var childrenWidths = [];
        var preClones = (0, _innerSliderUtils.getPreClones)(_objectSpread({}, _this.props, _this.state, {
          slideCount: _this.props.children.length
        }));
        var postClones = (0, _innerSliderUtils.getPostClones)(_objectSpread({}, _this.props, _this.state, {
          slideCount: _this.props.children.length
        }));

        _this.props.children.forEach(function (child) {
          childrenWidths.push(child.props.style.width);
          _trackWidth += child.props.style.width;
        });

        for (var i = 0; i < preClones; i++) {
          _trackLeft += childrenWidths[childrenWidths.length - 1 - i];
          _trackWidth += childrenWidths[childrenWidths.length - 1 - i];
        }

        for (var _i2 = 0; _i2 < postClones; _i2++) {
          _trackWidth += childrenWidths[_i2];
        }

        for (var _i3 = 0; _i3 < _this.state.currentSlide; _i3++) {
          _trackLeft += childrenWidths[_i3];
        }

        var _trackStyle = {
          width: _trackWidth + "px",
          left: -_trackLeft + "px"
        };

        if (_this.props.centerMode) {
          var currentWidth = "".concat(childrenWidths[_this.state.currentSlide], "px");
          _trackStyle.left = "calc(".concat(_trackStyle.left, " + (100% - ").concat(currentWidth, ") / 2 ) ");
        }

        _this.setState({
          trackStyle: _trackStyle
        });

        return;
      }

      var childrenCount = _react.default.Children.count(_this.props.children);

      var spec = _objectSpread({}, _this.props, _this.state, {
        slideCount: childrenCount
      });

      var slideCount = (0, _innerSliderUtils.getPreClones)(spec) + (0, _innerSliderUtils.getPostClones)(spec) + childrenCount;
      var trackWidth = 100 / _this.props.slidesToShow * slideCount;
      var slideWidth = 100 / slideCount;
      var trackLeft = -slideWidth * ((0, _innerSliderUtils.getPreClones)(spec) + _this.state.currentSlide) * trackWidth / 100;

      if (_this.props.centerMode) {
        trackLeft += (100 - slideWidth * trackWidth / 100) / 2;
      }

      var trackStyle = {
        width: trackWidth + "%",
        left: trackLeft + "%"
      };

      _this.setState({
        slideWidth: slideWidth + "%",
        trackStyle: trackStyle
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "checkImagesLoad", function () {
      var images = document.querySelectorAll(".slick-slide img");
      var imagesCount = images.length,
          loadedCount = 0;
      Array.prototype.forEach.call(images, function (image) {
        var handler = function handler() {
          return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized();
        };

        if (!image.onclick) {
          image.onclick = function () {
            return image.parentNode.focus();
          };
        } else {
          var prevClickHandler = image.onclick;

          image.onclick = function () {
            prevClickHandler();
            image.parentNode.focus();
          };
        }

        if (!image.onload) {
          if (_this.props.lazyLoad) {
            image.onload = function () {
              _this.adaptHeight();

              _this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed));
            };
          } else {
            image.onload = handler;

            image.onerror = function () {
              handler();
              _this.props.onLazyLoadError && _this.props.onLazyLoadError();
            };
          }
        }
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "progressiveLazyLoad", function () {
      var slidesToLoad = [];

      var spec = _objectSpread({}, _this.props, _this.state);

      for (var index = _this.state.currentSlide; index < _this.state.slideCount + (0, _innerSliderUtils.getPostClones)(spec); index++) {
        if (_this.state.lazyLoadedList.indexOf(index) < 0) {
          slidesToLoad.push(index);
          break;
        }
      }

      for (var _index = _this.state.currentSlide - 1; _index >= -(0, _innerSliderUtils.getPreClones)(spec); _index--) {
        if (_this.state.lazyLoadedList.indexOf(_index) < 0) {
          slidesToLoad.push(_index);
          break;
        }
      }

      if (slidesToLoad.length > 0) {
        _this.setState(function (state) {
          return {
            lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad)
          };
        });

        if (_this.props.onLazyLoad) {
          _this.props.onLazyLoad(slidesToLoad);
        }
      } else {
        if (_this.lazyLoadTimer) {
          clearInterval(_this.lazyLoadTimer);
          delete _this.lazyLoadTimer;
        }
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slideHandler", function (index) {
      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      var _this$props = _this.props,
          asNavFor = _this$props.asNavFor,
          beforeChange = _this$props.beforeChange,
          onLazyLoad = _this$props.onLazyLoad,
          speed = _this$props.speed,
          afterChange = _this$props.afterChange; // capture currentslide before state is updated

      var currentSlide = _this.state.currentSlide;

      var _slideHandler = (0, _innerSliderUtils.slideHandler)(_objectSpread({
        index: index
      }, _this.props, _this.state, {
        trackRef: _this.track,
        useCSS: _this.props.useCSS && !dontAnimate
      })),
          state = _slideHandler.state,
          nextState = _slideHandler.nextState;

      if (!state) return;
      beforeChange && beforeChange(currentSlide, state.currentSlide);
      var slidesToLoad = state.lazyLoadedList.filter(function (value) {
        return _this.state.lazyLoadedList.indexOf(value) < 0;
      });
      onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad);

      _this.setState(state, function () {
        asNavFor && asNavFor.innerSlider.state.currentSlide !== _this.state.currentSlide && asNavFor.innerSlider.slideHandler(index);
        if (!nextState) return;
        _this.animationEndCallback = setTimeout(function () {
          var animating = nextState.animating,
              firstBatch = _objectWithoutProperties(nextState, ["animating"]);

          _this.setState(firstBatch, function () {
            _this.callbackTimers.push(setTimeout(function () {
              return _this.setState({
                animating: animating
              });
            }, 10));

            afterChange && afterChange(state.currentSlide);
            delete _this.animationEndCallback;
          });
        }, speed);
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "changeSlide", function (options) {
      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;

      var spec = _objectSpread({}, _this.props, _this.state);

      var targetSlide = (0, _innerSliderUtils.changeSlide)(spec, options);
      if (targetSlide !== 0 && !targetSlide) return;

      if (dontAnimate === true) {
        _this.slideHandler(targetSlide, dontAnimate);
      } else {
        _this.slideHandler(targetSlide);
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "clickHandler", function (e) {
      if (_this.clickable === false) {
        e.stopPropagation();
        e.preventDefault();
      }

      _this.clickable = true;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyHandler", function (e) {
      var dir = (0, _innerSliderUtils.keyHandler)(e, _this.props.accessibility, _this.props.rtl);
      dir !== "" && _this.changeSlide({
        message: dir
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "selectHandler", function (options) {
      _this.changeSlide(options);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "disableBodyScroll", function () {
      var preventDefault = function preventDefault(e) {
        e = e || window.event;
        if (e.preventDefault) e.preventDefault();
        e.returnValue = false;
      };

      window.ontouchmove = preventDefault;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "enableBodyScroll", function () {
      window.ontouchmove = null;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "swipeStart", function (e) {
      if (_this.props.verticalSwiping) {
        _this.disableBodyScroll();
      }

      var state = (0, _innerSliderUtils.swipeStart)(e, _this.props.swipe, _this.props.draggable);
      state !== "" && _this.setState(state);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "swipeMove", function (e) {
      var state = (0, _innerSliderUtils.swipeMove)(e, _objectSpread({}, _this.props, _this.state, {
        trackRef: _this.track,
        listRef: _this.list,
        slideIndex: _this.state.currentSlide
      }));
      if (!state) return;

      if (state["swiping"]) {
        _this.clickable = false;
      }

      _this.setState(state);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "swipeEnd", function (e) {
      var state = (0, _innerSliderUtils.swipeEnd)(e, _objectSpread({}, _this.props, _this.state, {
        trackRef: _this.track,
        listRef: _this.list,
        slideIndex: _this.state.currentSlide
      }));
      if (!state) return;
      var triggerSlideHandler = state["triggerSlideHandler"];
      delete state["triggerSlideHandler"];

      _this.setState(state);

      if (triggerSlideHandler === undefined) return;

      _this.slideHandler(triggerSlideHandler);

      if (_this.props.verticalSwiping) {
        _this.enableBodyScroll();
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickPrev", function () {
      // this and fellow methods are wrapped in setTimeout
      // to make sure initialize setState has happened before
      // any of such methods are called
      _this.callbackTimers.push(setTimeout(function () {
        return _this.changeSlide({
          message: "previous"
        });
      }, 0));
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickNext", function () {
      _this.callbackTimers.push(setTimeout(function () {
        return _this.changeSlide({
          message: "next"
        });
      }, 0));
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickGoTo", function (slide) {
      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      slide = Number(slide);
      if (isNaN(slide)) return "";

      _this.callbackTimers.push(setTimeout(function () {
        return _this.changeSlide({
          message: "index",
          index: slide,
          currentSlide: _this.state.currentSlide
        }, dontAnimate);
      }, 0));
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "play", function () {
      var nextIndex;

      if (_this.props.rtl) {
        nextIndex = _this.state.currentSlide - _this.props.slidesToScroll;
      } else {
        if ((0, _innerSliderUtils.canGoNext)(_objectSpread({}, _this.props, _this.state))) {
          nextIndex = _this.state.currentSlide + _this.props.slidesToScroll;
        } else {
          return false;
        }
      }

      _this.slideHandler(nextIndex);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "autoPlay", function (playType) {
      if (_this.autoplayTimer) {
        clearInterval(_this.autoplayTimer);
      }

      var autoplaying = _this.state.autoplaying;

      if (playType === "update") {
        if (autoplaying === "hovered" || autoplaying === "focused" || autoplaying === "paused") {
          return;
        }
      } else if (playType === "leave") {
        if (autoplaying === "paused" || autoplaying === "focused") {
          return;
        }
      } else if (playType === "blur") {
        if (autoplaying === "paused" || autoplaying === "hovered") {
          return;
        }
      }

      _this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50);

      _this.setState({
        autoplaying: "playing"
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "pause", function (pauseType) {
      if (_this.autoplayTimer) {
        clearInterval(_this.autoplayTimer);
        _this.autoplayTimer = null;
      }

      var autoplaying = _this.state.autoplaying;

      if (pauseType === "paused") {
        _this.setState({
          autoplaying: "paused"
        });
      } else if (pauseType === "focused") {
        if (autoplaying === "hovered" || autoplaying === "playing") {
          _this.setState({
            autoplaying: "focused"
          });
        }
      } else {
        // pauseType  is 'hovered'
        if (autoplaying === "playing") {
          _this.setState({
            autoplaying: "hovered"
          });
        }
      }
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onDotsOver", function () {
      return _this.props.autoplay && _this.pause("hovered");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onDotsLeave", function () {
      return _this.props.autoplay && _this.state.autoplaying === "hovered" && _this.autoPlay("leave");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onTrackOver", function () {
      return _this.props.autoplay && _this.pause("hovered");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onTrackLeave", function () {
      return _this.props.autoplay && _this.state.autoplaying === "hovered" && _this.autoPlay("leave");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onSlideFocus", function () {
      return _this.props.autoplay && _this.pause("focused");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onSlideBlur", function () {
      return _this.props.autoplay && _this.state.autoplaying === "focused" && _this.autoPlay("blur");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "render", function () {
      var className = (0, _classnames.default)("slick-slider", _this.props.className, {
        "slick-vertical": _this.props.vertical,
        "slick-initialized": true
      });

      var spec = _objectSpread({}, _this.props, _this.state);

      var trackProps = (0, _innerSliderUtils.extractObject)(spec, ["fade", "cssEase", "speed", "infinite", "centerMode", "focusOnSelect", "currentSlide", "lazyLoad", "lazyLoadedList", "rtl", "slideWidth", "slideHeight", "listHeight", "vertical", "slidesToShow", "slidesToScroll", "slideCount", "trackStyle", "variableWidth", "unslick", "centerPadding"]);
      var pauseOnHover = _this.props.pauseOnHover;
      trackProps = _objectSpread({}, trackProps, {
        onMouseEnter: pauseOnHover ? _this.onTrackOver : null,
        onMouseLeave: pauseOnHover ? _this.onTrackLeave : null,
        onMouseOver: pauseOnHover ? _this.onTrackOver : null,
        focusOnSelect: _this.props.focusOnSelect ? _this.selectHandler : null
      });
      var dots;

      if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) {
        var dotProps = (0, _innerSliderUtils.extractObject)(spec, ["dotsClass", "slideCount", "slidesToShow", "currentSlide", "slidesToScroll", "clickHandler", "children", "customPaging", "infinite", "appendDots"]);
        var pauseOnDotsHover = _this.props.pauseOnDotsHover;
        dotProps = _objectSpread({}, dotProps, {
          clickHandler: _this.changeSlide,
          onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null,
          onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null,
          onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null
        });
        dots = _react.default.createElement(_dots.Dots, dotProps);
      }

      var prevArrow, nextArrow;
      var arrowProps = (0, _innerSliderUtils.extractObject)(spec, ["infinite", "centerMode", "currentSlide", "slideCount", "slidesToShow", "prevArrow", "nextArrow"]);
      arrowProps.clickHandler = _this.changeSlide;

      if (_this.props.arrows) {
        prevArrow = _react.default.createElement(_arrows.PrevArrow, arrowProps);
        nextArrow = _react.default.createElement(_arrows.NextArrow, arrowProps);
      }

      var verticalHeightStyle = null;

      if (_this.props.vertical) {
        verticalHeightStyle = {
          height: _this.state.listHeight
        };
      }

      var centerPaddingStyle = null;

      if (_this.props.vertical === false) {
        if (_this.props.centerMode === true) {
          centerPaddingStyle = {
            padding: "0px " + _this.props.centerPadding
          };
        }
      } else {
        if (_this.props.centerMode === true) {
          centerPaddingStyle = {
            padding: _this.props.centerPadding + " 0px"
          };
        }
      }

      var listStyle = _objectSpread({}, verticalHeightStyle, centerPaddingStyle);

      var touchMove = _this.props.touchMove;
      var listProps = {
        className: "slick-list",
        style: listStyle,
        onClick: _this.clickHandler,
        onMouseDown: touchMove ? _this.swipeStart : null,
        onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null,
        onMouseUp: touchMove ? _this.swipeEnd : null,
        onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null,
        onTouchStart: touchMove ? _this.swipeStart : null,
        onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null,
        onTouchEnd: touchMove ? _this.swipeEnd : null,
        onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null,
        onKeyDown: _this.props.accessibility ? _this.keyHandler : null
      };
      var innerSliderProps = {
        className: className,
        dir: "ltr"
      };

      if (_this.props.unslick) {
        listProps = {
          className: "slick-list"
        };
        innerSliderProps = {
          className: className
        };
      }

      return _react.default.createElement("div", innerSliderProps, !_this.props.unslick ? prevArrow : "", _react.default.createElement("div", _extends({
        ref: _this.listRefHandler
      }, listProps), _react.default.createElement(_track.Track, _extends({
        ref: _this.trackRefHandler
      }, trackProps), _this.props.children)), !_this.props.unslick ? nextArrow : "", !_this.props.unslick ? dots : "");
    });

    _this.list = null;
    _this.track = null;
    _this.state = _objectSpread({}, _initialState.default, {
      currentSlide: _this.props.initialSlide,
      slideCount: _react.default.Children.count(_this.props.children)
    });
    _this.callbackTimers = [];
    _this.clickable = true;
    _this.debouncedResize = null;
    return _this;
  }

  return InnerSlider;
}(_react.default.Component);

exports.InnerSlider = InnerSlider;

/***/ }),

/***/ "./node_modules/react-slick/lib/slider.js":
/*!************************************************!*\
  !*** ./node_modules/react-slick/lib/slider.js ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _innerSlider = __webpack_require__(/*! ./inner-slider */ "./node_modules/react-slick/lib/inner-slider.js");

var _json2mq = _interopRequireDefault(__webpack_require__(/*! json2mq */ "./node_modules/json2mq/index.js"));

var _defaultProps = _interopRequireDefault(__webpack_require__(/*! ./default-props */ "./node_modules/react-slick/lib/default-props.js"));

var _innerSliderUtils = __webpack_require__(/*! ./utils/innerSliderUtils */ "./node_modules/react-slick/lib/utils/innerSliderUtils.js");

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }

function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }

function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }

function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }

function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }

function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

var enquire = (0, _innerSliderUtils.canUseDOM)() && __webpack_require__(/*! enquire.js */ "./node_modules/enquire.js/src/index.js");

var Slider =
/*#__PURE__*/
function (_React$Component) {
  _inherits(Slider, _React$Component);

  function Slider(props) {
    var _this;

    _classCallCheck(this, Slider);

    _this = _possibleConstructorReturn(this, _getPrototypeOf(Slider).call(this, props));

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "innerSliderRefHandler", function (ref) {
      return _this.innerSlider = ref;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickPrev", function () {
      return _this.innerSlider.slickPrev();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickNext", function () {
      return _this.innerSlider.slickNext();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickGoTo", function (slide) {
      var dontAnimate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      return _this.innerSlider.slickGoTo(slide, dontAnimate);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickPause", function () {
      return _this.innerSlider.pause("paused");
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "slickPlay", function () {
      return _this.innerSlider.autoPlay("play");
    });

    _this.state = {
      breakpoint: null
    };
    _this._responsiveMediaHandlers = [];
    return _this;
  }

  _createClass(Slider, [{
    key: "media",
    value: function media(query, handler) {
      // javascript handler for  css media query
      enquire.register(query, handler);

      this._responsiveMediaHandlers.push({
        query: query,
        handler: handler
      });
    } // handles responsive breakpoints

  }, {
    key: "componentWillMount",
    value: function componentWillMount() {
      var _this2 = this;

      // performance monitoring
      //if (process.env.NODE_ENV !== 'production') {
      //const { whyDidYouUpdate } = require('why-did-you-update')
      //whyDidYouUpdate(React)
      //}
      if (this.props.responsive) {
        var breakpoints = this.props.responsive.map(function (breakpt) {
          return breakpt.breakpoint;
        }); // sort them in increasing order of their numerical value

        breakpoints.sort(function (x, y) {
          return x - y;
        });
        breakpoints.forEach(function (breakpoint, index) {
          // media query for each breakpoint
          var bQuery;

          if (index === 0) {
            bQuery = (0, _json2mq.default)({
              minWidth: 0,
              maxWidth: breakpoint
            });
          } else {
            bQuery = (0, _json2mq.default)({
              minWidth: breakpoints[index - 1] + 1,
              maxWidth: breakpoint
            });
          } // when not using server side rendering


          (0, _innerSliderUtils.canUseDOM)() && _this2.media(bQuery, function () {
            _this2.setState({
              breakpoint: breakpoint
            });
          });
        }); // Register media query for full screen. Need to support resize from small to large
        // convert javascript object to media query string

        var query = (0, _json2mq.default)({
          minWidth: breakpoints.slice(-1)[0]
        });
        (0, _innerSliderUtils.canUseDOM)() && this.media(query, function () {
          _this2.setState({
            breakpoint: null
          });
        });
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      this._responsiveMediaHandlers.forEach(function (obj) {
        enquire.unregister(obj.query, obj.handler);
      });
    }
  }, {
    key: "render",
    value: function render() {
      var _this3 = this;

      var settings;
      var newProps;

      if (this.state.breakpoint) {
        newProps = this.props.responsive.filter(function (resp) {
          return resp.breakpoint === _this3.state.breakpoint;
        });
        settings = newProps[0].settings === "unslick" ? "unslick" : _objectSpread({}, _defaultProps.default, this.props, newProps[0].settings);
      } else {
        settings = _objectSpread({}, _defaultProps.default, this.props);
      } // force scrolling by one if centerMode is on


      if (settings.centerMode) {
        if (settings.slidesToScroll > 1 && "development" !== "production") {
          console.warn("slidesToScroll should be equal to 1 in centerMode, you are using ".concat(settings.slidesToScroll));
        }

        settings.slidesToScroll = 1;
      } // force showing one slide and scrolling by one if the fade mode is on


      if (settings.fade) {
        if (settings.slidesToShow > 1 && "development" !== "production") {
          console.warn("slidesToShow should be equal to 1 when fade is true, you're using ".concat(settings.slidesToShow));
        }

        if (settings.slidesToScroll > 1 && "development" !== "production") {
          console.warn("slidesToScroll should be equal to 1 when fade is true, you're using ".concat(settings.slidesToScroll));
        }

        settings.slidesToShow = 1;
        settings.slidesToScroll = 1;
      } // makes sure that children is an array, even when there is only 1 child


      var children = _react.default.Children.toArray(this.props.children); // Children may contain false or null, so we should filter them
      // children may also contain string filled with spaces (in certain cases where we use jsx strings)


      children = children.filter(function (child) {
        if (typeof child === "string") {
          return !!child.trim();
        }

        return !!child;
      }); // rows and slidesPerRow logic is handled here

      if (settings.variableWidth && (settings.rows > 1 || settings.slidesPerRow > 1)) {
        console.warn("variableWidth is not supported in case of rows > 1 or slidesPerRow > 1");
        settings.variableWidth = false;
      }

      var newChildren = [];
      var currentWidth = null;

      for (var i = 0; i < children.length; i += settings.rows * settings.slidesPerRow) {
        var newSlide = [];

        for (var j = i; j < i + settings.rows * settings.slidesPerRow; j += settings.slidesPerRow) {
          var row = [];

          for (var k = j; k < j + settings.slidesPerRow; k += 1) {
            if (settings.variableWidth && children[k].props.style) {
              currentWidth = children[k].props.style.width;
            }

            if (k >= children.length) break;
            row.push(_react.default.cloneElement(children[k], {
              key: 100 * i + 10 * j + k,
              tabIndex: -1,
              style: {
                width: "".concat(100 / settings.slidesPerRow, "%"),
                display: "inline-block"
              }
            }));
          }

          newSlide.push(_react.default.createElement("div", {
            key: 10 * i + j
          }, row));
        }

        if (settings.variableWidth) {
          newChildren.push(_react.default.createElement("div", {
            key: i,
            style: {
              width: currentWidth
            }
          }, newSlide));
        } else {
          newChildren.push(_react.default.createElement("div", {
            key: i
          }, newSlide));
        }
      }

      if (settings === "unslick") {
        var className = "regular slider " + (this.props.className || "");
        return _react.default.createElement("div", {
          className: className
        }, newChildren);
      } else if (newChildren.length <= settings.slidesToShow) {
        settings.unslick = true;
      }

      return _react.default.createElement(_innerSlider.InnerSlider, _extends({
        ref: this.innerSliderRefHandler
      }, settings), newChildren);
    }
  }]);

  return Slider;
}(_react.default.Component);

exports.default = Slider;

/***/ }),

/***/ "./node_modules/react-slick/lib/track.js":
/*!***********************************************!*\
  !*** ./node_modules/react-slick/lib/track.js ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.Track = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _classnames = _interopRequireDefault(__webpack_require__(/*! classnames */ "./node_modules/classnames/index.js"));

var _innerSliderUtils = __webpack_require__(/*! ./utils/innerSliderUtils */ "./node_modules/react-slick/lib/utils/innerSliderUtils.js");

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }

function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }

function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }

function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }

function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }

function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

// given specifications/props for a slide, fetch all the classes that need to be applied to the slide
var getSlideClasses = function getSlideClasses(spec) {
  var slickActive, slickCenter, slickCloned;
  var centerOffset, index;

  if (spec.rtl) {
    index = spec.slideCount - 1 - spec.index;
  } else {
    index = spec.index;
  }

  slickCloned = index < 0 || index >= spec.slideCount;

  if (spec.centerMode) {
    centerOffset = Math.floor(spec.slidesToShow / 2);
    slickCenter = (index - spec.currentSlide) % spec.slideCount === 0;

    if (index > spec.currentSlide - centerOffset - 1 && index <= spec.currentSlide + centerOffset) {
      slickActive = true;
    }
  } else {
    slickActive = spec.currentSlide <= index && index < spec.currentSlide + spec.slidesToShow;
  }

  var slickCurrent = index === spec.currentSlide;
  return {
    "slick-slide": true,
    "slick-active": slickActive,
    "slick-center": slickCenter,
    "slick-cloned": slickCloned,
    "slick-current": slickCurrent // dubious in case of RTL

  };
};

var getSlideStyle = function getSlideStyle(spec) {
  var style = {};

  if (spec.variableWidth === undefined || spec.variableWidth === false) {
    style.width = spec.slideWidth;
  }

  if (spec.fade) {
    style.position = "relative";

    if (spec.vertical) {
      style.top = -spec.index * parseInt(spec.slideHeight);
    } else {
      style.left = -spec.index * parseInt(spec.slideWidth);
    }

    style.opacity = spec.currentSlide === spec.index ? 1 : 0;
    style.transition = "opacity " + spec.speed + "ms " + spec.cssEase + ", " + "visibility " + spec.speed + "ms " + spec.cssEase;
    style.WebkitTransition = "opacity " + spec.speed + "ms " + spec.cssEase + ", " + "visibility " + spec.speed + "ms " + spec.cssEase;
  }

  return style;
};

var getKey = function getKey(child, fallbackKey) {
  return child.key || fallbackKey;
};

var renderSlides = function renderSlides(spec) {
  var key;
  var slides = [];
  var preCloneSlides = [];
  var postCloneSlides = [];

  var childrenCount = _react.default.Children.count(spec.children);

  var startIndex = (0, _innerSliderUtils.lazyStartIndex)(spec);
  var endIndex = (0, _innerSliderUtils.lazyEndIndex)(spec);

  _react.default.Children.forEach(spec.children, function (elem, index) {
    var child;
    var childOnClickOptions = {
      message: "children",
      index: index,
      slidesToScroll: spec.slidesToScroll,
      currentSlide: spec.currentSlide
    }; // in case of lazyLoad, whether or not we want to fetch the slide

    if (!spec.lazyLoad || spec.lazyLoad && spec.lazyLoadedList.indexOf(index) >= 0) {
      child = elem;
    } else {
      child = _react.default.createElement("div", null);
    }

    var childStyle = getSlideStyle(_objectSpread({}, spec, {
      index: index
    }));
    var slideClass = child.props.className || "";
    var slideClasses = getSlideClasses(_objectSpread({}, spec, {
      index: index
    })); // push a cloned element of the desired slide

    slides.push(_react.default.cloneElement(child, {
      key: "original" + getKey(child, index),
      "data-index": index,
      className: (0, _classnames.default)(slideClasses, slideClass),
      tabIndex: "-1",
      "aria-hidden": !slideClasses["slick-active"],
      style: _objectSpread({
        outline: "none"
      }, child.props.style || {}, childStyle),
      onClick: function onClick(e) {
        child.props && child.props.onClick && child.props.onClick(e);

        if (spec.focusOnSelect) {
          spec.focusOnSelect(childOnClickOptions);
        }
      }
    })); // if slide needs to be precloned or postcloned

    if (spec.infinite && spec.fade === false) {
      var preCloneNo = childrenCount - index;

      if (preCloneNo <= (0, _innerSliderUtils.getPreClones)(spec) && childrenCount !== spec.slidesToShow) {
        key = -preCloneNo;

        if (key >= startIndex) {
          child = elem;
        }

        slideClasses = getSlideClasses(_objectSpread({}, spec, {
          index: key
        }));
        preCloneSlides.push(_react.default.cloneElement(child, {
          key: "precloned" + getKey(child, key),
          "data-index": key,
          tabIndex: "-1",
          className: (0, _classnames.default)(slideClasses, slideClass),
          "aria-hidden": !slideClasses["slick-active"],
          style: _objectSpread({}, child.props.style || {}, childStyle),
          onClick: function onClick(e) {
            child.props && child.props.onClick && child.props.onClick(e);

            if (spec.focusOnSelect) {
              spec.focusOnSelect(childOnClickOptions);
            }
          }
        }));
      }

      if (childrenCount !== spec.slidesToShow) {
        key = childrenCount + index;

        if (key < endIndex) {
          child = elem;
        }

        slideClasses = getSlideClasses(_objectSpread({}, spec, {
          index: key
        }));
        postCloneSlides.push(_react.default.cloneElement(child, {
          key: "postcloned" + getKey(child, key),
          "data-index": key,
          tabIndex: "-1",
          className: (0, _classnames.default)(slideClasses, slideClass),
          "aria-hidden": !slideClasses["slick-active"],
          style: _objectSpread({}, child.props.style || {}, childStyle),
          onClick: function onClick(e) {
            child.props && child.props.onClick && child.props.onClick(e);

            if (spec.focusOnSelect) {
              spec.focusOnSelect(childOnClickOptions);
            }
          }
        }));
      }
    }
  });

  if (spec.rtl) {
    return preCloneSlides.concat(slides, postCloneSlides).reverse();
  } else {
    return preCloneSlides.concat(slides, postCloneSlides);
  }
};

var Track =
/*#__PURE__*/
function (_React$PureComponent) {
  _inherits(Track, _React$PureComponent);

  function Track() {
    _classCallCheck(this, Track);

    return _possibleConstructorReturn(this, _getPrototypeOf(Track).apply(this, arguments));
  }

  _createClass(Track, [{
    key: "render",
    value: function render() {
      var slides = renderSlides(this.props);
      var _this$props = this.props,
          onMouseEnter = _this$props.onMouseEnter,
          onMouseOver = _this$props.onMouseOver,
          onMouseLeave = _this$props.onMouseLeave;
      var mouseEvents = {
        onMouseEnter: onMouseEnter,
        onMouseOver: onMouseOver,
        onMouseLeave: onMouseLeave
      };
      return _react.default.createElement("div", _extends({
        className: "slick-track",
        style: this.props.trackStyle
      }, mouseEvents), slides);
    }
  }]);

  return Track;
}(_react.default.PureComponent);

exports.Track = Track;

/***/ }),

/***/ "./node_modules/react-slick/lib/utils/innerSliderUtils.js":
/*!****************************************************************!*\
  !*** ./node_modules/react-slick/lib/utils/innerSliderUtils.js ***!
  \****************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {

"use strict";


Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.canUseDOM = exports.slidesOnLeft = exports.slidesOnRight = exports.siblingDirection = exports.getTotalSlides = exports.getPostClones = exports.getPreClones = exports.getTrackLeft = exports.getTrackAnimateCSS = exports.getTrackCSS = exports.checkSpecKeys = exports.getSlideCount = exports.checkNavigable = exports.getNavigableIndexes = exports.swipeEnd = exports.swipeMove = exports.swipeStart = exports.keyHandler = exports.changeSlide = exports.slideHandler = exports.initializedState = exports.extractObject = exports.canGoNext = exports.getSwipeDirection = exports.getHeight = exports.getWidth = exports.lazySlidesOnRight = exports.lazySlidesOnLeft = exports.lazyEndIndex = exports.lazyStartIndex = exports.getRequiredLazySlides = exports.getOnDemandLazySlides = void 0;

var _react = _interopRequireDefault(__webpack_require__(/*! react */ "react"));

var _reactDom = _interopRequireDefault(__webpack_require__(/*! react-dom */ "react-dom"));

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

var getOnDemandLazySlides = function getOnDemandLazySlides(spec) {
  var onDemandSlides = [];
  var startIndex = lazyStartIndex(spec);
  var endIndex = lazyEndIndex(spec);

  for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {
    if (spec.lazyLoadedList.indexOf(slideIndex) < 0) {
      onDemandSlides.push(slideIndex);
    }
  }

  return onDemandSlides;
}; // return list of slides that need to be present


exports.getOnDemandLazySlides = getOnDemandLazySlides;

var getRequiredLazySlides = function getRequiredLazySlides(spec) {
  var requiredSlides = [];
  var startIndex = lazyStartIndex(spec);
  var endIndex = lazyEndIndex(spec);

  for (var slideIndex = startIndex; slideIndex < endIndex; slideIndex++) {
    requiredSlides.push(slideIndex);
  }

  return requiredSlides;
}; // startIndex that needs to be present


exports.getRequiredLazySlides = getRequiredLazySlides;

var lazyStartIndex = function lazyStartIndex(spec) {
  return spec.currentSlide - lazySlidesOnLeft(spec);
};

exports.lazyStartIndex = lazyStartIndex;

var lazyEndIndex = function lazyEndIndex(spec) {
  return spec.currentSlide + lazySlidesOnRight(spec);
};

exports.lazyEndIndex = lazyEndIndex;

var lazySlidesOnLeft = function lazySlidesOnLeft(spec) {
  return spec.centerMode ? Math.floor(spec.slidesToShow / 2) + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : 0;
};

exports.lazySlidesOnLeft = lazySlidesOnLeft;

var lazySlidesOnRight = function lazySlidesOnRight(spec) {
  return spec.centerMode ? Math.floor((spec.slidesToShow - 1) / 2) + 1 + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : spec.slidesToShow;
}; // get width of an element


exports.lazySlidesOnRight = lazySlidesOnRight;

var getWidth = function getWidth(elem) {
  return elem && elem.offsetWidth || 0;
};

exports.getWidth = getWidth;

var getHeight = function getHeight(elem) {
  return elem && elem.offsetHeight || 0;
};

exports.getHeight = getHeight;

var getSwipeDirection = function getSwipeDirection(touchObject) {
  var verticalSwiping = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  var xDist, yDist, r, swipeAngle;
  xDist = touchObject.startX - touchObject.curX;
  yDist = touchObject.startY - touchObject.curY;
  r = Math.atan2(yDist, xDist);
  swipeAngle = Math.round(r * 180 / Math.PI);

  if (swipeAngle < 0) {
    swipeAngle = 360 - Math.abs(swipeAngle);
  }

  if (swipeAngle <= 45 && swipeAngle >= 0 || swipeAngle <= 360 && swipeAngle >= 315) {
    return "left";
  }

  if (swipeAngle >= 135 && swipeAngle <= 225) {
    return "right";
  }

  if (verticalSwiping === true) {
    if (swipeAngle >= 35 && swipeAngle <= 135) {
      return "up";
    } else {
      return "down";
    }
  }

  return "vertical";
}; // whether or not we can go next


exports.getSwipeDirection = getSwipeDirection;

var canGoNext = function canGoNext(spec) {
  var canGo = true;

  if (!spec.infinite) {
    if (spec.centerMode && spec.currentSlide >= spec.slideCount - 1) {
      canGo = false;
    } else if (spec.slideCount <= spec.slidesToShow || spec.currentSlide >= spec.slideCount - spec.slidesToShow) {
      canGo = false;
    }
  }

  return canGo;
}; // given an object and a list of keys, return new object with given keys


exports.canGoNext = canGoNext;

var extractObject = function extractObject(spec, keys) {
  var newObject = {};
  keys.forEach(function (key) {
    return newObject[key] = spec[key];
  });
  return newObject;
}; // get initialized state


exports.extractObject = extractObject;

var initializedState = function initializedState(spec) {
  // spec also contains listRef, trackRef
  var slideCount = _react.default.Children.count(spec.children);

  var listWidth = Math.ceil(getWidth(_reactDom.default.findDOMNode(spec.listRef)));
  var trackWidth = Math.ceil(getWidth(_reactDom.default.findDOMNode(spec.trackRef)));
  var slideWidth;

  if (!spec.vertical) {
    var centerPaddingAdj = spec.centerMode && parseInt(spec.centerPadding) * 2;

    if (typeof spec.centerPadding === "string" && spec.centerPadding.slice(-1) === "%") {
      centerPaddingAdj *= listWidth / 100;
    }

    slideWidth = Math.ceil((listWidth - centerPaddingAdj) / spec.slidesToShow);
  } else {
    slideWidth = listWidth;
  }

  var slideHeight = _reactDom.default.findDOMNode(spec.listRef) && getHeight(_reactDom.default.findDOMNode(spec.listRef).querySelector('[data-index="0"]'));
  var listHeight = slideHeight * spec.slidesToShow;
  var currentSlide = spec.currentSlide === undefined ? spec.initialSlide : spec.currentSlide;

  if (spec.rtl && spec.currentSlide === undefined) {
    currentSlide = slideCount - 1 - spec.initialSlide;
  }

  var lazyLoadedList = spec.lazyLoadedList || [];
  var slidesToLoad = getOnDemandLazySlides({
    currentSlide: currentSlide,
    lazyLoadedList: lazyLoadedList
  }, spec);
  lazyLoadedList.concat(slidesToLoad);
  var state = {
    slideCount: slideCount,
    slideWidth: slideWidth,
    listWidth: listWidth,
    trackWidth: trackWidth,
    currentSlide: currentSlide,
    slideHeight: slideHeight,
    listHeight: listHeight,
    lazyLoadedList: lazyLoadedList
  };

  if (spec.autoplaying === null && spec.autoplay) {
    state["autoplaying"] = "playing";
  }

  return state;
};

exports.initializedState = initializedState;

var slideHandler = function slideHandler(spec) {
  var waitForAnimate = spec.waitForAnimate,
      animating = spec.animating,
      fade = spec.fade,
      infinite = spec.infinite,
      index = spec.index,
      slideCount = spec.slideCount,
      lazyLoadedList = spec.lazyLoadedList,
      lazyLoad = spec.lazyLoad,
      currentSlide = spec.currentSlide,
      centerMode = spec.centerMode,
      slidesToScroll = spec.slidesToScroll,
      slidesToShow = spec.slidesToShow,
      useCSS = spec.useCSS;
  if (waitForAnimate && animating) return {};
  var animationSlide = index,
      finalSlide,
      animationLeft,
      finalLeft;
  var state = {},
      nextState = {};

  if (fade) {
    if (!infinite && (index < 0 || index >= slideCount)) return {};

    if (index < 0) {
      animationSlide = index + slideCount;
    } else if (index >= slideCount) {
      animationSlide = index - slideCount;
    }

    if (lazyLoad && lazyLoadedList.indexOf(animationSlide) < 0) {
      lazyLoadedList.push(animationSlide);
    }

    state = {
      animating: true,
      currentSlide: animationSlide,
      lazyLoadedList: lazyLoadedList
    };
    nextState = {
      animating: false
    };
  } else {
    finalSlide = animationSlide;

    if (animationSlide < 0) {
      finalSlide = animationSlide + slideCount;
      if (!infinite) finalSlide = 0;else if (slideCount % slidesToScroll !== 0) finalSlide = slideCount - slideCount % slidesToScroll;
    } else if (!canGoNext(spec) && animationSlide > currentSlide) {
      animationSlide = finalSlide = currentSlide;
    } else if (centerMode && animationSlide >= slideCount) {
      animationSlide = infinite ? slideCount : slideCount - 1;
      finalSlide = infinite ? 0 : slideCount - 1;
    } else if (animationSlide >= slideCount) {
      finalSlide = animationSlide - slideCount;
      if (!infinite) finalSlide = slideCount - slidesToShow;else if (slideCount % slidesToScroll !== 0) finalSlide = 0;
    }

    animationLeft = getTrackLeft(_objectSpread({}, spec, {
      slideIndex: animationSlide
    }));
    finalLeft = getTrackLeft(_objectSpread({}, spec, {
      slideIndex: finalSlide
    }));

    if (!infinite) {
      if (animationLeft === finalLeft) animationSlide = finalSlide;
      animationLeft = finalLeft;
    }

    lazyLoad && lazyLoadedList.concat(getOnDemandLazySlides(_objectSpread({}, spec, {
      currentSlide: animationSlide
    })));

    if (!useCSS) {
      state = {
        currentSlide: finalSlide,
        trackStyle: getTrackCSS(_objectSpread({}, spec, {
          left: finalLeft
        })),
        lazyLoadedList: lazyLoadedList
      };
    } else {
      state = {
        animating: true,
        currentSlide: finalSlide,
        trackStyle: getTrackAnimateCSS(_objectSpread({}, spec, {
          left: animationLeft
        })),
        lazyLoadedList: lazyLoadedList
      };
      nextState = {
        animating: false,
        currentSlide: finalSlide,
        trackStyle: getTrackCSS(_objectSpread({}, spec, {
          left: finalLeft
        })),
        swipeLeft: null
      };
    }
  }

  return {
    state: state,
    nextState: nextState
  };
};

exports.slideHandler = slideHandler;

var changeSlide = function changeSlide(spec, options) {
  var indexOffset, previousInt, slideOffset, unevenOffset, targetSlide;
  var slidesToScroll = spec.slidesToScroll,
      slidesToShow = spec.slidesToShow,
      slideCount = spec.slideCount,
      currentSlide = spec.currentSlide,
      lazyLoad = spec.lazyLoad,
      infinite = spec.infinite;
  unevenOffset = slideCount % slidesToScroll !== 0;
  indexOffset = unevenOffset ? 0 : (slideCount - currentSlide) % slidesToScroll;

  if (options.message === "previous") {
    slideOffset = indexOffset === 0 ? slidesToScroll : slidesToShow - indexOffset;
    targetSlide = currentSlide - slideOffset;

    if (lazyLoad && !infinite) {
      previousInt = currentSlide - slideOffset;
      targetSlide = previousInt === -1 ? slideCount - 1 : previousInt;
    }
  } else if (options.message === "next") {
    slideOffset = indexOffset === 0 ? slidesToScroll : indexOffset;
    targetSlide = currentSlide + slideOffset;

    if (lazyLoad && !infinite) {
      targetSlide = (currentSlide + slidesToScroll) % slideCount + indexOffset;
    }
  } else if (options.message === "dots") {
    // Click on dots
    targetSlide = options.index * options.slidesToScroll;

    if (targetSlide === options.currentSlide) {
      return null;
    }
  } else if (options.message === "children") {
    // Click on the slides
    targetSlide = options.index;

    if (targetSlide === options.currentSlide) {
      return null;
    }

    if (infinite) {
      var direction = siblingDirection(_objectSpread({}, spec, {
        targetSlide: targetSlide
      }));

      if (targetSlide > options.currentSlide && direction === "left") {
        targetSlide = targetSlide - slideCount;
      } else if (targetSlide < options.currentSlide && direction === "right") {
        targetSlide = targetSlide + slideCount;
      }
    }
  } else if (options.message === "index") {
    targetSlide = Number(options.index);

    if (targetSlide === options.currentSlide) {
      return null;
    }
  }

  return targetSlide;
};

exports.changeSlide = changeSlide;

var keyHandler = function keyHandler(e, accessibility, rtl) {
  if (e.target.tagName.match("TEXTAREA|INPUT|SELECT") || !accessibility) return "";
  if (e.keyCode === 37) return rtl ? "next" : "previous";
  if (e.keyCode === 39) return rtl ? "previous" : "next";
  return "";
};

exports.keyHandler = keyHandler;

var swipeStart = function swipeStart(e, swipe, draggable) {
  e.target.tagName === "IMG" && e.preventDefault();
  if (!swipe || !draggable && e.type.indexOf("mouse") !== -1) return "";
  return {
    dragging: true,
    touchObject: {
      startX: e.touches ? e.touches[0].pageX : e.clientX,
      startY: e.touches ? e.touches[0].pageY : e.clientY,
      curX: e.touches ? e.touches[0].pageX : e.clientX,
      curY: e.touches ? e.touches[0].pageY : e.clientY
    }
  };
};

exports.swipeStart = swipeStart;

var swipeMove = function swipeMove(e, spec) {
  // spec also contains, trackRef and slideIndex
  var scrolling = spec.scrolling,
      animating = spec.animating,
      vertical = spec.vertical,
      swipeToSlide = spec.swipeToSlide,
      verticalSwiping = spec.verticalSwiping,
      rtl = spec.rtl,
      currentSlide = spec.currentSlide,
      edgeFriction = spec.edgeFriction,
      edgeDragged = spec.edgeDragged,
      onEdge = spec.onEdge,
      swiped = spec.swiped,
      swiping = spec.swiping,
      slideCount = spec.slideCount,
      slidesToScroll = spec.slidesToScroll,
      infinite = spec.infinite,
      touchObject = spec.touchObject,
      swipeEvent = spec.swipeEvent,
      listHeight = spec.listHeight,
      listWidth = spec.listWidth;
  if (scrolling) return;
  if (animating) return e.preventDefault();
  if (vertical && swipeToSlide && verticalSwiping) e.preventDefault();
  var swipeLeft,
      state = {};
  var curLeft = getTrackLeft(spec);
  touchObject.curX = e.touches ? e.touches[0].pageX : e.clientX;
  touchObject.curY = e.touches ? e.touches[0].pageY : e.clientY;
  touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curX - touchObject.startX, 2)));
  var verticalSwipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curY - touchObject.startY, 2)));

  if (!verticalSwiping && !swiping && verticalSwipeLength > 10) {
    return {
      scrolling: true
    };
  }

  if (verticalSwiping) touchObject.swipeLength = verticalSwipeLength;
  var positionOffset = (!rtl ? 1 : -1) * (touchObject.curX > touchObject.startX ? 1 : -1);
  if (verticalSwiping) positionOffset = touchObject.curY > touchObject.startY ? 1 : -1;
  var dotCount = Math.ceil(slideCount / slidesToScroll);
  var swipeDirection = getSwipeDirection(spec.touchObject, verticalSwiping);
  var touchSwipeLength = touchObject.swipeLength;

  if (!infinite) {
    if (currentSlide === 0 && swipeDirection === "right" || currentSlide + 1 >= dotCount && swipeDirection === "left" || !canGoNext(spec) && swipeDirection === "left") {
      touchSwipeLength = touchObject.swipeLength * edgeFriction;

      if (edgeDragged === false && onEdge) {
        onEdge(swipeDirection);
        state["edgeDragged"] = true;
      }
    }
  }

  if (!swiped && swipeEvent) {
    swipeEvent(swipeDirection);
    state["swiped"] = true;
  }

  if (!vertical) {
    if (!rtl) {
      swipeLeft = curLeft + touchSwipeLength * positionOffset;
    } else {
      swipeLeft = curLeft - touchSwipeLength * positionOffset;
    }
  } else {
    swipeLeft = curLeft + touchSwipeLength * (listHeight / listWidth) * positionOffset;
  }

  if (verticalSwiping) {
    swipeLeft = curLeft + touchSwipeLength * positionOffset;
  }

  state = _objectSpread({}, state, {
    touchObject: touchObject,
    swipeLeft: swipeLeft,
    trackStyle: getTrackCSS(_objectSpread({}, spec, {
      left: swipeLeft
    }))
  });

  if (Math.abs(touchObject.curX - touchObject.startX) < Math.abs(touchObject.curY - touchObject.startY) * 0.8) {
    return state;
  }

  if (touchObject.swipeLength > 10) {
    state["swiping"] = true;
    e.preventDefault();
  }

  return state;
};

exports.swipeMove = swipeMove;

var swipeEnd = function swipeEnd(e, spec) {
  var dragging = spec.dragging,
      swipe = spec.swipe,
      touchObject = spec.touchObject,
      listWidth = spec.listWidth,
      touchThreshold = spec.touchThreshold,
      verticalSwiping = spec.verticalSwiping,
      listHeight = spec.listHeight,
      currentSlide = spec.currentSlide,
      swipeToSlide = spec.swipeToSlide,
      scrolling = spec.scrolling,
      onSwipe = spec.onSwipe;

  if (!dragging) {
    if (swipe) e.preventDefault();
    return {};
  }

  var minSwipe = verticalSwiping ? listHeight / touchThreshold : listWidth / touchThreshold;
  var swipeDirection = getSwipeDirection(touchObject, verticalSwiping); // reset the state of touch related state variables.

  var state = {
    dragging: false,
    edgeDragged: false,
    scrolling: false,
    swiping: false,
    swiped: false,
    swipeLeft: null,
    touchObject: {}
  };

  if (scrolling) {
    return state;
  }

  if (!touchObject.swipeLength) {
    return state;
  }

  if (touchObject.swipeLength > minSwipe) {
    e.preventDefault();

    if (onSwipe) {
      onSwipe(swipeDirection);
    }

    var slideCount, newSlide;

    switch (swipeDirection) {
      case "left":
      case "up":
        newSlide = currentSlide + getSlideCount(spec);
        slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;
        state["currentDirection"] = 0;
        break;

      case "right":
      case "down":
        newSlide = currentSlide - getSlideCount(spec);
        slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide;
        state["currentDirection"] = 1;
        break;

      default:
        slideCount = currentSlide;
    }

    state["triggerSlideHandler"] = slideCount;
  } else {
    // Adjust the track back to it's original position.
    var currentLeft = getTrackLeft(spec);
    state["trackStyle"] = getTrackAnimateCSS(_objectSpread({}, spec, {
      left: currentLeft
    }));
  }

  return state;
};

exports.swipeEnd = swipeEnd;

var getNavigableIndexes = function getNavigableIndexes(spec) {
  var max = spec.infinite ? spec.slideCount * 2 : spec.slideCount;
  var breakpoint = spec.infinite ? spec.slidesToShow * -1 : 0;
  var counter = spec.infinite ? spec.slidesToShow * -1 : 0;
  var indexes = [];

  while (breakpoint < max) {
    indexes.push(breakpoint);
    breakpoint = counter + spec.slidesToScroll;
    counter += Math.min(spec.slidesToScroll, spec.slidesToShow);
  }

  return indexes;
};

exports.getNavigableIndexes = getNavigableIndexes;

var checkNavigable = function checkNavigable(spec, index) {
  var navigables = getNavigableIndexes(spec);
  var prevNavigable = 0;

  if (index > navigables[navigables.length - 1]) {
    index = navigables[navigables.length - 1];
  } else {
    for (var n in navigables) {
      if (index < navigables[n]) {
        index = prevNavigable;
        break;
      }

      prevNavigable = navigables[n];
    }
  }

  return index;
};

exports.checkNavigable = checkNavigable;

var getSlideCount = function getSlideCount(spec) {
  var centerOffset = spec.centerMode ? spec.slideWidth * Math.floor(spec.slidesToShow / 2) : 0;

  if (spec.swipeToSlide) {
    var swipedSlide;

    var slickList = _reactDom.default.findDOMNode(spec.listRef);

    var slides = slickList.querySelectorAll(".slick-slide");
    Array.from(slides).every(function (slide) {
      if (!spec.vertical) {
        if (slide.offsetLeft - centerOffset + getWidth(slide) / 2 > spec.swipeLeft * -1) {
          swipedSlide = slide;
          return false;
        }
      } else {
        if (slide.offsetTop + getHeight(slide) / 2 > spec.swipeLeft * -1) {
          swipedSlide = slide;
          return false;
        }
      }

      return true;
    });

    if (!swipedSlide) {
      return 0;
    }

    var currentIndex = spec.rtl === true ? spec.slideCount - spec.currentSlide : spec.currentSlide;
    var slidesTraversed = Math.abs(swipedSlide.dataset.index - currentIndex) || 1;
    return slidesTraversed;
  } else {
    return spec.slidesToScroll;
  }
};

exports.getSlideCount = getSlideCount;

var checkSpecKeys = function checkSpecKeys(spec, keysArray) {
  return keysArray.reduce(function (value, key) {
    return value && spec.hasOwnProperty(key);
  }, true) ? null : console.error("Keys Missing:", spec);
};

exports.checkSpecKeys = checkSpecKeys;

var getTrackCSS = function getTrackCSS(spec) {
  checkSpecKeys(spec, ["left", "variableWidth", "slideCount", "slidesToShow", "slideWidth"]);
  var trackWidth, trackHeight;
  var trackChildren = spec.slideCount + 2 * spec.slidesToShow;

  if (!spec.vertical) {
    trackWidth = getTotalSlides(spec) * spec.slideWidth;
  } else {
    trackHeight = trackChildren * spec.slideHeight;
  }

  var style = {
    opacity: 1,
    transition: "",
    WebkitTransition: ""
  };

  if (spec.useTransform) {
    var WebkitTransform = !spec.vertical ? "translate3d(" + spec.left + "px, 0px, 0px)" : "translate3d(0px, " + spec.left + "px, 0px)";
    var transform = !spec.vertical ? "translate3d(" + spec.left + "px, 0px, 0px)" : "translate3d(0px, " + spec.left + "px, 0px)";
    var msTransform = !spec.vertical ? "translateX(" + spec.left + "px)" : "translateY(" + spec.left + "px)";
    style = _objectSpread({}, style, {
      WebkitTransform: WebkitTransform,
      transform: transform,
      msTransform: msTransform
    });
  } else {
    if (spec.vertical) {
      style["top"] = spec.left;
    } else {
      style["left"] = spec.left;
    }
  }

  if (spec.fade) style = {
    opacity: 1
  };
  if (trackWidth) style.width = trackWidth;
  if (trackHeight) style.height = trackHeight; // Fallback for IE8

  if (window && !window.addEventListener && window.attachEvent) {
    if (!spec.vertical) {
      style.marginLeft = spec.left + "px";
    } else {
      style.marginTop = spec.left + "px";
    }
  }

  return style;
};

exports.getTrackCSS = getTrackCSS;

var getTrackAnimateCSS = function getTrackAnimateCSS(spec) {
  checkSpecKeys(spec, ["left", "variableWidth", "slideCount", "slidesToShow", "slideWidth", "speed", "cssEase"]);
  var style = getTrackCSS(spec); // useCSS is true by default so it can be undefined

  if (spec.useTransform) {
    style.WebkitTransition = "-webkit-transform " + spec.speed + "ms " + spec.cssEase;
    style.transition = "transform " + spec.speed + "ms " + spec.cssEase;
  } else {
    if (spec.vertical) {
      style.transition = "top " + spec.speed + "ms " + spec.cssEase;
    } else {
      style.transition = "left " + spec.speed + "ms " + spec.cssEase;
    }
  }

  return style;
};

exports.getTrackAnimateCSS = getTrackAnimateCSS;

var getTrackLeft = function getTrackLeft(spec) {
  if (spec.unslick) {
    return 0;
  }

  checkSpecKeys(spec, ["slideIndex", "trackRef", "infinite", "centerMode", "slideCount", "slidesToShow", "slidesToScroll", "slideWidth", "listWidth", "variableWidth", "slideHeight"]);
  var slideIndex = spec.slideIndex,
      trackRef = spec.trackRef,
      infinite = spec.infinite,
      centerMode = spec.centerMode,
      slideCount = spec.slideCount,
      slidesToShow = spec.slidesToShow,
      slidesToScroll = spec.slidesToScroll,
      slideWidth = spec.slideWidth,
      listWidth = spec.listWidth,
      variableWidth = spec.variableWidth,
      slideHeight = spec.slideHeight,
      fade = spec.fade,
      vertical = spec.vertical;
  var slideOffset = 0;
  var targetLeft;
  var targetSlide;
  var verticalOffset = 0;

  if (fade || spec.slideCount === 1) {
    return 0;
  }

  var slidesToOffset = 0;

  if (infinite) {
    slidesToOffset = -getPreClones(spec); // bring active slide to the beginning of visual area
    // if next scroll doesn't have enough children, just reach till the end of original slides instead of shifting slidesToScroll children

    if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {
      slidesToOffset = -(slideIndex > slideCount ? slidesToShow - (slideIndex - slideCount) : slideCount % slidesToScroll);
    } // shift current slide to center of the frame


    if (centerMode) {
      slidesToOffset += parseInt(slidesToShow / 2);
    }
  } else {
    if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) {
      slidesToOffset = slidesToShow - slideCount % slidesToScroll;
    }

    if (centerMode) {
      slidesToOffset = parseInt(slidesToShow / 2);
    }
  }

  slideOffset = slidesToOffset * slideWidth;
  verticalOffset = slidesToOffset * slideHeight;

  if (!vertical) {
    targetLeft = slideIndex * slideWidth * -1 + slideOffset;
  } else {
    targetLeft = slideIndex * slideHeight * -1 + verticalOffset;
  }

  if (variableWidth === true) {
    var targetSlideIndex;

    var trackElem = _reactDom.default.findDOMNode(trackRef);

    targetSlideIndex = slideIndex + getPreClones(spec);
    targetSlide = trackElem && trackElem.childNodes[targetSlideIndex];
    targetLeft = targetSlide ? targetSlide.offsetLeft * -1 : 0;

    if (centerMode === true) {
      targetSlideIndex = infinite ? slideIndex + getPreClones(spec) : slideIndex;
      targetSlide = trackElem && trackElem.children[targetSlideIndex];
      targetLeft = 0;

      for (var slide = 0; slide < targetSlideIndex; slide++) {
        targetLeft -= trackElem && trackElem.children[slide] && trackElem.children[slide].offsetWidth;
      }

      targetLeft -= parseInt(spec.centerPadding);
      targetLeft += targetSlide && (listWidth - targetSlide.offsetWidth) / 2;
    }
  }

  return targetLeft;
};

exports.getTrackLeft = getTrackLeft;

var getPreClones = function getPreClones(spec) {
  if (spec.unslick || !spec.infinite) {
    return 0;
  }

  if (spec.variableWidth) {
    return spec.slideCount;
  }

  return spec.slidesToShow + (spec.centerMode ? 1 : 0);
};

exports.getPreClones = getPreClones;

var getPostClones = function getPostClones(spec) {
  if (spec.unslick || !spec.infinite) {
    return 0;
  }

  return spec.slideCount;
};

exports.getPostClones = getPostClones;

var getTotalSlides = function getTotalSlides(spec) {
  return spec.slideCount === 1 ? 1 : getPreClones(spec) + spec.slideCount + getPostClones(spec);
};

exports.getTotalSlides = getTotalSlides;

var siblingDirection = function siblingDirection(spec) {
  if (spec.targetSlide > spec.currentSlide) {
    if (spec.targetSlide > spec.currentSlide + slidesOnRight(spec)) {
      return "left";
    }

    return "right";
  } else {
    if (spec.targetSlide < spec.currentSlide - slidesOnLeft(spec)) {
      return "right";
    }

    return "left";
  }
};

exports.siblingDirection = siblingDirection;

var slidesOnRight = function slidesOnRight(_ref) {
  var slidesToShow = _ref.slidesToShow,
      centerMode = _ref.centerMode,
      rtl = _ref.rtl,
      centerPadding = _ref.centerPadding;

  // returns no of slides on the right of active slide
  if (centerMode) {
    var right = (slidesToShow - 1) / 2 + 1;
    if (parseInt(centerPadding) > 0) right += 1;
    if (rtl && slidesToShow % 2 === 0) right += 1;
    return right;
  }

  if (rtl) {
    return 0;
  }

  return slidesToShow - 1;
};

exports.slidesOnRight = slidesOnRight;

var slidesOnLeft = function slidesOnLeft(_ref2) {
  var slidesToShow = _ref2.slidesToShow,
      centerMode = _ref2.centerMode,
      rtl = _ref2.rtl,
      centerPadding = _ref2.centerPadding;

  // returns no of slides on the left of active slide
  if (centerMode) {
    var left = (slidesToShow - 1) / 2 + 1;
    if (parseInt(centerPadding) > 0) left += 1;
    if (!rtl && slidesToShow % 2 === 0) left += 1;
    return left;
  }

  if (rtl) {
    return slidesToShow - 1;
  }

  return 0;
};

exports.slidesOnLeft = slidesOnLeft;

var canUseDOM = function canUseDOM() {
  return !!(typeof window !== "undefined" && window.document && window.document.createElement);
};

exports.canUseDOM = canUseDOM;

/***/ }),

/***/ "./node_modules/react-uuid/uuid.js":
/*!*****************************************!*\
  !*** ./node_modules/react-uuid/uuid.js ***!
  \*****************************************/
/*! no static exports found */
/***/ (function(module, exports) {

/**
A function that returns a universally unique identifier (uuid).  
example: 1b83fd69-abe7-468c-bea1-306a8aa1c81d
@returns `string` : 32 character uuid (see example)
*/
function uuid() {
  const hashTable = [
    'a',
    'b',
    'c',
    'd',
    'e',
    'f',
    '0',
    '1',
    '2',
    '3',
    '4',
    '5',
    '6',
    '7',
    '8',
    '9'
  ]
  let uuid = []
  for (let i = 0; i < 35; i++) {
    if (i === 7 || i === 12 || i === 17 || i === 22) {
      uuid[i] = '-'
    } else {
      uuid[i] = hashTable[Math.floor(Math.random() * hashTable.length - 1)]
    }
  }
  return uuid.join('')
}

module.exports = uuid


/***/ }),

/***/ "./node_modules/reactjs-popup/reactjs-popup.es.js":
/*!********************************************************!*\
  !*** ./node_modules/reactjs-popup/reactjs-popup.es.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom */ "react-dom");
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);
/*!
 * reactjs-popup v1.3.2
 * (c) 2018-present Youssouf EL AZIZI <youssoufelazizi@gmail.com>
 * Released under the MIT License.
 */



function _classCallCheck(instance, Constructor) {
  if (!(instance instanceof Constructor)) {
    throw new TypeError("Cannot call a class as a function");
  }
}

function _defineProperties(target, props) {
  for (var i = 0; i < props.length; i++) {
    var descriptor = props[i];
    descriptor.enumerable = descriptor.enumerable || false;
    descriptor.configurable = true;
    if ("value" in descriptor) descriptor.writable = true;
    Object.defineProperty(target, descriptor.key, descriptor);
  }
}

function _createClass(Constructor, protoProps, staticProps) {
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
  if (staticProps) _defineProperties(Constructor, staticProps);
  return Constructor;
}

function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true
    });
  } else {
    obj[key] = value;
  }

  return obj;
}

function _extends() {
  _extends = Object.assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
      var source = arguments[i];

      for (var key in source) {
        if (Object.prototype.hasOwnProperty.call(source, key)) {
          target[key] = source[key];
        }
      }
    }

    return target;
  };

  return _extends.apply(this, arguments);
}

function _inherits(subClass, superClass) {
  if (typeof superClass !== "function" && superClass !== null) {
    throw new TypeError("Super expression must either be null or a function");
  }

  subClass.prototype = Object.create(superClass && superClass.prototype, {
    constructor: {
      value: subClass,
      writable: true,
      configurable: true
    }
  });
  if (superClass) _setPrototypeOf(subClass, superClass);
}

function _getPrototypeOf(o) {
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
    return o.__proto__ || Object.getPrototypeOf(o);
  };
  return _getPrototypeOf(o);
}

function _setPrototypeOf(o, p) {
  _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
    o.__proto__ = p;
    return o;
  };

  return _setPrototypeOf(o, p);
}

function _assertThisInitialized(self) {
  if (self === void 0) {
    throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
  }

  return self;
}

function _possibleConstructorReturn(self, call) {
  if (call && (typeof call === "object" || typeof call === "function")) {
    return call;
  }

  return _assertThisInitialized(self);
}

function _toConsumableArray(arr) {
  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();
}

function _arrayWithoutHoles(arr) {
  if (Array.isArray(arr)) {
    for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];

    return arr2;
  }
}

function _iterableToArray(iter) {
  if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
}

function _nonIterableSpread() {
  throw new TypeError("Invalid attempt to spread non-iterable instance");
}

/* Algo to calculate position
  1. center position for popup content : the center of the trigger will be the center of the content content
      so the popup content position will be like this :
      top => the y of the center for the trigger element : trigger.top + trigger.height/2
      left => the x of the center for the trigger element : trigger.left + trigger.width/2

  2. translate position according to the first  position attribute  passed  in the function argument
      for example :
        position = 'left top'
        we need to handle the first argument in the position: 'left' => that's mean we need to translate the popup content according to the X axis by - content.width/2

  3.translate position according to the first  position attribute  passed  in the function argument
    for example :
      position = 'left top'
      the second argument 'top' => translate popup content by + content.height*4/5

  4. check if calculated position is going out of bounds of wrapper box or not. If yes repeat 1-3 for next position enum. By default wrapper box is window element
*/
function getCoordinatesForPosition(triggerBounding, ContentBounding, position, arrow, _ref) {
  var offsetX = _ref.offsetX,
      offsetY = _ref.offsetY;
  var margin = arrow ? 8 : 0;
  var args = position.split(" "); // the step N 1 : center the popup content => ok

  var CenterTop = triggerBounding.top + triggerBounding.height / 2;
  var CenterLeft = triggerBounding.left + triggerBounding.width / 2;
  var height = ContentBounding.height,
      width = ContentBounding.width;
  var top = CenterTop - height / 2;
  var left = CenterLeft - width / 2;
  var transform = "";
  var arrowTop = "0%";
  var arrowLeft = "0%"; // the  step N 2 : => ok

  switch (args[0]) {
    case "top":
      top -= height / 2 + triggerBounding.height / 2 + margin;
      transform = "rotate(45deg)";
      arrowTop = "100%";
      arrowLeft = "50%";
      break;

    case "bottom":
      top += height / 2 + triggerBounding.height / 2 + margin;
      transform = "rotate(225deg)";
      arrowLeft = "50%";
      break;

    case "left":
      left -= width / 2 + triggerBounding.width / 2 + margin;
      transform = " rotate(-45deg)";
      arrowLeft = "100%";
      arrowTop = "50%";
      break;

    case "right":
      left += width / 2 + triggerBounding.width / 2 + margin;
      transform = "rotate(135deg)";
      arrowTop = "50%";
      break;
  }

  switch (args[1]) {
    case "top":
      top = triggerBounding.top;
      arrowTop = triggerBounding.height / 2 + "px";
      break;

    case "bottom":
      top = triggerBounding.top - height + triggerBounding.height;
      arrowTop = height - triggerBounding.height / 2 + "px";
      break;

    case "left":
      left = triggerBounding.left;
      arrowLeft = triggerBounding.width / 2 + "px";
      break;

    case "right":
      left = triggerBounding.left - width + triggerBounding.width;
      arrowLeft = width - triggerBounding.width / 2 + "px";
      break;
  }

  top = args[0] === "top" ? top - offsetY : top + offsetY;
  left = args[0] === "left" ? left - offsetX : left + offsetX;
  return {
    top: top,
    left: left,
    transform: transform,
    arrowLeft: arrowLeft,
    arrowTop: arrowTop
  };
}

function calculatePosition(triggerBounding, ContentBounding, positions, arrow, _ref2, wrapperBox) {
  var offsetX = _ref2.offsetX,
      offsetY = _ref2.offsetY;
  var bestCoords;
  var i = 0;

  while (i < positions.length) {
    bestCoords = getCoordinatesForPosition(triggerBounding, ContentBounding, positions[i], arrow, {
      offsetX: offsetX,
      offsetY: offsetY
    });
    var contentBox = {
      top: bestCoords.top,
      left: bestCoords.left,
      width: ContentBounding.width,
      height: ContentBounding.height
    };

    if (contentBox.top <= wrapperBox.top || contentBox.left <= wrapperBox.left || contentBox.top + contentBox.height >= wrapperBox.top + wrapperBox.height || contentBox.left + contentBox.width >= wrapperBox.left + wrapperBox.width) {
      i++;
    } else {
      break;
    }
  }

  return bestCoords;
}

var styles = {
  popupContent: {
    tooltip: {
      position: "absolute",
      zIndex: "2",
      width: "200px",
      background: "rgb(255, 255, 255)",
      border: "1px solid rgb(187, 187, 187)",
      boxShadow: "rgba(0, 0, 0, 0.2) 0px 1px 3px",
      padding: "5px"
    },
    modal: {
      position: "relative",
      background: "rgb(255, 255, 255)",
      width: "50%",
      margin: "auto",
      border: "1px solid rgb(187, 187, 187)",
      padding: "5px"
    }
  },
  popupArrow: {
    height: "10px",
    width: "10px",
    position: "absolute",
    background: "rgb(255, 255, 255)",
    transform: "rotate(45deg)",
    margin: "-5px",
    zIndex: "-1",
    boxShadow: "rgba(0, 0, 0, 0.2) 1px 1px 1px"
  },
  overlay: {
    tooltip: {
      position: "fixed",
      top: "0",
      bottom: "0",
      left: "0",
      right: "0"
    },
    modal: {
      position: "fixed",
      top: "0",
      bottom: "0",
      left: "0",
      right: "0",
      background: "rgba(0, 0, 0,0.5)",
      display: "flex",
      zIndex: "999"
    }
  }
};

var POSITION_TYPES = ["top left", "top center", "top right", "right top", "right center", "right bottom", "bottom left", "bottom center", "bottom right", "left top", "left center", "left bottom"];

var Popup =
/*#__PURE__*/
function (_React$PureComponent) {
  _inherits(Popup, _React$PureComponent);

  function Popup(props) {
    var _this;

    _classCallCheck(this, Popup);

    _this = _possibleConstructorReturn(this, _getPrototypeOf(Popup).call(this, props));

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "state", {
      isOpen: _this.props.open || _this.props.defaultOpen,
      modal: _this.props.modal ? true : !_this.props.trigger // we create this modal state because the popup can't be a tooltip if the trigger prop doesn't exist

    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "repositionOnResize", function () {
      _this.setPosition();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onEscape", function (e) {
      if (e.key === "Escape") _this.closePopup();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "lockScroll", function () {
      if (_this.state.modal && _this.props.lockScroll) document.getElementsByTagName("body")[0].style.overflow = "hidden";
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "resetScroll", function () {
      if (_this.state.modal && _this.props.lockScroll) document.getElementsByTagName("body")[0].style.overflow = "auto";
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "togglePopup", function () {
      if (_this.state.isOpen) _this.closePopup();else _this.openPopup();
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "openPopup", function () {
      if (_this.state.isOpen || _this.props.disabled) return;

      _this.setState({
        isOpen: true
      }, function () {
        _this.setPosition();

        _this.props.onOpen();

        _this.lockScroll();
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "closePopup", function () {
      if (!_this.state.isOpen) return;

      _this.props.onClose();

      _this.setState({
        isOpen: false
      }, function () {
        _this.resetScroll();
      });
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseEnter", function () {
      clearTimeout(_this.timeOut);
      var mouseEnterDelay = _this.props.mouseEnterDelay;
      _this.timeOut = setTimeout(function () {
        return _this.openPopup();
      }, mouseEnterDelay);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseLeave", function () {
      clearTimeout(_this.timeOut);
      var mouseLeaveDelay = _this.props.mouseLeaveDelay;
      _this.timeOut = setTimeout(function () {
        return _this.closePopup();
      }, mouseLeaveDelay);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getTooltipBoundary", function () {
      var keepTooltipInside = _this.props.keepTooltipInside;
      var boundingBox = {
        top: 0,
        left: 0,
        width: window.innerWidth,
        height: window.innerHeight
      };

      if (typeof keepTooltipInside === "string") {
        var selector = document.querySelector(keepTooltipInside);

        if (true) {
          if (selector === null) throw new Error("".concat(keepTooltipInside, " selector is not exist : keepTooltipInside must be a valid html selector 'class' or 'Id'  or a boolean value"));
        }

        boundingBox = selector.getBoundingClientRect();
      }

      return boundingBox;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setPosition", function () {
      var _this$state = _this.state,
          modal = _this$state.modal,
          isOpen = _this$state.isOpen;
      if (modal || !isOpen) return;
      var _this$props = _this.props,
          arrow = _this$props.arrow,
          position = _this$props.position,
          offsetX = _this$props.offsetX,
          offsetY = _this$props.offsetY,
          keepTooltipInside = _this$props.keepTooltipInside,
          arrowStyle = _this$props.arrowStyle;

      var helper = _this.HelperEl.getBoundingClientRect();

      var trigger = _this.TriggerEl.getBoundingClientRect();

      var content = _this.ContentEl.getBoundingClientRect();

      var boundingBox = _this.getTooltipBoundary();

      var positions = Array.isArray(position) ? position : [position]; // keepTooltipInside would be activated if the  keepTooltipInside exist or the position is Array

      if (keepTooltipInside || Array.isArray(position)) positions = _toConsumableArray(positions).concat(POSITION_TYPES);
      var cords = calculatePosition(trigger, content, positions, arrow, {
        offsetX: offsetX,
        offsetY: offsetY
      }, boundingBox);
      _this.ContentEl.style.top = cords.top - helper.top + "px";
      _this.ContentEl.style.left = cords.left - helper.left + "px";

      if (arrow) {
        _this.ArrowEl.style["transform"] = cords.transform;
        _this.ArrowEl.style["-ms-transform"] = cords.transform;
        _this.ArrowEl.style["-webkit-transform"] = cords.transform;
        _this.ArrowEl.style.top = arrowStyle.top || cords.arrowTop;
        _this.ArrowEl.style.left = arrowStyle.left || cords.arrowLeft;
      }

      if (window.getComputedStyle(_this.TriggerEl, null).getPropertyValue("position") == "static" || window.getComputedStyle(_this.TriggerEl, null).getPropertyValue("position") == "") _this.TriggerEl.style.position = "relative";
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "addWarperAction", function () {
      var _this$props2 = _this.props,
          contentStyle = _this$props2.contentStyle,
          className = _this$props2.className,
          on = _this$props2.on;
      var modal = _this.state.modal;
      var popupContentStyle = modal ? styles.popupContent.modal : styles.popupContent.tooltip;
      var childrenElementProps = {
        className: "popup-content ".concat(className),
        style: Object.assign({}, popupContentStyle, contentStyle),
        ref: _this.setContentRef,
        onClick: function onClick(e) {
          e.stopPropagation();
        }
      };

      if (!modal && on.indexOf("hover") >= 0) {
        childrenElementProps.onMouseEnter = _this.onMouseEnter;
        childrenElementProps.onMouseLeave = _this.onMouseLeave;
      }

      return childrenElementProps;
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderTrigger", function () {
      var triggerProps = {
        key: "T"
      };
      var _this$props3 = _this.props,
          on = _this$props3.on,
          trigger = _this$props3.trigger;
      var onAsArray = Array.isArray(on) ? on : [on];

      for (var i = 0, len = onAsArray.length; i < len; i++) {
        switch (onAsArray[i]) {
          case "click":
            triggerProps.onClick = _this.togglePopup;
            break;

          case "hover":
            triggerProps.onMouseEnter = _this.onMouseEnter;
            triggerProps.onMouseLeave = _this.onMouseLeave;
            break;

          case "focus":
            triggerProps.onFocus = _this.onMouseEnter;
            break;
        }
      }

      if (typeof trigger === "function") return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(trigger(_this.state.isOpen), triggerProps);
      return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(trigger, triggerProps);
    });

    _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderContent", function () {
      var _this$props4 = _this.props,
          arrow = _this$props4.arrow,
          arrowStyle = _this$props4.arrowStyle;
      var modal = _this.state.modal;
      return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", _extends({}, _this.addWarperAction(), {
        key: "C"
      }), arrow && !modal && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
        ref: _this.setArrowRef,
        style: Object.assign({}, styles.popupArrow, arrowStyle)
      }), typeof _this.props.children === "function" ? _this.props.children(_this.closePopup, _this.state.isOpen) : _this.props.children);
    });

    _this.setTriggerRef = function (r) {
      return _this.TriggerEl = r;
    };

    _this.setContentRef = function (r) {
      return _this.ContentEl = r;
    };

    _this.setArrowRef = function (r) {
      return _this.ArrowEl = r;
    };

    _this.setHelperRef = function (r) {
      return _this.HelperEl = r;
    };

    _this.timeOut = 0;
    return _this;
  }

  _createClass(Popup, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var _this$props5 = this.props,
          closeOnEscape = _this$props5.closeOnEscape,
          defaultOpen = _this$props5.defaultOpen,
          repositionOnResize = _this$props5.repositionOnResize;
      if (defaultOpen) this.setPosition();

      if (closeOnEscape) {
        window.addEventListener("keyup", this.onEscape);
      }

      if (repositionOnResize) {
        window.addEventListener('resize', this.repositionOnResize);
      }
    }
  }, {
    key: "componentWillReceiveProps",
    value: function componentWillReceiveProps(nextProps) {
      if (this.props.open === nextProps.open) return;
      if (nextProps.open) this.openPopup();else this.closePopup();
    }
  }, {
    key: "componentDidUpdate",
    value: function componentDidUpdate(prevProps) {
      if (prevProps.disabled !== this.props.disabled && this.props.disabled && this.state.isOpen) {
        this.closePopup();
      }
    }
  }, {
    key: "componentWillUnmount",
    value: function componentWillUnmount() {
      // kill any function to execute if the component is unmounted
      clearTimeout(this.timeOut);
      var _this$props6 = this.props,
          closeOnEscape = _this$props6.closeOnEscape,
          repositionOnResize = _this$props6.repositionOnResize; // remove events listeners

      if (closeOnEscape) {
        window.removeEventListener("keyup", this.onEscape);
      }

      if (repositionOnResize) {
        window.removeEventListener('resize', this.repositionOnResize);
      }
    }
  }, {
    key: "render",
    value: function render() {
      var _this$props7 = this.props,
          overlayStyle = _this$props7.overlayStyle,
          closeOnDocumentClick = _this$props7.closeOnDocumentClick,
          on = _this$props7.on;
      var modal = this.state.modal;
      var overlay = this.state.isOpen && !(on.indexOf("hover") >= 0);
      var ovStyle = modal ? styles.overlay.modal : styles.overlay.tooltip;
      return [!!this.props.trigger && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(Ref, {
        innerRef: this.setTriggerRef,
        key: "R"
      }, this.renderTrigger()), this.state.isOpen && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
        key: "H",
        style: {
          position: "absolute",
          top: "0px",
          left: "0px"
        },
        ref: this.setHelperRef
      }), overlay && react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
        key: "O",
        className: "popup-overlay",
        style: Object.assign({}, ovStyle, overlayStyle),
        onClick: closeOnDocumentClick ? this.closePopup : undefined
      }, modal && this.renderContent()), this.state.isOpen && !modal && this.renderContent()];
    }
  }]);

  return Popup;
}(react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent);

_defineProperty(Popup, "defaultProps", {
  children: function children() {
    return react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("span", null, " Your Content Here !!");
  },
  trigger: null,
  onOpen: function onOpen() {},
  onClose: function onClose() {},
  defaultOpen: false,
  open: false,
  disabled: false,
  closeOnDocumentClick: true,
  repositionOnResize: true,
  closeOnEscape: true,
  on: ["click"],
  contentStyle: {},
  arrowStyle: {},
  overlayStyle: {},
  className: "",
  position: "bottom center",
  modal: false,
  lockScroll: false,
  arrow: true,
  offsetX: 0,
  offsetY: 0,
  mouseEnterDelay: 100,
  mouseLeaveDelay: 100,
  keepTooltipInside: false
});

if (true) {
  var PropTypes = __webpack_require__(/*! prop-types */ "./node_modules/prop-types/index.js");

  var TRIGGER_TYPES = ["hover", "click", "focus"];
  Popup.propTypes = {
    arrowStyle: PropTypes.object,
    contentStyle: PropTypes.object,
    overlayStyle: PropTypes.object,
    className: PropTypes.string,
    modal: PropTypes.bool,
    closeOnDocumentClick: PropTypes.bool,
    repositionOnResize: PropTypes.bool,
    disabled: PropTypes.bool,
    lockScroll: PropTypes.bool,
    offsetX: PropTypes.number,
    offsetY: PropTypes.number,
    mouseEnterDelay: PropTypes.number,
    mouseLeaveDelay: PropTypes.number,
    onOpen: PropTypes.func,
    onClose: PropTypes.func,
    open: PropTypes.bool,
    defaultOpen: PropTypes.bool,
    trigger: PropTypes.oneOfType([PropTypes.func, PropTypes.element]),
    // for uncontrolled component we don't need the trigger Element
    on: PropTypes.oneOfType([PropTypes.oneOf(TRIGGER_TYPES), PropTypes.arrayOf(PropTypes.oneOf(TRIGGER_TYPES))]),
    children: PropTypes.oneOfType([PropTypes.func, PropTypes.element, PropTypes.string]).isRequired,
    position: PropTypes.oneOfType([PropTypes.oneOf(POSITION_TYPES), PropTypes.arrayOf(PropTypes.oneOf(POSITION_TYPES))]),
    keepTooltipInside: PropTypes.oneOfType([PropTypes.bool, PropTypes.string])
  };
}

var Ref =
/*#__PURE__*/
function (_React$PureComponent2) {
  _inherits(Ref, _React$PureComponent2);

  function Ref() {
    _classCallCheck(this, Ref);

    return _possibleConstructorReturn(this, _getPrototypeOf(Ref).apply(this, arguments));
  }

  _createClass(Ref, [{
    key: "componentDidMount",
    value: function componentDidMount() {
      var innerRef = this.props.innerRef;
      if (innerRef) innerRef(Object(react_dom__WEBPACK_IMPORTED_MODULE_1__["findDOMNode"])(this));
    }
  }, {
    key: "render",
    value: function render() {
      var children = this.props.children;
      return react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.only(children);
    }
  }]);

  return Ref;
}(react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent);

/* harmony default export */ __webpack_exports__["default"] = (Popup);


/***/ }),

/***/ "./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js":
/*!*************************************************************************!*\
  !*** ./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js ***!
  \*************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(global) {/**
 * A collection of shims that provide minimal functionality of the ES6 collections.
 *
 * These implementations are not meant to be used outside of the ResizeObserver
 * modules as they cover only a limited range of use cases.
 */
/* eslint-disable require-jsdoc, valid-jsdoc */
var MapShim = (function () {
    if (typeof Map !== 'undefined') {
        return Map;
    }
    /**
     * Returns index in provided array that matches the specified key.
     *
     * @param {Array<Array>} arr
     * @param {*} key
     * @returns {number}
     */
    function getIndex(arr, key) {
        var result = -1;
        arr.some(function (entry, index) {
            if (entry[0] === key) {
                result = index;
                return true;
            }
            return false;
        });
        return result;
    }
    return /** @class */ (function () {
        function class_1() {
            this.__entries__ = [];
        }
        Object.defineProperty(class_1.prototype, "size", {
            /**
             * @returns {boolean}
             */
            get: function () {
                return this.__entries__.length;
            },
            enumerable: true,
            configurable: true
        });
        /**
         * @param {*} key
         * @returns {*}
         */
        class_1.prototype.get = function (key) {
            var index = getIndex(this.__entries__, key);
            var entry = this.__entries__[index];
            return entry && entry[1];
        };
        /**
         * @param {*} key
         * @param {*} value
         * @returns {void}
         */
        class_1.prototype.set = function (key, value) {
            var index = getIndex(this.__entries__, key);
            if (~index) {
                this.__entries__[index][1] = value;
            }
            else {
                this.__entries__.push([key, value]);
            }
        };
        /**
         * @param {*} key
         * @returns {void}
         */
        class_1.prototype.delete = function (key) {
            var entries = this.__entries__;
            var index = getIndex(entries, key);
            if (~index) {
                entries.splice(index, 1);
            }
        };
        /**
         * @param {*} key
         * @returns {void}
         */
        class_1.prototype.has = function (key) {
            return !!~getIndex(this.__entries__, key);
        };
        /**
         * @returns {void}
         */
        class_1.prototype.clear = function () {
            this.__entries__.splice(0);
        };
        /**
         * @param {Function} callback
         * @param {*} [ctx=null]
         * @returns {void}
         */
        class_1.prototype.forEach = function (callback, ctx) {
            if (ctx === void 0) { ctx = null; }
            for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {
                var entry = _a[_i];
                callback.call(ctx, entry[1], entry[0]);
            }
        };
        return class_1;
    }());
})();

/**
 * Detects whether window and document objects are available in current environment.
 */
var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;

// Returns global object of a current environment.
var global$1 = (function () {
    if (typeof global !== 'undefined' && global.Math === Math) {
        return global;
    }
    if (typeof self !== 'undefined' && self.Math === Math) {
        return self;
    }
    if (typeof window !== 'undefined' && window.Math === Math) {
        return window;
    }
    // eslint-disable-next-line no-new-func
    return Function('return this')();
})();

/**
 * A shim for the requestAnimationFrame which falls back to the setTimeout if
 * first one is not supported.
 *
 * @returns {number} Requests' identifier.
 */
var requestAnimationFrame$1 = (function () {
    if (typeof requestAnimationFrame === 'function') {
        // It's required to use a bounded function because IE sometimes throws
        // an "Invalid calling object" error if rAF is invoked without the global
        // object on the left hand side.
        return requestAnimationFrame.bind(global$1);
    }
    return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };
})();

// Defines minimum timeout before adding a trailing call.
var trailingTimeout = 2;
/**
 * Creates a wrapper function which ensures that provided callback will be
 * invoked only once during the specified delay period.
 *
 * @param {Function} callback - Function to be invoked after the delay period.
 * @param {number} delay - Delay after which to invoke callback.
 * @returns {Function}
 */
function throttle (callback, delay) {
    var leadingCall = false, trailingCall = false, lastCallTime = 0;
    /**
     * Invokes the original callback function and schedules new invocation if
     * the "proxy" was called during current request.
     *
     * @returns {void}
     */
    function resolvePending() {
        if (leadingCall) {
            leadingCall = false;
            callback();
        }
        if (trailingCall) {
            proxy();
        }
    }
    /**
     * Callback invoked after the specified delay. It will further postpone
     * invocation of the original function delegating it to the
     * requestAnimationFrame.
     *
     * @returns {void}
     */
    function timeoutCallback() {
        requestAnimationFrame$1(resolvePending);
    }
    /**
     * Schedules invocation of the original function.
     *
     * @returns {void}
     */
    function proxy() {
        var timeStamp = Date.now();
        if (leadingCall) {
            // Reject immediately following calls.
            if (timeStamp - lastCallTime < trailingTimeout) {
                return;
            }
            // Schedule new call to be in invoked when the pending one is resolved.
            // This is important for "transitions" which never actually start
            // immediately so there is a chance that we might miss one if change
            // happens amids the pending invocation.
            trailingCall = true;
        }
        else {
            leadingCall = true;
            trailingCall = false;
            setTimeout(timeoutCallback, delay);
        }
        lastCallTime = timeStamp;
    }
    return proxy;
}

// Minimum delay before invoking the update of observers.
var REFRESH_DELAY = 20;
// A list of substrings of CSS properties used to find transition events that
// might affect dimensions of observed elements.
var transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];
// Check if MutationObserver is available.
var mutationObserverSupported = typeof MutationObserver !== 'undefined';
/**
 * Singleton controller class which handles updates of ResizeObserver instances.
 */
var ResizeObserverController = /** @class */ (function () {
    /**
     * Creates a new instance of ResizeObserverController.
     *
     * @private
     */
    function ResizeObserverController() {
        /**
         * Indicates whether DOM listeners have been added.
         *
         * @private {boolean}
         */
        this.connected_ = false;
        /**
         * Tells that controller has subscribed for Mutation Events.
         *
         * @private {boolean}
         */
        this.mutationEventsAdded_ = false;
        /**
         * Keeps reference to the instance of MutationObserver.
         *
         * @private {MutationObserver}
         */
        this.mutationsObserver_ = null;
        /**
         * A list of connected observers.
         *
         * @private {Array<ResizeObserverSPI>}
         */
        this.observers_ = [];
        this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);
        this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);
    }
    /**
     * Adds observer to observers list.
     *
     * @param {ResizeObserverSPI} observer - Observer to be added.
     * @returns {void}
     */
    ResizeObserverController.prototype.addObserver = function (observer) {
        if (!~this.observers_.indexOf(observer)) {
            this.observers_.push(observer);
        }
        // Add listeners if they haven't been added yet.
        if (!this.connected_) {
            this.connect_();
        }
    };
    /**
     * Removes observer from observers list.
     *
     * @param {ResizeObserverSPI} observer - Observer to be removed.
     * @returns {void}
     */
    ResizeObserverController.prototype.removeObserver = function (observer) {
        var observers = this.observers_;
        var index = observers.indexOf(observer);
        // Remove observer if it's present in registry.
        if (~index) {
            observers.splice(index, 1);
        }
        // Remove listeners if controller has no connected observers.
        if (!observers.length && this.connected_) {
            this.disconnect_();
        }
    };
    /**
     * Invokes the update of observers. It will continue running updates insofar
     * it detects changes.
     *
     * @returns {void}
     */
    ResizeObserverController.prototype.refresh = function () {
        var changesDetected = this.updateObservers_();
        // Continue running updates if changes have been detected as there might
        // be future ones caused by CSS transitions.
        if (changesDetected) {
            this.refresh();
        }
    };
    /**
     * Updates every observer from observers list and notifies them of queued
     * entries.
     *
     * @private
     * @returns {boolean} Returns "true" if any observer has detected changes in
     *      dimensions of it's elements.
     */
    ResizeObserverController.prototype.updateObservers_ = function () {
        // Collect observers that have active observations.
        var activeObservers = this.observers_.filter(function (observer) {
            return observer.gatherActive(), observer.hasActive();
        });
        // Deliver notifications in a separate cycle in order to avoid any
        // collisions between observers, e.g. when multiple instances of
        // ResizeObserver are tracking the same element and the callback of one
        // of them changes content dimensions of the observed target. Sometimes
        // this may result in notifications being blocked for the rest of observers.
        activeObservers.forEach(function (observer) { return observer.broadcastActive(); });
        return activeObservers.length > 0;
    };
    /**
     * Initializes DOM listeners.
     *
     * @private
     * @returns {void}
     */
    ResizeObserverController.prototype.connect_ = function () {
        // Do nothing if running in a non-browser environment or if listeners
        // have been already added.
        if (!isBrowser || this.connected_) {
            return;
        }
        // Subscription to the "Transitionend" event is used as a workaround for
        // delayed transitions. This way it's possible to capture at least the
        // final state of an element.
        document.addEventListener('transitionend', this.onTransitionEnd_);
        window.addEventListener('resize', this.refresh);
        if (mutationObserverSupported) {
            this.mutationsObserver_ = new MutationObserver(this.refresh);
            this.mutationsObserver_.observe(document, {
                attributes: true,
                childList: true,
                characterData: true,
                subtree: true
            });
        }
        else {
            document.addEventListener('DOMSubtreeModified', this.refresh);
            this.mutationEventsAdded_ = true;
        }
        this.connected_ = true;
    };
    /**
     * Removes DOM listeners.
     *
     * @private
     * @returns {void}
     */
    ResizeObserverController.prototype.disconnect_ = function () {
        // Do nothing if running in a non-browser environment or if listeners
        // have been already removed.
        if (!isBrowser || !this.connected_) {
            return;
        }
        document.removeEventListener('transitionend', this.onTransitionEnd_);
        window.removeEventListener('resize', this.refresh);
        if (this.mutationsObserver_) {
            this.mutationsObserver_.disconnect();
        }
        if (this.mutationEventsAdded_) {
            document.removeEventListener('DOMSubtreeModified', this.refresh);
        }
        this.mutationsObserver_ = null;
        this.mutationEventsAdded_ = false;
        this.connected_ = false;
    };
    /**
     * "Transitionend" event handler.
     *
     * @private
     * @param {TransitionEvent} event
     * @returns {void}
     */
    ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {
        var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;
        // Detect whether transition may affect dimensions of an element.
        var isReflowProperty = transitionKeys.some(function (key) {
            return !!~propertyName.indexOf(key);
        });
        if (isReflowProperty) {
            this.refresh();
        }
    };
    /**
     * Returns instance of the ResizeObserverController.
     *
     * @returns {ResizeObserverController}
     */
    ResizeObserverController.getInstance = function () {
        if (!this.instance_) {
            this.instance_ = new ResizeObserverController();
        }
        return this.instance_;
    };
    /**
     * Holds reference to the controller's instance.
     *
     * @private {ResizeObserverController}
     */
    ResizeObserverController.instance_ = null;
    return ResizeObserverController;
}());

/**
 * Defines non-writable/enumerable properties of the provided target object.
 *
 * @param {Object} target - Object for which to define properties.
 * @param {Object} props - Properties to be defined.
 * @returns {Object} Target object.
 */
var defineConfigurable = (function (target, props) {
    for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {
        var key = _a[_i];
        Object.defineProperty(target, key, {
            value: props[key],
            enumerable: false,
            writable: false,
            configurable: true
        });
    }
    return target;
});

/**
 * Returns the global object associated with provided element.
 *
 * @param {Object} target
 * @returns {Object}
 */
var getWindowOf = (function (target) {
    // Assume that the element is an instance of Node, which means that it
    // has the "ownerDocument" property from which we can retrieve a
    // corresponding global object.
    var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;
    // Return the local global object if it's not possible extract one from
    // provided element.
    return ownerGlobal || global$1;
});

// Placeholder of an empty content rectangle.
var emptyRect = createRectInit(0, 0, 0, 0);
/**
 * Converts provided string to a number.
 *
 * @param {number|string} value
 * @returns {number}
 */
function toFloat(value) {
    return parseFloat(value) || 0;
}
/**
 * Extracts borders size from provided styles.
 *
 * @param {CSSStyleDeclaration} styles
 * @param {...string} positions - Borders positions (top, right, ...)
 * @returns {number}
 */
function getBordersSize(styles) {
    var positions = [];
    for (var _i = 1; _i < arguments.length; _i++) {
        positions[_i - 1] = arguments[_i];
    }
    return positions.reduce(function (size, position) {
        var value = styles['border-' + position + '-width'];
        return size + toFloat(value);
    }, 0);
}
/**
 * Extracts paddings sizes from provided styles.
 *
 * @param {CSSStyleDeclaration} styles
 * @returns {Object} Paddings box.
 */
function getPaddings(styles) {
    var positions = ['top', 'right', 'bottom', 'left'];
    var paddings = {};
    for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {
        var position = positions_1[_i];
        var value = styles['padding-' + position];
        paddings[position] = toFloat(value);
    }
    return paddings;
}
/**
 * Calculates content rectangle of provided SVG element.
 *
 * @param {SVGGraphicsElement} target - Element content rectangle of which needs
 *      to be calculated.
 * @returns {DOMRectInit}
 */
function getSVGContentRect(target) {
    var bbox = target.getBBox();
    return createRectInit(0, 0, bbox.width, bbox.height);
}
/**
 * Calculates content rectangle of provided HTMLElement.
 *
 * @param {HTMLElement} target - Element for which to calculate the content rectangle.
 * @returns {DOMRectInit}
 */
function getHTMLElementContentRect(target) {
    // Client width & height properties can't be
    // used exclusively as they provide rounded values.
    var clientWidth = target.clientWidth, clientHeight = target.clientHeight;
    // By this condition we can catch all non-replaced inline, hidden and
    // detached elements. Though elements with width & height properties less
    // than 0.5 will be discarded as well.
    //
    // Without it we would need to implement separate methods for each of
    // those cases and it's not possible to perform a precise and performance
    // effective test for hidden elements. E.g. even jQuery's ':visible' filter
    // gives wrong results for elements with width & height less than 0.5.
    if (!clientWidth && !clientHeight) {
        return emptyRect;
    }
    var styles = getWindowOf(target).getComputedStyle(target);
    var paddings = getPaddings(styles);
    var horizPad = paddings.left + paddings.right;
    var vertPad = paddings.top + paddings.bottom;
    // Computed styles of width & height are being used because they are the
    // only dimensions available to JS that contain non-rounded values. It could
    // be possible to utilize the getBoundingClientRect if only it's data wasn't
    // affected by CSS transformations let alone paddings, borders and scroll bars.
    var width = toFloat(styles.width), height = toFloat(styles.height);
    // Width & height include paddings and borders when the 'border-box' box
    // model is applied (except for IE).
    if (styles.boxSizing === 'border-box') {
        // Following conditions are required to handle Internet Explorer which
        // doesn't include paddings and borders to computed CSS dimensions.
        //
        // We can say that if CSS dimensions + paddings are equal to the "client"
        // properties then it's either IE, and thus we don't need to subtract
        // anything, or an element merely doesn't have paddings/borders styles.
        if (Math.round(width + horizPad) !== clientWidth) {
            width -= getBordersSize(styles, 'left', 'right') + horizPad;
        }
        if (Math.round(height + vertPad) !== clientHeight) {
            height -= getBordersSize(styles, 'top', 'bottom') + vertPad;
        }
    }
    // Following steps can't be applied to the document's root element as its
    // client[Width/Height] properties represent viewport area of the window.
    // Besides, it's as well not necessary as the <html> itself neither has
    // rendered scroll bars nor it can be clipped.
    if (!isDocumentElement(target)) {
        // In some browsers (only in Firefox, actually) CSS width & height
        // include scroll bars size which can be removed at this step as scroll
        // bars are the only difference between rounded dimensions + paddings
        // and "client" properties, though that is not always true in Chrome.
        var vertScrollbar = Math.round(width + horizPad) - clientWidth;
        var horizScrollbar = Math.round(height + vertPad) - clientHeight;
        // Chrome has a rather weird rounding of "client" properties.
        // E.g. for an element with content width of 314.2px it sometimes gives
        // the client width of 315px and for the width of 314.7px it may give
        // 314px. And it doesn't happen all the time. So just ignore this delta
        // as a non-relevant.
        if (Math.abs(vertScrollbar) !== 1) {
            width -= vertScrollbar;
        }
        if (Math.abs(horizScrollbar) !== 1) {
            height -= horizScrollbar;
        }
    }
    return createRectInit(paddings.left, paddings.top, width, height);
}
/**
 * Checks whether provided element is an instance of the SVGGraphicsElement.
 *
 * @param {Element} target - Element to be checked.
 * @returns {boolean}
 */
var isSVGGraphicsElement = (function () {
    // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement
    // interface.
    if (typeof SVGGraphicsElement !== 'undefined') {
        return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };
    }
    // If it's so, then check that element is at least an instance of the
    // SVGElement and that it has the "getBBox" method.
    // eslint-disable-next-line no-extra-parens
    return function (target) { return (target instanceof getWindowOf(target).SVGElement &&
        typeof target.getBBox === 'function'); };
})();
/**
 * Checks whether provided element is a document element (<html>).
 *
 * @param {Element} target - Element to be checked.
 * @returns {boolean}
 */
function isDocumentElement(target) {
    return target === getWindowOf(target).document.documentElement;
}
/**
 * Calculates an appropriate content rectangle for provided html or svg element.
 *
 * @param {Element} target - Element content rectangle of which needs to be calculated.
 * @returns {DOMRectInit}
 */
function getContentRect(target) {
    if (!isBrowser) {
        return emptyRect;
    }
    if (isSVGGraphicsElement(target)) {
        return getSVGContentRect(target);
    }
    return getHTMLElementContentRect(target);
}
/**
 * Creates rectangle with an interface of the DOMRectReadOnly.
 * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly
 *
 * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.
 * @returns {DOMRectReadOnly}
 */
function createReadOnlyRect(_a) {
    var x = _a.x, y = _a.y, width = _a.width, height = _a.height;
    // If DOMRectReadOnly is available use it as a prototype for the rectangle.
    var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;
    var rect = Object.create(Constr.prototype);
    // Rectangle's properties are not writable and non-enumerable.
    defineConfigurable(rect, {
        x: x, y: y, width: width, height: height,
        top: y,
        right: x + width,
        bottom: height + y,
        left: x
    });
    return rect;
}
/**
 * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.
 * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit
 *
 * @param {number} x - X coordinate.
 * @param {number} y - Y coordinate.
 * @param {number} width - Rectangle's width.
 * @param {number} height - Rectangle's height.
 * @returns {DOMRectInit}
 */
function createRectInit(x, y, width, height) {
    return { x: x, y: y, width: width, height: height };
}

/**
 * Class that is responsible for computations of the content rectangle of
 * provided DOM element and for keeping track of it's changes.
 */
var ResizeObservation = /** @class */ (function () {
    /**
     * Creates an instance of ResizeObservation.
     *
     * @param {Element} target - Element to be observed.
     */
    function ResizeObservation(target) {
        /**
         * Broadcasted width of content rectangle.
         *
         * @type {number}
         */
        this.broadcastWidth = 0;
        /**
         * Broadcasted height of content rectangle.
         *
         * @type {number}
         */
        this.broadcastHeight = 0;
        /**
         * Reference to the last observed content rectangle.
         *
         * @private {DOMRectInit}
         */
        this.contentRect_ = createRectInit(0, 0, 0, 0);
        this.target = target;
    }
    /**
     * Updates content rectangle and tells whether it's width or height properties
     * have changed since the last broadcast.
     *
     * @returns {boolean}
     */
    ResizeObservation.prototype.isActive = function () {
        var rect = getContentRect(this.target);
        this.contentRect_ = rect;
        return (rect.width !== this.broadcastWidth ||
            rect.height !== this.broadcastHeight);
    };
    /**
     * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data
     * from the corresponding properties of the last observed content rectangle.
     *
     * @returns {DOMRectInit} Last observed content rectangle.
     */
    ResizeObservation.prototype.broadcastRect = function () {
        var rect = this.contentRect_;
        this.broadcastWidth = rect.width;
        this.broadcastHeight = rect.height;
        return rect;
    };
    return ResizeObservation;
}());

var ResizeObserverEntry = /** @class */ (function () {
    /**
     * Creates an instance of ResizeObserverEntry.
     *
     * @param {Element} target - Element that is being observed.
     * @param {DOMRectInit} rectInit - Data of the element's content rectangle.
     */
    function ResizeObserverEntry(target, rectInit) {
        var contentRect = createReadOnlyRect(rectInit);
        // According to the specification following properties are not writable
        // and are also not enumerable in the native implementation.
        //
        // Property accessors are not being used as they'd require to define a
        // private WeakMap storage which may cause memory leaks in browsers that
        // don't support this type of collections.
        defineConfigurable(this, { target: target, contentRect: contentRect });
    }
    return ResizeObserverEntry;
}());

var ResizeObserverSPI = /** @class */ (function () {
    /**
     * Creates a new instance of ResizeObserver.
     *
     * @param {ResizeObserverCallback} callback - Callback function that is invoked
     *      when one of the observed elements changes it's content dimensions.
     * @param {ResizeObserverController} controller - Controller instance which
     *      is responsible for the updates of observer.
     * @param {ResizeObserver} callbackCtx - Reference to the public
     *      ResizeObserver instance which will be passed to callback function.
     */
    function ResizeObserverSPI(callback, controller, callbackCtx) {
        /**
         * Collection of resize observations that have detected changes in dimensions
         * of elements.
         *
         * @private {Array<ResizeObservation>}
         */
        this.activeObservations_ = [];
        /**
         * Registry of the ResizeObservation instances.
         *
         * @private {Map<Element, ResizeObservation>}
         */
        this.observations_ = new MapShim();
        if (typeof callback !== 'function') {
            throw new TypeError('The callback provided as parameter 1 is not a function.');
        }
        this.callback_ = callback;
        this.controller_ = controller;
        this.callbackCtx_ = callbackCtx;
    }
    /**
     * Starts observing provided element.
     *
     * @param {Element} target - Element to be observed.
     * @returns {void}
     */
    ResizeObserverSPI.prototype.observe = function (target) {
        if (!arguments.length) {
            throw new TypeError('1 argument required, but only 0 present.');
        }
        // Do nothing if current environment doesn't have the Element interface.
        if (typeof Element === 'undefined' || !(Element instanceof Object)) {
            return;
        }
        if (!(target instanceof getWindowOf(target).Element)) {
            throw new TypeError('parameter 1 is not of type "Element".');
        }
        var observations = this.observations_;
        // Do nothing if element is already being observed.
        if (observations.has(target)) {
            return;
        }
        observations.set(target, new ResizeObservation(target));
        this.controller_.addObserver(this);
        // Force the update of observations.
        this.controller_.refresh();
    };
    /**
     * Stops observing provided element.
     *
     * @param {Element} target - Element to stop observing.
     * @returns {void}
     */
    ResizeObserverSPI.prototype.unobserve = function (target) {
        if (!arguments.length) {
            throw new TypeError('1 argument required, but only 0 present.');
        }
        // Do nothing if current environment doesn't have the Element interface.
        if (typeof Element === 'undefined' || !(Element instanceof Object)) {
            return;
        }
        if (!(target instanceof getWindowOf(target).Element)) {
            throw new TypeError('parameter 1 is not of type "Element".');
        }
        var observations = this.observations_;
        // Do nothing if element is not being observed.
        if (!observations.has(target)) {
            return;
        }
        observations.delete(target);
        if (!observations.size) {
            this.controller_.removeObserver(this);
        }
    };
    /**
     * Stops observing all elements.
     *
     * @returns {void}
     */
    ResizeObserverSPI.prototype.disconnect = function () {
        this.clearActive();
        this.observations_.clear();
        this.controller_.removeObserver(this);
    };
    /**
     * Collects observation instances the associated element of which has changed
     * it's content rectangle.
     *
     * @returns {void}
     */
    ResizeObserverSPI.prototype.gatherActive = function () {
        var _this = this;
        this.clearActive();
        this.observations_.forEach(function (observation) {
            if (observation.isActive()) {
                _this.activeObservations_.push(observation);
            }
        });
    };
    /**
     * Invokes initial callback function with a list of ResizeObserverEntry
     * instances collected from active resize observations.
     *
     * @returns {void}
     */
    ResizeObserverSPI.prototype.broadcastActive = function () {
        // Do nothing if observer doesn't have active observations.
        if (!this.hasActive()) {
            return;
        }
        var ctx = this.callbackCtx_;
        // Create ResizeObserverEntry instance for every active observation.
        var entries = this.activeObservations_.map(function (observation) {
            return new ResizeObserverEntry(observation.target, observation.broadcastRect());
        });
        this.callback_.call(ctx, entries, ctx);
        this.clearActive();
    };
    /**
     * Clears the collection of active observations.
     *
     * @returns {void}
     */
    ResizeObserverSPI.prototype.clearActive = function () {
        this.activeObservations_.splice(0);
    };
    /**
     * Tells whether observer has active observations.
     *
     * @returns {boolean}
     */
    ResizeObserverSPI.prototype.hasActive = function () {
        return this.activeObservations_.length > 0;
    };
    return ResizeObserverSPI;
}());

// Registry of internal observers. If WeakMap is not available use current shim
// for the Map collection as it has all required methods and because WeakMap
// can't be fully polyfilled anyway.
var observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();
/**
 * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation
 * exposing only those methods and properties that are defined in the spec.
 */
var ResizeObserver = /** @class */ (function () {
    /**
     * Creates a new instance of ResizeObserver.
     *
     * @param {ResizeObserverCallback} callback - Callback that is invoked when
     *      dimensions of the observed elements change.
     */
    function ResizeObserver(callback) {
        if (!(this instanceof ResizeObserver)) {
            throw new TypeError('Cannot call a class as a function.');
        }
        if (!arguments.length) {
            throw new TypeError('1 argument required, but only 0 present.');
        }
        var controller = ResizeObserverController.getInstance();
        var observer = new ResizeObserverSPI(callback, controller, this);
        observers.set(this, observer);
    }
    return ResizeObserver;
}());
// Expose public methods of ResizeObserver.
[
    'observe',
    'unobserve',
    'disconnect'
].forEach(function (method) {
    ResizeObserver.prototype[method] = function () {
        var _a;
        return (_a = observers.get(this))[method].apply(_a, arguments);
    };
});

var index = (function () {
    // Export existing implementation if available.
    if (typeof global$1.ResizeObserver !== 'undefined') {
        return global$1.ResizeObserver;
    }
    return ResizeObserver;
})();

/* harmony default export */ __webpack_exports__["default"] = (index);

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../webpack/buildin/global.js */ "./node_modules/webpack/buildin/global.js")))

/***/ }),

/***/ "./node_modules/string-convert/camel2hyphen.js":
/*!*****************************************************!*\
  !*** ./node_modules/string-convert/camel2hyphen.js ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

var camel2hyphen = function (str) {
  return str
          .replace(/[A-Z]/g, function (match) {
            return '-' + match.toLowerCase();
          })
          .toLowerCase();
};

module.exports = camel2hyphen;

/***/ }),

/***/ "./node_modules/webpack/buildin/amd-define.js":
/*!***************************************!*\
  !*** (webpack)/buildin/amd-define.js ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports) {

module.exports = function() {
	throw new Error("define cannot be used indirect");
};


/***/ }),

/***/ "./node_modules/webpack/buildin/global.js":
/*!***********************************!*\
  !*** (webpack)/buildin/global.js ***!
  \***********************************/
/*! no static exports found */
/***/ (function(module, exports) {

var g;

// This works in non-strict mode
g = (function() {
	return this;
})();

try {
	// This works if eval is allowed (see CSP)
	g = g || new Function("return this")();
} catch (e) {
	// This works if the window reference is available
	if (typeof window === "object") g = window;
}

// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}

module.exports = g;


/***/ }),

/***/ "./node_modules/webpack/buildin/module.js":
/*!***********************************!*\
  !*** (webpack)/buildin/module.js ***!
  \***********************************/
/*! no static exports found */
/***/ (function(module, exports) {

module.exports = function(module) {
	if (!module.webpackPolyfill) {
		module.deprecate = function() {};
		module.paths = [];
		// module.parent = undefined by default
		if (!module.children) module.children = [];
		Object.defineProperty(module, "loaded", {
			enumerable: true,
			get: function() {
				return module.l;
			}
		});
		Object.defineProperty(module, "id", {
			enumerable: true,
			get: function() {
				return module.i;
			}
		});
		module.webpackPolyfill = 1;
	}
	return module;
};


/***/ }),

/***/ "./src/blocks.js":
/*!***********************!*\
  !*** ./src/blocks.js ***!
  \***********************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./editor.scss */ "./src/editor.scss");
/* harmony import */ var _editor_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_editor_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./style.scss */ "./src/style.scss");
/* harmony import */ var _style_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _blocks_slider__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./blocks/slider */ "./src/blocks/slider/index.js");
/* harmony import */ var _blocks_heading__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./blocks/heading */ "./src/blocks/heading/index.js");
/* harmony import */ var _blocks_call_to_action__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./blocks/call-to-action */ "./src/blocks/call-to-action/index.js");
/* harmony import */ var _blocks_section__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./blocks/section */ "./src/blocks/section/index.js");
/* harmony import */ var _blocks_blog__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./blocks/blog */ "./src/blocks/blog/index.js");
/* harmony import */ var _blocks_counter__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./blocks/counter */ "./src/blocks/counter/index.js");
/* harmony import */ var _blocks_icon_boxes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./blocks/icon-boxes */ "./src/blocks/icon-boxes/index.js");
/* harmony import */ var _blocks_icon_boxes_icon_box_index__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./blocks/icon-boxes/icon-box/index */ "./src/blocks/icon-boxes/icon-box/index.js");
/* harmony import */ var _blocks_profile_cards__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./blocks/profile-cards */ "./src/blocks/profile-cards/index.js");
/* harmony import */ var _blocks_profile_cards_profile_card__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./blocks/profile-cards/profile-card */ "./src/blocks/profile-cards/profile-card/index.js");
/* harmony import */ var _blocks_buttons__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./blocks/buttons */ "./src/blocks/buttons/index.js");
/* harmony import */ var _blocks_social_icons__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./blocks/social-icons */ "./src/blocks/social-icons/index.js");
/* harmony import */ var _blocks_social_icons_social_icon__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./blocks/social-icons/social-icon */ "./src/blocks/social-icons/social-icon/index.js");
/* harmony import */ var _blocks_accordion__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./blocks/accordion */ "./src/blocks/accordion/index.js");
/* harmony import */ var _blocks_news_1__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./blocks/news-1 */ "./src/blocks/news-1/index.js");
/* harmony import */ var _blocks_carousel_post__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./blocks/carousel-post */ "./src/blocks/carousel-post/index.js");
/* harmony import */ var _components_importer__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./components/importer */ "./src/components/importer.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./helpers */ "./src/helpers/index.js");
/**
 * Gutenberg Blocks
 *
 * All blocks related JavaScript files should be imported here.
 * You can create a new block folder in this dir and include code
 * for that block here as well.
 *
 * All blocks should be included here since this is the file that
 * Webpack is compiling as the input file.
 */
const icon = React.createElement("svg", {
  viewBox: "0 0 200 122"
}, " ", React.createElement("path", {
  fill: "#3761CF",
  d: "M162.3,61.7l2,1.1l12.8,7.2l1.8,1c3.6,1.7,7.3,2.7,11,2.7c2.8,0,5.5-0.5,8.1-1.4c-0.7,1.3-1.5,2.6-2.4,3.7c-3.2,3.8-8,6.2-13.4,6.2c-2.1,0-4-0.3-5.8-1l-2.5-1.1l-14.3-8l-2.1-1.2c-7-3.8-14.9-5.9-23.4-5.9c-6.1,0-11.9,1.1-17.2,3.1c-3.3,1.2-6.4,2.8-9.3,4.7C101,76.8,95.6,82.4,91.6,89l-1.7,2.9l29.5,16.9c3.3,1.7,7.1,2.7,11.1,2.7c2.8,0,5.5-0.5,8.1-1.4c-0.7,1.3-1.5,2.6-2.4,3.7c-3.2,3.8-8,6.2-13.4,6.2c-2.8,0-5.5-0.7-7.9-1.9L30.7,70c-3.6-1.9-6.8-3.2-10.1-4.1c-6-1.7-12.4-2.2-18.6-1.6c1.4-0.7,2.9-1.3,4.4-1.9c5.9-2.2,12.2-3,18.4-2.6c3.2,0.2,6.3,0.8,9.4,1.6c3.1,0.9,6.1,2.1,8.9,3.7l37.8,21.6l1.7-2.8c5.3-9,12.9-16.5,21.9-21.6c2.6-1.5,5.3-2.8,8.1-3.8c2.4-1,5-1.7,7.6-2.3c4.4-1.1,9.1-1.6,13.8-1.6c4.7,0,9.3,0.6,13.7,1.6c1.5,0.4,3,0.8,4.5,1.3"
}), " ", React.createElement("path", {
  fill: "#3761CF",
  d: "M36.6,53.3c0.7,0.2,1.5,0.5,2.2,0.7c7.5-7.9,18.1-12.8,29.8-12.8c12.4,0,23.5,5.5,31,14.1c0.2-0.1,0.4-0.3,0.6-0.4c2.6-1.5,5.3-2.7,8-3.8C99,39.3,84.7,31.8,68.6,31.8c-16.3,0-30.9,7.8-40.1,19.8C31.2,51.9,33.9,52.5,36.6,53.3z"
}), " ", React.createElement("polygon", {
  fill: "#3761CF",
  points: "16,23.2 29.3,36.5 22.3,43.4 9.1,30.2 "
}), " ", React.createElement("polygon", {
  fill: "#3761CF",
  points: "49.7,25.2 40.6,28.9 33.7,11.4 41.3,8.3 42.8,7.8 43.5,9.6 "
}), " ", React.createElement("rect", {
  fill: "#3761CF",
  x: "108.7",
  y: "28.4",
  transform: "matrix(0.7071 -0.7071 0.7071 0.7071 11.0057 93.2395)"
}), " ", React.createElement("path", {
  fill: "#3761CF",
  d: "M103.5,11.4l-4.2,10.5l-2.8,6.9l-9.1-3.6l3.3-8.2l3.7-9.2L103.5,11.4z M65.5,22.1h-1.8v-1V3.4h9.8v18.8H65.5z"
}));

(function () {
  wp.blocks.updateCategory('rise-blocks', {
    icon: icon
  });
})();























Object(_components_wp__WEBPACK_IMPORTED_MODULE_20__["registerPlugin"])('rise-blocks-plugin-sidebar', {
  render: () => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_20__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_20__["PluginBlockSettingsMenuItem"], {
    allowedBlocks: _helpers__WEBPACK_IMPORTED_MODULE_21__["insertableBlocks"],
    icon: "download",
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_20__["__"])('Export To JSON', 'rise-blocks'),
    onClick: e => {
      const clientId = Object(_components_wp__WEBPACK_IMPORTED_MODULE_20__["select"])('editor').getSelectedBlockClientId();
      Object(_helpers__WEBPACK_IMPORTED_MODULE_21__["exportToJsonFile"])(clientId);
    }
  }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_20__["PluginPostStatusInfo"], null, React.createElement(_components_importer__WEBPACK_IMPORTED_MODULE_18__["default"], null)))
});

/***/ }),

/***/ "./src/blocks/accordion/child/attributes.js":
/*!**************************************************!*\
  !*** ./src/blocks/accordion/child/attributes.js ***!
  \**************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/accordion/child/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  title: {
    type: 'string'
  },

  /* Typo */
  headingTypo: {
    type: 'object'
  },
  contentTypo: {
    type: 'object'
  },

  /* Spacing */
  headingPadding: {
    type: 'object'
  },
  contentPadding: {
    type: 'object'
  },

  /* Color */
  headingBackground: {
    type: 'string',
    default: '#f6f6f6'
  },
  headingActiveBackground: {
    type: 'string',
    default: '#007fff'
  },
  headingColor: {
    type: 'string'
  },
  headingActiveColor: {
    type: 'string'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/accordion/child/components/deprecated/1.0.10/attributes.js":
/*!*******************************************************************************!*\
  !*** ./src/blocks/accordion/child/components/deprecated/1.0.10/attributes.js ***!
  \*******************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../constants */ "./src/blocks/accordion/child/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  title: {
    type: 'string'
  },
  content: {
    type: 'string'
  },

  /* Typo */
  headingTypo: {
    type: 'object'
  },
  contentTypo: {
    type: 'object'
  },

  /* Spacing */
  headingPadding: {
    type: 'object'
  },
  contentPadding: {
    type: 'object'
  },

  /* Color */
  headingBackground: {
    type: 'string',
    default: '#f6f6f6'
  },
  headingActiveBackground: {
    type: 'string',
    default: '#007fff'
  },
  headingColor: {
    type: 'string'
  },
  headingActiveColor: {
    type: 'string'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/accordion/child/components/deprecated/1.0.10/save.js":
/*!*************************************************************************!*\
  !*** ./src/blocks/accordion/child/components/deprecated/1.0.10/save.js ***!
  \*************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../components/wp */ "./src/components/wp.js");



const save = props => {
  const {
    attributes
  } = props;
  const {
    title = 'Title',
    content = '',
    block_id
  } = attributes;
  return React.createElement("div", {
    id: block_id
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item`
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item-header`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "h3",
    value: `<a href="#">${title}</a>`
  })), React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content-wrapper`
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "div",
    value: content
  })))));
};

/* harmony default export */ __webpack_exports__["default"] = (save);

/***/ }),

/***/ "./src/blocks/accordion/child/components/deprecated/1.0.11/attributes.js":
/*!*******************************************************************************!*\
  !*** ./src/blocks/accordion/child/components/deprecated/1.0.11/attributes.js ***!
  \*******************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../constants */ "./src/blocks/accordion/child/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  title: {
    type: 'string'
  },
  content: {
    type: 'string'
  },

  /* Typo */
  headingTypo: {
    type: 'object'
  },
  contentTypo: {
    type: 'object'
  },

  /* Spacing */
  headingPadding: {
    type: 'object'
  },
  contentPadding: {
    type: 'object'
  },

  /* Color */
  headingBackground: {
    type: 'string',
    default: '#f6f6f6'
  },
  headingActiveBackground: {
    type: 'string',
    default: '#007fff'
  },
  headingColor: {
    type: 'string'
  },
  headingActiveColor: {
    type: 'string'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/accordion/child/components/deprecated/1.0.11/save.js":
/*!*************************************************************************!*\
  !*** ./src/blocks/accordion/child/components/deprecated/1.0.11/save.js ***!
  \*************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../../components/wp */ "./src/components/wp.js");



const save = props => {
  const {
    attributes
  } = props;
  const {
    title = 'Title',
    content = '',
    block_id
  } = attributes;
  return React.createElement("div", {
    id: block_id,
    itemscope: true,
    itemprop: "mainEntity",
    itemtype: "http://schema.org/Question"
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item`
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item-header`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "h3",
    itemprop: "name",
    value: `<a href="#">${title}</a>`
  })), React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content-wrapper`,
    itemprop: "acceptedAnswer",
    itemscope: true,
    itemtype: "http://schema.org/Answer"
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "div",
    itemprop: "text",
    value: content
  })))));
};

/* harmony default export */ __webpack_exports__["default"] = (save);

/***/ }),

/***/ "./src/blocks/accordion/child/components/edit.js":
/*!*******************************************************!*\
  !*** ./src/blocks/accordion/child/components/edit.js ***!
  \*******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super(props);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "toggle", e => {
      e.preventDefault();
      jQuery(e.target).next().toggle();
      jQuery(e.target).toggleClass('content-hidden');

      if (jQuery(e.target).hasClass('content-hidden')) {
        jQuery(e.target).html('show');
      } else {
        jQuery(e.target).html('hide');
      }
    });
  }

  componentDidMount() {
    const {
      className,
      instanceId,
      setAttributes
    } = this.props;
    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      attributes,
      setAttributes
    } = this.props;
    const {
      headingTypo,
      contentTypo,
      headingPadding,
      contentPadding,
      headingBackground,
      headingColor,
      title,
      content
    } = attributes;

    const headingStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(headingTypo), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])('padding', headingPadding), {
      background: headingBackground,
      color: headingColor
    });

    const contentStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(contentTypo), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])('padding', contentPadding), {
      display: 'none'
    });

    return React.createElement("div", {
      className: className
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      tagName: "h3",
      value: title,
      style: headingStyle,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-accordion-title`,
      onChange: title => {
        setAttributes({
          title
        });
      },
      allowedFormats: ['bold', 'italic', 'text-color'],
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Write a title', 'rise-blocks'),
      keepPlaceholderOnFocus: true
    }), React.createElement("button", {
      className: "content-hidden",
      onClick: this.toggle
    }, "show "), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-accordion-content`,
      style: contentStyle
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InnerBlocks"], null)));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/accordion/child/components/save.js":
/*!*******************************************************!*\
  !*** ./src/blocks/accordion/child/components/save.js ***!
  \*******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");



const save = props => {
  const {
    attributes
  } = props;
  const {
    title = 'Title',
    content = '',
    block_id
  } = attributes;
  return React.createElement("div", {
    id: block_id,
    itemscope: true,
    itemprop: "mainEntity",
    itemtype: "http://schema.org/Question"
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item`
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-item-header`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "h3",
    itemprop: "name",
    value: `<a href="#">${title}</a>`
  })), React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content-wrapper`,
    itemprop: "acceptedAnswer",
    itemscope: true,
    itemtype: "http://schema.org/Answer"
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-accordion-content`,
    itemprop: "text"
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InnerBlocks"].Content, null)))));
};

/* harmony default export */ __webpack_exports__["default"] = (save);

/***/ }),

/***/ "./src/blocks/accordion/child/constants.js":
/*!*************************************************!*\
  !*** ./src/blocks/accordion/child/constants.js ***!
  \*************************************************/
/*! exports provided: def */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "def", function() { return def; });
const def = {
  height: 100,
  expand: {
    page: 2,
    icon: 'fas fa-plus'
  },
  minus: {
    page: 2,
    icon: 'fas fa-minus'
  },
  tag: 'h3',
  headingSize: 18,
  descriptionSize: 16
};

/***/ }),

/***/ "./src/blocks/accordion/child/index.js":
/*!*********************************************!*\
  !*** ./src/blocks/accordion/child/index.js ***!
  \*********************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/accordion/child/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/accordion/child/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./attributes */ "./src/blocks/accordion/child/attributes.js");
/* harmony import */ var _components_deprecated_1_0_10_save__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/deprecated/1.0.10/save */ "./src/blocks/accordion/child/components/deprecated/1.0.10/save.js");
/* harmony import */ var _components_deprecated_1_0_10_attributes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/deprecated/1.0.10/attributes */ "./src/blocks/accordion/child/components/deprecated/1.0.10/attributes.js");
/* harmony import */ var _components_deprecated_1_0_11_save__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./components/deprecated/1.0.11/save */ "./src/blocks/accordion/child/components/deprecated/1.0.11/save.js");
/* harmony import */ var _components_deprecated_1_0_11_attributes__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./components/deprecated/1.0.11/attributes */ "./src/blocks/accordion/child/components/deprecated/1.0.11/attributes.js");




const {
  omit
} = lodash;







Object(_helpers__WEBPACK_IMPORTED_MODULE_0__["register"])('accordion-item', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Accordion Item', 'rise-blocks'),
  parent: ['rise-blocks/accordion'],
  supports: {
    inserter: false,
    reusable: false,
    html: false
  },
  deprecated: [{
    attributes: _components_deprecated_1_0_10_attributes__WEBPACK_IMPORTED_MODULE_8__["default"],
    save: _components_deprecated_1_0_10_save__WEBPACK_IMPORTED_MODULE_7__["default"]
  }, {
    attributes: _components_deprecated_1_0_11_attributes__WEBPACK_IMPORTED_MODULE_10__["default"],
    save: _components_deprecated_1_0_11_save__WEBPACK_IMPORTED_MODULE_9__["default"],

    migrate(attributes, innerBlocks) {
      return [omit(attributes, 'content'), [Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["createBlock"])('core/paragraph', {
        content: attributes.content
      }), ...innerBlocks]];
    }

  }],
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_6__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_4__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});

/***/ }),

/***/ "./src/blocks/accordion/index.js":
/*!***************************************!*\
  !*** ./src/blocks/accordion/index.js ***!
  \***************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/accordion/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/accordion/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _parent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./parent */ "./src/blocks/accordion/parent/index.js");
/* harmony import */ var _child__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./child */ "./src/blocks/accordion/child/index.js");





/***/ }),

/***/ "./src/blocks/accordion/parent/attributes.js":
/*!***************************************************!*\
  !*** ./src/blocks/accordion/parent/attributes.js ***!
  \***************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/accordion/parent/constants.js");

const attributes = {
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  block_id: {
    type: 'string'
  },
  headingTypo: {
    type: 'object'
  },
  contentTypo: {
    type: 'object'
  },

  /* Color */
  headingBackground: {
    type: 'string',
    default: '#f6f6f6'
  },
  headingActiveBackground: {
    type: 'string',
    default: '#007fff'
  },
  headingColor: {
    type: 'string',
    default: '#000000'
  },
  headingActiveColor: {
    type: 'string',
    default: '#ffffff'
  },

  /* Spacing */
  headingPadding: {
    type: 'object'
  },
  contentPadding: {
    type: 'object'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/accordion/parent/components/edit.js":
/*!********************************************************!*\
  !*** ./src/blocks/accordion/parent/components/edit.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js");
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inspector */ "./src/blocks/accordion/parent/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_parent_block_selector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../components/parent-block-selector */ "./src/components/parent-block-selector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../constants */ "./src/blocks/accordion/parent/constants.js");









const ALLOWED_BLOCKS = ['rise-blocks/accordion-item'];
const getCount = memize__WEBPACK_IMPORTED_MODULE_2___default()(count => {
  return lodash_times__WEBPACK_IMPORTED_MODULE_3___default()(count, () => ['rise-blocks/accordion-item']);
});

class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  componentDidMount() {
    const {
      clientId,
      setAttributes,
      instanceId,
      className
    } = this.props;
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      isSelected,
      clientId,
      setAttributes,
      className
    } = this.props;
    let {
      block_id,
      isInit,
      headingTypo,
      contentTypo,
      headingPadding,
      contentPadding,
      headingBackground,
      headingActiveBackground,
      headingColor,
      headingActiveColor
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_8__["editorNSaveAttrs"]);
      return null;
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, isSelected && React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_5__["default"], this.props), React.createElement("div", {
      className: className
    }, React.createElement(_components_parent_block_selector__WEBPACK_IMPORTED_MODULE_7__["default"], {
      icon: "iconBox",
      label: "Accordion"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"], {
      allowedBlocks: ALLOWED_BLOCKS
    })), Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["shouldShowAddButton"])(clientId) && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["IconButton"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-add-new-item`,
      isLarge: true,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add Accordion', 'rise-blocks'),
      icon: "insert",
      onClick: () => {
        const created = Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["createBlock"])('rise-blocks/accordion-item', {
          headingTypo,
          contentTypo,
          headingPadding,
          contentPadding,
          headingBackground,
          headingActiveBackground,
          headingColor,
          headingActiveColor
        });
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').insertBlock(created, undefined, clientId);
      }
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add New Accordion', 'rise-blocks')));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/accordion/parent/components/inspector.js":
/*!*************************************************************!*\
  !*** ./src/blocks/accordion/parent/components/inspector.js ***!
  \*************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../components/exporter */ "./src/components/exporter.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/accordion/parent/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");









class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      setAttributes,
      attributes,
      clientId
    } = this.props;
    const {
      headingTypo,
      contentTypo,
      headingPadding,
      contentPadding,
      headingBackground,
      headingActiveBackground,
      headingColor,
      headingActiveColor
    } = attributes;

    const updateChild = attrs => {
      const inner = Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getInnerBlocks"])(clientId);
      inner.forEach(b => {
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').updateBlockAttributes(b.clientId, attrs);
      });
    };

    const bgData = {
      headingBackground: {
        value: headingBackground,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
      },
      headingActiveBackground: {
        value: headingActiveBackground,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Active State', 'rise-blocks')
      }
    };
    const HeadingBgSetting = Object.keys(bgData).map(key => {
      const value = bgData[key].value; //const def = defaultAttrs[key];

      return {
        title: () => {
          return React.createElement("div", null, bgData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => {
              let v = c ? c : 'transparent';
              setAttributes({
                [key]: v
              });
              updateChild({
                [key]: v
              });
            }
          });
        }
      };
    });
    const colorData = {
      headingColor: {
        value: headingColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
      },
      headingActiveColor: {
        value: headingActiveColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Active State', 'rise-blocks')
      }
    };
    const HeadingColorSetting = Object.keys(colorData).map(key => {
      const value = colorData[key].value; //const def = defaultAttrs[key];

      return {
        title: () => {
          return React.createElement("div", null, colorData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => {
              let v = c ? c : 'transparent';
              setAttributes({
                [key]: v
              });
              updateChild({
                [key]: v
              });
            }
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_5__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Typography', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["defaultAttrs"].headingTypo,
      value: headingTypo,
      onChange: headingTypo => {
        setAttributes({
          headingTypo
        });
        updateChild({
          headingTypo
        });
      }
    }), React.createElement("br", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Content', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["defaultAttrs"].contentTypo,
      value: contentTypo,
      onChange: contentTypo => {
        setAttributes({
          contentTypo
        });
        updateChild({
          contentTypo
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_2__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["defaultAttrs"].headingPadding,
      value: headingPadding,
      onChange: headingPadding => {
        setAttributes({
          headingPadding
        });
        updateChild({
          headingPadding
        });
      }
    }), React.createElement("hr", null), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_2__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Content'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["defaultAttrs"].contentPadding,
      value: contentPadding,
      onChange: contentPadding => {
        setAttributes({
          contentPadding
        });
        updateChild({
          contentPadding
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Color', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_4__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_6__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading Background', 'rise-blocks'),
      data: HeadingBgSetting
    }), React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_4__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_6__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading Color', 'rise-blocks'),
      data: HeadingColorSetting
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/accordion/parent/components/save.js":
/*!********************************************************!*\
  !*** ./src/blocks/accordion/parent/components/save.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");


const save = ({
  className,
  attributes
}) => {
  return React.createElement("div", {
    id: attributes.block_id
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null));
};

/* harmony default export */ __webpack_exports__["default"] = (save);

/***/ }),

/***/ "./src/blocks/accordion/parent/constants.js":
/*!**************************************************!*\
  !*** ./src/blocks/accordion/parent/constants.js ***!
  \**************************************************/
/*! exports provided: editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }

/* Default Attributes */
const editorAttrs = {
  isInit: false
};
/* Editor And Save Attributes */

const editorNSaveAttrs = {
  headingTypo: {
    fontFamily: '',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 18,
        tablet: 18,
        mobile: 18
      }
    },
    fontWeight: 300,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.5,
        tablet: 1.5,
        mobile: 1.5
      }
    }
  },
  contentTypo: {
    fontFamily: '',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 15,
        tablet: 15,
        mobile: 15
      }
    },
    fontWeight: 300,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.5,
        tablet: 1.5,
        mobile: 1.5
      }
    }
  },
  headingPadding: {
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    isLinkActive: false,
    values: {
      'desktop': [10, 20, 10, 20],
      'tablet': [10, 20, 10, 20],
      'mobile': [10, 20, 10, 20]
    }
  },
  contentPadding: {
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    isLinkActive: false,
    values: {
      'desktop': [20, 20, 20, 20],
      'tablet': [20, 20, 20, 20],
      'mobile': [20, 20, 20, 20]
    }
  }
};
const defaultAttrs = _objectSpread({}, editorAttrs, {}, editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/accordion/parent/index.js":
/*!**********************************************!*\
  !*** ./src/blocks/accordion/parent/index.js ***!
  \**********************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/accordion/parent/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/save */ "./src/blocks/accordion/parent/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./attributes */ "./src/blocks/accordion/parent/attributes.js");






Object(_helpers__WEBPACK_IMPORTED_MODULE_0__["register"])('accordion', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Accordion / FAQ', 'rise-blocks'),
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_1__["default"].accordion,
  keywords: [Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('accordion', 'rise-blocks'), Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('faq', 'rise-blocks')],
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('This block allows you to add collapsible content/faqs on a page or post. It helps for reducing scrolling and categorizing information.', 'rise-blocks'),
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_5__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_3__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_4__["default"]
});

/***/ }),

/***/ "./src/blocks/accordion/styles/editor.scss":
/*!*************************************************!*\
  !*** ./src/blocks/accordion/styles/editor.scss ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/accordion/styles/style.scss":
/*!************************************************!*\
  !*** ./src/blocks/accordion/styles/style.scss ***!
  \************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/blog/components/edit.js":
/*!********************************************!*\
  !*** ./src/blocks/blog/components/edit.js ***!
  \********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inspector */ "./src/blocks/blog/components/inspector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getExcerpt", post => {
      const {
        attributes: {
          enableContent,
          excerptLength = 20,
          contentTypo,
          contentColor
        }
      } = this.props;

      if (enableContent) {
        const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(contentTypo), {
          color: contentColor
        });

        return React.createElement("p", {
          style: style
        }, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["wordTrim"])(post['rise-blocks_excerpt'], excerptLength));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "title", ({
      title
    }, i) => {
      const {
        attributes: {
          enableTitle,
          titleTypo,
          titleColor,
          titleHoverColor
        }
      } = this.props;

      if (enableTitle) {
        const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(titleTypo), {
          color: titleColor,
          ':hover': {
            'color': titleHoverColor
          }
        });

        return React.createElement("h2", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-post-title`
        }, React.createElement("a", {
          key: i,
          onClick: e => e.preventDefault(),
          href: "#",
          style: style
        }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["decodeEntities"])(title.rendered.trim()) || Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('(Untitled)', 'rise-blocks')));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "image", ({
      _embedded
    }) => {
      const {
        attributes: {
          imageSize,
          enableImage
        }
      } = this.props;
      let img = '';

      if (enableImage && !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded['wp:featuredmedia']) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded['wp:featuredmedia'][0].media_details)) {
        img = _embedded['wp:featuredmedia'][0].media_details.sizes[imageSize].source_url;
      }

      if (img != '') {
        return React.createElement("a", {
          onClick: e => e.preventDefault(),
          href: "#",
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-image`
        }, React.createElement("img", {
          src: img,
          alt: "featured iamge"
        }));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "meta", post => {
      const {
        _embedded,
        date_gmt
      } = post;
      const rb_cat = post['rise-blocks_categories'];
      const {
        attributes: {
          metaColor,
          enableDate,
          enableCategory,
          enableAuthor,
          metaTypo,
          categories
        }
      } = this.props;

      const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(metaTypo), {
        color: metaColor
      });

      let cat = '';

      if (Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(categories) && Array.isArray(rb_cat) && rb_cat.length) {
        cat = rb_cat[0].cat_name;
      } else {
        let i = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["findIndex"])(rb_cat, {
          term_id: parseInt(categories)
        });
        cat = rb_cat[i].cat_name;
      }

      const dateFormat = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__experimentalGetSettings"])().formats.date;

      if (enableAuthor || enableDate || enableCategory) {
        return React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-meta-wrapper`
        }, enableAuthor && _embedded && _embedded.author[0].avatar_urls && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-author meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#"
        }, React.createElement("img", {
          src: _embedded.author[0].avatar_urls['96'],
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-author-img`
        }), React.createElement("span", null, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["capitalize"])(_embedded.author[0].name)))), enableDate && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-post-date meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#"
        }, React.createElement("span", null, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["dateI18n"])(dateFormat, date_gmt)))), enableCategory && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-post-cat meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#"
        }, React.createElement("span", null, cat))));
      }
    });
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      attributes: {
        block_id
      }
    } = this.props;
    setAttributes({
      'block_id': `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      attributes: {
        alignment,
        perRow
      },
      setAttributes,
      latestPosts
    } = this.props;
    const hasPosts = Array.isArray(latestPosts) && latestPosts.length;

    if (!hasPosts) {
      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Placeholder"], {
        icon: "admin-post",
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Blog', 'rise-blocks')
      }, !Array.isArray(latestPosts) ? React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Spinner"], null) : Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('No posts found.', 'rise-blocks')));
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement("section", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-wrapper ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-item-${perRow}-per-row ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-align-${alignment}`
    }, latestPosts.map((post, i) => React.createElement("div", {
      key: i,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-card-wrapper`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-card`
    }, this.image(post), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-body`
    }, this.meta(post), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-blog-post-content`
    }, this.title(post, i), this.getExcerpt(post))))))), React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props));
  }

}

const applyWithSelect = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withSelect"])((select, {
  attributes
}) => {
  const {
    postsToShow,
    order,
    orderBy,
    categories
  } = attributes;
  const {
    getEntityRecords
  } = select('core');
  const latestPostsQuery = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["pickBy"])({
    categories,
    order,
    orderby: orderBy,
    per_page: postsToShow,
    _embed: true
  }, value => !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(value));
  return {
    latestPosts: getEntityRecords('postType', 'post', latestPostsQuery)
  };
});
/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["compose"])(applyWithSelect, _components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"], radium__WEBPACK_IMPORTED_MODULE_5__["default"])(Edit));

/***/ }),

/***/ "./src/blocks/blog/components/inspector.js":
/*!*************************************************!*\
  !*** ./src/blocks/blog/components/inspector.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/blocks/blog/constants.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");










class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super(props);
    this.state = {
      categoriesList: []
    };
  }

  componentDidMount() {
    const onGet = categoriesList => {
      this.setState({
        categoriesList
      });
    };

    const onError = () => {
      this.setState({
        categoriesList: []
      });
    };

    const CATEGORIES_LIST_QUERY = {
      per_page: -1
    };
    const params = {
      path: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["addQueryArgs"])(`/wp/v2/categories`, CATEGORIES_LIST_QUERY)
    };

    if (this.state.categoriesList.length == 0) {
      Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["apiFetch"])(params).then(onGet).catch(onError);
    }
  }

  render() {
    const {
      attributes: {
        order,
        orderBy,
        categories,
        postsToShow,
        titleTypo,
        contentTypo,
        metaTypo,
        enableTitle,
        enableContent,
        enableFullContent,
        enableCategory,
        enableAuthor,
        enableDate,
        enableImage,
        imageSize,
        titleColor,
        titleHoverColor,
        contentColor,
        metaColor,
        perRow,
        excerptLength
      },
      setAttributes,
      clientId
    } = this.props;
    const {
      categoriesList
    } = this.state;
    const titleColorData = {
      titleColor: {
        value: titleColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Normal', 'rise-blocks')
      },
      titleHoverColor: {
        value: titleHoverColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Hover', 'rise-blocks')
      }
    };
    const titleColorSetting = Object.keys(titleColorData).map(key => {
      const value = titleColorData[key].value;
      return {
        title: () => {
          return React.createElement("div", null, titleColorData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c
            })
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_7__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["QueryControls"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
      order,
      orderBy
    }, {
      categoriesList: categoriesList,
      selectedCategoryId: categories,
      numberOfItems: postsToShow,
      onCategoryChange: value => setAttributes({
        categories: '' !== value ? value : undefined
      }),
      maxItems: _components_wp__WEBPACK_IMPORTED_MODULE_1__["hooks"].applyFilters('riseBlocksBlogLimit', 5),
      onNumberOfItemsChange: value => setAttributes({
        postsToShow: value
      }),
      onOrderChange: value => setAttributes({
        order: value
      }),
      onOrderByChange: value => setAttributes({
        orderBy: value
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ItemPerRowControl"], {
      value: perRow,
      onChange: perRow => setAttributes({
        perRow: perRow
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Title', 'rise-blocks'),
      checked: enableTitle,
      onChange: enableTitle => {
        setAttributes({
          enableTitle
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Content in Frontend', 'rise-blocks'),
      checked: enableFullContent,
      onChange: enableFullContent => {
        setAttributes({
          enableFullContent
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Excerpt', 'rise-blocks'),
      checked: enableContent,
      onChange: enableContent => {
        setAttributes({
          enableContent
        });
      }
    }), enableContent && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ExcerptLengthControl"], {
      value: excerptLength,
      onChange: excerptLength => setAttributes({
        excerptLength
      })
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Category', 'rise-blocks'),
      checked: enableCategory,
      onChange: enableCategory => {
        setAttributes({
          enableCategory
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Author', 'rise-blocks'),
      checked: enableAuthor,
      onChange: enableAuthor => {
        setAttributes({
          enableAuthor
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Date', 'rise-blocks'),
      checked: enableDate,
      onChange: enableDate => {
        setAttributes({
          enableDate
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Image', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Featured Image', 'rise-blocks'),
      checked: enableImage,
      onChange: enableImage => {
        setAttributes({
          enableImage
        });
      }
    }), enableImage && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ImageSizeControl"], {
      value: imageSize,
      onChange: imageSize => {
        setAttributes({
          imageSize
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["def"].titleTypo,
      value: titleTypo,
      onChange: titleTypo => setAttributes({
        titleTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["def"].contentTypo,
      value: contentTypo,
      onChange: contentTypo => setAttributes({
        contentTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Meta', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["def"].metaTypo,
      value: metaTypo,
      onChange: metaTypo => setAttributes({
        metaTypo
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: [{
        value: contentColor,
        onChange: contentColor => setAttributes({
          contentColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content Color', 'rise-blocks')
      }, {
        value: metaColor,
        onChange: metaColor => setAttributes({
          metaColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Meta Color', 'rise-blocks')
      }]
    }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_6__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-blocks'),
      data: titleColorSetting
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (InspectorPanel);

/***/ }),

/***/ "./src/blocks/blog/constants.js":
/*!**************************************!*\
  !*** ./src/blocks/blog/constants.js ***!
  \**************************************/
/*! exports provided: def */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "def", function() { return def; });
const def = {
  titleTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 21,
        tablet: 18,
        mobile: 18
      }
    },
    fontWeight: 700,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  },
  contentTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 16,
        tablet: 16,
        mobile: 16
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.8,
        tablet: 1.8,
        mobile: 1.8
      }
    }
  },
  metaTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 12,
        tablet: 12,
        mobile: 12
      }
    },
    fontWeight: 200,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  }
};

/***/ }),

/***/ "./src/blocks/blog/index.js":
/*!**********************************!*\
  !*** ./src/blocks/blog/index.js ***!
  \**********************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/blog/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/blog/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/blog/components/edit.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Blog							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/






/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('blog', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Blog', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block will fetch five blog articles either all posts or by category and show it in a grid format.', 'rise-blocks'),
  keywords: ['blog'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].blog,
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],

  save() {
    return null;
  }

});

/***/ }),

/***/ "./src/blocks/blog/styles/editor.scss":
/*!********************************************!*\
  !*** ./src/blocks/blog/styles/editor.scss ***!
  \********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/blog/styles/style.scss":
/*!*******************************************!*\
  !*** ./src/blocks/blog/styles/style.scss ***!
  \*******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/buttons/attributes.js":
/*!******************************************!*\
  !*** ./src/blocks/buttons/attributes.js ***!
  \******************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/buttons/constants.js");

const attributes = {
  /* For editor only */
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  count: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].count
  },

  /* For editor and save */
  block_id: {
    type: 'string'
  },
  padding: {
    type: 'object'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/buttons/button/attributes.js":
/*!*************************************************!*\
  !*** ./src/blocks/buttons/button/attributes.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/buttons/button/constants.js");

const attributes = {
  /* EDIT ONLY ATTRIBUTES */
  block_id: {
    type: 'string'
  },
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  count: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].count
  },
  text: {
    type: 'string'
  },

  /* EDIT AND SAVE ATTRIBUTES */
  padding: {
    type: 'object'
  },
  margin: {
    type: 'object'
  },
  link: {
    type: 'string'
  },
  openInNewTab: {
    type: 'boolean'
  },
  enableIcon: {
    type: 'boolean'
  },
  icon: {
    type: 'object'
  },
  iconPosition: {
    type: 'string'
  },
  iconSize: {
    type: 'object'
  },
  typo: {
    type: 'object'
  },
  radius: {
    type: 'number'
  },
  buttonBackground: {
    type: 'string'
  },
  buttonHoverBackground: {
    type: 'string'
  },
  buttonHoverTextColor: {
    type: 'string'
  },
  buttonTextColor: {
    type: 'string'
  },
  border: {
    type: 'number'
  },
  borderColor: {
    type: 'string'
  },
  borderHoverColor: {
    type: 'string'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/buttons/button/components/edit.js":
/*!******************************************************!*\
  !*** ./src/blocks/buttons/button/components/edit.js ***!
  \******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inspector */ "./src/blocks/buttons/button/components/inspector.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/buttons/button/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }









class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  componentDidMount() {
    const {
      className,
      instanceId,
      setAttributes
    } = this.props;
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      setAttributes,
      className,
      clientId
    } = this.props;
    const {
      isInit,
      link,
      text,
      padding,
      margin,
      typo,
      radius,
      enableIcon,
      icon,
      iconSize,
      iconPosition,
      buttonBackground,
      buttonTextColor,
      buttonHoverBackground,
      buttonHoverTextColor
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_5__["editorNSaveAttrs"]);
      return null;
    }

    const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getDimensionStyle"])('padding', padding), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getDimensionStyle"])('margin', margin), {
      borderRadius: `${radius}px`,
      backgroundColor: buttonBackground,
      color: buttonTextColor,
      ':hover': {
        backgroundColor: buttonHoverBackground,
        color: buttonHoverTextColor
      }
    });

    let cls = className,
        iconStyle = {};

    if (enableIcon) {
      iconStyle = {
        fontSize: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconSize)
      };
      cls += ` ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-${iconPosition}`;
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null), React.createElement("a", {
      key: clientId,
      href: link,
      className: cls,
      style: style,
      onClick: e => e.preventDefault()
    }, enableIcon && React.createElement("i", {
      style: iconStyle,
      className: `fa ${icon.icon}`
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      value: text,
      style: _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getTypoStyle"])(typo)),
      withoutInteractiveFormatting: true,
      keepPlaceholderOnFocus: true,
      allowedFormats: ['core/bold', 'core/italic'],
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Button Text', 'rise-blocks'),
      onChange: text => setAttributes({
        text
      })
    })));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["compose"])(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"], radium__WEBPACK_IMPORTED_MODULE_7__["default"])(Edit));

/***/ }),

/***/ "./src/blocks/buttons/button/components/inspector.js":
/*!***********************************************************!*\
  !*** ./src/blocks/buttons/button/components/inspector.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../custom-control/icon-selector */ "./src/custom-control/icon-selector.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../constants */ "./src/blocks/buttons/button/constants.js");









class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      instanceId,
      setAttributes,
      attributes: {
        link,
        openInNewTab,
        radius,
        padding,
        margin,
        enableIcon,
        icon,
        iconSize,
        iconPosition,
        buttonBackground,
        buttonHoverBackground,
        buttonTextColor,
        buttonHoverTextColor,
        typo,
        border
      }
    } = this.props;
    const linkId = `rise-blocks-button__inline-link-${instanceId}`;
    const bgData = {
      buttonBackground: {
        value: buttonBackground,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
      },
      buttonHoverBackground: {
        value: buttonHoverBackground,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Hover', 'rise-blocks')
      }
    };
    const textData = {
      buttonTextColor: {
        value: buttonTextColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
      },
      buttonHoverTextColor: {
        value: buttonHoverTextColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Hover', 'rise-blocks')
      }
    };
    const ButtonBgSetting = Object.keys(bgData).map(key => {
      const value = bgData[key].value; //const def = defaultAttrs[key];

      return {
        title: () => {
          return React.createElement("div", null, bgData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c ? c : 'transparent'
            })
          });
        }
      };
    });
    const ButtonTextSetting = Object.keys(textData).map(key => {
      const value = textData[key].value;
      const def = _constants__WEBPACK_IMPORTED_MODULE_8__["defaultAttrs"][key];
      return {
        title: () => {
          return React.createElement("div", null, textData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c ? c : def
            })
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["RadiusControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Radius', 'rise-blocks'),
      value: radius,
      onChange: radius => setAttributes({
        radius
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["BaseControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Link', 'rise-blocks'),
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-button__inline-link`,
      id: link
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["URLInput"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-button__inline-link-input`,
      value: link
      /* eslint-disable jsx-a11y/no-autofocus */
      // Disable Reason: The rule is meant to prevent enabling auto-focus, not disabling it.
      ,
      autoFocus: false
      /* eslint-enable jsx-a11y/no-autofocus */
      ,
      onChange: link => setAttributes({
        link
      }),
      disableSuggestions: false,
      id: linkId,
      isFullWidth: true,
      hasBorder: true
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Open In New Tab', 'rise-blocks'),
      checked: openInNewTab,
      onChange: openInNewTab => {
        setAttributes({
          openInNewTab
        });
      }
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Use Icon', 'rise-blocks'),
      checked: enableIcon,
      onChange: enableIcon => {
        setAttributes({
          enableIcon
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BorderWidthControl"], {
      value: border,
      onChange: border => setAttributes({
        border
      })
    })), enableIcon && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Icon', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_3__["default"], {
      value: icon,
      icons: _constants__WEBPACK_IMPORTED_MODULE_2__["faIcons"],
      prefix: "fa",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Select an Icon', 'rise-blocks'),
      onChange: icon => setAttributes({
        icon
      })
    }), React.createElement("br", null), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Position', 'rise-blocks'),
      options: [{
        label: 'Left',
        value: 'left'
      }, {
        label: 'Right',
        value: 'right'
      }],
      value: iconPosition,
      onChange: iconPosition => setAttributes({
        iconPosition
      })
    }), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_6__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Size', 'rise-blocks'),
      beforeIcon: "",
      value: iconSize,
      onChange: iconSize => setAttributes({
        iconSize
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Text', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_8__["defaultAttrs"].typo,
      value: typo,
      onChange: typo => setAttributes({
        typo
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Padding', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_8__["defaultAttrs"].padding,
      value: padding,
      onChange: padding => setAttributes({
        padding
      })
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Margin', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_8__["defaultAttrs"].margin,
      value: margin,
      onChange: margin => setAttributes({
        margin
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Color', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_7__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Background', 'rise-blocks'),
      data: ButtonBgSetting
    }), React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_7__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Text Color', 'rise-blocks'),
      data: ButtonTextSetting
    })));
  }

}

/***/ }),

/***/ "./src/blocks/buttons/button/components/save.js":
/*!******************************************************!*\
  !*** ./src/blocks/buttons/button/components/save.js ***!
  \******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Save; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");


class Save extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      attributes
    } = this.props;
    const {
      block_id,
      text,
      enableIcon,
      icon,
      iconPosition,
      link,
      openInNewTab
    } = attributes;
    return React.createElement("a", {
      id: block_id,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-icon-${iconPosition}`,
      rel: "noopener noreferrer",
      href: link,
      target: openInNewTab ? '_blank' : ''
    }, enableIcon && React.createElement("i", {
      className: `fa ${icon.icon}`
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"].Content, {
      tagName: "span",
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-advanced-button-text`,
      value: text
    }));
  }

}

/***/ }),

/***/ "./src/blocks/buttons/button/constants.js":
/*!************************************************!*\
  !*** ./src/blocks/buttons/button/constants.js ***!
  \************************************************/
/*! exports provided: editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }

/* Editor only Attributes */
const editorAttrs = {
  count: 0,
  isInit: false
};
/* Editor And Save Attributes */

const editorNSaveAttrs = {
  padding: {
    activeUnit: 'px',
    isLinkActive: false,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: [15, 30, 15, 30],
      tablet: [15, 30, 15, 30],
      mobile: [15, 30, 15, 30]
    }
  },
  enableIcon: true,
  icon: {
    icon: "fa-apple",
    page: 2
  },
  iconPosition: 'left',
  iconSize: {
    activeUnit: "px",
    units: ['px'],
    range: {
      min: 1,
      max: 500
    },
    values: {
      desktop: 20,
      tablet: 20,
      mobile: 20
    }
  },
  margin: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: [0, 0, 0, 0],
      tablet: [0, 0, 0, 0],
      mobile: [0, 0, 0, 0]
    }
  },
  typo: {
    fontFamily: '',
    textTransform: 'initial',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 16,
        tablet: 16,
        mobile: 16
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.8,
        tablet: 1.8,
        mobile: 1.8
      }
    }
  },
  link: '#',
  openInNewTab: true,
  radius: 10,
  buttonBackground: '#000000',
  buttonHoverBackground: '#000000',
  buttonTextColor: '#ffffff',
  buttonHoverTextColor: '#ffffff',
  border: 0
};
const defaultAttrs = _objectSpread(_objectSpread({}, editorAttrs), editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/buttons/button/index.js":
/*!********************************************!*\
  !*** ./src/blocks/buttons/button/index.js ***!
  \********************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/buttons/button/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/buttons/button/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/buttons/button/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/save */ "./src/blocks/buttons/button/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./attributes */ "./src/blocks/buttons/button/attributes.js");








Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["register"])('button', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Button', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Advanced Button', 'rise-blocks'),
  keywords: ['button'],
  parent: ['rise-blocks/buttons'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].button,
  supports: {
    inserter: false
  },
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_6__["default"]
});

/***/ }),

/***/ "./src/blocks/buttons/button/styles/editor.scss":
/*!******************************************************!*\
  !*** ./src/blocks/buttons/button/styles/editor.scss ***!
  \******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/buttons/button/styles/style.scss":
/*!*****************************************************!*\
  !*** ./src/blocks/buttons/button/styles/style.scss ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/buttons/components/edit.js":
/*!***********************************************!*\
  !*** ./src/blocks/buttons/components/edit.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js");
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inspector */ "./src/blocks/buttons/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/buttons/constants.js");
/* harmony import */ var _components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/parent-block-selector */ "./src/components/parent-block-selector.js");









const buttonBlock = 'rise-blocks/button';
const ALLOWED_BLOCKS = [buttonBlock];
const getCount = memize__WEBPACK_IMPORTED_MODULE_2___default()(count => {
  return lodash_times__WEBPACK_IMPORTED_MODULE_3___default()(count, () => [buttonBlock]);
});

class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      className
    } = this.props;
    /*-------------------------------------------------------*  
    * Block_id must be  update on componentDidmount
    * otherwise we will get same block_id while duplicating
    * Blocks.( Parent BLocks)
    *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      className,
      isSelected,
      setAttributes
    } = this.props;
    let {
      count,
      isInit
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_7__["editorNSaveAttrs"]);
      return null;
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_5__["default"], this.props), React.createElement("div", {
      className: `${className}`
    }, React.createElement(_components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__["default"], {
      icon: "button",
      label: "Buttons"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"], {
      template: getCount(count),
      allowedBlocks: ALLOWED_BLOCKS
    })));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/buttons/components/inspector.js":
/*!****************************************************!*\
  !*** ./src/blocks/buttons/components/inspector.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/blocks/buttons/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");






const buttonBlock = 'rise-blocks/button';
class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      setAttributes,
      clientId,
      attributes: {
        padding,
        count
      }
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_5__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_1__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Padding', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_3__["defaultAttrs"].padding,
      value: padding,
      onChange: padding => setAttributes({
        padding
      })
    }), Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["shouldShowAddButton"])(clientId) && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["IconButton"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-add-new-item`,
      isLarge: true,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add Button', 'rise-blocks'),
      icon: "insert",
      onClick: () => {
        const created = Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["createBlock"])(buttonBlock);
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').insertBlock(created, undefined, clientId);
        setAttributes({
          count: count + 1
        });
      }
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add New Button', 'rise-blocks')), React.createElement("br", null)))));
  }

}

/***/ }),

/***/ "./src/blocks/buttons/components/save.js":
/*!***********************************************!*\
  !*** ./src/blocks/buttons/components/save.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");


const Save = props => {
  const {
    block_id
  } = props.attributes;
  return React.createElement("div", {
    id: block_id
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null));
};

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/buttons/constants.js":
/*!*****************************************!*\
  !*** ./src/blocks/buttons/constants.js ***!
  \*****************************************/
/*! exports provided: editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }

/* Default Attributes */
const editorAttrs = {
  isInit: false,
  count: 1
};
const editorNSaveAttrs = {
  padding: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: [15, 15, 15, 15],
      tablet: [15, 15, 15, 15],
      mobile: [15, 15, 15, 15]
    }
  }
};
const defaultAttrs = _objectSpread({}, editorAttrs, {}, editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/buttons/index.js":
/*!*************************************!*\
  !*** ./src/blocks/buttons/index.js ***!
  \*************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/buttons/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/buttons/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/buttons/components/save.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/buttons/components/edit.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./attributes */ "./src/blocks/buttons/attributes.js");
/* harmony import */ var _button__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./button */ "./src/blocks/buttons/button/index.js");








const example = {
  innerBlocks: [{
    name: "rise-blocks/button",
    attributes: {
      "margin": {
        "activeUnit": "px",
        "values": {
          "mobile": [0, 0, 0, 0],
          "tablet": [0, 0, 0, 0],
          "desktop": [0, 0, 0, 0]
        },
        "isLinkActive": true,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverBackground": "#000000",
      "padding": {
        "activeUnit": "px",
        "values": {
          "mobile": [15, 30, 15, 30],
          "tablet": [15, 30, 15, 30],
          "desktop": [15, 30, 15, 30]
        },
        "isLinkActive": false,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverTextColor": "#ffffff",
      "iconPosition": "left",
      "icon": {
        "icon": "fa-arrow-circle-o-down",
        "page": 2
      },
      "text": "Download",
      "isInit": true,
      "count": 0,
      "link": "#",
      "openInNewTab": true,
      "radius": 10,
      "buttonBackground": "#10c200",
      "block_id": "rise-blocks-wp-block-rise-blocks-button-0",
      "typo": {
        "fontSize": {
          "units": ["px", "em", "rem"],
          "activeUnit": "px",
          "values": {
            "mobile": 16,
            "tablet": 16,
            "desktop": 16
          }
        },
        "fontFamily": "",
        "textTransform": "initial",
        "lineHeight": {
          "units": [""],
          "activeUnit": "",
          "values": {
            "mobile": "1.8",
            "tablet": "1.8",
            "desktop": "1.8"
          }
        },
        "fontWeight": 400
      },
      "iconSize": {
        "units": ["px"],
        "activeUnit": "px",
        "values": {
          "mobile": 20,
          "tablet": 20,
          "desktop": 20
        },
        "range": {
          "max": 500,
          "min": 1
        }
      },
      "buttonTextColor": "#ffffff",
      "enableIcon": true
    }
  }, {
    name: "rise-blocks/button",
    attributes: {
      "margin": {
        "activeUnit": "px",
        "values": {
          "mobile": [0, 0, 0, 0],
          "tablet": [0, 0, 0, 0],
          "desktop": [0, 0, 0, 0]
        },
        "isLinkActive": true,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverBackground": "#000000",
      "padding": {
        "activeUnit": "px",
        "values": {
          "mobile": [15, 30, 15, 30],
          "tablet": [15, 30, 15, 30],
          "desktop": [15, 30, 15, 30]
        },
        "isLinkActive": false,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverTextColor": "#ffffff",
      "iconPosition": "left",
      "icon": {
        "icon": "fa-check-circle",
        "page": 9
      },
      "text": "Explore more",
      "isInit": true,
      "count": 0,
      "link": "#",
      "openInNewTab": true,
      "radius": 10,
      "buttonBackground": "#0693e3",
      "block_id": "rise-blocks-wp-block-rise-blocks-button-1",
      "typo": {
        "fontSize": {
          "units": ["px", "em", "rem"],
          "activeUnit": "px",
          "values": {
            "mobile": 16,
            "tablet": 16,
            "desktop": 16
          }
        },
        "fontFamily": "",
        "textTransform": "initial",
        "lineHeight": {
          "units": [""],
          "activeUnit": "",
          "values": {
            "mobile": "1.8",
            "tablet": "1.8",
            "desktop": "1.8"
          }
        },
        "fontWeight": 400
      },
      "iconSize": {
        "units": ["px"],
        "activeUnit": "px",
        "values": {
          "mobile": 20,
          "tablet": 20,
          "desktop": 20
        },
        "range": {
          "max": 500,
          "min": 1
        }
      },
      "buttonTextColor": "#ffffff",
      "enableIcon": true
    }
  }, {
    name: "rise-blocks/button",
    attributes: {
      "margin": {
        "activeUnit": "px",
        "values": {
          "mobile": [0, 0, 0, 0],
          "tablet": [0, 0, 0, 0],
          "desktop": [0, 0, 0, 0]
        },
        "isLinkActive": true,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverBackground": "#000000",
      "padding": {
        "activeUnit": "px",
        "values": {
          "mobile": [15, 30, 15, 30],
          "tablet": [15, 30, 15, 30],
          "desktop": [15, 30, 15, 30]
        },
        "isLinkActive": false,
        "responsiveViews": ["desktop", "tablet", "mobile"],
        "units": ["px", "rem"],
        "properties": ["top", "right", "bottom", "left"]
      },
      "buttonHoverTextColor": "#ffffff",
      "iconPosition": "left",
      "icon": {
        "icon": "fa-apple",
        "page": 2
      },
      "text": "Find us",
      "isInit": true,
      "count": 0,
      "link": "#",
      "openInNewTab": true,
      "radius": 10,
      "buttonBackground": "#eeeeee",
      "block_id": "rise-blocks-wp-block-rise-blocks-button-2",
      "typo": {
        "fontSize": {
          "units": ["px", "em", "rem"],
          "activeUnit": "px",
          "values": {
            "mobile": 16,
            "tablet": 16,
            "desktop": 16
          }
        },
        "fontFamily": "",
        "textTransform": "initial",
        "lineHeight": {
          "units": [""],
          "activeUnit": "",
          "values": {
            "mobile": "1.8",
            "tablet": "1.8",
            "desktop": "1.8"
          }
        },
        "fontWeight": 400
      },
      "iconSize": {
        "units": ["px"],
        "activeUnit": "px",
        "values": {
          "mobile": 20,
          "tablet": 20,
          "desktop": 20
        },
        "range": {
          "max": 500,
          "min": 1
        }
      },
      "buttonTextColor": "#000",
      "enableIcon": true
    }
  }]
};
Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('buttons', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Advanced Buttons', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Allow to add buttons', 'rise-blocks'),
  keywords: ['buttons', 'button'],
  example,
  supports: {
    align: ['left', 'center', 'right']
  },
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_4__["default"].button,
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_6__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});


/***/ }),

/***/ "./src/blocks/buttons/styles/editor.scss":
/*!***********************************************!*\
  !*** ./src/blocks/buttons/styles/editor.scss ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/buttons/styles/style.scss":
/*!**********************************************!*\
  !*** ./src/blocks/buttons/styles/style.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/call-to-action/attributes.js":
/*!*************************************************!*\
  !*** ./src/blocks/call-to-action/attributes.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/call-to-action/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  containerWidth: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].containerWidth
  },
  sectionBgImage: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].sectionBgImage
  },
  sectionBgPosition: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].sectionBgPosition
  },
  sectionOverlay: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].sectionOverlay
  },
  sectionBgAttachment: {
    type: 'boolean',
    default: false
  },
  sectionPadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].sectionPadding
  },
  titlePadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titlePadding
  },
  titleTag: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleTag
  },
  title: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].title
  },
  titleColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleColor
  },
  titleTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleTypography
  },
  lineColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].lineColor
  },
  bgType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].bgType
  },
  bgColor: {
    type: 'string'
  },
  buttonBodrderRadius: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonBodrderRadius
  },
  buttonText: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonText
  },
  buttonHoverTextColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonHoverTextColor
  },
  buttonTextColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonTextColor
  },
  buttonPadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonPadding
  },
  buttonBackground: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonBackground
  },
  buttonHoverBackground: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonHoverBackground
  },
  buttonTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonTypography
  },
  buttonLink: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].buttonLink
  },
  openIn: {
    type: 'boolean',
    default: true
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/call-to-action/components/edit.js":
/*!******************************************************!*\
  !*** ./src/blocks/call-to-action/components/edit.js ***!
  \******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inspector */ "./src/blocks/call-to-action/components/inspector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./render */ "./src/blocks/call-to-action/components/render.js");







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  componentDidMount() {
    const {
      attributes: {
        alignment
      },
      setAttributes,
      instanceId
    } = this.props;
    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-cta-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["uniqueId"])()}`
    });
  }

  render() {
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props), React.createElement(_render__WEBPACK_IMPORTED_MODULE_5__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props, {
      context: "edit"
    })));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["compose"])(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/call-to-action/components/inspector.js":
/*!***********************************************************!*\
  !*** ./src/blocks/call-to-action/components/inspector.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_image_control__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/image-control */ "./src/custom-control/image-control.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/call-to-action/constants.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");











const InspectorPanel = ({
  attributes: {
    sectionBgImage,
    sectionBgAttachment,
    sectionOverlay,
    sectionPadding,
    bgType,
    bgColor,
    titleTag,
    titleColor,
    titleTypography,
    titlePadding,
    lineColor,
    buttonLink,
    buttonBodrderRadius,
    buttonPadding,
    buttonTypography,
    buttonBackground,
    buttonTextColor,
    openIn,
    buttonHoverBackground,
    buttonHoverTextColor,
    containerWidth,
    enableShapeDivider
  },
  setAttributes,
  clientId
}) => {
  const bgData = {
    buttonBackground: {
      value: buttonBackground,
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
    },
    buttonHoverBackground: {
      value: buttonHoverBackground,
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Hover', 'rise-blocks')
    }
  };
  const textData = {
    buttonTextColor: {
      value: buttonTextColor,
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Normal', 'rise-blocks')
    },
    buttonHoverTextColor: {
      value: buttonHoverTextColor,
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Hover', 'rise-blocks')
    }
  };
  const ButtonBgSetting = Object.keys(bgData).map(key => {
    const value = bgData[key].value;
    return {
      title: () => {
        return React.createElement("div", null, bgData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
          colorValue: value
        }));
      },
      content: () => {
        return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
          value: value,
          hideIndicator: true,
          onChange: c => setAttributes({
            [key]: c
          })
        });
      }
    };
  });
  const ButtonTextSetting = Object.keys(textData).map(key => {
    const value = textData[key].value;
    return {
      title: () => {
        return React.createElement("div", null, textData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
          colorValue: value
        }));
      },
      content: () => {
        return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
          value: value,
          hideIndicator: true,
          onChange: c => setAttributes({
            [key]: c
          })
        });
      }
    };
  });
  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_9__["default"], {
    clientId: clientId
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
    initialOpen: true
  }, React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_7__["default"], {
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].containerWidth,
    beforeIcon: "",
    value: containerWidth,
    onChange: containerWidth => setAttributes({
      containerWidth
    }),
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Width', 'rise-blocks')
  }), React.createElement("br", null), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["HeadingTagControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title Tag', 'rise-blocks'),
    value: titleTag,
    onChange: titleTag => setAttributes({
      titleTag
    })
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Background', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BgControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Type', 'rise-blocks'),
    onChange: bgType => setAttributes({
      bgType
    }),
    value: bgType
  }), bgType == 'image' && React.createElement(_custom_control_image_control__WEBPACK_IMPORTED_MODULE_4__["default"], {
    onSelect: sectionBgImage => setAttributes({
      sectionBgImage
    }),
    value: sectionBgImage
  }), bgType == 'image' && sectionBgImage && sectionBgImage.url && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BackgroundPosition"], {
    onChange: sectionBgPosition => setAttributes({
      sectionBgPosition
    })
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["FixedBackgroundColor"], {
    checked: sectionBgAttachment,
    onChange: sectionBgAttachment => setAttributes({
      sectionBgAttachment
    })
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BackgroundOverlayControl"], {
    value: sectionOverlay,
    onChange: sectionOverlay => setAttributes({
      sectionOverlay
    })
  })), bgType == 'color' && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
    value: bgColor,
    hideIndicator: true,
    onChange: bgColor => setAttributes({
      bgColor
    })
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Border Radius', 'rise-blocks'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].buttonBodrderRadius,
    value: buttonBodrderRadius,
    onChange: buttonBodrderRadius => setAttributes({
      buttonBodrderRadius
    })
  }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["TextControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Link', 'rise-blocks'),
    value: buttonLink,
    placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Link', 'rise-blocks'),
    onChange: buttonLink => {
      setAttributes({
        buttonLink
      });
    }
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Open in New Tab', 'rise-blocks'),
    checked: openIn,
    onChange: openIn => setAttributes({
      openIn
    })
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Typography', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_6__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].titleTypography,
    value: titleTypography,
    onChange: titleTypography => setAttributes({
      titleTypography
    })
  }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_6__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].buttonTypography,
    value: buttonTypography,
    onChange: buttonTypography => setAttributes({
      buttonTypography
    })
  })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["PanelColor"], {
    colorSettings: [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title color'),
      value: titleColor,
      onChange: titleColor => setAttributes({
        titleColor
      })
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Line Color'),
      value: lineColor,
      onChange: lineColor => setAttributes({
        lineColor
      })
    }]
  }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_8__["default"], {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tabbed-color-control`,
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Background', 'rise-blocks'),
    data: ButtonBgSetting
  }), React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_8__["default"], {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tabbed-color-control`,
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button Text Color', 'rise-blocks'),
    data: ButtonTextSetting
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Spacing', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Section (Padding)', 'rise-blocks'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].sectionPadding,
    value: sectionPadding,
    onChange: sectionPadding => setAttributes({
      sectionPadding
    })
  }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title (Padding)', 'rise-blocks'),
    value: titlePadding,
    onChange: titlePadding => setAttributes({
      titlePadding
    })
  }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Button (Padding)', 'rise-blocks'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].buttonPadding,
    value: buttonPadding,
    onChange: buttonPadding => setAttributes({
      buttonPadding
    })
  }))));
};

/* harmony default export */ __webpack_exports__["default"] = (InspectorPanel);

/***/ }),

/***/ "./src/blocks/call-to-action/components/render.js":
/*!********************************************************!*\
  !*** ./src/blocks/call-to-action/components/render.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/call-to-action/constants.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







const Render = props => {
  const {
    attributes: {
      sectionBgImage,
      sectionBgPosition,
      sectionBgAttachment,
      sectionOverlay,
      sectionPadding,
      titleTag,
      title,
      titleColor,
      titleTypography,
      titlePadding,
      lineColor,
      bgType,
      bgColor,
      buttonBodrderRadius,
      buttonPadding,
      buttonText,
      buttonBackground,
      buttonTypography,
      buttonTextColor,
      buttonLink,
      openIn,
      buttonHoverBackground,
      buttonHoverTextColor,
      block_id,
      containerWidth
    },
    setAttributes,
    context = 'edit'
  } = props;

  const btnStyle = _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], buttonPadding)), Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getDimensionStyle"])(['borderTopLeftRadius', 'borderTopRightRadius', 'borderBottomRightRadius', 'borderBottomLeftRadius'], buttonBodrderRadius)), Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getTypoStyle"])(buttonTypography)), {}, {
    backgroundColor: buttonBackground,
    color: buttonTextColor,
    ':hover': {
      backgroundColor: buttonHoverBackground,
      color: buttonHoverTextColor
    }
  });

  const sectionStyle = context == 'edit' ? _objectSpread(_objectSpread({
    backgroundPosition: sectionBgPosition
  }, Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], sectionPadding)), {}, {
    backgroundAttachment: sectionBgAttachment ? 'fixed' : ''
  }) : {};

  if (context === 'edit' && bgType == 'image' && sectionBgImage && sectionBgImage.url) {
    sectionStyle.backgroundImage = `url(${sectionBgImage.url})`;
  }

  const titleWrapperStyle = context == 'edit' ? _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], titlePadding)) : {};
  const titleStyle = context == 'edit' ? _objectSpread(_objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["getTypoStyle"])(titleTypography)), {}, {
    color: titleColor
  }) : {};
  const overlayStyle = context == 'edit' ? {
    backgroundColor: bgType == 'color' ? bgColor : sectionOverlay
  } : {};
  const contentStyle = context == 'edit' ? {
    maxWidth: containerWidth.values.desktop + containerWidth.activeUnit
  } : {};
  const titleLineStyle = {
    backgroundColor: lineColor
  };
  return (
    /*#__PURE__*/
    React.createElement("section", {
      id: block_id,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-wrapper`,
      style: sectionStyle
    },
    /*#__PURE__*/
    React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-overlay`,
      style: overlayStyle
    }),
    /*#__PURE__*/
    React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-content`,
      style: contentStyle
    },
    /*#__PURE__*/
    React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-title-wrapper`,
      style: titleWrapperStyle
    }, context === 'edit' ?
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null,
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      style: titleStyle,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-title`,
      tagName: titleTag,
      value: title,
      placeholder: _constants__WEBPACK_IMPORTED_MODULE_5__["default"].titlePlaceholder,
      keepPlaceholderOnFocus: true,
      onChange: title => setAttributes({
        title
      })
    }),
    /*#__PURE__*/
    React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-title-line`,
      style: titleLineStyle
    })) :
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null,
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-title`,
      tagName: titleTag,
      value: title
    }),
    /*#__PURE__*/
    React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-title-line`
    }))),
    /*#__PURE__*/
    React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-btn-wrapper`
    }, context === 'edit' ?
    /*#__PURE__*/
    React.createElement("a", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-btn`,
      href: buttonLink,
      style: btnStyle,
      target: openIn ? '_blank' : '',
      onClick: e => e.preventDefault()
    },
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      value: buttonText,
      keepPlaceholderOnFocus: true,
      onChange: buttonText => setAttributes({
        buttonText
      })
    })) :
    /*#__PURE__*/
    React.createElement("a", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-cta-btn`,
      href: buttonLink,
      target: openIn ? '_blank' : '',
      rel: "noopener noreferrer"
    },
    /*#__PURE__*/
    React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
      value: buttonText
    })))))
  );
};

/* harmony default export */ __webpack_exports__["default"] = (Object(radium__WEBPACK_IMPORTED_MODULE_4__["default"])(Render));

/***/ }),

/***/ "./src/blocks/call-to-action/components/save.js":
/*!******************************************************!*\
  !*** ./src/blocks/call-to-action/components/save.js ***!
  \******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./render */ "./src/blocks/call-to-action/components/render.js");



const Save = props => React.createElement(_render__WEBPACK_IMPORTED_MODULE_1__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, props, {
  context: "save"
}));

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/call-to-action/constants.js":
/*!************************************************!*\
  !*** ./src/blocks/call-to-action/constants.js ***!
  \************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../constants */ "./src/constants.js");


const defaultSectionPadding = {
  activeUnit: 'px',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['100', '40', '100', '40'],
    tablet: ['100', '40', '100', '40'],
    mobile: ['100', '40', '100', '40']
  }
};
const defaultTitleTypography = {
  fontFamily: 'Lato',
  fontSize: {
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    values: {
      desktop: 42,
      tablet: 42,
      mobile: 42
    }
  },
  fontWeight: 700,
  lineHeight: {
    activeUnit: '',
    units: [''],
    values: {
      desktop: 1.2,
      tablet: 1.2,
      mobile: 1.2
    }
  }
};
const defaultTitlePadding = {
  activeUnit: 'px',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['0', '0', '0', '0'],
    tablet: ['0', '0', '0', '0'],
    mobile: ['0', '0', '0', '0']
  }
};
const defaultButtonPadding = {
  activeUnit: 'px',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['14', '30', '14', '30'],
    tablet: ['14', '30', '14', '30'],
    mobile: ['14', '30', '14', '30']
  }
};
const defaultButtonRadius = {
  activeUnit: 'px',
  isLinkActive: true,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop'],
  units: ['px'],
  values: {
    desktop: [0, 0, 0, 0],
    tablet: [0, 0, 0, 0],
    mobile: [0, 0, 0, 0]
  }
};
const defaultButtonTypography = {
  fontFamily: 'Lato',
  fontSize: {
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    values: {
      desktop: 16,
      tablet: 16,
      mobile: 16
    }
  },
  fontWeight: 400,
  lineHeight: {
    activeUnit: '',
    units: [''],
    values: {
      desktop: 1.2,
      tablet: 1.2,
      mobile: 1.2
    }
  }
};
const defaults = {
  containerWidth: _constants__WEBPACK_IMPORTED_MODULE_1__["containerWidth"],
  sectionOverlay: 'rgba(233, 233, 233, 0.5)',
  sectionPadding: defaultSectionPadding,
  sectionBgImage: {
    sizes: 'full',
    image: undefined
  },
  sectionBgPosition: '',
  title: '',
  titlePlaceholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add Title', 'rise-blocks'),
  titleTag: 'h2',
  titleColor: 'rgb(0, 0, 0)',
  titleTypography: defaultTitleTypography,
  lineColor: '#000',
  bgType: 'image',
  buttonText: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Buy Now', 'rise-blocks'),
  buttonTextColor: '#fff',
  buttonHoverTextColor: '#fff',
  buttonPadding: defaultButtonPadding,
  buttonLink: '#',
  buttonBackground: '#000',
  buttonHoverBackground: '#000',
  buttonTypography: defaultButtonTypography,
  buttonBodrderRadius: defaultButtonRadius,
  titlePadding: defaultTitlePadding
};
/* harmony default export */ __webpack_exports__["default"] = (defaults);

/***/ }),

/***/ "./src/blocks/call-to-action/index.js":
/*!********************************************!*\
  !*** ./src/blocks/call-to-action/index.js ***!
  \********************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/call-to-action/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/call-to-action/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/call-to-action/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/save */ "./src/blocks/call-to-action/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./attributes */ "./src/blocks/call-to-action/attributes.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Post Slider							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/








/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

const example = {
  "attributes": {
    "containerWidth": {
      "activeUnit": "px",
      "units": ["px"],
      "range": {
        "min": 1,
        "max": 2000
      },
      "values": {
        "desktop": 1140,
        "tablet": 720,
        "mobile": 540
      }
    },
    "sectionBgImage": {
      "size": "full",
      "id": 1112,
      "alt": "",
      "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280.jpg",
      "height": 854,
      "width": 1280,
      "sizes": {
        "thumbnail": {
          "height": 854,
          "width": 1024,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-1024x854.jpg",
          "orientation": "landscape"
        },
        "medium": {
          "height": 200,
          "width": 300,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-300x200.jpg",
          "orientation": "landscape"
        },
        "large": {
          "height": 494,
          "width": 740,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-1024x683.jpg",
          "orientation": "landscape"
        },
        "full": {
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280.jpg",
          "height": 854,
          "width": 1280,
          "orientation": "landscape"
        },
        "medium_large": {
          "height": 512,
          "width": 768,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-768x512.jpg",
          "orientation": "landscape"
        },
        "post-thumbnail": {
          "height": 680,
          "width": 680,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-680x680.jpg",
          "orientation": "landscape"
        },
        "checathlon-singular": {
          "height": 827,
          "width": 1240,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-1240x827.jpg",
          "orientation": "landscape"
        },
        "checathlon-product": {
          "height": 721,
          "width": 1080,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-1080x721.jpg",
          "orientation": "landscape"
        },
        "checathlon-team": {
          "height": 720,
          "width": 1020,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-1020x720.jpg",
          "orientation": "landscape"
        },
        "checathlon-small": {
          "height": 200,
          "width": 200,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-200x200.jpg",
          "orientation": "landscape"
        },
        "sl-small": {
          "height": 128,
          "width": 128,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-128x128.jpg",
          "orientation": "landscape"
        },
        "sl-large": {
          "height": 256,
          "width": 256,
          "url": "https://risethemes.com/wp-content/uploads/2019/08/joy-2483926_1280-256x256.jpg",
          "orientation": "landscape"
        }
      }
    },
    "sectionBgPosition": "",
    "sectionOverlay": "rgba(0, 0, 0, 0.5 )",
    "sectionBgAttachment": false,
    "sectionPadding": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": [150, "40", 150, "40"],
        "tablet": ["100", "40", "100", "40"],
        "mobile": ["100", "40", "100", "40"]
      }
    },
    "titlePadding": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": ["0", "0", "0", "0"],
        "tablet": ["0", "0", "0", "0"],
        "mobile": ["0", "0", "0", "0"]
      }
    },
    "titleTag": "h2",
    "title": "Quisque",
    "titleColor": "#ffffff",
    "titleTypography": {
      "fontFamily": "Lato",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "px",
        "values": {
          "desktop": 50,
          "tablet": 42,
          "mobile": 42
        },
        "range": {
          "min": 0,
          "max": 100
        }
      },
      "fontWeight": 700,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.2",
          "tablet": "1.2",
          "mobile": "1.2"
        }
      }
    },
    "lineColor": "#ffffff",
    "bgType": "image",
    "buttonBodrderRadius": {
      "activeUnit": "px",
      "isLinkActive": true,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop"],
      "units": ["px"],
      "values": {
        "desktop": [0, 0, 0, 0],
        "tablet": [0, 0, 0, 0],
        "mobile": [0, 0, 0, 0]
      }
    },
    "buttonText": "More",
    "buttonHoverTextColor": "#fff",
    "buttonTextColor": "#fff",
    "buttonPadding": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": [20, 35, 20, 40],
        "tablet": ["14", "30", "14", "30"],
        "mobile": ["14", "30", "14", "30"]
      }
    },
    "buttonBackground": "#1070a8",
    "buttonHoverBackground": "#105f8d",
    "buttonTypography": {
      "fontFamily": "Lato",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "px",
        "values": {
          "desktop": 18,
          "tablet": 16,
          "mobile": 16
        },
        "range": {
          "min": 0,
          "max": 100
        }
      },
      "fontWeight": 400,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.2",
          "tablet": "1.2",
          "mobile": "1.2"
        }
      }
    },
    "buttonLink": "#",
    "openIn": true
  }
};
Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('call-to-action', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Call To Action', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block helps to make attractive call to action section with customized background image and button.', 'rise-blocks'),
  keywords: ['call to action'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].callToAction,
  example,
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_6__["default"],
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_7__["default"]
});

/***/ }),

/***/ "./src/blocks/call-to-action/styles/editor.scss":
/*!******************************************************!*\
  !*** ./src/blocks/call-to-action/styles/editor.scss ***!
  \******************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/call-to-action/styles/style.scss":
/*!*****************************************************!*\
  !*** ./src/blocks/call-to-action/styles/style.scss ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/carousel-post/components/edit.js":
/*!*****************************************************!*\
  !*** ./src/blocks/carousel-post/components/edit.js ***!
  \*****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inspector */ "./src/blocks/carousel-post/components/inspector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");
/* harmony import */ var react_slick__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react-slick */ "./node_modules/react-slick/lib/index.js");
/* harmony import */ var react_slick__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react_slick__WEBPACK_IMPORTED_MODULE_7__);



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }








class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  constructor() {
    super();

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "title", ({
      title
    }, i) => {
      const {
        attributes: {
          enableTitle,
          titleTypo,
          color
        }
      } = this.props;

      if (enableTitle) {
        const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getTypoStyle"])(titleTypo), {
          color: color
        });

        return React.createElement("h2", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-post-title`
        }, React.createElement("a", {
          key: i,
          onClick: e => e.preventDefault(),
          href: "#",
          style: style
        }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["decodeEntities"])(title.rendered.trim()) || Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('(Untitled)', 'rise-blocks')));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "getImgUrl", ({
      _embedded
    }) => {
      const {
        attributes: {
          imageSize
        }
      } = this.props;
      let img = '';

      if (!Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["isUndefined"])(_embedded) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["isUndefined"])(_embedded['wp:featuredmedia']) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["isUndefined"])(_embedded['wp:featuredmedia'][0].media_details)) {
        var size = _embedded['wp:featuredmedia'][0].media_details.sizes;

        if (size[imageSize]) {
          img = size[imageSize] ? size[imageSize].source_url : '';
        } else {
          img = size['full'] ? size['full'].source_url : '';
        }
      }

      return img;
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "meta", post => {
      const {
        _embedded,
        date_gmt
      } = post;
      const {
        attributes: {
          color,
          enableDate,
          enableAuthor,
          metaTypo
        }
      } = this.props;

      const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getTypoStyle"])(metaTypo), {
        color: color
      });

      const dateFormat = Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__experimentalGetSettings"])().formats.date;

      if (enableAuthor || enableDate) {
        return React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-meta-wrapper`
        }, enableAuthor && _embedded && _embedded.author[0].avatar_urls && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-author meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#",
          title: Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["capitalize"])(_embedded.author[0].name)
        }, React.createElement("i", {
          className: "fa fa-user"
        }), " ", _embedded.author[0].name)), enableDate && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-post-date meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#"
        }, React.createElement("span", null, React.createElement("i", {
          className: "fa fa-calendar"
        }), " ", Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["dateI18n"])(dateFormat, date_gmt)))));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "getSettings", length => {
      const {
        arrowColor,
        arrowBgColor,
        slidesToShow = 3
      } = this.props.attributes;

      const onEnter = type => {
        return e => this.setState(prev => {
          let temp = prev.hover;
          temp[type] = true;
          return {
            hover: temp
          };
        });
      };

      const onLeave = type => {
        return e => this.setState(prev => {
          let temp = prev.hover;
          temp[type] = false;
          return {
            hover: temp
          };
        });
      };

      const buttonStyle = {
        backgroundColor: arrowBgColor,
        color: arrowColor
      };

      const Next = () => {
        return React.createElement("button", {
          onMouseEnter: onEnter('next'),
          onMouseLeave: onLeave('next'),
          onClick: e => this.slider.slickNext(),
          type: "button",
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-next-arrow ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-slider-arrow`,
          style: buttonStyle
        }, React.createElement("i", {
          className: "fa fa-angle-right"
        }));
      };

      const Prev = () => {
        return React.createElement("button", {
          onMouseEnter: onEnter('prev'),
          onMouseLeave: onLeave('prev'),
          onClick: e => this.slider.slickPrev(),
          style: buttonStyle,
          type: "button",
          className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-prev-arrow ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-slider-arrow`
        }, React.createElement("i", {
          className: "fa fa-angle-left"
        }));
      };

      const settings = {
        slidesToShow: length > slidesToShow ? slidesToShow : length,
        slidesToScroll: 1,
        autoplay: false,
        infinite: true,
        arrows: true,
        dots: false,
        nextArrow: React.createElement(Next, null),
        prevArrow: React.createElement(Prev, null),
        responsive: [{
          breakpoint: 767,
          settings: {
            slidesToShow: 1
          }
        }]
      };
      return settings;
    });

    this.state = {
      hover: {
        next: false,
        prev: false
      }
    };
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      attributes: {
        block_id
      }
    } = this.props;
    setAttributes({
      'block_id': `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      attributes: {
        alignment,
        padding,
        enableCategory,
        categories,
        metaTypo,
        headingTypo,
        bgColor,
        color = '#ffffff',
        title
      },
      setAttributes,
      latestPosts
    } = this.props;
    const hasPosts = Array.isArray(latestPosts) && latestPosts.length;

    if (!hasPosts) {
      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Placeholder"], {
        icon: "admin-post",
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('News 1', 'rise-blocks')
      }, !Array.isArray(latestPosts) ? React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Spinner"], null) : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('No posts found.', 'rise-blocks')));
    }

    const settings = this.getSettings(latestPosts.length);
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement("section", {
      style: _objectSpread({
        backgroundColor: bgColor
      }, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getDimensionStyle"])('padding', padding)),
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-wrapper`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RichText"], {
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Title', 'rise-blocks'),
      tag: "h2",
      style: _objectSpread({
        color,
        textAlign: 'left'
      }, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getTypoStyle"])(headingTypo)),
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-title`,
      keepPlaceholderOnFocus: true,
      value: title,
      onChange: title => setAttributes({
        title
      })
    }), React.createElement(react_slick__WEBPACK_IMPORTED_MODULE_7___default.a, _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-align-${alignment}`,
      ref: slider => this.slider = slider
    }, settings), latestPosts.map((post, i) => {
      let style = {
        backgroundImage: 'url(' + this.getImgUrl(post) + ')'
      };
      let rb_cat = post['rise-blocks_categories'];
      let cat = '';

      if (Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["isUndefined"])(categories) && Array.isArray(rb_cat) && rb_cat.length) {
        cat = rb_cat[0].cat_name;
      } else {
        let i = Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["findIndex"])(rb_cat, {
          term_id: parseInt(categories)
        });
        cat = rb_cat[i].cat_name;
      }

      let catStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getTypoStyle"])(metaTypo), {
        color: color
      });

      return React.createElement("div", {
        key: i,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-card-wrapper`
      }, React.createElement("div", null, React.createElement("div", {
        style: style,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-card-image`
      })), React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-card`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-body`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-body-inner`
      }, enableCategory && React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-news-2-post-cat meta-content`
      }, React.createElement("a", {
        onClick: e => e.preventDefault(),
        style: catStyle,
        href: "#"
      }, React.createElement("span", null, cat), React.createElement("span", {
        className: "line",
        style: {
          backgroundColor: color
        }
      }))), this.title(post, i), this.meta(post)))));
    }))), React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props));
  }

}

const applyWithSelect = Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["withSelect"])((select, {
  attributes
}) => {
  const {
    postsToShow,
    order,
    orderBy,
    categories
  } = attributes;
  const {
    getEntityRecords
  } = select('core');
  const latestPostsQuery = Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["pickBy"])({
    categories,
    order,
    orderby: orderBy,
    per_page: postsToShow,
    _embed: true
  }, value => !Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["isUndefined"])(value));
  return {
    latestPosts: getEntityRecords('postType', 'post', latestPostsQuery)
  };
});
/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["compose"])(applyWithSelect, _components_wp__WEBPACK_IMPORTED_MODULE_2__["withInstanceId"], radium__WEBPACK_IMPORTED_MODULE_6__["default"])(Edit));

/***/ }),

/***/ "./src/blocks/carousel-post/components/inspector.js":
/*!**********************************************************!*\
  !*** ./src/blocks/carousel-post/components/inspector.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/carousel-post/constants.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");











class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super(props);
    this.state = {
      categoriesList: []
    };
  }

  componentDidMount() {
    const onGet = categoriesList => {
      this.setState({
        categoriesList
      });
    };

    const onError = () => {
      this.setState({
        categoriesList: []
      });
    };

    const CATEGORIES_LIST_QUERY = {
      per_page: -1
    };
    const params = {
      path: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["addQueryArgs"])(`/wp/v2/categories`, CATEGORIES_LIST_QUERY)
    };

    if (this.state.categoriesList.length == 0) {
      Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["apiFetch"])(params).then(onGet).catch(onError);
    }
  }

  render() {
    const {
      attributes: {
        order,
        orderBy,
        categories,
        postsToShow,
        headingTypo,
        titleTypo,
        metaTypo,
        enableTitle,
        enableCategory,
        enableAuthor,
        enableDate,
        enableImage,
        imageSize,
        color,
        bgColor,
        padding,
        arrowBgColor,
        arrowColor,
        slidesToShow
      },
      setAttributes,
      clientId
    } = this.props;
    const {
      categoriesList
    } = this.state;
    const bgData = {
      arrowBgColor: {
        value: arrowBgColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Bg', 'rise-blocks')
      },
      arrowColor: {
        value: arrowColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Arrow', 'rise-blocks')
      }
    };
    const ButtonBgSetting = Object.keys(bgData).map(key => {
      const value = bgData[key].value; //const def = defaultAttrs[key];

      return {
        title: () => {
          return React.createElement("div", null, bgData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c ? c : 'transparent'
            })
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_8__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["QueryControls"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
      order,
      orderBy
    }, {
      categoriesList: categoriesList,
      selectedCategoryId: categories,
      numberOfItems: postsToShow,
      onCategoryChange: value => setAttributes({
        categories: '' !== value ? value : undefined
      }),
      maxItems: _components_wp__WEBPACK_IMPORTED_MODULE_1__["hooks"].applyFilters('riseBlocksNews2Limit', 5),
      onNumberOfItemsChange: value => setAttributes({
        postsToShow: value
      }),
      onOrderChange: value => setAttributes({
        order: value
      }),
      onOrderByChange: value => setAttributes({
        orderBy: value
      })
    }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Slider', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Slides To Show', 'rise-blocks'),
      allowReset: true,
      min: 1,
      max: 4,
      value: slidesToShow,
      initialPosition: 3,
      onChange: slidesToShow => {
        setAttributes({
          slidesToShow
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Title', 'rise-blocks'),
      checked: enableTitle,
      onChange: enableTitle => {
        setAttributes({
          enableTitle
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Category', 'rise-blocks'),
      checked: enableCategory,
      onChange: enableCategory => {
        setAttributes({
          enableCategory
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Author', 'rise-blocks'),
      checked: enableAuthor,
      onChange: enableAuthor => {
        setAttributes({
          enableAuthor
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Date', 'rise-blocks'),
      checked: enableDate,
      onChange: enableDate => {
        setAttributes({
          enableDate
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Image', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ImageSizeControl"], {
      value: imageSize,
      onChange: imageSize => {
        setAttributes({
          imageSize
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Heading', 'rise-block'),
      value: headingTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].headingTypo,
      onChange: headingTypo => setAttributes({
        headingTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-block'),
      value: titleTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].titleTypo,
      onChange: titleTypo => setAttributes({
        titleTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Meta', 'rise-block'),
      value: metaTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].metaTypo,
      onChange: metaTypo => setAttributes({
        metaTypo
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_6__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Padding', 'rise-block'),
      value: padding,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].padding,
      onChange: padding => setAttributes({
        padding
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: [{
        value: color,
        onChange: color => setAttributes({
          color
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Text Color', 'rise-blocks')
      }, {
        value: bgColor,
        onChange: bgColor => setAttributes({
          bgColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Background Color', 'rise-blocks')
      }]
    }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_5__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Arrow Color', 'rise-blocks'),
      data: ButtonBgSetting
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (InspectorPanel);

/***/ }),

/***/ "./src/blocks/carousel-post/constants.js":
/*!***********************************************!*\
  !*** ./src/blocks/carousel-post/constants.js ***!
  \***********************************************/
/*! exports provided: def */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "def", function() { return def; });
const def = {
  headingTypo: {
    fontFamily: 'Roboto',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 20,
        tablet: 20,
        mobile: 20
      }
    },
    fontWeight: 700,
    textTransform: 'uppercase',
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  },
  titleTypo: {
    fontFamily: 'Roboto',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 20,
        tablet: 20,
        mobile: 20
      }
    },
    fontWeight: 500,
    lineHeight: {
      activeUnit: 'px',
      units: ['px'],
      values: {
        desktop: '28',
        tablet: '28',
        mobile: '28'
      }
    }
  },
  metaTypo: {
    fontFamily: 'Roboto',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 12,
        tablet: 12,
        mobile: 12
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  },
  padding: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: [20, 20, 20, 20],
      tablet: [20, 20, 20, 20],
      mobile: [20, 20, 20, 20]
    }
  }
};

/***/ }),

/***/ "./src/blocks/carousel-post/index.js":
/*!*******************************************!*\
  !*** ./src/blocks/carousel-post/index.js ***!
  \*******************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/carousel-post/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/carousel-post/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/carousel-post/components/edit.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Blog							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/






/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('carousel-post', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Carousel Post', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block enables blog articles either all posts or by category to create a grid layout for Magazine or Blogging websites in a few seconds.', 'rise-blocks'),
  keywords: ['news'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].news2,
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],

  save() {
    return null;
  }

});

/***/ }),

/***/ "./src/blocks/carousel-post/styles/editor.scss":
/*!*****************************************************!*\
  !*** ./src/blocks/carousel-post/styles/editor.scss ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/carousel-post/styles/style.scss":
/*!****************************************************!*\
  !*** ./src/blocks/carousel-post/styles/style.scss ***!
  \****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/counter/attributes.js":
/*!******************************************!*\
  !*** ./src/blocks/counter/attributes.js ***!
  \******************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/counter/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  sectionPadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["def"].sectionPadding
  },
  count: {
    type: 'number',
    default: 3
  },
  itemsPerRow: {
    type: 'number',
    default: 3
  },
  itemsBorderRadius: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["def"].itemsBorderRadius
  },
  content: {
    type: 'array',
    default: []
  },
  numberTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["def"].numberTypography
  },
  numberColor: {
    type: 'string',
    default: '#000'
  },
  textTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["def"].textTypography
  },
  textMargin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["def"].textMargin
  },
  boxBackgroundColor: {
    type: 'string',
    default: '#fff'
  },
  textColor: {
    type: 'string',
    default: '#000'
  },
  lineColor: {
    type: 'string',
    default: '#000'
  },
  lineWidth: {
    type: 'number',
    default: 30
  },
  lineHeight: {
    type: 'number',
    default: 2
  },
  enableShadow: {
    type: 'boolean',
    default: true
  },
  enableBorder: {
    type: 'boolean',
    default: false
  },
  showPlusIcon: {
    type: 'boolean',
    default: false
  },
  enableLine: {
    type: 'boolean',
    default: true
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/counter/components/edit.js":
/*!***********************************************!*\
  !*** ./src/blocks/counter/components/edit.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inspector */ "./src/blocks/counter/components/inspector.js");
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./render */ "./src/blocks/counter/components/render.js");



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_3__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "updateContent", (i, key, data) => {
      const {
        attributes: {
          count,
          content
        },
        setAttributes
      } = this.props;

      const getUpdatedData = () => Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getArray"])(count, {}).map((obj, index) => index === i ? _objectSpread({}, content[i], {
        [key]: data
      }) : content[index] ? content[index] : obj);

      setAttributes({
        content: getUpdatedData()
      });
    });
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId
    } = this.props;
    const block_id = `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-counter-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["uniqueId"])()}`;
    setAttributes({
      block_id
    });
  }

  render() {
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_5__["default"], this.props), React.createElement(_render__WEBPACK_IMPORTED_MODULE_6__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props, {
      context: "edit",
      updateContent: this.updateContent
    })));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/counter/components/inspector.js":
/*!****************************************************!*\
  !*** ./src/blocks/counter/components/inspector.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/counter/constants.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");







class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "limit", _components_wp__WEBPACK_IMPORTED_MODULE_1__["hooks"].applyFilters('riseBlocksCounterLimit', 4));
  }

  render() {
    const {
      attributes: {
        count,
        itemsPerRow,
        enableShadow,
        enableBorder,
        enableLine,
        numberTypography,
        textTypography,
        sectionPadding,
        textMargin,
        numberColor,
        textColor,
        lineColor,
        boxBackgroundColor,
        lineWidth,
        itemsBorderRadius,
        showPlusIcon,
        lineHeight
      },
      setAttributes,
      clientId
    } = this.props;
    let colorSettings = [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Box Background Color', 'rise-blocks'),
      value: boxBackgroundColor,
      onChange: boxBackgroundColor => setAttributes({
        boxBackgroundColor
      })
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Number Color', 'rise-blocks'),
      value: numberColor,
      onChange: numberColor => setAttributes({
        numberColor
      })
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Text Color', 'rise-blocks'),
      value: textColor,
      onChange: textColor => setAttributes({
        textColor
      })
    }];

    if (enableLine) {
      colorSettings = [...colorSettings, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Line Color', 'rise-blocks'),
        value: lineColor,
        onChange: lineColor => setAttributes({
          lineColor
        })
      }];
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_6__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General Settings', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["TextControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Items per row', 'rise-blocks'),
      type: "number",
      value: itemsPerRow,
      onChange: itemsPerRow => {
        const value = itemsPerRow < 1 ? 1 : itemsPerRow > 4 ? 4 : parseInt(itemsPerRow);
        setAttributes({
          itemsPerRow: value
        });
      }
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["TextControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Number of Items', 'rise-blocks'),
      type: "number",
      value: count,
      max: this.limit,
      onChange: count => {
        setAttributes({
          count: count < 1 || count > this.limit ? 1 : parseInt(count)
        });
      }
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Items (Border Radius)', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["def"].itemsBorderRadius,
      value: itemsBorderRadius,
      onChange: itemsBorderRadius => setAttributes({
        itemsBorderRadius
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Show Plus Icon', 'rise-blocks'),
      checked: showPlusIcon,
      onChange: showPlusIcon => setAttributes({
        showPlusIcon
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable box-shaow', 'rise-blocks'),
      checked: enableShadow,
      onChange: enableShadow => {
        setAttributes({
          enableShadow
        });
      }
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable border', 'rise-blocks'),
      checked: enableBorder,
      onChange: enableBorder => {
        setAttributes({
          enableBorder
        });
      }
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Show Line', 'rise-blocks'),
      checked: enableLine,
      onChange: enableLine => {
        setAttributes({
          enableLine
        });
      }
    }), enableLine && React.createElement("div", null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Line (Width)', 'rise-blocks'),
      value: lineWidth,
      onChange: lineWidth => setAttributes({
        lineWidth: parseInt(lineWidth)
      }),
      min: 2,
      max: 1000
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Line (Height)', 'rise-blocks'),
      value: lineHeight,
      onChange: lineHeight => setAttributes({
        lineHeight: parseInt(lineHeight)
      }),
      min: 2,
      max: 100
    }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Number', 'rise-block'),
      value: numberTypography,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["def"].numberTypography,
      onChange: numberTypography => setAttributes({
        numberTypography
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Text', 'rise-block'),
      value: textTypography,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["def"].textTypography,
      onChange: textTypography => setAttributes({
        textTypography
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Items (Padding)', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["def"].sectionPadding,
      value: sectionPadding,
      onChange: sectionPadding => setAttributes({
        sectionPadding
      })
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Text (Margin)', 'rise-block'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_5__["def"].textMargin,
      value: textMargin,
      onChange: textMargin => setAttributes({
        textMargin
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: colorSettings
    })));
  }

}

/***/ }),

/***/ "./src/blocks/counter/components/render.js":
/*!*************************************************!*\
  !*** ./src/blocks/counter/components/render.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _sub_components_counter_number__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sub-components/counter-number */ "./src/blocks/counter/components/sub-components/counter-number.js");
/* harmony import */ var _sub_components_counter_text__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./sub-components/counter-text */ "./src/blocks/counter/components/sub-components/counter-text.js");
/* harmony import */ var _sub_components_counter_line__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./sub-components/counter-line */ "./src/blocks/counter/components/sub-components/counter-line.js");



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }








class Render extends _components_wp__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "getValue", (name, i) => {
      const {
        attributes: {
          content
        }
      } = this.props;
      return content[i] && content[i][name] ? content[i][name] : '';
    });
  }

  render() {
    const {
      attributes: {
        block_id,
        count,
        enableLine,
        enableBorder,
        enableShadow,
        sectionPadding,
        itemsPerRow,
        boxBackgroundColor,
        itemsBorderRadius
      },
      context
    } = this.props;
    const padding = 'edit' === context ? Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getDimensionStyle"])(['padding-top', 'padding-right', 'padding-bottom', 'padding-left'], sectionPadding) : {};
    const boxBackgroundColorStyle = 'edit' === context ? {
      backgroundColor: boxBackgroundColor
    } : {};
    const borderRadius = 'edit' === context ? Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getDimensionStyle"])(['border-top-left-radius', 'border-top-right-radius', 'border-bottom-left-radius', 'border-bottom-right-radius'], itemsBorderRadius) : {};
    return React.createElement("section", {
      id: block_id
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-counter-wrapper ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-items-per-row-${itemsPerRow}`
    }, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getArray"])(count, {}).map((v, i) => React.createElement("div", {
      key: i
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-counter  ${enableShadow ? `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-box-shadow` : ''} ${enableBorder ? `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-box-border` : ''} `,
      style: _objectSpread({}, padding, {}, boxBackgroundColorStyle, {}, borderRadius)
    }, React.createElement(_sub_components_counter_number__WEBPACK_IMPORTED_MODULE_5__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props, {
      getValue: this.getValue,
      index: i
    })), enableLine && React.createElement(_sub_components_counter_line__WEBPACK_IMPORTED_MODULE_7__["default"], this.props), React.createElement(_sub_components_counter_text__WEBPACK_IMPORTED_MODULE_6__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props, {
      getValue: this.getValue,
      index: i
    })))))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Render);

/***/ }),

/***/ "./src/blocks/counter/components/save.js":
/*!***********************************************!*\
  !*** ./src/blocks/counter/components/save.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./render */ "./src/blocks/counter/components/render.js");



const Save = props => React.createElement(_render__WEBPACK_IMPORTED_MODULE_1__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, props, {
  context: "save"
})); // const Save = props => <h1>Render Save Component</h1>;


/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/counter/components/sub-components/counter-line.js":
/*!**********************************************************************!*\
  !*** ./src/blocks/counter/components/sub-components/counter-line.js ***!
  \**********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");



const ProfileCardDescription = props => {
  const {
    attributes: {
      lineColor,
      lineWidth,
      lineHeight
    },
    context
  } = props;
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-counter-line`;

  switch (context) {
    case 'edit':
      // const richTextStyle = { color: descriptionColor };
      return React.createElement("div", {
        className: className,
        style: {
          backgroundColor: lineColor,
          maxWidth: '100%',
          width: lineWidth,
          height: lineHeight
        }
      });

    case 'save':
      return React.createElement("div", {
        className: className
      });

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_1__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (ProfileCardDescription);

/***/ }),

/***/ "./src/blocks/counter/components/sub-components/counter-number.js":
/*!************************************************************************!*\
  !*** ./src/blocks/counter/components/sub-components/counter-number.js ***!
  \************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





const CounterNumber = props => {
  const {
    attributes: {
      numberTypography,
      numberColor,
      showPlusIcon
    },
    context,
    index,
    getValue,
    updateContent
  } = props;
  const value = getValue('number', index);
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-counter-number`;

  switch (context) {
    case 'edit':
      const numberTypographyStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(numberTypography);
      return React.createElement("div", {
        className: className
      }, React.createElement("input", {
        style: _objectSpread({}, numberTypographyStyle, {
          color: numberColor
        }),
        type: "number",
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('888', 'rise-blocks'),
        value: value,
        onKeyPress: e => {
          if (e.which < 48 || e.which > 57) e.preventDefault();
        },
        onChange: e => {
          updateContent(index, 'number', e.target.value);
        }
      }));

    case 'save':
      if (value) {
        return React.createElement("div", {
          className: className
        }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
          value: value
        }), showPlusIcon && React.createElement("span", null, "+"));
      }

      return null;

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_2__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (CounterNumber);

/***/ }),

/***/ "./src/blocks/counter/components/sub-components/counter-text.js":
/*!**********************************************************************!*\
  !*** ./src/blocks/counter/components/sub-components/counter-text.js ***!
  \**********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





const CounterText = props => {
  const {
    attributes: {
      textTypography,
      textMargin,
      textColor
    },
    context,
    index,
    getValue,
    updateContent
  } = props;
  const value = getValue('text', index);
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-counter-text`;

  switch (context) {
    case 'edit':
      const textTypographyStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(textTypography);
      const textDimensionStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])(['margin-top', 'margin-right', 'margin-bottom', 'margin-left'], textMargin);
      return React.createElement("div", {
        className: className,
        style: _objectSpread({}, textTypographyStyle, {}, textDimensionStyle, {
          color: textColor
        })
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
        value: value,
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('text', 'rise-blocks'),
        type: "text",
        keepPlaceholderOnFocus: true,
        onChange: v => updateContent(index, 'text', v)
      }));

    case 'save':
      if (value) {
        return React.createElement("div", {
          className: className
        }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
          value: value
        }));
      }

      return null;

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_2__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (CounterText);

/***/ }),

/***/ "./src/blocks/counter/constants.js":
/*!*****************************************!*\
  !*** ./src/blocks/counter/constants.js ***!
  \*****************************************/
/*! exports provided: def */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "def", function() { return def; });
const def = {
  sectionPadding: {
    activeUnit: 'px',
    isLinkActive: false,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: ['', '', '', ''],
      tablet: ['', '', '', ''],
      mobile: ['', '', '', '']
    }
  },
  itemsBorderRadius: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop'],
    units: ['px', '%'],
    values: {
      desktop: ['', '', '', ''],
      tablet: ['', '', '', ''],
      mobile: ['', '', '', '']
    }
  },
  numberColor: '#000',
  lineColor: '#fc5b62',
  lineWidth: '#fc5b62',
  textColor: '#fc5b62',
  textTypography: {
    fontFamily: 'Lato',
    textTransform: 'uppercase',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 15,
        tablet: 15,
        mobile: 15
      }
    },
    fontWeight: 600,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  },
  numberTypography: {
    fontFamily: 'Lato',
    textTransform: 'capitalize',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'rem',
      values: {
        desktop: 2,
        tablet: 2,
        mobile: 2
      }
    },
    fontWeight: 600,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.2,
        tablet: 1.2,
        mobile: 1.2
      }
    }
  },
  textMargin: {
    activeUnit: 'px',
    isLinkActive: false,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: ['', '', '', ''],
      tablet: ['', '', '', ''],
      mobile: ['', '', '', '']
    }
  }
};

/***/ }),

/***/ "./src/blocks/counter/index.js":
/*!*************************************!*\
  !*** ./src/blocks/counter/index.js ***!
  \*************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/counter/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/counter/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/counter/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/save */ "./src/blocks/counter/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./attributes */ "./src/blocks/counter/attributes.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");








const example = {
  "name": "rise-blocks/counter",
  "attributes": {
    "block_id": "rise-blocks-counter-block-instance-0",
    "sectionPadding": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": ["", "", "", ""],
        "tablet": ["", "", "", ""],
        "mobile": ["", "", "", ""]
      }
    },
    "count": 4,
    "itemsPerRow": 4,
    "itemsBorderRadius": {
      "activeUnit": "px",
      "isLinkActive": true,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop"],
      "units": ["px", "%"],
      "values": {
        "desktop": [15, 15, 15, 15]
      }
    },
    "content": [{
      "number": "31",
      "text": "days"
    }, {
      "number": "21",
      "text": "hours"
    }, {
      "number": "39",
      "text": "min"
    }, {
      "number": "50",
      "text": "sec"
    }],
    "numberTypography": {
      "fontFamily": "Lato",
      "textTransform": "capitalize",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "rem",
        "values": {
          "desktop": 2,
          "tablet": 2,
          "mobile": 2
        }
      },
      "fontWeight": 600,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.2",
          "tablet": "1.2",
          "mobile": "1.2"
        }
      }
    },
    "numberColor": "#000",
    "textTypography": {
      "fontFamily": "Lato",
      "textTransform": "uppercase",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "px",
        "values": {
          "desktop": 15,
          "tablet": 15,
          "mobile": 15
        }
      },
      "fontWeight": 600,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.2",
          "tablet": "1.2",
          "mobile": "1.2"
        }
      }
    },
    "textMargin": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": ["", "", "", ""],
        "tablet": ["", "", "", ""],
        "mobile": ["", "", "", ""]
      }
    },
    "boxBackgroundColor": "#fff",
    "textColor": "#000",
    "lineColor": "#000",
    "lineWidth": 30,
    "lineHeight": 2,
    "enableShadow": true,
    "enableBorder": true,
    "showPlusIcon": false,
    "enableLine": true
  }
};
Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["register"])('counter', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_7__["__"])('Counter', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_7__["__"])('This block helps to display upto four statistical data like completed projects, no. of clients, etc.', 'rise-blocks'),
  keywords: ['counter'],
  example,
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_6__["default"].counter,
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_4__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_2__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_3__["default"]
});

/***/ }),

/***/ "./src/blocks/counter/styles/editor.scss":
/*!***********************************************!*\
  !*** ./src/blocks/counter/styles/editor.scss ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/counter/styles/style.scss":
/*!**********************************************!*\
  !*** ./src/blocks/counter/styles/style.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/heading/attributes.js":
/*!******************************************!*\
  !*** ./src/blocks/heading/attributes.js ***!
  \******************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/heading/constants.js");

const attributes = {
  label: {
    type: 'string'
  },
  title: {
    type: 'string'
  },
  description: {
    type: 'string'
  },
  alignment: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].alignment
  },
  tag: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].tag
  },
  labelColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].labelColor
  },
  toggleLabel: {
    type: 'boolean',
    default: true
  },
  toggleLine: {
    type: 'boolean',
    default: true
  },
  toggleDescription: {
    type: 'boolean',
    default: false
  },
  titleColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleColor
  },
  titleTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleTypography
  },
  descriptionColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].descriptionColor
  },
  descriptionTypography: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].descriptionTypography
  },
  sectionPadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].sectionPadding
  },
  titleMargin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].titleMargin
  },
  descriptionPadding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].descriptionPadding
  },
  lineColor: {
    type: 'sting',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].lineColor
  },
  block_id: {
    type: 'string'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/heading/components/edit.js":
/*!***********************************************!*\
  !*** ./src/blocks/heading/components/edit.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inspector */ "./src/blocks/heading/components/inspector.js");
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./render */ "./src/blocks/heading/components/render.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  componentDidMount() {
    const {
      setAttributes,
      instanceId
    } = this.props;
    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-heading-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes: {
        alignment
      },
      setAttributes
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement(_render__WEBPACK_IMPORTED_MODULE_4__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props, {
      context: "edit"
    })));
  }

}

;
/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/heading/components/inspector.js":
/*!****************************************************!*\
  !*** ./src/blocks/heading/components/inspector.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ "./src/blocks/heading/constants.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");







const InspectorPanel = ({
  attributes: {
    tag,
    toggleLabel,
    toggleLine,
    toggleDescription,
    titleTypography,
    descriptionTypography,
    labelColor,
    titleColor,
    descriptionColor,
    sectionPadding,
    titleMargin,
    descriptionPadding,
    lineColor
  },
  setAttributes,
  attributes,
  clientId
}) => {
  const labelColorSetting = toggleLabel ? [{
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Label color'),
    value: labelColor,
    onChange: labelColor => setAttributes({
      labelColor
    })
  }] : [];
  const lineColorSetting = toggleLine ? [{
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Line color'),
    value: lineColor,
    onChange: lineColor => setAttributes({
      lineColor
    })
  }] : [];
  const descriptionColorSetting = toggleDescription ? [{
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Description color'),
    value: descriptionColor,
    onChange: descriptionColor => setAttributes({
      descriptionColor
    })
  }] : [];
  const colorSettings = [{
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title color'),
    value: titleColor,
    onChange: titleColor => setAttributes({
      titleColor
    })
  }];
  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_5__["default"], {
    clientId: clientId
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
    initialOpen: true
  }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["HeadingTagControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Tag', 'rise-blocks'),
    value: tag,
    onChange: tag => setAttributes({
      tag
    })
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Toggle Label', 'rise-blocks'),
    checked: toggleLabel,
    onChange: toggleLabel => setAttributes({
      toggleLabel
    })
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Toggle Line', 'rise-blocks'),
    checked: toggleLine,
    onChange: toggleLine => setAttributes({
      toggleLine
    })
  }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Toggle Description', 'rise-blocks'),
    checked: toggleDescription,
    onChange: toggleDescription => setAttributes({
      toggleDescription
    })
  })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Typography', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].titleTypography,
    value: titleTypography,
    onChange: titleTypography => setAttributes({
      titleTypography
    })
  }), toggleDescription && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Description', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].descriptionTypography,
    value: descriptionTypography,
    onChange: descriptionTypography => setAttributes({
      descriptionTypography
    })
  }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Spacing', 'rise-blocks'),
    initialOpen: false
  }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Section (Padding)', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].sectionPadding,
    value: sectionPadding,
    onChange: sectionPadding => setAttributes({
      sectionPadding
    })
  }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title (Padding)', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].titleMargin,
    value: titleMargin,
    onChange: titleMargin => setAttributes({
      titleMargin
    })
  }), toggleDescription && React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_3__["default"], {
    label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Description (Padding)', 'rise-block'),
    defaultValue: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].descriptionPadding,
    value: descriptionPadding,
    onChange: descriptionPadding => setAttributes({
      descriptionPadding
    })
  })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["PanelColor"], {
    colorSettings: [...labelColorSetting, ...colorSettings, ...lineColorSetting, ...descriptionColorSetting]
  })));
};

/* harmony default export */ __webpack_exports__["default"] = (InspectorPanel);

/***/ }),

/***/ "./src/blocks/heading/components/render.js":
/*!*************************************************!*\
  !*** ./src/blocks/heading/components/render.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _sub_components_title__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sub-components/title */ "./src/blocks/heading/components/sub-components/title.js");
/* harmony import */ var _sub_components_sub_title__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./sub-components/sub-title */ "./src/blocks/heading/components/sub-components/sub-title.js");
/* harmony import */ var _sub_components_line__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sub-components/line */ "./src/blocks/heading/components/sub-components/line.js");
/* harmony import */ var _sub_components_description__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./sub-components/description */ "./src/blocks/heading/components/sub-components/description.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/heading/constants.js");



/* Sub Component */







const Render = props => {
  const {
    attributes: {
      toggleLabel,
      sectionPadding,
      alignment = _constants__WEBPACK_IMPORTED_MODULE_7__["default"].alignment,
      block_id
    },
    className,
    context
  } = props;
  const sectionPaddingStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_1__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], sectionPadding);
  const styleEditMode = context === 'edit' ? sectionPaddingStyle : {};
  const divClassName = `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-heading-section ${className} ${alignment}`;
  return React.createElement("section", {
    id: block_id
  }, React.createElement("div", {
    className: divClassName,
    style: styleEditMode
  }, toggleLabel && React.createElement(_sub_components_sub_title__WEBPACK_IMPORTED_MODULE_4__["default"], props), React.createElement(_sub_components_title__WEBPACK_IMPORTED_MODULE_3__["default"], props), React.createElement(_sub_components_line__WEBPACK_IMPORTED_MODULE_5__["default"], props), React.createElement(_sub_components_description__WEBPACK_IMPORTED_MODULE_6__["default"], props)));
};

/* harmony default export */ __webpack_exports__["default"] = (Render);

/***/ }),

/***/ "./src/blocks/heading/components/save.js":
/*!***********************************************!*\
  !*** ./src/blocks/heading/components/save.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _render__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./render */ "./src/blocks/heading/components/render.js");



const Save = props => React.createElement(_render__WEBPACK_IMPORTED_MODULE_1__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, props, {
  context: "save"
}));

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/heading/components/sub-components/description.js":
/*!*********************************************************************!*\
  !*** ./src/blocks/heading/components/sub-components/description.js ***!
  \*********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





const Description = props => {
  const {
    attributes: {
      toggleDescription,
      description,
      descriptionColor,
      descriptionTypography,
      descriptionPadding
    },
    setAttributes,
    context
  } = props;
  if (!toggleDescription) return null;
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-sub-description`;

  switch (context) {
    case 'edit':
      const pad = Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], descriptionPadding);
      ;

      const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(descriptionTypography), {}, pad, {
        color: descriptionColor
      });

      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
        tagName: "div",
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Write a short description.', 'rise-block'),
        style: style,
        className: className,
        keepPlaceholderOnFocus: true,
        value: description,
        onChange: description => setAttributes({
          description
        })
      });

    case 'save':
      if (description) {
        return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
          className: className,
          tagName: "div",
          value: description
        });
      }

      return null;

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_2__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (Description);

/***/ }),

/***/ "./src/blocks/heading/components/sub-components/line.js":
/*!**************************************************************!*\
  !*** ./src/blocks/heading/components/sub-components/line.js ***!
  \**************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");


const Subtitle = props => {
  const {
    attributes: {
      lineColor,
      toggleLine
    },
    context
  } = props;
  if (!toggleLine) return null;
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-line`;

  switch (context) {
    case 'edit':
      const spanStyle = {
        backgroundColor: lineColor
      };
      return React.createElement("span", {
        className: className,
        style: spanStyle
      });

    case 'save':
      return React.createElement("span", {
        className: className
      });

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_0__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (Subtitle);

/***/ }),

/***/ "./src/blocks/heading/components/sub-components/sub-title.js":
/*!*******************************************************************!*\
  !*** ./src/blocks/heading/components/sub-components/sub-title.js ***!
  \*******************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");



const Subtitle = props => {
  const {
    attributes: {
      label,
      labelColor
    },
    setAttributes,
    context
  } = props;
  const className = `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-sub-title`;

  switch (context) {
    case 'edit':
      const spanStyle = {
        borderColor: labelColor,
        color: labelColor
      };
      return React.createElement("span", {
        className: className,
        style: spanStyle
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"], {
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Text', 'rise-block'),
        keepPlaceholderOnFocus: true,
        value: label,
        onChange: label => setAttributes({
          label
        })
      }));

    case 'save':
      if (label) {
        return React.createElement("span", {
          className: className
        }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"].Content, {
          value: label
        }));
      }

      return null;

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_1__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (Subtitle);

/***/ }),

/***/ "./src/blocks/heading/components/sub-components/title.js":
/*!***************************************************************!*\
  !*** ./src/blocks/heading/components/sub-components/title.js ***!
  \***************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





const Subtitle = props => {
  const {
    attributes: {
      titleTypography,
      titleMargin,
      titleColor,
      title,
      tag
    },
    setAttributes,
    context
  } = props;
  const commonProps = {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-title`,
    tagName: tag,
    value: title
  };

  switch (context) {
    case 'edit':
      const titleTypographyStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(titleTypography);
      const titleStyle = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], titleMargin);

      const richTextStyle = _objectSpread({}, titleTypographyStyle, {}, titleStyle, {
        color: titleColor
      });

      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RichText"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, commonProps, {
        style: richTextStyle,
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Heading Text', 'rise-blocks'),
        keepPlaceholderOnFocus: true,
        onChange: title => setAttributes({
          title
        })
      }));

    case 'save':
      if (title) {
        return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RichText"].Content, commonProps);
      }

      return null;

    default:
      return React.createElement(_constants__WEBPACK_IMPORTED_MODULE_3__["ProvideContextMode"], null);
  }
};

/* harmony default export */ __webpack_exports__["default"] = (Subtitle);

/***/ }),

/***/ "./src/blocks/heading/constants.js":
/*!*****************************************!*\
  !*** ./src/blocks/heading/constants.js ***!
  \*****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
const defaultTitleTypography = {
  fontFamily: 'Lato',
  textTransform: 'uppercase',
  fontSize: {
    units: ['px', 'em', 'rem'],
    activeUnit: 'rem',
    values: {
      desktop: 2,
      tablet: 2,
      mobile: 2
    }
  },
  fontWeight: 700,
  lineHeight: {
    activeUnit: '',
    units: [''],
    values: {
      desktop: 1.2,
      tablet: 1.2,
      mobile: 1.2
    }
  }
};
const defaultDescriptionTypography = {
  fontFamily: 'Raleway',
  fontSize: {
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    values: {
      desktop: 16,
      tablet: 16,
      mobile: 16
    }
  },
  fontWeight: 400,
  lineHeight: {
    activeUnit: '',
    units: [''],
    values: {
      desktop: 1.5,
      tablet: 1.5,
      mobile: 1.5
    }
  }
};
const defaultSectionPadding = {
  activeUnit: 'px',
  isLinkActive: true,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['', '', '', ''],
    tablet: ['', '', '', ''],
    mobile: ['', '', '', '']
  }
};
const defaultTitleMargin = {
  activeUnit: 'rem',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['0.4', '', '', ''],
    tablet: ['0.4', '', '', ''],
    mobile: ['0.4', '', '', '']
  }
};
const defaultDescriptionPadding = {
  activeUnit: 'px',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: ['15', '', '', ''],
    tablet: ['15', '', '', ''],
    mobile: ['15', '', '', '']
  }
};
const defaults = {
  alignment: 'center',
  tag: 'h1',
  titleColor: '#000',
  descriptionColor: '#666',
  labelColor: '#000',
  lineColor: '#000',
  titleTypography: defaultTitleTypography,
  descriptionTypography: defaultDescriptionTypography,
  sectionPadding: defaultSectionPadding,
  titleMargin: defaultTitleMargin,
  descriptionPadding: defaultDescriptionPadding
};
/* harmony default export */ __webpack_exports__["default"] = (defaults);

/***/ }),

/***/ "./src/blocks/heading/index.js":
/*!*************************************!*\
  !*** ./src/blocks/heading/index.js ***!
  \*************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/heading/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/heading/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/heading/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/save */ "./src/blocks/heading/components/save.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./attributes */ "./src/blocks/heading/attributes.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Post Slider							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/








/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

const example = {
  "name": "rise-blocks/heading",
  "attributes": {
    "label": "Our Service",
    "title": "Explore jobs",
    "description": "Find a job love. Set you career interests.",
    "alignment": "left",
    "tag": "h2",
    "labelColor": "#000",
    "toggleLabel": false,
    "toggleLine": false,
    "toggleDescription": true,
    "titleColor": "#000",
    "titleTypography": {
      "fontFamily": "Oswald",
      "textTransform": "capitalize",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "rem",
        "values": {
          "desktop": 2,
          "tablet": 2,
          "mobile": 2
        }
      },
      "fontWeight": 700,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.2",
          "tablet": "1.2",
          "mobile": "1.2"
        }
      }
    },
    "descriptionColor": "#666",
    "descriptionTypography": {
      "fontFamily": "Raleway",
      "fontSize": {
        "units": ["px", "em", "rem"],
        "activeUnit": "px",
        "values": {
          "desktop": 16,
          "tablet": 16,
          "mobile": 16
        }
      },
      "fontWeight": 400,
      "lineHeight": {
        "activeUnit": "",
        "units": [""],
        "values": {
          "desktop": "1.5",
          "tablet": "1.5",
          "mobile": "1.5"
        }
      }
    },
    "sectionPadding": {
      "activeUnit": "px",
      "isLinkActive": true,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": ["", "", "", ""],
        "tablet": ["", "", "", ""],
        "mobile": ["", "", "", ""]
      }
    },
    "titleMargin": {
      "activeUnit": "rem",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": [0, "", "", ""],
        "tablet": [0, "", "", ""],
        "mobile": [0, "", "", ""]
      }
    },
    "descriptionPadding": {
      "activeUnit": "px",
      "isLinkActive": false,
      "properties": ["top", "right", "bottom", "left"],
      "responsiveViews": ["desktop", "tablet", "mobile"],
      "units": ["px", "rem"],
      "values": {
        "desktop": ["15", "", "", ""],
        "tablet": ["15", "", "", ""],
        "mobile": ["15", "", "", ""]
      }
    },
    "lineColor": "#000",
    "block_id": "rise-blocks-heading-block-instance-0"
  }
};
Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('heading', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Advanced Heading', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block enables attractive heading for the page or section with the label feature to show extra information.', 'rise-blocks'),
  keywords: ['heading'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].heading,
  example,
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_6__["default"],
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_7__["default"]
});

/***/ }),

/***/ "./src/blocks/heading/styles/editor.scss":
/*!***********************************************!*\
  !*** ./src/blocks/heading/styles/editor.scss ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/heading/styles/style.scss":
/*!**********************************************!*\
  !*** ./src/blocks/heading/styles/style.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/icon-boxes/components/attributes.js":
/*!********************************************************!*\
  !*** ./src/blocks/icon-boxes/components/attributes.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/constants.js");

const attributes = {
  /* For editor only */
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  count: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].count
  },
  boxShadow: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].boxShadow
  },
  activeLayout: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].activeLayout
  },

  /* For Editor And Save */
  block_id: {
    type: 'string'
  },
  itemsPerRow: {
    type: 'number'
  },
  gutter: {
    type: 'number'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/icon-boxes/components/edit.js":
/*!**************************************************!*\
  !*** ./src/blocks/icon-boxes/components/edit.js ***!
  \**************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js");
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/constants.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./inspector */ "./src/blocks/icon-boxes/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/parent-block-selector */ "./src/components/parent-block-selector.js");









const ALLOWED_BLOCKS = ['rise-blocks/icon-box'];
const getCount = memize__WEBPACK_IMPORTED_MODULE_2___default()(count => {
  return lodash_times__WEBPACK_IMPORTED_MODULE_3___default()(count, () => ['rise-blocks/icon-box']);
});

class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  componentDidMount() {
    const {
      clientId,
      setAttributes,
      instanceId,
      className
    } = this.props;
    /*-----------------------------------------------------------------*
           * Add custom class into root div of block to control editor style
           * So that grid visual(design) of backend and frontend looks same. 
           *-----------------------------------------------------------------*/

    Object(_helpers__WEBPACK_IMPORTED_MODULE_7__["addWrapperClass"])(clientId);
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_7__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      isSelected,
      clientId,
      setAttributes
    } = this.props;
    let {
      isInit,
      activeLayout,
      count,
      boxShadow,
      block_id
    } = attributes;
    /*--------------------------------------------------------*
     * Set Initial Attributes
     * Set the default value of attributes once. it's helps
     * to set default value on server side too.
     *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_7__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_5__["editorNSaveAttrs"]);
      return null;
    }

    const wrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_4___default()('wp-block-rise-blocks-icon-boxes', `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${activeLayout}-layout`, {
      [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-shadow-enable`]: boxShadow
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, isSelected && React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_6__["default"], this.props), React.createElement("div", {
      id: block_id
    }, React.createElement("div", {
      className: wrapperClassName
    }, React.createElement(_components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__["default"], {
      icon: "iconBox",
      label: "Icon Boxes"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"], {
      template: getCount(count),
      allowedBlocks: ALLOWED_BLOCKS
    }))), Object(_helpers__WEBPACK_IMPORTED_MODULE_7__["shouldShowAddButton"])(clientId) && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["IconButton"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-add-new-item`,
      isLarge: true,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add Icon Box', 'rise-blocks'),
      icon: "insert",
      onClick: () => {
        const created = Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["createBlock"])('rise-blocks/icon-box');
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').insertBlock(created, undefined, clientId);
        setAttributes({
          count: ++count
        });
      }
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add New Icon Box', 'rise-blocks')));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/icon-boxes/components/inspector.js":
/*!*******************************************************!*\
  !*** ./src/blocks/icon-boxes/components/inspector.js ***!
  \*******************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_layouts_icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/layouts-icon */ "./src/components/layouts-icon.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");





class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      setAttributes,
      attributes,
      clientId
    } = this.props;
    const {
      itemsPerRow,
      activeLayout,
      boxShadow,
      gutter
    } = attributes;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_4__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_layouts_icon__WEBPACK_IMPORTED_MODULE_1__["default"], {
      options: _constants__WEBPACK_IMPORTED_MODULE_2__["iconBoxLayout"].layouts,
      activeLayout: activeLayout,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Layouts', 'rise-blocks'),
      onChange: activeLayout => setAttributes({
        activeLayout
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Number of Items per Row', 'rise-blocks'),
      value: itemsPerRow,
      onChange: itemsPerRow => {
        Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["setColWidth"])(clientId, itemsPerRow, gutter);
        setAttributes({
          itemsPerRow
        });
      },
      min: 1,
      max: 4
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable/Disable Shadow'),
      checked: boxShadow,
      onChange: boxShadow => setAttributes({
        boxShadow
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Gutter', 'rise-blocks'),
      help: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Gap between icon boxes', 'rise-blocks'),
      value: gutter,
      onChange: gutter => {
        Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["setColWidth"])(clientId, itemsPerRow, gutter);
        if (gutter === 0) setAttributes({
          gutter,
          boxShadow: false
        });else setAttributes({
          gutter,
          boxShadow: true
        });
      },
      min: 0,
      max: 40
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/icon-boxes/components/save.js":
/*!**************************************************!*\
  !*** ./src/blocks/icon-boxes/components/save.js ***!
  \**************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);




const Save = props => {
  const {
    attributes,
    className,
    clientId
  } = props;
  const {
    boxShadow,
    activeLayout,
    block_id
  } = attributes;
  const wrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_2___default()('wp-block-rise-blocks-icon-boxes', `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-save`, `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${activeLayout}-layout`, {
    [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-shadow-enable`]: boxShadow
  });
  return React.createElement("div", {
    id: block_id
  }, React.createElement("div", {
    className: wrapperClassName
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-block-lists`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null))));
};

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/icon-boxes/constants.js":
/*!********************************************!*\
  !*** ./src/blocks/icon-boxes/constants.js ***!
  \********************************************/
/*! exports provided: iconBoxLayout, editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "iconBoxLayout", function() { return iconBoxLayout; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }


const {
  left,
  center,
  right
} = _helpers_svg__WEBPACK_IMPORTED_MODULE_1__["default"].iconBoxPro.aligns;
const iconBoxLayout = {
  active: 'center',
  layouts: [{
    name: 'left',
    icon: left
  }, {
    name: 'center',
    icon: center
  }, {
    name: 'right',
    icon: right
  }]
};
/* Default Attributes */

const editorAttrs = {
  isInit: false,
  boxShadow: true,
  activeLayout: iconBoxLayout.active,
  count: 3
};
/* Editor And Save Attributes */

const editorNSaveAttrs = {
  itemsPerRow: 3,
  gutter: 30
};
const defaultAttrs = _objectSpread({}, editorAttrs, {}, editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/components/attributes.js":
/*!*****************************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/components/attributes.js ***!
  \*****************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/icon-box/constants.js");

const attributes = {
  /* EDIT ONLY ATTRIBUTES */
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  block_id: {
    type: 'string'
  },
  title: {
    type: 'string'
  },
  content: {
    type: 'string'
  },
  titleTag: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].titleTag
  },
  alignment: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].alignment
  },

  /* EDIT AND SAVE ATTRIBUTES */
  isImageIcon: {
    // Icon or Image
    type: 'boolean'
  },
  image: {
    type: 'object'
  },
  imageWidth: {
    type: 'object'
  },
  imageRadius: {
    type: 'number'
  },
  selectedIcon: {
    type: 'object'
  },
  activeIconLayout: {
    type: 'string'
  },
  gutter: {
    type: 'number'
  },

  /* Typography */
  titleTypo: {
    type: 'object'
  },
  contentTypo: {
    type: 'object'
  },
  iconsBoxSize: {
    type: 'object'
  },
  iconSize: {
    type: 'object'
  },
  iconBorderWidth: {
    type: 'number'
  },

  /* Spacing */
  boxPadding: {
    type: 'object'
  },
  headingPadding: {
    type: 'object'
  },

  /* Colors */
  boxBackgroundColor: {
    type: 'string'
  },
  titleColor: {
    type: 'string'
  },
  contentColor: {
    type: 'string'
  },
  iconColors: {
    type: 'object'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/components/edit.js":
/*!***********************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/components/edit.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_upgrader__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../components/upgrader */ "./src/components/upgrader.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inspector */ "./src/blocks/icon-boxes/icon-box/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/icon-box/constants.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }










class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getParentAttrs", memize__WEBPACK_IMPORTED_MODULE_3___default()(() => {
      const {
        itemsPerRow,
        gutter
      } = Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getParentAttrs"])(this.props);
      return {
        gutter,
        itemsPerRow
      };
    }));

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getImageStyle", () => {
      const {
        imageWidth,
        imageRadius
      } = this.props.attributes;
      const {
        values,
        activeUnit
      } = imageWidth;
      const {
        desktop
      } = values;
      return {
        width: desktop + activeUnit,
        borderRadius: imageRadius + '%'
      };
    });
  }

  componentDidMount() {
    const {
      clientId,
      instanceId,
      setAttributes
    } = this.props;
    const {
      itemsPerRow,
      gutter
    } = this.getParentAttrs();
    /*----------------------------------------*
     * Set column width
     * Set the grid width of child blocks
     *----------------------------------------*/

    Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setColWidth"])(clientId, itemsPerRow, gutter, 'child');
    /* Blacks background color */

    this.backgroundStyle();
    /*-----------------------------------------------------------------
     * Add custom class into root div of block to control editor style
     * So that grid visual(design) of backend and frontend looks same. 
     *----------------------------------------------------------------- */

    Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["addWrapperClass"])(clientId, 'block-lists');
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-wp-block-rise-blocks-icon-box-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["uniqueId"])()}`
    });
  }

  backgroundStyle() {
    const {
      clientId,
      attributes
    } = this.props;
    const {
      boxBackgroundColor = ''
    } = attributes;
    const $ele = document.getElementById(`block-${clientId}`);
    if ($ele) $ele.style.backgroundColor = boxBackgroundColor;
  }

  render() {
    const {
      attributes,
      setAttributes,
      isSelected,
      className,
      clientId
    } = this.props;
    const {
      isInit,
      isImageIcon,
      image,
      imageWidth,
      imageRadius,
      title,
      content,
      titleTag,
      alignment,
      activeIconLayout,
      selectedIcon,
      boxPadding,
      headingPadding,
      titleTypo,
      titleColor,
      iconColors,
      iconSize,
      iconsBoxSize,
      contentTypo,
      contentColor,
      iconBorderWidth
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_7__["editorNSaveAttrs"]);
      return null;
    }
    /* Background color */


    this.backgroundStyle();

    const getIconColorStyle = () => {
      switch (activeIconLayout) {
        case 'frame':
          return _objectSpread({}, iconColors[activeIconLayout], {
            width: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconsBoxSize),
            height: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconsBoxSize),
            fontSize: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconSize),
            borderWidth: iconBorderWidth
          });

        case 'stack':
          return _objectSpread({}, iconColors[activeIconLayout], {
            width: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconsBoxSize),
            height: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconsBoxSize),
            fontSize: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconSize)
          });

        default:
          return _objectSpread({}, iconColors[activeIconLayout], {
            fontSize: Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getResponsiveRangeVal"])(iconSize)
          });
      }

      ;
    };

    const iconBoxStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getDimensionStyle"])('padding', boxPadding));

    const titleStyle = _objectSpread({
      color: titleColor
    }, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getTypoStyle"])(titleTypo), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getDimensionStyle"])('padding', headingPadding));

    const contentStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["getTypoStyle"])(contentTypo), {
      color: contentColor
    });

    const iconLayoutStyle = getIconColorStyle();

    const getImage = () => {
      if (!isImageIcon) return null;
      if ('' == image.url) return React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-image-wrapper-dummy`
      }, React.createElement("i", {
        className: "dashicons dashicons-format-image"
      }));
      return React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-image-wrapper`
      }, React.createElement("img", {
        src: image.url,
        style: this.getImageStyle()
      }));
    };

    if (Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["shouldShowUpgrader"])(clientId)) {
      return React.createElement("div", {
        className: `${className} ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-box`
      }, React.createElement(_components_upgrader__WEBPACK_IMPORTED_MODULE_2__["default"], null));
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_5__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement("div", {
      className: `${className} ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-box ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-${alignment}`,
      style: iconBoxStyle
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-wrapper`
    }, !isImageIcon && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-${activeIconLayout}-icon-layout`,
      style: iconLayoutStyle
    }, React.createElement("i", {
      className: `fa ${selectedIcon.icon}`
    })), getImage()), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-content`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      style: titleStyle,
      tagName: `h${titleTag}`,
      value: title,
      keepPlaceholderOnFocus: true,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-title`,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Write a Title', 'rise-blocks'),
      onChange: title => setAttributes({
        title
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      tagName: "p",
      style: contentStyle,
      value: content,
      keepPlaceholderOnFocus: true,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-description`,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Write a Description', 'rise-blocks'),
      onChange: content => setAttributes({
        content
      })
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/components/inspector.js":
/*!****************************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/components/inspector.js ***!
  \****************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/icon-box/constants.js");
/* harmony import */ var _components_heading__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../components/heading */ "./src/components/heading.js");
/* harmony import */ var _components_layouts_icon__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../../components/layouts-icon */ "./src/components/layouts-icon.js");
/* harmony import */ var _custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../custom-control/icon-selector */ "./src/custom-control/icon-selector.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_image_control__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../../../../custom-control/image-control */ "./src/custom-control/image-control.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }



/* Contants */



/* Custom Components */









class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getDefaultImageAttrs", () => {
      const {
        image
      } = this.props.attributes;
      const {
        imageWidth
      } = _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"];
      const {
        width
      } = image.sizes.full;
      const imageWidthAttrs = {
        values: {
          desktop: width,
          tablet: width,
          mobile: width
        }
      };
      return Object(_helpers__WEBPACK_IMPORTED_MODULE_12__["merge"])(imageWidth, imageWidthAttrs);
    });
  }

  iconColorSettings() {
    const {
      attributes,
      setAttributes
    } = this.props;
    const {
      activeIconLayout,
      iconColors
    } = attributes;

    const updateIconColors = (property, value) => {
      const newData = _objectSpread({}, iconColors[activeIconLayout], {
        [property]: value
      });

      setAttributes({
        iconColors: _objectSpread({}, iconColors, {
          [activeIconLayout]: newData
        })
      });
    };

    switch (activeIconLayout) {
      case 'frame':
        return [{
          label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon', 'rise-blocks'),
          value: iconColors['frame'].color,
          onChange: color => updateIconColors('color', color)
        }, {
          label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon Border', 'rise-blocks'),
          value: iconColors['frame'].borderColor,
          onChange: borderColor => updateIconColors('borderColor', borderColor)
        }];

      case 'stack':
        return [{
          label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon', 'rise-blocks'),
          value: iconColors['stack'].color,
          onChange: color => updateIconColors('color', color)
        }, {
          label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon Background', 'rise-blocks'),
          value: iconColors['stack'].backgroundColor,
          onChange: backgroundColor => updateIconColors('backgroundColor', backgroundColor)
        }];

      default:
        return [{
          label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon', 'rise-blocks'),
          value: iconColors['initial'].color,
          onChange: color => updateIconColors('color', color)
        }];
    }
  }

  render() {
    const {
      setAttributes,
      attributes
    } = this.props;
    const {
      isImageIcon,
      image,
      imageWidth,
      imageRadius,
      isInit,
      titleTag,
      activeIconLayout,
      selectedIcon,
      iconsBoxSize,
      iconSize,
      iconBorderWidth,
      titleTypo,
      contentTypo,
      boxPadding,
      headingPadding,
      boxBackgroundColor,
      titleColor,
      contentColor
    } = attributes;
    const colorSettings = [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Box Background', 'rise-blocks'),
      value: boxBackgroundColor,
      onChange: boxBackgroundColor => setAttributes({
        boxBackgroundColor
      })
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-blocks'),
      value: titleColor,
      onChange: titleColor => setAttributes({
        titleColor
      })
    }, {
      value: contentColor,
      onChange: contentColor => setAttributes({
        contentColor
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-blocks')
    }];
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks')
    }, React.createElement("div", {
      className: "components-base-control"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BaseControl"], {
      className: "components-base-control__label",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Heading Tag', 'rise-blocks')
    }, React.createElement(_components_heading__WEBPACK_IMPORTED_MODULE_5__["default"], {
      minLevel: "1",
      maxLevel: "7",
      selectedLevel: titleTag,
      onChange: titleTag => {
        setAttributes({
          titleTag
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Use image as Icon', 'rise-blocks'),
      checked: isImageIcon,
      onChange: isImageIcon => {
        setAttributes({
          isImageIcon
        });
      }
    }))), !isImageIcon && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_components_layouts_icon__WEBPACK_IMPORTED_MODULE_6__["default"], {
      options: _constants__WEBPACK_IMPORTED_MODULE_4__["iconLayout"].layouts,
      activeLayout: activeIconLayout,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon Layouts', 'rise-blocks'),
      onChange: activeIconLayout => setAttributes({
        activeIconLayout
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BaseControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon', 'rise-blocks')
    }, React.createElement(_custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_7__["default"], {
      value: selectedIcon,
      icons: _constants__WEBPACK_IMPORTED_MODULE_3__["faIcons"],
      prefix: "fa",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Select an Icon', 'rise-blocks'),
      onChange: selectedIcon => setAttributes({
        selectedIcon
      })
    })), activeIconLayout !== 'initial' && React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_8__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon box size', 'rise-blocks'),
      beforeIcon: "",
      value: iconsBoxSize,
      onChange: iconsBoxSize => setAttributes({
        iconsBoxSize
      })
    }), activeIconLayout === 'frame' && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Border width', 'rise-blocks'),
      value: iconBorderWidth,
      min: "1",
      max: "50",
      onChange: iconBorderWidth => setAttributes({
        iconBorderWidth
      })
    }), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_8__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Icon size', 'rise-blocks'),
      beforeIcon: "",
      value: iconSize,
      onChange: iconSize => setAttributes({
        iconSize
      })
    })), isImageIcon && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Image', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_image_control__WEBPACK_IMPORTED_MODULE_11__["default"], {
      value: image,
      onSelect: image => {
        if (image.url != '') {
          const {
            width
          } = image;
          const {
            values
          } = imageWidth;
          const {
            desktop = width,
            tablet = width,
            mobile = width
          } = values;
          let updatedWidth = {
            values: {
              desktop,
              tablet,
              mobile
            }
          };
          const newImageWidth = Object(_helpers__WEBPACK_IMPORTED_MODULE_12__["merge"])(imageWidth, updatedWidth);
          setAttributes({
            imageWidth: newImageWidth
          });
        }

        setAttributes({
          image
        });
      }
    }), image.url != '' && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_8__["default"], {
      defaultValue: this.getDefaultImageAttrs(),
      value: imageWidth,
      onChange: imageWidth => setAttributes({
        imageWidth
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Width', 'rise-blocks'),
      beforeIcon: ""
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["RadiusControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Border Radius', 'rise-blocks'),
      allowReset: false,
      value: imageRadius,
      onChange: imageRadius => setAttributes({
        imageRadius
      })
    }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_9__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].titleTypo,
      value: titleTypo,
      onChange: titleTypo => setAttributes({
        titleTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_9__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Description', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].contentTypo,
      value: contentTypo,
      onChange: contentTypo => setAttributes({
        contentTypo
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Box (Padding)'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].boxPadding,
      value: boxPadding,
      onChange: boxPadding => setAttributes({
        boxPadding
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title (Padding)'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].headingPadding,
      value: headingPadding,
      onChange: headingPadding => setAttributes({
        headingPadding
      })
    })), isInit && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: [...colorSettings, ...this.iconColorSettings()]
    }));
  }

}

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/components/save.js":
/*!***********************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/components/save.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ "./src/blocks/icon-boxes/icon-box/constants.js");




const Save = props => {
  const {
    attributes
  } = props;
  const {
    alignment = _constants__WEBPACK_IMPORTED_MODULE_2__["defaultAttrs"].alignment,
    activeIconLayout,
    selectedIcon,
    titleTag,
    title,
    content,
    isImageIcon,
    image,
    block_id
  } = attributes;
  return React.createElement("div", {
    id: block_id
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-box ${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-${alignment}`
  }, (!isImageIcon && selectedIcon && selectedIcon.icon || isImageIcon && '' != image.url) && React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-wrapper`
  }, !isImageIcon && React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon ${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-${activeIconLayout}-icon-layout`
  }, React.createElement("i", {
    className: `fa ${selectedIcon.icon}`
  })), isImageIcon && React.createElement("img", {
    src: image.url,
    alt: image.alt
  })), (title || content) && React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-content`
  }, title && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: `h${titleTag}`,
    value: title,
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-title`
  }), content && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"].Content, {
    tagName: "p",
    value: content,
    className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-description`
  }))));
};

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/constants.js":
/*!*****************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/constants.js ***!
  \*****************************************************/
/*! exports provided: iconLayout, editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "iconLayout", function() { return iconLayout; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }


const {
  initial,
  stack,
  frame
} = _helpers_svg__WEBPACK_IMPORTED_MODULE_1__["default"].iconBoxPro.iconTypes;
const iconLayout = {
  active: 'initial',
  layouts: [{
    name: 'initial',
    icon: initial
  }, {
    name: 'frame',
    icon: frame
  }, {
    name: 'stack',
    icon: stack
  }]
};
/* Editor Attributes */

const editorAttrs = {
  isInit: false,
  titleTag: 2,
  alignment: 'center'
};
/* Editor And Save Atrributes */

const editorNSaveAttrs = {
  isImageIcon: false,
  image: {
    url: ''
  },
  imageRadius: 0,
  imageWidth: {
    activeUnit: "px",
    units: ['px'],
    range: {
      min: 1,
      max: 3000
    },
    values: {
      desktop: null,
      tablet: null,
      mobile: null
    }
  },

  /* Typography */
  gutter: 30,
  selectedIcon: {
    icon: "fa-apple",
    page: 2
  },
  activeIconLayout: iconLayout.active,
  titleTypo: {
    fontFamily: '',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 24,
        tablet: 24,
        mobile: 24
      }
    },
    fontWeight: 600,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.6,
        tablet: 1.6,
        mobile: 1.6
      }
    }
  },
  contentTypo: {
    fontFamily: '',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 15,
        tablet: 15,
        mobile: 15
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.5,
        tablet: 1.5,
        mobile: 1.5
      }
    }
  },

  /* Icon attributes */
  iconBorderWidth: 2,
  iconsBoxSize: {
    activeUnit: "px",
    units: ['px'],
    range: {
      min: 10,
      max: 200
    },
    values: {
      desktop: 80,
      tablet: 80,
      mobile: 80
    }
  },
  iconSize: {
    activeUnit: "px",
    units: ['px'],
    range: {
      min: 10,
      max: 200
    },
    values: {
      desktop: 40,
      tablet: 40,
      mobile: 40
    }
  },

  /* Spacing */
  boxPadding: {
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    isLinkActive: false,
    values: {
      'desktop': [60, 35, 60, 35],
      'tablet': [60, 35, 60, 35],
      'mobile': [60, 35, 60, 35]
    }
  },
  headingPadding: {
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'em', 'rem'],
    activeUnit: 'px',
    isLinkActive: false,
    values: {
      'desktop': [30, 0, 15, 0],
      'tablet': [30, 0, 15, 0],
      'mobile': [30, 0, 15, 0]
    }
  },

  /* Colors */
  titleColor: '#000',
  contentColor: 'rgb(111, 111, 111)',
  iconColors: {
    initial: {
      color: '#000000'
    },
    frame: {
      borderColor: '#000000',
      color: '#000000'
    },
    stack: {
      backgroundColor: '#000000',
      color: '#fff'
    }
  }
};
const defaultAttrs = _objectSpread({}, editorAttrs, {}, editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/index.js":
/*!*************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/index.js ***!
  \*************************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _style_editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./style/editor.scss */ "./src/blocks/icon-boxes/icon-box/style/editor.scss");
/* harmony import */ var _style_editor_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_style_editor_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _style_style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./style/style.scss */ "./src/blocks/icon-boxes/icon-box/style/style.scss");
/* harmony import */ var _style_style_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_style_style_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/icon-boxes/icon-box/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/save */ "./src/blocks/icon-boxes/icon-box/components/save.js");
/* harmony import */ var _components_attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/attributes */ "./src/blocks/icon-boxes/icon-box/components/attributes.js");








Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["register"])('icon-box', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Icon Box', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Display information along with icon and short description', 'rise-blocks'),
  keywords: ['icon box'],
  parent: ['rise-blocks/icon-boxes'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].iconBox,
  supports: {
    inserter: false,
    className: false
  },
  attributes: _components_attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_6__["default"]
});

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/style/editor.scss":
/*!**********************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/style/editor.scss ***!
  \**********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/icon-boxes/icon-box/style/style.scss":
/*!*********************************************************!*\
  !*** ./src/blocks/icon-boxes/icon-box/style/style.scss ***!
  \*********************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/icon-boxes/index.js":
/*!****************************************!*\
  !*** ./src/blocks/icon-boxes/index.js ***!
  \****************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/icon-boxes/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/icon-boxes/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/icon-boxes/components/save.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/icon-boxes/components/edit.js");
/* harmony import */ var _components_attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/attributes */ "./src/blocks/icon-boxes/components/attributes.js");








Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('icon-boxes', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Icon Boxes', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('This block enables you to display information along with Icon and show it either in grid or in a row.', 'rise-blocks'),
  keywords: ['icon boxes'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_4__["default"].iconBox,
  supports: {
    className: false
  },
  attributes: _components_attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_6__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});

/***/ }),

/***/ "./src/blocks/icon-boxes/styles/editor.scss":
/*!**************************************************!*\
  !*** ./src/blocks/icon-boxes/styles/editor.scss ***!
  \**************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/icon-boxes/styles/style.scss":
/*!*************************************************!*\
  !*** ./src/blocks/icon-boxes/styles/style.scss ***!
  \*************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/news-1/components/edit.js":
/*!**********************************************!*\
  !*** ./src/blocks/news-1/components/edit.js ***!
  \**********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inspector */ "./src/blocks/news-1/components/inspector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getExcerpt", post => {
      const {
        attributes: {
          enableContent,
          excerptLength = 20,
          contentTypo,
          contentColor
        }
      } = this.props;

      if (enableContent) {
        const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(contentTypo), {
          color: contentColor
        });

        return React.createElement("p", {
          style: style
        }, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["wordTrim"])(post['rise-blocks_excerpt'], excerptLength));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "title", ({
      title
    }, i) => {
      const {
        attributes: {
          enableTitle,
          titleTypo,
          titleColor,
          titleHoverColor
        }
      } = this.props;

      if (enableTitle) {
        const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(titleTypo), {
          color: titleColor,
          ':hover': {
            'color': titleHoverColor
          }
        });

        return React.createElement("h2", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-post-title`
        }, React.createElement("a", {
          key: i,
          onClick: e => e.preventDefault(),
          href: "#",
          style: style
        }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["decodeEntities"])(title.rendered.trim()) || Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('(Untitled)', 'rise-blocks')));
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getImgUrl", ({
      _embedded
    }) => {
      const {
        attributes: {
          imageSize
        }
      } = this.props;
      let img = '';

      if (!Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded['wp:featuredmedia']) && !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(_embedded['wp:featuredmedia'][0].media_details)) {
        var size = _embedded['wp:featuredmedia'][0].media_details.sizes;

        if (size[imageSize]) {
          img = size[imageSize] ? size[imageSize].source_url : '';
        } else {
          img = size['full'] ? size['full'].source_url : '';
        }
      }

      return img;
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "meta", post => {
      const {
        _embedded,
        date_gmt
      } = post;
      const rb_cat = post['rise-blocks_categories'];
      const {
        attributes: {
          metaColor,
          enableDate,
          enableCategory,
          enableAuthor,
          metaTypo,
          categories
        }
      } = this.props;

      const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(metaTypo), {
        color: metaColor
      });

      const dateFormat = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__experimentalGetSettings"])().formats.date;

      if (enableAuthor || enableDate || enableCategory) {
        return React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-meta-wrapper`
        }, enableAuthor && _embedded.author[0].avatar_urls && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-author meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#",
          title: Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["capitalize"])(_embedded.author[0].name)
        }, React.createElement("i", {
          className: "fa fa-user"
        }))), enableDate && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-post-date meta-content`
        }, React.createElement("a", {
          onClick: e => e.preventDefault(),
          style: style,
          href: "#"
        }, React.createElement("span", null, React.createElement("i", {
          className: "fa fa-calendar"
        }), " ", Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["dateI18n"])(dateFormat, date_gmt)))));
      }
    });
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      attributes: {
        block_id
      }
    } = this.props;
    setAttributes({
      'block_id': `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      attributes: {
        alignment,
        height,
        smallHeight,
        padding,
        overlayColor,
        enableCategory,
        categories,
        metaTypo,
        metaColor
      },
      setAttributes,
      latestPosts
    } = this.props;
    const hasPosts = Array.isArray(latestPosts) && latestPosts.length;

    if (!hasPosts) {
      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Placeholder"], {
        icon: "admin-post",
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('News 1', 'rise-blocks')
      }, !Array.isArray(latestPosts) ? React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Spinner"], null) : Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('No posts found.', 'rise-blocks')));
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement("section", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-wrapper ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-align-${alignment}`
    }, latestPosts.map((post, i) => {
      let odd = i % 3 == 0 ? 'big' : 'small';

      let style = _objectSpread({
        height: i % 3 == 0 ? Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getResponsiveRangeVal"])(height) : Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getResponsiveRangeVal"])(smallHeight),
        backgroundImage: 'url(' + this.getImgUrl(post) + ')'
      }, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getDimensionStyle"])('padding', padding));

      let rb_cat = post['rise-blocks_categories'];
      let cat = '';

      if (Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(categories) && Array.isArray(rb_cat) && rb_cat.length) {
        cat = rb_cat[0].cat_name;
      } else {
        let i = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["findIndex"])(rb_cat, {
          term_id: parseInt(categories)
        });
        cat = rb_cat[i].cat_name;
      }

      let catStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["getTypoStyle"])(metaTypo), {
        color: metaColor
      });

      return React.createElement("div", {
        key: i,
        style: style,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-card-wrapper col-${odd}`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-overlay`,
        style: {
          backgroundColor: overlayColor
        }
      }), React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-card`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-body`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-body-inner`
      }, enableCategory && React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-post-cat meta-content`
      }, React.createElement("a", {
        onClick: e => e.preventDefault(),
        style: catStyle,
        href: "#"
      }, React.createElement("span", null, cat))), this.title(post, i), this.meta(post), React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-news-1-post-content`
      }, this.getExcerpt(post))))));
    })), React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props));
  }

}

const applyWithSelect = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withSelect"])((select, {
  attributes
}) => {
  const {
    postsToShow,
    order,
    orderBy,
    categories
  } = attributes;
  const {
    getEntityRecords
  } = select('core');
  const latestPostsQuery = Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["pickBy"])({
    categories,
    order,
    orderby: orderBy,
    per_page: postsToShow,
    _embed: true
  }, value => !Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["isUndefined"])(value));
  return {
    latestPosts: getEntityRecords('postType', 'post', latestPostsQuery)
  };
});
/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["compose"])(applyWithSelect, _components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"], radium__WEBPACK_IMPORTED_MODULE_5__["default"])(Edit));

/***/ }),

/***/ "./src/blocks/news-1/components/inspector.js":
/*!***************************************************!*\
  !*** ./src/blocks/news-1/components/inspector.js ***!
  \***************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/news-1/constants.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");












class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super(props);
    this.state = {
      categoriesList: []
    };
  }

  componentDidMount() {
    const onGet = categoriesList => {
      this.setState({
        categoriesList
      });
    };

    const onError = () => {
      this.setState({
        categoriesList: []
      });
    };

    const CATEGORIES_LIST_QUERY = {
      per_page: -1
    };
    const params = {
      path: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["addQueryArgs"])(`/wp/v2/categories`, CATEGORIES_LIST_QUERY)
    };

    if (this.state.categoriesList.length == 0) {
      Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["apiFetch"])(params).then(onGet).catch(onError);
    }
  }

  render() {
    const {
      attributes: {
        order,
        orderBy,
        categories,
        postsToShow,
        titleTypo,
        contentTypo,
        metaTypo,
        enableTitle,
        enableContent,
        enableCategory,
        enableAuthor,
        enableDate,
        enableImage,
        imageSize,
        titleColor,
        titleHoverColor,
        contentColor,
        metaColor,
        overlayColor,
        excerptLength,
        height,
        smallHeight,
        padding
      },
      setAttributes,
      clientId
    } = this.props;
    const {
      categoriesList
    } = this.state;
    const titleColorData = {
      titleColor: {
        value: titleColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Normal', 'rise-blocks')
      },
      titleHoverColor: {
        value: titleHoverColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Hover', 'rise-blocks')
      }
    };
    const titleColorSetting = Object.keys(titleColorData).map(key => {
      const value = titleColorData[key].value;
      return {
        title: () => {
          return React.createElement("div", null, titleColorData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c
            })
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_9__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["QueryControls"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
      order,
      orderBy
    }, {
      categoriesList: categoriesList,
      selectedCategoryId: categories,
      numberOfItems: postsToShow,
      onCategoryChange: value => setAttributes({
        categories: '' !== value ? value : undefined
      }),
      maxItems: _components_wp__WEBPACK_IMPORTED_MODULE_1__["hooks"].applyFilters('riseBlocksBlogLimit', 5),
      onNumberOfItemsChange: value => setAttributes({
        postsToShow: value
      }),
      onOrderChange: value => setAttributes({
        order: value
      }),
      onOrderByChange: value => setAttributes({
        orderBy: value
      })
    }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Title', 'rise-blocks'),
      checked: enableTitle,
      onChange: enableTitle => {
        setAttributes({
          enableTitle
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Excerpt', 'rise-blocks'),
      checked: enableContent,
      onChange: enableContent => {
        setAttributes({
          enableContent
        });
      }
    }), enableContent && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ExcerptLengthControl"], {
      value: excerptLength,
      onChange: excerptLength => setAttributes({
        excerptLength
      })
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Category', 'rise-blocks'),
      checked: enableCategory,
      onChange: enableCategory => {
        setAttributes({
          enableCategory
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Author', 'rise-blocks'),
      checked: enableAuthor,
      onChange: enableAuthor => {
        setAttributes({
          enableAuthor
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable Date', 'rise-blocks'),
      checked: enableDate,
      onChange: enableDate => {
        setAttributes({
          enableDate
        });
      }
    }), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Height', 'rise-blocks'),
      beforeIcon: "",
      value: height,
      onChange: height => setAttributes({
        height
      })
    }), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Small Height', 'rise-blocks'),
      beforeIcon: "",
      value: smallHeight,
      onChange: smallHeight => setAttributes({
        smallHeight
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Image', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["ImageSizeControl"], {
      value: imageSize,
      onChange: imageSize => {
        setAttributes({
          imageSize
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-block'),
      value: titleTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].titleTypo,
      onChange: titleTypo => setAttributes({
        titleTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-block'),
      value: contentTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].contentTypo,
      onChange: contentTypo => setAttributes({
        contentTypo
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_4__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Meta', 'rise-block'),
      value: metaTypo,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].metaTypo,
      onChange: metaTypo => setAttributes({
        metaTypo
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_6__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Padding', 'rise-block'),
      value: padding,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_7__["def"].padding,
      onChange: padding => setAttributes({
        padding
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: [{
        value: contentColor,
        onChange: contentColor => setAttributes({
          contentColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Content', 'rise-blocks')
      }, {
        value: metaColor,
        onChange: metaColor => setAttributes({
          metaColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Meta', 'rise-blocks')
      }]
    }, React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_8__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Title', 'rise-blocks'),
      data: titleColorSetting
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["BackgroundOverlayControl"], {
      value: overlayColor,
      onChange: overlayColor => setAttributes({
        overlayColor
      })
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (InspectorPanel);

/***/ }),

/***/ "./src/blocks/news-1/constants.js":
/*!****************************************!*\
  !*** ./src/blocks/news-1/constants.js ***!
  \****************************************/
/*! exports provided: def */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "def", function() { return def; });
const def = {
  titleTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 22,
        tablet: 22,
        mobile: 22
      }
    },
    fontWeight: 600,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: '1.2',
        tablet: '1.2',
        mobile: '1.2'
      }
    }
  },
  contentTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 16,
        tablet: 16,
        mobile: 16
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: '1.8',
        tablet: '1.8',
        mobile: '1.8'
      }
    }
  },
  metaTypo: {
    fontFamily: 'Lato',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 12,
        tablet: 12,
        mobile: 12
      }
    },
    fontWeight: 200,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: '1.2',
        tablet: '1.2',
        mobile: '1.2'
      }
    }
  },
  padding: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: [20, 20, 20, 20],
      tablet: [20, 20, 20, 20],
      mobile: [20, 20, 20, 20]
    }
  }
};

/***/ }),

/***/ "./src/blocks/news-1/index.js":
/*!************************************!*\
  !*** ./src/blocks/news-1/index.js ***!
  \************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/news-1/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/news-1/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/news-1/components/edit.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Blog							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/






/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('news-1', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('News Block #1', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block enables blog articles either all posts or by category to create a grid layout for Magazine or Blogging websites in a few seconds.', 'rise-blocks'),
  keywords: ['news'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].news1,
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],

  save() {
    return null;
  }

});

/***/ }),

/***/ "./src/blocks/news-1/styles/editor.scss":
/*!**********************************************!*\
  !*** ./src/blocks/news-1/styles/editor.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/news-1/styles/style.scss":
/*!*********************************************!*\
  !*** ./src/blocks/news-1/styles/style.scss ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/profile-cards/components/attributes.js":
/*!***********************************************************!*\
  !*** ./src/blocks/profile-cards/components/attributes.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/blocks/profile-cards/constants.js");

const attributes = {
  /* For editor only */
  isInit: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  count: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].count
  },
  boxShadow: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].boxShadow
  },
  border: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].border
  },

  /* For editor and save */
  activeLayout: {
    type: 'string'
  },
  block_id: {
    type: 'string'
  },
  itemsPerRow: {
    type: 'number'
  },
  gutter: {
    type: 'number'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/profile-cards/components/edit.js":
/*!*****************************************************!*\
  !*** ./src/blocks/profile-cards/components/edit.js ***!
  \*****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js");
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inspector */ "./src/blocks/profile-cards/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/blocks/profile-cards/constants.js");
/* harmony import */ var _components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/parent-block-selector */ "./src/components/parent-block-selector.js");









const profileCardBlock = 'rise-blocks/profile-card';
const ALLOWED_BLOCKS = [profileCardBlock];
const getCount = memize__WEBPACK_IMPORTED_MODULE_2___default()(count => {
  return lodash_times__WEBPACK_IMPORTED_MODULE_3___default()(count, () => [profileCardBlock]);
});

class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  componentDidMount() {
    const {
      clientId,
      setAttributes,
      instanceId
    } = this.props;
    /*-----------------------------------------------------------------
     * Add custom class into root div of block to control editor style
     * So that grid visual(design) of backend and frontend looks same. 
     *----------------------------------------------------------------- */

    Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["addWrapperClass"])(clientId);
    /*-------------------------------------------------------*  
    * Block_id must be  update on componentDidmount
    * otherwise we will get same block_id while duplicating
    * Blocks.( Parent BLocks)
    *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-wp-block-rise-blocks-profile-cards-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      isSelected,
      clientId,
      setAttributes
    } = this.props;
    let {
      activeLayout,
      count,
      boxShadow,
      border,
      isInit
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["setInitialAttrs"])(this.props, _constants__WEBPACK_IMPORTED_MODULE_7__["editorNSaveAttrs"]);
      return null;
    }

    const wrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_4___default()('wp-block-rise-blocks-profile-cards', `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${activeLayout}-layout`, {
      [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-border-enable`]: border
    }, {
      [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-shadow-enable`]: boxShadow
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, isSelected && React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_5__["default"], this.props), React.createElement("div", {
      className: wrapperClassName
    }, React.createElement(_components_parent_block_selector__WEBPACK_IMPORTED_MODULE_8__["default"], {
      icon: "profileCard",
      label: "Profile Cards"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"], {
      template: getCount(count),
      allowedBlocks: ALLOWED_BLOCKS
    })), Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["shouldShowAddButton"])(clientId) && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["IconButton"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-add-new-item`,
      isLarge: true,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add Profile Card', 'rise-blocks'),
      icon: "insert",
      onClick: () => {
        const created = Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["createBlock"])(profileCardBlock);
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').insertBlock(created, undefined, clientId);
        setAttributes({
          count: ++count
        });
      }
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Add New Profile Card', 'rise-blocks')));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/profile-cards/components/inspector.js":
/*!**********************************************************!*\
  !*** ./src/blocks/profile-cards/components/inspector.js ***!
  \**********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_layouts_icon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/layouts-icon */ "./src/components/layouts-icon.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/blocks/profile-cards/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }






class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  updateChildBlocksAttributes(activeLayout) {
    const {
      clientId
    } = this.props;
    const innerBlocks = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["select"])('editor').getBlocksByClientId(clientId)[0].innerBlocks;
    innerBlocks.forEach(block => {
      const {
        attributes,
        clientId
      } = block;

      const updatedAttributes = _objectSpread({}, attributes, {
        activeLayout
      });

      Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["dispatch"])('editor').updateBlockAttributes(clientId, updatedAttributes);
    });
  }

  render() {
    const {
      setAttributes,
      attributes,
      clientId
    } = this.props;
    const {
      gutter,
      itemsPerRow,
      activeLayout,
      boxShadow,
      border
    } = attributes;

    const setColWidthWrapper = (itemsPerRow, gutter, activeLayout) => {
      if ('circle' === activeLayout) Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["setColWidth"])(clientId, itemsPerRow, gutter, 'parent', _constants__WEBPACK_IMPORTED_MODULE_3__["initGap"]);else Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["setColWidth"])(clientId, itemsPerRow, gutter, 'parent');
    };

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_5__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_layouts_icon__WEBPACK_IMPORTED_MODULE_2__["default"], {
      options: _constants__WEBPACK_IMPORTED_MODULE_3__["profileCardLayouts"].layouts,
      activeLayout: activeLayout,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Layouts', 'rise-blocks'),
      onChange: activeLayout => {
        setColWidthWrapper(itemsPerRow, gutter, activeLayout);
        this.updateChildBlocksAttributes(activeLayout);
        setAttributes({
          activeLayout
        });
      }
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Number of Items per Row', 'rise-blocks'),
      value: itemsPerRow,
      onChange: itemsPerRow => {
        setColWidthWrapper(itemsPerRow, gutter, activeLayout);
        setAttributes({
          itemsPerRow
        });
      },
      min: 1,
      max: 4
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable/Disable Shadow'),
      checked: boxShadow,
      onChange: boxShadow => setAttributes({
        boxShadow
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["ToggleControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Enable/Disable border'),
      checked: border,
      onChange: border => setAttributes({
        border
      })
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Gutter', 'rise-blocks'),
      help: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Gap between icon boxes', 'rise-blocks'),
      value: gutter,
      onChange: gutter => {
        setColWidthWrapper(itemsPerRow, gutter, activeLayout);
        if (gutter === 0) setAttributes({
          gutter,
          boxShadow: false
        });else setAttributes({
          gutter,
          boxShadow: true
        });
      },
      min: 0,
      max: 40
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/profile-cards/components/save.js":
/*!*****************************************************!*\
  !*** ./src/blocks/profile-cards/components/save.js ***!
  \*****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);




const Save = props => {
  const {
    attributes
  } = props;
  const {
    boxShadow,
    activeLayout,
    block_id,
    border
  } = attributes;
  const wrapperClassName = classnames__WEBPACK_IMPORTED_MODULE_2___default()('wp-block-rise-blocks-profile-cards', `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-save`, `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${activeLayout}-layout`, {
    [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-shadow-enable`]: boxShadow
  }, {
    [`${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-border-enable`]: border
  });
  return React.createElement("div", {
    id: block_id
  }, React.createElement("div", {
    className: wrapperClassName
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-block-lists`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null))));
};

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/profile-cards/constants.js":
/*!***********************************************!*\
  !*** ./src/blocks/profile-cards/constants.js ***!
  \***********************************************/
/*! exports provided: profileCardLayouts, initGap, editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "profileCardLayouts", function() { return profileCardLayouts; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "initGap", function() { return initGap; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }


const {
  circle,
  rectangle
} = _helpers_svg__WEBPACK_IMPORTED_MODULE_1__["default"].profileCardPro;
const profileCardLayouts = {
  active: 'circle',
  layouts: [{
    name: 'circle',
    icon: circle
  }, {
    name: 'rectangle',
    icon: rectangle
  }]
};
const initGap = 25;
/* Default Attributes */

const editorAttrs = {
  isInit: false,
  count: 2,
  boxShadow: true,
  border: false
};
const editorNSaveAttrs = {
  itemsPerRow: 2,
  gutter: 30,
  activeLayout: profileCardLayouts.active
};
const defaultAttrs = _objectSpread({}, editorAttrs, {}, editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/profile-cards/index.js":
/*!*******************************************!*\
  !*** ./src/blocks/profile-cards/index.js ***!
  \*******************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/profile-cards/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/profile-cards/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/profile-cards/components/save.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/profile-cards/components/edit.js");
/* harmony import */ var _components_attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/attributes */ "./src/blocks/profile-cards/components/attributes.js");








Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('profile-cards', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Profile Cards', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["__"])('Allow to add User information along with social media', 'rise-blocks'),
  keywords: ['profile cards', 'profile', 'cards'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_4__["default"].profileCard,
  supports: {
    className: false
  },
  attributes: _components_attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_6__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/components/attributes.js":
/*!************************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/components/attributes.js ***!
  \************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _contants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../contants */ "./src/blocks/profile-cards/profile-card/contants.js");

const attributes = {
  /* EDIT ONLY ATTRIBUTES */
  block_id: {
    type: 'string'
  },
  isInit: {
    type: 'boolean',
    default: _contants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].isInit
  },
  count: {
    type: 'number',
    default: _contants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].count
  },
  nameTag: {
    type: 'number',
    default: _contants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].nameTag
  },
  designation: {
    type: 'string'
  },
  name: {
    type: 'string'
  },
  content: {
    type: 'string'
  },

  /* Image */
  image: {
    type: 'object'
  },

  /* EDIT AND SAVE ATTRIBUTES */
  backgroundColor: {
    type: 'string'
  },
  backgroundPosition: {
    type: 'string'
  },
  activeLayout: {
    type: 'string'
  },

  /* Spacing */
  namePadding: {
    type: 'object'
  },
  designationPadding: {
    type: 'object'
  },

  /* Typography */
  nameTypography: {
    type: 'object'
  },
  designationTypography: {
    type: 'object'
  },
  contentTypography: {
    type: 'object'
  },

  /* Colors */
  nameColor: {
    type: 'string'
  },
  designationColor: {
    type: 'string'
  },
  contentColor: {
    type: 'string'
  },
  socialMediaColor: {
    type: 'string'
  },
  socialMediaHoverColor: {
    type: 'string'
  },

  /* Social Media */
  socialMedia: {
    type: 'array'
  },
  socialMediaBorderRadius: {
    type: 'object'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/components/edit.js":
/*!******************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/components/edit.js ***!
  \******************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./inspector */ "./src/blocks/profile-cards/profile-card/components/inspector.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _contants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../contants */ "./src/blocks/profile-cards/profile-card/contants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../constants */ "./src/blocks/profile-cards/constants.js");
/* harmony import */ var _social_media__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./social-media */ "./src/blocks/profile-cards/profile-card/components/social-media.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_upgrader__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../components/upgrader */ "./src/components/upgrader.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }




/* plugin constants */


/* current block constants */


/* parent constants */






class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getParentAttrs", memize__WEBPACK_IMPORTED_MODULE_3___default()(() => {
      const {
        itemsPerRow,
        gutter,
        activeLayout
      } = Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getParentAttrs"])(this.props);
      return {
        gutter,
        itemsPerRow,
        activeLayout
      };
    }));
  }

  componentDidMount() {
    const {
      clientId,
      instanceId,
      setAttributes
    } = this.props;
    const {
      itemsPerRow,
      gutter,
      activeLayout
    } = this.getParentAttrs();
    /*----------------------------------------*
     * Set column width
     * Set the grid width of child blocks
     *----------------------------------------*/

    if ('circle' === activeLayout) Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["setColWidth"])(clientId, itemsPerRow, gutter, 'child', _constants__WEBPACK_IMPORTED_MODULE_6__["initGap"]);else Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["setColWidth"])(clientId, itemsPerRow, gutter, 'child');
    /*-----------------------------------------------------------------
     * Add custom class into root div of block to control editor style
     * So that grid visual(design) of backend and frontend looks same. 
     *----------------------------------------------------------------- */

    Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["addWrapperClass"])(clientId, 'block-lists');
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-wp-block-rise-blocks-profile-card-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["uniqueId"])()}`
    });
  }

  render() {
    const {
      attributes,
      setAttributes,
      isSelected,
      clientId
    } = this.props;
    const {
      activeLayout,

      /* Image */
      image,
      backgroundPosition,
      backgroundColor,
      designation,
      name,
      content,
      nameTag,
      isInit,

      /* Typography */
      nameTypography,
      designationTypography,
      contentTypography,

      /* Space */
      namePadding,
      designationPadding,

      /* Colors */
      nameColor,
      designationColor,
      contentColor,
      socialMediaColor,
      socialMediaHoverColor,

      /* Social Media */
      socialMedia,
      socialMediaBorderRadius
    } = attributes;
    /*--------------------------------------------------------*
    * Set Initial Attributes
    * Set the default value of attributes once. it's helps
    * to set default value on server side too.
    *---------------------------------------------------------*/

    if (!isInit) {
      Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["setInitialAttrs"])(this.props, _contants__WEBPACK_IMPORTED_MODULE_5__["editorNSaveAttrs"]);
      return null;
    }

    const imageStyle = {
      backgroundImage: image ? `url('${image.url}')` : '',
      backgroundPosition
    };

    const nameStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getTypoStyle"])(nameTypography), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getDimensionStyle"])('padding', namePadding), {
      color: nameColor
    });

    const designationStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getTypoStyle"])(designationTypography), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getDimensionStyle"])('padding', designationPadding), {
      color: designationColor,
      border: 'rectangle' === activeLayout ? `1px solid ${designationColor}` : ''
    });

    const contentStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["getTypoStyle"])(contentTypography), {
      color: contentColor
    });

    if (Object(_helpers__WEBPACK_IMPORTED_MODULE_8__["shouldShowUpgrader"])(clientId)) {
      return React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card wp-block-rise-blocks-profile-card`
      }, React.createElement(_components_upgrader__WEBPACK_IMPORTED_MODULE_9__["default"], null));
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, isSelected && React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_2__["default"], this.props), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card wp-block-rise-blocks-profile-card`,
      style: {
        backgroundColor
      }
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card-image`,
      style: imageStyle
    }, "url('')" === imageStyle.backgroundImage && React.createElement("i", {
      className: "dashicons dashicons-format-image"
    })), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-description-wrapper`
    }, 'rectangle' === activeLayout && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card-designation`
    }, React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-designatio}n`,
      style: designationStyle
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      value: designation,
      keepPlaceholderOnFocus: true,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Designation', 'rise-blocks'),
      onChange: designation => setAttributes({
        designation
      })
    }))), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card-title`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      style: nameStyle,
      tagName: `h${nameTag}`,
      value: name,
      keepPlaceholderOnFocus: true,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Name', 'rise-blocks'),
      onChange: name => setAttributes({
        name
      })
    })), 'circle' === activeLayout && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card-designation`
    }, React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-designation`,
      style: designationStyle
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      value: designation,
      keepPlaceholderOnFocus: true,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Designation', 'rise-blocks'),
      onChange: designation => setAttributes({
        designation
      })
    }))), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-profile-card-description`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["RichText"], {
      style: contentStyle,
      tagName: "p",
      value: content,
      keepPlaceholderOnFocus: true,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Desctiption', 'rise-blocks'),
      onChange: content => setAttributes({
        content
      })
    })), 'rectangle' === activeLayout && socialMedia && socialMedia.length > 0 && React.createElement(_social_media__WEBPACK_IMPORTED_MODULE_7__["default"], {
      socialMediaArr: socialMedia,
      socialMediaBorderRadius: socialMediaBorderRadius,
      socialMediaColor: socialMediaColor,
      socialMediaHoverColor: socialMediaHoverColor
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/components/inspector.js":
/*!***********************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/components/inspector.js ***!
  \***********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _custom_control_image_control__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../custom-control/image-control */ "./src/custom-control/image-control.js");
/* harmony import */ var _custom_control_repeater__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../custom-control/repeater */ "./src/custom-control/repeater.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _contants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../contants */ "./src/blocks/profile-cards/profile-card/contants.js");
/* harmony import */ var _components_heading__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../../components/heading */ "./src/components/heading.js");
/* harmony import */ var _custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../../custom-control/icon-selector */ "./src/custom-control/icon-selector.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../../custom-control/dimension */ "./src/custom-control/dimension.js");





/* Contants */



/* Custom Components */





class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getColorSettings", () => {
      const {
        attributes,
        setAttributes
      } = this.props;
      const {
        nameColor,
        designationColor,
        contentColor,
        socialMediaColor,
        socialMediaHoverColor,
        activeLayout,
        backgroundColor
      } = attributes;
      const commonColorSettings = [{
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Name', 'rise-blocks'),
        value: nameColor,
        onChange: nameColor => setAttributes({
          nameColor
        })
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Designation', 'rise-blocks'),
        value: designationColor,
        onChange: designationColor => setAttributes({
          designationColor
        })
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Description', 'rise-blocks'),
        value: contentColor,
        onChange: contentColor => setAttributes({
          contentColor
        })
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Background Color', 'rise-blocks'),
        value: backgroundColor,
        onChange: backgroundColor => setAttributes({
          backgroundColor
        })
      }];
      const rectangleLayoutColorSettings = [{
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Media', 'rise-blocks'),
        value: socialMediaColor,
        onChange: socialMediaColor => setAttributes({
          socialMediaColor
        })
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Media Text Color on Hover', 'rise-blocks'),
        value: socialMediaHoverColor,
        onChange: socialMediaHoverColor => setAttributes({
          socialMediaHoverColor
        })
      }];
      return 'rectangle' === activeLayout ? [...commonColorSettings, ...rectangleLayoutColorSettings] : commonColorSettings;
    });
  }

  render() {
    const {
      setAttributes,
      attributes
    } = this.props;
    const {
      activeLayout,
      nameTag,

      /* Image */
      image,
      backgroundPosition,

      /* Spacing */
      namePadding,
      designationPadding,

      /* Typography */
      nameTypography,
      designationTypography,
      contentTypography,

      /* Social Media */
      socialMedia,
      socialMediaBorderRadius
    } = attributes;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('General', 'rise-blocks')
    }, React.createElement("div", {
      className: "components-base-control"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BaseControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Heading Tag', 'rise-blocks')
    }, React.createElement(_components_heading__WEBPACK_IMPORTED_MODULE_7__["default"], {
      minLevel: "1",
      maxLevel: "7",
      selectedLevel: nameTag,
      onChange: nameTag => {
        setAttributes({
          nameTag
        });
      }
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BaseControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Image', 'rise-blocks')
    }, React.createElement(_custom_control_image_control__WEBPACK_IMPORTED_MODULE_3__["default"], {
      value: image,
      onSelect: image => setAttributes({
        image
      })
    })), image.url && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["BackgroundPosition"], {
      value: backgroundPosition,
      onChange: backgroundPosition => setAttributes({
        backgroundPosition
      })
    }))), 'rectangle' === activeLayout && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Media', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Links (border radius)', 'rise-block'),
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].socialMediaBorderRadius,
      value: socialMediaBorderRadius,
      onChange: socialMediaBorderRadius => setAttributes({
        socialMediaBorderRadius
      })
    }), React.createElement(_custom_control_repeater__WEBPACK_IMPORTED_MODULE_4__["default"], {
      value: socialMedia,
      default: {
        url: '',
        icon: {}
      },
      limit: 3,
      onChange: socialMedia => setAttributes({
        socialMedia: JSON.parse(socialMedia)
      }),
      cb: ($this, data, i) => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_8__["default"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Select an Icon', 'rise-blocks'),
        value: data.icon,
        prefix: "fa",
        icons: _constants__WEBPACK_IMPORTED_MODULE_5__["faSocialIcons"],
        onChange: $this.handleChange(i, 'icon')
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["TextControl"], {
        placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('URL', 'rise-blocks'),
        value: data.url,
        onChange: $this.handleChange(i, 'url')
      }))
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Name (Margin)', 'rise-block'),
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].namePadding,
      value: namePadding,
      onChange: namePadding => setAttributes({
        namePadding
      })
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_10__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Designation (Margin)', 'rise-block'),
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].designationPadding,
      value: designationPadding,
      onChange: designationPadding => setAttributes({
        designationPadding
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_9__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Name', 'rise-block'),
      value: nameTypography,
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].nameTypography,
      onChange: nameTypography => setAttributes({
        nameTypography
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_9__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Designation', 'rise-block'),
      value: designationTypography,
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].designationTypography,
      onChange: designationTypography => setAttributes({
        designationTypography
      })
    }), React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_9__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Description', 'rise-block'),
      value: contentTypography,
      defaultValue: _contants__WEBPACK_IMPORTED_MODULE_6__["defaultAttrs"].contentTypography,
      onChange: contentTypography => setAttributes({
        contentTypography
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_2__["PanelColor"], {
      colorSettings: this.getColorSettings()
    }));
  }

}

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/components/save.js":
/*!******************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/components/save.js ***!
  \******************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Save; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _social_media__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./social-media */ "./src/blocks/profile-cards/profile-card/components/social-media.js");



class Save extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      attributes
    } = this.props;
    const {
      block_id,
      image,
      activeLayout,

      /* Content */
      designation,
      name,
      nameTag,
      content,

      /* SocialMedia */
      socialMedia
    } = attributes;

    const Designation = () => React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-profile-card-designation`
    }, React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-designation`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"].Content, {
      value: designation
    })));

    return React.createElement("div", {
      id: block_id
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-profile-card`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-profile-card-image`
    }, image.url.length === 0 && React.createElement("i", {
      className: "dashicons dashicons-format-image"
    })), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-description-wrapper`
    }, 'rectangle' === activeLayout && designation && React.createElement(Designation, null), name && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-profile-card-title`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"].Content, {
      tagName: `h${nameTag}`,
      value: name
    })), 'circle' === activeLayout && designation && React.createElement(Designation, null), content && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-profile-card-description`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RichText"].Content, {
      tagName: "p",
      value: content
    })), activeLayout === 'rectangle' && socialMedia && socialMedia.length > 0 && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-social-media`
    }, socialMedia.map(({
      url,
      icon = {},
      newTab = true
    }, i) => {
      let target = newTab ? '_blank' : '';
      return React.createElement("a", {
        key: `social-media-${i}`,
        href: url ? url : '#',
        target: target,
        rel: "noopener noreferrer"
      }, React.createElement("i", {
        className: `fa ${icon.icon}`
      }));
    })))));
  }

}

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/components/social-media.js":
/*!**************************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/components/social-media.js ***!
  \**************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var radium__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! radium */ "./node_modules/radium/es/index.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





const SocialMedia = props => {
  const {
    socialMediaArr = [],
    socialMediaBorderRadius = {},
    socialMediaColor = '',
    socialMediaHoverColor = ''
  } = props;

  const socialMediaStyle = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])('border-redius', socialMediaBorderRadius), {
    border: `1px solid ${socialMediaColor}`,
    color: socialMediaColor,
    ':hover': {
      background: socialMediaColor,
      color: socialMediaHoverColor
    }
  });

  return React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-social-media`
  }, socialMediaArr.map(({
    url,
    icon = {},
    newTab = true
  }, i) => {
    let target = newTab ? '_blank' : '';
    return React.createElement("a", {
      key: `social-media-${i}`,
      href: url ? url : '#',
      target: target,
      style: socialMediaStyle,
      rel: "noopener noreferrer"
    }, React.createElement("i", {
      className: `fa ${icon.icon}`
    }));
  }));
};

/* harmony default export */ __webpack_exports__["default"] = (Object(radium__WEBPACK_IMPORTED_MODULE_2__["default"])(SocialMedia));

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/contants.js":
/*!***********************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/contants.js ***!
  \***********************************************************/
/*! exports provided: editorNSaveAttrs, defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "editorNSaveAttrs", function() { return editorNSaveAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants */ "./src/blocks/profile-cards/constants.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }


/* Editor only Attributes */

const editorAttrs = {
  count: 0,
  nameTag: 3,
  isInit: false
};
/* Editor And Save Attributes */

const editorNSaveAttrs = {
  /* Image */
  activeLayout: _constants__WEBPACK_IMPORTED_MODULE_1__["profileCardLayouts"].active,
  backgroundPosition: 'center center',
  backgroundColor: 'transparent',
  image: {
    url: ''
  },

  /* Spacing */
  namePadding: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: ['15', '', '10', ''],
      tablet: ['15', '', '10', ''],
      mobile: ['15', '', '10', '']
    }
  },
  designationPadding: {
    activeUnit: 'px',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop', 'tablet', 'mobile'],
    units: ['px', 'rem'],
    values: {
      desktop: ['', '', '', ''],
      tablet: ['', '', '', ''],
      mobile: ['', '', '', '']
    }
  },

  /* Typography */
  nameTypography: {
    fontFamily: '',
    textTransform: 'capitalize',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'rem',
      values: {
        desktop: 1.7,
        tablet: 1.7,
        mobile: 1.7
      }
    },
    fontWeight: 600,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.5,
        tablet: 1.5,
        mobile: 1.5
      }
    }
  },
  designationTypography: {
    fontFamily: '',
    textTransform: 'capitalize',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'rem',
      values: {
        desktop: 0.8,
        tablet: 0.8,
        mobile: 0.8
      }
    },
    fontWeight: 500,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.9,
        tablet: 1.9,
        mobile: 1.9
      }
    }
  },
  contentTypography: {
    fontFamily: '',
    textTransform: 'initial',
    fontSize: {
      units: ['px', 'em', 'rem'],
      activeUnit: 'px',
      values: {
        desktop: 16,
        tablet: 16,
        mobile: 16
      }
    },
    fontWeight: 400,
    lineHeight: {
      activeUnit: '',
      units: [''],
      values: {
        desktop: 1.8,
        tablet: 1.8,
        mobile: 1.8
      }
    }
  },

  /* Colors */
  nameColor: '#1b1b1b',
  designationColor: '#1b1b1b',
  contentColor: '#8e9696',
  socialMediaColor: '#000',
  socialMediaHoverColor: '#fff',

  /* Social Media */
  socialMediaBorderRadius: {
    activeUnit: '%',
    isLinkActive: true,
    properties: ['top', 'right', 'bottom', 'left'],
    responsiveViews: ['desktop'],
    units: ['px', '%'],
    values: {
      desktop: [0, 0, 0, 0]
    }
  },
  socialMedia: [{
    url: 'http://www.facebook.com',
    icon: {
      icon: ' fa fa-facebook-official',
      page: 1
    }
  }]
};
const defaultAttrs = _objectSpread(_objectSpread({}, editorAttrs), editorNSaveAttrs);

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/index.js":
/*!********************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/index.js ***!
  \********************************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/profile-cards/profile-card/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/profile-cards/profile-card/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/profile-cards/profile-card/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/save */ "./src/blocks/profile-cards/profile-card/components/save.js");
/* harmony import */ var _components_attributes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components/attributes */ "./src/blocks/profile-cards/profile-card/components/attributes.js");








Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["register"])('profile-card', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Profile card', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Display information along with icon and short description', 'rise-blocks'),
  keywords: ['Profile card'],
  parent: ['rise-blocks/profile-cards'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].profileCard,
  supports: {
    inserter: false,
    className: false
  },
  attributes: _components_attributes__WEBPACK_IMPORTED_MODULE_7__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_6__["default"]
});

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/styles/editor.scss":
/*!******************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/styles/editor.scss ***!
  \******************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/profile-cards/profile-card/styles/style.scss":
/*!*****************************************************************!*\
  !*** ./src/blocks/profile-cards/profile-card/styles/style.scss ***!
  \*****************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/profile-cards/styles/editor.scss":
/*!*****************************************************!*\
  !*** ./src/blocks/profile-cards/styles/editor.scss ***!
  \*****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/profile-cards/styles/style.scss":
/*!****************************************************!*\
  !*** ./src/blocks/profile-cards/styles/style.scss ***!
  \****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/section/attributes.js":
/*!******************************************!*\
  !*** ./src/blocks/section/attributes.js ***!
  \******************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/section/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  padding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].padding
  },
  margin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].margin
  },
  containerType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].containerType
  },
  containerWidth: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].containerWidth
  },
  bgType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].bgType
  },
  bgImage: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].bgImage
  },
  bgPosition: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].bgPosition
  },
  bgColor: {
    type: 'string'
  },
  bgAttachment: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].bgAttachment
  },
  bgOverlay: {
    type: 'string'
  },
  enableShapeDivider: {
    type: 'boolean',
    default: false
  },
  verticalFlip: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].verticalFlip
  },
  horizontalFlip: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].horizontalFlip
  },
  shapeColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shapeColor
  },
  shapeHeight: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shapeHeight
  },
  shape: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shape
  },
  shapeBgColor: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shapeBgColor
  },
  shapePosition: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shapePosition
  },
  shapeZIndex: {
    type: 'numberic',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["default"].shapeZIndex
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/section/components/edit.js":
/*!***********************************************!*\
  !*** ./src/blocks/section/components/edit.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./inspector */ "./src/blocks/section/components/inspector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../constants */ "./src/blocks/section/constants.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "shape", () => {
      const {
        attributes: {
          verticalFlip = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].verticalFlip,
          horizontalFlip = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].horizontalFlip,
          shapeColor = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeColor,
          shapeHeight = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeHeight,
          shape = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shape,
          shapePosition = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapePosition,
          shapeBgColor = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeBgColor,
          shapeZIndex = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeZIndex
        }
      } = this.props;
      let shapeStyle = {
        backgroundColor: shapeBgColor,
        zIndex: shapeZIndex
      };

      if (shapePosition == 'top' && !verticalFlip) {
        shapeStyle.marginBottom = `-${Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getResponsiveRangeVal"])(shapeHeight)}`;
      } else if (verticalFlip) {
        shapeStyle.marginTop = `-${Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getResponsiveRangeVal"])(shapeHeight)}`;
      }

      let shapeClass = '';

      if (horizontalFlip) {
        shapeClass += 'horizontally-flipped';
      }

      if (verticalFlip) {
        shapeClass += shapeClass.length == 0 ? '' : ' ';
        shapeClass += 'vertically-flipped';
      }

      return React.createElement("div", {
        style: shapeStyle,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-shape ${shapePosition} ${shapeClass}`
      }, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getShapeDivider"])(shape, {
        height: Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getResponsiveRangeVal"])(shapeHeight),
        fill: shapeColor
      }));
    });
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      attributes: {
        block_id
      }
    } = this.props;
    setAttributes({
      'block_id': `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-block-instance-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      setAttributes,
      attributes: {
        block_id,
        alignment,
        padding,
        margin,
        bgImage,
        bgPosition,
        bgColor,
        bgType,
        bgAttachment,
        bgOverlay,
        enableShapeDivider,
        verticalFlip = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].verticalFlip,
        horizontalFlip = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].horizontalFlip,
        shapeColor = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeColor,
        shapeHeight = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeHeight,
        shape = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shape,
        shapePosition = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapePosition,
        shapeBgColor = _constants__WEBPACK_IMPORTED_MODULE_5__["default"].shapeBgColor
      }
    } = this.props;

    const style = _objectSpread({
      backgroundPosition: bgPosition
    }, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], padding), {}, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])(['marginTop', 'marginRight', 'marginBottom', 'marginLeft'], margin), {
      backgroundAttachment: bgAttachment ? 'fixed' : ''
    });

    if ('image' == bgType && bgImage && bgImage.url) {
      style.backgroundImage = `url(${bgImage.url})`;
    } else if ('color' == bgType && bgColor) {
      style.backgroundColor = bgColor;
    }

    const overlayStyle = {
      backgroundColor: bgOverlay
    };
    const toolbarControls = [{
      icon: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
        fill: "none",
        viewBox: "0 0 24 24",
        xmlns: "http://www.w3.org/2000/svg"
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["G"], {
        fill: "currentColor"
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m6 5.5h12c.2761 0 .5.22386.5.5v3h1.5v-3c0-1.10457-.8954-2-2-2h-12c-1.10457 0-2 .89543-2 2v3h1.5v-3c0-.27614.22386-.5.5-.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m22 13h-20v-2h20z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m20 16.5h-1.5v-1.5h1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m18 20c1.1046 0 2-.8954 2-2h-1.5c0 .2761-.2239.5-.5.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m7.5 18.5h2v1.5h-2z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m11 20v-1.5h2v1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m5.5 18c0 .2761.22386.5.5.5v1.5c-1.10457 0-2-.8954-2-2z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m4 16.5h1.5v-1.5h-1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m14.5 18.5v1.5h2v-1.5z"
      }))),
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Flip vertically', 'rise-blocks'),
      isActive: !!verticalFlip,
      onClick: () => setAttributes({
        verticalFlip: !verticalFlip
      })
    }, {
      icon: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
        fill: "none",
        viewBox: "0 0 24 24",
        xmlns: "http://www.w3.org/2000/svg"
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["G"], {
        fill: "currentColor"
      }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m5.5 18v-12c0-.27614.22386-.5.5-.5h3v-1.5h-3c-1.10457 0-2 .89543-2 2v12c0 1.1046.89543 2 2 2h3v-1.5h-3c-.27614 0-.5-.2239-.5-.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m13 2v20h-2v-20z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m16.5 4v1.5h-1.5v-1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m20 6c0-1.10457-.8954-2-2-2v1.5c.2761 0 .5.22386.5.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m18.5 16.5v-2h1.5v2z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m20 13h-1.5v-2h1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m18 18.5c.2761 0 .5-.2239.5-.5h1.5c0 1.1046-.8954 2-2 2z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m16.5 20v-1.5h-1.5v1.5z"
      }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Path"], {
        d: "m18.5 9.5h1.5v-2h-1.5z"
      }))),
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Flip horiztonally', 'rise-blocks'),
      isActive: !!horizontalFlip,
      onClick: () => setAttributes({
        horizontalFlip: !horizontalFlip
      })
    }];
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, enableShapeDivider && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Toolbar"], {
      controls: toolbarControls
    })), React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_4__["default"], this.props), React.createElement("div", {
      id: block_id,
      className: className,
      style: style
    }, enableShapeDivider && this.shape(), 'image' == bgType && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-overlay`,
      style: overlayStyle
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InnerBlocks"], {
      templateLock: false
    })));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/section/components/inspector.js":
/*!****************************************************!*\
  !*** ./src/blocks/section/components/inspector.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _custom_control_image_control__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../custom-control/image-control */ "./src/custom-control/image-control.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/blocks/section/constants.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");










class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      setAttributes,
      attributes: {
        padding,
        margin,
        bgType,
        bgImage,
        bgPosition,
        bgColor,
        bgOverlay,
        containerType,
        containerWidth,
        bgAttachment,
        enableShapeDivider,
        shapeHeight = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapeHeight,
        shapeColor = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapeColor,
        shape = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shape,
        shapeBgColor = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapeBgColor,
        shapePosition = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapePosition,
        shapeZIndex = _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapeZIndex
      },
      clientId
    } = this.props;
    const shapes = _components_wp__WEBPACK_IMPORTED_MODULE_0__["hooks"].applyFilters('riseBlocksShapes', [{
      shape: 'hills',
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Hills', 'rise-blocks')
    }, {
      shape: 'angled',
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Angled', 'rise-blocks')
    }, {
      shape: 'waves',
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Waves', 'rise-blocks')
    }]);
    const bgData = {
      shapeColor: {
        value: shapeColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Color', 'rise-blocks')
      },
      shapeBgColor: {
        value: shapeBgColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Background', 'rise-blocks')
      }
    };
    const shapeColorSetting = Object.keys(bgData).map(key => {
      const value = bgData[key].value;
      return {
        title: () => {
          return React.createElement("div", null, bgData[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c
            })
          });
        }
      };
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_6__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Container Type', 'rise-blocks'),
      options: [{
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Boxed', 'rise-blocks'),
        value: 'boxed'
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Full Width', 'rise-blocks'),
        value: 'full-width'
      }],
      value: containerType,
      onChange: containerType => setAttributes({
        containerType
      })
    }), 'boxed' == containerType && React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_2__["default"], {
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["default"].containerWidth,
      value: containerWidth,
      onChange: containerWidth => setAttributes({
        containerWidth
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Width', 'rise-blocks'),
      beforeIcon: ""
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Shape', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable Shape Divider', 'rise-blocks'),
      checked: enableShapeDivider,
      onChange: enableShapeDivider => {
        setAttributes({
          enableShapeDivider
        });
      }
    }), enableShapeDivider && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Position', 'rise-blocks'),
      options: [{
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Top', 'rise-blocks'),
        value: 'top'
      }, {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Bottom', 'rise-blocks'),
        value: 'bottom'
      }],
      value: shapePosition,
      onChange: shapePosition => setAttributes({
        shapePosition
      })
    }), React.createElement("div", {
      className: `shape-divider-control`
    }, shapes.map((v, i) => React.createElement("button", {
      key: i,
      className: `${v.shape == shape ? 'selected' : ''}`,
      onClick: e => setAttributes({
        shape: v.shape
      })
    }, Object(_helpers__WEBPACK_IMPORTED_MODULE_7__["getShapeDivider"])(v.shape, {
      height: '25px',
      width: '100%',
      fill: '#000000'
    }), React.createElement("label", null, v.label)))), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_2__["default"], {
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["default"].shapeHeight,
      value: shapeHeight,
      onChange: shapeHeight => setAttributes({
        shapeHeight
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Height', 'rise-blocks'),
      beforeIcon: ""
    }), React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_8__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_9__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Shape Color', 'rise-blocks'),
      data: shapeColorSetting
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Z-Index', 'rise-blocks'),
      allowReset: true,
      min: 0,
      max: 10000,
      value: shapeZIndex,
      onChange: shapeZIndex => setAttributes({
        shapeZIndex
      })
    }))), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Background', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BgControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Type', 'rise-blocks'),
      onChange: bgType => setAttributes({
        bgType
      }),
      value: bgType
    }), bgType == 'image' && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_custom_control_image_control__WEBPACK_IMPORTED_MODULE_3__["default"], {
      onSelect: bgImage => {
        setAttributes({
          bgImage
        });
      },
      value: bgImage
    }), bgImage && bgImage.url && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BackgroundPosition"], {
      value: bgPosition,
      onChange: bgPosition => setAttributes({
        bgPosition
      })
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["FixedBackgroundColor"], {
      checked: bgAttachment,
      onChange: bgAttachment => setAttributes({
        bgAttachment
      })
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BackgroundOverlayControl"], {
      value: bgOverlay,
      onChange: bgOverlay => setAttributes({
        bgOverlay
      })
    }))), bgType == 'color' && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
      value: bgColor,
      hideIndicator: true,
      onChange: bgColor => setAttributes({
        bgColor
      })
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Spacing', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Section (Padding)', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["default"].padding,
      value: padding,
      onChange: padding => setAttributes({
        padding
      })
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Section (margin)', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["default"].margin,
      value: margin,
      onChange: margin => setAttributes({
        margin
      })
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/section/components/save.js":
/*!***********************************************!*\
  !*** ./src/blocks/section/components/save.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");





class Save extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "shape", () => {
      const {
        attributes: {
          verticalFlip,
          horizontalFlip,
          shape,
          shapePosition
        }
      } = this.props;
      let shapeClass = '';

      if (horizontalFlip) {
        shapeClass += 'horizontally-flipped';
      }

      if (verticalFlip) {
        shapeClass += shapeClass.length == 0 ? '' : ' ';
        shapeClass += 'vertically-flipped';
      }

      return React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-shape ${shapePosition} ${shapeClass}`
      }, Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getShapeDivider"])(shape, {}));
    });
  }

  render() {
    const {
      attributes: {
        block_id,
        bgType,
        enableShapeDivider,
        containerType
      }
    } = this.props;
    return React.createElement("div", {
      id: block_id
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-${containerType} ${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-wrapper`
    }, enableShapeDivider && this.shape(), 'image' == bgType && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-overlay`
    }), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-section-inner`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InnerBlocks"].Content, null))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/section/constants.js":
/*!*****************************************!*\
  !*** ./src/blocks/section/constants.js ***!
  \*****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../constants */ "./src/constants.js");

const constants = {
  padding: {
    activeUnit: "px",
    units: ['px', 'em'],
    isLinkActive: true,
    range: {
      min: 10,
      max: 300
    },
    values: {
      desktop: [15, 15, 15, 15],
      tablet: [15, 15, 15, 15],
      mobile: [15, 15, 15, 15]
    }
  },
  margin: {
    activeUnit: "px",
    units: ['px', 'em'],
    isLinkActive: true,
    range: {
      min: 10,
      max: 300
    },
    values: {
      desktop: [0, 0, 0, 0],
      tablet: [0, 0, 0, 0],
      mobile: [0, 0, 0, 0]
    }
  },
  containerType: 'boxed',
  containerWidth: _constants__WEBPACK_IMPORTED_MODULE_0__["containerWidth"],
  bgImage: undefined,
  bgType: 'image',
  bgPosition: 'left top',
  bgAttachment: false,
  shapeHeight: {
    activeUnit: "px",
    units: ['px'],
    range: {
      min: 1,
      max: 10000
    },
    values: {
      desktop: 150,
      tablet: 100,
      mobile: 50
    }
  },
  verticalFlip: true,
  horizontalFlip: false,
  shapeColor: '#000000',
  shapeBgColor: undefined,
  shape: 'hills',
  shapePosition: 'bottom',
  shapeZIndex: 0
};
/* harmony default export */ __webpack_exports__["default"] = (constants);

/***/ }),

/***/ "./src/blocks/section/deprecated/1.0.13/index.js":
/*!*******************************************************!*\
  !*** ./src/blocks/section/deprecated/1.0.13/index.js ***!
  \*******************************************************/
/*! exports provided: Save, attributes */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Save", function() { return Save; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "attributes", function() { return attributes; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../constants */ "./src/blocks/section/constants.js");



const Save = ({
  attributes: {
    block_id,
    bgType,
    containerType
  }
}) => React.createElement("div", {
  id: block_id
}, React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${containerType} ${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-section-wrapper`
}, 'image' == bgType && React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-section-overlay`
}), React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-section-inner`
}, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null))));
const attributes = {
  block_id: {
    type: 'string'
  },
  padding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].padding
  },
  margin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].margin
  },
  containerType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].containerType
  },
  containerWidth: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].containerWidth
  },
  bgType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgType
  },
  bgImage: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgImage
  },
  bgPosition: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgPosition
  },
  bgColor: {
    type: 'string'
  },
  bgAttachment: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgAttachment
  },
  bgOverlay: {
    type: 'string'
  }
};

/***/ }),

/***/ "./src/blocks/section/deprecated/1.0.2/index.js":
/*!******************************************************!*\
  !*** ./src/blocks/section/deprecated/1.0.2/index.js ***!
  \******************************************************/
/*! exports provided: Save, attributes */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Save", function() { return Save; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "attributes", function() { return attributes; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../constants */ "./src/blocks/section/constants.js");



const Save = ({
  attributes: {
    block_id,
    containerType
  }
}) => React.createElement("div", {
  id: block_id,
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-${containerType}`
}, React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-section-overlay`
}), React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-section-inner`
}, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null)));
const attributes = {
  block_id: {
    type: 'string'
  },
  padding: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].padding
  },
  margin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].margin
  },
  containerType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].containerType
  },
  containerWidth: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].containerWidth
  },
  bgType: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgType
  },
  bgImage: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgImage
  },
  bgPosition: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgPosition
  },
  bgColor: {
    type: 'string'
  },
  bgAttachment: {
    type: 'boolean',
    default: _constants__WEBPACK_IMPORTED_MODULE_2__["default"].bgAttachment
  },
  bgOverlay: {
    type: 'string'
  }
};

/***/ }),

/***/ "./src/blocks/section/deprecated/index.js":
/*!************************************************!*\
  !*** ./src/blocks/section/deprecated/index.js ***!
  \************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _1_0_2___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./1.0.2/ */ "./src/blocks/section/deprecated/1.0.2/index.js");
/* harmony import */ var _1_0_13___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./1.0.13/ */ "./src/blocks/section/deprecated/1.0.13/index.js");


const deprecated = [{
  save: _1_0_2___WEBPACK_IMPORTED_MODULE_0__["Save"],
  attributes: _1_0_2___WEBPACK_IMPORTED_MODULE_0__["attributes"]
}, {
  save: _1_0_13___WEBPACK_IMPORTED_MODULE_1__["Save"],
  attributes: _1_0_13___WEBPACK_IMPORTED_MODULE_1__["attributes"]
}];
/* harmony default export */ __webpack_exports__["default"] = (deprecated);

/***/ }),

/***/ "./src/blocks/section/index.js":
/*!*************************************!*\
  !*** ./src/blocks/section/index.js ***!
  \*************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/section/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/section/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/section/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/save */ "./src/blocks/section/components/save.js");
/* harmony import */ var _deprecated___WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./deprecated/ */ "./src/blocks/section/deprecated/index.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./attributes */ "./src/blocks/section/attributes.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");









Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["register"])('section', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_7__["__"])('Section', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_7__["__"])('This block enables you to add a section with a desired layout that allows you to add other block within it.', 'rise-blocks'),
  keywords: ['section'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_8__["default"].section,
  deprecated: _deprecated___WEBPACK_IMPORTED_MODULE_4__["default"],
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_5__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_2__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_3__["default"]
});

/***/ }),

/***/ "./src/blocks/section/styles/editor.scss":
/*!***********************************************!*\
  !*** ./src/blocks/section/styles/editor.scss ***!
  \***********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/section/styles/style.scss":
/*!**********************************************!*\
  !*** ./src/blocks/section/styles/style.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/slider/components/edit.js":
/*!**********************************************!*\
  !*** ./src/blocks/slider/components/edit.js ***!
  \**********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var react_slick__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react-slick */ "./node_modules/react-slick/lib/index.js");
/* harmony import */ var react_slick__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_slick__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _inspector_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./inspector.js */ "./src/blocks/slider/components/inspector.js");



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }







class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  constructor() {
    super();

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "getSettings", () => {
      const {
        autoplay,
        pauseOnHover,
        infiniteLoop,
        enableArrow,
        enableDots,
        speed = 2,
        commonBgColor,
        commonTextColor
      } = this.props.attributes;

      const onEnter = type => {
        return e => this.setState(prev => {
          let temp = prev.hover;
          temp[type] = true;
          return {
            hover: temp
          };
        });
      };

      const onLeave = type => {
        return e => this.setState(prev => {
          let temp = prev.hover;
          temp[type] = false;
          return {
            hover: temp
          };
        });
      };

      const buttonStyle = {
        backgroundColor: commonBgColor,
        borderColor: commonBgColor,
        color: commonTextColor
      };

      const Next = () => {
        return React.createElement("button", {
          onMouseEnter: onEnter('next'),
          onMouseLeave: onLeave('next'),
          onClick: e => this.slider.slickNext(),
          type: "button",
          className: `slick-next ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-next-arrow ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-slider-arrow`,
          style: buttonStyle
        }, React.createElement("i", {
          className: "fa fa-angle-right"
        }));
      };

      const Prev = () => {
        return React.createElement("button", {
          onMouseEnter: onEnter('prev'),
          onMouseLeave: onLeave('prev'),
          onClick: e => this.slider.slickPrev(),
          style: buttonStyle,
          type: "button",
          className: `slick-prev ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-prev-arrow ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-slider-arrow`
        }, React.createElement("i", {
          className: "fa fa-angle-left"
        }));
      };

      const settings = {
        slidesToShow: 1,
        slidesToScroll: 1,
        autoplay,
        pauseOnHover,
        infinite: infiniteLoop,
        autoplaySpeed: parseInt(speed) * 1000,
        arrows: enableArrow,
        dots: enableDots,
        nextArrow: React.createElement(Next, null),
        prevArrow: React.createElement(Prev, null),
        fade: true,
        appendDots: i => {
          const list = i.map((v, i) => {
            const style = v.props.className == 'slick-active' ? {
              backgroundColor: commonBgColor,
              borderColor: commonBgColor
            } : {
              color: commonBgColor
            };
            return React.createElement("li", {
              key: i
            }, React.createElement("button", {
              onClick: v.props.children.props.onClick,
              style: style
            }));
          });
          return React.createElement("ul", null, list);
        }
      };
      return settings;
    });

    this.state = {
      hover: {
        next: false,
        prev: false
      }
    };
  }

  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      attributes: {
        block_id
      }
    } = this.props;
    setAttributes({
      'block_id': `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-post-slider-instance-${instanceId}-${Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["uniqueId"])()}`
    });
  }

  componentDidUpdate() {
    if (this.slider) {
      const {
        attributes: {
          autoplay
        }
      } = this.props;

      if (autoplay) {
        this.slider.slickPlay();
      } else {
        this.slider.slickPause();
      }
    }
  }

  item(post, link) {
    if (!post) {
      post = {
        '_embedded': {
          'wp:featuredmedia': [{
            'media_details': {
              'sizes': {
                'full': {
                  'source_url': Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["getLocalImage"])('page-slider-demo.jpg')
                }
              }
            }
          }]
        },
        'title': {
          rendered: 'Rise Blocks'
        },
        'rise-blocks_excerpt': `Please select your page from Block Setting.`,
        'link': '#'
      };
    }

    const {
      attributes: {
        sectionOverlayColor
      },
      setAttributes
    } = this.props;
    const wrapperStyle = {};

    if (post._embedded && !Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["isUndefined"])(post._embedded['wp:featuredmedia']) && !Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["isUndefined"])(post._embedded['wp:featuredmedia'][0].media_details)) {
      wrapperStyle.backgroundImage = `url(${post._embedded['wp:featuredmedia'][0].media_details.sizes['full'].source_url})`;
      wrapperStyle.backgroundPosition = 'center center';
    }

    const {
      tag,
      enableTitle,
      enableContent,
      sectionClickable,
      readMoreText,
      excerptLength = 20,
      titleColor,
      contentColor,
      commonBgColor,
      commonTextColor,
      readMoreRadius,
      titleTypography,
      contentTypography,
      width,
      readMoreTypography
    } = this.props.attributes;

    const title = Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["decodeEntities"])(post.title.rendered.trim()) || Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('(Untitled)', 'rise-blocks');

    const typographyStyle = Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(readMoreTypography);
    const borderRadius = Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["getDimensionStyle"])(['borderTopLeftRadius', 'borderTopRightRadius', 'borderBottomRightRadius', 'borderBottomLeftRadius'], readMoreRadius);

    const titleStyle = _objectSpread({
      color: titleColor
    }, Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(titleTypography));

    const contentStyle = _objectSpread({
      color: contentColor
    }, Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["getTypoStyle"])(contentTypography));

    const maxWidth = (width.values.desktop < 800 ? width.values.desktop : 800) + width.activeUnit;
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-has-bg`,
      style: wrapperStyle
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-overlay`,
      style: {
        backgroundColor: sectionOverlayColor
      }
    }), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-caption`,
      style: {
        maxWidth
      }
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-content`
    }, enableTitle && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RichText"].Content, {
      tagName: tag,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-title`,
      value: title,
      style: titleStyle
    }), enableContent && React.createElement("div", {
      style: contentStyle,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-text-content`
    }, Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["wordTrim"])(post['rise-blocks_excerpt'], excerptLength)), !sectionClickable && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-btn-group`
    }, React.createElement("a", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-btn`,
      href: link ? link : post.link,
      style: _objectSpread({}, typographyStyle, {}, borderRadius, {
        backgroundColor: commonBgColor,
        color: commonTextColor
      }),
      onClick: e => e.preventDefault()
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RichText"], {
      value: readMoreText,
      keepPlaceholderOnFocus: true,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Read More', 'rise-blocks'),
      onChange: readMoreText => setAttributes({
        readMoreText
      })
    }))))));
  }

  render() {
    const {
      className,
      attributes: {
        page_id,
        useExternalLink
      },
      pages
    } = this.props;
    const hasPosts = Array.isArray(pages) && pages.length;

    if (!hasPosts) {
      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, React.createElement(_inspector_js__WEBPACK_IMPORTED_MODULE_6__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Placeholder"], {
        icon: "admin-post",
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Slider', 'rise-blocks')
      }, !Array.isArray(pages) ? React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Spinner"], null) : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('No page found.', 'rise-blocks')));
    }

    const settings = this.getSettings();
    let selectedPages = Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["isUndefined"])(page_id) ? [] : JSON.parse(page_id);
    const slidePages = selectedPages.filter(p => p.id && p.id != 0).map((p, i) => {
      const _i = Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["findIndex"])(pages, {
        id: parseInt(p.id)
      });

      let link = false;

      if (useExternalLink) {
        link = p.link ? p.link : '';
      }

      return React.createElement("div", {
        key: i
      }, this.item(pages[_i], link));
    });
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, React.createElement(_inspector_js__WEBPACK_IMPORTED_MODULE_6__["default"], this.props), React.createElement("section", {
      className: Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["classnames"])(className, `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-section-wrapper`)
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-banner-slider-init`
    }, slidePages.length > 0 ? React.createElement(react_slick__WEBPACK_IMPORTED_MODULE_5___default.a, _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
      ref: slider => this.slider = slider
    }, settings), slidePages) : React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Placeholder"], {
      icon: "admin-page",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Please select a page', 'rise-blocks')
    }))));
  }

}

const applyWithSelect = Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["withSelect"])((select, props) => {
  const {
    getEntityRecords
  } = select('core');
  const query = Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["pickBy"])({
    per_page: -1,
    _embed: true
  }, value => !Object(_helpers___WEBPACK_IMPORTED_MODULE_3__["isUndefined"])(value));
  return {
    pages: getEntityRecords('postType', 'page', query)
  };
});
/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["compose"])(applyWithSelect, _components_wp__WEBPACK_IMPORTED_MODULE_2__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/slider/components/inspector.js":
/*!***************************************************!*\
  !*** ./src/blocks/slider/components/inspector.js ***!
  \***************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _custom_control_typography__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../custom-control/typography */ "./src/custom-control/typography.js");
/* harmony import */ var _custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../custom-control/responsive-range-wrapper */ "./src/custom-control/responsive-range-wrapper.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _custom_control_repeater__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../custom-control/repeater */ "./src/custom-control/repeater.js");
/* harmony import */ var _components_tab__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../components/tab */ "./src/components/tab.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../constants */ "./src/blocks/slider/constants.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");











class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  general() {
    const {
      pages,
      setAttributes,
      attributes: {
        page_id,
        useExternalLink
      }
    } = this.props;
    if (!pages) return;
    let options = pages.map(v => {
      return {
        label: v.title.raw,
        value: v.id
      };
    });
    options = [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Select a page', 'rise-blocks'),
      value: 0
    }, ...options];
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Page', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Use External Link', 'rise-blocks'),
      checked: useExternalLink,
      onChange: useExternalLink => setAttributes({
        useExternalLink
      })
    }), React.createElement(_custom_control_repeater__WEBPACK_IMPORTED_MODULE_6__["default"], {
      value: page_id,
      limit: _components_wp__WEBPACK_IMPORTED_MODULE_0__["hooks"].applyFilters('riseBlocksPageSliderLimit', 3),
      onChange: (page_id, key, index) => {
        if (key == 'id' && useExternalLink) {
          let data = JSON.parse(page_id);
          let pageIndex = Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["findIndex"])(pages, {
            id: parseInt(data[index].id)
          });
          data[index].link = pages[pageIndex].link;
          page_id = JSON.stringify(data);
        }

        setAttributes({
          page_id
        });
      },
      cb: ($this, p, i) => {
        const v = p.id ? p.id : 0;
        return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["SelectControl"], {
          value: v,
          options: options,
          onChange: $this.handleChange(i, 'id')
        }), useExternalLink && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["TextControl"], {
          value: p.link,
          placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Link', 'rise-blocks'),
          onChange: $this.handleChange(i, 'link')
        }));
      }
    }));
  }

  content() {
    const {
      setAttributes,
      attributes: {
        enableTitle,
        enableContent,
        excerptLength,
        height,
        width,
        tag
      }
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Content', 'rise-blocks'),
      initialOpen: false
    }, enableTitle && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["HeadingTagControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading Tag', 'rise-blocks'),
      value: tag,
      onChange: tag => setAttributes({
        tag
      })
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable Title', 'rise-blocks'),
      checked: enableTitle,
      onChange: enableTitle => {
        setAttributes({
          enableTitle
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable Content', 'rise-blocks'),
      checked: enableContent,
      onChange: enableContent => {
        setAttributes({
          enableContent
        });
      }
    }), enableContent && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ExcerptLengthControl"], {
      value: excerptLength,
      onChange: excerptLength => setAttributes({
        excerptLength
      })
    }), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_4__["default"], {
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].height,
      value: height,
      beforeIcon: "",
      onChange: height => setAttributes({
        height
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Height', 'rise-blocks')
    }), React.createElement("hr", null), React.createElement(_custom_control_responsive_range_wrapper__WEBPACK_IMPORTED_MODULE_4__["default"], {
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].width,
      beforeIcon: "",
      value: width,
      onChange: width => setAttributes({
        width
      }),
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Width', 'rise-blocks')
    }));
  }

  readMore() {
    const {
      setAttributes,
      attributes: {
        openTab,
        sectionClickable,
        readMoreRadius
      }
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Read More Link', 'rise-blocks'),
      initialOpen: false
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Make whole section clickable', 'rise-blocks'),
      checked: sectionClickable,
      onChange: sectionClickable => {
        setAttributes({
          sectionClickable
        });
      }
    }), !sectionClickable && React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_5__["default"], {
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].borderRadius,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Border Radius', 'rise-blocks'),
      value: readMoreRadius,
      onChange: readMoreRadius => {
        setAttributes({
          readMoreRadius
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Open in new tab', 'rise-blocks'),
      checked: openTab,
      onChange: openTab => {
        setAttributes({
          openTab
        });
      }
    }));
  }

  tabbedColor() {
    const {
      setAttributes,
      attributes: {
        commonBgColor,
        commonTextColor
      }
    } = this.props;
    const data = {
      commonBgColor: {
        value: commonBgColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('BG', 'rise-blocks')
      },
      commonTextColor: {
        value: commonTextColor,
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Text', 'rise-blocks')
      }
    };
    const setting = Object.keys(data).map(key => {
      const value = data[key].value;
      return {
        title: () => {
          return React.createElement("div", null, data[key].title, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["ColorIndicator"], {
            colorValue: value
          }));
        },
        content: () => {
          return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["ColorControl"], {
            value: value,
            hideIndicator: true,
            onChange: c => setAttributes({
              [key]: c
            })
          });
        }
      };
    });
    return React.createElement(_components_tab__WEBPACK_IMPORTED_MODULE_7__["default"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_8__["prefix"]}-tabbed-color-control`,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Read more / Arrow / Dots', 'rise-blocks'),
      data: setting
    });
  }

  color() {
    const {
      setAttributes,
      attributes: {
        titleColor,
        contentColor,
        sectionOverlayColor
      }
    } = this.props;
    return React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["PanelColor"], {
      colorSettings: [{
        value: titleColor,
        onChange: titleColor => setAttributes({
          titleColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Title Color', 'rise-blocks')
      }, {
        value: contentColor,
        onChange: contentColor => setAttributes({
          contentColor
        }),
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Content Color', 'rise-blocks')
      }]
    }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["BackgroundOverlayControl"], {
      value: sectionOverlayColor,
      onChange: sectionOverlayColor => setAttributes({
        sectionOverlayColor
      })
    }), this.tabbedColor());
  }

  slider() {
    const {
      setAttributes,
      attributes: {
        page_id,
        autoplay,
        pauseOnHover,
        infiniteLoop,
        speed,
        enableArrow,
        enableDots
      }
    } = this.props;

    if (page_id && JSON.parse(page_id).length > 1) {
      return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
        title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Carousel', 'rise-blocks'),
        initialOpen: false
      }, React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Auto Play', 'rise-blocks'),
        checked: autoplay,
        onChange: autoplay => {
          setAttributes({
            autoplay
          });
        }
      }), autoplay && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RangeControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Autoplay Speed ( second )', 'rise-blocks'),
        allowReset: true,
        initialPosition: 2,
        min: 1,
        value: speed,
        onChange: speed => setAttributes({
          speed
        })
      }), autoplay && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Pause On Hover', 'rise-blocks'),
        checked: pauseOnHover,
        onChange: pauseOnHover => {
          setAttributes({
            pauseOnHover
          });
        }
      }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Infinite Loop', 'rise-blocks'),
        checked: infiniteLoop,
        onChange: infiniteLoop => {
          setAttributes({
            infiniteLoop
          });
        }
      }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable Arrow', 'rise-blocks'),
        checked: enableArrow,
        onChange: enableArrow => {
          setAttributes({
            enableArrow
          });
        }
      }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["SwitchControl"], {
        label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Enable Dots', 'rise-blocks'),
        checked: enableDots,
        onChange: enableDots => {
          setAttributes({
            enableDots
          });
        }
      }));
    }
  }

  typography() {
    const {
      setAttributes,
      attributes: {
        enableTitle,
        enableContent,
        titleTypography,
        contentTypography,
        readMoreTypography,
        sectionClickable
      }
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Typography', 'rise-blocks'),
      initialOpen: false
    }, enableTitle && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Heading', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].title,
      value: titleTypography,
      onChange: titleTypography => {
        setAttributes({
          titleTypography
        });
      }
    }), enableContent && React.createElement("hr", null)), enableContent && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Content', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].content,
      value: contentTypography,
      onChange: contentTypography => {
        setAttributes({
          contentTypography
        });
      }
    })), !sectionClickable && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement("hr", null), React.createElement(_custom_control_typography__WEBPACK_IMPORTED_MODULE_3__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Read more', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_9__["default"].readMoreTypography,
      value: readMoreTypography,
      onChange: readMoreTypography => {
        setAttributes({
          readMoreTypography
        });
      }
    })));
  }

  render() {
    const {
      attributes: {
        page_id
      },
      clientId
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_10__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, this.general(), page_id && JSON.parse(page_id).length > 0 && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, this.content(), this.slider(), this.readMore(), this.typography(), this.color())));
  }

}

/***/ }),

/***/ "./src/blocks/slider/constants.js":
/*!****************************************!*\
  !*** ./src/blocks/slider/constants.js ***!
  \****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
const def = {
  title: {
    'fontFamily': 'Lato',
    'fontSize': {
      'units': ['px', 'em', 'rem'],
      'activeUnit': 'px',
      'values': {
        'desktop': 48,
        'tablet': 28,
        'mobile': 22
      }
    },
    'fontWeight': 700,
    'lineHeight': {
      'activeUnit': '',
      'units': [''],
      'values': {
        'desktop': 1.5,
        'tablet': 1.5,
        'mobile': 1.5
      }
    }
  },
  content: {
    'fontFamily': 'Lato',
    'fontSize': {
      'units': ['px', 'em', 'rem'],
      'activeUnit': 'px',
      'values': {
        'desktop': 18,
        'tablet': 18,
        'mobile': 18
      }
    },
    'fontWeight': 400,
    'lineHeight': {
      'activeUnit': '',
      'units': [''],
      'values': {
        'desktop': 1.8,
        'tablet': 1.8,
        'mobile': 1.8
      }
    }
  },
  readMoreTypography: {
    'fontFamily': 'Lato',
    'fontSize': {
      'units': ['px', 'em', 'rem'],
      'activeUnit': 'rem',
      'values': {
        'desktop': 0.9,
        'tablet': 0.9,
        'mobile': 0.9
      }
    },
    'fontWeight': 400,
    'lineHeight': {
      'activeUnit': '',
      'units': [''],
      'values': {
        'desktop': 1.5,
        'tablet': 1.5,
        'mobile': 1.5
      }
    }
  },
  borderRadius: {
    responsiveViews: ['desktop'],
    units: ['px'],
    activeUnit: 'px',
    isLinkActive: true,
    values: {
      'desktop': [0, 0, 0, 0]
    }
  },
  height: {
    activeUnit: "vh",
    units: ['px', 'vh'],
    range: {
      min: 1,
      max: 2000
    },
    values: {
      desktop: 85,
      tablet: 80,
      mobile: 60
    }
  },
  width: {
    activeUnit: "px",
    units: ['px', 'vw'],
    range: {
      min: 100,
      max: 2000
    },
    values: {
      desktop: 1140,
      tablet: 720,
      mobile: 540
    }
  }
};
/* harmony default export */ __webpack_exports__["default"] = (def);

/***/ }),

/***/ "./src/blocks/slider/index.js":
/*!************************************!*\
  !*** ./src/blocks/slider/index.js ***!
  \************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/slider/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/slider/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/slider/components/edit.js");
/*----------------------------------------------------------------------------------------------------------------------------*
 *                       									                                                                  *  
 * Register Page Slider							                                                                              *  
 *          									                                                                              *  
 * @link https://wordpress.org/gutenberg/handbook/designers-developers/developers/tutorials/block-tutorial/writing-your-      *
 *       first-block-type/  																								  *	
 * @since 1.0.0								   																                  *	
 *															   																  *			
 *----------------------------------------------------------------------------------------------------------------------------*/






/*----------------------------------------------------------------------------------------------------------------------------*
 *																															  *	
 * Get Object for Registering Block                                                                                           *
 *                                                                                                                            *
 * @see https://developer.wordpress.org/resource/dashicons/                                                                   * 
 * @see https://wordpress.org/gutenberg/handbook/designers-developers/developers/block-api/block-registration/#icon-optional  *
 * for dashicons                          																					  *	
 * @since 1.0.0                                                                                                               *
 *                                                                                                                            *
 *----------------------------------------------------------------------------------------------------------------------------*/

Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["register"])('page-slider', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('Page Slider', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_4__["__"])('This block enables you to fetch other pages’ heading and excerpts; and display it in a carousel layout with a link.', 'rise-blocks'),
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_3__["default"].slider,
  keywords: ['slider', 'page'],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_5__["default"],

  save() {
    return null;
  }

});

/***/ }),

/***/ "./src/blocks/slider/styles/editor.scss":
/*!**********************************************!*\
  !*** ./src/blocks/slider/styles/editor.scss ***!
  \**********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/slider/styles/style.scss":
/*!*********************************************!*\
  !*** ./src/blocks/slider/styles/style.scss ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/social-icons/attributes.js":
/*!***********************************************!*\
  !*** ./src/blocks/social-icons/attributes.js ***!
  \***********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/blocks/social-icons/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  fontSize: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].fontSize
  },
  size: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].size
  },
  alignment: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].alignment
  },
  radius: {
    type: 'number',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].radius
  },
  margin: {
    type: 'object',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].margin
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/social-icons/components/edit.js":
/*!****************************************************!*\
  !*** ./src/blocks/social-icons/components/edit.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inspector */ "./src/blocks/social-icons/components/inspector.js");
/* harmony import */ var _components_parent_block_selector__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../components/parent-block-selector */ "./src/components/parent-block-selector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/times */ "./node_modules/lodash/times.js");
/* harmony import */ var lodash_times__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_times__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../constants */ "./src/blocks/social-icons/constants.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }









const singleBlock = 'rise-blocks/social-icon';
const ALLOWED_BLOCKS = [singleBlock];
const getCount = memize__WEBPACK_IMPORTED_MODULE_6___default()(count => {
  return lodash_times__WEBPACK_IMPORTED_MODULE_7___default()(count, () => [singleBlock, _constants__WEBPACK_IMPORTED_MODULE_8__["defaultAttrs"]]);
});

class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  componentDidMount() {
    const {
      setAttributes,
      instanceId,
      className
    } = this.props;
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["uniqueId"])()}`
    });
  }

  render() {
    const {
      clientId,
      attributes: {
        block_id,
        alignment,
        color,
        size,
        fontSize,
        background,
        radius,
        margin
      },
      setAttributes
    } = this.props;

    const style = _objectSpread({}, Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["getDimensionStyle"])(['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'], margin));

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["BlockControls"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["AlignmentToolbar"], {
      value: alignment,
      onChange: alignment => setAttributes({
        alignment
      })
    })), React.createElement("div", {
      id: block_id,
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-social-align-${alignment}`,
      style: style
    }, React.createElement(_components_parent_block_selector__WEBPACK_IMPORTED_MODULE_4__["default"], {
      icon: "socialIcons",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Icons', 'rise-blocks')
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["InnerBlocks"], {
      template: getCount(1),
      allowedBlocks: ALLOWED_BLOCKS
    })), Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["shouldShowAddButton"])(clientId) && React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["IconButton"], {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-add-new-item`,
      isLarge: true,
      icon: "insert",
      onClick: () => {
        const created = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["createBlock"])(singleBlock, {
          size,
          radius,
          fontSize
        });
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["dispatch"])('editor').insertBlock(created, undefined, clientId);
      }
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Add New Social Icon', 'rise-blocks')));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/social-icons/components/inspector.js":
/*!*********************************************************!*\
  !*** ./src/blocks/social-icons/components/inspector.js ***!
  \*********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../custom-control */ "./src/custom-control/index.js");
/* harmony import */ var _custom_control_dimension__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../custom-control/dimension */ "./src/custom-control/dimension.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/blocks/social-icons/constants.js");
/* harmony import */ var _components_exporter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../components/exporter */ "./src/components/exporter.js");






class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      clientId,
      setAttributes,
      attributes: {
        color,
        background,
        size,
        radius,
        fontSize,
        margin
      }
    } = this.props;

    const updateChild = attrs => {
      const inner = Object(_helpers__WEBPACK_IMPORTED_MODULE_3__["getInnerBlocks"])(clientId);
      inner.forEach(b => {
        Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["dispatch"])('editor').updateBlockAttributes(b.clientId, attrs);
      });
    };

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InspectorAdvancedControls"], null, React.createElement(_components_exporter__WEBPACK_IMPORTED_MODULE_5__["default"], {
      clientId: clientId
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["RangeControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Size', 'rise-blocks'),
      value: size,
      initialPosition: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].size,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].size,
      onChange: size => {
        if (typeof size === 'undefined') {
          size = _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].size;
        }

        setAttributes({
          size
        });
        updateChild({
          size
        });
      },
      allowReset: true,
      min: 20,
      max: 80
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["FontSizeControl"], {
      value: fontSize,
      initialPosition: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].fontSize,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].fontSize,
      onChange: fontSize => {
        if (typeof fontSize === 'undefined') {
          fontSize = _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].fontSize;
        }

        setAttributes({
          fontSize
        });
        updateChild({
          fontSize
        });
      }
    }), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_1__["RadiusControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Radius', 'rise-blocks'),
      value: radius,
      initialPosition: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].radius,
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].radius,
      onChange: radius => {
        if (typeof radius === 'undefined') {
          radius = _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].radius;
        }

        setAttributes({
          radius
        });
        updateChild({
          radius
        });
      }
    }), React.createElement(_custom_control_dimension__WEBPACK_IMPORTED_MODULE_2__["default"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Margin', 'rise-blocks'),
      defaultValue: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultAttrs"].margin,
      value: margin,
      onChange: margin => setAttributes({
        margin
      })
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/social-icons/components/save.js":
/*!****************************************************!*\
  !*** ./src/blocks/social-icons/components/save.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../constants */ "./src/constants.js");



const Save = props => {
  const {
    block_id,
    alignment
  } = props.attributes;
  return React.createElement("div", {
    id: block_id
  }, React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-social-align-${alignment}`
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["InnerBlocks"].Content, null)));
};

/* harmony default export */ __webpack_exports__["default"] = (Save);

/***/ }),

/***/ "./src/blocks/social-icons/constants.js":
/*!**********************************************!*\
  !*** ./src/blocks/social-icons/constants.js ***!
  \**********************************************/
/*! exports provided: defaultAttrs */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultAttrs", function() { return defaultAttrs; });
const defaultAttrs = {
  fontSize: 25,
  alignment: 'left',
  size: 45,
  radius: 0,
  color: '#ffffff',
  background: '#0693e3',
  link: '',
  margin: {
    activeUnit: "px",
    units: ['px', 'em'],
    isLinkActive: true,
    range: {
      min: 10,
      max: 300
    },
    values: {
      desktop: [0, 0, 0, 0],
      tablet: [0, 0, 0, 0],
      mobile: [0, 0, 0, 0]
    }
  }
};

/***/ }),

/***/ "./src/blocks/social-icons/index.js":
/*!******************************************!*\
  !*** ./src/blocks/social-icons/index.js ***!
  \******************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./attributes */ "./src/blocks/social-icons/attributes.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/social-icons/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/social-icons/components/save.js");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./styles/style.scss */ "./src/blocks/social-icons/styles/style.scss");
/* harmony import */ var _styles_style_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_styles_style_scss__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./styles/editor.scss */ "./src/blocks/social-icons/styles/editor.scss");
/* harmony import */ var _styles_editor_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_styles_editor_scss__WEBPACK_IMPORTED_MODULE_7__);








Object(_helpers___WEBPACK_IMPORTED_MODULE_0__["register"])('social-icons', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Social Icons', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('This block enables you to display social icons and set a link to each icon to the relevant social profile with different design options.', 'rise-blocks'),
  keywords: ['social icons'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_2__["default"].socialIcons,
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_3__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_4__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});

/***/ }),

/***/ "./src/blocks/social-icons/social-icon/attributes.js":
/*!***********************************************************!*\
  !*** ./src/blocks/social-icons/social-icon/attributes.js ***!
  \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/blocks/social-icons/constants.js");

const attributes = {
  block_id: {
    type: 'string'
  },
  link: {
    type: 'string',
    default: '#'
  },
  icon: {
    type: 'object',
    default: {
      icon: "fa-facebook",
      page: 1
    }
  },
  size: {
    type: 'number'
  },
  background: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].background
  },
  color: {
    type: 'string',
    default: _constants__WEBPACK_IMPORTED_MODULE_0__["defaultAttrs"].color
  },
  radius: {
    type: 'number'
  }
};
/* harmony default export */ __webpack_exports__["default"] = (attributes);

/***/ }),

/***/ "./src/blocks/social-icons/social-icon/components/edit.js":
/*!****************************************************************!*\
  !*** ./src/blocks/social-icons/social-icon/components/edit.js ***!
  \****************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_upgrader__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../components/upgrader */ "./src/components/upgrader.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _inspector__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./inspector */ "./src/blocks/social-icons/social-icon/components/inspector.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../../helpers */ "./src/helpers/index.js");






class Edit extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  componentDidMount() {
    const {
      instanceId,
      setAttributes,
      className
    } = this.props;
    /*-------------------------------------------------------*  
     * Block_id must be  update on componentDidmount
     * otherwise we will get same block_id while duplicating
     * Blocks.( Parent BLocks)
     *-------------------------------------------------------*/

    setAttributes({
      block_id: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-${className}-${instanceId}-${Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["uniqueId"])()}`
    });
  }

  render() {
    const {
      className,
      clientId,
      attributes: {
        link,
        icon,
        color,
        background,
        size,
        radius,
        fontSize
      }
    } = this.props;
    const style = {
      color,
      backgroundColor: background,
      height: size + 'px',
      width: size + 'px',
      borderRadius: radius + '%',
      fontSize: fontSize + 'px'
    };

    if (Object(_helpers__WEBPACK_IMPORTED_MODULE_4__["shouldShowUpgrader"])(clientId)) {
      return React.createElement("div", {
        className: `${className} ${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-social-icon`
      }, React.createElement(_components_upgrader__WEBPACK_IMPORTED_MODULE_1__["default"], null));
    }

    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_inspector__WEBPACK_IMPORTED_MODULE_3__["default"], this.props), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-social-icon-wrapper`
    }, React.createElement("a", {
      href: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["prependHttp"])(link),
      onClick: e => e.preventDefault(),
      target: "_blank",
      style: style
    }, React.createElement("i", {
      className: `fa ${icon.icon}`
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["withInstanceId"])(Edit));

/***/ }),

/***/ "./src/blocks/social-icons/social-icon/components/inspector.js":
/*!*********************************************************************!*\
  !*** ./src/blocks/social-icons/social-icon/components/inspector.js ***!
  \*********************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return InspectorPanel; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../custom-control/icon-selector */ "./src/custom-control/icon-selector.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../custom-control */ "./src/custom-control/index.js");




class InspectorPanel extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      clientId,
      setAttributes,
      attributes: {
        icon,
        link,
        color,
        background
      }
    } = this.props;
    const colorSettings = [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Color', 'rise-blocks'),
      value: color,
      onChange: color => setAttributes({
        color
      })
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Background', 'rise-blocks'),
      value: background,
      onChange: background => setAttributes({
        background
      })
    }];
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Inspector"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["Panel"], {
      title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('General', 'rise-blocks'),
      initialOpen: true
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_0__["BaseControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Icon', 'rise-blocks')
    }, React.createElement(_custom_control_icon_selector__WEBPACK_IMPORTED_MODULE_1__["default"], {
      value: icon,
      icons: _constants__WEBPACK_IMPORTED_MODULE_2__["faSocialIcons"],
      prefix: "fa",
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Select an Icon', 'rise-blocks'),
      onChange: icon => setAttributes({
        icon
      })
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_3__["LinkControl"], {
      value: link,
      onChange: link => {
        setAttributes({
          link
        });
      }
    })), React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_3__["PanelColor"], {
      colorSettings: colorSettings
    })));
  }

}

/***/ }),

/***/ "./src/blocks/social-icons/social-icon/components/save.js":
/*!****************************************************************!*\
  !*** ./src/blocks/social-icons/social-icon/components/save.js ***!
  \****************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Save; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../constants */ "./src/constants.js");


class Save extends _components_wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  render() {
    const {
      attributes
    } = this.props;
    const {
      link,
      icon,
      block_id
    } = attributes;
    return React.createElement("div", {
      id: block_id
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-social-icon-wrapper`
    }, React.createElement("a", {
      href: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["prependHttp"])(link),
      rel: "noopener noreferrer",
      target: "_blank"
    }, React.createElement("i", {
      className: `fa ${icon.icon}`
    }))));
  }

}

/***/ }),

/***/ "./src/blocks/social-icons/social-icon/index.js":
/*!******************************************************!*\
  !*** ./src/blocks/social-icons/social-icon/index.js ***!
  \******************************************************/
/*! no exports provided */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../helpers */ "./src/helpers/index.js");
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../components/wp */ "./src/components/wp.js");
/* harmony import */ var _attributes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./attributes */ "./src/blocks/social-icons/social-icon/attributes.js");
/* harmony import */ var _components_edit__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components/edit */ "./src/blocks/social-icons/social-icon/components/edit.js");
/* harmony import */ var _components_save__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/save */ "./src/blocks/social-icons/social-icon/components/save.js");






Object(_helpers__WEBPACK_IMPORTED_MODULE_0__["register"])('social-icon', {
  title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Social Icon', 'rise-blocks'),
  description: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('This block enables you to display social icons and set a link to each icon to the relevant social profile with different design options.', 'rise-blocks'),
  keywords: ['social icon'],
  parent: ['rise-blocks/social-icons'],
  icon: _helpers_svg__WEBPACK_IMPORTED_MODULE_1__["default"].socialIcons,
  supports: {
    inserter: false
  },
  attributes: _attributes__WEBPACK_IMPORTED_MODULE_3__["default"],
  edit: _components_edit__WEBPACK_IMPORTED_MODULE_4__["default"],
  save: _components_save__WEBPACK_IMPORTED_MODULE_5__["default"]
});

/***/ }),

/***/ "./src/blocks/social-icons/styles/editor.scss":
/*!****************************************************!*\
  !*** ./src/blocks/social-icons/styles/editor.scss ***!
  \****************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/blocks/social-icons/styles/style.scss":
/*!***************************************************!*\
  !*** ./src/blocks/social-icons/styles/style.scss ***!
  \***************************************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/components/exporter.js":
/*!************************************!*\
  !*** ./src/components/exporter.js ***!
  \************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");



const Exporter = ({
  clientId
}) => {
  return React.createElement("button", {
    className: "export-button",
    onClick: e => Object(_helpers__WEBPACK_IMPORTED_MODULE_0__["exportToJsonFile"])(clientId)
  }, Object(_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Export Block', 'rise-blocks'), " ", React.createElement("span", {
    className: "dashicons dashicons-download"
  }), " ");
};

/* harmony default export */ __webpack_exports__["default"] = (Exporter);

/***/ }),

/***/ "./src/components/heading.js":
/*!***********************************!*\
  !*** ./src/components/heading.js ***!
  \***********************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lodash */ "lodash");
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__);
/**
 * External dependencies
 */

/**
 * WordPress dependencies
 */





class HeadingToolbar extends _wordpress_element__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  createLevelControl(targetLevel, selectedLevel, onChange) {
    return {
      icon: 'heading',
      title: Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__["sprintf"])(Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_1__["__"])('Heading %d'), targetLevel),
      isActive: targetLevel === selectedLevel,
      onClick: () => onChange(targetLevel),
      subscript: String(targetLevel)
    };
  }

  render() {
    const {
      minLevel,
      maxLevel,
      selectedLevel,
      onChange
    } = this.props;
    return React.createElement(_wordpress_components__WEBPACK_IMPORTED_MODULE_3__["Toolbar"], {
      controls: Object(lodash__WEBPACK_IMPORTED_MODULE_0__["range"])(minLevel, maxLevel).map(index => this.createLevelControl(index, selectedLevel, onChange))
    });
  }

}

/* harmony default export */ __webpack_exports__["default"] = (HeadingToolbar);

/***/ }),

/***/ "./src/components/importer.js":
/*!************************************!*\
  !*** ./src/components/importer.js ***!
  \************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Importer; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers/ */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var reactjs_popup__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! reactjs-popup */ "./node_modules/reactjs-popup/reactjs-popup.es.js");
/* harmony import */ var react_masonry_component__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react-masonry-component */ "./node_modules/react-masonry-component/lib/index.js");
/* harmony import */ var react_masonry_component__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_masonry_component__WEBPACK_IMPORTED_MODULE_5__);







const importerName = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Import', 'rise-blocks');

const importingName = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Importing...', 'rise-blocks');

class Importer extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super();

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "fetchChildMenu", (parentId, e) => {
      e.preventDefault();
      this.setState(prevState => {
        const child = prevState.data.filter(node => node.parent == parentId);
        const currentChildCategory = child[0].id;
        return {
          currentParentCategory: parentId,
          currentChildCategory,
          child,
          isShowingLatest: true
        };
      }, () => this.getDemo(parentId));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getDemo", (id = false) => {
      this.setState({
        isFileMode: false
      });

      if (!id) {
        id = this.state.currentChildCategory;
      }

      if (this.cache[id]) {
        let data = {
          demo: this.cache[id]
        };

        if (!this.state.isShowingLatest) {
          data.currentChildCategory = id;
        }

        this.setState(data);
        return;
      }

      const per_page = this.state.isShowingLatest ? 8 : 100;
      this.showLoader();
      jQuery.ajax({
        type: 'GET',
        url: `${this.endPoint}single_block_demo?demo_category=${id}&_embed=true&per_page=${per_page}&order=desc&orderby=date`,
        success: res => {
          if (res) {
            this.cache[id] = res;
            let data = {
              demo: res
            };

            if (!this.state.isShowingLatest) {
              data.currentChildCategory = id;
            }

            this.setState(data);
          }
        },
        complete: () => {
          this.hideLoader();
        }
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "createBlockRecursively", ({
      name,
      attributes,
      inner = false
    }) => {
      if (inner) {
        return Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["createBlock"])(name, attributes, inner.map(node => this.createBlockRecursively(node)));
      }

      return Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["createBlock"])(name, attributes);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "createBlock", (json, e) => {
      this.setState({
        isInserting: true
      });

      try {
        e.preventDefault();

        for (var i = 0; i < json.length; i++) {
          const data = json[i];
          var created = this.createBlockRecursively(data);
          Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["dispatch"])('editor').insertBlock(created);
        }

        this.close();
      } catch (e) {
        this.setState({
          isInserting: false
        });
        console.warn(e.message);
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "importFromFile", e => {
      const $input = jQuery(`input[name="${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-json-file"]`);
      const $this = jQuery(e.target);
      const file = $input.prop('files')[0];
      $this.blur();

      if (file) {
        $this.addClass('is-busy').text(importingName);
        const reader = new FileReader();

        reader.onload = () => {
          const data = reader.result;

          try {
            const json = JSON.parse(data);
            this.createBlock(json, e);
            $input.val('');
          } catch (e) {
            console.warn(e.message);
          }

          this.createBlock(reader.result, e);
          $this.removeClass('is-busy').text(importerName);
        };

        reader.readAsText(file);
      }
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "demos", () => {
      let i = Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["findIndex"])(this.state.data, {
        id: parseInt(this.state.currentParentCategory)
      });

      if (this.state.data.length == 0) {
        return;
      }

      const slug = this.state.data[i].slug;

      const isNew = date => {
        var today = new Date(),
            date = new Date(date);
        var totalMonth = today.getMonth() - date.getMonth() + 12 * (today.getFullYear() - date.getFullYear());

        if (totalMonth <= 1) {
          if (!this.state.newTag) {
            this.setState({
              newTag: true
            });
          }

          return true;
        }

        return false;
      };

      return React.createElement(react_masonry_component__WEBPACK_IMPORTED_MODULE_5___default.a, {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-wrapper ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-demo-cat-${slug} clearfix`,
        elementType: 'div' // default 'div'
        ,
        options: {
          transitionDuration: 0
        } // default {}

      }, this.state.demo.map(node => {
        let img = false;

        if (node._embedded && node._embedded['wp:featuredmedia']) {
          try {
            let temp = node._embedded['wp:featuredmedia'][0].media_details.sizes;
            temp = temp['full'];
            img = temp.source_url;
          } catch (e) {}
        }

        let preview = node.preview_link == '' ? node.link : node.preview_link;
        return React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-inner-wrapper`
        }, React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box`
        }, isNew(node.date) && React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-new-block`
        }, React.createElement("span", null, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('New', 'rise-blocks'))), React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-inner`
        }, img && React.createElement("img", {
          src: img,
          alt: ""
        }), React.createElement("a", {
          href: preview,
          target: "_blank"
        }, React.createElement("span", {
          className: "dashicons dashicons-visibility"
        }))), React.createElement("div", {
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-footer`
        }, node.hide_title == '' && React.createElement("h3", null, node.title.rendered), this.insertButton(node))));
      }));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "insertButton", node => {
      if (node.is_pro == '' || node.is_pro == '1' && Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["isPro"])()) {
        return React.createElement("a", {
          href: "#",
          className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-insert-button`,
          onClick: e => {
            if (!this.state.isInserting) {
              this.createBlock(node.demo_json, e);
            }
          }
        }, React.createElement("span", {
          className: "dashicons dashicons-download"
        }), Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Insert ', 'rise-blocks'));
      }

      return React.createElement("a", {
        href: "https://risethemes.com/downloads/gutenbiz-pro/",
        target: "_blank",
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-get-pro`
      }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Get Pro ', 'rise-blocks'), React.createElement("span", {
        className: "dashicons dashicons-arrow-right-alt"
      }));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "showLoader", () => {
      this.setState({
        showLoader: true
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "hideLoader", () => {
      this.setState({
        showLoader: false
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "open", () => {
      this.setState({
        open: true
      });
      jQuery('body').addClass(`${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-open`);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "close", () => {
      this.setState({
        open: false,
        isInserting: false
      });
      jQuery('body').removeClass(`${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-open`);
    });

    this.cache = [];
    this.endPoint = 'https://riseblocks.com/wp-json/wp/v2/';
    this.state = {
      open: false,
      showLoader: true,
      currentParentCategory: null,
      currentChildCategory: null,
      data: [],
      parent: [],
      child: [],
      demo: [],
      isFileMode: false,
      isShowingLatest: true,
      isInserting: false,
      newTag: false
    };
    jQuery.ajax({
      type: 'GET',
      url: `${this.endPoint}demo_category?per_page=100&hide_empty=true&order=asc&orderby=name`,
      success: data => {
        if (data && data.length > 0) {
          const parent = data.filter(node => node.parent == 0 && node.show_in_rise_blocks == 1);
          const currentParentCategory = parent[0].id;
          const child = data.filter(node => node.parent == currentParentCategory);
          const currentChildCategory = child[0].id;
          this.setState({
            parent,
            data,
            currentParentCategory,
            currentChildCategory,
            child
          });
          this.getDemo(currentParentCategory);
        }
      },
      error: e => {
        this.hideLoader();
        this.setState({
          isFileMode: true
        });
      }
    });
  }

  render() {
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-button`
    }, React.createElement("button", {
      onClick: this.open,
      className: `is-button components-button is-primary is-large ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-trigger`
    }, React.createElement("span", {
      className: "dashicons dashicons-upload"
    }), Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Rise Blocks Templates', 'rise-blocks'), this.state.newTag && React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-new-tag`
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('New', 'rise-blocks'))), React.createElement(reactjs_popup__WEBPACK_IMPORTED_MODULE_4__["default"], {
      open: this.state.open,
      closeOnDocumentClick: true,
      onClose: this.close
    }, React.createElement("div", {
      className: "modal rise-blocks-modal"
    }, React.createElement("a", {
      className: "close",
      onClick: this.close
    }, "\xD7"), React.createElement("div", {
      className: "content"
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-header`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-title`
    }, React.createElement("h2", null, React.createElement("img", {
      src: `${Object(_helpers___WEBPACK_IMPORTED_MODULE_2__["getLocalImage"])('logo.png')}`
    }), Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Library', 'rise-blocks'))), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-menu`
    }, React.createElement("ul", null, this.state.parent.map(node => {
      return React.createElement("li", null, React.createElement("a", {
        href: "#",
        className: !this.state.isFileMode && this.state.currentParentCategory == node.id ? 'active-menu' : '',
        onClick: e => this.fetchChildMenu(node.id, e)
      }, React.createElement("span", {
        className: `dashicons dashicons-${node.icon_class}`
      }), node.name));
    }), React.createElement("li", null, React.createElement("a", {
      href: "#",
      className: this.state.isFileMode ? 'active-menu' : '',
      onClick: e => {
        e.preventDefault();
        this.hideLoader();
        this.setState({
          isFileMode: true
        });
      }
    }, React.createElement("span", {
      className: "dashicons dashicons-media-spreadsheet"
    }), Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('File', 'rise-blocks')))))), !this.state.isFileMode && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-popup-sub-header`
    }, React.createElement("ul", null, React.createElement("li", null, React.createElement("a", {
      href: "#",
      onClick: e => {
        this.setState({
          isShowingLatest: true
        }, () => this.getDemo(this.state.currentParentCategory, e));
      },
      className: this.state.isShowingLatest ? 'active-menu' : ''
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Latest', 'rise-blocks'))), this.state.child.map(node => {
      return React.createElement("li", null, React.createElement("a", {
        href: "#",
        onClick: e => {
          this.setState({
            isShowingLatest: false
          }, () => this.getDemo(node.id, e));
        },
        className: !this.state.isShowingLatest && this.state.currentChildCategory == node.id ? 'active-menu' : ''
      }, node.name));
    }))), !this.state.isFileMode && !this.state.showLoader && this.demos(), this.state.isFileMode && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-wrapper`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-import-popup-file`
    }, React.createElement("input", {
      type: "file",
      name: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-json-file`
    }), React.createElement("button", {
      onClick: this.importFromFile,
      className: `button components-button button-primary button-large ${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-action`
    }, importerName))), this.state.showLoader && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-importer-data-box-wrapper`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-wrapper`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-container`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-item rise-blocks-loader-item-1`
    }), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-item rise-blocks-loader-item-2`
    }), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-item rise-blocks-loader-item-3`
    }), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-loader-item rise-blocks-loader-item-4`
    }))))))));
  }

}

/***/ }),

/***/ "./src/components/input-group.js":
/*!***************************************!*\
  !*** ./src/components/input-group.js ***!
  \***************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants */ "./src/constants.js");



const InputGroup = ({
  lists,
  onChnage,
  type,
  className = '',
  updateLinkState,
  isLinkActive,
  property
}) => React.createElement("ul", {
  className: className
}, lists.map((value, index) => React.createElement("li", {
  key: index
}, React.createElement(_wp__WEBPACK_IMPORTED_MODULE_0__["TextControl"], {
  type: type,
  value: value,
  onChange: value => {
    onChnage(index, value);
  }
}), property && property[index] && React.createElement("label", null, property[index]))), React.createElement("li", null, React.createElement(_wp__WEBPACK_IMPORTED_MODULE_0__["Button"], {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-link ${isLinkActive ? 'linked' : ''}`,
  onClick: updateLinkState
}, React.createElement("span", {
  className: `dashicons ${isLinkActive ? 'dashicons-admin-links' : 'dashicons-editor-unlink'}`
}))));

/* harmony default export */ __webpack_exports__["default"] = (InputGroup);

/***/ }),

/***/ "./src/components/layouts-icon.js":
/*!****************************************!*\
  !*** ./src/components/layouts-icon.js ***!
  \****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/constants.js");


const layoutsIcons = ({
  options = [],
  label,
  activeLayout,
  onChange = e => {}
}) => React.createElement("div", {
  className: "components-base-control"
}, label && React.createElement("label", {
  className: "components-base-control__label"
}, label), React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-button-layout`
}, options.map((v, i) => {
  let {
    name,
    icon
  } = v;
  return React.createElement("button", {
    key: i,
    onClick: e => {
      onChange(name);
    },
    className: `${name == activeLayout ? 'active' : ''}`,
    dangerouslySetInnerHTML: {
      __html: icon
    }
  });
})));

/* harmony default export */ __webpack_exports__["default"] = (layoutsIcons);

/***/ }),

/***/ "./src/components/pagination.js":
/*!**************************************!*\
  !*** ./src/components/pagination.js ***!
  \**************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ "./src/constants.js");



const LEFT_PAGE = 'LEFT';
const RIGHT_PAGE = 'RIGHT';
/**
 * Helper method for creating a range of numbers
 * range(1, 5) => [1, 2, 3, 4, 5]
 */

const range = (from, to, step = 1) => {
  let i = from;
  const range = [];

  while (i <= to) {
    range.push(i);
    i += step;
  }

  return range;
};

class Pagination extends _wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(props) {
    super(props);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "gotoPage", page => {
      const {
        onPageChanged = f => f
      } = this.props;
      const currentPage = Math.max(0, Math.min(page, this.totalPages));
      const paginationData = {
        currentPage,
        totalPages: this.totalPages,
        pageLimit: this.pageLimit,
        totalRecords: this.totalRecords
      };
      this.setState({
        currentPage
      }, () => onPageChanged(paginationData));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleClick", page => evt => {
      evt.preventDefault();
      this.gotoPage(page);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleMoveLeft", evt => {
      evt.preventDefault();
      this.gotoPage(this.state.currentPage - this.pageNeighbours * 2 - 1);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleMoveRight", evt => {
      evt.preventDefault();
      this.gotoPage(this.state.currentPage + this.pageNeighbours * 2 + 1);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "fetchPageNumbers", () => {
      const totalPages = this.totalPages;
      const currentPage = this.state.currentPage;
      const pageNeighbours = this.pageNeighbours;
      /**
       * totalNumbers: the total page numbers to show on the control
       * totalBlocks: totalNumbers + 2 to cover for the left(<) and right(>) controls
       */

      const totalNumbers = this.pageNeighbours * 2 + 3;
      const totalBlocks = totalNumbers + 2;

      if (totalPages > totalBlocks) {
        const startPage = Math.max(2, currentPage - pageNeighbours);
        const endPage = Math.min(totalPages - 1, currentPage + pageNeighbours);
        let pages = range(startPage, endPage);
        /**
         * hasLeftSpill: has hidden pages to the left
         * hasRightSpill: has hidden pages to the right
         * spillOffset: number of hidden pages either to the left or to the right
         */

        const hasLeftSpill = startPage > 2;
        const hasRightSpill = totalPages - endPage > 1;
        const spillOffset = totalNumbers - (pages.length + 1);

        switch (true) {
          // handle: (1) < {5 6} [7] {8 9} (10)
          case hasLeftSpill && !hasRightSpill:
            {
              const extraPages = range(startPage - spillOffset, startPage - 1);
              pages = [LEFT_PAGE, ...extraPages, ...pages];
              break;
            }
          // handle: (1) {2 3} [4] {5 6} > (10)

          case !hasLeftSpill && hasRightSpill:
            {
              const extraPages = range(endPage + 1, endPage + spillOffset);
              pages = [...pages, ...extraPages, RIGHT_PAGE];
              break;
            }
          // handle: (1) < {4 5} [6] {7 8} > (10)

          case hasLeftSpill && hasRightSpill:
          default:
            {
              pages = [LEFT_PAGE, ...pages, RIGHT_PAGE];
              break;
            }
        }

        return [1, ...pages, totalPages];
      }

      return range(1, totalPages);
    });

    const {
      totalRecords = null,
      pageLimit,
      pageNeighbours: _pageNeighbours = 0
    } = props; //console.log(pageLimit);

    this.pageLimit = typeof pageLimit === 'number' ? pageLimit : null; //console.log(this.pageLimit)

    this.totalRecords = typeof totalRecords === 'number' ? totalRecords : 0; // pageNeighbours can be: 0, 1 or 2

    this.pageNeighbours = typeof _pageNeighbours === 'number' ? Math.max(0, Math.min(_pageNeighbours, 2)) : 0;
    this.totalPages = Math.ceil(this.totalRecords / this.pageLimit);
    this.state = {
      currentPage: 1
    };
  }

  componentDidMount() {
    const page = this.props.initialPage ? this.props.initialPage : 1;
    this.gotoPage(page);
  }

  render() {
    if (!this.totalRecords || this.totalPages === 1) return null;
    const {
      currentPage
    } = this.state;
    const pages = this.fetchPageNumbers();
    return React.createElement(_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement("nav", {
      "aria-label": "Icon Pagination"
    }, React.createElement("ul", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-pagination`
    }, pages.map((page, index) => {
      if (page === LEFT_PAGE) return React.createElement("li", {
        key: index,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-item`
      }, React.createElement("a", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-link`,
        href: "#",
        "aria-label": "Previous",
        onClick: this.handleMoveLeft
      }, React.createElement("span", {
        "aria-hidden": "true",
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-prev`
      }), React.createElement("span", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-sr-only`
      }, "Previous")));
      if (page === RIGHT_PAGE) return React.createElement("li", {
        key: index,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-item`
      }, React.createElement("a", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-link`,
        href: "#",
        "aria-label": "Next",
        onClick: this.handleMoveRight
      }, React.createElement("span", {
        "aria-hidden": "true",
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-next`
      }), React.createElement("span", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-sr-only`
      }, "Next")));
      return React.createElement("li", {
        key: index,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-item${currentPage === page ? ' active' : ''}`
      }, React.createElement("a", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-page-link`,
        href: "#",
        onClick: this.handleClick(page)
      }, page));
    }))));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Pagination);

/***/ }),

/***/ "./src/components/parent-block-selector.js":
/*!*************************************************!*\
  !*** ./src/components/parent-block-selector.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _helpers_svg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../helpers/svg */ "./src/helpers/svg.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../constants */ "./src/constants.js");



const ParentBlockSelector = ({
  icon,
  label
}) => React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_1__["prefix"]}-parent-block-selector`
}, _helpers_svg__WEBPACK_IMPORTED_MODULE_0__["default"][icon], React.createElement("span", null, label));

/* harmony default export */ __webpack_exports__["default"] = (ParentBlockSelector);

/***/ }),

/***/ "./src/components/responsive-range-control.js":
/*!****************************************************!*\
  !*** ./src/components/responsive-range-control.js ***!
  \****************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ResponsiveRangeControl; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");
/* harmony import */ var _responsive_view_icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./responsive-view-icons */ "./src/components/responsive-view-icons.js");
/* harmony import */ var _size_unit__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./size-unit */ "./src/components/size-unit.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../custom-control */ "./src/custom-control/index.js");







class ResponsiveRangeControl extends _wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleChange", (property, value) => {
      const oldData = this.getAttributesValues();
      const {
        onChange,
        name,
        activeView
      } = this.props;
      const obj = {
        [property]: property === 'activeUnit' ? value : {
          [activeView]: value
        }
      };
      const newData = Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["merge"])({}, oldData, obj);
      onChange(name, newData);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getAttributesValues", () => {
      const {
        value
      } = this.props;
      return value ? Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["merge"])({}, _constants__WEBPACK_IMPORTED_MODULE_4__["defaultResponsiveRange"], value) : _constants__WEBPACK_IMPORTED_MODULE_4__["defaultResponsiveRange"];
    });
  }

  render() {
    const {
      label,
      responsiveViews,
      activeView,
      changeActiveView,
      step = '1',
      beforeIcon = "editor-textcolor"
    } = this.props;
    const {
      activeUnit,
      units = _constants__WEBPACK_IMPORTED_MODULE_4__["sizeUnit"],
      values,
      range: {
        min,
        max
      }
    } = this.getAttributesValues();
    return (
      /*#__PURE__*/
      React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-responsive-range-control`
      },
      /*#__PURE__*/
      React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-label-section`
      },
      /*#__PURE__*/
      React.createElement("label", {
        className: "components-base-control__label"
      }, label),
      /*#__PURE__*/
      React.createElement(_responsive_view_icons__WEBPACK_IMPORTED_MODULE_2__["default"], {
        responsiveViews: responsiveViews,
        activeView: activeView,
        onClick: view => changeActiveView(view)
      }),
      /*#__PURE__*/
      React.createElement(_size_unit__WEBPACK_IMPORTED_MODULE_3__["default"], {
        units: units,
        activeUnit: activeUnit,
        onClick: v => this.handleChange('activeUnit', v)
      })),
      /*#__PURE__*/
      React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_6__["FontSizeControl"], {
        step: step,
        min: min,
        max: max,
        beforeIcon: beforeIcon,
        label: false,
        allowReset: false,
        value: values[activeView],
        onChange: v => this.handleChange('values', v)
      }))
    );
  }

}

/***/ }),

/***/ "./src/components/responsive-view-icons.js":
/*!*************************************************!*\
  !*** ./src/components/responsive-view-icons.js ***!
  \*************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");



const ResponsiveViewsIcons = ({
  onClick = e => {},
  responsiveViews,
  activeView = 'desktop',
  className = ""
}) => {
  const responsiveViewLists = responsiveViews.map(view => {
    const icon = _constants__WEBPACK_IMPORTED_MODULE_0__["responsiveViewsIcon"][view] ? _constants__WEBPACK_IMPORTED_MODULE_0__["responsiveViewsIcon"][view] : '';
    return React.createElement(_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      onClick: e => onClick(view),
      className: `${activeView === view ? 'active' : ''}`
    }, React.createElement("span", {
      className: icon
    }));
  });
  return React.createElement(_wp__WEBPACK_IMPORTED_MODULE_1__["ButtonGroup"], {
    className: `${className} ${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-responsive-view-icons`
  }, responsiveViewLists);
};

/* harmony default export */ __webpack_exports__["default"] = (ResponsiveViewsIcons);

/***/ }),

/***/ "./src/components/size-unit.js":
/*!*************************************!*\
  !*** ./src/components/size-unit.js ***!
  \*************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");



const SizeUnit = ({
  onClick = e => {},
  units,
  activeUnit = 'px',
  className = ""
}) =>
/*#__PURE__*/
React.createElement(_wp__WEBPACK_IMPORTED_MODULE_1__["ButtonGroup"], {
  className: `${className} ${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-size-units`
}, units.map((unit, i) => {
  if (unit == '') {
    return;
  }

  const className = activeUnit === unit ? 'active' : '';
  return (
    /*#__PURE__*/
    React.createElement(_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      className: className,
      key: i,
      onClick: e => onClick(unit)
    }, unit)
  );
}));

/* harmony default export */ __webpack_exports__["default"] = (SizeUnit);

/***/ }),

/***/ "./src/components/tab.js":
/*!*******************************!*\
  !*** ./src/components/tab.js ***!
  \*******************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ "./src/constants.js");




class Tab extends _wp__WEBPACK_IMPORTED_MODULE_0__["Component"] {
  constructor() {
    super();
    this.state = {
      active: 0
    };
  }

  onClick(i) {
    const fn = e => {
      e.preventDefault();
      this.setState({
        active: i
      });
    };

    return fn;
  }

  render() {
    const {
      active
    } = this.state;
    const {
      data,
      className,
      label
    } = this.props;
    const titles = data.map((v, i) => {
      let title = typeof v.title == 'function' ? v.title() : v.title;
      return React.createElement("li", {
        key: i
      }, React.createElement("a", {
        href: "#",
        onClick: this.onClick(i),
        className: Object(_helpers__WEBPACK_IMPORTED_MODULE_1__["classnames"])({
          active: active == i
        })
      }, title));
    });
    const cls = Object(_helpers__WEBPACK_IMPORTED_MODULE_1__["classnames"])(`${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tab-wrapper`, className);
    const content = React.createElement(_wp__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null, React.createElement("ul", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-custom-tab`
    }, titles), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_2__["prefix"]}-tab-content`
    }, data[active].content()));

    if (label) {
      return React.createElement(_wp__WEBPACK_IMPORTED_MODULE_0__["BaseControl"], {
        className: cls,
        label: label
      }, content);
    }

    return React.createElement("div", {
      className: cls
    }, content);
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Tab);

/***/ }),

/***/ "./src/components/upgrader.js":
/*!************************************!*\
  !*** ./src/components/upgrader.js ***!
  \************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/constants.js");


const Upgrader = () => React.createElement("div", {
  className: `${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-upgrader-button`
}, "By upgrading to pro version, you can get options to add more!", React.createElement("a", {
  href: "https://risethemes.com/downloads/rise-blocks-pro",
  target: "_blank"
}, "Rise Blocks Pro"));

/* harmony default export */ __webpack_exports__["default"] = (Upgrader);

/***/ }),

/***/ "./src/components/wp.js":
/*!******************************!*\
  !*** ./src/components/wp.js ***!
  \******************************/
/*! exports provided: Fragment, Component, ColorIndicator, Panel, BaseControl, SelectControl, ColorPicker, ColorPalette, RangeControl, Placeholder, Spinner, Toolbar, Dashicon, ToggleControl, TextControl, Button, IconButton, Path, SVG, G, QueryControls, ButtonGroup, apiFetch, hooks, withSelect, dispatch, select, addQueryArgs, createBlock, registerBlockType, __, withInstanceId, compose, Inspector, InspectorAdvancedControls, RichText, InnerBlocks, MediaUpload, MediaUploadCheck, BlockControls, AlignmentToolbar, BlockAlignmentToolbar, PanelColorSettings, ContrastChecker, URLInput, __experimentalGetSettings, format, dateI18n, decodeEntities, registerPlugin, PluginPostStatusInfo, PluginBlockSettingsMenuItem, prependHttp */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Fragment", function() { return Fragment; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Component", function() { return Component; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorIndicator", function() { return ColorIndicator; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Panel", function() { return Panel; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BaseControl", function() { return BaseControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SelectControl", function() { return SelectControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorPicker", function() { return ColorPicker; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorPalette", function() { return ColorPalette; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RangeControl", function() { return RangeControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Placeholder", function() { return Placeholder; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Spinner", function() { return Spinner; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Toolbar", function() { return Toolbar; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Dashicon", function() { return Dashicon; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ToggleControl", function() { return ToggleControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TextControl", function() { return TextControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Button", function() { return Button; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "IconButton", function() { return IconButton; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Path", function() { return Path; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SVG", function() { return SVG; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "G", function() { return G; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "QueryControls", function() { return QueryControls; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ButtonGroup", function() { return ButtonGroup; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "apiFetch", function() { return apiFetch; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hooks", function() { return hooks; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "withSelect", function() { return withSelect; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dispatch", function() { return dispatch; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "select", function() { return select; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addQueryArgs", function() { return addQueryArgs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createBlock", function() { return createBlock; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "registerBlockType", function() { return registerBlockType; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__", function() { return __; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "withInstanceId", function() { return withInstanceId; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "compose", function() { return compose; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Inspector", function() { return Inspector; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InspectorAdvancedControls", function() { return InspectorAdvancedControls; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RichText", function() { return RichText; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InnerBlocks", function() { return InnerBlocks; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MediaUpload", function() { return MediaUpload; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "MediaUploadCheck", function() { return MediaUploadCheck; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BlockControls", function() { return BlockControls; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AlignmentToolbar", function() { return AlignmentToolbar; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BlockAlignmentToolbar", function() { return BlockAlignmentToolbar; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PanelColorSettings", function() { return PanelColorSettings; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ContrastChecker", function() { return ContrastChecker; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "URLInput", function() { return URLInput; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__experimentalGetSettings", function() { return __experimentalGetSettings; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "format", function() { return format; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "dateI18n", function() { return dateI18n; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "decodeEntities", function() { return decodeEntities; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "registerPlugin", function() { return registerPlugin; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PluginPostStatusInfo", function() { return PluginPostStatusInfo; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PluginBlockSettingsMenuItem", function() { return PluginBlockSettingsMenuItem; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "prependHttp", function() { return prependHttp; });
// Element
const Fragment = wp.element.Fragment;
const Component = wp.element.Component; // Components

const ColorIndicator = wp.components.ColorIndicator;
const Panel = wp.components.PanelBody;
const BaseControl = wp.components.BaseControl;
const SelectControl = wp.components.SelectControl;
const ColorPicker = wp.components.ColorPicker;
const ColorPalette = wp.components.ColorPalette;
const RangeControl = wp.components.RangeControl;
const Placeholder = wp.components.Placeholder;
const Spinner = wp.components.Spinner;
const Toolbar = wp.components.Toolbar;
const Dashicon = wp.components.Dashicon;
const ToggleControl = wp.components.ToggleControl;
const TextControl = wp.components.TextControl;
const Button = wp.components.Button;
const IconButton = wp.components.Button ? wp.components.Button : wp.components.IconButton;
const Path = wp.components.Path;
const SVG = wp.components.SVG;
const G = wp.components.G;
const QueryControls = wp.components.QueryControls;
const ButtonGroup = wp.components.ButtonGroup;
const apiFetch = wp.apiFetch;
const hooks = wp.hooks;
const withSelect = wp.data.withSelect;
const dispatch = (() => {
  const d = wp.data.dispatch; // Backward Compatibility

  const editor = d('core/block-editor') ? d('core/block-editor') : d('core/editor');
  return type => {
    switch (type) {
      case 'editor':
        return editor;
        break;

      default:
        return d(type);
        break;
    }
  };
})();
const select = (() => {
  const s = wp.data.select; // Backward Compatibility

  const editor = s('core/block-editor') ? s('core/block-editor') : s('core/editor');
  return type => {
    switch (type) {
      case 'editor':
        // Backward Compatibility
        return editor;
        break;

      default:
        return s(type);
        break;
    }
  };
})();
const addQueryArgs = wp.url.addQueryArgs; // Blocks

const createBlock = wp.blocks.createBlock;
const registerBlockType = wp.blocks.registerBlockType;
const __ = wp.i18n.__; // Compose

const withInstanceId = wp.compose.withInstanceId;
const compose = wp.compose.compose; // Editor

const editor = wp.blockEditor ? wp.blockEditor : wp.editor;
const Inspector = editor.InspectorControls;
const InspectorAdvancedControls = editor.InspectorAdvancedControls;
const RichText = editor.RichText;
const InnerBlocks = editor.InnerBlocks;
const MediaUpload = editor.MediaUpload;
const MediaUploadCheck = editor.MediaUploadCheck;
const BlockControls = editor.BlockControls;
const AlignmentToolbar = editor.AlignmentToolbar;
const BlockAlignmentToolbar = editor.BlockAlignmentToolbar;
const PanelColorSettings = editor.PanelColorSettings;
const ContrastChecker = editor.ContrastChecker;
const URLInput = editor.URLInput; // Date

const __experimentalGetSettings = wp.date.__experimentalGetSettings;
const format = wp.date.format;
const dateI18n = wp.date.dateI18n;
const decodeEntities = wp.htmlEntities.decodeEntities;
const registerPlugin = wp.plugins.registerPlugin;
const PluginPostStatusInfo = wp.editPost.PluginPostStatusInfo;
const PluginBlockSettingsMenuItem = wp.editPost.PluginBlockSettingsMenuItem;
const prependHttp = wp.url.prependHTTP;

/***/ }),

/***/ "./src/constants.js":
/*!**************************!*\
  !*** ./src/constants.js ***!
  \**************************/
/*! exports provided: prefix, defaultDimension, sizeUnit, ProvideContextMode, defaultState, containerWidth, defaultTextTransform, defaultDimensionValue, defaultViews, defaultFontFamily, defaultFontWeight, responsiveViewsIcon, defaultResponsiveViews, defaultResponsiveRange, colors, backgroundPosition, faSocialIcons, faIcons */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "prefix", function() { return prefix; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultDimension", function() { return defaultDimension; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sizeUnit", function() { return sizeUnit; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ProvideContextMode", function() { return ProvideContextMode; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultState", function() { return defaultState; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "containerWidth", function() { return containerWidth; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultTextTransform", function() { return defaultTextTransform; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultDimensionValue", function() { return defaultDimensionValue; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultViews", function() { return defaultViews; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultFontFamily", function() { return defaultFontFamily; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultFontWeight", function() { return defaultFontWeight; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "responsiveViewsIcon", function() { return responsiveViewsIcon; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultResponsiveViews", function() { return defaultResponsiveViews; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultResponsiveRange", function() { return defaultResponsiveRange; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "colors", function() { return colors; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "backgroundPosition", function() { return backgroundPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "faSocialIcons", function() { return faSocialIcons; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "faIcons", function() { return faIcons; });
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./components/wp */ "./src/components/wp.js");

const prefix = 'rise-blocks';
const defaultDimension = ['top', 'right', 'buttom', 'left'];
const sizeUnit = ['px', 'em'];
const ProvideContextMode = () => React.createElement("i", null, Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Please provide context mode as a props', 'rise-blocks'));
const defaultState = {
  activeUnit: 'px',
  isLinkActive: false
};
const containerWidth = {
  activeUnit: "px",
  units: ['px'],
  range: {
    min: 1,
    max: 2000
  },
  values: {
    desktop: 1140,
    tablet: 720,
    mobile: 540
  }
};
const defaultTextTransform = [{
  value: '',
  label: 'Initial'
}, {
  value: 'inherit',
  label: 'Inherit'
}, {
  value: 'none',
  label: 'None'
}, {
  value: 'capitalize',
  label: 'Capitalize'
}, {
  value: 'uppercase',
  label: 'UPPERCASE'
}, {
  value: 'lowercase',
  label: 'lowercase'
}];
const defaultDimensionValue = {
  activeUnit: 'px',
  isLinkActive: false,
  properties: ['top', 'right', 'bottom', 'left'],
  responsiveViews: ['desktop', 'tablet', 'mobile'],
  units: ['px', 'rem'],
  values: {
    desktop: [0, 0, 0, 0],
    tablet: [0, 0, 0, 0],
    mobile: [0, 0, 0, 0]
  }
};
const defaultViews = {
  desktop: [],
  tablet: [],
  mobile: []
};
const defaultFontFamily = _components_wp__WEBPACK_IMPORTED_MODULE_0__["hooks"].applyFilters('riseBlocksFonts', [{
  value: '',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Default', 'rise-blocks')
}, {
  value: 'Lato',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Lato', 'rise-blocks')
}, {
  value: 'Oswald',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Oswald', 'rise-blocks')
}, {
  value: 'Montserrat',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Montserrat', 'rise-blocks')
}, {
  value: 'Roboto',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Roboto', 'rise-blocks')
}, {
  value: 'Raleway',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Raleway', 'rise-blocks')
}, {
  value: 'Playfair Display',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Playfair Display', 'rise-blocks')
}, {
  value: 'Fjalla One',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Fjalla One', 'rise-blocks')
}, {
  value: 'Alegreya Sans',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Alegreya Sans', 'rise-blocks')
}, {
  value: 'PT Sans Narrow',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('PT Sans Narrow', 'rise-blocks')
}, {
  value: 'Open Sans',
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_0__["__"])('Open Sans', 'rise-blocks')
}]);
const defaultFontWeight = [{
  value: 300,
  label: 300
}, {
  value: 400,
  label: 400
}, {
  value: 500,
  label: 500
}, {
  value: 600,
  label: 600
}, {
  value: 700,
  label: 700
}, {
  value: 800,
  label: 800
}, {
  value: 900,
  label: 900
}];
const responsiveViewsIcon = {
  desktop: 'dashicons dashicons-desktop',
  tablet: 'dashicons dashicons-tablet',
  mobile: 'dashicons dashicons-smartphone'
};
const defaultResponsiveViews = ['desktop', 'tablet', 'mobile'];
const defaultResponsiveRange = {
  activeUnit: 'px',
  range: {
    min: 0,
    max: 100
  },
  values: {
    desktop: 0,
    tablet: 0,
    mobile: 0
  }
};
const colors = [{
  name: 'white',
  color: '#ffffff'
}, {
  name: 'red',
  color: '#fc5b62'
}, {
  name: 'blue',
  color: '#0693e3'
}, {
  name: 'light grey',
  color: '#eeeeee'
}, {
  name: 'black',
  color: '#000'
}];
const backgroundPosition = [{
  label: 'default',
  value: ''
}, {
  label: 'top left',
  value: 'top left'
}, {
  label: 'top center',
  value: 'top center'
}, {
  label: 'top right',
  value: 'top right'
}, {
  label: 'center left',
  value: 'center left'
}, {
  label: 'center center',
  value: 'center center'
}, {
  label: 'center right',
  value: 'center right'
}, {
  label: 'bottom left',
  value: 'bottom left'
}, {
  label: 'bottom center',
  value: 'bottom center'
}, {
  label: 'bottom right',
  value: 'bottom right'
}];
const faSocialIcons = ['fa-facebook', 'fa-facebook-f', 'fa-facebook-official', 'fa-facebook-square', 'fa-flickr', 'fa-google', 'fa-google-plus', 'fa-google-plus-circle', 'fa-google-plus-official', 'fa-google-plus-square', 'fa-google-wallet', 'fa-instagram', 'fa-linkedin', 'fa-linkedin-square', 'fa-pinterest', 'fa-pinterest-p', 'fa-pinterest-square', 'fa-twitter', 'fa-twitter-square', 'fa-qq', 'fa-quora', 'fa-reddit', 'fa-reddit-alien', 'fa-reddit-square', 'fa-skype', 'fa-snapchat', 'fa-snapchat-ghost', 'fa-stumbleupon', 'fa-stumbleupon-circle', 'fa-snapchat-square', 'fa-telegram', 'fa-tumblr', 'fa-tumblr-square', 'fa-vimeo', 'fa-vimeo-square', 'fa-vine', 'fa-wechat', 'fa-whatsapp', 'fa-yahoo', 'fa-youtube', 'fa-youtube-play', 'fa-youtube-square'];
const faIcons = ['fa-500px', 'fa-address-book', 'fa-address-book-o', 'fa-address-card', 'fa-address-card-o', 'fa-adjust', 'fa-adn', 'fa-align-center', 'fa-align-justify', 'fa-align-left', 'fa-align-right', 'fa-amazon', 'fa-ambulance', 'fa-american-sign-language-interpreting', 'fa-anchor', 'fa-android', 'fa-angellist', 'fa-angle-double-down', 'fa-angle-double-left', 'fa-angle-double-right', 'fa-angle-double-up', 'fa-angle-down', 'fa-angle-left', 'fa-angle-right', 'fa-angle-up', 'fa-apple', 'fa-archive', 'fa-area-chart', 'fa-arrow-circle-down', 'fa-arrow-circle-left', 'fa-arrow-circle-o-down', 'fa-arrow-circle-o-left', 'fa-arrow-circle-o-right', 'fa-arrow-circle-o-up', 'fa-arrow-circle-right', 'fa-arrow-circle-up', 'fa-arrow-down', 'fa-arrow-left', 'fa-arrow-right', 'fa-arrow-up', 'fa-arrows', 'fa-arrows-alt', 'fa-arrows-h', 'fa-arrows-v', 'fa-asl-interpreting', 'fa-assistive-listening-systems', 'fa-asterisk', 'fa-at', 'fa-audio-description', 'fa-automobile', 'fa-backward', 'fa-balance-scale', 'fa-ban', 'fa-bandcamp', 'fa-bank', 'fa-bar-chart', 'fa-bar-chart-o', 'fa-barcode', 'fa-bars', 'fa-bath', 'fa-bathtub', 'fa-battery', 'fa-battery-0', 'fa-battery-1', 'fa-battery-2', 'fa-battery-3', 'fa-battery-4', 'fa-battery-empty', 'fa-battery-full', 'fa-battery-half', 'fa-battery-quarter', 'fa-battery-three-quarters', 'fa-bed', 'fa-beer', 'fa-behance', 'fa-behance-square', 'fa-bell', 'fa-bell-o', 'fa-bell-slash', 'fa-bell-slash-o', 'fa-bicycle', 'fa-binoculars', 'fa-birthday-cake', 'fa-bitbucket', 'fa-bitbucket-square', 'fa-bitcoin', 'fa-black-tie', 'fa-blind', 'fa-bluetooth', 'fa-bluetooth-b', 'fa-bold', 'fa-bolt', 'fa-bomb', 'fa-book', 'fa-bookmark', 'fa-bookmark-o', 'fa-braille', 'fa-briefcase', 'fa-btc', 'fa-bug', 'fa-building', 'fa-building-o', 'fa-bullhorn', 'fa-bullseye', 'fa-bus', 'fa-buysellads', 'fa-cab', 'fa-calculator', 'fa-calendar', 'fa-calendar-check-o', 'fa-calendar-minus-o', 'fa-calendar-o', 'fa-calendar-plus-o', 'fa-calendar-times-o', 'fa-camera', 'fa-camera-retro', 'fa-car', 'fa-caret-down', 'fa-caret-left', 'fa-caret-right', 'fa-caret-square-o-down', 'fa-caret-square-o-left', 'fa-caret-square-o-right', 'fa-caret-square-o-up', 'fa-caret-up', 'fa-cart-arrow-down', 'fa-cart-plus', 'fa-cc', 'fa-cc-amex', 'fa-cc-diners-club', 'fa-cc-discover', 'fa-cc-jcb', 'fa-cc-mastercard', 'fa-cc-paypal', 'fa-cc-stripe', 'fa-cc-visa', 'fa-certificate', 'fa-chain', 'fa-chain-broken', 'fa-check', 'fa-check-circle', 'fa-check-circle-o', 'fa-check-square', 'fa-check-square-o', 'fa-chevron-circle-down', 'fa-chevron-circle-left', 'fa-chevron-circle-right', 'fa-chevron-circle-up', 'fa-chevron-down', 'fa-chevron-left', 'fa-chevron-right', 'fa-chevron-up', 'fa-child', 'fa-chrome', 'fa-circle', 'fa-circle-o', 'fa-circle-o-notch', 'fa-circle-thin', 'fa-clipboard', 'fa-clock-o', 'fa-clone', 'fa-close', 'fa-cloud', 'fa-cloud-download', 'fa-cloud-upload', 'fa-cny', 'fa-code', 'fa-code-fork', 'fa-codepen', 'fa-codiepie', 'fa-coffee', 'fa-cog', 'fa-cogs', 'fa-columns', 'fa-comment', 'fa-comment-o', 'fa-commenting', 'fa-commenting-o', 'fa-comments', 'fa-comments-o', 'fa-compass', 'fa-compress', 'fa-connectdevelop', 'fa-contao', 'fa-copy', 'fa-copyright', 'fa-creative-commons', 'fa-credit-card', 'fa-credit-card-alt', 'fa-crop', 'fa-crosshairs', 'fa-css3', 'fa-cube', 'fa-cubes', 'fa-cut', 'fa-cutlery', 'fa-dashboard', 'fa-dashcube', 'fa-database', 'fa-deaf', 'fa-deafness', 'fa-dedent', 'fa-delicious', 'fa-desktop', 'fa-deviantart', 'fa-diamond', 'fa-digg', 'fa-dollar', 'fa-dot-circle-o', 'fa-download', 'fa-dribbble', 'fa-drivers-license', 'fa-drivers-license-o', 'fa-dropbox', 'fa-drupal', 'fa-edge', 'fa-edit', 'fa-eercast', 'fa-eject', 'fa-ellipsis-h', 'fa-ellipsis-v', 'fa-empire', 'fa-envelope', 'fa-envelope-o', 'fa-envelope-open', 'fa-envelope-open-o', 'fa-envelope-square', 'fa-envira', 'fa-eraser', 'fa-etsy', 'fa-eur', 'fa-euro', 'fa-exchange', 'fa-exclamation', 'fa-exclamation-circle', 'fa-exclamation-triangle', 'fa-expand', 'fa-expeditedssl', 'fa-external-link', 'fa-external-link-square', 'fa-eye', 'fa-eye-slash', 'fa-eyedropper', 'fa-fa', 'fa-facebook', 'fa-facebook-f', 'fa-facebook-official', 'fa-facebook-square', 'fa-fast-backward', 'fa-fast-forward', 'fa-fax', 'fa-feed', 'fa-female', 'fa-fighter-jet', 'fa-file', 'fa-file-archive-o', 'fa-file-audio-o', 'fa-file-code-o', 'fa-file-excel-o', 'fa-file-image-o', 'fa-file-movie-o', 'fa-file-o', 'fa-file-pdf-o', 'fa-file-photo-o', 'fa-file-picture-o', 'fa-file-powerpoint-o', 'fa-file-sound-o', 'fa-file-text', 'fa-file-text-o', 'fa-file-video-o', 'fa-file-word-o', 'fa-file-zip-o', 'fa-files-o', 'fa-film', 'fa-filter', 'fa-fire', 'fa-fire-extinguisher', 'fa-firefox', 'fa-first-order', 'fa-flag', 'fa-flag-checkered', 'fa-flag-o', 'fa-flash', 'fa-flask', 'fa-flickr', 'fa-floppy-o', 'fa-folder', 'fa-folder-o', 'fa-folder-open', 'fa-folder-open-o', 'fa-font', 'fa-font-awesome', 'fa-fonticons', 'fa-fort-awesome', 'fa-forumbee', 'fa-forward', 'fa-foursquare', 'fa-free-code-camp', 'fa-frown-o', 'fa-futbol-o', 'fa-gamepad', 'fa-gavel', 'fa-gbp', 'fa-ge', 'fa-gear', 'fa-gears', 'fa-genderless', 'fa-get-pocket', 'fa-gg', 'fa-gg-circle', 'fa-gift', 'fa-git', 'fa-git-square', 'fa-github', 'fa-github-alt', 'fa-github-square', 'fa-gitlab', 'fa-gittip', 'fa-glass', 'fa-glide', 'fa-glide-g', 'fa-globe', 'fa-google', 'fa-google-plus', 'fa-google-plus-circle', 'fa-google-plus-official', 'fa-google-plus-square', 'fa-google-wallet', 'fa-graduation-cap', 'fa-gratipay', 'fa-grav', 'fa-group', 'fa-h-square', 'fa-hacker-news', 'fa-hand-grab-o', 'fa-hand-lizard-o', 'fa-hand-o-down', 'fa-hand-o-left', 'fa-hand-o-right', 'fa-hand-o-up', 'fa-hand-paper-o', 'fa-hand-peace-o', 'fa-hand-pointer-o', 'fa-hand-rock-o', 'fa-hand-scissors-o', 'fa-hand-spock-o', 'fa-hand-stop-o', 'fa-handshake-o', 'fa-hard-of-hearing', 'fa-hashtag', 'fa-hdd-o', 'fa-header', 'fa-headphones', 'fa-heart', 'fa-heart-o', 'fa-heartbeat', 'fa-history', 'fa-home', 'fa-hospital-o', 'fa-hotel', 'fa-hourglass', 'fa-hourglass-1', 'fa-hourglass-2', 'fa-hourglass-3', 'fa-hourglass-end', 'fa-hourglass-half', 'fa-hourglass-o', 'fa-hourglass-start', 'fa-houzz', 'fa-html5', 'fa-i-cursor', 'fa-id-badge', 'fa-id-card', 'fa-id-card-o', 'fa-ils', 'fa-image', 'fa-imdb', 'fa-inbox', 'fa-indent', 'fa-industry', 'fa-info', 'fa-info-circle', 'fa-inr', 'fa-instagram', 'fa-institution', 'fa-internet-explorer', 'fa-intersex', 'fa-ioxhost', 'fa-italic', 'fa-joomla', 'fa-jpy', 'fa-jsfiddle', 'fa-key', 'fa-keyboard-o', 'fa-krw', 'fa-language', 'fa-laptop', 'fa-lastfm', 'fa-lastfm-square', 'fa-leaf', 'fa-leanpub', 'fa-legal', 'fa-lemon-o', 'fa-level-down', 'fa-level-up', 'fa-life-bouy', 'fa-life-buoy', 'fa-life-ring', 'fa-life-saver', 'fa-lightbulb-o', 'fa-line-chart', 'fa-link', 'fa-linkedin', 'fa-linkedin-square', 'fa-linode', 'fa-linux', 'fa-list', 'fa-list-alt', 'fa-list-ol', 'fa-list-ul', 'fa-location-arrow', 'fa-lock', 'fa-long-arrow-down', 'fa-long-arrow-left', 'fa-long-arrow-right', 'fa-long-arrow-up', 'fa-low-vision', 'fa-magic', 'fa-magnet', 'fa-mail-forward', 'fa-mail-reply', 'fa-mail-reply-all', 'fa-male', 'fa-map', 'fa-map-marker', 'fa-map-o', 'fa-map-pin', 'fa-map-signs', 'fa-mars', 'fa-mars-double', 'fa-mars-stroke', 'fa-mars-stroke-h', 'fa-mars-stroke-v', 'fa-maxcdn', 'fa-meanpath', 'fa-medium', 'fa-medkit', 'fa-meetup', 'fa-meh-o', 'fa-mercury', 'fa-microchip', 'fa-microphone', 'fa-microphone-slash', 'fa-minus', 'fa-minus-circle', 'fa-minus-square', 'fa-minus-square-o', 'fa-mixcloud', 'fa-mobile', 'fa-mobile-phone', 'fa-modx', 'fa-money', 'fa-moon-o', 'fa-mortar-board', 'fa-motorcycle', 'fa-mouse-pointer', 'fa-music', 'fa-navicon', 'fa-neuter', 'fa-newspaper-o', 'fa-object-group', 'fa-object-ungroup', 'fa-odnoklassniki', 'fa-odnoklassniki-square', 'fa-opencart', 'fa-openid', 'fa-opera', 'fa-optin-monster', 'fa-outdent', 'fa-pagelines', 'fa-paint-brush', 'fa-paper-plane', 'fa-paper-plane-o', 'fa-paperclip', 'fa-paragraph', 'fa-paste', 'fa-pause', 'fa-pause-circle', 'fa-pause-circle-o', 'fa-paw', 'fa-paypal', 'fa-pencil', 'fa-pencil-square', 'fa-pencil-square-o', 'fa-percent', 'fa-phone', 'fa-phone-square', 'fa-photo', 'fa-picture-o', 'fa-pie-chart', 'fa-pied-piper', 'fa-pied-piper-alt', 'fa-pied-piper-pp', 'fa-pinterest', 'fa-pinterest-p', 'fa-pinterest-square', 'fa-plane', 'fa-play', 'fa-play-circle', 'fa-play-circle-o', 'fa-plug', 'fa-plus', 'fa-plus-circle', 'fa-plus-square', 'fa-plus-square-o', 'fa-podcast', 'fa-power-off', 'fa-print', 'fa-product-hunt', 'fa-puzzle-piece', 'fa-qq', 'fa-qrcode', 'fa-question', 'fa-question-circle', 'fa-question-circle-o', 'fa-quora', 'fa-quote-left', 'fa-quote-right', 'fa-ra', 'fa-random', 'fa-ravelry', 'fa-rebel', 'fa-recycle', 'fa-reddit', 'fa-reddit-alien', 'fa-reddit-square', 'fa-refresh', 'fa-registered', 'fa-remove', 'fa-renren', 'fa-reorder', 'fa-repeat', 'fa-reply', 'fa-reply-all', 'fa-resistance', 'fa-retweet', 'fa-rmb', 'fa-road', 'fa-rocket', 'fa-rotate-left', 'fa-rotate-right', 'fa-rouble', 'fa-rss', 'fa-rss-square', 'fa-rub', 'fa-ruble', 'fa-rupee', 'fa-s15', 'fa-safari', 'fa-save', 'fa-scissors', 'fa-scribd', 'fa-search', 'fa-search-minus', 'fa-search-plus', 'fa-sellsy', 'fa-send', 'fa-send-o', 'fa-server', 'fa-share', 'fa-share-alt', 'fa-share-alt-square', 'fa-share-square', 'fa-share-square-o', 'fa-shekel', 'fa-sheqel', 'fa-shield', 'fa-ship', 'fa-shirtsinbulk', 'fa-shopping-bag', 'fa-shopping-basket', 'fa-shopping-cart', 'fa-shower', 'fa-sign-in', 'fa-sign-language', 'fa-sign-out', 'fa-signal', 'fa-signing', 'fa-simplybuilt', 'fa-sitemap', 'fa-skyatlas', 'fa-skype', 'fa-slack', 'fa-sliders', 'fa-slideshare', 'fa-smile-o', 'fa-snapchat', 'fa-snapchat-ghost', 'fa-snapchat-square', 'fa-snowflake-o', 'fa-soccer-ball-o', 'fa-sort', 'fa-sort-alpha-asc', 'fa-sort-alpha-desc', 'fa-sort-amount-asc', 'fa-sort-amount-desc', 'fa-sort-asc', 'fa-sort-desc', 'fa-sort-down', 'fa-sort-numeric-asc', 'fa-sort-numeric-desc', 'fa-sort-up', 'fa-soundcloud', 'fa-space-shuttle', 'fa-spinner', 'fa-spoon', 'fa-spotify', 'fa-square', 'fa-square-o', 'fa-stack-exchange', 'fa-stack-overflow', 'fa-star', 'fa-star-half', 'fa-star-half-empty', 'fa-star-half-full', 'fa-star-half-o', 'fa-star-o', 'fa-steam', 'fa-steam-square', 'fa-step-backward', 'fa-step-forward', 'fa-stethoscope', 'fa-sticky-note', 'fa-sticky-note-o', 'fa-stop', 'fa-stop-circle', 'fa-stop-circle-o', 'fa-street-view', 'fa-strikethrough', 'fa-stumbleupon', 'fa-stumbleupon-circle', 'fa-subscript', 'fa-subway', 'fa-suitcase', 'fa-sun-o', 'fa-superpowers', 'fa-superscript', 'fa-support', 'fa-table', 'fa-tablet', 'fa-tachometer', 'fa-tag', 'fa-tags', 'fa-tasks', 'fa-taxi', 'fa-telegram', 'fa-television', 'fa-tencent-weibo', 'fa-terminal', 'fa-text-height', 'fa-text-width', 'fa-th', 'fa-th-large', 'fa-th-list', 'fa-themeisle', 'fa-thermometer', 'fa-thermometer-0', 'fa-thermometer-1', 'fa-thermometer-2', 'fa-thermometer-3', 'fa-thermometer-4', 'fa-thermometer-empty', 'fa-thermometer-full', 'fa-thermometer-half', 'fa-thermometer-quarter', 'fa-thermometer-three-quarters', 'fa-thumb-tack', 'fa-thumbs-down', 'fa-thumbs-o-down', 'fa-thumbs-o-up', 'fa-thumbs-up', 'fa-ticket', 'fa-times', 'fa-times-circle', 'fa-times-circle-o', 'fa-times-rectangle', 'fa-times-rectangle-o', 'fa-tint', 'fa-toggle-down', 'fa-toggle-left', 'fa-toggle-off', 'fa-toggle-on', 'fa-toggle-right', 'fa-toggle-up', 'fa-trademark', 'fa-train', 'fa-transgender', 'fa-transgender-alt', 'fa-trash', 'fa-trash-o', 'fa-tree', 'fa-trello', 'fa-tripadvisor', 'fa-trophy', 'fa-truck', 'fa-try', 'fa-tty', 'fa-tumblr', 'fa-tumblr-square', 'fa-turkish-lira', 'fa-tv', 'fa-twitch', 'fa-twitter', 'fa-twitter-square', 'fa-umbrella', 'fa-underline', 'fa-undo', 'fa-universal-access', 'fa-university', 'fa-unlink', 'fa-unlock', 'fa-unlock-alt', 'fa-unsorted', 'fa-upload', 'fa-usb', 'fa-usd', 'fa-user', 'fa-user-circle', 'fa-user-circle-o', 'fa-user-md', 'fa-user-o', 'fa-user-plus', 'fa-user-secret', 'fa-user-times', 'fa-users', 'fa-vcard', 'fa-vcard-o', 'fa-venus', 'fa-venus-double', 'fa-venus-mars', 'fa-viacoin', 'fa-viadeo', 'fa-viadeo-square', 'fa-video-camera', 'fa-vimeo', 'fa-vimeo-square', 'fa-vine', 'fa-vk', 'fa-volume-control-phone', 'fa-volume-down', 'fa-volume-off', 'fa-volume-up', 'fa-warning', 'fa-wechat', 'fa-weibo', 'fa-weixin', 'fa-whatsapp', 'fa-wheelchair', 'fa-wheelchair-alt', 'fa-wifi', 'fa-wikipedia-w', 'fa-window-close', 'fa-window-close-o', 'fa-window-maximize', 'fa-window-minimize', 'fa-window-restore', 'fa-windows', 'fa-won', 'fa-wordpress', 'fa-wpbeginner', 'fa-wpexplorer', 'fa-wpforms', 'fa-wrench', 'fa-xing', 'fa-xing-square', 'fa-y-combinator', 'fa-y-combinator-square', 'fa-yahoo', 'fa-yc', 'fa-yc-square', 'fa-yelp', 'fa-yen', 'fa-yoast', 'fa-youtube', 'fa-youtube-play', 'fa-youtube-square'];

/***/ }),

/***/ "./src/custom-control/dimension.js":
/*!*****************************************!*\
  !*** ./src/custom-control/dimension.js ***!
  \*****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return DimensionControl; });
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js");
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_responsive_view_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/responsive-view-icons */ "./src/components/responsive-view-icons.js");
/* harmony import */ var _components_size_unit__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../components/size-unit */ "./src/components/size-unit.js");
/* harmony import */ var _components_input_group__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../components/input-group */ "./src/components/input-group.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../constants */ "./src/constants.js");



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }


/* Custom components */





/* Others */


class DimensionControl extends _components_wp__WEBPACK_IMPORTED_MODULE_2__["Component"] {
  constructor(_props) {
    super();

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "getData", (props = this.props) => {
      const value = props.value ? props.value : {};

      const {
        values
      } = _constants__WEBPACK_IMPORTED_MODULE_7__["defaultDimensionValue"],
            defaultDimensionValueRest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_0___default()(_constants__WEBPACK_IMPORTED_MODULE_7__["defaultDimensionValue"], ["values"]);

      const data = _objectSpread({}, defaultDimensionValueRest, {}, value);

      const {
        properties,
        responsiveViews
      } = data;
      return _objectSpread({}, data, {
        values: value.values ? this.getViewData(properties, data.values, responsiveViews) : this.getViewData(properties, values, responsiveViews)
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "handleChange", (name, data) => {
      const oldData = this.getData();
      const {
        isLinkActive,
        values
      } = oldData;
      const {
        activeView
      } = this.state;
      const {
        onChange = () => {}
      } = this.props;
      let newData = {};

      if ('updateValues' === name) {
        let {
          index,
          value
        } = data;
        newData = Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["merge"])({}, oldData, {
          values: {
            [activeView]: isLinkActive ? values[activeView].map(() => parseInt(value)) : values[activeView].map((v, i) => index === i ? parseInt(value) : v)
          }
        });
      } else if ('updateLink' === name) {
        newData = Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["merge"])({}, oldData, {
          isLinkActive: !isLinkActive
        });
      } else if ('updateUnit' === name) {
        newData = Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["merge"])({}, oldData, {
          activeUnit: data
        });
      }

      onChange(newData);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_1___default()(this, "reset", () => {
      const {
        defaultValue,
        onChange
      } = this.props;
      defaultValue && onChange(defaultValue);
    });

    const {
      responsiveViews: _responsiveViews
    } = this.getData(_props);
    this.state = {
      activeView: _responsiveViews[0]
    };
  }

  getViewData(properties, responsiveValues, responsiveViews) {
    let viewData = {};
    responsiveViews.forEach((v, i) => {
      let value = responsiveValues[v];
      let currentValue = properties.map((p, i) => value && value.length - 1 >= i ? value[i] : 0);
      viewData = _objectSpread({}, viewData, {
        [v]: currentValue
      });
    });
    return viewData;
  }

  render() {
    const {
      activeView
    } = this.state;
    const {
      label
    } = this.props;
    const {
      responsiveViews,
      isLinkActive,
      activeUnit,
      units,
      values,
      properties
    } = this.getData();
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_7__["prefix"]}-dimension-input`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_7__["prefix"]}-label-section`
    }, label && React.createElement("label", {
      className: "components-base-control__label"
    }, label), React.createElement(_components_responsive_view_icons__WEBPACK_IMPORTED_MODULE_3__["default"], {
      responsiveViews: responsiveViews,
      activeView: activeView,
      onClick: view => this.setState({
        activeView: view
      })
    }), React.createElement(_components_size_unit__WEBPACK_IMPORTED_MODULE_4__["default"], {
      units: units,
      activeUnit: activeUnit,
      onClick: unit => this.handleChange('updateUnit', unit)
    })), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_7__["prefix"]}-controller`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_7__["prefix"]}-lists`
    }, React.createElement(_components_input_group__WEBPACK_IMPORTED_MODULE_5__["default"], {
      property: properties,
      isLinkActive: isLinkActive,
      updateLinkState: () => this.handleChange('updateLink'),
      type: "number",
      lists: values[activeView],
      onChnage: (i, v) => this.handleChange('updateValues', {
        index: i,
        value: v
      })
    }))), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_7__["prefix"]}-btn-reset-wrapper`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Button"], {
      onClick: this.reset,
      className: `is-button is-default is-small`
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Reset', 'rise-blocks'))));
  }

}
Object(_helpers__WEBPACK_IMPORTED_MODULE_6__["globalize"])('DimensionControl', DimensionControl);

/***/ }),

/***/ "./src/custom-control/icon-selector.js":
/*!*********************************************!*\
  !*** ./src/custom-control/icon-selector.js ***!
  \*********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var reactjs_popup__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! reactjs-popup */ "./node_modules/reactjs-popup/reactjs-popup.es.js");
/* harmony import */ var _components_pagination__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/pagination */ "./src/components/pagination.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");







const getPropsValue = props => {
  return props.value || {
    icon: '',
    page: 1
  };
};

class RenderIconSelector extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor() {
    super();

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "onPageChanged", data => {
      const icons = this.isSearching() ? this.state.allSearchedIcons : this.props.icons;
      const {
        totalPages,
        currentPage
      } = data;
      const offset = (currentPage - 1) * this.pageLimit;
      const currentIcons = icons.slice(offset, offset + this.pageLimit);
      this.setState({
        currentPage,
        currentIcons,
        totalPages
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "onSearch", e => {
      const allSearchedIcons = this.props.icons.filter(function (i) {
        let temp = i.toLowerCase().replace('fa-', ''); // temp = temp.replace( 'fas', '' );
        // temp = temp.replace( 'far', '' );
        // temp = temp.replace( 'fab', '' );

        return temp.match(e.target.value);
      });
      const currentIcons = allSearchedIcons.slice(0, this.pageLimit);
      this.refs.child.totalPages = allSearchedIcons ? Math.ceil(allSearchedIcons.length / this.pageLimit) : 1;
      this.refs.child.totalRecords = allSearchedIcons.length;
      this.refs.child.gotoPage(1);
      this.setState({
        allSearchedIcons,
        searchString: e.target.value,
        currentIcons
      });
    });

    this.state = {
      allSearchedIcons: [],
      searchString: '',
      currentIcons: [],
      currentPage: null,
      totalPages: null
    };
    this.pageLimit = 16;
    this.searchInput = React.createRef();
  }

  componentDidMount() {
    this.searchInput.current.focus();
  }

  componentWillUnmount() {
    this.searchInput.current.blur();
  }

  isSearching() {
    return '' !== this.state.searchString;
  }

  onSelect(icon) {
    const fn = e => {
      e.preventDefault();
      let page = this.state.currentPage;

      if (this.state.searchString.trim().length > 0) {
        const i = this.props.icons.indexOf(icon);
        page = Math.ceil((parseInt(i) + 1) / this.pageLimit);
      }

      this.props.onChange({
        icon: icon,
        page
      });
    };

    return fn;
  }

  pageInfo() {
    const {
      currentIcons,
      totalPages,
      currentPage
    } = this.state;
    if (currentIcons.length <= 0) return;

    const Page = ({
      value
    }) => React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-bold`
    }, value);

    return React.createElement("span", {
      className: "search-label"
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Page', 'rise-block'), React.createElement(Page, {
      value: currentPage
    }), " / ", React.createElement(Page, {
      value: totalPages
    }));
  }

  printIcons() {
    const {
      currentIcons
    } = this.state;
    if (currentIcons.length <= 0) return;
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-items-wrapper`
    }, currentIcons.map((icon, index) => {
      return React.createElement("div", {
        key: index,
        className: Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["classnames"])({
          'active': getPropsValue(this.props).icon == icon
        })
      }, React.createElement("a", {
        key: index,
        onClick: this.onSelect(icon)
      }, React.createElement("i", {
        className: `${this.props.prefix} ${icon}`
      })));
    }));
  }

  render() {
    const {
      allSearchedIcons
    } = this.state;
    const totalIcons = this.isSearching() ? allSearchedIcons.length : this.props.icons.length;
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector-search`
    }, React.createElement("input", {
      ref: this.searchInput,
      type: "text",
      value: this.state.searchString,
      onChange: this.onSearch,
      placeholder: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Search Icons', 'rise-block')
    })), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-search-label-wrap`
    }, React.createElement("h2", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-label`
    }, React.createElement("strong", null, totalIcons), Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])(' Icons', 'rise-block'))), this.printIcons(), React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector-pagination`
    }, this.pageInfo(), React.createElement(_components_pagination__WEBPACK_IMPORTED_MODULE_3__["default"], {
      ref: "child",
      initialPage: getPropsValue(this.props).page,
      totalRecords: totalIcons,
      pageLimit: 16,
      pageNeighbours: 0,
      onPageChanged: this.onPageChanged
    })));
  }

}

const IconSelector = props => {
  const value = getPropsValue(props);
  return React.createElement("div", {
    className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector`
  }, React.createElement(reactjs_popup__WEBPACK_IMPORTED_MODULE_2__["default"], {
    trigger: React.createElement("button", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector-button`
    }, React.createElement("i", {
      className: `${props.prefix} ${value.icon}`
    }), React.createElement("span", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-icon-selector-label`
    }, value.icon ? Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Selected Icon', 'rise-blocks') : props.label, " "), React.createElement("i", {
      className: "fa fa-sort-down"
    })),
    position: "bottom center",
    closeOnDocumentClick: true
  }, React.createElement("div", null, React.createElement(RenderIconSelector, props))));
};

/* harmony default export */ __webpack_exports__["default"] = (IconSelector);
Object(_helpers__WEBPACK_IMPORTED_MODULE_5__["globalize"])('IconSelector', IconSelector);

/***/ }),

/***/ "./src/custom-control/image-control.js":
/*!*********************************************!*\
  !*** ./src/custom-control/image-control.js ***!
  \*********************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ImageControl; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var _custom_control__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../custom-control */ "./src/custom-control/index.js");


function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }





class ImageControl extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "defaultSize", 'full');

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getValue", () => {
      const {
        value
      } = this.props;

      if (Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(value)) {
        return {
          size: this.defaultSize,
          url: undefined
        };
      }

      return value;
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "onRender", ({
      open
    }) => {
      const onRemove = e => {
        e.preventDefault();
        this.props.onSelect(_objectSpread({}, this.getValue(), {
          url: ''
        }));
      };

      const style = {};
      const {
        url,
        size
      } = this.getValue();

      if (url) {
        style.backgroundImage = `url(${url})`;
      }

      return React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-image-uploader`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-image-uploader-wrapper`
      }, React.createElement("div", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-button-wrapper`
      }, React.createElement("button", {
        onClick: open,
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-image-uploader-trigger`,
        style: style
      }), url && React.createElement("button", {
        className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-image-uploader-delete`,
        isDestructive: true,
        onClick: onRemove
      }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Delete Image', 'rise-blocks')))), url && React.createElement(_custom_control__WEBPACK_IMPORTED_MODULE_4__["ImageSizeControl"], {
        value: size,
        onChange: v => {
          this.onSelect(v, 'size');
        }
      }));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "onSelect", (v, type) => {
      let d;

      if ('image' == type) {
        let {
          size = this.defaultSize
        } = this.getValue();
        const {
          url,
          height,
          width
        } = Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(v.sizes[size]) ? v.sizes[this.defaultSize] : v.sizes[size];
        d = {
          size,
          id: v.id,
          alt: v.alt,
          url,
          height,
          width,
          sizes: v.sizes
        };
      } else {
        let {
          sizes,
          alt,
          id
        } = this.getValue();
        let size = Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(sizes[v]) ? this.defaultSize : v;
        const {
          url,
          height,
          width
        } = sizes[size];
        d = {
          size: v,
          id,
          alt,
          url,
          height,
          width,
          sizes
        };
      }

      this.props.onSelect(d);
    });
  }

  render() {
    const {
      value
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["MediaUploadCheck"], null, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["MediaUpload"], {
      gallery: false,
      multiple: false,
      onSelect: v => {
        this.onSelect(v, 'image');
      },
      allowedTypes: ['image'],
      value: value,
      render: this.onRender
    })));
  }

}
Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["globalize"])('ImageControl', ImageControl);

/***/ }),

/***/ "./src/custom-control/index.js":
/*!*************************************!*\
  !*** ./src/custom-control/index.js ***!
  \*************************************/
/*! exports provided: ItemPerRowControl, HeadingTagControl, BackgroundPosition, FontSizeControl, ThicknessControl, BorderWidthControl, WidthControl, OpacityControl, SpacingControl, ColorControl, BackgroundOverlayControl, BgControl, ImageSizeControl, LinkControl, BorderStyleControl, RadiusControl, SwitchControl, ExcerptLengthControl, PanelColor, FixedBackgroundColor */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ItemPerRowControl", function() { return ItemPerRowControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "HeadingTagControl", function() { return HeadingTagControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BackgroundPosition", function() { return BackgroundPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FontSizeControl", function() { return FontSizeControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ThicknessControl", function() { return ThicknessControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BorderWidthControl", function() { return BorderWidthControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "WidthControl", function() { return WidthControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "OpacityControl", function() { return OpacityControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SpacingControl", function() { return SpacingControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ColorControl", function() { return ColorControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BackgroundOverlayControl", function() { return BackgroundOverlayControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BgControl", function() { return BgControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ImageSizeControl", function() { return ImageSizeControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LinkControl", function() { return LinkControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BorderStyleControl", function() { return BorderStyleControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "RadiusControl", function() { return RadiusControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "SwitchControl", function() { return SwitchControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "ExcerptLengthControl", function() { return ExcerptLengthControl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "PanelColor", function() { return PanelColor; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "FixedBackgroundColor", function() { return FixedBackgroundColor; });
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/extends */ "./node_modules/@babel/runtime/helpers/extends.js");
/* harmony import */ var _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js");
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/constants.js");




const ItemPerRowControl = (_ref) => {
  let {
    label,
    onChange
  } = _ref,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, ["label", "onChange"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["TextControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Number of Items per Row', 'rise-blocks'),
    type: "number",
    min: 1,
    max: 4,
    onChange: perRow => onChange(parseInt(perRow))
  }, rest));
};
const HeadingTagControl = (_ref2) => {
  let {
    label
  } = _ref2,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref2, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["SelectControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Tag', 'rise-blocks'),
    options: [{
      label: 'H1',
      value: 'h1'
    }, {
      label: 'H2',
      value: 'h2'
    }, {
      label: 'H3',
      value: 'h3'
    }, {
      label: 'H4',
      value: 'h4'
    }, {
      label: 'H5',
      value: 'h5'
    }, {
      label: 'H6',
      value: 'h6'
    }]
  }, rest));
};
const BackgroundPosition = (_ref3) => {
  let {
    label,
    onChange
  } = _ref3,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref3, ["label", "onChange"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["SelectControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label || Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Background Position', 'rise-blocks'),
    options: _constants__WEBPACK_IMPORTED_MODULE_3__["backgroundPosition"],
    onChange: backgroundPosition => onChange(backgroundPosition)
  }, rest));
};
const FontSizeControl = (_ref4) => {
  let {
    label,
    allowReset = true
  } = _ref4,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref4, ["label", "allowReset"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label === false ? false : label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Font Size', 'rise-blocks'),
    allowReset: allowReset,
    min: 10,
    max: 100,
    beforeIcon: "editor-textcolor"
  }, rest));
};
const ThicknessControl = props => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Thickness', 'rise-blocks'),
  allowReset: true,
  min: 1,
  max: 50
}, props));
const BorderWidthControl = props => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Border Width', 'rise-blocks'),
  allowReset: true,
  min: 0,
  max: 50
}, props));
const WidthControl = props => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
  label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Width', 'rise-blocks'),
  allowReset: true,
  min: 1,
  max: 120
}, props));
const OpacityControl = (_ref5) => {
  let {
    label
  } = _ref5,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref5, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Opacity', 'rise-blocks'),
    allowReset: true,
    step: 0.1,
    min: 0,
    max: 1
  }, rest));
};
const SpacingControl = (_ref6) => {
  let {
    label,
    beforeIcon
  } = _ref6,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref6, ["label", "beforeIcon"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Spacing', 'rise-blocks'),
    beforeIcon: beforeIcon ? beforeIcon : "arrow-down-alt",
    allowReset: true,
    min: 0,
    max: 100
  }, rest));
};
const ColorControl = (_ref7) => {
  let {
    label,
    hideIndicator
  } = _ref7,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref7, ["label", "hideIndicator"]);

  const color = React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["ColorPalette"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    className: "editor-color-palette-control__color-palette",
    colors: _constants__WEBPACK_IMPORTED_MODULE_3__["colors"]
  }, rest));
  let indicator = false;

  if (hideIndicator) {
    return color;
  } else {
    indicator = React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Color', 'rise-blocks'), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["ColorIndicator"], {
      colorValue: rest.value
    }));
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["BaseControl"], {
      label: indicator
    }, color);
  }
};
const BackgroundOverlayControl = (_ref8) => {
  let {
    label,
    onChange,
    value
  } = _ref8,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref8, ["label", "onChange", "value"]);

  const indicator = React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["Fragment"], null, label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Background Overlay', 'rise-blocks'), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["ColorIndicator"], {
    colorValue: value
  }));
  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["BaseControl"], {
    label: indicator
  }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["ColorPicker"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    color: value,
    onChangeComplete: ({
      rgb
    }) => onChange(`rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a} )`)
  }, rest)));
};
const BgControl = (_ref9) => {
  let {
    label
  } = _ref9,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref9, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["SelectControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Background Type', 'rise-blocks'),
    options: [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Image', 'rise-blocks'),
      value: 'image'
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Color', 'rise-blocks'),
      value: 'color'
    }]
  }, rest));
};
const ImageSizeControl = (_ref10) => {
  let {
    label
  } = _ref10,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref10, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["SelectControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Image Size', 'rise-blocks'),
    options: Rise_Blocks_VAR.image_size.filter(v => 'medium_large' != v).map(v => ({
      label: v,
      value: v
    }))
  }, rest));
};
const LinkControl = (_ref11) => {
  let {
    label
  } = _ref11,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref11, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["TextControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('URL', 'rise-blocks'),
    type: "url"
  }, rest));
};
const BorderStyleControl = (_ref12) => {
  let {
    label
  } = _ref12,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref12, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["SelectControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Border Style', 'rise-blocks'),
    options: [{
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('None', 'rise-blocks'),
      value: 'none'
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Solid', 'rise-blocks'),
      value: 'solid'
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Dashed', 'rise-blocks'),
      value: 'dashed'
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Double', 'rise-blocks'),
      value: 'double'
    }, {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Dotted', 'rise-blocks'),
      value: 'dotted'
    }]
  }, rest));
};
const RadiusControl = (_ref13) => {
  let {
    label
  } = _ref13,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref13, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Icon Radius', 'rise-blocks'),
    allowReset: true,
    min: 0,
    max: 50
  }, rest));
};
const SwitchControl = params => React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["ToggleControl"], params);
const ExcerptLengthControl = (_ref14) => {
  let {
    label
  } = _ref14,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref14, ["label"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["RangeControl"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Excerpt Length', 'rise-blocks'),
    allowReset: true,
    min: 1,
    max: 60,
    initialPosition: 20
  }, rest));
};
const PanelColor = (_ref15) => {
  let {
    children
  } = _ref15,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref15, ["children"]);

  return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_2__["PanelColorSettings"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    title: Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Color'),
    initialOpen: false,
    colors: _constants__WEBPACK_IMPORTED_MODULE_3__["colors"]
  }, rest), children);
};
const FixedBackgroundColor = (_ref16) => {
  let {
    label
  } = _ref16,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref16, ["label"]);

  return React.createElement(SwitchControl, _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
    label: label ? label : Object(_components_wp__WEBPACK_IMPORTED_MODULE_2__["__"])('Fixed Background', 'rise-blocks')
  }, rest));
};

/***/ }),

/***/ "./src/custom-control/repeater.js":
/*!****************************************!*\
  !*** ./src/custom-control/repeater.js ***!
  \****************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/constants.js");





class Repeater extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "add", e => {
      e.preventDefault();
      this.props.onChange(this.push(this.props.defaultValue || {}));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "remove", i => {
      return e => {
        e.preventDefault();

        if (confirm(Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Are you sure, you want to delete?'))) {
          const selectedPage = this.getSelectedPage();
          selectedPage.splice(i, 1);
          this.props.onChange(JSON.stringify(selectedPage));
        }
      };
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleChange", (index, key) => {
      return value => {
        const selectedPage = this.getSelectedPage();

        if (Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(selectedPage[index])) {
          selectedPage[index] = {};
        }

        selectedPage[index][key] = value;
        this.props.onChange(JSON.stringify(selectedPage), key, index);
      };
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "addButton", count => {
      const {
        limit
      } = this.props;

      if (Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(limit) || limit > count) {
        return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
          isPrimary: true,
          onClick: this.add,
          "data-count": count
        }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Add New', 'rise-blocks'));
      } else {}
    });
  }

  getSelectedPage() {
    let selectedPage = [];
    const {
      value
    } = this.props;

    if (!Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(value)) {
      selectedPage = typeof value === 'string' ? JSON.parse(value) : value;
    }

    return selectedPage;
  }

  push(data) {
    return JSON.stringify([...this.getSelectedPage(), data]);
  }

  render() {
    const {
      cb
    } = this.props;
    if (Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["isUndefined"])(cb)) return null;
    const selectedPage = this.getSelectedPage();
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-repeater-wrapper`
    }, selectedPage.map((p, i) => React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-item `,
      key: i
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-repeater-selects`
    }, cb(this, p, i)), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      className: "remove",
      onClick: this.remove(i)
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Dashicon"], {
      size: "15",
      icon: "trash"
    })))), this.addButton(selectedPage.length));
  }

}

/* harmony default export */ __webpack_exports__["default"] = (Repeater);

/***/ }),

/***/ "./src/custom-control/responsive-range-wrapper.js":
/*!********************************************************!*\
  !*** ./src/custom-control/responsive-range-wrapper.js ***!
  \********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return ResponsiveRangeWrapperControl; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _components_responsive_range_control__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components/responsive-range-control */ "./src/components/responsive-range-control.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../constants */ "./src/constants.js");




class ResponsiveRangeWrapperControl extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "state", {
      activeView: 'desktop'
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "changeActiveView", activeView => {
      this.setState({
        activeView
      });
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "onChange", (label, fontSize) => {
      this.props.onChange(fontSize);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "reset", () => {
      const {
        onChange,
        defaultValue
      } = this.props;
      defaultValue && onChange(defaultValue);
    });
  }

  render() {
    const {
      activeView
    } = this.state;
    const {
      value,
      defaultValue,
      step = '1',
      beforeIcon = "editor-textcolor"
    } = this.props;
    return React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Fragment"], null, React.createElement(_components_responsive_range_control__WEBPACK_IMPORTED_MODULE_2__["default"], {
      changeActiveView: this.changeActiveView,
      activeView: activeView,
      name: "fontSize",
      step: step,
      responsiveViews: _constants__WEBPACK_IMPORTED_MODULE_3__["defaultResponsiveViews"],
      value: value,
      onChange: this.onChange,
      label: this.props.label,
      beforeIcon: beforeIcon
    }), defaultValue && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_3__["prefix"]}-btn-reset-wrapper`
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      onClick: this.reset,
      className: `is-button is-default is-small`
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Reset', 'rise-blocks'))));
  }

}

/***/ }),

/***/ "./src/custom-control/typography.js":
/*!******************************************!*\
  !*** ./src/custom-control/typography.js ***!
  \******************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Typography; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../helpers */ "./src/helpers/index.js");
/* harmony import */ var _components_responsive_range_control__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/responsive-range-control */ "./src/components/responsive-range-control.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/constants.js");





class Typography extends _components_wp__WEBPACK_IMPORTED_MODULE_1__["Component"] {
  constructor(...args) {
    super(...args);

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "state", {
      showAdvanceOptions: false,
      activeView: 'desktop'
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "toggleAdvanceOptions", () => {
      this.setState(({
        showAdvanceOptions
      }) => ({
        showAdvanceOptions: !showAdvanceOptions
      }));
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "reset", () => {
      const {
        defaultValue,
        onChange
      } = this.props;
      defaultValue && onChange(defaultValue);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "handleChange", (k, v) => {
      const value = this.getValue();
      const data = Object(_helpers__WEBPACK_IMPORTED_MODULE_2__["merge"])({}, value, {
        [k]: v
      });
      this.props.onChange(data);
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "getValue", () => {
      const {
        value
      } = this.props;
      return value ? value : {};
    });

    _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(this, "changeActiveView", activeView => {
      this.setState({
        activeView
      });
    });
  }

  render() {
    let typography = this.getValue();
    const {
      label = Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Typography', 'rise-blocks')
    } = this.props;
    const {
      lineHeight,
      fontFamily,
      fontWeight,
      fontSize,
      textTransform
    } = typography;
    const {
      showAdvanceOptions,
      activeView
    } = this.state;
    return React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-typegraphy-options`
    }, React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-typography-options-actions`
    }, React.createElement("label", {
      className: "components-base-control__label"
    }, " ", label, " "), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      onClick: this.toggleAdvanceOptions,
      className: "is-button is-default is-small"
    }, " ", React.createElement("span", {
      className: "dashicons dashicons-admin-tools"
    })), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["Button"], {
      onClick: this.reset,
      className: `is-button is-default is-small ${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-btn-reset`
    }, Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Reset', 'rise-blocks'))), showAdvanceOptions && React.createElement("div", {
      className: `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-typography-advanced`
    }, React.createElement(_components_responsive_range_control__WEBPACK_IMPORTED_MODULE_3__["default"], {
      changeActiveView: this.changeActiveView,
      activeView: activeView,
      step: "0.1",
      name: "fontSize",
      responsiveViews: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultResponsiveViews"],
      value: fontSize,
      onChange: this.handleChange,
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Font Size', 'rise-blocks')
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Font Family', 'rise-blocks'),
      value: fontFamily,
      onChange: f => {
        this.handleChange('fontFamily', f);
      },
      options: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultFontFamily"]
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Text transform', 'rise-blocks'),
      value: textTransform,
      onChange: t => this.handleChange('textTransform', t),
      options: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultTextTransform"]
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_1__["SelectControl"], {
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Font Weight', 'rise-blocks'),
      value: fontWeight,
      onChange: fw => {
        this.handleChange('fontWeight', fw);
      },
      options: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultFontWeight"]
    }), React.createElement(_components_responsive_range_control__WEBPACK_IMPORTED_MODULE_3__["default"], {
      changeActiveView: this.changeActiveView,
      activeView: activeView,
      step: "0.1",
      name: "lineHeight",
      value: lineHeight,
      onChange: this.handleChange,
      responsiveViews: _constants__WEBPACK_IMPORTED_MODULE_4__["defaultResponsiveViews"],
      label: Object(_components_wp__WEBPACK_IMPORTED_MODULE_1__["__"])('Line Height', 'rise-blocks')
    })));
  }

}

/***/ }),

/***/ "./src/editor.scss":
/*!*************************!*\
  !*** ./src/editor.scss ***!
  \*************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "./src/helpers/index.js":
/*!******************************!*\
  !*** ./src/helpers/index.js ***!
  \******************************/
/*! exports provided: uniqueId, isUndefined, pickBy, has, union, findIndex, merge, classnames, insertableBlocks, register, globalize, wordTrim, capitalize, getPayload, getArray, getClass, getTypoStyle, getDimensionStyle, getResponsiveRangeVal, getInnerBlocks, setColWidth, addWrapperClass, getParentAttrs, setInitialAttrs, getInnerBlocksCount, innerBlocksLimit, shouldShowAddButton, shouldShowUpgrader, downloadAsJsonFile, getLocalImage, isPro, exportToJsonFile, getShapeDivider */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "uniqueId", function() { return uniqueId; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isUndefined", function() { return isUndefined; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pickBy", function() { return pickBy; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "has", function() { return has; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "union", function() { return union; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "findIndex", function() { return findIndex; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "merge", function() { return merge; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "classnames", function() { return classnames; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "insertableBlocks", function() { return insertableBlocks; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "register", function() { return register; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "globalize", function() { return globalize; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "wordTrim", function() { return wordTrim; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "capitalize", function() { return capitalize; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPayload", function() { return getPayload; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getArray", function() { return getArray; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getClass", function() { return getClass; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getTypoStyle", function() { return getTypoStyle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDimensionStyle", function() { return getDimensionStyle; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getResponsiveRangeVal", function() { return getResponsiveRangeVal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getInnerBlocks", function() { return getInnerBlocks; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setColWidth", function() { return setColWidth; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addWrapperClass", function() { return addWrapperClass; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getParentAttrs", function() { return getParentAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setInitialAttrs", function() { return setInitialAttrs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getInnerBlocksCount", function() { return getInnerBlocksCount; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "innerBlocksLimit", function() { return innerBlocksLimit; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shouldShowAddButton", function() { return shouldShowAddButton; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "shouldShowUpgrader", function() { return shouldShowUpgrader; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "downloadAsJsonFile", function() { return downloadAsJsonFile; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLocalImage", function() { return getLocalImage; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isPro", function() { return isPro; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "exportToJsonFile", function() { return exportToJsonFile; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getShapeDivider", function() { return getShapeDivider; });
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
/* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/objectWithoutProperties */ "./node_modules/@babel/runtime/helpers/objectWithoutProperties.js");
/* harmony import */ var _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react_uuid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-uuid */ "./node_modules/react-uuid/uuid.js");
/* harmony import */ var react_uuid__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_uuid__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _components_wp__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components/wp */ "./src/components/wp.js");
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../constants */ "./src/constants.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! memize */ "./node_modules/memize/index.js");
/* harmony import */ var memize__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(memize__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var lodash_has__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lodash/has */ "./node_modules/lodash/has.js");
/* harmony import */ var lodash_has__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash_has__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var lodash_isUndefined__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! lodash/isUndefined */ "./node_modules/lodash/isUndefined.js");
/* harmony import */ var lodash_isUndefined__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash_isUndefined__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var lodash_pickBy__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! lodash/pickBy */ "./node_modules/lodash/pickBy.js");
/* harmony import */ var lodash_pickBy__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash_pickBy__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var lodash_union__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! lodash/union */ "./node_modules/lodash/union.js");
/* harmony import */ var lodash_union__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(lodash_union__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var lodash_findIndex__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! lodash/findIndex */ "./node_modules/lodash/findIndex.js");
/* harmony import */ var lodash_findIndex__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(lodash_findIndex__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! lodash/merge */ "./node_modules/lodash/merge.js");
/* harmony import */ var lodash_merge__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(lodash_merge__WEBPACK_IMPORTED_MODULE_11__);
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_12__);



function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0___default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }



const uniqueId = react_uuid__WEBPACK_IMPORTED_MODULE_2___default.a;









const isUndefined = lodash_isUndefined__WEBPACK_IMPORTED_MODULE_7___default.a;
const pickBy = lodash_pickBy__WEBPACK_IMPORTED_MODULE_8___default.a;
const has = lodash_has__WEBPACK_IMPORTED_MODULE_6___default.a;
const union = lodash_union__WEBPACK_IMPORTED_MODULE_9___default.a;
const findIndex = lodash_findIndex__WEBPACK_IMPORTED_MODULE_10___default.a;
const merge = lodash_merge__WEBPACK_IMPORTED_MODULE_11___default.a;

const classnames = classnames__WEBPACK_IMPORTED_MODULE_12___default.a;
const insertableBlocks = [];
const register = (name, payload, prefix = 'rise-blocks') => {
  const block = `${prefix}/${name}`;

  if (!payload.supports || payload.supports && payload.supports.inserter === true) {
    insertableBlocks.push(block);
  }

  Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["registerBlockType"])(block, getPayload(payload));
};
const globalize = (name, component) => {
  if (isUndefined(wp.riseBlocks)) {
    wp.riseBlocks = {};
  }

  wp.riseBlocks[name] = component;
};
const wordTrim = (sentence, amount, tail = '...') => {
  const words = isUndefined(sentence) ? '' : sentence.split(' ');

  if (amount >= words.length) {
    return sentence;
  }

  const truncated = words.slice(0, amount);
  return `${truncated.join(' ')}${tail}`;
};
const capitalize = s => {
  if (typeof s !== 'string') return '';
  return s.charAt(0).toUpperCase() + s.slice(1);
};
const getPayload = (_ref) => {
  let {
    icon,
    category
  } = _ref,
      rest = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, ["icon", "category"]);

  return _objectSpread({}, rest, {
    icon: icon ? icon : 'universal-access-alt',
    category: category ? category : 'rise-blocks'
  });
};
const getArray = (count = 1, value = 0, isArray = false) => {
  if (isArray) {
    return value;
  } else {
    return new Array(parseInt(count > 0 ? count : 1)).fill(value);
  }
};
const getClass = cls => `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-${cls}`;
const getTypoStyle = typo => {
  if (!typo) return {};
  const {
    fontSize,
    fontFamily,
    fontWeight,
    lineHeight,
    textTransform
  } = typo;
  return {
    fontFamily,
    fontWeight,
    textTransform,
    lineHeight: lineHeight.values.desktop + lineHeight.activeUnit,
    fontSize: fontSize.values.desktop + fontSize.activeUnit
  };
};
const getDimensionStyle = (props, setting, device = 'desktop') => {
  if (props === 'margin') {
    props = ['marginTop', 'marginRight', 'marginBottom', 'marginLeft'];
  } else if (props === 'padding') {
    props = ['paddingTop', 'paddingRight', 'paddingBottom', 'paddingLeft'];
  } else if (props === 'border-redius') {
    props = ['border-top-left-radius', 'border-top-right-radius', 'border-bottom-left-radius', 'border-bottom-right-radius'];
  }

  if (!setting) return {};
  let style = {};
  const {
    values,
    activeUnit
  } = setting;
  props.map((v, k) => {
    style[v] = values[device][k] ? values[device][k] + activeUnit : values[device][k];
  });
  return style;
};
const getResponsiveRangeVal = (data, device = 'desktop') => {
  if (!Object.keys(data).length) return {};
  const {
    activeUnit,
    values
  } = data;
  return values[device] + activeUnit;
};
/* For handle gutter of child blocks */

const getInnerBlocks = clientsId => Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlocks(clientsId);
const setColWidth = (id, itemsPerRow, gutter, type = "parent", initGap = 0) => {
  const width = `calc( ${100 / itemsPerRow}% - ${gutter * (itemsPerRow - 1) / itemsPerRow}px)`;
  const margin = `${gutter / 2 + initGap}px 0`;

  const styleEle = $ele => {
    $ele.style.width = width;
    $ele.style.margin = margin;
  };

  if (type === 'child') {
    const $ele = document.getElementById(`block-${id}`);
    $ele && styleEle($ele);
    return;
  }

  ;
  const innerBlocksId = getInnerBlocks(id).map(innerBlock => innerBlock.clientId);
  innerBlocksId.forEach(id => {
    const $ele = document.getElementById(`block-${id}`);
    $ele && styleEle($ele);
  });
};
const addWrapperClass = (clientId, className = 'icon-blocks-wrapper') => {
  /* Add custom class into subblocks parent div for flex layout */
  const $ele = document.getElementById(`block-${clientId}`);
  const prefixClassName = `${_constants__WEBPACK_IMPORTED_MODULE_4__["prefix"]}-${className}`;

  if (!$ele.parentElement.classList.contains(prefixClassName)) {
    $ele.parentElement.classList.add(prefixClassName);
  }
};
const getParentAttrs = props => {
  const {
    clientId
  } = props;
  const parentId = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlockRootClientId(clientId);

  if (parentId) {
    const parentBlockDetail = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlock(parentId);
    const {
      attributes
    } = parentBlockDetail;
    return attributes;
  }

  return false;
};
const setInitialAttrs = (props, editorNSaveAttrs) => {
  const {
    setAttributes
  } = props;

  const defaultAttr = _objectSpread({}, editorNSaveAttrs, {
    isInit: true
  });

  setAttributes(defaultAttr);
};
const getInnerBlocksCount = clientId => {
  const blocks = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlocksByClientId(clientId)[0];
  return blocks ? blocks.innerBlocks.length : 0;
};
const innerBlocksLimit = _components_wp__WEBPACK_IMPORTED_MODULE_3__["hooks"].applyFilters('riseBlocksInnerBlockLimit', 4);
const shouldShowAddButton = clientId => clientId && getInnerBlocksCount(clientId) < innerBlocksLimit;
const shouldShowUpgrader = clientId => {
  const parentId = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlockRootClientId(clientId);
  const blocks = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlocksByClientId(parentId)[0].innerBlocks;
  const i = findIndex(blocks, {
    clientId
  });
  return i >= innerBlocksLimit;
};
const downloadAsJsonFile = (fileName, data) => {
  const json = JSON.stringify(data);
  const blob = new Blob([json], {
    type: 'application/json'
  });
  const href = URL.createObjectURL(blob);
  const link = document.createElement('a');
  link.href = href;
  link.download = fileName + ".json";
  document.body.appendChild(link);
  link.click();
  document.body.removeChild(link);
};
const getLocalImage = name => {
  return Rise_Blocks_VAR.plugin_path + 'dist/img/' + name;
};
const isPro = () => Rise_Blocks_VAR.is_pro == '1';
const exportToJsonFile = clientId => {
  const iterator = ({
    name,
    attributes,
    innerBlocks
  }) => {
    if (innerBlocks.length > 0) {
      return {
        name,
        attributes,
        inner: innerBlocks.map(child => iterator(child))
      };
    }

    return {
      name,
      attributes
    };
  };

  const blocks = Object(_components_wp__WEBPACK_IMPORTED_MODULE_3__["select"])('editor').getBlocksByClientId(clientId);
  const data = blocks.map(a => iterator(a));
  downloadAsJsonFile(blocks[0].name.replace("/", "-") + '-' + clientId, data);
};
const getShapeDivider = (shape, styles) => {
  let s = _objectSpread({
    width: '100%'
  }, styles);

  const shapes = {
    hills: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--hills",
      viewBox: "0 0 1920 105",
      xmlns: "http://www.w3.org/2000/svg",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["G"], {
      fillRule: "evenodd",
      transform: "matrix(1 0 0 -1 0 105)"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "m1920 14.8827052c-116.23325 0-224.05162 88.3906828-395.09265 88.3906828-160.92196 0-254.53172-83.4344997-444.90735-83.4344997-154.297581 0-240.095847 39.6344097-367.66819 39.6344097-154.121863 0-198.902329-36.1223133-349.458242-36.1223133-144.878137 0-241.175717 80.8685493-362.873568 80.8685493 0-34.0793243 0-68.1494291 0-102.219534h1920z"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "m1920 14.6612844c-116.11434 0-223.9659 88.8291396-395.06196 88.8291396-160.92415 0-254.54487-83.7874573-444.93804-83.7874573-154.317311 0-240.088941 39.8974838-367.565152 39.8974838-154.034172 0-198.792715-36.4840402-349.164477-36.4840402-144.965828 0-241.283139 81.1250467-363.270371 81.1250467 0-34.7474052 0-69.4948104 0-104.241457h1920z"
    }))),
    triangle: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--triangle",
      viewBox: "0 0 100 100",
      xmlns: "http://www.w3.org/2000/svg",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "m0 0 50 100 50-100z",
      fillRule: "evenodd",
      transform: "matrix(1 0 0 -1 0 100)"
    })),
    sloped: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--sloped",
      "aria-hidden": true,
      xmlns: "http://www.w3.org/2000/svg",
      viewBox: "0 0 100 100",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M0 100 C 20 0 50 0 100 100 Z"
    })),
    waves: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--waves",
      fill: "",
      xmlns: "http://www.w3.org/2000/svg",
      viewBox: "0 0 1000 300",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M 1000 299 l 2 -279 c -155 -36 -310 135 -415 164 c -102.64 28.35 -149 -32 -232 -31 c -80 1 -142 53 -229 80 c -65.54 20.34 -101 15 -126 11.61 v 54.39 z"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M 1000 286 l 2 -252 c -157 -43 -302 144 -405 178 c -101.11 33.38 -159 -47 -242 -46 c -80 1 -145.09 54.07 -229 87 c -65.21 25.59 -104.07 16.72 -126 10.61 v 22.39 z"
    }), React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M 1000 300 l 1 -230.29 c -217 -12.71 -300.47 129.15 -404 156.29 c -103 27 -174 -30 -257 -29 c -80 1 -130.09 37.07 -214 70 c -61.23 24 -108 15.61 -126 10.61 v 22.39 z"
    })),
    angled: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--angled",
      "aria-hidden": true,
      xmlns: "http://www.w3.org/2000/svg",
      viewBox: "0 0 100 100",
      preserveAspectRatio: "none"
    }, React.createElement("polygon", {
      points: "0,100 100,0 100,100"
    })),
    wavy: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--wavy",
      viewBox: "0 0 100 10",
      xmlns: "http://www.w3.org/2000/svg",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "m42.19.65c2.26-.25 5.15.04 7.55.53 2.36.49 7.09 2.35 10.05 3.57 7.58 3.22 13.37 4.45 19.26 4.97 2.36.21 4.87.35 10.34-.25s10.62-2.56 10.62-2.56v-6.91h-100.01v3.03s7.2 3.26 15.84 3.05c3.92-.07 9.28-.67 13.4-2.24 2.12-.81 5.22-1.82 7.97-2.42 2.72-.63 3.95-.67 4.98-.77z",
      fillRule: "evenodd",
      transform: "matrix(1 0 0 -1 0 10)"
    })),
    rounded: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--rounded",
      xmlns: "http://www.w3.org/2000/svg",
      x: "0px",
      y: "0px",
      viewBox: "0 0 240 24",
      enableBackground: "new 0 0 240 24",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M119.849,0C47.861,0,0,24,0,24h240C240,24,191.855,0.021,119.849,0z"
    })),
    pointed: React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["SVG"], {
      style: s,
      className: "divider--pointed",
      xmlns: "http://www.w3.org/2000/svg",
      viewBox: "0 0 1000 100",
      preserveAspectRatio: "none"
    }, React.createElement(_components_wp__WEBPACK_IMPORTED_MODULE_3__["Path"], {
      d: "M737.9,94.7L0,0v100h1000V0L737.9,94.7z"
    }))
  };
  return shapes[shape];
};

/***/ }),

/***/ "./src/helpers/svg.js":
/*!****************************!*\
  !*** ./src/helpers/svg.js ***!
  \****************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants */ "./src/constants.js");

const svg = {
  slider: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    fill: "#32373c",
    d: "M7.554 12.936h4.893v-5.871h-4.893v5.871zM8.888 8.399h2.224v3.202h-2.224v-3.202z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M13.913 8.868l1.132 1.132-1.132 1.132 0.944 0.944 2.076-2.076-2.076-2.076-0.943 0.943z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M5.144 7.924l-2.076 2.076 2.076 2.076 0.943-0.944-1.132-1.132 1.132-1.132-0.944-0.943z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M19.31 0h-18.619c-0.381 0-0.691 0.309-0.691 0.691v18.619c0 0.382 0.309 0.691 0.691 0.691h18.619c0.382 0 0.691-0.309 0.691-0.691v-18.619c0-0.381-0.309-0.691-0.69-0.691v0zM1.32 18.62v-17.301h17.3v17.3h-17.3z"
  })),
  callToAction: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    fill: "#32373c",
    d: "M19.304 16.848l-2.352-2.352 1.192-1.192c0.154-0.154 0.224-0.373 0.187-0.588s-0.177-0.398-0.374-0.491l-9.486-4.494c-0.256-0.122-0.561-0.068-0.761 0.132s-0.253 0.505-0.132 0.761l4.494 9.485c0.093 0.197 0.277 0.336 0.492 0.373s0.434-0.033 0.588-0.187l1.192-1.192 2.353 2.352c0.131 0.131 0.303 0.196 0.474 0.196s0.343-0.065 0.474-0.196l1.659-1.659c0.262-0.262 0.262-0.686 0-0.948v0zM17.17 18.033l-2.353-2.352c-0.131-0.131-0.303-0.196-0.474-0.196s-0.343 0.065-0.474 0.196l-0.993 0.993-3.283-6.929 6.929 3.282-0.993 0.994c-0.262 0.262-0.262 0.686 0 0.948l2.352 2.352-0.711 0.711z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M7.645 10.992h-5.804v-9.303h9.303v6.647c0 0.37 0.3 0.671 0.671 0.671s0.671-0.3 0.671-0.671v-7.317c0-0.37-0.3-0.671-0.671-0.671h-10.644c-0.37 0-0.671 0.3-0.671 0.671v10.644c0 0.371 0.3 0.671 0.671 0.671h6.474c0.37 0 0.671-0.3 0.671-0.671s-0.3-0.671-0.671-0.671v0z"
  })),
  section: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    fill: "#32373c",
    d: "M20 18.008h-20v-16.016h20v16.016zM1.172 16.836h17.656v-13.672h-17.656v13.672z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M7.617 4.604h4.766v1.172h-4.766v-1.172z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M8.998 14.385h-6.237v-6.238h6.238v6.238zM3.932 13.213h3.894v-3.894h-3.894v3.894z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M17.24 11.852h-6.237v-3.705h6.238v3.705zM12.174 10.68h3.894v-1.361h-3.894v1.361z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M11.588 13.024h5.066v1.172h-5.066v-1.172z"
  })),
  iconBox: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    d: "m19.3 0h-18.6c-0.4 0-0.7 0.3-0.7 0.7v18.6c0 0.4 0.3 0.7 0.7 0.7h18.6c0.4 0 0.7-0.3 0.7-0.7v-18.6c0-0.4-0.3-0.7-0.7-0.7zm-18 18.6v-17.3h17.3v17.3h-17.3z",
    fill: "#32373C"
  }), React.createElement("path", {
    d: "m9.1 14.8h2.9v-1.3h-4v1.3h1.1z",
    fill: "#32373C"
  }), React.createElement("circle", {
    cx: "10",
    cy: "8.3",
    r: "3.1",
    fill: "none",
    stroke: "#32373C"
  })),
  heading: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    fill: "#32373c",
    d: "M0 18h20v2h-20v-2z"
  }), React.createElement("path", {
    fill: "#32373c",
    d: "M11 0h-2l-7.25 16h2.25l2.21-5h7.59l2.2 5h2.25l-7.25-16zM7.090 9l2.91-6.59 2.91 6.59h-5.82z"
  })),
  profileCard: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    fill: "none",
    stroke: "#32373C",
    "stroke-width": "1.34",
    "stroke-miterlimit": "10",
    d: "M19 17.9H1c-0.2 0-0.3-0.1-0.3-0.3V6.1C0.7 6 0.8 5.8 1 5.8H19c0.2 0 0.3 0.1 0.3 0.3v11.5C19.3 17.8 19.2 17.9 19 17.9z"
  }), React.createElement("circle", {
    fill: "#FFFFFF",
    stroke: "#32373C",
    "stroke-width": "1.34",
    "stroke-miterlimit": "10",
    cx: "6.6",
    cy: "5.6",
    r: "3.6"
  })),
  blog: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("path", {
    d: "M0,0h24v24H0V0z",
    fill: "none"
  }), React.createElement("rect", {
    x: "11",
    y: "7",
    width: "6",
    height: "2"
  }), React.createElement("rect", {
    x: "11",
    y: "11",
    width: "6",
    height: "2"
  }), React.createElement("rect", {
    x: "11",
    y: "15",
    width: "6",
    height: "2"
  }), React.createElement("rect", {
    x: "7",
    y: "7",
    width: "2",
    height: "2"
  }), React.createElement("rect", {
    x: "7",
    y: "11",
    width: "2",
    height: "2"
  }), React.createElement("rect", {
    x: "7",
    y: "15",
    width: "2",
    height: "2"
  }), React.createElement("path", {
    d: "M20.1,3H3.9C3.4,3,3,3.4,3,3.9v16.2C3,20.5,3.4,21,3.9,21h16.2c0.4,0,0.9-0.5,0.9-0.9V3.9C21,3.4,20.5,3,20.1,3z M19,19H5V5h14V19z"
  })),
  counter: React.createElement("svg", {
    width: "24",
    height: "24",
    role: "img",
    "aria-hidden": "true",
    focusable: "false"
  }, React.createElement("rect", {
    x: "3.6",
    y: "17.3",
    fill: "#32373C",
    width: "13.2",
    height: "2.7"
  }), React.createElement("path", {
    fill: "#32373C",
    d: "M6.9 3.6v6c0 2-0.7 3.6-3.3 3.6 -2.5 0-3.1-1.7-3.1-3.6V3.7c0-2.3 1.1-3.6 3.2-3.6C5.8 0.2 6.9 1.5 6.9 3.6zM2.9 3.4V10c0 0.7 0.2 1.2 0.8 1.2 0.6 0 0.7-0.5 0.7-1.2V3.4c0-0.6-0.2-1.1-0.7-1.1C3.1 2.3 2.9 2.7 2.9 3.4z"
  }), React.createElement("path", {
    fill: "#32373C",
    d: "M14.8 3.6v6c0 2-0.7 3.6-3.3 3.6 -2.5 0-3.1-1.7-3.1-3.6V3.7c0-2.3 1.1-3.6 3.2-3.6C13.7 0.2 14.8 1.5 14.8 3.6zM10.9 3.4V10c0 0.7 0.2 1.2 0.8 1.2 0.6 0 0.7-0.5 0.7-1.2V3.4c0-0.6-0.2-1.1-0.7-1.1C11.1 2.3 10.9 2.7 10.9 3.4z"
  }), React.createElement("path", {
    fill: "#32373C",
    d: "M17 13.1V3C16.7 3 16.2 3 16 3V1.2c0.8-0.1 1.4-0.4 1.7-0.9h1.9v12.8H17z"
  })),
  button: React.createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    viewBox: "0 0 50 50",
    width: "50",
    height: "50"
  }, React.createElement("path", {
    d: "M 4 12 C 1.800781 12 0 13.800781 0 16 L 0 34 C 0 36.199219 1.800781 38 4 38 L 46 38 C 48.199219 38 50 36.199219 50 34 L 50 16 C 50 13.800781 48.199219 12 46 12 Z M 4 14 L 46 14 C 47.117188 14 48 14.882813 48 16 L 48 34 C 48 35.117188 47.117188 36 46 36 L 4 36 C 2.882813 36 2 35.117188 2 34 L 2 16 C 2 14.882813 2.882813 14 4 14 Z M 33.527344 22.308594 C 31.835938 22.308594 30.746094 23.445313 30.746094 25.277344 C 30.746094 27.113281 31.824219 28.25 33.527344 28.25 C 35.21875 28.25 36.296875 27.113281 36.296875 25.277344 C 36.296875 23.445313 35.21875 22.308594 33.527344 22.308594 Z M 6.914063 22.464844 L 6.914063 28.097656 L 9.617188 28.097656 C 10.824219 28.097656 11.589844 27.460938 11.589844 26.472656 C 11.589844 25.753906 11.015625 25.179688 10.28125 25.140625 L 10.28125 25.066406 C 10.878906 24.984375 11.328125 24.472656 11.328125 23.867188 C 11.328125 22.992188 10.667969 22.464844 9.542969 22.464844 Z M 13.015625 22.464844 L 13.015625 26.152344 C 13.015625 27.417969 13.980469 28.25 15.445313 28.25 C 16.910156 28.25 17.871094 27.417969 17.871094 26.152344 L 17.871094 22.464844 L 16.4375 22.464844 L 16.4375 26 C 16.4375 26.65625 16.082031 27.046875 15.445313 27.046875 C 14.808594 27.046875 14.449219 26.65625 14.449219 26 L 14.449219 22.464844 Z M 19.296875 22.464844 L 19.296875 23.613281 L 20.921875 23.613281 L 20.921875 28.097656 L 22.347656 28.097656 L 22.347656 23.613281 L 23.980469 23.613281 L 23.980469 22.464844 Z M 25.089844 22.464844 L 25.089844 23.613281 L 26.714844 23.613281 L 26.714844 28.097656 L 28.144531 28.097656 L 28.144531 23.613281 L 29.773438 23.613281 L 29.773438 22.464844 Z M 37.761719 22.464844 L 37.761719 28.097656 L 39.121094 28.097656 L 39.121094 24.894531 L 39.195313 24.894531 L 41.550781 28.097656 L 42.6875 28.097656 L 42.6875 22.464844 L 41.328125 22.464844 L 41.328125 25.636719 L 41.253906 25.636719 L 38.90625 22.464844 Z M 8.347656 23.472656 L 9.160156 23.472656 C 9.648438 23.472656 9.933594 23.714844 9.933594 24.117188 C 9.933594 24.515625 9.628906 24.761719 9.105469 24.761719 L 8.347656 24.761719 Z M 33.523438 23.496094 C 34.3125 23.496094 34.839844 24.191406 34.839844 25.277344 C 34.839844 26.367188 34.316406 27.0625 33.523438 27.0625 C 32.722656 27.0625 32.203125 26.367188 32.203125 25.277344 C 32.203125 24.191406 32.730469 23.496094 33.523438 23.496094 Z M 8.347656 25.628906 L 9.203125 25.628906 C 9.800781 25.628906 10.132813 25.886719 10.132813 26.347656 C 10.132813 26.824219 9.808594 27.089844 9.214844 27.089844 L 8.347656 27.089844 Z"
  })),
  iconBoxPro: {
    aligns: {
      left: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-bg{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-color{fill: #3761CF;}</style> </defs> <title>Asset 8</title> <g id="Layer_2" data-name="Layer 2"> <g id="Layer_1-2" data-name="Layer 1"> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-bg" width="300" height="300" rx="15.8"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-color" x="153.16" y="107.9" width="62" height="17"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-color" x="153.16" y="150.17" width="107" height="12"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-color" x="153.16" y="174.82" width="107" height="12"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-left-align-color" cx="86.5" cy="150" r="46.66"/> </g> </g></svg>`,
      center: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-bg{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-color{fill: #3761CF;}</style> </defs> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-bg" width="300" height="300" rx="15.8"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-color" x="119.09" y="171.83" width="62" height="17"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-color" x="85.16" y="208.09" width="129.84" height="12"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-color" x="85.16" y="230.74" width="129.84" height="12"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-center-align-color" cx="150.09" cy="103.92" r="46.66"/></svg>`,
      right: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-bg{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-center{fill: #3761CF;}</style> </defs> <title>Asset 9</title> <g id="Layer_2" data-name="Layer 2"> <g id="Layer_1-2" data-name="Layer 1"> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-bg" width="300" height="300" rx="15.8"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-center" x="84.84" y="114.39" width="62" height="17"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-center" x="39.84" y="156.65" width="107" height="12"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-center" x="39.84" y="181.31" width="107" height="12"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-right-align-center" cx="213.5" cy="150" r="46.66"/> </g> </g></svg>`
    },
    iconTypes: {
      initial: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-bg-color{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-fill-color{fill: #3761CF;}</style> </defs> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-bg-color" width="300" height="300" rx="15.8"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-fill-color" d="M129.1,174.41a1.19,1.19,0,0,0,1.2,1.28h14.52l0-11.9a1.69,1.69,0,0,1,1.7-2h6a1.87,1.87,0,0,1,2.11,2l0,11.86h14.21a1.49,1.49,0,0,0,1.52-1.6V152.11l-20-17.81L129.1,152.11Z"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-fill-color" d="M121.27,150.45s1.8,3.33,5.74,0l23.52-19.9,22.06,19.78c4.55,3.28,6.26,0,6.26,0l-28.32-25.66Z"/> <polygon className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-initial-fill-color" points="172.05 130.5 166.38 130.5 166.4 137.38 172.05 142.17 172.05 130.5"/></svg>`,
      stack: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-bg-color{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-icon-color{fill: #3761CF;}</style> </defs> <g id="Layer_2" data-name="Layer 2"> <g id="Layer_1-2" data-name="Layer 1"> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-bg-color" width="300" height="300" rx="15.8"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-icon-color" cx="150" cy="150" r="66.78"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-bg-color" d="M129,174.22a1.2,1.2,0,0,0,1.2,1.29l14.52,0,0-11.89s-.2-2,1.7-2h6a1.87,1.87,0,0,1,2.11,2l0,11.85H168.8a1.49,1.49,0,0,0,1.52-1.6V151.92l-20-17.81L129,151.92Z"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-bg-color" d="M121.21,150.27s1.8,3.32,5.74,0l23.52-19.9,22.06,19.77c4.55,3.29,6.26,0,6.26,0l-28.32-25.65Z"/> <polygon className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stack-bg-color" points="171.99 130.32 166.32 130.32 166.34 137.2 171.99 141.99 171.99 130.32"/> </g> </g></svg>`,
      frame: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-frame-bg-color{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stroke-color{fill: none; stroke: #3761CF; stroke-miterlimit: 10; stroke-width: 5px;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-icon-color{fill: #3761CF;}</style> </defs> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-frame-bg-color" width="300" height="300" rx="15.8"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-stroke-color" cx="150.06" cy="150.18" r="61.27"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-icon-color" d="M129.1,174.41a1.19,1.19,0,0,0,1.2,1.28h14.52l0-11.9a1.69,1.69,0,0,1,1.7-2h6a1.87,1.87,0,0,1,2.11,2l0,11.86h14.21a1.49,1.49,0,0,0,1.52-1.6V152.11l-20-17.81L129.1,152.11Z"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-icon-color" d="M121.27,150.45s1.8,3.33,5.74,0l23.52-19.9,22.06,19.78c4.55,3.28,6.26,0,6.26,0l-28.32-25.66Z"/> <polygon className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-icon-layout-icon-color" points="172.05 130.5 166.38 130.5 166.4 137.38 172.05 142.17 172.05 130.5"/></svg>`
    }
  },
  profileCardPro: {
    circle: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-bg{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-box-bg{fill: #ebf5f7;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-fill-color{fill: #3761CF;}</style> </defs> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-bg" width="300" height="300" rx="15.8"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-box-bg" x="43.96" y="99.95" width="212" height="155" rx="9.91"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-fill-color" x="78.09" y="155.83" width="62" height="17"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-fill-color" x="78.16" y="189.09" width="129.84" height="12"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-fill-color" x="78.16" y="211.74" width="129.84" height="12"/> <circle className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-circle-fill-color" cx="107.09" cy="101.92" r="30.88"/></svg>`,
    rectangle: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 315.98 300"> <defs> <style>.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-bg{fill: #fff;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-box-bg{fill: #ebf5f7;}.${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color{fill: #3761CF;}</style> </defs> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-bg" width="300" height="300" rx="15.8"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-box-bg" x="44" y="76.69" width="212" height="155" rx="9.91"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="69.18" y="140.64" width="85.8" height="12"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="69.13" y="103.19" width="40.97" height="17"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="69.55" y="186.19" width="19" height="19"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="93.98" y="186.03" width="19" height="19"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="118.98" y="186.03" width="19" height="19"/> <rect className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x="69.18" y="159.1" width="85.8" height="12"/> <line className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" x1="102.98" y1="146.03" x2="315.98" y2="154.03"/> <path className="${_constants__WEBPACK_IMPORTED_MODULE_0__["prefix"]}-profile-card-rectangle-fill-color" d="M232.44,129.22H181.52a2,2,0,0,0-2,2v43.1a2,2,0,0,0,2,2h50.92a2,2,0,0,0,2-2v-43.1A2,2,0,0,0,232.44,129.22Zm-1.21,3.22v25.48l-10.12-10.13a1.7,1.7,0,0,0-2.4,0l-14.32,14.32L195.25,153a1.7,1.7,0,0,0-2.4,0l-10.12,10.13V132.44Zm-48.5,40.68v-5.48l11.32-11.32,9.15,9.15a1.7,1.7,0,0,0,2.39,0l14.32-14.32,11.32,11.32v10.65Z"/></svg>`
  },
  socialIcons: React.createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    id: "Layer_1",
    height: "24px",
    viewBox: "0 0 128 128",
    width: "24px",
    "data-name": "Layer 1"
  }, React.createElement("g", null, React.createElement("path", {
    d: "m93.71 50.29h27.79a1.75 1.75 0 0 0 1.75-1.75v-11.56a6.1 6.1 0 0 0 -5.2-6.017 12.024 12.024 0 0 0 .817-1.921 11.83 11.83 0 1 0 -21.785 1.793c.023.044.051.084.075.128a6.1 6.1 0 0 0 -5.2 6.017v2.584l-4.095 2.285v-23.349a13.765 13.765 0 0 0 -13.747-13.75h-55.615a13.765 13.765 0 0 0 -13.75 13.75v91a13.765 13.765 0 0 0 13.75 13.75h55.615a13.765 13.765 0 0 0 13.75-13.75v-23.35l7.967 4.45a11.749 11.749 0 0 0 1.254 4.354c.024.046.053.088.077.133a6.1 6.1 0 0 0 -5.2 6.017v11.55a1.75 1.75 0 0 0 1.75 1.75h5.487.039s.026 0 .039 0h16.654.039s.025 0 .038 0h5.491a1.75 1.75 0 0 0 1.75-1.75v-11.554a6.093 6.093 0 0 0 -5.2-6.017 12 12 0 0 0 .819-1.926 11.822 11.822 0 1 0 -22.743-6.4l-8.263-4.611v-36.288l4.095-2.285v4.967a1.75 1.75 0 0 0 1.752 1.75zm26.04 50.81v9.8h-2.027v-3.507a1.75 1.75 0 0 0 -3.5 0v3.507h-13.232v-3.507a1.75 1.75 0 0 0 -3.5 0v3.507h-2.031v-9.8a2.6 2.6 0 0 1 2.6-2.59h1.829a11.786 11.786 0 0 0 15.42 0h1.851a2.593 2.593 0 0 1 2.59 2.59zm-15.95-18.965a8.335 8.335 0 1 1 -1.975 13.395l-.023-.021a8.317 8.317 0 0 1 2-13.374zm-85.3-73.885h55.615a10.264 10.264 0 0 1 10.2 9.189h-76a10.264 10.264 0 0 1 10.185-9.189zm55.615 111.5h-55.615a10.261 10.261 0 0 1 -10.25-10.25v-6.917h76.115v6.917a10.261 10.261 0 0 1 -10.25 10.25zm10.25-20.667h-76.115v-78.144h76.115v22.861l-12.386 6.915q-.283-.546-.589-1.076a1.747 1.747 0 0 0 -.219-.38 29.033 29.033 0 0 0 -16.823-13.03 1.734 1.734 0 0 0 -.234-.067 28.775 28.775 0 0 0 -15.626 0 1.815 1.815 0 0 0 -.207.059 29.034 29.034 0 0 0 -16.838 13.04 1.753 1.753 0 0 0 -.217.376 28.814 28.814 0 0 0 0 28.726 1.753 1.753 0 0 0 .217.376 29.035 29.035 0 0 0 16.857 13.042 1.743 1.743 0 0 0 .217.062 28.774 28.774 0 0 0 15.569 0 1.662 1.662 0 0 0 .222-.064 29.031 29.031 0 0 0 16.86-13.04 1.747 1.747 0 0 0 .219-.38q.306-.531.589-1.076l12.389 6.917zm-36.307-9.733v-9.9h9.142a27.968 27.968 0 0 1 -4.466 9.141 25.292 25.292 0 0 1 -4.676.759zm-8.176-.758a27.948 27.948 0 0 1 -4.466-9.141h9.142v9.9a25.265 25.265 0 0 1 -4.676-.759zm4.676-49.942v9.9h-9.142a27.939 27.939 0 0 1 4.466-9.141 25.265 25.265 0 0 1 4.676-.759zm8.176.758a27.978 27.978 0 0 1 4.466 9.141h-9.142v-9.9a25.292 25.292 0 0 1 4.676.759zm-4.676 36.543v-10.201h11.251a55.473 55.473 0 0 1 -1.219 10.2zm-13.532 0a55.568 55.568 0 0 1 -1.22-10.2h11.252v10.2zm10.032-23.9v10.2h-11.252a55.492 55.492 0 0 1 1.22-10.2zm3.5 10.2v-10.2h10.032a55.441 55.441 0 0 1 1.219 10.2zm12.783-13.7a38.788 38.788 0 0 0 -2.667-7.016 25.585 25.585 0 0 1 8.295 7.016zm-29.067 0h-5.628a25.606 25.606 0 0 1 8.3-7.016 38.788 38.788 0 0 0 -2.672 7.014zm-7.89 3.5h7.062a58.551 58.551 0 0 0 -1.141 10.2h-8.847a25.238 25.238 0 0 1 2.926-10.202zm5.921 13.7a58.529 58.529 0 0 0 1.141 10.2h-7.062a25.238 25.238 0 0 1 -2.926-10.2zm1.969 13.7a38.788 38.788 0 0 0 2.666 7.016 25.6 25.6 0 0 1 -8.294-7.016zm29.067 0h5.628a25.585 25.585 0 0 1 -8.295 7.016 38.743 38.743 0 0 0 2.667-7.016zm7.89-3.5h-7.062a58.519 58.519 0 0 0 1.141-10.2h8.847a25.223 25.223 0 0 1 -2.926 10.2zm-5.921-13.701a58.605 58.605 0 0 0 -1.14-10.2h7.061a25.223 25.223 0 0 1 2.926 10.2zm21.555 17.939-10.955-6.113a28.888 28.888 0 0 0 0-20.151l10.955-6.114zm19.435-62.169a8.331 8.331 0 0 1 9.627 13.371l-.025.025a8.331 8.331 0 1 1 -9.6-13.4zm-8.34 18.96a2.6 2.6 0 0 1 2.6-2.59h1.824a11.786 11.786 0 0 0 15.431 0h1.845a2.593 2.593 0 0 1 2.59 2.59v9.81h-2.027v-3.513a1.75 1.75 0 0 0 -3.5 0v3.513h-13.232v-3.513a1.75 1.75 0 0 0 -3.5 0v3.513h-2.031z",
    "data-original": "#000000",
    className: "active-path",
    "data-old_color": "#000000",
    fill: "#32373C"
  }), React.createElement("path", {
    d: "m46.308 104.413a6.75 6.75 0 1 0 6.75 6.75 6.757 6.757 0 0 0 -6.75-6.75zm0 10a3.25 3.25 0 1 1 3.25-3.25 3.254 3.254 0 0 1 -3.25 3.25z",
    "data-original": "#000000",
    className: "active-path",
    "data-old_color": "#000000",
    fill: "#32373C"
  })), " "),
  accordion: React.createElement("svg", {
    height: "24px",
    width: "24px",
    x: "0px",
    y: "0px",
    viewBox: "0 0 110 110",
    enableBackground: "new 0 0 110 110"
  }, React.createElement("g", null, React.createElement("path", {
    d: "M7,6v16v4v12v4v42v4v16h96V88v-4V42v-4V26v-4V6H7z M99,100H11V88h88V100z M99,84H11V42h88V84z M99,38H11V26h88V38z M11,22   V10h88v12H11z"
  }), React.createElement("polygon", {
    points: "13,20 21,16 13,12  "
  }), React.createElement("polygon", {
    points: "21,28 13,28 17,36  "
  }), React.createElement("polygon", {
    points: "13,90 13,98 21,94  "
  }))),
  news1: React.createElement("svg", {
    id: "Capa_1",
    enableBackground: "new 0 0 512 512",
    height: "24",
    viewBox: "0 0 512 512",
    width: "24",
    xmlns: "http://www.w3.org/2000/svg"
  }, React.createElement("g", null, React.createElement("path", {
    d: "m444.5 218.5c4.143 0 7.5-3.358 7.5-7.5v-90c0-4.142-3.357-7.5-7.5-7.5h-75c-4.143 0-7.5 3.358-7.5 7.5v90c0 4.142 3.357 7.5 7.5 7.5zm-67.5-90h60v75h-60z"
  }), React.createElement("path", {
    d: "m504.5 53.5h-497c-4.142 0-7.5 3.358-7.5 7.5v390c0 4.142 3.358 7.5 7.5 7.5h497c4.143 0 7.5-3.358 7.5-7.5v-390c0-4.142-3.357-7.5-7.5-7.5zm-7.5 390h-482v-375h482z"
  }), React.createElement("path", {
    d: "m37.5 428.5h437c4.143 0 7.5-3.358 7.5-7.5v-330c0-4.142-3.357-7.5-7.5-7.5h-437c-4.142 0-7.5 3.358-7.5 7.5v150c0 4.142 3.358 7.5 7.5 7.5s7.5-3.358 7.5-7.5v-142.5h422v315h-422v-142.5c0-4.142-3.358-7.5-7.5-7.5s-7.5 3.358-7.5 7.5v150c0 4.142 3.358 7.5 7.5 7.5z"
  }), React.createElement("path", {
    d: "m263.5 391v-270c0-4.142-3.357-7.5-7.5-7.5-4.142 0-7.5 3.358-7.5 7.5v270c0 4.142 3.358 7.5 7.5 7.5 4.143 0 7.5-3.358 7.5-7.5z"
  }), React.createElement("path", {
    d: "m278.5 271c0 4.142 3.357 7.5 7.5 7.5h158.5c4.143 0 7.5-3.358 7.5-7.5s-3.357-7.5-7.5-7.5h-158.5c-4.143 0-7.5 3.358-7.5 7.5z"
  }), React.createElement("path", {
    d: "m286 308.5h158.5c4.143 0 7.5-3.358 7.5-7.5s-3.357-7.5-7.5-7.5h-158.5c-4.143 0-7.5 3.358-7.5 7.5s3.357 7.5 7.5 7.5z"
  }), React.createElement("path", {
    d: "m286 338.5h158.5c4.143 0 7.5-3.358 7.5-7.5s-3.357-7.5-7.5-7.5h-158.5c-4.143 0-7.5 3.358-7.5 7.5s3.357 7.5 7.5 7.5z"
  }), React.createElement("path", {
    d: "m226 398.5c4.142 0 7.5-3.358 7.5-7.5v-270c0-4.142-3.358-7.5-7.5-7.5h-158.5c-4.142 0-7.5 3.358-7.5 7.5v270c0 4.142 3.358 7.5 7.5 7.5zm-151-270h143.5v255h-143.5z"
  }))),
  news2: React.createElement("svg", {
    enableBackground: "new 0 0 64 64",
    height: "24",
    viewBox: "0 0 64 64",
    width: "24",
    xmlns: "http://www.w3.org/2000/svg"
  }, React.createElement("path", {
    d: "m61 3.998h-58c-1.654 0-3 1.346-3 3v52.004c0 .553.447 1 1 1h62c.553 0 1-.447 1-1v-52.004c0-1.654-1.346-3-3-3zm-31.995 41.005c-.547.006-.984.448-.984.998 0 .546.442.985.985.996h-27.006v-1.994zm-5.999-16.275 4.786 6.785-5.304 7.49h-9.553zm17.006-7.013 15.072 21.288h-30.145zm-10.977 23.288h2.969c-.547.006-.984.448-.984.998 0 .546.442.985.985.996h-2.96c.542-.011.98-.45.98-.996 0-.55-.443-.992-.99-.998zm2.999 0h2.973c-.547.006-.984.448-.984.998 0 .546.442.985.985.996h-2.964c.542-.011.98-.45.98-.996 0-.55-.443-.992-.99-.998zm3.003 0h26.963v1.994h-26.953c.542-.011.98-.45.98-.996 0-.55-.443-.992-.99-.998zm22.498-2-16.696-23.581c-.151-.214-.374-.344-.611-.395-.005-.001-.009-.004-.014-.005-.067-.014-.135-.005-.203-.005-.067 0-.134-.008-.2.004-.006.001-.011.005-.017.006-.236.051-.458.181-.609.394l-10.167 14.36-5.188-7.354c-.144-.203-.352-.325-.574-.381-.018-.005-.034-.017-.053-.021-.064-.013-.131-.004-.197-.004-.067 0-.133-.009-.199.004-.017.004-.032.015-.049.019-.225.056-.434.179-.577.382l-11.694 16.577h-8.487v-33.005h60v33.005zm-55.535 5.994h60v9.005h-60zm1-42.999h1.018c-.551.002-.993.448-.993 1s.452 1 1.005 1c.552 0 1-.448 1-1 0-.551-.447-.998-.997-1h2.983c-.55.002-.992.448-.992 1s.452 1 1.005 1c.552 0 1-.448 1-1 0-.551-.447-.998-.998-1h2.988c-.55.002-.992.448-.992 1s.452 1 1.005 1c.552 0 1-.448 1-1 0-.551-.447-.998-.997-1h50.965c.552 0 1 .449 1 1v1h-60v-1c0-.551.448-1 1-1z"
  }), React.createElement("path", {
    d: "m48 50.997h-32c-.553 0-1 .447-1 1s.447 1 1 1h32c.553 0 1-.447 1-1s-.447-1-1-1z"
  }), React.createElement("path", {
    d: "m40.993 54h-17.986c-.553 0-1 .447-1 1s.447 1 1 1h17.986c.553 0 1-.447 1-1s-.447-1-1-1z"
  }), React.createElement("path", {
    d: "m6.706 23.294c-.391-.391-1.023-.391-1.414 0l-1.997 1.998c-.001 0-.002 0-.002.001-.195.195-.293.451-.293.707s.098.512.293.707l1.999 2c.195.195.451.293.707.293s.512-.098.707-.292c.391-.391.391-1.024 0-1.415l-1.292-1.293 1.292-1.292c.391-.391.391-1.023 0-1.414z"
  }), React.createElement("path", {
    d: "m60.708 25.292-1.999-1.999c-.391-.391-1.023-.391-1.414 0s-.391 1.023 0 1.414l1.292 1.293-1.292 1.293c-.391.391-.391 1.024 0 1.415.195.194.451.292.707.292s.512-.098.707-.293l1.999-2c.195-.195.293-.451.293-.707s-.098-.512-.293-.708z"
  }), React.createElement("path", {
    d: "m17.002 13.999c-2.206 0-4 1.794-4 4s1.794 4 4 4 4-1.794 4-4-1.794-4-4-4zm0 6c-1.103 0-2-.897-2-2s.897-2 2-2 2 .897 2 2-.898 2-2 2z"
  }))
};
/* harmony default export */ __webpack_exports__["default"] = (svg);

/***/ }),

/***/ "./src/style.scss":
/*!************************!*\
  !*** ./src/style.scss ***!
  \************************/
/*! no static exports found */
/***/ (function(module, exports) {

// removed by extract-text-webpack-plugin

/***/ }),

/***/ "@wordpress/components":
/*!*********************************************!*\
  !*** external {"this":["wp","components"]} ***!
  \*********************************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["wp"]["components"]; }());

/***/ }),

/***/ "@wordpress/element":
/*!******************************************!*\
  !*** external {"this":["wp","element"]} ***!
  \******************************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["wp"]["element"]; }());

/***/ }),

/***/ "@wordpress/i18n":
/*!***************************************!*\
  !*** external {"this":["wp","i18n"]} ***!
  \***************************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["wp"]["i18n"]; }());

/***/ }),

/***/ "lodash":
/*!**********************************!*\
  !*** external {"this":"lodash"} ***!
  \**********************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["lodash"]; }());

/***/ }),

/***/ "react":
/*!*********************************!*\
  !*** external {"this":"React"} ***!
  \*********************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["React"]; }());

/***/ }),

/***/ "react-dom":
/*!************************************!*\
  !*** external {"this":"ReactDOM"} ***!
  \************************************/
/*! no static exports found */
/***/ (function(module, exports) {

(function() { module.exports = this["ReactDOM"]; }());

/***/ })

/******/ });
//# sourceMappingURL=blocks.js.map