Changeset 2296505
- Timestamp:
- 05/02/2020 07:24:58 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
testimonials-slider-block/trunk/dist/blocks.build.js
r2296496 r2296505 373 373 /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/babel-runtime/core-js/object/assign.js (<- Module is not an ECMAScript module) */ 374 374 /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/babel-runtime/helpers/extends.js (<- Module is not an ECMAScript module) */ 375 /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/babel-runtime/helpers/toConsumableArray.js (<- Module is not an ECMAScript module) */function(module,__webpack_exports__,__webpack_require__){"use strict";eval('// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js\nvar helpers_extends = __webpack_require__(31);\nvar extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);\n\n// EXTERNAL MODULE: ./src/block/style.scss\nvar style = __webpack_require__(62);\n\n// EXTERNAL MODULE: ./src/block/editor.scss\nvar editor = __webpack_require__(63);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js\nvar toConsumableArray = __webpack_require__(2);\nvar toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/object/assign.js\nvar object_assign = __webpack_require__(1);\nvar assign_default = /*#__PURE__*/__webpack_require__.n(object_assign);\n\n// CONCATENATED MODULE: ./src/block/current-slider.js\n\n\nvar _wp$editor = wp.editor,\n MediaUpload = _wp$editor.MediaUpload,\n PlainText = _wp$editor.PlainText;\n\n\n/* harmony default export */ var current_slider = ({\n attributes: {\n id: {\n source: "attribute",\n selector: ".carousel.slide",\n attribute: "id"\n },\n testimonials: {\n source: "query",\n default: [],\n selector: "blockquote.testimonial",\n query: {\n image: {\n source: "attribute",\n selector: "img",\n attribute: "src"\n },\n index: {\n source: "text",\n selector: "span.testimonial-index"\n },\n content: {\n source: "text",\n selector: "span.testimonial-text"\n },\n author: {\n source: "text",\n selector: "span.testimonial-author span"\n },\n link: {\n source: "text",\n selector: ".testimonial-author-link"\n }\n }\n }\n },\n\n /**\n * The edit function describes the structure of your block in the context of the editor.\n * This represents what the editor will render when the block is used.\n *\n * The "edit" property must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n\n // The "edit" property must be a valid function.\n edit: function edit(props) {\n var testimonials = props.attributes.testimonials;\n\n\n if (!props.attributes.id) {\n var id = "testimonial" + Math.floor(Math.random() * 100);\n props.setAttributes({\n id: id\n });\n }\n\n var testimonialsList = testimonials.sort(function (a, b) {\n return a.index - b.index;\n }).map(function (testimonial) {\n return wp.element.createElement(\n "div",\n { className: "gts-testimonial-block" },\n wp.element.createElement(\n "p",\n null,\n wp.element.createElement(\n "span",\n null,\n "Insert Testmonial ",\n Number(testimonial.index) + 1,\n " Here:"\n ),\n wp.element.createElement(\n "span",\n {\n className: "remove-testimonial",\n onClick: function onClick() {\n var newTestimonials = testimonials.filter(function (item) {\n return item.index != testimonial.index;\n }).map(function (t) {\n if (t.index > testimonial.index) {\n t.index -= 1;\n }\n\n return t;\n });\n\n props.setAttributes({\n testimonials: newTestimonials\n });\n }\n },\n wp.element.createElement("i", { className: "fa fa-times" })\n )\n ),\n wp.element.createElement(\n "blockquote",\n { className: "wp-block-quote" },\n wp.element.createElement(PlainText, {\n className: "content-plain-text",\n style: { height: 58 },\n placeholder: "Testimonial Text",\n value: testimonial.content,\n autoFocus: true,\n onChange: function onChange(content) {\n var newObject = assign_default()({}, testimonial, {\n content: content\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n }),\n wp.element.createElement(\n "div",\n { className: "row" },\n wp.element.createElement(\n "div",\n { className: "gts__picture col-3" },\n wp.element.createElement(MediaUpload, {\n onSelect: function onSelect(media) {\n var image = media.sizes.medium ? media.sizes.medium.url : media.url;\n var newObject = assign_default()({}, testimonial, {\n image: image\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n },\n type: "image",\n value: testimonial.image,\n render: function render(_ref) {\n var open = _ref.open;\n return !!testimonial.image ? wp.element.createElement(\n "div",\n null,\n props.isSelected && wp.element.createElement(\n "div",\n { className: "gts__picture__actions" },\n wp.element.createElement(\n "a",\n {\n href: "#",\n onClick: function onClick() {\n var newObject = assign_default()({}, testimonial, {\n image: null\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n },\n "\\xD7 Remove"\n )\n ),\n wp.element.createElement("div", {\n className: "gts__picture__image",\n style: {\n backgroundImage: "url(" + testimonial.image + ")"\n },\n onClick: open\n })\n ) : wp.element.createElement(\n "a",\n {\n href: "#",\n className: "gts__picture__image",\n onClick: open\n },\n "Select Image"\n );\n }\n })\n ),\n wp.element.createElement(\n "div",\n { className: "col-9 mt-3" },\n wp.element.createElement(PlainText, {\n className: "author-plain-text",\n placeholder: "Author",\n value: testimonial.author,\n onChange: function onChange(author) {\n var newObject = assign_default()({}, testimonial, {\n author: author\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n }),\n wp.element.createElement(PlainText, {\n className: "link-plain-text",\n placeholder: "Link to Author Profile",\n value: testimonial.link,\n onChange: function onChange(link) {\n var newObject = assign_default()({}, testimonial, {\n link: link\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n })\n )\n )\n )\n );\n });\n return wp.element.createElement(\n "div",\n { className: props.className },\n testimonialsList,\n wp.element.createElement(\n "button",\n {\n className: "add-more-testimonial",\n onClick: function onClick(content) {\n return props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(props.attributes.testimonials), [{\n index: props.attributes.testimonials.length,\n content: "",\n author: "",\n link: ""\n }])\n });\n }\n },\n "+"\n )\n );\n },\n\n /**\n * The save function defines the way in which the different attributes should be combined\n * into the final markup, which is then serialized by Gutenberg into post_content.\n *\n * The "save" property must be specified and must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n save: function save(props) {\n var _props$attributes = props.attributes,\n id = _props$attributes.id,\n testimonials = _props$attributes.testimonials;\n\n var carouselIndicators = testimonials.map(function (testimonial, index) {\n return wp.element.createElement("li", {\n "data-target": "#" + id,\n "data-slide-to": index,\n className: testimonial.index == 0 ? "active" : ""\n });\n });\n var testimonialsList = testimonials.map(function (testimonial) {\n var carouselClass = testimonial.index == 0 ? "carousel-item active" : "carousel-item";\n return wp.element.createElement(\n "div",\n { className: carouselClass, key: testimonial.index },\n wp.element.createElement(\n "blockquote",\n { className: "testimonial" },\n wp.element.createElement(\n "span",\n { className: "testimonial-index", style: { display: "none" } },\n testimonial.index\n ),\n testimonial.content && wp.element.createElement(\n "p",\n { className: "testimonial-text-container" },\n wp.element.createElement("i", { className: "fa fa-quote-left pull-left", "aria-hidden": "true" }),\n wp.element.createElement(\n "span",\n { className: "testimonial-text" },\n testimonial.content\n ),\n wp.element.createElement("i", { "class": "fa fa-quote-right pull-right", "aria-hidden": "true" })\n ),\n wp.element.createElement(\n "div",\n { className: "row" },\n testimonial.image && wp.element.createElement(\n "div",\n { className: "gts__picture col-3" },\n wp.element.createElement("img", { src: testimonial.image, style: { display: "none" } }),\n wp.element.createElement("div", {\n className: "gts__picture__image",\n style: {\n backgroundImage: "url(" + testimonial.image + ")"\n }\n })\n ),\n wp.element.createElement(\n "div",\n { className: "testimonial-author-container mt-3 col-9" },\n testimonial.author && wp.element.createElement(\n "p",\n { className: "testimonial-author-name" },\n wp.element.createElement(\n "span",\n { className: "testimonial-author" },\n "\\u2014 ",\n wp.element.createElement(\n "span",\n null,\n testimonial.author\n )\n )\n ),\n testimonial.link && wp.element.createElement(\n "p",\n { className: "testimonial-author-container" },\n wp.element.createElement(\n "a",\n {\n target: "_blank",\n rel: "noopener noreferrer",\n href: testimonial.link\n },\n wp.element.createElement("i", { className: "fas fa-user" }),\n wp.element.createElement(\n "span",\n { className: "testimonial-author-link" },\n testimonial.link\n )\n )\n )\n )\n )\n )\n );\n });\n if (testimonials.length > 0) {\n return wp.element.createElement(\n "div",\n { className: "testimonial-slider" },\n wp.element.createElement(\n "div",\n { className: "carousel slide", "data-ride": "carousel", id: id },\n wp.element.createElement(\n "ol",\n { className: "carousel-indicators" },\n carouselIndicators\n ),\n wp.element.createElement(\n "div",\n { className: "carousel-inner w-75 mx-auto" },\n testimonialsList\n ),\n wp.element.createElement(\n "a",\n {\n "class": "carousel-control-prev",\n href: "#" + id,\n role: "button",\n "data-slide": "prev"\n },\n wp.element.createElement(\n "span",\n { "class": "carousel-control-prev-icon", "aria-hidden": "true" },\n wp.element.createElement("i", { className: "fa fa-chevron-left" })\n ),\n wp.element.createElement(\n "span",\n { "class": "sr-only" },\n "Previous"\n )\n ),\n wp.element.createElement(\n "a",\n {\n "class": "carousel-control-next",\n href: "#" + id,\n role: "button",\n "data-slide": "next"\n },\n wp.element.createElement(\n "span",\n { "class": "carousel-control-next-icon", "aria-hidden": "true" },\n wp.element.createElement("i", { className: "fa fa-chevron-right" })\n ),\n wp.element.createElement(\n "span",\n { "class": "sr-only" },\n "Next"\n )\n )\n )\n );\n } else return null;\n }\n});\n// CONCATENATED MODULE: ./src/block/slider.js\n\n/**\n * BLOCK: my-block\n *\n * Registering a basic block with Gutenberg.\n * Simple block, renders and saves the same content without any interactivity.\n */\n\n// Import CSS.\n\n\n\nvar __ = wp.i18n.__; // The __() for internationalization.\nvar registerBlockType = wp.blocks.registerBlockType; // The registerBlockType() to register blocks.\n\n\n/**\n * Register: a Gutenberg Block.\n *\n * Registers a new block provided a unique name and an object defining its\n * behavior. Once registered, the block is made editor as an option to any\n * editor interface where blocks are implemented.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/\n * @param {string} name Block name.\n * @param {Object} settings Block settings.\n * @return {?WPBlock} The block, if it has been successfully\n * registered; otherwise `undefined`.\n */\nregisterBlockType("gts/testimonials-slider-block", extends_default()({\n // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.\n title: __("Testimonials Slider"), // Block title.\n icon: "format-quote", // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.\n category: "common", // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.\n keywords: [__("Testimonials Slider"), __("gts")]\n\n}, current_slider) );\n// CONCATENATED MODULE: ./src/index.js\n/**\n * Import blocks\n */\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvYmxvY2svY3VycmVudC1zbGlkZXIuanM/NTdhNiIsIndlYnBhY2s6Ly8vLi9zcmMvYmxvY2svc2xpZGVyLmpzP2NlOWEiLCJ3ZWJwYWNrOi8vLy4vc3JjL2luZGV4LmpzPzM3MDAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tIFwiYmFiZWwtcnVudGltZS9oZWxwZXJzL3RvQ29uc3VtYWJsZUFycmF5XCI7XG5pbXBvcnQgX09iamVjdCRhc3NpZ24gZnJvbSBcImJhYmVsLXJ1bnRpbWUvY29yZS1qcy9vYmplY3QvYXNzaWduXCI7XG52YXIgX3dwJGVkaXRvciA9IHdwLmVkaXRvcixcbiAgICBNZWRpYVVwbG9hZCA9IF93cCRlZGl0b3IuTWVkaWFVcGxvYWQsXG4gICAgUGxhaW5UZXh0ID0gX3dwJGVkaXRvci5QbGFpblRleHQ7XG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBhdHRyaWJ1dGVzOiB7XG4gICAgaWQ6IHtcbiAgICAgIHNvdXJjZTogXCJhdHRyaWJ1dGVcIixcbiAgICAgIHNlbGVjdG9yOiBcIi5jYXJvdXNlbC5zbGlkZVwiLFxuICAgICAgYXR0cmlidXRlOiBcImlkXCJcbiAgICB9LFxuICAgIHRlc3RpbW9uaWFsczoge1xuICAgICAgc291cmNlOiBcInF1ZXJ5XCIsXG4gICAgICBkZWZhdWx0OiBbXSxcbiAgICAgIHNlbGVjdG9yOiBcImJsb2NrcXVvdGUudGVzdGltb25pYWxcIixcbiAgICAgIHF1ZXJ5OiB7XG4gICAgICAgIGltYWdlOiB7XG4gICAgICAgICAgc291cmNlOiBcImF0dHJpYnV0ZVwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcImltZ1wiLFxuICAgICAgICAgIGF0dHJpYnV0ZTogXCJzcmNcIlxuICAgICAgICB9LFxuICAgICAgICBpbmRleDoge1xuICAgICAgICAgIHNvdXJjZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgc2VsZWN0b3I6IFwic3Bhbi50ZXN0aW1vbmlhbC1pbmRleFwiXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRlbnQ6IHtcbiAgICAgICAgICBzb3VyY2U6IFwidGV4dFwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcInNwYW4udGVzdGltb25pYWwtdGV4dFwiXG4gICAgICAgIH0sXG4gICAgICAgIGF1dGhvcjoge1xuICAgICAgICAgIHNvdXJjZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgc2VsZWN0b3I6IFwic3Bhbi50ZXN0aW1vbmlhbC1hdXRob3Igc3BhblwiXG4gICAgICAgIH0sXG4gICAgICAgIGxpbms6IHtcbiAgICAgICAgICBzb3VyY2U6IFwidGV4dFwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcIi50ZXN0aW1vbmlhbC1hdXRob3ItbGlua1wiXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgLyoqXG4gICAqIFRoZSBlZGl0IGZ1bmN0aW9uIGRlc2NyaWJlcyB0aGUgc3RydWN0dXJlIG9mIHlvdXIgYmxvY2sgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGVkaXRvci5cbiAgICogVGhpcyByZXByZXNlbnRzIHdoYXQgdGhlIGVkaXRvciB3aWxsIHJlbmRlciB3aGVuIHRoZSBibG9jayBpcyB1c2VkLlxuICAgKlxuICAgKiBUaGUgXCJlZGl0XCIgcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBAbGluayBodHRwczovL3dvcmRwcmVzcy5vcmcvZ3V0ZW5iZXJnL2hhbmRib29rL2Jsb2NrLWFwaS9ibG9jay1lZGl0LXNhdmUvXG4gICAqL1xuXG4gIC8vIFRoZSBcImVkaXRcIiBwcm9wZXJ0eSBtdXN0IGJlIGEgdmFsaWQgZnVuY3Rpb24uXG4gIGVkaXQ6IGZ1bmN0aW9uIGVkaXQocHJvcHMpIHtcbiAgICB2YXIgdGVzdGltb25pYWxzID0gcHJvcHMuYXR0cmlidXRlcy50ZXN0aW1vbmlhbHM7XG5cblxuICAgIGlmICghcHJvcHMuYXR0cmlidXRlcy5pZCkge1xuICAgICAgdmFyIGlkID0gXCJ0ZXN0aW1vbmlhbFwiICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwKTtcbiAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICBpZDogaWRcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciB0ZXN0aW1vbmlhbHNMaXN0ID0gdGVzdGltb25pYWxzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBhLmluZGV4IC0gYi5pbmRleDtcbiAgICB9KS5tYXAoZnVuY3Rpb24gKHRlc3RpbW9uaWFsKSB7XG4gICAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICBcImRpdlwiLFxuICAgICAgICB7IGNsYXNzTmFtZTogXCJndHMtdGVzdGltb25pYWwtYmxvY2tcIiB9LFxuICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICBcIkluc2VydCBUZXN0bW9uaWFsIFwiLFxuICAgICAgICAgICAgTnVtYmVyKHRlc3RpbW9uaWFsLmluZGV4KSArIDEsXG4gICAgICAgICAgICBcIiBIZXJlOlwiXG4gICAgICAgICAgKSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcInJlbW92ZS10ZXN0aW1vbmlhbFwiLFxuICAgICAgICAgICAgICBvbkNsaWNrOiBmdW5jdGlvbiBvbkNsaWNrKCkge1xuICAgICAgICAgICAgICAgIHZhciBuZXdUZXN0aW1vbmlhbHMgPSB0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5pbmRleCAhPSB0ZXN0aW1vbmlhbC5pbmRleDtcbiAgICAgICAgICAgICAgICB9KS5tYXAoZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICAgICAgICAgIGlmICh0LmluZGV4ID4gdGVzdGltb25pYWwuaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgdC5pbmRleCAtPSAxO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgdGVzdGltb25pYWxzOiBuZXdUZXN0aW1vbmlhbHNcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBjbGFzc05hbWU6IFwiZmEgZmEtdGltZXNcIiB9KVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgIFwiYmxvY2txdW90ZVwiLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiBcIndwLWJsb2NrLXF1b3RlXCIgfSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoUGxhaW5UZXh0LCB7XG4gICAgICAgICAgICBjbGFzc05hbWU6IFwiY29udGVudC1wbGFpbi10ZXh0XCIsXG4gICAgICAgICAgICBzdHlsZTogeyBoZWlnaHQ6IDU4IH0sXG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJUZXN0aW1vbmlhbCBUZXh0XCIsXG4gICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwuY29udGVudCxcbiAgICAgICAgICAgIGF1dG9Gb2N1czogdHJ1ZSxcbiAgICAgICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShjb250ZW50KSB7XG4gICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjb250ZW50XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uaW5kZXggIT0gdGVzdGltb25pYWwuaW5kZXg7XG4gICAgICAgICAgICAgICAgfSkpLCBbbmV3T2JqZWN0XSlcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInJvd1wiIH0sXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZSBjb2wtM1wiIH0sXG4gICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChNZWRpYVVwbG9hZCwge1xuICAgICAgICAgICAgICAgIG9uU2VsZWN0OiBmdW5jdGlvbiBvblNlbGVjdChtZWRpYSkge1xuICAgICAgICAgICAgICAgICAgdmFyIGltYWdlID0gbWVkaWEuc2l6ZXMubWVkaXVtID8gbWVkaWEuc2l6ZXMubWVkaXVtLnVybCA6IG1lZGlhLnVybDtcbiAgICAgICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IGltYWdlXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9KSksIFtuZXdPYmplY3RdKVxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB0eXBlOiBcImltYWdlXCIsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRlc3RpbW9uaWFsLmltYWdlLFxuICAgICAgICAgICAgICAgIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKF9yZWYpIHtcbiAgICAgICAgICAgICAgICAgIHZhciBvcGVuID0gX3JlZi5vcGVuO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuICEhdGVzdGltb25pYWwuaW1hZ2UgPyB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzLmlzU2VsZWN0ZWQgJiYgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlX19hY3Rpb25zXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICBcImFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZjogXCIjXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6IGZ1bmN0aW9uIG9uQ2xpY2soKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG5ld09iamVjdCA9IF9PYmplY3QkYXNzaWduKHt9LCB0ZXN0aW1vbmlhbCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsczogW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpLCBbbmV3T2JqZWN0XSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXFx4RDcgUmVtb3ZlXCJcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZV9faW1hZ2VcIixcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiBcInVybChcIiArIHRlc3RpbW9uaWFsLmltYWdlICsgXCIpXCJcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6IG9wZW5cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICkgOiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgIFwiYVwiLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgaHJlZjogXCIjXCIsXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZV9faW1hZ2VcIixcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiBvcGVuXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIFwiU2VsZWN0IEltYWdlXCJcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiY29sLTkgbXQtM1wiIH0sXG4gICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChQbGFpblRleHQsIHtcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IFwiYXV0aG9yLXBsYWluLXRleHRcIixcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJBdXRob3JcIixcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwuYXV0aG9yLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShhdXRob3IpIHtcbiAgICAgICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICAgICAgYXV0aG9yOiBhdXRob3JcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgcHJvcHMuc2V0QXR0cmlidXRlcyh7XG4gICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsczogW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uaW5kZXggIT0gdGVzdGltb25pYWwuaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgIH0pKSwgW25ld09iamVjdF0pXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoUGxhaW5UZXh0LCB7XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImxpbmstcGxhaW4tdGV4dFwiLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBcIkxpbmsgdG8gQXV0aG9yIFByb2ZpbGVcIixcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwubGluayxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UobGluaykge1xuICAgICAgICAgICAgICAgICAgdmFyIG5ld09iamVjdCA9IF9PYmplY3QkYXNzaWduKHt9LCB0ZXN0aW1vbmlhbCwge1xuICAgICAgICAgICAgICAgICAgICBsaW5rOiBsaW5rXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9KSksIFtuZXdPYmplY3RdKVxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9KTtcbiAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgY2xhc3NOYW1lOiBwcm9wcy5jbGFzc05hbWUgfSxcbiAgICAgIHRlc3RpbW9uaWFsc0xpc3QsXG4gICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgIFwiYnV0dG9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzc05hbWU6IFwiYWRkLW1vcmUtdGVzdGltb25pYWxcIixcbiAgICAgICAgICBvbkNsaWNrOiBmdW5jdGlvbiBvbkNsaWNrKGNvbnRlbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgdGVzdGltb25pYWxzOiBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KHByb3BzLmF0dHJpYnV0ZXMudGVzdGltb25pYWxzKSwgW3tcbiAgICAgICAgICAgICAgICBpbmRleDogcHJvcHMuYXR0cmlidXRlcy50ZXN0aW1vbmlhbHMubGVuZ3RoLFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgYXV0aG9yOiBcIlwiLFxuICAgICAgICAgICAgICAgIGxpbms6IFwiXCJcbiAgICAgICAgICAgICAgfV0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFwiK1wiXG4gICAgICApXG4gICAgKTtcbiAgfSxcblxuICAvKipcbiAgICogVGhlIHNhdmUgZnVuY3Rpb24gZGVmaW5lcyB0aGUgd2F5IGluIHdoaWNoIHRoZSBkaWZmZXJlbnQgYXR0cmlidXRlcyBzaG91bGQgYmUgY29tYmluZWRcbiAgICogaW50byB0aGUgZmluYWwgbWFya3VwLCB3aGljaCBpcyB0aGVuIHNlcmlhbGl6ZWQgYnkgR3V0ZW5iZXJnIGludG8gcG9zdF9jb250ZW50LlxuICAgKlxuICAgKiBUaGUgXCJzYXZlXCIgcHJvcGVydHkgbXVzdCBiZSBzcGVjaWZpZWQgYW5kIG11c3QgYmUgYSB2YWxpZCBmdW5jdGlvbi5cbiAgICpcbiAgICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvYmxvY2stZWRpdC1zYXZlL1xuICAgKi9cbiAgc2F2ZTogZnVuY3Rpb24gc2F2ZShwcm9wcykge1xuICAgIHZhciBfcHJvcHMkYXR0cmlidXRlcyA9IHByb3BzLmF0dHJpYnV0ZXMsXG4gICAgICAgIGlkID0gX3Byb3BzJGF0dHJpYnV0ZXMuaWQsXG4gICAgICAgIHRlc3RpbW9uaWFscyA9IF9wcm9wcyRhdHRyaWJ1dGVzLnRlc3RpbW9uaWFscztcblxuICAgIHZhciBjYXJvdXNlbEluZGljYXRvcnMgPSB0ZXN0aW1vbmlhbHMubWFwKGZ1bmN0aW9uICh0ZXN0aW1vbmlhbCwgaW5kZXgpIHtcbiAgICAgIHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJsaVwiLCB7XG4gICAgICAgIFwiZGF0YS10YXJnZXRcIjogXCIjXCIgKyBpZCxcbiAgICAgICAgXCJkYXRhLXNsaWRlLXRvXCI6IGluZGV4LFxuICAgICAgICBjbGFzc05hbWU6IHRlc3RpbW9uaWFsLmluZGV4ID09IDAgPyBcImFjdGl2ZVwiIDogXCJcIlxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdmFyIHRlc3RpbW9uaWFsc0xpc3QgPSB0ZXN0aW1vbmlhbHMubWFwKGZ1bmN0aW9uICh0ZXN0aW1vbmlhbCkge1xuICAgICAgdmFyIGNhcm91c2VsQ2xhc3MgPSB0ZXN0aW1vbmlhbC5pbmRleCA9PSAwID8gXCJjYXJvdXNlbC1pdGVtIGFjdGl2ZVwiIDogXCJjYXJvdXNlbC1pdGVtXCI7XG4gICAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICBcImRpdlwiLFxuICAgICAgICB7IGNsYXNzTmFtZTogY2Fyb3VzZWxDbGFzcywga2V5OiB0ZXN0aW1vbmlhbC5pbmRleCB9LFxuICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgXCJibG9ja3F1b3RlXCIsXG4gICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWxcIiB9LFxuICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtaW5kZXhcIiwgc3R5bGU6IHsgZGlzcGxheTogXCJub25lXCIgfSB9LFxuICAgICAgICAgICAgdGVzdGltb25pYWwuaW5kZXhcbiAgICAgICAgICApLFxuICAgICAgICAgIHRlc3RpbW9uaWFsLmNvbnRlbnQgJiYgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJ0ZXN0aW1vbmlhbC10ZXh0LWNvbnRhaW5lclwiIH0sXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLXF1b3RlLWxlZnQgcHVsbC1sZWZ0XCIsIFwiYXJpYS1oaWRkZW5cIjogXCJ0cnVlXCIgfSksXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJ0ZXN0aW1vbmlhbC10ZXh0XCIgfSxcbiAgICAgICAgICAgICAgdGVzdGltb25pYWwuY29udGVudFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBcImNsYXNzXCI6IFwiZmEgZmEtcXVvdGUtcmlnaHQgcHVsbC1yaWdodFwiLCBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiIH0pXG4gICAgICAgICAgKSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwicm93XCIgfSxcbiAgICAgICAgICAgIHRlc3RpbW9uaWFsLmltYWdlICYmIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlIGNvbC0zXCIgfSxcbiAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFwiaW1nXCIsIHsgc3JjOiB0ZXN0aW1vbmlhbC5pbWFnZSwgc3R5bGU6IHsgZGlzcGxheTogXCJub25lXCIgfSB9KSxcbiAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlX19pbWFnZVwiLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6IFwidXJsKFwiICsgdGVzdGltb25pYWwuaW1hZ2UgKyBcIilcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLWF1dGhvci1jb250YWluZXIgbXQtMyBjb2wtOVwiIH0sXG4gICAgICAgICAgICAgIHRlc3RpbW9uaWFsLmF1dGhvciAmJiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yLW5hbWVcIiB9LFxuICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yXCIgfSxcbiAgICAgICAgICAgICAgICAgIFwiXFx1MjAxNCBcIixcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsLmF1dGhvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgdGVzdGltb25pYWwubGluayAmJiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yLWNvbnRhaW5lclwiIH0sXG4gICAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogXCJfYmxhbmtcIixcbiAgICAgICAgICAgICAgICAgICAgcmVsOiBcIm5vb3BlbmVyIG5vcmVmZXJyZXJcIixcbiAgICAgICAgICAgICAgICAgICAgaHJlZjogdGVzdGltb25pYWwubGlua1xuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBjbGFzc05hbWU6IFwiZmFzIGZhLXVzZXJcIiB9KSxcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLWF1dGhvci1saW5rXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgdGVzdGltb25pYWwubGlua1xuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9KTtcbiAgICBpZiAodGVzdGltb25pYWxzLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgIFwiZGl2XCIsXG4gICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLXNsaWRlclwiIH0sXG4gICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiBcImNhcm91c2VsIHNsaWRlXCIsIFwiZGF0YS1yaWRlXCI6IFwiY2Fyb3VzZWxcIiwgaWQ6IGlkIH0sXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJvbFwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiY2Fyb3VzZWwtaW5kaWNhdG9yc1wiIH0sXG4gICAgICAgICAgICBjYXJvdXNlbEluZGljYXRvcnNcbiAgICAgICAgICApLFxuICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJjYXJvdXNlbC1pbm5lciB3LTc1IG14LWF1dG9cIiB9LFxuICAgICAgICAgICAgdGVzdGltb25pYWxzTGlzdFxuICAgICAgICAgICksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiY2xhc3NcIjogXCJjYXJvdXNlbC1jb250cm9sLXByZXZcIixcbiAgICAgICAgICAgICAgaHJlZjogXCIjXCIgKyBpZCxcbiAgICAgICAgICAgICAgcm9sZTogXCJidXR0b25cIixcbiAgICAgICAgICAgICAgXCJkYXRhLXNsaWRlXCI6IFwicHJldlwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb25cIiwgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiB9LFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLWNoZXZyb24tbGVmdFwiIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwic3Itb25seVwiIH0sXG4gICAgICAgICAgICAgIFwiUHJldmlvdXNcIlxuICAgICAgICAgICAgKVxuICAgICAgICAgICksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiY2xhc3NcIjogXCJjYXJvdXNlbC1jb250cm9sLW5leHRcIixcbiAgICAgICAgICAgICAgaHJlZjogXCIjXCIgKyBpZCxcbiAgICAgICAgICAgICAgcm9sZTogXCJidXR0b25cIixcbiAgICAgICAgICAgICAgXCJkYXRhLXNsaWRlXCI6IFwibmV4dFwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb25cIiwgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiB9LFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLWNoZXZyb24tcmlnaHRcIiB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgIHsgXCJjbGFzc1wiOiBcInNyLW9ubHlcIiB9LFxuICAgICAgICAgICAgICBcIk5leHRcIlxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9IGVsc2UgcmV0dXJuIG51bGw7XG4gIH1cbn07IiwiaW1wb3J0IF9leHRlbmRzIGZyb20gXCJiYWJlbC1ydW50aW1lL2hlbHBlcnMvZXh0ZW5kc1wiO1xuLyoqXG4gKiBCTE9DSzogbXktYmxvY2tcbiAqXG4gKiBSZWdpc3RlcmluZyBhIGJhc2ljIGJsb2NrIHdpdGggR3V0ZW5iZXJnLlxuICogU2ltcGxlIGJsb2NrLCByZW5kZXJzIGFuZCBzYXZlcyB0aGUgc2FtZSBjb250ZW50IHdpdGhvdXQgYW55IGludGVyYWN0aXZpdHkuXG4gKi9cblxuLy8gIEltcG9ydCBDU1MuXG5pbXBvcnQgXCIuL3N0eWxlLnNjc3NcIjtcbmltcG9ydCBcIi4vZWRpdG9yLnNjc3NcIjtcblxudmFyIF9fID0gd3AuaTE4bi5fXzsgLy8gVGhlIF9fKCkgZm9yIGludGVybmF0aW9uYWxpemF0aW9uLlxudmFyIHJlZ2lzdGVyQmxvY2tUeXBlID0gd3AuYmxvY2tzLnJlZ2lzdGVyQmxvY2tUeXBlOyAvLyBUaGUgcmVnaXN0ZXJCbG9ja1R5cGUoKSB0byByZWdpc3RlciBibG9ja3MuXG5pbXBvcnQgY3VycmVudFNsaWRlciBmcm9tICcuL2N1cnJlbnQtc2xpZGVyJztcblxuLyoqXG4gKiBSZWdpc3RlcjogYSBHdXRlbmJlcmcgQmxvY2suXG4gKlxuICogUmVnaXN0ZXJzIGEgbmV3IGJsb2NrIHByb3ZpZGVkIGEgdW5pcXVlIG5hbWUgYW5kIGFuIG9iamVjdCBkZWZpbmluZyBpdHNcbiAqIGJlaGF2aW9yLiBPbmNlIHJlZ2lzdGVyZWQsIHRoZSBibG9jayBpcyBtYWRlIGVkaXRvciBhcyBhbiBvcHRpb24gdG8gYW55XG4gKiBlZGl0b3IgaW50ZXJmYWNlIHdoZXJlIGJsb2NrcyBhcmUgaW1wbGVtZW50ZWQuXG4gKlxuICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAgbmFtZSAgICAgQmxvY2sgbmFtZS5cbiAqIEBwYXJhbSAge09iamVjdH0gICBzZXR0aW5ncyBCbG9jayBzZXR0aW5ncy5cbiAqIEByZXR1cm4gez9XUEJsb2NrfSAgICAgICAgICBUaGUgYmxvY2ssIGlmIGl0IGhhcyBiZWVuIHN1Y2Nlc3NmdWxseVxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyZWQ7IG90aGVyd2lzZSBgdW5kZWZpbmVkYC5cbiAqL1xucmVnaXN0ZXJCbG9ja1R5cGUoXCJndHMvdGVzdGltb25pYWxzLXNsaWRlci1ibG9ja1wiLCBfZXh0ZW5kcyh7XG4gIC8vIEJsb2NrIG5hbWUuIEJsb2NrIG5hbWVzIG11c3QgYmUgc3RyaW5nIHRoYXQgY29udGFpbnMgYSBuYW1lc3BhY2UgcHJlZml4LiBFeGFtcGxlOiBteS1wbHVnaW4vbXktY3VzdG9tLWJsb2NrLlxuICB0aXRsZTogX18oXCJUZXN0aW1vbmlhbHMgU2xpZGVyXCIpLCAvLyBCbG9jayB0aXRsZS5cbiAgaWNvbjogXCJmb3JtYXQtcXVvdGVcIiwgLy8gQmxvY2sgaWNvbiBmcm9tIERhc2hpY29ucyDihpIgaHR0cHM6Ly9kZXZlbG9wZXIud29yZHByZXNzLm9yZy9yZXNvdXJjZS9kYXNoaWNvbnMvLlxuICBjYXRlZ29yeTogXCJjb21tb25cIiwgLy8gQmxvY2sgY2F0ZWdvcnkg4oCUIEdyb3VwIGJsb2NrcyB0b2dldGhlciBiYXNlZCBvbiBjb21tb24gdHJhaXRzIEUuZy4gY29tbW9uLCBmb3JtYXR0aW5nLCBsYXlvdXQgd2lkZ2V0cywgZW1iZWQuXG4gIGtleXdvcmRzOiBbX18oXCJUZXN0aW1vbmlhbHMgU2xpZGVyXCIpLCBfXyhcImd0c1wiKV1cblxufSwgY3VycmVudFNsaWRlcikpOyIsIi8qKlxuICogSW1wb3J0IGJsb2Nrc1xuICovXG5pbXBvcnQgJy4vYmxvY2svc2xpZGVyLmpzJzsiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUN4WkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FDcENBO0FBQ0E7QUFDQTsiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///61\n')},375 /*! ModuleConcatenation bailout: Cannot concat with ./node_modules/babel-runtime/helpers/toConsumableArray.js (<- Module is not an ECMAScript module) */function(module,__webpack_exports__,__webpack_require__){"use strict";eval('// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/extends.js\nvar helpers_extends = __webpack_require__(31);\nvar extends_default = /*#__PURE__*/__webpack_require__.n(helpers_extends);\n\n// EXTERNAL MODULE: ./src/block/style.scss\nvar style = __webpack_require__(62);\n\n// EXTERNAL MODULE: ./src/block/editor.scss\nvar editor = __webpack_require__(63);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/toConsumableArray.js\nvar toConsumableArray = __webpack_require__(2);\nvar toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);\n\n// EXTERNAL MODULE: ./node_modules/babel-runtime/core-js/object/assign.js\nvar object_assign = __webpack_require__(1);\nvar assign_default = /*#__PURE__*/__webpack_require__.n(object_assign);\n\n// CONCATENATED MODULE: ./src/block/current-slider.js\n\n\nvar _wp$editor = wp.editor,\n MediaUpload = _wp$editor.MediaUpload,\n PlainText = _wp$editor.PlainText;\n\n\n/* harmony default export */ var current_slider = ({\n attributes: {\n id: {\n source: "attribute",\n selector: ".carousel.slide",\n attribute: "id"\n },\n testimonials: {\n source: "query",\n default: [],\n selector: "blockquote.testimonial",\n query: {\n image: {\n source: "attribute",\n selector: "img",\n attribute: "src"\n },\n index: {\n source: "text",\n selector: "span.testimonial-index"\n },\n content: {\n source: "text",\n selector: "span.testimonial-text"\n },\n author: {\n source: "text",\n selector: "span.testimonial-author span"\n },\n link: {\n source: "text",\n selector: ".testimonial-author-link"\n }\n }\n }\n },\n\n /**\n * The edit function describes the structure of your block in the context of the editor.\n * This represents what the editor will render when the block is used.\n *\n * The "edit" property must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n\n // The "edit" property must be a valid function.\n edit: function edit(props) {\n var testimonials = props.attributes.testimonials;\n\n\n if (!props.attributes.id) {\n var id = "testimonial" + Math.floor(Math.random() * 100);\n props.setAttributes({\n id: id\n });\n }\n\n var testimonialsList = testimonials.sort(function (a, b) {\n return a.index - b.index;\n }).map(function (testimonial) {\n return wp.element.createElement(\n "div",\n { className: "gts-testimonial-block" },\n wp.element.createElement(\n "p",\n null,\n wp.element.createElement(\n "span",\n null,\n "Insert Testmonial ",\n Number(testimonial.index) + 1,\n " Here:"\n ),\n wp.element.createElement(\n "span",\n {\n className: "remove-testimonial",\n onClick: function onClick() {\n var newTestimonials = testimonials.filter(function (item) {\n return item.index != testimonial.index;\n }).map(function (t) {\n if (t.index > testimonial.index) {\n t.index -= 1;\n }\n\n return t;\n });\n\n props.setAttributes({\n testimonials: newTestimonials\n });\n }\n },\n wp.element.createElement("i", { className: "fa fa-times" })\n )\n ),\n wp.element.createElement(\n "blockquote",\n { className: "wp-block-quote" },\n wp.element.createElement(PlainText, {\n className: "content-plain-text",\n style: { height: 58 },\n placeholder: "Testimonial Text",\n value: testimonial.content,\n autoFocus: true,\n onChange: function onChange(content) {\n var newObject = assign_default()({}, testimonial, {\n content: content\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n }),\n wp.element.createElement(\n "div",\n { className: "row" },\n wp.element.createElement(\n "div",\n { className: "gts__picture col-3" },\n wp.element.createElement(MediaUpload, {\n onSelect: function onSelect(media) {\n var image = media.sizes.medium ? media.sizes.medium.url : media.url;\n var newObject = assign_default()({}, testimonial, {\n image: image\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n },\n type: "image",\n value: testimonial.image,\n render: function render(_ref) {\n var open = _ref.open;\n return !!testimonial.image ? wp.element.createElement(\n "div",\n null,\n props.isSelected && wp.element.createElement(\n "div",\n { className: "gts__picture__actions" },\n wp.element.createElement(\n "a",\n {\n href: "#",\n onClick: function onClick() {\n var newObject = assign_default()({}, testimonial, {\n image: null\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n },\n "\\xD7 Remove"\n )\n ),\n wp.element.createElement("div", {\n className: "gts__picture__image",\n style: {\n backgroundImage: "url(" + testimonial.image + ")"\n },\n onClick: open\n })\n ) : wp.element.createElement(\n "a",\n {\n href: "#",\n className: "gts__picture__image",\n onClick: open\n },\n "Select Image"\n );\n }\n })\n ),\n wp.element.createElement(\n "div",\n { className: "col-9 mt-3" },\n wp.element.createElement(PlainText, {\n className: "author-plain-text",\n placeholder: "Author",\n value: testimonial.author,\n onChange: function onChange(author) {\n var newObject = assign_default()({}, testimonial, {\n author: author\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n }),\n wp.element.createElement(PlainText, {\n className: "link-plain-text",\n placeholder: "Link to Author Profile",\n value: testimonial.link,\n onChange: function onChange(link) {\n var newObject = assign_default()({}, testimonial, {\n link: link\n });\n props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(testimonials.filter(function (item) {\n return item.index != testimonial.index;\n })), [newObject])\n });\n }\n })\n )\n )\n )\n );\n });\n return wp.element.createElement(\n "div",\n { className: props.className },\n testimonialsList,\n wp.element.createElement(\n "button",\n {\n className: "add-more-testimonial",\n onClick: function onClick(content) {\n return props.setAttributes({\n testimonials: [].concat(toConsumableArray_default()(props.attributes.testimonials), [{\n index: props.attributes.testimonials.length,\n content: "",\n author: "",\n link: ""\n }])\n });\n }\n },\n "+"\n )\n );\n },\n\n /**\n * The save function defines the way in which the different attributes should be combined\n * into the final markup, which is then serialized by Gutenberg into post_content.\n *\n * The "save" property must be specified and must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n save: function save(props) {\n var _props$attributes = props.attributes,\n id = _props$attributes.id,\n testimonials = _props$attributes.testimonials;\n\n var carouselIndicators = testimonials.map(function (testimonial, index) {\n return wp.element.createElement("li", {\n "data-target": "#" + id,\n "data-slide-to": index,\n className: testimonial.index == 0 ? "active" : ""\n });\n });\n var testimonialsList = testimonials.map(function (testimonial) {\n var carouselClass = testimonial.index == 0 ? "carousel-item active" : "carousel-item";\n return wp.element.createElement(\n "div",\n { className: carouselClass, key: testimonial.index },\n wp.element.createElement(\n "blockquote",\n { className: "testimonial" },\n wp.element.createElement(\n "span",\n { className: "testimonial-index", style: { display: "none" } },\n testimonial.index\n ),\n testimonial.content && wp.element.createElement(\n "p",\n { className: "testimonial-text-container" },\n wp.element.createElement("i", { className: "fa fa-quote-left pull-left", "aria-hidden": "true" }),\n wp.element.createElement(\n "span",\n { className: "testimonial-text" },\n testimonial.content\n ),\n wp.element.createElement("i", { "class": "fa fa-quote-right pull-right", "aria-hidden": "true" })\n ),\n wp.element.createElement(\n "div",\n { className: "row" },\n testimonial.image && wp.element.createElement(\n "div",\n { className: "gts__picture col-3" },\n wp.element.createElement("img", { src: testimonial.image, style: { display: "none" } }),\n wp.element.createElement("div", {\n className: "gts__picture__image",\n style: {\n backgroundImage: "url(" + testimonial.image + ")"\n }\n })\n ),\n wp.element.createElement(\n "div",\n { className: "testimonial-author-container mt-3 col-9" },\n testimonial.author && wp.element.createElement(\n "p",\n { className: "testimonial-author-name" },\n wp.element.createElement(\n "span",\n { className: "testimonial-author" },\n "\\u2014 ",\n wp.element.createElement(\n "span",\n null,\n testimonial.author\n )\n )\n ),\n testimonial.link && wp.element.createElement(\n "p",\n { className: "testimonial-author-container" },\n wp.element.createElement(\n "a",\n {\n target: "_blank",\n rel: "noopener noreferrer",\n href: testimonial.link\n },\n wp.element.createElement("i", { className: "fas fa-user" }),\n wp.element.createElement(\n "span",\n { className: "testimonial-author-link" },\n testimonial.link\n )\n )\n )\n )\n )\n )\n );\n });\n if (testimonials.length > 0) {\n return wp.element.createElement(\n "div",\n { className: "testimonial-slider" },\n wp.element.createElement(\n "div",\n { className: "carousel slide", "data-ride": "carousel", id: id },\n wp.element.createElement(\n "ol",\n { className: "carousel-indicators" },\n carouselIndicators\n ),\n wp.element.createElement(\n "div",\n { className: "carousel-inner w-75 mx-auto" },\n testimonialsList\n ),\n wp.element.createElement(\n "a",\n {\n "class": "carousel-control-prev",\n href: "#" + id,\n role: "button",\n "data-slide": "prev"\n },\n wp.element.createElement(\n "span",\n { "class": "carousel-control-prev-icon", "aria-hidden": "true" },\n wp.element.createElement("i", { className: "fa fa-chevron-left" })\n ),\n wp.element.createElement(\n "span",\n { "class": "sr-only" },\n "Previous"\n )\n ),\n wp.element.createElement(\n "a",\n {\n "class": "carousel-control-next",\n href: "#" + id,\n role: "button",\n "data-slide": "next"\n },\n wp.element.createElement(\n "span",\n { "class": "carousel-control-next-icon", "aria-hidden": "true" },\n wp.element.createElement("i", { className: "fa fa-chevron-right" })\n ),\n wp.element.createElement(\n "span",\n { "class": "sr-only" },\n "Next"\n )\n )\n )\n );\n } else return null;\n }\n});\n// CONCATENATED MODULE: ./src/block/slider.js\n\n/**\n * BLOCK: my-block\n *\n * Registering a basic block with Gutenberg.\n * Simple block, renders and saves the same content without any interactivity.\n */\n\n// Import CSS.\n\n\n\nvar __ = wp.i18n.__; // The __() for internationalization.\nvar registerBlockType = wp.blocks.registerBlockType; // The registerBlockType() to register blocks.\n\n\n/**\n * Register: a Gutenberg Block.\n *\n * Registers a new block provided a unique name and an object defining its\n * behavior. Once registered, the block is made editor as an option to any\n * editor interface where blocks are implemented.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/\n * @param {string} name Block name.\n * @param {Object} settings Block settings.\n * @return {?WPBlock} The block, if it has been successfully\n * registered; otherwise `undefined`.\n */\nregisterBlockType("gts/testimonials-slider-block", extends_default()({\n // Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.\n title: __("Testimonials Slider"), // Block title.\n icon: "format-quote", // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.\n category: "common", // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.\n keywords: [__("Testimonials Slider"), __("gts")]\n\n}, current_slider)\n\n// deprecated blocks here\n\n);\n// CONCATENATED MODULE: ./src/index.js\n/**\n * Import blocks\n */\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiNjEuanMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvYmxvY2svY3VycmVudC1zbGlkZXIuanM/NTdhNiIsIndlYnBhY2s6Ly8vLi9zcmMvYmxvY2svc2xpZGVyLmpzP2NlOWEiLCJ3ZWJwYWNrOi8vLy4vc3JjL2luZGV4LmpzPzM3MDAiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tIFwiYmFiZWwtcnVudGltZS9oZWxwZXJzL3RvQ29uc3VtYWJsZUFycmF5XCI7XG5pbXBvcnQgX09iamVjdCRhc3NpZ24gZnJvbSBcImJhYmVsLXJ1bnRpbWUvY29yZS1qcy9vYmplY3QvYXNzaWduXCI7XG52YXIgX3dwJGVkaXRvciA9IHdwLmVkaXRvcixcbiAgICBNZWRpYVVwbG9hZCA9IF93cCRlZGl0b3IuTWVkaWFVcGxvYWQsXG4gICAgUGxhaW5UZXh0ID0gX3dwJGVkaXRvci5QbGFpblRleHQ7XG5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBhdHRyaWJ1dGVzOiB7XG4gICAgaWQ6IHtcbiAgICAgIHNvdXJjZTogXCJhdHRyaWJ1dGVcIixcbiAgICAgIHNlbGVjdG9yOiBcIi5jYXJvdXNlbC5zbGlkZVwiLFxuICAgICAgYXR0cmlidXRlOiBcImlkXCJcbiAgICB9LFxuICAgIHRlc3RpbW9uaWFsczoge1xuICAgICAgc291cmNlOiBcInF1ZXJ5XCIsXG4gICAgICBkZWZhdWx0OiBbXSxcbiAgICAgIHNlbGVjdG9yOiBcImJsb2NrcXVvdGUudGVzdGltb25pYWxcIixcbiAgICAgIHF1ZXJ5OiB7XG4gICAgICAgIGltYWdlOiB7XG4gICAgICAgICAgc291cmNlOiBcImF0dHJpYnV0ZVwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcImltZ1wiLFxuICAgICAgICAgIGF0dHJpYnV0ZTogXCJzcmNcIlxuICAgICAgICB9LFxuICAgICAgICBpbmRleDoge1xuICAgICAgICAgIHNvdXJjZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgc2VsZWN0b3I6IFwic3Bhbi50ZXN0aW1vbmlhbC1pbmRleFwiXG4gICAgICAgIH0sXG4gICAgICAgIGNvbnRlbnQ6IHtcbiAgICAgICAgICBzb3VyY2U6IFwidGV4dFwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcInNwYW4udGVzdGltb25pYWwtdGV4dFwiXG4gICAgICAgIH0sXG4gICAgICAgIGF1dGhvcjoge1xuICAgICAgICAgIHNvdXJjZTogXCJ0ZXh0XCIsXG4gICAgICAgICAgc2VsZWN0b3I6IFwic3Bhbi50ZXN0aW1vbmlhbC1hdXRob3Igc3BhblwiXG4gICAgICAgIH0sXG4gICAgICAgIGxpbms6IHtcbiAgICAgICAgICBzb3VyY2U6IFwidGV4dFwiLFxuICAgICAgICAgIHNlbGVjdG9yOiBcIi50ZXN0aW1vbmlhbC1hdXRob3ItbGlua1wiXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgLyoqXG4gICAqIFRoZSBlZGl0IGZ1bmN0aW9uIGRlc2NyaWJlcyB0aGUgc3RydWN0dXJlIG9mIHlvdXIgYmxvY2sgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGVkaXRvci5cbiAgICogVGhpcyByZXByZXNlbnRzIHdoYXQgdGhlIGVkaXRvciB3aWxsIHJlbmRlciB3aGVuIHRoZSBibG9jayBpcyB1c2VkLlxuICAgKlxuICAgKiBUaGUgXCJlZGl0XCIgcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGZ1bmN0aW9uLlxuICAgKlxuICAgKiBAbGluayBodHRwczovL3dvcmRwcmVzcy5vcmcvZ3V0ZW5iZXJnL2hhbmRib29rL2Jsb2NrLWFwaS9ibG9jay1lZGl0LXNhdmUvXG4gICAqL1xuXG4gIC8vIFRoZSBcImVkaXRcIiBwcm9wZXJ0eSBtdXN0IGJlIGEgdmFsaWQgZnVuY3Rpb24uXG4gIGVkaXQ6IGZ1bmN0aW9uIGVkaXQocHJvcHMpIHtcbiAgICB2YXIgdGVzdGltb25pYWxzID0gcHJvcHMuYXR0cmlidXRlcy50ZXN0aW1vbmlhbHM7XG5cblxuICAgIGlmICghcHJvcHMuYXR0cmlidXRlcy5pZCkge1xuICAgICAgdmFyIGlkID0gXCJ0ZXN0aW1vbmlhbFwiICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwKTtcbiAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICBpZDogaWRcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHZhciB0ZXN0aW1vbmlhbHNMaXN0ID0gdGVzdGltb25pYWxzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIHJldHVybiBhLmluZGV4IC0gYi5pbmRleDtcbiAgICB9KS5tYXAoZnVuY3Rpb24gKHRlc3RpbW9uaWFsKSB7XG4gICAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICBcImRpdlwiLFxuICAgICAgICB7IGNsYXNzTmFtZTogXCJndHMtdGVzdGltb25pYWwtYmxvY2tcIiB9LFxuICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICBcIkluc2VydCBUZXN0bW9uaWFsIFwiLFxuICAgICAgICAgICAgTnVtYmVyKHRlc3RpbW9uaWFsLmluZGV4KSArIDEsXG4gICAgICAgICAgICBcIiBIZXJlOlwiXG4gICAgICAgICAgKSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcInJlbW92ZS10ZXN0aW1vbmlhbFwiLFxuICAgICAgICAgICAgICBvbkNsaWNrOiBmdW5jdGlvbiBvbkNsaWNrKCkge1xuICAgICAgICAgICAgICAgIHZhciBuZXdUZXN0aW1vbmlhbHMgPSB0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5pbmRleCAhPSB0ZXN0aW1vbmlhbC5pbmRleDtcbiAgICAgICAgICAgICAgICB9KS5tYXAoZnVuY3Rpb24gKHQpIHtcbiAgICAgICAgICAgICAgICAgIGlmICh0LmluZGV4ID4gdGVzdGltb25pYWwuaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgdC5pbmRleCAtPSAxO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gdDtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgdGVzdGltb25pYWxzOiBuZXdUZXN0aW1vbmlhbHNcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBjbGFzc05hbWU6IFwiZmEgZmEtdGltZXNcIiB9KVxuICAgICAgICAgIClcbiAgICAgICAgKSxcbiAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgIFwiYmxvY2txdW90ZVwiLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiBcIndwLWJsb2NrLXF1b3RlXCIgfSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoUGxhaW5UZXh0LCB7XG4gICAgICAgICAgICBjbGFzc05hbWU6IFwiY29udGVudC1wbGFpbi10ZXh0XCIsXG4gICAgICAgICAgICBzdHlsZTogeyBoZWlnaHQ6IDU4IH0sXG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJUZXN0aW1vbmlhbCBUZXh0XCIsXG4gICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwuY29udGVudCxcbiAgICAgICAgICAgIGF1dG9Gb2N1czogdHJ1ZSxcbiAgICAgICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShjb250ZW50KSB7XG4gICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBjb250ZW50XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uaW5kZXggIT0gdGVzdGltb25pYWwuaW5kZXg7XG4gICAgICAgICAgICAgICAgfSkpLCBbbmV3T2JqZWN0XSlcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInJvd1wiIH0sXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZSBjb2wtM1wiIH0sXG4gICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChNZWRpYVVwbG9hZCwge1xuICAgICAgICAgICAgICAgIG9uU2VsZWN0OiBmdW5jdGlvbiBvblNlbGVjdChtZWRpYSkge1xuICAgICAgICAgICAgICAgICAgdmFyIGltYWdlID0gbWVkaWEuc2l6ZXMubWVkaXVtID8gbWVkaWEuc2l6ZXMubWVkaXVtLnVybCA6IG1lZGlhLnVybDtcbiAgICAgICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IGltYWdlXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9KSksIFtuZXdPYmplY3RdKVxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB0eXBlOiBcImltYWdlXCIsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHRlc3RpbW9uaWFsLmltYWdlLFxuICAgICAgICAgICAgICAgIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKF9yZWYpIHtcbiAgICAgICAgICAgICAgICAgIHZhciBvcGVuID0gX3JlZi5vcGVuO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuICEhdGVzdGltb25pYWwuaW1hZ2UgPyB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICAgICAgICAgIHByb3BzLmlzU2VsZWN0ZWQgJiYgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlX19hY3Rpb25zXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgICAgICBcImFcIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZjogXCIjXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6IGZ1bmN0aW9uIG9uQ2xpY2soKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIG5ld09iamVjdCA9IF9PYmplY3QkYXNzaWduKHt9LCB0ZXN0aW1vbmlhbCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IG51bGxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsczogW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpLCBbbmV3T2JqZWN0XSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXFx4RDcgUmVtb3ZlXCJcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZV9faW1hZ2VcIixcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZEltYWdlOiBcInVybChcIiArIHRlc3RpbW9uaWFsLmltYWdlICsgXCIpXCJcbiAgICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s6IG9wZW5cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICkgOiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgICAgIFwiYVwiLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgaHJlZjogXCIjXCIsXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImd0c19fcGljdHVyZV9faW1hZ2VcIixcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrOiBvcGVuXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIFwiU2VsZWN0IEltYWdlXCJcbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiY29sLTkgbXQtM1wiIH0sXG4gICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChQbGFpblRleHQsIHtcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IFwiYXV0aG9yLXBsYWluLXRleHRcIixcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcjogXCJBdXRob3JcIixcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwuYXV0aG9yLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShhdXRob3IpIHtcbiAgICAgICAgICAgICAgICAgIHZhciBuZXdPYmplY3QgPSBfT2JqZWN0JGFzc2lnbih7fSwgdGVzdGltb25pYWwsIHtcbiAgICAgICAgICAgICAgICAgICAgYXV0aG9yOiBhdXRob3JcbiAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgcHJvcHMuc2V0QXR0cmlidXRlcyh7XG4gICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsczogW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheSh0ZXN0aW1vbmlhbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW0uaW5kZXggIT0gdGVzdGltb25pYWwuaW5kZXg7XG4gICAgICAgICAgICAgICAgICAgIH0pKSwgW25ld09iamVjdF0pXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoUGxhaW5UZXh0LCB7XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lOiBcImxpbmstcGxhaW4tdGV4dFwiLFxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOiBcIkxpbmsgdG8gQXV0aG9yIFByb2ZpbGVcIixcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGVzdGltb25pYWwubGluayxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UobGluaykge1xuICAgICAgICAgICAgICAgICAgdmFyIG5ld09iamVjdCA9IF9PYmplY3QkYXNzaWduKHt9LCB0ZXN0aW1vbmlhbCwge1xuICAgICAgICAgICAgICAgICAgICBsaW5rOiBsaW5rXG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgIHByb3BzLnNldEF0dHJpYnV0ZXMoe1xuICAgICAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHM6IFtdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkodGVzdGltb25pYWxzLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmluZGV4ICE9IHRlc3RpbW9uaWFsLmluZGV4O1xuICAgICAgICAgICAgICAgICAgICB9KSksIFtuZXdPYmplY3RdKVxuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9KTtcbiAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgXCJkaXZcIixcbiAgICAgIHsgY2xhc3NOYW1lOiBwcm9wcy5jbGFzc05hbWUgfSxcbiAgICAgIHRlc3RpbW9uaWFsc0xpc3QsXG4gICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgIFwiYnV0dG9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzc05hbWU6IFwiYWRkLW1vcmUtdGVzdGltb25pYWxcIixcbiAgICAgICAgICBvbkNsaWNrOiBmdW5jdGlvbiBvbkNsaWNrKGNvbnRlbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBwcm9wcy5zZXRBdHRyaWJ1dGVzKHtcbiAgICAgICAgICAgICAgdGVzdGltb25pYWxzOiBbXS5jb25jYXQoX3RvQ29uc3VtYWJsZUFycmF5KHByb3BzLmF0dHJpYnV0ZXMudGVzdGltb25pYWxzKSwgW3tcbiAgICAgICAgICAgICAgICBpbmRleDogcHJvcHMuYXR0cmlidXRlcy50ZXN0aW1vbmlhbHMubGVuZ3RoLFxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCIsXG4gICAgICAgICAgICAgICAgYXV0aG9yOiBcIlwiLFxuICAgICAgICAgICAgICAgIGxpbms6IFwiXCJcbiAgICAgICAgICAgICAgfV0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIFwiK1wiXG4gICAgICApXG4gICAgKTtcbiAgfSxcblxuICAvKipcbiAgICogVGhlIHNhdmUgZnVuY3Rpb24gZGVmaW5lcyB0aGUgd2F5IGluIHdoaWNoIHRoZSBkaWZmZXJlbnQgYXR0cmlidXRlcyBzaG91bGQgYmUgY29tYmluZWRcbiAgICogaW50byB0aGUgZmluYWwgbWFya3VwLCB3aGljaCBpcyB0aGVuIHNlcmlhbGl6ZWQgYnkgR3V0ZW5iZXJnIGludG8gcG9zdF9jb250ZW50LlxuICAgKlxuICAgKiBUaGUgXCJzYXZlXCIgcHJvcGVydHkgbXVzdCBiZSBzcGVjaWZpZWQgYW5kIG11c3QgYmUgYSB2YWxpZCBmdW5jdGlvbi5cbiAgICpcbiAgICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvYmxvY2stZWRpdC1zYXZlL1xuICAgKi9cbiAgc2F2ZTogZnVuY3Rpb24gc2F2ZShwcm9wcykge1xuICAgIHZhciBfcHJvcHMkYXR0cmlidXRlcyA9IHByb3BzLmF0dHJpYnV0ZXMsXG4gICAgICAgIGlkID0gX3Byb3BzJGF0dHJpYnV0ZXMuaWQsXG4gICAgICAgIHRlc3RpbW9uaWFscyA9IF9wcm9wcyRhdHRyaWJ1dGVzLnRlc3RpbW9uaWFscztcblxuICAgIHZhciBjYXJvdXNlbEluZGljYXRvcnMgPSB0ZXN0aW1vbmlhbHMubWFwKGZ1bmN0aW9uICh0ZXN0aW1vbmlhbCwgaW5kZXgpIHtcbiAgICAgIHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJsaVwiLCB7XG4gICAgICAgIFwiZGF0YS10YXJnZXRcIjogXCIjXCIgKyBpZCxcbiAgICAgICAgXCJkYXRhLXNsaWRlLXRvXCI6IGluZGV4LFxuICAgICAgICBjbGFzc05hbWU6IHRlc3RpbW9uaWFsLmluZGV4ID09IDAgPyBcImFjdGl2ZVwiIDogXCJcIlxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgdmFyIHRlc3RpbW9uaWFsc0xpc3QgPSB0ZXN0aW1vbmlhbHMubWFwKGZ1bmN0aW9uICh0ZXN0aW1vbmlhbCkge1xuICAgICAgdmFyIGNhcm91c2VsQ2xhc3MgPSB0ZXN0aW1vbmlhbC5pbmRleCA9PSAwID8gXCJjYXJvdXNlbC1pdGVtIGFjdGl2ZVwiIDogXCJjYXJvdXNlbC1pdGVtXCI7XG4gICAgICByZXR1cm4gd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICBcImRpdlwiLFxuICAgICAgICB7IGNsYXNzTmFtZTogY2Fyb3VzZWxDbGFzcywga2V5OiB0ZXN0aW1vbmlhbC5pbmRleCB9LFxuICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgXCJibG9ja3F1b3RlXCIsXG4gICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWxcIiB9LFxuICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtaW5kZXhcIiwgc3R5bGU6IHsgZGlzcGxheTogXCJub25lXCIgfSB9LFxuICAgICAgICAgICAgdGVzdGltb25pYWwuaW5kZXhcbiAgICAgICAgICApLFxuICAgICAgICAgIHRlc3RpbW9uaWFsLmNvbnRlbnQgJiYgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJ0ZXN0aW1vbmlhbC10ZXh0LWNvbnRhaW5lclwiIH0sXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLXF1b3RlLWxlZnQgcHVsbC1sZWZ0XCIsIFwiYXJpYS1oaWRkZW5cIjogXCJ0cnVlXCIgfSksXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJ0ZXN0aW1vbmlhbC10ZXh0XCIgfSxcbiAgICAgICAgICAgICAgdGVzdGltb25pYWwuY29udGVudFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBcImNsYXNzXCI6IFwiZmEgZmEtcXVvdGUtcmlnaHQgcHVsbC1yaWdodFwiLCBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiIH0pXG4gICAgICAgICAgKSxcbiAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwicm93XCIgfSxcbiAgICAgICAgICAgIHRlc3RpbW9uaWFsLmltYWdlICYmIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJkaXZcIixcbiAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlIGNvbC0zXCIgfSxcbiAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFwiaW1nXCIsIHsgc3JjOiB0ZXN0aW1vbmlhbC5pbWFnZSwgc3R5bGU6IHsgZGlzcGxheTogXCJub25lXCIgfSB9KSxcbiAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU6IFwiZ3RzX19waWN0dXJlX19pbWFnZVwiLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kSW1hZ2U6IFwidXJsKFwiICsgdGVzdGltb25pYWwuaW1hZ2UgKyBcIilcIlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLWF1dGhvci1jb250YWluZXIgbXQtMyBjb2wtOVwiIH0sXG4gICAgICAgICAgICAgIHRlc3RpbW9uaWFsLmF1dGhvciAmJiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yLW5hbWVcIiB9LFxuICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgIFwic3BhblwiLFxuICAgICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yXCIgfSxcbiAgICAgICAgICAgICAgICAgIFwiXFx1MjAxNCBcIixcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIG51bGwsXG4gICAgICAgICAgICAgICAgICAgIHRlc3RpbW9uaWFsLmF1dGhvclxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgdGVzdGltb25pYWwubGluayAmJiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgICAgICAgICAgXCJwXCIsXG4gICAgICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwidGVzdGltb25pYWwtYXV0aG9yLWNvbnRhaW5lclwiIH0sXG4gICAgICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRhcmdldDogXCJfYmxhbmtcIixcbiAgICAgICAgICAgICAgICAgICAgcmVsOiBcIm5vb3BlbmVyIG5vcmVmZXJyZXJcIixcbiAgICAgICAgICAgICAgICAgICAgaHJlZjogdGVzdGltb25pYWwubGlua1xuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcImlcIiwgeyBjbGFzc05hbWU6IFwiZmFzIGZhLXVzZXJcIiB9KSxcbiAgICAgICAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLWF1dGhvci1saW5rXCIgfSxcbiAgICAgICAgICAgICAgICAgICAgdGVzdGltb25pYWwubGlua1xuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9KTtcbiAgICBpZiAodGVzdGltb25pYWxzLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXG4gICAgICAgIFwiZGl2XCIsXG4gICAgICAgIHsgY2xhc3NOYW1lOiBcInRlc3RpbW9uaWFsLXNsaWRlclwiIH0sXG4gICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICBcImRpdlwiLFxuICAgICAgICAgIHsgY2xhc3NOYW1lOiBcImNhcm91c2VsIHNsaWRlXCIsIFwiZGF0YS1yaWRlXCI6IFwiY2Fyb3VzZWxcIiwgaWQ6IGlkIH0sXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJvbFwiLFxuICAgICAgICAgICAgeyBjbGFzc05hbWU6IFwiY2Fyb3VzZWwtaW5kaWNhdG9yc1wiIH0sXG4gICAgICAgICAgICBjYXJvdXNlbEluZGljYXRvcnNcbiAgICAgICAgICApLFxuICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgIFwiZGl2XCIsXG4gICAgICAgICAgICB7IGNsYXNzTmFtZTogXCJjYXJvdXNlbC1pbm5lciB3LTc1IG14LWF1dG9cIiB9LFxuICAgICAgICAgICAgdGVzdGltb25pYWxzTGlzdFxuICAgICAgICAgICksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiY2xhc3NcIjogXCJjYXJvdXNlbC1jb250cm9sLXByZXZcIixcbiAgICAgICAgICAgICAgaHJlZjogXCIjXCIgKyBpZCxcbiAgICAgICAgICAgICAgcm9sZTogXCJidXR0b25cIixcbiAgICAgICAgICAgICAgXCJkYXRhLXNsaWRlXCI6IFwicHJldlwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwiY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb25cIiwgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiB9LFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLWNoZXZyb24tbGVmdFwiIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwic3Itb25seVwiIH0sXG4gICAgICAgICAgICAgIFwiUHJldmlvdXNcIlxuICAgICAgICAgICAgKVxuICAgICAgICAgICksXG4gICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgXCJhXCIsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiY2xhc3NcIjogXCJjYXJvdXNlbC1jb250cm9sLW5leHRcIixcbiAgICAgICAgICAgICAgaHJlZjogXCIjXCIgKyBpZCxcbiAgICAgICAgICAgICAgcm9sZTogXCJidXR0b25cIixcbiAgICAgICAgICAgICAgXCJkYXRhLXNsaWRlXCI6IFwibmV4dFwiXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgd3AuZWxlbWVudC5jcmVhdGVFbGVtZW50KFxuICAgICAgICAgICAgICBcInNwYW5cIixcbiAgICAgICAgICAgICAgeyBcImNsYXNzXCI6IFwiY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb25cIiwgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiB9LFxuICAgICAgICAgICAgICB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQoXCJpXCIsIHsgY2xhc3NOYW1lOiBcImZhIGZhLWNoZXZyb24tcmlnaHRcIiB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHdwLmVsZW1lbnQuY3JlYXRlRWxlbWVudChcbiAgICAgICAgICAgICAgXCJzcGFuXCIsXG4gICAgICAgICAgICAgIHsgXCJjbGFzc1wiOiBcInNyLW9ubHlcIiB9LFxuICAgICAgICAgICAgICBcIk5leHRcIlxuICAgICAgICAgICAgKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9IGVsc2UgcmV0dXJuIG51bGw7XG4gIH1cbn07IiwiaW1wb3J0IF9leHRlbmRzIGZyb20gXCJiYWJlbC1ydW50aW1lL2hlbHBlcnMvZXh0ZW5kc1wiO1xuLyoqXG4gKiBCTE9DSzogbXktYmxvY2tcbiAqXG4gKiBSZWdpc3RlcmluZyBhIGJhc2ljIGJsb2NrIHdpdGggR3V0ZW5iZXJnLlxuICogU2ltcGxlIGJsb2NrLCByZW5kZXJzIGFuZCBzYXZlcyB0aGUgc2FtZSBjb250ZW50IHdpdGhvdXQgYW55IGludGVyYWN0aXZpdHkuXG4gKi9cblxuLy8gIEltcG9ydCBDU1MuXG5pbXBvcnQgXCIuL3N0eWxlLnNjc3NcIjtcbmltcG9ydCBcIi4vZWRpdG9yLnNjc3NcIjtcblxudmFyIF9fID0gd3AuaTE4bi5fXzsgLy8gVGhlIF9fKCkgZm9yIGludGVybmF0aW9uYWxpemF0aW9uLlxudmFyIHJlZ2lzdGVyQmxvY2tUeXBlID0gd3AuYmxvY2tzLnJlZ2lzdGVyQmxvY2tUeXBlOyAvLyBUaGUgcmVnaXN0ZXJCbG9ja1R5cGUoKSB0byByZWdpc3RlciBibG9ja3MuXG5pbXBvcnQgY3VycmVudFNsaWRlciBmcm9tICcuL2N1cnJlbnQtc2xpZGVyJztcblxuLyoqXG4gKiBSZWdpc3RlcjogYSBHdXRlbmJlcmcgQmxvY2suXG4gKlxuICogUmVnaXN0ZXJzIGEgbmV3IGJsb2NrIHByb3ZpZGVkIGEgdW5pcXVlIG5hbWUgYW5kIGFuIG9iamVjdCBkZWZpbmluZyBpdHNcbiAqIGJlaGF2aW9yLiBPbmNlIHJlZ2lzdGVyZWQsIHRoZSBibG9jayBpcyBtYWRlIGVkaXRvciBhcyBhbiBvcHRpb24gdG8gYW55XG4gKiBlZGl0b3IgaW50ZXJmYWNlIHdoZXJlIGJsb2NrcyBhcmUgaW1wbGVtZW50ZWQuXG4gKlxuICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAgbmFtZSAgICAgQmxvY2sgbmFtZS5cbiAqIEBwYXJhbSAge09iamVjdH0gICBzZXR0aW5ncyBCbG9jayBzZXR0aW5ncy5cbiAqIEByZXR1cm4gez9XUEJsb2NrfSAgICAgICAgICBUaGUgYmxvY2ssIGlmIGl0IGhhcyBiZWVuIHN1Y2Nlc3NmdWxseVxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyZWQ7IG90aGVyd2lzZSBgdW5kZWZpbmVkYC5cbiAqL1xucmVnaXN0ZXJCbG9ja1R5cGUoXCJndHMvdGVzdGltb25pYWxzLXNsaWRlci1ibG9ja1wiLCBfZXh0ZW5kcyh7XG4gIC8vIEJsb2NrIG5hbWUuIEJsb2NrIG5hbWVzIG11c3QgYmUgc3RyaW5nIHRoYXQgY29udGFpbnMgYSBuYW1lc3BhY2UgcHJlZml4LiBFeGFtcGxlOiBteS1wbHVnaW4vbXktY3VzdG9tLWJsb2NrLlxuICB0aXRsZTogX18oXCJUZXN0aW1vbmlhbHMgU2xpZGVyXCIpLCAvLyBCbG9jayB0aXRsZS5cbiAgaWNvbjogXCJmb3JtYXQtcXVvdGVcIiwgLy8gQmxvY2sgaWNvbiBmcm9tIERhc2hpY29ucyDihpIgaHR0cHM6Ly9kZXZlbG9wZXIud29yZHByZXNzLm9yZy9yZXNvdXJjZS9kYXNoaWNvbnMvLlxuICBjYXRlZ29yeTogXCJjb21tb25cIiwgLy8gQmxvY2sgY2F0ZWdvcnkg4oCUIEdyb3VwIGJsb2NrcyB0b2dldGhlciBiYXNlZCBvbiBjb21tb24gdHJhaXRzIEUuZy4gY29tbW9uLCBmb3JtYXR0aW5nLCBsYXlvdXQgd2lkZ2V0cywgZW1iZWQuXG4gIGtleXdvcmRzOiBbX18oXCJUZXN0aW1vbmlhbHMgU2xpZGVyXCIpLCBfXyhcImd0c1wiKV1cblxufSwgY3VycmVudFNsaWRlcilcblxuLy8gZGVwcmVjYXRlZCBibG9ja3MgaGVyZVxuXG4pOyIsIi8qKlxuICogSW1wb3J0IGJsb2Nrc1xuICovXG5pbXBvcnQgJy4vYmxvY2svc2xpZGVyLmpzJzsiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUN4WkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUN4Q0E7QUFDQTtBQUNBOyIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///61\n')}, 376 376 /*!******************************!*\ 377 377 !*** ./src/block/style.scss ***!
Note: See TracChangeset
for help on using the changeset viewer.