Files
tysweld.com/wp-content/plugins/wp-optimize-premium/js/wpo-asset-preload-3-4-2.min.js
2025-02-24 22:33:42 +01:00

1 line
4.5 KiB
JavaScript

!function(e){function t(t,i){e("#hpreload").val(JSON.stringify(i)),e("#hpreload").trigger("change")}function i(e){switch(s(e)){case"js":case"json":return"script";case"jpg":case"jpeg":case"png":case"gif":case"webp":return"image";case"css":return"style";case"eot":case"ttf":case"woff":case"woff2":return"font"}return!1}function s(e){return e.split(/[#?]/)[0].split(".").pop().trim().toLowerCase()}wp_optimize.asset_preload=wp_optimize.asset_preload||{};var o={app:Backbone.View.extend({initialize:function(){this.$no_items=this.$el.find(".nothing"),this.$list=e(".asset-preload-list tbody"),"function"==typeof URL&&(this.home_url=new URL(wp_optimize_minify_premium.home_url)),this.listenTo(wp_optimize.asset_preload.items,"add",this.add_item),this.listenTo(wp_optimize.asset_preload.items,"remove",this.check_contents),this.render()},events:{"click .add-asset":"on_add_asset_press"},render:function(){wp_optimize.asset_preload.items.length?(this.$no_items.hide(),wp_optimize.asset_preload.items.each(function(e){this.add_item(e)},this)):this.$no_items.show()},check_contents:function(){wp_optimize.asset_preload.items.length?this.$no_items.hide():this.$no_items.show()},on_add_asset_press:function(e){e.preventDefault(),this.show_form("add",".asset-preload-list tbody",new Backbone.Model({href:"",type:"",crossorigin:""}))},show_form:function(t,i,s){var a={action:t,where:i};s&&(a.model=s),this.form&&this.form.remove(),this.form=new o.form(a),this.$el.find(".add-asset, .asset-edit button").hide(),e(i).after(this.form.$el)},hide_form:function(){this.$el.find(".add-asset, .asset-edit button").show(),this.form.remove()},add_item:function(e){this.$no_items.hide();var t=new o.item({model:e});this.$list.append(t.$el)}}),form:Backbone.View.extend({tagName:"tr",className:"form",template:wp.template("wpo-asset-preload--form"),events:{"click .cancel":"cancel","click .add-item":"add_item","change #preload_href":"detect_values","keypress #preload_href":"on_keypress"},initialize:function(e){this.options=e,this.render(),this.$href=this.$el.find("#preload_href"),this.$type=this.$el.find("#preload_type"),this.$crossorigin=this.$el.find("#preload_crossorigin"),this.model&&this.model.get("type")&&this.$type.val(this.model.get("type"))},render:function(){this.$el.append(this.template(this.model.attributes)),"edit"===this.options.action&&this.$el.find(".add-item").text(this.$el.find(".add-item").data("alt-label"))},cancel:function(){wp_optimize.asset_preload.app.hide_form(),e(this.options.where).trigger("cancelled-edit")},add_item:function(){""!=this.$href.val().trim()&&("add"===this.options.action?wp_optimize.asset_preload.items.add({href:this.$href.val(),type:this.$type.val(),crossorigin:this.$crossorigin.is(":checked")}):(wp_optimize.asset_preload.items.remove(this.model),wp_optimize.asset_preload.items.add({href:this.$href.val(),type:this.$type.val(),crossorigin:this.$crossorigin.is(":checked")})),wp_optimize.asset_preload.app.hide_form(),setTimeout(function(){e("#wpo_minify_settings_form .wp-optimize-save-minify-settings").trigger("click")},1200))},detect_values:function(e){var t=this.$href.val();if((type=i(t))&&this.$type.val(type),wp_optimize.asset_preload.app.home_url){var s=new URL(t,wp_optimize.asset_preload.app.home_url.origin);s.host!=wp_optimize.asset_preload.app.home_url.host&&this.$crossorigin.prop("checked",!0)}},on_keypress:function(e){"Enter"==e.code&&(e.preventDefault(),this.$href.val().length&&(e.target.blur(),this.add_item()))}}),item:Backbone.View.extend({tagName:"tr",template:wp.template("wpo-asset-preload--item"),events:{"click .wpo-asset--edit":"edit","click .wpo-asset--delete":"delete_item","cancelled-edit":"cancel"},initialize:function(){this.render(),this.listenTo(this.model,"change",this.render),this.listenTo(this.model,"destroy",this.remove)},render:function(){this.$el.removeClass("editing"),this.$el.html(this.template(this.model.attributes))},edit:function(){this.$el.addClass("editing"),wp_optimize.asset_preload.app.show_form("edit",this.$el,this.model)},delete_item:function(){this.model.destroy(),setTimeout(function(){e("#wpo_minify_settings_form .wp-optimize-save-minify-settings").trigger("click")},1200)},cancel:function(){this.$el.removeClass("editing")}})};e(function(){var i=e("#hpreload").val();if(i)try{data=JSON.parse(i)}catch(s){data=[],console.log("There was an error parsing the data:",s,i)}else data=[];var a=new Backbone.Collection(data);a.on("change",t),a.on("add",t),a.on("remove",t),wp_optimize.asset_preload.raw_data=i,wp_optimize.asset_preload.items=a,wp_optimize.asset_preload.app=new o.app({el:e(".asset-preload-main")})})}(jQuery);