const wpf={cachedFields:{},savedState:!1,initialSave:!0,orders:{fields:[],choices:{}},init(){wpf.bindUIActions(),wpf.initRadioGroupForCheckboxes(),jQuery(wpf.ready)},ready(){wpf.savedState=wpf.getFormState("#wpforms-builder-form"),wpf.setFieldOrders(),wpf.setChoicesOrders()},bindUIActions(){jQuery(document).on("wpformsFieldAdd",wpf.setFieldOrders).on("wpformsFieldDuplicated",wpf.setFieldOrders).on("wpformsFieldDelete",wpf.setFieldOrders).on("wpformsFieldMove",wpf.setFieldOrders).on("wpformsFieldAdd",wpf.setChoicesOrders).on("wpformsFieldChoiceAdd",wpf.setChoicesOrders).on("wpformsFieldChoiceDelete",wpf.setChoicesOrders).on("wpformsFieldChoiceMove",wpf.setChoicesOrders).on("wpformsFieldAdd",wpf.fieldUpdate).on("wpformsFieldDelete",wpf.fieldUpdate).on("wpformsFieldMove",wpf.fieldUpdate).on("wpformsFieldChoiceAdd",wpf.fieldUpdate).on("wpformsFieldChoiceDelete",wpf.fieldUpdate).on("wpformsFieldChoiceMove",wpf.fieldUpdate).on("wpformsFieldDynamicChoiceToggle",wpf.fieldUpdate).on("focusout",".wpforms-field-option-row-label input",wpf.fieldUpdate).on("focusout",".wpforms-field-option-row-choices input.label",wpf.fieldUpdate)},setFieldOrders(){wpf.orders.fields=[],jQuery(".wpforms-field-option").each(function(){wpf.orders.fields.push(jQuery(this).data("field-id"))})},setChoicesOrders(){wpf.orders.choices={},jQuery(".choices-list").each(function(){const e=jQuery(this).data("field-id");wpf.orders.choices["field_"+e]=[],jQuery(this).find("li").each(function(){wpf.orders.choices["field_"+e].push(jQuery(this).data("key"))})})},getChoicesOrder(e){const t=[];return jQuery("#wpforms-field-option-"+e).find(".choices-list li").each(function(){t.push(jQuery(this).data("key"))}),t},initMultipleSelectWithSearch(e){const t=jQuery(e.passedElement.element),r=jQuery(e.input.element);t.prop("multiple")&&(r.data("placeholder",r.attr("placeholder")),r.data("style",r.attr("style")),e.getValue(!0).length&&r.removeAttr("placeholder"),t.on("change",function(){e.getValue(!0).length?r.removeAttr("placeholder"):r.attr("placeholder",r.data("placeholder")).attr("style",r.data("style"))}))},showMoreButtonForChoices(e){var t,r;"select-one"!==jQuery(e).data("type")&&(t=jQuery(e).find(".choices__list--multiple .choices__item").first(),r=jQuery(e).find(".choices__list--multiple .choices__item").last(),jQuery(e).removeClass("choices__show-more"),0{e.find(".choices select").each(function(){var e=jQuery(this).data("choicesjs");wpf.showMoreButtonForChoices(e.containerOuter.element)})},100)},fieldUpdate(){var e=wpf.getFields();jQuery(document).trigger("wpformsFieldUpdate",[e]),wpf.debug("fieldUpdate triggered")},getFields(e=void 0,t=void 0,r=void 0,i=void 0){let o;if((t=t||!1)&&!jQuery.isEmptyObject(wpf.cachedFields))o=jQuery.extend({},wpf.cachedFields),wpf.debug("getFields triggered (cached)");else{var t=wpf.formObject("#wpforms-field-options"),n=["captcha","content","divider","entry-preview","html","internal-information","pagebreak","layout"];if(!(o=t.fields))return!1;for(const l in o)(!o[l].type||-1{Object.values(e?.fields??[]).forEach(e=>{o[e]&&(o[e].label+=" ("+o[l].label+")",o[e].isRepeater=!0)})}),delete o[l]);wpf.addAdditionalFields(o),wpf.cachedFields=jQuery.extend({},o),wpf.debug("getFields triggered")}if(!r)for(const d in o)o[d]?.isRepeater&&delete o[d];if(i)for(const p in i)delete o[p];if(e&&e.constructor===Array)for(const c in o)-1===jQuery.inArray(o[c].type,e)&&delete o[c];if(0===Object.keys(o).length)return!1;var s=[];for(const f in wpf.orders.fields){var a=wpf.orders.fields[f];o[a]&&s.push(o[a])}return Object.assign({},s)},addAdditionalFields(e){for(const r in e){var t;if(["name","date-time"].includes(e[r]?.type)&&(t=e[r].format)&&(e[r].additional=t.split("-")),"address"===e[r]?.type){const i=Object.keys(e[r]).filter(e=>e.includes("_placeholder"));i.forEach((e,t)=>{i[t]=e.replace("_placeholder","")}),e[r].additional=i}}return e},getField(e){e=wpf.formObject("#wpforms-field-option-"+e);return Object.keys(e).length?e.fields[Object.keys(e.fields)[0]]:{}},fieldOptionLoading(e,t=void 0){var e=jQuery(e),r=e.find("label");(t=void 0!==t)?(r.find(".wpforms-loading-spinner").remove(),r.find(".wpforms-help-tooltip").show(),e.find("input,select,textarea").prop("disabled",!1)):(r.append(''),r.find(".wpforms-help-tooltip").hide(),e.find("input,select,textarea").prop("disabled",!0))},getFormState(e){return jQuery(e).serialize()},removeArrayItem(t,r){let i=0;for(let e=0;e&]/gim,function(e){return"&#"+e.charCodeAt(0)+";"})},decodeAllowedHTMLEntities(e){"string"!=typeof e&&(e=e.toString());var t=wp.hooks.applyFilters("wpforms.allowedHTMLEntities",{"&":"&"," ":" "});for(const r in t)e=e.replaceAll(r,t[r]);return e},initRadioGroupForCheckboxes(){const n=jQuery;n(document).on("change",'input[type="checkbox"].wpforms-radio-group',function(){var t=n(this);if(t.prop("checked")){const r=t.data("radio-group"),i=n(".wpforms-radio-group-"+r),o=t.attr("id");let e;i.each(function(){(e=n(this)).attr("id")!==o&&e.prop("checked",!1)})}})},listPluck(e,t){return e.map(function(e){return void 0!==e?e[t]:e})},triggerEvent(e,t){return console.warn('WARNING! Function "wpf.triggerEvent( $element, eventName )" has been deprecated, please use the new "WPFormsUtils.triggerEvent( $element, eventName, args )" function instead!'),WPFormsUtils.triggerEvent(e,t)},wpautop(i,e=!0){const o=new Map;if("string"==typeof i||i instanceof String){if(""===i.trim())return"";-1<(i+="\n").indexOf("")).pop(),i="",t.forEach(function(e,t){var r=e.indexOf("",o[t]=e.substring(r)+"",i+=e.substring(0,r)+t)}),i+=r);var t="(?:table|thead|tfoot|caption|col|colgroup|tbody|tr|td|th|div|dl|dd|dt|ul|ol|li|pre|form|map|area|blockquote|address|math|style|p|h[1-6]|hr|fieldset|legend|section|article|aside|hgroup|header|footer|nav|figure|figcaption|details|menu|summary)",r=(i=(i=-1<(i=-1<(i=-1<(i=0===(i=(i=(i=(i=i.replace(/
\s*
/,"\n\n")).replace(new RegExp("(<"+t+"[^>]*>)","gmi"),"\n$1")).replace(new RegExp("()","gmi"),"$1\n\n")).replace(/\r\n|\r/,"\n")).indexOf("\n")?i.substring(1):i).indexOf("\s*/gim,""):i).indexOf("")?(i=(i=i.replace(/(]*>)\s*/gim,"$1")).replace(/(?=(\s*))\2<\/object>/gim,"")).replace(/(?=(\s*))\2(<\/?(?:param|embed)[^>]*>)((?=(\s*))\2)/gim,"$1"):i).indexOf("\]]*[>\]])\s*/gim,"$1")).replace(/(?=(\s*))\2([<\[]\/(?:audio|video)[>\]])/gim,"$1")).replace(/(?=(\s*))\2(<(?:source|track)[^>]*>)(?=(\s*))\2/gim,"$1"):i).replace(/\n\n+/gim,"\n\n")).split(/\n\s*\n/);i="",r.forEach(function(e){i+="

"+e.replace(/^(?:\s+|\s+)$/g,"")+"

\n"}),i=(i=(i=(i=(i=(i=(i=(i=i.replace(/

\s*<\/p>/gim,"")).replace(/

([^<]+)<\/(div|address|form)>/gim,"

$1

")).replace(new RegExp("

s*(]*>)s*

","gmi"),"$1",i)).replace(/

(/gim,"$1")).replace(/

]*)>/gim,"

")).replace(/<\/blockquote><\/p>/gim,"

")).replace(new RegExp("

s*(]*>)","gmi"),"$1")).replace(new RegExp("(]*>)s*

","gmi"),"$1"),i=(i=(i=(i=e?(i=(i=i.replace(/<(script|style)(?:.|\n)*?<\/\\1>/gim,function(e){return e[0].replace("\n","")})).replace(/(
)?((?=(\s*))\2)\n/gim,"
\n")).replace("","\n"):i).replace(new RegExp("(]*>)s*
","gmi"),"$1")).replace(/
(\s*<\/?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)[^>]*>)/gim,"$1")).replace(/\n<\/p>$/gim,"

"),Object.keys(o).length&&(i=i.replace(new RegExp(Object.keys(o).join("|"),"gi"),function(e){return o[e]}))}return i},initMediaLibrary(t){const r=wp.media.frames.wpforms_media_frame=wp.media({className:"media-frame wpforms-media-frame",multiple:!1,title:t.title,library:{type:t.extensions},button:{text:t.buttonText}});return r.on("uploader:ready",function(){var e=t.extensions.join(",");jQuery('.wpforms-media-frame .moxie-shim-html5 input[type="file"]').attr("accept",e)}).on("library:selection:add",function(){var e=r.state().get("selection").first().toJSON();t.extensions.includes(e.file.type)||(alert(t.extensionsError),r.state().get("selection").reset())}),r},isInViewport(e){e=e[0].getBoundingClientRect();return 0<=e.top&&0<=e.left&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)},copyValueToClipboard(e,t,r){e.preventDefault(),navigator.clipboard?navigator.clipboard.writeText(r.val()).then(function(){t.find("span").removeClass("dashicons-admin-page").addClass("dashicons-yes-alt")}):(r.attr("disabled",!1).focus().select(),document.execCommand("copy"),t.find("span").removeClass("dashicons-admin-page").addClass("dashicons-yes-alt"),r.attr("disabled",!0))},isRepeatedCall(e,t=500){return wpf.isRepeatedCallData=wpf.isRepeatedCallData||{},!!wpf.isRepeatedCallData[e]||(wpf.isRepeatedCallData[e]=!0,setTimeout(()=>wpf.isRepeatedCallData[e]=!1,t),!1)}};wpf.init();