@kurkle/color
Advanced tools
Comparing version 0.2.0 to 0.2.1
/*! | ||
* @kurkle/color v0.2.0 | ||
* @kurkle/color v0.2.1 | ||
* https://github.com/kurkle/color#readme | ||
@@ -423,9 +423,2 @@ * (c) 2022 Jukka Kurkela | ||
} | ||
function rgbMix(rgb1, rgb2, t = 0.5) { | ||
t = 1 - t; | ||
rgb1.r = 0xFF & rgb1.r + t * (rgb2.r - rgb1.r) + 0.5; | ||
rgb1.g = 0xFF & rgb1.g + t * (rgb2.g - rgb1.g) + 0.5; | ||
rgb1.b = 0xFF & rgb1.b + t * (rgb2.b - rgb1.b) + 0.5; | ||
rgb1.a = rgb1.a + t * (rgb2.a - rgb1.a); | ||
} | ||
@@ -519,3 +512,15 @@ const to = v => v <= 0.0031308 ? v * 12.92 : Math.pow(v, 1.0 / 2.4) * 1.055 - 0.055; | ||
if (color) { | ||
rgbMix(this._rgb, color._rgb, weight); | ||
const c1 = this.rgb; | ||
const c2 = color.rgb; | ||
let w2; | ||
const p = weight === w2 ? 0.5 : weight; | ||
const w = 2 * p - 1; | ||
const a = c1.a - c2.a; | ||
const w1 = ((w * a === -1 ? w : (w + a) / (1 + w * a)) + 1) / 2.0; | ||
w2 = 1 - w1; | ||
c1.r = 0xFF & w1 * c1.r + w2 * c2.r + 0.5; | ||
c1.g = 0xFF & w1 * c1.g + w2 * c2.g + 0.5; | ||
c1.b = 0xFF & w1 * c1.b + w2 * c2.b + 0.5; | ||
c1.a = p * c1.a + (1 - p) * c2.a; | ||
this.rgb = c1; | ||
} | ||
@@ -586,2 +591,2 @@ return this; | ||
export { Color, b2n, b2p, index_esm as default, hexParse, hexString, hsl2rgb, hslString, hsv2rgb, hueParse, hwb2rgb, lim, n2b, n2p, nameParse, p2b, rgb2hsl, rgbMix, rgbParse, rgbString, rotate, round }; | ||
export { Color, b2n, b2p, index_esm as default, hexParse, hexString, hsl2rgb, hslString, hsv2rgb, hueParse, hwb2rgb, lim, n2b, n2p, nameParse, p2b, rgb2hsl, rgbParse, rgbString, rotate, round }; |
/*! | ||
* @kurkle/color v0.2.0 | ||
* @kurkle/color v0.2.1 | ||
* https://github.com/kurkle/color#readme | ||
@@ -426,9 +426,2 @@ * (c) 2022 Jukka Kurkela | ||
} | ||
function rgbMix(rgb1, rgb2, t = 0.5) { | ||
t = 1 - t; | ||
rgb1.r = 0xFF & rgb1.r + t * (rgb2.r - rgb1.r) + 0.5; | ||
rgb1.g = 0xFF & rgb1.g + t * (rgb2.g - rgb1.g) + 0.5; | ||
rgb1.b = 0xFF & rgb1.b + t * (rgb2.b - rgb1.b) + 0.5; | ||
rgb1.a = rgb1.a + t * (rgb2.a - rgb1.a); | ||
} | ||
@@ -522,3 +515,15 @@ const to = v => v <= 0.0031308 ? v * 12.92 : Math.pow(v, 1.0 / 2.4) * 1.055 - 0.055; | ||
if (color) { | ||
rgbMix(this._rgb, color._rgb, weight); | ||
const c1 = this.rgb; | ||
const c2 = color.rgb; | ||
let w2; | ||
const p = weight === w2 ? 0.5 : weight; | ||
const w = 2 * p - 1; | ||
const a = c1.a - c2.a; | ||
const w1 = ((w * a === -1 ? w : (w + a) / (1 + w * a)) + 1) / 2.0; | ||
w2 = 1 - w1; | ||
c1.r = 0xFF & w1 * c1.r + w2 * c2.r + 0.5; | ||
c1.g = 0xFF & w1 * c1.g + w2 * c2.g + 0.5; | ||
c1.b = 0xFF & w1 * c1.b + w2 * c2.b + 0.5; | ||
c1.a = p * c1.a + (1 - p) * c2.a; | ||
this.rgb = c1; | ||
} | ||
@@ -525,0 +530,0 @@ return this; |
/*! | ||
* @kurkle/color v0.2.0 | ||
* @kurkle/color v0.2.1 | ||
* https://github.com/kurkle/color#readme | ||
@@ -7,3 +7,3 @@ * (c) 2022 Jukka Kurkela | ||
*/ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self)["@kurkle/color"]=t()}(this,(function(){"use strict";function e(e){return e+.5|0}const t=(e,t,f)=>Math.max(Math.min(e,f),t);function f(f){return t(e(2.55*f),0,255)}function r(f){return t(e(255*f),0,255)}function n(f){return t(e(f/2.55)/100,0,1)}function a(f){return t(e(100*f),0,100)}const i={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},s=[..."0123456789ABCDEF"],c=e=>s[15&e],d=e=>s[(240&e)>>4]+s[15&e],b=e=>(240&e)>>4==(15&e);function g(e){var t=(e=>b(e.r)&&b(e.g)&&b(e.b)&&b(e.a))(e)?c:d;return e?"#"+t(e.r)+t(e.g)+t(e.b)+((e,t)=>e<255?t(e):"")(e.a,t):void 0}const o=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function u(e,t,f){const r=t*Math.min(f,1-f),n=(t,n=(t+e/30)%12)=>f-r*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function h(e,t,f){const r=(r,n=(r+e/60)%6)=>f-f*t*Math.max(Math.min(n,4-n,1),0);return[r(5),r(3),r(1)]}function l(e,t,f){const r=u(e,1,.5);let n;for(t+f>1&&(n=1/(t+f),t*=n,f*=n),n=0;n<3;n++)r[n]*=1-t-f,r[n]+=t;return r}function p(e){const t=e.r/255,f=e.g/255,r=e.b/255,n=Math.max(t,f,r),a=Math.min(t,f,r),i=(n+a)/2;let s,c,d;return n!==a&&(d=n-a,c=i>.5?d/(2-n-a):d/(n+a),s=function(e,t,f,r,n){return e===n?(t-f)/r+(t<f?6:0):t===n?(f-e)/r+2:(e-t)/r+4}(t,f,r,d,n),s=60*s+.5),[0|s,c||0,i]}function y(e,t,f,n){return(Array.isArray(t)?e(t[0],t[1],t[2]):e(t,f,n)).map(r)}function m(e,t,f){return y(u,e,t,f)}function Y(e){return(e%360+360)%360}function v(e){const t=o.exec(e);let n,a=255;if(!t)return;t[5]!==n&&(a=t[6]?f(+t[5]):r(+t[5]));const i=Y(+t[2]),s=+t[3]/100,c=+t[4]/100;return n="hwb"===t[1]?function(e,t,f){return y(l,e,t,f)}(i,s,c):"hsv"===t[1]?function(e,t,f){return y(h,e,t,f)}(i,s,c):m(i,s,c),{r:n[0],g:n[1],b:n[2],a:a}}const x={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},w={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let _;function F(e){_||(_=function(){const e={},t=Object.keys(w),f=Object.keys(x);let r,n,a,i,s;for(r=0;r<t.length;r++){for(i=s=t[r],n=0;n<f.length;n++)a=f[n],s=s.replace(a,x[a]);a=parseInt(w[i],16),e[s]=[a>>16&255,a>>8&255,255&a]}return e}(),_.transparent=[0,0,0,0]);const t=_[e.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:4===t.length?t[3]:255}}const M=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const k=e=>e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055,X=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4);function O(e,t,f){if(e){let r=p(e);r[t]=Math.max(0,Math.min(r[t]+r[t]*f,0===t?360:1)),r=m(r),e.r=r[0],e.g=r[1],e.b=r[2]}}function T(e,t){return e?Object.assign(t||{},e):e}function S(e){var t={r:0,g:0,b:0,a:255};return Array.isArray(e)?e.length>=3&&(t={r:e[0],g:e[1],b:e[2],a:255},e.length>3&&(t.a=r(e[3]))):(t=T(e,{r:0,g:0,b:0,a:1})).a=r(t.a),t}function Z(e){return"r"===e.charAt(0)?function(e){const r=M.exec(e);let n,a,i,s=255;if(r){if(r[7]!==n){const e=+r[7];s=r[8]?f(e):t(255*e,0,255)}return n=+r[1],a=+r[3],i=+r[5],n=255&(r[2]?f(n):t(n,0,255)),a=255&(r[4]?f(a):t(a,0,255)),i=255&(r[6]?f(i):t(i,0,255)),{r:n,g:a,b:i,a:s}}}(e):v(e)}class ${constructor(e){if(e instanceof $)return e;const t=typeof e;let f;var r,n,a;"object"===t?f=S(e):"string"===t&&(a=(r=e).length,"#"===r[0]&&(4===a||5===a?n={r:255&17*i[r[1]],g:255&17*i[r[2]],b:255&17*i[r[3]],a:5===a?17*i[r[4]]:255}:7!==a&&9!==a||(n={r:i[r[1]]<<4|i[r[2]],g:i[r[3]]<<4|i[r[4]],b:i[r[5]]<<4|i[r[6]],a:9===a?i[r[7]]<<4|i[r[8]]:255})),f=n||F(e)||Z(e)),this._rgb=f,this._valid=!!f}get valid(){return this._valid}get rgb(){var e=T(this._rgb);return e&&(e.a=n(e.a)),e}set rgb(e){this._rgb=S(e)}rgbString(){return this._valid?(e=this._rgb)&&(e.a<255?`rgba(${e.r}, ${e.g}, ${e.b}, ${n(e.a)})`:`rgb(${e.r}, ${e.g}, ${e.b})`):void 0;var e}hexString(){return this._valid?g(this._rgb):void 0}hslString(){return this._valid?function(e){if(!e)return;const t=p(e),f=t[0],r=a(t[1]),i=a(t[2]);return e.a<255?`hsla(${f}, ${r}%, ${i}%, ${n(e.a)})`:`hsl(${f}, ${r}%, ${i}%)`}(this._rgb):void 0}mix(e,t){return e&&function(e,t,f=.5){f=1-f,e.r=255&e.r+f*(t.r-e.r)+.5,e.g=255&e.g+f*(t.g-e.g)+.5,e.b=255&e.b+f*(t.b-e.b)+.5,e.a=e.a+f*(t.a-e.a)}(this._rgb,e._rgb,t),this}interpolate(e,t){return e&&(this._rgb=function(e,t,f){const a=X(n(e.r)),i=X(n(e.g)),s=X(n(e.b));return{r:r(k(a+f*(X(n(t.r))-a))),g:r(k(i+f*(X(n(t.g))-i))),b:r(k(s+f*(X(n(t.b))-s))),a:e.a+f*(t.a-e.a)}}(this._rgb,e._rgb,t)),this}clone(){return new $(this.rgb)}alpha(e){return this._rgb.a=r(e),this}clearer(e){return this._rgb.a*=1-e,this}greyscale(){const t=this._rgb,f=e(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=f,this}opaquer(e){return this._rgb.a*=1+e,this}negate(){const e=this._rgb;return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,this}lighten(e){return O(this._rgb,2,e),this}darken(e){return O(this._rgb,2,-e),this}saturate(e){return O(this._rgb,1,e),this}desaturate(e){return O(this._rgb,1,-e),this}rotate(e){return function(e,t){var f=p(e);f[0]=Y(f[0]+t),f=m(f),e.r=f[0],e.g=f[1],e.b=f[2]}(this._rgb,e),this}}return function(e){return new $(e)}})); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self)["@kurkle/color"]=t()}(this,(function(){"use strict";function e(e){return e+.5|0}const t=(e,t,f)=>Math.max(Math.min(e,f),t);function f(f){return t(e(2.55*f),0,255)}function r(f){return t(e(255*f),0,255)}function a(f){return t(e(f/2.55)/100,0,1)}function n(f){return t(e(100*f),0,100)}const i={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},s=[..."0123456789ABCDEF"],c=e=>s[15&e],d=e=>s[(240&e)>>4]+s[15&e],b=e=>(240&e)>>4==(15&e);function g(e){var t=(e=>b(e.r)&&b(e.g)&&b(e.b)&&b(e.a))(e)?c:d;return e?"#"+t(e.r)+t(e.g)+t(e.b)+((e,t)=>e<255?t(e):"")(e.a,t):void 0}const o=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function u(e,t,f){const r=t*Math.min(f,1-f),a=(t,a=(t+e/30)%12)=>f-r*Math.max(Math.min(a-3,9-a,1),-1);return[a(0),a(8),a(4)]}function h(e,t,f){const r=(r,a=(r+e/60)%6)=>f-f*t*Math.max(Math.min(a,4-a,1),0);return[r(5),r(3),r(1)]}function l(e,t,f){const r=u(e,1,.5);let a;for(t+f>1&&(a=1/(t+f),t*=a,f*=a),a=0;a<3;a++)r[a]*=1-t-f,r[a]+=t;return r}function p(e){const t=e.r/255,f=e.g/255,r=e.b/255,a=Math.max(t,f,r),n=Math.min(t,f,r),i=(a+n)/2;let s,c,d;return a!==n&&(d=a-n,c=i>.5?d/(2-a-n):d/(a+n),s=function(e,t,f,r,a){return e===a?(t-f)/r+(t<f?6:0):t===a?(f-e)/r+2:(e-t)/r+4}(t,f,r,d,a),s=60*s+.5),[0|s,c||0,i]}function y(e,t,f,a){return(Array.isArray(t)?e(t[0],t[1],t[2]):e(t,f,a)).map(r)}function m(e,t,f){return y(u,e,t,f)}function Y(e){return(e%360+360)%360}function v(e){const t=o.exec(e);let a,n=255;if(!t)return;t[5]!==a&&(n=t[6]?f(+t[5]):r(+t[5]));const i=Y(+t[2]),s=+t[3]/100,c=+t[4]/100;return a="hwb"===t[1]?function(e,t,f){return y(l,e,t,f)}(i,s,c):"hsv"===t[1]?function(e,t,f){return y(h,e,t,f)}(i,s,c):m(i,s,c),{r:a[0],g:a[1],b:a[2],a:n}}const x={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},w={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let F;function _(e){F||(F=function(){const e={},t=Object.keys(w),f=Object.keys(x);let r,a,n,i,s;for(r=0;r<t.length;r++){for(i=s=t[r],a=0;a<f.length;a++)n=f[a],s=s.replace(n,x[n]);n=parseInt(w[i],16),e[s]=[n>>16&255,n>>8&255,255&n]}return e}(),F.transparent=[0,0,0,0]);const t=F[e.toLowerCase()];return t&&{r:t[0],g:t[1],b:t[2],a:4===t.length?t[3]:255}}const M=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const k=e=>e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055,X=e=>e<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4);function O(e,t,f){if(e){let r=p(e);r[t]=Math.max(0,Math.min(r[t]+r[t]*f,0===t?360:1)),r=m(r),e.r=r[0],e.g=r[1],e.b=r[2]}}function T(e,t){return e?Object.assign(t||{},e):e}function S(e){var t={r:0,g:0,b:0,a:255};return Array.isArray(e)?e.length>=3&&(t={r:e[0],g:e[1],b:e[2],a:255},e.length>3&&(t.a=r(e[3]))):(t=T(e,{r:0,g:0,b:0,a:1})).a=r(t.a),t}function Z(e){return"r"===e.charAt(0)?function(e){const r=M.exec(e);let a,n,i,s=255;if(r){if(r[7]!==a){const e=+r[7];s=r[8]?f(e):t(255*e,0,255)}return a=+r[1],n=+r[3],i=+r[5],a=255&(r[2]?f(a):t(a,0,255)),n=255&(r[4]?f(n):t(n,0,255)),i=255&(r[6]?f(i):t(i,0,255)),{r:a,g:n,b:i,a:s}}}(e):v(e)}class ${constructor(e){if(e instanceof $)return e;const t=typeof e;let f;var r,a,n;"object"===t?f=S(e):"string"===t&&(n=(r=e).length,"#"===r[0]&&(4===n||5===n?a={r:255&17*i[r[1]],g:255&17*i[r[2]],b:255&17*i[r[3]],a:5===n?17*i[r[4]]:255}:7!==n&&9!==n||(a={r:i[r[1]]<<4|i[r[2]],g:i[r[3]]<<4|i[r[4]],b:i[r[5]]<<4|i[r[6]],a:9===n?i[r[7]]<<4|i[r[8]]:255})),f=a||_(e)||Z(e)),this._rgb=f,this._valid=!!f}get valid(){return this._valid}get rgb(){var e=T(this._rgb);return e&&(e.a=a(e.a)),e}set rgb(e){this._rgb=S(e)}rgbString(){return this._valid?(e=this._rgb)&&(e.a<255?`rgba(${e.r}, ${e.g}, ${e.b}, ${a(e.a)})`:`rgb(${e.r}, ${e.g}, ${e.b})`):void 0;var e}hexString(){return this._valid?g(this._rgb):void 0}hslString(){return this._valid?function(e){if(!e)return;const t=p(e),f=t[0],r=n(t[1]),i=n(t[2]);return e.a<255?`hsla(${f}, ${r}%, ${i}%, ${a(e.a)})`:`hsl(${f}, ${r}%, ${i}%)`}(this._rgb):void 0}mix(e,t){if(e){const f=this.rgb,r=e.rgb;let a;const n=t===a?.5:t,i=2*n-1,s=f.a-r.a,c=((i*s==-1?i:(i+s)/(1+i*s))+1)/2;a=1-c,f.r=255&c*f.r+a*r.r+.5,f.g=255&c*f.g+a*r.g+.5,f.b=255&c*f.b+a*r.b+.5,f.a=n*f.a+(1-n)*r.a,this.rgb=f}return this}interpolate(e,t){return e&&(this._rgb=function(e,t,f){const n=X(a(e.r)),i=X(a(e.g)),s=X(a(e.b));return{r:r(k(n+f*(X(a(t.r))-n))),g:r(k(i+f*(X(a(t.g))-i))),b:r(k(s+f*(X(a(t.b))-s))),a:e.a+f*(t.a-e.a)}}(this._rgb,e._rgb,t)),this}clone(){return new $(this.rgb)}alpha(e){return this._rgb.a=r(e),this}clearer(e){return this._rgb.a*=1-e,this}greyscale(){const t=this._rgb,f=e(.3*t.r+.59*t.g+.11*t.b);return t.r=t.g=t.b=f,this}opaquer(e){return this._rgb.a*=1+e,this}negate(){const e=this._rgb;return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,this}lighten(e){return O(this._rgb,2,e),this}darken(e){return O(this._rgb,2,-e),this}saturate(e){return O(this._rgb,1,e),this}desaturate(e){return O(this._rgb,1,-e),this}rotate(e){return function(e,t){var f=p(e);f[0]=Y(f[0]+t),f=m(f),e.r=f[0],e.g=f[1],e.b=f[2]}(this._rgb,e),this}}return function(e){return new $(e)}})); | ||
//# sourceMappingURL=color.min.js.map |
{ | ||
"name": "@kurkle/color", | ||
"version": "0.2.0", | ||
"version": "0.2.1", | ||
"description": "css color parsing, manupulation and conversion", | ||
@@ -5,0 +5,0 @@ "main": "dist/color.js", |
43409
1434