froala-editor
Version:
The next generation Javascript WYSIWYG HTML rich text editor made by devs for devs. High performance and modern design make it easy to use for developers and loved by users.
7 lines (6 loc) • 42.4 kB
JavaScript
/*!
* froala_editor v5.0.1 (https://www.froala.com/wysiwyg-editor)
* License https://froala.com/wysiwyg-editor/terms/
* Copyright 2014-2026 Froala Labs
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(require("froala-editor")):"function"==typeof define&&define.amd?define(["froala-editor"],t):t(("undefined"!=typeof globalThis?globalThis:e||self).FroalaEditor)}(this,function(te){"use strict";Object.assign(te.POPUP_TEMPLATES,{"video.insert":"[_BUTTONS_][_BY_URL_LAYER_][_EMBED_LAYER_][_UPLOAD_LAYER_][_PROGRESS_BAR_]","video.edit":"[_BUTTONS_]","video.size":"[_BUTTONS_][_SIZE_LAYER_]"}),Object.assign(te.DEFAULTS,{videoAllowedTypes:["mp4","webm","ogg","mp3","mpeg","url"],videoAllowedProviders:[".*"],videoDefaultAlign:"center",videoDefaultDisplay:"block",videoDefaultWidth:600,videoEditButtons:["videoReplace","videoRemove","videoDisplay","videoAlign","videoSize","autoplay"],videoInsertButtons:["videoBack","|","videoByURL","videoEmbed","videoUpload"],videoMaxSize:52428800,videoMove:!0,videoResize:!0,videoResponsive:!1,videoSizeButtons:["videoBack","|"],videoSplitHTML:!1,videoTextNear:!0,videoUpload:!0,videoUploadMethod:"POST",videoUploadParam:"file",videoUploadParams:{},videoUploadToS3:!1,videoUploadToAzure:!1,videoUploadURL:null}),te.VIDEO_PROVIDERS=[{test_regex:/^.*((youtu.be)|(youtube.com))\/((v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))?\/?((shorts\/)|(v=))?([^#\&\?]*).*/,url_regex:/(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=|embed\/|shorts\/)?([0-9a-zA-Z_\-]+)(.*)?/g,url_text:"https://www.youtube.com/embed/$1?$2",html:'<iframe width="640" height="360" src="{url}&wmode=opaque&rel=0" frameborder="0" allowfullscreen></iframe>',provider:"youtube"},{test_regex:/^https?:\/\/(www\.)?vimeo\.com\/(event\/\d+(\/embed\/[A-Za-z0-9]+)?|\d+)/i,url_regex:/(?:https?:\/\/)?(?:www\.|player\.)?vimeo\.com\/(?:(?:channels\/(?:\w+\/)?|groups\/(?:[^\/]*)\/videos\/|album\/\d+\/video\/|video\/|event\/\d+\/embed\/)?([0-9]+)(?:\/[a-zA-Z0-9_\-]+)?(\?.*)?)/i,url_text:function(e){var t,o;return(!e.includes("/event/")||!e.includes("/embed/"))&&(o=e.match(/vimeo\.com\/(\d+)(\?.*)?/))?(t=o[1],o=o[2]||"","https://player.vimeo.com/video/".concat(t).concat(o)):e},html:'<iframe width="640" height="360" src="{url}" frameborder="0" allowfullscreen></iframe>',provider:"vimeo"},{test_regex:/^.+(dailymotion.com|dai.ly)\/(video|hub)?\/?([^_]+)[^#]*(#video=([^_&]+))?/,url_regex:/(?:https?:\/\/)?(?:www\.)?(?:dailymotion\.com|dai\.ly)\/(?:video|hub)?\/?(.+)/g,url_text:"https://www.dailymotion.com/embed/video/$1",html:'<iframe width="640" height="360" src="{url}" frameborder="0" allowfullscreen></iframe>',provider:"dailymotion"},{test_regex:/^.+(screen.yahoo.com)\/[^_&]+/,url_regex:"",url_text:"",html:'<iframe width="640" height="360" src="{url}?format=embed" frameborder="0" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true" allowtransparency="true"></iframe>',provider:"yahoo"},{test_regex:/^.+(rutube.ru)\/[^_&]+/,url_regex:/(?:https?:\/\/)?(?:www\.)?(?:rutube\.ru)\/(?:video)?\/?(.+)/g,url_text:"https://rutube.ru/play/embed/$1",html:'<iframe width="640" height="360" src="{url}" frameborder="0" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true" allowtransparency="true"></iframe>',provider:"rutube"},{test_regex:/^(?:.+)vidyard.com\/(?:watch)?\/?([^.&/]+)\/?(?:[^_.&]+)?/,url_regex:/^(?:.+)vidyard.com\/(?:watch)?\/?([^.&/]+)\/?(?:[^_.&]+)?/g,url_text:"https://play.vidyard.com/$1",html:'<iframe width="640" height="360" src="{url}" frameborder="0" allowfullscreen></iframe>',provider:"vidyard"}],te.VIDEO_EMBED_REGEX=/^\W*(<div[^>]*>\s*<iframe[^>]*>.*?<\/iframe>\s*<\/div>(\s*<script[^>]*>.*?<\/script>)?|<iframe[^>]*>.*?<\/iframe>|<embed(.|\n)*>)\W*$/i,te.PLUGINS.video=function(v){var n,s,d,u,i,o,g=v.$,L="https://i.froala.com/upload",c=2,O=3,p=4,M=5,h=6,a={};function V(){var e=v.popups.get("video.insert"),t=(e.find(".fr-video-by-url-layer input").val("").trigger("change"),e.find(".fr-video-embed-layer textarea"));t.val("").trigger("change"),(t=e.find(".fr-video-upload-layer input")).val("").trigger("change")}function r(){var e,t,o,i;(v.popups.get("video.edit")||function(){var e="";if(0<v.opts.videoEditButtons.length)return v.opts.videoResponsive&&(-1<v.opts.videoEditButtons.indexOf("videoSize")&&v.opts.videoEditButtons.splice(v.opts.videoEditButtons.indexOf("videoSize"),1),-1<v.opts.videoEditButtons.indexOf("videoDisplay")&&v.opts.videoEditButtons.splice(v.opts.videoEditButtons.indexOf("videoDisplay"),1),-1<v.opts.videoEditButtons.indexOf("videoAlign"))&&v.opts.videoEditButtons.splice(v.opts.videoEditButtons.indexOf("videoAlign"),1),e={buttons:e+='<div class="fr-buttons"> \n '.concat(v.button.buildList(v.opts.videoEditButtons)," \n </div>")},e=v.popups.create("video.edit",e),v.events.$on(v.$wp,"scroll.video-edit",function(){u&&v.popups.isVisible("video.edit")&&(v.events.disableBlur(),C(u))}),e;return!1}())&&(v.popups.setContainer("video.edit",v.$sc),v.popups.refresh("video.edit"),t=(e=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video"))).offset().left+e.outerWidth()/2,o=e.offset().top+e.outerHeight(),i=!(!(i=(i=(i=e.get(0).src?e.get(0).src:e.get(0).currentSrc).split("."))[i.length-1]).includes("pdf")&&!i.includes("txt")),e.hasClass("fr-file")||i||u.find("audio").get(0)?(document.getElementById("autoplay-".concat(v.id))&&(document.getElementById("autoplay-".concat(v.id)).style.display="none"),document.getElementById("videoReplace-".concat(v.id))&&(document.getElementById("videoReplace-".concat(v.id)).style.display="none")):(document.getElementById("autoplay-".concat(v.id))&&(document.getElementById("autoplay-".concat(v.id)).style.display=""),document.getElementById("videoReplace-".concat(v.id))&&(document.getElementById("videoReplace-".concat(v.id)).style.display="")),v.popups.show("video.edit",t,o,e.outerHeight(),!0))}function l(e){var t,o,i,a,r,n,s,d;return e?(v.popups.onRefresh("video.insert",V),v.popups.onHide("video.insert",Q),!0):(e="",v.opts.videoUpload||-1===v.opts.videoInsertButtons.indexOf("videoUpload")||v.opts.videoInsertButtons.splice(v.opts.videoInsertButtons.indexOf("videoUpload"),1),""!==(a=v.button.buildList(v.opts.videoInsertButtons))&&(e='<div class="fr-buttons">'+a+"</div>"),a="",t=v.opts.videoInsertButtons.indexOf("videoUpload"),o=v.opts.videoInsertButtons.indexOf("videoByURL"),s=v.opts.videoInsertButtons.indexOf("videoEmbed"),0<=o&&(i=" fr-active",a='<div class="fr-video-by-url-layer fr-layer'.concat(i=t<o&&0<=t||s<o&&0<=s?"":i,'" id="fr-video-by-url-layer-').concat(v.id,'"><div class="fr-input-line"><input id="fr-video-by-url-layer-text-').concat(v.id,'" type="text" placeholder="').concat(v.language.translate("Paste in a video URL"),'" tabIndex="1" aria-required="true"></div><div class="fr-action-buttons"><span style=\'float:left\'><div class="fr-checkbox-line fr-autoplay-margin"><span class="fr-checkbox"> <input id=\'videoPluginAutoplay\' data-checked="_blank" type="checkbox" aria-label="').concat(v.language.translate("Autoplay"),'"><span>').concat('<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="10" viewBox="0 0 32 32"><path d="M27 4l-15 15-7-7-5 5 12 12 20-20z" fill="#FFF"></path></svg>','</span></span> <label id="fr-label-target-').concat(v.id,'">').concat(v.language.translate("Autoplay"),'</label></div> </span><button type="button" class="fr-command fr-submit" data-cmd="videoInsertByURL" tabIndex="2" role="button">').concat(v.language.translate("Insert"),"</button></div></div>")),r="",0<=s&&(i=" fr-active",r='<div class="fr-video-embed-layer fr-layer'.concat(i=t<s&&0<=t||o<s&&0<=o?"":i,'" id="fr-video-embed-layer-').concat(v.id,'"><div class="fr-input-line"><textarea id="fr-video-embed-layer-text').concat(v.id,'" type="text" placeholder="').concat(v.language.translate("Embedded Code"),'" tabIndex="1" aria-required="true" rows="5"></textarea></div><div class="fr-action-buttons"><button type="button" class="fr-command fr-submit" data-cmd="videoInsertEmbed" tabIndex="2" role="button">').concat(v.language.translate("Insert"),"</button></div></div>")),n="",0<=t&&(i=" fr-active",n='<div class="fr-video-upload-layer fr-layer'.concat(i=s<t&&0<=s||o<t&&0<=o?"":i,'" id="fr-video-upload-layer-').concat(v.id,'"><strong>').concat(v.language.translate("Drop video"),"</strong><br>(").concat(v.language.translate("or click"),')<div class="fr-form"><input type="file" accept="video/').concat(v.opts.videoAllowedTypes.join(", video/").toLowerCase(),'" tabIndex="-1" aria-labelledby="fr-video-upload-layer-').concat(v.id,'" role="button"></div></div>')),s=v.popups.create("video.insert",{buttons:e,by_url_layer:a,embed_layer:r,upload_layer:n,progress_bar:'<div class="fr-video-progress-bar-layer fr-layer"><h3 tabIndex="-1" class="fr-message">Uploading</h3><div class="fr-loader"><span class="fr-progress"></span></div><div class="fr-action-buttons"><button type="button" class="fr-command fr-dismiss" data-cmd="videoDismissError" tabIndex="2" role="button">OK</button></div></div>'}),d=s,v.events.$on(d,"dragover dragenter",".fr-video-upload-layer",function(){return g(this).addClass("fr-drop"),!1},!0),v.events.$on(d,"dragleave dragend",".fr-video-upload-layer",function(){return g(this).removeClass("fr-drop"),!1},!0),v.events.$on(d,"drop",".fr-video-upload-layer",function(e){e.preventDefault(),e.stopPropagation(),g(this).removeClass("fr-drop");var t,e=e.originalEvent.dataTransfer;e&&e.files&&((t=d.data("instance")||v).events.disableBlur(),t.video.upload(e.files),t.events.enableBlur())},!0),v.helpers.isIOS()&&v.events.$on(d,"touchstart",'.fr-video-upload-layer input[type="file"]',function(){g(this).trigger("click")},!0),v.events.$on(d,"change",'.fr-video-upload-layer input[type="file"]',function(){var e;this.files&&((e=d.data("instance")||v).events.disableBlur(),d.find("input:focus").blur(),e.events.enableBlur(),e.video.upload(this.files)),g(this).val("")},!0),s)}function f(e){v.events.focus(!0),v.selection.restore();var t=!1,o=(u&&(T(),t=!0),v.opts.trackChangesEnabled?(v.edit.on(),v.events.focus(!0),v.selection.restore(),v.undo.saveStep(),v.markers.insert(),v.html.wrap(),o=v.$el.find(".fr-marker"),v.node.isLastSibling(o)&&o.parent().hasClass("fr-deletable")&&o.insertAfter(o.parent()),o.replaceWith('<span contenteditable="false" draggable="true" class="fr-jiv fr-video fr-deletable">'.concat(e,"</span>")),v.selection.clear()):v.html.insert('<span contenteditable="false" draggable="true" class="fr-jiv fr-video fr-deletable">'.concat(e,"</span>"),!1,v.opts.videoSplitHTML),v.popups.hide("video.insert"),v.$el.find(".fr-jiv"));o.removeClass("fr-jiv"),o.toggleClass("fr-rv",v.opts.videoResponsive),z(o,v.opts.videoDefaultDisplay,v.opts.videoDefaultAlign),o.toggleClass("fr-draggable",v.opts.videoMove),v.events.trigger(t?"video.replaced":"video.inserted",[o])}function m(){var e=g(this);v.popups.hide("video.insert"),e.removeClass("fr-uploading"),e.parent().next().is("br")&&e.parent().next().remove(),C(e.parent()),v.events.trigger("video.loaded",[e.parent()])}function b(s,e,d,l,c,p){v.edit.off(),E("Loading video"),e&&(s=v.helpers.sanitizeURL(s));var f=function f(){var e,t;if(l){v.undo.canDo()||l.find("video").hasClass("fr-uploading")||v.undo.saveStep();var o=l.find("video").data("fr-old-src"),i=l.data("fr-replaced");if(l.data("fr-replaced",!1),0<l.find("iframe").length)l.remove(),e=F(s,d,m);else{v.$wp?((e=l.clone(!0)).find("video").removeData("fr-old-src").removeClass("fr-uploading"),e.find("video").off("canplay"),o&&l.find("video").attr("src",o),l.replaceWith(e)):e=l;for(var a=e.find("video").get(0).attributes,r=0;r<a.length;r++){var n=a[r];0===n.nodeName.indexOf("data-")&&e.find("video").removeAttr(n.nodeName)}if(void 0!==d)for(t in d)d.hasOwnProperty(t)&&"link"!=t&&e.find("video").attr("data-".concat(t),d[t]);e.find("video").on("canplay",m),e.find("video").attr("src",s)}v.edit.on(),U(),v.undo.saveStep(),v.$el.blur(),v.events.trigger(i?"video.replaced":"video.inserted",[e,c])}else e=F(s,d,m,p),U(),v.undo.saveStep(),v.events.trigger("video.inserted",[e,c])};y("Loading video"),f()}function y(e){var t,o,i=v.popups.get("video.insert");(i=i||l()).find(".fr-layer.fr-active").removeClass("fr-active").addClass("fr-pactive"),i.find(".fr-video-progress-bar-layer").addClass("fr-active"),i.find(".fr-buttons").hide(),u&&(i=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video")),v.popups.setContainer("video.insert",v.$sc),t=i.offset().left,o=i.offset().top+i.height(),v.popups.show("video.insert",t,o,i.outerHeight())),void 0===e&&E(v.language.translate("Uploading"),0)}function w(e){var t=v.popups.get("video.insert");t&&(t.find(".fr-layer.fr-pactive").addClass("fr-active").removeClass("fr-pactive"),t.find(".fr-video-progress-bar-layer").removeClass("fr-active"),t.find(".fr-buttons").show(),e||v.$el.find("video.fr-error").length)&&(v.events.focus(),v.$el.find("video.fr-error").length&&(v.$el.find("video.fr-error").parent().remove(),v.undo.saveStep(),v.undo.run(),v.undo.dropRedo()),!v.$wp&&u&&(t=u,_(!0),v.selection.setAfter(t.find("video").get(0)),v.selection.restore()),v.popups.hide("video.insert"))}function E(e,t){var o=v.popups.get("video.insert");o&&((o=o.find(".fr-video-progress-bar-layer")).find("h3").text(e+(t?" ".concat(t,"%"):"")),o.removeClass("fr-error"),t?(o.find("div").removeClass("fr-indeterminate"),o.find("div > span").css("width","".concat(t,"%"))):o.find("div").addClass("fr-indeterminate"))}function A(e){y();var t=v.popups.get("video.insert").find(".fr-video-progress-bar-layer"),t=(t.addClass("fr-error"),t.find("h3"));t.text(e),v.events.disableBlur(),t.focus()}function C(e){t.call(e.get(0))}function N(e,t,o){E("Loading video");var i,a,r=this.status,n=this.response,s=this.responseXML,d=this.responseText;try{if(v.opts.videoUploadToS3||v.opts.videoUploadToAzure)if(201==r){if(v.opts.videoUploadToAzure){if(!1===v.events.trigger("video.uploadedToAzure",[this.responseURL,o,n],!0))return v.edit.on(),!1;a=t}else a=function(e){try{var t=g(e).find("Location").text(),o=g(e).find("Key").text();return!1===v.events.trigger("video.uploadedToS3",[t,o,e],!0)?(v.edit.on(),!1):t}catch(i){return D(p,e),!1}}(s);a&&b(a,!1,[],e,n||s)}else D(p,n||s);else 200<=r&&r<300?(i=function(e){try{var t;return!1===v.events.trigger("video.uploaded",[e],!0)?(v.edit.on(),!1):(t=JSON.parse(e)).link?t:(D(c,e),!1)}catch(o){return D(p,e),!1}}(d))&&b(i.link,!1,i,e,n||d):D(O,n||d)}catch(l){D(p,n||d)}}function Y(){D(p,this.response||this.responseText||this.responseXML)}function H(e){e.lengthComputable&&(e=e.loaded/e.total*100|0,E(v.language.translate("Uploading"),e))}function K(){v.edit.on(),w(!0)}function F(e,t,o,i){var a,r="";if(t&&void 0!==t)for(a in t)t.hasOwnProperty(a)&&"link"!=a&&(r+=" ".concat(a,'="').concat(t[a],'"'));var n=v.opts.videoDefaultWidth,n=(n&&"auto"!=n&&(n="".concat(n,"px")),v.helpers.isMobile()&&v.browser.safari&&(r+=" autoplay playsinline"),(e="audio"==i?g(document.createElement("span")).attr("contenteditable","false").attr("draggable","true").attr("class","fr-video fr-dv"+v.opts.videoDefaultDisplay[0]+("center"!=v.opts.videoDefaultAlign?" fr-fv"+v.opts.videoDefaultAlign[0]:"")).html('<audio src="'+e+'" '+r+" controls>"+v.language.translate("Your browser does not support HTML5 video.")+"</audio>"):g(document.createElement("span")).attr("contenteditable","false").attr("draggable","true").attr("class","fr-video fr-dv"+v.opts.videoDefaultDisplay[0]+("center"!=v.opts.videoDefaultAlign?" fr-fv"+v.opts.videoDefaultAlign[0]:"")).html('<video src="'+e+'" '+r+(n?' style="width: '+n+';" ':"")+" controls>"+v.language.translate("Your browser does not support HTML5 video.")+"</video>")).toggleClass("fr-draggable",v.opts.videoMove),v.edit.on(),v.events.focus(!0),v.selection.restore(),v.undo.saveStep(),v.opts.videoSplitHTML?v.markers.split():(v.cursor.enter(),v.markers.insert()),v.html.wrap(),v.$el.find(".fr-marker"));return v.node.isLastSibling(n)&&n.parent().hasClass("fr-deletable")&&n.insertAfter(n.parent()),n.replaceWith(e),v.selection.clear(),"audio"!==i&&(e.find("video").get(0).readyState>e.find("video").get(0).HAVE_FUTURE_DATA||v.helpers.isIOS()?o.call(e.find("video").get(0)):e.find("video").on("canplaythrough load",o)),e}function X(e){if(!v.core.sameInstance(d))return!0;e.preventDefault(),e.stopPropagation();var t=e.pageX||(e.originalEvent.touches?e.originalEvent.touches[0].pageX:null),o=e.pageY||(e.originalEvent.touches?e.originalEvent.touches[0].pageY:null);if(!t||!o)return!1;if("mousedown"==e.type){var i=v.$oel.get(0).ownerDocument,i=i.defaultView||i.parentWindow,a=!1;try{a=i.location!=i.parent.location&&!(i.$&&i.$.FE)}catch(r){}a&&i.frameElement&&(t+=v.helpers.getPX(g(i.frameElement).offset().left)+i.frameElement.clientLeft,o=e.clientY+v.helpers.getPX(g(i.frameElement).offset().top)+i.frameElement.clientTop)}v.undo.canDo()||v.undo.saveStep(),(s=g(this)).data("start-x",t),s.data("start-y",o),n.show(),v.popups.hideAll(),B()}function G(e){if(!v.core.sameInstance(d))return!0;if(s){e.preventDefault();var t=e.pageX||(e.originalEvent.touches?e.originalEvent.touches[0].pageX:null),e=e.pageY||(e.originalEvent.touches?e.originalEvent.touches[0].pageY:null);if(!t||!e)return!1;var o=s.data("start-x"),i=s.data("start-y"),t=(s.data("start-x",t),s.data("start-y",e),t-o),o=e-i,e=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video")),i=e.width(),a=e.height();(s.hasClass("fr-hnw")||s.hasClass("fr-hsw"))&&(t=0-t),(s.hasClass("fr-hnw")||s.hasClass("fr-hne"))&&(o=0-o),e.css("width",i+t),e.css("height",a+o),e.removeAttr("width"),e.removeAttr("height"),R()}}function S(e){if(!v.core.sameInstance(d))return!0;s&&u&&(e&&e.stopPropagation(),s=null,n.hide(),R(),r(),v.undo.saveStep())}function x(e){return'<div class="fr-handler fr-h'.concat(e,'"></div>')}function j(e,t,o,i){return e.pageX=t,e.pageY=t,X.call(this,e),e.pageX=e.pageX+o*Math.floor(Math.pow(1.1,i)),e.pageY=e.pageY+o*Math.floor(Math.pow(1.1,i)),G.call(this,e),S.call(this,e),++i}function U(){for(var e=Array.prototype.slice.call(v.el.querySelectorAll("video, .fr-video > *")),t=[],o=0;o<e.length;o++)t.push(e[o].getAttribute("src")),g(e[o]).toggleClass("fr-draggable",v.opts.videoMove),""===e[o].getAttribute("class")&&e[o].removeAttribute("class"),""===e[o].getAttribute("style")&&e[o].removeAttribute("style");if(i)for(o=0;o<i.length;o++)t.indexOf(i[o].getAttribute("src"))<0&&v.events.trigger("video.removed",[g(i[o])]);i=e}function R(){d||(v.shared.$video_resizer?(d=v.shared.$video_resizer,n=v.shared.$vid_overlay,v.events.on("destroy",function(){g("body").first().append(d.removeClass("fr-active"))},!0)):(v.shared.$video_resizer=g(document.createElement("div")).attr("class","fr-video-resizer"),d=v.shared.$video_resizer,v.events.$on(d,"mousedown",function(e){e.stopPropagation()},!0),v.opts.videoResize&&(d.append(x("nw")+x("ne")+x("sw")+x("se")),v.shared.$vid_overlay=g(document.createElement("div")).attr("class","fr-video-overlay"),n=v.shared.$vid_overlay,e=d.get(0).ownerDocument,g(e).find("body").first().append(n))),v.events.on("shared.destroy",function(){d.html("").removeData().remove(),d=null,v.opts.videoResize&&(n.remove(),n=null)},!0),v.helpers.isMobile()||v.events.$on(g(v.o_win),"resize.video",function(){_(!0)}),v.opts.videoResize&&(e=d.get(0).ownerDocument,v.events.$on(d,v._mousedown,".fr-handler",X),v.events.$on(g(e),v._mousemove,G),v.events.$on(g(e.defaultView||e.parentWindow),v._mouseup,S),v.events.$on(n,"mouseleave",S),i=1,a=null,r=0,v.events.on("keydown",function(e){var t,o;u&&(t=-1!=navigator.userAgent.indexOf("Mac OS X")?e.metaKey:e.ctrlKey,((o=e.which)!==a||200<e.timeStamp-r)&&(i=1),(o==te.KEYCODE.EQUALS||v.browser.mozilla&&o==te.KEYCODE.FF_EQUALS)&&t&&!e.altKey?i=j.call(this,e,1,1,i):(o==te.KEYCODE.HYPHEN||v.browser.mozilla&&o==te.KEYCODE.FF_HYPHEN)&&t&&!e.altKey&&(i=j.call(this,e,2,-1,i)),a=o,r=e.timeStamp)}),v.events.on("keyup",function(){i=1}))),(v.$wp||v.$sc).append(d),d.data("instance",v);var i,a,r,e=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video")),t=0,o=0;v.opts.iframe&&(o=v.helpers.getPX(v.$wp.find(".fr-iframe").css("padding-top")),t=v.helpers.getPX(v.$wp.find(".fr-iframe").css("padding-left"))),d.css("top",(v.opts.iframe?e.offset().top+o-1:e.offset().top-v.$wp.offset().top-1)+v.$wp.scrollTop()).css("left",(v.opts.iframe?e.offset().left+t-1:e.offset().left-v.$wp.offset().left-1)+v.$wp.scrollLeft()).css("width",e.get(0).getBoundingClientRect().width).css("height",e.get(0).getBoundingClientRect().height).addClass("fr-active")}function t(e){if(e&&"touchend"==e.type&&o)return!0;if(e&&v.edit.isDisabled())return e.stopPropagation(),e.preventDefault(),!1;if(v.edit.isDisabled())return!1;for(var t=0;t<te.INSTANCES.length;t++)te.INSTANCES[t]!=v&&te.INSTANCES[t].events.trigger("video.hideResizer");v.toolbar.disable(),v.helpers.isMobile()&&(v.events.disableBlur(),v.$el.blur(),v.events.enableBlur()),v.$el.find(".fr-video.fr-active").removeClass("fr-active"),(u=g(this)).addClass("fr-active"),v.opts.iframe&&v.size.syncIframe(),$(),R(),r(),v.selection.clear(),v.button.bulkRefresh(),v.events.trigger("image.hideResizer")}function _(e){u&&(v.shared.vid_exit_flag||!0===e)&&(d.removeClass("fr-active"),v.toolbar.enable(),u.removeClass("fr-active"),u=null,B())}function e(){v.shared.vid_exit_flag=!0}function B(){v.shared.vid_exit_flag=!1}function W(e){var t=e.originalEvent.dataTransfer;if(t&&t.files&&t.files.length){var o=t.files[0];if(o&&o.type&&-1!==o.type.indexOf("video"))return v.opts.videoUpload?(v.markers.remove(),v.markers.insertAtPoint(e.originalEvent),v.$el.find(".fr-marker").replaceWith(te.MARKERS),v.popups.hideAll(),v.popups.get("video.insert")||l(),v.popups.setContainer("video.insert",v.$sc),v.popups.show("video.insert",e.originalEvent.pageX,e.originalEvent.pageY),y(),0<=v.opts.videoAllowedTypes.indexOf(o.type.replace(/video\//g,""))?q(t.files):D(h),e.preventDefault(),e.stopPropagation()):(e.preventDefault(),e.stopPropagation()),!1}}function q(e){if(void 0!==e&&0<e.length){if(!1===v.events.trigger("video.beforeUpload",[e]))return!1;var t,o,e=e[0];if(!(null!==v.opts.videoUploadURL&&v.opts.videoUploadURL!=L||v.opts.videoUploadToS3||v.opts.videoUploadToAzure))return p=e,u&&u.find("iframe")&&u.find("iframe").length&&T(),(f=new FileReader).onload=function(){f.result;for(var e=atob(f.result.split(",")[1]),t=[],o=0;o<e.length;o++)t.push(e.charCodeAt(o));b(window.URL.createObjectURL(new Blob([new Uint8Array(t)],{type:p.type})),!1,null,u)},y(),f.readAsDataURL(p),!1;if(e.size>v.opts.videoMaxSize)return D(M),!1;if(v.opts.videoAllowedTypes.indexOf(e.type.replace(/video\//g,""))<0)return D(h),!1;if(t=v.drag_support.formdata?v.drag_support.formdata?new FormData:null:t){if(!1!==v.opts.videoUploadToS3)for(o in t.append("key",v.opts.videoUploadToS3.keyStart+(new Date).getTime()+"-"+(e.name||"untitled")),t.append("success_action_status","201"),t.append("X-Requested-With","xhr"),t.append("Content-Type",e.type),v.opts.videoUploadToS3.params)v.opts.videoUploadToS3.params.hasOwnProperty(o)&&t.append(o,v.opts.videoUploadToS3.params[o]);for(o in v.opts.videoUploadParams)v.opts.videoUploadParams.hasOwnProperty(o)&&t.append(o,v.opts.videoUploadParams[o]);t.append(v.opts.videoUploadParam,e);var i,a=v.opts.videoUploadURL,r=(v.opts.videoUploadToS3&&(a=v.opts.videoUploadToS3.uploadURL||"https://".concat(v.opts.videoUploadToS3.region,".amazonaws.com/").concat(v.opts.videoUploadToS3.bucket)),v.opts.videoUploadMethod),n=(v.opts.videoUploadToAzure&&(a=v.opts.videoUploadToAzure.uploadURL?"".concat(v.opts.videoUploadToAzure.uploadURL,"/").concat(e.name):encodeURI("https://".concat(v.opts.videoUploadToAzure.account,".blob.core.windows.net/").concat(v.opts.videoUploadToAzure.container,"/").concat(e.name)),i=a,v.opts.videoUploadToAzure.SASToken&&(a+=v.opts.videoUploadToAzure.SASToken),r="PUT"),v.core.getXHR(a,r));if(v.opts.videoUploadToAzure){var s,d,l,a=(new Date).toUTCString();for(o in!v.opts.videoUploadToAzure.SASToken&&v.opts.videoUploadToAzure.accessKey&&(s=v.opts.videoUploadToAzure.account,c=v.opts.videoUploadToAzure.container,v.opts.videoUploadToAzure.uploadURL&&(c=(d=v.opts.videoUploadToAzure.uploadURL.split("/")).pop(),s=d.pop().split(".")[0]),d="x-ms-blob-type:BlockBlob\nx-ms-date:".concat(a,"\nx-ms-version:2019-07-07"),c=encodeURI("/"+s+"/"+c+"/"+e.name),r=r+"\n\n\n"+e.size+"\n\n"+e.type+"\n\n\n\n\n\n\n"+d+"\n"+c,d=v.cryptoJSPlugin.cryptoJS.HmacSHA256(r,v.cryptoJSPlugin.cryptoJS.enc.Base64.parse(v.opts.videoUploadToAzure.accessKey)).toString(v.cryptoJSPlugin.cryptoJS.enc.Base64),l=d,n.setRequestHeader("Authorization","SharedKey "+s+":"+d)),n.setRequestHeader("x-ms-version","2019-07-07"),n.setRequestHeader("x-ms-date",a),n.setRequestHeader("Content-Type",e.type),n.setRequestHeader("x-ms-blob-type","BlockBlob"),v.opts.videoUploadParams)v.opts.videoUploadParams.hasOwnProperty(o)&&n.setRequestHeader(o,v.opts.videoUploadParams[o]);for(o in v.opts.videoUploadToAzure.params)v.opts.videoUploadToAzure.params.hasOwnProperty(o)&&n.setRequestHeader(o,v.opts.videoUploadToAzure.params[o])}n.onload=function(){N.call(n,u,i,l)},n.onerror=Y,n.upload.onprogress=H,n.onabort=K,y(),v.events.disableBlur(),v.edit.off(),v.events.enableBlur();var c=v.popups.get("video.insert");c&&g(c.off("abortUpload")).on("abortUpload",function(){4!=n.readyState&&n.abort()}),n.send(v.opts.videoUploadToAzure?e:t)}}var p,f}function D(e,t){v.edit.on(),u&&u.find("video").addClass("fr-error"),A(v.language.translate("Something went wrong. Please try again.")),v.events.trigger("video.error",[{code:e,message:a[e]},t])}function J(){var e,t;u&&(e=v.popups.get("video.size"),t=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video")),e.find('input[name="width"]').val(t.get(0).style.width||t.attr("width")).trigger("change"),e.find('input[name="height"]').val(t.get(0).style.height||t.attr("height")).trigger("change"))}function Z(e){var t;return e?(v.popups.onRefresh("video.size",J),!0):(e="",e='<div class="fr-buttons fr-tabs">'.concat(v.button.buildList(v.opts.videoSizeButtons),"</div>"),t="",t='<div class="fr-video-size-layer fr-layer fr-active" id="fr-video-size-layer-'.concat(v.id,'"><div class="fr-video-group"><div class="fr-input-line"><input id="fr-video-size-layer-width-').concat(v.id,'" type="text" name="width" placeholder="').concat(v.language.translate("Width"),'" tabIndex="1"></div><div class="fr-input-line"><input id="fr-video-size-layer-height-').concat(v.id,'" type="text" name="height" placeholder="').concat(v.language.translate("Height"),'" tabIndex="1"></div></div><div class="fr-action-buttons"><button type="button" class="fr-command fr-submit" data-cmd="videoSetSize" tabIndex="2" role="button">').concat(v.language.translate("Update"),"</button></div></div>"),e=v.popups.create("video.size",{buttons:e,size_layer:t}),v.events.$on(v.$wp,"scroll",function(){u&&v.popups.isVisible("video.size")&&(v.events.disableBlur(),C(u))}),e)}function k(e){if(e=void 0===e?u:e){if(e.hasClass("fr-fvl"))return"left";if(e.hasClass("fr-fvr"))return"right";if(e.hasClass("fr-dvb")||e.hasClass("fr-dvi"))return"center";if("block"==e.css("display")){if("left"==e.css("text-algin"))return"left";if("right"==e.css("text-align"))return"right"}else{if("left"==e.css("float"))return"left";if("right"==e.css("float"))return"right"}}return"center"}function I(e){var t=(e=void 0===e?u:e).css("float");return e.css("float","none"),"block"==e.css("display")?(e.css("float",""),e.css("float")!=t&&e.css("float",t),"block"):(e.css("float",""),e.css("float")!=t&&e.css("float",t),"inline")}function T(){var e;u&&!1!==v.events.trigger("video.beforeRemove",[u])&&(e=u,v.popups.hideAll(),_(!0),!v.opts.trackChangesEnabled||e[0].parentNode&&"SPAN"===e[0].parentNode.tagName&&e[0].parentNode.hasAttribute("data-tracking")?(v.selection.setBefore(e.get(0))||v.selection.setAfter(e.get(0)),e.remove(),v.selection.restore(),v.html.fillEmptyBlocks()):v.track_changes.removeSpecialItem(e))}function Q(){w()}function z(e,t,o){!v.opts.htmlUntouched&&v.opts.useClasses?(e.removeClass("fr-fvl fr-fvr fr-dvb fr-dvi"),e.addClass("fr-fv".concat(o[0]," fr-dv").concat(t[0]))):"inline"==t?(e.css({display:"inline-block"}),"center"==o?e.css({"float":"none"}):"left"==o?e.css({"float":"left"}):e.css({"float":"right"})):(e.css({display:"block",clear:"both"}),"left"==o?e.css({textAlign:"left"}):"right"==o?e.css({textAlign:"right"}):e.css({textAlign:"center"}))}function ee(){var e=v.$el.find("video").filter(function(){return 0===g(this).parents("span.fr-video").length});if(0!=e.length){e.wrap(g(document.createElement("span")).attr("class","fr-video fr-deletable").attr("contenteditable","false")),v.$el.find("embed, iframe").filter(function(){if(v.browser.safari&&this.getAttribute("src")&&this.setAttribute("src",this.src),!(0<g(this).parents("span.fr-video").length))for(var e=g(this).attr("src"),t=0;t<te.VIDEO_PROVIDERS.length;t++){var o=te.VIDEO_PROVIDERS[t];if(o.test_regex.test(e)&&new RegExp(v.opts.videoAllowedProviders.join("|")).test(o.provider))return!0}return!1}).map(function(){return 0===g(this).parents("object").length?this:g(this).parents("object").get(0)}).wrap(g(document.createElement("span")).attr("class","fr-video").attr("contenteditable","false"));for(var t,o,i=v.$el.find("span.fr-video, video"),a=0;a<i.length;a++){var r=g(i[a]);!v.opts.htmlUntouched&&v.opts.useClasses?((o=r).hasClass("fr-dvi")||o.hasClass("fr-dvb")||(o.addClass("fr-fv".concat(k(o)[0])),o.addClass("fr-dv".concat(I(o)[0]))),v.opts.videoTextNear||r.removeClass("fr-dvi").addClass("fr-dvb")):v.opts.htmlUntouched||v.opts.useClasses||(t=o=void 0,o=(r=r).hasClass("fr-dvb")?"block":r.hasClass("fr-dvi")?"inline":null,t=r.hasClass("fr-fvl")?"left":r.hasClass("fr-fvr")?"right":k(r),z(r,o,t),r.removeClass("fr-dvb fr-dvi fr-fvr fr-fvl"))}i.toggleClass("fr-draggable",v.opts.videoMove)}}function P(e){document.getElementById("autoplay-".concat(v.id)).style.cssText="background:".concat(e)}function $(){var e;u&&(v.selection.clear(),(e=v.doc.createRange()).selectNode(u.get(0)),v.selection.get().addRange(e))}return a[1]="Video cannot be loaded from the passed link.",a[c]="No link in upload response.",a[O]="Error during file upload.",a[p]="Parsing response failed.",a[M]="File is too large.",a[h]="Video file type is invalid.",v.shared.vid_exit_flag=!(a[7]="Files can be uploaded only to same domain in IE 8 and IE 9."),{_init:function(){v.opts.videoResponsive&&(v.opts.videoResize=!1),v.events.on("drop",W,!0),v.events.on("mousedown window.mousedown",e),v.events.on("window.touchmove",B),v.events.on("mouseup window.mouseup",_),v.events.on("commands.mousedown",function(e){0<e.parents(".fr-toolbar").length&&_()}),v.events.on("video.hideResizer commands.undo commands.redo element.dropped",function(){_(!0)}),v.events.on("filestack-init-video",function(){l()}),v.helpers.isMobile()&&(v.events.$on(v.$el,"touchstart","span.fr-video",function(){o=!1}),v.events.$on(v.$el,"touchmove",function(){o=!0})),v.events.on("html.set",ee),ee(),v.events.$on(v.$el,"mousedown","span.fr-video",function(e){e.stopPropagation(),!v.browser.msie&&!v.browser.edge||e.target.innerText||(e.target.dragDrop(),t.call(this,e))}),v.events.$on(v.$el,"click touchend","span.fr-video",function(e){if(e.target.innerText.length||"false"==g(this).parents("[contenteditable]").not(".fr-element").not(".fr-img-caption").not("body").first().attr("contenteditable"))return!0;t.call(this,e)}),v.events.on("keydown",function(e){var t=e.which;return!u||t!=te.KEYCODE.BACKSPACE&&t!=te.KEYCODE.DELETE?u&&t==te.KEYCODE.ESC?(_(!0),e.preventDefault(),!1):u&&t!=te.KEYCODE.F10&&!v.keys.isBrowserAction(e)?(e.preventDefault(),!1):void 0:(e.preventDefault(),T(),v.undo.saveStep(),!1)},!0),v.events.on("toolbar.esc",function(){if(u)return v.events.disableBlur(),v.events.focus(),!1},!0),v.events.on("toolbar.focusEditor",function(){if(u)return!1},!0),v.events.on("keydown",function(){v.$el.find("span.fr-video:empty").remove()}),v.$wp&&(U(),v.events.on("contentChanged",U)),l(!0),Z(!0)},showInsertPopup:function(){var e,t,o=v.$tb.find('.fr-command[data-cmd="insertVideo"]'),i=(i=v.popups.get("video.insert"))||l();w(),i.hasClass("fr-active")||(v.popups.refresh("video.insert"),v.popups.setContainer("video.insert",v.$tb),o.isVisible()?(t=(e=v.button.getPosition(o)).left,v.popups.show("video.insert",t,e.top,o.outerHeight())):(v.position.forSelection(i),v.popups.show("video.insert")))},showLayer:function(e){var t,o,i=v.popups.get("video.insert");u||v.opts.toolbarInline||(t=(o=v.$tb.find('.fr-command[data-cmd="insertVideo"]')).offset().left,o=o.offset().top+(v.opts.toolbarBottom?10:o.outerHeight()-10)),v.opts.toolbarInline&&(o=i.offset().top-v.helpers.getPX(i.css("margin-top")),i.hasClass("fr-above"))&&(o+=i.outerHeight()),i.find(".fr-layer").removeClass("fr-active"),i.find(".fr-".concat(e,"-layer")).addClass("fr-active"),v.popups.show("video.insert",t,o,0),v.accessibility.focusPopup(i)},refreshByURLButton:function(e){var t=v.popups.get("video.insert");t&&t.find(".fr-video-by-url-layer").hasClass("fr-active")&&e.addClass("fr-active").attr("aria-pressed",!0)},refreshEmbedButton:function(e){var t=v.popups.get("video.insert");t&&t.find(".fr-video-embed-layer").hasClass("fr-active")&&e.addClass("fr-active").attr("aria-pressed",!0)},refreshUploadButton:function(e){var t=v.popups.get("video.insert");t&&t.find(".fr-video-upload-layer").hasClass("fr-active")&&e.addClass("fr-active").attr("aria-pressed",!0)},upload:q,insertByURL:function(e){var t,o,i,a=!!document.getElementById("videoPluginAutoplay")&&document.getElementById("videoPluginAutoplay").checked,r=(void 0===e&&(e=(v.popups.get("video.insert").find('.fr-video-by-url-layer input[type="text"]').val()||"").trim(),/vimeo\.com\/event\/\d+\/embed\/[a-zA-Z0-9]+/i.test(e)||((t=e.match(/^(https?:\/\/)?(www\.)?vimeo\.com\/(\d{6,11})(\?.+)?$/))?(o=t[3],t=t[4]||"",e="https://vimeo.com/".concat(o).concat(t)):(o=e.match(/(https?:\/\/)?(www\.)?(player\.)?vimeo\.com\/?(showcase\/)*([0-9])([a-z]*\/)*([0-9]{6,11})[?]?.*/))&&7==o.length&&(t=o[6],o=e.substring(0,e.lastIndexOf("/")),(i=e.substring(e.lastIndexOf("/")+1,e.length)).includes("?h=")||i.includes("?v=")||t===i?e=("".concat(o,"/").concat(i)||"").trim():i.includes("?")||(e=("".concat(o,"?h=").concat(i)||"").trim())))),null);if(/^http/.test(e)||(e="https://".concat(e)),v.helpers.isURL(e))for(var n=0;n<te.VIDEO_PROVIDERS.length;n++){var s,d=te.VIDEO_PROVIDERS[n],l="autoplay=1&mute=1";if(d.html.includes("autoplay=1")&&document.getElementById("videoPluginAutoplay").checked?(d.html=d.html,document.getElementById("videoPluginAutoplay").checked=!1):a?(s=d.html.indexOf("{url}")+5,d.html=[d.html.slice(0,s),l,d.html.slice(s)].join(""),a=!1,document.getElementById("videoPluginAutoplay").checked=!1):(d=te.VIDEO_PROVIDERS[n]).html=d.html.replace(l,""),d.test_regex.test(e)&&new RegExp(v.opts.videoAllowedProviders.join("|")).test(d.provider)){r=e.replace(d.url_regex,d.url_text),r=d.html.replace(/\{url\}/,r);break}}r?f(r):(A(v.language.translate("Something went wrong. Please try again.")),v.events.trigger("video.linkError",[e]))},insertEmbed:function(e){0!==(e=void 0===e?v.popups.get("video.insert").find(".fr-video-embed-layer textarea").val()||"":e).length&&te.VIDEO_EMBED_REGEX.test(e)?f(e):(A(v.language.translate("Something went wrong. Please try again.")),v.events.trigger("video.codeError",[e]))},insert:f,align:function(e){u.removeClass("fr-fvr fr-fvl"),!v.opts.htmlUntouched&&v.opts.useClasses?"left"==e?u.addClass("fr-fvl"):"right"==e&&u.addClass("fr-fvr"):z(u,I(),e),$(),R(),r(),v.selection.clear()},refreshAlign:function(e){if(!u)return!1;e.find(">*").first().replaceWith(v.icon.create("video-align-".concat(k())))},refreshAlignOnShow:function(e,t){u&&t.find('.fr-command[data-param1="'.concat(k(),'"]')).addClass("fr-active").attr("aria-selected",!0)},display:function(e){u.removeClass("fr-dvi fr-dvb"),!v.opts.htmlUntouched&&v.opts.useClasses?"inline"==e?u.addClass("fr-dvi"):"block"==e&&u.addClass("fr-dvb"):z(u,e,k()),$(),R(),r(),v.selection.clear()},refreshDisplayOnShow:function(e,t){u&&t.find('.fr-command[data-param1="'.concat(I(),'"]')).addClass("fr-active").attr("aria-selected",!0)},remove:T,hideProgressBar:w,showSizePopup:function(){v.popups.get("video.size")||Z(),w(),v.popups.refresh("video.size"),v.popups.setContainer("video.size",v.$sc);var e=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video")),t=e.offset().left+e.outerWidth()/2,o=e.offset().top+e.height();v.popups.show("video.size",t,o,e.height(),!0)},replace:function(){v.popups.get("video.insert")||l(),v.popups.isVisible("video.insert")||(w(),v.popups.refresh("video.insert"),v.popups.setContainer("video.insert",v.$sc));var e=u.offset().left+u.outerWidth()/2,t=u.offset().top+u.height();v.popups.show("video.insert",e,t,u.outerHeight(),!0)},back:function(){u?(v.events.disableBlur(),u[0].click()):(v.events.disableBlur(),v.selection.restore(),v.events.enableBlur(),v.popups.hide("video.insert"),v.toolbar.showInline())},setSize:function(e,t){var o,i;u&&(o=v.popups.get("video.size"),(i=u.find("iframe, embed, ".concat(u.find("iframe, embed, audio").get(0)?"audio":"video"))).css("width",e||o.find('input[name="width"]').val()),i.css("height",t||o.find('input[name="height"]').val()),i.get(0).style.width&&i.removeAttr("width"),i.get(0).style.height&&i.removeAttr("height"),o.find("input:focus").blur(),setTimeout(function(){u.trigger("click")},v.helpers.isAndroid()?50:0))},get:function(){return u},showProgressBar:y,_editVideo:C,setAutoplay:function(){var e,t;u.find("iframe, embed, audio").get(0)?(t=u.find("iframe, embed, audio")).get(0).src.includes("autoplay=1")?(P("#FFFFFF"),t.get(0).src=t.get(0).src.replace("&autoplay=1","")):(P("#D6D6D6"),t.get(0).src=t.get(0).src+"&autoplay=1"):(t=u.find("iframe, embed, video")).get(0).outerHTML.includes("autoplay")?(P("#FFFFFF"),t.get(0).outerHTML=t.get(0).outerHTML.replace("autoplay","")):(P("#D6D6D6"),e=t.get(0).outerHTML.indexOf("class")-1,t.get(0).outerHTML=[t.get(0).outerHTML.slice(0,e),"autoplay",t.get(0).outerHTML.slice(e)].join(""))},insertHtmlVideo:b}},te.RegisterCommand("insertVideo",{title:"Insert Video",undo:!1,focus:!0,refreshAfterCallback:!1,popup:!0,callback:function(){this.popups.isVisible("video.insert")?(this.$el.find(".fr-marker").length&&(this.events.disableBlur(),this.selection.restore()),this.popups.hide("video.insert")):this.video.showInsertPopup()},plugin:"video"}),te.DefineIcon("insertVideo",{NAME:"video-camera",FA5NAME:"camera",SVG_KEY:"insertVideo"}),te.DefineIcon("videoByURL",{NAME:"link",SVG_KEY:"insertLink"}),te.RegisterCommand("videoByURL",{title:"By URL",undo:!1,focus:!1,toggle:!0,callback:function(){this.video.showLayer("video-by-url")},refresh:function(e){this.video.refreshByURLButton(e)}}),te.DefineIcon("videoEmbed",{NAME:"code",SVG_KEY:"codeView"}),te.RegisterCommand("videoEmbed",{title:"Embedded Code",undo:!1,focus:!1,toggle:!0,callback:function(){this.video.showLayer("video-embed")},refresh:function(e){this.video.refreshEmbedButton(e)}}),te.DefineIcon("videoUpload",{NAME:"upload",SVG_KEY:"upload"}),te.RegisterCommand("videoUpload",{title:"Upload Video",undo:!1,focus:!1,toggle:!0,callback:function(){this.video.showLayer("video-upload")},refresh:function(e){this.video.refreshUploadButton(e)}}),te.RegisterCommand("videoInsertByURL",{undo:!0,focus:!0,callback:function(){this.video.insertByURL()}}),te.RegisterCommand("videoInsertEmbed",{undo:!0,focus:!0,callback:function(){this.video.insertEmbed()}}),te.DefineIcon("videoDisplay",{NAME:"star",SVG_KEY:"star"}),te.RegisterCommand("videoDisplay",{title:"Display",type:"dropdown",options:{inline:"Inline",block:"Break Text"},callback:function(e,t){this.video.display(t)},refresh:function(e){this.opts.videoTextNear||e.addClass("fr-hidden")},refreshOnShow:function(e,t){this.video.refreshDisplayOnShow(e,t)}}),te.DefineIcon("video-align",{NAME:"align-left",SVG_KEY:"align Left"}),te.DefineIcon("video-align-left",{NAME:"align-left",SVG_KEY:"alignLeft"}),te.DefineIcon("video-align-right",{NAME:"align-right",SVG_KEY:"alignRight"}),te.DefineIcon("video-align-center",{NAME:"align-justify",SVG_KEY:"alignJustify"}),te.DefineIcon("videoAlign",{NAME:"align-center",SVG_KEY:"alignCenter"}),te.RegisterCommand("videoAlign",{type:"dropdown",title:"Align",options:{left:"Align Left",center:"None",right:"Align Right"},html:function(){var e,t='<ul class="fr-dropdown-list" role="presentation">',o=te.COMMANDS.videoAlign.options;for(e in o)o.hasOwnProperty(e)&&(t+='<li role="presentation"><a class="fr-command fr-title" tabIndex="-1" role="option" data-cmd="videoAlign" data-param1="'.concat(e,'" title="').concat(this.language.translate(o[e]),'">').concat(this.icon.create("video-align-".concat(e)),'<span class="fr-sr-only">').concat(this.language.translate(o[e]),"</span></a></li>"));return t+="</ul>"},callback:function(e,t){this.video.align(t)},refresh:function(e){this.video.refreshAlign(e)},refreshOnShow:function(e,t){this.video.refreshAlignOnShow(e,t)}}),te.DefineIcon("videoReplace",{NAME:"exchange",FA5NAME:"exchange-alt",SVG_KEY:"replaceImage"}),te.RegisterCommand("videoReplace",{title:"Replace",undo:!1,focus:!1,popup:!0,refreshAfterCallback:!1,callback:function(){this.video.replace()}}),te.DefineIcon("videoRemove",{NAME:"trash",SVG_KEY:"remove"}),te.RegisterCommand("videoRemove",{title:"Remove",callback:function(){this.video.remove()}}),te.DefineIcon("autoplay",{NAME:"autoplay",SVG_KEY:"autoplay"}),te.RegisterCommand("autoplay",{undo:!1,focus:!1,popup:!0,title:"Autoplay",callback:function(){this.video.setAutoplay()}}),te.DefineIcon("videoSize",{NAME:"arrows-alt",SVG_KEY:"imageSize"}),te.RegisterCommand("videoSize",{undo:!1,focus:!1,popup:!0,title:"Change Size",callback:function(){this.video.showSizePopup()}}),te.DefineIcon("videoBack",{NAME:"arrow-left",SVG_KEY:"back"}),te.RegisterCommand("videoBack",{title:"Back",undo:!1,focus:!1,back:!0,callback:function(){this.video.back()},refresh:function(e){this.video.get()||this.opts.toolbarInline?(e.removeClass("fr-hidden"),e.next().hasClass("fr-separator")&&e.next().removeClass("fr-hidden")):(e.addClass("fr-hidden"),e.next().hasClass("fr-separator")&&e.next().addClass("fr-hidden"))}}),te.RegisterCommand("videoDismissError",{title:"OK",undo:!1,callback:function(){this.video.hideProgressBar(!0)}}),te.RegisterCommand("videoSetSize",{undo:!0,focus:!1,title:"Update",refreshAfterCallback:!1,callback:function(){this.video.setSize()}})});