ngx-color 7.3.1 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +281 -0
  3. package/alpha.component.d.ts +1 -1
  4. package/checkboard.component.d.ts +1 -1
  5. package/color-wrap.component.d.ts +1 -1
  6. package/coordinates.directive.d.ts +1 -1
  7. package/editable-input.component.d.ts +1 -1
  8. package/esm2020/alpha.component.mjs +13 -61
  9. package/esm2020/checkboard.component.mjs +9 -25
  10. package/esm2020/color-wrap.component.mjs +8 -8
  11. package/esm2020/coordinates.directive.mjs +7 -7
  12. package/esm2020/editable-input.component.mjs +11 -25
  13. package/esm2020/hue.component.mjs +13 -54
  14. package/esm2020/raised.component.mjs +10 -49
  15. package/esm2020/saturation.component.mjs +13 -57
  16. package/esm2020/shade.component.mjs +11 -51
  17. package/esm2020/swatch.component.mjs +13 -28
  18. package/fesm2015/ngx-color.mjs +92 -349
  19. package/fesm2015/ngx-color.mjs.map +1 -1
  20. package/fesm2020/ngx-color.mjs +92 -349
  21. package/fesm2020/ngx-color.mjs.map +1 -1
  22. package/hue.component.d.ts +1 -1
  23. package/{ngx-color.d.ts → index.d.ts} +0 -0
  24. package/package.json +11 -123
  25. package/raised.component.d.ts +1 -1
  26. package/saturation.component.d.ts +1 -1
  27. package/shade.component.d.ts +1 -1
  28. package/swatch.component.d.ts +1 -1
  29. package/alpha/alpha-picker.component.d.ts +0 -28
  30. package/alpha/ngx-color-alpha.d.ts +0 -5
  31. package/alpha/package.json +0 -17
  32. package/alpha/public_api.d.ts +0 -1
  33. package/block/block-swatches.component.d.ts +0 -24
  34. package/block/block.component.d.ts +0 -36
  35. package/block/ngx-color-block.d.ts +0 -5
  36. package/block/package.json +0 -16
  37. package/block/public_api.d.ts +0 -2
  38. package/chrome/chrome-fields.component.d.ts +0 -22
  39. package/chrome/chrome.component.d.ts +0 -25
  40. package/chrome/ngx-color-chrome.d.ts +0 -5
  41. package/chrome/package.json +0 -16
  42. package/chrome/public_api.d.ts +0 -2
  43. package/circle/circle-swatch.component.d.ts +0 -19
  44. package/circle/circle.component.d.ts +0 -32
  45. package/circle/ngx-color-circle.d.ts +0 -5
  46. package/circle/package.json +0 -19
  47. package/circle/public_api.d.ts +0 -2
  48. package/compact/compact-color.component.d.ts +0 -19
  49. package/compact/compact-fields.component.d.ts +0 -32
  50. package/compact/compact.component.d.ts +0 -30
  51. package/compact/ngx-color-compact.d.ts +0 -5
  52. package/compact/package.json +0 -16
  53. package/compact/public_api.d.ts +0 -3
  54. package/esm2020/alpha/alpha-picker.component.mjs +0 -116
  55. package/esm2020/alpha/ngx-color-alpha.mjs +0 -5
  56. package/esm2020/alpha/public_api.mjs +0 -2
  57. package/esm2020/block/block-swatches.component.mjs +0 -74
  58. package/esm2020/block/block.component.mjs +0 -199
  59. package/esm2020/block/ngx-color-block.mjs +0 -5
  60. package/esm2020/block/public_api.mjs +0 -3
  61. package/esm2020/chrome/chrome-fields.component.mjs +0 -356
  62. package/esm2020/chrome/chrome.component.mjs +0 -249
  63. package/esm2020/chrome/ngx-color-chrome.mjs +0 -5
  64. package/esm2020/chrome/public_api.mjs +0 -3
  65. package/esm2020/circle/circle-swatch.component.mjs +0 -85
  66. package/esm2020/circle/circle.component.mjs +0 -148
  67. package/esm2020/circle/ngx-color-circle.mjs +0 -5
  68. package/esm2020/circle/public_api.mjs +0 -3
  69. package/esm2020/compact/compact-color.component.mjs +0 -91
  70. package/esm2020/compact/compact-fields.component.mjs +0 -186
  71. package/esm2020/compact/compact.component.mjs +0 -177
  72. package/esm2020/compact/ngx-color-compact.mjs +0 -5
  73. package/esm2020/compact/public_api.mjs +0 -4
  74. package/esm2020/github/github-swatch.component.mjs +0 -67
  75. package/esm2020/github/github.component.mjs +0 -179
  76. package/esm2020/github/ngx-color-github.mjs +0 -5
  77. package/esm2020/github/public_api.mjs +0 -3
  78. package/esm2020/hue/hue-picker.component.mjs +0 -113
  79. package/esm2020/hue/ngx-color-hue.mjs +0 -5
  80. package/esm2020/hue/public_api.mjs +0 -2
  81. package/esm2020/material/material.component.mjs +0 -211
  82. package/esm2020/material/ngx-color-material.mjs +0 -5
  83. package/esm2020/material/public_api.mjs +0 -2
  84. package/esm2020/photoshop/ngx-color-photoshop.mjs +0 -5
  85. package/esm2020/photoshop/photoshop-button.component.mjs +0 -63
  86. package/esm2020/photoshop/photoshop-fields.component.mjs +0 -241
  87. package/esm2020/photoshop/photoshop-previews.component.mjs +0 -68
  88. package/esm2020/photoshop/photoshop.component.mjs +0 -258
  89. package/esm2020/photoshop/public_api.mjs +0 -5
  90. package/esm2020/shade/ngx-color-shade.mjs +0 -5
  91. package/esm2020/shade/public_api.mjs +0 -2
  92. package/esm2020/shade/shade-picker.component.mjs +0 -105
  93. package/esm2020/sketch/ngx-color-sketch.mjs +0 -5
  94. package/esm2020/sketch/public_api.mjs +0 -4
  95. package/esm2020/sketch/sketch-fields.component.mjs +0 -243
  96. package/esm2020/sketch/sketch-preset-colors.component.mjs +0 -98
  97. package/esm2020/sketch/sketch.component.mjs +0 -283
  98. package/esm2020/slider/ngx-color-slider.mjs +0 -5
  99. package/esm2020/slider/public_api.mjs +0 -4
  100. package/esm2020/slider/slider-swatch.component.mjs +0 -80
  101. package/esm2020/slider/slider-swatches.component.mjs +0 -135
  102. package/esm2020/slider/slider.component.mjs +0 -116
  103. package/esm2020/swatches/ngx-color-swatches.mjs +0 -5
  104. package/esm2020/swatches/public_api.mjs +0 -4
  105. package/esm2020/swatches/swatches-color.component.mjs +0 -123
  106. package/esm2020/swatches/swatches-group.component.mjs +0 -64
  107. package/esm2020/swatches/swatches.component.mjs +0 -258
  108. package/esm2020/twitter/ngx-color-twitter.mjs +0 -5
  109. package/esm2020/twitter/public_api.mjs +0 -2
  110. package/esm2020/twitter/twitter.component.mjs +0 -255
  111. package/fesm2015/ngx-color-alpha.mjs +0 -123
  112. package/fesm2015/ngx-color-alpha.mjs.map +0 -1
  113. package/fesm2015/ngx-color-block.mjs +0 -275
  114. package/fesm2015/ngx-color-block.mjs.map +0 -1
  115. package/fesm2015/ngx-color-chrome.mjs +0 -606
  116. package/fesm2015/ngx-color-chrome.mjs.map +0 -1
  117. package/fesm2015/ngx-color-circle.mjs +0 -237
  118. package/fesm2015/ngx-color-circle.mjs.map +0 -1
  119. package/fesm2015/ngx-color-compact.mjs +0 -451
  120. package/fesm2015/ngx-color-compact.mjs.map +0 -1
  121. package/fesm2015/ngx-color-github.mjs +0 -250
  122. package/fesm2015/ngx-color-github.mjs.map +0 -1
  123. package/fesm2015/ngx-color-hue.mjs +0 -120
  124. package/fesm2015/ngx-color-hue.mjs.map +0 -1
  125. package/fesm2015/ngx-color-material.mjs +0 -218
  126. package/fesm2015/ngx-color-material.mjs.map +0 -1
  127. package/fesm2015/ngx-color-photoshop.mjs +0 -626
  128. package/fesm2015/ngx-color-photoshop.mjs.map +0 -1
  129. package/fesm2015/ngx-color-shade.mjs +0 -112
  130. package/fesm2015/ngx-color-shade.mjs.map +0 -1
  131. package/fesm2015/ngx-color-sketch.mjs +0 -620
  132. package/fesm2015/ngx-color-sketch.mjs.map +0 -1
  133. package/fesm2015/ngx-color-slider.mjs +0 -331
  134. package/fesm2015/ngx-color-slider.mjs.map +0 -1
  135. package/fesm2015/ngx-color-swatches.mjs +0 -441
  136. package/fesm2015/ngx-color-swatches.mjs.map +0 -1
  137. package/fesm2015/ngx-color-twitter.mjs +0 -262
  138. package/fesm2015/ngx-color-twitter.mjs.map +0 -1
  139. package/fesm2020/ngx-color-alpha.mjs +0 -123
  140. package/fesm2020/ngx-color-alpha.mjs.map +0 -1
  141. package/fesm2020/ngx-color-block.mjs +0 -275
  142. package/fesm2020/ngx-color-block.mjs.map +0 -1
  143. package/fesm2020/ngx-color-chrome.mjs +0 -606
  144. package/fesm2020/ngx-color-chrome.mjs.map +0 -1
  145. package/fesm2020/ngx-color-circle.mjs +0 -237
  146. package/fesm2020/ngx-color-circle.mjs.map +0 -1
  147. package/fesm2020/ngx-color-compact.mjs +0 -451
  148. package/fesm2020/ngx-color-compact.mjs.map +0 -1
  149. package/fesm2020/ngx-color-github.mjs +0 -250
  150. package/fesm2020/ngx-color-github.mjs.map +0 -1
  151. package/fesm2020/ngx-color-hue.mjs +0 -120
  152. package/fesm2020/ngx-color-hue.mjs.map +0 -1
  153. package/fesm2020/ngx-color-material.mjs +0 -218
  154. package/fesm2020/ngx-color-material.mjs.map +0 -1
  155. package/fesm2020/ngx-color-photoshop.mjs +0 -626
  156. package/fesm2020/ngx-color-photoshop.mjs.map +0 -1
  157. package/fesm2020/ngx-color-shade.mjs +0 -112
  158. package/fesm2020/ngx-color-shade.mjs.map +0 -1
  159. package/fesm2020/ngx-color-sketch.mjs +0 -620
  160. package/fesm2020/ngx-color-sketch.mjs.map +0 -1
  161. package/fesm2020/ngx-color-slider.mjs +0 -331
  162. package/fesm2020/ngx-color-slider.mjs.map +0 -1
  163. package/fesm2020/ngx-color-swatches.mjs +0 -441
  164. package/fesm2020/ngx-color-swatches.mjs.map +0 -1
  165. package/fesm2020/ngx-color-twitter.mjs +0 -262
  166. package/fesm2020/ngx-color-twitter.mjs.map +0 -1
  167. package/github/github-swatch.component.d.ts +0 -19
  168. package/github/github.component.d.ts +0 -28
  169. package/github/ngx-color-github.d.ts +0 -5
  170. package/github/package.json +0 -16
  171. package/github/public_api.d.ts +0 -2
  172. package/hue/hue-picker.component.d.ts +0 -29
  173. package/hue/ngx-color-hue.d.ts +0 -5
  174. package/hue/package.json +0 -15
  175. package/hue/public_api.d.ts +0 -1
  176. package/material/material.component.d.ts +0 -39
  177. package/material/ngx-color-material.d.ts +0 -5
  178. package/material/package.json +0 -15
  179. package/material/public_api.d.ts +0 -1
  180. package/photoshop/ngx-color-photoshop.d.ts +0 -5
  181. package/photoshop/package.json +0 -15
  182. package/photoshop/photoshop-button.component.d.ts +0 -9
  183. package/photoshop/photoshop-fields.component.d.ts +0 -22
  184. package/photoshop/photoshop-previews.component.d.ts +0 -11
  185. package/photoshop/photoshop.component.d.ts +0 -33
  186. package/photoshop/public_api.d.ts +0 -4
  187. package/shade/ngx-color-shade.d.ts +0 -5
  188. package/shade/package.json +0 -17
  189. package/shade/public_api.d.ts +0 -1
  190. package/shade/shade-picker.component.d.ts +0 -27
  191. package/sketch/ngx-color-sketch.d.ts +0 -5
  192. package/sketch/package.json +0 -15
  193. package/sketch/public_api.d.ts +0 -3
  194. package/sketch/sketch-fields.component.d.ts +0 -23
  195. package/sketch/sketch-preset-colors.component.d.ts +0 -24
  196. package/sketch/sketch.component.d.ts +0 -32
  197. package/slider/ngx-color-slider.d.ts +0 -5
  198. package/slider/package.json +0 -15
  199. package/slider/public_api.d.ts +0 -3
  200. package/slider/slider-swatch.component.d.ts +0 -16
  201. package/slider/slider-swatches.component.d.ts +0 -15
  202. package/slider/slider.component.d.ts +0 -22
  203. package/swatches/ngx-color-swatches.d.ts +0 -5
  204. package/swatches/package.json +0 -18
  205. package/swatches/public_api.d.ts +0 -3
  206. package/swatches/swatches-color.component.d.ts +0 -18
  207. package/swatches/swatches-group.component.d.ts +0 -10
  208. package/swatches/swatches.component.d.ts +0 -29
  209. package/twitter/ngx-color-twitter.d.ts +0 -5
  210. package/twitter/package.json +0 -15
  211. package/twitter/public_api.d.ts +0 -1
  212. package/twitter/twitter.component.d.ts +0 -31
@@ -1,626 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output, forwardRef, NgModule } from '@angular/core';
3
- import * as i1 from 'ngx-color';
4
- import { isValidHex, ColorWrap, EditableInputModule, HueModule, AlphaModule, SwatchModule, SaturationModule } from 'ngx-color';
5
- import { CommonModule } from '@angular/common';
6
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
-
8
- class PhotoshopButtonComponent {
9
- constructor() {
10
- this.label = '';
11
- this.active = false;
12
- this.onClick = new EventEmitter();
13
- }
14
- }
15
- PhotoshopButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
- PhotoshopButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: PhotoshopButtonComponent, selector: "color-photoshop-button", inputs: { label: "label", active: "active" }, outputs: { onClick: "onClick" }, ngImport: i0, template: `
17
- <div class="photoshop-button" [class.active]="active"
18
- (click)="onClick.emit($event)"
19
- >
20
- {{ label }}
21
- </div>
22
- `, isInline: true, styles: [".photoshop-button{background-image:linear-gradient(-180deg,rgb(255,255,255) 0%,rgb(230,230,230) 100%);border:1px solid rgb(135,135,135);border-radius:2px;height:22px;box-shadow:#eaeaea 0 1px;font-size:14px;color:#000;line-height:20px;text-align:center;margin-bottom:10px;cursor:pointer}.photoshop-button.active{box-shadow:0 0 0 1px #878787}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopButtonComponent, decorators: [{
24
- type: Component,
25
- args: [{
26
- selector: 'color-photoshop-button',
27
- template: `
28
- <div class="photoshop-button" [class.active]="active"
29
- (click)="onClick.emit($event)"
30
- >
31
- {{ label }}
32
- </div>
33
- `,
34
- styles: [
35
- `
36
- .photoshop-button {
37
- background-image: linear-gradient(
38
- -180deg,
39
- rgb(255, 255, 255) 0%,
40
- rgb(230, 230, 230) 100%
41
- );
42
- border: 1px solid rgb(135, 135, 135);
43
- border-radius: 2px;
44
- height: 22px;
45
- box-shadow: rgb(234, 234, 234) 0px 1px 0px 0px;
46
- font-size: 14px;
47
- color: rgb(0, 0, 0);
48
- line-height: 20px;
49
- text-align: center;
50
- margin-bottom: 10px;
51
- cursor: pointer;
52
- }
53
- .photoshop-button.active {
54
- box-shadow: 0 0 0 1px #878787;
55
- }
56
- `,
57
- ],
58
- changeDetection: ChangeDetectionStrategy.OnPush,
59
- preserveWhitespaces: false,
60
- }]
61
- }], propDecorators: { label: [{
62
- type: Input
63
- }], active: [{
64
- type: Input
65
- }], onClick: [{
66
- type: Output
67
- }] } });
68
-
69
- class PhotoshopFieldsComponent {
70
- constructor() {
71
- this.onChange = new EventEmitter();
72
- this.RGBinput = {
73
- marginLeft: '35%',
74
- width: '40%',
75
- height: '22px',
76
- border: '1px solid rgb(136, 136, 136)',
77
- boxShadow: 'rgba(0, 0, 0, 0.1) 0px 1px 1px inset, rgb(236, 236, 236) 0px 1px 0px 0px',
78
- marginBottom: '2px',
79
- fontSize: '13px',
80
- paddingLeft: '3px',
81
- marginRight: '10px',
82
- };
83
- this.RGBwrap = {
84
- position: 'relative',
85
- };
86
- this.RGBlabel = {
87
- left: '0px',
88
- width: '34px',
89
- textTransform: 'uppercase',
90
- fontSize: '13px',
91
- height: '24px',
92
- lineHeight: '24px',
93
- position: 'absolute',
94
- };
95
- this.HEXinput = {
96
- marginLeft: '20%',
97
- width: '80%',
98
- height: '22px',
99
- border: '1px solid #888888',
100
- boxShadow: 'inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC',
101
- marginBottom: '3px',
102
- fontSize: '13px',
103
- paddingLeft: '3px',
104
- };
105
- this.HEXwrap = {
106
- position: 'relative',
107
- };
108
- this.HEXlabel = {
109
- position: 'absolute',
110
- top: '0px',
111
- left: '0px',
112
- width: '14px',
113
- textTransform: 'uppercase',
114
- fontSize: '13px',
115
- height: '24px',
116
- lineHeight: '24px',
117
- };
118
- }
119
- round(v) {
120
- return Math.round(v);
121
- }
122
- handleValueChange({ data, $event }) {
123
- if (data['#']) {
124
- if (isValidHex(data['#'])) {
125
- this.onChange.emit({
126
- data: {
127
- hex: data['#'],
128
- source: 'hex',
129
- },
130
- $event,
131
- });
132
- }
133
- }
134
- else if (data.r || data.g || data.b) {
135
- this.onChange.emit({
136
- data: {
137
- r: data.r || this.rgb.r,
138
- g: data.g || this.rgb.g,
139
- b: data.b || this.rgb.b,
140
- source: 'rgb',
141
- },
142
- $event,
143
- });
144
- }
145
- else if (data.h || data.s || data.v) {
146
- this.onChange.emit({
147
- data: {
148
- h: data.h || this.hsv.h,
149
- s: data.s || this.hsv.s,
150
- v: data.v || this.hsv.v,
151
- source: 'hsv',
152
- },
153
- $event,
154
- });
155
- }
156
- }
157
- }
158
- PhotoshopFieldsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
159
- PhotoshopFieldsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: PhotoshopFieldsComponent, selector: "color-photoshop-fields", inputs: { rgb: "rgb", hsv: "hsv", hex: "hex" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
160
- <div class="photoshop-fields">
161
- <color-editable-input
162
- [value]="round(hsv.h)"
163
- label="h"
164
- (onChange)="handleValueChange($event)"
165
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
166
- ></color-editable-input>
167
- <color-editable-input
168
- [value]="round(hsv.s * 100)"
169
- label="s"
170
- (onChange)="handleValueChange($event)"
171
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
172
- ></color-editable-input>
173
- <color-editable-input
174
- [value]="round(hsv.v * 100)"
175
- label="v"
176
- (onChange)="handleValueChange($event)"
177
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
178
- ></color-editable-input>
179
- <div class="photoshop-divider"></div>
180
- <color-editable-input
181
- [value]="rgb.r"
182
- label="r"
183
- (onChange)="handleValueChange($event)"
184
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
185
- ></color-editable-input>
186
- <color-editable-input
187
- [value]="rgb.g"
188
- label="g"
189
- (onChange)="handleValueChange($event)"
190
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
191
- ></color-editable-input>
192
- <color-editable-input
193
- [value]="rgb.b"
194
- label="b"
195
- (onChange)="handleValueChange($event)"
196
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
197
- ></color-editable-input>
198
- <div class="photoshop-divider"></div>
199
- <color-editable-input
200
- [value]="hex.replace('#', '')"
201
- label="#"
202
- (onChange)="handleValueChange($event)"
203
- [style]="{input: HEXinput, wrap: HEXwrap, label: HEXlabel}"
204
- ></color-editable-input>
205
- <div class="photoshop-field-symbols">
206
- <div class="photoshop-symbol">°</div>
207
- <div class="photoshop-symbol">%</div>
208
- <div class="photoshop-symbol">%</div>
209
- </div>
210
- </div>
211
- `, isInline: true, styles: [".photoshop-fields{padding-top:5px;padding-bottom:9px;width:85px;position:relative}.photoshop-field-symbols{position:absolute;top:5px;right:-7px;font-size:13px}.photoshop-symbol{height:24px;line-height:24px;padding-bottom:7px}.photoshop-divider{height:5px}\n"], components: [{ type: i1.EditableInputComponent, selector: "color-editable-input", inputs: ["style", "label", "value", "arrowOffset", "dragLabel", "dragMax", "placeholder"], outputs: ["onChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
212
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopFieldsComponent, decorators: [{
213
- type: Component,
214
- args: [{
215
- selector: 'color-photoshop-fields',
216
- template: `
217
- <div class="photoshop-fields">
218
- <color-editable-input
219
- [value]="round(hsv.h)"
220
- label="h"
221
- (onChange)="handleValueChange($event)"
222
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
223
- ></color-editable-input>
224
- <color-editable-input
225
- [value]="round(hsv.s * 100)"
226
- label="s"
227
- (onChange)="handleValueChange($event)"
228
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
229
- ></color-editable-input>
230
- <color-editable-input
231
- [value]="round(hsv.v * 100)"
232
- label="v"
233
- (onChange)="handleValueChange($event)"
234
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
235
- ></color-editable-input>
236
- <div class="photoshop-divider"></div>
237
- <color-editable-input
238
- [value]="rgb.r"
239
- label="r"
240
- (onChange)="handleValueChange($event)"
241
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
242
- ></color-editable-input>
243
- <color-editable-input
244
- [value]="rgb.g"
245
- label="g"
246
- (onChange)="handleValueChange($event)"
247
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
248
- ></color-editable-input>
249
- <color-editable-input
250
- [value]="rgb.b"
251
- label="b"
252
- (onChange)="handleValueChange($event)"
253
- [style]="{input: RGBinput, wrap: RGBwrap, label: RGBlabel}"
254
- ></color-editable-input>
255
- <div class="photoshop-divider"></div>
256
- <color-editable-input
257
- [value]="hex.replace('#', '')"
258
- label="#"
259
- (onChange)="handleValueChange($event)"
260
- [style]="{input: HEXinput, wrap: HEXwrap, label: HEXlabel}"
261
- ></color-editable-input>
262
- <div class="photoshop-field-symbols">
263
- <div class="photoshop-symbol">°</div>
264
- <div class="photoshop-symbol">%</div>
265
- <div class="photoshop-symbol">%</div>
266
- </div>
267
- </div>
268
- `,
269
- styles: [
270
- `
271
- .photoshop-fields {
272
- padding-top: 5px;
273
- padding-bottom: 9px;
274
- width: 85px;
275
- position: relative;
276
- }
277
- .photoshop-field-symbols {
278
- position: absolute;
279
- top: 5px;
280
- right: -7px;
281
- font-size: 13px;
282
- }
283
- .photoshop-symbol {
284
- height: 24px;
285
- line-height: 24px;
286
- padding-bottom: 7px;
287
- }
288
- .photoshop-divider {
289
- height: 5px;
290
- }
291
- `,
292
- ],
293
- changeDetection: ChangeDetectionStrategy.OnPush,
294
- preserveWhitespaces: false,
295
- }]
296
- }], propDecorators: { rgb: [{
297
- type: Input
298
- }], hsv: [{
299
- type: Input
300
- }], hex: [{
301
- type: Input
302
- }], onChange: [{
303
- type: Output
304
- }] } });
305
-
306
- class PhotoshopPreviewsComponent {
307
- constructor() {
308
- this.currentColor = '';
309
- this.backgroundNew = '';
310
- }
311
- ngOnChanges() {
312
- this.backgroundNew = `rgb(${this.rgb.r},${this.rgb.g}, ${this.rgb.b})`;
313
- }
314
- }
315
- PhotoshopPreviewsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopPreviewsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
316
- PhotoshopPreviewsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: PhotoshopPreviewsComponent, selector: "color-photoshop-previews", inputs: { rgb: "rgb", currentColor: "currentColor" }, usesOnChanges: true, ngImport: i0, template: `
317
- <div>
318
- <div class="photoshop-label">new</div>
319
- <div class="photoshop-swatches">
320
- <div class="photoshop-new" [style.background]="backgroundNew"></div>
321
- <div class="photoshop-current" [style.background]="currentColor"></div>
322
- </div>
323
- <div class="photoshop-label">current</div>
324
- </div>
325
- `, isInline: true, styles: [".photoshop-swatches{border:1px solid #B3B3B3;border-bottom:1px solid #F0F0F0;margin-bottom:2px;margin-top:1px}.photoshop-new{height:34px;box-shadow:inset 1px 0 #000,inset -1px 0 #000,inset 0 1px #000}.photoshop-current{height:34px;box-shadow:inset 1px 0 #000,inset -1px 0 #000,inset 0 -1px #000}.photoshop-label{font-size:14px;color:#000;text-align:center}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
326
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopPreviewsComponent, decorators: [{
327
- type: Component,
328
- args: [{
329
- selector: 'color-photoshop-previews',
330
- template: `
331
- <div>
332
- <div class="photoshop-label">new</div>
333
- <div class="photoshop-swatches">
334
- <div class="photoshop-new" [style.background]="backgroundNew"></div>
335
- <div class="photoshop-current" [style.background]="currentColor"></div>
336
- </div>
337
- <div class="photoshop-label">current</div>
338
- </div>
339
- `,
340
- styles: [
341
- `
342
- .photoshop-swatches {
343
- border: 1px solid #B3B3B3;
344
- border-bottom: 1px solid #F0F0F0;
345
- margin-bottom: 2px;
346
- margin-top: 1px;
347
- }
348
- .photoshop-new {
349
- height: 34px;
350
- box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 1px 0 #000;
351
- }
352
- .photoshop-current {
353
- height: 34px;
354
- box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 -1px 0 #000;
355
- }
356
- .photoshop-label {
357
- font-size: 14px;
358
- color: #000;
359
- text-align: center;
360
- }
361
- `,
362
- ],
363
- changeDetection: ChangeDetectionStrategy.OnPush,
364
- preserveWhitespaces: false,
365
- }]
366
- }], propDecorators: { rgb: [{
367
- type: Input
368
- }], currentColor: [{
369
- type: Input
370
- }] } });
371
-
372
- class PhotoshopComponent extends ColorWrap {
373
- constructor() {
374
- super();
375
- /** Title text */
376
- this.header = 'Color Picker';
377
- this.onAccept = new EventEmitter();
378
- this.onCancel = new EventEmitter();
379
- this.circle = {
380
- width: '12px',
381
- height: '12px',
382
- borderRadius: '6px',
383
- boxShadow: 'rgb(255, 255, 255) 0px 0px 0px 1px inset',
384
- transform: 'translate(-6px, -10px)',
385
- };
386
- }
387
- handleValueChange({ data, $event }) {
388
- this.handleChange(data, $event);
389
- }
390
- }
391
- PhotoshopComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
392
- PhotoshopComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: PhotoshopComponent, selector: "color-photoshop", inputs: { header: "header" }, outputs: { onAccept: "onAccept", onCancel: "onCancel" }, providers: [
393
- {
394
- provide: NG_VALUE_ACCESSOR,
395
- useExisting: forwardRef(() => PhotoshopComponent),
396
- multi: true,
397
- },
398
- {
399
- provide: ColorWrap,
400
- useExisting: forwardRef(() => PhotoshopComponent),
401
- },
402
- ], usesInheritance: true, ngImport: i0, template: `
403
- <div class="photoshop-picker {{ className }}">
404
- <div class="photoshop-head">{{ header }}</div>
405
- <div class="photoshop-body">
406
- <div class="photoshop-saturation">
407
- <color-saturation
408
- [hsl]="hsl" [hsv]="hsv" [circle]="circle"
409
- (onChange)="handleValueChange($event)"
410
- ></color-saturation>
411
- </div>
412
- <div class="photoshop-hue">
413
- <color-hue direction="vertical"
414
- [hsl]="hsl" [hidePointer]="true"
415
- (onChange)="handleValueChange($event)"
416
- ></color-hue>
417
- </div>
418
- <div class="photoshop-controls">
419
- <div class="photoshop-top">
420
- <div class="photoshop-previews">
421
- <color-photoshop-previews
422
- [rgb]="rgb" [currentColor]="currentColor"
423
- ></color-photoshop-previews>
424
- </div>
425
- <div class="photoshop-actions">
426
- <color-photoshop-button label="OK"
427
- [active]="true" (onClick)="onAccept.emit($event)"
428
- ></color-photoshop-button>
429
- <color-photoshop-button label="Cancel"
430
- (onClick)="onCancel.emit($event)"
431
- >
432
- </color-photoshop-button>
433
- <color-photoshop-fields
434
- [rgb]="rgb" [hex]="hex" [hsv]="hsv"
435
- (onChange)="handleValueChange($event)"
436
- ></color-photoshop-fields>
437
- </div>
438
- </div>
439
- </div>
440
- </div>
441
- </div>
442
- `, isInline: true, styles: [".photoshop-picker{background:rgb(220,220,220);border-radius:4px;box-shadow:#00000040 0 0 0 1px,#00000026 0 8px 16px;box-sizing:initial;width:513px}.photoshop-head{background-image:linear-gradient(-180deg,rgb(240,240,240) 0%,rgb(212,212,212) 100%);border-bottom:1px solid rgb(177,177,177);box-shadow:#fff3 0 1px inset,#00000005 0 -1px inset;height:23px;line-height:24px;border-radius:4px 4px 0 0;font-size:13px;color:#4d4d4d;text-align:center}.photoshop-body{padding:15px 15px 0;display:flex}.photoshop-saturation{width:256px;height:256px;position:relative;border-width:2px;border-style:solid;border-color:rgb(179,179,179) rgb(179,179,179) rgb(240,240,240);border-image:initial;overflow:hidden}.photoshop-hue{position:relative;height:256px;width:23px;margin-left:10px;border-width:2px;border-style:solid;border-color:rgb(179,179,179) rgb(179,179,179) rgb(240,240,240);border-image:initial}.photoshop-controls{width:180px;margin-left:10px}.photoshop-top{display:flex}.photoshop-previews{width:60px}.photoshop-actions{flex:1 1 0%;margin-left:20px}\n"], components: [{ type: i0.forwardRef(function () { return i1.SaturationComponent; }), selector: "color-saturation", inputs: ["hsl", "hsv", "radius", "pointer", "circle"], outputs: ["onChange"] }, { type: i0.forwardRef(function () { return i1.HueComponent; }), selector: "color-hue", inputs: ["hsl", "pointer", "radius", "shadow", "hidePointer", "direction"], outputs: ["onChange"] }, { type: i0.forwardRef(function () { return PhotoshopPreviewsComponent; }), selector: "color-photoshop-previews", inputs: ["rgb", "currentColor"] }, { type: i0.forwardRef(function () { return PhotoshopButtonComponent; }), selector: "color-photoshop-button", inputs: ["label", "active"], outputs: ["onClick"] }, { type: i0.forwardRef(function () { return PhotoshopFieldsComponent; }), selector: "color-photoshop-fields", inputs: ["rgb", "hsv", "hex"], outputs: ["onChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
443
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: PhotoshopComponent, decorators: [{
444
- type: Component,
445
- args: [{
446
- selector: 'color-photoshop',
447
- template: `
448
- <div class="photoshop-picker {{ className }}">
449
- <div class="photoshop-head">{{ header }}</div>
450
- <div class="photoshop-body">
451
- <div class="photoshop-saturation">
452
- <color-saturation
453
- [hsl]="hsl" [hsv]="hsv" [circle]="circle"
454
- (onChange)="handleValueChange($event)"
455
- ></color-saturation>
456
- </div>
457
- <div class="photoshop-hue">
458
- <color-hue direction="vertical"
459
- [hsl]="hsl" [hidePointer]="true"
460
- (onChange)="handleValueChange($event)"
461
- ></color-hue>
462
- </div>
463
- <div class="photoshop-controls">
464
- <div class="photoshop-top">
465
- <div class="photoshop-previews">
466
- <color-photoshop-previews
467
- [rgb]="rgb" [currentColor]="currentColor"
468
- ></color-photoshop-previews>
469
- </div>
470
- <div class="photoshop-actions">
471
- <color-photoshop-button label="OK"
472
- [active]="true" (onClick)="onAccept.emit($event)"
473
- ></color-photoshop-button>
474
- <color-photoshop-button label="Cancel"
475
- (onClick)="onCancel.emit($event)"
476
- >
477
- </color-photoshop-button>
478
- <color-photoshop-fields
479
- [rgb]="rgb" [hex]="hex" [hsv]="hsv"
480
- (onChange)="handleValueChange($event)"
481
- ></color-photoshop-fields>
482
- </div>
483
- </div>
484
- </div>
485
- </div>
486
- </div>
487
- `,
488
- styles: [
489
- `
490
- .photoshop-picker {
491
- background: rgb(220, 220, 220);
492
- border-radius: 4px;
493
- box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 0px 1px, rgba(0, 0, 0, 0.15) 0px 8px 16px;
494
- box-sizing: initial; width: 513px;
495
- }
496
- .photoshop-head {
497
- background-image: linear-gradient(
498
- -180deg,
499
- rgb(240, 240, 240) 0%,
500
- rgb(212, 212, 212) 100%
501
- );
502
- border-bottom: 1px solid rgb(177, 177, 177);
503
- box-shadow: rgba(255, 255, 255, 0.2) 0px 1px 0px 0px inset,
504
- rgba(0, 0, 0, 0.02) 0px -1px 0px 0px inset;
505
- height: 23px;
506
- line-height: 24px;
507
- border-radius: 4px 4px 0px 0px;
508
- font-size: 13px;
509
- color: rgb(77, 77, 77);
510
- text-align: center;
511
- }
512
- .photoshop-body {
513
- padding: 15px 15px 0px;
514
- display: flex;
515
- }
516
- .photoshop-saturation {
517
- width: 256px;
518
- height: 256px;
519
- position: relative;
520
- border-width: 2px;
521
- border-style: solid;
522
- border-color: rgb(179, 179, 179) rgb(179, 179, 179) rgb(240, 240, 240);
523
- border-image: initial;
524
- overflow: hidden;
525
- }
526
- .photoshop-hue {
527
- position: relative;
528
- height: 256px;
529
- width: 23px;
530
- margin-left: 10px;
531
- border-width: 2px;
532
- border-style: solid;
533
- border-color: rgb(179, 179, 179) rgb(179, 179, 179) rgb(240, 240, 240);
534
- border-image: initial;
535
- }
536
- .photoshop-controls {
537
- width: 180px;
538
- margin-left: 10px;
539
- }
540
- .photoshop-top {
541
- display: flex;
542
- }
543
- .photoshop-previews {
544
- width: 60px;
545
- }
546
- .photoshop-actions {
547
- -webkit-box-flex: 1;
548
- flex: 1 1 0%;
549
- margin-left: 20px;
550
- }
551
- `,
552
- ],
553
- changeDetection: ChangeDetectionStrategy.OnPush,
554
- preserveWhitespaces: false,
555
- providers: [
556
- {
557
- provide: NG_VALUE_ACCESSOR,
558
- useExisting: forwardRef(() => PhotoshopComponent),
559
- multi: true,
560
- },
561
- {
562
- provide: ColorWrap,
563
- useExisting: forwardRef(() => PhotoshopComponent),
564
- },
565
- ]
566
- }]
567
- }], ctorParameters: function () { return []; }, propDecorators: { header: [{
568
- type: Input
569
- }], onAccept: [{
570
- type: Output
571
- }], onCancel: [{
572
- type: Output
573
- }] } });
574
- class ColorPhotoshopModule {
575
- }
576
- ColorPhotoshopModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorPhotoshopModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
577
- ColorPhotoshopModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorPhotoshopModule, declarations: [PhotoshopComponent, PhotoshopPreviewsComponent,
578
- PhotoshopButtonComponent,
579
- PhotoshopFieldsComponent], imports: [CommonModule,
580
- EditableInputModule,
581
- HueModule,
582
- AlphaModule,
583
- SwatchModule,
584
- SaturationModule], exports: [PhotoshopComponent, PhotoshopPreviewsComponent,
585
- PhotoshopButtonComponent,
586
- PhotoshopFieldsComponent] });
587
- ColorPhotoshopModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorPhotoshopModule, imports: [[
588
- CommonModule,
589
- EditableInputModule,
590
- HueModule,
591
- AlphaModule,
592
- SwatchModule,
593
- SaturationModule,
594
- ]] });
595
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorPhotoshopModule, decorators: [{
596
- type: NgModule,
597
- args: [{
598
- declarations: [
599
- PhotoshopComponent,
600
- PhotoshopPreviewsComponent,
601
- PhotoshopButtonComponent,
602
- PhotoshopFieldsComponent,
603
- ],
604
- exports: [
605
- PhotoshopComponent,
606
- PhotoshopPreviewsComponent,
607
- PhotoshopButtonComponent,
608
- PhotoshopFieldsComponent,
609
- ],
610
- imports: [
611
- CommonModule,
612
- EditableInputModule,
613
- HueModule,
614
- AlphaModule,
615
- SwatchModule,
616
- SaturationModule,
617
- ],
618
- }]
619
- }] });
620
-
621
- /**
622
- * Generated bundle index. Do not edit.
623
- */
624
-
625
- export { ColorPhotoshopModule, PhotoshopButtonComponent, PhotoshopComponent, PhotoshopFieldsComponent, PhotoshopPreviewsComponent };
626
- //# sourceMappingURL=ngx-color-photoshop.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ngx-color-photoshop.mjs","sources":["../../src/lib/photoshop/photoshop-button.component.ts","../../src/lib/photoshop/photoshop-fields.component.ts","../../src/lib/photoshop/photoshop-previews.component.ts","../../src/lib/photoshop/photoshop.component.ts","../../src/lib/photoshop/ngx-color-photoshop.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\n@Component({\n selector: 'color-photoshop-button',\n template: `\n <div class=\"photoshop-button\" [class.active]=\"active\"\n (click)=\"onClick.emit($event)\"\n >\n {{ label }}\n </div>\n `,\n styles: [\n `\n .photoshop-button {\n background-image: linear-gradient(\n -180deg,\n rgb(255, 255, 255) 0%,\n rgb(230, 230, 230) 100%\n );\n border: 1px solid rgb(135, 135, 135);\n border-radius: 2px;\n height: 22px;\n box-shadow: rgb(234, 234, 234) 0px 1px 0px 0px;\n font-size: 14px;\n color: rgb(0, 0, 0);\n line-height: 20px;\n text-align: center;\n margin-bottom: 10px;\n cursor: pointer;\n }\n .photoshop-button.active {\n box-shadow: 0 0 0 1px #878787;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n})\nexport class PhotoshopButtonComponent {\n @Input() label = '';\n @Input() active = false;\n @Output() onClick = new EventEmitter<Event>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\n\nimport { isValidHex, HSV, RGB } from 'ngx-color';\n\n@Component({\n selector: 'color-photoshop-fields',\n template: `\n <div class=\"photoshop-fields\">\n <color-editable-input\n [value]=\"round(hsv.h)\"\n label=\"h\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <color-editable-input\n [value]=\"round(hsv.s * 100)\"\n label=\"s\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <color-editable-input\n [value]=\"round(hsv.v * 100)\"\n label=\"v\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <div class=\"photoshop-divider\"></div>\n <color-editable-input\n [value]=\"rgb.r\"\n label=\"r\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <color-editable-input\n [value]=\"rgb.g\"\n label=\"g\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <color-editable-input\n [value]=\"rgb.b\"\n label=\"b\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: RGBinput, wrap: RGBwrap, label: RGBlabel}\"\n ></color-editable-input>\n <div class=\"photoshop-divider\"></div>\n <color-editable-input\n [value]=\"hex.replace('#', '')\"\n label=\"#\"\n (onChange)=\"handleValueChange($event)\"\n [style]=\"{input: HEXinput, wrap: HEXwrap, label: HEXlabel}\"\n ></color-editable-input>\n <div class=\"photoshop-field-symbols\">\n <div class=\"photoshop-symbol\">°</div>\n <div class=\"photoshop-symbol\">%</div>\n <div class=\"photoshop-symbol\">%</div>\n </div>\n </div>\n `,\n styles: [\n `\n .photoshop-fields {\n padding-top: 5px;\n padding-bottom: 9px;\n width: 85px;\n position: relative;\n }\n .photoshop-field-symbols {\n position: absolute;\n top: 5px;\n right: -7px;\n font-size: 13px;\n }\n .photoshop-symbol {\n height: 24px;\n line-height: 24px;\n padding-bottom: 7px;\n }\n .photoshop-divider {\n height: 5px;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n})\nexport class PhotoshopFieldsComponent {\n @Input() rgb!: RGB;\n @Input() hsv!: HSV;\n @Input() hex!: string;\n @Output() onChange = new EventEmitter<any>();\n RGBinput: Record<string, string> = {\n marginLeft: '35%',\n width: '40%',\n height: '22px',\n border: '1px solid rgb(136, 136, 136)',\n boxShadow:\n 'rgba(0, 0, 0, 0.1) 0px 1px 1px inset, rgb(236, 236, 236) 0px 1px 0px 0px',\n marginBottom: '2px',\n fontSize: '13px',\n paddingLeft: '3px',\n marginRight: '10px',\n };\n RGBwrap: Record<string, string> = {\n position: 'relative',\n };\n RGBlabel: Record<string, string> = {\n left: '0px',\n width: '34px',\n textTransform: 'uppercase',\n fontSize: '13px',\n height: '24px',\n lineHeight: '24px',\n position: 'absolute',\n };\n HEXinput: Record<string, string> = {\n marginLeft: '20%',\n width: '80%',\n height: '22px',\n border: '1px solid #888888',\n boxShadow: 'inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC',\n marginBottom: '3px',\n fontSize: '13px',\n paddingLeft: '3px',\n };\n HEXwrap: Record<string, string> = {\n position: 'relative',\n };\n HEXlabel: Record<string, string> = {\n position: 'absolute',\n top: '0px',\n left: '0px',\n width: '14px',\n textTransform: 'uppercase',\n fontSize: '13px',\n height: '24px',\n lineHeight: '24px',\n };\n\n round(v) {\n return Math.round(v);\n }\n handleValueChange({ data, $event }) {\n if (data['#']) {\n if (isValidHex(data['#'])) {\n this.onChange.emit({\n data: {\n hex: data['#'],\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.h || data.s || data.v) {\n this.onChange.emit({\n data: {\n h: data.h || this.hsv.h,\n s: data.s || this.hsv.s,\n v: data.v || this.hsv.v,\n source: 'hsv',\n },\n $event,\n });\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n OnChanges,\n} from '@angular/core';\nimport { RGB } from 'ngx-color';\n\n@Component({\n selector: 'color-photoshop-previews',\n template: `\n <div>\n <div class=\"photoshop-label\">new</div>\n <div class=\"photoshop-swatches\">\n <div class=\"photoshop-new\" [style.background]=\"backgroundNew\"></div>\n <div class=\"photoshop-current\" [style.background]=\"currentColor\"></div>\n </div>\n <div class=\"photoshop-label\">current</div>\n </div>\n `,\n styles: [\n `\n .photoshop-swatches {\n border: 1px solid #B3B3B3;\n border-bottom: 1px solid #F0F0F0;\n margin-bottom: 2px;\n margin-top: 1px;\n }\n .photoshop-new {\n height: 34px;\n box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 1px 0 #000;\n }\n .photoshop-current {\n height: 34px;\n box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 -1px 0 #000;\n }\n .photoshop-label {\n font-size: 14px;\n color: #000;\n text-align: center;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n})\nexport class PhotoshopPreviewsComponent implements OnChanges {\n @Input() rgb!: RGB;\n @Input() currentColor = '';\n backgroundNew = '';\n\n ngOnChanges() {\n this.backgroundNew = `rgb(${this.rgb.r},${this.rgb.g}, ${this.rgb.b})`;\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, EventEmitter, forwardRef, Input, NgModule, Output } from '@angular/core';\n\nimport { AlphaModule, ColorWrap, EditableInputModule, HueModule, SaturationModule, SwatchModule } from 'ngx-color';\nimport { PhotoshopButtonComponent } from './photoshop-button.component';\nimport { PhotoshopFieldsComponent } from './photoshop-fields.component';\nimport { PhotoshopPreviewsComponent } from './photoshop-previews.component';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n@Component({\n selector: 'color-photoshop',\n template: `\n <div class=\"photoshop-picker {{ className }}\">\n <div class=\"photoshop-head\">{{ header }}</div>\n <div class=\"photoshop-body\">\n <div class=\"photoshop-saturation\">\n <color-saturation\n [hsl]=\"hsl\" [hsv]=\"hsv\" [circle]=\"circle\"\n (onChange)=\"handleValueChange($event)\"\n ></color-saturation>\n </div>\n <div class=\"photoshop-hue\">\n <color-hue direction=\"vertical\"\n [hsl]=\"hsl\" [hidePointer]=\"true\"\n (onChange)=\"handleValueChange($event)\"\n ></color-hue>\n </div>\n <div class=\"photoshop-controls\">\n <div class=\"photoshop-top\">\n <div class=\"photoshop-previews\">\n <color-photoshop-previews\n [rgb]=\"rgb\" [currentColor]=\"currentColor\"\n ></color-photoshop-previews>\n </div>\n <div class=\"photoshop-actions\">\n <color-photoshop-button label=\"OK\"\n [active]=\"true\" (onClick)=\"onAccept.emit($event)\"\n ></color-photoshop-button>\n <color-photoshop-button label=\"Cancel\"\n (onClick)=\"onCancel.emit($event)\"\n >\n </color-photoshop-button>\n <color-photoshop-fields\n [rgb]=\"rgb\" [hex]=\"hex\" [hsv]=\"hsv\"\n (onChange)=\"handleValueChange($event)\"\n ></color-photoshop-fields>\n </div>\n </div>\n </div>\n </div>\n </div>\n `,\n styles: [\n `\n .photoshop-picker {\n background: rgb(220, 220, 220);\n border-radius: 4px;\n box-shadow: rgba(0, 0, 0, 0.25) 0px 0px 0px 1px, rgba(0, 0, 0, 0.15) 0px 8px 16px;\n box-sizing: initial; width: 513px;\n }\n .photoshop-head {\n background-image: linear-gradient(\n -180deg,\n rgb(240, 240, 240) 0%,\n rgb(212, 212, 212) 100%\n );\n border-bottom: 1px solid rgb(177, 177, 177);\n box-shadow: rgba(255, 255, 255, 0.2) 0px 1px 0px 0px inset,\n rgba(0, 0, 0, 0.02) 0px -1px 0px 0px inset;\n height: 23px;\n line-height: 24px;\n border-radius: 4px 4px 0px 0px;\n font-size: 13px;\n color: rgb(77, 77, 77);\n text-align: center;\n }\n .photoshop-body {\n padding: 15px 15px 0px;\n display: flex;\n }\n .photoshop-saturation {\n width: 256px;\n height: 256px;\n position: relative;\n border-width: 2px;\n border-style: solid;\n border-color: rgb(179, 179, 179) rgb(179, 179, 179) rgb(240, 240, 240);\n border-image: initial;\n overflow: hidden;\n }\n .photoshop-hue {\n position: relative;\n height: 256px;\n width: 23px;\n margin-left: 10px;\n border-width: 2px;\n border-style: solid;\n border-color: rgb(179, 179, 179) rgb(179, 179, 179) rgb(240, 240, 240);\n border-image: initial;\n }\n .photoshop-controls {\n width: 180px;\n margin-left: 10px;\n }\n .photoshop-top {\n display: flex;\n }\n .photoshop-previews {\n width: 60px;\n }\n .photoshop-actions {\n -webkit-box-flex: 1;\n flex: 1 1 0%;\n margin-left: 20px;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => PhotoshopComponent),\n multi: true,\n },\n {\n provide: ColorWrap,\n useExisting: forwardRef(() => PhotoshopComponent),\n },\n ]\n})\nexport class PhotoshopComponent extends ColorWrap {\n /** Title text */\n @Input() header = 'Color Picker';\n @Output() onAccept = new EventEmitter<Event>();\n @Output() onCancel = new EventEmitter<Event>();\n circle = {\n width: '12px',\n height: '12px',\n borderRadius: '6px',\n boxShadow: 'rgb(255, 255, 255) 0px 0px 0px 1px inset',\n transform: 'translate(-6px, -10px)',\n };\n constructor() {\n super();\n }\n handleValueChange({ data, $event }) {\n this.handleChange(data, $event);\n }\n}\n\n@NgModule({\n declarations: [\n PhotoshopComponent,\n PhotoshopPreviewsComponent,\n PhotoshopButtonComponent,\n PhotoshopFieldsComponent,\n ],\n exports: [\n PhotoshopComponent,\n PhotoshopPreviewsComponent,\n PhotoshopButtonComponent,\n PhotoshopFieldsComponent,\n ],\n imports: [\n CommonModule,\n EditableInputModule,\n HueModule,\n AlphaModule,\n SwatchModule,\n SaturationModule,\n ],\n})\nexport class ColorPhotoshopModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}