var _createClass=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){return protoProps&&defineProperties(Constructor.prototype,protoProps),staticProps&&defineProperties(Constructor,staticProps),Constructor}}(),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}!function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}u=n[o]={exports:{}};t[o][0].call(u.exports,function(e){var n=t[o][1][e];return s(n||e)},u,u.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){var doT={templateSettings:{argName:"it",internalPrefix:"_val",strip:!0,selfContained:!1,defaultEncoder:void 0,encoders:{},encodersPrefix:"_enc"},template:template,compile:function(tmpl,def){return template(tmpl,null,def)}},encoderType=(module.exports=doT,{false:"function",true:"string"}),SYN={evaluate:/\{\{([\s\S]+?(\}?)+)\}\}/g,interpolate:/\{\{=([\s\S]+?)\}\}/g,typeInterpolate:/\{\{%([nsb])=([\s\S]+?)\}\}/g,encode:/\{\{([a-z_$]+[\w$]*)?!([\s\S]+?)\}\}/g,use:/\{\{#([\s\S]+?)\}\}/g,useParams:/(^|[^\w$])def(?:\.|\[[\'\"])([\w$\.]+)(?:[\'\"]\])?\s*\:\s*([\w$\.]+|\"[^\"]+\"|\'[^\']+\'|\{[^\}]+\})/g,define:/\{\{##\s*([\w\.$]+)\s*(\:|=)([\s\S]+?)#\}\}/g,defineParams:/^\s*([\w$]+):([\s\S]+)/,conditional:/\{\{\?(\?)?\s*([\s\S]*?)\s*\}\}/g,iterate:/\{\{~\s*(?:\}\}|([\s\S]+?)\s*\:\s*([\w$]+)\s*(?:\:\s*([\w$]+))?\s*\}\})/g},TYPES={n:"number",s:"string",b:"boolean"};function unescape(code){return code.replace(/\\('|\\)/g,"$1").replace(/[\r\t\n]/g," ")}function template(tmpl,c,def){c=c||doT.templateSettings;var sid=0,str=function resolveDefs(c,block,def){return("string"==typeof block?block:block.toString()).replace(SYN.define,function(_,code,assign,value){return(code=0===code.indexOf("def.")?code.substring(4):code)in def||(":"===assign?(value.replace(SYN.defineParams,function(_,param,v){def[code]={arg:param,text:v}}),code in def||(def[code]=value)):new Function("def","def['"+String(code)+"']="+String(value))(def)),""}).replace(SYN.use,function(_,code){return code=code.replace(SYN.useParams,function(_,s,d,param){var rw;if(def[d]&&def[d].arg&&param)return rw=unescape((d+":"+param).replace(/'|\\/g,"_")),def.__exp=def.__exp||{},def.__exp[rw]=def[d].text.replace(new RegExp("(^|[^\\w$])"+String(def[d].arg)+"([^\\w$])","g"),"$1"+String(param)+"$2"),s+("def.__exp['"+String(rw))+"']"}),(code=new Function("def","return "+code)(def))&&resolveDefs(c,code,def)})}(c,tmpl,def||{}),needEncoders={},str=("let out='"+(c.strip?str.trim().replace(/[\t ]+(\r|\n)/g,"\n").replace(/(\r|\n)[\t ]+/g," ").replace(/\r|\n|\t|\/\*[\s\S]*?\*\//g,""):str).replace(/'|\\/g,"\\$&").replace(SYN.interpolate,function(_,code){return"'+("+String(unescape(code))+")+'"}).replace(SYN.typeInterpolate,function(_,typ,code){sid++;var val=c.internalPrefix+sid,error='throw new Error("expected '+String(TYPES[typ])+', got "+ (typeof '+String(val)+"))";return"';const "+String(val)+"=("+String(unescape(code))+");if(typeof "+String(val)+'!=="'+String(TYPES[typ])+'") '+error+";out+="+String(val)+"+'"}).replace(SYN.encode,function(_){var enc=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",code=arguments[2],enc=(needEncoders[enc]=!0,code=unescape(code),c.selfContained?enc:enc?"."+enc:'[""]');return"'+"+String(c.encodersPrefix)+String(enc)+"("+String(code)+")+'"}).replace(SYN.conditional,function(_,elseCase,code){return code?(code=unescape(code),elseCase?"';}else if("+String(code)+"){out+='":"';if("+String(code)+"){out+='"):elseCase?"';}else{out+='":"';}out+='"}).replace(SYN.iterate,function(_,arr,vName,iName){if(!arr)return"';} } out+='";sid++;var defI=iName?"let "+String(iName)+"=-1;":"",iName=iName?String(iName)+"++;":"",val=c.internalPrefix+sid;return"';const "+String(val)+"="+String(unescape(arr))+";if("+String(val)+"){"+defI+"for (const "+String(vName)+" of "+String(val)+"){"+iName+"out+='"}).replace(SYN.evaluate,function(_,code){return"';"+String(unescape(code))+"out+='"})+"';return out;").replace(/\n/g,"\\n").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/(\s|;|\}|^|\{)out\+='';/g,"$1").replace(/\+''/g,"");return 0===Object.keys(needEncoders).length?try_(function(){return new Function(c.argName,str)}):(function(c,encoders){var enc,typ=encoderType[c.selfContained];for(enc in encoders){var e=c.encoders[enc];if(!e)throw new Error('unknown encoder "'+enc+'"');if((void 0===e?"undefined":_typeof(e))!==typ)throw new Error("selfContained "+String(c.selfContained)+': encoder type must be "'+String(typ)+'"')}}(c,needEncoders),str="return function("+String(c.argName)+"){"+String(str)+"};",try_(function(){return c.selfContained?new Function(str=function(c,encoders){var enc,s="";for(enc in encoders)s+="const "+String(c.encodersPrefix)+enc+"="+String(c.encoders[enc])+";";return s}(c,needEncoders)+str)():new Function(c.encodersPrefix,str)(c.encoders)}));function try_(f){try{return f()}catch(e){throw e}}}},{}],2:[function(require,module,exports){window.FeedbackCompanyWidgetRenderer=require("../shared/dot/dot.js"),window.FeedbackCompanyWidgets=window.FeedbackCompanyWidgets||{queue:[],loaders:[]},window.FeedbackCompanyWidgets.instances=window.FeedbackCompanyWidgets.instances||[],window.FeedbackCompanyWidgets.events=window.FeedbackCompanyWidgets.events||{onProductExtendedWidgetLoaded:[],onProductExtendedWidgetOpened:[],onProductExtendedWidgetClosed:[]};require=function(){function FeedbackCompanyWidgetLoader(options){_classCallCheck(this,FeedbackCompanyWidgetLoader),this.options=options,"string"==typeof this.options?this.options={uuid:this.options,version:"1.0.0"}:void 0!==options.targetElement?(this.options.targetElement.nextSibling.id="__fbcw__"+String(options.uuid),this.options={uuid:this.options.uuid,version:"0.9.0"}):"string"==typeof this.options.version&&"1.1"===this.options.version&&(this.options.version="1.1.0"),this.load()}return _createClass(FeedbackCompanyWidgetLoader,[{key:"load",value:function(){var xhr,queryStringArray,embedCodeParams,_this=this,prefix=this.options.prefix||"",targetScript=document.getElementById("__fbcw__"+String(prefix)+String(this.options.uuid));targetScript&&(this.parentNode=document.createElement("span"),targetScript.parentElement.insertBefore(this.parentNode,targetScript),prefix="https://www.feedbackcompany.com/api/v2/widgets/"+String(this.options.uuid)+"/data",xhr=new XMLHttpRequest,queryStringArray=["embed_code_version="+String(this.options.version)],embedCodeParams=this.options.templateParams||{},void 0!==this.options.urlParams&&Object.keys(this.options.urlParams).forEach(function(key){queryStringArray.push(String(key)+"="+String(encodeURIComponent(_this.options.urlParams[key]))),embedCodeParams[key]=encodeURIComponent(_this.options.urlParams[key])}),xhr.open("GET",prefix+"?"+queryStringArray.join("&")),xhr.onload=function(){var data,scriptElement;xhr.status<200||299<xhr.status||((data=JSON.parse(xhr.responseText).data).options&&(data.options.toggle_element=_this.options.toggle_element),data.embed_code_params=embedCodeParams,data.template_javascript_class&&data.template_javascript_class_name?((scriptElement=document.createElement("script")).innerText=data.template_javascript_class,targetScript.parentElement.insertBefore(scriptElement,targetScript),scriptElement={parentNode:_this.parentNode,data:data,uuid:_this.options.uuid,renderHTMl:_this.renderHTML},scriptElement=window["create"+data.template_javascript_class_name](scriptElement),window.FeedbackCompanyWidgets.instances.push(scriptElement)):_this.renderHTML(data))},xhr.send())}},{key:"renderHTML",value:function(data,onRender){data=window.FeedbackCompanyWidgetRenderer.template(data.template)({data:data});this.parentNode.innerHTML=data,onRender&&onRender()}}]),FeedbackCompanyWidgetLoader}();window.FeedbackCompanyWidgetLoader=require,window.FeedbackCompanyWidget=require},{"../shared/dot/dot.js":1}]},{},[2]);