UNPKG

ngx-color

Version:

A Collection of Color Pickers from Sketch, Photoshop, Chrome & more

1 lines 22.7 kB
{"version":3,"file":"ngx-color-sketch.mjs","sources":["../../src/lib/sketch/sketch-fields.component.ts","../../src/lib/sketch/sketch-preset-colors.component.ts","../../src/lib/sketch/sketch.component.ts","../../src/lib/sketch/ngx-color-sketch.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { isValidHex, HSLA, RGBA } from 'ngx-color';\nimport { TinyColor } from '@ctrl/tinycolor';\n\n@Component({\n selector: 'color-sketch-fields',\n template: `\n <div class=\"sketch-fields\">\n <div class=\"sketch-double\">\n <color-editable-input\n [style]=\"{ input: input, label: label }\"\n label=\"hex\"\n [value]=\"hex.replace('#', '')\"\n (onChange)=\"handleChange($event)\"\n ></color-editable-input>\n </div>\n <div class=\"sketch-single\">\n <color-editable-input\n [style]=\"{ input: input, label: label }\"\n label=\"r\"\n [value]=\"rgb.r\"\n (onChange)=\"handleChange($event)\"\n [dragLabel]=\"true\"\n [dragMax]=\"255\"\n ></color-editable-input>\n </div>\n <div class=\"sketch-single\">\n <color-editable-input\n [style]=\"{ input: input, label: label }\"\n label=\"g\"\n [value]=\"rgb.g\"\n (onChange)=\"handleChange($event)\"\n [dragLabel]=\"true\"\n [dragMax]=\"255\"\n ></color-editable-input>\n </div>\n <div class=\"sketch-single\">\n <color-editable-input\n [style]=\"{ input: input, label: label }\"\n label=\"b\"\n [value]=\"rgb.b\"\n (onChange)=\"handleChange($event)\"\n [dragLabel]=\"true\"\n [dragMax]=\"255\"\n ></color-editable-input>\n </div>\n @if (disableAlpha === false) {\n <div class=\"sketch-alpha\">\n <color-editable-input\n [style]=\"{ input: input, label: label }\"\n label=\"a\"\n [value]=\"round(rgb.a * 100)\"\n (onChange)=\"handleChange($event)\"\n [dragLabel]=\"true\"\n [dragMax]=\"100\"\n ></color-editable-input>\n </div>\n }\n </div>\n `,\n styles: [\n `\n .sketch-fields {\n display: flex;\n padding-top: 4px;\n }\n .sketch-double {\n -webkit-box-flex: 2;\n flex: 2 1 0%;\n }\n .sketch-single {\n flex: 1 1 0%;\n padding-left: 6px;\n }\n .sketch-alpha {\n -webkit-box-flex: 1;\n flex: 1 1 0%;\n padding-left: 6px;\n }\n :host-context([dir='rtl']) .sketch-single {\n padding-right: 6px;\n padding-left: 0;\n }\n :host-context([dir='rtl']) .sketch-alpha {\n padding-right: 6px;\n padding-left: 0;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n standalone: false,\n})\nexport class SketchFieldsComponent {\n @Input() hsl!: HSLA;\n @Input() rgb!: RGBA;\n @Input() hex!: string;\n @Input() disableAlpha = false;\n @Output() onChange = new EventEmitter<any>();\n input: { [key: string]: string } = {\n width: '100%',\n padding: '4px 10% 3px',\n border: 'none',\n boxSizing: 'border-box',\n boxShadow: 'inset 0 0 0 1px #ccc',\n fontSize: '11px',\n };\n label: { [key: string]: string } = {\n display: 'block',\n textAlign: 'center',\n fontSize: '11px',\n color: '#222',\n paddingTop: '3px',\n paddingBottom: '4px',\n textTransform: 'capitalize',\n };\n\n round(value) {\n return Math.round(value);\n }\n handleChange({ data, $event }) {\n if (data.hex) {\n if (isValidHex(data.hex)) {\n const color = new TinyColor(data.hex);\n this.onChange.emit({\n data: {\n hex: this.disableAlpha || data.hex.length <= 6 ? color.toHex() : color.toHex8(),\n source: 'hex',\n },\n $event,\n });\n }\n } else if (data.r || data.g || data.b) {\n this.onChange.emit({\n data: {\n r: data.r || this.rgb.r,\n g: data.g || this.rgb.g,\n b: data.b || this.rgb.b,\n source: 'rgb',\n },\n $event,\n });\n } else if (data.a) {\n if (data.a < 0) {\n data.a = 0;\n } else if (data.a > 100) {\n data.a = 100;\n }\n data.a /= 100;\n\n if (this.disableAlpha) {\n data.a = 1;\n }\n\n this.onChange.emit({\n data: {\n h: this.hsl.h,\n s: this.hsl.s,\n l: this.hsl.l,\n a: Math.round(data.a * 100) / 100,\n source: 'rgb',\n },\n $event,\n });\n } else if (data.h || data.s || data.l) {\n this.onChange.emit({\n data: {\n h: data.h || this.hsl.h,\n s: Number((data.s && data.s) || this.hsl.s),\n l: Number((data.l && data.l) || this.hsl.l),\n source: 'hsl',\n },\n $event,\n });\n }\n }\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { Shape } from 'ngx-color';\n\n@Component({\n selector: 'color-sketch-preset-colors',\n template: `\n <div class=\"sketch-swatches\">\n @for (c of colors; track c) {\n <div class=\"sketch-wrap\">\n <color-swatch\n [color]=\"normalizeValue(c).color\"\n [style]=\"swatchStyle\"\n [focusStyle]=\"focusStyle(c)\"\n (onClick)=\"handleClick($event)\"\n (onHover)=\"onSwatchHover.emit($event)\"\n class=\"swatch\"\n ></color-swatch>\n </div>\n }\n </div>\n `,\n styles: [\n `\n .sketch-swatches {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n margin: 0px -10px;\n padding: 10px 0px 0px 10px;\n border-top: 1px solid rgb(238, 238, 238);\n }\n .sketch-wrap {\n width: 16px;\n height: 16px;\n margin: 0px 10px 10px 0px;\n }\n :host-context([dir='rtl']) .sketch-swatches {\n padding-right: 10px;\n padding-left: 0;\n }\n :host-context([dir='rtl']) .sketch-wrap {\n margin-left: 10px;\n margin-right: 0;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n standalone: false,\n})\nexport class SketchPresetColorsComponent {\n @Input() colors!: string[];\n @Output() onClick = new EventEmitter<any>();\n @Output() onSwatchHover = new EventEmitter<any>();\n swatchStyle = {\n borderRadius: '3px',\n boxShadow: 'inset 0 0 0 1px rgba(0,0,0,.15)',\n };\n\n handleClick({ hex, $event }) {\n this.onClick.emit({ hex, $event });\n }\n normalizeValue(val: string | Shape) {\n if (typeof val === 'string') {\n return { color: val };\n }\n return val;\n }\n focusStyle(val: string | Shape) {\n const c = this.normalizeValue(val);\n return {\n boxShadow: `inset 0 0 0 1px rgba(0,0,0,.15), 0 0 4px ${c.color}`,\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, forwardRef, Input, NgModule } from '@angular/core';\n\nimport {\n AlphaModule,\n CheckboardModule,\n ColorWrap,\n EditableInputModule,\n HueModule,\n isValidHex,\n SaturationModule,\n SwatchModule,\n} from 'ngx-color';\nimport { SketchFieldsComponent } from './sketch-fields.component';\nimport { SketchPresetColorsComponent } from './sketch-preset-colors.component';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'color-sketch',\n template: `\n <div class=\"sketch-picker {{ className }}\" [style.width.px]=\"width\">\n <div class=\"sketch-saturation\">\n <color-saturation [hsl]=\"hsl\" [hsv]=\"hsv\" (onChange)=\"handleValueChange($event)\">\n </color-saturation>\n </div>\n <div class=\"sketch-controls\">\n <div class=\"sketch-sliders\">\n <div class=\"sketch-hue\">\n <color-hue [hsl]=\"hsl\" (onChange)=\"handleValueChange($event)\"></color-hue>\n </div>\n @if (disableAlpha === false) {\n <div class=\"sketch-alpha\">\n <color-alpha\n [radius]=\"2\"\n [rgb]=\"rgb\"\n [hsl]=\"hsl\"\n (onChange)=\"handleValueChange($event)\"\n ></color-alpha>\n </div>\n }\n </div>\n <div class=\"sketch-color\">\n <color-checkboard></color-checkboard>\n <div class=\"sketch-active\" [style.background]=\"activeBackground\"></div>\n </div>\n </div>\n <div class=\"sketch-fields-container\">\n <color-sketch-fields\n [rgb]=\"rgb\"\n [hsl]=\"hsl\"\n [hex]=\"hex\"\n [disableAlpha]=\"disableAlpha\"\n (onChange)=\"handleValueChange($event)\"\n ></color-sketch-fields>\n </div>\n @if (presetColors && presetColors.length) {\n <div class=\"sketch-swatches-container\">\n <color-sketch-preset-colors\n [colors]=\"presetColors\"\n (onClick)=\"handleBlockChange($event)\"\n (onSwatchHover)=\"onSwatchHover.emit($event)\"\n ></color-sketch-preset-colors>\n </div>\n }\n </div>\n `,\n styles: [\n `\n .sketch-picker {\n padding: 10px 10px 3px;\n box-sizing: initial;\n background: #fff;\n border-radius: 4px;\n box-shadow:\n 0 0 0 1px rgba(0, 0, 0, 0.15),\n 0 8px 16px rgba(0, 0, 0, 0.15);\n }\n .sketch-saturation {\n width: 100%;\n padding-bottom: 75%;\n position: relative;\n overflow: hidden;\n }\n .sketch-fields-container {\n display: block;\n }\n .sketch-swatches-container {\n display: block;\n }\n .sketch-controls {\n display: flex;\n }\n .sketch-sliders {\n padding: 4px 0px;\n -webkit-box-flex: 1;\n flex: 1 1 0%;\n }\n .sketch-hue {\n position: relative;\n height: 10px;\n overflow: hidden;\n }\n .sketch-alpha {\n position: relative;\n height: 10px;\n margin-top: 4px;\n overflow: hidden;\n }\n .sketch-color {\n width: 24px;\n height: 24px;\n position: relative;\n margin-top: 4px;\n margin-left: 4px;\n border-radius: 3px;\n }\n .sketch-active {\n position: absolute;\n top: 0px;\n right: 0px;\n bottom: 0px;\n left: 0px;\n border-radius: 2px;\n box-shadow:\n rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset,\n rgba(0, 0, 0, 0.25) 0px 0px 4px inset;\n }\n :host-context([dir='rtl']) .sketch-color {\n margin-right: 4px;\n margin-left: 0;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SketchComponent),\n multi: true,\n },\n {\n provide: ColorWrap,\n useExisting: forwardRef(() => SketchComponent),\n },\n ],\n standalone: false,\n})\nexport class SketchComponent extends ColorWrap {\n /** Remove alpha slider and options from picker */\n @Input() disableAlpha = false;\n /** Hex strings for default colors at bottom of picker */\n @Input() presetColors = [\n '#D0021B',\n '#F5A623',\n '#F8E71C',\n '#8B572A',\n '#7ED321',\n '#417505',\n '#BD10E0',\n '#9013FE',\n '#4A90E2',\n '#50E3C2',\n '#B8E986',\n '#000000',\n '#4A4A4A',\n '#9B9B9B',\n '#FFFFFF',\n ];\n /** Width of picker */\n @Input() width = 200;\n activeBackground!: string;\n constructor() {\n super();\n }\n afterValidChange() {\n const alpha = this.disableAlpha ? 1 : this.rgb.a;\n this.activeBackground = `rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${alpha})`;\n }\n handleValueChange({ data, $event }) {\n this.handleChange(data, $event);\n }\n handleBlockChange({ hex, $event }) {\n if (isValidHex(hex)) {\n // this.hex = hex;\n this.handleChange(\n {\n hex,\n source: 'hex',\n },\n $event,\n );\n }\n }\n}\n\n@NgModule({\n declarations: [SketchComponent, SketchFieldsComponent, SketchPresetColorsComponent],\n exports: [SketchComponent, SketchFieldsComponent, SketchPresetColorsComponent],\n imports: [\n CommonModule,\n AlphaModule,\n CheckboardModule,\n EditableInputModule,\n HueModule,\n SaturationModule,\n SwatchModule,\n ],\n})\nexport class ColorSketchModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}