UNPKG

32.9 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-colorpicker.umd.js","sources":["ng://primeng/colorpicker/colorpicker.ts"],"sourcesContent":["import { NgModule, Component, ElementRef, Input, Output, OnDestroy, EventEmitter, forwardRef, Renderer2, ViewChild, ChangeDetectorRef, ChangeDetectionStrategy } from '@angular/core';\nimport { trigger, state, style, transition, animate, AnimationEvent } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\n\nexport const COLORPICKER_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ColorPicker),\n multi: true\n};\n\n@Component({\n selector: 'p-colorPicker',\n template: `\n <div [ngStyle]=\"style\" [class]=\"styleClass\" [ngClass]=\"{'ui-colorpicker ui-widget':true,'ui-colorpicker-overlay':!inline,'ui-colorpicker-dragging':colorDragging||hueDragging}\">\n <input #input type=\"text\" *ngIf=\"!inline\" class=\"ui-colorpicker-preview ui-inputtext ui-state-default ui-corner-all\" readonly=\"readonly\" [ngClass]=\"{'ui-state-disabled': disabled}\"\n (focus)=\"onInputFocus()\" (click)=\"onInputClick()\" (keydown)=\"onInputKeydown($event)\" [attr.id]=\"inputId\" [attr.tabindex]=\"tabindex\" [disabled]=\"disabled\"\n [style.backgroundColor]=\"inputBgColor\">\n <div *ngIf=\"inline || overlayVisible\" [ngClass]=\"{'ui-colorpicker-panel ui-corner-all': true, 'ui-colorpicker-overlay-panel ui-shadow':!inline, 'ui-state-disabled': disabled}\" (click)=\"onPanelClick()\"\n [@overlayAnimation]=\"{value: 'visible', params: {showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions}}\" [@.disabled]=\"inline === true\" (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\">\n <div class=\"ui-colorpicker-content\">\n <div #colorSelector class=\"ui-colorpicker-color-selector\" (mousedown)=\"onColorMousedown($event)\">\n <div class=\"ui-colorpicker-color\">\n <div #colorHandle class=\"ui-colorpicker-color-handle\"></div>\n </div>\n </div>\n <div #hue class=\"ui-colorpicker-hue\" (mousedown)=\"onHueMousedown($event)\">\n <div #hueHandle class=\"ui-colorpicker-hue-handle\"></div>\n </div>\n </div>\n </div>\n </div>\n `,\n animations: [\n trigger('overlayAnimation', [\n state('void', style({\n transform: 'translateY(5%)',\n opacity: 0\n })),\n state('visible', style({\n transform: 'translateY(0)',\n opacity: 1\n })),\n transition('void => visible', animate('{{showTransitionParams}}')),\n transition('visible => void', animate('{{hideTransitionParams}}'))\n ])\n ],\n providers: [COLORPICKER_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class ColorPicker implements ControlValueAccessor, OnDestroy {\n\n @Input() style: any;\n\n @Input() styleClass: string;\n \n @Input() inline: boolean;\n \n @Input() format: string = 'hex';\n \n @Input() appendTo: string;\n \n @Input() disabled: boolean;\n \n @Input() tabindex: string;\n \n @Input() inputId: string;\n\n @Input() autoZIndex: boolean = true;\n \n @Input() baseZIndex: number = 0;\n\n @Input() showTransitionOptions: string = '225ms ease-out';\n\n @Input() hideTransitionOptions: string = '195ms ease-in';\n \n @Output() onChange: EventEmitter<any> = new EventEmitter();\n \n @ViewChild('input') inputViewChild: ElementRef;\n \n value: any;\n \n inputBgColor: string;\n \n shown: boolean;\n \n overlayVisible: boolean;\n \n defaultColor: string = 'ff0000';\n \n onModelChange: Function = () => {};\n \n onModelTouched: Function = () => {};\n \n documentClickListener: Function;\n \n documentMousemoveListener: Function;\n \n documentMouseupListener: Function;\n \n documentHueMoveListener: Function;\n \n selfClick: boolean;\n \n colorDragging: boolean;\n \n hueDragging: boolean;\n\n overlay: HTMLDivElement;\n\n colorSelectorViewChild: ElementRef;\n \n colorHandleViewChild: ElementRef;\n \n hueViewChild: ElementRef;\n \n hueHandleViewChild: ElementRef;\n \n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef) {}\n \n @ViewChild('colorSelector') set colorSelector(element: ElementRef) {\n this.colorSelectorViewChild = element;\n }\n\n @ViewChild('colorHandle') set colorHandle(element: ElementRef) {\n this.colorHandleViewChild = element;\n }\n\n @ViewChild('hue') set hue(element: ElementRef) {\n this.hueViewChild = element;\n }\n\n @ViewChild('hueHandle') set hueHandle(element: ElementRef) {\n this.hueHandleViewChild = element;\n }\n\n onHueMousedown(event: MouseEvent) {\n if (this.disabled) {\n return;\n }\n \n this.bindDocumentMousemoveListener();\n this.bindDocumentMouseupListener();\n \n this.hueDragging = true;\n this.pickHue(event);\n }\n \n pickHue(event: MouseEvent) {\n let top: number = this.hueViewChild.nativeElement.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n this.value = this.validateHSB({\n h: Math.floor(360 * (150 - Math.max(0, Math.min(150, (event.pageY - top)))) / 150),\n s: this.value.s,\n b: this.value.b\n });\n \n this.updateColorSelector();\n this.updateUI();\n this.updateModel();\n this.onChange.emit({originalEvent: event, value: this.getValueToUpdate()});\n }\n \n onColorMousedown(event: MouseEvent) {\n if (this.disabled) {\n return;\n }\n \n this.bindDocumentMousemoveListener();\n this.bindDocumentMouseupListener();\n \n this.colorDragging = true;\n this.pickColor(event);\n }\n \n pickColor(event: MouseEvent) {\n let rect = this.colorSelectorViewChild.nativeElement.getBoundingClientRect();\n let top = rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n let left = rect.left + document.body.scrollLeft;\n let saturation = Math.floor(100 * (Math.max(0, Math.min(150, (event.pageX - left)))) / 150);\n let brightness = Math.floor(100 * (150 - Math.max(0, Math.min(150, (event.pageY - top)))) / 150);\n this.value = this.validateHSB({\n h: this.value.h,\n s: saturation,\n b: brightness\n });\n \n this.updateUI();\n this.updateModel();\n this.onChange.emit({originalEvent: event, value: this.getValueToUpdate()});\n }\n \n getValueToUpdate() {\n let val: any;\n switch(this.format) {\n case 'hex':\n val = '#' + this.HSBtoHEX(this.value);\n break;\n \n case 'rgb':\n val = this.HSBtoRGB(this.value);\n break;\n \n case 'hsb':\n val = this.value;\n break;\n }\n \n return val;\n }\n \n updateModel(): void {\n this.onModelChange(this.getValueToUpdate());\n }\n\n writeValue(value: any): void {\n if (value) {\n switch(this.format) {\n case 'hex':\n this.value = this.HEXtoHSB(value);\n break;\n \n case 'rgb':\n this.value = this.RGBtoHSB(value);\n break;\n \n case 'hsb':\n this.value = value;\n break;\n }\n }\n else {\n this.value = this.HEXtoHSB(this.defaultColor);\n }\n \n this.updateColorSelector();\n this.updateUI();\n }\n \n updateColorSelector() {\n if (this.colorSelectorViewChild) {\n const hsb: any = {};\n hsb.s = 100;\n hsb.b = 100;\n hsb.h = this.value.h;\n\n this.colorSelectorViewChild.nativeElement.style.backgroundColor = '#' + this.HSBtoHEX(hsb);\n }\n }\n \n updateUI() {\n if (this.colorHandleViewChild && this.hueHandleViewChild.nativeElement) {\n this.colorHandleViewChild.nativeElement.style.left = Math.floor(150 * this.value.s / 100) + 'px';\n this.colorHandleViewChild.nativeElement.style.top = Math.floor(150 * (100 - this.value.b) / 100) + 'px';\n this.hueHandleViewChild.nativeElement.style.top = Math.floor(150 - (150 * this.value.h / 360)) + 'px';\n\n }\n\n this.inputBgColor = '#' + this.HSBtoHEX(this.value);\n }\n \n onInputFocus() {\n this.onModelTouched();\n }\n \n show() {\n this.overlayVisible = true;\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch(event.toState) {\n case 'visible':\n if (!this.inline) {\n this.overlay = event.element;\n this.appendOverlay();\n if (this.autoZIndex) {\n this.overlay.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n this.alignOverlay();\n this.bindDocumentClickListener();\n\n this.updateColorSelector();\n this.updateUI();\n }\n break;\n\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.overlay);\n else\n DomHandler.appendChild(this.overlay, this.appendTo);\n }\n }\n\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n \n alignOverlay() {\n if (this.appendTo)\n DomHandler.absolutePosition(this.overlay, this.inputViewChild.nativeElement);\n else\n DomHandler.relativePosition(this.overlay, this.inputViewChild.nativeElement);\n }\n \n hide() {\n this.overlayVisible = false;\n }\n \n onInputClick() {\n this.selfClick = true;\n this.togglePanel();\n }\n \n togglePanel() {\n if (!this.overlayVisible)\n this.show();\n else\n this.hide();\n }\n \n onInputKeydown(event: KeyboardEvent) {\n switch(event.which) {\n //space\n case 32:\n this.togglePanel();\n event.preventDefault();\n break;\n \n //escape and tab\n case 27:\n case 9:\n this.hide();\n break;\n }\n }\n \n onPanelClick() {\n this.selfClick = true;\n }\n \n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n \n setDisabledState(val: boolean): void {\n this.disabled = val;\n }\n \n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n this.documentClickListener = this.renderer.listen('document', 'click', () => {\n if (!this.selfClick) {\n this.overlayVisible = false;\n this.unbindDocumentClickListener();\n }\n \n this.selfClick = false;\n this.cd.markForCheck();\n });\n } \n }\n \n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n \n bindDocumentMousemoveListener() {\n if (!this.documentMousemoveListener) {\n this.documentMousemoveListener = this.renderer.listen('document', 'mousemove', (event: MouseEvent) => {\n if (this.colorDragging) {\n this.pickColor(event);\n }\n \n if (this.hueDragging) {\n this.pickHue(event);\n }\n });\n }\n }\n \n unbindDocumentMousemoveListener() {\n if (this.documentMousemoveListener) {\n this.documentMousemoveListener();\n this.documentMousemoveListener = null;\n }\n }\n \n bindDocumentMouseupListener() {\n if (!this.documentMouseupListener) {\n this.documentMouseupListener = this.renderer.listen('document', 'mouseup', () => {\n this.colorDragging = false;\n this.hueDragging = false;\n this.unbindDocumentMousemoveListener();\n this.unbindDocumentMouseupListener();\n });\n }\n }\n \n unbindDocumentMouseupListener() {\n if (this.documentMouseupListener) {\n this.documentMouseupListener();\n this.documentMouseupListener = null;\n }\n }\n\n validateHSB(hsb) {\n return {\n h: Math.min(360, Math.max(0, hsb.h)),\n s: Math.min(100, Math.max(0, hsb.s)),\n b: Math.min(100, Math.max(0, hsb.b))\n };\n }\n \n validateRGB(rgb) {\n return {\n r: Math.min(255, Math.max(0, rgb.r)),\n g: Math.min(255, Math.max(0, rgb.g)),\n b: Math.min(255, Math.max(0, rgb.b))\n };\n }\n \n validateHEX(hex) {\n var len = 6 - hex.length;\n if (len > 0) {\n var o = [];\n for (var i=0; i<len; i++) {\n o.push('0');\n }\n o.push(hex);\n hex = o.join('');\n }\n return hex;\n }\n \n HEXtoRGB(hex) {\n let hexValue = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);\n return {r: hexValue >> 16, g: (hexValue & 0x00FF00) >> 8, b: (hexValue & 0x0000FF)};\n }\n \n HEXtoHSB(hex) {\n return this.RGBtoHSB(this.HEXtoRGB(hex));\n }\n \n RGBtoHSB(rgb) {\n var hsb = {\n h: 0,\n s: 0,\n b: 0\n };\n var min = Math.min(rgb.r, rgb.g, rgb.b);\n var max = Math.max(rgb.r, rgb.g, rgb.b);\n var delta = max - min;\n hsb.b = max;\n hsb.s = max != 0 ? 255 * delta / max : 0;\n if (hsb.s != 0) {\n if (rgb.r == max) {\n hsb.h = (rgb.g - rgb.b) / delta;\n } else if (rgb.g == max) {\n hsb.h = 2 + (rgb.b - rgb.r) / delta;\n } else {\n hsb.h = 4 + (rgb.r - rgb.g) / delta;\n }\n } else {\n hsb.h = -1;\n }\n hsb.h *= 60;\n if (hsb.h < 0) {\n hsb.h += 360;\n }\n hsb.s *= 100/255;\n hsb.b *= 100/255;\n return hsb;\n }\n \n HSBtoRGB(hsb) {\n var rgb = {\n r: null, g: null, b: null\n };\n let h: number = hsb.h;\n let s: number = hsb.s*255/100;\n let v: number = hsb.b*255/100;\n if (s == 0) {\n rgb = {\n r: v,\n g: v,\n b: v\n }\n } \n else {\n let t1: number = v;\n let t2: number = (255-s)*v/255;\n let t3: number = (t1-t2)*(h%60)/60;\n if (h==360) h = 0;\n if (h<60) {rgb.r=t1;\trgb.b=t2; rgb.g=t2+t3}\n else if (h<120) {rgb.g=t1; rgb.b=t2;\trgb.r=t1-t3}\n else if (h<180) {rgb.g=t1; rgb.r=t2;\trgb.b=t2+t3}\n else if (h<240) {rgb.b=t1; rgb.r=t2;\trgb.g=t1-t3}\n else if (h<300) {rgb.b=t1; rgb.g=t2;\trgb.r=t2+t3}\n else if (h<360) {rgb.r=t1; rgb.g=t2;\trgb.b=t1-t3}\n else {rgb.r=0; rgb.g=0;\trgb.b=0}\n }\n return {r:Math.round(rgb.r), g:Math.round(rgb.g), b:Math.round(rgb.b)};\n }\n \n RGBtoHEX(rgb) {\n var hex = [\n rgb.r.toString(16),\n rgb.g.toString(16),\n rgb.b.toString(16)\n ];\n \n for(var key in hex) {\n if (hex[key].length == 1) {\n hex[key] = '0' + hex[key];\n }\n } \n\n return hex.join('');\n }\n \n HSBtoHEX(hsb) {\n return this.RGBtoHEX(this.HSBtoRGB(hsb));\n }\n\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.overlay = null;\n }\n \n ngOnDestroy() {\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [ColorPicker],\n declarations: [ColorPicker]\n})\nexport class ColorPickerModule { }\n"],"names":["NG_VALUE_ACCESSOR","forwardRef","EventEmitter","DomHandler","ElementRef","Renderer2","ChangeDetectorRef","Input","Output","ViewChild","Component","trigger","state","style","transition","animate","ChangeDetectionStrategy","NgModule","CommonModule"],"mappings":"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"}
\No newline at end of file