ngx-color 7.1.0 → 7.3.2
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.
- package/alpha/alpha-picker.component.d.ts +8 -0
- package/alpha/ngx-color-alpha.d.ts +2 -1
- package/alpha/package.json +6 -10
- package/alpha/public_api.d.ts +1 -0
- package/alpha.component.d.ts +9 -0
- package/block/block-swatches.component.d.ts +13 -8
- package/block/block.component.d.ts +9 -0
- package/block/ngx-color-block.d.ts +2 -2
- package/block/package.json +6 -10
- package/block/public_api.d.ts +2 -0
- package/checkboard.component.d.ts +7 -0
- package/chrome/chrome-fields.component.d.ts +3 -0
- package/chrome/chrome.component.d.ts +9 -0
- package/chrome/ngx-color-chrome.d.ts +2 -2
- package/chrome/package.json +6 -10
- package/chrome/public_api.d.ts +2 -0
- package/circle/circle-swatch.component.d.ts +3 -0
- package/circle/circle.component.d.ts +9 -0
- package/circle/ngx-color-circle.d.ts +2 -2
- package/circle/package.json +9 -10
- package/circle/public_api.d.ts +2 -0
- package/color-wrap.component.d.ts +7 -0
- package/compact/compact-color.component.d.ts +3 -0
- package/compact/compact-fields.component.d.ts +3 -0
- package/compact/compact.component.d.ts +10 -0
- package/compact/ngx-color-compact.d.ts +2 -3
- package/compact/package.json +6 -10
- package/compact/public_api.d.ts +3 -0
- package/coordinates.directive.d.ts +6 -0
- package/editable-input.component.d.ts +7 -0
- package/esm2020/alpha/alpha-picker.component.mjs +116 -0
- package/esm2020/alpha/ngx-color-alpha.mjs +5 -0
- package/esm2020/alpha/public_api.mjs +2 -0
- package/esm2020/alpha.component.mjs +186 -0
- package/esm2020/block/block-swatches.component.mjs +74 -0
- package/esm2020/block/block.component.mjs +199 -0
- package/esm2020/block/ngx-color-block.mjs +5 -0
- package/esm2020/block/public_api.mjs +3 -0
- package/esm2020/checkboard.component.mjs +66 -0
- package/esm2020/chrome/chrome-fields.component.mjs +356 -0
- package/esm2020/chrome/chrome.component.mjs +249 -0
- package/esm2020/chrome/ngx-color-chrome.mjs +5 -0
- package/esm2020/chrome/public_api.mjs +3 -0
- package/esm2020/circle/circle-swatch.component.mjs +85 -0
- package/esm2020/circle/circle.component.mjs +148 -0
- package/esm2020/circle/ngx-color-circle.mjs +5 -0
- package/esm2020/circle/public_api.mjs +3 -0
- package/esm2020/color-wrap.component.mjs +163 -0
- package/esm2020/compact/compact-color.component.mjs +91 -0
- package/esm2020/compact/compact-fields.component.mjs +186 -0
- package/esm2020/compact/compact.component.mjs +177 -0
- package/esm2020/compact/ngx-color-compact.mjs +5 -0
- package/esm2020/compact/public_api.mjs +4 -0
- package/esm2020/coordinates.directive.mjs +104 -0
- package/esm2020/editable-input.component.mjs +217 -0
- package/esm2020/github/github-swatch.component.mjs +67 -0
- package/esm2020/github/github.component.mjs +179 -0
- package/esm2020/github/ngx-color-github.mjs +5 -0
- package/esm2020/github/public_api.mjs +3 -0
- package/esm2020/helpers/checkboard.mjs +33 -0
- package/esm2020/helpers/color.interfaces.mjs +2 -0
- package/esm2020/helpers/color.mjs +60 -0
- package/esm2020/hue/hue-picker.component.mjs +113 -0
- package/esm2020/hue/ngx-color-hue.mjs +5 -0
- package/esm2020/hue/public_api.mjs +2 -0
- package/esm2020/hue.component.mjs +165 -0
- package/esm2020/material/material.component.mjs +211 -0
- package/esm2020/material/ngx-color-material.mjs +5 -0
- package/esm2020/material/public_api.mjs +2 -0
- package/esm2020/ngx-color.mjs +5 -0
- package/esm2020/photoshop/ngx-color-photoshop.mjs +5 -0
- package/esm2020/photoshop/photoshop-button.component.mjs +63 -0
- package/esm2020/photoshop/photoshop-fields.component.mjs +241 -0
- package/esm2020/photoshop/photoshop-previews.component.mjs +68 -0
- package/esm2020/photoshop/photoshop.component.mjs +258 -0
- package/esm2020/photoshop/public_api.mjs +5 -0
- package/esm2020/public_api.mjs +14 -0
- package/esm2020/raised.component.mjs +89 -0
- package/esm2020/saturation.component.mjs +136 -0
- package/esm2020/shade/ngx-color-shade.mjs +5 -0
- package/esm2020/shade/public_api.mjs +2 -0
- package/esm2020/shade/shade-picker.component.mjs +105 -0
- package/esm2020/shade.component.mjs +165 -0
- package/esm2020/sketch/ngx-color-sketch.mjs +5 -0
- package/esm2020/sketch/public_api.mjs +4 -0
- package/esm2020/sketch/sketch-fields.component.mjs +243 -0
- package/esm2020/sketch/sketch-preset-colors.component.mjs +98 -0
- package/esm2020/sketch/sketch.component.mjs +283 -0
- package/esm2020/slider/ngx-color-slider.mjs +5 -0
- package/esm2020/slider/public_api.mjs +4 -0
- package/esm2020/slider/slider-swatch.component.mjs +80 -0
- package/esm2020/slider/slider-swatches.component.mjs +135 -0
- package/esm2020/slider/slider.component.mjs +116 -0
- package/esm2020/swatch.component.mjs +125 -0
- package/esm2020/swatches/ngx-color-swatches.mjs +5 -0
- package/esm2020/swatches/public_api.mjs +4 -0
- package/esm2020/swatches/swatches-color.component.mjs +123 -0
- package/esm2020/swatches/swatches-group.component.mjs +64 -0
- package/esm2020/swatches/swatches.component.mjs +258 -0
- package/esm2020/twitter/ngx-color-twitter.mjs +5 -0
- package/esm2020/twitter/public_api.mjs +2 -0
- package/esm2020/twitter/twitter.component.mjs +255 -0
- package/fesm2015/ngx-color-alpha.mjs +123 -0
- package/fesm2015/ngx-color-alpha.mjs.map +1 -0
- package/fesm2015/ngx-color-block.mjs +275 -0
- package/fesm2015/ngx-color-block.mjs.map +1 -0
- package/fesm2015/ngx-color-chrome.mjs +606 -0
- package/fesm2015/ngx-color-chrome.mjs.map +1 -0
- package/fesm2015/ngx-color-circle.mjs +237 -0
- package/fesm2015/ngx-color-circle.mjs.map +1 -0
- package/fesm2015/ngx-color-compact.mjs +451 -0
- package/fesm2015/ngx-color-compact.mjs.map +1 -0
- package/fesm2015/ngx-color-github.mjs +250 -0
- package/fesm2015/ngx-color-github.mjs.map +1 -0
- package/fesm2015/ngx-color-hue.mjs +120 -0
- package/fesm2015/ngx-color-hue.mjs.map +1 -0
- package/fesm2015/ngx-color-material.mjs +218 -0
- package/fesm2015/ngx-color-material.mjs.map +1 -0
- package/fesm2015/ngx-color-photoshop.mjs +626 -0
- package/fesm2015/ngx-color-photoshop.mjs.map +1 -0
- package/fesm2015/ngx-color-shade.mjs +112 -0
- package/fesm2015/ngx-color-shade.mjs.map +1 -0
- package/fesm2015/ngx-color-sketch.mjs +620 -0
- package/fesm2015/ngx-color-sketch.mjs.map +1 -0
- package/fesm2015/ngx-color-slider.mjs +331 -0
- package/fesm2015/ngx-color-slider.mjs.map +1 -0
- package/fesm2015/ngx-color-swatches.mjs +441 -0
- package/fesm2015/ngx-color-swatches.mjs.map +1 -0
- package/fesm2015/ngx-color-twitter.mjs +262 -0
- package/fesm2015/ngx-color-twitter.mjs.map +1 -0
- package/fesm2015/ngx-color.mjs +1461 -0
- package/fesm2015/ngx-color.mjs.map +1 -0
- package/fesm2020/ngx-color-alpha.mjs +123 -0
- package/fesm2020/ngx-color-alpha.mjs.map +1 -0
- package/fesm2020/ngx-color-block.mjs +275 -0
- package/fesm2020/ngx-color-block.mjs.map +1 -0
- package/fesm2020/ngx-color-chrome.mjs +606 -0
- package/fesm2020/ngx-color-chrome.mjs.map +1 -0
- package/fesm2020/ngx-color-circle.mjs +237 -0
- package/fesm2020/ngx-color-circle.mjs.map +1 -0
- package/fesm2020/ngx-color-compact.mjs +451 -0
- package/fesm2020/ngx-color-compact.mjs.map +1 -0
- package/fesm2020/ngx-color-github.mjs +250 -0
- package/fesm2020/ngx-color-github.mjs.map +1 -0
- package/fesm2020/ngx-color-hue.mjs +120 -0
- package/fesm2020/ngx-color-hue.mjs.map +1 -0
- package/fesm2020/ngx-color-material.mjs +218 -0
- package/fesm2020/ngx-color-material.mjs.map +1 -0
- package/fesm2020/ngx-color-photoshop.mjs +626 -0
- package/fesm2020/ngx-color-photoshop.mjs.map +1 -0
- package/fesm2020/ngx-color-shade.mjs +112 -0
- package/fesm2020/ngx-color-shade.mjs.map +1 -0
- package/fesm2020/ngx-color-sketch.mjs +620 -0
- package/fesm2020/ngx-color-sketch.mjs.map +1 -0
- package/fesm2020/ngx-color-slider.mjs +331 -0
- package/fesm2020/ngx-color-slider.mjs.map +1 -0
- package/fesm2020/ngx-color-swatches.mjs +441 -0
- package/fesm2020/ngx-color-swatches.mjs.map +1 -0
- package/fesm2020/ngx-color-twitter.mjs +262 -0
- package/fesm2020/ngx-color-twitter.mjs.map +1 -0
- package/fesm2020/ngx-color.mjs +1466 -0
- package/fesm2020/ngx-color.mjs.map +1 -0
- package/github/github-swatch.component.d.ts +3 -0
- package/github/github.component.d.ts +9 -0
- package/github/ngx-color-github.d.ts +2 -2
- package/github/package.json +6 -10
- package/github/public_api.d.ts +2 -0
- package/hue/hue-picker.component.d.ts +8 -0
- package/hue/ngx-color-hue.d.ts +2 -1
- package/hue/package.json +6 -10
- package/hue/public_api.d.ts +1 -0
- package/hue.component.d.ts +8 -0
- package/material/material.component.d.ts +8 -0
- package/material/ngx-color-material.d.ts +2 -1
- package/material/package.json +6 -10
- package/material/public_api.d.ts +1 -0
- package/ngx-color.d.ts +1 -0
- package/package.json +132 -9
- package/photoshop/ngx-color-photoshop.d.ts +2 -4
- package/photoshop/package.json +6 -10
- package/photoshop/photoshop-button.component.d.ts +3 -0
- package/photoshop/photoshop-fields.component.d.ts +3 -0
- package/photoshop/photoshop-previews.component.d.ts +3 -0
- package/photoshop/photoshop.component.d.ts +11 -0
- package/photoshop/public_api.d.ts +4 -0
- package/raised.component.d.ts +7 -0
- package/saturation.component.d.ts +8 -0
- package/shade/ngx-color-shade.d.ts +2 -1
- package/shade/package.json +6 -10
- package/shade/public_api.d.ts +1 -0
- package/shade/shade-picker.component.d.ts +8 -0
- package/shade.component.d.ts +8 -0
- package/sketch/ngx-color-sketch.d.ts +2 -3
- package/sketch/package.json +6 -10
- package/sketch/public_api.d.ts +3 -0
- package/sketch/sketch-fields.component.d.ts +3 -0
- package/sketch/sketch-preset-colors.component.d.ts +3 -0
- package/sketch/sketch.component.d.ts +10 -0
- package/slider/ngx-color-slider.d.ts +2 -3
- package/slider/package.json +6 -10
- package/slider/public_api.d.ts +3 -0
- package/slider/slider-swatch.component.d.ts +3 -0
- package/slider/slider-swatches.component.d.ts +3 -0
- package/slider/slider.component.d.ts +10 -0
- package/swatch.component.d.ts +8 -0
- package/swatches/ngx-color-swatches.d.ts +2 -3
- package/swatches/package.json +9 -10
- package/swatches/public_api.d.ts +3 -0
- package/swatches/swatches-color.component.d.ts +3 -0
- package/swatches/swatches-group.component.d.ts +3 -0
- package/swatches/swatches.component.d.ts +10 -0
- package/twitter/ngx-color-twitter.d.ts +2 -1
- package/twitter/package.json +6 -10
- package/twitter/public_api.d.ts +1 -0
- package/twitter/twitter.component.d.ts +8 -0
- package/alpha/bundles/ngx-color-alpha.umd.js +0 -400
- package/alpha/bundles/ngx-color-alpha.umd.js.map +0 -1
- package/alpha/esm2015/alpha-picker.component.js +0 -80
- package/alpha/esm2015/ngx-color-alpha.js +0 -5
- package/alpha/fesm2015/ngx-color-alpha.js +0 -87
- package/alpha/fesm2015/ngx-color-alpha.js.map +0 -1
- package/alpha/ngx-color-alpha.metadata.json +0 -1
- package/block/bundles/ngx-color-block.umd.js +0 -468
- package/block/bundles/ngx-color-block.umd.js.map +0 -1
- package/block/esm2015/block-swatches.component.js +0 -58
- package/block/esm2015/block.component.js +0 -147
- package/block/esm2015/ngx-color-block.js +0 -6
- package/block/fesm2015/ngx-color-block.js +0 -210
- package/block/fesm2015/ngx-color-block.js.map +0 -1
- package/block/ngx-color-block.metadata.json +0 -1
- package/bundles/ngx-color.umd.js +0 -1014
- package/bundles/ngx-color.umd.js.map +0 -1
- package/chrome/bundles/ngx-color-chrome.umd.js +0 -539
- package/chrome/bundles/ngx-color-chrome.umd.js.map +0 -1
- package/chrome/esm2015/chrome-fields.component.js +0 -255
- package/chrome/esm2015/chrome.component.js +0 -169
- package/chrome/esm2015/ngx-color-chrome.js +0 -6
- package/chrome/fesm2015/ngx-color-chrome.js +0 -428
- package/chrome/fesm2015/ngx-color-chrome.js.map +0 -1
- package/chrome/ngx-color-chrome.metadata.json +0 -1
- package/circle/bundles/ngx-color-circle.umd.js +0 -465
- package/circle/bundles/ngx-color-circle.umd.js.map +0 -1
- package/circle/esm2015/circle-swatch.component.js +0 -63
- package/circle/esm2015/circle.component.js +0 -105
- package/circle/esm2015/ngx-color-circle.js +0 -6
- package/circle/fesm2015/ngx-color-circle.js +0 -173
- package/circle/fesm2015/ngx-color-circle.js.map +0 -1
- package/circle/ngx-color-circle.metadata.json +0 -1
- package/compact/bundles/ngx-color-compact.umd.js +0 -575
- package/compact/bundles/ngx-color-compact.umd.js.map +0 -1
- package/compact/esm2015/compact-color.component.js +0 -70
- package/compact/esm2015/compact-fields.component.js +0 -142
- package/compact/esm2015/compact.component.js +0 -131
- package/compact/esm2015/ngx-color-compact.js +0 -7
- package/compact/fesm2015/ngx-color-compact.js +0 -344
- package/compact/fesm2015/ngx-color-compact.js.map +0 -1
- package/compact/ngx-color-compact.metadata.json +0 -1
- package/esm2015/alpha.component.js +0 -156
- package/esm2015/checkboard.component.js +0 -52
- package/esm2015/color-wrap.component.js +0 -145
- package/esm2015/coordinates.directive.js +0 -85
- package/esm2015/editable-input.component.js +0 -183
- package/esm2015/helpers/checkboard.js +0 -33
- package/esm2015/helpers/color.interfaces.js +0 -2
- package/esm2015/helpers/color.js +0 -60
- package/esm2015/hue.component.js +0 -140
- package/esm2015/ngx-color.js +0 -5
- package/esm2015/public_api.js +0 -14
- package/esm2015/raised.component.js +0 -73
- package/esm2015/saturation.component.js +0 -111
- package/esm2015/shade.component.js +0 -127
- package/esm2015/swatch.component.js +0 -85
- package/fesm2015/ngx-color.js +0 -1228
- package/fesm2015/ngx-color.js.map +0 -1
- package/github/bundles/ngx-color-github.umd.js +0 -443
- package/github/bundles/ngx-color-github.umd.js.map +0 -1
- package/github/esm2015/github-swatch.component.js +0 -48
- package/github/esm2015/github.component.js +0 -142
- package/github/esm2015/ngx-color-github.js +0 -6
- package/github/fesm2015/ngx-color-github.js +0 -195
- package/github/fesm2015/ngx-color-github.js.map +0 -1
- package/github/ngx-color-github.metadata.json +0 -1
- package/hue/bundles/ngx-color-hue.umd.js +0 -403
- package/hue/bundles/ngx-color-hue.umd.js.map +0 -1
- package/hue/esm2015/hue-picker.component.js +0 -78
- package/hue/esm2015/ngx-color-hue.js +0 -5
- package/hue/fesm2015/ngx-color-hue.js +0 -85
- package/hue/fesm2015/ngx-color-hue.js.map +0 -1
- package/hue/ngx-color-hue.metadata.json +0 -1
- package/material/bundles/ngx-color-material.umd.js +0 -451
- package/material/bundles/ngx-color-material.umd.js.map +0 -1
- package/material/esm2015/material.component.js +0 -157
- package/material/esm2015/ngx-color-material.js +0 -5
- package/material/fesm2015/ngx-color-material.js +0 -164
- package/material/fesm2015/ngx-color-material.js.map +0 -1
- package/material/ngx-color-material.metadata.json +0 -1
- package/ngx-color.metadata.json +0 -1
- package/photoshop/bundles/ngx-color-photoshop.umd.js +0 -567
- package/photoshop/bundles/ngx-color-photoshop.umd.js.map +0 -1
- package/photoshop/esm2015/ngx-color-photoshop.js +0 -8
- package/photoshop/esm2015/photoshop-button.component.js +0 -50
- package/photoshop/esm2015/photoshop-fields.component.js +0 -180
- package/photoshop/esm2015/photoshop-previews.component.js +0 -53
- package/photoshop/esm2015/photoshop.component.js +0 -177
- package/photoshop/fesm2015/ngx-color-photoshop.js +0 -460
- package/photoshop/fesm2015/ngx-color-photoshop.js.map +0 -1
- package/photoshop/ngx-color-photoshop.metadata.json +0 -1
- package/shade/bundles/ngx-color-shade.umd.js +0 -395
- package/shade/bundles/ngx-color-shade.umd.js.map +0 -1
- package/shade/esm2015/ngx-color-shade.js +0 -5
- package/shade/esm2015/shade-picker.component.js +0 -71
- package/shade/fesm2015/ngx-color-shade.js +0 -78
- package/shade/fesm2015/ngx-color-shade.js.map +0 -1
- package/shade/ngx-color-shade.metadata.json +0 -1
- package/sketch/bundles/ngx-color-sketch.umd.js +0 -581
- package/sketch/bundles/ngx-color-sketch.umd.js.map +0 -1
- package/sketch/esm2015/ngx-color-sketch.js +0 -7
- package/sketch/esm2015/sketch-fields.component.js +0 -181
- package/sketch/esm2015/sketch-preset-colors.component.js +0 -76
- package/sketch/esm2015/sketch.component.js +0 -199
- package/sketch/fesm2015/ngx-color-sketch.js +0 -458
- package/sketch/fesm2015/ngx-color-sketch.js.map +0 -1
- package/sketch/ngx-color-sketch.metadata.json +0 -1
- package/slider/bundles/ngx-color-slider.umd.js +0 -466
- package/slider/bundles/ngx-color-slider.umd.js.map +0 -1
- package/slider/esm2015/ngx-color-slider.js +0 -7
- package/slider/esm2015/slider-swatch.component.js +0 -65
- package/slider/esm2015/slider-swatches.component.js +0 -84
- package/slider/esm2015/slider.component.js +0 -77
- package/slider/fesm2015/ngx-color-slider.js +0 -229
- package/slider/fesm2015/ngx-color-slider.js.map +0 -1
- package/slider/ngx-color-slider.metadata.json +0 -1
- package/swatches/bundles/ngx-color-swatches.umd.js +0 -608
- package/swatches/bundles/ngx-color-swatches.umd.js.map +0 -1
- package/swatches/esm2015/ngx-color-swatches.js +0 -7
- package/swatches/esm2015/swatches-color.component.js +0 -90
- package/swatches/esm2015/swatches-group.component.js +0 -42
- package/swatches/esm2015/swatches.component.js +0 -213
- package/swatches/fesm2015/ngx-color-swatches.js +0 -347
- package/swatches/fesm2015/ngx-color-swatches.js.map +0 -1
- package/swatches/ngx-color-swatches.metadata.json +0 -1
- package/twitter/bundles/ngx-color-twitter.umd.js +0 -429
- package/twitter/bundles/ngx-color-twitter.umd.js.map +0 -1
- package/twitter/esm2015/ngx-color-twitter.js +0 -5
- package/twitter/esm2015/twitter.component.js +0 -203
- package/twitter/fesm2015/ngx-color-twitter.js +0 -210
- package/twitter/fesm2015/ngx-color-twitter.js.map +0 -1
- package/twitter/ngx-color-twitter.metadata.json +0 -1
@@ -0,0 +1,243 @@
|
|
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 SketchFieldsComponent {
|
8
|
+
constructor() {
|
9
|
+
this.disableAlpha = false;
|
10
|
+
this.onChange = new EventEmitter();
|
11
|
+
this.input = {
|
12
|
+
width: '100%',
|
13
|
+
padding: '4px 10% 3px',
|
14
|
+
border: 'none',
|
15
|
+
boxSizing: 'border-box',
|
16
|
+
boxShadow: 'inset 0 0 0 1px #ccc',
|
17
|
+
fontSize: '11px',
|
18
|
+
};
|
19
|
+
this.label = {
|
20
|
+
display: 'block',
|
21
|
+
textAlign: 'center',
|
22
|
+
fontSize: '11px',
|
23
|
+
color: '#222',
|
24
|
+
paddingTop: '3px',
|
25
|
+
paddingBottom: '4px',
|
26
|
+
textTransform: 'capitalize',
|
27
|
+
};
|
28
|
+
}
|
29
|
+
round(value) {
|
30
|
+
return Math.round(value);
|
31
|
+
}
|
32
|
+
handleChange({ data, $event }) {
|
33
|
+
if (data.hex) {
|
34
|
+
if (isValidHex(data.hex)) {
|
35
|
+
const color = new TinyColor(data.hex);
|
36
|
+
this.onChange.emit({
|
37
|
+
data: {
|
38
|
+
hex: this.disableAlpha || data.hex.length <= 6 ? color.toHex() : color.toHex8(),
|
39
|
+
source: 'hex',
|
40
|
+
},
|
41
|
+
$event,
|
42
|
+
});
|
43
|
+
}
|
44
|
+
}
|
45
|
+
else if (data.r || data.g || data.b) {
|
46
|
+
this.onChange.emit({
|
47
|
+
data: {
|
48
|
+
r: data.r || this.rgb.r,
|
49
|
+
g: data.g || this.rgb.g,
|
50
|
+
b: data.b || this.rgb.b,
|
51
|
+
source: 'rgb',
|
52
|
+
},
|
53
|
+
$event,
|
54
|
+
});
|
55
|
+
}
|
56
|
+
else if (data.a) {
|
57
|
+
if (data.a < 0) {
|
58
|
+
data.a = 0;
|
59
|
+
}
|
60
|
+
else if (data.a > 100) {
|
61
|
+
data.a = 100;
|
62
|
+
}
|
63
|
+
data.a /= 100;
|
64
|
+
if (this.disableAlpha) {
|
65
|
+
data.a = 1;
|
66
|
+
}
|
67
|
+
this.onChange.emit({
|
68
|
+
data: {
|
69
|
+
h: this.hsl.h,
|
70
|
+
s: this.hsl.s,
|
71
|
+
l: this.hsl.l,
|
72
|
+
a: Math.round(data.a * 100) / 100,
|
73
|
+
source: 'rgb',
|
74
|
+
},
|
75
|
+
$event,
|
76
|
+
});
|
77
|
+
}
|
78
|
+
else if (data.h || data.s || data.l) {
|
79
|
+
this.onChange.emit({
|
80
|
+
data: {
|
81
|
+
h: data.h || this.hsl.h,
|
82
|
+
s: Number((data.s && data.s) || this.hsl.s),
|
83
|
+
l: Number((data.l && data.l) || this.hsl.l),
|
84
|
+
source: 'hsl',
|
85
|
+
},
|
86
|
+
$event,
|
87
|
+
});
|
88
|
+
}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
SketchFieldsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchFieldsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
92
|
+
SketchFieldsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: SketchFieldsComponent, selector: "color-sketch-fields", inputs: { hsl: "hsl", rgb: "rgb", hex: "hex", disableAlpha: "disableAlpha" }, outputs: { onChange: "onChange" }, ngImport: i0, template: `
|
93
|
+
<div class="sketch-fields">
|
94
|
+
<div class="sketch-double">
|
95
|
+
<color-editable-input
|
96
|
+
[style]="{ input: input, label: label }"
|
97
|
+
label="hex"
|
98
|
+
[value]="hex.replace('#', '')"
|
99
|
+
(onChange)="handleChange($event)"
|
100
|
+
></color-editable-input>
|
101
|
+
</div>
|
102
|
+
<div class="sketch-single">
|
103
|
+
<color-editable-input
|
104
|
+
[style]="{ input: input, label: label }"
|
105
|
+
label="r"
|
106
|
+
[value]="rgb.r"
|
107
|
+
(onChange)="handleChange($event)"
|
108
|
+
[dragLabel]="true"
|
109
|
+
[dragMax]="255"
|
110
|
+
></color-editable-input>
|
111
|
+
</div>
|
112
|
+
<div class="sketch-single">
|
113
|
+
<color-editable-input
|
114
|
+
[style]="{ input: input, label: label }"
|
115
|
+
label="g"
|
116
|
+
[value]="rgb.g"
|
117
|
+
(onChange)="handleChange($event)"
|
118
|
+
[dragLabel]="true"
|
119
|
+
[dragMax]="255"
|
120
|
+
></color-editable-input>
|
121
|
+
</div>
|
122
|
+
<div class="sketch-single">
|
123
|
+
<color-editable-input
|
124
|
+
[style]="{ input: input, label: label }"
|
125
|
+
label="b"
|
126
|
+
[value]="rgb.b"
|
127
|
+
(onChange)="handleChange($event)"
|
128
|
+
[dragLabel]="true"
|
129
|
+
[dragMax]="255"
|
130
|
+
></color-editable-input>
|
131
|
+
</div>
|
132
|
+
<div class="sketch-alpha" *ngIf="disableAlpha === false">
|
133
|
+
<color-editable-input
|
134
|
+
[style]="{ input: input, label: label }"
|
135
|
+
label="a"
|
136
|
+
[value]="round(rgb.a * 100)"
|
137
|
+
(onChange)="handleChange($event)"
|
138
|
+
[dragLabel]="true"
|
139
|
+
[dragMax]="100"
|
140
|
+
></color-editable-input>
|
141
|
+
</div>
|
142
|
+
</div>
|
143
|
+
`, isInline: true, styles: [".sketch-fields{display:flex;padding-top:4px}.sketch-double{flex:2 1 0%}.sketch-single{flex:1 1 0%;padding-left:6px}.sketch-alpha{flex:1 1 0%;padding-left:6px}:host-context([dir=rtl]) .sketch-single{padding-right:6px;padding-left:0}:host-context([dir=rtl]) .sketch-alpha{padding-right:6px;padding-left:0}\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 });
|
144
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchFieldsComponent, decorators: [{
|
145
|
+
type: Component,
|
146
|
+
args: [{
|
147
|
+
selector: 'color-sketch-fields',
|
148
|
+
template: `
|
149
|
+
<div class="sketch-fields">
|
150
|
+
<div class="sketch-double">
|
151
|
+
<color-editable-input
|
152
|
+
[style]="{ input: input, label: label }"
|
153
|
+
label="hex"
|
154
|
+
[value]="hex.replace('#', '')"
|
155
|
+
(onChange)="handleChange($event)"
|
156
|
+
></color-editable-input>
|
157
|
+
</div>
|
158
|
+
<div class="sketch-single">
|
159
|
+
<color-editable-input
|
160
|
+
[style]="{ input: input, label: label }"
|
161
|
+
label="r"
|
162
|
+
[value]="rgb.r"
|
163
|
+
(onChange)="handleChange($event)"
|
164
|
+
[dragLabel]="true"
|
165
|
+
[dragMax]="255"
|
166
|
+
></color-editable-input>
|
167
|
+
</div>
|
168
|
+
<div class="sketch-single">
|
169
|
+
<color-editable-input
|
170
|
+
[style]="{ input: input, label: label }"
|
171
|
+
label="g"
|
172
|
+
[value]="rgb.g"
|
173
|
+
(onChange)="handleChange($event)"
|
174
|
+
[dragLabel]="true"
|
175
|
+
[dragMax]="255"
|
176
|
+
></color-editable-input>
|
177
|
+
</div>
|
178
|
+
<div class="sketch-single">
|
179
|
+
<color-editable-input
|
180
|
+
[style]="{ input: input, label: label }"
|
181
|
+
label="b"
|
182
|
+
[value]="rgb.b"
|
183
|
+
(onChange)="handleChange($event)"
|
184
|
+
[dragLabel]="true"
|
185
|
+
[dragMax]="255"
|
186
|
+
></color-editable-input>
|
187
|
+
</div>
|
188
|
+
<div class="sketch-alpha" *ngIf="disableAlpha === false">
|
189
|
+
<color-editable-input
|
190
|
+
[style]="{ input: input, label: label }"
|
191
|
+
label="a"
|
192
|
+
[value]="round(rgb.a * 100)"
|
193
|
+
(onChange)="handleChange($event)"
|
194
|
+
[dragLabel]="true"
|
195
|
+
[dragMax]="100"
|
196
|
+
></color-editable-input>
|
197
|
+
</div>
|
198
|
+
</div>
|
199
|
+
`,
|
200
|
+
styles: [
|
201
|
+
`
|
202
|
+
.sketch-fields {
|
203
|
+
display: flex;
|
204
|
+
padding-top: 4px;
|
205
|
+
}
|
206
|
+
.sketch-double {
|
207
|
+
-webkit-box-flex: 2;
|
208
|
+
flex: 2 1 0%;
|
209
|
+
}
|
210
|
+
.sketch-single {
|
211
|
+
flex: 1 1 0%;
|
212
|
+
padding-left: 6px;
|
213
|
+
}
|
214
|
+
.sketch-alpha {
|
215
|
+
-webkit-box-flex: 1;
|
216
|
+
flex: 1 1 0%;
|
217
|
+
padding-left: 6px;
|
218
|
+
}
|
219
|
+
:host-context([dir=rtl]) .sketch-single {
|
220
|
+
padding-right: 6px;
|
221
|
+
padding-left: 0;
|
222
|
+
}
|
223
|
+
:host-context([dir=rtl]) .sketch-alpha {
|
224
|
+
padding-right: 6px;
|
225
|
+
padding-left: 0;
|
226
|
+
}
|
227
|
+
`,
|
228
|
+
],
|
229
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
230
|
+
preserveWhitespaces: false,
|
231
|
+
}]
|
232
|
+
}], propDecorators: { hsl: [{
|
233
|
+
type: Input
|
234
|
+
}], rgb: [{
|
235
|
+
type: Input
|
236
|
+
}], hex: [{
|
237
|
+
type: Input
|
238
|
+
}], disableAlpha: [{
|
239
|
+
type: Input
|
240
|
+
}], onChange: [{
|
241
|
+
type: Output
|
242
|
+
}] } });
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tldGNoLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3NrZXRjaC9za2V0Y2gtZmllbGRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsVUFBVSxFQUFjLE1BQU0sV0FBVyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQXdGNUMsTUFBTSxPQUFPLHFCQUFxQjtJQXRGbEM7UUEwRlcsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDN0MsVUFBSyxHQUE0QjtZQUMvQixLQUFLLEVBQUUsTUFBTTtZQUNiLE9BQU8sRUFBRSxhQUFhO1lBQ3RCLE1BQU0sRUFBRSxNQUFNO1lBQ2QsU0FBUyxFQUFFLFlBQVk7WUFDdkIsU0FBUyxFQUFFLHNCQUFzQjtZQUNqQyxRQUFRLEVBQUUsTUFBTTtTQUNqQixDQUFDO1FBQ0YsVUFBSyxHQUE0QjtZQUMvQixPQUFPLEVBQUUsT0FBTztZQUNoQixTQUFTLEVBQUUsUUFBUTtZQUNuQixRQUFRLEVBQUUsTUFBTTtZQUNoQixLQUFLLEVBQUUsTUFBTTtZQUNiLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLGFBQWEsRUFBRSxZQUFZO1NBQzVCLENBQUM7S0E2REg7SUEzREMsS0FBSyxDQUFDLEtBQUs7UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUNELFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7UUFDM0IsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFO1lB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O0lBQ0gsQ0FBQzs7a0hBbEZVLHFCQUFxQjtzR0FBckIscUJBQXFCLDRLQXBGdEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1EVDsyRkFpQ1UscUJBQXFCO2tCQXRGakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1EVDtvQkFDRCxNQUFNLEVBQUU7d0JBQ047Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMEJEO3FCQUNBO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxtQkFBbUIsRUFBRSxLQUFLO2lCQUMzQjs4QkFFVSxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBpc1ZhbGlkSGV4LCBIU0xBLCBSR0JBIH0gZnJvbSAnbmd4LWNvbG9yJztcbmltcG9ydCB7IFRpbnlDb2xvciB9IGZyb20gJ0BjdHJsL3Rpbnljb2xvcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NvbG9yLXNrZXRjaC1maWVsZHMnLFxuICB0ZW1wbGF0ZTogYFxuICA8ZGl2IGNsYXNzPVwic2tldGNoLWZpZWxkc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtZG91YmxlXCI+XG4gICAgICA8Y29sb3ItZWRpdGFibGUtaW5wdXRcbiAgICAgICAgW3N0eWxlXT1cInsgaW5wdXQ6IGlucHV0LCBsYWJlbDogbGFiZWwgfVwiXG4gICAgICAgIGxhYmVsPVwiaGV4XCJcbiAgICAgICAgW3ZhbHVlXT1cImhleC5yZXBsYWNlKCcjJywgJycpXCJcbiAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgID48L2NvbG9yLWVkaXRhYmxlLWlucHV0PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtc2luZ2xlXCI+XG4gICAgICA8Y29sb3ItZWRpdGFibGUtaW5wdXRcbiAgICAgICAgW3N0eWxlXT1cInsgaW5wdXQ6IGlucHV0LCBsYWJlbDogbGFiZWwgfVwiXG4gICAgICAgIGxhYmVsPVwiclwiXG4gICAgICAgIFt2YWx1ZV09XCJyZ2IuclwiXG4gICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtkcmFnTGFiZWxdPVwidHJ1ZVwiXG4gICAgICAgIFtkcmFnTWF4XT1cIjI1NVwiXG4gICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2tldGNoLXNpbmdsZVwiPlxuICAgICAgPGNvbG9yLWVkaXRhYmxlLWlucHV0XG4gICAgICAgIFtzdHlsZV09XCJ7IGlucHV0OiBpbnB1dCwgbGFiZWw6IGxhYmVsIH1cIlxuICAgICAgICBsYWJlbD1cImdcIlxuICAgICAgICBbdmFsdWVdPVwicmdiLmdcIlxuICAgICAgICAob25DaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbZHJhZ0xhYmVsXT1cInRydWVcIlxuICAgICAgICBbZHJhZ01heF09XCIyNTVcIlxuICAgICAgPjwvY29sb3ItZWRpdGFibGUtaW5wdXQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNrZXRjaC1zaW5nbGVcIj5cbiAgICAgIDxjb2xvci1lZGl0YWJsZS1pbnB1dFxuICAgICAgICBbc3R5bGVdPVwieyBpbnB1dDogaW5wdXQsIGxhYmVsOiBsYWJlbCB9XCJcbiAgICAgICAgbGFiZWw9XCJiXCJcbiAgICAgICAgW3ZhbHVlXT1cInJnYi5iXCJcbiAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2RyYWdMYWJlbF09XCJ0cnVlXCJcbiAgICAgICAgW2RyYWdNYXhdPVwiMjU1XCJcbiAgICAgID48L2NvbG9yLWVkaXRhYmxlLWlucHV0PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtYWxwaGFcIiAqbmdJZj1cImRpc2FibGVBbHBoYSA9PT0gZmFsc2VcIj5cbiAgICAgIDxjb2xvci1lZGl0YWJsZS1pbnB1dFxuICAgICAgICBbc3R5bGVdPVwieyBpbnB1dDogaW5wdXQsIGxhYmVsOiBsYWJlbCB9XCJcbiAgICAgICAgbGFiZWw9XCJhXCJcbiAgICAgICAgW3ZhbHVlXT1cInJvdW5kKHJnYi5hICogMTAwKVwiXG4gICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtkcmFnTGFiZWxdPVwidHJ1ZVwiXG4gICAgICAgIFtkcmFnTWF4XT1cIjEwMFwiXG4gICAgICA+PC9jb2xvci1lZGl0YWJsZS1pbnB1dD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAuc2tldGNoLWZpZWxkcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZy10b3A6IDRweDtcbiAgICB9XG4gICAgLnNrZXRjaC1kb3VibGUge1xuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMjtcbiAgICAgIGZsZXg6IDIgMSAwJTtcbiAgICB9XG4gICAgLnNrZXRjaC1zaW5nbGUge1xuICAgICAgZmxleDogMSAxIDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgfVxuICAgIC5za2V0Y2gtYWxwaGEge1xuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xuICAgIH1cbiAgICA6aG9zdC1jb250ZXh0KFtkaXI9cnRsXSkgLnNrZXRjaC1zaW5nbGUge1xuICAgICAgcGFkZGluZy1yaWdodDogNnB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICA6aG9zdC1jb250ZXh0KFtkaXI9cnRsXSkgLnNrZXRjaC1hbHBoYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICBgLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFNrZXRjaEZpZWxkc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGhzbCE6IEhTTEE7XG4gIEBJbnB1dCgpIHJnYiE6IFJHQkE7XG4gIEBJbnB1dCgpIGhleCE6IHN0cmluZztcbiAgQElucHV0KCkgZGlzYWJsZUFscGhhID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBpbnB1dDoge1trZXk6IHN0cmluZ106IHN0cmluZ30gPSB7XG4gICAgd2lkdGg6ICcxMDAlJyxcbiAgICBwYWRkaW5nOiAnNHB4IDEwJSAzcHgnLFxuICAgIGJvcmRlcjogJ25vbmUnLFxuICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxuICAgIGJveFNoYWRvdzogJ2luc2V0IDAgMCAwIDFweCAjY2NjJyxcbiAgICBmb250U2l6ZTogJzExcHgnLFxuICB9O1xuICBsYWJlbDoge1trZXk6IHN0cmluZ106IHN0cmluZ30gPSB7XG4gICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICB0ZXh0QWxpZ246ICdjZW50ZXInLFxuICAgIGZvbnRTaXplOiAnMTFweCcsXG4gICAgY29sb3I6ICcjMjIyJyxcbiAgICBwYWRkaW5nVG9wOiAnM3B4JyxcbiAgICBwYWRkaW5nQm90dG9tOiAnNHB4JyxcbiAgICB0ZXh0VHJhbnNmb3JtOiAnY2FwaXRhbGl6ZScsXG4gIH07XG5cbiAgcm91bmQodmFsdWUpIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZCh2YWx1ZSk7XG4gIH1cbiAgaGFuZGxlQ2hhbmdlKHsgZGF0YSwgJGV2ZW50IH0pIHtcbiAgICBpZiAoZGF0YS5oZXgpIHtcbiAgICAgIGlmIChpc1ZhbGlkSGV4KGRhdGEuaGV4KSkge1xuICAgICAgICBjb25zdCBjb2xvciA9IG5ldyBUaW55Q29sb3IoZGF0YS5oZXgpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgIGhleDogdGhpcy5kaXNhYmxlQWxwaGEgfHwgZGF0YS5oZXgubGVuZ3RoIDw9IDYgPyBjb2xvci50b0hleCgpIDogY29sb3IudG9IZXg4KCksXG4gICAgICAgICAgICBzb3VyY2U6ICdoZXgnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgJGV2ZW50LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGRhdGEuciB8fCBkYXRhLmcgfHwgZGF0YS5iKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgcjogZGF0YS5yIHx8IHRoaXMucmdiLnIsXG4gICAgICAgICAgZzogZGF0YS5nIHx8IHRoaXMucmdiLmcsXG4gICAgICAgICAgYjogZGF0YS5iIHx8IHRoaXMucmdiLmIsXG4gICAgICAgICAgc291cmNlOiAncmdiJyxcbiAgICAgICAgfSxcbiAgICAgICAgJGV2ZW50LFxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChkYXRhLmEpIHtcbiAgICAgIGlmIChkYXRhLmEgPCAwKSB7XG4gICAgICAgIGRhdGEuYSA9IDA7XG4gICAgICB9IGVsc2UgaWYgKGRhdGEuYSA+IDEwMCkge1xuICAgICAgICBkYXRhLmEgPSAxMDA7XG4gICAgICB9XG4gICAgICBkYXRhLmEgLz0gMTAwO1xuXG4gICAgICBpZiAodGhpcy5kaXNhYmxlQWxwaGEpIHtcbiAgICAgICAgZGF0YS5hID0gMTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHtcbiAgICAgICAgZGF0YToge1xuICAgICAgICAgIGg6IHRoaXMuaHNsLmgsXG4gICAgICAgICAgczogdGhpcy5oc2wucyxcbiAgICAgICAgICBsOiB0aGlzLmhzbC5sLFxuICAgICAgICAgIGE6IE1hdGgucm91bmQoZGF0YS5hICogMTAwKSAvIDEwMCxcbiAgICAgICAgICBzb3VyY2U6ICdyZ2InLFxuICAgICAgICB9LFxuICAgICAgICAkZXZlbnQsXG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGRhdGEuaCB8fCBkYXRhLnMgfHwgZGF0YS5sKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoe1xuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgaDogZGF0YS5oIHx8IHRoaXMuaHNsLmgsXG4gICAgICAgICAgczogTnVtYmVyKChkYXRhLnMgJiYgZGF0YS5zKSB8fCB0aGlzLmhzbC5zKSxcbiAgICAgICAgICBsOiBOdW1iZXIoKGRhdGEubCAmJiBkYXRhLmwpIHx8IHRoaXMuaHNsLmwpLFxuICAgICAgICAgIHNvdXJjZTogJ2hzbCcsXG4gICAgICAgIH0sXG4gICAgICAgICRldmVudCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
@@ -0,0 +1,98 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "ngx-color";
|
4
|
+
import * as i2 from "@angular/common";
|
5
|
+
export class SketchPresetColorsComponent {
|
6
|
+
constructor() {
|
7
|
+
this.onClick = new EventEmitter();
|
8
|
+
this.onSwatchHover = new EventEmitter();
|
9
|
+
this.swatchStyle = {
|
10
|
+
borderRadius: '3px',
|
11
|
+
boxShadow: 'inset 0 0 0 1px rgba(0,0,0,.15)',
|
12
|
+
};
|
13
|
+
}
|
14
|
+
handleClick({ hex, $event }) {
|
15
|
+
this.onClick.emit({ hex, $event });
|
16
|
+
}
|
17
|
+
normalizeValue(val) {
|
18
|
+
if (typeof val === 'string') {
|
19
|
+
return { color: val };
|
20
|
+
}
|
21
|
+
return val;
|
22
|
+
}
|
23
|
+
focusStyle(val) {
|
24
|
+
const c = this.normalizeValue(val);
|
25
|
+
return {
|
26
|
+
boxShadow: `inset 0 0 0 1px rgba(0,0,0,.15), 0 0 4px ${c.color}`,
|
27
|
+
};
|
28
|
+
}
|
29
|
+
}
|
30
|
+
SketchPresetColorsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchPresetColorsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
31
|
+
SketchPresetColorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: SketchPresetColorsComponent, selector: "color-sketch-preset-colors", inputs: { colors: "colors" }, outputs: { onClick: "onClick", onSwatchHover: "onSwatchHover" }, ngImport: i0, template: `
|
32
|
+
<div class="sketch-swatches">
|
33
|
+
<div class="sketch-wrap" *ngFor="let c of colors">
|
34
|
+
<color-swatch
|
35
|
+
[color]="normalizeValue(c).color"
|
36
|
+
[style]="swatchStyle"
|
37
|
+
[focusStyle]="focusStyle(c)"
|
38
|
+
(onClick)="handleClick($event)"
|
39
|
+
(onHover)="onSwatchHover.emit($event)"
|
40
|
+
class="swatch"
|
41
|
+
></color-swatch>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
`, isInline: true, styles: [".sketch-swatches{position:relative;display:flex;flex-wrap:wrap;margin:0 -10px;padding:10px 0 0 10px;border-top:1px solid rgb(238,238,238)}.sketch-wrap{width:16px;height:16px;margin:0 10px 10px 0}:host-context([dir=rtl]) .sketch-swatches{padding-right:10px;padding-left:0}:host-context([dir=rtl]) .sketch-wrap{margin-left:10px;margin-right:0}\n"], components: [{ type: i1.SwatchComponent, selector: "color-swatch", inputs: ["color", "style", "focusStyle", "focus"], outputs: ["onClick", "onHover"] }], directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchPresetColorsComponent, decorators: [{
|
46
|
+
type: Component,
|
47
|
+
args: [{
|
48
|
+
selector: 'color-sketch-preset-colors',
|
49
|
+
template: `
|
50
|
+
<div class="sketch-swatches">
|
51
|
+
<div class="sketch-wrap" *ngFor="let c of colors">
|
52
|
+
<color-swatch
|
53
|
+
[color]="normalizeValue(c).color"
|
54
|
+
[style]="swatchStyle"
|
55
|
+
[focusStyle]="focusStyle(c)"
|
56
|
+
(onClick)="handleClick($event)"
|
57
|
+
(onHover)="onSwatchHover.emit($event)"
|
58
|
+
class="swatch"
|
59
|
+
></color-swatch>
|
60
|
+
</div>
|
61
|
+
</div>
|
62
|
+
`,
|
63
|
+
styles: [
|
64
|
+
`
|
65
|
+
.sketch-swatches {
|
66
|
+
position: relative;
|
67
|
+
display: flex;
|
68
|
+
flex-wrap: wrap;
|
69
|
+
margin: 0px -10px;
|
70
|
+
padding: 10px 0px 0px 10px;
|
71
|
+
border-top: 1px solid rgb(238, 238, 238);
|
72
|
+
}
|
73
|
+
.sketch-wrap {
|
74
|
+
width: 16px;
|
75
|
+
height: 16px;
|
76
|
+
margin: 0px 10px 10px 0px;
|
77
|
+
}
|
78
|
+
:host-context([dir=rtl]) .sketch-swatches {
|
79
|
+
padding-right: 10px;
|
80
|
+
padding-left: 0;
|
81
|
+
}
|
82
|
+
:host-context([dir=rtl]) .sketch-wrap {
|
83
|
+
margin-left: 10px;
|
84
|
+
margin-right: 0;
|
85
|
+
}
|
86
|
+
`,
|
87
|
+
],
|
88
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
89
|
+
preserveWhitespaces: false,
|
90
|
+
}]
|
91
|
+
}], propDecorators: { colors: [{
|
92
|
+
type: Input
|
93
|
+
}], onClick: [{
|
94
|
+
type: Output
|
95
|
+
}], onSwatchHover: [{
|
96
|
+
type: Output
|
97
|
+
}] } });
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tldGNoLXByZXNldC1jb2xvcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9za2V0Y2gvc2tldGNoLXByZXNldC1jb2xvcnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDOzs7O0FBZ0R2QixNQUFNLE9BQU8sMkJBQTJCO0lBNUN4QztRQThDWSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNsQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDbEQsZ0JBQVcsR0FBRztZQUNaLFlBQVksRUFBRSxLQUFLO1lBQ25CLFNBQVMsRUFBRSxpQ0FBaUM7U0FDN0MsQ0FBQztLQWlCSDtJQWZDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUU7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBQ0QsY0FBYyxDQUFDLEdBQW1CO1FBQ2hDLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFO1lBQzNCLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUM7U0FDdkI7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFDRCxVQUFVLENBQUMsR0FBbUI7UUFDNUIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQyxPQUFPO1lBQ0wsU0FBUyxFQUFFLDRDQUE0QyxDQUFDLENBQUMsS0FBSyxFQUFFO1NBQ2pFLENBQUM7SUFDSixDQUFDOzt3SEF2QlUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsaUtBMUM1Qjs7Ozs7Ozs7Ozs7OztHQWFUOzJGQTZCVSwyQkFBMkI7a0JBNUN2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztHQWFUO29CQUNELE1BQU0sRUFBRTt3QkFDTjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRDtxQkFDQTtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsbUJBQW1CLEVBQUUsS0FBSztpQkFDM0I7OEJBRVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFNoYXBlIH0gZnJvbSAnbmd4LWNvbG9yJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29sb3Itc2tldGNoLXByZXNldC1jb2xvcnMnLFxuICB0ZW1wbGF0ZTogYFxuICA8ZGl2IGNsYXNzPVwic2tldGNoLXN3YXRjaGVzXCI+XG4gICAgPGRpdiBjbGFzcz1cInNrZXRjaC13cmFwXCIgKm5nRm9yPVwibGV0IGMgb2YgY29sb3JzXCI+XG4gICAgICA8Y29sb3Itc3dhdGNoXG4gICAgICAgIFtjb2xvcl09XCJub3JtYWxpemVWYWx1ZShjKS5jb2xvclwiXG4gICAgICAgIFtzdHlsZV09XCJzd2F0Y2hTdHlsZVwiXG4gICAgICAgIFtmb2N1c1N0eWxlXT1cImZvY3VzU3R5bGUoYylcIlxuICAgICAgICAob25DbGljayk9XCJoYW5kbGVDbGljaygkZXZlbnQpXCJcbiAgICAgICAgKG9uSG92ZXIpPVwib25Td2F0Y2hIb3Zlci5lbWl0KCRldmVudClcIlxuICAgICAgICBjbGFzcz1cInN3YXRjaFwiXG4gICAgICA+PC9jb2xvci1zd2F0Y2g+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgLnNrZXRjaC1zd2F0Y2hlcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwcHggLTEwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDBweCAwcHggMTBweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2IoMjM4LCAyMzgsIDIzOCk7XG4gICAgfVxuICAgIC5za2V0Y2gtd3JhcCB7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG1hcmdpbjogMHB4IDEwcHggMTBweCAwcHg7XG4gICAgfVxuICAgIDpob3N0LWNvbnRleHQoW2Rpcj1ydGxdKSAuc2tldGNoLXN3YXRjaGVzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIDpob3N0LWNvbnRleHQoW2Rpcj1ydGxdKSAuc2tldGNoLXdyYXAge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICBgLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFNrZXRjaFByZXNldENvbG9yc0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbG9ycyE6IHN0cmluZ1tdO1xuICBAT3V0cHV0KCkgb25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgb25Td2F0Y2hIb3ZlciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBzd2F0Y2hTdHlsZSA9IHtcbiAgICBib3JkZXJSYWRpdXM6ICczcHgnLFxuICAgIGJveFNoYWRvdzogJ2luc2V0IDAgMCAwIDFweCByZ2JhKDAsMCwwLC4xNSknLFxuICB9O1xuXG4gIGhhbmRsZUNsaWNrKHsgaGV4LCAkZXZlbnQgfSkge1xuICAgIHRoaXMub25DbGljay5lbWl0KHsgaGV4LCAkZXZlbnQgfSk7XG4gIH1cbiAgbm9ybWFsaXplVmFsdWUodmFsOiBzdHJpbmcgfCBTaGFwZSkge1xuICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHsgY29sb3I6IHZhbCB9O1xuICAgIH1cbiAgICByZXR1cm4gdmFsO1xuICB9XG4gIGZvY3VzU3R5bGUodmFsOiBzdHJpbmcgfCBTaGFwZSkge1xuICAgIGNvbnN0IGMgPSB0aGlzLm5vcm1hbGl6ZVZhbHVlKHZhbCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGJveFNoYWRvdzogYGluc2V0IDAgMCAwIDFweCByZ2JhKDAsMCwwLC4xNSksIDAgMCA0cHggJHtjLmNvbG9yfWAsXG4gICAgfTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,283 @@
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
2
|
+
import { ChangeDetectionStrategy, Component, forwardRef, Input, NgModule } from '@angular/core';
|
3
|
+
import { AlphaModule, CheckboardModule, ColorWrap, EditableInputModule, HueModule, isValidHex, SaturationModule, SwatchModule, } from 'ngx-color';
|
4
|
+
import { SketchFieldsComponent } from './sketch-fields.component';
|
5
|
+
import { SketchPresetColorsComponent } from './sketch-preset-colors.component';
|
6
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
import * as i1 from "ngx-color";
|
9
|
+
import * as i2 from "@angular/common";
|
10
|
+
export class SketchComponent extends ColorWrap {
|
11
|
+
constructor() {
|
12
|
+
super();
|
13
|
+
/** Remove alpha slider and options from picker */
|
14
|
+
this.disableAlpha = false;
|
15
|
+
/** Hex strings for default colors at bottom of picker */
|
16
|
+
this.presetColors = [
|
17
|
+
'#D0021B',
|
18
|
+
'#F5A623',
|
19
|
+
'#F8E71C',
|
20
|
+
'#8B572A',
|
21
|
+
'#7ED321',
|
22
|
+
'#417505',
|
23
|
+
'#BD10E0',
|
24
|
+
'#9013FE',
|
25
|
+
'#4A90E2',
|
26
|
+
'#50E3C2',
|
27
|
+
'#B8E986',
|
28
|
+
'#000000',
|
29
|
+
'#4A4A4A',
|
30
|
+
'#9B9B9B',
|
31
|
+
'#FFFFFF',
|
32
|
+
];
|
33
|
+
/** Width of picker */
|
34
|
+
this.width = 200;
|
35
|
+
}
|
36
|
+
afterValidChange() {
|
37
|
+
const alpha = this.disableAlpha ? 1 : this.rgb.a;
|
38
|
+
this.activeBackground = `rgba(${this.rgb.r}, ${this.rgb.g}, ${this.rgb.b}, ${alpha})`;
|
39
|
+
}
|
40
|
+
handleValueChange({ data, $event }) {
|
41
|
+
this.handleChange(data, $event);
|
42
|
+
}
|
43
|
+
handleBlockChange({ hex, $event }) {
|
44
|
+
if (isValidHex(hex)) {
|
45
|
+
// this.hex = hex;
|
46
|
+
this.handleChange({
|
47
|
+
hex,
|
48
|
+
source: 'hex',
|
49
|
+
}, $event);
|
50
|
+
}
|
51
|
+
}
|
52
|
+
}
|
53
|
+
SketchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
54
|
+
SketchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.0", type: SketchComponent, selector: "color-sketch", inputs: { disableAlpha: "disableAlpha", presetColors: "presetColors", width: "width" }, providers: [
|
55
|
+
{
|
56
|
+
provide: NG_VALUE_ACCESSOR,
|
57
|
+
useExisting: forwardRef(() => SketchComponent),
|
58
|
+
multi: true,
|
59
|
+
},
|
60
|
+
{
|
61
|
+
provide: ColorWrap,
|
62
|
+
useExisting: forwardRef(() => SketchComponent),
|
63
|
+
},
|
64
|
+
], usesInheritance: true, ngImport: i0, template: `
|
65
|
+
<div class="sketch-picker {{ className }}" [style.width]="width">
|
66
|
+
<div class="sketch-saturation">
|
67
|
+
<color-saturation [hsl]="hsl" [hsv]="hsv"
|
68
|
+
(onChange)="handleValueChange($event)"
|
69
|
+
>
|
70
|
+
</color-saturation>
|
71
|
+
</div>
|
72
|
+
<div class="sketch-controls">
|
73
|
+
<div class="sketch-sliders">
|
74
|
+
<div class="sketch-hue">
|
75
|
+
<color-hue [hsl]="hsl"
|
76
|
+
(onChange)="handleValueChange($event)"
|
77
|
+
></color-hue>
|
78
|
+
</div>
|
79
|
+
<div class="sketch-alpha" *ngIf="disableAlpha === false">
|
80
|
+
<color-alpha
|
81
|
+
[radius]="2" [rgb]="rgb" [hsl]="hsl"
|
82
|
+
(onChange)="handleValueChange($event)"
|
83
|
+
></color-alpha>
|
84
|
+
</div>
|
85
|
+
</div>
|
86
|
+
<div class="sketch-color">
|
87
|
+
<color-checkboard></color-checkboard>
|
88
|
+
<div class="sketch-active" [style.background]="activeBackground"></div>
|
89
|
+
</div>
|
90
|
+
</div>
|
91
|
+
<div class="sketch-fields-container">
|
92
|
+
<color-sketch-fields
|
93
|
+
[rgb]="rgb" [hsl]="hsl" [hex]="hex"
|
94
|
+
[disableAlpha]="disableAlpha"
|
95
|
+
(onChange)="handleValueChange($event)"
|
96
|
+
></color-sketch-fields>
|
97
|
+
</div>
|
98
|
+
<div class="sketch-swatches-container" *ngIf="presetColors && presetColors.length">
|
99
|
+
<color-sketch-preset-colors
|
100
|
+
[colors]="presetColors"
|
101
|
+
(onClick)="handleBlockChange($event)"
|
102
|
+
(onSwatchHover)="onSwatchHover.emit($event)"
|
103
|
+
></color-sketch-preset-colors>
|
104
|
+
</div>
|
105
|
+
</div>
|
106
|
+
`, isInline: true, styles: [".sketch-picker{padding:10px 10px 3px;box-sizing:initial;background:#fff;border-radius:4px;box-shadow:0 0 0 1px #00000026,0 8px 16px #00000026}.sketch-saturation{width:100%;padding-bottom:75%;position:relative;overflow:hidden}.sketch-fields-container{display:block}.sketch-swatches-container{display:block}.sketch-controls{display:flex}.sketch-sliders{padding:4px 0;flex:1 1 0%}.sketch-hue{position:relative;height:10px;overflow:hidden}.sketch-alpha{position:relative;height:10px;margin-top:4px;overflow:hidden}.sketch-color{width:24px;height:24px;position:relative;margin-top:4px;margin-left:4px;border-radius:3px}.sketch-active{position:absolute;top:0px;right:0px;bottom:0px;left:0px;border-radius:2px;box-shadow:#00000026 0 0 0 1px inset,#00000040 0 0 4px inset}:host-context([dir=rtl]) .sketch-color{margin-right:4px;margin-left:0}\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 i1.AlphaComponent; }), selector: "color-alpha", inputs: ["hsl", "rgb", "pointer", "shadow", "radius", "direction"], outputs: ["onChange"] }, { type: i0.forwardRef(function () { return i1.CheckboardComponent; }), selector: "color-checkboard", inputs: ["white", "size", "grey", "boxShadow", "borderRadius"] }, { type: i0.forwardRef(function () { return SketchFieldsComponent; }), selector: "color-sketch-fields", inputs: ["hsl", "rgb", "hex", "disableAlpha"], outputs: ["onChange"] }, { type: i0.forwardRef(function () { return SketchPresetColorsComponent; }), selector: "color-sketch-preset-colors", inputs: ["colors"], outputs: ["onClick", "onSwatchHover"] }], directives: [{ type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: SketchComponent, decorators: [{
|
108
|
+
type: Component,
|
109
|
+
args: [{
|
110
|
+
selector: 'color-sketch',
|
111
|
+
template: `
|
112
|
+
<div class="sketch-picker {{ className }}" [style.width]="width">
|
113
|
+
<div class="sketch-saturation">
|
114
|
+
<color-saturation [hsl]="hsl" [hsv]="hsv"
|
115
|
+
(onChange)="handleValueChange($event)"
|
116
|
+
>
|
117
|
+
</color-saturation>
|
118
|
+
</div>
|
119
|
+
<div class="sketch-controls">
|
120
|
+
<div class="sketch-sliders">
|
121
|
+
<div class="sketch-hue">
|
122
|
+
<color-hue [hsl]="hsl"
|
123
|
+
(onChange)="handleValueChange($event)"
|
124
|
+
></color-hue>
|
125
|
+
</div>
|
126
|
+
<div class="sketch-alpha" *ngIf="disableAlpha === false">
|
127
|
+
<color-alpha
|
128
|
+
[radius]="2" [rgb]="rgb" [hsl]="hsl"
|
129
|
+
(onChange)="handleValueChange($event)"
|
130
|
+
></color-alpha>
|
131
|
+
</div>
|
132
|
+
</div>
|
133
|
+
<div class="sketch-color">
|
134
|
+
<color-checkboard></color-checkboard>
|
135
|
+
<div class="sketch-active" [style.background]="activeBackground"></div>
|
136
|
+
</div>
|
137
|
+
</div>
|
138
|
+
<div class="sketch-fields-container">
|
139
|
+
<color-sketch-fields
|
140
|
+
[rgb]="rgb" [hsl]="hsl" [hex]="hex"
|
141
|
+
[disableAlpha]="disableAlpha"
|
142
|
+
(onChange)="handleValueChange($event)"
|
143
|
+
></color-sketch-fields>
|
144
|
+
</div>
|
145
|
+
<div class="sketch-swatches-container" *ngIf="presetColors && presetColors.length">
|
146
|
+
<color-sketch-preset-colors
|
147
|
+
[colors]="presetColors"
|
148
|
+
(onClick)="handleBlockChange($event)"
|
149
|
+
(onSwatchHover)="onSwatchHover.emit($event)"
|
150
|
+
></color-sketch-preset-colors>
|
151
|
+
</div>
|
152
|
+
</div>
|
153
|
+
`,
|
154
|
+
styles: [
|
155
|
+
`
|
156
|
+
.sketch-picker {
|
157
|
+
padding: 10px 10px 3px;
|
158
|
+
box-sizing: initial;
|
159
|
+
background: #fff;
|
160
|
+
border-radius: 4px;
|
161
|
+
box-shadow: 0 0 0 1px rgba(0,0,0,.15), 0 8px 16px rgba(0,0,0,.15);
|
162
|
+
}
|
163
|
+
.sketch-saturation {
|
164
|
+
width: 100%;
|
165
|
+
padding-bottom: 75%;
|
166
|
+
position: relative;
|
167
|
+
overflow: hidden;
|
168
|
+
}
|
169
|
+
.sketch-fields-container {
|
170
|
+
display: block;
|
171
|
+
}
|
172
|
+
.sketch-swatches-container {
|
173
|
+
display: block;
|
174
|
+
}
|
175
|
+
.sketch-controls {
|
176
|
+
display: flex;
|
177
|
+
}
|
178
|
+
.sketch-sliders {
|
179
|
+
padding: 4px 0px;
|
180
|
+
-webkit-box-flex: 1;
|
181
|
+
flex: 1 1 0%;
|
182
|
+
}
|
183
|
+
.sketch-hue {
|
184
|
+
position: relative;
|
185
|
+
height: 10px;
|
186
|
+
overflow: hidden;
|
187
|
+
}
|
188
|
+
.sketch-alpha {
|
189
|
+
position: relative;
|
190
|
+
height: 10px;
|
191
|
+
margin-top: 4px;
|
192
|
+
overflow: hidden;
|
193
|
+
}
|
194
|
+
.sketch-color {
|
195
|
+
width: 24px;
|
196
|
+
height: 24px;
|
197
|
+
position: relative;
|
198
|
+
margin-top: 4px;
|
199
|
+
margin-left: 4px;
|
200
|
+
border-radius: 3px;
|
201
|
+
}
|
202
|
+
.sketch-active {
|
203
|
+
position: absolute;
|
204
|
+
top: 0px;
|
205
|
+
right: 0px;
|
206
|
+
bottom: 0px;
|
207
|
+
left: 0px;
|
208
|
+
border-radius: 2px;
|
209
|
+
box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset, rgba(0, 0, 0, 0.25) 0px 0px 4px inset;
|
210
|
+
}
|
211
|
+
:host-context([dir=rtl]) .sketch-color {
|
212
|
+
margin-right: 4px;
|
213
|
+
margin-left: 0;
|
214
|
+
}
|
215
|
+
`,
|
216
|
+
],
|
217
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
218
|
+
preserveWhitespaces: false,
|
219
|
+
providers: [
|
220
|
+
{
|
221
|
+
provide: NG_VALUE_ACCESSOR,
|
222
|
+
useExisting: forwardRef(() => SketchComponent),
|
223
|
+
multi: true,
|
224
|
+
},
|
225
|
+
{
|
226
|
+
provide: ColorWrap,
|
227
|
+
useExisting: forwardRef(() => SketchComponent),
|
228
|
+
},
|
229
|
+
]
|
230
|
+
}]
|
231
|
+
}], ctorParameters: function () { return []; }, propDecorators: { disableAlpha: [{
|
232
|
+
type: Input
|
233
|
+
}], presetColors: [{
|
234
|
+
type: Input
|
235
|
+
}], width: [{
|
236
|
+
type: Input
|
237
|
+
}] } });
|
238
|
+
export class ColorSketchModule {
|
239
|
+
}
|
240
|
+
ColorSketchModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorSketchModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
241
|
+
ColorSketchModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorSketchModule, declarations: [SketchComponent, SketchFieldsComponent,
|
242
|
+
SketchPresetColorsComponent], imports: [CommonModule,
|
243
|
+
AlphaModule,
|
244
|
+
CheckboardModule,
|
245
|
+
EditableInputModule,
|
246
|
+
HueModule,
|
247
|
+
SaturationModule,
|
248
|
+
SwatchModule], exports: [SketchComponent, SketchFieldsComponent,
|
249
|
+
SketchPresetColorsComponent] });
|
250
|
+
ColorSketchModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorSketchModule, imports: [[
|
251
|
+
CommonModule,
|
252
|
+
AlphaModule,
|
253
|
+
CheckboardModule,
|
254
|
+
EditableInputModule,
|
255
|
+
HueModule,
|
256
|
+
SaturationModule,
|
257
|
+
SwatchModule,
|
258
|
+
]] });
|
259
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: ColorSketchModule, decorators: [{
|
260
|
+
type: NgModule,
|
261
|
+
args: [{
|
262
|
+
declarations: [
|
263
|
+
SketchComponent,
|
264
|
+
SketchFieldsComponent,
|
265
|
+
SketchPresetColorsComponent,
|
266
|
+
],
|
267
|
+
exports: [
|
268
|
+
SketchComponent,
|
269
|
+
SketchFieldsComponent,
|
270
|
+
SketchPresetColorsComponent,
|
271
|
+
],
|
272
|
+
imports: [
|
273
|
+
CommonModule,
|
274
|
+
AlphaModule,
|
275
|
+
CheckboardModule,
|
276
|
+
EditableInputModule,
|
277
|
+
HueModule,
|
278
|
+
SaturationModule,
|
279
|
+
SwatchModule,
|
280
|
+
],
|
281
|
+
}]
|
282
|
+
}] });
|
283
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tldGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvc2tldGNoL3NrZXRjaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEcsT0FBTyxFQUNMLFdBQVcsRUFDWCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULG1CQUFtQixFQUNuQixTQUFTLEVBQ1QsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixZQUFZLEdBQ2IsTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUE0SG5ELE1BQU0sT0FBTyxlQUFnQixTQUFRLFNBQVM7SUF3QjVDO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUF4QlYsa0RBQWtEO1FBQ3pDLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzlCLHlEQUF5RDtRQUNoRCxpQkFBWSxHQUFHO1lBQ3RCLFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztZQUNULFNBQVM7WUFDVCxTQUFTO1lBQ1QsU0FBUztTQUNWLENBQUM7UUFDRixzQkFBc0I7UUFDYixVQUFLLEdBQUcsR0FBRyxDQUFDO0lBSXJCLENBQUM7SUFDRCxnQkFBZ0I7UUFDZCxNQUFNLEtBQUssR0FBRyxJQUFJLENB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Q1AsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLDJCQUEyQjtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxnQkFBZ0I7d0JBQ2hCLG1CQUFtQjt3QkFDbkIsU0FBUzt3QkFDVCxnQkFBZ0I7d0JBQ2hCLFlBQVk7cUJBQ2I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFscGhhTW9kdWxlLFxuICBDaGVja2JvYXJkTW9kdWxlLFxuICBDb2xvcldyYXAsXG4gIEVkaXRhYmxlSW5wdXRNb2R1bGUsXG4gIEh1ZU1vZHVsZSxcbiAgaXNWYWxpZEhleCxcbiAgU2F0dXJhdGlvbk1vZHVsZSxcbiAgU3dhdGNoTW9kdWxlLFxufSBmcm9tICduZ3gtY29sb3InO1xuaW1wb3J0IHsgU2tldGNoRmllbGRzQ29tcG9uZW50IH0gZnJvbSAnLi9za2V0Y2gtZmllbGRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa2V0Y2hQcmVzZXRDb2xvcnNDb21wb25lbnQgfSBmcm9tICcuL3NrZXRjaC1wcmVzZXQtY29sb3JzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29sb3Itc2tldGNoJyxcbiAgdGVtcGxhdGU6IGBcbiAgPGRpdiBjbGFzcz1cInNrZXRjaC1waWNrZXIge3sgY2xhc3NOYW1lIH19XCIgW3N0eWxlLndpZHRoXT1cIndpZHRoXCI+XG4gICAgPGRpdiBjbGFzcz1cInNrZXRjaC1zYXR1cmF0aW9uXCI+XG4gICAgICA8Y29sb3Itc2F0dXJhdGlvbiBbaHNsXT1cImhzbFwiIFtoc3ZdPVwiaHN2XCJcbiAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgPC9jb2xvci1zYXR1cmF0aW9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtY29udHJvbHNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtc2xpZGVyc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2tldGNoLWh1ZVwiPlxuICAgICAgICAgIDxjb2xvci1odWUgW2hzbF09XCJoc2xcIlxuICAgICAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgID48L2NvbG9yLWh1ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtYWxwaGFcIiAqbmdJZj1cImRpc2FibGVBbHBoYSA9PT0gZmFsc2VcIj5cbiAgICAgICAgICA8Y29sb3ItYWxwaGFcbiAgICAgICAgICAgIFtyYWRpdXNdPVwiMlwiIFtyZ2JdPVwicmdiXCIgW2hzbF09XCJoc2xcIlxuICAgICAgICAgICAgKG9uQ2hhbmdlKT1cImhhbmRsZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgID48L2NvbG9yLWFscGhhPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNrZXRjaC1jb2xvclwiPlxuICAgICAgICA8Y29sb3ItY2hlY2tib2FyZD48L2NvbG9yLWNoZWNrYm9hcmQ+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJza2V0Y2gtYWN0aXZlXCIgW3N0eWxlLmJhY2tncm91bmRdPVwiYWN0aXZlQmFja2dyb3VuZFwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNrZXRjaC1maWVsZHMtY29udGFpbmVyXCI+XG4gICAgICA8Y29sb3Itc2tldGNoLWZpZWxkc1xuICAgICAgICBbcmdiXT1cInJnYlwiIFtoc2xdPVwiaHNsXCIgW2hleF09XCJoZXhcIlxuICAgICAgICBbZGlzYWJsZUFscGhhXT1cImRpc2FibGVBbHBoYVwiXG4gICAgICAgIChvbkNoYW5nZSk9XCJoYW5kbGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgID48L2NvbG9yLXNrZXRjaC1maWVsZHM+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNrZXRjaC1zd2F0Y2hlcy1jb250YWluZXJcIiAqbmdJZj1cInByZXNldENvbG9ycyAmJiBwcmVzZXRDb2xvcnMubGVuZ3RoXCI+XG4gICAgICA8Y29sb3Itc2tldGNoLXByZXNldC1jb2xvcnNcbiAgICAgICAgW2NvbG9yc109XCJwcmVzZXRDb2xvcnNcIlxuICAgICAgICAob25DbGljayk9XCJoYW5kbGVCbG9ja0NoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKG9uU3dhdGNoSG92ZXIpPVwib25Td2F0Y2hIb3Zlci5lbWl0KCRldmVudClcIlxuICAgICAgPjwvY29sb3Itc2tldGNoLXByZXNldC1jb2xvcnM+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgLnNrZXRjaC1waWNrZXIge1xuICAgICAgcGFkZGluZzogMTBweCAxMHB4IDNweDtcbiAgICAgIGJveC1zaXppbmc6IGluaXRpYWw7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMCwwLDAsLjE1KSwgMCA4cHggMTZweCByZ2JhKDAsMCwwLC4xNSk7XG4gICAgfVxuICAgIC5za2V0Y2gtc2F0dXJhdGlvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuc2tldGNoLWZpZWxkcy1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIC5za2V0Y2gtc3dhdGNoZXMtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuc2tldGNoLWNvbnRyb2xzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIC5za2V0Y2gtc2xpZGVycyB7XG4gICAgICBwYWRkaW5nOiA0cHggMHB4O1xuICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICB9XG4gICAgLnNrZXRjaC1odWUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gICAgLnNrZXRjaC1hbHBoYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuc2tldGNoLWNvbG9yIHtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB9XG4gICAgLnNrZXRjaC1hY3RpdmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcHg7XG4gICAgICByaWdodDogMHB4O1xuICAgICAgYm90dG9tOiAwcHg7XG4gICAgICBsZWZ0OiAwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTUpIDBweCAwcHggMHB4IDFweCBpbnNldCwgcmdiYSgwLCAwLCAwLCAwLjI1KSAwcHggMHB4IDRweCBpbnNldDtcbiAgICB9XG4gICAgOmhvc3QtY29udGV4dChbZGlyPXJ0bF0pIC5za2V0Y2gtY29sb3Ige1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIGAsXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa2V0Y2hDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBDb2xvcldyYXAsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa2V0Y2hDb21wb25lbnQpLFxuICAgIH0sXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2tldGNoQ29tcG9uZW50IGV4dGVuZHMgQ29sb3JXcmFwIHtcbiAgLyoqIFJlbW92ZSBhbHBoYSBzbGlkZXIgYW5kIG9wdGlvbnMgZnJvbSBwaWNrZXIgKi9cbiAgQElucHV0KCkgZGlzYWJsZUFscGhhID0gZmFsc2U7XG4gIC8qKiBIZXggc3RyaW5ncyBmb3IgZGVmYXVsdCBjb2xvcnMgYXQgYm90dG9tIG9mIHBpY2tlciAqL1xuICBASW5wdXQoKSBwcmVzZXRDb2xvcnMgPSBbXG4gICAgJyNEMDAyMUInLFxuICAgICcjRjVBNjIzJyxcbiAgICAnI0Y4RTcxQycsXG4gICAgJyM4QjU3MkEnLFxuICAgICcjN0VEMzIxJyxcbiAgICAnIzQxNzUwNScsXG4gICAgJyNCRDEwRTAnLFxuICAgICcjOTAxM0ZFJyxcbiAgICAnIzRBOTBFMicsXG4gICAgJyM1MEUzQzInLFxuICAgICcjQjhFOTg2JyxcbiAgICAnIzAwMDAwMCcsXG4gICAgJyM0QTRBNEEnLFxuICAgICcjOUI5QjlCJyxcbiAgICAnI0ZGRkZGRicsXG4gIF07XG4gIC8qKiBXaWR0aCBvZiBwaWNrZXIgKi9cbiAgQElucHV0KCkgd2lkdGggPSAyMDA7XG4gIGFjdGl2ZUJhY2tncm91bmQhOiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gIH1cbiAgYWZ0ZXJWYWxpZENoYW5nZSgpIHtcbiAgICBjb25zdCBhbHBoYSA9IHRoaXMuZGlzYWJsZUFscGhhID8gMSA6IHRoaXMucmdiLmE7XG4gICAgdGhpcy5hY3RpdmVCYWNrZ3JvdW5kID0gYHJnYmEoJHt0aGlzLnJnYi5yfSwgJHt0aGlzLnJnYi5nfSwgJHt0aGlzLnJnYi5ifSwgJHthbHBoYX0pYDtcbiAgfVxuICBoYW5kbGVWYWx1ZUNoYW5nZSh7IGRhdGEsICRldmVudCB9KSB7XG4gICAgdGhpcy5oYW5kbGVDaGFuZ2UoZGF0YSwgJGV2ZW50KTtcbiAgfVxuICBoYW5kbGVCbG9ja0NoYW5nZSh7IGhleCwgJGV2ZW50IH0pIHtcbiAgICBpZiAoaXNWYWxpZEhleChoZXgpKSB7XG4gICAgICAvLyB0aGlzLmhleCA9IGhleDtcbiAgICAgIHRoaXMuaGFuZGxlQ2hhbmdlKFxuICAgICAgICB7XG4gICAgICAgICAgaGV4LFxuICAgICAgICAgIHNvdXJjZTogJ2hleCcsXG4gICAgICAgIH0sXG4gICAgICAgICRldmVudCxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNrZXRjaENvbXBvbmVudCxcbiAgICBTa2V0Y2hGaWVsZHNDb21wb25lbnQsXG4gICAgU2tldGNoUHJlc2V0Q29sb3JzQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2tldGNoQ29tcG9uZW50LFxuICAgIFNrZXRjaEZpZWxkc0NvbXBvbmVudCxcbiAgICBTa2V0Y2hQcmVzZXRDb2xvcnNDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQWxwaGFNb2R1bGUsXG4gICAgQ2hlY2tib2FyZE1vZHVsZSxcbiAgICBFZGl0YWJsZUlucHV0TW9kdWxlLFxuICAgIEh1ZU1vZHVsZSxcbiAgICBTYXR1cmF0aW9uTW9kdWxlLFxuICAgIFN3YXRjaE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29sb3JTa2V0Y2hNb2R1bGUge31cbiJdfQ==
|