").attr("role","tooltip"),s=t("").appendTo(i),n=i.uniqueId().attr("id");return this._addClass(s,"ui-tooltip-content"),this._addClass(i,"ui-tooltip","ui-widget ui-widget-content"),i.appendTo(this._appendTo(e)),this.tooltips[n]={element:e,tooltip:i}},_find:function(t){var e=t.data("ui-tooltip-id");return e?this.tooltips[e]:null},_removeTooltip:function(t){t.remove(),delete this.tooltips[t.attr("id")]},_appendTo:function(t){var e=t.closest(".ui-front, dialog");return e.length||(e=this.document[0].body),e},_destroy:function(){var e=this;t.each(this.tooltips,function(i,s){var n=t.Event("blur"),o=s.element;n.target=n.currentTarget=o[0],e.close(n,!0),t("#"+i).remove(),o.data("ui-tooltip-title")&&(o.attr("title")||o.attr("title",o.data("ui-tooltip-title")),o.removeData("ui-tooltip-title"))}),this.liveRegion.remove()}}),t.uiBackCompat!==!1&&t.widget("ui.tooltip",t.ui.tooltip,{options:{tooltipClass:null},_tooltip:function(){var t=this._superApply(arguments);return this.options.tooltipClass&&t.tooltip.addClass(this.options.tooltipClass),t}}),t.ui.tooltip});var $jscomp={scope:{},findInternal:function(d,r,q){d instanceof String&&(d=String(d));for(var t=d.length,u=0;uc&&(a.top-=
+e);0>a.top&&(a.top=0);a.left+g>d&&(a.left-=g);0>a.left&&(a.left=0);b.$menu.css(a)}else b.determinePosition.call(this,b.$menu)},positionSubmenu:function(b){if("undefined"!==typeof b)if(d.ui&&d.ui.position)b.css("display","block").position({my:"left top-5",at:"right top",of:this,collision:"flipfit fit"}).css("display","");else{var a={top:-9,left:this.outerWidth()-5};b.css(a)}},zIndex:1,animation:{duration:50,show:"slideDown",hide:"slideUp"},events:{show:d.noop,hide:d.noop,activated:d.noop},callback:null,
+items:{}},x=null,D=null,E=null,F,G=function(b){for(var a=0;a=Math.max(a,parseInt(b.css("z-index"),10)||0),b=b.parent(),b&&b.length&&!(-1<"html body".indexOf(b.prop("nodeName").toLowerCase())););return a},k={abortevent:function(b){b.preventDefault();b.stopImmediatePropagation()},contextmenu:function(b){var a=d(this);"right"===b.data.trigger&&(b.preventDefault(),b.stopImmediatePropagation());if(!("right"!==b.data.trigger&&"demand"!==b.data.trigger&&b.originalEvent||"undefined"!==typeof b.mouseButton&&
+b.data&&!("left"===b.data.trigger&&0===b.mouseButton||"right"===b.data.trigger&&2===b.mouseButton)||a.hasClass("context-menu-active")||a.hasClass("context-menu-disabled"))){m=a;if(b.data.build){var c=b.data.build(m,b);if(!1===c)return;b.data=d.extend(!0,{},C,b.data,c||{});if(!b.data.items||d.isEmptyObject(b.data.items))throw window.console&&(console.error||console.log).call(console,"No items specified to show in contextMenu"),Error("No Items specified");b.data.$trigger=m;p.create(b.data)}var c=!1,
+f;for(f in b.data.items)b.data.items.hasOwnProperty(f)&&(d.isFunction(b.data.items[f].visible)?b.data.items[f].visible.call(d(b.currentTarget),f,b.data):"undefined"!==typeof b.data.items[f]&&b.data.items[f].visible?!0===b.data.items[f].visible:1)&&(c=!0);c&&p.show.call(a,b.data,b.pageX,b.pageY)}},click:function(b){b.preventDefault();b.stopImmediatePropagation();d(this).trigger(d.Event("contextmenu",{data:b.data,pageX:b.pageX,pageY:b.pageY}))},mousedown:function(b){var a=d(this);m&&m.length&&!m.is(a)&&
+m.data("contextMenu").$menu.trigger("contextmenu:hide");2===b.button&&(m=a.data("contextMenuActive",!0))},mouseup:function(b){var a=d(this);a.data("contextMenuActive")&&m&&m.length&&m.is(a)&&!a.hasClass("context-menu-disabled")&&(b.preventDefault(),b.stopImmediatePropagation(),m=a,a.trigger(d.Event("contextmenu",{data:b.data,pageX:b.pageX,pageY:b.pageY})));a.removeData("contextMenuActive")},mouseenter:function(b){var a=d(this),c=d(b.relatedTarget),f=d(document);c.is(".context-menu-list")||c.closest(".context-menu-list").length||
+m&&m.length||(D=b.pageX,E=b.pageY,F=b.data,f.on("mousemove.contextMenuShow",k.mousemove),x=setTimeout(function(){x=null;f.off("mousemove.contextMenuShow");m=a;a.trigger(d.Event("contextmenu",{data:F,pageX:D,pageY:E}))},b.data.delay))},mousemove:function(b){D=b.pageX;E=b.pageY},mouseleave:function(b){b=d(b.relatedTarget);if(!b.is(".context-menu-list")&&!b.closest(".context-menu-list").length){try{clearTimeout(x)}catch(a){}x=null}},layerClick:function(b){var a=d(this).data("contextMenuRoot"),c=b.button,
+f=b.pageX,e=b.pageY,g,l;b.preventDefault();setTimeout(function(){var h,k="left"===a.trigger&&0===c||"right"===a.trigger&&2===c;if(document.elementFromPoint&&a.$layer){a.$layer.hide();g=document.elementFromPoint(f-v.scrollLeft(),e-v.scrollTop());if(g.isContentEditable){h=document.createRange();var m=window.getSelection();h.selectNode(g);h.collapse(!0);m.removeAllRanges();m.addRange(h)}d(g).trigger(b);a.$layer.show()}if(a.hideOnSecondTrigger&&k&&null!==a.$menu&&"undefined"!==typeof a.$menu)a.$menu.trigger("contextmenu:hide");
+else{if(a.reposition&&k)if(document.elementFromPoint){if(a.$trigger.is(g)){a.position.call(a.$trigger,a,f,e);return}}else if(l=a.$trigger.offset(),h=d(window),l.top+=h.scrollTop(),l.top<=b.pageY&&(l.left+=h.scrollLeft(),l.left<=b.pageX&&(l.bottom=l.top+a.$trigger.outerHeight(),l.bottom>=b.pageY&&(l.right=l.left+a.$trigger.outerWidth(),l.right>=b.pageX)))){a.position.call(a.$trigger,a,f,e);return}if(g&&k)a.$trigger.one("contextmenu:hidden",function(){d(g).contextMenu({x:f,y:e,button:c})});null!==a&&
+"undefined"!==typeof a&&null!==a.$menu&&"undefined"!==typeof a.$menu&&a.$menu.trigger("contextmenu:hide")}},50)},keyStop:function(b,a){a.isInput||b.preventDefault();b.stopPropagation()},key:function(b){var a={};m&&(a=m.data("contextMenu")||{});"undefined"===typeof a.zIndex&&(a.zIndex=0);var c=0,d=function(a){""!==a.style.zIndex?c=a.style.zIndex:null!==a.offsetParent&&"undefined"!==typeof a.offsetParent?d(a.offsetParent):null!==a.parentElement&&"undefined"!==typeof a.parentElement&&d(a.parentElement)};
+d(b.target);if(!(a.$menu&&parseInt(c,10)>parseInt(a.$menu.css("zIndex"),10))){switch(b.keyCode){case 9:case 38:k.keyStop(b,a);if(a.isInput){if(9===b.keyCode&&b.shiftKey){b.preventDefault();a.$selected&&a.$selected.find("input, textarea, select").blur();null!==a.$menu&&"undefined"!==typeof a.$menu&&a.$menu.trigger("prevcommand");return}if(38===b.keyCode&&"checkbox"===a.$selected.find("input, textarea, select").prop("type")){b.preventDefault();return}}else if(9!==b.keyCode||b.shiftKey){null!==a.$menu&&
+"undefined"!==typeof a.$menu&&a.$menu.trigger("prevcommand");return}break;case 40:k.keyStop(b,a);if(a.isInput){if(9===b.keyCode){b.preventDefault();a.$selected&&a.$selected.find("input, textarea, select").blur();null!==a.$menu&&"undefined"!==typeof a.$menu&&a.$menu.trigger("nextcommand");return}if(40===b.keyCode&&"checkbox"===a.$selected.find("input, textarea, select").prop("type")){b.preventDefault();return}}else{null!==a.$menu&&"undefined"!==typeof a.$menu&&a.$menu.trigger("nextcommand");return}break;
+case 37:k.keyStop(b,a);if(a.isInput||!a.$selected||!a.$selected.length)break;if(!a.$selected.parent().hasClass("context-menu-root")){b=a.$selected.parent().parent();a.$selected.trigger("contextmenu:blur");a.$selected=b;return}break;case 39:k.keyStop(b,a);if(a.isInput||!a.$selected||!a.$selected.length)break;var e=a.$selected.data("contextMenu")||{};if(e.$menu&&a.$selected.hasClass("context-menu-submenu")){a.$selected=null;e.$selected=null;e.$menu.trigger("nextcommand");return}break;case 35:case 36:a.$selected&&
+a.$selected.find("input, textarea, select").length||((a.$selected&&a.$selected.parent()||a.$menu).children(":not(."+a.classNames.disabled+", ."+a.classNames.notSelectable+")")[36===b.keyCode?"first":"last"]().trigger("contextmenu:focus"),b.preventDefault());return;case 13:k.keyStop(b,a);if(a.isInput){if(a.$selected&&!a.$selected.is("textarea, select")){b.preventDefault();return}break}"undefined"!==typeof a.$selected&&null!==a.$selected&&a.$selected.trigger("mouseup");return;case 32:case 33:case 34:k.keyStop(b,
+a);return;case 27:k.keyStop(b,a);null!==a.$menu&&"undefined"!==typeof a.$menu&&a.$menu.trigger("contextmenu:hide");return;default:if(e=String.fromCharCode(b.keyCode).toUpperCase(),a.accesskeys&&a.accesskeys[e]){a.accesskeys[e].$node.trigger(a.accesskeys[e].$menu?"contextmenu:focus":"mouseup");return}}b.stopPropagation();"undefined"!==typeof a.$selected&&null!==a.$selected&&a.$selected.trigger(b)}},prevItem:function(b){b.stopPropagation();var a=d(this).data("contextMenu")||{},c=d(this).data("contextMenuRoot")||
+{};if(a.$selected){var f=a.$selected,a=a.$selected.parent().data("contextMenu")||{};a.$selected=f}for(var f=a.$menu.children(),e=a.$selected&&a.$selected.prev().length?a.$selected.prev():f.last(),g=e;e.hasClass(c.classNames.disabled)||e.hasClass(c.classNames.notSelectable)||e.is(":hidden");)if(e=e.prev().length?e.prev():f.last(),e.is(g))return;a.$selected&&k.itemMouseleave.call(a.$selected.get(0),b);k.itemMouseenter.call(e.get(0),b);b=e.find("input, textarea, select");b.length&&b.focus()},nextItem:function(b){b.stopPropagation();
+var a=d(this).data("contextMenu")||{},c=d(this).data("contextMenuRoot")||{};if(a.$selected){var f=a.$selected,a=a.$selected.parent().data("contextMenu")||{};a.$selected=f}for(var f=a.$menu.children(),e=a.$selected&&a.$selected.next().length?a.$selected.next():f.first(),g=e;e.hasClass(c.classNames.disabled)||e.hasClass(c.classNames.notSelectable)||e.is(":hidden");)if(e=e.next().length?e.next():f.first(),e.is(g))return;a.$selected&&k.itemMouseleave.call(a.$selected.get(0),b);k.itemMouseenter.call(e.get(0),
+b);b=e.find("input, textarea, select");b.length&&b.focus()},focusInput:function(){var b=d(this).closest(".context-menu-item"),a=b.data(),c=a.contextMenu,a=a.contextMenuRoot;a.$selected=c.$selected=b;a.isInput=c.isInput=!0},blurInput:function(){var b=d(this).closest(".context-menu-item").data();b.contextMenuRoot.isInput=b.contextMenu.isInput=!1},menuMouseenter:function(){d(this).data().contextMenuRoot.hovering=!0},menuMouseleave:function(b){var a=d(this).data().contextMenuRoot;a.$layer&&a.$layer.is(b.relatedTarget)&&
+(a.hovering=!1)},itemMouseenter:function(b){var a=d(this),c=a.data(),f=c.contextMenu,c=c.contextMenuRoot;c.hovering=!0;b&&c.$layer&&c.$layer.is(b.relatedTarget)&&(b.preventDefault(),b.stopImmediatePropagation());(f.$menu?f:c).$menu.children("."+c.classNames.hover).trigger("contextmenu:blur").children(".hover").trigger("contextmenu:blur");a.hasClass(c.classNames.disabled)||a.hasClass(c.classNames.notSelectable)?f.$selected=null:a.trigger("contextmenu:focus")},itemMouseleave:function(b){var a=d(this),
+c=a.data(),f=c.contextMenu,c=c.contextMenuRoot;c!==f&&c.$layer&&c.$layer.is(b.relatedTarget)?("undefined"!==typeof c.$selected&&null!==c.$selected&&c.$selected.trigger("contextmenu:blur"),b.preventDefault(),b.stopImmediatePropagation(),c.$selected=f.$selected=f.$node):f&&f.$menu&&f.$menu.hasClass("context-menu-visible")||a.trigger("contextmenu:blur")},itemClick:function(b){var a=d(this),c=a.data(),f=c.contextMenu,e=c.contextMenuRoot,c=c.contextMenuKey;if(!(!f.items[c]||a.is("."+e.classNames.disabled+
+", .context-menu-separator, ."+e.classNames.notSelectable)||a.is(".context-menu-submenu")&&!1===e.selectableSubMenu)){b.preventDefault();b.stopImmediatePropagation();if(d.isFunction(f.callbacks[c])&&Object.prototype.hasOwnProperty.call(f.callbacks,c))a=f.callbacks[c];else if(d.isFunction(e.callback))a=e.callback;else return;!1!==a.call(e.$trigger,c,e,b)?e.$menu.trigger("contextmenu:hide"):e.$menu.parent().length&&p.update.call(e.$trigger,e)}},inputClick:function(b){b.stopImmediatePropagation()},hideMenu:function(b,
+a){var c=d(this).data("contextMenuRoot");p.hide.call(c.$trigger,c,a&&a.force)},focusItem:function(b){b.stopPropagation();b=d(this);var a=b.data(),c=a.contextMenu,a=a.contextMenuRoot;b.hasClass(a.classNames.disabled)||b.hasClass(a.classNames.notSelectable)||(b.addClass([a.classNames.hover,a.classNames.visible].join(" ")).parent().find(".context-menu-item").not(b).removeClass(a.classNames.visible).filter("."+a.classNames.hover).trigger("contextmenu:blur"),c.$selected=a.$selected=b,c&&c.$node&&c.$node.hasClass("context-menu-submenu")&&
+c.$node.addClass(a.classNames.hover),c.$node&&a.positionSubmenu.call(c.$node,c.$menu))},blurItem:function(b){b.stopPropagation();b=d(this);var a=b.data(),c=a.contextMenu,a=a.contextMenuRoot;c.autoHide&&b.removeClass(a.classNames.visible);b.removeClass(a.classNames.hover);c.$selected=null}},p={show:function(b,a,c){var f=d(this),e={};d("#context-menu-layer").trigger("mousedown");b.$trigger=f;if(!1===b.events.show.call(f,b))m=null;else if(p.update.call(f,b),b.position.call(f,b,a,c),b.zIndex&&(a=b.zIndex,
+"function"===typeof b.zIndex&&(a=b.zIndex.call(f,b)),e.zIndex=G(f)+a),p.layer.call(b.$menu,b,e.zIndex),b.$menu.find("ul").css("zIndex",e.zIndex+1),b.$menu.css(e)[b.animation.show](b.animation.duration,function(){f.trigger("contextmenu:visible");p.activated(b);b.events.activated()}),f.data("contextMenu",b).addClass("context-menu-active"),d(document).off("keydown.contextMenu").on("keydown.contextMenu",k.key),b.autoHide)d(document).on("mousemove.contextMenuAutoHide",function(a){var c=f.offset();c.right=
+c.left+f.outerWidth();c.bottom=c.top+f.outerHeight();!b.$layer||b.hovering||a.pageX>=c.left&&a.pageX<=c.right&&a.pageY>=c.top&&a.pageY<=c.bottom||setTimeout(function(){b.hovering||null===b.$menu||"undefined"===typeof b.$menu||b.$menu.trigger("contextmenu:hide")},50)})},hide:function(b,a){var c=d(this);b||(b=c.data("contextMenu")||{});if(a||!b.events||!1!==b.events.hide.call(c,b)){c.removeData("contextMenu").removeClass("context-menu-active");if(b.$layer){setTimeout(function(a){return function(){a.remove()}}(b.$layer),
+10);try{delete b.$layer}catch(f){b.$layer=null}}m=null;b.$menu.find("."+b.classNames.hover).trigger("contextmenu:blur");b.$selected=null;b.$menu.find("."+b.classNames.visible).removeClass(b.classNames.visible);d(document).off(".contextMenuAutoHide").off("keydown.contextMenu");if(b.$menu)b.$menu[b.animation.hide](b.animation.duration,function(){b.build&&(b.$menu.remove(),d.each(b,function(a){switch(a){case "ns":case "selector":case "build":case "trigger":return!0;default:b[a]=r;try{delete b[a]}catch(e){}return!0}}));
+setTimeout(function(){c.trigger("contextmenu:hidden")},10)})}},create:function(b,a){function c(a){var b=d("");if(a._accesskey)a._beforeAccesskey&&b.append(document.createTextNode(a._beforeAccesskey)),d("").addClass("context-menu-accesskey").text(a._accesskey).appendTo(b),a._afterAccesskey&&b.append(document.createTextNode(a._afterAccesskey));else if(a.isHtmlName){if("undefined"!==typeof a.accesskey)throw Error("accesskeys are not compatible with HTML names and cannot be used together in the same item");
+b.html(a.name)}else b.text(a.name);return b}"undefined"===typeof a&&(a=b);b.$menu=d('').addClass(b.className||"").data({contextMenu:b,contextMenuRoot:a});d.each(["callbacks","commands","inputs"],function(c,d){b[d]={};a[d]||(a[d]={})});a.accesskeys||(a.accesskeys={});d.each(b.items,function(f,e){var g=d('').addClass(e.className||""),l=null,h=null;g.on("click",d.noop);if("string"===typeof e||"cm_separator"===e.type)e={type:"cm_seperator"};
+e.$node=g.data({contextMenu:b,contextMenuRoot:a,contextMenuKey:f});if("undefined"!==typeof e.accesskey)for(var m=q(e.accesskey),n=0,y;y=m[n];n++)if(!a.accesskeys[y]){a.accesskeys[y]=e;if(m=e.name.match(new RegExp("^(.*?)("+y+")(.*)$","i")))e._beforeAccesskey=m[1],e._accesskey=m[2],e._afterAccesskey=m[3];break}if(e.type&&B[e.type])B[e.type].call(g,e,b,a),d.each([b,a],function(a,c){c.commands[f]=e;!d.isFunction(e.callback)||"undefined"!==typeof c.callbacks[f]&&"undefined"!==typeof b.type||(c.callbacks[f]=
+e.callback)});else{"cm_seperator"===e.type?g.addClass("context-menu-separator "+a.classNames.notSelectable):"html"===e.type?g.addClass("context-menu-html "+a.classNames.notSelectable):"sub"!==e.type&&(e.type?(l=d("").appendTo(g),c(e).appendTo(l),g.addClass("context-menu-input"),b.hasTypes=!0,d.each([b,a],function(a,b){b.commands[f]=e;b.inputs[f]=e})):e.items&&(e.type="sub"));switch(e.type){case "cm_seperator":break;case "text":h=d('').attr("name",
+"context-menu-input-"+f).val(e.value||"").appendTo(l);break;case "textarea":h=d('').attr("name","context-menu-input-"+f).val(e.value||"").appendTo(l);e.height&&h.height(e.height);break;case "checkbox":h=d('').attr("name","context-menu-input-"+f).val(e.value||"").prop("checked",!!e.selected).prependTo(l);break;case "radio":h=d('').attr("name","context-menu-input-"+e.radio).val(e.value||"").prop("checked",
+!!e.selected).prependTo(l);break;case "select":h=d('').attr("name","context-menu-input-"+f).appendTo(l);e.options&&(d.each(e.options,function(a,b){d("").val(a).text(b).appendTo(h)}),h.val(e.selected));break;case "sub":c(e).appendTo(g);e.appendTo=e.$node;g.data("contextMenu",e).addClass("context-menu-submenu");e.callback=null;"function"===typeof e.items.then?p.processPromises(e,a,e.items):p.create(e,a);break;case "html":d(e.html).appendTo(g);break;default:d.each([b,
+a],function(a,c){c.commands[f]=e;!d.isFunction(e.callback)||"undefined"!==typeof c.callbacks[f]&&"undefined"!==typeof b.type||(c.callbacks[f]=e.callback)}),c(e).appendTo(g)}if(e.type&&"sub"!==e.type&&"html"!==e.type&&"cm_seperator"!==e.type&&(h.on("focus",k.focusInput).on("blur",k.blurInput),e.events))h.on(e.events,b);e.icon&&(d.isFunction(e.icon)?e._icon=e.icon.call(this,this,g,f,e):"string"===typeof e.icon&&"fa-"===e.icon.substring(0,3)?e._icon=a.classNames.icon+" "+a.classNames.icon+"--fa fa "+
+e.icon:e._icon=a.classNames.icon+" "+a.classNames.icon+"-"+e.icon,g.addClass(e._icon))}e.$input=h;e.$label=l;g.appendTo(b.$menu);if(!b.hasTypes&&d.support.eventSelectstart)g.on("selectstart.disableTextSelect",k.abortevent)});b.$node||b.$menu.css("display","none").addClass("context-menu-root");b.$menu.appendTo(b.appendTo||document.body)},resize:function(b,a){var c;b.css({position:"absolute",display:"block"});b.data("width",(c=b.get(0)).getBoundingClientRect?Math.ceil(c.getBoundingClientRect().width):
+b.outerWidth()+1);b.css({position:"static",minWidth:"0px",maxWidth:"100000px"});b.find("> li > ul").each(function(){p.resize(d(this),!0)});a||b.find("ul").addBack().css({position:"",display:"",minWidth:"",maxWidth:""}).outerWidth(function(){return d(this).data("width")})},update:function(b,a){var c=this;"undefined"===typeof a&&(a=b,p.resize(b.$menu));b.$menu.children().each(function(){var f=d(this),e=f.data("contextMenuKey"),g=b.items[e],l=d.isFunction(g.disabled)&&g.disabled.call(c,e,a)||!0===g.disabled,
+h;h=d.isFunction(g.visible)?g.visible.call(c,e,a):"undefined"!==typeof g.visible?!0===g.visible:!0;f[h?"show":"hide"]();f[l?"addClass":"removeClass"](a.classNames.disabled);d.isFunction(g.icon)&&(f.removeClass(g._icon),g._icon=g.icon.call(this,c,f,e,g),f.addClass(g._icon));if(g.type)switch(f.find("input, select, textarea").prop("disabled",l),g.type){case "text":case "textarea":g.$input.val(g.value||"");break;case "checkbox":case "radio":g.$input.val(g.value||"").prop("checked",!!g.selected);break;
+case "select":g.$input.val((0===g.selected?"0":g.selected)||"")}g.$menu&&p.update.call(c,g,a)})},layer:function(b,a){var c=b.$layer=d('').css({height:v.height(),width:v.width(),display:"block",position:"fixed","z-index":a,top:0,left:0,opacity:0,filter:"alpha(opacity=0)","background-color":"#000"}).data("contextMenuRoot",b).insertBefore(this).on("contextmenu",k.abortevent).on("mousedown",k.layerClick);"undefined"===typeof document.body.style.maxWidth&&c.css({position:"absolute",
+height:d(document).height()});return c},processPromises:function(b,a,c){function d(a,b,c){"undefined"===typeof c?(c={error:{name:"No items and no error item",icon:"context-menu-icon context-menu-icon-quit"}},window.console&&(console.error||console.log).call(console,'When you reject a promise, provide an "items" object, equal to normal sub-menu items')):"string"===typeof c&&(c={error:{name:c}});e(a,b,c)}function e(a,b,c){"undefined"!==typeof b.$menu&&b.$menu.is(":visible")&&(a.$node.removeClass(b.classNames.iconLoadingClass),
+a.items=c,p.create(a,b,!0),p.update(a,b),b.positionSubmenu.call(a.$node,a.$menu))}b.$node.addClass(a.classNames.iconLoadingClass);c.then(function(a,b,c){"undefined"===typeof c&&d(r);e(a,b,c)}.bind(this,b,a),d.bind(this,b,a))},activated:function(b){b=b.$menu;var a=b.offset(),c=d(window).height(),f=d(window).scrollTop(),e=b.height();e>c?b.css({height:c+"px","overflow-x":"hidden","overflow-y":"auto",top:f+"px"}):(a.topf+c)&&b.css({top:"0px"})}};d.fn.contextMenu=function(b){var a=this;if(0<
+this.length)if("undefined"===typeof b)this.first().trigger("contextmenu");else if("undefined"!==typeof b.x&&"undefined"!==typeof b.y)this.first().trigger(d.Event("contextmenu",{pageX:b.x,pageY:b.y,mouseButton:b.button}));else if("hide"===b){var c=this.first().data("contextMenu")?this.first().data("contextMenu").$menu:null;c&&c.trigger("contextmenu:hide")}else"destroy"===b?d.contextMenu("destroy",{context:this}):d.isPlainObject(b)?(b.context=this,d.contextMenu("create",b)):b?this.removeClass("context-menu-disabled"):
+b||this.addClass("context-menu-disabled");else d.each(n,function(){this.selector===a.selector&&(b.data=this,d.extend(b.data,{trigger:"demand"}))}),k.contextmenu.call(b.target,b);return this};d.contextMenu=function(b,a){"string"!==typeof b&&(a=b,b="create");"string"===typeof a?a={selector:a}:"undefined"===typeof a&&(a={});var c=d.extend(!0,{},C,a||{}),f=d(document),e=f,g=!1;c.context&&c.context.length?(e=d(c.context).first(),c.context=e.get(0),g=!d(c.context).is(document)):c.context=document;switch(b){case "update":if(g)p.update(e);
+else for(var l in n)n.hasOwnProperty(l)&&p.update(n[l]);break;case "create":if(!c.selector)throw Error("No selector specified");if(c.selector.match(/.context-menu-(list|item|input)($|\s)/))throw Error('Cannot bind to selector "'+c.selector+'" as it contains a reserved className');if(!c.build&&(!c.items||d.isEmptyObject(c.items)))throw Error("No Items specified");A++;c.ns=".contextMenu"+A;g||(w[c.selector]=c.ns);n[c.ns]=c;c.trigger||(c.trigger="right");z||(l={"contextmenu:focus.contextMenu":k.focusItem,
+"contextmenu:blur.contextMenu":k.blurItem,"contextmenu.contextMenu":k.abortevent,"mouseenter.contextMenu":k.itemMouseenter,"mouseleave.contextMenu":k.itemMouseleave},l["click"===c.itemClickEvent?"click.contextMenu":"mouseup.contextMenu"]=k.itemClick,f.on({"contextmenu:hide.contextMenu":k.hideMenu,"prevcommand.contextMenu":k.prevItem,"nextcommand.contextMenu":k.nextItem,"contextmenu.contextMenu":k.abortevent,"mouseenter.contextMenu":k.menuMouseenter,"mouseleave.contextMenu":k.menuMouseleave},".context-menu-list").on("mouseup.contextMenu",
+".context-menu-input",k.inputClick).on(l,".context-menu-item"),z=!0);e.on("contextmenu"+c.ns,c.selector,c,k.contextmenu);if(g)e.on("remove"+c.ns,function(){d(this).contextMenu("destroy")});switch(c.trigger){case "hover":e.on("mouseenter"+c.ns,c.selector,c,k.mouseenter).on("mouseleave"+c.ns,c.selector,c,k.mouseleave);break;case "left":e.on("click"+c.ns,c.selector,c,k.click);break;case "touchstart":e.on("touchstart"+c.ns,c.selector,c,k.click)}c.build||p.create(c);break;case "destroy":var h;if(g){var m=
+c.context;d.each(n,function(a,b){if(!b||!d(m).is(b.selector))return!0;h=d(".context-menu-list").filter(":visible");h.length&&h.data().contextMenuRoot.$trigger.is(d(b.context).find(b.selector))&&h.trigger("contextmenu:hide",{force:!0});try{n[b.ns].$menu&&n[b.ns].$menu.remove(),delete n[b.ns]}catch(I){n[b.ns]=null}d(b.context).off(b.ns);return!0})}else if(!c.selector)f.off(".contextMenu .contextMenuAutoHide"),d.each(n,function(a,b){d(b.context).off(b.ns)}),w={},n={},A=0,z=!1,d("#context-menu-layer, .context-menu-list").remove();
+else if(w[c.selector]){h=d(".context-menu-list").filter(":visible");h.length&&h.data().contextMenuRoot.$trigger.is(c.selector)&&h.trigger("contextmenu:hide",{force:!0});try{n[w[c.selector]].$menu&&n[w[c.selector]].$menu.remove(),delete n[w[c.selector]]}catch(H){n[w[c.selector]]=null}f.off(w[c.selector])}break;case "html5":(!d.support.htmlCommand&&!d.support.htmlMenuitem||"boolean"===typeof a&&a)&&d('menu[type="context"]').each(function(){this.id&&d.contextMenu({selector:"[contextmenu="+this.id+"]",
+items:d.contextMenu.fromMenu(this)})}).css("display","none");break;default:throw Error('Unknown operation "'+b+'"');}return this};d.contextMenu.setInputValues=function(b,a){"undefined"===typeof a&&(a={});d.each(b.inputs,function(b,d){switch(d.type){case "text":case "textarea":d.value=a[b]||"";break;case "checkbox":d.selected=a[b]?!0:!1;break;case "radio":d.selected=(a[d.radio]||"")===d.value;break;case "select":d.selected=a[b]||""}})};d.contextMenu.getInputValues=function(b,a){"undefined"===typeof a&&
+(a={});d.each(b.inputs,function(b,d){switch(d.type){case "text":case "textarea":case "select":a[b]=d.$input.val();break;case "checkbox":a[b]=d.$input.prop("checked");break;case "radio":d.$input.prop("checked")&&(a[d.radio]=d.value)}});return a};d.contextMenu.fromMenu=function(b){b=d(b);var a={};u(a,b.children());return a};d.contextMenu.defaults=C;d.contextMenu.types=B;d.contextMenu.handle=k;d.contextMenu.op=p;d.contextMenu.menus=n})(jQuery);
(function(k){k.color={};k.color.make=function(t,m,j,p){var f={};f.r=t||0;f.g=m||0;f.b=j||0;f.a=null!=p?p:1;f.add=function(j,k){for(var p=0;pl?l:k}f.r=j(0,parseInt(f.r),255);f.g=j(0,parseInt(f.g),255);
f.b=j(0,parseInt(f.b),255);f.a=j(0,f.a,1);return f};f.clone=function(){return k.color.make(f.r,f.b,f.g,f.a)};return f.normalize()};k.color.extract=function(t,m){var j;do{j=t.css(m).toLowerCase();if(""!=j&&"transparent"!=j)break;t=t.parent()}while(t.length&&!k.nodeName(t.get(0),"body"));"rgba(0, 0, 0, 0)"==j&&(j="transparent");return k.color.parse(j)};k.color.parse=function(t){var m,j=k.color.make;if(m=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(t))return j(parseInt(m[1],
10),parseInt(m[2],10),parseInt(m[3],10));if(m=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(t))return j(parseInt(m[1],10),parseInt(m[2],10),parseInt(m[3],10),parseFloat(m[4]));if(m=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(t))return j(2.55*parseFloat(m[1]),2.55*parseFloat(m[2]),2.55*parseFloat(m[3]));if(m=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(t))return j(2.55*
diff --git a/plugins/core/menubar.js b/plugins/core/menubar.js
index d494cafb..4bfbc9f0 100644
--- a/plugins/core/menubar.js
+++ b/plugins/core/menubar.js
@@ -174,6 +174,15 @@ JS9.Menubar.init = function(width, height){
this.menuConjq.css("background", this.backgroundColor);
}
$(function(){
+ // eslint-disable-next-line no-unused-vars
+ function mypos(opt, x, y) {
+ opt.$menu.position({
+ my: 'left top',
+ at: 'right-5 bottom-5',
+ of: opt.$trigger,
+ collision: "fit"
+ });
+ }
function onhide() {
var tdisp = that.display;
if( JS9.bugs.hide_menu && tdisp.image ){
@@ -190,6 +199,7 @@ JS9.Menubar.init = function(width, height){
selector: "#superMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, name, tdisp;
var n = 0;
@@ -229,6 +239,7 @@ JS9.Menubar.init = function(width, height){
selector: "#fileMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, im, name, imlen, s1;
var n = 0;
@@ -597,6 +608,7 @@ JS9.Menubar.init = function(width, height){
selector: "#viewMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, plugin, pname, pinst, key;
var lastxclass="";
@@ -865,6 +877,7 @@ JS9.Menubar.init = function(width, height){
selector: "#zoomMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, zoom, zoomp, name, name2;
var n = 0;
@@ -1010,6 +1023,7 @@ JS9.Menubar.init = function(width, height){
selector: "#scaleMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, s1, s2;
var n = 0;
@@ -1172,6 +1186,7 @@ JS9.Menubar.init = function(width, height){
selector: "#colorMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, s1, s2, arr;
var n = 0;
@@ -1353,6 +1368,7 @@ JS9.Menubar.init = function(width, height){
selector: "#regionMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, s1;
var tdisp = JS9.Menubar.getDisplays.call(that)[0];
@@ -1470,6 +1486,7 @@ JS9.Menubar.init = function(width, height){
selector: "#wcsMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, s1, s2, key, altwcs;
var n=0, nwcs=0, got=0;
@@ -1697,6 +1714,7 @@ JS9.Menubar.init = function(width, height){
selector: "#analysisMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var i, j, s, apackages, atasks;
var plugin, pinst, pname;
@@ -1995,6 +2013,7 @@ JS9.Menubar.init = function(width, height){
selector: "#helpMenu" + that.id,
zIndex: JS9.MENUZINDEX,
events: { hide: onhide },
+ position: mypos,
build: function(){
var t, key, val;
var n = 1;