����JFIF��x�x����'
Server IP : 78.140.185.180 / Your IP : 3.141.107.132 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/public_html/public/client/ |
Upload File : |
{"version":3,"sources":["./node_modules/ngx-color-picker/__ivy_ngcc__/fesm2015/ngx-color-picker.js","./src/common/core/ui/color-picker/be-color-picker.module.ts","./src/common/core/ui/color-picker/colorpicker-panel.component.ts","./src/common/core/ui/color-picker/colorpicker-panel.component.html"],"names":["_c0","_c1","_c2","ColorPickerComponent_div_2_Template","rf","ctx","ɵngcc0","ctx_r1","cpUsePosition","arrowTop","ColorPickerComponent_div_3_Template","_r17","$event","onColorChange","onDragStart","onDragEnd","ctx_r2","hueSliderColor","slider","v","s","ColorPickerComponent_button_8_Template","_r21","ctx_r20","onAddPresetColor","selectedColor","ctx_r3","cpAddColorButtonClass","cpPresetColors","length","cpMaxPresetColorsLength","cpAddColorButtonText","ColorPickerComponent_div_10_Template","ColorPickerComponent_div_20_input_6_Template","_r25","onAcceptColor","onAlphaInput","ctx_r22","cmykText","a","ColorPickerComponent_div_20_div_16_Template","ColorPickerComponent_div_20_Template","_r28","onCyanInput","onMagentaInput","onYellowInput","onBlackInput","ctx_r8","format","c","m","y","k","cpAlphaChannel","ColorPickerComponent_div_21_input_5_Template","_r39","ctx_r36","hslaText","ColorPickerComponent_div_21_div_13_Template","ColorPickerComponent_div_21_Template","_r42","onHueInput","onSaturationInput","onLightnessInput","ctx_r9","h","l","ColorPickerComponent_div_22_input_5_Template","_r51","ctx_r48","rgbaText","ColorPickerComponent_div_22_div_13_Template","ColorPickerComponent_div_22_Template","_r54","onRedInput","onGreenInput","onBlueInput","ctx_r10","r","g","b","ColorPickerComponent_div_23_input_3_Template","_r63","ctx_r60","hexAlpha","ColorPickerComponent_div_23_div_7_Template","ColorPickerComponent_div_23_Template","_r66","onHexInput","ctx_r11","hexText","ColorPickerComponent_div_24_input_3_Template","_r71","ctx_r69","ColorPickerComponent_div_24_Template","_r74","onValueInput","ctx_r12","ColorPickerComponent_div_25_Template","_r77","onFormatToggle","ColorPickerComponent_div_26_div_4_div_1_span_1_Template","_r86","color_r82","$implicit","onRemovePresetColor","ctx_r83","cpRemoveColorButtonClass","ColorPickerComponent_div_26_div_4_div_1_Template","_r88","setColorFromString","ctx_r81","cpAddColorButton","ColorPickerComponent_div_26_div_4_Template","ctx_r79","cpPresetColorsClass","ColorPickerComponent_div_26_div_5_Template","ctx_r80","cpPresetEmptyMessageClass","cpPresetEmptyMessage","ColorPickerComponent_div_26_Template","ctx_r14","cpPresetLabel","ColorPickerComponent_div_27_button_1_Template","_r92","onCancelColor","ctx_r89","cpCancelButtonClass","cpCancelButtonText","ColorPickerComponent_div_27_button_2_Template","_r94","ctx_r90","cpOKButtonClass","cpOKButtonText","ColorPickerComponent_div_27_Template","ctx_r15","cpCancelButton","cpOKButton","ColorFormats","Rgba","constructor","this","Hsva","Hsla","Cmyk","TextDirective","newValue","EventEmitter","inputChange","event","value","target","undefined","rg","emit","numeric","parseFloat","ɵfac","t","ɵdir","type","selectors","hostBindings","inputs","text","outputs","SliderDirective","elRef","dragEnd","dragStart","listenerMove","move","listenerStop","stop","mouseDown","start","touchStart","preventDefault","setCursor","stopPropagation","document","addEventListener","removeEventListener","getX","position","nativeElement","getBoundingClientRect","pageX","touches","left","window","pageXOffset","getY","pageY","top","pageYOffset","width","offsetWidth","height","offsetHeight","x","Math","max","min","rgX","rgY","SliderPosition","SliderDimension","ColorPickerService","active","setActive","cpDialogDisplay","closeDialog","hsva2hsla","hsva","abs","hsla2hsva","hsla","hsvaToRgba","i","floor","f","p","q","cmykToRgb","cmyk","rgbaToCmyk","rgba","rgbaToHsva","d","rgbaToHex","allowHex8","hex","toString","substr","round","normalizeCMYK","denormalizeCMYK","denormalizeRGBA","stringToHsva","colorString","toLowerCase","stringParsers","re","parse","execResult","parseInt","isNaN","push","key","hasOwnProperty","parser","match","exec","color","outputFormat","alphaChannel","ɵprov","token","factory","ColorPickerComponent","cdRef","service","isIE10","dialogArrowSize","dialogArrowOffset","dialogInputFields","HEX","RGBA","HSLA","CMYK","useRootViewContainer","handleEsc","show","handleEnter","ngOnInit","sliderDimMax","hueSlider","cpWidth","alphaSlider","cpCmykEnabled","cpOutputFormat","listenerMouseDown","onMouseDown","listenerResize","onResize","openDialog","initialColor","ngOnDestroy","ngAfterViewInit","updateColorPicker","detectChanges","directiveElementRef","setInitialColor","openColorPicker","closeColorPicker","setupDialog","instance","elementRef","cpHeight","cpFallbackColor","cpColorMode","cpDisableInput","cpIgnoredElements","cpSaveClickOutside","cpCloseClickOutside","cpUseRootViewContainer","cpPosition","cpPositionOffset","cpPositionRelativeToArrow","cpTriggerElement","setColorMode","ua","navigator","userAgent","msie","indexOf","substring","detectIE","directiveInstance","fallbackColor","setPresetConfig","mode","toUpperCase","update","sliderH","setDialogPosition","sliderDragEnd","outputColor","sliderDragStart","isDescendant","filter","item","colorSelected","cmykChanged","cmykColor","colorChanged","colorCanceled","change","availableFormats","nextFormat","sliderChanged","onHueChange","onValueChange","onAlphaChange","validHex","valid","test","split","map","join","inputChanged","input","concat","presetColorsChanged","hidden","setTimeout","stateChanged","cmykInput","hue","lastOutput","alphaSliderColor","alpha","style","transform","parentNode","transformNode","node","dialogHeight","dialogElement","tagName","getComputedStyle","getPropertyValue","boxDirective","createDialogBox","HTMLUnknownElement","boxParent","usePosition","elBounds","triggerElBounds","usePositionX","usePositionY","bottom","right","collisionTop","collisionBottom","innerHeight","documentElement","clientHeight","collisionLeft","collisionRight","innerWidth","clientWidth","reduce","prev","next","calculateAutoPositioning","parent","child","element","offset","ɵcmp","viewQuery","_t","first","decls","vars","consts","template","directives","ɵngcc1","styles","encapsulation","ColorPickerDirective","injector","cfr","appRef","vcRef","_service","dialogCreated","ignoreChanges","viewAttachedToAppRef","cpToggle","cpDisabled","cpInputChange","cpToggleChange","cpSliderChange","cpSliderDragEnd","cpSliderDragStart","colorPickerOpen","colorPickerClose","colorPickerCancel","colorPickerSelect","colorPickerChange","cpCmykColorChange","cpPresetColorsChange","handleClick","inputFocus","handleFocus","handleInput","cmpRef","detachView","hostView","destroy","dialog","ngOnChanges","changes","currentValue","colorPicker","changeDetectorRef","appInstance","get","componentTypes","Injector","viewContainerRef","console","warn","compFactory","resolveComponentFactory","create","attachView","body","appendChild","rootNodes","ReflectiveInjector","parentInjector","createComponent","state","ignore","ignored","activeElement","exportAs","features","ColorPickerModule","ɵmod","ɵinj","providers","imports","CommonModule","BeColorPickerModule","components","panel","ColorpickerPanelComponent","data","overlayPanelRef","getInitialColor","trigger","click","emitValue","replace","emitSelectedEvent"],"mappings":"wJAMA,MAAMA,EAAM,CAAC,eACPC,EAAM,CAAC,aACPC,EAAM,CAAC,eACb,SAASC,EAAoCC,EAAIC,GAE/C,GAF+D,EAALD,GACxDE,MAAiB,EAAG,OACb,EAALF,EAAQ,CACV,MAAMG,EAASD,QACfA,MAA8B,eAAgBC,EAAOC,cAAe,IACpEF,MAAmB,MAAOC,EAAOE,SAAU,OAE/C,SAASC,EAAoCN,EAAIC,GAAO,GAAS,EAALD,EAAQ,CAChE,MAAMO,EAAOL,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAkB,WAAY,SAAqEM,GAA8E,OAApEN,MAAqBK,GAAuBL,QAAuCO,cAAcD,IAA9MN,CAA0N,YAAa,WAA8I,OAApEA,MAAqBK,GAAuBL,QAAuCQ,YAAY,yBAAhZR,CAA4a,UAAW,WAA4I,OAApEA,MAAqBK,GAAuBL,QAAuCS,UAAU,0BAC5lBT,MAAiB,EAAG,MAAO,IAC3BA,QACF,GAAS,EAALF,EAAQ,CACV,MAAMY,EAASV,QACfA,MAAmB,mBAAoBU,EAAOC,gBAC9CX,MAAkB,MAAO,EAAzBA,CAA4B,MAAO,GACnCA,MAAiB,GACjBA,MAAmB,MAAwB,MAAjBU,EAAOE,OAAiB,KAAOF,EAAOE,OAAOC,EAAG,KAA1Eb,CAAgF,OAAyB,MAAjBU,EAAOE,OAAiB,KAAOF,EAAOE,OAAOE,EAAG,OAE5I,SAASC,EAAuCjB,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACnE,MAAMkB,EAAOhB,QACbA,MAAsB,EAAG,SAAU,IACnCA,MAAkB,QAAS,SAAwEM,GAAUN,MAAqBgB,GAAO,MAAMC,EAAUjB,QAAwB,OAAOiB,EAAQC,iBAAiBZ,EAAQW,EAAQE,iBACjOnB,MAAc,GACdA,QACF,GAAS,EAALF,EAAQ,CACV,MAAMsB,EAASpB,QACfA,MAAkBoB,EAAOC,uBACzBrB,MAAkB,WAAYoB,EAAOE,gBAAkBF,EAAOE,eAAeC,QAAUH,EAAOI,yBAC9FxB,MAAiB,GACjBA,MAA0B,IAAKoB,EAAOK,qBAAsB,MAEhE,SAASC,EAAqC5B,EAAIC,GAAgB,EAALD,GACzDE,MAAiB,EAAG,MAAO,IAE/B,SAAS2B,EAA6C7B,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACzE,MAAM8B,EAAO5B,QACbA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAAmFM,GAA+E,OAArEN,MAAqB4B,GAAuB5B,MAAqB,GAAmB6B,cAAcvB,IAAhON,CAA4O,WAAY,SAAgFM,GAA+E,OAArEN,MAAqB4B,GAAuB5B,MAAqB,GAAmB8B,aAAaxB,KACnbN,QACF,GAAS,EAALF,EAAQ,CACV,MAAMiC,EAAU/B,MAAqB,GACrCA,MAAkB,KAAM,EAAxBA,CAA2B,QAA6B,MAApB+B,EAAQC,SAAmB,KAAOD,EAAQC,SAASC,IAE3F,SAASC,EAA4CpC,EAAIC,GAAgB,EAALD,IAChEE,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,SAEJ,SAASmC,EAAqCrC,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAMsC,EAAOpC,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuCqC,YAAY/B,KAChaN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuCsC,eAAehC,KACnaN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuCuC,cAAcjC,KAClaN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBoC,GAAuBpC,QAAuCwC,aAAalC,KACjaN,QACAA,MAAkB,EAAG2B,EAA8C,EAAG,EAAG,QAAS,IAClF3B,QACAA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,QACAA,MAAsB,GAAI,OAC1BA,MAAc,GAAI,KAClBA,QACAA,MAAsB,GAAI,OAC1BA,MAAc,GAAI,KAClBA,QACAA,MAAsB,GAAI,OAC1BA,MAAc,GAAI,KAClBA,QACAA,MAAkB,GAAIkC,EAA6C,EAAG,EAAG,MAAO,IAChFlC,QACAA,QACF,GAAS,EAALF,EAAQ,CACV,MAAM2C,EAASzC,QACfA,MAAmB,UAA6B,IAAlByC,EAAOC,OAAe,OAAS,SAC7D1C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnByC,EAAOT,SAAmB,KAAOS,EAAOT,SAASW,GACvF3C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnByC,EAAOT,SAAmB,KAAOS,EAAOT,SAASY,GACvF5C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnByC,EAAOT,SAAmB,KAAOS,EAAOT,SAASa,GACvF7C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnByC,EAAOT,SAAmB,KAAOS,EAAOT,SAASc,GACvF9C,MAAiB,GACjBA,MAAkB,OAAkC,aAA1ByC,EAAOM,gBACjC/C,MAAiB,IACjBA,MAAkB,OAAkC,aAA1ByC,EAAOM,iBAErC,SAASC,EAA6ClD,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACzE,MAAMmD,EAAOjD,QACbA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAAmFM,GAA+E,OAArEN,MAAqBiD,GAAuBjD,MAAqB,GAAmB6B,cAAcvB,IAAhON,CAA4O,WAAY,SAAgFM,GAA+E,OAArEN,MAAqBiD,GAAuBjD,MAAqB,GAAmB8B,aAAaxB,KACnbN,QACF,GAAS,EAALF,EAAQ,CACV,MAAMoD,EAAUlD,MAAqB,GACrCA,MAAkB,KAAM,EAAxBA,CAA2B,QAA6B,MAApBkD,EAAQC,SAAmB,KAAOD,EAAQC,SAASlB,IAE3F,SAASmB,EAA4CtD,EAAIC,GAAgB,EAALD,IAChEE,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,SAEJ,SAASqD,EAAqCvD,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAMwD,EAAOtD,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuCuD,WAAWjD,KAC/ZN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuCwD,kBAAkBlD,KACtaN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBsD,GAAuBtD,QAAuCyD,iBAAiBnD,KACraN,QACAA,MAAkB,EAAGgD,EAA8C,EAAG,EAAG,QAAS,IAClFhD,QACAA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,QACAA,MAAsB,EAAG,OACzBA,MAAc,GAAI,KAClBA,QACAA,MAAsB,GAAI,OAC1BA,MAAc,GAAI,KAClBA,QACAA,MAAkB,GAAIoD,EAA6C,EAAG,EAAG,MAAO,IAChFpD,QACAA,QACF,GAAS,EAALF,EAAQ,CACV,MAAM4D,EAAS1D,QACfA,MAAmB,UAA6B,IAAlB0D,EAAOhB,OAAe,OAAS,SAC7D1C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnB0D,EAAOP,SAAmB,KAAOO,EAAOP,SAASQ,GACvF3D,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnB0D,EAAOP,SAAmB,KAAOO,EAAOP,SAASrC,GACvFd,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA4B,MAAnB0D,EAAOP,SAAmB,KAAOO,EAAOP,SAASS,GACvF5D,MAAiB,GACjBA,MAAkB,OAAkC,aAA1B0D,EAAOX,gBACjC/C,MAAiB,GACjBA,MAAkB,OAAkC,aAA1B0D,EAAOX,iBAErC,SAASc,EAA6C/D,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACzE,MAAMgE,EAAO9D,QACbA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAAmFM,GAA+E,OAArEN,MAAqB8D,GAAuB9D,MAAqB,GAAmB6B,cAAcvB,IAAhON,CAA4O,WAAY,SAAgFM,GAA+E,OAArEN,MAAqB8D,GAAuB9D,MAAqB,GAAmB8B,aAAaxB,KACnbN,QACF,GAAS,EAALF,EAAQ,CACV,MAAMiE,EAAU/D,MAAqB,GACrCA,MAAkB,KAAM,EAAxBA,CAA2B,QAA6B,MAApB+D,EAAQC,SAAmB,KAAOD,EAAQC,SAAS/B,IAE3F,SAASgC,EAA4CnE,EAAIC,GAAgB,EAALD,IAChEE,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,SAEJ,SAASkE,EAAqCpE,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAMqE,EAAOnE,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuCoE,WAAW9D,KAC/ZN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuCqE,aAAa/D,KACjaN,QACAA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBmE,GAAuBnE,QAAuCsE,YAAYhE,KAChaN,QACAA,MAAkB,EAAG6D,EAA8C,EAAG,EAAG,QAAS,IAClF7D,QACAA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,QACAA,MAAsB,EAAG,OACzBA,MAAc,GAAI,KAClBA,QACAA,MAAsB,GAAI,OAC1BA,MAAc,GAAI,KAClBA,QACAA,MAAkB,GAAIiE,EAA6C,EAAG,EAAG,MAAO,IAChFjE,QACAA,QACF,GAAS,EAALF,EAAQ,CACV,MAAMyE,EAAUvE,QAChBA,MAAmB,UAA8B,IAAnBuE,EAAQ7B,OAAe,OAAS,SAC9D1C,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA6B,MAApBuE,EAAQP,SAAmB,KAAOO,EAAQP,SAASQ,GACzFxE,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA6B,MAApBuE,EAAQP,SAAmB,KAAOO,EAAQP,SAASS,GACzFzE,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA6B,MAApBuE,EAAQP,SAAmB,KAAOO,EAAQP,SAASU,GACzF1E,MAAiB,GACjBA,MAAkB,OAAmC,aAA3BuE,EAAQxB,gBAClC/C,MAAiB,GACjBA,MAAkB,OAAmC,aAA3BuE,EAAQxB,iBAEtC,SAAS4B,EAA6C7E,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACzE,MAAM8E,EAAO5E,QACbA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAAmFM,GAA+E,OAArEN,MAAqB4E,GAAuB5E,MAAqB,GAAmB6B,cAAcvB,IAAhON,CAA4O,WAAY,SAAgFM,GAA+E,OAArEN,MAAqB4E,GAAuB5E,MAAqB,GAAmB8B,aAAaxB,KACnbN,QACF,GAAS,EAALF,EAAQ,CACV,MAAM+E,EAAU7E,MAAqB,GACrCA,MAAkB,KAAM,EAAxBA,CAA2B,QAAS6E,EAAQC,WAEhD,SAASC,EAA2CjF,EAAIC,GAAgB,EAALD,IAC/DE,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,SAEJ,SAASgF,EAAqClF,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAMmF,EAAOjF,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,OAAQ,WAA4I,OAApEA,MAAqBiF,GAAuBjF,QAAuCkF,WAAW,OAAhMlF,CAA0M,cAAe,SAA2EM,GAA8E,OAApEN,MAAqBiF,GAAuBjF,QAAuC6B,cAAcvB,IAA/YN,CAA2Z,WAAY,SAAwEM,GAA8E,OAApEN,MAAqBiF,GAAuBjF,QAAuCkF,WAAW5E,KACvlBN,QACAA,MAAkB,EAAG2E,EAA8C,EAAG,EAAG,QAAS,IAClF3E,QACAA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OACzBA,MAAc,EAAG,OACjBA,QACAA,MAAkB,EAAG+E,EAA4C,EAAG,EAAG,MAAO,IAC9E/E,QACAA,QACF,GAAS,EAALF,EAAQ,CACV,MAAMqF,EAAUnF,QAChBA,MAAmB,UAA8B,IAAnBmF,EAAQzC,OAAe,OAAS,SAC9D1C,MAAmB,YAAwC,WAA3BmF,EAAQpC,gBACxC/C,MAAiB,GACjBA,MAAkB,QAASmF,EAAQC,SACnCpF,MAAiB,GACjBA,MAAkB,OAAmC,WAA3BmF,EAAQpC,gBAClC/C,MAAiB,GACjBA,MAAkB,OAAmC,WAA3BmF,EAAQpC,iBAEtC,SAASsC,EAA6CvF,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACzE,MAAMwF,EAAOtF,QACbA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAAmFM,GAA+E,OAArEN,MAAqBsF,GAAuBtF,MAAqB,GAAmB6B,cAAcvB,IAAhON,CAA4O,WAAY,SAAgFM,GAA+E,OAArEN,MAAqBsF,GAAuBtF,MAAqB,GAAmB8B,aAAaxB,KACnbN,QACF,GAAS,EAALF,EAAQ,CACV,MAAMyF,EAAUvF,MAAqB,GACrCA,MAAkB,KAAM,EAAxBA,CAA2B,QAA6B,MAApBuF,EAAQpC,SAAmB,KAAOoC,EAAQpC,SAASlB,IAE3F,SAASuD,EAAqC1F,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAM2F,EAAOzF,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,QAAS,IAClCA,MAAkB,cAAe,SAA2EM,GAA8E,OAApEN,MAAqByF,GAAuBzF,QAAuC6B,cAAcvB,IAAvNN,CAAmO,WAAY,SAAwEM,GAA8E,OAApEN,MAAqByF,GAAuBzF,QAAuC0F,aAAapF,KACjaN,QACAA,MAAkB,EAAGqF,EAA8C,EAAG,EAAG,QAAS,IAClFrF,QACAA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,QACAA,MAAsB,EAAG,OACzBA,MAAc,EAAG,KACjBA,QACAA,QACAA,QACF,GAAS,EAALF,EAAQ,CACV,MAAM6F,EAAU3F,QAChBA,MAAiB,GACjBA,MAAkB,KAAM,IAAxBA,CAA6B,QAA6B,MAApB2F,EAAQxC,SAAmB,KAAOwC,EAAQxC,SAASS,GACzF5D,MAAiB,GACjBA,MAAkB,OAAmC,aAA3B2F,EAAQ5C,iBAEtC,SAAS6C,EAAqC9F,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACjE,MAAM+F,EAAO7F,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAsB,EAAG,OAAQ,IACjCA,MAAkB,QAAS,WAA4I,OAApEA,MAAqB6F,GAAuB7F,QAAuC8F,gBAAgB,KACtM9F,QACAA,MAAsB,EAAG,OAAQ,IACjCA,MAAkB,QAAS,WAA4I,OAApEA,MAAqB6F,GAAuB7F,QAAuC8F,eAAe,KACrM9F,QACAA,SAEJ,SAAS+F,EAAwDjG,EAAIC,GAAO,GAAS,EAALD,EAAQ,CACpF,MAAMkG,EAAOhG,QACbA,MAAsB,EAAG,OAAQ,IACjCA,MAAkB,QAAS,SAAuFM,GAAUN,MAAqBgG,GAAO,MAAMC,EAAYjG,QAAuBkG,UAAoD,OAAzBlG,MAAqB,GAAmBmG,oBAAoB7F,EAAQ2F,KAChSjG,QACF,GAAS,EAALF,EAAQ,CACV,MAAMsG,EAAUpG,MAAqB,GACrCA,MAAkBoG,EAAQC,2BAE9B,SAASC,EAAiDxG,EAAIC,GAAO,GAAS,EAALD,EAAQ,CAC7E,MAAMyG,EAAOvG,QACbA,MAAsB,EAAG,MAAO,IAChCA,MAAkB,QAAS,WAAmF,MAAsDiG,EAAlCjG,MAAqBuG,GAAqCL,UAAoD,OAAzBlG,MAAqB,GAAmBwG,mBAAmBP,KAClRjG,MAAkB,EAAG+F,EAAyD,EAAG,EAAG,OAAQ,IAC5F/F,QACF,GAAS,EAALF,EAAQ,CACV,MAAMmG,EAAYlG,EAAImG,UAChBO,EAAUzG,MAAqB,GACrCA,MAAmB,mBAAoBiG,GACvCjG,MAAiB,GACjBA,MAAkB,OAAQyG,EAAQC,mBAEtC,SAASC,EAA2C7G,EAAIC,GAItD,GAJsE,EAALD,IAC/DE,MAAsB,EAAG,OACzBA,MAAkB,EAAGsG,EAAkD,EAAG,EAAG,MAAO,IACpFtG,SACO,EAALF,EAAQ,CACV,MAAM8G,EAAU5G,MAAqB,GACrCA,MAAkB4G,EAAQC,qBAC1B7G,MAAiB,GACjBA,MAAkB,UAAW4G,EAAQtF,iBAEzC,SAASwF,EAA2ChH,EAAIC,GAItD,GAJsE,EAALD,IAC/DE,MAAsB,EAAG,OACzBA,MAAc,GACdA,SACO,EAALF,EAAQ,CACV,MAAMiH,EAAU/G,MAAqB,GACrCA,MAAkB+G,EAAQC,2BAC1BhH,MAAiB,GACjBA,MAAyB+G,EAAQE,uBAErC,SAASC,EAAqCpH,EAAIC,GAShD,GATgE,EAALD,IACzDE,MAAsB,EAAG,MAAO,IAChCA,MAAiB,EAAG,MACpBA,MAAsB,EAAG,MAAO,IAChCA,MAAc,GACdA,QACAA,MAAkB,EAAG2G,EAA4C,EAAG,EAAG,MAAO,IAC9E3G,MAAkB,EAAG8G,EAA4C,EAAG,EAAG,MAAO,IAC9E9G,SACO,EAALF,EAAQ,CACV,MAAMqH,EAAUnH,QAChBA,MAAiB,GACjBA,MAAyBmH,EAAQC,eACjCpH,MAAiB,GACjBA,MAAkB,OAAkC,MAA1BmH,EAAQ7F,eAAyB,KAAO6F,EAAQ7F,eAAeC,QACzFvB,MAAiB,GACjBA,MAAkB,SAAoC,MAA1BmH,EAAQ7F,gBAAgC6F,EAAQ7F,eAAeC,SAAW4F,EAAQT,mBAElH,SAASW,EAA8CvH,EAAIC,GAAO,GAAS,EAALD,EAAQ,CAC1E,MAAMwH,EAAOtH,QACbA,MAAsB,EAAG,SAAU,IACnCA,MAAkB,QAAS,SAA+EM,GAA+E,OAArEN,MAAqBsH,GAAuBtH,MAAqB,GAAmBuH,cAAcjH,KACtNN,MAAc,GACdA,QACF,GAAS,EAALF,EAAQ,CACV,MAAM0H,EAAUxH,MAAqB,GACrCA,MAAkBwH,EAAQC,qBAC1BzH,MAAiB,GACjBA,MAAyBwH,EAAQE,qBAErC,SAASC,EAA8C7H,EAAIC,GAAO,GAAS,EAALD,EAAQ,CAC1E,MAAM8H,EAAO5H,QACbA,MAAsB,EAAG,SAAU,IACnCA,MAAkB,QAAS,SAA+EM,GAA+E,OAArEN,MAAqB4H,GAAuB5H,MAAqB,GAAmB6B,cAAcvB,KACtNN,MAAc,GACdA,QACF,GAAS,EAALF,EAAQ,CACV,MAAM+H,EAAU7H,MAAqB,GACrCA,MAAkB6H,EAAQC,iBAC1B9H,MAAiB,GACjBA,MAAyB6H,EAAQE,iBAErC,SAASC,EAAqClI,EAAIC,GAKhD,GALgE,EAALD,IACzDE,MAAsB,EAAG,MAAO,IAChCA,MAAkB,EAAGqH,EAA+C,EAAG,EAAG,SAAU,IACpFrH,MAAkB,EAAG2H,EAA+C,EAAG,EAAG,SAAU,IACpF3H,SACO,EAALF,EAAQ,CACV,MAAMmI,EAAUjI,QAChBA,MAAiB,GACjBA,MAAkB,OAAQiI,EAAQC,gBAClClI,MAAiB,GACjBA,MAAkB,OAAQiI,EAAQE,aAEtC,IAAIC,EAAY,MAChB,SAAWA,GACPA,EAAaA,EAAY,IAAU,GAAK,MACxCA,EAAaA,EAAY,KAAW,GAAK,OACzCA,EAAaA,EAAY,KAAW,GAAK,OACzCA,EAAaA,EAAY,KAAW,GAAK,OAJ7C,CAKGA,IAAiBA,EAAe,KAN/BA,GAAY,GAOhB,MAAMC,EACFC,YAAY9D,EAAGC,EAAGC,EAAGzC,GACjBsG,KAAK/D,EAAIA,EACT+D,KAAK9D,EAAIA,EACT8D,KAAK7D,EAAIA,EACT6D,KAAKtG,EAAIA,GAGjB,MAAMuG,EACFF,YAAY3E,EAAG7C,EAAGD,EAAGoB,GACjBsG,KAAK5E,EAAIA,EACT4E,KAAKzH,EAAIA,EACTyH,KAAK1H,EAAIA,EACT0H,KAAKtG,EAAIA,GAGjB,MAAMwG,EACFH,YAAY3E,EAAG7C,EAAG8C,EAAG3B,GACjBsG,KAAK5E,EAAIA,EACT4E,KAAKzH,EAAIA,EACTyH,KAAK3E,EAAIA,EACT2E,KAAKtG,EAAIA,GAGjB,MAAMyG,EACFJ,YAAY3F,EAAGC,EAAGC,EAAGC,EAAGb,EAAI,GACxBsG,KAAK5F,EAAIA,EACT4F,KAAK3F,EAAIA,EACT2F,KAAK1F,EAAIA,EACT0F,KAAKzF,EAAIA,EACTyF,KAAKtG,EAAIA,G,IAqEX0G,E,MAAN,MAAMA,EACFL,cACIC,KAAKK,SAAW,IAAIC,MAExBC,YAAYC,GACR,MAAMC,EAAQD,EAAME,OAAOD,MAC3B,QAAgBE,IAAZX,KAAKY,GACLZ,KAAKK,SAASQ,KAAKJ,OAElB,CACD,MAAMK,EAAUC,WAAWN,GAC3BT,KAAKK,SAASQ,KAAK,CAAEvI,EAAGwI,EAASF,GAAIZ,KAAKY,O,OAItDR,EAAcY,UAAO,SAA+BC,GAAK,OAAO,IAAKA,GAAKb,IAC1EA,EAAcc,UAAqBzJ,MAAyB,CAAE0J,KAAMf,EAAegB,UAAW,CAAC,CAAC,GAAI,OAAQ,KAAMC,aAAc,SAAoC9J,EAAIC,GAAgB,EAALD,GAC3KE,MAAkB,QAAS,SAAgDM,GAAU,OAAOP,EAAI+I,YAAYxI,MAC3GuJ,OAAQ,CAAEV,GAAI,KAAMW,KAAM,QAAUC,QAAS,CAAEnB,SAAU,cAlB5DD,G,GAwCAqB,E,MAAN,MAAMA,EACF1B,YAAY2B,GACR1B,KAAK0B,MAAQA,EACb1B,KAAK2B,QAAU,IAAIrB,MACnBN,KAAK4B,UAAY,IAAItB,MACrBN,KAAKK,SAAW,IAAIC,MACpBN,KAAK6B,aAAgBrB,GAAUR,KAAK8B,KAAKtB,GACzCR,KAAK+B,aAAe,IAAM/B,KAAKgC,OAEnCC,UAAUzB,GACNR,KAAKkC,MAAM1B,GAEf2B,WAAW3B,GACPR,KAAKkC,MAAM1B,GAEfsB,KAAKtB,GACDA,EAAM4B,iBACNpC,KAAKqC,UAAU7B,GAEnB0B,MAAM1B,GACFR,KAAKqC,UAAU7B,GACfA,EAAM8B,kBACNC,SAASC,iBAAiB,UAAWxC,KAAK+B,cAC1CQ,SAASC,iBAAiB,WAAYxC,KAAK+B,cAC3CQ,SAASC,iBAAiB,YAAaxC,KAAK6B,cAC5CU,SAASC,iBAAiB,YAAaxC,KAAK6B,cAC5C7B,KAAK4B,UAAUf,OAEnBmB,OACIO,SAASE,oBAAoB,UAAWzC,KAAK+B,cAC7CQ,SAASE,oBAAoB,WAAYzC,KAAK+B,cAC9CQ,SAASE,oBAAoB,YAAazC,KAAK6B,cAC/CU,SAASE,oBAAoB,YAAazC,KAAK6B,cAC/C7B,KAAK2B,QAAQd,OAEjB6B,KAAKlC,GACD,MAAMmC,EAAW3C,KAAK0B,MAAMkB,cAAcC,wBAE1C,YAD+BlC,IAAhBH,EAAMsC,MAAuBtC,EAAMsC,MAAQtC,EAAMuC,QAAQ,GAAGD,OAC5DH,EAASK,KAAOC,OAAOC,YAE1CC,KAAK3C,GACD,MAAMmC,EAAW3C,KAAK0B,MAAMkB,cAAcC,wBAE1C,YAD+BlC,IAAhBH,EAAM4C,MAAuB5C,EAAM4C,MAAQ5C,EAAMuC,QAAQ,GAAGK,OAC5DT,EAASU,IAAMJ,OAAOK,YAEzCjB,UAAU7B,GACN,MAAM+C,EAAQvD,KAAK0B,MAAMkB,cAAcY,YACjCC,EAASzD,KAAK0B,MAAMkB,cAAcc,aAClCC,EAAIC,KAAKC,IAAI,EAAGD,KAAKE,IAAI9D,KAAK0C,KAAKlC,GAAQ+C,IAC3CjJ,EAAIsJ,KAAKC,IAAI,EAAGD,KAAKE,IAAI9D,KAAKmD,KAAK3C,GAAQiD,SAChC9C,IAAbX,KAAK+D,UAAkCpD,IAAbX,KAAKgE,IAC/BhE,KAAKK,SAASQ,KAAK,CAAEtI,EAAGoL,EAAIJ,EAAOjL,EAAI,EAAIgC,EAAImJ,EAASM,IAAK/D,KAAK+D,IAAKC,IAAKhE,KAAKgE,WAE/DrD,IAAbX,KAAK+D,UAAkCpD,IAAbX,KAAKgE,IACpChE,KAAKK,SAASQ,KAAK,CAAEvI,EAAGgC,EAAImJ,EAAQO,IAAKhE,KAAKgE,WAE5BrD,IAAbX,KAAK+D,UAAkCpD,IAAbX,KAAKgE,KACpChE,KAAKK,SAASQ,KAAK,CAAEvI,EAAGqL,EAAIJ,EAAOQ,IAAK/D,KAAK+D,O,OAIzDtC,EAAgBT,UAAO,SAAiCC,GAAK,OAAO,IAAKA,GAAKQ,GAAiBhK,MAAyBA,SACxHgK,EAAgBP,UAAqBzJ,MAAyB,CAAE0J,KAAMM,EAAiBL,UAAW,CAAC,CAAC,GAAI,SAAU,KAAMC,aAAc,SAAsC9J,EAAIC,GAAgB,EAALD,GACnLE,MAAkB,YAAa,SAAsDM,GAAU,OAAOP,EAAIyK,UAAUlK,IAApHN,CAAgI,aAAc,SAAuDM,GAAU,OAAOP,EAAI2K,WAAWpK,MACpOuJ,OAAQ,CAAEyC,IAAK,MAAOC,IAAK,MAAO3L,OAAQ,UAAYmJ,QAAS,CAAEG,QAAS,UAAWC,UAAW,YAAavB,SAAU,cAhE1HoB,G,GAsGN,MAAMwC,EACFlE,YAAY3E,EAAG7C,EAAGD,EAAGoB,GACjBsG,KAAK5E,EAAIA,EACT4E,KAAKzH,EAAIA,EACTyH,KAAK1H,EAAIA,EACT0H,KAAKtG,EAAIA,GAGjB,MAAMwK,EACFnE,YAAY3E,EAAG7C,EAAGD,EAAGoB,GACjBsG,KAAK5E,EAAIA,EACT4E,KAAKzH,EAAIA,EACTyH,KAAK1H,EAAIA,EACT0H,KAAKtG,EAAIA,G,IAIXyK,E,MAAN,MAAMA,EACFpE,cACIC,KAAKoE,OAAS,KAElBC,UAAUD,GACFpE,KAAKoE,QAAUpE,KAAKoE,SAAWA,GAA0C,WAAhCpE,KAAKoE,OAAOE,iBACrDtE,KAAKoE,OAAOG,cAEhBvE,KAAKoE,OAASA,EAElBI,UAAUC,GACN,MAAMrJ,EAAIqJ,EAAKrJ,EAAG7C,EAAIkM,EAAKlM,EAAGD,EAAImM,EAAKnM,EAAGoB,EAAI+K,EAAK/K,EACnD,GAAU,IAANpB,EACA,OAAO,IAAI4H,EAAK9E,EAAG,EAAG,EAAG1B,GAExB,GAAU,IAANnB,GAAiB,IAAND,EAChB,OAAO,IAAI4H,EAAK9E,EAAG,EAAG,EAAG1B,GAExB,CACD,MAAM2B,EAAI/C,GAAK,EAAIC,GAAK,EACxB,OAAO,IAAI2H,EAAK9E,EAAG9C,EAAIC,GAAK,EAAIqL,KAAKc,IAAI,EAAIrJ,EAAI,IAAKA,EAAG3B,IAGjEiL,UAAUC,GACN,MAAMxJ,EAAIwI,KAAKE,IAAIc,EAAKxJ,EAAG,GAAI7C,EAAIqL,KAAKE,IAAIc,EAAKrM,EAAG,GAC9C8C,EAAIuI,KAAKE,IAAIc,EAAKvJ,EAAG,GAAI3B,EAAIkK,KAAKE,IAAIc,EAAKlL,EAAG,GACpD,GAAU,IAAN2B,EACA,OAAO,IAAI4E,EAAK7E,EAAG,EAAG,EAAG1B,GAExB,CACD,MAAMpB,EAAI+C,EAAI9C,GAAK,EAAIqL,KAAKc,IAAI,EAAIrJ,EAAI,IAAM,EAC9C,OAAO,IAAI4E,EAAK7E,EAAG,GAAK9C,EAAI+C,GAAK/C,EAAGA,EAAGoB,IAG/CmL,WAAWJ,GACP,IAAIxI,EAAGC,EAAGC,EACV,MAAMf,EAAIqJ,EAAKrJ,EAAG7C,EAAIkM,EAAKlM,EAAGD,EAAImM,EAAKnM,EAAGoB,EAAI+K,EAAK/K,EAC7CoL,EAAIlB,KAAKmB,MAAU,EAAJ3J,GACf4J,EAAQ,EAAJ5J,EAAQ0J,EACZG,EAAI3M,GAAK,EAAIC,GACb2M,EAAI5M,GAAK,EAAI0M,EAAIzM,GACjB0I,EAAI3I,GAAK,GAAK,EAAI0M,GAAKzM,GAC7B,OAAQuM,EAAI,GACR,KAAK,EACD7I,EAAI3D,EAAG4D,EAAI+E,EAAG9E,EAAI8I,EAClB,MACJ,KAAK,EACDhJ,EAAIiJ,EAAGhJ,EAAI5D,EAAG6D,EAAI8I,EAClB,MACJ,KAAK,EACDhJ,EAAIgJ,EAAG/I,EAAI5D,EAAG6D,EAAI8E,EAClB,MACJ,KAAK,EACDhF,EAAIgJ,EAAG/I,EAAIgJ,EAAG/I,EAAI7D,EAClB,MACJ,KAAK,EACD2D,EAAIgF,EAAG/E,EAAI+I,EAAG9I,EAAI7D,EAClB,MACJ,KAAK,EACD2D,EAAI3D,EAAG4D,EAAI+I,EAAG9I,EAAI+I,EAClB,MACJ,QACIjJ,EAAI,EAAGC,EAAI,EAAGC,EAAI,EAE1B,OAAO,IAAI2D,EAAK7D,EAAGC,EAAGC,EAAGzC,GAE7ByL,UAAUC,GAIN,OAAO,IAAItF,GAHA,EAAIsF,EAAKhL,IAAM,EAAIgL,EAAK7K,IACxB,EAAI6K,EAAK/K,IAAM,EAAI+K,EAAK7K,IACxB,EAAI6K,EAAK9K,IAAM,EAAI8K,EAAK7K,GACV6K,EAAK1L,GAElC2L,WAAWC,GACP,MAAM/K,EAAI,EAAIqJ,KAAKC,IAAIyB,EAAKrJ,EAAGqJ,EAAKpJ,EAAGoJ,EAAKnJ,GAC5C,OAAU,IAAN5B,EACO,IAAI4F,EAAK,EAAG,EAAG,EAAG,EAAGmF,EAAK5L,GAM1B,IAAIyG,GAHA,EAAImF,EAAKrJ,EAAI1B,IAAM,EAAIA,IACvB,EAAI+K,EAAKpJ,EAAI3B,IAAM,EAAIA,IACvB,EAAI+K,EAAKnJ,EAAI5B,IAAM,EAAIA,GACTA,EAAG+K,EAAK5L,GAGzC6L,WAAWD,GACP,IAAIlK,EAAG7C,EACP,MAAM0D,EAAI2H,KAAKE,IAAIwB,EAAKrJ,EAAG,GAAIC,EAAI0H,KAAKE,IAAIwB,EAAKpJ,EAAG,GAC9CC,EAAIyH,KAAKE,IAAIwB,EAAKnJ,EAAG,GAAIzC,EAAIkK,KAAKE,IAAIwB,EAAK5L,EAAG,GAC9CmK,EAAMD,KAAKC,IAAI5H,EAAGC,EAAGC,GAAI2H,EAAMF,KAAKE,IAAI7H,EAAGC,EAAGC,GAC9C7D,EAAIuL,EAAK2B,EAAI3B,EAAMC,EAEzB,GADAvL,EAAa,IAARsL,EAAa,EAAI2B,EAAI3B,EACtBA,IAAQC,EACR1I,EAAI,MAEH,CACD,OAAQyI,GACJ,KAAK5H,EACDb,GAAKc,EAAIC,GAAKqJ,GAAKtJ,EAAIC,EAAI,EAAI,GAC/B,MACJ,KAAKD,EACDd,GAAKe,EAAIF,GAAKuJ,EAAI,EAClB,MACJ,KAAKrJ,EACDf,GAAKa,EAAIC,GAAKsJ,EAAI,EAClB,MACJ,QACIpK,EAAI,EAEZA,GAAK,EAET,OAAO,IAAI6E,EAAK7E,EAAG7C,EAAGD,EAAGoB,GAE7B+L,UAAUH,EAAMI,GAEZ,IAAIC,EAAM,KAAQ,GAAK,GAAOL,EAAKrJ,GAAK,GAAOqJ,EAAKpJ,GAAK,EAAKoJ,EAAKnJ,GAAGyJ,SAAS,IAAIC,OAAO,GAK1F,OAJIH,IACAC,IAAS,IAAU/B,KAAKkC,MAAe,IAATR,EAAK5L,IAAUkM,SAAS,IAAIC,OAAO,IAG9DF,EAEXI,cAAcX,GACV,OAAO,IAAIjF,EAAKiF,EAAKhL,EAAI,IAAKgL,EAAK/K,EAAI,IAAK+K,EAAK9K,EAAI,IAAK8K,EAAK7K,EAAI,IAAK6K,EAAK1L,GAEjFsM,gBAAgBZ,GACZ,OAAO,IAAIjF,EAAKyD,KAAKmB,MAAe,IAATK,EAAKhL,GAAUwJ,KAAKmB,MAAe,IAATK,EAAK/K,GAAUuJ,KAAKmB,MAAe,IAATK,EAAK9K,GAAUsJ,KAAKmB,MAAe,IAATK,EAAK7K,GAAU6K,EAAK1L,GAEjIuM,gBAAgBX,GACZ,OAAO,IAAIxF,EAAK8D,KAAKkC,MAAe,IAATR,EAAKrJ,GAAU2H,KAAKkC,MAAe,IAATR,EAAKpJ,GAAU0H,KAAKkC,MAAe,IAATR,EAAKnJ,GAAUmJ,EAAK5L,GAEvGwM,aAAaC,EAAc,GAAIT,GAAY,GACvC,IAAIjB,EAAO,KACX0B,GAAeA,GAAe,IAAIC,cAClC,MAAMC,EAAgB,CAClB,CACIC,GAAI,4FACJC,MAAO,SAAUC,GACb,OAAO,IAAI1G,EAAK2G,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKE,MAAM3F,WAAWyF,EAAW,KAAO,EAAIzF,WAAWyF,EAAW,OAE3L,CACCF,GAAI,0FACJC,MAAO,SAAUC,GACb,OAAO,IAAItG,EAAKuG,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKE,MAAM3F,WAAWyF,EAAW,KAAO,EAAIzF,WAAWyF,EAAW,QAK9LH,EAAcM,KADdjB,EACmB,CACfY,GAAI,sEACJC,MAAO,SAAUC,GACb,OAAO,IAAI1G,EAAK2G,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,IAAM,KAAM,IAAM,OAKpJ,CACfF,GAAI,qDACJC,MAAO,SAAUC,GACb,OAAO,IAAI1G,EAAK2G,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAI,IAAM,IAAK,MAIrIH,EAAcM,KAAK,CACfL,GAAI,4CACJC,MAAO,SAAUC,GACb,OAAO,IAAI1G,EAAK2G,SAASD,EAAW,GAAKA,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAKA,EAAW,GAAI,IAAM,IAAKC,SAASD,EAAW,GAAKA,EAAW,GAAI,IAAM,IAAK,MAGjL,IAAK,MAAMI,KAAOP,EACd,GAAIA,EAAcQ,eAAeD,GAAM,CACnC,MAAME,EAAST,EAAcO,GACvBG,EAAQD,EAAOR,GAAGU,KAAKb,GAAcc,EAAQF,GAASD,EAAOP,MAAMQ,GACzE,GAAIE,EAOA,OANIA,aAAiBnH,EACjB2E,EAAOzE,KAAKuF,WAAW0B,GAElBA,aAAiB/G,IACtBuE,EAAOzE,KAAK2E,UAAUsC,IAEnBxC,EAInB,OAAOA,EAEXyC,aAAazC,EAAMyC,EAAcC,GAI7B,OAHqB,SAAjBD,IACAA,EAAezC,EAAK/K,EAAI,EAAI,OAAS,OAEjCwN,GACJ,IAAK,OACD,MAAMtC,EAAO5E,KAAKwE,UAAUC,GACtB7J,EAAW,IAAIsF,EAAK0D,KAAKkC,MAAiB,IAAVlB,EAAKxJ,GAAWwI,KAAKkC,MAAe,IAATlB,EAAKrM,GAAUqL,KAAKkC,MAAe,IAATlB,EAAKvJ,GAAUuI,KAAKkC,MAAe,IAATlB,EAAKlL,GAAW,KACrI,OAAI+K,EAAK/K,EAAI,GAAsB,WAAjByN,EACP,QAAUvM,EAASQ,EAAI,IAAMR,EAASrC,EAAI,KAAOqC,EAASS,EAAI,KACjET,EAASlB,EAAI,IAGV,OAASkB,EAASQ,EAAI,IAAMR,EAASrC,EAAI,KAAOqC,EAASS,EAAI,KAE5E,IAAK,OACD,MAAMiK,EAAOtF,KAAKiG,gBAAgBjG,KAAK6E,WAAWJ,IAClD,OAAIA,EAAK/K,EAAI,GAAsB,WAAjByN,EACP,QAAU7B,EAAKrJ,EAAI,IAAMqJ,EAAKpJ,EAAI,IAAMoJ,EAAKnJ,EAAI,IACpDyH,KAAKkC,MAAe,IAATR,EAAK5L,GAAW,IAAM,IAG9B,OAAS4L,EAAKrJ,EAAI,IAAMqJ,EAAKpJ,EAAI,IAAMoJ,EAAKnJ,EAAI,IAE/D,QACI,MAAMuJ,EAA8B,WAAjByB,GAA8C,WAAjBA,EAChD,OAAOnH,KAAKyF,UAAUzF,KAAKiG,gBAAgBjG,KAAK6E,WAAWJ,IAAQiB,K,OAInFvB,EAAmBnD,UAAO,SAAoCC,GAAK,OAAO,IAAKA,GAAKkD,IACpFA,EAAmBiD,WAAsB3P,MAA0B,CAAE4P,MAAOlD,EAAoBmD,QAASnD,EAAmBnD,YAxNtHmD,G,GA8NAoD,E,MAAN,MAAMA,EACFxH,YAAY2B,EAAO8F,EAAOC,GACtBzH,KAAK0B,MAAQA,EACb1B,KAAKwH,MAAQA,EACbxH,KAAKyH,QAAUA,EACfzH,KAAK0H,QAAS,EACd1H,KAAK2H,gBAAkB,GACvB3H,KAAK4H,kBAAoB,GACzB5H,KAAK6H,kBAAoB,CACrBhI,EAAaiI,IACbjI,EAAakI,KACblI,EAAamI,KACbnI,EAAaoI,MAEjBjI,KAAKkI,sBAAuB,EAEhCC,UAAU3H,GACFR,KAAKoI,MAAiC,UAAzBpI,KAAKsE,iBAClBtE,KAAKhB,cAAcwB,GAG3B6H,YAAY7H,GACJR,KAAKoI,MAAiC,UAAzBpI,KAAKsE,iBAClBtE,KAAK1G,cAAckH,GAG3B8H,WACItI,KAAK3H,OAAS,IAAI4L,EAAe,EAAG,EAAG,EAAG,GAG1CjE,KAAKuI,aAAe,IAAIrE,EAFPlE,KAAKwI,UAAU5F,cAAcY,aAAe,IAEXxD,KAAKyI,QAAS,IAD7CzI,KAAK0I,YAAY9F,cAAcY,aAAe,KAG7DxD,KAAK7F,OADL6F,KAAK2I,cACS9I,EAAaoI,KAEE,SAAxBjI,KAAK4I,eACI/I,EAAakI,KAEE,SAAxB/H,KAAK4I,eACI/I,EAAamI,KAGbnI,EAAaiI,IAE/B9H,KAAK6I,kBAAqBrI,IAAYR,KAAK8I,YAAYtI,IACvDR,KAAK+I,eAAiB,KAAQ/I,KAAKgJ,YACnChJ,KAAKiJ,WAAWjJ,KAAKkJ,cAAc,GAEvCC,cACInJ,KAAKuE,cAET6E,kBACyB,MAAjBpJ,KAAKyI,SAA4C,WAAzBzI,KAAKsE,kBAG7BtE,KAAKuI,aAAe,IAAIrE,EAFPlE,KAAKwI,UAAU5F,cAAcY,aAAe,IAEXxD,KAAKyI,QAAS,IAD7CzI,KAAK0I,YAAY9F,cAAcY,aAAe,KAEjExD,KAAKqJ,mBAAkB,GACvBrJ,KAAKwH,MAAM8B,iBAGnBL,WAAWhC,EAAOpG,GAAO,GACrBb,KAAKyH,QAAQpD,UAAUrE,MAClBA,KAAKuD,QACNvD,KAAKyI,QAAUzI,KAAKuJ,oBAAoB3G,cAAcY,aAErDxD,KAAKyD,SACNzD,KAAKyD,OAAS,KAElBzD,KAAKwJ,gBAAgBvC,GACrBjH,KAAK/B,mBAAmBgJ,EAAOpG,GAC/Bb,KAAKyJ,kBAETlF,cACIvE,KAAK0J,mBAETC,YAAYC,EAAUC,EAAY5C,EAAOwB,EAASqB,EAAUxF,EAAiByF,EAAiBC,EAAarB,EAAenO,EAAgBoO,EAAgBqB,EAAgBC,EAAmBC,EAAoBC,EAAqBC,EAAwBC,EAAYC,EAAkBC,EAA2B3L,EAAe9F,EAAgBuF,EAAqBrF,EAAyByF,EAAsBD,EAA2BmB,EAAYL,EAAiBC,EAAgBG,EAAgBT,EAAqBC,EAAoBhB,EAAkBrF,EAAuBI,EAAsB4E,EAA0B2M,GAChnBzK,KAAKwJ,gBAAgBvC,GACrBjH,KAAK0K,aAAaV,GAClBhK,KAAK0H,OAAyB,KAvdtC,WACI,IAAIiD,EAAK,GACgB,oBAAdC,YACPD,EAAKC,UAAUC,UAAUzE,eAE7B,MAAM0E,EAAOH,EAAGI,QAAQ,SACxB,OAAID,EAAO,GAEArE,SAASkE,EAAGK,UAAUF,EAAO,EAAGH,EAAGI,QAAQ,IAAKD,IAAQ,IA+chDG,GACfjL,KAAKkL,kBAAoBtB,EACzB5J,KAAKuJ,oBAAsBM,EAC3B7J,KAAKiK,eAAiBA,EACtBjK,KAAK2I,cAAgBA,EACrB3I,KAAKxF,eAAiBA,EACtBwF,KAAK4I,eAAiBA,EACtB5I,KAAKsE,gBAAkBA,EACvBtE,KAAKkK,kBAAoBA,EACzBlK,KAAKmK,mBAAqBA,EAC1BnK,KAAKoK,oBAAsBA,EAC3BpK,KAAKkI,qBAAuBmC,EAC5BrK,KAAKuD,MAAQvD,KAAKyI,QAAUhC,SAASgC,EAAS,IAC9CzI,KAAKyD,OAASzD,KAAK8J,SAAWrD,SAASqD,EAAU,IACjD9J,KAAKsK,WAAaA,EAClBtK,KAAKuK,iBAAmB9D,SAAS8D,EAAkB,IACnDvK,KAAKJ,WAAaA,EAClBI,KAAKR,eAAiBA,EACtBQ,KAAKT,gBAAkBA,EACvBS,KAAKL,eAAiBA,EACtBK,KAAKb,mBAAqBA,EAC1Ba,KAAKd,oBAAsBA,EAC3Bc,KAAKmL,cAAgBpB,GAAmB,OACxC/J,KAAKoL,gBAAgBvM,EAAe9F,GACpCiH,KAAK1B,oBAAsBA,EAC3B0B,KAAK/G,wBAA0BA,EAC/B+G,KAAKtB,qBAAuBA,EAC5BsB,KAAKvB,0BAA4BA,EACjCuB,KAAK7B,iBAAmBA,EACxB6B,KAAK9G,qBAAuBA,EAC5B8G,KAAKlH,sBAAwBA,EAC7BkH,KAAKlC,yBAA2BA,EAChCkC,KAAKyK,iBAAmBA,EACnBD,IACDxK,KAAK4H,kBAAoB,GAEL,WAApBtD,IACAtE,KAAK2H,gBAAkB,EACvB3H,KAAK4H,kBAAoB,GAEN,QAAnBgB,GACmB,WAAnBpO,GAAkD,WAAnBA,IAC/BwF,KAAKxF,eAAiB,YAG9BkQ,aAAaW,GACT,OAAQA,EAAKzF,WAAW0F,eACpB,IAAK,IACL,IAAK,IACL,IAAK,QACDtL,KAAKgK,YAAc,EACnB,MACJ,IAAK,IACL,IAAK,IACL,IAAK,YACDhK,KAAKgK,YAAc,EACnB,MACJ,IAAK,IACL,IAAK,IACL,IAAK,UACDhK,KAAKgK,YAAc,EACnB,MACJ,QACIhK,KAAKgK,YAAc,GAG/BR,gBAAgBvC,GACZjH,KAAKkJ,aAAejC,EAExBmE,gBAAgBvM,EAAe9F,GAC3BiH,KAAKnB,cAAgBA,EACrBmB,KAAKjH,eAAiBA,EAE1BkF,mBAAmBwC,EAAOI,GAAO,EAAM0K,GAAS,GAC5C,IAAI9G,EACwB,WAAxBzE,KAAKxF,gBAAuD,WAAxBwF,KAAKxF,gBACzCiK,EAAOzE,KAAKyH,QAAQvB,aAAazF,GAAO,GACnCgE,GAASzE,KAAKyE,OACfA,EAAOzE,KAAKyH,QAAQvB,aAAazF,GAAO,KAI5CgE,EAAOzE,KAAKyH,QAAQvB,aAAazF,GAAO,GAEvCgE,GAASzE,KAAKyE,OACfA,EAAOzE,KAAKyH,QAAQvB,aAAalG,KAAKmL,eAAe,IAErD1G,IACAzE,KAAKyE,KAAOA,EACZzE,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACG,QAAxB4E,KAAK4I,gBAAoD,aAAxB5I,KAAKxF,iBACtCwF,KAAKyE,KAAK/K,EAAI,GAElBsG,KAAKqJ,kBAAkBxI,EAAM0K,IAGrCvC,WAC0B,UAAlBhJ,KAAK2C,SACL3C,KAAKyL,oBAEyB,WAAzBzL,KAAKsE,iBACVtE,KAAK0J,mBAGbxR,UAAUG,GACN2H,KAAKkL,kBAAkBQ,cAAc,CAAErT,OAAQA,EAAQ4O,MAAOjH,KAAK2L,cAEvE1T,YAAYI,GACR2H,KAAKkL,kBAAkBU,gBAAgB,CAAEvT,OAAQA,EAAQ4O,MAAOjH,KAAK2L,cAEzE7C,YAAYtI,IACJR,KAAKoI,MACJpI,KAAK0H,QAAmC,UAAzB1H,KAAKsE,iBACrB9D,EAAME,SAAWV,KAAKuJ,oBAAoB3G,eACzC5C,KAAK6L,aAAa7L,KAAK0B,MAAMkB,cAAepC,EAAME,SAClDV,KAAK6L,aAAa7L,KAAKuJ,oBAAoB3G,cAAepC,EAAME,SACS,IAA1EV,KAAKkK,kBAAkB4B,OAAQC,GAASA,IAASvL,EAAME,QAAQ1H,SAC3DgH,KAAKmK,mBACLnK,KAAKkL,kBAAkBc,cAAchM,KAAK2L,cAG1C3L,KAAKyE,KAAO,KACZzE,KAAK/B,mBAAmB+B,KAAKkJ,cAAc,GACvClJ,KAAK2I,eACL3I,KAAKkL,kBAAkBe,YAAYjM,KAAKkM,WAE5ClM,KAAKkL,kBAAkBiB,aAAanM,KAAKkJ,cACzClJ,KAAKkL,kBAAkBkB,iBAEvBpM,KAAKoK,qBACLpK,KAAK0J,oBAIjBpQ,cAAckH,GACVA,EAAM8B,kBACFtC,KAAK2L,aACL3L,KAAKkL,kBAAkBc,cAAchM,KAAK2L,aAEjB,UAAzB3L,KAAKsE,iBACLtE,KAAK0J,mBAGb1K,cAAcwB,GACVR,KAAKyE,KAAO,KACZjE,EAAM8B,kBACNtC,KAAKkL,kBAAkBkB,gBACvBpM,KAAK/B,mBAAmB+B,KAAKkJ,cAAc,GACd,UAAzBlJ,KAAKsE,kBACDtE,KAAK2I,eACL3I,KAAKkL,kBAAkBe,YAAYjM,KAAKkM,WAE5ClM,KAAKkL,kBAAkBiB,aAAanM,KAAKkJ,cAAc,GACvDlJ,KAAK0J,oBAGbnM,eAAe8O,GACX,MAAMC,EAAmBtM,KAAK6H,kBAAkB7O,QAC3CgH,KAAK2I,cAAgB,EAAI,GACxB4D,IAAgBvM,KAAK6H,kBAAkBkD,QAAQ/K,KAAK7F,QAAUkS,GAChEC,EAAoBA,GAAoBA,EAC5CtM,KAAK7F,OAAS6F,KAAK6H,kBAAkB0E,GAEzCvU,cAAcyI,GACVT,KAAKyE,KAAKlM,EAAIkI,EAAMlI,EAAIkI,EAAMsD,IAC9B/D,KAAKyE,KAAKnM,EAAImI,EAAMnI,EAAImI,EAAMuD,IAC9BhE,KAAKqJ,oBACLrJ,KAAKkL,kBAAkBsB,cAAc,CACjCnU,OAAQ,YACRoI,MAAOT,KAAKyE,KAAKnM,EACjB2O,MAAOjH,KAAK2L,cAEhB3L,KAAKkL,kBAAkBsB,cAAc,CACjCnU,OAAQ,aACRoI,MAAOT,KAAKyE,KAAKlM,EACjB0O,MAAOjH,KAAK2L,cAGpBc,YAAYhM,GACRT,KAAKyE,KAAKrJ,EAAIqF,EAAMnI,EAAImI,EAAMsD,IAC9B/D,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,oBACLrJ,KAAKkL,kBAAkBsB,cAAc,CACjCnU,OAAQ,MACRoI,MAAOT,KAAKyE,KAAKrJ,EACjB6L,MAAOjH,KAAK2L,cAGpBe,cAAcjM,GACVT,KAAKyE,KAAKnM,EAAImI,EAAMnI,EAAImI,EAAMsD,IAC9B/D,KAAKqJ,oBACLrJ,KAAKkL,kBAAkBsB,cAAc,CACjCnU,OAAQ,QACRoI,MAAOT,KAAKyE,KAAKnM,EACjB2O,MAAOjH,KAAK2L,cAGpBgB,cAAclM,GACVT,KAAKyE,KAAK/K,EAAI+G,EAAMnI,EAAImI,EAAMsD,IAC9B/D,KAAKqJ,oBACLrJ,KAAKkL,kBAAkBsB,cAAc,CACjCnU,OAAQ,QACRoI,MAAOT,KAAKyE,KAAK/K,EACjBuN,MAAOjH,KAAK2L,cAGpBhP,WAAW8D,GACP,GAAc,OAAVA,EACAT,KAAKqJ,wBAEJ,CACG5I,GAAsB,MAAbA,EAAM,KACfA,EAAQ,IAAMA,GAElB,IAAImM,EAAW,iCACa,WAAxB5M,KAAKxF,iBACLoS,EAAW,8CAEf,MAAMC,EAAQD,EAASE,KAAKrM,GACxBoM,IACIpM,EAAMzH,OAAS,IACfyH,EAAQ,IAAMA,EAAMuK,UAAU,GACzB+B,MAAM,IACNC,IAAI5S,GAAKA,EAAIA,GACb6S,KAAK,KAEc,WAAxBjN,KAAKxF,iBACLiG,GAASmD,KAAKkC,MAAoB,IAAd9F,KAAKyE,KAAK/K,GAASkM,SAAS,KAEpD5F,KAAK/B,mBAAmBwC,GAAO,GAAM,IAEzCT,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,MACPN,MAAOA,EACPpM,MAAOA,EACPwG,MAAOjH,KAAK2L,eAIxB9P,WAAW4E,GACP,MAAM6E,EAAOtF,KAAKyH,QAAQ5C,WAAW7E,KAAKyE,MACpCoI,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACAvH,EAAKrJ,EAAIwE,EAAMnI,EAAImI,EAAMG,GACzBZ,KAAKyE,KAAOzE,KAAKyH,QAAQlC,WAAWD,GACpCtF,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,MACPN,MAAOA,EACPpM,MAAO6E,EAAKrJ,EACZgL,MAAOjH,KAAK2L,cAGpB5P,YAAY0E,GACR,MAAM6E,EAAOtF,KAAKyH,QAAQ5C,WAAW7E,KAAKyE,MACpCoI,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACAvH,EAAKnJ,EAAIsE,EAAMnI,EAAImI,EAAMG,GACzBZ,KAAKyE,KAAOzE,KAAKyH,QAAQlC,WAAWD,GACpCtF,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,OACPN,MAAOA,EACPpM,MAAO6E,EAAKnJ,EACZ8K,MAAOjH,KAAK2L,cAGpB7P,aAAa2E,GACT,MAAM6E,EAAOtF,KAAKyH,QAAQ5C,WAAW7E,KAAKyE,MACpCoI,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACAvH,EAAKpJ,EAAIuE,EAAMnI,EAAImI,EAAMG,GACzBZ,KAAKyE,KAAOzE,KAAKyH,QAAQlC,WAAWD,GACpCtF,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,QACPN,MAAOA,EACPpM,MAAO6E,EAAKpJ,EACZ+K,MAAOjH,KAAK2L,cAGpB3Q,WAAWyF,GACP,MAAMoM,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACA7M,KAAKyE,KAAKrJ,EAAIqF,EAAMnI,EAAImI,EAAMG,GAC9BZ,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,MACPN,MAAOA,EACPpM,MAAOT,KAAKyE,KAAKrJ,EACjB6L,MAAOjH,KAAK2L,cAGpBxO,aAAasD,GACT,MAAMoM,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACA7M,KAAKyE,KAAKnM,EAAImI,EAAMnI,EAAImI,EAAMG,GAC9BZ,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,QACPN,MAAOA,EACPpM,MAAOT,KAAKyE,KAAKnM,EACjB2O,MAAOjH,KAAK2L,cAGpBpS,aAAakH,GACT,MAAMoM,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACA7M,KAAKyE,KAAK/K,EAAI+G,EAAMnI,EAAImI,EAAMG,GAC9BZ,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,QACPN,MAAOA,EACPpM,MAAOT,KAAKyE,KAAK/K,EACjBuN,MAAOjH,KAAK2L,cAGpBzQ,iBAAiBuF,GACb,MAAMmE,EAAO5E,KAAKyH,QAAQjD,UAAUxE,KAAKyE,MACnCoI,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACAjI,EAAKvJ,EAAIoF,EAAMnI,EAAImI,EAAMG,GACzBZ,KAAKyE,KAAOzE,KAAKyH,QAAQ9C,UAAUC,GACnC5E,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,YACPN,MAAOA,EACPpM,MAAOmE,EAAKvJ,EACZ4L,MAAOjH,KAAK2L,cAGpB1Q,kBAAkBwF,GACd,MAAMmE,EAAO5E,KAAKyH,QAAQjD,UAAUxE,KAAKyE,MACnCoI,GAASnG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,GAC9DiM,IACAjI,EAAKrM,EAAIkI,EAAMnI,EAAImI,EAAMG,GACzBZ,KAAKyE,KAAOzE,KAAKyH,QAAQ9C,UAAUC,GACnC5E,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,EACzB4E,KAAKqJ,qBAETrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,aACPN,MAAOA,EACPpM,MAAOmE,EAAKrM,EACZ0O,MAAOjH,KAAK2L,cAGpB7R,YAAY2G,IACOiG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,KAE9DZ,KAAKoF,KAAKhL,EAAIqG,EAAMnI,EACpB0H,KAAKqJ,mBAAkB,GAAO,GAAM,IAExCrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,OACPN,OAAO,EACPpM,MAAOT,KAAKoF,KAAKhL,EACjB6M,MAAOjH,KAAK2L,cAGpB5R,eAAe0G,IACIiG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,KAE9DZ,KAAKoF,KAAK/K,EAAIoG,EAAMnI,EACpB0H,KAAKqJ,mBAAkB,GAAO,GAAM,IAExCrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,UACPN,OAAO,EACPpM,MAAOT,KAAKoF,KAAK/K,EACjB4M,MAAOjH,KAAK2L,cAGpB3R,cAAcyG,IACKiG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,KAE9DZ,KAAKoF,KAAK9K,EAAImG,EAAMnI,EACpB0H,KAAKqJ,mBAAkB,GAAO,GAAM,IAExCrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,SACPN,OAAO,EACPpM,MAAOT,KAAKoF,KAAK9K,EACjB2M,MAAOjH,KAAK2L,cAGpB1R,aAAawG,IACMiG,MAAMjG,EAAMnI,IAAMmI,EAAMnI,GAAK,GAAKmI,EAAMnI,GAAKmI,EAAMG,KAE9DZ,KAAKoF,KAAK7K,EAAIkG,EAAMnI,EACpB0H,KAAKqJ,mBAAkB,GAAO,GAAM,IAExCrJ,KAAKkL,kBAAkBgC,aAAa,CAChCC,MAAO,QACPN,OAAO,EACPpM,MAAOT,KAAKoF,KAAK7K,EACjB0M,MAAOjH,KAAK2L,cAGpBhT,iBAAiB6H,EAAOC,GACpBD,EAAM8B,kBACDtC,KAAKjH,eAAe+S,OAAQ7E,GAAWA,IAAUxG,GAAQzH,SAC1DgH,KAAKjH,eAAiBiH,KAAKjH,eAAeqU,OAAO3M,GACjDT,KAAKkL,kBAAkBmC,oBAAoBrN,KAAKjH,iBAGxD6E,oBAAoB4C,EAAOC,GACvBD,EAAM8B,kBACNtC,KAAKjH,eAAiBiH,KAAKjH,eAAe+S,OAAQ7E,GAAWA,IAAUxG,GACvET,KAAKkL,kBAAkBmC,oBAAoBrN,KAAKjH,gBAGpD0Q,kBACSzJ,KAAKoI,OACNpI,KAAKoI,MAAO,EACZpI,KAAKsN,QAAS,EACdC,WAAW,KACPvN,KAAKsN,QAAS,EACdtN,KAAKyL,oBACLzL,KAAKwH,MAAM8B,iBACZ,GACHtJ,KAAKkL,kBAAkBsC,cAAa,GAC/BxN,KAAK0H,SACNnF,SAASC,iBAAiB,YAAaxC,KAAK6I,mBAC5CtG,SAASC,iBAAiB,aAAcxC,KAAK6I,oBAEjD5F,OAAOT,iBAAiB,SAAUxC,KAAK+I,iBAG/CW,mBACQ1J,KAAKoI,OACLpI,KAAKoI,MAAO,EACZpI,KAAKkL,kBAAkBsC,cAAa,GAC/BxN,KAAK0H,SACNnF,SAASE,oBAAoB,YAAazC,KAAK6I,mBAC/CtG,SAASE,oBAAoB,aAAczC,KAAK6I,oBAEpD5F,OAAOR,oBAAoB,SAAUzC,KAAK+I,gBACrC/I,KAAKwH,MAAL,WACDxH,KAAKwH,MAAM8B,iBAIvBD,kBAAkBxI,GAAO,EAAM0K,GAAS,EAAMkC,GAAY,GACtD,GAAIzN,KAAKuI,aAAc,CAInB,IAAImF,EAAK9I,EAAMU,EAHU,IAArBtF,KAAKgK,cACLhK,KAAKyE,KAAKlM,EAAI,GAGlB,MAAMoV,EAAa3N,KAAK2L,YAuCxB,GAtCA/G,EAAO5E,KAAKyH,QAAQjD,UAAUxE,KAAKyE,MAC9BzE,KAAK2I,eAID8E,GAKDnI,EAAOtF,KAAKyH,QAAQtC,UAAUnF,KAAKyH,QAAQ1B,cAAc/F,KAAKoF,OAC9DpF,KAAKyE,KAAOzE,KAAKyH,QAAQlC,WAAWD,KALpCA,EAAOtF,KAAKyH,QAAQ5C,WAAW7E,KAAKyE,MACpCzE,KAAKoF,KAAOpF,KAAKyH,QAAQzB,gBAAgBhG,KAAKyH,QAAQpC,WAAWC,KAMrEA,EAAOtF,KAAKyH,QAAQxB,gBAAgBX,GACpCtF,KAAKwL,QAAUxL,KAAKyE,KAAKrJ,GAZzBkK,EAAOtF,KAAKyH,QAAQxB,gBAAgBjG,KAAKyH,QAAQ5C,WAAW7E,KAAKyE,OAcrEiJ,EAAM1N,KAAKyH,QAAQxB,gBAAgBjG,KAAKyH,QAAQ5C,WAAW,IAAI5E,EAAKD,KAAKwL,SAAWxL,KAAKyE,KAAKrJ,EAAG,EAAG,EAAG,KACnGmQ,IACAvL,KAAKpF,SAAW,IAAIsF,EAAK0D,KAAKkC,MAAiB,IAAVlB,EAAKxJ,GAAWwI,KAAKkC,MAAe,IAATlB,EAAKrM,GAAUqL,KAAKkC,MAAe,IAATlB,EAAKvJ,GAAUuI,KAAKkC,MAAe,IAATlB,EAAKlL,GAAW,KACpIsG,KAAKvE,SAAW,IAAIqE,EAAKwF,EAAKrJ,EAAGqJ,EAAKpJ,EAAGoJ,EAAKnJ,EAAGyH,KAAKkC,MAAe,IAATR,EAAK5L,GAAW,KACxEsG,KAAK2I,gBACL3I,KAAKvG,SAAW,IAAI0G,EAAKH,KAAKoF,KAAKhL,EAAG4F,KAAKoF,KAAK/K,EAAG2F,KAAKoF,KAAK9K,EAAG0F,KAAKoF,KAAK7K,EAAGqJ,KAAKkC,MAAoB,IAAd9F,KAAKoF,KAAK1L,GAAW,MAGjHsG,KAAKnD,QAAUmD,KAAKyH,QAAQhC,UAAUH,EADI,WAAxBtF,KAAKxF,gBAEvBwF,KAAKzD,SAAWyD,KAAKvE,SAAS/B,GAEN,SAAxBsG,KAAK4I,gBACD5I,KAAK7F,SAAW0F,EAAakI,MAAQ/H,KAAK7F,SAAW0F,EAAaoI,MAC9DjI,KAAKyE,KAAK/K,EAAI,IACdsG,KAAK7F,OAAS6F,KAAKyE,KAAK/K,EAAI,EAAImG,EAAakI,KAAOlI,EAAaiI,KAI7E9H,KAAK5H,eAAiB,OAASsV,EAAIzR,EAAI,IAAMyR,EAAIxR,EAAI,IAAMwR,EAAIvR,EAAI,IACnE6D,KAAK4N,iBAAmB,OAAStI,EAAKrJ,EAAI,IAAMqJ,EAAKpJ,EAAI,IAAMoJ,EAAKnJ,EAAI,IACxE6D,KAAK2L,YAAc3L,KAAKyH,QAAQP,aAAalH,KAAKyE,KAAMzE,KAAK4I,eAAgB5I,KAAKxF,gBAClFwF,KAAKpH,cAAgBoH,KAAKyH,QAAQP,aAAalH,KAAKyE,KAAM,OAAQ,MAC9DzE,KAAK7F,SAAW0F,EAAaoI,KAC7BjI,KAAKkM,UAAY,QAGjB,GAA4B,WAAxBlM,KAAKxF,gBAAuD,YAAxBwF,KAAKxF,gBACjB,WAAxBwF,KAAKxF,eAA6B,CAClC,MAAMqT,EAAQjK,KAAKkC,MAAoB,IAAd9F,KAAKoF,KAAK1L,GAAW,IAC9CsG,KAAKkM,UAAa,SAAQlM,KAAKoF,KAAKhL,KAAK4F,KAAKoF,KAAK/K,KAAK2F,KAAKoF,KAAK9K,KAAK0F,KAAKoF,KAAK7K,KAAKsT,UAGtF7N,KAAKkM,UAAa,QAAOlM,KAAKoF,KAAKhL,KAAK4F,KAAKoF,KAAK/K,KAAK2F,KAAKoF,KAAK9K,KAAK0F,KAAKoF,KAAK7K,KAGxFyF,KAAK3H,OAAS,IAAI4L,GAAgBjE,KAAKwL,SAAWxL,KAAKyE,KAAKrJ,GAAK4E,KAAKuI,aAAanN,EAAI,EAAG4E,KAAKyE,KAAKlM,EAAIyH,KAAKuI,aAAahQ,EAAI,GAAI,EAAIyH,KAAKyE,KAAKnM,GAAK0H,KAAKuI,aAAajQ,EAAI,EAAG0H,KAAKyE,KAAK/K,EAAIsG,KAAKuI,aAAa7O,EAAI,GAC9MmH,GAAQ8M,IAAe3N,KAAK2L,cACxB3L,KAAK2I,eACL3I,KAAKkL,kBAAkBe,YAAYjM,KAAKkM,WAE5ClM,KAAKkL,kBAAkBiB,aAAanM,KAAK2L,eAKrDF,oBACI,GAA6B,WAAzBzL,KAAKsE,gBACLtE,KAAK2C,SAAW,eAEf,CACD,IAAyCmL,EAArCnL,EAAW,SAAUoL,EAAY,GACjCC,EAAa,KAAMC,EAAgB,KACnCC,EAAOlO,KAAKuJ,oBAAoB3G,cAAcoL,WAClD,MAAMG,EAAenO,KAAKoO,cAAcxL,cAAcc,aACtD,KAAgB,OAATwK,GAAkC,SAAjBA,EAAKG,SAAoB,CAU7C,GATAP,EAAQ7K,OAAOqL,iBAAiBJ,GAChCvL,EAAWmL,EAAMS,iBAAiB,YAClCR,EAAYD,EAAMS,iBAAiB,aAClB,WAAb5L,GAAwC,OAAfqL,IACzBA,EAAaE,GAEbH,GAA2B,SAAdA,GAA0C,OAAlBE,IACrCA,EAAgBC,GAEH,UAAbvL,EAAsB,CACtBqL,EAAaC,EACb,MAEJC,EAAOA,EAAKF,WAEhB,MAAMQ,EAAexO,KAAKyO,gBAAgBzO,KAAKuJ,oBAAoB3G,cAA6B,UAAbD,GACnF,GAAI3C,KAAKkI,sBAAsC,UAAbvF,KAC5BqL,GAAcA,aAAsBU,oBACtC1O,KAAKqD,IAAMmL,EAAanL,IACxBrD,KAAKgD,KAAOwL,EAAaxL,SAExB,CACkB,OAAfgL,IACAA,EAAaE,GAEjB,MAAMS,EAAY3O,KAAKyO,gBAAgBT,EAA0B,UAAbrL,GACpD3C,KAAKqD,IAAMmL,EAAanL,IAAMsL,EAAUtL,IACxCrD,KAAKgD,KAAOwL,EAAaxL,KAAO2L,EAAU3L,KAE7B,UAAbL,IACA3C,KAAK2C,SAAW,SAEpB,IAAIiM,EAAc5O,KAAKsK,WACC,SAApBtK,KAAKsK,aAGLsE,EApkChB,SAAkCC,EAAUC,GAExC,IAAIC,EAAe,QACfC,EAAe,SAEnB,MAAM,OAAEvL,EAAF,MAAUF,GAAUsL,GACpB,IAAExL,EAAF,KAAOL,GAAS8L,EAChBG,EAAS5L,EAAMyL,EAAgBrL,OAC/ByL,EAAQlM,EAAO8L,EAAgBvL,MAC/B4L,EAAe9L,EAAMI,EAAS,EAC9B2L,EAAkBH,EAASxL,GAAUR,OAAOoM,aAAe9M,SAAS+M,gBAAgBC,cACpFC,EAAgBxM,EAAOO,EAAQ,EAC/BkM,EAAiBP,EAAQ3L,GAASN,OAAOyM,YAAcnN,SAAS+M,gBAAgBK,aAgBtF,OAbIP,IACAJ,EAAe,OAEfG,IACAH,EAAe,UAEfQ,IACAT,EAAe,SAEfU,IACAV,EAAe,QAZEI,GAAgBC,GAAmBI,GAAiBC,EAgBpD,CAAC,OAAQ,QAAS,MAAO,UAC1BG,OAAO,CAACC,EAAMC,IAASjB,EAASgB,GAAQhB,EAASiB,GAAQD,EAAOC,GAE/EN,GAAiBC,EACdN,EACO,SAEPC,GAGG/L,EAAM4L,EAFF,MAEmB,SAE7BE,GAAgBC,EACbI,EACO,QAEPC,GAGGzM,EAAOkM,EAFH,OAEoB,QAE3B,GAAEF,KAAgBD,IAkhCAgB,CAFO/P,KAAKoO,cAAcxL,cAAcC,wBAChC7C,KAAKyK,iBAAiB7H,cAAcC,0BAG1C,QAAhB+L,GACA5O,KAAKpI,SAAWuW,EAAe,EAC/BnO,KAAKqD,KAAO8K,EAAenO,KAAK2H,gBAChC3H,KAAKgD,MAAQhD,KAAKuK,iBAAmB,IAAMiE,EAAajL,MAAQvD,KAAK4H,mBAEhD,WAAhBgH,GACL5O,KAAKqD,KAAOmL,EAAa/K,OAASzD,KAAK2H,gBACvC3H,KAAKgD,MAAQhD,KAAKuK,iBAAmB,IAAMiE,EAAajL,MAAQvD,KAAK4H,mBAEhD,aAAhBgH,GAA8C,aAAhBA,GACnC5O,KAAKqD,KAAO8K,EAAeK,EAAa/K,OAAS+K,EAAa/K,OAASzD,KAAKuK,iBAAmB,IAC/FvK,KAAKgD,MAAQhD,KAAKyI,QAAUzI,KAAK2H,gBAAkB,EAAI3H,KAAK4H,mBAEvC,cAAhBgH,GAA+C,cAAhBA,GACpC5O,KAAKqD,KAAO8K,EAAeK,EAAa/K,OAAS+K,EAAa/K,OAASzD,KAAKuK,iBAAmB,IAC/FvK,KAAKgD,MAAQwL,EAAajL,MAAQvD,KAAK2H,gBAAkB,EAAI3H,KAAK4H,mBAE7C,SAAhBgH,GAA0C,gBAAhBA,GAAiD,gBAAhBA,GAChE5O,KAAKqD,KAAOmL,EAAa/K,OAASzD,KAAKuK,iBAAmB,IAAMvK,KAAK4H,kBACrE5H,KAAKgD,MAAQhD,KAAKyI,QAAUzI,KAAK2H,gBAAkB,IAGnD3H,KAAKqD,KAAOmL,EAAa/K,OAASzD,KAAKuK,iBAAmB,IAAMvK,KAAK4H,kBACrE5H,KAAKgD,MAAQwL,EAAajL,MAAQvD,KAAK2H,gBAAkB,GAE7D3H,KAAKrI,cAAgBiX,GAI7B/C,aAAamE,EAAQC,GACjB,IAAI/B,EAAO+B,EAAMjC,WACjB,KAAgB,OAATE,GAAe,CAClB,GAAIA,IAAS8B,EACT,OAAO,EAEX9B,EAAOA,EAAKF,WAEhB,OAAO,EAEXS,gBAAgByB,EAASC,GACrB,MAAO,CACH9M,IAAK6M,EAAQrN,wBAAwBQ,KAAO8M,EAASlN,OAAOK,YAAc,GAC1EN,KAAMkN,EAAQrN,wBAAwBG,MAAQmN,EAASlN,OAAOC,YAAc,GAC5EK,MAAO2M,EAAQ1M,YACfC,OAAQyM,EAAQxM,e,OAI5B6D,EAAqBvG,UAAO,SAAsCC,GAAK,OAAO,IAAKA,GAAKsG,GAAsB9P,MAAyBA,OAAoBA,MAAyBA,OAA2BA,MAAyB0M,KACxOoD,EAAqB6I,UAAqB3Y,MAAyB,CAAE0J,KAAMoG,EAAsBnG,UAAW,CAAC,CAAC,iBAAkBiP,UAAW,SAAoC9Y,EAAIC,GAI7K,GAJ6L,EAALD,IACtLE,KAAmBN,EAAK,GACxBM,KAAmBL,EAAK,GACxBK,KAAmBJ,EAAK,IACjB,EAALE,EAAQ,CACV,IAAI+Y,EACJ7Y,MAAsB6Y,EAAK7Y,WAA0BD,EAAI4W,cAAgBkC,EAAGC,OAC5E9Y,MAAsB6Y,EAAK7Y,WAA0BD,EAAIgR,UAAY8H,EAAGC,OACxE9Y,MAAsB6Y,EAAK7Y,WAA0BD,EAAIkR,YAAc4H,EAAGC,SACzElP,aAAc,SAA2C9J,EAAIC,GAAgB,EAALD,GACzEE,MAAkB,YAAa,SAA2DM,GAAU,OAAOP,EAAI2Q,UAAUpQ,KAAY,EAAON,MAA5IA,CAAsK,cAAe,SAA6DM,GAAU,OAAOP,EAAI6Q,YAAYtQ,KAAY,EAAON,QACrS+Y,MAAO,GAAIC,KAAM,GAAIC,OAAQ,CAAC,CAAC,EAAG,eAAgB,EAAG,SAAU,CAAC,cAAe,IAAK,CAAC,EAAG,QAAS,MAAO,EAAG,QAAS,CAAC,QAAS,uBAAwB,EAAG,SAAU,MAAO,MAAO,mBAAoB,WAAY,YAAa,UAAW,EAAG,QAAS,CAAC,EAAG,YAAa,OAAQ,CAAC,EAAG,QAAS,CAAC,EAAG,6BAA8B,CAAC,EAAG,kBAAmB,CAAC,OAAQ,SAAU,EAAG,QAAS,WAAY,QAAS,EAAG,QAAS,CAAC,EAAG,SAAU,CAAC,QAAS,gBAAiB,EAAG,QAAS,CAAC,EAAG,MAAO,EAAG,SAAU,MAAO,WAAY,YAAa,WAAY,CAAC,YAAa,IAAK,CAAC,EAAG,UAAW,CAAC,EAAG,QAAS,EAAG,SAAU,MAAO,WAAY,YAAa,WAAY,CAAC,cAAe,IAAK,CAAC,EAAG,QAAS,EAAG,SAAU,MAAO,WAAY,YAAa,WAAY,CAAC,cAAe,IAAK,CAAC,QAAS,YAAa,EAAG,UAAW,EAAG,QAAS,CAAC,QAAS,YAAa,EAAG,UAAW,EAAG,QAAS,CAAC,QAAS,YAAa,EAAG,UAAW,EAAG,QAAS,CAAC,QAAS,WAAY,EAAG,YAAa,UAAW,EAAG,QAAS,CAAC,QAAS,aAAc,EAAG,QAAS,CAAC,QAAS,cAAe,EAAG,QAAS,CAAC,QAAS,cAAe,EAAG,QAAS,CAAC,QAAS,cAAe,EAAG,QAAS,CAAC,EAAG,uBAAwB,EAAG,SAAU,MAAO,MAAO,WAAY,YAAa,WAAY,CAAC,OAAQ,SAAU,EAAG,WAAY,SAAU,CAAC,EAAG,SAAU,QAAS,CAAC,EAAG,aAAc,CAAC,EAAG,OAAQ,CAAC,OAAQ,SAAU,UAAW,SAAU,MAAO,IAAK,MAAO,MAAO,EAAG,OAAQ,KAAM,QAAS,cAAe,YAAa,CAAC,OAAQ,SAAU,UAAW,4BAA6B,MAAO,IAAK,MAAO,IAAK,OAAQ,MAAO,EAAG,OAAQ,KAAM,QAAS,cAAe,WAAY,EAAG,QAAS,CAAC,EAAG,QAAS,CAAC,OAAQ,SAAU,UAAW,4BAA6B,MAAO,IAAK,MAAO,IAAK,OAAQ,MAAO,EAAG,OAAQ,KAAM,QAAS,cAAe,YAAa,CAAC,EAAG,aAAc,CAAC,OAAQ,SAAU,UAAW,SAAU,MAAO,IAAK,MAAO,MAAO,EAAG,OAAQ,KAAM,QAAS,cAAe,YAAa,CAAC,EAAG,aAAc,CAAC,OAAQ,SAAU,UAAW,SAAU,MAAO,IAAK,MAAO,MAAO,EAAG,OAAQ,KAAM,QAAS,cAAe,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,OAAQ,QAAS,OAAQ,cAAe,YAAa,CAAC,EAAG,cAAe,CAAC,EAAG,eAAgB,CAAC,EAAG,oBAAqB,EAAG,SAAU,CAAC,EAAG,eAAgB,CAAC,EAAG,gBAAiB,CAAC,EAAG,QAAS,EAAG,QAAS,CAAC,QAAS,eAAgB,EAAG,kBAAmB,QAAS,EAAG,QAAS,WAAY,CAAC,EAAG,eAAgB,EAAG,SAAU,CAAC,EAAG,QAAS,QAAS,EAAG,QAAS,CAAC,EAAG,SAAU,CAAC,EAAG,eAAgB,CAAC,OAAQ,SAAU,EAAG,QAAS,QAAS,EAAG,QAAS,CAAC,OAAQ,SAAU,EAAG,UAAWC,SAAU,SAAuCpZ,EAAIC,GAAgB,EAALD,IAC9/EE,MAAsB,EAAG,MAAO,EAAG,GACnCA,MAAkB,QAAS,SAA4DM,GAAU,OAAOA,EAAOuK,oBAC/G7K,MAAkB,EAAGH,EAAqC,EAAG,EAAG,MAAO,GACvEG,MAAkB,EAAGI,EAAqC,EAAG,EAAG,MAAO,GACvEJ,MAAsB,EAAG,MAAO,GAChCA,MAAsB,EAAG,MAAO,GAChCA,MAAiB,EAAG,MAAO,GAC3BA,MAAiB,EAAG,MAAO,GAC3BA,MAAkB,EAAGe,EAAwC,EAAG,EAAG,SAAU,GAC7Ef,QACAA,MAAsB,EAAG,MAAO,GAChCA,MAAkB,GAAI0B,EAAsC,EAAG,EAAG,MAAO,IACzE1B,MAAsB,GAAI,MAAO,GAAI,IACrCA,MAAkB,WAAY,SAAgEM,GAAU,OAAOP,EAAIiV,YAAY1U,IAA/HN,CAA2I,YAAa,WAAqE,OAAOD,EAAIS,YAAY,QAApPR,CAA+P,UAAW,WAAmE,OAAOD,EAAIU,UAAU,SAClWT,MAAiB,GAAI,MAAO,IAC5BA,QACAA,MAAsB,GAAI,MAAO,GAAI,IACrCA,MAAkB,WAAY,SAAgEM,GAAU,OAAOP,EAAIkV,cAAc3U,IAAjIN,CAA6I,YAAa,WAAqE,OAAOD,EAAIS,YAAY,UAAtPR,CAAmQ,UAAW,WAAmE,OAAOD,EAAIU,UAAU,WACtWT,MAAiB,GAAI,MAAO,IAC5BA,QACAA,MAAsB,GAAI,MAAO,GAAI,IACrCA,MAAkB,WAAY,SAAgEM,GAAU,OAAOP,EAAImV,cAAc5U,IAAjIN,CAA6I,YAAa,WAAqE,OAAOD,EAAIS,YAAY,UAAtPR,CAAmQ,UAAW,WAAmE,OAAOD,EAAIU,UAAU,WACtWT,MAAiB,GAAI,MAAO,IAC5BA,QACAA,QACAA,QACAA,MAAkB,GAAImC,EAAsC,GAAI,GAAI,MAAO,IAC3EnC,MAAkB,GAAIqD,EAAsC,GAAI,GAAI,MAAO,IAC3ErD,MAAkB,GAAIkE,EAAsC,GAAI,GAAI,MAAO,IAC3ElE,MAAkB,GAAIgF,EAAsC,EAAG,EAAG,MAAO,IACzEhF,MAAkB,GAAIwF,EAAsC,EAAG,EAAG,MAAO,IACzExF,MAAkB,GAAI4F,EAAsC,EAAG,EAAG,MAAO,IACzE5F,MAAkB,GAAIkH,EAAsC,EAAG,EAAG,MAAO,IACzElH,MAAkB,GAAIgI,EAAsC,EAAG,EAAG,MAAO,IACzEhI,SACO,EAALF,IACFE,MAAmB,UAAYD,EAAI4Q,KAAgB,QAAT,OAA1C3Q,CAA4D,aAAcD,EAAI8V,OAAS,SAAW,UAAlG7V,CAA6G,MAAOD,EAAI6L,IAAK,KAA7H5L,CAAmI,OAAQD,EAAIwL,KAAM,KAArJvL,CAA2J,WAAYD,EAAImL,SAA3KlL,CAAqL,SAAUD,EAAIsS,SAAU,KAA7MrS,CAAmN,QAASD,EAAIiR,QAAS,MACzOhR,MAAmB,OAAQD,EAAI4Q,MAC/B3Q,MAAiB,GACjBA,MAAkB,OAA+B,SAAvBD,EAAI8M,iBAC9B7M,MAAiB,GACjBA,MAAkB,OAAmC,KAA1BD,EAAIwS,aAAe,IAC9CvS,MAAiB,GACjBA,MAAmB,mBAAoBD,EAAIoB,eAC3CnB,MAAiB,GACjBA,MAAkB,OAAQD,EAAI2G,kBAC9B1G,MAAiB,GACjBA,MAAkB,OAA+B,aAAvBD,EAAIgD,gBAC9B/C,MAAiB,GACjBA,MAAmB,UAAsC,KAA1BD,EAAIwS,aAAe,GAAW,QAAU,QACvEvS,MAAkB,MAAO,GACzBA,MAAiB,GACjBA,MAAmB,OAAsB,MAAdD,EAAIa,OAAiB,KAAOb,EAAIa,OAAO+C,EAAG,MACrE3D,MAAiB,GACjBA,MAAmB,UAAsC,KAA1BD,EAAIwS,aAAe,GAAW,QAAU,QACvEvS,MAAkB,MAAO,GACzBA,MAAiB,GACjBA,MAAmB,QAAuB,MAAdD,EAAIa,OAAiB,KAAOb,EAAIa,OAAOC,EAAG,MACtEb,MAAiB,GACjBA,MAAmB,UAAkC,aAAvBD,EAAIgD,eAAgC,OAAS,QAA3E/C,CAAoF,mBAAoBD,EAAIoW,kBAC5GnW,MAAkB,MAAO,GACzBA,MAAiB,GACjBA,MAAmB,OAAsB,MAAdD,EAAIa,OAAiB,KAAOb,EAAIa,OAAOqB,EAAG,MACrEjC,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAASD,EAAIyS,gBAA6C,KAA1BzS,EAAIwS,aAAe,IACrEvS,MAAiB,GACjBA,MAAkB,QAA+B,MAAtBD,EAAIuB,eAAyB,KAAOvB,EAAIuB,eAAeC,SAAWxB,EAAI2G,kBACjG1G,MAAiB,GACjBA,MAAkB,OAAQD,EAAIoI,YAAcpI,EAAImI,kBAC/CiR,WAAY,CAACC,KAAapP,EAAiBrB,EAAeyQ,MAAiBC,OAAQ,CAAC,qxxBAAoyxBC,cAAe,IApxB14xBxJ,G,GA0zBAyJ,E,MAAN,MAAMA,EACFjR,YAAYkR,EAAUC,EAAKC,EAAQC,EAAO1P,EAAO2P,GAC7CrR,KAAKiR,SAAWA,EAChBjR,KAAKkR,IAAMA,EACXlR,KAAKmR,OAASA,EACdnR,KAAKoR,MAAQA,EACbpR,KAAK0B,MAAQA,EACb1B,KAAKqR,SAAWA,EAChBrR,KAAKsR,eAAgB,EACrBtR,KAAKuR,eAAgB,EACrBvR,KAAKwR,sBAAuB,EAC5BxR,KAAKyI,QAAU,QACfzI,KAAK8J,SAAW,OAChB9J,KAAKyR,UAAW,EAChBzR,KAAK0R,YAAa,EAClB1R,KAAKkK,kBAAoB,GACzBlK,KAAK+J,gBAAkB,GACvB/J,KAAKgK,YAAc,QACnBhK,KAAK2I,eAAgB,EACrB3I,KAAK4I,eAAiB,OACtB5I,KAAKxF,eAAiB,UACtBwF,KAAKiK,gBAAiB,EACtBjK,KAAKsE,gBAAkB,QACvBtE,KAAKmK,oBAAqB,EAC1BnK,KAAKoK,qBAAsB,EAC3BpK,KAAKqK,wBAAyB,EAC9BrK,KAAKsK,WAAa,OAClBtK,KAAKuK,iBAAmB,KACxBvK,KAAKwK,2BAA4B,EACjCxK,KAAKJ,YAAa,EAClBI,KAAKR,eAAiB,KACtBQ,KAAKT,gBAAkB,qBACvBS,KAAKL,gBAAiB,EACtBK,KAAKb,mBAAqB,SAC1Ba,KAAKd,oBAAsB,yBAC3Bc,KAAKnB,cAAgB,gBACrBmB,KAAK1B,oBAAsB,yBAC3B0B,KAAK/G,wBAA0B,EAC/B+G,KAAKtB,qBAAuB,kBAC5BsB,KAAKvB,0BAA4B,uBACjCuB,KAAK7B,kBAAmB,EACxB6B,KAAK9G,qBAAuB,YAC5B8G,KAAKlH,sBAAwB,4BAC7BkH,KAAKlC,yBAA2B,+BAChCkC,KAAK2R,cAAgB,IAAIrR,OAAa,GACtCN,KAAK4R,eAAiB,IAAItR,OAAa,GACvCN,KAAK6R,eAAiB,IAAIvR,OAAa,GACvCN,KAAK8R,gBAAkB,IAAIxR,OAAa,GACxCN,KAAK+R,kBAAoB,IAAIzR,OAAa,GAC1CN,KAAKgS,gBAAkB,IAAI1R,OAAa,GACxCN,KAAKiS,iBAAmB,IAAI3R,OAAa,GACzCN,KAAKkS,kBAAoB,IAAI5R,OAAa,GAC1CN,KAAKmS,kBAAoB,IAAI7R,OAAa,GAC1CN,KAAKoS,kBAAoB,IAAI9R,OAAa,GAC1CN,KAAKqS,kBAAoB,IAAI/R,OAAa,GAC1CN,KAAKsS,qBAAuB,IAAIhS,OAAa,GAEjDiS,cACIvS,KAAKwS,aAETC,cACIzS,KAAKwS,aAETE,YAAYlS,GACRR,KAAKO,YAAYC,GAErB2I,cACuB,MAAfnJ,KAAK2S,SACD3S,KAAKwR,sBACLxR,KAAKmR,OAAOyB,WAAW5S,KAAK2S,OAAOE,UAEvC7S,KAAK2S,OAAOG,UACZ9S,KAAK2S,OAAS,KACd3S,KAAK+S,OAAS,MAGtBC,YAAYC,GACJA,EAAQxB,WAAazR,KAAK0R,aACtBuB,EAAQxB,SAASyB,aACjBlT,KAAKiJ,aAECgK,EAAQxB,SAASyB,cACvBlT,KAAKuE,eAGT0O,EAAQE,cACJnT,KAAK+S,SAAW/S,KAAKuR,gBACQ,WAAzBvR,KAAKsE,iBACLtE,KAAK+S,OAAOvJ,gBAAgByJ,EAAQE,YAAYD,cAEpDlT,KAAK+S,OAAO9U,mBAAmBgV,EAAQE,YAAYD,cAAc,GAC7DlT,KAAKqK,wBAAmD,WAAzBrK,KAAKsE,iBACpCtE,KAAK2S,OAAOS,kBAAkB9J,iBAGtCtJ,KAAKuR,eAAgB,IAErB0B,EAAQpU,eAAiBoU,EAAQla,iBAC7BiH,KAAK+S,QACL/S,KAAK+S,OAAO3H,gBAAgBpL,KAAKnB,cAAemB,KAAKjH,gBAIjEkQ,aACI,GAAKjJ,KAAKsR,cAmCDtR,KAAK+S,QACV/S,KAAK+S,OAAO9J,WAAWjJ,KAAKmT,iBApCP,CACrB,IAAI/B,EAAQpR,KAAKoR,MAGjB,GAFApR,KAAKsR,eAAgB,EACrBtR,KAAKwR,sBAAuB,EACxBxR,KAAKqK,wBAAmD,WAAzBrK,KAAKsE,gBAA8B,CAClE,MACM+O,EAAcrT,KAAKiR,SAASqC,IADLtT,KAAKmR,OAAOoC,eAAe,GACIC,YACxDH,IAAgBG,YAChBpC,EAAQiC,EAAYjC,OAASiC,EAAYI,kBAAoBzT,KAAKoR,MAC9DA,IAAUpR,KAAKoR,OACfsC,QAAQC,KAAK,kLAMjB3T,KAAKwR,sBAAuB,EAGpC,MAAMoC,EAAc5T,KAAKkR,IAAI2C,wBAAwBtM,GACrD,GAAIvH,KAAKwR,qBACLxR,KAAK2S,OAASiB,EAAYE,OAAO9T,KAAKiR,UACtCjR,KAAKmR,OAAO4C,WAAW/T,KAAK2S,OAAOE,UACnCtQ,SAASyR,KAAKC,YAAYjU,KAAK2S,OAAOE,SAASqB,UAAU,QAExD,CACD,MAAMjD,EAAWkD,4BAAyC,GAAI/C,EAAMgD,gBACpEpU,KAAK2S,OAASvB,EAAMiD,gBAAgBT,EAAa,EAAG3C,EAAU,IAElEjR,KAAK2S,OAAO/I,SAASD,YAAY3J,KAAMA,KAAK0B,MAAO1B,KAAKmT,YAAanT,KAAKyI,QAASzI,KAAK8J,SAAU9J,KAAKsE,gBAAiBtE,KAAK+J,gBAAiB/J,KAAKgK,YAAahK,KAAK2I,cAAe3I,KAAKxF,eAAgBwF,KAAK4I,eAAgB5I,KAAKiK,eAAgBjK,KAAKkK,kBAAmBlK,KAAKmK,mBAAoBnK,KAAKoK,oBAAqBpK,KAAKqK,uBAAwBrK,KAAKsK,WAAYtK,KAAKuK,iBAAkBvK,KAAKwK,0BAA2BxK,KAAKnB,cAAemB,KAAKjH,eAAgBiH,KAAK1B,oBAAqB0B,KAAK/G,wBAAyB+G,KAAKtB,qBAAsBsB,KAAKvB,0BAA2BuB,KAAKJ,WAAYI,KAAKT,gBAAiBS,KAAKR,eAAgBQ,KAAKL,eAAgBK,KAAKd,oBAAqBc,KAAKb,mBAAoBa,KAAK7B,iBAAkB6B,KAAKlH,sBAAuBkH,KAAK9G,qBAAsB8G,KAAKlC,yBAA0BkC,KAAK0B,OACrzB1B,KAAK+S,OAAS/S,KAAK2S,OAAO/I,SACtB5J,KAAKoR,QAAUA,GACfpR,KAAK2S,OAAOS,kBAAkB9J,iBAO1C/E,cACQvE,KAAK+S,QAAmC,UAAzB/S,KAAKsE,iBACpBtE,KAAK+S,OAAOxO,cAGpB0H,YAAYxL,GACRT,KAAKqS,kBAAkBxR,KAAKJ,GAEhC+M,aAAa8G,GACTtU,KAAK4R,eAAe/Q,KAAKyT,GACrBA,EACAtU,KAAKgS,gBAAgBnR,KAAKb,KAAKmT,aAG/BnT,KAAKiS,iBAAiBpR,KAAKb,KAAKmT,aAGxChH,aAAa1L,EAAO8T,GAAS,GACzBvU,KAAKuR,cAAgBgD,EACrBvU,KAAKoS,kBAAkBvR,KAAKJ,GAEhCuL,cAAcvL,GACVT,KAAKmS,kBAAkBtR,KAAKJ,GAEhC2L,gBACIpM,KAAKkS,kBAAkBrR,OAE3B2R,aACI,MAAMtC,EAAUlQ,KAAK0B,MAAMkB,cACrB4R,EAAUxU,KAAKkK,kBAAkB4B,OAAQC,GAASA,IAASmE,GAC5DlQ,KAAK0R,YAAe8C,EAAQxb,SACL,oBAAbuJ,UAA4B2N,IAAY3N,SAASkS,cACxDzU,KAAKiJ,aAECjJ,KAAK+S,QAAW/S,KAAK+S,OAAO3K,KAIlCpI,KAAKuE,cAHLvE,KAAKiJ,cAOjB1I,YAAYC,GACJR,KAAK+S,OACL/S,KAAK+S,OAAO9U,mBAAmBuC,EAAME,OAAOD,OAAO,IAGnDT,KAAKmT,YAAc3S,EAAME,OAAOD,MAChCT,KAAKoS,kBAAkBvR,KAAKb,KAAKmT,cAGzCjG,aAAa1M,GACTR,KAAK2R,cAAc9Q,KAAKL,GAE5BgM,cAAchM,GACVR,KAAK6R,eAAehR,KAAKL,GAE7BkL,cAAclL,GACVR,KAAK8R,gBAAgBjR,KAAKL,GAE9BoL,gBAAgBpL,GACZR,KAAK+R,kBAAkBlR,KAAKL,GAEhC6M,oBAAoB5M,GAChBT,KAAKsS,qBAAqBzR,KAAKJ,I,OAGvCuQ,EAAqBhQ,UAAO,SAAsCC,GAAK,OAAO,IAAKA,GAAK+P,GAAsBvZ,MAAyBA,OAAkBA,MAAyBA,OAAkCA,MAAyBA,OAAwBA,MAAyBA,OAA0BA,MAAyBA,OAAoBA,MAAyB0M,KAC9X6M,EAAqB9P,UAAqBzJ,MAAyB,CAAE0J,KAAM6P,EAAsB5P,UAAW,CAAC,CAAC,GAAI,cAAe,KAAMC,aAAc,SAA2C9J,EAAIC,GAAgB,EAALD,GACvME,MAAkB,QAAS,WAA2D,OAAOD,EAAI+a,eAAjG9a,CAAmH,QAAS,WAA2D,OAAOD,EAAIib,eAAlMhb,CAAoN,QAAS,SAAuDM,GAAU,OAAOP,EAAIkb,YAAY3a,MACpTuJ,OAAQ,CAAEmH,QAAS,UAAWqB,SAAU,WAAY2H,SAAU,WAAYC,WAAY,aAAcxH,kBAAmB,oBAAqBH,gBAAiB,kBAAmBC,YAAa,cAAerB,cAAe,gBAAiBC,eAAgB,iBAAkBpO,eAAgB,iBAAkByP,eAAgB,iBAAkB3F,gBAAiB,kBAAmB6F,mBAAoB,qBAAsBC,oBAAqB,sBAAuBC,uBAAwB,yBAA0BC,WAAY,aAAcC,iBAAkB,mBAAoBC,0BAA2B,4BAA6B5K,WAAY,aAAcJ,eAAgB,iBAAkBD,gBAAiB,kBAAmBI,eAAgB,iBAAkBR,mBAAoB,qBAAsBD,oBAAqB,sBAAuBL,cAAe,gBAAiBP,oBAAqB,sBAAuBrF,wBAAyB,0BAA2ByF,qBAAsB,uBAAwBD,0BAA2B,4BAA6BN,iBAAkB,mBAAoBjF,qBAAsB,uBAAwBJ,sBAAuB,wBAAyBgF,yBAA0B,2BAA4BqV,YAAa,cAAepa,eAAgB,kBAAoByI,QAAS,CAAEmQ,cAAe,gBAAiBC,eAAgB,iBAAkBC,eAAgB,iBAAkBC,gBAAiB,kBAAmBC,kBAAmB,oBAAqBC,gBAAiB,kBAAmBC,iBAAkB,mBAAoBC,kBAAmB,oBAAqBC,kBAAmB,oBAAqBC,kBAAmB,oBAAqBC,kBAAmB,oBAAqBC,qBAAsB,wBAA0BoC,SAAU,CAAC,kBAAmBC,SAAU,CAACld,SArN/yDuZ,G,GAiYA4D,E,MAAN,MAAMA,G,OAENA,EAAkB5T,UAAO,SAAmCC,GAAK,OAAO,IAAKA,GAAK2T,IAClFA,EAAkBC,UAAqBpd,MAAwB,CAAE0J,KAAMyT,IACvEA,EAAkBE,UAAqBrd,MAAwB,CAAEsd,UAAW,CAAC5Q,GAAqB6Q,QAAS,CAAC,CAACC,SAJvGL,G,mJC5hEC,IAAMM,EAAb,MAAM,MAAOA,GAAb,OACW,EAAAC,WAAa,CAChBC,MAAO,K,sCAFFF,I,wBAAAA,I,4BAhBA,CACL,KACA,KACA,KACA,IAGA,SASKA,GAAb,I,6GCZO,IAAMG,EAAb,MAAM,MAAOA,EAIT,YACmDC,EACvCC,GADuC,KAAAD,OACvC,KAAAC,kBAGZ,WACIvV,KAAKiH,MAAQjH,KAAKwV,kBAGlBjI,WAAW,KACPvN,KAAKyV,QAAQ7S,cAAc8S,UAI5B,kBAAkBjV,GACrBT,KAAKiH,MAAQxG,EAEbT,KAAKuV,gBAAgBI,UAAUlV,GAG3B,kBACJ,IAAIwG,EAASjH,KAAKsV,MAAQtV,KAAKsV,KAAKrO,OAAU,KAE9C,OADIA,GAAqC,kBAA5BA,EAAM2O,QAAQ,KAAM,MAAyB3O,OAAQtG,GAC3DsG,GA3Bf,O,sCAAaoO,GAAyB,MAKtB,IAAkB,gB,wBALrBA,EAAyB,qD,GAAA,K,6EAJvB,CACP,QACH,qLCXL,mBAIK,6CAAqB,EAAAQ,kBAAA,KAGzB,S,KANI,6BAAqB,0BAArB,CAAqB,wBAArB,CAAqB,2BAArB,CAAqB,gB,oJDYbR,GAAb","file":"295.816c487c93a3c825c3ea.js","sourcesContent":["import { EventEmitter, Directive, Input, Output, HostListener, ElementRef, Injectable, Component, ViewEncapsulation, ChangeDetectorRef, ViewChild, Injector, ReflectiveInjector, ComponentFactoryResolver, ApplicationRef, ViewContainerRef, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\n\nconst _c0 = [\"dialogPopup\"];\nconst _c1 = [\"hueSlider\"];\nconst _c2 = [\"alphaSlider\"];\nfunction ColorPickerComponent_div_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\");\n} if (rf & 2) {\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassMapInterpolate1(\"arrow arrow-\", ctx_r1.cpUsePosition, \"\");\n ɵngcc0.ɵɵstyleProp(\"top\", ctx_r1.arrowTop, \"px\");\n} }\nfunction ColorPickerComponent_div_3_Template(rf, ctx) { if (rf & 1) {\n const _r17 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 26);\n ɵngcc0.ɵɵlistener(\"newValue\", function ColorPickerComponent_div_3_Template_div_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r17); const ctx_r16 = ɵngcc0.ɵɵnextContext(); return ctx_r16.onColorChange($event); })(\"dragStart\", function ColorPickerComponent_div_3_Template_div_dragStart_0_listener() { ɵngcc0.ɵɵrestoreView(_r17); const ctx_r18 = ɵngcc0.ɵɵnextContext(); return ctx_r18.onDragStart(\"saturation-lightness\"); })(\"dragEnd\", function ColorPickerComponent_div_3_Template_div_dragEnd_0_listener() { ɵngcc0.ɵɵrestoreView(_r17); const ctx_r19 = ɵngcc0.ɵɵnextContext(); return ctx_r19.onDragEnd(\"saturation-lightness\"); });\n ɵngcc0.ɵɵelement(1, \"div\", 13);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵstyleProp(\"background-color\", ctx_r2.hueSliderColor);\n ɵngcc0.ɵɵproperty(\"rgX\", 1)(\"rgY\", 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"top\", ctx_r2.slider == null ? null : ctx_r2.slider.v, \"px\")(\"left\", ctx_r2.slider == null ? null : ctx_r2.slider.s, \"px\");\n} }\nfunction ColorPickerComponent_button_8_Template(rf, ctx) { if (rf & 1) {\n const _r21 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 27);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_button_8_Template_button_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r21); const ctx_r20 = ɵngcc0.ɵɵnextContext(); return ctx_r20.onAddPresetColor($event, ctx_r20.selectedColor); });\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassMap(ctx_r3.cpAddColorButtonClass);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r3.cpPresetColors && ctx_r3.cpPresetColors.length >= ctx_r3.cpMaxPresetColorsLength);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\" \", ctx_r3.cpAddColorButtonText, \" \");\n} }\nfunction ColorPickerComponent_div_10_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\", 28);\n} }\nfunction ColorPickerComponent_div_20_input_6_Template(rf, ctx) { if (rf & 1) {\n const _r25 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"input\", 34);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_20_input_6_Template_input_keyup_enter_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r25); const ctx_r24 = ɵngcc0.ɵɵnextContext(2); return ctx_r24.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_20_input_6_Template_input_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r25); const ctx_r26 = ɵngcc0.ɵɵnextContext(2); return ctx_r26.onAlphaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r22 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r22.cmykText == null ? null : ctx_r22.cmykText.a);\n} }\nfunction ColorPickerComponent_div_20_div_16_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtext(1, \"A\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction ColorPickerComponent_div_20_Template(rf, ctx) { if (rf & 1) {\n const _r28 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 29);\n ɵngcc0.ɵɵelementStart(1, \"div\", 30);\n ɵngcc0.ɵɵelementStart(2, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_20_Template_input_keyup_enter_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r27 = ɵngcc0.ɵɵnextContext(); return ctx_r27.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_20_Template_input_newValue_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r29 = ɵngcc0.ɵɵnextContext(); return ctx_r29.onCyanInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_20_Template_input_keyup_enter_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r30 = ɵngcc0.ɵɵnextContext(); return ctx_r30.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_20_Template_input_newValue_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r31 = ɵngcc0.ɵɵnextContext(); return ctx_r31.onMagentaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(4, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_20_Template_input_keyup_enter_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r32 = ɵngcc0.ɵɵnextContext(); return ctx_r32.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_20_Template_input_newValue_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r33 = ɵngcc0.ɵɵnextContext(); return ctx_r33.onYellowInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(5, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_20_Template_input_keyup_enter_5_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r34 = ɵngcc0.ɵɵnextContext(); return ctx_r34.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_20_Template_input_newValue_5_listener($event) { ɵngcc0.ɵɵrestoreView(_r28); const ctx_r35 = ɵngcc0.ɵɵnextContext(); return ctx_r35.onBlackInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(6, ColorPickerComponent_div_20_input_6_Template, 1, 2, \"input\", 32);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(7, \"div\", 30);\n ɵngcc0.ɵɵelementStart(8, \"div\");\n ɵngcc0.ɵɵtext(9, \"C\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(10, \"div\");\n ɵngcc0.ɵɵtext(11, \"M\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(12, \"div\");\n ɵngcc0.ɵɵtext(13, \"Y\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(14, \"div\");\n ɵngcc0.ɵɵtext(15, \"K\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(16, ColorPickerComponent_div_20_div_16_Template, 2, 0, \"div\", 33);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r8 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵstyleProp(\"display\", ctx_r8.format !== 3 ? \"none\" : \"block\");\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r8.cmykText == null ? null : ctx_r8.cmykText.c);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r8.cmykText == null ? null : ctx_r8.cmykText.m);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r8.cmykText == null ? null : ctx_r8.cmykText.y);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r8.cmykText == null ? null : ctx_r8.cmykText.k);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r8.cpAlphaChannel !== \"disabled\");\n ɵngcc0.ɵɵadvance(10);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r8.cpAlphaChannel !== \"disabled\");\n} }\nfunction ColorPickerComponent_div_21_input_5_Template(rf, ctx) { if (rf & 1) {\n const _r39 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"input\", 34);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_input_5_Template_input_keyup_enter_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r39); const ctx_r38 = ɵngcc0.ɵɵnextContext(2); return ctx_r38.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_21_input_5_Template_input_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r39); const ctx_r40 = ɵngcc0.ɵɵnextContext(2); return ctx_r40.onAlphaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r36 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r36.hslaText == null ? null : ctx_r36.hslaText.a);\n} }\nfunction ColorPickerComponent_div_21_div_13_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtext(1, \"A\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction ColorPickerComponent_div_21_Template(rf, ctx) { if (rf & 1) {\n const _r42 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 35);\n ɵngcc0.ɵɵelementStart(1, \"div\", 30);\n ɵngcc0.ɵɵelementStart(2, \"input\", 36);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r41 = ɵngcc0.ɵɵnextContext(); return ctx_r41.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r43 = ɵngcc0.ɵɵnextContext(); return ctx_r43.onHueInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r44 = ɵngcc0.ɵɵnextContext(); return ctx_r44.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r45 = ɵngcc0.ɵɵnextContext(); return ctx_r45.onSaturationInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(4, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r46 = ɵngcc0.ɵɵnextContext(); return ctx_r46.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r42); const ctx_r47 = ɵngcc0.ɵɵnextContext(); return ctx_r47.onLightnessInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(5, ColorPickerComponent_div_21_input_5_Template, 1, 2, \"input\", 32);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(6, \"div\", 30);\n ɵngcc0.ɵɵelementStart(7, \"div\");\n ɵngcc0.ɵɵtext(8, \"H\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(9, \"div\");\n ɵngcc0.ɵɵtext(10, \"S\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(11, \"div\");\n ɵngcc0.ɵɵtext(12, \"L\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(13, ColorPickerComponent_div_21_div_13_Template, 2, 0, \"div\", 33);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r9 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵstyleProp(\"display\", ctx_r9.format !== 2 ? \"none\" : \"block\");\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"rg\", 360)(\"value\", ctx_r9.hslaText == null ? null : ctx_r9.hslaText.h);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r9.hslaText == null ? null : ctx_r9.hslaText.s);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r9.hslaText == null ? null : ctx_r9.hslaText.l);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r9.cpAlphaChannel !== \"disabled\");\n ɵngcc0.ɵɵadvance(8);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r9.cpAlphaChannel !== \"disabled\");\n} }\nfunction ColorPickerComponent_div_22_input_5_Template(rf, ctx) { if (rf & 1) {\n const _r51 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"input\", 34);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_input_5_Template_input_keyup_enter_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r51); const ctx_r50 = ɵngcc0.ɵɵnextContext(2); return ctx_r50.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_22_input_5_Template_input_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r51); const ctx_r52 = ɵngcc0.ɵɵnextContext(2); return ctx_r52.onAlphaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r48 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r48.rgbaText == null ? null : ctx_r48.rgbaText.a);\n} }\nfunction ColorPickerComponent_div_22_div_13_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtext(1, \"A\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction ColorPickerComponent_div_22_Template(rf, ctx) { if (rf & 1) {\n const _r54 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 37);\n ɵngcc0.ɵɵelementStart(1, \"div\", 30);\n ɵngcc0.ɵɵelementStart(2, \"input\", 38);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r53 = ɵngcc0.ɵɵnextContext(); return ctx_r53.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r55 = ɵngcc0.ɵɵnextContext(); return ctx_r55.onRedInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"input\", 38);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r56 = ɵngcc0.ɵɵnextContext(); return ctx_r56.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_3_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r57 = ɵngcc0.ɵɵnextContext(); return ctx_r57.onGreenInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(4, \"input\", 38);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r58 = ɵngcc0.ɵɵnextContext(); return ctx_r58.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_4_listener($event) { ɵngcc0.ɵɵrestoreView(_r54); const ctx_r59 = ɵngcc0.ɵɵnextContext(); return ctx_r59.onBlueInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(5, ColorPickerComponent_div_22_input_5_Template, 1, 2, \"input\", 32);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(6, \"div\", 30);\n ɵngcc0.ɵɵelementStart(7, \"div\");\n ɵngcc0.ɵɵtext(8, \"R\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(9, \"div\");\n ɵngcc0.ɵɵtext(10, \"G\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(11, \"div\");\n ɵngcc0.ɵɵtext(12, \"B\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(13, ColorPickerComponent_div_22_div_13_Template, 2, 0, \"div\", 33);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r10 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵstyleProp(\"display\", ctx_r10.format !== 1 ? \"none\" : \"block\");\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r10.rgbaText == null ? null : ctx_r10.rgbaText.r);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r10.rgbaText == null ? null : ctx_r10.rgbaText.g);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r10.rgbaText == null ? null : ctx_r10.rgbaText.b);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r10.cpAlphaChannel !== \"disabled\");\n ɵngcc0.ɵɵadvance(8);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r10.cpAlphaChannel !== \"disabled\");\n} }\nfunction ColorPickerComponent_div_23_input_3_Template(rf, ctx) { if (rf & 1) {\n const _r63 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"input\", 34);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_23_input_3_Template_input_keyup_enter_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r63); const ctx_r62 = ɵngcc0.ɵɵnextContext(2); return ctx_r62.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_23_input_3_Template_input_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r63); const ctx_r64 = ɵngcc0.ɵɵnextContext(2); return ctx_r64.onAlphaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r60 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r60.hexAlpha);\n} }\nfunction ColorPickerComponent_div_23_div_7_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtext(1, \"A\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction ColorPickerComponent_div_23_Template(rf, ctx) { if (rf & 1) {\n const _r66 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 39);\n ɵngcc0.ɵɵelementStart(1, \"div\", 30);\n ɵngcc0.ɵɵelementStart(2, \"input\", 40);\n ɵngcc0.ɵɵlistener(\"blur\", function ColorPickerComponent_div_23_Template_input_blur_2_listener() { ɵngcc0.ɵɵrestoreView(_r66); const ctx_r65 = ɵngcc0.ɵɵnextContext(); return ctx_r65.onHexInput(null); })(\"keyup.enter\", function ColorPickerComponent_div_23_Template_input_keyup_enter_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r66); const ctx_r67 = ɵngcc0.ɵɵnextContext(); return ctx_r67.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_23_Template_input_newValue_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r66); const ctx_r68 = ɵngcc0.ɵɵnextContext(); return ctx_r68.onHexInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, ColorPickerComponent_div_23_input_3_Template, 1, 2, \"input\", 32);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(4, \"div\", 30);\n ɵngcc0.ɵɵelementStart(5, \"div\");\n ɵngcc0.ɵɵtext(6, \"Hex\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(7, ColorPickerComponent_div_23_div_7_Template, 2, 0, \"div\", 33);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r11 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵstyleProp(\"display\", ctx_r11.format !== 0 ? \"none\" : \"block\");\n ɵngcc0.ɵɵclassProp(\"hex-alpha\", ctx_r11.cpAlphaChannel === \"forced\");\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"value\", ctx_r11.hexText);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r11.cpAlphaChannel === \"forced\");\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r11.cpAlphaChannel === \"forced\");\n} }\nfunction ColorPickerComponent_div_24_input_3_Template(rf, ctx) { if (rf & 1) {\n const _r71 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"input\", 34);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_24_input_3_Template_input_keyup_enter_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r71); const ctx_r70 = ɵngcc0.ɵɵnextContext(2); return ctx_r70.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_24_input_3_Template_input_newValue_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r71); const ctx_r72 = ɵngcc0.ɵɵnextContext(2); return ctx_r72.onAlphaInput($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r69 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r69.hslaText == null ? null : ctx_r69.hslaText.a);\n} }\nfunction ColorPickerComponent_div_24_Template(rf, ctx) { if (rf & 1) {\n const _r74 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 41);\n ɵngcc0.ɵɵelementStart(1, \"div\", 30);\n ɵngcc0.ɵɵelementStart(2, \"input\", 31);\n ɵngcc0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_24_Template_input_keyup_enter_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r74); const ctx_r73 = ɵngcc0.ɵɵnextContext(); return ctx_r73.onAcceptColor($event); })(\"newValue\", function ColorPickerComponent_div_24_Template_input_newValue_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r74); const ctx_r75 = ɵngcc0.ɵɵnextContext(); return ctx_r75.onValueInput($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, ColorPickerComponent_div_24_input_3_Template, 1, 2, \"input\", 32);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(4, \"div\", 30);\n ɵngcc0.ɵɵelementStart(5, \"div\");\n ɵngcc0.ɵɵtext(6, \"V\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(7, \"div\");\n ɵngcc0.ɵɵtext(8, \"A\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r12 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r12.hslaText == null ? null : ctx_r12.hslaText.l);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r12.cpAlphaChannel !== \"disabled\");\n} }\nfunction ColorPickerComponent_div_25_Template(rf, ctx) { if (rf & 1) {\n const _r77 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 42);\n ɵngcc0.ɵɵelementStart(1, \"span\", 43);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_25_Template_span_click_1_listener() { ɵngcc0.ɵɵrestoreView(_r77); const ctx_r76 = ɵngcc0.ɵɵnextContext(); return ctx_r76.onFormatToggle(-1); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(2, \"span\", 43);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_25_Template_span_click_2_listener() { ɵngcc0.ɵɵrestoreView(_r77); const ctx_r78 = ɵngcc0.ɵɵnextContext(); return ctx_r78.onFormatToggle(1); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction ColorPickerComponent_div_26_div_4_div_1_span_1_Template(rf, ctx) { if (rf & 1) {\n const _r86 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"span\", 50);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_26_div_4_div_1_span_1_Template_span_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r86); const color_r82 = ɵngcc0.ɵɵnextContext().$implicit; const ctx_r84 = ɵngcc0.ɵɵnextContext(3); return ctx_r84.onRemovePresetColor($event, color_r82); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r83 = ɵngcc0.ɵɵnextContext(4);\n ɵngcc0.ɵɵclassMap(ctx_r83.cpRemoveColorButtonClass);\n} }\nfunction ColorPickerComponent_div_26_div_4_div_1_Template(rf, ctx) { if (rf & 1) {\n const _r88 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 48);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_26_div_4_div_1_Template_div_click_0_listener() { const restoredCtx = ɵngcc0.ɵɵrestoreView(_r88); const color_r82 = restoredCtx.$implicit; const ctx_r87 = ɵngcc0.ɵɵnextContext(3); return ctx_r87.setColorFromString(color_r82); });\n ɵngcc0.ɵɵtemplate(1, ColorPickerComponent_div_26_div_4_div_1_span_1_Template, 1, 3, \"span\", 49);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const color_r82 = ctx.$implicit;\n const ctx_r81 = ɵngcc0.ɵɵnextContext(3);\n ɵngcc0.ɵɵstyleProp(\"background-color\", color_r82);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r81.cpAddColorButton);\n} }\nfunction ColorPickerComponent_div_26_div_4_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtemplate(1, ColorPickerComponent_div_26_div_4_div_1_Template, 2, 3, \"div\", 47);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r79 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassMap(ctx_r79.cpPresetColorsClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r79.cpPresetColors);\n} }\nfunction ColorPickerComponent_div_26_div_5_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r80 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassMap(ctx_r80.cpPresetEmptyMessageClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r80.cpPresetEmptyMessage);\n} }\nfunction ColorPickerComponent_div_26_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 44);\n ɵngcc0.ɵɵelement(1, \"hr\");\n ɵngcc0.ɵɵelementStart(2, \"div\", 45);\n ɵngcc0.ɵɵtext(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(4, ColorPickerComponent_div_26_div_4_Template, 2, 4, \"div\", 46);\n ɵngcc0.ɵɵtemplate(5, ColorPickerComponent_div_26_div_5_Template, 2, 4, \"div\", 46);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r14 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(3);\n ɵngcc0.ɵɵtextInterpolate(ctx_r14.cpPresetLabel);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r14.cpPresetColors == null ? null : ctx_r14.cpPresetColors.length);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !(ctx_r14.cpPresetColors == null ? null : ctx_r14.cpPresetColors.length) && ctx_r14.cpAddColorButton);\n} }\nfunction ColorPickerComponent_div_27_button_1_Template(rf, ctx) { if (rf & 1) {\n const _r92 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 53);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_27_button_1_Template_button_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r92); const ctx_r91 = ɵngcc0.ɵɵnextContext(2); return ctx_r91.onCancelColor($event); });\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r89 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassMap(ctx_r89.cpCancelButtonClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r89.cpCancelButtonText);\n} }\nfunction ColorPickerComponent_div_27_button_2_Template(rf, ctx) { if (rf & 1) {\n const _r94 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 53);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_div_27_button_2_Template_button_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r94); const ctx_r93 = ɵngcc0.ɵɵnextContext(2); return ctx_r93.onAcceptColor($event); });\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r90 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassMap(ctx_r90.cpOKButtonClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r90.cpOKButtonText);\n} }\nfunction ColorPickerComponent_div_27_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 51);\n ɵngcc0.ɵɵtemplate(1, ColorPickerComponent_div_27_button_1_Template, 2, 4, \"button\", 52);\n ɵngcc0.ɵɵtemplate(2, ColorPickerComponent_div_27_button_2_Template, 2, 4, \"button\", 52);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r15 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r15.cpCancelButton);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r15.cpOKButton);\n} }\nvar ColorFormats;\n(function (ColorFormats) {\n ColorFormats[ColorFormats[\"HEX\"] = 0] = \"HEX\";\n ColorFormats[ColorFormats[\"RGBA\"] = 1] = \"RGBA\";\n ColorFormats[ColorFormats[\"HSLA\"] = 2] = \"HSLA\";\n ColorFormats[ColorFormats[\"CMYK\"] = 3] = \"CMYK\";\n})(ColorFormats || (ColorFormats = {}));\nclass Rgba {\n constructor(r, g, b, a) {\n this.r = r;\n this.g = g;\n this.b = b;\n this.a = a;\n }\n}\nclass Hsva {\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\nclass Hsla {\n constructor(h, s, l, a) {\n this.h = h;\n this.s = s;\n this.l = l;\n this.a = a;\n }\n}\nclass Cmyk {\n constructor(c, m, y, k, a = 1) {\n this.c = c;\n this.m = m;\n this.y = y;\n this.k = k;\n this.a = a;\n }\n}\n\nfunction calculateAutoPositioning(elBounds, triggerElBounds) {\n // Defaults\n let usePositionX = 'right';\n let usePositionY = 'bottom';\n // Calculate collisions\n const { height, width } = elBounds;\n const { top, left } = triggerElBounds;\n const bottom = top + triggerElBounds.height;\n const right = left + triggerElBounds.width;\n const collisionTop = top - height < 0;\n const collisionBottom = bottom + height > (window.innerHeight || document.documentElement.clientHeight);\n const collisionLeft = left - width < 0;\n const collisionRight = right + width > (window.innerWidth || document.documentElement.clientWidth);\n const collisionAll = collisionTop && collisionBottom && collisionLeft && collisionRight;\n // Generate X & Y position values\n if (collisionBottom) {\n usePositionY = 'top';\n }\n if (collisionTop) {\n usePositionY = 'bottom';\n }\n if (collisionLeft) {\n usePositionX = 'right';\n }\n if (collisionRight) {\n usePositionX = 'left';\n }\n // Choose the largest gap available\n if (collisionAll) {\n const postions = ['left', 'right', 'top', 'bottom'];\n return postions.reduce((prev, next) => elBounds[prev] > elBounds[next] ? prev : next);\n }\n if ((collisionLeft && collisionRight)) {\n if (collisionTop) {\n return 'bottom';\n }\n if (collisionBottom) {\n return 'top';\n }\n return top > bottom ? 'top' : 'bottom';\n }\n if ((collisionTop && collisionBottom)) {\n if (collisionLeft) {\n return 'right';\n }\n if (collisionRight) {\n return 'left';\n }\n return left > right ? 'left' : 'right';\n }\n return `${usePositionY}-${usePositionX}`;\n}\nfunction detectIE() {\n let ua = '';\n if (typeof navigator !== 'undefined') {\n ua = navigator.userAgent.toLowerCase();\n }\n const msie = ua.indexOf('msie ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n // Other browser\n return false;\n}\nclass TextDirective {\n constructor() {\n this.newValue = new EventEmitter();\n }\n inputChange(event) {\n const value = event.target.value;\n if (this.rg === undefined) {\n this.newValue.emit(value);\n }\n else {\n const numeric = parseFloat(value);\n this.newValue.emit({ v: numeric, rg: this.rg });\n }\n }\n}\nTextDirective.ɵfac = function TextDirective_Factory(t) { return new (t || TextDirective)(); };\nTextDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: TextDirective, selectors: [[\"\", \"text\", \"\"]], hostBindings: function TextDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"input\", function TextDirective_input_HostBindingHandler($event) { return ctx.inputChange($event); });\n } }, inputs: { rg: \"rg\", text: \"text\" }, outputs: { newValue: \"newValue\" } });\nTextDirective.propDecorators = {\n rg: [{ type: Input }],\n text: [{ type: Input }],\n newValue: [{ type: Output }],\n inputChange: [{ type: HostListener, args: ['input', ['$event'],] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TextDirective, [{\n type: Directive,\n args: [{\n selector: '[text]'\n }]\n }], function () { return []; }, { newValue: [{\n type: Output\n }], inputChange: [{\n type: HostListener,\n args: ['input', ['$event']]\n }], rg: [{\n type: Input\n }], text: [{\n type: Input\n }] }); })();\nclass SliderDirective {\n constructor(elRef) {\n this.elRef = elRef;\n this.dragEnd = new EventEmitter();\n this.dragStart = new EventEmitter();\n this.newValue = new EventEmitter();\n this.listenerMove = (event) => this.move(event);\n this.listenerStop = () => this.stop();\n }\n mouseDown(event) {\n this.start(event);\n }\n touchStart(event) {\n this.start(event);\n }\n move(event) {\n event.preventDefault();\n this.setCursor(event);\n }\n start(event) {\n this.setCursor(event);\n event.stopPropagation();\n document.addEventListener('mouseup', this.listenerStop);\n document.addEventListener('touchend', this.listenerStop);\n document.addEventListener('mousemove', this.listenerMove);\n document.addEventListener('touchmove', this.listenerMove);\n this.dragStart.emit();\n }\n stop() {\n document.removeEventListener('mouseup', this.listenerStop);\n document.removeEventListener('touchend', this.listenerStop);\n document.removeEventListener('mousemove', this.listenerMove);\n document.removeEventListener('touchmove', this.listenerMove);\n this.dragEnd.emit();\n }\n getX(event) {\n const position = this.elRef.nativeElement.getBoundingClientRect();\n const pageX = (event.pageX !== undefined) ? event.pageX : event.touches[0].pageX;\n return pageX - position.left - window.pageXOffset;\n }\n getY(event) {\n const position = this.elRef.nativeElement.getBoundingClientRect();\n const pageY = (event.pageY !== undefined) ? event.pageY : event.touches[0].pageY;\n return pageY - position.top - window.pageYOffset;\n }\n setCursor(event) {\n const width = this.elRef.nativeElement.offsetWidth;\n const height = this.elRef.nativeElement.offsetHeight;\n const x = Math.max(0, Math.min(this.getX(event), width));\n const y = Math.max(0, Math.min(this.getY(event), height));\n if (this.rgX !== undefined && this.rgY !== undefined) {\n this.newValue.emit({ s: x / width, v: (1 - y / height), rgX: this.rgX, rgY: this.rgY });\n }\n else if (this.rgX === undefined && this.rgY !== undefined) {\n this.newValue.emit({ v: y / height, rgY: this.rgY });\n }\n else if (this.rgX !== undefined && this.rgY === undefined) {\n this.newValue.emit({ v: x / width, rgX: this.rgX });\n }\n }\n}\nSliderDirective.ɵfac = function SliderDirective_Factory(t) { return new (t || SliderDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nSliderDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: SliderDirective, selectors: [[\"\", \"slider\", \"\"]], hostBindings: function SliderDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"mousedown\", function SliderDirective_mousedown_HostBindingHandler($event) { return ctx.mouseDown($event); })(\"touchstart\", function SliderDirective_touchstart_HostBindingHandler($event) { return ctx.touchStart($event); });\n } }, inputs: { rgX: \"rgX\", rgY: \"rgY\", slider: \"slider\" }, outputs: { dragEnd: \"dragEnd\", dragStart: \"dragStart\", newValue: \"newValue\" } });\nSliderDirective.ctorParameters = () => [\n { type: ElementRef }\n];\nSliderDirective.propDecorators = {\n rgX: [{ type: Input }],\n rgY: [{ type: Input }],\n slider: [{ type: Input }],\n dragEnd: [{ type: Output }],\n dragStart: [{ type: Output }],\n newValue: [{ type: Output }],\n mouseDown: [{ type: HostListener, args: ['mousedown', ['$event'],] }],\n touchStart: [{ type: HostListener, args: ['touchstart', ['$event'],] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(SliderDirective, [{\n type: Directive,\n args: [{\n selector: '[slider]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { dragEnd: [{\n type: Output\n }], dragStart: [{\n type: Output\n }], newValue: [{\n type: Output\n }], mouseDown: [{\n type: HostListener,\n args: ['mousedown', ['$event']]\n }], touchStart: [{\n type: HostListener,\n args: ['touchstart', ['$event']]\n }], rgX: [{\n type: Input\n }], rgY: [{\n type: Input\n }], slider: [{\n type: Input\n }] }); })();\nclass SliderPosition {\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\nclass SliderDimension {\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\n\nclass ColorPickerService {\n constructor() {\n this.active = null;\n }\n setActive(active) {\n if (this.active && this.active !== active && this.active.cpDialogDisplay !== 'inline') {\n this.active.closeDialog();\n }\n this.active = active;\n }\n hsva2hsla(hsva) {\n const h = hsva.h, s = hsva.s, v = hsva.v, a = hsva.a;\n if (v === 0) {\n return new Hsla(h, 0, 0, a);\n }\n else if (s === 0 && v === 1) {\n return new Hsla(h, 1, 1, a);\n }\n else {\n const l = v * (2 - s) / 2;\n return new Hsla(h, v * s / (1 - Math.abs(2 * l - 1)), l, a);\n }\n }\n hsla2hsva(hsla) {\n const h = Math.min(hsla.h, 1), s = Math.min(hsla.s, 1);\n const l = Math.min(hsla.l, 1), a = Math.min(hsla.a, 1);\n if (l === 0) {\n return new Hsva(h, 0, 0, a);\n }\n else {\n const v = l + s * (1 - Math.abs(2 * l - 1)) / 2;\n return new Hsva(h, 2 * (v - l) / v, v, a);\n }\n }\n hsvaToRgba(hsva) {\n let r, g, b;\n const h = hsva.h, s = hsva.s, v = hsva.v, a = hsva.a;\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n switch (i % 6) {\n case 0:\n r = v, g = t, b = p;\n break;\n case 1:\n r = q, g = v, b = p;\n break;\n case 2:\n r = p, g = v, b = t;\n break;\n case 3:\n r = p, g = q, b = v;\n break;\n case 4:\n r = t, g = p, b = v;\n break;\n case 5:\n r = v, g = p, b = q;\n break;\n default:\n r = 0, g = 0, b = 0;\n }\n return new Rgba(r, g, b, a);\n }\n cmykToRgb(cmyk) {\n const r = (1 - cmyk.c) * (1 - cmyk.k);\n const g = (1 - cmyk.m) * (1 - cmyk.k);\n const b = (1 - cmyk.y) * (1 - cmyk.k);\n return new Rgba(r, g, b, cmyk.a);\n }\n rgbaToCmyk(rgba) {\n const k = 1 - Math.max(rgba.r, rgba.g, rgba.b);\n if (k === 1) {\n return new Cmyk(0, 0, 0, 1, rgba.a);\n }\n else {\n const c = (1 - rgba.r - k) / (1 - k);\n const m = (1 - rgba.g - k) / (1 - k);\n const y = (1 - rgba.b - k) / (1 - k);\n return new Cmyk(c, m, y, k, rgba.a);\n }\n }\n rgbaToHsva(rgba) {\n let h, s;\n const r = Math.min(rgba.r, 1), g = Math.min(rgba.g, 1);\n const b = Math.min(rgba.b, 1), a = Math.min(rgba.a, 1);\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n const v = max, d = max - min;\n s = (max === 0) ? 0 : d / max;\n if (max === min) {\n h = 0;\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n }\n h /= 6;\n }\n return new Hsva(h, s, v, a);\n }\n rgbaToHex(rgba, allowHex8) {\n /* tslint:disable:no-bitwise */\n let hex = '#' + ((1 << 24) | (rgba.r << 16) | (rgba.g << 8) | rgba.b).toString(16).substr(1);\n if (allowHex8) {\n hex += ((1 << 8) | Math.round(rgba.a * 255)).toString(16).substr(1);\n }\n /* tslint:enable:no-bitwise */\n return hex;\n }\n normalizeCMYK(cmyk) {\n return new Cmyk(cmyk.c / 100, cmyk.m / 100, cmyk.y / 100, cmyk.k / 100, cmyk.a);\n }\n denormalizeCMYK(cmyk) {\n return new Cmyk(Math.floor(cmyk.c * 100), Math.floor(cmyk.m * 100), Math.floor(cmyk.y * 100), Math.floor(cmyk.k * 100), cmyk.a);\n }\n denormalizeRGBA(rgba) {\n return new Rgba(Math.round(rgba.r * 255), Math.round(rgba.g * 255), Math.round(rgba.b * 255), rgba.a);\n }\n stringToHsva(colorString = '', allowHex8 = false) {\n let hsva = null;\n colorString = (colorString || '').toLowerCase();\n const stringParsers = [\n {\n re: /(rgb)a?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*%?,\\s*(\\d{1,3})\\s*%?(?:,\\s*(\\d+(?:\\.\\d+)?)\\s*)?\\)/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[2], 10) / 255, parseInt(execResult[3], 10) / 255, parseInt(execResult[4], 10) / 255, isNaN(parseFloat(execResult[5])) ? 1 : parseFloat(execResult[5]));\n }\n }, {\n re: /(hsl)a?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})%\\s*,\\s*(\\d{1,3})%\\s*(?:,\\s*(\\d+(?:\\.\\d+)?)\\s*)?\\)/,\n parse: function (execResult) {\n return new Hsla(parseInt(execResult[2], 10) / 360, parseInt(execResult[3], 10) / 100, parseInt(execResult[4], 10) / 100, isNaN(parseFloat(execResult[5])) ? 1 : parseFloat(execResult[5]));\n }\n }\n ];\n if (allowHex8) {\n stringParsers.push({\n re: /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})?$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1], 16) / 255, parseInt(execResult[2], 16) / 255, parseInt(execResult[3], 16) / 255, parseInt(execResult[4] || 'FF', 16) / 255);\n }\n });\n }\n else {\n stringParsers.push({\n re: /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1], 16) / 255, parseInt(execResult[2], 16) / 255, parseInt(execResult[3], 16) / 255, 1);\n }\n });\n }\n stringParsers.push({\n re: /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1] + execResult[1], 16) / 255, parseInt(execResult[2] + execResult[2], 16) / 255, parseInt(execResult[3] + execResult[3], 16) / 255, 1);\n }\n });\n for (const key in stringParsers) {\n if (stringParsers.hasOwnProperty(key)) {\n const parser = stringParsers[key];\n const match = parser.re.exec(colorString), color = match && parser.parse(match);\n if (color) {\n if (color instanceof Rgba) {\n hsva = this.rgbaToHsva(color);\n }\n else if (color instanceof Hsla) {\n hsva = this.hsla2hsva(color);\n }\n return hsva;\n }\n }\n }\n return hsva;\n }\n outputFormat(hsva, outputFormat, alphaChannel) {\n if (outputFormat === 'auto') {\n outputFormat = hsva.a < 1 ? 'rgba' : 'hex';\n }\n switch (outputFormat) {\n case 'hsla':\n const hsla = this.hsva2hsla(hsva);\n const hslaText = new Hsla(Math.round((hsla.h) * 360), Math.round(hsla.s * 100), Math.round(hsla.l * 100), Math.round(hsla.a * 100) / 100);\n if (hsva.a < 1 || alphaChannel === 'always') {\n return 'hsla(' + hslaText.h + ',' + hslaText.s + '%,' + hslaText.l + '%,' +\n hslaText.a + ')';\n }\n else {\n return 'hsl(' + hslaText.h + ',' + hslaText.s + '%,' + hslaText.l + '%)';\n }\n case 'rgba':\n const rgba = this.denormalizeRGBA(this.hsvaToRgba(hsva));\n if (hsva.a < 1 || alphaChannel === 'always') {\n return 'rgba(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ',' +\n Math.round(rgba.a * 100) / 100 + ')';\n }\n else {\n return 'rgb(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ')';\n }\n default:\n const allowHex8 = (alphaChannel === 'always' || alphaChannel === 'forced');\n return this.rgbaToHex(this.denormalizeRGBA(this.hsvaToRgba(hsva)), allowHex8);\n }\n }\n}\nColorPickerService.ɵfac = function ColorPickerService_Factory(t) { return new (t || ColorPickerService)(); };\nColorPickerService.ɵprov = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjectable({ token: ColorPickerService, factory: ColorPickerService.ɵfac });\nColorPickerService.ctorParameters = () => [];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ColorPickerService, [{\n type: Injectable\n }], function () { return []; }, null); })();\n\nclass ColorPickerComponent {\n constructor(elRef, cdRef, service) {\n this.elRef = elRef;\n this.cdRef = cdRef;\n this.service = service;\n this.isIE10 = false;\n this.dialogArrowSize = 10;\n this.dialogArrowOffset = 15;\n this.dialogInputFields = [\n ColorFormats.HEX,\n ColorFormats.RGBA,\n ColorFormats.HSLA,\n ColorFormats.CMYK\n ];\n this.useRootViewContainer = false;\n }\n handleEsc(event) {\n if (this.show && this.cpDialogDisplay === 'popup') {\n this.onCancelColor(event);\n }\n }\n handleEnter(event) {\n if (this.show && this.cpDialogDisplay === 'popup') {\n this.onAcceptColor(event);\n }\n }\n ngOnInit() {\n this.slider = new SliderPosition(0, 0, 0, 0);\n const hueWidth = this.hueSlider.nativeElement.offsetWidth || 140;\n const alphaWidth = this.alphaSlider.nativeElement.offsetWidth || 140;\n this.sliderDimMax = new SliderDimension(hueWidth, this.cpWidth, 130, alphaWidth);\n if (this.cpCmykEnabled) {\n this.format = ColorFormats.CMYK;\n }\n else if (this.cpOutputFormat === 'rgba') {\n this.format = ColorFormats.RGBA;\n }\n else if (this.cpOutputFormat === 'hsla') {\n this.format = ColorFormats.HSLA;\n }\n else {\n this.format = ColorFormats.HEX;\n }\n this.listenerMouseDown = (event) => { this.onMouseDown(event); };\n this.listenerResize = () => { this.onResize(); };\n this.openDialog(this.initialColor, false);\n }\n ngOnDestroy() {\n this.closeDialog();\n }\n ngAfterViewInit() {\n if (this.cpWidth !== 230 || this.cpDialogDisplay === 'inline') {\n const hueWidth = this.hueSlider.nativeElement.offsetWidth || 140;\n const alphaWidth = this.alphaSlider.nativeElement.offsetWidth || 140;\n this.sliderDimMax = new SliderDimension(hueWidth, this.cpWidth, 130, alphaWidth);\n this.updateColorPicker(false);\n this.cdRef.detectChanges();\n }\n }\n openDialog(color, emit = true) {\n this.service.setActive(this);\n if (!this.width) {\n this.cpWidth = this.directiveElementRef.nativeElement.offsetWidth;\n }\n if (!this.height) {\n this.height = 320;\n }\n this.setInitialColor(color);\n this.setColorFromString(color, emit);\n this.openColorPicker();\n }\n closeDialog() {\n this.closeColorPicker();\n }\n setupDialog(instance, elementRef, color, cpWidth, cpHeight, cpDialogDisplay, cpFallbackColor, cpColorMode, cpCmykEnabled, cpAlphaChannel, cpOutputFormat, cpDisableInput, cpIgnoredElements, cpSaveClickOutside, cpCloseClickOutside, cpUseRootViewContainer, cpPosition, cpPositionOffset, cpPositionRelativeToArrow, cpPresetLabel, cpPresetColors, cpPresetColorsClass, cpMaxPresetColorsLength, cpPresetEmptyMessage, cpPresetEmptyMessageClass, cpOKButton, cpOKButtonClass, cpOKButtonText, cpCancelButton, cpCancelButtonClass, cpCancelButtonText, cpAddColorButton, cpAddColorButtonClass, cpAddColorButtonText, cpRemoveColorButtonClass, cpTriggerElement) {\n this.setInitialColor(color);\n this.setColorMode(cpColorMode);\n this.isIE10 = (detectIE() === 10);\n this.directiveInstance = instance;\n this.directiveElementRef = elementRef;\n this.cpDisableInput = cpDisableInput;\n this.cpCmykEnabled = cpCmykEnabled;\n this.cpAlphaChannel = cpAlphaChannel;\n this.cpOutputFormat = cpOutputFormat;\n this.cpDialogDisplay = cpDialogDisplay;\n this.cpIgnoredElements = cpIgnoredElements;\n this.cpSaveClickOutside = cpSaveClickOutside;\n this.cpCloseClickOutside = cpCloseClickOutside;\n this.useRootViewContainer = cpUseRootViewContainer;\n this.width = this.cpWidth = parseInt(cpWidth, 10);\n this.height = this.cpHeight = parseInt(cpHeight, 10);\n this.cpPosition = cpPosition;\n this.cpPositionOffset = parseInt(cpPositionOffset, 10);\n this.cpOKButton = cpOKButton;\n this.cpOKButtonText = cpOKButtonText;\n this.cpOKButtonClass = cpOKButtonClass;\n this.cpCancelButton = cpCancelButton;\n this.cpCancelButtonText = cpCancelButtonText;\n this.cpCancelButtonClass = cpCancelButtonClass;\n this.fallbackColor = cpFallbackColor || '#fff';\n this.setPresetConfig(cpPresetLabel, cpPresetColors);\n this.cpPresetColorsClass = cpPresetColorsClass;\n this.cpMaxPresetColorsLength = cpMaxPresetColorsLength;\n this.cpPresetEmptyMessage = cpPresetEmptyMessage;\n this.cpPresetEmptyMessageClass = cpPresetEmptyMessageClass;\n this.cpAddColorButton = cpAddColorButton;\n this.cpAddColorButtonText = cpAddColorButtonText;\n this.cpAddColorButtonClass = cpAddColorButtonClass;\n this.cpRemoveColorButtonClass = cpRemoveColorButtonClass;\n this.cpTriggerElement = cpTriggerElement;\n if (!cpPositionRelativeToArrow) {\n this.dialogArrowOffset = 0;\n }\n if (cpDialogDisplay === 'inline') {\n this.dialogArrowSize = 0;\n this.dialogArrowOffset = 0;\n }\n if (cpOutputFormat === 'hex' &&\n cpAlphaChannel !== 'always' && cpAlphaChannel !== 'forced') {\n this.cpAlphaChannel = 'disabled';\n }\n }\n setColorMode(mode) {\n switch (mode.toString().toUpperCase()) {\n case '1':\n case 'C':\n case 'COLOR':\n this.cpColorMode = 1;\n break;\n case '2':\n case 'G':\n case 'GRAYSCALE':\n this.cpColorMode = 2;\n break;\n case '3':\n case 'P':\n case 'PRESETS':\n this.cpColorMode = 3;\n break;\n default:\n this.cpColorMode = 1;\n }\n }\n setInitialColor(color) {\n this.initialColor = color;\n }\n setPresetConfig(cpPresetLabel, cpPresetColors) {\n this.cpPresetLabel = cpPresetLabel;\n this.cpPresetColors = cpPresetColors;\n }\n setColorFromString(value, emit = true, update = true) {\n let hsva;\n if (this.cpAlphaChannel === 'always' || this.cpAlphaChannel === 'forced') {\n hsva = this.service.stringToHsva(value, true);\n if (!hsva && !this.hsva) {\n hsva = this.service.stringToHsva(value, false);\n }\n }\n else {\n hsva = this.service.stringToHsva(value, false);\n }\n if (!hsva && !this.hsva) {\n hsva = this.service.stringToHsva(this.fallbackColor, false);\n }\n if (hsva) {\n this.hsva = hsva;\n this.sliderH = this.hsva.h;\n if (this.cpOutputFormat === 'hex' && this.cpAlphaChannel === 'disabled') {\n this.hsva.a = 1;\n }\n this.updateColorPicker(emit, update);\n }\n }\n onResize() {\n if (this.position === 'fixed') {\n this.setDialogPosition();\n }\n else if (this.cpDialogDisplay !== 'inline') {\n this.closeColorPicker();\n }\n }\n onDragEnd(slider) {\n this.directiveInstance.sliderDragEnd({ slider: slider, color: this.outputColor });\n }\n onDragStart(slider) {\n this.directiveInstance.sliderDragStart({ slider: slider, color: this.outputColor });\n }\n onMouseDown(event) {\n if (this.show &&\n !this.isIE10 && this.cpDialogDisplay === 'popup' &&\n event.target !== this.directiveElementRef.nativeElement &&\n !this.isDescendant(this.elRef.nativeElement, event.target) &&\n !this.isDescendant(this.directiveElementRef.nativeElement, event.target) &&\n this.cpIgnoredElements.filter((item) => item === event.target).length === 0) {\n if (this.cpSaveClickOutside) {\n this.directiveInstance.colorSelected(this.outputColor);\n }\n else {\n this.hsva = null;\n this.setColorFromString(this.initialColor, false);\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.initialColor);\n this.directiveInstance.colorCanceled();\n }\n if (this.cpCloseClickOutside) {\n this.closeColorPicker();\n }\n }\n }\n onAcceptColor(event) {\n event.stopPropagation();\n if (this.outputColor) {\n this.directiveInstance.colorSelected(this.outputColor);\n }\n if (this.cpDialogDisplay === 'popup') {\n this.closeColorPicker();\n }\n }\n onCancelColor(event) {\n this.hsva = null;\n event.stopPropagation();\n this.directiveInstance.colorCanceled();\n this.setColorFromString(this.initialColor, true);\n if (this.cpDialogDisplay === 'popup') {\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.initialColor, true);\n this.closeColorPicker();\n }\n }\n onFormatToggle(change) {\n const availableFormats = this.dialogInputFields.length -\n (this.cpCmykEnabled ? 0 : 1);\n const nextFormat = (((this.dialogInputFields.indexOf(this.format) + change) %\n availableFormats) + availableFormats) % availableFormats;\n this.format = this.dialogInputFields[nextFormat];\n }\n onColorChange(value) {\n this.hsva.s = value.s / value.rgX;\n this.hsva.v = value.v / value.rgY;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'lightness',\n value: this.hsva.v,\n color: this.outputColor\n });\n this.directiveInstance.sliderChanged({\n slider: 'saturation',\n value: this.hsva.s,\n color: this.outputColor\n });\n }\n onHueChange(value) {\n this.hsva.h = value.v / value.rgX;\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'hue',\n value: this.hsva.h,\n color: this.outputColor\n });\n }\n onValueChange(value) {\n this.hsva.v = value.v / value.rgX;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'value',\n value: this.hsva.v,\n color: this.outputColor\n });\n }\n onAlphaChange(value) {\n this.hsva.a = value.v / value.rgX;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'alpha',\n value: this.hsva.a,\n color: this.outputColor\n });\n }\n onHexInput(value) {\n if (value === null) {\n this.updateColorPicker();\n }\n else {\n if (value && value[0] !== '#') {\n value = '#' + value;\n }\n let validHex = /^#([a-f0-9]{3}|[a-f0-9]{6})$/gi;\n if (this.cpAlphaChannel === 'always') {\n validHex = /^#([a-f0-9]{3}|[a-f0-9]{6}|[a-f0-9]{8})$/gi;\n }\n const valid = validHex.test(value);\n if (valid) {\n if (value.length < 5) {\n value = '#' + value.substring(1)\n .split('')\n .map(c => c + c)\n .join('');\n }\n if (this.cpAlphaChannel === 'forced') {\n value += Math.round(this.hsva.a * 255).toString(16);\n }\n this.setColorFromString(value, true, false);\n }\n this.directiveInstance.inputChanged({\n input: 'hex',\n valid: valid,\n value: value,\n color: this.outputColor\n });\n }\n }\n onRedInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.r = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'red',\n valid: valid,\n value: rgba.r,\n color: this.outputColor\n });\n }\n onBlueInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.b = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'blue',\n valid: valid,\n value: rgba.b,\n color: this.outputColor\n });\n }\n onGreenInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.g = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'green',\n valid: valid,\n value: rgba.g,\n color: this.outputColor\n });\n }\n onHueInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.h = value.v / value.rg;\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'hue',\n valid: valid,\n value: this.hsva.h,\n color: this.outputColor\n });\n }\n onValueInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.v = value.v / value.rg;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'value',\n valid: valid,\n value: this.hsva.v,\n color: this.outputColor\n });\n }\n onAlphaInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.a = value.v / value.rg;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'alpha',\n valid: valid,\n value: this.hsva.a,\n color: this.outputColor\n });\n }\n onLightnessInput(value) {\n const hsla = this.service.hsva2hsla(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n hsla.l = value.v / value.rg;\n this.hsva = this.service.hsla2hsva(hsla);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'lightness',\n valid: valid,\n value: hsla.l,\n color: this.outputColor\n });\n }\n onSaturationInput(value) {\n const hsla = this.service.hsva2hsla(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n hsla.s = value.v / value.rg;\n this.hsva = this.service.hsla2hsva(hsla);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'saturation',\n valid: valid,\n value: hsla.s,\n color: this.outputColor\n });\n }\n onCyanInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.c = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'cyan',\n valid: true,\n value: this.cmyk.c,\n color: this.outputColor\n });\n }\n onMagentaInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.m = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'magenta',\n valid: true,\n value: this.cmyk.m,\n color: this.outputColor\n });\n }\n onYellowInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.y = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'yellow',\n valid: true,\n value: this.cmyk.y,\n color: this.outputColor\n });\n }\n onBlackInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.k = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'black',\n valid: true,\n value: this.cmyk.k,\n color: this.outputColor\n });\n }\n onAddPresetColor(event, value) {\n event.stopPropagation();\n if (!this.cpPresetColors.filter((color) => (color === value)).length) {\n this.cpPresetColors = this.cpPresetColors.concat(value);\n this.directiveInstance.presetColorsChanged(this.cpPresetColors);\n }\n }\n onRemovePresetColor(event, value) {\n event.stopPropagation();\n this.cpPresetColors = this.cpPresetColors.filter((color) => (color !== value));\n this.directiveInstance.presetColorsChanged(this.cpPresetColors);\n }\n // Private helper functions for the color picker dialog status\n openColorPicker() {\n if (!this.show) {\n this.show = true;\n this.hidden = true;\n setTimeout(() => {\n this.hidden = false;\n this.setDialogPosition();\n this.cdRef.detectChanges();\n }, 0);\n this.directiveInstance.stateChanged(true);\n if (!this.isIE10) {\n document.addEventListener('mousedown', this.listenerMouseDown);\n document.addEventListener('touchstart', this.listenerMouseDown);\n }\n window.addEventListener('resize', this.listenerResize);\n }\n }\n closeColorPicker() {\n if (this.show) {\n this.show = false;\n this.directiveInstance.stateChanged(false);\n if (!this.isIE10) {\n document.removeEventListener('mousedown', this.listenerMouseDown);\n document.removeEventListener('touchstart', this.listenerMouseDown);\n }\n window.removeEventListener('resize', this.listenerResize);\n if (!this.cdRef['destroyed']) {\n this.cdRef.detectChanges();\n }\n }\n }\n updateColorPicker(emit = true, update = true, cmykInput = false) {\n if (this.sliderDimMax) {\n if (this.cpColorMode === 2) {\n this.hsva.s = 0;\n }\n let hue, hsla, rgba;\n const lastOutput = this.outputColor;\n hsla = this.service.hsva2hsla(this.hsva);\n if (!this.cpCmykEnabled) {\n rgba = this.service.denormalizeRGBA(this.service.hsvaToRgba(this.hsva));\n }\n else {\n if (!cmykInput) {\n rgba = this.service.hsvaToRgba(this.hsva);\n this.cmyk = this.service.denormalizeCMYK(this.service.rgbaToCmyk(rgba));\n }\n else {\n rgba = this.service.cmykToRgb(this.service.normalizeCMYK(this.cmyk));\n this.hsva = this.service.rgbaToHsva(rgba);\n }\n rgba = this.service.denormalizeRGBA(rgba);\n this.sliderH = this.hsva.h;\n }\n hue = this.service.denormalizeRGBA(this.service.hsvaToRgba(new Hsva(this.sliderH || this.hsva.h, 1, 1, 1)));\n if (update) {\n this.hslaText = new Hsla(Math.round((hsla.h) * 360), Math.round(hsla.s * 100), Math.round(hsla.l * 100), Math.round(hsla.a * 100) / 100);\n this.rgbaText = new Rgba(rgba.r, rgba.g, rgba.b, Math.round(rgba.a * 100) / 100);\n if (this.cpCmykEnabled) {\n this.cmykText = new Cmyk(this.cmyk.c, this.cmyk.m, this.cmyk.y, this.cmyk.k, Math.round(this.cmyk.a * 100) / 100);\n }\n const allowHex8 = this.cpAlphaChannel === 'always';\n this.hexText = this.service.rgbaToHex(rgba, allowHex8);\n this.hexAlpha = this.rgbaText.a;\n }\n if (this.cpOutputFormat === 'auto') {\n if (this.format !== ColorFormats.RGBA && this.format !== ColorFormats.CMYK) {\n if (this.hsva.a < 1) {\n this.format = this.hsva.a < 1 ? ColorFormats.RGBA : ColorFormats.HEX;\n }\n }\n }\n this.hueSliderColor = 'rgb(' + hue.r + ',' + hue.g + ',' + hue.b + ')';\n this.alphaSliderColor = 'rgb(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ')';\n this.outputColor = this.service.outputFormat(this.hsva, this.cpOutputFormat, this.cpAlphaChannel);\n this.selectedColor = this.service.outputFormat(this.hsva, 'rgba', null);\n if (this.format !== ColorFormats.CMYK) {\n this.cmykColor = '';\n }\n else {\n if (this.cpAlphaChannel === 'always' || this.cpAlphaChannel === 'enabled' ||\n this.cpAlphaChannel === 'forced') {\n const alpha = Math.round(this.cmyk.a * 100) / 100;\n this.cmykColor = `cmyka(${this.cmyk.c},${this.cmyk.m},${this.cmyk.y},${this.cmyk.k},${alpha})`;\n }\n else {\n this.cmykColor = `cmyk(${this.cmyk.c},${this.cmyk.m},${this.cmyk.y},${this.cmyk.k})`;\n }\n }\n this.slider = new SliderPosition((this.sliderH || this.hsva.h) * this.sliderDimMax.h - 8, this.hsva.s * this.sliderDimMax.s - 8, (1 - this.hsva.v) * this.sliderDimMax.v - 8, this.hsva.a * this.sliderDimMax.a - 8);\n if (emit && lastOutput !== this.outputColor) {\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.outputColor);\n }\n }\n }\n // Private helper functions for the color picker dialog positioning\n setDialogPosition() {\n if (this.cpDialogDisplay === 'inline') {\n this.position = 'relative';\n }\n else {\n let position = 'static', transform = '', style;\n let parentNode = null, transformNode = null;\n let node = this.directiveElementRef.nativeElement.parentNode;\n const dialogHeight = this.dialogElement.nativeElement.offsetHeight;\n while (node !== null && node.tagName !== 'HTML') {\n style = window.getComputedStyle(node);\n position = style.getPropertyValue('position');\n transform = style.getPropertyValue('transform');\n if (position !== 'static' && parentNode === null) {\n parentNode = node;\n }\n if (transform && transform !== 'none' && transformNode === null) {\n transformNode = node;\n }\n if (position === 'fixed') {\n parentNode = transformNode;\n break;\n }\n node = node.parentNode;\n }\n const boxDirective = this.createDialogBox(this.directiveElementRef.nativeElement, (position !== 'fixed'));\n if (this.useRootViewContainer || (position === 'fixed' &&\n (!parentNode || parentNode instanceof HTMLUnknownElement))) {\n this.top = boxDirective.top;\n this.left = boxDirective.left;\n }\n else {\n if (parentNode === null) {\n parentNode = node;\n }\n const boxParent = this.createDialogBox(parentNode, (position !== 'fixed'));\n this.top = boxDirective.top - boxParent.top;\n this.left = boxDirective.left - boxParent.left;\n }\n if (position === 'fixed') {\n this.position = 'fixed';\n }\n let usePosition = this.cpPosition;\n if (this.cpPosition === 'auto') {\n const dialogBounds = this.dialogElement.nativeElement.getBoundingClientRect();\n const triggerBounds = this.cpTriggerElement.nativeElement.getBoundingClientRect();\n usePosition = calculateAutoPositioning(dialogBounds, triggerBounds);\n }\n if (usePosition === 'top') {\n this.arrowTop = dialogHeight - 1;\n this.top -= dialogHeight + this.dialogArrowSize;\n this.left += this.cpPositionOffset / 100 * boxDirective.width - this.dialogArrowOffset;\n }\n else if (usePosition === 'bottom') {\n this.top += boxDirective.height + this.dialogArrowSize;\n this.left += this.cpPositionOffset / 100 * boxDirective.width - this.dialogArrowOffset;\n }\n else if (usePosition === 'top-left' || usePosition === 'left-top') {\n this.top -= dialogHeight - boxDirective.height + boxDirective.height * this.cpPositionOffset / 100;\n this.left -= this.cpWidth + this.dialogArrowSize - 2 - this.dialogArrowOffset;\n }\n else if (usePosition === 'top-right' || usePosition === 'right-top') {\n this.top -= dialogHeight - boxDirective.height + boxDirective.height * this.cpPositionOffset / 100;\n this.left += boxDirective.width + this.dialogArrowSize - 2 - this.dialogArrowOffset;\n }\n else if (usePosition === 'left' || usePosition === 'bottom-left' || usePosition === 'left-bottom') {\n this.top += boxDirective.height * this.cpPositionOffset / 100 - this.dialogArrowOffset;\n this.left -= this.cpWidth + this.dialogArrowSize - 2;\n }\n else { // usePosition === 'right' || usePosition === 'bottom-right' || usePosition === 'right-bottom'\n this.top += boxDirective.height * this.cpPositionOffset / 100 - this.dialogArrowOffset;\n this.left += boxDirective.width + this.dialogArrowSize - 2;\n }\n this.cpUsePosition = usePosition;\n }\n }\n // Private helper functions for the color picker dialog positioning and opening\n isDescendant(parent, child) {\n let node = child.parentNode;\n while (node !== null) {\n if (node === parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n }\n createDialogBox(element, offset) {\n return {\n top: element.getBoundingClientRect().top + (offset ? window.pageYOffset : 0),\n left: element.getBoundingClientRect().left + (offset ? window.pageXOffset : 0),\n width: element.offsetWidth,\n height: element.offsetHeight\n };\n }\n}\nColorPickerComponent.ɵfac = function ColorPickerComponent_Factory(t) { return new (t || ColorPickerComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ColorPickerService)); };\nColorPickerComponent.ɵcmp = /*@__PURE__*/ ɵngcc0.ɵɵdefineComponent({ type: ColorPickerComponent, selectors: [[\"color-picker\"]], viewQuery: function ColorPickerComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c0, 7);\n ɵngcc0.ɵɵviewQuery(_c1, 7);\n ɵngcc0.ɵɵviewQuery(_c2, 7);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.dialogElement = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.hueSlider = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.alphaSlider = _t.first);\n } }, hostBindings: function ColorPickerComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"keyup.esc\", function ColorPickerComponent_keyup_esc_HostBindingHandler($event) { return ctx.handleEsc($event); }, false, ɵngcc0.ɵɵresolveDocument)(\"keyup.enter\", function ColorPickerComponent_keyup_enter_HostBindingHandler($event) { return ctx.handleEnter($event); }, false, ɵngcc0.ɵɵresolveDocument);\n } }, decls: 28, vars: 47, consts: [[1, \"color-picker\", 3, \"click\"], [\"dialogPopup\", \"\"], [3, \"class\", \"top\", 4, \"ngIf\"], [\"class\", \"saturation-lightness\", 3, \"slider\", \"rgX\", \"rgY\", \"background-color\", \"newValue\", \"dragStart\", \"dragEnd\", 4, \"ngIf\"], [1, \"hue-alpha\", \"box\"], [1, \"left\"], [1, \"selected-color-background\"], [1, \"selected-color\"], [\"type\", \"button\", 3, \"class\", \"disabled\", \"click\", 4, \"ngIf\"], [1, \"right\"], [\"style\", \"height: 16px;\", 4, \"ngIf\"], [1, \"hue\", 3, \"slider\", \"rgX\", \"newValue\", \"dragStart\", \"dragEnd\"], [\"hueSlider\", \"\"], [1, \"cursor\"], [1, \"value\", 3, \"slider\", \"rgX\", \"newValue\", \"dragStart\", \"dragEnd\"], [\"valueSlider\", \"\"], [1, \"alpha\", 3, \"slider\", \"rgX\", \"newValue\", \"dragStart\", \"dragEnd\"], [\"alphaSlider\", \"\"], [\"class\", \"cmyk-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"hsla-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"rgba-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"hex-text\", 3, \"hex-alpha\", \"display\", 4, \"ngIf\"], [\"class\", \"value-text\", 4, \"ngIf\"], [\"class\", \"type-policy\", 4, \"ngIf\"], [\"class\", \"preset-area\", 4, \"ngIf\"], [\"class\", \"button-area\", 4, \"ngIf\"], [1, \"saturation-lightness\", 3, \"slider\", \"rgX\", \"rgY\", \"newValue\", \"dragStart\", \"dragEnd\"], [\"type\", \"button\", 3, \"disabled\", \"click\"], [2, \"height\", \"16px\"], [1, \"cmyk-text\"], [1, \"box\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"100\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\"], [\"type\", \"number\", \"pattern\", \"[0-9]+([\\\\.,][0-9]{1,2})?\", \"min\", \"0\", \"max\", \"1\", \"step\", \"0.1\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\", 4, \"ngIf\"], [4, \"ngIf\"], [\"type\", \"number\", \"pattern\", \"[0-9]+([\\\\.,][0-9]{1,2})?\", \"min\", \"0\", \"max\", \"1\", \"step\", \"0.1\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\"], [1, \"hsla-text\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"360\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\"], [1, \"rgba-text\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"255\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\"], [1, \"hex-text\"], [3, \"text\", \"value\", \"blur\", \"keyup.enter\", \"newValue\"], [1, \"value-text\"], [1, \"type-policy\"], [1, \"type-policy-arrow\", 3, \"click\"], [1, \"preset-area\"], [1, \"preset-label\"], [3, \"class\", 4, \"ngIf\"], [\"class\", \"preset-color\", 3, \"backgroundColor\", \"click\", 4, \"ngFor\", \"ngForOf\"], [1, \"preset-color\", 3, \"click\"], [3, \"class\", \"click\", 4, \"ngIf\"], [3, \"click\"], [1, \"button-area\"], [\"type\", \"button\", 3, \"class\", \"click\", 4, \"ngIf\"], [\"type\", \"button\", 3, \"click\"]], template: function ColorPickerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 0, 1);\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerComponent_Template_div_click_0_listener($event) { return $event.stopPropagation(); });\n ɵngcc0.ɵɵtemplate(2, ColorPickerComponent_div_2_Template, 1, 5, \"div\", 2);\n ɵngcc0.ɵɵtemplate(3, ColorPickerComponent_div_3_Template, 2, 8, \"div\", 3);\n ɵngcc0.ɵɵelementStart(4, \"div\", 4);\n ɵngcc0.ɵɵelementStart(5, \"div\", 5);\n ɵngcc0.ɵɵelement(6, \"div\", 6);\n ɵngcc0.ɵɵelement(7, \"div\", 7);\n ɵngcc0.ɵɵtemplate(8, ColorPickerComponent_button_8_Template, 2, 5, \"button\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(9, \"div\", 9);\n ɵngcc0.ɵɵtemplate(10, ColorPickerComponent_div_10_Template, 1, 0, \"div\", 10);\n ɵngcc0.ɵɵelementStart(11, \"div\", 11, 12);\n ɵngcc0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_11_listener($event) { return ctx.onHueChange($event); })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_11_listener() { return ctx.onDragStart(\"hue\"); })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_11_listener() { return ctx.onDragEnd(\"hue\"); });\n ɵngcc0.ɵɵelement(13, \"div\", 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(14, \"div\", 14, 15);\n ɵngcc0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_14_listener($event) { return ctx.onValueChange($event); })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_14_listener() { return ctx.onDragStart(\"value\"); })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_14_listener() { return ctx.onDragEnd(\"value\"); });\n ɵngcc0.ɵɵelement(16, \"div\", 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(17, \"div\", 16, 17);\n ɵngcc0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_17_listener($event) { return ctx.onAlphaChange($event); })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_17_listener() { return ctx.onDragStart(\"alpha\"); })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_17_listener() { return ctx.onDragEnd(\"alpha\"); });\n ɵngcc0.ɵɵelement(19, \"div\", 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(20, ColorPickerComponent_div_20_Template, 17, 12, \"div\", 18);\n ɵngcc0.ɵɵtemplate(21, ColorPickerComponent_div_21_Template, 14, 10, \"div\", 19);\n ɵngcc0.ɵɵtemplate(22, ColorPickerComponent_div_22_Template, 14, 10, \"div\", 20);\n ɵngcc0.ɵɵtemplate(23, ColorPickerComponent_div_23_Template, 8, 7, \"div\", 21);\n ɵngcc0.ɵɵtemplate(24, ColorPickerComponent_div_24_Template, 9, 3, \"div\", 22);\n ɵngcc0.ɵɵtemplate(25, ColorPickerComponent_div_25_Template, 3, 0, \"div\", 23);\n ɵngcc0.ɵɵtemplate(26, ColorPickerComponent_div_26_Template, 6, 3, \"div\", 24);\n ɵngcc0.ɵɵtemplate(27, ColorPickerComponent_div_27_Template, 3, 2, \"div\", 25);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵstyleProp(\"display\", !ctx.show ? \"none\" : \"block\")(\"visibility\", ctx.hidden ? \"hidden\" : \"visible\")(\"top\", ctx.top, \"px\")(\"left\", ctx.left, \"px\")(\"position\", ctx.position)(\"height\", ctx.cpHeight, \"px\")(\"width\", ctx.cpWidth, \"px\");\n ɵngcc0.ɵɵclassProp(\"open\", ctx.show);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.cpDialogDisplay == \"popup\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵstyleProp(\"background-color\", ctx.selectedColor);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.cpAddColorButton);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.cpAlphaChannel === \"disabled\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"display\", (ctx.cpColorMode || 1) === 1 ? \"block\" : \"none\");\n ɵngcc0.ɵɵproperty(\"rgX\", 1);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵstyleProp(\"left\", ctx.slider == null ? null : ctx.slider.h, \"px\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"display\", (ctx.cpColorMode || 1) === 2 ? \"block\" : \"none\");\n ɵngcc0.ɵɵproperty(\"rgX\", 1);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵstyleProp(\"right\", ctx.slider == null ? null : ctx.slider.v, \"px\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"display\", ctx.cpAlphaChannel === \"disabled\" ? \"none\" : \"block\")(\"background-color\", ctx.alphaSliderColor);\n ɵngcc0.ɵɵproperty(\"rgX\", 1);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵstyleProp(\"left\", ctx.slider == null ? null : ctx.slider.a, \"px\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", (ctx.cpPresetColors == null ? null : ctx.cpPresetColors.length) || ctx.cpAddColorButton);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.cpOKButton || ctx.cpCancelButton);\n } }, directives: [ɵngcc1.NgIf, SliderDirective, TextDirective, ɵngcc1.NgForOf], styles: [\".color-picker{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-color:#fff;border:1px solid #777;cursor:default;height:auto;position:absolute;user-select:none;width:230px;z-index:1000}.color-picker *{box-sizing:border-box;font-size:11px;margin:0}.color-picker input{color:#000;font-size:13px;height:26px;min-width:0;text-align:center;width:0}.color-picker input:-moz-submit-invalid,.color-picker input:-moz-ui-invalid,.color-picker input:invalid{box-shadow:none}.color-picker input::-webkit-inner-spin-button,.color-picker input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.color-picker .arrow{border-style:solid;height:0;position:absolute;width:0;z-index:999999}.color-picker .arrow.arrow-top{border-color:#777 transparent transparent;border-width:10px 5px;left:8px}.color-picker .arrow.arrow-bottom{border-color:transparent transparent #777;border-width:10px 5px;left:8px;top:-20px}.color-picker .arrow.arrow-left-top,.color-picker .arrow.arrow-top-left{border-color:transparent transparent transparent #777;border-width:5px 10px;bottom:8px;right:-21px}.color-picker .arrow.arrow-right-top,.color-picker .arrow.arrow-top-right{border-color:transparent #777 transparent transparent;border-width:5px 10px;bottom:8px;left:-20px}.color-picker .arrow.arrow-bottom-left,.color-picker .arrow.arrow-left,.color-picker .arrow.arrow-left-bottom{border-color:transparent transparent transparent #777;border-width:5px 10px;right:-21px;top:8px}.color-picker .arrow.arrow-bottom-right,.color-picker .arrow.arrow-right,.color-picker .arrow.arrow-right-bottom{border-color:transparent #777 transparent transparent;border-width:5px 10px;left:-20px;top:8px}.color-picker .cursor{border:2px solid #222;border-radius:50%;cursor:default;height:16px;position:relative;width:16px}.color-picker .box{display:flex;padding:4px 8px}.color-picker .left{padding:16px 8px;position:relative}.color-picker .right{flex:1 1 auto;padding:12px 8px}.color-picker .button-area{padding:0 16px 16px;text-align:right}.color-picker .button-area button{margin-left:8px}.color-picker .preset-area{padding:4px 15px}.color-picker .preset-area .preset-label{color:#555;font-size:11px;overflow:hidden;padding:4px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.color-picker .preset-area .preset-color{border:1px solid #a9a9a9;border-radius:25%;cursor:pointer;display:inline-block;height:18px;margin:4px 6px 8px;position:relative;width:18px}.color-picker .preset-area .preset-empty-message{font-style:italic;margin-bottom:8px;margin-top:4px;min-height:18px;text-align:center}.color-picker .hex-text{font-size:11px;padding:4px 8px;width:100%}.color-picker .hex-text .box{padding:0 24px 8px 8px}.color-picker .hex-text .box div{clear:left;color:#555;flex:1 1 auto;float:left;text-align:center}.color-picker .hex-text .box input{border:1px solid #a9a9a9;flex:1 1 auto;padding:1px}.color-picker .hex-alpha .box div:first-child,.color-picker .hex-alpha .box input:first-child{flex-grow:3;margin-right:8px}.color-picker .cmyk-text,.color-picker .hsla-text,.color-picker .rgba-text,.color-picker .value-text{font-size:11px;padding:4px 8px;width:100%}.color-picker .cmyk-text .box,.color-picker .hsla-text .box,.color-picker .rgba-text .box{padding:0 24px 8px 8px}.color-picker .value-text .box{padding:0 8px 8px}.color-picker .cmyk-text .box div,.color-picker .hsla-text .box div,.color-picker .rgba-text .box div,.color-picker .value-text .box div{color:#555;flex:1 1 auto;margin-right:8px;text-align:center}.color-picker .cmyk-text .box div:last-child,.color-picker .hsla-text .box div:last-child,.color-picker .rgba-text .box div:last-child,.color-picker .value-text .box div:last-child{margin-right:0}.color-picker .cmyk-text .box input,.color-picker .hsla-text .box input,.color-picker .rgba-text .box input,.color-picker .value-text .box input{border:1px solid #a9a9a9;flex:1;float:left;margin:0 8px 0 0;padding:1px}.color-picker .cmyk-text .box input:last-child,.color-picker .hsla-text .box input:last-child,.color-picker .rgba-text .box input:last-child,.color-picker .value-text .box input:last-child{margin-right:0}.color-picker .hue-alpha{align-items:center;margin-bottom:3px}.color-picker .hue{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwkUFWbCCAAAAFxJREFUaN7t0kEKg0AQAME2x83/n2qu5qCgD1iDhCoYdpnbQC9bbY1qVO/jvc6k3ad91s7/7F1/csgPrujuQ17BDYSFsBAWwgJhISyEBcJCWAgLhIWwEBYIi2f7Ar/1TCgFH2X9AAAAAElFTkSuQmCC\\\");direction:ltr}.color-picker .hue,.color-picker .value{background-size:100% 100%;border:none;cursor:pointer;height:16px;margin-bottom:16px;width:100%}.color-picker .value{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAACTklEQVR42u3SYUcrABhA4U2SkmRJMmWSJklKJiWZZpKUJJskKUmaTFImKZOUzMySpGRmliRNJilJSpKSJEtmSpIpmWmSdO736/6D+x7OP3gUCoWCv1cqlSQlJZGcnExKSgqpqamkpaWRnp5ORkYGmZmZqFQqsrKyyM7OJicnh9zcXNRqNXl5eeTn56PRaCgoKKCwsJCioiK0Wi3FxcWUlJRQWlpKWVkZ5eXlVFRUUFlZiU6no6qqiurqampqaqitraWurg69Xk99fT0GgwGj0UhDQwONjY00NTXR3NxMS0sLra2ttLW10d7ejslkwmw209HRQWdnJ11dXXR3d9PT00Nvby99fX309/czMDDA4OAgFouFoaEhrFYrw8PDjIyMMDo6ytjYGDabjfHxcSYmJpicnGRqagq73c709DQzMzPMzs4yNzfH/Pw8DocDp9OJy+XC7XazsLDA4uIiS0tLLC8vs7KywurqKmtra3g8HrxeLz6fD7/fz/r6OhsbG2xubrK1tcX29jaBQICdnR2CwSC7u7vs7e2xv7/PwcEBh4eHHB0dcXx8zMnJCaenp5ydnXF+fs7FxQWXl5dcXV1xfX3Nzc0Nt7e33N3dEQqFuL+/5+HhgXA4TCQS4fHxkaenJ56fn3l5eeH19ZVoNMrb2xvv7+98fHwQi8WIx+N8fn6SSCT4+vri+/ubn58ffn9/+VcKgSWwBJbAElgCS2AJLIElsASWwBJYAktgCSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIElsP4/WH8AmJ5Z6jHS4h8AAAAASUVORK5CYII=\\\");direction:rtl}.color-picker .alpha{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwYQlZMa3gAAAWVJREFUaN7tmEGO6jAQRCsOArHgBpyAJYGjcGocxAm4A2IHpmoWE0eBH+ezmFlNvU06shJ3W6VEelWMUQAIIF9f6qZpimsA1LYtS2uF51/u27YVAFZVRUkEoGHdPV/sIcbIEIIkUdI/9Xa7neyv61+SWFUVAVCSct00TWn2fv6u3+Ecfd3tXzy/0+nEUu+SPjo/kqzrmiQpScN6v98XewfA8/lMkiLJ2WxGSUopcT6fM6U0NX9/frfbjev1WtfrlZfLhYfDQQHG/AIOlnGwjINlHCxjHCzjYJm/TJWdCwquJXseFFzGwDNNeiKMOJTO8xQdDQaeB29+K9efeLaBo9J7vdvtJj1RjFFjfiv7qv95tjx/7leSQgh93e1ffMeIp6O+YQjho/N791t1XVOSSI7N//K+4/GoxWLBx+PB5/Op5XLJ+/3OlJJWqxU3m83ovv5iGf8KjYNlHCxjHCzjYBkHy5gf5gusvQU7U37jTAAAAABJRU5ErkJggg==\\\");background-size:100% 100%;border:none;cursor:pointer;direction:ltr;height:16px;width:100%}.color-picker .type-policy{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACewAAAnsB01CO3AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIASURBVEiJ7ZY9axRRFIafsxMStrLQJpAgpBFhi+C9w1YSo00I6RZ/g9vZpBf/QOr4GyRgkSKNSrAadsZqQGwCkuAWyRZJsySwvhZ7N/vhzrgbLH3Ld8597jlzz50zJokyxXH8DqDVar0qi6v8BbItqSGpEcfxdlmsFWXkvX8AfAVWg3UKPEnT9GKujMzsAFgZsVaCN1VTQd77XUnrgE1kv+6935268WRpzrnHZvYRWC7YvC3pRZZl3wozqtVqiyH9IgjAspkd1Gq1xUJQtVrdB9ZKIAOthdg/Qc65LUk7wNIMoCVJO865rYFhkqjX6/d7vV4GPJwBMqofURS5JEk6FYBer/eeYb/Mo9WwFnPOvQbeAvfuAAK4BN4sAJtAG/gJIElmNuiJyba3EGNmZiPeZuEVmVell/Y/6N+CzDn3AXhEOOo7Hv/3BeAz8IzQkMPnJbuPx1wC+yYJ7/0nYIP5S/0FHKdp+rwCEEXRS/rf5Hl1Gtb2M0iSpCOpCZzPATmX1EySpHMLAsiy7MjMDoHrGSDXZnaYZdnRwBh7J91utwmczAA6CbG3GgPleX4jqUH/a1CktqRGnuc3hSCAMB32gKspkCtgb3KCQMmkjeP4WNJThrNNZval1WptTIsv7JtQ4tmIdRa8qSoEpWl6YWZNoAN0zKxZNPehpLSBZv2t+Q0CJ9lLnARQLAAAAABJRU5ErkJggg==\\\");background-position:50%;background-repeat:no-repeat;background-size:8px 16px;height:24px;position:absolute;right:12px;top:218px;width:16px}.color-picker .type-policy .type-policy-arrow{display:block;height:50%;width:100%}.color-picker .selected-color{border:1px solid #a9a9a9;border-radius:50%;height:40px;left:8px;position:absolute;top:16px;width:40px}.color-picker .selected-color-background{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAh0lEQVRYR+2W0QlAMQgD60zdfwOdqa8TmI/wQMr5K0I5bZLIzLOa2nt37VVVbd+dDx5obgCC3KBLwJ2ff4PnVidkf+ucIhw80HQaCLo3DMH3CRK3iFsmAWVl6hPNDwt8EvNE5q+YuEXcMgkonVM6SdyCoEvAnZ8v1Hjx817MilmxSUB5rdLJDycZgUAZUch/AAAAAElFTkSuQmCC\\\");border-radius:50%;height:40px;width:40px}.color-picker .saturation-lightness{background-image:url(\\\"data:image/png;base64,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\\\");background-size:100% 100%;border:none;cursor:pointer;direction:ltr;height:130px;touch-action:manipulation;width:100%}.color-picker .cp-add-color-button-class{background:transparent;border:0;cursor:pointer;display:inline;margin:3px -3px;padding:0;position:absolute}.color-picker .cp-add-color-button-class:hover{text-decoration:underline}.color-picker .cp-add-color-button-class:disabled{color:#999;cursor:not-allowed}.color-picker .cp-add-color-button-class:disabled:hover{text-decoration:none}.color-picker .cp-remove-color-button-class{background:#fff;border-radius:50%;box-shadow:1px 1px 5px #333;cursor:pointer;display:block;height:10px;position:absolute;right:-5px;text-align:center;top:-5px;width:10px}.color-picker .cp-remove-color-button-class:before{bottom:3.5px;content:\\\"x\\\";display:inline-block;font-size:10px;position:relative}\"], encapsulation: 2 });\nColorPickerComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: ChangeDetectorRef },\n { type: ColorPickerService }\n];\nColorPickerComponent.propDecorators = {\n dialogElement: [{ type: ViewChild, args: ['dialogPopup', { static: true },] }],\n hueSlider: [{ type: ViewChild, args: ['hueSlider', { static: true },] }],\n alphaSlider: [{ type: ViewChild, args: ['alphaSlider', { static: true },] }],\n handleEsc: [{ type: HostListener, args: ['document:keyup.esc', ['$event'],] }],\n handleEnter: [{ type: HostListener, args: ['document:keyup.enter', ['$event'],] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ColorPickerComponent, [{\n type: Component,\n args: [{\n selector: 'color-picker',\n template: \"<div #dialogPopup class=\\\"color-picker\\\" [class.open]=\\\"show\\\" [style.display]=\\\"!show ? 'none' : 'block'\\\" [style.visibility]=\\\"hidden ? 'hidden' : 'visible'\\\" [style.top.px]=\\\"top\\\" [style.left.px]=\\\"left\\\" [style.position]=\\\"position\\\" [style.height.px]=\\\"cpHeight\\\" [style.width.px]=\\\"cpWidth\\\" (click)=\\\"$event.stopPropagation()\\\">\\n <div *ngIf=\\\"cpDialogDisplay=='popup'\\\" class=\\\"arrow arrow-{{cpUsePosition}}\\\" [style.top.px]=\\\"arrowTop\\\"></div>\\n\\n <div *ngIf=\\\"(cpColorMode ||\\u00A01) === 1\\\" class=\\\"saturation-lightness\\\" [slider] [rgX]=\\\"1\\\" [rgY]=\\\"1\\\" [style.background-color]=\\\"hueSliderColor\\\" (newValue)=\\\"onColorChange($event)\\\" (dragStart)=\\\"onDragStart('saturation-lightness')\\\" (dragEnd)=\\\"onDragEnd('saturation-lightness')\\\">\\n <div class=\\\"cursor\\\" [style.top.px]=\\\"slider?.v\\\" [style.left.px]=\\\"slider?.s\\\"></div>\\n </div>\\n\\n <div class=\\\"hue-alpha box\\\">\\n <div class=\\\"left\\\">\\n <div class=\\\"selected-color-background\\\"></div>\\n\\n <div class=\\\"selected-color\\\" [style.background-color]=\\\"selectedColor\\\"></div>\\n\\n <button *ngIf=\\\"cpAddColorButton\\\" type=\\\"button\\\" class=\\\"{{cpAddColorButtonClass}}\\\" [disabled]=\\\"cpPresetColors && cpPresetColors.length >= cpMaxPresetColorsLength\\\" (click)=\\\"onAddPresetColor($event, selectedColor)\\\">\\n {{cpAddColorButtonText}}\\n </button>\\n </div>\\n\\n <div class=\\\"right\\\">\\n <div *ngIf=\\\"cpAlphaChannel==='disabled'\\\" style=\\\"height: 16px;\\\"></div>\\n\\n <div #hueSlider class=\\\"hue\\\" [slider] [rgX]=\\\"1\\\" [style.display]=\\\"(cpColorMode ||\\u00A01) === 1 ? 'block' : 'none'\\\" (newValue)=\\\"onHueChange($event)\\\" (dragStart)=\\\"onDragStart('hue')\\\" (dragEnd)=\\\"onDragEnd('hue')\\\">\\n <div class=\\\"cursor\\\" [style.left.px]=\\\"slider?.h\\\"></div>\\n </div>\\n\\n <div #valueSlider class=\\\"value\\\" [slider] [rgX]=\\\"1\\\" [style.display]=\\\"(cpColorMode ||\\u00A01) === 2 ? 'block': 'none'\\\" (newValue)=\\\"onValueChange($event)\\\" (dragStart)=\\\"onDragStart('value')\\\" (dragEnd)=\\\"onDragEnd('value')\\\">\\n <div class=\\\"cursor\\\" [style.right.px]=\\\"slider?.v\\\"></div>\\n </div>\\n\\n <div #alphaSlider class=\\\"alpha\\\" [slider] [rgX]=\\\"1\\\" [style.display]=\\\"cpAlphaChannel === 'disabled' ? 'none' : 'block'\\\" [style.background-color]=\\\"alphaSliderColor\\\" (newValue)=\\\"onAlphaChange($event)\\\" (dragStart)=\\\"onDragStart('alpha')\\\" (dragEnd)=\\\"onDragEnd('alpha')\\\">\\n <div class=\\\"cursor\\\" [style.left.px]=\\\"slider?.a\\\"></div>\\n </div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 1\\\" class=\\\"cmyk-text\\\" [style.display]=\\\"format !== 3 ? 'none' : 'block'\\\">\\n <div class=\\\"box\\\">\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"cmykText?.c\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onCyanInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"cmykText?.m\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onMagentaInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"cmykText?.y\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onYellowInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"cmykText?.k\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onBlackInput($event)\\\" />\\n <input *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" type=\\\"number\\\" pattern=\\\"[0-9]+([\\\\.,][0-9]{1,2})?\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" [text] [rg]=\\\"1\\\" [value]=\\\"cmykText?.a\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onAlphaInput($event)\\\" />\\n </div>\\n\\n <div class=\\\"box\\\">\\n <div>C</div><div>M</div><div>Y</div><div>K</div><div *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" >A</div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 1 \\\" class=\\\"hsla-text\\\" [style.display]=\\\"format !== 2 ? 'none' : 'block'\\\">\\n <div class=\\\"box\\\">\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"360\\\" [text] [rg]=\\\"360\\\" [value]=\\\"hslaText?.h\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onHueInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"hslaText?.s\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onSaturationInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"hslaText?.l\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onLightnessInput($event)\\\" />\\n <input *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" type=\\\"number\\\" pattern=\\\"[0-9]+([\\\\.,][0-9]{1,2})?\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" [text] [rg]=\\\"1\\\" [value]=\\\"hslaText?.a\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onAlphaInput($event)\\\" />\\n </div>\\n\\n <div class=\\\"box\\\">\\n <div>H</div><div>S</div><div>L</div><div *ngIf=\\\"cpAlphaChannel!=='disabled'\\\">A</div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 1 \\\" [style.display]=\\\"format !== 1 ? 'none' : 'block'\\\" class=\\\"rgba-text\\\">\\n <div class=\\\"box\\\">\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"255\\\" [text] [rg]=\\\"255\\\" [value]=\\\"rgbaText?.r\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onRedInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"255\\\" [text] [rg]=\\\"255\\\" [value]=\\\"rgbaText?.g\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onGreenInput($event)\\\" />\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"255\\\" [text] [rg]=\\\"255\\\" [value]=\\\"rgbaText?.b\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onBlueInput($event)\\\" />\\n <input *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" type=\\\"number\\\" pattern=\\\"[0-9]+([\\\\.,][0-9]{1,2})?\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" [text] [rg]=\\\"1\\\" [value]=\\\"rgbaText?.a\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onAlphaInput($event)\\\" />\\n </div>\\n\\n <div class=\\\"box\\\">\\n <div>R</div><div>G</div><div>B</div><div *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" >A</div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 1\\\" class=\\\"hex-text\\\" [class.hex-alpha]=\\\"cpAlphaChannel==='forced'\\\"\\n [style.display]=\\\"format !== 0 ? 'none' : 'block'\\\">\\n <div class=\\\"box\\\">\\n <input [text] [value]=\\\"hexText\\\" (blur)=\\\"onHexInput(null)\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onHexInput($event)\\\"/>\\n <input *ngIf=\\\"cpAlphaChannel==='forced'\\\" type=\\\"number\\\" pattern=\\\"[0-9]+([\\\\.,][0-9]{1,2})?\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" [text] [rg]=\\\"1\\\" [value]=\\\"hexAlpha\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onAlphaInput($event)\\\"/>\\n </div>\\n\\n <div class=\\\"box\\\">\\n <div>Hex</div>\\n <div *ngIf=\\\"cpAlphaChannel==='forced'\\\">A</div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 2\\\" class=\\\"value-text\\\">\\n <div class=\\\"box\\\">\\n <input type=\\\"number\\\" pattern=\\\"[0-9]*\\\" min=\\\"0\\\" max=\\\"100\\\" [text] [rg]=\\\"100\\\" [value]=\\\"hslaText?.l\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onValueInput($event)\\\" />\\n <input *ngIf=\\\"cpAlphaChannel!=='disabled'\\\" type=\\\"number\\\" pattern=\\\"[0-9]+([\\\\.,][0-9]{1,2})?\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" [text] [rg]=\\\"1\\\" [value]=\\\"hslaText?.a\\\" (keyup.enter)=\\\"onAcceptColor($event)\\\" (newValue)=\\\"onAlphaInput($event)\\\" />\\n </div>\\n\\n <div class=\\\"box\\\">\\n <div>V</div><div>A</div>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpDisableInput && (cpColorMode ||\\u00A01) === 1\\\" class=\\\"type-policy\\\">\\n <span class=\\\"type-policy-arrow\\\" (click)=\\\"onFormatToggle(-1)\\\"></span>\\n <span class=\\\"type-policy-arrow\\\" (click)=\\\"onFormatToggle(1)\\\"></span>\\n </div>\\n\\n <div *ngIf=\\\"cpPresetColors?.length || cpAddColorButton\\\" class=\\\"preset-area\\\">\\n <hr>\\n\\n <div class=\\\"preset-label\\\">{{cpPresetLabel}}</div>\\n\\n <div *ngIf=\\\"cpPresetColors?.length\\\" class=\\\"{{cpPresetColorsClass}}\\\">\\n <div *ngFor=\\\"let color of cpPresetColors\\\" class=\\\"preset-color\\\" [style.backgroundColor]=\\\"color\\\" (click)=\\\"setColorFromString(color)\\\">\\n <span *ngIf=\\\"cpAddColorButton\\\" class=\\\"{{cpRemoveColorButtonClass}}\\\" (click)=\\\"onRemovePresetColor($event, color)\\\"></span>\\n </div>\\n </div>\\n\\n <div *ngIf=\\\"!cpPresetColors?.length && cpAddColorButton\\\" class=\\\"{{cpPresetEmptyMessageClass}}\\\">{{cpPresetEmptyMessage}}</div>\\n </div>\\n\\n <div *ngIf=\\\"cpOKButton || cpCancelButton\\\" class=\\\"button-area\\\">\\n <button *ngIf=\\\"cpCancelButton\\\" type=\\\"button\\\" class=\\\"{{cpCancelButtonClass}}\\\" (click)=\\\"onCancelColor($event)\\\">{{cpCancelButtonText}}</button>\\n\\n <button *ngIf=\\\"cpOKButton\\\" type=\\\"button\\\" class=\\\"{{cpOKButtonClass}}\\\" (click)=\\\"onAcceptColor($event)\\\">{{cpOKButtonText}}</button>\\n </div>\\n</div>\\n\",\n encapsulation: ViewEncapsulation.None,\n styles: [\".color-picker{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-color:#fff;border:1px solid #777;cursor:default;height:auto;position:absolute;user-select:none;width:230px;z-index:1000}.color-picker *{box-sizing:border-box;font-size:11px;margin:0}.color-picker input{color:#000;font-size:13px;height:26px;min-width:0;text-align:center;width:0}.color-picker input:-moz-submit-invalid,.color-picker input:-moz-ui-invalid,.color-picker input:invalid{box-shadow:none}.color-picker input::-webkit-inner-spin-button,.color-picker input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.color-picker .arrow{border-style:solid;height:0;position:absolute;width:0;z-index:999999}.color-picker .arrow.arrow-top{border-color:#777 transparent transparent;border-width:10px 5px;left:8px}.color-picker .arrow.arrow-bottom{border-color:transparent transparent #777;border-width:10px 5px;left:8px;top:-20px}.color-picker .arrow.arrow-left-top,.color-picker .arrow.arrow-top-left{border-color:transparent transparent transparent #777;border-width:5px 10px;bottom:8px;right:-21px}.color-picker .arrow.arrow-right-top,.color-picker .arrow.arrow-top-right{border-color:transparent #777 transparent transparent;border-width:5px 10px;bottom:8px;left:-20px}.color-picker .arrow.arrow-bottom-left,.color-picker .arrow.arrow-left,.color-picker .arrow.arrow-left-bottom{border-color:transparent transparent transparent #777;border-width:5px 10px;right:-21px;top:8px}.color-picker .arrow.arrow-bottom-right,.color-picker .arrow.arrow-right,.color-picker .arrow.arrow-right-bottom{border-color:transparent #777 transparent transparent;border-width:5px 10px;left:-20px;top:8px}.color-picker .cursor{border:2px solid #222;border-radius:50%;cursor:default;height:16px;position:relative;width:16px}.color-picker .box{display:flex;padding:4px 8px}.color-picker .left{padding:16px 8px;position:relative}.color-picker .right{flex:1 1 auto;padding:12px 8px}.color-picker .button-area{padding:0 16px 16px;text-align:right}.color-picker .button-area button{margin-left:8px}.color-picker .preset-area{padding:4px 15px}.color-picker .preset-area .preset-label{color:#555;font-size:11px;overflow:hidden;padding:4px;text-align:left;text-overflow:ellipsis;white-space:nowrap;width:100%}.color-picker .preset-area .preset-color{border:1px solid #a9a9a9;border-radius:25%;cursor:pointer;display:inline-block;height:18px;margin:4px 6px 8px;position:relative;width:18px}.color-picker .preset-area .preset-empty-message{font-style:italic;margin-bottom:8px;margin-top:4px;min-height:18px;text-align:center}.color-picker .hex-text{font-size:11px;padding:4px 8px;width:100%}.color-picker .hex-text .box{padding:0 24px 8px 8px}.color-picker .hex-text .box div{clear:left;color:#555;flex:1 1 auto;float:left;text-align:center}.color-picker .hex-text .box input{border:1px solid #a9a9a9;flex:1 1 auto;padding:1px}.color-picker .hex-alpha .box div:first-child,.color-picker .hex-alpha .box input:first-child{flex-grow:3;margin-right:8px}.color-picker .cmyk-text,.color-picker .hsla-text,.color-picker .rgba-text,.color-picker .value-text{font-size:11px;padding:4px 8px;width:100%}.color-picker .cmyk-text .box,.color-picker .hsla-text .box,.color-picker .rgba-text .box{padding:0 24px 8px 8px}.color-picker .value-text .box{padding:0 8px 8px}.color-picker .cmyk-text .box div,.color-picker .hsla-text .box div,.color-picker .rgba-text .box div,.color-picker .value-text .box div{color:#555;flex:1 1 auto;margin-right:8px;text-align:center}.color-picker .cmyk-text .box div:last-child,.color-picker .hsla-text .box div:last-child,.color-picker .rgba-text .box div:last-child,.color-picker .value-text .box div:last-child{margin-right:0}.color-picker .cmyk-text .box input,.color-picker .hsla-text .box input,.color-picker .rgba-text .box input,.color-picker .value-text .box input{border:1px solid #a9a9a9;flex:1;float:left;margin:0 8px 0 0;padding:1px}.color-picker .cmyk-text .box input:last-child,.color-picker .hsla-text .box input:last-child,.color-picker .rgba-text .box input:last-child,.color-picker .value-text .box input:last-child{margin-right:0}.color-picker .hue-alpha{align-items:center;margin-bottom:3px}.color-picker .hue{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwkUFWbCCAAAAFxJREFUaN7t0kEKg0AQAME2x83/n2qu5qCgD1iDhCoYdpnbQC9bbY1qVO/jvc6k3ad91s7/7F1/csgPrujuQ17BDYSFsBAWwgJhISyEBcJCWAgLhIWwEBYIi2f7Ar/1TCgFH2X9AAAAAElFTkSuQmCC\\\");direction:ltr}.color-picker .hue,.color-picker .value{background-size:100% 100%;border:none;cursor:pointer;height:16px;margin-bottom:16px;width:100%}.color-picker .value{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAACTklEQVR42u3SYUcrABhA4U2SkmRJMmWSJklKJiWZZpKUJJskKUmaTFImKZOUzMySpGRmliRNJilJSpKSJEtmSpIpmWmSdO736/6D+x7OP3gUCoWCv1cqlSQlJZGcnExKSgqpqamkpaWRnp5ORkYGmZmZqFQqsrKyyM7OJicnh9zcXNRqNXl5eeTn56PRaCgoKKCwsJCioiK0Wi3FxcWUlJRQWlpKWVkZ5eXlVFRUUFlZiU6no6qqiurqampqaqitraWurg69Xk99fT0GgwGj0UhDQwONjY00NTXR3NxMS0sLra2ttLW10d7ejslkwmw209HRQWdnJ11dXXR3d9PT00Nvby99fX309/czMDDA4OAgFouFoaEhrFYrw8PDjIyMMDo6ytjYGDabjfHxcSYmJpicnGRqagq73c709DQzMzPMzs4yNzfH/Pw8DocDp9OJy+XC7XazsLDA4uIiS0tLLC8vs7KywurqKmtra3g8HrxeLz6fD7/fz/r6OhsbG2xubrK1tcX29jaBQICdnR2CwSC7u7vs7e2xv7/PwcEBh4eHHB0dcXx8zMnJCaenp5ydnXF+fs7FxQWXl5dcXV1xfX3Nzc0Nt7e33N3dEQqFuL+/5+HhgXA4TCQS4fHxkaenJ56fn3l5eeH19ZVoNMrb2xvv7+98fHwQi8WIx+N8fn6SSCT4+vri+/ubn58ffn9/+VcKgSWwBJbAElgCS2AJLIElsASWwBJYAktgCSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIElsP4/WH8AmJ5Z6jHS4h8AAAAASUVORK5CYII=\\\");direction:rtl}.color-picker .alpha{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwYQlZMa3gAAAWVJREFUaN7tmEGO6jAQRCsOArHgBpyAJYGjcGocxAm4A2IHpmoWE0eBH+ezmFlNvU06shJ3W6VEelWMUQAIIF9f6qZpimsA1LYtS2uF51/u27YVAFZVRUkEoGHdPV/sIcbIEIIkUdI/9Xa7neyv61+SWFUVAVCSct00TWn2fv6u3+Ecfd3tXzy/0+nEUu+SPjo/kqzrmiQpScN6v98XewfA8/lMkiLJ2WxGSUopcT6fM6U0NX9/frfbjev1WtfrlZfLhYfDQQHG/AIOlnGwjINlHCxjHCzjYJm/TJWdCwquJXseFFzGwDNNeiKMOJTO8xQdDQaeB29+K9efeLaBo9J7vdvtJj1RjFFjfiv7qv95tjx/7leSQgh93e1ffMeIp6O+YQjho/N791t1XVOSSI7N//K+4/GoxWLBx+PB5/Op5XLJ+/3OlJJWqxU3m83ovv5iGf8KjYNlHCxjHCzjYBkHy5gf5gusvQU7U37jTAAAAABJRU5ErkJggg==\\\");background-size:100% 100%;border:none;cursor:pointer;direction:ltr;height:16px;width:100%}.color-picker .type-policy{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACewAAAnsB01CO3AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIASURBVEiJ7ZY9axRRFIafsxMStrLQJpAgpBFhi+C9w1YSo00I6RZ/g9vZpBf/QOr4GyRgkSKNSrAadsZqQGwCkuAWyRZJsySwvhZ7N/vhzrgbLH3Ld8597jlzz50zJokyxXH8DqDVar0qi6v8BbItqSGpEcfxdlmsFWXkvX8AfAVWg3UKPEnT9GKujMzsAFgZsVaCN1VTQd77XUnrgE1kv+6935268WRpzrnHZvYRWC7YvC3pRZZl3wozqtVqiyH9IgjAspkd1Gq1xUJQtVrdB9ZKIAOthdg/Qc65LUk7wNIMoCVJO865rYFhkqjX6/d7vV4GPJwBMqofURS5JEk6FYBer/eeYb/Mo9WwFnPOvQbeAvfuAAK4BN4sAJtAG/gJIElmNuiJyba3EGNmZiPeZuEVmVell/Y/6N+CzDn3AXhEOOo7Hv/3BeAz8IzQkMPnJbuPx1wC+yYJ7/0nYIP5S/0FHKdp+rwCEEXRS/rf5Hl1Gtb2M0iSpCOpCZzPATmX1EySpHMLAsiy7MjMDoHrGSDXZnaYZdnRwBh7J91utwmczAA6CbG3GgPleX4jqUH/a1CktqRGnuc3hSCAMB32gKspkCtgb3KCQMmkjeP4WNJThrNNZval1WptTIsv7JtQ4tmIdRa8qSoEpWl6YWZNoAN0zKxZNPehpLSBZv2t+Q0CJ9lLnARQLAAAAABJRU5ErkJggg==\\\");background-position:50%;background-repeat:no-repeat;background-size:8px 16px;height:24px;position:absolute;right:12px;top:218px;width:16px}.color-picker .type-policy .type-policy-arrow{display:block;height:50%;width:100%}.color-picker .selected-color{border:1px solid #a9a9a9;border-radius:50%;height:40px;left:8px;position:absolute;top:16px;width:40px}.color-picker .selected-color-background{background-image:url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAh0lEQVRYR+2W0QlAMQgD60zdfwOdqa8TmI/wQMr5K0I5bZLIzLOa2nt37VVVbd+dDx5obgCC3KBLwJ2ff4PnVidkf+ucIhw80HQaCLo3DMH3CRK3iFsmAWVl6hPNDwt8EvNE5q+YuEXcMgkonVM6SdyCoEvAnZ8v1Hjx817MilmxSUB5rdLJDycZgUAZUch/AAAAAElFTkSuQmCC\\\");border-radius:50%;height:40px;width:40px}.color-picker .saturation-lightness{background-image:url(\\\"data:image/png;base64,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\\\");background-size:100% 100%;border:none;cursor:pointer;direction:ltr;height:130px;touch-action:manipulation;width:100%}.color-picker .cp-add-color-button-class{background:transparent;border:0;cursor:pointer;display:inline;margin:3px -3px;padding:0;position:absolute}.color-picker .cp-add-color-button-class:hover{text-decoration:underline}.color-picker .cp-add-color-button-class:disabled{color:#999;cursor:not-allowed}.color-picker .cp-add-color-button-class:disabled:hover{text-decoration:none}.color-picker .cp-remove-color-button-class{background:#fff;border-radius:50%;box-shadow:1px 1px 5px #333;cursor:pointer;display:block;height:10px;position:absolute;right:-5px;text-align:center;top:-5px;width:10px}.color-picker .cp-remove-color-button-class:before{bottom:3.5px;content:\\\"x\\\";display:inline-block;font-size:10px;position:relative}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.ChangeDetectorRef }, { type: ColorPickerService }]; }, { handleEsc: [{\n type: HostListener,\n args: ['document:keyup.esc', ['$event']]\n }], handleEnter: [{\n type: HostListener,\n args: ['document:keyup.enter', ['$event']]\n }], dialogElement: [{\n type: ViewChild,\n args: ['dialogPopup', { static: true }]\n }], hueSlider: [{\n type: ViewChild,\n args: ['hueSlider', { static: true }]\n }], alphaSlider: [{\n type: ViewChild,\n args: ['alphaSlider', { static: true }]\n }] }); })();\n\nclass ColorPickerDirective {\n constructor(injector, cfr, appRef, vcRef, elRef, _service) {\n this.injector = injector;\n this.cfr = cfr;\n this.appRef = appRef;\n this.vcRef = vcRef;\n this.elRef = elRef;\n this._service = _service;\n this.dialogCreated = false;\n this.ignoreChanges = false;\n this.viewAttachedToAppRef = false;\n this.cpWidth = '230px';\n this.cpHeight = 'auto';\n this.cpToggle = false;\n this.cpDisabled = false;\n this.cpIgnoredElements = [];\n this.cpFallbackColor = '';\n this.cpColorMode = 'color';\n this.cpCmykEnabled = false;\n this.cpOutputFormat = 'auto';\n this.cpAlphaChannel = 'enabled';\n this.cpDisableInput = false;\n this.cpDialogDisplay = 'popup';\n this.cpSaveClickOutside = true;\n this.cpCloseClickOutside = true;\n this.cpUseRootViewContainer = false;\n this.cpPosition = 'auto';\n this.cpPositionOffset = '0%';\n this.cpPositionRelativeToArrow = false;\n this.cpOKButton = false;\n this.cpOKButtonText = 'OK';\n this.cpOKButtonClass = 'cp-ok-button-class';\n this.cpCancelButton = false;\n this.cpCancelButtonText = 'Cancel';\n this.cpCancelButtonClass = 'cp-cancel-button-class';\n this.cpPresetLabel = 'Preset colors';\n this.cpPresetColorsClass = 'cp-preset-colors-class';\n this.cpMaxPresetColorsLength = 6;\n this.cpPresetEmptyMessage = 'No colors added';\n this.cpPresetEmptyMessageClass = 'preset-empty-message';\n this.cpAddColorButton = false;\n this.cpAddColorButtonText = 'Add color';\n this.cpAddColorButtonClass = 'cp-add-color-button-class';\n this.cpRemoveColorButtonClass = 'cp-remove-color-button-class';\n this.cpInputChange = new EventEmitter(true);\n this.cpToggleChange = new EventEmitter(true);\n this.cpSliderChange = new EventEmitter(true);\n this.cpSliderDragEnd = new EventEmitter(true);\n this.cpSliderDragStart = new EventEmitter(true);\n this.colorPickerOpen = new EventEmitter(true);\n this.colorPickerClose = new EventEmitter(true);\n this.colorPickerCancel = new EventEmitter(true);\n this.colorPickerSelect = new EventEmitter(true);\n this.colorPickerChange = new EventEmitter(false);\n this.cpCmykColorChange = new EventEmitter(true);\n this.cpPresetColorsChange = new EventEmitter(true);\n }\n handleClick() {\n this.inputFocus();\n }\n handleFocus() {\n this.inputFocus();\n }\n handleInput(event) {\n this.inputChange(event);\n }\n ngOnDestroy() {\n if (this.cmpRef != null) {\n if (this.viewAttachedToAppRef) {\n this.appRef.detachView(this.cmpRef.hostView);\n }\n this.cmpRef.destroy();\n this.cmpRef = null;\n this.dialog = null;\n }\n }\n ngOnChanges(changes) {\n if (changes.cpToggle && !this.cpDisabled) {\n if (changes.cpToggle.currentValue) {\n this.openDialog();\n }\n else if (!changes.cpToggle.currentValue) {\n this.closeDialog();\n }\n }\n if (changes.colorPicker) {\n if (this.dialog && !this.ignoreChanges) {\n if (this.cpDialogDisplay === 'inline') {\n this.dialog.setInitialColor(changes.colorPicker.currentValue);\n }\n this.dialog.setColorFromString(changes.colorPicker.currentValue, false);\n if (this.cpUseRootViewContainer && this.cpDialogDisplay !== 'inline') {\n this.cmpRef.changeDetectorRef.detectChanges();\n }\n }\n this.ignoreChanges = false;\n }\n if (changes.cpPresetLabel || changes.cpPresetColors) {\n if (this.dialog) {\n this.dialog.setPresetConfig(this.cpPresetLabel, this.cpPresetColors);\n }\n }\n }\n openDialog() {\n if (!this.dialogCreated) {\n let vcRef = this.vcRef;\n this.dialogCreated = true;\n this.viewAttachedToAppRef = false;\n if (this.cpUseRootViewContainer && this.cpDialogDisplay !== 'inline') {\n const classOfRootComponent = this.appRef.componentTypes[0];\n const appInstance = this.injector.get(classOfRootComponent, Injector.NULL);\n if (appInstance !== Injector.NULL) {\n vcRef = appInstance.vcRef || appInstance.viewContainerRef || this.vcRef;\n if (vcRef === this.vcRef) {\n console.warn('You are using cpUseRootViewContainer, ' +\n 'but the root component is not exposing viewContainerRef!' +\n 'Please expose it by adding \\'public vcRef: ViewContainerRef\\' to the constructor.');\n }\n }\n else {\n this.viewAttachedToAppRef = true;\n }\n }\n const compFactory = this.cfr.resolveComponentFactory(ColorPickerComponent);\n if (this.viewAttachedToAppRef) {\n this.cmpRef = compFactory.create(this.injector);\n this.appRef.attachView(this.cmpRef.hostView);\n document.body.appendChild(this.cmpRef.hostView.rootNodes[0]);\n }\n else {\n const injector = ReflectiveInjector.fromResolvedProviders([], vcRef.parentInjector);\n this.cmpRef = vcRef.createComponent(compFactory, 0, injector, []);\n }\n this.cmpRef.instance.setupDialog(this, this.elRef, this.colorPicker, this.cpWidth, this.cpHeight, this.cpDialogDisplay, this.cpFallbackColor, this.cpColorMode, this.cpCmykEnabled, this.cpAlphaChannel, this.cpOutputFormat, this.cpDisableInput, this.cpIgnoredElements, this.cpSaveClickOutside, this.cpCloseClickOutside, this.cpUseRootViewContainer, this.cpPosition, this.cpPositionOffset, this.cpPositionRelativeToArrow, this.cpPresetLabel, this.cpPresetColors, this.cpPresetColorsClass, this.cpMaxPresetColorsLength, this.cpPresetEmptyMessage, this.cpPresetEmptyMessageClass, this.cpOKButton, this.cpOKButtonClass, this.cpOKButtonText, this.cpCancelButton, this.cpCancelButtonClass, this.cpCancelButtonText, this.cpAddColorButton, this.cpAddColorButtonClass, this.cpAddColorButtonText, this.cpRemoveColorButtonClass, this.elRef);\n this.dialog = this.cmpRef.instance;\n if (this.vcRef !== vcRef) {\n this.cmpRef.changeDetectorRef.detectChanges();\n }\n }\n else if (this.dialog) {\n this.dialog.openDialog(this.colorPicker);\n }\n }\n closeDialog() {\n if (this.dialog && this.cpDialogDisplay === 'popup') {\n this.dialog.closeDialog();\n }\n }\n cmykChanged(value) {\n this.cpCmykColorChange.emit(value);\n }\n stateChanged(state) {\n this.cpToggleChange.emit(state);\n if (state) {\n this.colorPickerOpen.emit(this.colorPicker);\n }\n else {\n this.colorPickerClose.emit(this.colorPicker);\n }\n }\n colorChanged(value, ignore = true) {\n this.ignoreChanges = ignore;\n this.colorPickerChange.emit(value);\n }\n colorSelected(value) {\n this.colorPickerSelect.emit(value);\n }\n colorCanceled() {\n this.colorPickerCancel.emit();\n }\n inputFocus() {\n const element = this.elRef.nativeElement;\n const ignored = this.cpIgnoredElements.filter((item) => item === element);\n if (!this.cpDisabled && !ignored.length) {\n if (typeof document !== 'undefined' && element === document.activeElement) {\n this.openDialog();\n }\n else if (!this.dialog || !this.dialog.show) {\n this.openDialog();\n }\n else {\n this.closeDialog();\n }\n }\n }\n inputChange(event) {\n if (this.dialog) {\n this.dialog.setColorFromString(event.target.value, true);\n }\n else {\n this.colorPicker = event.target.value;\n this.colorPickerChange.emit(this.colorPicker);\n }\n }\n inputChanged(event) {\n this.cpInputChange.emit(event);\n }\n sliderChanged(event) {\n this.cpSliderChange.emit(event);\n }\n sliderDragEnd(event) {\n this.cpSliderDragEnd.emit(event);\n }\n sliderDragStart(event) {\n this.cpSliderDragStart.emit(event);\n }\n presetColorsChanged(value) {\n this.cpPresetColorsChange.emit(value);\n }\n}\nColorPickerDirective.ɵfac = function ColorPickerDirective_Factory(t) { return new (t || ColorPickerDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Injector), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ApplicationRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ColorPickerService)); };\nColorPickerDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: ColorPickerDirective, selectors: [[\"\", \"colorPicker\", \"\"]], hostBindings: function ColorPickerDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ColorPickerDirective_click_HostBindingHandler() { return ctx.handleClick(); })(\"focus\", function ColorPickerDirective_focus_HostBindingHandler() { return ctx.handleFocus(); })(\"input\", function ColorPickerDirective_input_HostBindingHandler($event) { return ctx.handleInput($event); });\n } }, inputs: { cpWidth: \"cpWidth\", cpHeight: \"cpHeight\", cpToggle: \"cpToggle\", cpDisabled: \"cpDisabled\", cpIgnoredElements: \"cpIgnoredElements\", cpFallbackColor: \"cpFallbackColor\", cpColorMode: \"cpColorMode\", cpCmykEnabled: \"cpCmykEnabled\", cpOutputFormat: \"cpOutputFormat\", cpAlphaChannel: \"cpAlphaChannel\", cpDisableInput: \"cpDisableInput\", cpDialogDisplay: \"cpDialogDisplay\", cpSaveClickOutside: \"cpSaveClickOutside\", cpCloseClickOutside: \"cpCloseClickOutside\", cpUseRootViewContainer: \"cpUseRootViewContainer\", cpPosition: \"cpPosition\", cpPositionOffset: \"cpPositionOffset\", cpPositionRelativeToArrow: \"cpPositionRelativeToArrow\", cpOKButton: \"cpOKButton\", cpOKButtonText: \"cpOKButtonText\", cpOKButtonClass: \"cpOKButtonClass\", cpCancelButton: \"cpCancelButton\", cpCancelButtonText: \"cpCancelButtonText\", cpCancelButtonClass: \"cpCancelButtonClass\", cpPresetLabel: \"cpPresetLabel\", cpPresetColorsClass: \"cpPresetColorsClass\", cpMaxPresetColorsLength: \"cpMaxPresetColorsLength\", cpPresetEmptyMessage: \"cpPresetEmptyMessage\", cpPresetEmptyMessageClass: \"cpPresetEmptyMessageClass\", cpAddColorButton: \"cpAddColorButton\", cpAddColorButtonText: \"cpAddColorButtonText\", cpAddColorButtonClass: \"cpAddColorButtonClass\", cpRemoveColorButtonClass: \"cpRemoveColorButtonClass\", colorPicker: \"colorPicker\", cpPresetColors: \"cpPresetColors\" }, outputs: { cpInputChange: \"cpInputChange\", cpToggleChange: \"cpToggleChange\", cpSliderChange: \"cpSliderChange\", cpSliderDragEnd: \"cpSliderDragEnd\", cpSliderDragStart: \"cpSliderDragStart\", colorPickerOpen: \"colorPickerOpen\", colorPickerClose: \"colorPickerClose\", colorPickerCancel: \"colorPickerCancel\", colorPickerSelect: \"colorPickerSelect\", colorPickerChange: \"colorPickerChange\", cpCmykColorChange: \"cpCmykColorChange\", cpPresetColorsChange: \"cpPresetColorsChange\" }, exportAs: [\"ngxColorPicker\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nColorPickerDirective.ctorParameters = () => [\n { type: Injector },\n { type: ComponentFactoryResolver },\n { type: ApplicationRef },\n { type: ViewContainerRef },\n { type: ElementRef },\n { type: ColorPickerService }\n];\nColorPickerDirective.propDecorators = {\n colorPicker: [{ type: Input }],\n cpWidth: [{ type: Input }],\n cpHeight: [{ type: Input }],\n cpToggle: [{ type: Input }],\n cpDisabled: [{ type: Input }],\n cpIgnoredElements: [{ type: Input }],\n cpFallbackColor: [{ type: Input }],\n cpColorMode: [{ type: Input }],\n cpCmykEnabled: [{ type: Input }],\n cpOutputFormat: [{ type: Input }],\n cpAlphaChannel: [{ type: Input }],\n cpDisableInput: [{ type: Input }],\n cpDialogDisplay: [{ type: Input }],\n cpSaveClickOutside: [{ type: Input }],\n cpCloseClickOutside: [{ type: Input }],\n cpUseRootViewContainer: [{ type: Input }],\n cpPosition: [{ type: Input }],\n cpPositionOffset: [{ type: Input }],\n cpPositionRelativeToArrow: [{ type: Input }],\n cpOKButton: [{ type: Input }],\n cpOKButtonText: [{ type: Input }],\n cpOKButtonClass: [{ type: Input }],\n cpCancelButton: [{ type: Input }],\n cpCancelButtonText: [{ type: Input }],\n cpCancelButtonClass: [{ type: Input }],\n cpPresetLabel: [{ type: Input }],\n cpPresetColors: [{ type: Input }],\n cpPresetColorsClass: [{ type: Input }],\n cpMaxPresetColorsLength: [{ type: Input }],\n cpPresetEmptyMessage: [{ type: Input }],\n cpPresetEmptyMessageClass: [{ type: Input }],\n cpAddColorButton: [{ type: Input }],\n cpAddColorButtonText: [{ type: Input }],\n cpAddColorButtonClass: [{ type: Input }],\n cpRemoveColorButtonClass: [{ type: Input }],\n cpInputChange: [{ type: Output }],\n cpToggleChange: [{ type: Output }],\n cpSliderChange: [{ type: Output }],\n cpSliderDragEnd: [{ type: Output }],\n cpSliderDragStart: [{ type: Output }],\n colorPickerOpen: [{ type: Output }],\n colorPickerClose: [{ type: Output }],\n colorPickerCancel: [{ type: Output }],\n colorPickerSelect: [{ type: Output }],\n colorPickerChange: [{ type: Output }],\n cpCmykColorChange: [{ type: Output }],\n cpPresetColorsChange: [{ type: Output }],\n handleClick: [{ type: HostListener, args: ['click',] }],\n handleFocus: [{ type: HostListener, args: ['focus',] }],\n handleInput: [{ type: HostListener, args: ['input', ['$event'],] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ColorPickerDirective, [{\n type: Directive,\n args: [{\n selector: '[colorPicker]',\n exportAs: 'ngxColorPicker'\n }]\n }], function () { return [{ type: ɵngcc0.Injector }, { type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.ApplicationRef }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.ElementRef }, { type: ColorPickerService }]; }, { cpWidth: [{\n type: Input\n }], cpHeight: [{\n type: Input\n }], cpToggle: [{\n type: Input\n }], cpDisabled: [{\n type: Input\n }], cpIgnoredElements: [{\n type: Input\n }], cpFallbackColor: [{\n type: Input\n }], cpColorMode: [{\n type: Input\n }], cpCmykEnabled: [{\n type: Input\n }], cpOutputFormat: [{\n type: Input\n }], cpAlphaChannel: [{\n type: Input\n }], cpDisableInput: [{\n type: Input\n }], cpDialogDisplay: [{\n type: Input\n }], cpSaveClickOutside: [{\n type: Input\n }], cpCloseClickOutside: [{\n type: Input\n }], cpUseRootViewContainer: [{\n type: Input\n }], cpPosition: [{\n type: Input\n }], cpPositionOffset: [{\n type: Input\n }], cpPositionRelativeToArrow: [{\n type: Input\n }], cpOKButton: [{\n type: Input\n }], cpOKButtonText: [{\n type: Input\n }], cpOKButtonClass: [{\n type: Input\n }], cpCancelButton: [{\n type: Input\n }], cpCancelButtonText: [{\n type: Input\n }], cpCancelButtonClass: [{\n type: Input\n }], cpPresetLabel: [{\n type: Input\n }], cpPresetColorsClass: [{\n type: Input\n }], cpMaxPresetColorsLength: [{\n type: Input\n }], cpPresetEmptyMessage: [{\n type: Input\n }], cpPresetEmptyMessageClass: [{\n type: Input\n }], cpAddColorButton: [{\n type: Input\n }], cpAddColorButtonText: [{\n type: Input\n }], cpAddColorButtonClass: [{\n type: Input\n }], cpRemoveColorButtonClass: [{\n type: Input\n }], cpInputChange: [{\n type: Output\n }], cpToggleChange: [{\n type: Output\n }], cpSliderChange: [{\n type: Output\n }], cpSliderDragEnd: [{\n type: Output\n }], cpSliderDragStart: [{\n type: Output\n }], colorPickerOpen: [{\n type: Output\n }], colorPickerClose: [{\n type: Output\n }], colorPickerCancel: [{\n type: Output\n }], colorPickerSelect: [{\n type: Output\n }], colorPickerChange: [{\n type: Output\n }], cpCmykColorChange: [{\n type: Output\n }], cpPresetColorsChange: [{\n type: Output\n }], handleClick: [{\n type: HostListener,\n args: ['click']\n }], handleFocus: [{\n type: HostListener,\n args: ['focus']\n }], handleInput: [{\n type: HostListener,\n args: ['input', ['$event']]\n }], colorPicker: [{\n type: Input\n }], cpPresetColors: [{\n type: Input\n }] }); })();\n\nclass ColorPickerModule {\n}\nColorPickerModule.ɵfac = function ColorPickerModule_Factory(t) { return new (t || ColorPickerModule)(); };\nColorPickerModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: ColorPickerModule });\nColorPickerModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ providers: [ColorPickerService], imports: [[CommonModule]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ColorPickerModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n exports: [ColorPickerDirective],\n providers: [ColorPickerService],\n declarations: [ColorPickerComponent, ColorPickerDirective, TextDirective, SliderDirective],\n entryComponents: [ColorPickerComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ColorPickerModule, { declarations: function () { return [ColorPickerComponent, ColorPickerDirective, TextDirective, SliderDirective]; }, imports: function () { return [CommonModule]; }, exports: function () { return [ColorPickerDirective]; } }); })();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Cmyk, ColorPickerComponent, ColorPickerDirective, ColorPickerModule, ColorPickerService, Hsla, Hsva, Rgba, SliderDirective, TextDirective };\n\n//# sourceMappingURL=ngx-color-picker.js.map","import {NgModule} from '@angular/core';\nimport {ColorpickerPanelComponent} from './colorpicker-panel.component';\nimport {ColorPickerModule} from 'ngx-color-picker';\nimport {OverlayModule} from '@angular/cdk/overlay';\nimport {MatIconModule} from '@angular/material/icon';\nimport {TranslationsModule} from '@common/core/translations/translations.module';\nimport {CommonModule} from '@angular/common';\n\n@NgModule({\n imports: [\n CommonModule,\n ColorPickerModule,\n OverlayModule,\n TranslationsModule,\n\n // material\n MatIconModule,\n ],\n declarations: [\n ColorpickerPanelComponent,\n ],\n exports: [\n ColorpickerPanelComponent,\n ],\n})\nexport class BeColorPickerModule {\n static components = {\n panel: ColorpickerPanelComponent,\n };\n}\n","import {ChangeDetectionStrategy, Component, ElementRef, Inject, OnInit, Optional, ViewChild} from '@angular/core';\nimport {OverlayPanelRef} from '../overlay-panel/overlay-panel-ref';\nimport {OVERLAY_PANEL_DATA} from '../overlay-panel/overlay-panel-data';\nimport {ColorPickerService} from 'ngx-color-picker';\n\n@Component({\n templateUrl: './colorpicker-panel.component.html',\n styleUrls: ['./colorpicker-panel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n ColorPickerService,\n ]\n})\nexport class ColorpickerPanelComponent implements OnInit {\n @ViewChild('trigger', { static: true }) trigger: ElementRef<HTMLElement>;\n public color: string;\n\n constructor(\n @Inject(OVERLAY_PANEL_DATA) @Optional() public data: {color?: string},\n private overlayPanelRef: OverlayPanelRef,\n ) {}\n\n ngOnInit() {\n this.color = this.getInitialColor();\n\n // open color picker\n setTimeout(() => {\n this.trigger.nativeElement.click();\n });\n }\n\n public emitSelectedEvent(value: string) {\n this.color = value;\n // const rgba = 'rgba(' + hexToRgb(value).join(',') + ')';\n this.overlayPanelRef.emitValue(value);\n }\n\n private getInitialColor() {\n let color = (this.data && this.data.color) || null;\n if (color && color.replace(/ /g, '') === 'rgba(0,0,0,0)') color = undefined;\n return color;\n }\n}\n","<div class=\"trigger\" #trigger\n [colorPicker]=\"color\"\n [cpAlphaChannel]=\"'always'\"\n [cpOutputFormat]=\"'rgba'\"\n (colorPickerChange)=\"emitSelectedEvent($event)\"\n [cpDialogDisplay]=\"'inline'\"\n [cpToggle]=\"false\"\n></div>\n"],"sourceRoot":"webpack:///"}