diff --git a/.jscsrc b/.jscsrc index 3341a4f8..e43b7b77 100644 --- a/.jscsrc +++ b/.jscsrc @@ -12,9 +12,7 @@ "requireParenthesesAroundIIFE": true, "requireCommaBeforeLineBreak": true, "requireCamelCaseOrUpperCaseIdentifiers": true, - "requireDotNotation": { - "allExcept": ["snake_case"] - }, + "requireDotNotation": true, "requireSpacesInForStatement": true, "requireSpaceBetweenArguments": true, "maximumLineLength": { @@ -35,9 +33,6 @@ "requireSpacesInFunctionExpression": { "beforeOpeningCurlyBrace": true }, - "requireSpacesInsideParentheses": { - "all": false - }, "requireSpaceAfterKeywords": [ "if", "else", @@ -50,9 +45,7 @@ "catch" ], "requireSpacesInsideObjectBrackets": "all", - "requireSpacesInsideBrackets": false, "requireSemicolons": true, - "requireSpacesInConditionalExpression": false, "requireSpaceAfterBinaryOperators": true, "requireLineFeedAtFileEnd": true, "requireSpaceBeforeBinaryOperators": [ @@ -69,7 +62,7 @@ "requireSpacesInNamedFunctionExpression": { "beforeOpeningCurlyBrace": true }, - "requirePaddingNewLinesBeforeLineComments": false, + "requirePaddingNewLinesBeforeLineComments": true, "validateLineBreaks": "LF", "disallowKeywords": [ "with" ], @@ -87,6 +80,6 @@ "disallowSpaceAfterObjectKeys": true, "disallowSpaceAfterPrefixUnaryOperators": true, "disallowSpaceBeforePostfixUnaryOperators": true, - "disallowSpaceBeforeBinaryOperators": [ ",", ":" ], + "disallowSpaceBeforeBinaryOperators": [ "," ], "disallowMultipleLineBreaks": true } diff --git a/dist/font/context-menu-icons.eot b/dist/font/context-menu-icons.eot index a3dd3f75..6e015855 100644 Binary files a/dist/font/context-menu-icons.eot and b/dist/font/context-menu-icons.eot differ diff --git a/dist/font/context-menu-icons.ttf b/dist/font/context-menu-icons.ttf index 8542cd83..042ba0f6 100644 Binary files a/dist/font/context-menu-icons.ttf and b/dist/font/context-menu-icons.ttf differ diff --git a/dist/font/context-menu-icons.woff b/dist/font/context-menu-icons.woff index 71abf753..ca7ff0f4 100644 Binary files a/dist/font/context-menu-icons.woff and b/dist/font/context-menu-icons.woff differ diff --git a/dist/font/context-menu-icons.woff2 b/dist/font/context-menu-icons.woff2 index 08005624..f907a968 100644 Binary files a/dist/font/context-menu-icons.woff2 and b/dist/font/context-menu-icons.woff2 differ diff --git a/dist/jquery.contextMenu.css b/dist/jquery.contextMenu.css index 7f244344..0cfd8ef1 100644 --- a/dist/jquery.contextMenu.css +++ b/dist/jquery.contextMenu.css @@ -12,7 +12,7 @@ * Licensed under * MIT License http://www.opensource.org/licenses/mit-license * - * Date: 2017-08-30T12:41:32.666Z + * Date: 2017-08-30T15:09:51.172Z */ @-webkit-keyframes cm-spin { 0% { @@ -54,8 +54,8 @@ font-style: normal; font-weight: normal; - src: url("font/context-menu-icons.eot?1r7ll"); - src: url("font/context-menu-icons.eot?1r7ll#iefix") format("embedded-opentype"), url("font/context-menu-icons.woff2?1r7ll") format("woff2"), url("font/context-menu-icons.woff?1r7ll") format("woff"), url("font/context-menu-icons.ttf?1r7ll") format("truetype"); + src: url("font/context-menu-icons.eot?35p2z"); + src: url("font/context-menu-icons.eot?35p2z#iefix") format("embedded-opentype"), url("font/context-menu-icons.woff2?35p2z") format("woff2"), url("font/context-menu-icons.woff?35p2z") format("woff"), url("font/context-menu-icons.ttf?35p2z") format("truetype"); } .context-menu-icon-add:before { diff --git a/dist/jquery.contextMenu.min.css b/dist/jquery.contextMenu.min.css index 74d46455..761649c9 100644 --- a/dist/jquery.contextMenu.min.css +++ b/dist/jquery.contextMenu.min.css @@ -11,6 +11,6 @@ * Licensed under * MIT License http://www.opensource.org/licenses/mit-license * - * Date: 2017-08-30T12:41:32.666Z - */@-webkit-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@-o-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@font-face{font-family:context-menu-icons;font-style:normal;font-weight:400;src:url(font/context-menu-icons.eot?1r7ll);src:url(font/context-menu-icons.eot?1r7ll#iefix) format("embedded-opentype"),url(font/context-menu-icons.woff2?1r7ll) format("woff2"),url(font/context-menu-icons.woff?1r7ll) format("woff"),url(font/context-menu-icons.ttf?1r7ll) format("truetype")}.context-menu-icon-add:before{content:"\EA01"}.context-menu-icon-copy:before{content:"\EA02"}.context-menu-icon-cut:before{content:"\EA03"}.context-menu-icon-delete:before{content:"\EA04"}.context-menu-icon-edit:before{content:"\EA05"}.context-menu-icon-loading:before{content:"\EA06"}.context-menu-icon-paste:before{content:"\EA07"}.context-menu-icon-quit:before{content:"\EA08"}.context-menu-icon::before{position:absolute;top:50%;left:0;width:2em;font-family:context-menu-icons;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-disabled::before{color:#bbb}.context-menu-icon.context-menu-icon-loading:before{-webkit-animation:cm-spin 2s infinite;-o-animation:cm-spin 2s infinite;animation:cm-spin 2s infinite}.context-menu-icon.context-menu-icon--fa{display:list-item;font-family:inherit}.context-menu-icon.context-menu-icon--fa::before{position:absolute;top:50%;left:0;width:2em;font-family:FontAwesome;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-icon--fa.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-icon--fa.context-menu-disabled::before{color:#bbb}.context-menu-list{position:absolute;display:inline-block;min-width:13em;max-width:26em;padding:.25em 0;margin:.3em;font-family:inherit;font-size:inherit;list-style-type:none;background:#fff;border:1px solid #bebebe;border-radius:.2em;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.5);box-shadow:0 2px 5px rgba(0,0,0,.5)}.context-menu-item{position:relative;padding:.2em 2em;color:#2f2f2f;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff}.context-menu-separator{padding:0;margin:.35em 0;border-bottom:1px solid #e6e6e6}.context-menu-item>label>input,.context-menu-item>label>textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.context-menu-item.context-menu-hover{color:#fff;cursor:pointer;background-color:#2980b9}.context-menu-item.context-menu-disabled{color:#bbb;cursor:default;background-color:#fff}.context-menu-input.context-menu-hover{color:#2f2f2f;cursor:default}.context-menu-submenu:after{position:absolute;top:50%;right:.5em;z-index:1;width:0;height:0;content:'';border-color:transparent transparent transparent #2f2f2f;border-style:solid;border-width:.25em 0 .25em .25em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.context-menu-item.context-menu-input{padding:.3em .6em}.context-menu-input>label>*{vertical-align:top}.context-menu-input>label>input[type=checkbox],.context-menu-input>label>input[type=radio]{position:relative;top:.12em;margin-right:.4em}.context-menu-input>label{margin:0}.context-menu-input>label,.context-menu-input>label>input[type=text],.context-menu-input>label>select,.context-menu-input>label>textarea{display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.context-menu-input>label>textarea{height:7em}.context-menu-item>.context-menu-list{top:.3em;right:-.3em;display:none}.context-menu-item.context-menu-visible>.context-menu-list{display:block}.context-menu-accesskey{text-decoration:underline} + * Date: 2017-08-30T15:09:51.172Z + */@-webkit-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@-o-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@font-face{font-family:context-menu-icons;font-style:normal;font-weight:400;src:url(font/context-menu-icons.eot?35p2z);src:url(font/context-menu-icons.eot?35p2z#iefix) format("embedded-opentype"),url(font/context-menu-icons.woff2?35p2z) format("woff2"),url(font/context-menu-icons.woff?35p2z) format("woff"),url(font/context-menu-icons.ttf?35p2z) format("truetype")}.context-menu-icon-add:before{content:"\EA01"}.context-menu-icon-copy:before{content:"\EA02"}.context-menu-icon-cut:before{content:"\EA03"}.context-menu-icon-delete:before{content:"\EA04"}.context-menu-icon-edit:before{content:"\EA05"}.context-menu-icon-loading:before{content:"\EA06"}.context-menu-icon-paste:before{content:"\EA07"}.context-menu-icon-quit:before{content:"\EA08"}.context-menu-icon::before{position:absolute;top:50%;left:0;width:2em;font-family:context-menu-icons;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-disabled::before{color:#bbb}.context-menu-icon.context-menu-icon-loading:before{-webkit-animation:cm-spin 2s infinite;-o-animation:cm-spin 2s infinite;animation:cm-spin 2s infinite}.context-menu-icon.context-menu-icon--fa{display:list-item;font-family:inherit}.context-menu-icon.context-menu-icon--fa::before{position:absolute;top:50%;left:0;width:2em;font-family:FontAwesome;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-icon--fa.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-icon--fa.context-menu-disabled::before{color:#bbb}.context-menu-list{position:absolute;display:inline-block;min-width:13em;max-width:26em;padding:.25em 0;margin:.3em;font-family:inherit;font-size:inherit;list-style-type:none;background:#fff;border:1px solid #bebebe;border-radius:.2em;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.5);box-shadow:0 2px 5px rgba(0,0,0,.5)}.context-menu-item{position:relative;padding:.2em 2em;color:#2f2f2f;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff}.context-menu-separator{padding:0;margin:.35em 0;border-bottom:1px solid #e6e6e6}.context-menu-item>label>input,.context-menu-item>label>textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.context-menu-item.context-menu-hover{color:#fff;cursor:pointer;background-color:#2980b9}.context-menu-item.context-menu-disabled{color:#bbb;cursor:default;background-color:#fff}.context-menu-input.context-menu-hover{color:#2f2f2f;cursor:default}.context-menu-submenu:after{position:absolute;top:50%;right:.5em;z-index:1;width:0;height:0;content:'';border-color:transparent transparent transparent #2f2f2f;border-style:solid;border-width:.25em 0 .25em .25em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.context-menu-item.context-menu-input{padding:.3em .6em}.context-menu-input>label>*{vertical-align:top}.context-menu-input>label>input[type=checkbox],.context-menu-input>label>input[type=radio]{position:relative;top:.12em;margin-right:.4em}.context-menu-input>label{margin:0}.context-menu-input>label,.context-menu-input>label>input[type=text],.context-menu-input>label>select,.context-menu-input>label>textarea{display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.context-menu-input>label>textarea{height:7em}.context-menu-item>.context-menu-list{top:.3em;right:-.3em;display:none}.context-menu-item.context-menu-visible>.context-menu-list{display:block}.context-menu-accesskey{text-decoration:underline} /*# sourceMappingURL=jquery.contextMenu.min.css.map */ diff --git a/dist/jquery.contextMenu.min.css.map b/dist/jquery.contextMenu.min.css.map index 0a9c6a66..2f37b39e 100644 --- a/dist/jquery.contextMenu.min.css.map +++ b/dist/jquery.contextMenu.min.css.map @@ -1 +1 @@ -{"version":3,"sources":["jquery.contextMenu.css","jquery.contextMenu.min.css"],"names":[],"mappings":"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","file":"jquery.contextMenu.min.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * jQuery contextMenu - Plugin for simple contextMenu handling\n *\n * Version: v2.5.0\n *\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\n * Web: http://swisnl.github.io/jQuery-contextMenu/\n *\n * Copyright (c) 2011-2017 SWIS BV and contributors\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n * Date: 2017-08-30T12:41:32.666Z\n */\n@keyframes cm-spin {\n 0% {\n -webkit-transform: translateY(-50%) rotate(0deg);\n transform: translateY(-50%) rotate(0deg); }\n 100% {\n -webkit-transform: translateY(-50%) rotate(359deg);\n transform: translateY(-50%) rotate(359deg); } }\n\n@font-face {\n font-family: \"context-menu-icons\";\n src: url(\"font/context-menu-icons.eot?1r7ll\");\n src: url(\"font/context-menu-icons.eot?1r7ll#iefix\") format(\"embedded-opentype\"), url(\"font/context-menu-icons.woff2?1r7ll\") format(\"woff2\"), url(\"font/context-menu-icons.woff?1r7ll\") format(\"woff\"), url(\"font/context-menu-icons.ttf?1r7ll\") format(\"truetype\");\n font-weight: normal;\n font-style: normal; }\n\n.context-menu-icon-add:before {\n content: \"\\EA01\"; }\n\n.context-menu-icon-copy:before {\n content: \"\\EA02\"; }\n\n.context-menu-icon-cut:before {\n content: \"\\EA03\"; }\n\n.context-menu-icon-delete:before {\n content: \"\\EA04\"; }\n\n.context-menu-icon-edit:before {\n content: \"\\EA05\"; }\n\n.context-menu-icon-loading:before {\n content: \"\\EA06\"; }\n\n.context-menu-icon-paste:before {\n content: \"\\EA07\"; }\n\n.context-menu-icon-quit:before {\n content: \"\\EA08\"; }\n\n.context-menu-icon::before {\n color: #2980B9;\n font-family: \"context-menu-icons\";\n font-style: normal;\n font-weight: normal;\n font-size: 1em;\n left: 0;\n line-height: 1;\n position: absolute;\n text-align: center;\n top: 50%;\n transform: translateY(-50%);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 2em; }\n\n.context-menu-icon.context-menu-hover:before {\n color: #FFF; }\n\n.context-menu-icon.context-menu-disabled::before {\n color: #bbbbbb; }\n\n.context-menu-icon.context-menu-icon-loading:before {\n animation: cm-spin 2s infinite; }\n\n.context-menu-icon.context-menu-icon--fa {\n display: list-item;\n font-family: inherit; }\n .context-menu-icon.context-menu-icon--fa::before {\n color: #2980B9;\n font-family: FontAwesome;\n font-style: normal;\n font-weight: normal;\n font-size: 1em;\n left: 0;\n line-height: 1;\n position: absolute;\n text-align: center;\n top: 50%;\n transform: translateY(-50%);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 2em; }\n .context-menu-icon.context-menu-icon--fa.context-menu-hover:before {\n color: #FFF; }\n .context-menu-icon.context-menu-icon--fa.context-menu-disabled::before {\n color: #bbbbbb; }\n\n.context-menu-list {\n background: #FFF;\n border: 1px solid #bebebe;\n border-radius: 0.2em;\n box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);\n display: inline-block;\n font-family: inherit;\n font-size: inherit;\n list-style-type: none;\n margin: 0.3em;\n max-width: 26em;\n min-width: 13em;\n padding: 0.25em 0;\n position: absolute; }\n\n.context-menu-item {\n background-color: #FFF;\n color: #2F2F2F;\n padding: 0.2em 2em;\n position: relative;\n user-select: none; }\n\n.context-menu-separator {\n border-bottom: 1px solid #e6e6e6;\n margin: 0.35em 0;\n padding: 0; }\n\n.context-menu-item > label > input,\n.context-menu-item > label > textarea {\n user-select: text; }\n\n.context-menu-item.context-menu-hover {\n background-color: #2980B9;\n color: #FFF;\n cursor: pointer; }\n\n.context-menu-item.context-menu-disabled {\n background-color: #FFF;\n color: #bbbbbb;\n cursor: default; }\n\n.context-menu-input.context-menu-hover {\n cursor: default;\n color: #2F2F2F; }\n\n.context-menu-submenu:after {\n content: '';\n border-style: solid;\n border-width: .25em 0 .25em .25em;\n border-color: transparent transparent transparent #2F2F2F;\n height: 0;\n position: absolute;\n right: .5em;\n top: 50%;\n transform: translateY(-50%);\n width: 0;\n z-index: 1; }\n\n/**\n * Inputs\n */\n.context-menu-item.context-menu-input {\n padding: .3em .6em; }\n\n/* vertically align inside labels */\n.context-menu-input > label > * {\n vertical-align: top; }\n\n/* position checkboxes and radios as icons */\n.context-menu-input > label > input[type=\"checkbox\"],\n.context-menu-input > label > input[type=\"radio\"] {\n margin-right: .4em;\n position: relative;\n top: .12em; }\n\n.context-menu-input > label {\n margin: 0; }\n\n.context-menu-input > label,\n.context-menu-input > label > input[type=\"text\"],\n.context-menu-input > label > textarea,\n.context-menu-input > label > select {\n box-sizing: border-box;\n display: block;\n width: 100%; }\n\n.context-menu-input > label > textarea {\n height: 7em; }\n\n.context-menu-item > .context-menu-list {\n display: none;\n /* re-positioned by js */\n right: -.3em;\n top: .3em; }\n\n.context-menu-item.context-menu-visible > .context-menu-list {\n display: block; }\n\n.context-menu-accesskey {\n text-decoration: underline; }\n","@charset \"UTF-8\";/*!\n * jQuery contextMenu - Plugin for simple contextMenu handling\n *\n * Version: v2.5.0\n *\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\n * Web: http://swisnl.github.io/jQuery-contextMenu/\n *\n * Copyright (c) 2011-2017 SWIS BV and contributors\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n * Date: 2017-08-30T12:38:57.987Z\n */@-webkit-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@-o-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@font-face{font-family:context-menu-icons;font-style:normal;font-weight:400;src:url(font/context-menu-icons.eot?12di9);src:url(font/context-menu-icons.eot?12di9#iefix) format(\"embedded-opentype\"),url(font/context-menu-icons.woff2?12di9) format(\"woff2\"),url(font/context-menu-icons.woff?12di9) format(\"woff\"),url(font/context-menu-icons.ttf?12di9) format(\"truetype\")}.context-menu-icon-add:before{content:\"\\EA01\"}.context-menu-icon-copy:before{content:\"\\EA02\"}.context-menu-icon-cut:before{content:\"\\EA03\"}.context-menu-icon-delete:before{content:\"\\EA04\"}.context-menu-icon-edit:before{content:\"\\EA05\"}.context-menu-icon-loading:before{content:\"\\EA06\"}.context-menu-icon-paste:before{content:\"\\EA07\"}.context-menu-icon-quit:before{content:\"\\EA08\"}.context-menu-icon::before{position:absolute;top:50%;left:0;width:2em;font-family:context-menu-icons;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-disabled::before{color:#bbb}.context-menu-icon.context-menu-icon-loading:before{-webkit-animation:cm-spin 2s infinite;-o-animation:cm-spin 2s infinite;animation:cm-spin 2s infinite}.context-menu-icon.context-menu-icon--fa{display:list-item;font-family:inherit}.context-menu-icon.context-menu-icon--fa::before{position:absolute;top:50%;left:0;width:2em;font-family:FontAwesome;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-icon--fa.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-icon--fa.context-menu-disabled::before{color:#bbb}.context-menu-list{position:absolute;display:inline-block;min-width:13em;max-width:26em;padding:.25em 0;margin:.3em;font-family:inherit;font-size:inherit;list-style-type:none;background:#fff;border:1px solid #bebebe;border-radius:.2em;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.5);box-shadow:0 2px 5px rgba(0,0,0,.5)}.context-menu-item{position:relative;padding:.2em 2em;color:#2f2f2f;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff}.context-menu-separator{padding:0;margin:.35em 0;border-bottom:1px solid #e6e6e6}.context-menu-item>label>input,.context-menu-item>label>textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.context-menu-item.context-menu-hover{color:#fff;cursor:pointer;background-color:#2980b9}.context-menu-item.context-menu-disabled{color:#bbb;cursor:default;background-color:#fff}.context-menu-input.context-menu-hover{color:#2f2f2f;cursor:default}.context-menu-submenu:after{position:absolute;top:50%;right:.5em;z-index:1;width:0;height:0;content:'';border-color:transparent transparent transparent #2f2f2f;border-style:solid;border-width:.25em 0 .25em .25em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.context-menu-item.context-menu-input{padding:.3em .6em}.context-menu-input>label>*{vertical-align:top}.context-menu-input>label>input[type=checkbox],.context-menu-input>label>input[type=radio]{position:relative;top:.12em;margin-right:.4em}.context-menu-input>label{margin:0}.context-menu-input>label,.context-menu-input>label>input[type=text],.context-menu-input>label>select,.context-menu-input>label>textarea{display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.context-menu-input>label>textarea{height:7em}.context-menu-item>.context-menu-list{top:.3em;right:-.3em;display:none}.context-menu-item.context-menu-visible>.context-menu-list{display:block}.context-menu-accesskey{text-decoration:underline}\n/*# sourceMappingURL=jquery.contextMenu.min.css.map */\n"]} \ No newline at end of file +{"version":3,"sources":["jquery.contextMenu.css","jquery.contextMenu.min.css"],"names":[],"mappings":"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","file":"jquery.contextMenu.min.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * jQuery contextMenu - Plugin for simple contextMenu handling\n *\n * Version: v2.5.0\n *\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\n * Web: http://swisnl.github.io/jQuery-contextMenu/\n *\n * Copyright (c) 2011-2017 SWIS BV and contributors\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n * Date: 2017-08-30T15:09:51.172Z\n */\n@keyframes cm-spin {\n 0% {\n -webkit-transform: translateY(-50%) rotate(0deg);\n transform: translateY(-50%) rotate(0deg); }\n 100% {\n -webkit-transform: translateY(-50%) rotate(359deg);\n transform: translateY(-50%) rotate(359deg); } }\n\n@font-face {\n font-family: \"context-menu-icons\";\n src: url(\"font/context-menu-icons.eot?35p2z\");\n src: url(\"font/context-menu-icons.eot?35p2z#iefix\") format(\"embedded-opentype\"), url(\"font/context-menu-icons.woff2?35p2z\") format(\"woff2\"), url(\"font/context-menu-icons.woff?35p2z\") format(\"woff\"), url(\"font/context-menu-icons.ttf?35p2z\") format(\"truetype\");\n font-weight: normal;\n font-style: normal; }\n\n.context-menu-icon-add:before {\n content: \"\\EA01\"; }\n\n.context-menu-icon-copy:before {\n content: \"\\EA02\"; }\n\n.context-menu-icon-cut:before {\n content: \"\\EA03\"; }\n\n.context-menu-icon-delete:before {\n content: \"\\EA04\"; }\n\n.context-menu-icon-edit:before {\n content: \"\\EA05\"; }\n\n.context-menu-icon-loading:before {\n content: \"\\EA06\"; }\n\n.context-menu-icon-paste:before {\n content: \"\\EA07\"; }\n\n.context-menu-icon-quit:before {\n content: \"\\EA08\"; }\n\n.context-menu-icon::before {\n color: #2980B9;\n font-family: \"context-menu-icons\";\n font-style: normal;\n font-weight: normal;\n font-size: 1em;\n left: 0;\n line-height: 1;\n position: absolute;\n text-align: center;\n top: 50%;\n transform: translateY(-50%);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 2em; }\n\n.context-menu-icon.context-menu-hover:before {\n color: #FFF; }\n\n.context-menu-icon.context-menu-disabled::before {\n color: #bbbbbb; }\n\n.context-menu-icon.context-menu-icon-loading:before {\n animation: cm-spin 2s infinite; }\n\n.context-menu-icon.context-menu-icon--fa {\n display: list-item;\n font-family: inherit; }\n .context-menu-icon.context-menu-icon--fa::before {\n color: #2980B9;\n font-family: FontAwesome;\n font-style: normal;\n font-weight: normal;\n font-size: 1em;\n left: 0;\n line-height: 1;\n position: absolute;\n text-align: center;\n top: 50%;\n transform: translateY(-50%);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n width: 2em; }\n .context-menu-icon.context-menu-icon--fa.context-menu-hover:before {\n color: #FFF; }\n .context-menu-icon.context-menu-icon--fa.context-menu-disabled::before {\n color: #bbbbbb; }\n\n.context-menu-list {\n background: #FFF;\n border: 1px solid #bebebe;\n border-radius: 0.2em;\n box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);\n display: inline-block;\n font-family: inherit;\n font-size: inherit;\n list-style-type: none;\n margin: 0.3em;\n max-width: 26em;\n min-width: 13em;\n padding: 0.25em 0;\n position: absolute; }\n\n.context-menu-item {\n background-color: #FFF;\n color: #2F2F2F;\n padding: 0.2em 2em;\n position: relative;\n user-select: none; }\n\n.context-menu-separator {\n border-bottom: 1px solid #e6e6e6;\n margin: 0.35em 0;\n padding: 0; }\n\n.context-menu-item > label > input,\n.context-menu-item > label > textarea {\n user-select: text; }\n\n.context-menu-item.context-menu-hover {\n background-color: #2980B9;\n color: #FFF;\n cursor: pointer; }\n\n.context-menu-item.context-menu-disabled {\n background-color: #FFF;\n color: #bbbbbb;\n cursor: default; }\n\n.context-menu-input.context-menu-hover {\n cursor: default;\n color: #2F2F2F; }\n\n.context-menu-submenu:after {\n content: '';\n border-style: solid;\n border-width: .25em 0 .25em .25em;\n border-color: transparent transparent transparent #2F2F2F;\n height: 0;\n position: absolute;\n right: .5em;\n top: 50%;\n transform: translateY(-50%);\n width: 0;\n z-index: 1; }\n\n/**\n * Inputs\n */\n.context-menu-item.context-menu-input {\n padding: .3em .6em; }\n\n/* vertically align inside labels */\n.context-menu-input > label > * {\n vertical-align: top; }\n\n/* position checkboxes and radios as icons */\n.context-menu-input > label > input[type=\"checkbox\"],\n.context-menu-input > label > input[type=\"radio\"] {\n margin-right: .4em;\n position: relative;\n top: .12em; }\n\n.context-menu-input > label {\n margin: 0; }\n\n.context-menu-input > label,\n.context-menu-input > label > input[type=\"text\"],\n.context-menu-input > label > textarea,\n.context-menu-input > label > select {\n box-sizing: border-box;\n display: block;\n width: 100%; }\n\n.context-menu-input > label > textarea {\n height: 7em; }\n\n.context-menu-item > .context-menu-list {\n display: none;\n /* re-positioned by js */\n right: -.3em;\n top: .3em; }\n\n.context-menu-item.context-menu-visible > .context-menu-list {\n display: block; }\n\n.context-menu-accesskey {\n text-decoration: underline; }\n","@charset \"UTF-8\";/*!\n * jQuery contextMenu - Plugin for simple contextMenu handling\n *\n * Version: v2.5.0\n *\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\n * Web: http://swisnl.github.io/jQuery-contextMenu/\n *\n * Copyright (c) 2011-2017 SWIS BV and contributors\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n * Date: 2017-08-30T15:09:14.400Z\n */@-webkit-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@-o-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0);-o-transform:translateY(-50%) rotate(0);transform:translateY(-50%) rotate(0)}100%{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@font-face{font-family:context-menu-icons;font-style:normal;font-weight:400;src:url(font/context-menu-icons.eot?4ilnm);src:url(font/context-menu-icons.eot?4ilnm#iefix) format(\"embedded-opentype\"),url(font/context-menu-icons.woff2?4ilnm) format(\"woff2\"),url(font/context-menu-icons.woff?4ilnm) format(\"woff\"),url(font/context-menu-icons.ttf?4ilnm) format(\"truetype\")}.context-menu-icon-add:before{content:\"\\EA01\"}.context-menu-icon-copy:before{content:\"\\EA02\"}.context-menu-icon-cut:before{content:\"\\EA03\"}.context-menu-icon-delete:before{content:\"\\EA04\"}.context-menu-icon-edit:before{content:\"\\EA05\"}.context-menu-icon-loading:before{content:\"\\EA06\"}.context-menu-icon-paste:before{content:\"\\EA07\"}.context-menu-icon-quit:before{content:\"\\EA08\"}.context-menu-icon::before{position:absolute;top:50%;left:0;width:2em;font-family:context-menu-icons;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-disabled::before{color:#bbb}.context-menu-icon.context-menu-icon-loading:before{-webkit-animation:cm-spin 2s infinite;-o-animation:cm-spin 2s infinite;animation:cm-spin 2s infinite}.context-menu-icon.context-menu-icon--fa{display:list-item;font-family:inherit}.context-menu-icon.context-menu-icon--fa::before{position:absolute;top:50%;left:0;width:2em;font-family:FontAwesome;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-icon--fa.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-icon--fa.context-menu-disabled::before{color:#bbb}.context-menu-list{position:absolute;display:inline-block;min-width:13em;max-width:26em;padding:.25em 0;margin:.3em;font-family:inherit;font-size:inherit;list-style-type:none;background:#fff;border:1px solid #bebebe;border-radius:.2em;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.5);box-shadow:0 2px 5px rgba(0,0,0,.5)}.context-menu-item{position:relative;padding:.2em 2em;color:#2f2f2f;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff}.context-menu-separator{padding:0;margin:.35em 0;border-bottom:1px solid #e6e6e6}.context-menu-item>label>input,.context-menu-item>label>textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.context-menu-item.context-menu-hover{color:#fff;cursor:pointer;background-color:#2980b9}.context-menu-item.context-menu-disabled{color:#bbb;cursor:default;background-color:#fff}.context-menu-input.context-menu-hover{color:#2f2f2f;cursor:default}.context-menu-submenu:after{position:absolute;top:50%;right:.5em;z-index:1;width:0;height:0;content:'';border-color:transparent transparent transparent #2f2f2f;border-style:solid;border-width:.25em 0 .25em .25em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.context-menu-item.context-menu-input{padding:.3em .6em}.context-menu-input>label>*{vertical-align:top}.context-menu-input>label>input[type=checkbox],.context-menu-input>label>input[type=radio]{position:relative;top:.12em;margin-right:.4em}.context-menu-input>label{margin:0}.context-menu-input>label,.context-menu-input>label>input[type=text],.context-menu-input>label>select,.context-menu-input>label>textarea{display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.context-menu-input>label>textarea{height:7em}.context-menu-item>.context-menu-list{top:.3em;right:-.3em;display:none}.context-menu-item.context-menu-visible>.context-menu-list{display:block}.context-menu-accesskey{text-decoration:underline}\n/*# sourceMappingURL=jquery.contextMenu.min.css.map */\n"]} \ No newline at end of file diff --git a/dist/jquery.contextMenu.min.js b/dist/jquery.contextMenu.min.js index 026fd64b..504a6a93 100755 --- a/dist/jquery.contextMenu.min.js +++ b/dist/jquery.contextMenu.min.js @@ -1,2 +1,2 @@ -!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e("object"==typeof exports?require("jquery"):jQuery)}(function(e){"use strict";function t(e){for(var t,n=e.split(/\s+/),a=[],o=0;t=n[o];o++)t=t.charAt(0).toUpperCase(),a.push(t);return a}function n(t){return t.id&&e('label[for="'+t.id+'"]').val()||t.name}function a(t,o,s){return s||(s=0),o.each(function(){var o,i,c=e(this),l=this,r=this.nodeName.toLowerCase();switch("label"===r&&c.find("input, textarea, select").length&&(o=c.text(),c=c.children().first(),l=c.get(0),r=l.nodeName.toLowerCase()),r){case"menu":i={name:c.attr("label"),items:{}},s=a(i.items,c.children(),s);break;case"a":case"button":i={name:c.text(),disabled:!!c.attr("disabled"),callback:function(){return function(){c.get(0).click()}}()};break;case"menuitem":case"command":switch(c.attr("type")){case void 0:case"command":case"menuitem":i={name:c.attr("label"),disabled:!!c.attr("disabled"),icon:c.attr("icon"),callback:function(){return function(){c.get(0).click()}}()};break;case"checkbox":i={type:"checkbox",disabled:!!c.attr("disabled"),name:c.attr("label"),selected:!!c.attr("checked")};break;case"radio":i={type:"radio",disabled:!!c.attr("disabled"),name:c.attr("label"),radio:c.attr("radiogroup"),value:c.attr("id"),selected:!!c.attr("checked")};break;default:i=void 0}break;case"hr":i="-------";break;case"input":switch(c.attr("type")){case"text":i={type:"text",name:o||n(l),disabled:!!c.attr("disabled"),value:c.val()};break;case"checkbox":i={type:"checkbox",name:o||n(l),disabled:!!c.attr("disabled"),selected:!!c.attr("checked")};break;case"radio":i={type:"radio",name:o||n(l),disabled:!!c.attr("disabled"),radio:!!c.attr("name"),value:c.val(),selected:!!c.attr("checked")};break;default:i=void 0}break;case"select":i={type:"select",name:o||n(l),disabled:!!c.attr("disabled"),selected:c.val(),options:{}},c.children().each(function(){i.options[this.value]=e(this).text()});break;case"textarea":i={type:"textarea",name:o||n(l),disabled:!!c.attr("disabled"),value:c.val()};break;case"label":break;default:i={type:"html",html:c.clone(!0)}}i&&(s++,t["key"+s]=i)}),s}e.support.htmlMenuitem="HTMLMenuItemElement"in window,e.support.htmlCommand="HTMLCommandElement"in window,e.support.eventSelectstart="onselectstart"in document.documentElement,e.ui&&e.widget||(e.cleanData=function(t){return function(n){var a,o,s;for(s=0;null!=n[s];s++){o=n[s];try{a=e._data(o,"events"),a&&a.remove&&e(o).triggerHandler("remove")}catch(e){}}t(n)}}(e.cleanData));var o=null,s=!1,i=e(window),c=0,l={},r={},u={},d={selector:null,appendTo:null,trigger:"right",autoHide:!1,delay:200,reposition:!0,selectableSubMenu:!1,classNames:{hover:"context-menu-hover",disabled:"context-menu-disabled",visible:"context-menu-visible",notSelectable:"context-menu-not-selectable",icon:"context-menu-icon",iconEdit:"context-menu-icon-edit",iconCut:"context-menu-icon-cut",iconCopy:"context-menu-icon-copy",iconPaste:"context-menu-icon-paste",iconDelete:"context-menu-icon-delete",iconAdd:"context-menu-icon-add",iconQuit:"context-menu-icon-quit",iconLoadingClass:"context-menu-icon-loading"},determinePosition:function(t){if(e.ui&&e.ui.position)t.css("display","block").position({my:"center top",at:"center bottom",of:this,offset:"0 5",collision:"fit"}).css("display","none");else{var n=this.offset();n.top+=this.outerHeight(),n.left+=this.outerWidth()/2-t.outerWidth()/2,t.css(n)}},position:function(e,t,n){var a;if(!t&&!n)return void e.determinePosition.call(this,e.$menu);if("maintain"===t&&"maintain"===n)a=e.$menu.position();else{var o=e.$menu.offsetParent().offset();a={top:n-o.top,left:t-o.left}}var s=i.scrollTop()+i.height(),c=i.scrollLeft()+i.width(),l=e.$menu.outerHeight(),r=e.$menu.outerWidth();a.top+l>s&&(a.top-=l),a.top<0&&(a.top=0),a.left+r>c&&(a.left-=r),a.left<0&&(a.left=0),e.$menu.css(a)},positionSubmenu:function(t){if(void 0!==t)if(e.ui&&e.ui.position)t.css("display","block").position({my:"left top-5",at:"right top",of:this,collision:"flipfit fit"}).css("display","");else{var n={top:-9,left:this.outerWidth()-5};t.css(n)}},zIndex:1,animation:{duration:50,show:"slideDown",hide:"slideUp"},events:{show:e.noop,hide:e.noop},callback:null,items:{}},m={timer:null,pageX:null,pageY:null},p=function(e){for(var t=0,n=e;;)if(t=Math.max(t,parseInt(n.css("z-index"),10)||0),!(n=n.parent())||!n.length||"html body".indexOf(n.prop("nodeName").toLowerCase())>-1)break;return t},f={abortevent:function(e){e.preventDefault(),e.stopImmediatePropagation()},contextmenu:function(t){var n=e(this);if("right"===t.data.trigger&&(t.preventDefault(),t.stopImmediatePropagation()),!("right"!==t.data.trigger&&"demand"!==t.data.trigger&&t.originalEvent||!(void 0===t.mouseButton||!t.data||"left"===t.data.trigger&&0===t.mouseButton||"right"===t.data.trigger&&2===t.mouseButton)||n.hasClass("context-menu-active")||n.hasClass("context-menu-disabled"))){if(o=n,t.data.build){var a=t.data.build(o,t);if(!1===a)return;if(t.data=e.extend(!0,{},d,t.data,a||{}),!t.data.items||e.isEmptyObject(t.data.items))throw window.console&&(console.error||console.log).call(console,"No items specified to show in contextMenu"),new Error("No Items specified");t.data.$trigger=o,h.create(t.data)}var s=!1;for(var i in t.data.items)if(t.data.items.hasOwnProperty(i)){var c;c=e.isFunction(t.data.items[i].visible)?t.data.items[i].visible.call(e(t.currentTarget),i,t.data):void 0===t.data.items[i]||!t.data.items[i].visible||!0===t.data.items[i].visible,c&&(s=!0)}s&&h.show.call(n,t.data,t.pageX,t.pageY)}},click:function(t){t.preventDefault(),t.stopImmediatePropagation(),e(this).trigger(e.Event("contextmenu",{data:t.data,pageX:t.pageX,pageY:t.pageY}))},mousedown:function(t){var n=e(this);o&&o.length&&!o.is(n)&&o.data("contextMenu").$menu.trigger("contextmenu:hide"),2===t.button&&(o=n.data("contextMenuActive",!0))},mouseup:function(t){var n=e(this);n.data("contextMenuActive")&&o&&o.length&&o.is(n)&&!n.hasClass("context-menu-disabled")&&(t.preventDefault(),t.stopImmediatePropagation(),o=n,n.trigger(e.Event("contextmenu",{data:t.data,pageX:t.pageX,pageY:t.pageY}))),n.removeData("contextMenuActive")},mouseenter:function(t){var n=e(this),a=e(t.relatedTarget),s=e(document);a.is(".context-menu-list")||a.closest(".context-menu-list").length||o&&o.length||(m.pageX=t.pageX,m.pageY=t.pageY,m.data=t.data,s.on("mousemove.contextMenuShow",f.mousemove),m.timer=setTimeout(function(){m.timer=null,s.off("mousemove.contextMenuShow"),o=n,n.trigger(e.Event("contextmenu",{data:m.data,pageX:m.pageX,pageY:m.pageY}))},t.data.delay))},mousemove:function(e){m.pageX=e.pageX,m.pageY=e.pageY},mouseleave:function(t){var n=e(t.relatedTarget);if(!n.is(".context-menu-list")&&!n.closest(".context-menu-list").length){try{clearTimeout(m.timer)}catch(t){}m.timer=null}},layerClick:function(t){var n,a,o=e(this),s=o.data("contextMenuRoot"),c=t.button,l=t.pageX,r=t.pageY;t.preventDefault(),setTimeout(function(){var o,u="left"===s.trigger&&0===c||"right"===s.trigger&&2===c;if(document.elementFromPoint&&s.$layer){if(s.$layer.hide(),n=document.elementFromPoint(l-i.scrollLeft(),r-i.scrollTop()),n.isContentEditable){var d=document.createRange(),m=window.getSelection();d.selectNode(n),d.collapse(!0),m.removeAllRanges(),m.addRange(d)}e(n).trigger(t),s.$layer.show()}if(s.reposition&&u)if(document.elementFromPoint){if(s.$trigger.is(n))return void s.position.call(s.$trigger,s,l,r)}else if(a=s.$trigger.offset(),o=e(window),a.top+=o.scrollTop(),a.top<=t.pageY&&(a.left+=o.scrollLeft(),a.left<=t.pageX&&(a.bottom=a.top+s.$trigger.outerHeight(),a.bottom>=t.pageY&&(a.right=a.left+s.$trigger.outerWidth(),a.right>=t.pageX))))return void s.position.call(s.$trigger,s,l,r);n&&u&&s.$trigger.one("contextmenu:hidden",function(){e(n).contextMenu({x:l,y:r,button:c})}),null!==s&&void 0!==s&&null!==s.$menu&&void 0!==s.$menu&&s.$menu.trigger("contextmenu:hide")},50)},keyStop:function(e,t){t.isInput||e.preventDefault(),e.stopPropagation()},key:function(e){var t={};o&&(t=o.data("contextMenu")||{}),void 0===t.zIndex&&(t.zIndex=0);var n=0,a=function(e){""!==e.style.zIndex?n=e.style.zIndex:null!==e.offsetParent&&void 0!==e.offsetParent?a(e.offsetParent):null!==e.parentElement&&void 0!==e.parentElement&&a(e.parentElement)};if(a(e.target),!(t.$menu&&parseInt(n,10)>parseInt(t.$menu.css("zIndex"),10))){switch(e.keyCode){case 9:case 38:if(f.keyStop(e,t),t.isInput){if(9===e.keyCode&&e.shiftKey)return e.preventDefault(),t.$selected&&t.$selected.find("input, textarea, select").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("prevcommand"));if(38===e.keyCode&&"checkbox"===t.$selected.find("input, textarea, select").prop("type"))return void e.preventDefault()}else if(9!==e.keyCode||e.shiftKey)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("prevcommand"));break;case 40:if(f.keyStop(e,t),!t.isInput)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("nextcommand"));if(9===e.keyCode)return e.preventDefault(),t.$selected&&t.$selected.find("input, textarea, select").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("nextcommand"));if(40===e.keyCode&&"checkbox"===t.$selected.find("input, textarea, select").prop("type"))return void e.preventDefault();break;case 37:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;if(!t.$selected.parent().hasClass("context-menu-root")){var s=t.$selected.parent().parent();return t.$selected.trigger("contextmenu:blur"),void(t.$selected=s)}break;case 39:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;var i=t.$selected.data("contextMenu")||{};if(i.$menu&&t.$selected.hasClass("context-menu-submenu"))return t.$selected=null,i.$selected=null,void i.$menu.trigger("nextcommand");break;case 35:case 36:return t.$selected&&t.$selected.find("input, textarea, select").length?void 0:((t.$selected&&t.$selected.parent()||t.$menu).children(":not(."+t.classNames.disabled+", ."+t.classNames.notSelectable+")")[36===e.keyCode?"first":"last"]().trigger("contextmenu:focus"),void e.preventDefault());case 13:if(f.keyStop(e,t),t.isInput){if(t.$selected&&!t.$selected.is("textarea, select"))return void e.preventDefault();break}return void(void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger("mouseup"));case 32:case 33:case 34:return void f.keyStop(e,t);case 27:return f.keyStop(e,t),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("contextmenu:hide"));default:var c=String.fromCharCode(e.keyCode).toUpperCase();if(t.accesskeys&&t.accesskeys[c])return void t.accesskeys[c].$node.trigger(t.accesskeys[c].$menu?"contextmenu:focus":"mouseup")}e.stopPropagation(),void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger(e)}},prevItem:function(t){t.stopPropagation();var n=e(this).data("contextMenu")||{},a=e(this).data("contextMenuRoot")||{};if(n.$selected){var o=n.$selected;n=n.$selected.parent().data("contextMenu")||{},n.$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.prev().length?n.$selected.prev():s.last(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(":hidden");)if(i=i.prev().length?i.prev():s.last(),i.is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find("input, textarea, select");l.length&&l.focus()},nextItem:function(t){t.stopPropagation();var n=e(this).data("contextMenu")||{},a=e(this).data("contextMenuRoot")||{};if(n.$selected){var o=n.$selected;n=n.$selected.parent().data("contextMenu")||{},n.$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.next().length?n.$selected.next():s.first(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(":hidden");)if(i=i.next().length?i.next():s.first(),i.is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find("input, textarea, select");l.length&&l.focus()},focusInput:function(){var t=e(this).closest(".context-menu-item"),n=t.data(),a=n.contextMenu,o=n.contextMenuRoot;o.$selected=a.$selected=t,o.isInput=a.isInput=!0},blurInput:function(){var t=e(this).closest(".context-menu-item"),n=t.data(),a=n.contextMenu;n.contextMenuRoot.isInput=a.isInput=!1},menuMouseenter:function(){e(this).data().contextMenuRoot.hovering=!0},menuMouseleave:function(t){var n=e(this).data().contextMenuRoot;n.$layer&&n.$layer.is(t.relatedTarget)&&(n.hovering=!1)},itemMouseenter:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;if(s.hovering=!0,t&&s.$layer&&s.$layer.is(t.relatedTarget)&&(t.preventDefault(),t.stopImmediatePropagation()),(o.$menu?o:s).$menu.children("."+s.classNames.hover).trigger("contextmenu:blur").children(".hover").trigger("contextmenu:blur"),n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable))return void(o.$selected=null);n.trigger("contextmenu:focus")},itemMouseleave:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;if(s!==o&&s.$layer&&s.$layer.is(t.relatedTarget))return void 0!==s.$selected&&null!==s.$selected&&s.$selected.trigger("contextmenu:blur"),t.preventDefault(),t.stopImmediatePropagation(),void(s.$selected=o.$selected=o.$node);o&&o.$menu&&o.$menu.hasClass("context-menu-visible")||n.trigger("contextmenu:blur")},itemClick:function(t){var n,a=e(this),o=a.data(),s=o.contextMenu,i=o.contextMenuRoot,c=o.contextMenuKey;if(!(!s.items[c]||a.is("."+i.classNames.disabled+", .context-menu-separator, ."+i.classNames.notSelectable)||a.is(".context-menu-submenu")&&!1===i.selectableSubMenu)){if(t.preventDefault(),t.stopImmediatePropagation(),e.isFunction(s.callbacks[c])&&Object.prototype.hasOwnProperty.call(s.callbacks,c))n=s.callbacks[c];else{if(!e.isFunction(i.callback))return;n=i.callback}!1!==n.call(i.$trigger,c,i,t)?i.$menu.trigger("contextmenu:hide"):i.$menu.parent().length&&h.update.call(i.$trigger,i)}},inputClick:function(e){e.stopImmediatePropagation()},hideMenu:function(t,n){var a=e(this).data("contextMenuRoot");h.hide.call(a.$trigger,a,n&&n.force)},focusItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable)||(n.addClass([s.classNames.hover,s.classNames.visible].join(" ")).parent().find(".context-menu-item").not(n).removeClass(s.classNames.visible).filter("."+s.classNames.hover).trigger("contextmenu:blur"),o.$selected=s.$selected=n,o&&o.$node&&o.$node.hasClass("context-menu-submenu")&&o.$node.addClass(s.classNames.hover),o.$node&&s.positionSubmenu.call(o.$node,o.$menu))},blurItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;o.autoHide&&n.removeClass(s.classNames.visible),n.removeClass(s.classNames.hover),o.$selected=null}},h={show:function(t,n,a){var s=e(this),i={};if(e("#context-menu-layer").trigger("mousedown"),t.$trigger=s,!1===t.events.show.call(s,t))return void(o=null);if(h.update.call(s,t),t.position.call(s,t,n,a),t.zIndex){var c=t.zIndex;"function"==typeof t.zIndex&&(c=t.zIndex.call(s,t)),i.zIndex=p(s)+c}h.layer.call(t.$menu,t,i.zIndex),t.$menu.find("ul").css("zIndex",i.zIndex+1),t.$menu.css(i)[t.animation.show](t.animation.duration,function(){s.trigger("contextmenu:visible")}),s.data("contextMenu",t).addClass("context-menu-active"),e(document).off("keydown.contextMenu").on("keydown.contextMenu",f.key),t.autoHide&&e(document).on("mousemove.contextMenuAutoHide",function(e){var n=s.offset();n.right=n.left+s.outerWidth(),n.bottom=n.top+s.outerHeight(),!t.$layer||t.hovering||e.pageX>=n.left&&e.pageX<=n.right&&e.pageY>=n.top&&e.pageY<=n.bottom||setTimeout(function(){t.hovering||null===t.$menu||void 0===t.$menu||t.$menu.trigger("contextmenu:hide")},50)})},hide:function(t,n){var a=e(this);if(t||(t=a.data("contextMenu")||{}),n||!t.events||!1!==t.events.hide.call(a,t)){if(a.removeData("contextMenu").removeClass("context-menu-active"),t.$layer){setTimeout(function(e){return function(){e.remove()}}(t.$layer),10);try{delete t.$layer}catch(e){t.$layer=null}}o=null,t.$menu.find("."+t.classNames.hover).trigger("contextmenu:blur"),t.$selected=null,t.$menu.find("."+t.classNames.visible).removeClass(t.classNames.visible),e(document).off(".contextMenuAutoHide").off("keydown.contextMenu"),t.$menu&&t.$menu[t.animation.hide](t.animation.duration,function(){t.build&&(t.$menu.remove(),e.each(t,function(e){switch(e){case"ns":case"selector":case"build":case"trigger":return!0;default:t[e]=void 0;try{delete t[e]}catch(e){}return!0}})),setTimeout(function(){a.trigger("contextmenu:hidden")},10)})}},create:function(n,a){function o(t){var n=e("");if(t._accesskey)t._beforeAccesskey&&n.append(document.createTextNode(t._beforeAccesskey)),e("").addClass("context-menu-accesskey").text(t._accesskey).appendTo(n),t._afterAccesskey&&n.append(document.createTextNode(t._afterAccesskey));else if(t.isHtmlName){if(void 0!==t.accesskey)throw new Error("accesskeys are not compatible with HTML names and cannot be used together in the same item");n.html(t.name)}else n.text(t.name);return n}void 0===a&&(a=n),n.$menu=e('
').addClass(n.className||"").data({contextMenu:n,contextMenuRoot:a}),e.each(["callbacks","commands","inputs"],function(e,t){n[t]={},a[t]||(a[t]={})}),a.accesskeys||(a.accesskeys={}),e.each(n.items,function(s,i){var c=e('').addClass(i.className||""),l=null,r=null;if(c.on("click",e.noop),"string"!=typeof i&&"cm_separator"!==i.type||(i={type:"cm_seperator"}),i.$node=c.data({contextMenu:n,contextMenuRoot:a,contextMenuKey:s}),void 0!==i.accesskey)for(var d,m=t(i.accesskey),p=0;d=m[p];p++)if(!a.accesskeys[d]){a.accesskeys[d]=i;var v=i.name.match(new RegExp("^(.*?)("+d+")(.*)$","i"));v&&(i._beforeAccesskey=v[1],i._accesskey=v[2],i._afterAccesskey=v[3]);break}if(i.type&&u[i.type])u[i.type].call(c,i,n,a),e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)});else{switch("cm_seperator"===i.type?c.addClass("context-menu-separator "+a.classNames.notSelectable):"html"===i.type?c.addClass("context-menu-html "+a.classNames.notSelectable):"sub"===i.type||(i.type?(l=e("").appendTo(c),o(i).appendTo(l),c.addClass("context-menu-input"),n.hasTypes=!0,e.each([n,a],function(e,t){t.commands[s]=i,t.inputs[s]=i})):i.items&&(i.type="sub")),i.type){case"cm_seperator":break;case"text":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").appendTo(l);break;case"textarea":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").appendTo(l),i.height&&r.height(i.height);break;case"checkbox":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").prop("checked",!!i.selected).prependTo(l);break;case"radio":r=e('').attr("name","context-menu-input-"+i.radio).val(i.value||"").prop("checked",!!i.selected).prependTo(l);break;case"select":r=e('').attr("name","context-menu-input-"+s).appendTo(l),i.options&&(e.each(i.options,function(t,n){e("").val(t).text(n).appendTo(r)}),r.val(i.selected));break;case"sub":o(i).appendTo(c),i.appendTo=i.$node,c.data("contextMenu",i).addClass("context-menu-submenu"),i.callback=null,"function"==typeof i.items.then?h.processPromises(i,a,i.items):h.create(i,a);break;case"html":e(i.html).appendTo(c);break;default:e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)}),o(i).appendTo(c)}i.type&&"sub"!==i.type&&"html"!==i.type&&"cm_seperator"!==i.type&&(r.on("focus",f.focusInput).on("blur",f.blurInput),i.events&&r.on(i.events,n)),i.icon&&(e.isFunction(i.icon)?i._icon=i.icon.call(this,this,c,s,i):"string"==typeof i.icon&&"fa-"===i.icon.substring(0,3)?i._icon=a.classNames.icon+" "+a.classNames.icon+"--fa fa "+i.icon:i._icon=a.classNames.icon+" "+a.classNames.icon+"-"+i.icon,c.addClass(i._icon))}i.$input=r,i.$label=l,c.appendTo(n.$menu),!n.hasTypes&&e.support.eventSelectstart&&c.on("selectstart.disableTextSelect",f.abortevent)}),n.$node||n.$menu.css("display","none").addClass("context-menu-root"),n.$menu.appendTo(n.appendTo||document.body)},resize:function(t,n){var a;t.css({position:"absolute",display:"block"}),t.data("width",(a=t.get(0)).getBoundingClientRect?Math.ceil(a.getBoundingClientRect().width):t.outerWidth()+1),t.css({position:"static",minWidth:"0px",maxWidth:"100000px"}),t.find("> li > ul").each(function(){h.resize(e(this),!0)}),n||t.find("ul").addBack().css({position:"",display:"",minWidth:"",maxWidth:""}).outerWidth(function(){return e(this).data("width")})},update:function(t,n){var a=this;void 0===n&&(n=t,h.resize(t.$menu)),t.$menu.children().each(function(){var o,s=e(this),i=s.data("contextMenuKey"),c=t.items[i],l=e.isFunction(c.disabled)&&c.disabled.call(a,i,n)||!0===c.disabled;if(o=e.isFunction(c.visible)?c.visible.call(a,i,n):void 0===c.visible||!0===c.visible,s[o?"show":"hide"](),s[l?"addClass":"removeClass"](n.classNames.disabled),e.isFunction(c.icon)&&(s.removeClass(c._icon),c._icon=c.icon.call(this,a,s,i,c),s.addClass(c._icon)),c.type)switch(s.find("input, select, textarea").prop("disabled",l),c.type){case"text":case"textarea":c.$input.val(c.value||"");break;case"checkbox":case"radio":c.$input.val(c.value||"").prop("checked",!!c.selected);break;case"select":c.$input.val((0===c.selected?"0":c.selected)||"")}c.$menu&&h.update.call(a,c,n)})},layer:function(t,n){var a=t.$layer=e('').css({height:i.height(),width:i.width(),display:"block",position:"fixed","z-index":n,top:0,left:0,opacity:0,filter:"alpha(opacity=0)","background-color":"#000"}).data("contextMenuRoot",t).insertBefore(this).on("contextmenu",f.abortevent).on("mousedown",f.layerClick);return void 0===document.body.style.maxWidth&&a.css({position:"absolute",height:e(document).height()}),a},processPromises:function(e,t,n){function a(e,t,n){void 0===n&&o(void 0),s(e,t,n)}function o(e,t,n){void 0===n?(n={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 n&&(n={error:{name:n}}),s(e,t,n)}function s(e,t,n){void 0!==t.$menu&&t.$menu.is(":visible")&&(e.$node.removeClass(t.classNames.iconLoadingClass),e.items=n,h.create(e,t,!0),h.update(e,t),t.positionSubmenu.call(e.$node,e.$menu))}e.$node.addClass(t.classNames.iconLoadingClass),n.then(a.bind(this,e,t),o.bind(this,e,t))}};e.fn.contextMenu=function(t){var n=this,a=t;if(this.length>0)if(void 0===t)this.first().trigger("contextmenu");else if(void 0!==t.x&&void 0!==t.y)this.first().trigger(e.Event("contextmenu",{pageX:t.x,pageY:t.y,mouseButton:t.button}));else if("hide"===t){var o=this.first().data("contextMenu")?this.first().data("contextMenu").$menu:null;o&&o.trigger("contextmenu:hide")}else"destroy"===t?e.contextMenu("destroy",{context:this}):e.isPlainObject(t)?(t.context=this,e.contextMenu("create",t)):t?this.removeClass("context-menu-disabled"):t||this.addClass("context-menu-disabled");else e.each(r,function(){this.selector===n.selector&&(a.data=this,e.extend(a.data,{trigger:"demand"}))}),f.contextmenu.call(a.target,a);return this},e.contextMenu=function(t,n){"string"!=typeof t&&(n=t,t="create"),"string"==typeof n?n={selector:n}:void 0===n&&(n={});var a=e.extend(!0,{},d,n||{}),o=e(document),i=o,u=!1;switch(a.context&&a.context.length?(i=e(a.context).first(),a.context=i.get(0),u=!e(a.context).is(document)):a.context=document,t){case"create":if(!a.selector)throw new Error("No selector specified");if(a.selector.match(/.context-menu-(list|item|input)($|\s)/))throw new Error('Cannot bind to selector "'+a.selector+'" as it contains a reserved className');if(!a.build&&(!a.items||e.isEmptyObject(a.items)))throw new Error("No Items specified");if(c++,a.ns=".contextMenu"+c,u||(l[a.selector]=a.ns),r[a.ns]=a,a.trigger||(a.trigger="right"),!s){var m="click"===a.itemClickEvent?"click.contextMenu":"mouseup.contextMenu",p={"contextmenu:focus.contextMenu":f.focusItem,"contextmenu:blur.contextMenu":f.blurItem,"contextmenu.contextMenu":f.abortevent,"mouseenter.contextMenu":f.itemMouseenter,"mouseleave.contextMenu":f.itemMouseleave};p[m]=f.itemClick,o.on({"contextmenu:hide.contextMenu":f.hideMenu,"prevcommand.contextMenu":f.prevItem,"nextcommand.contextMenu":f.nextItem,"contextmenu.contextMenu":f.abortevent,"mouseenter.contextMenu":f.menuMouseenter,"mouseleave.contextMenu":f.menuMouseleave},".context-menu-list").on("mouseup.contextMenu",".context-menu-input",f.inputClick).on(p,".context-menu-item"),s=!0}switch(i.on("contextmenu"+a.ns,a.selector,a,f.contextmenu),u&&i.on("remove"+a.ns,function(){e(this).contextMenu("destroy")}),a.trigger){case"hover":i.on("mouseenter"+a.ns,a.selector,a,f.mouseenter).on("mouseleave"+a.ns,a.selector,a,f.mouseleave);break;case"left":i.on("click"+a.ns,a.selector,a,f.click);break;case"touchstart":i.on("touchstart"+a.ns,a.selector,a,f.click)}a.build||h.create(a);break;case"destroy":var v;if(u){var x=a.context;e.each(r,function(t,n){if(!n)return!0;if(!e(x).is(n.selector))return!0;v=e(".context-menu-list").filter(":visible"),v.length&&v.data().contextMenuRoot.$trigger.is(e(n.context).find(n.selector))&&v.trigger("contextmenu:hide",{force:!0});try{r[n.ns].$menu&&r[n.ns].$menu.remove(),delete r[n.ns]}catch(e){r[n.ns]=null}return e(n.context).off(n.ns),!0})}else if(a.selector){if(l[a.selector]){v=e(".context-menu-list").filter(":visible"),v.length&&v.data().contextMenuRoot.$trigger.is(a.selector)&&v.trigger("contextmenu:hide",{force:!0});try{r[l[a.selector]].$menu&&r[l[a.selector]].$menu.remove(),delete r[l[a.selector]]}catch(e){r[l[a.selector]]=null}o.off(l[a.selector])}}else o.off(".contextMenu .contextMenuAutoHide"),e.each(r,function(t,n){e(n.context).off(n.ns)}),l={},r={},c=0,s=!1,e("#context-menu-layer, .context-menu-list").remove();break;case"html5":(!e.support.htmlCommand&&!e.support.htmlMenuitem||"boolean"==typeof n&&n)&&e('menu[type="context"]').each(function(){this.id&&e.contextMenu({selector:"[contextmenu="+this.id+"]",items:e.contextMenu.fromMenu(this)})}).css("display","none");break;default:throw new Error('Unknown operation "'+t+'"')}return this},e.contextMenu.setInputValues=function(t,n){void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case"text":case"textarea":t.value=n[e]||"";break;case"checkbox":t.selected=!!n[e];break;case"radio":t.selected=(n[t.radio]||"")===t.value;break;case"select":t.selected=n[e]||""}})},e.contextMenu.getInputValues=function(t,n){return void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case"text":case"textarea":case"select":n[e]=t.$input.val();break;case"checkbox":n[e]=t.$input.prop("checked");break;case"radio":t.$input.prop("checked")&&(n[t.radio]=t.value)}}),n},e.contextMenu.fromMenu=function(t){var n=e(t),o={};return a(o,n.children()),o},e.contextMenu.defaults=d,e.contextMenu.types=u,e.contextMenu.handle=f,e.contextMenu.op=h,e.contextMenu.menus=r}); +!function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e("object"==typeof exports?require("jquery"):jQuery)}(function(e){"use strict";function t(e){for(var t,n=e.split(/\s+/),a=[],o=0;t=n[o];o++)t=t.charAt(0).toUpperCase(),a.push(t);return a}function n(t){return t.id&&e('label[for="'+t.id+'"]').val()||t.name}function a(t,o,s){return s||(s=0),o.each(function(){var o,i,c=e(this),l=this,r=this.nodeName.toLowerCase();switch("label"===r&&c.find("input, textarea, select").length&&(o=c.text(),r=(l=(c=c.children().first()).get(0)).nodeName.toLowerCase()),r){case"menu":i={name:c.attr("label"),items:{}},s=a(i.items,c.children(),s);break;case"a":case"button":i={name:c.text(),disabled:!!c.attr("disabled"),callback:function(){c.get(0).click()}};break;case"menuitem":case"command":switch(c.attr("type")){case void 0:case"command":case"menuitem":i={name:c.attr("label"),disabled:!!c.attr("disabled"),icon:c.attr("icon"),callback:function(){c.get(0).click()}};break;case"checkbox":i={type:"checkbox",disabled:!!c.attr("disabled"),name:c.attr("label"),selected:!!c.attr("checked")};break;case"radio":i={type:"radio",disabled:!!c.attr("disabled"),name:c.attr("label"),radio:c.attr("radiogroup"),value:c.attr("id"),selected:!!c.attr("checked")};break;default:i=void 0}break;case"hr":i="-------";break;case"input":switch(c.attr("type")){case"text":i={type:"text",name:o||n(l),disabled:!!c.attr("disabled"),value:c.val()};break;case"checkbox":i={type:"checkbox",name:o||n(l),disabled:!!c.attr("disabled"),selected:!!c.attr("checked")};break;case"radio":i={type:"radio",name:o||n(l),disabled:!!c.attr("disabled"),radio:!!c.attr("name"),value:c.val(),selected:!!c.attr("checked")};break;default:i=void 0}break;case"select":i={type:"select",name:o||n(l),disabled:!!c.attr("disabled"),selected:c.val(),options:{}},c.children().each(function(){i.options[this.value]=e(this).text()});break;case"textarea":i={type:"textarea",name:o||n(l),disabled:!!c.attr("disabled"),value:c.val()};break;case"label":break;default:i={type:"html",html:c.clone(!0)}}i&&(t["key"+ ++s]=i)}),s}e.support.htmlMenuitem="HTMLMenuItemElement"in window,e.support.htmlCommand="HTMLCommandElement"in window,e.support.eventSelectstart="onselectstart"in document.documentElement,e.ui&&e.widget||(e.cleanData=function(t){return function(n){var a,o,s;for(s=0;null!=n[s];s++){o=n[s];try{(a=e._data(o,"events"))&&a.remove&&e(o).triggerHandler("remove")}catch(e){}}t(n)}}(e.cleanData));var o=null,s=!1,i=e(window),c=0,l={},r={},u={},d={selector:null,appendTo:null,trigger:"right",autoHide:!1,delay:200,reposition:!0,selectableSubMenu:!1,classNames:{hover:"context-menu-hover",disabled:"context-menu-disabled",visible:"context-menu-visible",notSelectable:"context-menu-not-selectable",icon:"context-menu-icon",iconEdit:"context-menu-icon-edit",iconCut:"context-menu-icon-cut",iconCopy:"context-menu-icon-copy",iconPaste:"context-menu-icon-paste",iconDelete:"context-menu-icon-delete",iconAdd:"context-menu-icon-add",iconQuit:"context-menu-icon-quit",iconLoadingClass:"context-menu-icon-loading"},determinePosition:function(t){if(e.ui&&e.ui.position)t.css("display","block").position({my:"center top",at:"center bottom",of:this,offset:"0 5",collision:"fit"}).css("display","none");else{var n=this.offset();n.top+=this.outerHeight(),n.left+=this.outerWidth()/2-t.outerWidth()/2,t.css(n)}},position:function(e,t,n){var a;if(t||n){if("maintain"===t&&"maintain"===n)a=e.$menu.position();else{var o=e.$menu.offsetParent().offset();a={top:n-o.top,left:t-o.left}}var s=i.scrollTop()+i.height(),c=i.scrollLeft()+i.width(),l=e.$menu.outerHeight(),r=e.$menu.outerWidth();a.top+l>s&&(a.top-=l),a.top<0&&(a.top=0),a.left+r>c&&(a.left-=r),a.left<0&&(a.left=0),e.$menu.css(a)}else e.determinePosition.call(this,e.$menu)},positionSubmenu:function(t){if(void 0!==t)if(e.ui&&e.ui.position)t.css("display","block").position({my:"left top-5",at:"right top",of:this,collision:"flipfit fit"}).css("display","");else{var n={top:-9,left:this.outerWidth()-5};t.css(n)}},zIndex:1,animation:{duration:50,show:"slideDown",hide:"slideUp"},events:{show:e.noop,hide:e.noop},callback:null,items:{}},m={timer:null,pageX:null,pageY:null},p=function(e){for(var t=0,n=e;;)if(t=Math.max(t,parseInt(n.css("z-index"),10)||0),!(n=n.parent())||!n.length||"html body".indexOf(n.prop("nodeName").toLowerCase())>-1)break;return t},f={abortevent:function(e){e.preventDefault(),e.stopImmediatePropagation()},contextmenu:function(t){var n=e(this);if("right"===t.data.trigger&&(t.preventDefault(),t.stopImmediatePropagation()),!("right"!==t.data.trigger&&"demand"!==t.data.trigger&&t.originalEvent||!(void 0===t.mouseButton||!t.data||"left"===t.data.trigger&&0===t.mouseButton||"right"===t.data.trigger&&2===t.mouseButton)||n.hasClass("context-menu-active")||n.hasClass("context-menu-disabled"))){if(o=n,t.data.build){var a=t.data.build(o,t);if(!1===a)return;if(t.data=e.extend(!0,{},d,t.data,a||{}),!t.data.items||e.isEmptyObject(t.data.items))throw window.console&&(console.error||console.log).call(console,"No items specified to show in contextMenu"),new Error("No Items specified");t.data.$trigger=o,h.create(t.data)}var s=!1;for(var i in t.data.items)if(t.data.items.hasOwnProperty(i)){(e.isFunction(t.data.items[i].visible)?t.data.items[i].visible.call(e(t.currentTarget),i,t.data):void 0===t.data.items[i]||!t.data.items[i].visible||!0===t.data.items[i].visible)&&(s=!0)}s&&h.show.call(n,t.data,t.pageX,t.pageY)}},click:function(t){t.preventDefault(),t.stopImmediatePropagation(),e(this).trigger(e.Event("contextmenu",{data:t.data,pageX:t.pageX,pageY:t.pageY}))},mousedown:function(t){var n=e(this);o&&o.length&&!o.is(n)&&o.data("contextMenu").$menu.trigger("contextmenu:hide"),2===t.button&&(o=n.data("contextMenuActive",!0))},mouseup:function(t){var n=e(this);n.data("contextMenuActive")&&o&&o.length&&o.is(n)&&!n.hasClass("context-menu-disabled")&&(t.preventDefault(),t.stopImmediatePropagation(),o=n,n.trigger(e.Event("contextmenu",{data:t.data,pageX:t.pageX,pageY:t.pageY}))),n.removeData("contextMenuActive")},mouseenter:function(t){var n=e(this),a=e(t.relatedTarget),s=e(document);a.is(".context-menu-list")||a.closest(".context-menu-list").length||o&&o.length||(m.pageX=t.pageX,m.pageY=t.pageY,m.data=t.data,s.on("mousemove.contextMenuShow",f.mousemove),m.timer=setTimeout(function(){m.timer=null,s.off("mousemove.contextMenuShow"),o=n,n.trigger(e.Event("contextmenu",{data:m.data,pageX:m.pageX,pageY:m.pageY}))},t.data.delay))},mousemove:function(e){m.pageX=e.pageX,m.pageY=e.pageY},mouseleave:function(t){var n=e(t.relatedTarget);if(!n.is(".context-menu-list")&&!n.closest(".context-menu-list").length){try{clearTimeout(m.timer)}catch(t){}m.timer=null}},layerClick:function(t){var n,a,o=e(this).data("contextMenuRoot"),s=t.button,c=t.pageX,l=t.pageY;t.preventDefault(),setTimeout(function(){var r,u="left"===o.trigger&&0===s||"right"===o.trigger&&2===s;if(document.elementFromPoint&&o.$layer){if(o.$layer.hide(),(n=document.elementFromPoint(c-i.scrollLeft(),l-i.scrollTop())).isContentEditable){var d=document.createRange(),m=window.getSelection();d.selectNode(n),d.collapse(!0),m.removeAllRanges(),m.addRange(d)}e(n).trigger(t),o.$layer.show()}if(o.reposition&&u)if(document.elementFromPoint){if(o.$trigger.is(n))return void o.position.call(o.$trigger,o,c,l)}else if(a=o.$trigger.offset(),r=e(window),a.top+=r.scrollTop(),a.top<=t.pageY&&(a.left+=r.scrollLeft(),a.left<=t.pageX&&(a.bottom=a.top+o.$trigger.outerHeight(),a.bottom>=t.pageY&&(a.right=a.left+o.$trigger.outerWidth(),a.right>=t.pageX))))return void o.position.call(o.$trigger,o,c,l);n&&u&&o.$trigger.one("contextmenu:hidden",function(){e(n).contextMenu({x:c,y:l,button:s})}),null!==o&&void 0!==o&&null!==o.$menu&&void 0!==o.$menu&&o.$menu.trigger("contextmenu:hide")},50)},keyStop:function(e,t){t.isInput||e.preventDefault(),e.stopPropagation()},key:function(e){var t={};o&&(t=o.data("contextMenu")||{}),void 0===t.zIndex&&(t.zIndex=0);var n=0,a=function(e){""!==e.style.zIndex?n=e.style.zIndex:null!==e.offsetParent&&void 0!==e.offsetParent?a(e.offsetParent):null!==e.parentElement&&void 0!==e.parentElement&&a(e.parentElement)};if(a(e.target),!(t.$menu&&parseInt(n,10)>parseInt(t.$menu.css("zIndex"),10))){switch(e.keyCode){case 9:case 38:if(f.keyStop(e,t),t.isInput){if(9===e.keyCode&&e.shiftKey)return e.preventDefault(),t.$selected&&t.$selected.find("input, textarea, select").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("prevcommand"));if(38===e.keyCode&&"checkbox"===t.$selected.find("input, textarea, select").prop("type"))return void e.preventDefault()}else if(9!==e.keyCode||e.shiftKey)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("prevcommand"));break;case 40:if(f.keyStop(e,t),!t.isInput)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("nextcommand"));if(9===e.keyCode)return e.preventDefault(),t.$selected&&t.$selected.find("input, textarea, select").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("nextcommand"));if(40===e.keyCode&&"checkbox"===t.$selected.find("input, textarea, select").prop("type"))return void e.preventDefault();break;case 37:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;if(!t.$selected.parent().hasClass("context-menu-root")){var s=t.$selected.parent().parent();return t.$selected.trigger("contextmenu:blur"),void(t.$selected=s)}break;case 39:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;var i=t.$selected.data("contextMenu")||{};if(i.$menu&&t.$selected.hasClass("context-menu-submenu"))return t.$selected=null,i.$selected=null,void i.$menu.trigger("nextcommand");break;case 35:case 36:return t.$selected&&t.$selected.find("input, textarea, select").length?void 0:((t.$selected&&t.$selected.parent()||t.$menu).children(":not(."+t.classNames.disabled+", ."+t.classNames.notSelectable+")")[36===e.keyCode?"first":"last"]().trigger("contextmenu:focus"),void e.preventDefault());case 13:if(f.keyStop(e,t),t.isInput){if(t.$selected&&!t.$selected.is("textarea, select"))return void e.preventDefault();break}return void(void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger("mouseup"));case 32:case 33:case 34:return void f.keyStop(e,t);case 27:return f.keyStop(e,t),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger("contextmenu:hide"));default:var c=String.fromCharCode(e.keyCode).toUpperCase();if(t.accesskeys&&t.accesskeys[c])return void t.accesskeys[c].$node.trigger(t.accesskeys[c].$menu?"contextmenu:focus":"mouseup")}e.stopPropagation(),void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger(e)}},prevItem:function(t){t.stopPropagation();var n=e(this).data("contextMenu")||{},a=e(this).data("contextMenuRoot")||{};if(n.$selected){var o=n.$selected;(n=n.$selected.parent().data("contextMenu")||{}).$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.prev().length?n.$selected.prev():s.last(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(":hidden");)if((i=i.prev().length?i.prev():s.last()).is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find("input, textarea, select");l.length&&l.focus()},nextItem:function(t){t.stopPropagation();var n=e(this).data("contextMenu")||{},a=e(this).data("contextMenuRoot")||{};if(n.$selected){var o=n.$selected;(n=n.$selected.parent().data("contextMenu")||{}).$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.next().length?n.$selected.next():s.first(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(":hidden");)if((i=i.next().length?i.next():s.first()).is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find("input, textarea, select");l.length&&l.focus()},focusInput:function(){var t=e(this).closest(".context-menu-item"),n=t.data(),a=n.contextMenu,o=n.contextMenuRoot;o.$selected=a.$selected=t,o.isInput=a.isInput=!0},blurInput:function(){var t=e(this).closest(".context-menu-item").data(),n=t.contextMenu;t.contextMenuRoot.isInput=n.isInput=!1},menuMouseenter:function(){e(this).data().contextMenuRoot.hovering=!0},menuMouseleave:function(t){var n=e(this).data().contextMenuRoot;n.$layer&&n.$layer.is(t.relatedTarget)&&(n.hovering=!1)},itemMouseenter:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;s.hovering=!0,t&&s.$layer&&s.$layer.is(t.relatedTarget)&&(t.preventDefault(),t.stopImmediatePropagation()),(o.$menu?o:s).$menu.children("."+s.classNames.hover).trigger("contextmenu:blur").children(".hover").trigger("contextmenu:blur"),n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable)?o.$selected=null:n.trigger("contextmenu:focus")},itemMouseleave:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;if(s!==o&&s.$layer&&s.$layer.is(t.relatedTarget))return void 0!==s.$selected&&null!==s.$selected&&s.$selected.trigger("contextmenu:blur"),t.preventDefault(),t.stopImmediatePropagation(),void(s.$selected=o.$selected=o.$node);o&&o.$menu&&o.$menu.hasClass("context-menu-visible")||n.trigger("contextmenu:blur")},itemClick:function(t){var n,a=e(this),o=a.data(),s=o.contextMenu,i=o.contextMenuRoot,c=o.contextMenuKey;if(!(!s.items[c]||a.is("."+i.classNames.disabled+", .context-menu-separator, ."+i.classNames.notSelectable)||a.is(".context-menu-submenu")&&!1===i.selectableSubMenu)){if(t.preventDefault(),t.stopImmediatePropagation(),e.isFunction(s.callbacks[c])&&Object.prototype.hasOwnProperty.call(s.callbacks,c))n=s.callbacks[c];else{if(!e.isFunction(i.callback))return;n=i.callback}!1!==n.call(i.$trigger,c,i,t)?i.$menu.trigger("contextmenu:hide"):i.$menu.parent().length&&h.update.call(i.$trigger,i)}},inputClick:function(e){e.stopImmediatePropagation()},hideMenu:function(t,n){var a=e(this).data("contextMenuRoot");h.hide.call(a.$trigger,a,n&&n.force)},focusItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable)||(n.addClass([s.classNames.hover,s.classNames.visible].join(" ")).parent().find(".context-menu-item").not(n).removeClass(s.classNames.visible).filter("."+s.classNames.hover).trigger("contextmenu:blur"),o.$selected=s.$selected=n,o&&o.$node&&o.$node.hasClass("context-menu-submenu")&&o.$node.addClass(s.classNames.hover),o.$node&&s.positionSubmenu.call(o.$node,o.$menu))},blurItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;o.autoHide&&n.removeClass(s.classNames.visible),n.removeClass(s.classNames.hover),o.$selected=null}},h={show:function(t,n,a){var s=e(this),i={};if(e("#context-menu-layer").trigger("mousedown"),t.$trigger=s,!1!==t.events.show.call(s,t)){if(h.update.call(s,t),t.position.call(s,t,n,a),t.zIndex){var c=t.zIndex;"function"==typeof t.zIndex&&(c=t.zIndex.call(s,t)),i.zIndex=p(s)+c}h.layer.call(t.$menu,t,i.zIndex),t.$menu.find("ul").css("zIndex",i.zIndex+1),t.$menu.css(i)[t.animation.show](t.animation.duration,function(){s.trigger("contextmenu:visible")}),s.data("contextMenu",t).addClass("context-menu-active"),e(document).off("keydown.contextMenu").on("keydown.contextMenu",f.key),t.autoHide&&e(document).on("mousemove.contextMenuAutoHide",function(e){var n=s.offset();n.right=n.left+s.outerWidth(),n.bottom=n.top+s.outerHeight(),!t.$layer||t.hovering||e.pageX>=n.left&&e.pageX<=n.right&&e.pageY>=n.top&&e.pageY<=n.bottom||setTimeout(function(){t.hovering||null===t.$menu||void 0===t.$menu||t.$menu.trigger("contextmenu:hide")},50)})}else o=null},hide:function(t,n){var a=e(this);if(t||(t=a.data("contextMenu")||{}),n||!t.events||!1!==t.events.hide.call(a,t)){if(a.removeData("contextMenu").removeClass("context-menu-active"),t.$layer){setTimeout(function(e){return function(){e.remove()}}(t.$layer),10);try{delete t.$layer}catch(e){t.$layer=null}}o=null,t.$menu.find("."+t.classNames.hover).trigger("contextmenu:blur"),t.$selected=null,t.$menu.find("."+t.classNames.visible).removeClass(t.classNames.visible),e(document).off(".contextMenuAutoHide").off("keydown.contextMenu"),t.$menu&&t.$menu[t.animation.hide](t.animation.duration,function(){t.build&&(t.$menu.remove(),e.each(t,function(e){switch(e){case"ns":case"selector":case"build":case"trigger":return!0;default:t[e]=void 0;try{delete t[e]}catch(e){}return!0}})),setTimeout(function(){a.trigger("contextmenu:hidden")},10)})}},create:function(n,a){function o(t){var n=e("");if(t._accesskey)t._beforeAccesskey&&n.append(document.createTextNode(t._beforeAccesskey)),e("").addClass("context-menu-accesskey").text(t._accesskey).appendTo(n),t._afterAccesskey&&n.append(document.createTextNode(t._afterAccesskey));else if(t.isHtmlName){if(void 0!==t.accesskey)throw new Error("accesskeys are not compatible with HTML names and cannot be used together in the same item");n.html(t.name)}else n.text(t.name);return n}void 0===a&&(a=n),n.$menu=e(' ').addClass(n.className||"").data({contextMenu:n,contextMenuRoot:a}),e.each(["callbacks","commands","inputs"],function(e,t){n[t]={},a[t]||(a[t]={})}),a.accesskeys||(a.accesskeys={}),e.each(n.items,function(s,i){var c=e('').addClass(i.className||""),l=null,r=null;if(c.on("click",e.noop),"string"!=typeof i&&"cm_separator"!==i.type||(i={type:"cm_seperator"}),i.$node=c.data({contextMenu:n,contextMenuRoot:a,contextMenuKey:s}),void 0!==i.accesskey)for(var d,m=t(i.accesskey),p=0;d=m[p];p++)if(!a.accesskeys[d]){a.accesskeys[d]=i;var x=i.name.match(new RegExp("^(.*?)("+d+")(.*)$","i"));x&&(i._beforeAccesskey=x[1],i._accesskey=x[2],i._afterAccesskey=x[3]);break}if(i.type&&u[i.type])u[i.type].call(c,i,n,a),e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)});else{switch("cm_seperator"===i.type?c.addClass("context-menu-separator "+a.classNames.notSelectable):"html"===i.type?c.addClass("context-menu-html "+a.classNames.notSelectable):"sub"===i.type||(i.type?(l=e("").appendTo(c),o(i).appendTo(l),c.addClass("context-menu-input"),n.hasTypes=!0,e.each([n,a],function(e,t){t.commands[s]=i,t.inputs[s]=i})):i.items&&(i.type="sub")),i.type){case"cm_seperator":break;case"text":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").appendTo(l);break;case"textarea":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").appendTo(l),i.height&&r.height(i.height);break;case"checkbox":r=e('').attr("name","context-menu-input-"+s).val(i.value||"").prop("checked",!!i.selected).prependTo(l);break;case"radio":r=e('').attr("name","context-menu-input-"+i.radio).val(i.value||"").prop("checked",!!i.selected).prependTo(l);break;case"select":r=e('').attr("name","context-menu-input-"+s).appendTo(l),i.options&&(e.each(i.options,function(t,n){e("").val(t).text(n).appendTo(r)}),r.val(i.selected));break;case"sub":o(i).appendTo(c),i.appendTo=i.$node,c.data("contextMenu",i).addClass("context-menu-submenu"),i.callback=null,"function"==typeof i.items.then?h.processPromises(i,a,i.items):h.create(i,a);break;case"html":e(i.html).appendTo(c);break;default:e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)}),o(i).appendTo(c)}i.type&&"sub"!==i.type&&"html"!==i.type&&"cm_seperator"!==i.type&&(r.on("focus",f.focusInput).on("blur",f.blurInput),i.events&&r.on(i.events,n)),i.icon&&(e.isFunction(i.icon)?i._icon=i.icon.call(this,this,c,s,i):"string"==typeof i.icon&&"fa-"===i.icon.substring(0,3)?i._icon=a.classNames.icon+" "+a.classNames.icon+"--fa fa "+i.icon:i._icon=a.classNames.icon+" "+a.classNames.icon+"-"+i.icon,c.addClass(i._icon))}i.$input=r,i.$label=l,c.appendTo(n.$menu),!n.hasTypes&&e.support.eventSelectstart&&c.on("selectstart.disableTextSelect",f.abortevent)}),n.$node||n.$menu.css("display","none").addClass("context-menu-root"),n.$menu.appendTo(n.appendTo||document.body)},resize:function(t,n){var a;t.css({position:"absolute",display:"block"}),t.data("width",(a=t.get(0)).getBoundingClientRect?Math.ceil(a.getBoundingClientRect().width):t.outerWidth()+1),t.css({position:"static",minWidth:"0px",maxWidth:"100000px"}),t.find("> li > ul").each(function(){h.resize(e(this),!0)}),n||t.find("ul").addBack().css({position:"",display:"",minWidth:"",maxWidth:""}).outerWidth(function(){return e(this).data("width")})},update:function(t,n){var a=this;void 0===n&&(n=t,h.resize(t.$menu)),t.$menu.children().each(function(){var o,s=e(this),i=s.data("contextMenuKey"),c=t.items[i],l=e.isFunction(c.disabled)&&c.disabled.call(a,i,n)||!0===c.disabled;if(o=e.isFunction(c.visible)?c.visible.call(a,i,n):void 0===c.visible||!0===c.visible,s[o?"show":"hide"](),s[l?"addClass":"removeClass"](n.classNames.disabled),e.isFunction(c.icon)&&(s.removeClass(c._icon),c._icon=c.icon.call(this,a,s,i,c),s.addClass(c._icon)),c.type)switch(s.find("input, select, textarea").prop("disabled",l),c.type){case"text":case"textarea":c.$input.val(c.value||"");break;case"checkbox":case"radio":c.$input.val(c.value||"").prop("checked",!!c.selected);break;case"select":c.$input.val((0===c.selected?"0":c.selected)||"")}c.$menu&&h.update.call(a,c,n)})},layer:function(t,n){var a=t.$layer=e('').css({height:i.height(),width:i.width(),display:"block",position:"fixed","z-index":n,top:0,left:0,opacity:0,filter:"alpha(opacity=0)","background-color":"#000"}).data("contextMenuRoot",t).insertBefore(this).on("contextmenu",f.abortevent).on("mousedown",f.layerClick);return void 0===document.body.style.maxWidth&&a.css({position:"absolute",height:e(document).height()}),a},processPromises:function(e,t,n){function a(e,t,n){void 0===n?(n={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 n&&(n={error:{name:n}}),o(e,t,n)}function o(e,t,n){void 0!==t.$menu&&t.$menu.is(":visible")&&(e.$node.removeClass(t.classNames.iconLoadingClass),e.items=n,h.create(e,t,!0),h.update(e,t),t.positionSubmenu.call(e.$node,e.$menu))}e.$node.addClass(t.classNames.iconLoadingClass),n.then(function(e,t,n){void 0===n&&a(void 0),o(e,t,n)}.bind(this,e,t),a.bind(this,e,t))}};e.fn.contextMenu=function(t){var n=this,a=t;if(this.length>0)if(void 0===t)this.first().trigger("contextmenu");else if(void 0!==t.x&&void 0!==t.y)this.first().trigger(e.Event("contextmenu",{pageX:t.x,pageY:t.y,mouseButton:t.button}));else if("hide"===t){var o=this.first().data("contextMenu")?this.first().data("contextMenu").$menu:null;o&&o.trigger("contextmenu:hide")}else"destroy"===t?e.contextMenu("destroy",{context:this}):e.isPlainObject(t)?(t.context=this,e.contextMenu("create",t)):t?this.removeClass("context-menu-disabled"):t||this.addClass("context-menu-disabled");else e.each(r,function(){this.selector===n.selector&&(a.data=this,e.extend(a.data,{trigger:"demand"}))}),f.contextmenu.call(a.target,a);return this},e.contextMenu=function(t,n){"string"!=typeof t&&(n=t,t="create"),"string"==typeof n?n={selector:n}:void 0===n&&(n={});var a=e.extend(!0,{},d,n||{}),o=e(document),i=o,u=!1;switch(a.context&&a.context.length?(i=e(a.context).first(),a.context=i.get(0),u=!e(a.context).is(document)):a.context=document,t){case"create":if(!a.selector)throw new Error("No selector specified");if(a.selector.match(/.context-menu-(list|item|input)($|\s)/))throw new Error('Cannot bind to selector "'+a.selector+'" as it contains a reserved className');if(!a.build&&(!a.items||e.isEmptyObject(a.items)))throw new Error("No Items specified");if(c++,a.ns=".contextMenu"+c,u||(l[a.selector]=a.ns),r[a.ns]=a,a.trigger||(a.trigger="right"),!s){var m="click"===a.itemClickEvent?"click.contextMenu":"mouseup.contextMenu",p={"contextmenu:focus.contextMenu":f.focusItem,"contextmenu:blur.contextMenu":f.blurItem,"contextmenu.contextMenu":f.abortevent,"mouseenter.contextMenu":f.itemMouseenter,"mouseleave.contextMenu":f.itemMouseleave};p[m]=f.itemClick,o.on({"contextmenu:hide.contextMenu":f.hideMenu,"prevcommand.contextMenu":f.prevItem,"nextcommand.contextMenu":f.nextItem,"contextmenu.contextMenu":f.abortevent,"mouseenter.contextMenu":f.menuMouseenter,"mouseleave.contextMenu":f.menuMouseleave},".context-menu-list").on("mouseup.contextMenu",".context-menu-input",f.inputClick).on(p,".context-menu-item"),s=!0}switch(i.on("contextmenu"+a.ns,a.selector,a,f.contextmenu),u&&i.on("remove"+a.ns,function(){e(this).contextMenu("destroy")}),a.trigger){case"hover":i.on("mouseenter"+a.ns,a.selector,a,f.mouseenter).on("mouseleave"+a.ns,a.selector,a,f.mouseleave);break;case"left":i.on("click"+a.ns,a.selector,a,f.click);break;case"touchstart":i.on("touchstart"+a.ns,a.selector,a,f.click)}a.build||h.create(a);break;case"destroy":var x;if(u){var v=a.context;e.each(r,function(t,n){if(!n)return!0;if(!e(v).is(n.selector))return!0;(x=e(".context-menu-list").filter(":visible")).length&&x.data().contextMenuRoot.$trigger.is(e(n.context).find(n.selector))&&x.trigger("contextmenu:hide",{force:!0});try{r[n.ns].$menu&&r[n.ns].$menu.remove(),delete r[n.ns]}catch(e){r[n.ns]=null}return e(n.context).off(n.ns),!0})}else if(a.selector){if(l[a.selector]){(x=e(".context-menu-list").filter(":visible")).length&&x.data().contextMenuRoot.$trigger.is(a.selector)&&x.trigger("contextmenu:hide",{force:!0});try{r[l[a.selector]].$menu&&r[l[a.selector]].$menu.remove(),delete r[l[a.selector]]}catch(e){r[l[a.selector]]=null}o.off(l[a.selector])}}else o.off(".contextMenu .contextMenuAutoHide"),e.each(r,function(t,n){e(n.context).off(n.ns)}),l={},r={},c=0,s=!1,e("#context-menu-layer, .context-menu-list").remove();break;case"html5":(!e.support.htmlCommand&&!e.support.htmlMenuitem||"boolean"==typeof n&&n)&&e('menu[type="context"]').each(function(){this.id&&e.contextMenu({selector:"[contextmenu="+this.id+"]",items:e.contextMenu.fromMenu(this)})}).css("display","none");break;default:throw new Error('Unknown operation "'+t+'"')}return this},e.contextMenu.setInputValues=function(t,n){void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case"text":case"textarea":t.value=n[e]||"";break;case"checkbox":t.selected=!!n[e];break;case"radio":t.selected=(n[t.radio]||"")===t.value;break;case"select":t.selected=n[e]||""}})},e.contextMenu.getInputValues=function(t,n){return void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case"text":case"textarea":case"select":n[e]=t.$input.val();break;case"checkbox":n[e]=t.$input.prop("checked");break;case"radio":t.$input.prop("checked")&&(n[t.radio]=t.value)}}),n},e.contextMenu.fromMenu=function(t){var n={};return a(n,e(t).children()),n},e.contextMenu.defaults=d,e.contextMenu.types=u,e.contextMenu.handle=f,e.contextMenu.op=h,e.contextMenu.menus=r}); //# sourceMappingURL=jquery.contextMenu.min.js.map diff --git a/dist/jquery.contextMenu.min.js.map b/dist/jquery.contextMenu.min.js.map index aeac5979..ccb86109 100644 --- a/dist/jquery.contextMenu.min.js.map +++ b/dist/jquery.contextMenu.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["jquery.contextMenu.min.js"],"names":["factory","define","amd","exports","require","jQuery","$","splitAccesskey","val","k","t","split","keys","i","charAt","toUpperCase","push","inputLabel","node","id","name","menuChildren","items","$children","counter","each","label","item","$node","this","nodeName","toLowerCase","find","length","text","children","first","get","attr","disabled","callback","click","undefined","icon","type","selected","radio","value","options","html","clone","support","htmlMenuitem","window","htmlCommand","eventSelectstart","document","documentElement","ui","widget","cleanData","orig","elems","events","elem","_data","remove","triggerHandler","e","$currentTrigger","initialized","$win","namespaces","menus","types","defaults","selector","appendTo","trigger","autoHide","delay","reposition","selectableSubMenu","classNames","hover","visible","notSelectable","iconEdit","iconCut","iconCopy","iconPaste","iconDelete","iconAdd","iconQuit","iconLoadingClass","determinePosition","$menu","position","css","my","at","of","offset","collision","top","outerHeight","left","outerWidth","opt","x","y","call","offsetParentOffset","offsetParent","bottom","scrollTop","height","right","scrollLeft","width","positionSubmenu","zIndex","animation","duration","show","hide","noop","hoveract","timer","pageX","pageY","zindex","$t","zin","$tt","Math","max","parseInt","parent","indexOf","prop","handle","abortevent","preventDefault","stopImmediatePropagation","contextmenu","$this","data","originalEvent","mouseButton","hasClass","build","built","extend","isEmptyObject","console","error","log","Error","$trigger","op","create","showMenu","hasOwnProperty","isFunction","currentTarget","Event","mousedown","is","button","mouseup","removeData","mouseenter","$related","relatedTarget","$document","closest","on","mousemove","setTimeout","off","mouseleave","clearTimeout","layerClick","target","root","$window","triggerAction","elementFromPoint","$layer","isContentEditable","range","createRange","sel","getSelection","selectNode","collapse","removeAllRanges","addRange","one","contextMenu","keyStop","isInput","stopPropagation","key","targetZIndex","getZIndexOfTriggerTarget","style","parentElement","keyCode","shiftKey","$selected","blur","$parent","itemdata","String","fromCharCode","accesskeys","prevItem","$s","$prev","prev","last","$round","itemMouseleave","itemMouseenter","$input","focus","nextItem","$next","next","focusInput","contextMenuRoot","blurInput","menuMouseenter","hovering","menuMouseleave","itemClick","contextMenuKey","callbacks","Object","prototype","update","inputClick","hideMenu","force","focusItem","addClass","join","not","removeClass","filter","blurItem","additionalZValue","layer","pos","createNameNode","$name","_accesskey","_beforeAccesskey","append","createTextNode","_afterAccesskey","isHtmlName","accesskey","className","$label","ak","aks","matched","match","RegExp","commands","hasTypes","inputs","prependTo","then","processPromises","_icon","substring","body","resize","nested","domMenu","display","getBoundingClientRect","ceil","minWidth","maxWidth","addBack","$item","z-index","opacity","background-color","insertBefore","promise","completedPromise","errorPromise","finishPromiseProcess","errorItem","bind","fn","operation","$o","context","isPlainObject","o","$context","_hasContext","ns","itemClickEvent","contextMenuItemObj","contextmenu:focus.contextMenu","contextmenu:blur.contextMenu","contextmenu.contextMenu","mouseenter.contextMenu","mouseleave.contextMenu","contextmenu:hide.contextMenu","prevcommand.contextMenu","nextcommand.contextMenu","$visibleMenu","fromMenu","setInputValues","getInputValues","element"],"mappings":"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","file":"jquery.contextMenu.min.js","sourcesContent":["!function(e){\"function\"==typeof define&&define.amd?define([\"jquery\"],e):e(\"object\"==typeof exports?require(\"jquery\"):jQuery)}(function(e){\"use strict\";function t(e){for(var t,n=e.split(/\\s+/),a=[],o=0;t=n[o];o++)t=t.charAt(0).toUpperCase(),a.push(t);return a}function n(t){return t.id&&e('label[for=\"'+t.id+'\"]').val()||t.name}function a(t,o,s){return s||(s=0),o.each(function(){var o,i,c=e(this),l=this,r=this.nodeName.toLowerCase();switch(\"label\"===r&&c.find(\"input, textarea, select\").length&&(o=c.text(),c=c.children().first(),l=c.get(0),r=l.nodeName.toLowerCase()),r){case\"menu\":i={name:c.attr(\"label\"),items:{}},s=a(i.items,c.children(),s);break;case\"a\":case\"button\":i={name:c.text(),disabled:!!c.attr(\"disabled\"),callback:function(){return function(){c.get(0).click()}}()};break;case\"menuitem\":case\"command\":switch(c.attr(\"type\")){case void 0:case\"command\":case\"menuitem\":i={name:c.attr(\"label\"),disabled:!!c.attr(\"disabled\"),icon:c.attr(\"icon\"),callback:function(){return function(){c.get(0).click()}}()};break;case\"checkbox\":i={type:\"checkbox\",disabled:!!c.attr(\"disabled\"),name:c.attr(\"label\"),selected:!!c.attr(\"checked\")};break;case\"radio\":i={type:\"radio\",disabled:!!c.attr(\"disabled\"),name:c.attr(\"label\"),radio:c.attr(\"radiogroup\"),value:c.attr(\"id\"),selected:!!c.attr(\"checked\")};break;default:i=void 0}break;case\"hr\":i=\"-------\";break;case\"input\":switch(c.attr(\"type\")){case\"text\":i={type:\"text\",name:o||n(l),disabled:!!c.attr(\"disabled\"),value:c.val()};break;case\"checkbox\":i={type:\"checkbox\",name:o||n(l),disabled:!!c.attr(\"disabled\"),selected:!!c.attr(\"checked\")};break;case\"radio\":i={type:\"radio\",name:o||n(l),disabled:!!c.attr(\"disabled\"),radio:!!c.attr(\"name\"),value:c.val(),selected:!!c.attr(\"checked\")};break;default:i=void 0}break;case\"select\":i={type:\"select\",name:o||n(l),disabled:!!c.attr(\"disabled\"),selected:c.val(),options:{}},c.children().each(function(){i.options[this.value]=e(this).text()});break;case\"textarea\":i={type:\"textarea\",name:o||n(l),disabled:!!c.attr(\"disabled\"),value:c.val()};break;case\"label\":break;default:i={type:\"html\",html:c.clone(!0)}}i&&(s++,t[\"key\"+s]=i)}),s}e.support.htmlMenuitem=\"HTMLMenuItemElement\"in window,e.support.htmlCommand=\"HTMLCommandElement\"in window,e.support.eventSelectstart=\"onselectstart\"in document.documentElement,e.ui&&e.widget||(e.cleanData=function(t){return function(n){var a,o,s;for(s=0;null!=n[s];s++){o=n[s];try{a=e._data(o,\"events\"),a&&a.remove&&e(o).triggerHandler(\"remove\")}catch(e){}}t(n)}}(e.cleanData));var o=null,s=!1,i=e(window),c=0,l={},r={},u={},d={selector:null,appendTo:null,trigger:\"right\",autoHide:!1,delay:200,reposition:!0,selectableSubMenu:!1,classNames:{hover:\"context-menu-hover\",disabled:\"context-menu-disabled\",visible:\"context-menu-visible\",notSelectable:\"context-menu-not-selectable\",icon:\"context-menu-icon\",iconEdit:\"context-menu-icon-edit\",iconCut:\"context-menu-icon-cut\",iconCopy:\"context-menu-icon-copy\",iconPaste:\"context-menu-icon-paste\",iconDelete:\"context-menu-icon-delete\",iconAdd:\"context-menu-icon-add\",iconQuit:\"context-menu-icon-quit\",iconLoadingClass:\"context-menu-icon-loading\"},determinePosition:function(t){if(e.ui&&e.ui.position)t.css(\"display\",\"block\").position({my:\"center top\",at:\"center bottom\",of:this,offset:\"0 5\",collision:\"fit\"}).css(\"display\",\"none\");else{var n=this.offset();n.top+=this.outerHeight(),n.left+=this.outerWidth()/2-t.outerWidth()/2,t.css(n)}},position:function(e,t,n){var a;if(!t&&!n)return void e.determinePosition.call(this,e.$menu);if(\"maintain\"===t&&\"maintain\"===n)a=e.$menu.position();else{var o=e.$menu.offsetParent().offset();a={top:n-o.top,left:t-o.left}}var s=i.scrollTop()+i.height(),c=i.scrollLeft()+i.width(),l=e.$menu.outerHeight(),r=e.$menu.outerWidth();a.top+l>s&&(a.top-=l),a.top<0&&(a.top=0),a.left+r>c&&(a.left-=r),a.left<0&&(a.left=0),e.$menu.css(a)},positionSubmenu:function(t){if(void 0!==t)if(e.ui&&e.ui.position)t.css(\"display\",\"block\").position({my:\"left top-5\",at:\"right top\",of:this,collision:\"flipfit fit\"}).css(\"display\",\"\");else{var n={top:-9,left:this.outerWidth()-5};t.css(n)}},zIndex:1,animation:{duration:50,show:\"slideDown\",hide:\"slideUp\"},events:{show:e.noop,hide:e.noop},callback:null,items:{}},m={timer:null,pageX:null,pageY:null},p=function(e){for(var t=0,n=e;;)if(t=Math.max(t,parseInt(n.css(\"z-index\"),10)||0),!(n=n.parent())||!n.length||\"html body\".indexOf(n.prop(\"nodeName\").toLowerCase())>-1)break;return t},f={abortevent:function(e){e.preventDefault(),e.stopImmediatePropagation()},contextmenu:function(t){var n=e(this);if(\"right\"===t.data.trigger&&(t.preventDefault(),t.stopImmediatePropagation()),!(\"right\"!==t.data.trigger&&\"demand\"!==t.data.trigger&&t.originalEvent||!(void 0===t.mouseButton||!t.data||\"left\"===t.data.trigger&&0===t.mouseButton||\"right\"===t.data.trigger&&2===t.mouseButton)||n.hasClass(\"context-menu-active\")||n.hasClass(\"context-menu-disabled\"))){if(o=n,t.data.build){var a=t.data.build(o,t);if(!1===a)return;if(t.data=e.extend(!0,{},d,t.data,a||{}),!t.data.items||e.isEmptyObject(t.data.items))throw window.console&&(console.error||console.log).call(console,\"No items specified to show in contextMenu\"),new Error(\"No Items specified\");t.data.$trigger=o,h.create(t.data)}var s=!1;for(var i in t.data.items)if(t.data.items.hasOwnProperty(i)){var c;c=e.isFunction(t.data.items[i].visible)?t.data.items[i].visible.call(e(t.currentTarget),i,t.data):void 0===t.data.items[i]||!t.data.items[i].visible||!0===t.data.items[i].visible,c&&(s=!0)}s&&h.show.call(n,t.data,t.pageX,t.pageY)}},click:function(t){t.preventDefault(),t.stopImmediatePropagation(),e(this).trigger(e.Event(\"contextmenu\",{data:t.data,pageX:t.pageX,pageY:t.pageY}))},mousedown:function(t){var n=e(this);o&&o.length&&!o.is(n)&&o.data(\"contextMenu\").$menu.trigger(\"contextmenu:hide\"),2===t.button&&(o=n.data(\"contextMenuActive\",!0))},mouseup:function(t){var n=e(this);n.data(\"contextMenuActive\")&&o&&o.length&&o.is(n)&&!n.hasClass(\"context-menu-disabled\")&&(t.preventDefault(),t.stopImmediatePropagation(),o=n,n.trigger(e.Event(\"contextmenu\",{data:t.data,pageX:t.pageX,pageY:t.pageY}))),n.removeData(\"contextMenuActive\")},mouseenter:function(t){var n=e(this),a=e(t.relatedTarget),s=e(document);a.is(\".context-menu-list\")||a.closest(\".context-menu-list\").length||o&&o.length||(m.pageX=t.pageX,m.pageY=t.pageY,m.data=t.data,s.on(\"mousemove.contextMenuShow\",f.mousemove),m.timer=setTimeout(function(){m.timer=null,s.off(\"mousemove.contextMenuShow\"),o=n,n.trigger(e.Event(\"contextmenu\",{data:m.data,pageX:m.pageX,pageY:m.pageY}))},t.data.delay))},mousemove:function(e){m.pageX=e.pageX,m.pageY=e.pageY},mouseleave:function(t){var n=e(t.relatedTarget);if(!n.is(\".context-menu-list\")&&!n.closest(\".context-menu-list\").length){try{clearTimeout(m.timer)}catch(t){}m.timer=null}},layerClick:function(t){var n,a,o=e(this),s=o.data(\"contextMenuRoot\"),c=t.button,l=t.pageX,r=t.pageY;t.preventDefault(),setTimeout(function(){var o,u=\"left\"===s.trigger&&0===c||\"right\"===s.trigger&&2===c;if(document.elementFromPoint&&s.$layer){if(s.$layer.hide(),n=document.elementFromPoint(l-i.scrollLeft(),r-i.scrollTop()),n.isContentEditable){var d=document.createRange(),m=window.getSelection();d.selectNode(n),d.collapse(!0),m.removeAllRanges(),m.addRange(d)}e(n).trigger(t),s.$layer.show()}if(s.reposition&&u)if(document.elementFromPoint){if(s.$trigger.is(n))return void s.position.call(s.$trigger,s,l,r)}else if(a=s.$trigger.offset(),o=e(window),a.top+=o.scrollTop(),a.top<=t.pageY&&(a.left+=o.scrollLeft(),a.left<=t.pageX&&(a.bottom=a.top+s.$trigger.outerHeight(),a.bottom>=t.pageY&&(a.right=a.left+s.$trigger.outerWidth(),a.right>=t.pageX))))return void s.position.call(s.$trigger,s,l,r);n&&u&&s.$trigger.one(\"contextmenu:hidden\",function(){e(n).contextMenu({x:l,y:r,button:c})}),null!==s&&void 0!==s&&null!==s.$menu&&void 0!==s.$menu&&s.$menu.trigger(\"contextmenu:hide\")},50)},keyStop:function(e,t){t.isInput||e.preventDefault(),e.stopPropagation()},key:function(e){var t={};o&&(t=o.data(\"contextMenu\")||{}),void 0===t.zIndex&&(t.zIndex=0);var n=0,a=function(e){\"\"!==e.style.zIndex?n=e.style.zIndex:null!==e.offsetParent&&void 0!==e.offsetParent?a(e.offsetParent):null!==e.parentElement&&void 0!==e.parentElement&&a(e.parentElement)};if(a(e.target),!(t.$menu&&parseInt(n,10)>parseInt(t.$menu.css(\"zIndex\"),10))){switch(e.keyCode){case 9:case 38:if(f.keyStop(e,t),t.isInput){if(9===e.keyCode&&e.shiftKey)return e.preventDefault(),t.$selected&&t.$selected.find(\"input, textarea, select\").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger(\"prevcommand\"));if(38===e.keyCode&&\"checkbox\"===t.$selected.find(\"input, textarea, select\").prop(\"type\"))return void e.preventDefault()}else if(9!==e.keyCode||e.shiftKey)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger(\"prevcommand\"));break;case 40:if(f.keyStop(e,t),!t.isInput)return void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger(\"nextcommand\"));if(9===e.keyCode)return e.preventDefault(),t.$selected&&t.$selected.find(\"input, textarea, select\").blur(),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger(\"nextcommand\"));if(40===e.keyCode&&\"checkbox\"===t.$selected.find(\"input, textarea, select\").prop(\"type\"))return void e.preventDefault();break;case 37:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;if(!t.$selected.parent().hasClass(\"context-menu-root\")){var s=t.$selected.parent().parent();return t.$selected.trigger(\"contextmenu:blur\"),void(t.$selected=s)}break;case 39:if(f.keyStop(e,t),t.isInput||!t.$selected||!t.$selected.length)break;var i=t.$selected.data(\"contextMenu\")||{};if(i.$menu&&t.$selected.hasClass(\"context-menu-submenu\"))return t.$selected=null,i.$selected=null,void i.$menu.trigger(\"nextcommand\");break;case 35:case 36:return t.$selected&&t.$selected.find(\"input, textarea, select\").length?void 0:((t.$selected&&t.$selected.parent()||t.$menu).children(\":not(.\"+t.classNames.disabled+\", .\"+t.classNames.notSelectable+\")\")[36===e.keyCode?\"first\":\"last\"]().trigger(\"contextmenu:focus\"),void e.preventDefault());case 13:if(f.keyStop(e,t),t.isInput){if(t.$selected&&!t.$selected.is(\"textarea, select\"))return void e.preventDefault();break}return void(void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger(\"mouseup\"));case 32:case 33:case 34:return void f.keyStop(e,t);case 27:return f.keyStop(e,t),void(null!==t.$menu&&void 0!==t.$menu&&t.$menu.trigger(\"contextmenu:hide\"));default:var c=String.fromCharCode(e.keyCode).toUpperCase();if(t.accesskeys&&t.accesskeys[c])return void t.accesskeys[c].$node.trigger(t.accesskeys[c].$menu?\"contextmenu:focus\":\"mouseup\")}e.stopPropagation(),void 0!==t.$selected&&null!==t.$selected&&t.$selected.trigger(e)}},prevItem:function(t){t.stopPropagation();var n=e(this).data(\"contextMenu\")||{},a=e(this).data(\"contextMenuRoot\")||{};if(n.$selected){var o=n.$selected;n=n.$selected.parent().data(\"contextMenu\")||{},n.$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.prev().length?n.$selected.prev():s.last(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(\":hidden\");)if(i=i.prev().length?i.prev():s.last(),i.is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find(\"input, textarea, select\");l.length&&l.focus()},nextItem:function(t){t.stopPropagation();var n=e(this).data(\"contextMenu\")||{},a=e(this).data(\"contextMenuRoot\")||{};if(n.$selected){var o=n.$selected;n=n.$selected.parent().data(\"contextMenu\")||{},n.$selected=o}for(var s=n.$menu.children(),i=n.$selected&&n.$selected.next().length?n.$selected.next():s.first(),c=i;i.hasClass(a.classNames.disabled)||i.hasClass(a.classNames.notSelectable)||i.is(\":hidden\");)if(i=i.next().length?i.next():s.first(),i.is(c))return;n.$selected&&f.itemMouseleave.call(n.$selected.get(0),t),f.itemMouseenter.call(i.get(0),t);var l=i.find(\"input, textarea, select\");l.length&&l.focus()},focusInput:function(){var t=e(this).closest(\".context-menu-item\"),n=t.data(),a=n.contextMenu,o=n.contextMenuRoot;o.$selected=a.$selected=t,o.isInput=a.isInput=!0},blurInput:function(){var t=e(this).closest(\".context-menu-item\"),n=t.data(),a=n.contextMenu;n.contextMenuRoot.isInput=a.isInput=!1},menuMouseenter:function(){e(this).data().contextMenuRoot.hovering=!0},menuMouseleave:function(t){var n=e(this).data().contextMenuRoot;n.$layer&&n.$layer.is(t.relatedTarget)&&(n.hovering=!1)},itemMouseenter:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;if(s.hovering=!0,t&&s.$layer&&s.$layer.is(t.relatedTarget)&&(t.preventDefault(),t.stopImmediatePropagation()),(o.$menu?o:s).$menu.children(\".\"+s.classNames.hover).trigger(\"contextmenu:blur\").children(\".hover\").trigger(\"contextmenu:blur\"),n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable))return void(o.$selected=null);n.trigger(\"contextmenu:focus\")},itemMouseleave:function(t){var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;if(s!==o&&s.$layer&&s.$layer.is(t.relatedTarget))return void 0!==s.$selected&&null!==s.$selected&&s.$selected.trigger(\"contextmenu:blur\"),t.preventDefault(),t.stopImmediatePropagation(),void(s.$selected=o.$selected=o.$node);o&&o.$menu&&o.$menu.hasClass(\"context-menu-visible\")||n.trigger(\"contextmenu:blur\")},itemClick:function(t){var n,a=e(this),o=a.data(),s=o.contextMenu,i=o.contextMenuRoot,c=o.contextMenuKey;if(!(!s.items[c]||a.is(\".\"+i.classNames.disabled+\", .context-menu-separator, .\"+i.classNames.notSelectable)||a.is(\".context-menu-submenu\")&&!1===i.selectableSubMenu)){if(t.preventDefault(),t.stopImmediatePropagation(),e.isFunction(s.callbacks[c])&&Object.prototype.hasOwnProperty.call(s.callbacks,c))n=s.callbacks[c];else{if(!e.isFunction(i.callback))return;n=i.callback}!1!==n.call(i.$trigger,c,i,t)?i.$menu.trigger(\"contextmenu:hide\"):i.$menu.parent().length&&h.update.call(i.$trigger,i)}},inputClick:function(e){e.stopImmediatePropagation()},hideMenu:function(t,n){var a=e(this).data(\"contextMenuRoot\");h.hide.call(a.$trigger,a,n&&n.force)},focusItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;n.hasClass(s.classNames.disabled)||n.hasClass(s.classNames.notSelectable)||(n.addClass([s.classNames.hover,s.classNames.visible].join(\" \")).parent().find(\".context-menu-item\").not(n).removeClass(s.classNames.visible).filter(\".\"+s.classNames.hover).trigger(\"contextmenu:blur\"),o.$selected=s.$selected=n,o&&o.$node&&o.$node.hasClass(\"context-menu-submenu\")&&o.$node.addClass(s.classNames.hover),o.$node&&s.positionSubmenu.call(o.$node,o.$menu))},blurItem:function(t){t.stopPropagation();var n=e(this),a=n.data(),o=a.contextMenu,s=a.contextMenuRoot;o.autoHide&&n.removeClass(s.classNames.visible),n.removeClass(s.classNames.hover),o.$selected=null}},h={show:function(t,n,a){var s=e(this),i={};if(e(\"#context-menu-layer\").trigger(\"mousedown\"),t.$trigger=s,!1===t.events.show.call(s,t))return void(o=null);if(h.update.call(s,t),t.position.call(s,t,n,a),t.zIndex){var c=t.zIndex;\"function\"==typeof t.zIndex&&(c=t.zIndex.call(s,t)),i.zIndex=p(s)+c}h.layer.call(t.$menu,t,i.zIndex),t.$menu.find(\"ul\").css(\"zIndex\",i.zIndex+1),t.$menu.css(i)[t.animation.show](t.animation.duration,function(){s.trigger(\"contextmenu:visible\")}),s.data(\"contextMenu\",t).addClass(\"context-menu-active\"),e(document).off(\"keydown.contextMenu\").on(\"keydown.contextMenu\",f.key),t.autoHide&&e(document).on(\"mousemove.contextMenuAutoHide\",function(e){var n=s.offset();n.right=n.left+s.outerWidth(),n.bottom=n.top+s.outerHeight(),!t.$layer||t.hovering||e.pageX>=n.left&&e.pageX<=n.right&&e.pageY>=n.top&&e.pageY<=n.bottom||setTimeout(function(){t.hovering||null===t.$menu||void 0===t.$menu||t.$menu.trigger(\"contextmenu:hide\")},50)})},hide:function(t,n){var a=e(this);if(t||(t=a.data(\"contextMenu\")||{}),n||!t.events||!1!==t.events.hide.call(a,t)){if(a.removeData(\"contextMenu\").removeClass(\"context-menu-active\"),t.$layer){setTimeout(function(e){return function(){e.remove()}}(t.$layer),10);try{delete t.$layer}catch(e){t.$layer=null}}o=null,t.$menu.find(\".\"+t.classNames.hover).trigger(\"contextmenu:blur\"),t.$selected=null,t.$menu.find(\".\"+t.classNames.visible).removeClass(t.classNames.visible),e(document).off(\".contextMenuAutoHide\").off(\"keydown.contextMenu\"),t.$menu&&t.$menu[t.animation.hide](t.animation.duration,function(){t.build&&(t.$menu.remove(),e.each(t,function(e){switch(e){case\"ns\":case\"selector\":case\"build\":case\"trigger\":return!0;default:t[e]=void 0;try{delete t[e]}catch(e){}return!0}})),setTimeout(function(){a.trigger(\"contextmenu:hidden\")},10)})}},create:function(n,a){function o(t){var n=e(\"\");if(t._accesskey)t._beforeAccesskey&&n.append(document.createTextNode(t._beforeAccesskey)),e(\"\").addClass(\"context-menu-accesskey\").text(t._accesskey).appendTo(n),t._afterAccesskey&&n.append(document.createTextNode(t._afterAccesskey));else if(t.isHtmlName){if(void 0!==t.accesskey)throw new Error(\"accesskeys are not compatible with HTML names and cannot be used together in the same item\");n.html(t.name)}else n.text(t.name);return n}void 0===a&&(a=n),n.$menu=e(' ').addClass(n.className||\"\").data({contextMenu:n,contextMenuRoot:a}),e.each([\"callbacks\",\"commands\",\"inputs\"],function(e,t){n[t]={},a[t]||(a[t]={})}),a.accesskeys||(a.accesskeys={}),e.each(n.items,function(s,i){var c=e('').addClass(i.className||\"\"),l=null,r=null;if(c.on(\"click\",e.noop),\"string\"!=typeof i&&\"cm_separator\"!==i.type||(i={type:\"cm_seperator\"}),i.$node=c.data({contextMenu:n,contextMenuRoot:a,contextMenuKey:s}),void 0!==i.accesskey)for(var d,m=t(i.accesskey),p=0;d=m[p];p++)if(!a.accesskeys[d]){a.accesskeys[d]=i;var v=i.name.match(new RegExp(\"^(.*?)(\"+d+\")(.*)$\",\"i\"));v&&(i._beforeAccesskey=v[1],i._accesskey=v[2],i._afterAccesskey=v[3]);break}if(i.type&&u[i.type])u[i.type].call(c,i,n,a),e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)});else{switch(\"cm_seperator\"===i.type?c.addClass(\"context-menu-separator \"+a.classNames.notSelectable):\"html\"===i.type?c.addClass(\"context-menu-html \"+a.classNames.notSelectable):\"sub\"===i.type||(i.type?(l=e(\"\").appendTo(c),o(i).appendTo(l),c.addClass(\"context-menu-input\"),n.hasTypes=!0,e.each([n,a],function(e,t){t.commands[s]=i,t.inputs[s]=i})):i.items&&(i.type=\"sub\")),i.type){case\"cm_seperator\":break;case\"text\":r=e('').attr(\"name\",\"context-menu-input-\"+s).val(i.value||\"\").appendTo(l);break;case\"textarea\":r=e('').attr(\"name\",\"context-menu-input-\"+s).val(i.value||\"\").appendTo(l),i.height&&r.height(i.height);break;case\"checkbox\":r=e('').attr(\"name\",\"context-menu-input-\"+s).val(i.value||\"\").prop(\"checked\",!!i.selected).prependTo(l);break;case\"radio\":r=e('').attr(\"name\",\"context-menu-input-\"+i.radio).val(i.value||\"\").prop(\"checked\",!!i.selected).prependTo(l);break;case\"select\":r=e('').attr(\"name\",\"context-menu-input-\"+s).appendTo(l),i.options&&(e.each(i.options,function(t,n){e(\"\").val(t).text(n).appendTo(r)}),r.val(i.selected));break;case\"sub\":o(i).appendTo(c),i.appendTo=i.$node,c.data(\"contextMenu\",i).addClass(\"context-menu-submenu\"),i.callback=null,\"function\"==typeof i.items.then?h.processPromises(i,a,i.items):h.create(i,a);break;case\"html\":e(i.html).appendTo(c);break;default:e.each([n,a],function(t,a){a.commands[s]=i,!e.isFunction(i.callback)||void 0!==a.callbacks[s]&&void 0!==n.type||(a.callbacks[s]=i.callback)}),o(i).appendTo(c)}i.type&&\"sub\"!==i.type&&\"html\"!==i.type&&\"cm_seperator\"!==i.type&&(r.on(\"focus\",f.focusInput).on(\"blur\",f.blurInput),i.events&&r.on(i.events,n)),i.icon&&(e.isFunction(i.icon)?i._icon=i.icon.call(this,this,c,s,i):\"string\"==typeof i.icon&&\"fa-\"===i.icon.substring(0,3)?i._icon=a.classNames.icon+\" \"+a.classNames.icon+\"--fa fa \"+i.icon:i._icon=a.classNames.icon+\" \"+a.classNames.icon+\"-\"+i.icon,c.addClass(i._icon))}i.$input=r,i.$label=l,c.appendTo(n.$menu),!n.hasTypes&&e.support.eventSelectstart&&c.on(\"selectstart.disableTextSelect\",f.abortevent)}),n.$node||n.$menu.css(\"display\",\"none\").addClass(\"context-menu-root\"),n.$menu.appendTo(n.appendTo||document.body)},resize:function(t,n){var a;t.css({position:\"absolute\",display:\"block\"}),t.data(\"width\",(a=t.get(0)).getBoundingClientRect?Math.ceil(a.getBoundingClientRect().width):t.outerWidth()+1),t.css({position:\"static\",minWidth:\"0px\",maxWidth:\"100000px\"}),t.find(\"> li > ul\").each(function(){h.resize(e(this),!0)}),n||t.find(\"ul\").addBack().css({position:\"\",display:\"\",minWidth:\"\",maxWidth:\"\"}).outerWidth(function(){return e(this).data(\"width\")})},update:function(t,n){var a=this;void 0===n&&(n=t,h.resize(t.$menu)),t.$menu.children().each(function(){var o,s=e(this),i=s.data(\"contextMenuKey\"),c=t.items[i],l=e.isFunction(c.disabled)&&c.disabled.call(a,i,n)||!0===c.disabled;if(o=e.isFunction(c.visible)?c.visible.call(a,i,n):void 0===c.visible||!0===c.visible,s[o?\"show\":\"hide\"](),s[l?\"addClass\":\"removeClass\"](n.classNames.disabled),e.isFunction(c.icon)&&(s.removeClass(c._icon),c._icon=c.icon.call(this,a,s,i,c),s.addClass(c._icon)),c.type)switch(s.find(\"input, select, textarea\").prop(\"disabled\",l),c.type){case\"text\":case\"textarea\":c.$input.val(c.value||\"\");break;case\"checkbox\":case\"radio\":c.$input.val(c.value||\"\").prop(\"checked\",!!c.selected);break;case\"select\":c.$input.val((0===c.selected?\"0\":c.selected)||\"\")}c.$menu&&h.update.call(a,c,n)})},layer:function(t,n){var a=t.$layer=e('').css({height:i.height(),width:i.width(),display:\"block\",position:\"fixed\",\"z-index\":n,top:0,left:0,opacity:0,filter:\"alpha(opacity=0)\",\"background-color\":\"#000\"}).data(\"contextMenuRoot\",t).insertBefore(this).on(\"contextmenu\",f.abortevent).on(\"mousedown\",f.layerClick);return void 0===document.body.style.maxWidth&&a.css({position:\"absolute\",height:e(document).height()}),a},processPromises:function(e,t,n){function a(e,t,n){void 0===n&&o(void 0),s(e,t,n)}function o(e,t,n){void 0===n?(n={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 n&&(n={error:{name:n}}),s(e,t,n)}function s(e,t,n){void 0!==t.$menu&&t.$menu.is(\":visible\")&&(e.$node.removeClass(t.classNames.iconLoadingClass),e.items=n,h.create(e,t,!0),h.update(e,t),t.positionSubmenu.call(e.$node,e.$menu))}e.$node.addClass(t.classNames.iconLoadingClass),n.then(a.bind(this,e,t),o.bind(this,e,t))}};e.fn.contextMenu=function(t){var n=this,a=t;if(this.length>0)if(void 0===t)this.first().trigger(\"contextmenu\");else if(void 0!==t.x&&void 0!==t.y)this.first().trigger(e.Event(\"contextmenu\",{pageX:t.x,pageY:t.y,mouseButton:t.button}));else if(\"hide\"===t){var o=this.first().data(\"contextMenu\")?this.first().data(\"contextMenu\").$menu:null;o&&o.trigger(\"contextmenu:hide\")}else\"destroy\"===t?e.contextMenu(\"destroy\",{context:this}):e.isPlainObject(t)?(t.context=this,e.contextMenu(\"create\",t)):t?this.removeClass(\"context-menu-disabled\"):t||this.addClass(\"context-menu-disabled\");else e.each(r,function(){this.selector===n.selector&&(a.data=this,e.extend(a.data,{trigger:\"demand\"}))}),f.contextmenu.call(a.target,a);return this},e.contextMenu=function(t,n){\"string\"!=typeof t&&(n=t,t=\"create\"),\"string\"==typeof n?n={selector:n}:void 0===n&&(n={});var a=e.extend(!0,{},d,n||{}),o=e(document),i=o,u=!1;switch(a.context&&a.context.length?(i=e(a.context).first(),a.context=i.get(0),u=!e(a.context).is(document)):a.context=document,t){case\"create\":if(!a.selector)throw new Error(\"No selector specified\");if(a.selector.match(/.context-menu-(list|item|input)($|\\s)/))throw new Error('Cannot bind to selector \"'+a.selector+'\" as it contains a reserved className');if(!a.build&&(!a.items||e.isEmptyObject(a.items)))throw new Error(\"No Items specified\");if(c++,a.ns=\".contextMenu\"+c,u||(l[a.selector]=a.ns),r[a.ns]=a,a.trigger||(a.trigger=\"right\"),!s){var m=\"click\"===a.itemClickEvent?\"click.contextMenu\":\"mouseup.contextMenu\",p={\"contextmenu:focus.contextMenu\":f.focusItem,\"contextmenu:blur.contextMenu\":f.blurItem,\"contextmenu.contextMenu\":f.abortevent,\"mouseenter.contextMenu\":f.itemMouseenter,\"mouseleave.contextMenu\":f.itemMouseleave};p[m]=f.itemClick,o.on({\"contextmenu:hide.contextMenu\":f.hideMenu,\"prevcommand.contextMenu\":f.prevItem,\"nextcommand.contextMenu\":f.nextItem,\"contextmenu.contextMenu\":f.abortevent,\"mouseenter.contextMenu\":f.menuMouseenter,\"mouseleave.contextMenu\":f.menuMouseleave},\".context-menu-list\").on(\"mouseup.contextMenu\",\".context-menu-input\",f.inputClick).on(p,\".context-menu-item\"),s=!0}switch(i.on(\"contextmenu\"+a.ns,a.selector,a,f.contextmenu),u&&i.on(\"remove\"+a.ns,function(){e(this).contextMenu(\"destroy\")}),a.trigger){case\"hover\":i.on(\"mouseenter\"+a.ns,a.selector,a,f.mouseenter).on(\"mouseleave\"+a.ns,a.selector,a,f.mouseleave);break;case\"left\":i.on(\"click\"+a.ns,a.selector,a,f.click);break;case\"touchstart\":i.on(\"touchstart\"+a.ns,a.selector,a,f.click)}a.build||h.create(a);break;case\"destroy\":var v;if(u){var x=a.context;e.each(r,function(t,n){if(!n)return!0;if(!e(x).is(n.selector))return!0;v=e(\".context-menu-list\").filter(\":visible\"),v.length&&v.data().contextMenuRoot.$trigger.is(e(n.context).find(n.selector))&&v.trigger(\"contextmenu:hide\",{force:!0});try{r[n.ns].$menu&&r[n.ns].$menu.remove(),delete r[n.ns]}catch(e){r[n.ns]=null}return e(n.context).off(n.ns),!0})}else if(a.selector){if(l[a.selector]){v=e(\".context-menu-list\").filter(\":visible\"),v.length&&v.data().contextMenuRoot.$trigger.is(a.selector)&&v.trigger(\"contextmenu:hide\",{force:!0});try{r[l[a.selector]].$menu&&r[l[a.selector]].$menu.remove(),delete r[l[a.selector]]}catch(e){r[l[a.selector]]=null}o.off(l[a.selector])}}else o.off(\".contextMenu .contextMenuAutoHide\"),e.each(r,function(t,n){e(n.context).off(n.ns)}),l={},r={},c=0,s=!1,e(\"#context-menu-layer, .context-menu-list\").remove();break;case\"html5\":(!e.support.htmlCommand&&!e.support.htmlMenuitem||\"boolean\"==typeof n&&n)&&e('menu[type=\"context\"]').each(function(){this.id&&e.contextMenu({selector:\"[contextmenu=\"+this.id+\"]\",items:e.contextMenu.fromMenu(this)})}).css(\"display\",\"none\");break;default:throw new Error('Unknown operation \"'+t+'\"')}return this},e.contextMenu.setInputValues=function(t,n){void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case\"text\":case\"textarea\":t.value=n[e]||\"\";break;case\"checkbox\":t.selected=!!n[e];break;case\"radio\":t.selected=(n[t.radio]||\"\")===t.value;break;case\"select\":t.selected=n[e]||\"\"}})},e.contextMenu.getInputValues=function(t,n){return void 0===n&&(n={}),e.each(t.inputs,function(e,t){switch(t.type){case\"text\":case\"textarea\":case\"select\":n[e]=t.$input.val();break;case\"checkbox\":n[e]=t.$input.prop(\"checked\");break;case\"radio\":t.$input.prop(\"checked\")&&(n[t.radio]=t.value)}}),n},e.contextMenu.fromMenu=function(t){var n=e(t),o={};return a(o,n.children()),o},e.contextMenu.defaults=d,e.contextMenu.types=u,e.contextMenu.handle=f,e.contextMenu.op=h,e.contextMenu.menus=r});\n//# sourceMappingURL=jquery.contextMenu.min.js.map\n"]} \ No newline at end of file +{"version":3,"sources":["jquery.contextMenu.min.js"],"names":["factory","define","amd","exports","require","jQuery","$","splitAccesskey","val","k","t","split","keys","i","charAt","toUpperCase","push","inputLabel","node","id","name","menuChildren","items","$children","counter","each","label","item","$node","this","nodeName","toLowerCase","find","length","text","children","first","get","attr","disabled","callback","click","undefined","icon","type","selected","radio","value","options","html","clone","support","htmlMenuitem","window","htmlCommand","eventSelectstart","document","documentElement","ui","widget","cleanData","orig","elems","events","elem","_data","remove","triggerHandler","e","$currentTrigger","initialized","$win","namespaces","menus","types","defaults","selector","appendTo","trigger","autoHide","delay","reposition","selectableSubMenu","classNames","hover","visible","notSelectable","iconEdit","iconCut","iconCopy","iconPaste","iconDelete","iconAdd","iconQuit","iconLoadingClass","determinePosition","$menu","position","css","my","at","of","offset","collision","top","outerHeight","left","outerWidth","opt","x","y","offsetParentOffset","offsetParent","bottom","scrollTop","height","right","scrollLeft","width","call","positionSubmenu","zIndex","animation","duration","show","hide","noop","hoveract","timer","pageX","pageY","zindex","$t","zin","$tt","Math","max","parseInt","parent","indexOf","prop","handle","abortevent","preventDefault","stopImmediatePropagation","contextmenu","$this","data","originalEvent","mouseButton","hasClass","build","built","extend","isEmptyObject","console","error","log","Error","$trigger","op","create","showMenu","hasOwnProperty","isFunction","currentTarget","Event","mousedown","is","button","mouseup","removeData","mouseenter","$related","relatedTarget","$document","closest","on","mousemove","setTimeout","off","mouseleave","clearTimeout","layerClick","target","root","$window","triggerAction","elementFromPoint","$layer","isContentEditable","range","createRange","sel","getSelection","selectNode","collapse","removeAllRanges","addRange","one","contextMenu","keyStop","isInput","stopPropagation","key","targetZIndex","getZIndexOfTriggerTarget","style","parentElement","keyCode","shiftKey","$selected","blur","$parent","itemdata","String","fromCharCode","accesskeys","prevItem","$s","$prev","prev","last","$round","itemMouseleave","itemMouseenter","$input","focus","nextItem","$next","next","focusInput","contextMenuRoot","blurInput","menuMouseenter","hovering","menuMouseleave","itemClick","contextMenuKey","callbacks","Object","prototype","update","inputClick","hideMenu","force","focusItem","addClass","join","not","removeClass","filter","blurItem","additionalZValue","layer","pos","createNameNode","$name","_accesskey","_beforeAccesskey","append","createTextNode","_afterAccesskey","isHtmlName","accesskey","className","$label","ak","aks","matched","match","RegExp","commands","hasTypes","inputs","prependTo","then","processPromises","_icon","substring","body","resize","nested","domMenu","display","getBoundingClientRect","ceil","minWidth","maxWidth","addBack","$item","z-index","opacity","background-color","insertBefore","promise","errorPromise","errorItem","finishPromiseProcess","bind","fn","operation","$o","context","isPlainObject","o","$context","_hasContext","ns","itemClickEvent","contextMenuItemObj","contextmenu:focus.contextMenu","contextmenu:blur.contextMenu","contextmenu.contextMenu","mouseenter.contextMenu","mouseleave.contextMenu","contextmenu:hide.contextMenu","prevcommand.contextMenu","nextcommand.contextMenu","$visibleMenu","fromMenu","setInputValues","getInputValues","element"],"mappings":"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","file":"jquery.contextMenu.min.js","sourcesContent":["/**\r\n * jQuery contextMenu v@VERSION - Plugin for simple contextMenu handling\r\n *\r\n * Version: v@VERSION\r\n *\r\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\r\n * Web: http://swisnl.github.io/jQuery-contextMenu/\r\n *\r\n * Copyright (c) 2011-@YEAR SWIS BV and contributors\r\n *\r\n * Licensed under\r\n * MIT License http://www.opensource.org/licenses/mit-license\r\n *\r\n * Date: @DATE\r\n */\r\n\r\n// jscs:disable\r\n/* jshint ignore:start */\r\n(function (factory) {\r\n if (typeof define === 'function' && define.amd) {\r\n // AMD. Register as anonymous module.\r\n define(['jquery'], factory);\r\n } else if (typeof exports === 'object') {\r\n // Node / CommonJS\r\n factory(require('jquery'));\r\n } else {\r\n // Browser globals.\r\n factory(jQuery);\r\n }\r\n})(function ($) {\r\n\r\n 'use strict';\r\n\r\n // TODO: -\r\n // ARIA stuff: menuitem, menuitemcheckbox und menuitemradio\r\n // create