(()=>{var e={489(e){"use strict";e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;var o,n,l;if(Array.isArray(t)){if((o=t.length)!=r.length)return!1;for(n=o;0!==n--;)if(!e(t[n],r[n]))return!1;return!0}if(t instanceof Map&&r instanceof Map){if(t.size!==r.size)return!1;for(n of t.entries())if(!r.has(n[0]))return!1;for(n of t.entries())if(!e(n[1],r.get(n[0])))return!1;return!0}if(t instanceof Set&&r instanceof Set){if(t.size!==r.size)return!1;for(n of t.entries())if(!r.has(n[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(r)){if((o=t.length)!=r.length)return!1;for(n=o;0!==n--;)if(t[n]!==r[n])return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((o=(l=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(n=o;0!==n--;)if(!Object.prototype.hasOwnProperty.call(r,l[n]))return!1;for(n=o;0!==n--;){var a=l[n];if(!e(t[a],r[a]))return!1}return!0}return t!=t&&r!=r}},500(e,t){var r;!function(){"use strict";var o={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var r=arguments[t];r&&(e=a(e,l(r)))}return e}function l(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var r in e)o.call(e,r)&&e[r]&&(t=a(t,r));return t}function a(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):void 0===(r=function(){return n}.apply(t,[]))||(e.exports=r)}()}},t={};function r(o){var n=t[o];if(void 0!==n)return n.exports;var l=t[o]={exports:{}};return e[o](l,l.exports,r),l.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var o in t)r.o(t,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{"use strict";const e=window.React;var t=r(500),o=r.n(t);const n=window.wp.components,l=window.lodash;var a=r(489),s=r.n(a);const i=window.wp.element,c=window.wp.compose,d=e=>{const t=e.ownerDocument.defaultView;let r=t.getComputedStyle(e).backgroundColor;for(;"rgba(0, 0, 0, 0)"===r&&e.parentNode&&1===e.parentNode.nodeType;)e=e.parentNode,r=t.getComputedStyle(e).backgroundColor;return r},u=()=>(0,e.createElement)("div",{className:"crowdsignal-forms__style-probe"},(0,e.createElement)("p",null),(0,e.createElement)("h3",null,"Text"),(0,e.createElement)("div",{className:"wp-block-button"},(0,e.createElement)("div",{className:"wp-block-button__link"})),(0,e.createElement)("div",{className:"entry-content"},(0,e.createElement)("div",{className:"alignwide"}))),f=e=>{if(null===e)return{};const t=e.querySelector(".wp-block-button__link"),r=e.querySelector("p"),o=e.querySelector("h3"),n=e.querySelector(".alignwide"),l=e.ownerDocument.defaultView;let a=d(t);const s=d(r),i=l.getComputedStyle(r).color;if(a===s){const e=(e=>{const t=e.ownerDocument.defaultView;return"0px"!==t.getComputedStyle(e).borderBlockStartWidth?t.getComputedStyle(e).borderBlockStartColor:null})(t);a=e||i}return{accentColor:a,backgroundColor:s,textColor:i,textColorInverted:l.getComputedStyle(t).color,textFont:l.getComputedStyle(r).fontFamily,textSize:l.getComputedStyle(r).fontSize,headingFont:l.getComputedStyle(o).fontFamily,contentWideWidth:l.getComputedStyle(n).maxWidth}},m=window.wp.htmlEntities,g=window.wp.i18n,b=()=>(0,e.createElement)("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},(0,e.createElement)("path",{d:"M17.7049 7.70504L16.2949 6.29504L11.9999 10.59L7.70492 6.29504L6.29492 7.70504L10.5899 12L6.29492 16.295L7.70492 17.705L11.9999 13.41L16.2949 17.705L17.7049 16.295L13.4099 12L17.7049 7.70504Z"})),p="question",w="submit",h=(Object.freeze({OPEN:"open",CLOSED:"closed",CLOSED_AFTER:"closed-after"}),Object.freeze({CLICK:"click",HOVER:"hover",PAGE_LOAD:"load"})),y=(0,e.forwardRef)(({attributes:t,className:r,isOpen:n,onClick:l,onToggle:a},s)=>{(0,e.useLayoutEffect)(a,[n]),(0,e.useEffect)(()=>{n||t.toggleOn!==h.PAGE_LOAD||l()},[]);const i=(0,e.useCallback)(()=>{n||t.toggleOn!==h.HOVER||l()},[t.toggleOn,n]),c=o()("crowdsignal-forms-feedback__trigger","wp-block-button__link",r,{"is-active":n});return(0,e.createElement)("div",{className:"wp-block-button crowdsignal-forms-feedback__trigger-wrapper"},!n&&(0,e.createElement)("button",{ref:s,className:c,onClick:l,onMouseEnter:i},(0,e.createElement)("div",{className:"crowdsignal-forms-feedback__trigger-text"},(0,m.decodeEntities)(t.triggerLabel))),n&&(0,e.createElement)("button",{ref:s,className:c,onClick:l},(0,e.createElement)(b,null),(0,g.__)("Close","crowdsignal-forms")))}),v=window.crowdsignalForms.apiFetch;var k=r.n(v);const S=({attributes:t,onSubmit:r})=>{const[n,a]=(0,e.useState)(""),[s,i]=(0,e.useState)(""),[c,d]=(0,e.useState)({}),u=o()("crowdsignal-forms-feedback__input",{"is-error":c.feedback}),f=o()("crowdsignal-forms-feedback__input",{"is-error":c.email});return(0,e.createElement)("form",{onSubmit:async e=>{e.preventDefault();const o={feedback:(0,l.isEmpty)(n),email:t.emailRequired&&((0,l.isEmpty)(s)||s.match(/^\s+@\s+$/))};var a,i,c;d(o),o.feedback||o.email||(a=t.surveyId,i={nonce:t.nonce,feedback:n,email:s},c=k()({path:(0,l.trimEnd)(`/crowdsignal-forms/v1/feedback/${a||""}/response`),method:"POST",data:i}),new Promise((e,t)=>{const r=setTimeout(()=>t(new Error("Request timed out")),1e4);c.then(e,t).finally(()=>clearTimeout(r))}),r())}},(0,e.createElement)("h3",{className:"crowdsignal-forms-feedback__header",style:{whiteSpace:"pre-wrap"}},(0,m.decodeEntities)(t.header).split("<br>").join("\n")),(0,e.createElement)("textarea",{className:u,rows:6,placeholder:t.feedbackPlaceholder,value:n,onChange:e=>a(e.target.value)}),(0,e.createElement)("input",{type:"email",className:f,placeholder:t.emailPlaceholder,value:s,onChange:e=>i(e.target.value)}),(0,e.createElement)("div",{className:"wp-block-button crowdsignal-forms-feedback__button-wrapper"},(0,e.createElement)("button",{className:"wp-block-button__link crowdsignal-forms-feedback__feedback-button",type:"submit"},t.submitButtonLabel)))},C=({attributes:t})=>(0,e.createElement)("h3",{className:"crowdsignal-forms-feedback__header",style:{whiteSpace:"pre-wrap"}},(0,m.decodeEntities)(t.submitText).split("<br>").join("\n")),E=({showLogo:t,children:r,message:o,trackRef:n="cs-forms-poll"})=>(0,e.createElement)("div",{className:"crowdsignal-forms__footer-branding"},(0,e.createElement)("a",{className:"crowdsignal-forms__footer-cs-link",href:"https://crowdsignal.com?ref="+n,target:"_blank",rel:"noopener noreferrer"},o||(0,g.__)("Create your own poll with Crowdsignal","crowdsignal-forms")),r,t&&(0,e.createElement)("a",{href:"https://crowdsignal.com?ref="+n,target:"_blank",rel:"noopener noreferrer"},(0,e.createElement)("img",{className:"crowdsignal-forms__footer-branding-logo",src:"https://app.crowdsignal.com/images/svg/cs-logo-dots.svg",alt:"Crowdsignal sticker"}))),_=({attributes:t,styleVars:r})=>{const[o,n]=(0,e.useState)(p),[l,a]=(0,e.useState)("auto"),s=(0,e.useRef)(null),i={height:l,...r};return(0,e.createElement)("div",{ref:s,className:"crowdsignal-forms-feedback__popover",style:i},o===p&&(0,e.createElement)(S,{attributes:t,onSubmit:()=>{a(s.current.offsetHeight),n(w)}}),o===w&&(0,e.createElement)(C,{attributes:t}),!t.hideBranding&&(0,e.createElement)(E,{trackRef:"cs-forms-feedback",showLogo:o===w,message:(0,g.__)("Collect your own feedback with Crowdsignal","crowdsignal-forms")}))},O=(e,t,r)=>({left:"left"===e?r.left:null,right:"right"===e?r.right:null}),x=(e,t,r,o=window)=>"center"===e?{top:(o.innerHeight-t)/2,bottom:null}:{top:"top"===e?r.top:null,bottom:"bottom"===e?r.bottom:null},N=(R=({attributes:t,fallbackStyles:r,fallbackStylesRef:a,renderStyleProbe:s})=>{const[i,c]=(0,e.useState)({}),d=(0,e.useRef)(null),u=(0,e.useCallback)(()=>{c(((e,t,r,o)=>"center"!==t?e:{...e,left:null!==e.left?e.left-r+o:null,right:null!==e.right?e.right-r+o:null})(((e,t,r,o,n,a=null,s=window)=>{let i={left:(0,l.isObject)(n)?n.left:n,right:(0,l.isObject)(n)?n.right:n,top:(0,l.isObject)(n)?n.top:n,bottom:(0,l.isObject)(n)?n.bottom:n};return a&&(i=((e,t,r=window)=>({left:e.left+t.x+r.scrollX,right:e.right+(r.innerWidth>t.left+t.width?r.innerWidth-t.left-t.width:0),top:e.top+t.y+r.scrollY,bottom:e.bottom+(r.innerHeight>t.top+t.height?r.innerHeight-t.top-t.height:0)}))(i,a.getBoundingClientRect(),s)),{...O(e,0,i),...x(t,o,i,s)}})(t.x,t.y,d.current.offsetWidth,"center"===t.y?d.current.offsetWidth:d.current.offsetHeight,{top:20,bottom:20,left:"center"===t.y?0:20,right:"center"===t.y?0:20},document.body),t.y,d.current.offsetWidth,d.current.offsetHeight))},[t.x,t.y,d.current]);(0,e.useLayoutEffect)(()=>{u()},[t.x,t.y,u]);const f=o()("crowdsignal-forms-feedback",`align-${t.x}`,{"no-shadow":t.hideTriggerShadow,"is-vertical":"center"===t.y}),m=((e,t)=>{const r=t.accentColor!==t.textColorInverted;return(0,l.mapKeys)({backgroundColor:e.backgroundColor||"#ffffff",buttonColor:e.buttonColor||(r?t.accentColor:void 0),buttonTextColor:e.buttonTextColor||(r?t.textColorInverted:void 0),textColor:e.textColor||t.textColor,textSize:t.textSize,triggerBackgroundColor:e.triggerBackgroundColor||(r?t.accentColor:void 0),triggerTextColor:e.triggerTextColor||(r?t.textColorInverted:void 0)},(e,t)=>`--crowdsignal-forms-${(0,l.kebabCase)(t)}`)})(t,r),g={...i,...m};return(0,e.createElement)("div",{ref:a},(0,e.createElement)("div",{className:f,style:g},(0,e.createElement)(n.Dropdown,{popoverProps:{className:"crowdsignal-forms-feedback__popover-wrapper",position:(b=t.x,p=t.y,"center"!==p?"":"left"===b?"middle right":"middle left")},renderToggle:({isOpen:r,onToggle:o})=>(0,e.createElement)(y,{ref:d,isOpen:r,onClick:o,onToggle:u,attributes:t}),renderContent:()=>(0,e.createElement)(_,{attributes:t,styleVars:m})})),s());var b,p},(L=e=>({fallbackStyles:f(e.querySelector(".crowdsignal-forms__style-probe"))}),(0,c.createHigherOrderComponent)(t=>class extends i.Component{constructor(e){super(e),this.nodeRef=this.props.node,this.state={fallbackStyles:void 0,grabStylesCompleted:!1},this.bindRef=this.bindRef.bind(this)}bindRef(e){e&&(this.nodeRef=e)}componentDidMount(){this.grabFallbackStyles()}componentDidUpdate(){this.grabFallbackStyles()}grabFallbackStyles(){const{grabStylesCompleted:e,fallbackStyles:t}=this.state;if(this.nodeRef&&!e){const e=L(this.nodeRef,this.props);s()(e,t)||this.setState({fallbackStyles:e,grabStylesCompleted:Object.values(e).every(Boolean)})}}render(){return(0,e.createElement)(t,{...this.props,...this.state.fallbackStyles,fallbackStylesRef:this.bindRef})}},"withFallbackStyles"))(({fallbackStyles:t,fallbackStylesRef:r,...o})=>(0,e.createElement)(R,{fallbackStyles:t||{},fallbackStylesRef:r,renderStyleProbe:()=>t?null:(0,e.createElement)(u,null),...o})));var L,R;const j=window.ReactDOM,T=(e,t)=>(0,l.forEach)(document.querySelectorAll(`div[${e}]`),r=>{try{const o=JSON.parse(r.dataset[(0,l.camelCase)(e.substr(5))]),n=t(o,r);r.removeAttribute(e),(0,j.render)(n,r)}catch(t){console.error("Crowdsignal Forms: Failed to parse block data for: %s",e)}}),F=(e,t)=>{((0,l.isEmpty)(window.CrowdsignalMutationObservers)||!0!==window.CrowdsignalMutationObservers[e])&&(new window.MutationObserver(()=>T(e,t)).observe(document.body,{attributes:!0,attributeFilter:[e],childList:!0,subtree:!0}),(0,l.isEmpty)(window.CrowdsignalMutationObservers)&&(window.CrowdsignalMutationObservers=[]),window.CrowdsignalMutationObservers[e]=!0,T(e,t))};((e,t)=>{if("complete"===document.readyState||"interactive"===document.readyState)return F(e,t);document.addEventListener("DOMContentLoaded",()=>F(e,t))})("data-crowdsignal-feedback",t=>(0,e.createElement)(N,{attributes:t}))})()})();