wp.mediaWidgets=function(m){"use strict";var p={controlConstructors:{},modelConstructors:{}};return p.PersistentDisplaySettingsLibrary=wp.media.controller.Library.extend({initialize:function(e){_.bindAll(this,"handleDisplaySettingChange"),wp.media.controller.Library.prototype.initialize.call(this,e)},handleDisplaySettingChange:function(e){this.get("selectedDisplaySettings").set(e.attributes)},display:function(e){var t=this.get("selectedDisplaySettings"),e=wp.media.controller.Library.prototype.display.call(this,e);return e.off("change",this.handleDisplaySettingChange),e.set(t.attributes),"custom"===t.get("link_type")&&(e.linkUrl=t.get("link_url")),e.on("change",this.handleDisplaySettingChange),e}}),p.MediaEmbedView=wp.media.view.Embed.extend({refresh:function(){var e="image"===this.controller.options.mimeType?wp.media.view.EmbedImage:wp.media.view.EmbedLink.extend({setAddToWidgetButtonDisabled:function(e){this.views.parent.views.parent.views.get(".media-frame-toolbar")[0].$el.find(".media-button-select").prop("disabled",e)},setErrorNotice:function(e){var t=this.views.parent.$el.find("> .notice:first-child");e?(t.length||((t=m('
')).hide(),this.views.parent.$el.prepend(t)),t.empty(),t.append(m("

",{html:e})),t.slideDown("fast")):t.length&&t.slideUp("fast")},fetch:function(){var t,e,i,n=this;if(n.dfd&&"pending"===n.dfd.state()&&n.dfd.abort(),n.model.get("url")){if(t=function(e){n.renderoEmbed({data:{body:e}}),m("#embed-url-field").removeClass("invalid"),n.setErrorNotice(""),n.setAddToWidgetButtonDisabled(!1)},(i=document.createElement("a")).href=n.model.get("url"),e=i.pathname.toLowerCase().match(/\.(\w+)$/))return e=e[1],void(!wp.media.view.settings.embedMimes[e]||0!==wp.media.view.settings.embedMimes[e].indexOf(n.controller.options.mimeType)?n.renderFail():t("\x3c!--success--\x3e"));"video"!==this.controller.options.mimeType||/vimeo|youtu\.?be/.test(i.host)?(n.dfd=m.ajax({url:wp.media.view.settings.oEmbedProxyUrl,data:{url:n.model.get("url"),maxwidth:n.model.get("width"),maxheight:n.model.get("height"),_wpnonce:wp.media.view.settings.nonce.wpRestApi,discover:!1},type:"GET",dataType:"json",context:n}),n.dfd.done(function(e){n.controller.options.mimeType===e.type?t(e.html):n.renderFail()}),n.dfd.fail(_.bind(n.renderFail,n))):n.renderFail()}else n.setErrorNotice("")},renderFail:function(){var e=this;m("#embed-url-field").addClass("invalid"),e.setErrorNotice(e.controller.options.invalidEmbedTypeError||"ERROR"),e.setAddToWidgetButtonDisabled(!0)}});this.settings(new e({controller:this.controller,model:this.model.props,priority:40}))}}),p.MediaFrameSelect=wp.media.view.MediaFrame.Post.extend({createStates:function(){var t=this.options.mimeType,i=[];_.each(wp.media.view.settings.embedMimes,function(e){0===e.indexOf(t)&&i.push(e)}),0 .widget-inside > .form, > .widget-inside > form"),l=r.find("> .id_base").val(),c=r.find("> .widget-id").val();p.widgetControls[c]||(i=p.controlConstructors[l])&&(o=p.modelConstructors[l]||p.MediaWidgetModel,r=m("

"),(l=t.find(".widget-content:first")).before(r),n={},l.find(".media-widget-instance-property").each(function(){var e=m(this);n[e.data("property")]=e.val()}),n.widget_id=c,o=new o(n),d=new i({el:r,syncContainer:l,model:o}),a=t.parent(),(s=function(){a.is(":animated")?setTimeout(s,50):d.render()})(),p.modelCollection.add([o]),p.widgetControls[o.get("widget_id")]=d)},p.setupAccessibleMode=function(){var e,t,i,n,d,o=m(".editwidget > form");0!==o.length&&(d=o.find("> .widget-control-actions > .id_base").val(),(t=p.controlConstructors[d])&&(e=o.find("> .widget-control-actions > .widget-id").val(),i=p.modelConstructors[d]||p.MediaWidgetModel,d=m("
"),(o=o.find("> .widget-inside")).before(d),n={},o.find(".media-widget-instance-property").each(function(){var e=m(this);n[e.data("property")]=e.val()}),n.widget_id=e,i=new t({el:d,syncContainer:o,model:new i(n)}),p.modelCollection.add([i.model]),(p.widgetControls[i.model.get("widget_id")]=i).render()))},p.handleWidgetUpdated=function(e,t){var i={},n=t.find("> .widget-inside > .form, > .widget-inside > form"),t=n.find("> .widget-id").val(),t=p.widgetControls[t];t&&(n.find("> .widget-content").find(".media-widget-instance-property").each(function(){var e=m(this).data("property");i[e]=m(this).val()}),t.stopListening(t.model,"change",t.syncModelToInputs),t.model.set(i),t.listenTo(t.model,"change",t.syncModelToInputs))},p.init=function(){var e=m(document);e.on("widget-added",p.handleWidgetAdded),e.on("widget-synced widget-updated",p.handleWidgetUpdated),m(function(){"widgets"===window.pagenow&&(m(".widgets-holder-wrap:not(#available-widgets)").find("div.widget").one("click.toggle-widget-expanded",function(){var e=m(this);p.handleWidgetAdded(new jQuery.Event("widget-added"),e)}),m(window).on("load",function(){p.setupAccessibleMode()}))})},p}(jQuery);