/*
* XenForo color_picker.min.js
* Copyright 2010-2019 XenForo Ltd.
* Released under the XenForo License Agreement: http://xenforo.com/license-agreement
*/
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(c,g,f){c instanceof String&&(c=String(c));for(var m=c.length,k=0;k<m;k++){var l=c[k];if(g.call(f,l,k,c))return{i:k,v:l}}return{i:-1,v:void 0}};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(c,g,f){c!=Array.prototype&&c!=Object.prototype&&(c[g]=f.value)};
$jscomp.getGlobal=function(c){return"undefined"!=typeof window&&window===c?c:"undefined"!=typeof global&&null!=global?global:c};$jscomp.global=$jscomp.getGlobal(this);$jscomp.polyfill=function(c,g,f,m){if(g){f=$jscomp.global;c=c.split(".");for(m=0;m<c.length-1;m++){var k=c[m];k in f||(f[k]={});f=f[k]}c=c[c.length-1];m=f[c];g=g(m);g!=m&&null!=g&&$jscomp.defineProperty(f,c,{configurable:!0,writable:!0,value:g})}};
$jscomp.polyfill("Array.prototype.find",function(c){return c?c:function(c,f){return $jscomp.findInternal(this,c,f).v}},"es6","es3");
!function(c,g,f,m){XenForo.ColorPicker=function(a){this.__construct(a)};XenForo.ColorPicker._formInit={};XenForo.ColorPicker.prototype={__construct:function(a){var b=a.closest("form"),d=b.attr("id");d||(d=XenForo.uniqueId(),b.attr("id",d));XenForo.ColorPicker._formInit[d]||b.data("XenForo.ColorPickerForm")||(b.bind("reset",function(a){setTimeout(function(){b.find("input.ColorPicker").each(function(a,b){c(b).data("XenForo.ColorPicker").updateValue(b.value)})},100)}),b.data("XenForo.ColorPickerForm",
!0),XenForo.ColorPicker._formInit[d]=!0);this.$form=b;this.$input=a;this.$placeholder=c("<span />").addClass("colorPickerPlaceholder textCtrl").prop("unselectable",!0).insertAfter(a);this.$placeholder.append("<span> </span>");a.hide();this.$placeholder.click(c.context(this,"openColorPicker"));this.setPlaceholderColor()},openColorPicker:function(){this.$placeholder.blur();k||(k=new t);k.load(c.context(this,"updateValue"),this.$input.val(),this.$input.hasClass("DisablePalette")?!1:!0)},updateValue:function(a){this.$input.val(a);
this.setPlaceholderColor()},updateRgbaValue:function(a,b,c,h){void 0===h||1==h?this.updateValue("rgb("+a+","+b+","+c+")"):this.updateValue("rgba("+a+","+b+","+c+","+h+")")},setPlaceholderColor:function(){var a=this.$input.val(),b=l(a);b?(this.$placeholder.css("border-style",""),b.unknown?this.$placeholder.find("span").css("background-color","").addClass("undefined"):this.setPlaceholderRgb(b.r,b.g,b.b).removeClass("undefined"),this.currentHsva=u(b.r,b.g,b.b),this.currentHsva.a=b.a):(this.$placeholder.css("border-style",
"dashed"),this.$placeholder.find("span").css("background-color","transparent").removeClass("undefined"),this.currentHsva=null);this.$placeholder.attr("title",a)},setPlaceholderRgb:function(a,b,c){return this.$placeholder.find("span").css("background-color","rgb("+a+", "+b+", "+c+")")}};XenForo.ColorInvert=function(a){a.click(function(b){c(a.data("target")).find("input.ColorPicker").each(function(a,b){a=l(b.value);c(b).data("XenForo.ColorPicker").updateRgbaValue(255-a.r,255-a.g,255-a.b,a.a)})})};XenForo.HueShift=
function(a){var b=function(b,d){var e=d-a.data("hueshift");a.data("hueshift",d);c(a.data("target")).find("input.ColorPicker").each(function(a,d){a=c(d).data("XenForo.ColorPicker");if(d=a.currentHsva){d.h=(d.h+e)%360;0>d.h&&(d.h+=360);var h=p(d.h,d.s,d.v);"change"==b.type?a.updateRgbaValue(h.r,h.g,h.b,d.a):a.setPlaceholderRgb(h.r,h.g,h.b)}})};a.data("hueshift",a.val());a.rangeinput({change:b,onSlide:b,css:{input:"range textCtrl",handle:"handle"}});var d=a.closest("form");d.data("XenForo.HueShiftForm")||
(d.bind("reset",function(a){setTimeout(function(){d.find("input.HueShift").each(function(a,b){c(b).data("rangeinput").setValue(b.value)})},50)}),d.data("XenForo.HueShiftForm",!0));this.$form=d;a.data("rangeinput").getHandle().attr("title",a.attr("title"))};XenForo.ColorPicker.namedColors={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",
cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",
deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",
lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",
mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",
seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};var k,l=function(a){var b=0,d=0,h=0,q=1,e,f=!1;a=c.trim(a);if(""==a)return!1;if(e=a.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i))b=parseInt(e[1],
16),d=parseInt(e[2],16),h=parseInt(e[3],16),e=e[0];else if(e=a.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i))b=parseInt(e[1]+e[1],16),d=parseInt(e[2]+e[2],16),h=parseInt(e[3]+e[3],16),e=e[0];else if(e=a.match(/^rgb\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)$/i))b=e[1],d=e[2],h=e[3],e=e[0];else if(e=a.match(/^rgba\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9.]+)\s*\)$/i))b=e[1],d=e[2],h=e[3],q=e[4],e=e[0];else if(e=a.match(/^@(([a-z0-9_-]+)(\.[a-z0-9_-]+)?)$/i))(a=r()[e[1]])?(b=a.r,d=
a.g,h=a.b,void 0!==a.a&&(q=a.a)):f=!0,e=e[0];else return XenForo.ColorPicker.namedColors[a.toLowerCase()]?(e=l("#"+XenForo.ColorPicker.namedColors[a.toLowerCase()]),e.value=a,e):!1;return{r:b,g:d,b:h,a:q,value:e,unknown:f}},n=!1,r=function(){if(!1!==n)return n;n={};c("#ColorPickerInstance").find(".PaletteTab li").each(function(){var a=c(this),b=l(a.data("colorcss")),d=a.data("colorname"),h=c("<div />").addClass("swatch");b&&(h.css("background-color","rgb("+b.r+", "+b.g+", "+b.b+")").prependTo(a),
n[d]=b)});return n},u=function(a,b,c){var d;"object"==typeof a&&(b=a.g,c=a.b,a=a.r);a/=255;b/=255;c/=255;var f=Math.max(a,b,c);var e=f-Math.min(a,b,c);if(0==e)a=d=0;else{switch(f){case a:d=(b-c)/e%6;break;case b:d=(c-a)/e+2;break;case c:d=(a-b)/e+4}d=Math.round(60*d);0>d&&(d+=360);a=e/f}return{h:d,s:a,v:f}},p=function(a,b,c){"object"==typeof a&&(b=a.s,c=a.v,a=a.h);b*=c;a/=60;var d=b*(1-Math.abs(a%2-1));if(1>a){var f=b;var e=d;var g=0}else 2>a?(f=d,e=b,g=0):3>a?(f=0,e=b,g=d):4>a?(f=0,e=d,g=b):5>a?
(f=d,e=0,g=b):6>a&&(f=b,e=0,g=d);c-=b;return{r:Math.round(255*(f+c)),g:Math.round(255*(e+c)),b:Math.round(255*(g+c))}},t=function(){this.__construct()};t.prototype={__construct:function(){this.$picker=c("#ColorPickerInstance").appendTo(f.body);var a=c(g).height();a=!(c.browser.msie&&6>=c.browser.version||XenForo.isTouchBrowser()||600>=c(g).width()||550>=a||this.$picker.outerHeight()>=.9*a);this.$picker.overlay({close:".OverlayCloser",speed:0,closeSpeed:0,fixed:a,mask:{color:"white",opacity:.6,loadSpeed:0,
closeSpeed:0}});this.api=this.$picker.data("overlay");this.hsv={h:0,s:0,v:0};this.tempEvents={};r();this.$paletteItems=this.$picker.find(".PaletteTab li");this.$paletteItems.each(c.context(this,"initPaletteItem"));this.$gradient=this.$picker.find(".gradient");this.$gradientCircle=this.$gradient.find(".circle");this.$bar=this.$picker.find(".bar");this.$barArrow=this.$bar.find(".arrow");this.$preview=this.$picker.find(".preview");this.$finalValue=this.$picker.find("input.textCtrl.finalValue");this.$remove=
this.$picker.find(".remove input");a=this.$picker.find(".inputs");this.inputs={r:a.find('input[name="r"]'),g:a.find('input[name="g"]'),b:a.find('input[name="b"]'),a:a.find('input[name="a"]')};this.$hex=a.find('input[name="hex"]');this.$gradient.mousedown(c.context(this,"eGradientMouseDown"));this.$bar.mousedown(c.context(this,"eBarMouseDown"));this.inputs.a.change(c.context(this,"normalizeAlpha"));a.find('input[name="r"], input[name="g"], input[name="b"], input[name="a"]').change(c.context(this,"eChangeIndividualInput"));
this.$hex.change(c.context(this,"eChangeHexInput"));this.$finalValue.change(c.context(this,"eChangeFinalInput"));this.$remove.click(c.context(this,"eRemoveClick"));this.$picker.find(".save").click(c.context(this,"save"));this.$picker.find("input[type=text]").keydown(c.context(function(a){13==a.keyCode&&(a.preventDefault(),a.target.blur(),this.save())},this));this.tabs=new XenForo.Tabs(this.$picker.find(".ColorPickerTabs .tabs"))},initPaletteItem:function(a,b){c(b).click(c.context(this,"ePaletteItemClick"))},
load:function(a,b,c){this.saveCallback=a;this.updateFromString(b);this.updateCurrentColor(b);this.updatePreview(!0);c&&this.$paletteItems.length?(this.$picker.find(".ColorPickerTabs li:eq(0)").show(),b&&"@"!==b.substr(0,1)?this.tabs.click(1):this.tabs.click(0)):(this.tabs.click(1),this.$picker.find(".ColorPickerTabs li:eq(0)").hide());this.api.load()},updateFromString:function(a){a=c.trim(a);if(""==a)this.$remove.prop("checked",!0),this.updateInputs("","","","");else if(a=l(a))a.unknown?this.updateInputs("",
"","",""):(this.updateInputs(a),this.normalizeAlpha()),this.$finalValue.val(a.value),"@"==a.value.substr(0,1)&&this.selectPaletteItem(a.value.substr(1))},selectPaletteItem:function(a){this.$paletteItems.each(function(){var b=c(this);b.data("colorname")==a?(b.addClass("selected"),selected=a):b.removeClass("selected")})},matchColorsFromString:l,getRgbFromInputs:function(){var a=parseInt(this.inputs.r.val(),10),b=parseInt(this.inputs.g.val(),10),c=parseInt(this.inputs.b.val(),10),f=!1;isNaN(a)&&isNaN(b)&&
isNaN(c)&&(f=!0);a=isNaN(a)?0:a;b=isNaN(b)?0:b;c=isNaN(c)?0:c;return{r:a,g:b,b:c,invalid:f}},getCssColorFromInputs:function(a){var b=this.getRgbFromInputs(),c=this.inputs.a.val();return b.invalid?"":a&&1>parseFloat(c)?"rgba("+b.r+", "+b.g+", "+b.b+", "+c+")":"rgb("+b.r+", "+b.g+", "+b.b+")"},normalizeAlpha:function(){alpha=parseFloat(this.inputs.a.val());if(1<alpha)alpha=String(alpha/255).substr(0,4);else if(0>alpha)alpha=0;else return!1;this.inputs.a.val(alpha);return!0},ePaletteItemClick:function(a){a=
c(a.currentTarget).data("colorname");var b;a&&(b=r()[a])&&(this.updateInputs(b),this.$finalValue.val("@"+a),this.selectPaletteItem(a),this.updatePreview(!0))},eGradientMouseDown:function(a){a.preventDefault();this.handleGradientEventUpdate(a);this.tempEvents={mousemove:c.context(this,"eGradientMouseMove"),mouseup:c.context(this,"eGradientMouseUp")};c(f).bind(this.tempEvents)},eGradientMouseMove:function(a){this.handleGradientEventUpdate(a)},eGradientMouseUp:function(a){this.unbindTempEvents()},handleGradientEventUpdate:function(a){var b=
this.$gradient.offset();var c=a.pageX-b.left-1;a=a.pageY-b.top-1;this.hsv.s=Math.max(0,Math.min(1,c/255));this.hsv.v=Math.max(0,Math.min(1,(255-a)/255));this.updateInputs(p(this.hsv),!1);this.updatePreview(!0)},unbindTempEvents:function(){for(var a in this.tempEvents)c(f).unbind(a,this.tempEvents[a]);this.tempEvents={}},eBarMouseDown:function(a){a.preventDefault();this.handleBarEventUpdate(a);this.tempEvents={mousemove:c.context(this,"eBarMouseMove"),mouseup:c.context(this,"eBarMouseUp")};c(f).bind(this.tempEvents)},
eBarMouseMove:function(a){this.handleBarEventUpdate(a)},eBarMouseUp:function(a){this.unbindTempEvents()},handleBarEventUpdate:function(a){var b=this.$bar.offset();this.hsv.h=Math.max(0,Math.min(359,Math.round((255-(a.pageY-b.top-1))/255*360)));this.updateInputs(p(this.hsv),!1);this.updatePreview(!0)},eChangeFinalInput:function(a){this.$remove.prop("checked",!1);this.updateFromString(this.$finalValue.val());this.updatePreview(!0)},eChangeIndividualInput:function(a){a=c(a.currentTarget);255<a.val()?
a.val(255):0>a.val()&&a.val(0);this.updateHexFromInputs();this.updateFinalValueFromInputs();this.updateHsv();this.updatePreview(!0)},eChangeHexInput:function(a){this.updateInputsFromHex();this.updateFinalValueFromInputs();this.updateHsv();this.updatePreview(!0)},eRemoveClick:function(a){this.$remove.prop("checked")?(this.$finalValue.val(""),this.selectPaletteItem(!1)):(this.updateFinalValueFromInputs(),this.updateHsv());this.updatePreview(!0)},updateCurrentColor:function(a){a=l(a);var b=this.$picker.find(".currentPreview");
!a||a.unknown?b.css("background","transparent"):b.css("background","rgb("+a.r+", "+a.g+", "+a.b+")")},updatePreview:function(a){var b=this.getCssColorFromInputs(!1);""==b||this.$remove.prop("checked")?this.$preview.css("background","transparent"):this.$preview.css("background",b);a&&this.updatePicker()},updatePicker:function(){var a=Math.round(255*this.hsv.s+1);var b=Math.round(255-255*this.hsv.v+1);var c=Math.round((359-this.hsv.h)/359*255+1);this.$gradientCircle.css({top:b,left:a});this.$barArrow.css("top",
c);a=p({h:this.hsv.h,s:1,v:1});this.$gradient.css("background-color","rgb("+a.r+", "+a.g+", "+a.b+")")},updateInputs:function(a,b,c,f,g){void 0===g&&(g=!0);"object"==typeof a&&(void 0!==b&&(g=b),b=a.g,c=a.b,void 0!==a.a&&(f=a.a),a=a.r);this.inputs.r.val(a);this.inputs.g.val(b);this.inputs.b.val(c);""!==a&&""!==b&&""!==c?this.$hex.val(this._toHexComponent(a)+this._toHexComponent(b)+this._toHexComponent(c)):this.$hex.val("");void 0!==f&&(this.inputs.a.val(f),this.normalizeAlpha());this.updateFinalValueFromInputs();
g&&this.updateHsv()},_toHexComponent:function(a){a=parseInt(a,10);if(isNaN(a))return"";a=a.toString(16);1==a.length&&(a="0"+a);return a},updateFinalValueFromInputs:function(){this.$finalValue.val(this.getCssColorFromInputs(!0));this.$finalValue.val()&&this.$remove.prop("checked",!1);this.selectPaletteItem(!1)},updateInputsFromHex:function(){var a=this.$hex.val();""===a?this.updateInputs("","","",""):(a=l("#"==a.substr(0,1)?a:"#"+a))?this.updateInputs(a):(this.$hex.val(""),this.updateInputs("","",
"",""))},updateHexFromInputs:function(){var a=this.inputs.r.val(),b=this.inputs.g.val(),c=this.inputs.b.val();""!==a&&""!==b&&""!==c?this.$hex.val(this._toHexComponent(a)+this._toHexComponent(b)+this._toHexComponent(c)):this.$hex.val("")},updateHsv:function(){this.hsv=u(this.getRgbFromInputs())},save:function(){var a=c.trim(this.$finalValue.val());this.$remove.prop("checked")&&(a="");this.saveCallback&&this.saveCallback(a);this.api.close()}};XenForo.register("input.ColorPicker","XenForo.ColorPicker");
XenForo.register("input.ColorInvert","XenForo.ColorInvert");XenForo.register("input.HueShift","XenForo.HueShift")}(jQuery,this,document);