narik-angular-color-picker
Version:
narik-angular-color-picker
1 lines • 59.1 kB
JavaScript
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/platform-browser")):"function"==typeof define&&define.amd?define(["@angular/core","@angular/common","@angular/forms","@angular/platform-browser"],e):"object"==typeof exports?exports.narikAngularColorPicker=e(require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/platform-browser")):t.narikAngularColorPicker=e(t.ng.core,t.ng.common,t.ng.forms,t.ng.platformBrowser)}(this,function(t,e,o,i){return function(t){function __webpack_require__(o){if(e[o])return e[o].exports;var i=e[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,__webpack_require__),i.l=!0,i.exports}var e={};return __webpack_require__.m=t,__webpack_require__.c=e,__webpack_require__.i=function(t){return t},__webpack_require__.d=function(exports,t,e){__webpack_require__.o(exports,t)||Object.defineProperty(exports,t,{configurable:!1,enumerable:!0,get:e})},__webpack_require__.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return __webpack_require__.d(e,"a",e),e},__webpack_require__.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=6)}([function(e,exports){e.exports=t},function(t,exports,e){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o=function(){function Hsva(t,e,o,i){this.h=t,this.s=e,this.v=o,this.a=i}return Hsva}();exports.Hsva=o;var i=function(){function Hsla(t,e,o,i){this.h=t,this.s=e,this.l=o,this.a=i}return Hsla}();exports.Hsla=i;var n=function(){function Rgba(t,e,o,i){this.r=t,this.g=e,this.b=o,this.a=i}return Rgba}();exports.Rgba=n;var r=function(){function SliderPosition(t,e,o,i){this.h=t,this.s=e,this.v=o,this.a=i}return SliderPosition}();exports.SliderPosition=r;var s=function(){function SliderDimension(t,e,o,i){this.h=t,this.s=e,this.v=o,this.a=i}return SliderDimension}();exports.SliderDimension=s},function(t,exports,e){"use strict";var o=this&&this.__decorate||function(t,e,o,i){var n,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,o,s):n(e,o))||s);return r>3&&s&&Object.defineProperty(e,o,s),s},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)};Object.defineProperty(exports,"__esModule",{value:!0});var n=e(0),r=e(1),s=function(){function ColorPickerService(){}return ColorPickerService.prototype.hsla2hsva=function(t){var e=Math.min(t.h,1),o=Math.min(t.s,1),i=Math.min(t.l,1),n=Math.min(t.a,1);if(0===i)return new r.Hsva(e,0,0,n);var s=i+o*(1-Math.abs(2*i-1))/2;return new r.Hsva(e,2*(s-i)/s,s,n)},ColorPickerService.prototype.hsva2hsla=function(t){var e=t.h,o=t.s,i=t.v,n=t.a;if(0===i)return new r.Hsla(e,0,0,n);if(0===o&&1===i)return new r.Hsla(e,1,1,n);var s=i*(2-o)/2;return new r.Hsla(e,i*o/(1-Math.abs(2*s-1)),s,n)},ColorPickerService.prototype.rgbaToHsva=function(t){var e,o,i=Math.min(t.r,1),n=Math.min(t.g,1),s=Math.min(t.b,1),a=Math.min(t.a,1),p=Math.max(i,n,s),l=Math.min(i,n,s),c=p,h=p-l;if(o=0===p?0:h/p,p===l)e=0;else{switch(p){case i:e=(n-s)/h+(n<s?6:0);break;case n:e=(s-i)/h+2;break;case s:e=(i-n)/h+4}e/=6}return new r.Hsva(e,o,c,a)},ColorPickerService.prototype.hsvaToRgba=function(t){var e,o,i,n=t.h,s=t.s,a=t.v,p=t.a,l=Math.floor(6*n),c=6*n-l,h=a*(1-s),u=a*(1-c*s),d=a*(1-(1-c)*s);switch(l%6){case 0:e=a,o=d,i=h;break;case 1:e=u,o=a,i=h;break;case 2:e=h,o=a,i=d;break;case 3:e=h,o=u,i=a;break;case 4:e=d,o=h,i=a;break;case 5:e=a,o=h,i=u}return new r.Rgba(e,o,i,p)},ColorPickerService.prototype.stringToHsva=function(t,e){void 0===t&&(t=""),void 0===e&&(e=!1);var o=[{re:/(rgb)a?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*%?,\s*(\d{1,3})\s*%?(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(t){return new r.Rgba(parseInt(t[2])/255,parseInt(t[3])/255,parseInt(t[4])/255,isNaN(parseFloat(t[5]))?1:parseFloat(t[5]))}},{re:/(hsl)a?\(\s*(\d{1,3})\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(t){return new r.Hsla(parseInt(t[2])/360,parseInt(t[3])/100,parseInt(t[4])/100,isNaN(parseFloat(t[5]))?1:parseFloat(t[5]))}}];e?o.push({re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})$/,parse:function(t){return new r.Rgba(parseInt(t[1],16)/255,parseInt(t[2],16)/255,parseInt(t[3],16)/255,parseInt(t[4],16)/255)}}):o.push({re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})$/,parse:function(t){return new r.Rgba(parseInt(t[1],16)/255,parseInt(t[2],16)/255,parseInt(t[3],16)/255,1)}},{re:/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])$/,parse:function(t){return new r.Rgba(parseInt(t[1]+t[1],16)/255,parseInt(t[2]+t[2],16)/255,parseInt(t[3]+t[3],16)/255,1)}}),t=t.toLowerCase();var i=null;for(var n in o)if(o.hasOwnProperty(n)){var s=o[n],a=s.re.exec(t),p=a&&s.parse(a);if(p)return p instanceof r.Rgba?i=this.rgbaToHsva(p):p instanceof r.Hsla&&(i=this.hsla2hsva(p)),i}return i},ColorPickerService.prototype.outputFormat=function(t,e,o){if(t.a<1)switch(e){case"hsla":var i=this.hsva2hsla(t),n=new r.Hsla(Math.round(360*i.h),Math.round(100*i.s),Math.round(100*i.l),Math.round(100*i.a)/100);return"hsla("+n.h+","+n.s+"%,"+n.l+"%,"+n.a+")";default:if(o&&"hex"===e)return this.hexText(this.denormalizeRGBA(this.hsvaToRgba(t)),o);var s=this.denormalizeRGBA(this.hsvaToRgba(t));return"rgba("+s.r+","+s.g+","+s.b+","+Math.round(100*s.a)/100+")"}else switch(e){case"hsla":var i=this.hsva2hsla(t),n=new r.Hsla(Math.round(360*i.h),Math.round(100*i.s),Math.round(100*i.l),Math.round(100*i.a)/100);return"hsl("+n.h+","+n.s+"%,"+n.l+"%)";case"rgba":var s=this.denormalizeRGBA(this.hsvaToRgba(t));return"rgb("+s.r+","+s.g+","+s.b+")";default:return this.hexText(this.denormalizeRGBA(this.hsvaToRgba(t)),o)}},ColorPickerService.prototype.hexText=function(t,e){var o="#"+(1<<24|t.r<<16|t.g<<8|t.b).toString(16).substr(1);return o[1]!==o[2]||o[3]!==o[4]||o[5]!==o[6]||1!==t.a||e||(o="#"+o[1]+o[3]+o[5]),e&&(o+=(256|Math.round(255*t.a)).toString(16).substr(1)),o},ColorPickerService.prototype.denormalizeRGBA=function(t){return new r.Rgba(Math.round(255*t.r),Math.round(255*t.g),Math.round(255*t.b),t.a)},ColorPickerService}();s=o([n.Injectable(),i("design:paramtypes",[])],s),exports.ColorPickerService=s},function(t,exports,e){"use strict";var o=this&&this.__decorate||function(t,e,o,i){var n,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,o,s):n(e,o))||s);return r>3&&s&&Object.defineProperty(e,o,s),s},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)};Object.defineProperty(exports,"__esModule",{value:!0});var n=e(0),r=e(2),s=e(1),a=e(0),p=e(11),l=function(){function ColorPickerDirective(t,e,o,i){this.vcRef=t,this.cfr=e,this.el=o,this.service=i,this.colorPickerChange=new n.EventEmitter(!0),this.cpToggleChange=new n.EventEmitter(!0),this.cpPosition="right",this.cpPositionOffset="0%",this.cpPositionRelativeToArrow=!1,this.cpOutputFormat="hex",this.cpPresetLabel="Preset colors",this.cpCancelButton=!1,this.cpCancelButtonClass="cp-cancel-button-class",this.cpCancelButtonText="Cancel",this.cpOKButton=!1,this.cpOKButtonClass="cp-ok-button-class",this.cpOKButtonText="OK",this.cpFallbackColor="#fff",this.cpHeight="auto",this.cpWidth="230px",this.cpIgnoredElements=[],this.cpDialogDisplay="popup",this.cpSaveClickOutside=!0,this.cpAlphaChannel="hex6",this.ignoreChanges=!1,this.created=!1}return ColorPickerDirective.prototype.ngOnChanges=function(t){t.cpToggle&&(t.cpToggle.currentValue&&this.openDialog(),!t.cpToggle.currentValue&&this.dialog&&this.dialog.closeColorPicker()),t.colorPicker&&(this.dialog&&!this.ignoreChanges&&("inline"===this.cpDialogDisplay&&this.dialog.setInitialColor(t.colorPicker.currentValue),this.dialog.setColorFromString(t.colorPicker.currentValue,!1)),this.ignoreChanges=!1)},ColorPickerDirective.prototype.ngOnInit=function(){},ColorPickerDirective.prototype.checkInitValue=function(){var t=this.service.stringToHsva(this.colorPicker);null===t&&(t=this.service.stringToHsva(this.colorPicker,!0)),null==t&&(t=this.service.stringToHsva(this.cpFallbackColor)),this.colorPickerChange.emit(this.service.outputFormat(t,this.cpOutputFormat,"hex8"===this.cpAlphaChannel))},ColorPickerDirective.prototype.onClick=function(){var t=this;0===this.cpIgnoredElements.filter(function(e){return e===t.el.nativeElement}).length&&this.openDialog()},ColorPickerDirective.prototype.openDialog=function(){if(this.created)this.dialog&&this.dialog.openDialog(this.colorPicker);else{this.created=!0;var t=this.cfr.resolveComponentFactory(u),e=a.ReflectiveInjector.fromResolvedProviders([],this.vcRef.parentInjector),o=this.vcRef.createComponent(t,0,e,[]);o.instance.setDialog(this,this.el,this.colorPicker||this.cpFallbackColor,this.cpPosition,this.cpPositionOffset,this.cpPositionRelativeToArrow,this.cpOutputFormat,this.cpPresetLabel,this.cpPresetColors,this.cpCancelButton,this.cpCancelButtonClass,this.cpCancelButtonText,this.cpOKButton,this.cpOKButtonClass,this.cpOKButtonText,this.cpHeight,this.cpWidth,this.cpIgnoredElements,this.cpDialogDisplay,this.cpSaveClickOutside,this.cpAlphaChannel),this.dialog=o.instance}},ColorPickerDirective.prototype.colorChanged=function(t,e){void 0===e&&(e=!0),this.ignoreChanges=e,this.colorPickerChange.emit(t)},ColorPickerDirective.prototype.changeInput=function(t){this.dialog.setColorFromString(t,!0)},ColorPickerDirective.prototype.toggle=function(t){this.cpToggleChange.emit(t)},ColorPickerDirective}();o([n.Input("colorPicker"),i("design:type",String)],l.prototype,"colorPicker",void 0),o([n.Output("colorPickerChange"),i("design:type",Object)],l.prototype,"colorPickerChange",void 0),o([n.Input("cpToggle"),i("design:type",Boolean)],l.prototype,"cpToggle",void 0),o([n.Output("cpToggleChange"),i("design:type",Object)],l.prototype,"cpToggleChange",void 0),o([n.Input("cpPosition"),i("design:type",String)],l.prototype,"cpPosition",void 0),o([n.Input("cpPositionOffset"),i("design:type",String)],l.prototype,"cpPositionOffset",void 0),o([n.Input("cpPositionRelativeToArrow"),i("design:type",Boolean)],l.prototype,"cpPositionRelativeToArrow",void 0),o([n.Input("cpOutputFormat"),i("design:type",String)],l.prototype,"cpOutputFormat",void 0),o([n.Input("cpPresetLabel"),i("design:type",String)],l.prototype,"cpPresetLabel",void 0),o([n.Input("cpPresetColors"),i("design:type",Array)],l.prototype,"cpPresetColors",void 0),o([n.Input("cpCancelButton"),i("design:type",Boolean)],l.prototype,"cpCancelButton",void 0),o([n.Input("cpCancelButtonClass"),i("design:type",String)],l.prototype,"cpCancelButtonClass",void 0),o([n.Input("cpCancelButtonText"),i("design:type",String)],l.prototype,"cpCancelButtonText",void 0),o([n.Input("cpOKButton"),i("design:type",Boolean)],l.prototype,"cpOKButton",void 0),o([n.Input("cpOKButtonClass"),i("design:type",String)],l.prototype,"cpOKButtonClass",void 0),o([n.Input("cpOKButtonText"),i("design:type",String)],l.prototype,"cpOKButtonText",void 0),o([n.Input("cpFallbackColor"),i("design:type",String)],l.prototype,"cpFallbackColor",void 0),o([n.Input("cpHeight"),i("design:type",String)],l.prototype,"cpHeight",void 0),o([n.Input("cpWidth"),i("design:type",String)],l.prototype,"cpWidth",void 0),o([n.Input("cpIgnoredElements"),i("design:type",Object)],l.prototype,"cpIgnoredElements",void 0),o([n.Input("cpDialogDisplay"),i("design:type",String)],l.prototype,"cpDialogDisplay",void 0),o([n.Input("cpSaveClickOutside"),i("design:type",Boolean)],l.prototype,"cpSaveClickOutside",void 0),o([n.Input("cpAlphaChannel"),i("design:type",String)],l.prototype,"cpAlphaChannel",void 0),l=o([n.Directive({selector:"[colorPicker]",host:{"(input)":"changeInput($event.target.value)","(click)":"onClick()"}}),i("design:paramtypes",[n.ViewContainerRef,a.ComponentFactoryResolver,n.ElementRef,r.ColorPickerService])],l),exports.ColorPickerDirective=l;var c=function(){function TextDirective(){this.newValue=new n.EventEmitter}return TextDirective.prototype.changeInput=function(t){if(void 0===this.rg)this.newValue.emit(t);else{var e=parseFloat(t);!isNaN(e)&&e>=0&&e<=this.rg&&this.newValue.emit({v:e,rg:this.rg})}},TextDirective}();o([n.Output("newValue"),i("design:type",Object)],c.prototype,"newValue",void 0),o([n.Input("text"),i("design:type",Object)],c.prototype,"text",void 0),o([n.Input("rg"),i("design:type",Number)],c.prototype,"rg",void 0),c=o([n.Directive({selector:"[text]",host:{"(input)":"changeInput($event.target.value)"}})],c),exports.TextDirective=c;var h=function(){function SliderDirective(t){var e=this;this.el=t,this.newValue=new n.EventEmitter,this.listenerMove=function(t){e.move(t)},this.listenerStop=function(){e.stop()}}return SliderDirective.prototype.setCursor=function(t){var e=this.el.nativeElement.offsetHeight,o=this.el.nativeElement.offsetWidth,i=Math.max(0,Math.min(this.getX(t),o)),n=Math.max(0,Math.min(this.getY(t),e));void 0!==this.rgX&&void 0!==this.rgY?this.newValue.emit({s:i/o,v:1-n/e,rgX:this.rgX,rgY:this.rgY}):void 0===this.rgX&&void 0!==this.rgY?this.newValue.emit({v:n/e,rg:this.rgY}):this.newValue.emit({v:i/o,rg:this.rgX})},SliderDirective.prototype.move=function(t){t.preventDefault(),this.setCursor(t)},SliderDirective.prototype.start=function(t){this.setCursor(t),document.addEventListener("mousemove",this.listenerMove),document.addEventListener("touchmove",this.listenerMove),document.addEventListener("mouseup",this.listenerStop),document.addEventListener("touchend",this.listenerStop)},SliderDirective.prototype.stop=function(){document.removeEventListener("mousemove",this.listenerMove),document.removeEventListener("touchmove",this.listenerMove),document.removeEventListener("mouseup",this.listenerStop),document.removeEventListener("touchend",this.listenerStop)},SliderDirective.prototype.getX=function(t){return(void 0!==t.pageX?t.pageX:t.touches[0].pageX)-this.el.nativeElement.getBoundingClientRect().left-window.pageXOffset},SliderDirective.prototype.getY=function(t){return(void 0!==t.pageY?t.pageY:t.touches[0].pageY)-this.el.nativeElement.getBoundingClientRect().top-window.pageYOffset},SliderDirective}();o([n.Output("newValue"),i("design:type",Object)],h.prototype,"newValue",void 0),o([n.Input("slider"),i("design:type",String)],h.prototype,"slider",void 0),o([n.Input("rgX"),i("design:type",Number)],h.prototype,"rgX",void 0),o([n.Input("rgY"),i("design:type",Number)],h.prototype,"rgY",void 0),h=o([n.Directive({selector:"[slider]",host:{"(mousedown)":"start($event)","(touchstart)":"start($event)"}}),i("design:paramtypes",[n.ElementRef])],h),exports.SliderDirective=h;var u=function(){function DialogComponent(t,e){this.el=t,this.service=e,this.dialogArrowSize=10,this.dialogArrowOffset=15}return DialogComponent.prototype.setDialog=function(t,e,o,i,n,r,s,a,p,l,c,h,u,d,g,v,f,A,C,m,b){this.directiveInstance=t,this.initialColor=o,this.directiveElementRef=e,this.cpPosition=i,this.cpPositionOffset=parseInt(n),r||(this.dialogArrowOffset=0),this.cpOutputFormat=s,this.cpPresetLabel=a,this.cpPresetColors=p,this.cpCancelButton=l,this.cpCancelButtonClass=c,this.cpCancelButtonText=h,this.cpOKButton=u,this.cpOKButtonClass=d,this.cpOKButtonText=g,this.cpHeight=parseInt(v),this.cpWidth=parseInt(f),this.cpIgnoredElements=A,this.cpDialogDisplay=C,"inline"===this.cpDialogDisplay&&(this.dialogArrowOffset=0,this.dialogArrowSize=0),this.cpSaveClickOutside=m,this.cpAlphaChannel=b},DialogComponent.prototype.ngOnInit=function(){var t=this,e=this.alphaSlider.nativeElement.offsetWidth,o=this.hueSlider.nativeElement.offsetWidth;this.sliderDimMax=new s.SliderDimension(o,this.cpWidth,130,e),this.slider=new s.SliderPosition(0,0,0,0),"rgba"===this.cpOutputFormat?this.format=1:"hsla"===this.cpOutputFormat?this.format=2:this.format=0,this.listenerMouseDown=function(e){t.onMouseDown(e)},this.listenerResize=function(){t.onResize()},this.openDialog(this.initialColor,!1)},DialogComponent.prototype.setInitialColor=function(t){this.initialColor=t},DialogComponent.prototype.openDialog=function(t,e){void 0===e&&(e=!0),this.setInitialColor(t),this.setColorFromString(t,e),this.openColorPicker()},DialogComponent.prototype.cancelColor=function(){this.setColorFromString(this.initialColor,!0),"popup"===this.cpDialogDisplay&&(this.directiveInstance.colorChanged(this.initialColor,!0),this.closeColorPicker())},DialogComponent.prototype.oKColor=function(){"popup"===this.cpDialogDisplay&&this.closeColorPicker()},DialogComponent.prototype.setColorFromString=function(t,e){void 0===e&&(e=!0);var o;"hex8"===this.cpAlphaChannel?(o=this.service.stringToHsva(t,!0))||this.hsva||(o=this.service.stringToHsva(t,!1)):o=this.service.stringToHsva(t,!1),o&&(this.hsva=o,this.update(e))},DialogComponent.prototype.onMouseDown=function(t){this.isDescendant(this.el.nativeElement,t.target)||t.target==this.directiveElementRef.nativeElement||0!==this.cpIgnoredElements.filter(function(e){return e===t.target}).length||"popup"!==this.cpDialogDisplay||(this.cpSaveClickOutside||(this.setColorFromString(this.initialColor,!1),this.directiveInstance.colorChanged(this.initialColor)),this.closeColorPicker())},DialogComponent.prototype.openColorPicker=function(){this.show||(this.setDialogPosition(),this.show=!0,this.directiveInstance.toggle(!0),document.addEventListener("mousedown",this.listenerMouseDown),window.addEventListener("resize",this.listenerResize))},DialogComponent.prototype.closeColorPicker=function(){this.show&&(this.show=!1,this.directiveInstance.toggle(!1),document.removeEventListener("mousedown",this.listenerMouseDown),window.removeEventListener("resize",this.listenerResize))},DialogComponent.prototype.onResize=function(){"fixed"===this.position&&this.setDialogPosition()},DialogComponent.prototype.setDialogPosition=function(){for(var t=this.dialogElement.nativeElement.offsetHeight,e=this.directiveElementRef.nativeElement,o="static",i=null;null!==e&&"HTML"!==e.tagName&&(o=window.getComputedStyle(e).getPropertyValue("position"),"static"!==o&&null===i&&(i=e),"fixed"!==o);)e=e.parentNode;if("fixed"!==o){var n=this.createBox(this.directiveElementRef.nativeElement,!0);null===i&&(i=e);var r=this.createBox(i,!0);this.top=n.top-r.top,this.left=n.left-r.left}else{var n=this.createBox(this.directiveElementRef.nativeElement,!1);this.top=n.top,this.left=n.left,this.position="fixed"}"left"===this.cpPosition?(this.top+=n.height*this.cpPositionOffset/100-this.dialogArrowOffset,this.left-=this.cpWidth+this.dialogArrowSize-2):"top"===this.cpPosition?(this.top-=t+this.dialogArrowSize,this.left+=this.cpPositionOffset/100*n.width-this.dialogArrowOffset,this.arrowTop=t-1):"bottom"===this.cpPosition?(this.top+=n.height+this.dialogArrowSize,this.left+=this.cpPositionOffset/100*n.width-this.dialogArrowOffset):(this.top+=n.height*this.cpPositionOffset/100-this.dialogArrowOffset,this.left+=n.width+this.dialogArrowSize)},DialogComponent.prototype.setSaturation=function(t){var e=this.service.hsva2hsla(this.hsva);e.s=t.v/t.rg,this.hsva=this.service.hsla2hsva(e),this.update()},DialogComponent.prototype.setLightness=function(t){var e=this.service.hsva2hsla(this.hsva);e.l=t.v/t.rg,this.hsva=this.service.hsla2hsva(e),this.update()},DialogComponent.prototype.setHue=function(t){this.hsva.h=t.v/t.rg,this.update()},DialogComponent.prototype.setAlpha=function(t){this.hsva.a=t.v/t.rg,this.update()},DialogComponent.prototype.setR=function(t){var e=this.service.hsvaToRgba(this.hsva);e.r=t.v/t.rg,this.hsva=this.service.rgbaToHsva(e),this.update()},DialogComponent.prototype.setG=function(t){var e=this.service.hsvaToRgba(this.hsva);e.g=t.v/t.rg,this.hsva=this.service.rgbaToHsva(e),this.update()},DialogComponent.prototype.setB=function(t){var e=this.service.hsvaToRgba(this.hsva);e.b=t.v/t.rg,this.hsva=this.service.rgbaToHsva(e),this.update()},DialogComponent.prototype.setSaturationAndBrightness=function(t){this.hsva.s=t.s/t.rgX,this.hsva.v=t.v/t.rgY,this.update()},DialogComponent.prototype.formatPolicy=function(){return this.format=(this.format+1)%3,0===this.format&&this.hsva.a<1&&"hex6"===this.cpAlphaChannel&&this.format++,this.format},DialogComponent.prototype.update=function(t){void 0===t&&(t=!0);var e=this.service.hsva2hsla(this.hsva),o=this.service.denormalizeRGBA(this.service.hsvaToRgba(this.hsva)),i=this.service.denormalizeRGBA(this.service.hsvaToRgba(new s.Hsva(this.hsva.h,1,1,1)));this.hslaText=new s.Hsla(Math.round(360*e.h),Math.round(100*e.s),Math.round(100*e.l),Math.round(100*e.a)/100),this.rgbaText=new s.Rgba(o.r,o.g,o.b,Math.round(100*o.a)/100),this.hexText=this.service.hexText(o,"hex8"===this.cpAlphaChannel),this.alphaSliderColor="rgb("+o.r+","+o.g+","+o.b+")",this.hueSliderColor="rgb("+i.r+","+i.g+","+i.b+")",0===this.format&&this.hsva.a<1&&"hex6"===this.cpAlphaChannel&&this.format++;var n=this.outputColor;this.outputColor=this.service.outputFormat(this.hsva,this.cpOutputFormat,"hex8"===this.cpAlphaChannel),this.selectedColor=this.service.outputFormat(this.hsva,"rgba",!1),this.slider=new s.SliderPosition(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),t&&n!==this.outputColor&&this.directiveInstance.colorChanged(this.outputColor)},DialogComponent.prototype.isDescendant=function(t,e){for(var o=e.parentNode;null!==o;){if(o===t)return!0;o=o.parentNode}return!1},DialogComponent.prototype.createBox=function(t,e){return{top:t.getBoundingClientRect().top+(e?window.pageYOffset:0),left:t.getBoundingClientRect().left+(e?window.pageXOffset:0),width:t.offsetWidth,height:t.offsetHeight}},DialogComponent}();o([n.ViewChild("hueSlider"),i("design:type",Object)],u.prototype,"hueSlider",void 0),o([n.ViewChild("alphaSlider"),i("design:type",Object)],u.prototype,"alphaSlider",void 0),o([n.ViewChild("dialogPopup"),i("design:type",Object)],u.prototype,"dialogElement",void 0),u=o([n.Component({selector:"color-picker",template:e(8),styles:[e(7)]}),i("design:paramtypes",[n.ElementRef,r.ColorPickerService])],u),exports.DialogComponent=u;var d=function(){function DynamicCpModule(){}return DynamicCpModule}();d=o([a.NgModule({imports:[p.BrowserModule],declarations:[u,c,h]})],d)},function(t,exports,e){"use strict";var o=this&&this.__decorate||function(t,e,o,i){var n,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,o,s):n(e,o))||s);return r>3&&s&&Object.defineProperty(e,o,s),s};Object.defineProperty(exports,"__esModule",{value:!0});var i=e(0),n=e(9),r=e(2),s=e(3),a=e(5),p=function(){function ColorPickerModule(){}return ColorPickerModule}();p=o([i.NgModule({imports:[n.CommonModule],providers:[r.ColorPickerService],declarations:[s.ColorPickerDirective,a.ColorPickerInputComponent,s.SliderDirective,s.TextDirective,s.DialogComponent],exports:[s.ColorPickerDirective,a.ColorPickerInputComponent],entryComponents:[s.DialogComponent]})],p),exports.ColorPickerModule=p},function(t,exports,e){"use strict";var o=this&&this.__decorate||function(t,e,o,i){var n,r=arguments.length,s=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,o):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,o,i);else for(var a=t.length-1;a>=0;a--)(n=t[a])&&(s=(r<3?n(s):r>3?n(e,o,s):n(e,o))||s);return r>3&&s&&Object.defineProperty(e,o,s),s},i=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)};Object.defineProperty(exports,"__esModule",{value:!0});var n=e(0),r=e(10),s=a=function(){function ColorPickerInputComponent(){this.cpToggleChange=new n.EventEmitter(!0),this.cpPosition="right",this.cpPositionOffset="0%",this.cpPositionRelativeToArrow=!1,this.cpOutputFormat="hex",this.cpPresetLabel="Preset colors",this.cpCancelButton=!1,this.cpCancelButtonClass="cp-cancel-button-class",this.cpCancelButtonText="Cancel",this.cpOKButton=!1,this.cpOKButtonClass="cp-ok-button-class",this.cpOKButtonText="OK",this.cpFallbackColor="#fff",this.cpHeight="auto",this.cpWidth="230px",this.cpIgnoredElements=[],this.cpDialogDisplay="popup",this.cpSaveClickOutside=!0,this.cpAlphaChannel="hex6",this.itemClass="color-picker",this.onModelChange=function(){},this.onModelTouched=function(){}}return Object.defineProperty(ColorPickerInputComponent.prototype,"value",{get:function(){return this._value},set:function(t){this._value=t,this.onModelChange(t)},enumerable:!0,configurable:!0}),Object.defineProperty(ColorPickerInputComponent.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=t},enumerable:!0,configurable:!0}),ColorPickerInputComponent.prototype.ngOnInit=function(){},ColorPickerInputComponent.prototype.registerOnChange=function(t){this.onModelChange=t},ColorPickerInputComponent.prototype.registerOnTouched=function(t){this.onModelTouched=t},ColorPickerInputComponent.prototype.writeValue=function(t){this.value=t},ColorPickerInputComponent.prototype.colorPickerChange=function(t){this.onModelChange(t)},ColorPickerInputComponent}();o([n.Input("name"),i("design:type",String)],s.prototype,"name",void 0),o([n.Input("id"),i("design:type",String)],s.prototype,"id",void 0),o([n.Input("cpToggle"),i("design:type",Boolean)],s.prototype,"cpToggle",void 0),o([n.Output("cpToggleChange"),i("design:type",Object)],s.prototype,"cpToggleChange",void 0),o([n.Input("cpPosition"),i("design:type",String)],s.prototype,"cpPosition",void 0),o([n.Input("cpPositionOffset"),i("design:type",String)],s.prototype,"cpPositionOffset",void 0),o([n.Input("cpPositionRelativeToArrow"),i("design:type",Boolean)],s.prototype,"cpPositionRelativeToArrow",void 0),o([n.Input("cpOutputFormat"),i("design:type",String)],s.prototype,"cpOutputFormat",void 0),o([n.Input("cpPresetLabel"),i("design:type",String)],s.prototype,"cpPresetLabel",void 0),o([n.Input("cpPresetColors"),i("design:type",Array)],s.prototype,"cpPresetColors",void 0),o([n.Input("cpCancelButton"),i("design:type",Boolean)],s.prototype,"cpCancelButton",void 0),o([n.Input("cpCancelButtonClass"),i("design:type",String)],s.prototype,"cpCancelButtonClass",void 0),o([n.Input("cpCancelButtonText"),i("design:type",String)],s.prototype,"cpCancelButtonText",void 0),o([n.Input("cpOKButton"),i("design:type",Boolean)],s.prototype,"cpOKButton",void 0),o([n.Input("cpOKButtonClass"),i("design:type",String)],s.prototype,"cpOKButtonClass",void 0),o([n.Input("cpOKButtonText"),i("design:type",String)],s.prototype,"cpOKButtonText",void 0),o([n.Input("cpFallbackColor"),i("design:type",String)],s.prototype,"cpFallbackColor",void 0),o([n.Input("cpHeight"),i("design:type",String)],s.prototype,"cpHeight",void 0),o([n.Input("cpWidth"),i("design:type",String)],s.prototype,"cpWidth",void 0),o([n.Input("cpIgnoredElements"),i("design:type",Object)],s.prototype,"cpIgnoredElements",void 0),o([n.Input("cpDialogDisplay"),i("design:type",String)],s.prototype,"cpDialogDisplay",void 0),o([n.Input("cpSaveClickOutside"),i("design:type",Boolean)],s.prototype,"cpSaveClickOutside",void 0),o([n.Input("cpAlphaChannel"),i("design:type",String)],s.prototype,"cpAlphaChannel",void 0),o([n.Input(),i("design:type",Boolean)],s.prototype,"required",void 0),o([n.Input(),i("design:type",String)],s.prototype,"itemClass",void 0),o([n.Input(),i("design:type",Object),i("design:paramtypes",[Object])],s.prototype,"disabled",null),s=a=o([n.Component({selector:"narik-color-input",styles:["\n .color-picker \n { border: black solid 1px;\n border-radius: 5px;\n width: 30px;\n height: 20px;\n display: block;\n margin-bottom: 30px;\n cursor: pointer; }"],template:'<input [(colorPicker)]="value"\n [required]="required"\n [cpOutputFormat]="cpOutputFormat" \n [cpToggle]="cpToggle"\n (cpToggleChange)="cpToggleChange"\n [cpPosition]="cpPosition"\n [cpPositionRelativeToArrow]="cpPositionRelativeToArrow"\n [cpPresetLabel]="cpPresetLabel"\n [cpPresetColors]="cpPresetColors"\n [cpCancelButton]="cpCancelButton"\n [cpCancelButtonClass]="cpCancelButtonClass"\n [cpCancelButtonText]="cpCancelButtonText"\n [cpOKButton]="cpOKButton"\n [cpOKButtonClass]="cpOKButtonClass"\n [cpOKButtonText]="cpOKButtonText"\n [cpFallbackColor]="cpFallbackColor"\n [cpHeight]="cpHeight"\n [cpWidth]="cpWidth"\n [cpDialogDisplay]="cpDialogDisplay"\n [cpSaveClickOutside]="cpSaveClickOutside"\n [cpAlphaChannel]="cpAlphaChannel"\n [ngClass]="itemClass"\n readonly\n name="name"\n id="id"\n (colorPickerChange)="colorPickerChange"\n [cpPosition]="cpPosition"\n [style.background]="value" />',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:n.forwardRef(function(){return a}),multi:!0}]}),i("design:paramtypes",[])],s),exports.ColorPickerInputComponent=s;var a},function(t,exports,e){"use strict";function __export(t){for(var e in t)exports.hasOwnProperty(e)||(exports[e]=t[e])}Object.defineProperty(exports,"__esModule",{value:!0}),__export(e(1)),__export(e(3)),__export(e(4)),__export(e(2))},function(t,exports){t.exports='/*\r\n * Styles for Color Picker\r\n * \r\n * Alberto Pujante\r\n * \r\n * @licence: http://opensource.org/licenses/MIT\r\n */\n.color-picker * {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n margin: 0;\n font-size: 11px; }\n\n.color-picker {\n cursor: default;\n width: 230px;\n height: auto;\n border: #777 solid 1px;\n left: 30px;\n top: 250px;\n position: absolute;\n z-index: 1000;\n background-color: #fff;\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none; }\n .color-picker i {\n cursor: default;\n position: relative; }\n .color-picker input {\n text-align: center;\n font-size: 13px;\n height: 26px;\n -moz-appearance: textfield; }\n .color-picker input:invalid {\n box-shadow: none; }\n .color-picker input:-moz-submit-invalid {\n box-shadow: none; }\n .color-picker input:-moz-ui-invalid {\n box-shadow: none; }\n .color-picker input::-webkit-inner-spin-button, .color-picker input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0; }\n .color-picker .button-area {\n padding: 0 16px 16px 16px;\n text-align: right; }\n .color-picker .preset-area {\n padding: 4px 15px; }\n .color-picker .preset-area .preset-label {\n width: 100%;\n padding: 4px;\n font-size: 11px;\n text-align: left;\n color: #555; }\n .color-picker .preset-area .preset-color {\n cursor: pointer;\n display: inline-block;\n width: 18px;\n height: 18px;\n margin: 4px 6px 8px 6px;\n -moz-border-radius: 25%;\n -webkit-border-radius: 25%;\n border-radius: 25%;\n -khtml-border-radius: 25%;\n border: #a9a9a9 solid 1px; }\n .color-picker .arrow {\n height: 0;\n width: 0;\n border-style: solid;\n position: absolute;\n z-index: 999999; }\n .color-picker .arrow-right {\n border-width: 5px 10px;\n border-color: rgba(0, 0, 0, 0) #777 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);\n top: 10px;\n left: -20px; }\n .color-picker .arrow-left {\n border-width: 5px 10px;\n border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #777;\n top: 10px;\n left: 231px; }\n .color-picker .arrow-bottom {\n border-width: 10px 5px;\n border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #777 rgba(0, 0, 0, 0);\n top: -20px;\n left: 10px; }\n .color-picker .arrow-top {\n border-width: 10px 5px;\n border-color: #777 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);\n left: 10px; }\n .color-picker div.cursor-sv {\n cursor: default;\n position: relative;\n -moz-border-radius: 50%;\n -webkit-border-radius: 50%;\n border-radius: 50%;\n -khtml-border-radius: 50%;\n width: 15px;\n height: 15px;\n border: #ddd solid 1px; }\n .color-picker div.cursor {\n cursor: default;\n position: relative;\n -moz-border-radius: 50%;\n -webkit-border-radius: 50%;\n border-radius: 50%;\n -khtml-border-radius: 50%;\n width: 16px;\n height: 16px;\n border: #222 solid 2px; }\n .color-picker .saturation-lightness {\n cursor: pointer;\n width: 100%;\n height: 130px;\n border: none;\n background-size: 100% 100%;\n background-image: url("data:image/png;base64,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"); }\n .color-picker .box {\n display: flex;\n padding: 4px 8px; }\n .color-picker .box .left {\n position: relative;\n padding: 16px 8px; }\n .color-picker .box .right {\n flex: 1 1 auto;\n padding: 12px 8px; }\n .color-picker .hue {\n cursor: pointer;\n