mindstream-gravity-form
Version:
Mindstream Fork of Gravity Forms on React apps via the Wordpress API
2 lines • 82 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"RenderFields",{enumerable:!0,get:function get(){return _RenderFields["default"]}}),Object.defineProperty(exports,"FormError",{enumerable:!0,get:function get(){return _FormError["default"]}}),Object.defineProperty(exports,"FormConfirmation",{enumerable:!0,get:function get(){return _FormConfirmation["default"]}}),Object.defineProperty(exports,"validateField",{enumerable:!0,get:function get(){return _validation.validateField}}),Object.defineProperty(exports,"Submit",{enumerable:!0,get:function get(){return _Submit["default"]}}),exports["default"]=void 0;var _react=_interopRequireWildcard(require("react")),_isomorphicUnfetch=_interopRequireDefault(require("isomorphic-unfetch")),_RenderFields=_interopRequireDefault(require("./FormElements/RenderFields")),_FormError=_interopRequireDefault(require("./FormElements/FormError")),_FormConfirmation=_interopRequireDefault(require("./FormElements/FormConfirmation")),_validation=require("./Helpers/validation"),_utils=require("./Helpers/utils"),_Submit=_interopRequireDefault(require("./FormElements/Submit"));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 _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)}function _createForOfIteratorHelper(a,b){var c;if("undefined"==typeof Symbol||null==a[Symbol.iterator]){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=a[Symbol.iterator]()},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function asyncGeneratorStep(a,b,c,d,e,f,g){try{var h=a[f](g),i=h.value}catch(a){return void c(a)}h.done?b(i):Promise.resolve(i).then(d,e)}function _asyncToGenerator(a){return function(){var b=this,c=arguments;return new Promise(function(d,e){function f(a){asyncGeneratorStep(h,d,e,f,g,"next",a)}function g(a){asyncGeneratorStep(h,d,e,f,g,"throw",a)}var h=a.apply(b,c);f(void 0)})}}function _toConsumableArray(a){return _arrayWithoutHoles(a)||_iterableToArray(a)||_unsupportedIterableToArray(a)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread 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 _iterableToArray(a){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(a))return Array.from(a)}function _arrayWithoutHoles(a){if(Array.isArray(a))return _arrayLikeToArray(a)}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 ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,c.key,c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),a}function _inherits(a,b){if("function"!=typeof b&&null!==b)throw new TypeError("Super expression must either be null or a function");a.prototype=Object.create(b&&b.prototype,{constructor:{value:a,writable:!0,configurable:!0}}),b&&_setPrototypeOf(a,b)}function _setPrototypeOf(a,b){return _setPrototypeOf=Object.setPrototypeOf||function(a,b){return a.__proto__=b,a},_setPrototypeOf(a,b)}function _createSuper(a){var b=_isNativeReflectConstruct();return function(){var c,d=_getPrototypeOf(a);if(b){var e=_getPrototypeOf(this).constructor;c=Reflect.construct(d,arguments,e)}else c=d.apply(this,arguments);return _possibleConstructorReturn(this,c)}}function _possibleConstructorReturn(a,b){return b&&("object"===_typeof(b)||"function"==typeof b)?b:_assertThisInitialized(a)}function _assertThisInitialized(a){if(void 0===a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return a}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(a){return!1}}function _getPrototypeOf(a){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(a){return a.__proto__||Object.getPrototypeOf(a)},_getPrototypeOf(a)}function _defineProperty(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}var GravityForm=function(a){function b(a){var d;return _classCallCheck(this,b),d=c.call(this,a),_defineProperty(_assertThisInitialized(d),"getFieldPrepopulatedValue",function(a,b,c){var d,e=!1,f=a.inputName&&b&&b[a.inputName];if(c&&c[a.id]?e=!0:c&&a.inputs&&a.inputs.some(function(a){c[a.id]&&(e=!0)}),"checkbox"===a.type)d=a.choices.filter(function(c){return f?c.value===b[a.inputName]:c.isSelected}).map(function(a){return a.value}),e&&(d=a.inputs.filter(function(a){return c[a.id]}).map(function(a){return a.label}));else if("radio"===a.type){if(f)d=b[a.inputName];else{var g=a.choices.find(function(a){return a.isSelected});d=g?g.value:""}}else if("select"===a.type){var h=a.choices.filter(function(c){return f?c.value===b[a.inputName]:c.isSelected}).map(function(a){return{value:a.value,label:a.text}});d=h&&0<h.length?h[0]:""}else d=f?b[a.inputName]:e?c[a.id]:a.defaultValue;return d}),_defineProperty(_assertThisInitialized(d),"updateFieldsValuesBasedOnEntry",function(a){for(var b,c=d.state,e=c.formValues,f=c.formData,g=Object.keys(e),h=!1,j=_objectSpread({},e),k=function(b){var c=g[b];if(a[c]){var i=f.fields.filter(function(a){return a.id==c});if(!i[0])return"continue";var k=d.getFieldPrepopulatedValue(i[0],[],a);k&&e[c]&&e[c].value&&e[c].value!=k&&(j[c].value=k,h=!0)}},l=0;l<g.length;l++)b=k(l),"continue"===b;h&&d.setState({formValues:j})}),_defineProperty(_assertThisInitialized(d),"setTouched",function(a){d.setState({touched:_objectSpread(_objectSpread({},d.state.touched),{},_defineProperty({},a,!0))})}),_defineProperty(_assertThisInitialized(d),"unsetError",function(a){var b=d.state.errorMessages;!b||b[a]&&(delete b[a],d.setState({errorMessages:b}))}),_defineProperty(_assertThisInitialized(d),"checkInputMaskValue",function(a,b){var c,e=b.inputMaskValue,f=b.inputMask;if(!e||!f)return a;var g=d.state.formatChars,h=[];null===(c=e.split(""))||void 0===c?void 0:c.map(function(a){g[a]?h.push(new RegExp(g[a])):h.push(null)});var i=0<h.length&&a.split("").every(function(a,b){return null===h[b]||h[b].test(a)});return i?a:""}),_defineProperty(_assertThisInitialized(d),"updateFormHandler",function(a,b){var c,e=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2],f=d.state,g=f.formValues,h=f.conditioanlIds,j=f.conditionFields,k=b.id,l=b.type,m=b.isRequired;if("checkbox"===b.type){var n=_toConsumableArray(g[b.id].value),o=n.indexOf(a.target.value);-1<o?n.splice(o,1):n.push(a.target.value),c=n}else if("date"==b.type&&"datepicker"!==b.dateType){var p=b.subId,q=b.dateLabel,r=_toConsumableArray(g[b.id].value);r[p]={val:a.target.value,label:q},c=r}else if("consent"==b.type)c=a.target?a.target.checked:"null";else if("password"===b.type||"email"===b.type&&b.emailConfirmEnabled){var s=b.subId,t=g[b.id]&&g[b.id].value?_toConsumableArray(g[b.id].value):[];t[s]={val:a.target.value},c=t}else c=a.target?a.target.value:"null";"text"===l&&-1<b.cssClass.indexOf("iban")&&(l="iban");var u=b.customValidateField?b.customValidateField(c,b):(0,_validation.validateField)(c,b);if(-1!==h.indexOf(k)){g[k].value=c;for(var x=0;x<j.length;x++){var v=j[x].id,w=d.checkConditionalLogic(j[x].conditionalLogic,g);g[v].hideField=w}}c=e?d.checkInputMaskValue(c,b):c,console.log("formValues",g),d.setState({formValues:_objectSpread(_objectSpread({},g),{},_defineProperty({},k,{value:c,id:k,valid:u,label:b.label,pageNumber:b.pageNumber,cssClass:b.cssClass,isRequired:b.isRequired}))},function(){var a=d.props,e=a.onChange,f=a.onChangeField;e&&e(d.state.formValues),f&&f(_defineProperty({},k,{value:c,id:k,valid:u,label:b.label,pageNumber:b.pageNumber,cssClass:b.cssClass,isRequired:b.isRequired}))})}),_defineProperty(_assertThisInitialized(d),"scrollToConfirmation",function(){var a=d.props,b=a.onChangePage,c=a.jumpToConfirmation;if(b&&b(),c){var e=!!d.wrapperRef&&d.wrapperRef.getBoundingClientRect();if(e&&window){var f=window.pageYOffset||document.documentElement.scrollTop;window.scrollTo({top:f+e.top-100})}}}),_defineProperty(_assertThisInitialized(d),"onSubmit",function(){var a=_asyncToGenerator(regeneratorRuntime.mark(function a(b){var c,e,f,g,h,i,j,k,l;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:c=d.props.onSubmit,e=new FormData(b.target),b.preventDefault(),c?c(e):(d.setState({submitting:!0,submitSuccess:!1,submitFailed:!1,confirmationMessage:!1,errorMessages:!1}),f=d.props,g=f.formID,h=f.backendUrl,i=f.jumpToConfirmation,j=f.onSubmitSuccess,k=f.onError,l=h.substring(0,h.indexOf("/wp-json")),(0,_isomorphicUnfetch["default"])("".concat(l,"/wp-json/gf/v2/forms/").concat(g,"/submissions"),{method:"POST",body:e}).then(function(a){return a.json()}).then(function(a){if(a&&a.is_valid){if(j){var g=j(a);if(!g)return!1}var b=a.confirmation_message,c=b||!1,e=c.type,f=c.link;if(e&&f&&"redirect"===e&&"undefined"!=typeof window)return window.location.replace(f),!1;d.setState({submitting:!1,submitSuccess:!0,confirmationMessage:a.confirmation_message}),i&&d.scrollToConfirmation()}else throw{response:a}})["catch"](function(a){var b=a&&a.response&&a.response.validation_messages?a.response.validation_messages:"Something went wrong";k?(k(b),d.setState({submitting:!1,submitFailed:!0})):d.setState({submitting:!1,submitFailed:!0,errorMessages:b}),i&&d.scrollToConfirmation()}));case 4:case"end":return a.stop();}},a)}));return function(){return a.apply(this,arguments)}}()),_defineProperty(_assertThisInitialized(d),"getNextStep",function(a){var b=d.state,c=b.formValues,e=b.pages,f=a+1,g=e[a-1];return!!c[g]&&(!0===c[g].hideField&&(f=d.getNextStep(f)),f)}),_defineProperty(_assertThisInitialized(d),"getPrevStep",function(a){var b=d.state,c=b.formValues,e=b.pages,f=a-1,g=e[a-3]||0;return c[g]&&!0===c[g].hideField&&(f=d.getPrevStep(f)),f}),_defineProperty(_assertThisInitialized(d),"nextStep",function(a){a&&a.preventDefault();var b=d.state,c=b.activePage,e=b.formValues,f=d.props,g=f.activePage,h=f.beforeNextPage,i=d.getNextStep(c);h&&h(c,e,i),g&&g(i),d.setState({activePage:i,pageClicked:!0},function(){return d.scrollToConfirmation()})}),_defineProperty(_assertThisInitialized(d),"prevStep",function(a){a&&a.preventDefault();var b=d.state.activePage,c=d.props.activePage,e=d.getPrevStep(b)||1;c&&c(e),d.setState({activePage:e,pageClicked:!0},function(){return d.scrollToConfirmation()})}),_defineProperty(_assertThisInitialized(d),"checkConditionalLogic",function(a){var b=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1],c=a.rules,e=a.actionType;if(!c)return!0;for(var f=b||d.state.formValues,g="hide"!==e,h=[],j=0;j<c.length;j++){var k=c[j],l=k.fieldId,m=k.value,n=k.operator,o=f[l].value&&f[l].value.value?f[l].value.value:f[l].value||!1,p=Array.isArray(o)?o.join(""):o;h[j]=m?p&&m==p?"hide"===e:p&&p.includes(m)?"hide"===e:"hide"!==e:p||m?"hide"!==e:"hide"===e,"isnot"===n&&(h[j]=!h[j])}return g=h.every(function(a){return!0===a}),g}),_defineProperty(_assertThisInitialized(d),"isFieldDisabled",function(a){var b=d.state.formData,c=Object.keys(a),e=c.some(function(d){if(b&&b.pagination){var e=a[d].pageNumber,f=c.filter(function(b){return"page"===a[b].type&&a[b].pageNumber==e});if(f&&0<f.length)return!a[d].hideField&&a[d].valid&&!a[f[0]].hideField}return!a[d].hideField&&a[d].valid});return e}),d.state={submitFailed:!1,errorMessages:!1,formValues:{},loading:!0,submitting:!1,submitSuccess:!1,confirmationMessage:!1,isValid:!1,formData:{},touched:{},activePage:!1,conditionFields:{},conditioanlIds:{},isMultipart:!1,pageClicked:!1,formatChars:{9:"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]",A:"[A-Z]"}},d}_inherits(b,a);var c=_createSuper(b);return _createClass(b,[{key:"componentDidMount",value:function(){var a=_asyncToGenerator(regeneratorRuntime.mark(function a(){var b,c,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y=this;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(b=this.props,c=b.form,d=b.formID,e=b.populatedFields,f=b.populatedEntry,g=b.fetchOptions,h=b.initialPage,j=b.getParams,this._isMounted=!0,k=!1,c&&this._isMounted){l={},m=[],n=[],o=[],p=_createForOfIteratorHelper(c.fields);try{for(p.s();!(q=p.n()).done;){if(r=q.value,s=void 0,"page"===r.type&&o.push(r.id),s=this.getFieldPrepopulatedValue(r,e,f),"fileupload"===r.type&&(k=!0),r.conditionalLogic){for(t={id:r.id,conditionalLogic:r.conditionalLogic},u=r.conditionalLogic.rules.map(function(a){return a.fieldId}),v=0;v<u.length;v++)w=parseInt(u[v]),-1===n.indexOf(w)&&n.push(w);m.push(t)}l[r.id]={valid:r.customValidateField?r.customValidateField(s,r):(0,_validation.validateField)(s,r),value:s,label:r.label,pageNumber:r.pageNumber,cssClass:r.cssClass,isRequired:r.isRequired,type:r.type}}}catch(a){p.e(a)}finally{p.f()}for(x=0;x<m.length;x++)l[m[x].id].hideField=this.checkConditionalLogic(m[x].conditionalLogic,l);this.setState({formData:c,formValues:l,activePage:h||!!c.pagination&&1,conditionFields:m,conditioanlIds:n,isMultipart:k,pages:o,populatedEntry:f||!1},function(){var a=y.props,b=a.nextStep,c=a.prevStep,d=a.activePage;b&&b(function(){return y.nextStep}),c&&c(function(){return y.prevStep}),d&&d(y.state.activePage)})}case 4:case"end":return a.stop();}},a,this)}));return function componentDidMount(){return a.apply(this,arguments)}}()},{key:"componentDidUpdate",value:function componentDidUpdate(a){var b=this.props,c=b.populatedEntry,d=b.initialPage,e=a.populatedEntry;c&&e&&!(0,_utils.equalShallow)(c,e)&&this.updateFieldsValuesBasedOnEntry(c),d&&d!==this.state.activePage&&this.setState({activePage:d})}},{key:"componentWillUnmount",value:function componentWillUnmount(){this._isMounted=!1}},{key:"render",value:function render(){var a=this,b=this.state,c=b.formData,d=b.formValues,e=b.submitFailed,f=b.submitSuccess,g=b.touched,h=b.submitting,i=b.activePage,j=b.isMultipart,k=b.pageClicked,l=this.props,m=l.title,n=l.submitIcon,o=l.saveStateToHtmlField,p=l.styledComponents,q=l.customComponents,r=l.errorMessage,s=l.dropzoneText,t=l.loadingSpinner,u=l.onError,v=p||!1,w=v.Button,x=v.Loading,y=v.GFWrapper,z=void 0===y?"div":y,A=v.FormError,B=v.FormConfirmation,C=c.cssClass,D=this.isFieldDisabled(d),E=!!i&&Object.keys(d).some(function(a){return d[a].pageNumber===i&&!d[a].hideField&&d[a].valid});return _react["default"].createElement(z,{ref:function ref(b){return a.wrapperRef=b},className:"form-wrapper",css:{position:"relative"},id:"gravity_form_".concat(this.props.formID)},c.title?null:x&&_react["default"].createElement(x,{isLoading:!0}),e&&!f&&!u&&_react["default"].createElement(_FormError["default"],{SFormError:A||!1,errorMessage:r||"There was a problem with your submission"}),f&&this.state.confirmationMessage&&_react["default"].createElement(_FormConfirmation["default"],{confirmation:this.state.confirmationMessage,SFormConfirmation:B}),!f&&c.fields?_react["default"].createElement("form",{onSubmit:function onSubmit(b){return a.onSubmit(b)},className:C,encType:j?"multipart/form-data":void 0,noValidate:!0},(c.title||c.description)&&_react["default"].createElement(_react["default"].Fragment,null,c.title&&m&&_react["default"].createElement("h3",{className:"form-title"},c.title),c.description?_react["default"].createElement("div",{className:"form-description"},_react["default"].createElement("p",{dangerouslySetInnerHTML:{__html:c.description}})):null),_react["default"].createElement("div",{className:"form-wrapper"},_react["default"].createElement(_RenderFields["default"],{styledComponents:p,customComponents:q,fields:c.fields,formValues:d,submitFailed:e,submitSuccess:f,updateForm:this.updateFormHandler,touched:g,setTouched:this.setTouched,pagination:c.pagination,activePage:i,prevStep:this.prevStep,nextStep:this.nextStep,isNextDisabled:E,checkConditionalLogic:this.checkConditionalLogic,saveStateToHtmlField:o,enableHoneypot:c.enableHoneypot,errors:this.state.errorMessages,unsetError:this.unsetError,dropzoneText:s,pageClicked:k,formatChars:this.state.formatChars}),(!c.pagination||c.pagination&&c.pagination.pages.length===i)&&_react["default"].createElement(_Submit["default"],{Button:w,Loading:x,formData:c,submitIcon:n,isDisabled:D,submitting:h,prevStep:this.prevStep,loadingSpinner:t}))):"")}}]),b}(_react.Component);GravityForm.defaultProps={title:!0,submitIcon:!1,saveStateToHtmlField:!1,jumpToConfirmation:!0};var _default=GravityForm;exports["default"]=_default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJHcmF2aXR5Rm9ybSIsInByb3BzIiwiZmllbGQiLCJwb3B1bGF0ZWRGaWVsZHMiLCJwb3B1bGF0ZWRFbnRyeSIsInZhbHVlIiwiaGFzUG9wdWxhdGVkRW50cnkiLCJoYXNQb3B1bGF0aW9uIiwiaW5wdXROYW1lIiwiaWQiLCJpbnB1dHMiLCJzb21lIiwiaW5wdXQiLCJ0eXBlIiwiY2hvaWNlcyIsImZpbHRlciIsImNob2ljZSIsImlzU2VsZWN0ZWQiLCJtYXAiLCJsYWJlbCIsInByZXNlbGVjdGVkIiwiZmluZCIsInNlbGVjdGVkT3B0aW9uIiwiaXRlbSIsInRleHQiLCJsZW5ndGgiLCJkZWZhdWx0VmFsdWUiLCJzdGF0ZSIsImZvcm1WYWx1ZXMiLCJmb3JtRGF0YSIsImtleXMiLCJPYmplY3QiLCJjaGFuZ2VkIiwidG1wVmFsdWVzIiwiaSIsImZpZWxkcyIsImdldEZpZWxkUHJlcG9wdWxhdGVkVmFsdWUiLCJzZXRTdGF0ZSIsInRvdWNoZWQiLCJlcnJvck1lc3NhZ2VzIiwiaW5wdXRNYXNrVmFsdWUiLCJpbnB1dE1hc2siLCJmb3JtYXRDaGFycyIsInRlc3RzIiwic3BsaXQiLCJjIiwicHVzaCIsIlJlZ0V4cCIsImlzVmFsaWQiLCJldmVyeSIsInRlc3QiLCJldmVudCIsImNoZWNrTWFzayIsImNvbmRpdGlvYW5sSWRzIiwiY29uZGl0aW9uRmllbGRzIiwiaXNSZXF1aXJlZCIsInZhbHVlcyIsImluZGV4IiwiaW5kZXhPZiIsInRhcmdldCIsInNwbGljZSIsImRhdGVUeXBlIiwic3ViSWQiLCJkYXRlTGFiZWwiLCJ2YWwiLCJjaGVja2VkIiwiZW1haWxDb25maXJtRW5hYmxlZCIsImNzc0NsYXNzIiwidmFsaWQiLCJjdXN0b21WYWxpZGF0ZUZpZWxkIiwiaGlkZSIsImNoZWNrQ29uZGl0aW9uYWxMb2dpYyIsImNvbmRpdGlvbmFsTG9naWMiLCJoaWRlRmllbGQiLCJjaGVja0lucHV0TWFza1ZhbHVlIiwiY29uc29sZSIsImxvZyIsInBhZ2VOdW1iZXIiLCJvbkNoYW5nZSIsIm9uQ2hhbmdlRmllbGQiLCJvbkNoYW5nZVBhZ2UiLCJqdW1wVG9Db25maXJtYXRpb24iLCJyZWN0Iiwid3JhcHBlclJlZiIsImdldEJvdW5kaW5nQ2xpZW50UmVjdCIsIndpbmRvdyIsInNjcm9sbFRvcCIsInBhZ2VZT2Zmc2V0IiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJzY3JvbGxUbyIsInRvcCIsImN1c3RvbU9uU3VibWl0Iiwib25TdWJtaXQiLCJGb3JtRGF0YSIsInByZXZlbnREZWZhdWx0Iiwic3VibWl0dGluZyIsInN1Ym1pdFN1Y2Nlc3MiLCJzdWJtaXRGYWlsZWQiLCJjb25maXJtYXRpb25NZXNzYWdlIiwiZm9ybUlEIiwiYmFja2VuZFVybCIsIm9uU3VibWl0U3VjY2VzcyIsIm9uRXJyb3IiLCJnZlN1Ym1pc3Npb25VcmwiLCJzdWJzdHJpbmciLCJtZXRob2QiLCJib2R5IiwidGhlbiIsInJlc3AiLCJqc29uIiwicmVzcG9uc2UiLCJpc192YWxpZCIsInJlcyIsImNvbmZpcm1hdGlvbl9tZXNzYWdlIiwibGluayIsImxvY2F0aW9uIiwicmVwbGFjZSIsInNjcm9sbFRvQ29uZmlybWF0aW9uIiwiZXJyb3IiLCJ2YWxpZGF0aW9uX21lc3NhZ2VzIiwiYWN0aXZlUGFnZSIsInBhZ2VzIiwibmV4dFBhZ2UiLCJuZXh0UGFnZUlkIiwiZ2V0TmV4dFN0ZXAiLCJwcmV2UGFnZSIsInByZXZQYWdlSWQiLCJnZXRQcmV2U3RlcCIsImUiLCJzZXRBY3RpdmUiLCJiZWZvcmVOZXh0UGFnZSIsInBhZ2VDbGlja2VkIiwiY29uZGl0aW9uIiwicnVsZXMiLCJhY3Rpb25UeXBlIiwiaGlkZUJhc2VkT25SdWxlcyIsImZpZWxkSWQiLCJvcGVyYXRvciIsImNvbmRpdGlvbkZpZWxkVmFsdWUiLCJzdHJpbmdWYWx1ZSIsIkFycmF5IiwiaXNBcnJheSIsImpvaW4iLCJpbmNsdWRlcyIsImlzRGlzYWJsZWQiLCJ4IiwicGFnaW5hdGlvbiIsImZpZWxkUGFnZSIsImN1ckZpZWxkUGFnZSIsImtleSIsImxvYWRpbmciLCJpc011bHRpcGFydCIsImEiLCJBIiwiZm9ybSIsImZldGNoT3B0aW9ucyIsImluaXRpYWxQYWdlIiwiZ2V0UGFyYW1zIiwiX2lzTW91bnRlZCIsInRtcEZpZWxkIiwiaWRzIiwicGFyc2VJbnQiLCJuZXh0U3RlcCIsInByZXZTdGVwIiwicHJldlByb3BzIiwicHJldlBvcHVsYXRlZEVudHJ5IiwidXBkYXRlRmllbGRzVmFsdWVzQmFzZWRPbkVudHJ5IiwidGl0bGUiLCJzdWJtaXRJY29uIiwic2F2ZVN0YXRlVG9IdG1sRmllbGQiLCJzdHlsZWRDb21wb25lbnRzIiwiY3VzdG9tQ29tcG9uZW50cyIsImVycm9yTWVzc2FnZSIsImRyb3B6b25lVGV4dCIsImxvYWRpbmdTcGlubmVyIiwiQnV0dG9uIiwiTG9hZGluZyIsIkdGV3JhcHBlciIsIlNGb3JtRXJyb3IiLCJGb3JtRXJyb3IiLCJTRm9ybUNvbmZpcm1hdGlvbiIsIkZvcm1Db25maXJtYXRpb24iLCJpc0ZpZWxkRGlzYWJsZWQiLCJpc05leHREaXNhYmxlZCIsImVsIiwicG9zaXRpb24iLCJkZXNjcmlwdGlvbiIsIl9faHRtbCIsInVwZGF0ZUZvcm1IYW5kbGVyIiwic2V0VG91Y2hlZCIsImVuYWJsZUhvbmV5cG90IiwidW5zZXRFcnJvciIsIkNvbXBvbmVudCIsImRlZmF1bHRQcm9wcyJdLCJtYXBwaW5ncyI6InloTkFTTUEsQ0FBQUEsVyxhQUNKLFdBQVlDLENBQVosQ0FBbUIsb0RBQ1hBLENBRFcsd0VBa0lTLFNBQUNDLENBQUQsQ0FBUUMsQ0FBUixDQUF5QkMsQ0FBekIsQ0FBNEMsSUFDbEVDLENBQUFBLENBRGtFLENBRWxFQyxDQUFpQixHQUZpRCxDQUdoRUMsQ0FBYSxDQUNqQkwsQ0FBSyxDQUFDTSxTQUFOLEVBQW1CTCxDQUFuQixFQUFzQ0EsQ0FBZSxDQUFDRCxDQUFLLENBQUNNLFNBQVAsQ0FKZSxDQWdCdEUsR0FWSUosQ0FBYyxFQUFJQSxDQUFj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LG9CQUFvQixHQUhLLENBSXpCekYsa0JBQWtCLEdBSk8sQyxjQVNaakYsVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQgfSBmcm9tIFwicmVhY3RcIjtcclxuaW1wb3J0IGZldGNoIGZyb20gXCJpc29tb3JwaGljLXVuZmV0Y2hcIjtcclxuaW1wb3J0IFJlbmRlckZpZWxkcyBmcm9tIFwiLi9Gb3JtRWxlbWVudHMvUmVuZGVyRmllbGRzXCI7XHJcbmltcG9ydCBGb3JtRXJyb3IgZnJvbSBcIi4vRm9ybUVsZW1lbnRzL0Zvcm1FcnJvclwiO1xyXG5pbXBvcnQgRm9ybUNvbmZpcm1hdGlvbiBmcm9tIFwiLi9Gb3JtRWxlbWVudHMvRm9ybUNvbmZpcm1hdGlvblwiO1xyXG5pbXBvcnQgeyB2YWxpZGF0ZUZpZWxkIH0gZnJvbSBcIi4vSGVscGVycy92YWxpZGF0aW9uXCI7XHJcbmltcG9ydCB7IGVxdWFsU2hhbGxvdyB9IGZyb20gXCIuL0hlbHBlcnMvdXRpbHNcIjtcclxuaW1wb3J0IFN1Ym1pdCBmcm9tIFwiLi9Gb3JtRWxlbWVudHMvU3VibWl0XCI7XHJcblxyXG5jbGFzcyBHcmF2aXR5Rm9ybSBleHRlbmRzIENvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICAgIHN1cGVyKHByb3BzKTtcclxuICAgIHRoaXMuc3RhdGUgPSB7XHJcbiAgICAgIHN1Ym1pdEZhaWxlZDogZmFsc2UsXHJcbiAgICAgIGVycm9yTWVzc2FnZXM6IGZhbHNlLFxyXG4gICAgICBmb3JtVmFsdWVzOiB7fSxcclxuICAgICAgbG9hZGluZzogdHJ1ZSxcclxuICAgICAgc3VibWl0dGluZzogZmFsc2UsXHJcbiAgICAgIHN1Ym1pdFN1Y2Nlc3M6IGZhbHNlLFxyXG4gICAgICBjb25maXJtYXRpb25NZXNzYWdlOiBmYWxzZSxcclxuICAgICAgaXNWYWxpZDogZmFsc2UsXHJcbiAgICAgIGZvcm1EYXRhOiB7fSxcclxuICAgICAgdG91Y2hlZDoge30sXHJcbiAgICAgIGFjdGl2ZVBhZ2U6IGZhbHNlLFxyXG4gICAgICBjb25kaXRpb25GaWVsZHM6IHt9LFxyXG4gICAgICBjb25kaXRpb2FubElkczoge30sXHJcbiAgICAgIGlzTXVsdGlwYXJ0OiBmYWxzZSxcclxuICAgICAgcGFnZUNsaWNrZWQ6IGZhbHNlLFxyXG4gICAgICBmb3JtYXRDaGFyczoge1xyXG4gICAgICAgIDk6IFwiWzAtOV1cIixcclxuICAgICAgICBhOiBcIltBLVphLXpdXCIsXHJcbiAgICAgICAgXCIqXCI6IFwiW0EtWmEtejAtOV1cIixcclxuICAgICAgICBBOiBcIltBLVpdXCIsXHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgY29tcG9uZW50RGlkTW91bnQoKSB7XHJcbiAgICBjb25zdCB7XHJcbiAgICAgIGZvcm0sXHJcbiAgICAgIGZvcm1JRCwgICAgICBcclxuICAgICAgcG9wdWxhdGVkRmllbGRzLFxyXG4gICAgICBwb3B1bGF0ZWRFbnRyeSxcclxuICAgICAgZmV0Y2hPcHRpb25zLFxyXG4gICAgICBpbml0aWFsUGFnZSxcclxuICAgICAgZ2V0UGFyYW1zLFxyXG4gICAgfSA9IHRoaXMucHJvcHM7XHJcbiAgICB0aGlzLl9pc01vdW50ZWQgPSB0cnVlO1xyXG4gICAgbGV0IGlzTXVsdGlwYXJ0ID0gZmFsc2U7XHJcbiAgICBcclxuICAgIGlmIChmb3JtICYmIHRoaXMuX2lzTW91bnRlZCkge1xyXG4gICAgICBjb25zdCBmb3JtVmFsdWVzID0ge307XHJcbiAgICAgIGNvbnN0IGNvbmRpdGlvbkZpZWxkcyA9IFtdO1xyXG4gICAgICBjb25zdCBjb25kaXRpb2FubElkcyA9IFtdO1xyXG4gICAgICBjb25zdCBwYWdlcyA9IFtdO1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS