/******/ (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, { /******/ configurable: false, /******/ enumerable: true, /******/ get: getter /******/ }); /******/ } /******/ }; /******/ /******/ // 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 = 0); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /*!***********************!*\ !*** ./src/blocks.js ***! \***********************/ /*! no exports provided */ /*! all exports used */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__essgrid___ = __webpack_require__(/*! ./essgrid/ */ 1);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__essgrid____default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__essgrid___);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__wpgallery___ = __webpack_require__(/*! ./wpgallery/ */ 2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__wpgallery____default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__wpgallery___);\n/**\n * Gutenberg Blocks\n *\n * All blocks related JavaScript files should be imported here.\n * You can create a new block folder in this dir and include code\n * for that block here as well.\n *\n * All blocks should be included here since this is the file that\n * Webpack is compiling as the input file.\n */\n\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9ibG9ja3MuanM/N2I1YiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEd1dGVuYmVyZyBCbG9ja3NcbiAqXG4gKiBBbGwgYmxvY2tzIHJlbGF0ZWQgSmF2YVNjcmlwdCBmaWxlcyBzaG91bGQgYmUgaW1wb3J0ZWQgaGVyZS5cbiAqIFlvdSBjYW4gY3JlYXRlIGEgbmV3IGJsb2NrIGZvbGRlciBpbiB0aGlzIGRpciBhbmQgaW5jbHVkZSBjb2RlXG4gKiBmb3IgdGhhdCBibG9jayBoZXJlIGFzIHdlbGwuXG4gKlxuICogQWxsIGJsb2NrcyBzaG91bGQgYmUgaW5jbHVkZWQgaGVyZSBzaW5jZSB0aGlzIGlzIHRoZSBmaWxlIHRoYXRcbiAqIFdlYnBhY2sgaXMgY29tcGlsaW5nIGFzIHRoZSBpbnB1dCBmaWxlLlxuICovXG5cbmltcG9ydCAnLi9lc3NncmlkLyc7XG5pbXBvcnQgJy4vd3BnYWxsZXJ5Lyc7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvYmxvY2tzLmpzXG4vLyBtb2R1bGUgaWQgPSAwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///0\n"); /***/ }), /* 1 */ /*!******************************!*\ !*** ./src/essgrid/index.js ***! \******************************/ /*! exports provided: EssGrid, default */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; eval("/* unused harmony export EssGrid */\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__editor_scss__ = __webpack_require__(/*! ./editor.scss */ 3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__editor_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__editor_scss__);\nvar _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; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _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; }\n\nfunction _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; }\n\n/**\n * Block dependencies\n */\n\n\n/**\n * Internal block libraries\n */\nvar __ = wp.i18n.__;\nvar registerBlockType = wp.blocks.registerBlockType;\nvar _wp$components = wp.components,\n TextControl = _wp$components.TextControl,\n Button = _wp$components.Button;\nvar Component = wp.element.Component;\n\n/**\n * essgrid Editor Element\n */\n\nvar EssGrid = function (_Component) {\n _inherits(EssGrid, _Component);\n\n function EssGrid() {\n _classCallCheck(this, EssGrid);\n\n var _this = _possibleConstructorReturn(this, (EssGrid.__proto__ || Object.getPrototypeOf(EssGrid)).apply(this, arguments));\n\n var _this$props$attribute = _this.props.attributes,\n text = _this$props$attribute.text,\n gridTitle = _this$props$attribute.gridTitle;\n\n _this.state = {\n text: text,\n gridTitle: gridTitle\n };\n window.essgrid_react = {};\n return _this;\n }\n\n _createClass(EssGrid, [{\n key: 'render',\n value: function render() {\n var _this2 = this;\n\n var _props = this.props,\n _props$attributes = _props.attributes,\n text = _props$attributes.text,\n gridTitle = _props$attributes.gridTitle,\n setAttributes = _props.setAttributes;\n\n\n window.essgrid_react = this;\n\n var openDialog = function openDialog() {\n var data = false;\n essgrid_react = _this2;\n ESG.SC.openBlockSettings({ editor: 'gutenberg' });\n };\n\n var openEdit = function openEdit() {\n window.essgrid_react = _this2;\n\n var shortcode = _this2.state.text;\n var attributes = {};\n\n shortcode.match(/[\\w-]+=\".+?\"/g).forEach(function (attribute) {\n attribute = attribute.match(/([\\w-]+)=\"(.+?)\"/);\n attributes[attribute[1]] = attribute[2];\n });\n\n if (typeof attributes.alias === \"undefined\") return false;\n\n self.location.href = \"admin.php?page=essential-grid&view=grid-create&alias=\" + attributes.alias;\n };\n\n return wp.element.createElement(\n 'div',\n { className: 'essgrid_block' },\n wp.element.createElement(\n 'span',\n null,\n this.state.gridTitle,\n '\\xA0'\n ),\n wp.element.createElement(TextControl, {\n className: 'grid_slug',\n value: this.state.text,\n onChange: function onChange(text) {\n return setAttributes({ text: text });\n }\n }),\n wp.element.createElement(Button, {\n isDefault: true,\n onClick: openEdit,\n className: 'grid_edit_button editor_icon dashicons dashicons-edit'\n }),\n wp.element.createElement(\n Button,\n {\n isDefault: true,\n onClick: openDialog,\n className: 'grid_edit_button'\n },\n __('Select Grid', 'essgrid')\n )\n );\n }\n }]);\n\n return EssGrid;\n}(Component);\n\n/**\n * Register block\n */\n/* unused harmony default export */ var _unused_webpack_default_export = (registerBlockType('themepunch/essgrid', {\n title: __('Essential Grid', 'essgrid'),\n description: __('Add your Essential Grid.', 'essgrid'),\n category: 'common',\n icon: {\n src: 'screenoptions',\n background: '#c90000',\n color: 'white'\n },\n keywords: [__('image', 'essgrid'), __('gallery', 'essgrid'), __('grid', 'essgrid')],\n attributes: {\n text: {\n selector: '.essgrid',\n type: 'string',\n source: 'text'\n },\n gridTitle: {\n selector: '.essgrid',\n type: 'string',\n source: 'attribute',\n attribute: 'data-gridtitle'\n },\n alias: {\n type: 'string'\n }\n },\n edit: function edit(props) {\n var setAttributes = props.setAttributes;\n\n return wp.element.createElement(\n 'div',\n null,\n wp.element.createElement(EssGrid, Object.assign({ setAttributes: setAttributes }, props))\n );\n },\n save: function save(props) {\n var _props$attributes2 = props.attributes,\n text = _props$attributes2.text,\n gridTitle = _props$attributes2.gridTitle;\n\n return wp.element.createElement(\n 'div',\n { className: 'essgrid', 'data-gridtitle': gridTitle },\n text\n );\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9lc3NncmlkL2luZGV4LmpzPzYwYmQiXSwic291cmNlc0NvbnRlbnQiOlsidmFyIF9jcmVhdGVDbGFzcyA9IGZ1bmN0aW9uICgpIHsgZnVuY3Rpb24gZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7IGZvciAodmFyIGkgPSAwOyBpIDwgcHJvcHMubGVuZ3RoOyBpKyspIHsgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOyBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSA9IHRydWU7IGlmIChcInZhbHVlXCIgaW4gZGVzY3JpcHRvcikgZGVzY3JpcHRvci53cml0YWJsZSA9IHRydWU7IE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsgfSB9IHJldHVybiBmdW5jdGlvbiAoQ29uc3RydWN0b3IsIHByb3RvUHJvcHMsIHN0YXRpY1Byb3BzKSB7IGlmIChwcm90b1Byb3BzKSBkZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7IGlmIChzdGF0aWNQcm9wcykgZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOyByZXR1cm4gQ29uc3RydWN0b3I7IH07IH0oKTtcblxuZnVuY3Rpb24gX2NsYXNzQ2FsbENoZWNrKGluc3RhbmNlLCBDb25zdHJ1Y3RvcikgeyBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgeyB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uXCIpOyB9IH1cblxuZnVuY3Rpb24gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4oc2VsZiwgY2FsbCkgeyBpZiAoIXNlbGYpIHsgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKFwidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkXCIpOyB9IHJldHVybiBjYWxsICYmICh0eXBlb2YgY2FsbCA9PT0gXCJvYmplY3RcIiB8fCB0eXBlb2YgY2FsbCA9PT0gXCJmdW5jdGlvblwiKSA/IGNhbGwgOiBzZWxmOyB9XG5cbmZ1bmN0aW9uIF9pbmhlcml0cyhzdWJDbGFzcywgc3VwZXJDbGFzcykgeyBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09IFwiZnVuY3Rpb25cIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7IHRocm93IG5ldyBUeXBlRXJyb3IoXCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiwgbm90IFwiICsgdHlwZW9mIHN1cGVyQ2xhc3MpOyB9IHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgeyBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIGVudW1lcmFibGU6IGZhbHNlLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0gfSk7IGlmIChzdXBlckNsYXNzKSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3Quc2V0UHJvdG90eXBlT2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIDogc3ViQ2xhc3MuX19wcm90b19fID0gc3VwZXJDbGFzczsgfVxuXG4vKipcbiAqIEJsb2NrIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgJy4vZWRpdG9yLnNjc3MnO1xuXG4vKipcbiAqIEludGVybmFsIGJsb2NrIGxpYnJhcmllc1xuICovXG52YXIgX18gPSB3cC5pMThuLl9fO1xudmFyIHJlZ2lzdGVyQmxvY2tUeXBlID0gd3AuYmxvY2tzLnJlZ2lzdGVyQmxvY2tUeXBlO1xudmFyIF93cCRjb21wb25lbnRzID0gd3AuY29tcG9uZW50cyxcbiAgICBUZXh0Q29udHJvbCA9IF93cCRjb21wb25lbnRzLlRleHRDb250cm9sLFxuICAgIEJ1dHRvbiA9IF93cCRjb21wb25lbnRzLkJ1dHRvbjtcbnZhciBDb21wb25lbnQgPSB3cC5lbGVtZW50LkNvbXBvbmVudDtcblxuLyoqXG4gKiBlc3NncmlkIEVkaXRvciBFbGVtZW50XG4gKi9cblxuZXhwb3J0IHZhciBFc3NHcmlkID0gZnVuY3Rpb24gKF9Db21wb25lbnQpIHtcbiAgX2luaGVyaXRzKEVzc0dyaWQsIF9Db21wb25lbnQpO1xuXG4gIGZ1bmN0aW9uIEVzc0dyaWQoKSB7XG4gICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEVzc0dyaWQpO1xuXG4gICAgdmFyIF90aGlzID0gX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4odGhpcywgKEVzc0dyaWQuX19wcm90b19fIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZihFc3NHcmlkKSkuYXBwbHkodGhpcywgYXJndW1lbnRzKSk7XG5cbiAgICB2YXIgX3RoaXMkcHJvcHMkYXR0cmlidXRlID0gX3RoaXMucHJvcHMuYXR0cmlidXRlcyxcbiAgICAgICAgdGV4dCA9IF90aGlzJHByb3BzJGF0dHJpYnV0ZS50ZXh0LFxuICAgICAgICBncmlkVGl0bGUgPSBfdGhpcyRwcm9wcyRhdHRyaWJ1dGUuZ3JpZFRpdGxlO1xuXG4gICAgX3RoaXMuc3RhdGUgPSB7XG4gICAgICB0ZXh0OiB0ZXh0LFxuICAgICAgZ3JpZFRpdGxlOiBncmlkVGl0bGVcbiAgICB9O1xuICAgIHdpbmRvdy5lc3NncmlkX3JlYWN0ID0ge307XG4gICAgcmV0dXJuIF90aGlzO1xuICB9XG5cbiAgX2NyZWF0ZUNsYXNzKEVzc0dyaWQsIFt7XG4gICAga2V5OiAncmVuZGVyJyxcbiAgICB2YWx1ZTogZnVuY3Rpb24gcmVuZGVyKCkge1xuICAgICAgdmFyIF90aGlzMiA9IHRoaXM7XG5cbiAgICAgIHZhciBfcHJvcHMgPSB0aGlzLnByb3BzLFxuICAgICAgICAgIF9wcm9wcyRhdHRyaWJ1dGVzID0gX3Byb3BzLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgdGV4dCA9IF9wcm9wcyRhdHRyaWJ1dGVzLnRleHQsXG4gICAgICAgICAgZ3JpZFRpdGxlID0gX3Byb3BzJGF0dHJpYnV0ZXMuZ3JpZFRpdGxlLFxuICAgICAgICAgIHNldEF0dHJpYnV0ZXMgPSBfcHJvcHMuc2V0QXR0cmlidXRlcztcblxuXG4gICAgICB3aW5kb3cuZXNzZ3JpZF9yZWFjdCA9IHRoaXM7XG5cbiAgICAgIHZhciBvcGVuRGlhbG9nID0gZnVuY3Rpb24gb3BlbkRpYWxvZygpIHtcbiAgICAgICAgdmFyIGRhdGEgPSBmYWxzZTtcbiAgICAgICAgZXNzZ3JpZF9yZWFjdCA9IF90aGlzMjtcbiAgICAgICAgRVNHLlNDLm9wZW5CbG9ja1NldHRpbmdzKHsgZWRpdG9yOiAnZ3V0ZW5iZXJnJyB9KTtcbiAgICAgIH07XG5cbiAgICAgIHZhciBvcGVuRWRpdCA9IGZ1bmN0aW9uIG9wZW5FZGl0KCkge1xuICAgICAgICB3aW5kb3cuZXNzZ3JpZF9yZWFjdCA9IF90aGlzMjtcblxuICAgICAgICB2YXIgc2hvcnRjb2RlID0gX3RoaXMyLnN0YXRlLnRleHQ7XG4gICAgICAgIHZhciBhdHRyaWJ1dGVzID0ge307XG5cbiAgICAgICAgc2hvcnRjb2RlLm1hdGNoKC9bXFx3LV0rPVwiLis/XCIvZykuZm9yRWFjaChmdW5jdGlvbiAoYXR0cmlidXRlKSB7XG4gICAgICAgICAgYXR0cmlidXRlID0gYXR0cmlidXRlLm1hdGNoKC8oW1xcdy1dKyk9XCIoLis/KVwiLyk7XG4gICAgICAgICAgYXR0cmlidXRlc1thdHRyaWJ1dGVbMV1dID0gYXR0cmlidXRlWzJdO1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodHlwZW9mIGF0dHJpYnV0ZXMuYWxpYXMgPT09IFwidW5kZWZpbmVkXCIpIHJldHVybiBmYWxzZTtcblxuICAgICAgICBzZWxmLmxvY2F0aW9uLmhyZWYgPSBcImFkbWluLnBocD9wYWdlPWVzc2VudGlhbC1ncmlkJnZpZXc9Z3JpZC1jcmVhdGUmYWxpYXM9XCIgKyBhdHRyaWJ1dGVzLmFsaWFzO1xuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgJ2RpdicsXG4gICAgICAgIHsgY2xhc3NOYW1lOiAnZXNzZ3JpZF9ibG9jaycgfSxcbiAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICdzcGFuJyxcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIHRoaXMuc3RhdGUuZ3JpZFRpdGxlLFxuICAgICAgICAgICdcXHhBMCdcbiAgICAgICAgKSxcbiAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFRleHRDb250cm9sLCB7XG4gICAgICAgICAgY2xhc3NOYW1lOiAnZ3JpZF9zbHVnJyxcbiAgICAgICAgICB2YWx1ZTogdGhpcy5zdGF0ZS50ZXh0LFxuICAgICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZSh0ZXh0KSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0QXR0cmlidXRlcyh7IHRleHQ6IHRleHQgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KEJ1dHRvbiwge1xuICAgICAgICAgIGlzRGVmYXVsdDogdHJ1ZSxcbiAgICAgICAgICBvbkNsaWNrOiBvcGVuRWRpdCxcbiAgICAgICAgICBjbGFzc05hbWU6ICdncmlkX2VkaXRfYnV0dG9uIGVkaXRvcl9pY29uIGRhc2hpY29ucyBkYXNoaWNvbnMtZWRpdCdcbiAgICAgICAgfSksXG4gICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICBCdXR0b24sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaXNEZWZhdWx0OiB0cnVlLFxuICAgICAgICAgICAgb25DbGljazogb3BlbkRpYWxvZyxcbiAgICAgICAgICAgIGNsYXNzTmFtZTogJ2dyaWRfZWRpdF9idXR0b24nXG4gICAgICAgICAgfSxcbiAgICAgICAgICBfXygnU2VsZWN0IEdyaWQnLCAnZXNzZ3JpZCcpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuICB9XSk7XG5cbiAgcmV0dXJuIEVzc0dyaWQ7XG59KENvbXBvbmVudCk7XG5cbi8qKlxuICogUmVnaXN0ZXIgYmxvY2tcbiAqL1xuZXhwb3J0IGRlZmF1bHQgcmVnaXN0ZXJCbG9ja1R5cGUoJ3RoZW1lcHVuY2gvZXNzZ3JpZCcsIHtcbiAgdGl0bGU6IF9fKCdFc3NlbnRpYWwgR3JpZCcsICdlc3NncmlkJyksXG4gIGRlc2NyaXB0aW9uOiBfXygnQWRkIHlvdXIgRXNzZW50aWFsIEdyaWQuJywgJ2Vzc2dyaWQnKSxcbiAgY2F0ZWdvcnk6ICdjb21tb24nLFxuICBpY29uOiB7XG4gICAgc3JjOiAnc2NyZWVub3B0aW9ucycsXG4gICAgYmFja2dyb3VuZDogJyNjOTAwMDAnLFxuICAgIGNvbG9yOiAnd2hpdGUnXG4gIH0sXG4gIGtleXdvcmRzOiBbX18oJ2ltYWdlJywgJ2Vzc2dyaWQnKSwgX18oJ2dhbGxlcnknLCAnZXNzZ3JpZCcpLCBfXygnZ3JpZCcsICdlc3NncmlkJyldLFxuICBhdHRyaWJ1dGVzOiB7XG4gICAgdGV4dDoge1xuICAgICAgc2VsZWN0b3I6ICcuZXNzZ3JpZCcsXG4gICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgIHNvdXJjZTogJ3RleHQnXG4gICAgfSxcbiAgICBncmlkVGl0bGU6IHtcbiAgICAgIHNlbGVjdG9yOiAnLmVzc2dyaWQnLFxuICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICBzb3VyY2U6ICdhdHRyaWJ1dGUnLFxuICAgICAgYXR0cmlidXRlOiAnZGF0YS1ncmlkdGl0bGUnXG4gICAgfSxcbiAgICBhbGlhczoge1xuICAgICAgdHlwZTogJ3N0cmluZydcbiAgICB9XG4gIH0sXG4gIGVkaXQ6IGZ1bmN0aW9uIGVkaXQocHJvcHMpIHtcbiAgICB2YXIgc2V0QXR0cmlidXRlcyA9IHByb3BzLnNldEF0dHJpYnV0ZXM7XG5cbiAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgJ2RpdicsXG4gICAgICBudWxsLFxuICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KEVzc0dyaWQsIE9iamVjdC5hc3NpZ24oeyBzZXRBdHRyaWJ1dGVzOiBzZXRBdHRyaWJ1dGVzIH0sIHByb3BzKSlcbiAgICApO1xuICB9LFxuICBzYXZlOiBmdW5jdGlvbiBzYXZlKHByb3BzKSB7XG4gICAgdmFyIF9wcm9wcyRhdHRyaWJ1dGVzMiA9IHByb3BzLmF0dHJpYnV0ZXMsXG4gICAgICAgIHRleHQgPSBfcHJvcHMkYXR0cmlidXRlczIudGV4dCxcbiAgICAgICAgZ3JpZFRpdGxlID0gX3Byb3BzJGF0dHJpYnV0ZXMyLmdyaWRUaXRsZTtcblxuICAgIHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAnZGl2JyxcbiAgICAgIHsgY2xhc3NOYW1lOiAnZXNzZ3JpZCcsICdkYXRhLWdyaWR0aXRsZSc6IGdyaWRUaXRsZSB9LFxuICAgICAgdGV4dFxuICAgICk7XG4gIH1cbn0pO1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2Vzc2dyaWQvaW5kZXguanNcbi8vIG1vZHVsZSBpZCA9IDFcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n"); /***/ }), /* 2 */ /*!********************************!*\ !*** ./src/wpgallery/index.js ***! \********************************/ /*! dynamic exports provided */ /***/ (function(module, exports) { eval("// import assign from 'lodash.assign';\n\nvar createHigherOrderComponent = wp.compose.createHigherOrderComponent;\nvar Fragment = wp.element.Fragment;\nvar _wp$components = wp.components,\n PanelBody = _wp$components.PanelBody,\n SelectControl = _wp$components.SelectControl,\n ToggleControl = _wp$components.ToggleControl,\n TextControl = _wp$components.TextControl;\nvar addFilter = wp.hooks.addFilter;\nvar __ = wp.i18n.__;\nvar _wp$blockEditor = wp.blockEditor,\n InspectorControls = _wp$blockEditor.InspectorControls,\n DimensionControl = _wp$blockEditor.DimensionControl;\n// Enable slider control on the following blocks\n\nvar EssGridGalleryAddOnBlocks = ['core/gallery'];\n\n/**\n * Add slider control attribute to block.\n *\n * @param {object} settings Current block settings.\n * @param {string} name Name of block.\n *\n * @returns {object} Modified block settings.\n */\nvar EssGridGalleryAddOnAddControl = function EssGridGalleryAddOnAddControl(settings, name) {\n\t// Do nothing if it's another block than our defined ones.\n\t// Or Default Grid is not set.\n\tif (!EssGridGalleryAddOnBlocks.includes(name)) {\n\t\treturn settings;\n\t}\n\n\tsettings.attributes = jQuery.extend(true, settings.attributes, {\n\t\tgrid: {\n\t\t\ttype: 'string',\n\t\t\tdefault: EssGridOptions.defGrid\n\t\t},\n\t\tcustomsettings: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false\n\t\t},\n\t\tentryskin: {\n\t\t\ttpye: 'string'\n\t\t},\n\t\tlayoutsizing: {\n\t\t\ttpye: 'string'\n\t\t},\n\t\tgridlayout: {\n\t\t\ttpye: 'string'\n\t\t},\n\t\ttinyspacings: {\n\t\t\ttpye: 'string',\n\t\t\tdefault: '5'\n\t\t},\n\t\trowsunlimited: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'on'\n\t\t},\n\t\ttinyrows: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 3\n\t\t},\n\t\tgridanimation: {\n\t\t\ttype: 'string'\n\t\t},\n\t\tusespinner: {\n\t\t\ttype: 'string'\n\t\t}\n\n\t});\n\n\treturn settings;\n};\n\naddFilter('blocks.registerBlockType', 'essgrid-gallery-addon-gutenberg-extension/attribute/grid', EssGridGalleryAddOnAddControl);\n\n/**\n * Add Slider Option to Block\n */\nvar EssGridGalleryAddOn = createHigherOrderComponent(function (BlockEdit) {\n\treturn function (props) {\n\t\t// Do nothing if it's another block than our defined ones.\n\t\t// Or do nothing when EssGrid Default Grid Option is not set\n\t\tif (!EssGridGalleryAddOnBlocks.includes(props.name) || EssGridOptions.defGrid == \"off\" || EssGridOptions.defGrid == \"\" || !EssGridOptions.defGrid) {\n\n\t\t\treturn wp.element.createElement(BlockEdit, props);\n\t\t}\n\t\tvar MySnackbarNotice = function MySnackbarNotice() {\n\t\t\treturn wp.element.createElement(\n\t\t\t\tSnackbar,\n\t\t\t\tnull,\n\t\t\t\t'Post published successfully.'\n\t\t\t);\n\t\t};\n\n\t\tvar _props$attributes = props.attributes,\n\t\t grid = _props$attributes.grid,\n\t\t entryskin = _props$attributes.entryskin,\n\t\t customsettings = _props$attributes.customsettings,\n\t\t layoutsizing = _props$attributes.layoutsizing,\n\t\t gridlayout = _props$attributes.gridlayout,\n\t\t tinyspacings = _props$attributes.tinyspacings,\n\t\t rowsunlimited = _props$attributes.rowsunlimited,\n\t\t tinyrows = _props$attributes.tinyrows,\n\t\t gridanimation = _props$attributes.gridanimation,\n\t\t usespinner = _props$attributes.usespinner;\n\n\t\t// add essgrid-gallery-addon-alias prefix class name\n\n\t\tif (grid) {\n\t\t\tprops.attributes.className = 'essgrid-gallery-' + grid;\n\t\t}\n\n\t\treturn wp.element.createElement(\n\t\t\tFragment,\n\t\t\tnull,\n\t\t\twp.element.createElement(BlockEdit, props),\n\t\t\twp.element.createElement(\n\t\t\t\tInspectorControls,\n\t\t\t\tnull,\n\t\t\t\twp.element.createElement(\n\t\t\t\t\tPanelBody,\n\t\t\t\t\t{\n\t\t\t\t\t\ttitle: 'Essential Grid',\n\t\t\t\t\t\tinitialOpen: grid\n\t\t\t\t\t},\n\t\t\t\t\twp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Select Grid'),\n\t\t\t\t\t\tvalue: grid,\n\t\t\t\t\t\toptions: EssGridOptions.arrGrids,\n\t\t\t\t\t\tonChange: function onChange(grid) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tgrid: grid\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tgrid && wp.element.createElement(ToggleControl, {\n\t\t\t\t\t\tlabel: __(\"Custom Settings\"),\n\t\t\t\t\t\tchecked: customsettings,\n\t\t\t\t\t\tonChange: function onChange(customsettings) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tcustomsettings: customsettings\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tgrid && customsettings && [wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Grid Skin'),\n\t\t\t\t\t\tvalue: entryskin,\n\t\t\t\t\t\toptions: EssGridOptions.arrSkins,\n\t\t\t\t\t\tonChange: function onChange(entryskin) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tentryskin: entryskin\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Layout'),\n\t\t\t\t\t\tvalue: layoutsizing,\n\t\t\t\t\t\toptions: [{ label: __('Boxed'), value: 'boxed' }, { label: __('Fullwidth'), value: 'fullwidth' }],\n\t\t\t\t\t\tonChange: function onChange(layoutsizing) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tlayoutsizing: layoutsizing\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: 'Grid Layout',\n\t\t\t\t\t\tvalue: gridlayout,\n\t\t\t\t\t\toptions: [{ value: 'even', label: __('Even') }, { value: 'masonry', label: __('Masonry') }, { value: 'cobbles', label: __('Cobbles') }],\n\t\t\t\t\t\tonChange: function onChange(gridlayout) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tgridlayout: gridlayout\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(TextControl, {\n\t\t\t\t\t\tlabel: __(\"Item Spacing (px)\"),\n\t\t\t\t\t\tvalue: tinyspacings,\n\t\t\t\t\t\ttype: 'number',\n\t\t\t\t\t\tonChange: function onChange(tinyspacings) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\ttinyspacings: tinyspacings\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Pagination'),\n\t\t\t\t\t\tvalue: rowsunlimited,\n\t\t\t\t\t\toptions: [{ value: 'on', label: __('Disable') }, { value: 'off', label: __('Enable') }],\n\t\t\t\t\t\tonChange: function onChange(rowsunlimited) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\trowsunlimited: rowsunlimited\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), props.attributes.rowsunlimited == 'off' && wp.element.createElement(TextControl, {\n\t\t\t\t\t\tlabel: __(\"Rows per Page\"),\n\t\t\t\t\t\tvalue: tinyrows,\n\t\t\t\t\t\ttype: 'number',\n\t\t\t\t\t\tonChange: function onChange(tinyrows) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\ttinyrows: tinyrows\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Filter & Page Animation'),\n\t\t\t\t\t\tvalue: gridanimation,\n\t\t\t\t\t\toptions: [{ value: 'fade', label: __('Fade') }, { value: 'horizontal-slide', label: __('Horizontal Slide') }, { value: 'vertical-slide', label: __('Vertical Slide') }],\n\t\t\t\t\t\tonChange: function onChange(gridanimation) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tgridanimation: gridanimation\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}), wp.element.createElement(SelectControl, {\n\t\t\t\t\t\tlabel: __('Choose Spinner'),\n\t\t\t\t\t\tvalue: usespinner,\n\t\t\t\t\t\toptions: [{ value: '-1', label: __('Off') }, { value: '0', label: '0' }, { value: '1', label: '1' }, { value: '2', label: '2' }, { value: '3', label: '3' }, { value: '4', label: '4' }, { value: '5', label: '5' }],\n\t\t\t\t\t\tonChange: function onChange(usespinner) {\n\t\t\t\t\t\t\tprops.setAttributes({\n\t\t\t\t\t\t\t\tusespinner: usespinner\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t})]\n\t\t\t\t)\n\t\t\t)\n\t\t);\n\t};\n}, 'EssGridGalleryAddOn');\n\naddFilter('editor.BlockEdit', 'essgrid-gallery-addon-gutenberg-extension/with-grid-control', EssGridGalleryAddOn);\n\n/**\n * Assign alias to block class name\n *\n * @param {object} saveElementProps Props of save element.\n * @param {Object} blockType Block type information.\n * @param {Object} attributes Attributes of block.\n *\n * @returns {object} Modified props of save element.\n */\nvar addEssGridExtraProps = function addEssGridExtraProps(saveElementProps, blockType, attributes) {\n\t// Do nothing if it's another block than our defined ones.\n\tif (!EssGridGalleryAddOnBlocks.includes(blockType.name)) {\n\t\treturn saveElementProps;\n\t}\n\n\t//jQuery.extend(true, saveElementProps, { slider: { 'alias': attributes.slider } } );\n\treturn saveElementProps;\n};\n\naddFilter('blocks.getSaveContent.extraProps', 'essgrid-gallery-addon-gutenberg-extension/get-save-content/extra-props', addEssGridExtraProps);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy93cGdhbGxlcnkvaW5kZXguanM/ZGM3ZiJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgYXNzaWduIGZyb20gJ2xvZGFzaC5hc3NpZ24nO1xuXG52YXIgY3JlYXRlSGlnaGVyT3JkZXJDb21wb25lbnQgPSB3cC5jb21wb3NlLmNyZWF0ZUhpZ2hlck9yZGVyQ29tcG9uZW50O1xudmFyIEZyYWdtZW50ID0gd3AuZWxlbWVudC5GcmFnbWVudDtcbnZhciBfd3AkY29tcG9uZW50cyA9IHdwLmNvbXBvbmVudHMsXG4gICAgUGFuZWxCb2R5ID0gX3dwJGNvbXBvbmVudHMuUGFuZWxCb2R5LFxuICAgIFNlbGVjdENvbnRyb2wgPSBfd3AkY29tcG9uZW50cy5TZWxlY3RDb250cm9sLFxuICAgIFRvZ2dsZUNvbnRyb2wgPSBfd3AkY29tcG9uZW50cy5Ub2dnbGVDb250cm9sLFxuICAgIFRleHRDb250cm9sID0gX3dwJGNvbXBvbmVudHMuVGV4dENvbnRyb2w7XG52YXIgYWRkRmlsdGVyID0gd3AuaG9va3MuYWRkRmlsdGVyO1xudmFyIF9fID0gd3AuaTE4bi5fXztcbnZhciBfd3AkYmxvY2tFZGl0b3IgPSB3cC5ibG9ja0VkaXRvcixcbiAgICBJbnNwZWN0b3JDb250cm9scyA9IF93cCRibG9ja0VkaXRvci5JbnNwZWN0b3JDb250cm9scyxcbiAgICBEaW1lbnNpb25Db250cm9sID0gX3dwJGJsb2NrRWRpdG9yLkRpbWVuc2lvbkNvbnRyb2w7XG4vLyBFbmFibGUgc2xpZGVyIGNvbnRyb2wgb24gdGhlIGZvbGxvd2luZyBibG9ja3NcblxudmFyIEVzc0dyaWRHYWxsZXJ5QWRkT25CbG9ja3MgPSBbJ2NvcmUvZ2FsbGVyeSddO1xuXG4vKipcbiAqIEFkZCBzbGlkZXIgY29udHJvbCBhdHRyaWJ1dGUgdG8gYmxvY2suXG4gKlxuICogQHBhcmFtIHtvYmplY3R9IHNldHRpbmdzIEN1cnJlbnQgYmxvY2sgc2V0dGluZ3MuXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBOYW1lIG9mIGJsb2NrLlxuICpcbiAqIEByZXR1cm5zIHtvYmplY3R9IE1vZGlmaWVkIGJsb2NrIHNldHRpbmdzLlxuICovXG52YXIgRXNzR3JpZEdhbGxlcnlBZGRPbkFkZENvbnRyb2wgPSBmdW5jdGlvbiBFc3NHcmlkR2FsbGVyeUFkZE9uQWRkQ29udHJvbChzZXR0aW5ncywgbmFtZSkge1xuXHQvLyBEbyBub3RoaW5nIGlmIGl0J3MgYW5vdGhlciBibG9jayB0aGFuIG91ciBkZWZpbmVkIG9uZXMuXG5cdC8vIE9yIERlZmF1bHQgR3JpZCBpcyBub3Qgc2V0LlxuXHRpZiAoIUVzc0dyaWRHYWxsZXJ5QWRkT25CbG9ja3MuaW5jbHVkZXMobmFtZSkpIHtcblx0XHRyZXR1cm4gc2V0dGluZ3M7XG5cdH1cblxuXHRzZXR0aW5ncy5hdHRyaWJ1dGVzID0galF1ZXJ5LmV4dGVuZCh0cnVlLCBzZXR0aW5ncy5hdHRyaWJ1dGVzLCB7XG5cdFx0Z3JpZDoge1xuXHRcdFx0dHlwZTogJ3N0cmluZycsXG5cdFx0XHRkZWZhdWx0OiBFc3NHcmlkT3B0aW9ucy5kZWZHcmlkXG5cdFx0fSxcblx0XHRjdXN0b21zZXR0aW5nczoge1xuXHRcdFx0dHlwZTogJ2Jvb2xlYW4nLFxuXHRcdFx0ZGVmYXVsdDogZmFsc2Vcblx0XHR9LFxuXHRcdGVudHJ5c2tpbjoge1xuXHRcdFx0dHB5ZTogJ3N0cmluZydcblx0XHR9LFxuXHRcdGxheW91dHNpemluZzoge1xuXHRcdFx0dHB5ZTogJ3N0cmluZydcblx0XHR9LFxuXHRcdGdyaWRsYXlvdXQ6IHtcblx0XHRcdHRweWU6ICdzdHJpbmcnXG5cdFx0fSxcblx0XHR0aW55c3BhY2luZ3M6IHtcblx0XHRcdHRweWU6ICdzdHJpbmcnLFxuXHRcdFx0ZGVmYXVsdDogJzUnXG5cdFx0fSxcblx0XHRyb3dzdW5saW1pdGVkOiB7XG5cdFx0XHR0eXBlOiAnc3RyaW5nJyxcblx0XHRcdGRlZmF1bHQ6ICdvbidcblx0XHR9LFxuXHRcdHRpbnlyb3dzOiB7XG5cdFx0XHR0eXBlOiAnc3RyaW5nJyxcblx0XHRcdGRlZmF1bHQ6IDNcblx0XHR9LFxuXHRcdGdyaWRhbmltYXRpb246IHtcblx0XHRcdHR5cGU6ICdzdHJpbmcnXG5cdFx0fSxcblx0XHR1c2VzcGlubmVyOiB7XG5cdFx0XHR0eXBlOiAnc3RyaW5nJ1xuXHRcdH1cblxuXHR9KTtcblxuXHRyZXR1cm4gc2V0dGluZ3M7XG59O1xuXG5hZGRGaWx0ZXIoJ2Jsb2Nrcy5yZWdpc3RlckJsb2NrVHlwZScsICdlc3NncmlkLWdhbGxlcnktYWRkb24tZ3V0ZW5iZXJnLWV4dGVuc2lvbi9hdHRyaWJ1dGUvZ3JpZCcsIEVzc0dyaWRHYWxsZXJ5QWRkT25BZGRDb250cm9sKTtcblxuLyoqXG4gKiBBZGQgU2xpZGVyIE9wdGlvbiB0byBCbG9ja1xuICovXG52YXIgRXNzR3JpZEdhbGxlcnlBZGRPbiA9IGNyZWF0ZUhpZ2hlck9yZGVyQ29tcG9uZW50KGZ1bmN0aW9uIChCbG9ja0VkaXQpIHtcblx0cmV0dXJuIGZ1bmN0aW9uIChwcm9wcykge1xuXHRcdC8vIERvIG5vdGhpbmcgaWYgaXQncyBhbm90aGVyIGJsb2NrIHRoYW4gb3VyIGRlZmluZWQgb25lcy5cblx0XHQvLyBPciBkbyBub3RoaW5nIHdoZW4gRXNzR3JpZCBEZWZhdWx0IEdyaWQgT3B0aW9uIGlzIG5vdCBzZXRcblx0XHRpZiAoIUVzc0dyaWRHYWxsZXJ5QWRkT25CbG9ja3MuaW5jbHVkZXMocHJvcHMubmFtZSkgfHwgRXNzR3JpZE9wdGlvbnMuZGVmR3JpZCA9PSBcIm9mZlwiIHx8IEVzc0dyaWRPcHRpb25zLmRlZkdyaWQgPT0gXCJcIiB8fCAhRXNzR3JpZE9wdGlvbnMuZGVmR3JpZCkge1xuXG5cdFx0XHRyZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KEJsb2NrRWRpdCwgcHJvcHMpO1xuXHRcdH1cblx0XHR2YXIgTXlTbmFja2Jhck5vdGljZSA9IGZ1bmN0aW9uIE15U25hY2tiYXJOb3RpY2UoKSB7XG5cdFx0XHRyZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuXHRcdFx0XHRTbmFja2Jhcixcblx0XHRcdFx0bnVsbCxcblx0XHRcdFx0J1Bvc3QgcHVibGlzaGVkIHN1Y2Nlc3NmdWxseS4nXG5cdFx0XHQpO1xuXHRcdH07XG5cblx0XHR2YXIgX3Byb3BzJGF0dHJpYnV0ZXMgPSBwcm9wcy5hdHRyaWJ1dGVzLFxuXHRcdCAgICBncmlkID0gX3Byb3BzJGF0dHJpYnV0ZXMuZ3JpZCxcblx0XHQgICAgZW50cnlza2luID0gX3Byb3BzJGF0dHJpYnV0ZXMuZW50cnlza2luLFxuXHRcdCAgICBjdXN0b21zZXR0aW5ncyA9IF9wcm9wcyRhdHRyaWJ1dGVzLmN1c3RvbXNldHRpbmdzLFxuXHRcdCAgICBsYXlvdXRzaXppbmcgPSBfcHJvcHMkYXR0cmlidXRlcy5sYXlvdXRzaXppbmcsXG5cdFx0ICAgIGdyaWRsYXlvdXQgPSBfcHJvcHMkYXR0cmlidXRlcy5ncmlkbGF5b3V0LFxuXHRcdCAgICB0aW55c3BhY2luZ3MgPSBfcHJvcHMkYXR0cmlidXRlcy50aW55c3BhY2luZ3MsXG5cdFx0ICAgIHJvd3N1bmxpbWl0ZWQgPSBfcHJvcHMkYXR0cmlidXRlcy5yb3dzdW5saW1pdGVkLFxuXHRcdCAgICB0aW55cm93cyA9IF9wcm9wcyRhdHRyaWJ1dGVzLnRpbnlyb3dzLFxuXHRcdCAgICBncmlkYW5pbWF0aW9uID0gX3Byb3BzJGF0dHJpYnV0ZXMuZ3JpZGFuaW1hdGlvbixcblx0XHQgICAgdXNlc3Bpbm5lciA9IF9wcm9wcyRhdHRyaWJ1dGVzLnVzZXNwaW5uZXI7XG5cblx0XHQvLyBhZGQgZXNzZ3JpZC1nYWxsZXJ5LWFkZG9uLWFsaWFzIHByZWZpeCBjbGFzcyBuYW1lXG5cblx0XHRpZiAoZ3JpZCkge1xuXHRcdFx0cHJvcHMuYXR0cmlidXRlcy5jbGFzc05hbWUgPSAnZXNzZ3JpZC1nYWxsZXJ5LScgKyBncmlkO1xuXHRcdH1cblxuXHRcdHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG5cdFx0XHRGcmFnbWVudCxcblx0XHRcdG51bGwsXG5cdFx0XHR3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoQmxvY2tFZGl0LCBwcm9wcyksXG5cdFx0XHR3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG5cdFx0XHRcdEluc3BlY3RvckNvbnRyb2xzLFxuXHRcdFx0XHRudWxsLFxuXHRcdFx0XHR3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG5cdFx0XHRcdFx0UGFuZWxCb2R5LFxuXHRcdFx0XHRcdHtcblx0XHRcdFx0XHRcdHRpdGxlOiAnRXNzZW50aWFsIEdyaWQnLFxuXHRcdFx0XHRcdFx0aW5pdGlhbE9wZW46IGdyaWRcblx0XHRcdFx0XHR9LFxuXHRcdFx0XHRcdHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChTZWxlY3RDb250cm9sLCB7XG5cdFx0XHRcdFx0XHRsYWJlbDogX18oJ1NlbGVjdCBHcmlkJyksXG5cdFx0XHRcdFx0XHR2YWx1ZTogZ3JpZCxcblx0XHRcdFx0XHRcdG9wdGlvbnM6IEVzc0dyaWRPcHRpb25zLmFyckdyaWRzLFxuXHRcdFx0XHRcdFx0b25DaGFuZ2U6IGZ1bmN0aW9uIG9uQ2hhbmdlKGdyaWQpIHtcblx0XHRcdFx0XHRcdFx0cHJvcHMuc2V0QXR0cmlidXRlcyh7XG5cdFx0XHRcdFx0XHRcdFx0Z3JpZDogZ3JpZFxuXHRcdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KSxcblx0XHRcdFx0XHRncmlkICYmIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChUb2dnbGVDb250cm9sLCB7XG5cdFx0XHRcdFx0XHRsYWJlbDogX18oXCJDdXN0b20gU2V0dGluZ3NcIiksXG5cdFx0XHRcdFx0XHRjaGVja2VkOiBjdXN0b21zZXR0aW5ncyxcblx0XHRcdFx0XHRcdG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShjdXN0b21zZXR0aW5ncykge1xuXHRcdFx0XHRcdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcblx0XHRcdFx0XHRcdFx0XHRjdXN0b21zZXR0aW5nczogY3VzdG9tc2V0dGluZ3Ncblx0XHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSksXG5cdFx0XHRcdFx0Z3JpZCAmJiBjdXN0b21zZXR0aW5ncyAmJiBbd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFNlbGVjdENvbnRyb2wsIHtcblx0XHRcdFx0XHRcdGxhYmVsOiBfXygnR3JpZCBTa2luJyksXG5cdFx0XHRcdFx0XHR2YWx1ZTogZW50cnlza2luLFxuXHRcdFx0XHRcdFx0b3B0aW9uczogRXNzR3JpZE9wdGlvbnMuYXJyU2tpbnMsXG5cdFx0XHRcdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UoZW50cnlza2luKSB7XG5cdFx0XHRcdFx0XHRcdHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuXHRcdFx0XHRcdFx0XHRcdGVudHJ5c2tpbjogZW50cnlza2luXG5cdFx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pLCB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoU2VsZWN0Q29udHJvbCwge1xuXHRcdFx0XHRcdFx0bGFiZWw6IF9fKCdMYXlvdXQnKSxcblx0XHRcdFx0XHRcdHZhbHVlOiBsYXlvdXRzaXppbmcsXG5cdFx0XHRcdFx0XHRvcHRpb25zOiBbeyBsYWJlbDogX18oJ0JveGVkJyksIHZhbHVlOiAnYm94ZWQnIH0sIHsgbGFiZWw6IF9fKCdGdWxsd2lkdGgnKSwgdmFsdWU6ICdmdWxsd2lkdGgnIH1dLFxuXHRcdFx0XHRcdFx0b25DaGFuZ2U6IGZ1bmN0aW9uIG9uQ2hhbmdlKGxheW91dHNpemluZykge1xuXHRcdFx0XHRcdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcblx0XHRcdFx0XHRcdFx0XHRsYXlvdXRzaXppbmc6IGxheW91dHNpemluZ1xuXHRcdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KSwgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFNlbGVjdENvbnRyb2wsIHtcblx0XHRcdFx0XHRcdGxhYmVsOiAnR3JpZCBMYXlvdXQnLFxuXHRcdFx0XHRcdFx0dmFsdWU6IGdyaWRsYXlvdXQsXG5cdFx0XHRcdFx0XHRvcHRpb25zOiBbeyB2YWx1ZTogJ2V2ZW4nLCBsYWJlbDogX18oJ0V2ZW4nKSB9LCB7IHZhbHVlOiAnbWFzb25yeScsIGxhYmVsOiBfXygnTWFzb25yeScpIH0sIHsgdmFsdWU6ICdjb2JibGVzJywgbGFiZWw6IF9fKCdDb2JibGVzJykgfV0sXG5cdFx0XHRcdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UoZ3JpZGxheW91dCkge1xuXHRcdFx0XHRcdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcblx0XHRcdFx0XHRcdFx0XHRncmlkbGF5b3V0OiBncmlkbGF5b3V0XG5cdFx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pLCB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoVGV4dENvbnRyb2wsIHtcblx0XHRcdFx0XHRcdGxhYmVsOiBfXyhcIkl0ZW0gU3BhY2luZyAocHgpXCIpLFxuXHRcdFx0XHRcdFx0dmFsdWU6IHRpbnlzcGFjaW5ncyxcblx0XHRcdFx0XHRcdHR5cGU6ICdudW1iZXInLFxuXHRcdFx0XHRcdFx0b25DaGFuZ2U6IGZ1bmN0aW9uIG9uQ2hhbmdlKHRpbnlzcGFjaW5ncykge1xuXHRcdFx0XHRcdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcblx0XHRcdFx0XHRcdFx0XHR0aW55c3BhY2luZ3M6IHRpbnlzcGFjaW5nc1xuXHRcdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KSwgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFNlbGVjdENvbnRyb2wsIHtcblx0XHRcdFx0XHRcdGxhYmVsOiBfXygnUGFnaW5hdGlvbicpLFxuXHRcdFx0XHRcdFx0dmFsdWU6IHJvd3N1bmxpbWl0ZWQsXG5cdFx0XHRcdFx0XHRvcHRpb25zOiBbeyB2YWx1ZTogJ29uJywgbGFiZWw6IF9fKCdEaXNhYmxlJykgfSwgeyB2YWx1ZTogJ29mZicsIGxhYmVsOiBfXygnRW5hYmxlJykgfV0sXG5cdFx0XHRcdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2Uocm93c3VubGltaXRlZCkge1xuXHRcdFx0XHRcdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcblx0XHRcdFx0XHRcdFx0XHRyb3dzdW5saW1pdGVkOiByb3dzdW5saW1pdGVkXG5cdFx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pLCBwcm9wcy5hdHRyaWJ1dGVzLnJvd3N1bmxpbWl0ZWQgPT0gJ29mZicgJiYgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFRleHRDb250cm9sLCB7XG5cdFx0XHRcdFx0XHRsYWJlbDogX18oXCJSb3dzIHBlciBQYWdlXCIpLFxuXHRcdFx0XHRcdFx0dmFsdWU6IHRpbnlyb3dzLFxuXHRcdFx0XHRcdFx0dHlwZTogJ251bWJlcicsXG5cdFx0XHRcdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UodGlueXJvd3MpIHtcblx0XHRcdFx0XHRcdFx0cHJvcHMuc2V0QXR0cmlidXRlcyh7XG5cdFx0XHRcdFx0XHRcdFx0dGlueXJvd3M6IHRpbnlyb3dzXG5cdFx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pLCB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoU2VsZWN0Q29udHJvbCwge1xuXHRcdFx0XHRcdFx0bGFiZWw6IF9fKCdGaWx0ZXIgJiBQYWdlIEFuaW1hdGlvbicpLFxuXHRcdFx0XHRcdFx0dmFsdWU6IGdyaWRhbmltYXRpb24sXG5cdFx0XHRcdFx0XHRvcHRpb25zOiBbeyB2YWx1ZTogJ2ZhZGUnLCBsYWJlbDogX18oJ0ZhZGUnKSB9LCB7IHZhbHVlOiAnaG9yaXpvbnRhbC1zbGlkZScsIGxhYmVsOiBfXygnSG9yaXpvbnRhbCBTbGlkZScpIH0sIHsgdmFsdWU6ICd2ZXJ0aWNhbC1zbGlkZScsIGxhYmVsOiBfXygnVmVydGljYWwgU2xpZGUnKSB9XSxcblx0XHRcdFx0XHRcdG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShncmlkYW5pbWF0aW9uKSB7XG5cdFx0XHRcdFx0XHRcdHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuXHRcdFx0XHRcdFx0XHRcdGdyaWRhbmltYXRpb246IGdyaWRhbmltYXRpb25cblx0XHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSksIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChTZWxlY3RDb250cm9sLCB7XG5cdFx0XHRcdFx0XHRsYWJlbDogX18oJ0Nob29zZSBTcGlubmVyJyksXG5cdFx0XHRcdFx0XHR2YWx1ZTogdXNlc3Bpbm5lcixcblx0XHRcdFx0XHRcdG9wdGlvbnM6IFt7IHZhbHVlOiAnLTEnLCBsYWJlbDogX18oJ09mZicpIH0sIHsgdmFsdWU6ICcwJywgbGFiZWw6ICcwJyB9LCB7IHZhbHVlOiAnMScsIGxhYmVsOiAnMScgfSwgeyB2YWx1ZTogJzInLCBsYWJlbDogJzInIH0sIHsgdmFsdWU6ICczJywgbGFiZWw6ICczJyB9LCB7IHZhbHVlOiAnNCcsIGxhYmVsOiAnNCcgfSwgeyB2YWx1ZTogJzUnLCBsYWJlbDogJzUnIH1dLFxuXHRcdFx0XHRcdFx0b25DaGFuZ2U6IGZ1bmN0aW9uIG9uQ2hhbmdlKHVzZXNwaW5uZXIpIHtcblx0XHRcdFx0XHRcdFx0cHJvcHMuc2V0QXR0cmlidXRlcyh7XG5cdFx0XHRcdFx0XHRcdFx0dXNlc3Bpbm5lcjogdXNlc3Bpbm5lclxuXHRcdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KV1cblx0XHRcdFx0KVxuXHRcdFx0KVxuXHRcdCk7XG5cdH07XG59LCAnRXNzR3JpZEdhbGxlcnlBZGRPbicpO1xuXG5hZGRGaWx0ZXIoJ2VkaXRvci5CbG9ja0VkaXQnLCAnZXNzZ3JpZC1nYWxsZXJ5LWFkZG9uLWd1dGVuYmVyZy1leHRlbnNpb24vd2l0aC1ncmlkLWNvbnRyb2wnLCBFc3NHcmlkR2FsbGVyeUFkZE9uKTtcblxuLyoqXG4gKiBBc3NpZ24gYWxpYXMgdG8gYmxvY2sgY2xhc3MgbmFtZVxuICpcbiAqIEBwYXJhbSB7b2JqZWN0fSBzYXZlRWxlbWVudFByb3BzIFByb3BzIG9mIHNhdmUgZWxlbWVudC5cbiAqIEBwYXJhbSB7T2JqZWN0fSBibG9ja1R5cGUgQmxvY2sgdHlwZSBpbmZvcm1hdGlvbi5cbiAqIEBwYXJhbSB7T2JqZWN0fSBhdHRyaWJ1dGVzIEF0dHJpYnV0ZXMgb2YgYmxvY2suXG4gKlxuICogQHJldHVybnMge29iamVjdH0gTW9kaWZpZWQgcHJvcHMgb2Ygc2F2ZSBlbGVtZW50LlxuICovXG52YXIgYWRkRXNzR3JpZEV4dHJhUHJvcHMgPSBmdW5jdGlvbiBhZGRFc3NHcmlkRXh0cmFQcm9wcyhzYXZlRWxlbWVudFByb3BzLCBibG9ja1R5cGUsIGF0dHJpYnV0ZXMpIHtcblx0Ly8gRG8gbm90aGluZyBpZiBpdCdzIGFub3RoZXIgYmxvY2sgdGhhbiBvdXIgZGVmaW5lZCBvbmVzLlxuXHRpZiAoIUVzc0dyaWRHYWxsZXJ5QWRkT25CbG9ja3MuaW5jbHVkZXMoYmxvY2tUeXBlLm5hbWUpKSB7XG5cdFx0cmV0dXJuIHNhdmVFbGVtZW50UHJvcHM7XG5cdH1cblxuXHQvL2pRdWVyeS5leHRlbmQodHJ1ZSwgc2F2ZUVsZW1lbnRQcm9wcywgeyBzbGlkZXI6IHsgJ2FsaWFzJzogYXR0cmlidXRlcy5zbGlkZXIgfSB9ICk7XG5cdHJldHVybiBzYXZlRWxlbWVudFByb3BzO1xufTtcblxuYWRkRmlsdGVyKCdibG9ja3MuZ2V0U2F2ZUNvbnRlbnQuZXh0cmFQcm9wcycsICdlc3NncmlkLWdhbGxlcnktYWRkb24tZ3V0ZW5iZXJnLWV4dGVuc2lvbi9nZXQtc2F2ZS1jb250ZW50L2V4dHJhLXByb3BzJywgYWRkRXNzR3JpZEV4dHJhUHJvcHMpO1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL3dwZ2FsbGVyeS9pbmRleC5qc1xuLy8gbW9kdWxlIGlkID0gMlxuLy8gbW9kdWxlIGNodW5rcyA9IDAiXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///2\n"); /***/ }), /* 3 */ /*!*********************************!*\ !*** ./src/essgrid/editor.scss ***! \*********************************/ /*! dynamic exports provided */ /***/ (function(module, exports) { eval("// removed by extract-text-webpack-plugin//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9lc3NncmlkL2VkaXRvci5zY3NzPzhlZWUiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9lc3NncmlkL2VkaXRvci5zY3NzXG4vLyBtb2R1bGUgaWQgPSAzXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///3\n"); /***/ }) /******/ ]);

Limpar mapa do rastreador Atualizar mapa do rastreador

Lista de sitemaps Saber mais

Total de sitemaps:
Encontrado no cache Não encontrado no cache Lista de bloqueio
# URL Status do rastreador Operação

= Encontrado no cache
= Não encontrado no cache
= Lista de bloqueio por não ser armazenável em cache
= Lista de bloqueio


Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893

Warning: Cannot modify header information - headers already sent by (output started at /home/u564475196/domains/radarverde.org.br/public_html/wp-content/plugins/head-footer-code/head-footer-code.php:1) in /home/u564475196/domains/radarverde.org.br/public_html/wp-includes/rest-api/class-wp-rest-server.php on line 1893
{"id":3379,"date":"2022-03-24T09:22:36","date_gmt":"2022-03-24T12:22:36","guid":{"rendered":"https:\/\/radarverde.org.br\/?p=3379"},"modified":"2022-05-04T14:06:53","modified_gmt":"2022-05-04T17:06:53","slug":"entenda-porque-nao-e-necessario-derrubar-mais-nenhuma-arvore-para-produzir-mais-carne-na-amazonia","status":"publish","type":"post","link":"https:\/\/radarverde.org.br\/entenda-porque-nao-e-necessario-derrubar-mais-nenhuma-arvore-para-produzir-mais-carne-na-amazonia\/","title":{"rendered":"Estudo mostra que n\u00e3o \u00e9 necess\u00e1rio derrubar mais nenhuma \u00e1rvore para produzir carne"},"content":{"rendered":"\n

\u00c9 poss\u00edvel aumentar produtividade da pecu\u00e1ria na Amaz\u00f4nia, sem desmatar e gastando menos<\/em><\/p>\n\n\n\n

Ang\u00e9lica Queiroz<\/strong><\/p>\n\n\n\n

Nos pr\u00f3ximos dez anos, a demanda e a produ\u00e7\u00e3o brasileira de carne bovina devem crescer. A not\u00edcia importa para a Amaz\u00f4nia Legal, onde est\u00e3o 3 a cada 10 cabe\u00e7as de gado no Brasil. A regi\u00e3o pode produzir mais sem desmatar, empregando t\u00e9cnicas e recursos financeiros j\u00e1 dispon\u00edveis, desde que haja coordena\u00e7\u00e3o pol\u00edtica eficiente. \u00c9 o que revela estudo do projeto Amaz\u00f4nia 2030, uma iniciativa conduzida por pesquisadores brasileiros para desenvolver um plano de a\u00e7\u00f5es para a Amaz\u00f4nia.<\/p>\n\n\n\n

O trabalho \u201cPol\u00edticas para desenvolver a pecu\u00e1ria na Amaz\u00f4nia sem desmatamento\u201d<\/a> diz que a solu\u00e7\u00e3o, que envolve combater a grilagem de terras, recuperar pastagens degradadas e torn\u00e1-las mais produtivas, tem um custo total menor para os pecuaristas da regi\u00e3o do que derrubar floresta para abrir pastos novos: R$270 milh\u00f5es por ano, contra R$950 milh\u00f5es do cen\u00e1rio em que h\u00e1 desmatamento. <\/p>\n\n\n\n

O trabalho, conduzido pelo engenheiro florestal e pesquisador associado do Instituto do Homem e Meio Ambiente da Amaz\u00f4nia (Imazon), Paulo Barreto, faz uma revis\u00e3o da literatura cient\u00edfica para identificar mudan\u00e7as em pol\u00edticas p\u00fablicas que possam frear o desmatamento e garantir que a pecu\u00e1ria na regi\u00e3o se torne mais eficiente.  \u201cCerca de 90% da \u00e1rea desmatada na Amaz\u00f4nia \u00e9 ocupada por pastagens\u201d, diz ele. \u201cPara desenvolver a regi\u00e3o sem desmatar, \u00e9 urgente repensar a atividade\u201d. <\/p>\n\n\n\n

Segundo proje\u00e7\u00f5es do Minist\u00e9rio da Agricultura e Pecu\u00e1ria, a demanda brasileira por carne bovina deve crescer entre 1,4% e 2,4% ao longo da pr\u00f3xima d\u00e9cada. O estudo mostra que, para atender a essa demanda sem desmatar, os pecuaristas da Amaz\u00f4nia teriam de reformar entre 170 mil e 290 mil hectares de pasto degradado por ano at\u00e9 2030, ao custo de R$3 mil por hectare. No total, seriam necess\u00e1rios investimentos entre  R$ 270 milh\u00f5es e R$ 873 milh\u00f5es por ano. J\u00e1 a produtividade das pastagens deveria passar dos atuais 80 kg por hectare para 300 kg por hectare.<\/p>\n\n\n\n

J\u00e1 existe dinheiro para isso: para produzir sem desmatar, os produtores da Amaz\u00f4nia Legal precisariam de um valor que pode variar entre 3% e 9,5% do cr\u00e9dito rural contratado para a regi\u00e3o em 2020.  S\u00e3o empr\u00e9stimos feitos pelos produtores rurais e que, hoje, s\u00e3o principalmente empregados na compra de novos animais \u2014 mas que podem ser redirecionados para a recupera\u00e7\u00e3o de pastagens degradadas.<\/p>\n\n\n\n

Em contrapartida, a op\u00e7\u00e3o pelo desmatamento derrubaria entre 634 mil e 1 milh\u00e3o de hectares de floresta por ano. No custo por hectare, \u00e9 um caminho mais barato do que o de recuperar pastagens: R$ 1,5 mil por hectare, valor necess\u00e1rio para desmatar e plantar pasto. Mas, nesse cen\u00e1rio, a \u00e1rea afetada \u00e9 maior.  Al\u00e9m do custo ambiental associado \u00e0 derrubada da floresta, a medida tem um custo global maior: somados todos os investimentos que seriam feitos pelos pecuaristas, o desmatamento custaria entre R$ 950 milh\u00f5es e R$ 1,63 bilh\u00e3o por ano.<\/p>\n\n\n\n

Por que continuamos derrubando \u00e1rvores?
<\/strong>O estudo tamb\u00e9m mostra que, embora seja vi\u00e1vel t\u00e9cnica e financeiramente produzir sem desmatar, n\u00e3o h\u00e1 garantia de que essa alternativa ser\u00e1 dominante. Isso porque a pecu\u00e1ria pode continuar seguindo a tend\u00eancia atual, que \u00e9 a de ser pouco produtiva. Em m\u00e9dia, h\u00e1 10 bois onde poderia haver 33. E \u00e9 grande a extens\u00e3o de pastagem com algum grau de degrada\u00e7\u00e3o. <\/p>\n\n\n\n

O quadro \u00e9 resultado de um conjunto de \u201cincentivos perversos\u201d que desestimulam avan\u00e7os t\u00e9cnicos: h\u00e1 muita terra barata dispon\u00edvel, m\u00e3o-de-obra pouco qualificada e infraestrutura prec\u00e1ria. Um cen\u00e1rio que dificulta o investimento nas \u00e1reas de pastagem j\u00e1 degradadas e que torna o desmatamento uma alternativa mais atraente para o produtor. <\/p>\n\n\n\n

O que precisa mudar?
<\/strong>Para mudar o cen\u00e1rio, o poder p\u00fablico deve induzir o uso mais produtivo das terras, desestimulando a expans\u00e3o de fronteiras agr\u00edcolas especulativas e ineficientes, e deve trabalhar para fornecer os servi\u00e7os e a infraestrutura que v\u00e3o facilitar os investimentos nas \u00e1reas j\u00e1 desmatadas. Barreto recomenda atuar, simultaneamente, em duas frentes:<\/p>\n\n\n\n