UNPKG

mindstream-gravity-form

Version:

Mindstream Fork of Gravity Forms on React apps via the Wordpress API

2 lines 21.3 kB
"use strict";function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=void 0;var _react=_interopRequireWildcard(require("react")),_RenderField=_interopRequireDefault(require("./RenderField"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _getRequireWildcardCache(){if("function"!=typeof WeakMap)return null;var a=new WeakMap;return _getRequireWildcardCache=function(){return a},a}function _interopRequireWildcard(a){if(a&&a.__esModule)return a;if(null===a||"object"!==_typeof(a)&&"function"!=typeof a)return{default:a};var b=_getRequireWildcardCache();if(b&&b.has(a))return b.get(a);var c={},d=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var e in a)if(Object.prototype.hasOwnProperty.call(a,e)){var f=d?Object.getOwnPropertyDescriptor(a,e):null;f&&(f.get||f.set)?Object.defineProperty(c,e,f):c[e]=a[e]}return c["default"]=a,b&&b.set(a,c),c}function _slicedToArray(a,b){return _arrayWithHoles(a)||_iterableToArrayLimit(a,b)||_unsupportedIterableToArray(a,b)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function _iterableToArrayLimit(a,b){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(a)){var c=[],d=!0,e=!1,f=void 0;try{for(var g,h=a[Symbol.iterator]();!(d=(g=h.next()).done)&&(c.push(g.value),!(b&&c.length===b));d=!0);}catch(a){e=!0,f=a}finally{try{d||null==h["return"]||h["return"]()}finally{if(e)throw f}}return c}}function _arrayWithHoles(a){if(Array.isArray(a))return a}var divideFieldsIntoPages=function(a,b){for(var c,d=b.map(function(){return[]}),e=0;e<a.length;e++)c=d[a[e].pageNumber],d[a[e].pageNumber-1]&&("page"===a[e].type?d[a[e].pageNumber-2].push(a[e]):d[a[e].pageNumber-1].push(a[e]));return d},getMaxFieldId=function(a){for(var b=0,c=0;c<a.length;c++)parseInt(a[c].id)>b&&(b=parseInt(a[c].id));return b+1},fieldTypes=["checkbox","email","hidden","html","number","phone","radio","select","multiselect","text","textarea","website","page","date","fileupload","consent","password","section","custom"],honeyPotLables=["Name","Email","Phone","Comments"],honeypotLabel=honeyPotLables[Math.floor(Math.random()*Math.floor(4))],_default=function(a){var b=a.fields,c=a.formValues,d=a.updateForm,e=a.submitFailed,f=a.submitSuccess,g=a.touched,h=a.setTouched,i=a.pagination,j=a.activePage,k=a.prevStep,l=a.nextStep,m=a.isNextDisabled,n=a.checkConditionalLogic,o=a.saveStateToHtmlField,p=a.enableHoneypot,q=a.styledComponents,r=a.customComponents,s=a.unsetError,t=a.errors,u=a.dropzoneText,v=a.pageClicked,w=a.formatChars,x=i?divideFieldsIntoPages(b,i.pages):void 0,y=getMaxFieldId(b),z=(0,_react.useState)(""),A=_slicedToArray(z,2),B=A[0],C=A[1],D=(0,_react.useRef)();(0,_react.useEffect)(function(){D.current=j});var E=D.current;return _react["default"].createElement("div",{className:"form-fields".concat(i&&1<i.pages.length?" hasPages ".concat(v?"":" noPageClicked"):"")},i&&1<i.pages.length?i.pages.map(function(a,b){return _react["default"].createElement("div",{className:"page".concat(j===b+1?" active":"").concat(E&&b===E&&j!==b+1&&E!==j?" prevStep":""),key:"page-".concat(b)},a&&_react["default"].createElement("div",{className:"gf_step"},_react["default"].createElement("span",null,a)),x[b].map(function(a){return fieldTypes.includes(a.type)&&_react["default"].createElement(_RenderField["default"],{key:"".concat(a.formId,"-").concat(a.id),field:a,formValues:c,submitFailed:e,setTouched:h,submitSuccess:f,updateForm:d,touched:g,pages:i.pages.length,prevStep:k,nextStep:l,isNextDisabled:m,checkConditionalLogic:n,saveStateToHtmlField:o,styledComponents:q,customComponents:r,error:!!(t&&t[a.id])&&t[a.id],unsetError:s,dropzoneText:u,formatChars:w})}))}):b.map(function(a){return fieldTypes.includes(a.type)&&_react["default"].createElement(_RenderField["default"],{key:"".concat(a.formId,"-").concat(a.id),field:a,formValues:c,submitFailed:e,setTouched:h,submitSuccess:f,updateForm:d,touched:g,checkConditionalLogic:n,styledComponents:q,error:!!(t&&t[a.id])&&t[a.id],unsetError:s,dropzoneText:u,customComponents:r,formatChars:w})}),p&&_react["default"].createElement("div",{className:"form-field gform_validation_container"},_react["default"].createElement("label",{htmlFor:"input_".concat(y),className:"gf-label "},honeypotLabel),_react["default"].createElement("input",{type:"text",name:"input_".concat(y),id:"input_".concat(y),value:B,onChange:function onChange(a){return C(a.target.value)},autoComplete:"off"})))};exports["default"]=_default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Gb3JtRWxlbWVudHMvUmVuZGVyRmllbGRzLmpzeCJdLCJuYW1lcyI6WyJkaXZpZGVGaWVsZHNJbnRvUGFnZXMiLCJmaWVsZHMiLCJwYWdlcyIsImFyciIsInRtcEZpZWxkcyIsIm1hcCIsImkiLCJsZW5ndGgiLCJwYWdlTnVtYmVyIiwidHlwZSIsInB1c2giLCJnZXRNYXhGaWVsZElkIiwibWF4IiwicGFyc2VJbnQiLCJpZCIsImZpZWxkVHlwZXMiLCJob25leVBvdExhYmxlcyIsImhvbmV5cG90TGFiZWwiLCJNYXRoIiwiZmxvb3IiLCJyYW5kb20iLCJwcm9wcyIsImZvcm1WYWx1ZXMiLCJ1cGRhdGVGb3JtIiwic3VibWl0RmFpbGVkIiwic3VibWl0U3VjY2VzcyIsInRvdWNoZWQiLCJzZXRUb3VjaGVkIiwicGFnaW5hdGlvbiIsImFjdGl2ZVBhZ2UiLCJwcmV2U3RlcCIsIm5leHRTdGVwIiwiaXNOZXh0RGlzYWJsZWQiLCJjaGVja0NvbmRpdGlvbmFsTG9naWMiLCJzYXZlU3RhdGVUb0h0bWxGaWVsZCIsImVuYWJsZUhvbmV5cG90Iiwic3R5bGVkQ29tcG9uZW50cyIsImN1c3RvbUNvbXBvbmVudHMiLCJ1bnNldEVycm9yIiwiZXJyb3JzIiwiZHJvcHpvbmVUZXh0IiwicGFnZUNsaWNrZWQiLCJmb3JtYXRDaGFycyIsImRpdmlkZWRGaWVsZHMiLCJtYXhJRCIsImhvbmV5cG90VmFsdWUiLCJzZXRIb25leXBvdFZhbHVlIiwicHJldlN0ZXB0UmVmIiwiY3VycmVudCIsInByZXZDb3VudCIsInBhZ2UiLCJpbmRleCIsImZpZWxkIiwiaW5jbHVkZXMiLCJmb3JtSWQiLCJlIiwidGFyZ2V0IiwidmFsdWUiXSwibWFwcGluZ3MiOiJxekVBR01BLENBQUFBLHFCQUFxQixDQUFHLFNBQUNDLENBQUQsQ0FBU0MsQ0FBVCxDQUFtQixDQUcvQyxPQUNRQyxDQUFBQSxDQURSLENBRk1DLENBQVMsQ0FBR0YsQ0FBSyxDQUFDRyxHQUFOLENBQVUsaUJB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eUNBQU8sT0FBTyxpQkFBV1MsQ0FBWCxDQUFkLENBQWtDLFNBQVMsQ0FBQyxXQUE1QyxFQUNHM0IsYUFESCxDQURGLENBSUUseUNBQ0UsSUFBSSxDQUFDLE1BRFAsQ0FFRSxJQUFJLGlCQUFXMkIsQ0FBWCxDQUZOLENBR0UsRUFBRSxpQkFBV0EsQ0FBWCxDQUhKLENBSUUsS0FBSyxDQUFFQyxDQUpULENBS0UsUUFBUSxDQUFFLGtCQUFDVSxDQUFELFFBQU9ULENBQUFBLENBQWdCLENBQUNTLENBQUMsQ0FBQ0MsTUFBRixDQUFTQyxLQUFWLENBQXZCLENBTFosQ0FNRSxZQUFZLENBQUMsS0FOZixFQUpGLENBL0VKLENBK0ZILEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlU3RhdGUsIHVzZVJlZiwgdXNlRWZmZWN0IH0gZnJvbSBcInJlYWN0XCI7XHJcbmltcG9ydCBSZW5kZXJGaWVsZCBmcm9tIFwiLi9SZW5kZXJGaWVsZFwiO1xyXG5cclxuY29uc3QgZGl2aWRlRmllbGRzSW50b1BhZ2VzID0gKGZpZWxkcywgcGFnZXMpID0+IHtcclxuICBjb25zdCB0bXBGaWVsZHMgPSBwYWdlcy5tYXAoKGl0ZW0pID0+IFtdKTtcclxuXHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBmaWVsZHMubGVuZ3RoOyBpKyspIHtcclxuICAgIGNvbnN0IGFyciA9IHRtcEZpZWxkc1tmaWVsZHNbaV0ucGFnZU51bWJlcl07XHJcbiAgICBpZiAodG1wRmllbGRzW2ZpZWxkc1tpXS5wYWdlTnVtYmVyIC0gMV0pIHtcclxuICAgICAgLy8gbW92ZSBwYWdlIGZpZWxkIHRvIHRoZSBmaXJzdCBncm91cFxyXG4gICAgICBpZiAoZmllbGRzW2ldLnR5cGUgPT09IFwicGFnZVwiKSB7XHJcbiAgICAgICAgdG1wRmllbGRzW2ZpZWxkc1tpXS5wYWdlTnVtYmVyIC0gMl0ucHVzaChmaWVsZHNbaV0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRtcEZpZWxkc1tmaWVsZHNbaV0ucGFnZU51bWJlciAtIDFdLnB1c2goZmllbGRzW2ldKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gdG1wRmllbGRzO1xyXG59O1xyXG5cclxuY29uc3QgZ2V0TWF4RmllbGRJZCA9IChmaWVsZHMpID0+IHtcclxuICBsZXQgbWF4ID0gMDtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGZpZWxkcy5sZW5ndGg7IGkrKykge1xyXG4gICAgaWYgKHBhcnNlSW50KGZpZWxkc1tpXS5pZCkgPiBtYXgpIHtcclxuICAgICAgbWF4ID0gcGFyc2VJbnQoZmllbGRzW2ldLmlkKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG1heCArIDE7XHJcbn07XHJcblxyXG5jb25zdCBmaWVsZFR5cGVzID0gW1xyXG4gIFwiY2hlY2tib3hcIixcclxuICBcImVtYWlsXCIsXHJcbiAgXCJoaWRkZW5cIixcclxuICBcImh0bWxcIixcclxuICBcIm51bWJlclwiLFxyXG4gIFwicGhvbmVcIixcclxuICBcInJhZGlvXCIsXHJcbiAgXCJzZWxlY3RcIixcclxuICBcIm11bHRpc2VsZWN0XCIsXHJcbiAgXCJ0ZXh0XCIsXHJcbiAgXCJ0ZXh0YXJlYVwiLFxyXG4gIFwid2Vic2l0ZVwiLFxyXG4gIFwicGFnZVwiLFxyXG4gIFwiZGF0ZVwiLFxyXG4gIFwiZmlsZXVwbG9hZFwiLFxyXG4gIFwiY29uc2VudFwiLFxyXG4gIFwicGFzc3dvcmRcIixcclxuICBcInNlY3Rpb25cIixcclxuICBcImN1c3RvbVwiLFxyXG5dO1xyXG5cclxuY29uc3QgaG9uZXlQb3RMYWJsZXMgPSBbXCJOYW1lXCIsIFwiRW1haWxcIiwgXCJQaG9uZVwiLCBcIkNvbW1lbnRzXCJdO1xyXG5jb25zdCBob25leXBvdExhYmVsID0gaG9uZXlQb3RMYWJsZXNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcig0KSldO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKHByb3BzKSA9PiB7XHJcbiAgY29uc3Qge1xyXG4gICAgZmllbGRzLFxyXG4gICAgZm9ybVZhbHVlcyxcclxuICAgIHVwZGF0ZUZvcm0sXHJcbiAgICBzdWJtaXRGYWlsZWQsXHJcbiAgICBzdWJtaXRTdWNjZXNzLFxyXG4gICAgdG91Y2hlZCxcclxuICAgIHNldFRvdWNoZWQsXHJcbiAgICBwYWdpbmF0aW9uLFxyXG4gICAgYWN0aXZlUGFnZSxcclxuICAgIHByZXZTdGVwLFxyXG4gICAgbmV4dFN0ZXAsXHJcbiAgICBpc05leHREaXNhYmxlZCxcclxuICAgIGNoZWNrQ29uZGl0aW9uYWxMb2dpYyxcclxuICAgIHNhdmVTdGF0ZVRvSHRtbEZpZWxkLFxyXG4gICAgZW5hYmxlSG9uZXlwb3QsXHJcbiAgICBzdHlsZWRDb21wb25lbnRzLFxyXG4gICAgY3VzdG9tQ29tcG9uZW50cyxcclxuICAgIHVuc2V0RXJyb3IsXHJcbiAgICBlcnJvcnMsXHJcbiAgICBkcm9wem9uZVRleHQsXHJcbiAgICBwYWdlQ2xpY2tlZCxcclxuICAgIGZvcm1hdENoYXJzLFxyXG4gIH0gPSBwcm9wcztcclxuXHJcbiAgLy8gZ2V0IHBhZ2UgaW5kZXhlc1xyXG4gIGNvbnN0IGRpdmlkZWRGaWVsZHMgPSBwYWdpbmF0aW9uXHJcbiAgICA/IGRpdmlkZUZpZWxkc0ludG9QYWdlcyhmaWVsZHMsIHBhZ2luYXRpb24ucGFnZXMpXHJcbiAgICA6IHVuZGVmaW5lZDtcclxuICBjb25zdCBtYXhJRCA9IGdldE1heEZpZWxkSWQoZmllbGRzKTtcclxuICBjb25zdCBbaG9uZXlwb3RWYWx1ZSwgc2V0SG9uZXlwb3RWYWx1ZV0gPSB1c2VTdGF0ZShcIlwiKTtcclxuXHJcbiAgY29uc3QgcHJldlN0ZXB0UmVmID0gdXNlUmVmKCk7XHJcbiAgdXNlRWZmZWN0KCgpID0+IHtcclxuICAgIHByZXZTdGVwdFJlZi5jdXJyZW50ID0gYWN0aXZlUGFnZTtcclxuICB9KTtcclxuICBjb25zdCBwcmV2Q291bnQgPSBwcmV2U3RlcHRSZWYuY3VycmVudDtcclxuXHJcbiAgcmV0dXJuIChcclxuICAgIDxkaXZcclxuICAgICAgY2xhc3NOYW1lPXtgZm9ybS1maWVsZHMke1xyXG4gICAgICAgIHBhZ2luYXRpb24gJiYgcGFnaW5hdGlvbi5wYWdlcy5sZW5ndGggPiAxXHJcbiAgICAgICAgICA/IGAgaGFzUGFnZXMgJHshcGFnZUNsaWNrZWQgPyBcIiBub1BhZ2VDbGlja2VkXCIgOiBcIlwifWBcclxuICAgICAgICAgIDogXCJcIlxyXG4gICAgICB9YH1cclxuICAgID5cclxuICAgICAge3BhZ2luYXRpb24gJiYgcGFnaW5hdGlvbi5wYWdlcy5sZW5ndGggPiAxXHJcbiAgICAgICAgPyBwYWdpbmF0aW9uLnBhZ2VzLm1hcCgocGFnZSwgaW5kZXgpID0+IChcclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YHBhZ2Uke2FjdGl2ZVBhZ2UgPT09IGluZGV4ICsgMSA/IFwiIGFjdGl2ZVwiIDogXCJcIn0ke1xyXG4gICAgICAgICAgICAgICAgcHJldkNvdW50ICYmXHJcbiAgICAgICAgICAgICAgICBpbmRleCA9PT0gcHJldkNvdW50ICYmXHJcbiAgICAgICAgICAgICAgICBhY3RpdmVQYWdlICE9PSBpbmRleCArIDEgJiZcclxuICAgICAgICAgICAgICAgIHByZXZDb3VudCAhPT0gYWN0aXZlUGFnZVxyXG4gICAgICAgICAgICAgICAgICA/IFwiIHByZXZTdGVwXCJcclxuICAgICAgICAgICAgICAgICAgOiBcIlwiXHJcbiAgICAgICAgICAgICAgfWB9XHJcbiAgICAgICAgICAgICAga2V5PXtgcGFnZS0ke2luZGV4fWB9XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICB7cGFnZSAmJiAoXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdmX3N0ZXBcIj5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4+e3BhZ2V9PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgICB7ZGl2aWRlZEZpZWxkc1tpbmRleF0ubWFwKFxyXG4gICAgICAgICAgICAgICAgKGZpZWxkKSA9PlxyXG4gICAgICAgICAgICAgICAgICBmaWVsZFR5cGVzLmluY2x1ZGVzKGZpZWxkLnR5cGUpICYmIChcclxuICAgICAgICAgICAgICAgICAgICA8UmVuZGVyRmllbGRcclxuICAgICAgICAgICAgICAgICAgICAgIGtleT17YCR7ZmllbGQuZm9ybUlkfS0ke2ZpZWxkLmlkfWB9XHJcbiAgICAgICAgICAgICAgICAgICAgICBmaWVsZD17ZmllbGR9XHJcbiAgICAgICAgICAgICAgICAgICAgICBmb3JtVmFsdWVzPXtmb3JtVmFsdWVzfVxyXG4gICAgICAgICAgICAgICAgICAgICAgc3VibWl0RmFpbGVkPXtzdWJtaXRGYWlsZWR9XHJcbiAgICAgICAgICAgICAgICAgICAgICBzZXRUb3VjaGVkPXtzZXRUb3VjaGVkfVxyXG4gICAgICAgICAgICAgICAgICAgICAgc3VibWl0U3VjY2Vzcz17c3VibWl0U3VjY2Vzc31cclxuICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZUZvcm09e3VwZGF0ZUZvcm19XHJcbiAgICAgICAgICAgICAgICAgICAgICB0b3VjaGVkPXt0b3VjaGVkfVxyXG4gICAgICAgICAgICAgICAgICAgICAgcGFnZXM9e3BhZ2luYXRpb24ucGFnZXMubGVuZ3RofVxyXG4gICAgICAgICAgICAgICAgICAgICAgcHJldlN0ZXA9e3ByZXZTdGVwfVxyXG4gICAgICAgICAgICAgICAgICAgICAgbmV4dFN0ZXA9e25leHRTdGVwfVxyXG4gICAgICAgICAgICAgICAgICAgICAgaXNOZXh0RGlzYWJsZWQ9e2lzTmV4dERpc2FibGVkfVxyXG4gICAgICAgICAgICAgICAgICAgICAgY2hlY2tDb25kaXRpb25hbExvZ2ljPXtjaGVja0NvbmRpdGlvbmFsTG9naWN9XHJcbiAgICAgICAgICAgICAgICAgICAgICBzYXZlU3RhdGVUb0h0bWxGaWVsZD17c2F2ZVN0YXRlVG9IdG1sRmllbGR9XHJcbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZWRDb21wb25lbnRzPXtzdHlsZWRDb21wb25lbnRzfVxyXG4gICAgICAgICAgICAgICAgICAgICAgY3VzdG9tQ29tcG9uZW50cz17Y3VzdG9tQ29tcG9uZW50c31cclxuICAgICAgICAgICAgICAgICAgICAgIGVycm9yPXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JzICYmIGVycm9yc1tmaWVsZC5pZF0gPyBlcnJvcnNbZmllbGQuaWRdIDogZmFsc2VcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIHVuc2V0RXJyb3I9e3Vuc2V0RXJyb3J9XHJcbiAgICAgICAgICAgICAgICAgICAgICBkcm9wem9uZVRleHQ9e2Ryb3B6b25lVGV4dH1cclxuICAgICAgICAgICAgICAgICAgICAgIGZvcm1hdENoYXJzPXtmb3JtYXRDaGFyc31cclxuICAgICAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgKX1cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICApKVxyXG4gICAgICAgIDogZmllbGRzLm1hcChcclxuICAgICAgICAgICAgKGZpZWxkKSA9PlxyXG4gICAgICAgICAgICAgIGZpZWxkVHlwZXMuaW5jbHVkZXMoZmllbGQudHlwZSkgJiYgKFxyXG4gICAgICAgICAgICAgICAgPFJlbmRlckZpZWxkXHJcbiAgICAgICAgICAgICAgICAgIGtleT17YCR7ZmllbGQuZm9ybUlkfS0ke2ZpZWxkLmlkfWB9XHJcbiAgICAgICAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cclxuICAgICAgICAgICAgICAgICAgZm9ybVZhbHVlcz17Zm9ybVZhbHVlc31cclxuICAgICAgICAgICAgICAgICAgc3VibWl0RmFpbGVkPXtzdWJtaXRGYWlsZWR9XHJcbiAgICAgICAgICAgICAgICAgIHNldFRvdWNoZWQ9e3NldFRvdWNoZWR9XHJcbiAgICAgICAgICAgICAgICAgIHN1Ym1pdFN1Y2Nlc3M9e3N1Ym1pdFN1Y2Nlc3N9XHJcbiAgICAgICAgICAgICAgICAgIHVwZGF0ZUZvcm09e3VwZGF0ZUZvcm19XHJcbiAgICAgICAgICAgICAgICAgIHRvdWNoZWQ9e3RvdWNoZWR9XHJcbiAgICAgICAgICAgICAgICAgIGNoZWNrQ29uZGl0aW9uYWxMb2dpYz17Y2hlY2tDb25kaXRpb25hbExvZ2ljfVxyXG4gICAgICAgICAgICAgICAgICBzdHlsZWRDb21wb25lbnRzPXtzdHlsZWRDb21wb25lbnRzfVxyXG4gICAgICAgICAgICAgICAgICBlcnJvcj17ZXJyb3JzICYmIGVycm9yc1tmaWVsZC5pZF0gPyBlcnJvcnNbZmllbGQuaWRdIDogZmFsc2V9XHJcbiAgICAgICAgICAgICAgICAgIHVuc2V0RXJyb3I9e3Vuc2V0RXJyb3J9XHJcbiAgICAgICAgICAgICAgICAgIGRyb3B6b25lVGV4dD17ZHJvcHpvbmVUZXh0fVxyXG4gICAgICAgICAgICAgICAgICBjdXN0b21Db21wb25lbnRzPXtjdXN0b21Db21wb25lbnRzfVxyXG4gICAgICAgICAgICAgICAgICBmb3JtYXRDaGFycz17Zm9ybWF0Q2hhcnN9XHJcbiAgICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICl9XHJcbiAgICAgIHtlbmFibGVIb25leXBvdCAmJiAoXHJcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmb3JtLWZpZWxkIGdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyXCI+XHJcbiAgICAgICAgICA8bGFiZWwgaHRtbEZvcj17YGlucHV0XyR7bWF4SUR9YH0gY2xhc3NOYW1lPVwiZ2YtbGFiZWwgXCI+XHJcbiAgICAgICAgICAgIHtob25leXBvdExhYmVsfVxyXG4gICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgIG5hbWU9e2BpbnB1dF8ke21heElEfWB9XHJcbiAgICAgICAgICAgIGlkPXtgaW5wdXRfJHttYXhJRH1gfVxyXG4gICAgICAgICAgICB2YWx1ZT17aG9uZXlwb3RWYWx1ZX1cclxuICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBzZXRIb25leXBvdFZhbHVlKGUudGFyZ2V0LnZhbHVlKX1cclxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICl9XHJcbiAgICA8L2Rpdj5cclxuICApO1xyXG59O1xyXG4iXX0=