ngx-color 7.0.2 → 7.3.1

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 (350) hide show
  1. package/alpha/alpha-picker.component.d.ts +8 -0
  2. package/alpha/ngx-color-alpha.d.ts +2 -1
  3. package/alpha/package.json +6 -10
  4. package/alpha/public_api.d.ts +1 -0
  5. package/alpha.component.d.ts +9 -0
  6. package/block/block-swatches.component.d.ts +13 -8
  7. package/block/block.component.d.ts +9 -0
  8. package/block/ngx-color-block.d.ts +2 -2
  9. package/block/package.json +6 -10
  10. package/block/public_api.d.ts +2 -0
  11. package/checkboard.component.d.ts +7 -0
  12. package/chrome/chrome-fields.component.d.ts +3 -0
  13. package/chrome/chrome.component.d.ts +9 -0
  14. package/chrome/ngx-color-chrome.d.ts +2 -2
  15. package/chrome/package.json +6 -10
  16. package/chrome/public_api.d.ts +2 -0
  17. package/circle/circle-swatch.component.d.ts +3 -0
  18. package/circle/circle.component.d.ts +9 -0
  19. package/circle/ngx-color-circle.d.ts +2 -2
  20. package/circle/package.json +9 -10
  21. package/circle/public_api.d.ts +2 -0
  22. package/color-wrap.component.d.ts +27 -2
  23. package/compact/compact-color.component.d.ts +3 -0
  24. package/compact/compact-fields.component.d.ts +3 -0
  25. package/compact/compact.component.d.ts +10 -0
  26. package/compact/ngx-color-compact.d.ts +2 -3
  27. package/compact/package.json +6 -10
  28. package/compact/public_api.d.ts +3 -0
  29. package/coordinates.directive.d.ts +6 -0
  30. package/editable-input.component.d.ts +7 -0
  31. package/esm2020/alpha/alpha-picker.component.mjs +116 -0
  32. package/esm2020/alpha/ngx-color-alpha.mjs +5 -0
  33. package/esm2020/alpha/public_api.mjs +2 -0
  34. package/esm2020/alpha.component.mjs +186 -0
  35. package/esm2020/block/block-swatches.component.mjs +74 -0
  36. package/esm2020/block/block.component.mjs +199 -0
  37. package/esm2020/block/ngx-color-block.mjs +5 -0
  38. package/esm2020/block/public_api.mjs +3 -0
  39. package/esm2020/checkboard.component.mjs +66 -0
  40. package/esm2020/chrome/chrome-fields.component.mjs +356 -0
  41. package/esm2020/chrome/chrome.component.mjs +249 -0
  42. package/esm2020/chrome/ngx-color-chrome.mjs +5 -0
  43. package/esm2020/chrome/public_api.mjs +3 -0
  44. package/esm2020/circle/circle-swatch.component.mjs +85 -0
  45. package/esm2020/circle/circle.component.mjs +148 -0
  46. package/esm2020/circle/ngx-color-circle.mjs +5 -0
  47. package/esm2020/circle/public_api.mjs +3 -0
  48. package/esm2020/color-wrap.component.mjs +163 -0
  49. package/esm2020/compact/compact-color.component.mjs +91 -0
  50. package/esm2020/compact/compact-fields.component.mjs +186 -0
  51. package/esm2020/compact/compact.component.mjs +177 -0
  52. package/esm2020/compact/ngx-color-compact.mjs +5 -0
  53. package/esm2020/compact/public_api.mjs +4 -0
  54. package/esm2020/coordinates.directive.mjs +104 -0
  55. package/esm2020/editable-input.component.mjs +217 -0
  56. package/esm2020/github/github-swatch.component.mjs +67 -0
  57. package/esm2020/github/github.component.mjs +179 -0
  58. package/esm2020/github/ngx-color-github.mjs +5 -0
  59. package/esm2020/github/public_api.mjs +3 -0
  60. package/esm2020/helpers/checkboard.mjs +33 -0
  61. package/esm2020/helpers/color.interfaces.mjs +2 -0
  62. package/esm2020/helpers/color.mjs +60 -0
  63. package/esm2020/hue/hue-picker.component.mjs +113 -0
  64. package/esm2020/hue/ngx-color-hue.mjs +5 -0
  65. package/esm2020/hue/public_api.mjs +2 -0
  66. package/esm2020/hue.component.mjs +165 -0
  67. package/esm2020/material/material.component.mjs +211 -0
  68. package/esm2020/material/ngx-color-material.mjs +5 -0
  69. package/esm2020/material/public_api.mjs +2 -0
  70. package/esm2020/ngx-color.mjs +5 -0
  71. package/esm2020/photoshop/ngx-color-photoshop.mjs +5 -0
  72. package/esm2020/photoshop/photoshop-button.component.mjs +63 -0
  73. package/esm2020/photoshop/photoshop-fields.component.mjs +241 -0
  74. package/esm2020/photoshop/photoshop-previews.component.mjs +68 -0
  75. package/esm2020/photoshop/photoshop.component.mjs +258 -0
  76. package/esm2020/photoshop/public_api.mjs +5 -0
  77. package/esm2020/public_api.mjs +14 -0
  78. package/esm2020/raised.component.mjs +89 -0
  79. package/esm2020/saturation.component.mjs +136 -0
  80. package/esm2020/shade/ngx-color-shade.mjs +5 -0
  81. package/esm2020/shade/public_api.mjs +2 -0
  82. package/esm2020/shade/shade-picker.component.mjs +105 -0
  83. package/esm2020/shade.component.mjs +165 -0
  84. package/esm2020/sketch/ngx-color-sketch.mjs +5 -0
  85. package/esm2020/sketch/public_api.mjs +4 -0
  86. package/esm2020/sketch/sketch-fields.component.mjs +243 -0
  87. package/esm2020/sketch/sketch-preset-colors.component.mjs +98 -0
  88. package/esm2020/sketch/sketch.component.mjs +283 -0
  89. package/esm2020/slider/ngx-color-slider.mjs +5 -0
  90. package/esm2020/slider/public_api.mjs +4 -0
  91. package/esm2020/slider/slider-swatch.component.mjs +80 -0
  92. package/esm2020/slider/slider-swatches.component.mjs +135 -0
  93. package/esm2020/slider/slider.component.mjs +116 -0
  94. package/esm2020/swatch.component.mjs +125 -0
  95. package/esm2020/swatches/ngx-color-swatches.mjs +5 -0
  96. package/esm2020/swatches/public_api.mjs +4 -0
  97. package/esm2020/swatches/swatches-color.component.mjs +123 -0
  98. package/esm2020/swatches/swatches-group.component.mjs +64 -0
  99. package/esm2020/swatches/swatches.component.mjs +258 -0
  100. package/esm2020/twitter/ngx-color-twitter.mjs +5 -0
  101. package/esm2020/twitter/public_api.mjs +2 -0
  102. package/esm2020/twitter/twitter.component.mjs +255 -0
  103. package/fesm2015/ngx-color-alpha.mjs +123 -0
  104. package/fesm2015/ngx-color-alpha.mjs.map +1 -0
  105. package/fesm2015/ngx-color-block.mjs +275 -0
  106. package/fesm2015/ngx-color-block.mjs.map +1 -0
  107. package/fesm2015/ngx-color-chrome.mjs +606 -0
  108. package/fesm2015/ngx-color-chrome.mjs.map +1 -0
  109. package/fesm2015/ngx-color-circle.mjs +237 -0
  110. package/fesm2015/ngx-color-circle.mjs.map +1 -0
  111. package/fesm2015/ngx-color-compact.mjs +451 -0
  112. package/fesm2015/ngx-color-compact.mjs.map +1 -0
  113. package/fesm2015/ngx-color-github.mjs +250 -0
  114. package/fesm2015/ngx-color-github.mjs.map +1 -0
  115. package/fesm2015/ngx-color-hue.mjs +120 -0
  116. package/fesm2015/ngx-color-hue.mjs.map +1 -0
  117. package/fesm2015/ngx-color-material.mjs +218 -0
  118. package/fesm2015/ngx-color-material.mjs.map +1 -0
  119. package/fesm2015/ngx-color-photoshop.mjs +626 -0
  120. package/fesm2015/ngx-color-photoshop.mjs.map +1 -0
  121. package/fesm2015/ngx-color-shade.mjs +112 -0
  122. package/fesm2015/ngx-color-shade.mjs.map +1 -0
  123. package/fesm2015/ngx-color-sketch.mjs +620 -0
  124. package/fesm2015/ngx-color-sketch.mjs.map +1 -0
  125. package/fesm2015/ngx-color-slider.mjs +331 -0
  126. package/fesm2015/ngx-color-slider.mjs.map +1 -0
  127. package/fesm2015/ngx-color-swatches.mjs +441 -0
  128. package/fesm2015/ngx-color-swatches.mjs.map +1 -0
  129. package/fesm2015/ngx-color-twitter.mjs +262 -0
  130. package/fesm2015/ngx-color-twitter.mjs.map +1 -0
  131. package/fesm2015/ngx-color.mjs +1461 -0
  132. package/fesm2015/ngx-color.mjs.map +1 -0
  133. package/fesm2020/ngx-color-alpha.mjs +123 -0
  134. package/fesm2020/ngx-color-alpha.mjs.map +1 -0
  135. package/fesm2020/ngx-color-block.mjs +275 -0
  136. package/fesm2020/ngx-color-block.mjs.map +1 -0
  137. package/fesm2020/ngx-color-chrome.mjs +606 -0
  138. package/fesm2020/ngx-color-chrome.mjs.map +1 -0
  139. package/fesm2020/ngx-color-circle.mjs +237 -0
  140. package/fesm2020/ngx-color-circle.mjs.map +1 -0
  141. package/fesm2020/ngx-color-compact.mjs +451 -0
  142. package/fesm2020/ngx-color-compact.mjs.map +1 -0
  143. package/fesm2020/ngx-color-github.mjs +250 -0
  144. package/fesm2020/ngx-color-github.mjs.map +1 -0
  145. package/fesm2020/ngx-color-hue.mjs +120 -0
  146. package/fesm2020/ngx-color-hue.mjs.map +1 -0
  147. package/fesm2020/ngx-color-material.mjs +218 -0
  148. package/fesm2020/ngx-color-material.mjs.map +1 -0
  149. package/fesm2020/ngx-color-photoshop.mjs +626 -0
  150. package/fesm2020/ngx-color-photoshop.mjs.map +1 -0
  151. package/fesm2020/ngx-color-shade.mjs +112 -0
  152. package/fesm2020/ngx-color-shade.mjs.map +1 -0
  153. package/fesm2020/ngx-color-sketch.mjs +620 -0
  154. package/fesm2020/ngx-color-sketch.mjs.map +1 -0
  155. package/fesm2020/ngx-color-slider.mjs +331 -0
  156. package/fesm2020/ngx-color-slider.mjs.map +1 -0
  157. package/fesm2020/ngx-color-swatches.mjs +441 -0
  158. package/fesm2020/ngx-color-swatches.mjs.map +1 -0
  159. package/fesm2020/ngx-color-twitter.mjs +262 -0
  160. package/fesm2020/ngx-color-twitter.mjs.map +1 -0
  161. package/fesm2020/ngx-color.mjs +1466 -0
  162. package/fesm2020/ngx-color.mjs.map +1 -0
  163. package/github/github-swatch.component.d.ts +3 -0
  164. package/github/github.component.d.ts +9 -0
  165. package/github/ngx-color-github.d.ts +2 -2
  166. package/github/package.json +6 -10
  167. package/github/public_api.d.ts +2 -0
  168. package/hue/hue-picker.component.d.ts +8 -0
  169. package/hue/ngx-color-hue.d.ts +2 -1
  170. package/hue/package.json +6 -10
  171. package/hue/public_api.d.ts +1 -0
  172. package/hue.component.d.ts +8 -0
  173. package/material/material.component.d.ts +8 -0
  174. package/material/ngx-color-material.d.ts +2 -1
  175. package/material/package.json +6 -10
  176. package/material/public_api.d.ts +1 -0
  177. package/ngx-color.d.ts +1 -0
  178. package/package.json +137 -14
  179. package/photoshop/ngx-color-photoshop.d.ts +2 -4
  180. package/photoshop/package.json +6 -10
  181. package/photoshop/photoshop-button.component.d.ts +3 -0
  182. package/photoshop/photoshop-fields.component.d.ts +3 -0
  183. package/photoshop/photoshop-previews.component.d.ts +3 -0
  184. package/photoshop/photoshop.component.d.ts +11 -0
  185. package/photoshop/public_api.d.ts +4 -0
  186. package/raised.component.d.ts +7 -0
  187. package/saturation.component.d.ts +8 -0
  188. package/shade/ngx-color-shade.d.ts +2 -1
  189. package/shade/package.json +6 -10
  190. package/shade/public_api.d.ts +1 -0
  191. package/shade/shade-picker.component.d.ts +8 -0
  192. package/shade.component.d.ts +8 -0
  193. package/sketch/ngx-color-sketch.d.ts +2 -3
  194. package/sketch/package.json +6 -10
  195. package/sketch/public_api.d.ts +3 -0
  196. package/sketch/sketch-fields.component.d.ts +3 -0
  197. package/sketch/sketch-preset-colors.component.d.ts +3 -0
  198. package/sketch/sketch.component.d.ts +10 -0
  199. package/slider/ngx-color-slider.d.ts +2 -3
  200. package/slider/package.json +6 -10
  201. package/slider/public_api.d.ts +3 -0
  202. package/slider/slider-swatch.component.d.ts +3 -0
  203. package/slider/slider-swatches.component.d.ts +3 -0
  204. package/slider/slider.component.d.ts +10 -0
  205. package/swatch.component.d.ts +8 -0
  206. package/swatches/ngx-color-swatches.d.ts +2 -3
  207. package/swatches/package.json +9 -10
  208. package/swatches/public_api.d.ts +3 -0
  209. package/swatches/swatches-color.component.d.ts +3 -0
  210. package/swatches/swatches-group.component.d.ts +3 -0
  211. package/swatches/swatches.component.d.ts +10 -0
  212. package/twitter/ngx-color-twitter.d.ts +2 -1
  213. package/twitter/package.json +6 -10
  214. package/twitter/public_api.d.ts +1 -0
  215. package/twitter/twitter.component.d.ts +8 -0
  216. package/LICENSE +0 -21
  217. package/README.md +0 -280
  218. package/alpha/bundles/ngx-color-alpha.umd.js +0 -387
  219. package/alpha/bundles/ngx-color-alpha.umd.js.map +0 -1
  220. package/alpha/esm2015/alpha-picker.component.js +0 -72
  221. package/alpha/esm2015/ngx-color-alpha.js +0 -5
  222. package/alpha/fesm2015/ngx-color-alpha.js +0 -79
  223. package/alpha/fesm2015/ngx-color-alpha.js.map +0 -1
  224. package/alpha/ngx-color-alpha.metadata.json +0 -1
  225. package/block/bundles/ngx-color-block.umd.js +0 -455
  226. package/block/bundles/ngx-color-block.umd.js.map +0 -1
  227. package/block/esm2015/block-swatches.component.js +0 -58
  228. package/block/esm2015/block.component.js +0 -139
  229. package/block/esm2015/ngx-color-block.js +0 -6
  230. package/block/fesm2015/ngx-color-block.js +0 -202
  231. package/block/fesm2015/ngx-color-block.js.map +0 -1
  232. package/block/ngx-color-block.metadata.json +0 -1
  233. package/bundles/ngx-color.umd.js +0 -953
  234. package/bundles/ngx-color.umd.js.map +0 -1
  235. package/chrome/bundles/ngx-color-chrome.umd.js +0 -526
  236. package/chrome/bundles/ngx-color-chrome.umd.js.map +0 -1
  237. package/chrome/esm2015/chrome-fields.component.js +0 -255
  238. package/chrome/esm2015/chrome.component.js +0 -161
  239. package/chrome/esm2015/ngx-color-chrome.js +0 -6
  240. package/chrome/fesm2015/ngx-color-chrome.js +0 -420
  241. package/chrome/fesm2015/ngx-color-chrome.js.map +0 -1
  242. package/chrome/ngx-color-chrome.metadata.json +0 -1
  243. package/circle/bundles/ngx-color-circle.umd.js +0 -452
  244. package/circle/bundles/ngx-color-circle.umd.js.map +0 -1
  245. package/circle/esm2015/circle-swatch.component.js +0 -63
  246. package/circle/esm2015/circle.component.js +0 -97
  247. package/circle/esm2015/ngx-color-circle.js +0 -6
  248. package/circle/fesm2015/ngx-color-circle.js +0 -165
  249. package/circle/fesm2015/ngx-color-circle.js.map +0 -1
  250. package/circle/ngx-color-circle.metadata.json +0 -1
  251. package/compact/bundles/ngx-color-compact.umd.js +0 -562
  252. package/compact/bundles/ngx-color-compact.umd.js.map +0 -1
  253. package/compact/esm2015/compact-color.component.js +0 -70
  254. package/compact/esm2015/compact-fields.component.js +0 -142
  255. package/compact/esm2015/compact.component.js +0 -123
  256. package/compact/esm2015/ngx-color-compact.js +0 -7
  257. package/compact/fesm2015/ngx-color-compact.js +0 -336
  258. package/compact/fesm2015/ngx-color-compact.js.map +0 -1
  259. package/compact/ngx-color-compact.metadata.json +0 -1
  260. package/esm2015/alpha.component.js +0 -156
  261. package/esm2015/checkboard.component.js +0 -52
  262. package/esm2015/color-wrap.component.js +0 -82
  263. package/esm2015/coordinates.directive.js +0 -85
  264. package/esm2015/editable-input.component.js +0 -183
  265. package/esm2015/helpers/checkboard.js +0 -33
  266. package/esm2015/helpers/color.interfaces.js +0 -2
  267. package/esm2015/helpers/color.js +0 -60
  268. package/esm2015/hue.component.js +0 -140
  269. package/esm2015/ngx-color.js +0 -5
  270. package/esm2015/public_api.js +0 -14
  271. package/esm2015/raised.component.js +0 -73
  272. package/esm2015/saturation.component.js +0 -111
  273. package/esm2015/shade.component.js +0 -127
  274. package/esm2015/swatch.component.js +0 -85
  275. package/fesm2015/ngx-color.js +0 -1166
  276. package/fesm2015/ngx-color.js.map +0 -1
  277. package/github/bundles/ngx-color-github.umd.js +0 -430
  278. package/github/bundles/ngx-color-github.umd.js.map +0 -1
  279. package/github/esm2015/github-swatch.component.js +0 -48
  280. package/github/esm2015/github.component.js +0 -134
  281. package/github/esm2015/ngx-color-github.js +0 -6
  282. package/github/fesm2015/ngx-color-github.js +0 -187
  283. package/github/fesm2015/ngx-color-github.js.map +0 -1
  284. package/github/ngx-color-github.metadata.json +0 -1
  285. package/hue/bundles/ngx-color-hue.umd.js +0 -390
  286. package/hue/bundles/ngx-color-hue.umd.js.map +0 -1
  287. package/hue/esm2015/hue-picker.component.js +0 -70
  288. package/hue/esm2015/ngx-color-hue.js +0 -5
  289. package/hue/fesm2015/ngx-color-hue.js +0 -77
  290. package/hue/fesm2015/ngx-color-hue.js.map +0 -1
  291. package/hue/ngx-color-hue.metadata.json +0 -1
  292. package/material/bundles/ngx-color-material.umd.js +0 -438
  293. package/material/bundles/ngx-color-material.umd.js.map +0 -1
  294. package/material/esm2015/material.component.js +0 -149
  295. package/material/esm2015/ngx-color-material.js +0 -5
  296. package/material/fesm2015/ngx-color-material.js +0 -156
  297. package/material/fesm2015/ngx-color-material.js.map +0 -1
  298. package/material/ngx-color-material.metadata.json +0 -1
  299. package/ngx-color.metadata.json +0 -1
  300. package/photoshop/bundles/ngx-color-photoshop.umd.js +0 -554
  301. package/photoshop/bundles/ngx-color-photoshop.umd.js.map +0 -1
  302. package/photoshop/esm2015/ngx-color-photoshop.js +0 -8
  303. package/photoshop/esm2015/photoshop-button.component.js +0 -50
  304. package/photoshop/esm2015/photoshop-fields.component.js +0 -180
  305. package/photoshop/esm2015/photoshop-previews.component.js +0 -53
  306. package/photoshop/esm2015/photoshop.component.js +0 -169
  307. package/photoshop/fesm2015/ngx-color-photoshop.js +0 -452
  308. package/photoshop/fesm2015/ngx-color-photoshop.js.map +0 -1
  309. package/photoshop/ngx-color-photoshop.metadata.json +0 -1
  310. package/shade/bundles/ngx-color-shade.umd.js +0 -382
  311. package/shade/bundles/ngx-color-shade.umd.js.map +0 -1
  312. package/shade/esm2015/ngx-color-shade.js +0 -5
  313. package/shade/esm2015/shade-picker.component.js +0 -63
  314. package/shade/fesm2015/ngx-color-shade.js +0 -70
  315. package/shade/fesm2015/ngx-color-shade.js.map +0 -1
  316. package/shade/ngx-color-shade.metadata.json +0 -1
  317. package/sketch/bundles/ngx-color-sketch.umd.js +0 -568
  318. package/sketch/bundles/ngx-color-sketch.umd.js.map +0 -1
  319. package/sketch/esm2015/ngx-color-sketch.js +0 -7
  320. package/sketch/esm2015/sketch-fields.component.js +0 -181
  321. package/sketch/esm2015/sketch-preset-colors.component.js +0 -76
  322. package/sketch/esm2015/sketch.component.js +0 -191
  323. package/sketch/fesm2015/ngx-color-sketch.js +0 -450
  324. package/sketch/fesm2015/ngx-color-sketch.js.map +0 -1
  325. package/sketch/ngx-color-sketch.metadata.json +0 -1
  326. package/slider/bundles/ngx-color-slider.umd.js +0 -453
  327. package/slider/bundles/ngx-color-slider.umd.js.map +0 -1
  328. package/slider/esm2015/ngx-color-slider.js +0 -7
  329. package/slider/esm2015/slider-swatch.component.js +0 -65
  330. package/slider/esm2015/slider-swatches.component.js +0 -84
  331. package/slider/esm2015/slider.component.js +0 -69
  332. package/slider/fesm2015/ngx-color-slider.js +0 -221
  333. package/slider/fesm2015/ngx-color-slider.js.map +0 -1
  334. package/slider/ngx-color-slider.metadata.json +0 -1
  335. package/swatches/bundles/ngx-color-swatches.umd.js +0 -595
  336. package/swatches/bundles/ngx-color-swatches.umd.js.map +0 -1
  337. package/swatches/esm2015/ngx-color-swatches.js +0 -7
  338. package/swatches/esm2015/swatches-color.component.js +0 -90
  339. package/swatches/esm2015/swatches-group.component.js +0 -42
  340. package/swatches/esm2015/swatches.component.js +0 -205
  341. package/swatches/fesm2015/ngx-color-swatches.js +0 -339
  342. package/swatches/fesm2015/ngx-color-swatches.js.map +0 -1
  343. package/swatches/ngx-color-swatches.metadata.json +0 -1
  344. package/twitter/bundles/ngx-color-twitter.umd.js +0 -416
  345. package/twitter/bundles/ngx-color-twitter.umd.js.map +0 -1
  346. package/twitter/esm2015/ngx-color-twitter.js +0 -5
  347. package/twitter/esm2015/twitter.component.js +0 -195
  348. package/twitter/fesm2015/ngx-color-twitter.js +0 -202
  349. package/twitter/fesm2015/ngx-color-twitter.js.map +0 -1
  350. package/twitter/ngx-color-twitter.metadata.json +0 -1
@@ -0,0 +1,66 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, Input, NgModule, } from '@angular/core';
3
+ import { getCheckerboard } from './helpers/checkboard';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ export class CheckboardComponent {
7
+ constructor() {
8
+ this.white = 'transparent';
9
+ this.size = 8;
10
+ this.grey = 'rgba(0,0,0,.08)';
11
+ }
12
+ ngOnInit() {
13
+ const background = getCheckerboard(this.white, this.grey, this.size);
14
+ this.gridStyles = {
15
+ borderRadius: this.borderRadius,
16
+ boxShadow: this.boxShadow,
17
+ background: `url(${background}) center left`,
18
+ };
19
+ }
20
+ }
21
+ CheckboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ CheckboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: CheckboardComponent, selector: "color-checkboard", inputs: { white: "white", size: "size", grey: "grey", boxShadow: "boxShadow", borderRadius: "borderRadius" }, ngImport: i0, template: `<div class="grid" [ngStyle]="gridStyles"></div>`, isInline: true, styles: [".grid{top:0px;right:0px;bottom:0px;left:0px;position:absolute}\n"], directives: [{ type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardComponent, decorators: [{
24
+ type: Component,
25
+ args: [{
26
+ selector: 'color-checkboard',
27
+ template: `<div class="grid" [ngStyle]="gridStyles"></div>`,
28
+ styles: [
29
+ `
30
+ .grid {
31
+ top: 0px;
32
+ right: 0px;
33
+ bottom: 0px;
34
+ left: 0px;
35
+ position: absolute;
36
+ }
37
+ `,
38
+ ],
39
+ preserveWhitespaces: false,
40
+ changeDetection: ChangeDetectionStrategy.OnPush,
41
+ }]
42
+ }], propDecorators: { white: [{
43
+ type: Input
44
+ }], size: [{
45
+ type: Input
46
+ }], grey: [{
47
+ type: Input
48
+ }], boxShadow: [{
49
+ type: Input
50
+ }], borderRadius: [{
51
+ type: Input
52
+ }] } });
53
+ export class CheckboardModule {
54
+ }
55
+ CheckboardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
56
+ CheckboardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardModule, declarations: [CheckboardComponent], imports: [CommonModule], exports: [CheckboardComponent] });
57
+ CheckboardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardModule, imports: [[CommonModule]] });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: CheckboardModule, decorators: [{
59
+ type: NgModule,
60
+ args: [{
61
+ declarations: [CheckboardComponent],
62
+ exports: [CheckboardComponent],
63
+ imports: [CommonModule],
64
+ }]
65
+ }] });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NoZWNrYm9hcmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsUUFBUSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBbUJ2RCxNQUFNLE9BQU8sbUJBQW1CO0lBakJoQztRQWtCVyxVQUFLLEdBQUcsYUFBYSxDQUFDO1FBQ3RCLFNBQUksR0FBRyxDQUFDLENBQUM7UUFDVCxTQUFJLEdBQUcsaUJBQWlCLENBQUM7S0FhbkM7SUFSQyxRQUFRO1FBQ04sTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFVBQVUsR0FBRztZQUNoQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFVBQVUsRUFBRSxPQUFPLFVBQVUsZUFBZTtTQUM3QyxDQUFDO0lBQ0osQ0FBQzs7Z0hBZlUsbUJBQW1CO29HQUFuQixtQkFBbUIsc0tBZnBCLGlEQUFpRDsyRkFlaEQsbUJBQW1CO2tCQWpCL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsaURBQWlEO29CQUMzRCxNQUFNLEVBQUU7d0JBQ047Ozs7Ozs7O0dBUUQ7cUJBQ0E7b0JBQ0QsbUJBQW1CLEVBQUUsS0FBSztvQkFDMUIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOzhCQUVVLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSzs7QUFrQlIsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQXZCaEIsbUJBQW1CLGFBcUJwQixZQUFZLGFBckJYLG1CQUFtQjs4R0F1Qm5CLGdCQUFnQixZQUZsQixDQUFDLFlBQVksQ0FBQzsyRkFFWixnQkFBZ0I7a0JBTDVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO29CQUM5QixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBOZ01vZHVsZSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZ2V0Q2hlY2tlcmJvYXJkIH0gZnJvbSAnLi9oZWxwZXJzL2NoZWNrYm9hcmQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb2xvci1jaGVja2JvYXJkJyxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwiZ3JpZFwiIFtuZ1N0eWxlXT1cImdyaWRTdHlsZXNcIj48L2Rpdj5gLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gIC5ncmlkIHtcbiAgICB0b3A6IDBweDtcbiAgICByaWdodDogMHB4O1xuICAgIGJvdHRvbTogMHB4O1xuICAgIGxlZnQ6IDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgYCxcbiAgXSxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JvYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgd2hpdGUgPSAndHJhbnNwYXJlbnQnO1xuICBASW5wdXQoKSBzaXplID0gODtcbiAgQElucHV0KCkgZ3JleSA9ICdyZ2JhKDAsMCwwLC4wOCknO1xuICBASW5wdXQoKSBib3hTaGFkb3chOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGJvcmRlclJhZGl1cyE6IHN0cmluZztcbiAgZ3JpZFN0eWxlcyE6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgYmFja2dyb3VuZCA9IGdldENoZWNrZXJib2FyZCh0aGlzLndoaXRlLCB0aGlzLmdyZXksIHRoaXMuc2l6ZSk7XG4gICAgdGhpcy5ncmlkU3R5bGVzID0ge1xuICAgICAgYm9yZGVyUmFkaXVzOiB0aGlzLmJvcmRlclJhZGl1cyxcbiAgICAgIGJveFNoYWRvdzogdGhpcy5ib3hTaGFkb3csXG4gICAgICBiYWNrZ3JvdW5kOiBgdXJsKCR7YmFja2dyb3VuZH0pIGNlbnRlciBsZWZ0YCxcbiAgICB9O1xuICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0NoZWNrYm9hcmRDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQ2hlY2tib2FyZENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JvYXJkTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,356 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
2
+ import { isValidHex } from 'ngx-color';
3
+ import { TinyColor } from '@ctrl/tinycolor';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "ngx-color";
6
+ import * as i2 from "@angular/common";
7
+ export class ChromeFieldsComponent {
8
+ constructor() {
9
+ this.onChange = new EventEmitter();
10
+ this.view = '';
11
+ this.input = {
12
+ fontSize: '11px',
13
+ color: '#333',
14
+ width: '100%',
15
+ borderRadius: '2px',
16
+ border: 'none',
17
+ boxShadow: 'inset 0 0 0 1px #dadada',
18
+ height: '21px',
19
+ 'text-align': 'center',
20
+ };
21
+ this.label = {
22
+ 'text-transform': 'uppercase',
23
+ fontSize: '11px',
24
+ 'line-height': '11px',
25
+ color: '#969696',
26
+ 'text-align': 'center',
27
+ display: 'block',
28
+ marginTop: '12px',
29
+ };
30
+ }
31
+ ngOnInit() {
32
+ if (this.hsl.a === 1 && this.view !== 'hex') {
33
+ this.view = 'hex';
34
+ }
35
+ else if (this.view !== 'rgb' && this.view !== 'hsl') {
36
+ this.view = 'rgb';
37
+ }
38
+ }
39
+ toggleViews() {
40
+ if (this.view === 'hex') {
41
+ this.view = 'rgb';
42
+ }
43
+ else if (this.view === 'rgb') {
44
+ this.view = 'hsl';
45
+ }
46
+ else if (this.view === 'hsl') {
47
+ if (this.hsl.a === 1) {
48
+ this.view = 'hex';
49
+ }
50
+ else {
51
+ this.view = 'rgb';
52
+ }
53
+ }
54
+ }
55
+ round(value) {
56
+ return Math.round(value);
57
+ }
58
+ handleChange({ data, $event }) {
59
+ if (data.hex) {
60
+ if (isValidHex(data.hex)) {
61
+ const color = new TinyColor(data.hex);
62
+ this.onChange.emit({
63
+ data: {
64
+ hex: this.disableAlpha ? color.toHex() : color.toHex8(),
65
+ source: 'hex',
66
+ },
67
+ $event,
68
+ });
69
+ }
70
+ }
71
+ else if (data.r || data.g || data.b) {
72
+ this.onChange.emit({
73
+ data: {
74
+ r: data.r || this.rgb.r,
75
+ g: data.g || this.rgb.g,
76
+ b: data.b || this.rgb.b,
77
+ source: 'rgb',
78
+ },
79
+ $event,
80
+ });
81
+ }
82
+ else if (data.a) {
83
+ if (data.a < 0) {
84
+ data.a = 0;
85
+ }
86
+ else if (data.a > 1) {
87
+ data.a = 1;
88
+ }
89
+ if (this.disableAlpha) {
90
+ data.a = 1;
91
+ }
92
+ this.onChange.emit({
93
+ data: {
94
+ h: this.hsl.h,
95
+ s: this.hsl.s,
96
+ l: this.hsl.l,
97
+ a: Math.round(data.a * 100) / 100,
98
+ source: 'rgb',
99
+ },
100
+ $event,
101
+ });
102
+ }
103
+ else if (data.h || data.s || data.l) {
104
+ const s = data.s && data.s.replace('%', '');
105
+ const l = data.l && data.l.replace('%', '');
106
+ this.onChange.emit({
107
+ data: {
108
+ h: data.h || this.hsl.h,
109
+ s: Number(s || this.hsl.s),
110
+ l: Number(l || this.hsl.l),
111
+ source: 'hsl',
112
+ },
113
+ $event,
114
+ });
115
+ }
116
+ }
117
+ }
118
+ ChromeFieldsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ChromeFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
119
+ ChromeFieldsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: ChromeFieldsComponent, selector: "color-chrome-fields", inputs: { disableAlpha: "disableAlpha", hsl: "hsl", rgb: "rgb", hex: "hex" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
120
+ <div class="chrome-wrap">
121
+ <div class="chrome-fields">
122
+ <ng-template [ngIf]="view === 'hex'">
123
+ <div class="chrome-field">
124
+ <color-editable-input
125
+ [style]="{ input: input, label: label }"
126
+ label="hex" [value]="hex"
127
+ (onChange)="handleChange($event)"
128
+ ></color-editable-input>
129
+ </div>
130
+ </ng-template>
131
+ <ng-template [ngIf]="view === 'rgb'">
132
+ <div class="chrome-field">
133
+ <color-editable-input
134
+ [style]="{ input: input, label: label }"
135
+ label="r" [value]="rgb.r"
136
+ (onChange)="handleChange($event)"
137
+ ></color-editable-input>
138
+ </div>
139
+ <div class="chrome-field">
140
+ <color-editable-input
141
+ [style]="{ input: input, label: label }"
142
+ label="g" [value]="rgb.g"
143
+ (onChange)="handleChange($event)"
144
+ ></color-editable-input>
145
+ </div>
146
+ <div class="chrome-field">
147
+ <color-editable-input
148
+ [style]="{ input: input, label: label }"
149
+ label="b" [value]="rgb.b"
150
+ (onChange)="handleChange($event)"
151
+ ></color-editable-input>
152
+ </div>
153
+ <div class="chrome-field">
154
+ <color-editable-input *ngIf="!disableAlpha"
155
+ [style]="{ input: input, label: label }"
156
+ label="a" [value]="rgb.a"
157
+ [arrowOffset]="0.01"
158
+ (onChange)="handleChange($event)"
159
+ ></color-editable-input>
160
+ </div>
161
+ </ng-template>
162
+ <ng-template [ngIf]="view === 'hsl'">
163
+ <div class="chrome-field">
164
+ <color-editable-input
165
+ [style]="{ input: input, label: label }"
166
+ label="h"
167
+ [value]="round(hsl.h)"
168
+ (onChange)="handleChange($event)"
169
+ ></color-editable-input>
170
+ </div>
171
+ <div class="chrome-field">
172
+ <color-editable-input
173
+ [style]="{ input: input, label: label }"
174
+ label="s" [value]="round(hsl.s * 100) + '%'"
175
+ (onChange)="handleChange($event)"
176
+ ></color-editable-input>
177
+ </div>
178
+ <div class="chrome-field">
179
+ <color-editable-input
180
+ [style]="{ input: input, label: label }"
181
+ label="l" [value]="round(hsl.l * 100) + '%'"
182
+ (onChange)="handleChange($event)"
183
+ ></color-editable-input>
184
+ </div>
185
+ <div class="chrome-field">
186
+ <color-editable-input *ngIf="!disableAlpha"
187
+ [style]="{ input: input, label: label }"
188
+ label="a" [value]="hsl.a"
189
+ [arrowOffset]="0.01"
190
+ (onChange)="handleChange($event)"
191
+ ></color-editable-input>
192
+ </div>
193
+ </ng-template>
194
+ </div>
195
+
196
+ <div class="chrome-toggle">
197
+ <div class="chrome-icon" (click)="toggleViews()" #icon>
198
+ <svg class="chrome-toggle-svg" viewBox="0 0 24 24">
199
+ <path #iconUp fill="#333"
200
+ d="M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"
201
+ />
202
+ <path #iconDown fill="#333"
203
+ d="M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15Z"
204
+ />
205
+ </svg>
206
+ </div>
207
+ </div>
208
+ </div>
209
+ `, isInline: true, styles: [".chrome-wrap{padding-top:16px;display:flex}.chrome-fields{flex:1;display:flex;margin-left:-6px}.chrome-field{padding-left:6px;width:100%}.chrome-toggle{width:32px;text-align:right;position:relative}.chrome-icon{margin-right:-4px;margin-top:12px;cursor:pointer;position:relative}.chrome-toggle-svg{width:24px;height:24px;border:1px transparent solid;border-radius:5px}.chrome-toggle-svg:hover{background:#eee}\n"], components: [{ type: i1.EditableInputComponent, selector: "color-editable-input", inputs: ["style", "label", "value", "arrowOffset", "dragLabel", "dragMax", "placeholder"], outputs: ["onChange"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
210
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ChromeFieldsComponent, decorators: [{
211
+ type: Component,
212
+ args: [{
213
+ selector: 'color-chrome-fields',
214
+ template: `
215
+ <div class="chrome-wrap">
216
+ <div class="chrome-fields">
217
+ <ng-template [ngIf]="view === 'hex'">
218
+ <div class="chrome-field">
219
+ <color-editable-input
220
+ [style]="{ input: input, label: label }"
221
+ label="hex" [value]="hex"
222
+ (onChange)="handleChange($event)"
223
+ ></color-editable-input>
224
+ </div>
225
+ </ng-template>
226
+ <ng-template [ngIf]="view === 'rgb'">
227
+ <div class="chrome-field">
228
+ <color-editable-input
229
+ [style]="{ input: input, label: label }"
230
+ label="r" [value]="rgb.r"
231
+ (onChange)="handleChange($event)"
232
+ ></color-editable-input>
233
+ </div>
234
+ <div class="chrome-field">
235
+ <color-editable-input
236
+ [style]="{ input: input, label: label }"
237
+ label="g" [value]="rgb.g"
238
+ (onChange)="handleChange($event)"
239
+ ></color-editable-input>
240
+ </div>
241
+ <div class="chrome-field">
242
+ <color-editable-input
243
+ [style]="{ input: input, label: label }"
244
+ label="b" [value]="rgb.b"
245
+ (onChange)="handleChange($event)"
246
+ ></color-editable-input>
247
+ </div>
248
+ <div class="chrome-field">
249
+ <color-editable-input *ngIf="!disableAlpha"
250
+ [style]="{ input: input, label: label }"
251
+ label="a" [value]="rgb.a"
252
+ [arrowOffset]="0.01"
253
+ (onChange)="handleChange($event)"
254
+ ></color-editable-input>
255
+ </div>
256
+ </ng-template>
257
+ <ng-template [ngIf]="view === 'hsl'">
258
+ <div class="chrome-field">
259
+ <color-editable-input
260
+ [style]="{ input: input, label: label }"
261
+ label="h"
262
+ [value]="round(hsl.h)"
263
+ (onChange)="handleChange($event)"
264
+ ></color-editable-input>
265
+ </div>
266
+ <div class="chrome-field">
267
+ <color-editable-input
268
+ [style]="{ input: input, label: label }"
269
+ label="s" [value]="round(hsl.s * 100) + '%'"
270
+ (onChange)="handleChange($event)"
271
+ ></color-editable-input>
272
+ </div>
273
+ <div class="chrome-field">
274
+ <color-editable-input
275
+ [style]="{ input: input, label: label }"
276
+ label="l" [value]="round(hsl.l * 100) + '%'"
277
+ (onChange)="handleChange($event)"
278
+ ></color-editable-input>
279
+ </div>
280
+ <div class="chrome-field">
281
+ <color-editable-input *ngIf="!disableAlpha"
282
+ [style]="{ input: input, label: label }"
283
+ label="a" [value]="hsl.a"
284
+ [arrowOffset]="0.01"
285
+ (onChange)="handleChange($event)"
286
+ ></color-editable-input>
287
+ </div>
288
+ </ng-template>
289
+ </div>
290
+
291
+ <div class="chrome-toggle">
292
+ <div class="chrome-icon" (click)="toggleViews()" #icon>
293
+ <svg class="chrome-toggle-svg" viewBox="0 0 24 24">
294
+ <path #iconUp fill="#333"
295
+ d="M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"
296
+ />
297
+ <path #iconDown fill="#333"
298
+ d="M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15Z"
299
+ />
300
+ </svg>
301
+ </div>
302
+ </div>
303
+ </div>
304
+ `,
305
+ styles: [
306
+ `
307
+ .chrome-wrap {
308
+ padding-top: 16px;
309
+ display: flex;
310
+ }
311
+ .chrome-fields {
312
+ flex: 1;
313
+ display: flex;
314
+ margin-left: -6px;
315
+ }
316
+ .chrome-field {
317
+ padding-left: 6px;
318
+ width: 100%;
319
+ }
320
+ .chrome-toggle {
321
+ width: 32px;
322
+ text-align: right;
323
+ position: relative;
324
+ }
325
+ .chrome-icon {
326
+ margin-right: -4px;
327
+ margin-top: 12px;
328
+ cursor: pointer;
329
+ position: relative;
330
+ }
331
+ .chrome-toggle-svg {
332
+ width: 24px;
333
+ height: 24px;
334
+ border: 1px transparent solid;
335
+ border-radius: 5px;
336
+ }
337
+ .chrome-toggle-svg:hover {
338
+ background: #eee;
339
+ }
340
+ `,
341
+ ],
342
+ changeDetection: ChangeDetectionStrategy.OnPush,
343
+ preserveWhitespaces: false,
344
+ }]
345
+ }], propDecorators: { disableAlpha: [{
346
+ type: Input
347
+ }], hsl: [{
348
+ type: Input
349
+ }], rgb: [{
350
+ type: Input
351
+ }], hex: [{
352
+ type: Input
353
+ }], onChange: [{
354
+ type: Output
355
+ }] } });
356
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyb21lLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Nocm9tZS9jaHJvbWUtZmllbGRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFjLE1BQU0sV0FBVyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQXVJNUMsTUFBTSxPQUFPLHFCQUFxQjtJQXJJbEM7UUEwSVksYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDN0MsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFVBQUssR0FBMkI7WUFDOUIsUUFBUSxFQUFFLE1BQU07WUFDaEIsS0FBSyxFQUFFLE1BQU07WUFDYixLQUFLLEVBQUUsTUFBTTtZQUNiLFlBQVksRUFBRSxLQUFLO1lBQ25CLE1BQU0sRUFBRSxNQUFNO1lBQ2QsU0FBUyxFQUFFLHlCQUF5QjtZQUNwQyxNQUFNLEVBQUUsTUFBTTtZQUNkLFlBQVksRUFBRSxRQUFRO1NBQ3ZCLENBQUM7UUFDRixVQUFLLEdBQTJCO1lBQzlCLGdCQUFnQixFQUFFLFdBQVc7WUFDN0IsUUFBUSxFQUFFLE1BQU07WUFDaEIsYUFBYSxFQUFFLE1BQU07WUFDckIsS0FBSyxFQUFFLFNBQVM7WUFDaEIsWUFBWSxFQUFFLFFBQVE7WUFDdEIsT0FBTyxFQUFFLE9BQU87WUFDaEIsU0FBUyxFQUFFLE1BQU07U0FDbEIsQ0FBQztLQWtGSDtJQWhGQyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFDM0MsSUFBSSxDQUFDLElB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QjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRlQ7b0JBQ0QsTUFBTSxFQUFFO3dCQUNOOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBa0NDO3FCQUNGO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxtQkFBbUIsRUFBRSxLQUFLO2lCQUMzQjs4QkFFVSxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGlzVmFsaWRIZXgsIEhTTEEsIFJHQkEgfSBmcm9tICduZ3gtY29sb3InO1xuaW1wb3J0IHsgVGlueUNvbG9yIH0gZnJvbSAnQGN0cmwvdGlueWNvbG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29sb3ItY2hyb21lLWZpZWxkcycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImNocm9tZS13cmFwXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY2hyb21lLWZpZWxkc1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwidmlldyA9PT0gJ2hleCdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hyb21lLWZpZWxkXCI+XG4gICAgICAgICAgICA8Y29sb3ItZWRpdGFibGUtaW5wdXRcbiAgICAgICAgICAgICAgW3N0eWxlXT1cInsgaW5wdXQ6IGlucHV0LCBsYWJlbDogbGFiZWwgfVwiXG4gICAgICAgICAgICAgIGxhYmVsPVwiaGV4XCIgW3ZhbHVlXT1cImhleFwiXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInZpZXcgPT09ICdyZ2InXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0XG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cInJcIiBbdmFsdWVdPVwicmdiLnJcIlxuICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvY29sb3ItZWRpdGFibGUtaW5wdXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0XG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cImdcIiBbdmFsdWVdPVwicmdiLmdcIlxuICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvY29sb3ItZWRpdGFibGUtaW5wdXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0XG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cImJcIiBbdmFsdWVdPVwicmdiLmJcIlxuICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvY29sb3ItZWRpdGFibGUtaW5wdXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0ICpuZ0lmPVwiIWRpc2FibGVBbHBoYVwiXG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cImFcIiBbdmFsdWVdPVwicmdiLmFcIlxuICAgICAgICAgICAgICBbYXJyb3dPZmZzZXRdPVwiMC4wMVwiXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cInZpZXcgPT09ICdoc2wnXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0XG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cImhcIlxuICAgICAgICAgICAgICBbdmFsdWVdPVwicm91bmQoaHNsLmgpXCJcbiAgICAgICAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2NvbG9yLWVkaXRhYmxlLWlucHV0PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaHJvbWUtZmllbGRcIj5cbiAgICAgICAgICAgIDxjb2xvci1lZGl0YWJsZS1pbnB1dFxuICAgICAgICAgICAgICBbc3R5bGVdPVwieyBpbnB1dDogaW5wdXQsIGxhYmVsOiBsYWJlbCB9XCJcbiAgICAgICAgICAgICAgbGFiZWw9XCJzXCIgW3ZhbHVlXT1cInJvdW5kKGhzbC5zICogMTAwKSArICclJ1wiXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hyb21lLWZpZWxkXCI+XG4gICAgICAgICAgICA8Y29sb3ItZWRpdGFibGUtaW5wdXRcbiAgICAgICAgICAgICAgW3N0eWxlXT1cInsgaW5wdXQ6IGlucHV0LCBsYWJlbDogbGFiZWwgfVwiXG4gICAgICAgICAgICAgIGxhYmVsPVwibFwiIFt2YWx1ZV09XCJyb3VuZChoc2wubCAqIDEwMCkgKyAnJSdcIlxuICAgICAgICAgICAgICAob25DaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvY29sb3ItZWRpdGFibGUtaW5wdXQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocm9tZS1maWVsZFwiPlxuICAgICAgICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0ICpuZ0lmPVwiIWRpc2FibGVBbHBoYVwiXG4gICAgICAgICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICAgICAgICBsYWJlbD1cImFcIiBbdmFsdWVdPVwiaHNsLmFcIlxuICAgICAgICAgICAgICBbYXJyb3dPZmZzZXRdPVwiMC4wMVwiXG4gICAgICAgICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiY2hyb21lLXRvZ2dsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hyb21lLWljb25cIiAoY2xpY2spPVwidG9nZ2xlVmlld3MoKVwiICNpY29uPlxuICAgICAgICAgIDxzdmcgY2xhc3M9XCJjaHJvbWUtdG9nZ2xlLXN2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICAgICAgICAgIDxwYXRoICNpY29uVXAgZmlsbD1cIiMzMzNcIlxuICAgICAgICAgICAgICBkPVwiTTEyLDUuODNMMTUuMTcsOUwxNi41OCw3LjU5TDEyLDNMNy40MSw3LjU5TDguODMsOUwxMiw1LjgzWlwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHBhdGggI2ljb25Eb3duIGZpbGw9XCIjMzMzXCJcbiAgICAgICAgICAgICAgZD1cIk0xMiwxOC4xN0w4LjgzLDE1TDcuNDIsMTYuNDFMMTIsMjFMMTYuNTksMTYuNDFMMTUuMTcsMTVaXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIC5jaHJvbWUtd3JhcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgICAgLmNocm9tZS1maWVsZHMge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTZweDtcbiAgICAgIH1cbiAgICAgIC5jaHJvbWUtZmllbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAuY2hyb21lLXRvZ2dsZSB7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgICAgLmNocm9tZS1pY29uIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICAgIC5jaHJvbWUtdG9nZ2xlLXN2ZyB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHRyYW5zcGFyZW50IHNvbGlkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICB9XG4gICAgICAuY2hyb21lLXRvZ2dsZS1zdmc6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlO1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hyb21lRmllbGRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZGlzYWJsZUFscGhhITogYm9vbGVhbjtcbiAgQElucHV0KCkgaHNsITogSFNMQTtcbiAgQElucHV0KCkgcmdiITogUkdCQTtcbiAgQElucHV0KCkgaGV4ITogc3RyaW5nO1xuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgdmlldyA9ICcnO1xuICBpbnB1dDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICBmb250U2l6ZTogJzExcHgnLFxuICAgIGNvbG9yOiAnIzMzMycsXG4gICAgd2lkdGg6ICcxMDAlJyxcbiAgICBib3JkZXJSYWRpdXM6ICcycHgnLFxuICAgIGJvcmRlcjogJ25vbmUnLFxuICAgIGJveFNoYWRvdzogJ2luc2V0IDAgMCAwIDFweCAjZGFkYWRhJyxcbiAgICBoZWlnaHQ6ICcyMXB4JyxcbiAgICAndGV4dC1hbGlnbic6ICdjZW50ZXInLFxuICB9O1xuICBsYWJlbDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAndGV4dC10cmFuc2Zvcm0nOiAndXBwZXJjYXNlJyxcbiAgICBmb250U2l6ZTogJzExcHgnLFxuICAgICdsaW5lLWhlaWdodCc6ICcxMXB4JyxcbiAgICBjb2xvcjogJyM5Njk2OTYnLFxuICAgICd0ZXh0LWFsaWduJzogJ2NlbnRlcicsXG4gICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICBtYXJnaW5Ub3A6ICcxMnB4JyxcbiAgfTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5oc2wuYSA9PT0gMSAmJiB0aGlzLnZpZXcgIT09ICdoZXgnKSB7XG4gICAgICB0aGlzLnZpZXcgPSAnaGV4JztcbiAgICB9IGVsc2UgaWYgKHRoaXMudmlldyAhPT0gJ3JnYicgJiYgdGhpcy52aWV3ICE9PSAnaHNsJykge1xuICAgICAgdGhpcy52aWV3ID0gJ3JnYic7XG4gICAgfVxuICB9XG4gIHRvZ2dsZVZpZXdzKCkge1xuICAgIGlmICh0aGlzLnZpZXcgPT09ICdoZXgnKSB7XG4gICAgICB0aGlzLnZpZXcgPSAncmdiJztcbiAgICB9IGVsc2UgaWYgKHRoaXMudmlldyA9PT0gJ3JnYicpIHtcbiAgICAgIHRoaXMudmlldyA9ICdoc2wnO1xuICAgIH0gZWxzZSBpZiAodGhpcy52aWV3ID09PSAnaHNsJykge1xuICAgICAgaWYgKHRoaXMuaHNsLmEgPT09IDEpIHtcbiAgICAgICAgdGhpcy52aWV3ID0gJ2hleCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZpZXcgPSAncmdiJztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcm91bmQodmFsdWUpIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSk7XG4gIH1cbiAgaGFuZGxlQ2hhbmdlKHsgZGF0YSwgJGV2ZW50IH0pIHtcbiAgICBpZiAoZGF0YS5oZXgpIHtcbiAgICAgIGlmIChpc1ZhbGlkSGV4KGRhdGEuaGV4KSkge1xuICAgICAgICBjb25zdCBjb2xvciA9IG5ldyBUaW55Q29sb3IoZGF0YS5oZXgpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGhleDogdGhpcy5kaXNhYmxlQWxwaGEgPyBjb2xvci50b0hleCgpIDogY29sb3IudG9IZXg4KCksXG4gICAgICAgICAgICBzb3VyY2U6ICdoZXgnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgJGV2ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGRhdGEuciB8fCBkYXRhLmcgfHwgZGF0YS5iKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcjogZGF0YS5yIHx8IHRoaXMucmdiLnIsXG4gICAgICAgICAgZzogZGF0YS5nIHx8IHRoaXMucmdiLmcsXG4gICAgICAgICAgYjogZGF0YS5iIHx8IHRoaXMucmdiLmIsXG4gICAgICAgICAgc291cmNlOiAncmdiJyxcbiAgICAgICAgfSxcbiAgICAgICAgJGV2ZW50LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChkYXRhLmEpIHtcbiAgICAgIGlmIChkYXRhLmEgPCAwKSB7XG4gICAgICAgIGRhdGEuYSA9IDA7XG4gICAgICB9IGVsc2UgaWYgKGRhdGEuYSA+IDEpIHtcbiAgICAgICAgZGF0YS5hID0gMTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuZGlzYWJsZUFscGhhKSB7XG4gICAgICAgIGRhdGEuYSA9IDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh7XG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBoOiB0aGlzLmhzbC5oLFxuICAgICAgICAgIHM6IHRoaXMuaHNsLnMsXG4gICAgICAgICAgbDogdGhpcy5oc2wubCxcbiAgICAgICAgICBhOiBNYXRoLnJvdW5kKGRhdGEuYSAqIDEwMCkgLyAxMDAsXG4gICAgICAgICAgc291cmNlOiAncmdiJyxcbiAgICAgICAgfSxcbiAgICAgICAgJGV2ZW50LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChkYXRhLmggfHwgZGF0YS5zIHx8IGRhdGEubCkge1xuICAgICAgY29uc3QgcyA9IGRhdGEucyAmJiBkYXRhLnMucmVwbGFjZSgnJScsICcnKTtcbiAgICAgIGNvbnN0IGwgPSBkYXRhLmwgJiYgZGF0YS5sLnJlcGxhY2UoJyUnLCAnJyk7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgaDogZGF0YS5oIHx8IHRoaXMuaHNsLmgsXG4gICAgICAgICAgczogTnVtYmVyKHMgfHwgdGhpcy5oc2wucyksXG4gICAgICAgICAgbDogTnVtYmVyKGwgfHwgdGhpcy5oc2wubCksXG4gICAgICAgICAgc291cmNlOiAnaHNsJyxcbiAgICAgICAgfSxcbiAgICAgICAgJGV2ZW50LFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=