colorizr 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/README.md +16 -16
  2. package/esm/brightness-difference.js +7 -7
  3. package/esm/brightness-difference.js.map +1 -1
  4. package/esm/chroma.js +5 -5
  5. package/esm/chroma.js.map +1 -1
  6. package/esm/color-difference.js +5 -5
  7. package/esm/color-difference.js.map +1 -1
  8. package/esm/compare.js +15 -15
  9. package/esm/compare.js.map +1 -1
  10. package/esm/contrast.js +8 -13
  11. package/esm/contrast.js.map +1 -1
  12. package/esm/darken.js +2 -3
  13. package/esm/darken.js.map +1 -1
  14. package/esm/desaturate.js +2 -3
  15. package/esm/desaturate.js.map +1 -1
  16. package/esm/fade.js +12 -14
  17. package/esm/fade.js.map +1 -1
  18. package/esm/format-css.js +10 -11
  19. package/esm/format-css.js.map +1 -1
  20. package/esm/format-hex.js +7 -7
  21. package/esm/format-hex.js.map +1 -1
  22. package/esm/hex2hsl.js +2 -2
  23. package/esm/hex2hsl.js.map +1 -1
  24. package/esm/hex2rgb.js +3 -3
  25. package/esm/hex2rgb.js.map +1 -1
  26. package/esm/hsl2hex.js +2 -2
  27. package/esm/hsl2hex.js.map +1 -1
  28. package/esm/hsl2rgb.d.ts +1 -1
  29. package/esm/hsl2rgb.js +13 -13
  30. package/esm/hsl2rgb.js.map +1 -1
  31. package/esm/index.d.ts +11 -12
  32. package/esm/index.js +99 -133
  33. package/esm/index.js.map +1 -1
  34. package/esm/is-valid-color.js +1 -1
  35. package/esm/is-valid-color.js.map +1 -1
  36. package/esm/is-valid-hex.js +2 -2
  37. package/esm/is-valid-hex.js.map +1 -1
  38. package/esm/lighten.js +2 -3
  39. package/esm/lighten.js.map +1 -1
  40. package/esm/luminance.js +8 -8
  41. package/esm/luminance.js.map +1 -1
  42. package/esm/{utils.d.ts → modules/css-colors.d.ts} +0 -61
  43. package/esm/modules/css-colors.js +153 -0
  44. package/esm/modules/css-colors.js.map +1 -0
  45. package/esm/{hue2rgb.d.ts → modules/hue2rgb.d.ts} +0 -0
  46. package/esm/{hue2rgb.js → modules/hue2rgb.js} +2 -2
  47. package/esm/modules/hue2rgb.js.map +1 -0
  48. package/{lib → esm/modules}/parse-color.d.ts +1 -1
  49. package/esm/{parse-color.js → modules/parse-color.js} +12 -12
  50. package/esm/modules/parse-color.js.map +1 -0
  51. package/esm/{updater.d.ts → modules/updater.d.ts} +0 -0
  52. package/esm/modules/updater.js +19 -0
  53. package/esm/modules/updater.js.map +1 -0
  54. package/esm/modules/utils.d.ts +61 -0
  55. package/esm/modules/utils.js +199 -0
  56. package/esm/modules/utils.js.map +1 -0
  57. package/esm/name.js +5 -7
  58. package/esm/name.js.map +1 -1
  59. package/esm/palette.js +15 -27
  60. package/esm/palette.js.map +1 -1
  61. package/esm/parse-css.js +13 -11
  62. package/esm/parse-css.js.map +1 -1
  63. package/esm/random.js +1 -1
  64. package/esm/random.js.map +1 -1
  65. package/esm/rgb2hex.d.ts +1 -1
  66. package/esm/rgb2hex.js +11 -11
  67. package/esm/rgb2hex.js.map +1 -1
  68. package/esm/rgb2hsl.d.ts +1 -1
  69. package/esm/rgb2hsl.js +14 -14
  70. package/esm/rgb2hsl.js.map +1 -1
  71. package/esm/rotate.js +6 -7
  72. package/esm/rotate.js.map +1 -1
  73. package/esm/saturate.js +2 -3
  74. package/esm/saturate.js.map +1 -1
  75. package/esm/scheme.d.ts +1 -1
  76. package/esm/scheme.js +12 -26
  77. package/esm/scheme.js.map +1 -1
  78. package/esm/shift.js +5 -16
  79. package/esm/shift.js.map +1 -1
  80. package/esm/text-color.js +4 -4
  81. package/esm/text-color.js.map +1 -1
  82. package/lib/brightness-difference.js +10 -10
  83. package/lib/brightness-difference.js.map +1 -1
  84. package/lib/chroma.js +8 -8
  85. package/lib/chroma.js.map +1 -1
  86. package/lib/color-difference.js +7 -7
  87. package/lib/color-difference.js.map +1 -1
  88. package/lib/compare.js +18 -18
  89. package/lib/compare.js.map +1 -1
  90. package/lib/contrast.js +10 -15
  91. package/lib/contrast.js.map +1 -1
  92. package/lib/darken.js +3 -4
  93. package/lib/darken.js.map +1 -1
  94. package/lib/desaturate.js +3 -4
  95. package/lib/desaturate.js.map +1 -1
  96. package/lib/fade.js +14 -16
  97. package/lib/fade.js.map +1 -1
  98. package/lib/format-css.js +16 -17
  99. package/lib/format-css.js.map +1 -1
  100. package/lib/format-hex.js +8 -8
  101. package/lib/format-hex.js.map +1 -1
  102. package/lib/hex2hsl.js +5 -5
  103. package/lib/hex2hsl.js.map +1 -1
  104. package/lib/hex2rgb.js +4 -4
  105. package/lib/hex2rgb.js.map +1 -1
  106. package/lib/hsl2hex.js +5 -5
  107. package/lib/hsl2hex.js.map +1 -1
  108. package/lib/hsl2rgb.d.ts +1 -1
  109. package/lib/hsl2rgb.js +16 -16
  110. package/lib/hsl2rgb.js.map +1 -1
  111. package/lib/index.d.ts +11 -12
  112. package/lib/index.js +135 -164
  113. package/lib/index.js.map +1 -1
  114. package/lib/is-valid-color.js +3 -3
  115. package/lib/is-valid-color.js.map +1 -1
  116. package/lib/is-valid-hex.js +3 -3
  117. package/lib/is-valid-hex.js.map +1 -1
  118. package/lib/lighten.js +3 -4
  119. package/lib/lighten.js.map +1 -1
  120. package/lib/luminance.js +11 -11
  121. package/lib/luminance.js.map +1 -1
  122. package/lib/{utils.d.ts → modules/css-colors.d.ts} +0 -61
  123. package/lib/modules/css-colors.js +156 -0
  124. package/lib/modules/css-colors.js.map +1 -0
  125. package/lib/{hue2rgb.d.ts → modules/hue2rgb.d.ts} +0 -0
  126. package/lib/modules/hue2rgb.js +28 -0
  127. package/lib/modules/hue2rgb.js.map +1 -0
  128. package/{esm → lib/modules}/parse-color.d.ts +1 -1
  129. package/lib/modules/parse-color.js +59 -0
  130. package/lib/modules/parse-color.js.map +1 -0
  131. package/lib/{updater.d.ts → modules/updater.d.ts} +0 -0
  132. package/lib/modules/updater.js +22 -0
  133. package/lib/modules/updater.js.map +1 -0
  134. package/lib/modules/utils.d.ts +61 -0
  135. package/lib/modules/utils.js +215 -0
  136. package/lib/modules/utils.js.map +1 -0
  137. package/lib/name.js +6 -8
  138. package/lib/name.js.map +1 -1
  139. package/lib/palette.js +19 -31
  140. package/lib/palette.js.map +1 -1
  141. package/lib/parse-css.js +26 -24
  142. package/lib/parse-css.js.map +1 -1
  143. package/lib/random.js +3 -3
  144. package/lib/random.js.map +1 -1
  145. package/lib/rgb2hex.d.ts +1 -1
  146. package/lib/rgb2hex.js +12 -12
  147. package/lib/rgb2hex.js.map +1 -1
  148. package/lib/rgb2hsl.d.ts +1 -1
  149. package/lib/rgb2hsl.js +14 -14
  150. package/lib/rgb2hsl.js.map +1 -1
  151. package/lib/rotate.js +11 -12
  152. package/lib/rotate.js.map +1 -1
  153. package/lib/saturate.js +3 -4
  154. package/lib/saturate.js.map +1 -1
  155. package/lib/scheme.d.ts +1 -1
  156. package/lib/scheme.js +14 -28
  157. package/lib/scheme.js.map +1 -1
  158. package/lib/shift.js +7 -18
  159. package/lib/shift.js.map +1 -1
  160. package/lib/text-color.js +6 -6
  161. package/lib/text-color.js.map +1 -1
  162. package/package.json +34 -43
  163. package/src/brightness-difference.ts +3 -3
  164. package/src/chroma.ts +2 -2
  165. package/src/color-difference.ts +3 -3
  166. package/src/compare.ts +3 -4
  167. package/src/contrast.ts +8 -12
  168. package/src/darken.ts +1 -1
  169. package/src/desaturate.ts +1 -1
  170. package/src/fade.ts +4 -4
  171. package/src/format-css.ts +3 -3
  172. package/src/format-hex.ts +4 -4
  173. package/src/hex2hsl.ts +2 -3
  174. package/src/hex2rgb.ts +2 -3
  175. package/src/hsl2hex.ts +2 -3
  176. package/src/hsl2rgb.ts +5 -6
  177. package/src/index.ts +14 -19
  178. package/src/is-valid-color.ts +1 -1
  179. package/src/is-valid-hex.ts +2 -2
  180. package/src/lighten.ts +1 -1
  181. package/src/luminance.ts +6 -6
  182. package/src/modules/css-colors.ts +152 -0
  183. package/src/{hue2rgb.ts → modules/hue2rgb.ts} +1 -4
  184. package/src/{parse-color.ts → modules/parse-color.ts} +11 -11
  185. package/src/{updater.ts → modules/updater.ts} +6 -5
  186. package/src/modules/utils.ts +253 -0
  187. package/src/name.ts +3 -2
  188. package/src/palette.ts +9 -8
  189. package/src/parse-css.ts +8 -6
  190. package/src/rgb2hex.ts +4 -5
  191. package/src/rgb2hsl.ts +4 -5
  192. package/src/rotate.ts +3 -3
  193. package/src/saturate.ts +1 -1
  194. package/src/scheme.ts +11 -23
  195. package/src/shift.ts +4 -5
  196. package/src/text-color.ts +2 -2
  197. package/src/types/index.ts +1 -0
  198. package/esm/hue2rgb.js.map +0 -1
  199. package/esm/parse-color.js.map +0 -1
  200. package/esm/updater.js +0 -20
  201. package/esm/updater.js.map +0 -1
  202. package/esm/utils.js +0 -360
  203. package/esm/utils.js.map +0 -1
  204. package/lib/hue2rgb.js +0 -28
  205. package/lib/hue2rgb.js.map +0 -1
  206. package/lib/parse-color.js +0 -59
  207. package/lib/parse-color.js.map +0 -1
  208. package/lib/updater.js +0 -23
  209. package/lib/updater.js.map +0 -1
  210. package/lib/utils.js +0 -376
  211. package/lib/utils.js.map +0 -1
  212. package/src/utils.ts +0 -412
@@ -0,0 +1,153 @@
1
+ /**
2
+ * CSS named colors
3
+ */
4
+ export const cssColors = {
5
+ aliceblue: '#f0f8ff',
6
+ antiquewhite: '#faebd7',
7
+ aqua: '#00ffff',
8
+ aquamarine: '#7fffd4',
9
+ azure: '#f0ffff',
10
+ beige: '#f5f5dc',
11
+ bisque: '#ffe4c4',
12
+ black: '#000000',
13
+ blanchedalmond: '#ffebcd',
14
+ blue: '#0000ff',
15
+ blueviolet: '#8a2be2',
16
+ brown: '#a52a2a',
17
+ burlywood: '#deb887',
18
+ cadetblue: '#5f9ea0',
19
+ chartreuse: '#7fff00',
20
+ chocolate: '#d2691e',
21
+ coral: '#ff7f50',
22
+ cornflowerblue: '#6495ed',
23
+ cornsilk: '#fff8dc',
24
+ crimson: '#dc143c',
25
+ cyan: '#00ffff',
26
+ darkblue: '#00008b',
27
+ darkcyan: '#008b8b',
28
+ darkgoldenrod: '#b8860b',
29
+ darkgray: '#a9a9a9',
30
+ darkgrey: '#a9a9a9',
31
+ darkgreen: '#006400',
32
+ darkkhaki: '#bdb76b',
33
+ darkmagenta: '#8b008b',
34
+ darkolivegreen: '#556b2f',
35
+ darkorange: '#ff8c00',
36
+ darkorchid: '#9932cc',
37
+ darkred: '#8b0000',
38
+ darksalmon: '#e9967a',
39
+ darkseagreen: '#8fbc8f',
40
+ darkslateblue: '#483d8b',
41
+ darkslategray: '#2f4f4f',
42
+ darkslategrey: '#2f4f4f',
43
+ darkturquoise: '#00ced1',
44
+ darkviolet: '#9400d3',
45
+ deeppink: '#ff1493',
46
+ deepskyblue: '#00bfff',
47
+ dimgray: '#696969',
48
+ dimgrey: '#696969',
49
+ dodgerblue: '#1e90ff',
50
+ firebrick: '#b22222',
51
+ floralwhite: '#fffaf0',
52
+ forestgreen: '#228b22',
53
+ fuchsia: '#ff00ff',
54
+ gainsboro: '#dcdcdc',
55
+ ghostwhite: '#f8f8ff',
56
+ gold: '#ffd700',
57
+ goldenrod: '#daa520',
58
+ gray: '#808080',
59
+ grey: '#808080',
60
+ green: '#008000',
61
+ greenyellow: '#adff2f',
62
+ honeydew: '#f0fff0',
63
+ hotpink: '#ff69b4',
64
+ indianred: '#cd5c5c',
65
+ indigo: '#4b0082',
66
+ ivory: '#fffff0',
67
+ khaki: '#f0e68c',
68
+ lavender: '#e6e6fa',
69
+ lavenderblush: '#fff0f5',
70
+ lawngreen: '#7cfc00',
71
+ lemonchiffon: '#fffacd',
72
+ lightblue: '#add8e6',
73
+ lightcoral: '#f08080',
74
+ lightcyan: '#e0ffff',
75
+ lightgoldenrodyellow: '#FAFAD2',
76
+ lightgray: '#d3d3d3',
77
+ lightgrey: '#d3d3d3',
78
+ lightgreen: '#90ee90',
79
+ lightpink: '#ffb6c1',
80
+ lightsalmon: '#ffa07a',
81
+ lightseagreen: '#20b2aa',
82
+ lightskyblue: '#87cefa',
83
+ lightslategray: '#778899',
84
+ lightslategrey: '#778899',
85
+ lightsteelblue: '#b0c4de',
86
+ lightyellow: '#ffffe0',
87
+ lime: '#00ff00',
88
+ limegreen: '#32cd32',
89
+ linen: '#faf0e6',
90
+ magenta: '#ff00ff',
91
+ maroon: '#800000',
92
+ mediumaquamarine: '#66cdaa',
93
+ mediumblue: '#0000cd',
94
+ mediumorchid: '#ba55d3',
95
+ mediumpurple: '#9370d8',
96
+ mediumseagreen: '#3cb371',
97
+ mediumslateblue: '#7b68ee',
98
+ mediumspringgreen: '#00fa9a',
99
+ mediumturquoise: '#48d1cc',
100
+ mediumvioletred: '#c71585',
101
+ midnightblue: '#191970',
102
+ mintcream: '#f5fffa',
103
+ mistyrose: '#ffe4e1',
104
+ moccasin: '#ffe4b5',
105
+ navajowhite: '#ffdead',
106
+ navy: '#000080',
107
+ oldlace: '#fdf5e6',
108
+ olive: '#808000',
109
+ olivedrab: '#6b8e23',
110
+ orange: '#ffa500',
111
+ orangered: '#ff4500',
112
+ orchid: '#da70d6',
113
+ palegoldenrod: '#eee8aa',
114
+ palegreen: '#98fb98',
115
+ paleturquoise: '#afeeee',
116
+ palevioletred: '#d87093',
117
+ papayawhip: '#ffefd5',
118
+ peachpuff: '#ffdab9',
119
+ peru: '#cd853f',
120
+ pink: '#ffc0cb',
121
+ plum: '#dda0dd',
122
+ powderblue: '#b0e0e6',
123
+ purple: '#800080',
124
+ red: '#ff0000',
125
+ rosybrown: '#bc8f8f',
126
+ royalblue: '#4169e1',
127
+ saddlebrown: '#8b4513',
128
+ salmon: '#fa8072',
129
+ sandybrown: '#f4a460',
130
+ seagreen: '#2e8b57',
131
+ seashell: '#fff5ee',
132
+ sienna: '#a0522d',
133
+ silver: '#c0c0c0',
134
+ skyblue: '#87ceeb',
135
+ slateblue: '#6a5acd',
136
+ slategray: '#708090',
137
+ slategrey: '#708090',
138
+ snow: '#fffafa',
139
+ springgreen: '#00ff7f',
140
+ steelblue: '#4682b4',
141
+ tan: '#d2b48c',
142
+ teal: '#008080',
143
+ thistle: '#d8bfd8',
144
+ tomato: '#ff6347',
145
+ turquoise: '#40e0d0',
146
+ violet: '#ee82ee',
147
+ wheat: '#f5deb3',
148
+ white: '#ffffff',
149
+ whitesmoke: '#f5f5f5',
150
+ yellow: '#ffff00',
151
+ yellowgreen: '#9acd32',
152
+ };
153
+ //# sourceMappingURL=css-colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-colors.js","sourceRoot":"","sources":["../../src/modules/css-colors.ts"],"names":[],"mappings":"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"}
File without changes
@@ -3,8 +3,8 @@ import { invariant, isNumber, round } from './utils';
3
3
  * Convert hue to RGB using chroma and median point
4
4
  */
5
5
  export default function hue2rgb(point, chroma, h) {
6
- invariant(!isNumber(point) || !isNumber(chroma) || !isNumber(h), 'point, chroma and h are required');
7
- var hue = h;
6
+ invariant(isNumber(point) && isNumber(chroma) && isNumber(h), 'point, chroma and h are required');
7
+ let hue = h;
8
8
  if (hue < 0) {
9
9
  hue += 1;
10
10
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hue2rgb.js","sourceRoot":"","sources":["../../src/modules/hue2rgb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAa,EAAE,MAAc,EAAE,CAAS;IACtE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,kCAAkC,CAAC,CAAC;IAClG,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,IAAI,GAAG,GAAG,CAAC,EAAE;QACX,GAAG,IAAI,CAAC,CAAC;KACV;IAED,IAAI,GAAG,GAAG,CAAC,EAAE;QACX,GAAG,IAAI,CAAC,CAAC;KACV;IAED,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE;QACf,OAAO,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;KACrD;IAED,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE;QACf,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;KACzB;IAED,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE;QACf,OAAO,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KAC/D;IAED,OAAO,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;AACzB,CAAC"}
@@ -1,2 +1,2 @@
1
- import { Colors, HSL, RGB, RGBArray } from './types';
1
+ import { Colors, HSL, RGB, RGBArray } from '../types';
2
2
  export default function parseColor(color: string | HSL | RGB | RGBArray): Colors;
@@ -1,18 +1,18 @@
1
- import hex2hsl from './hex2hsl';
2
- import hex2rgb from './hex2rgb';
3
- import hsl2hex from './hsl2hex';
4
- import hsl2rgb from './hsl2rgb';
5
- import isValidHex from './is-valid-hex';
6
- import parseCSS from './parse-css';
7
- import rgb2hex from './rgb2hex';
8
- import rgb2hsl from './rgb2hsl';
9
1
  import { invariant, isHSL, isPlainObject, isRGB, isString, limit, messages } from './utils';
2
+ import hex2hsl from '../hex2hsl';
3
+ import hex2rgb from '../hex2rgb';
4
+ import hsl2hex from '../hsl2hex';
5
+ import hsl2rgb from '../hsl2rgb';
6
+ import isValidHex from '../is-valid-hex';
7
+ import parseCSS from '../parse-css';
8
+ import rgb2hex from '../rgb2hex';
9
+ import rgb2hsl from '../rgb2hsl';
10
10
  export default function parseColor(color) {
11
- invariant(!color, messages.input);
12
- var output = {};
11
+ invariant(!!color, messages.input);
12
+ const output = {};
13
13
  if (isString(color)) {
14
- var hex = parseCSS(color);
15
- invariant(!isValidHex(hex), 'input is not valid');
14
+ const hex = parseCSS(color);
15
+ invariant(isValidHex(hex), 'input is not valid');
16
16
  output.hex = hex;
17
17
  output.rgb = hex2rgb(hex);
18
18
  output.hsl = hex2hsl(hex);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-color.js","sourceRoot":"","sources":["../../src/modules/parse-color.ts"],"names":[],"mappings":"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"}
File without changes
@@ -0,0 +1,19 @@
1
+ import { constrain, invariant, isNumber, isString, messages } from './utils';
2
+ import hex2hsl from '../hex2hsl';
3
+ import parseCSS from '../parse-css';
4
+ import { shift } from '../shift';
5
+ /**
6
+ * Update color properties
7
+ */
8
+ export default function updater(type, sign) {
9
+ return (input, amount) => {
10
+ invariant(isString(input), messages.inputString);
11
+ invariant(isNumber(amount), messages.amount);
12
+ const hex = parseCSS(input);
13
+ const hsl = hex2hsl(hex);
14
+ return shift(hex, {
15
+ [type]: constrain(hsl[type], amount, [0, 100], sign),
16
+ });
17
+ };
18
+ }
19
+ //# sourceMappingURL=updater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updater.js","sourceRoot":"","sources":["../../src/modules/updater.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,IAAqB,EAAE,IAAe;IACpE,OAAO,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACvC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACjD,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAE7C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAEzB,OAAO,KAAK,CAAC,GAAG,EAAE;YAChB,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC;SACrD,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,61 @@
1
+ import { HSL, PlainObject, RGB, RGBArray } from '../types';
2
+ export declare const HSLKeys: string[];
3
+ export declare const RGBKeys: string[];
4
+ /**
5
+ * Constrain value into the range
6
+ */
7
+ export declare function constrain(input: number, amount: number, range: number[], sign: string): number;
8
+ /**
9
+ * Constrain an angle
10
+ */
11
+ export declare function constrainDegrees(input: number, amount: number): number;
12
+ /**
13
+ * Parse math string expressions
14
+ */
15
+ export declare function expr(input: string): number;
16
+ export declare function invariant(condition: boolean, message: string): asserts condition;
17
+ /**
18
+ * Check if an object contains HSL values
19
+ */
20
+ export declare function isHSL(input: any): input is HSL;
21
+ /**
22
+ * Check if the input is a number and not NaN
23
+ */
24
+ export declare function isNumber(input: any): input is number;
25
+ /**
26
+ * Check if the input is an object
27
+ */
28
+ export declare function isPlainObject(input: any): input is PlainObject;
29
+ /**
30
+ * Check if an object contains RGB values.
31
+ */
32
+ export declare function isRGB(input: any): input is RGB;
33
+ /**
34
+ * Check if an array contains RGB values.
35
+ */
36
+ export declare function isRGBArray(input: any): input is RGBArray;
37
+ /**
38
+ * Check if the input is a string
39
+ */
40
+ export declare function isString(input: any): input is string;
41
+ /**
42
+ * Limit values per type.
43
+ */
44
+ export declare function limit(input: number, type: string): number;
45
+ export declare const messages: {
46
+ amount: string;
47
+ left: string;
48
+ right: string;
49
+ input: string;
50
+ inputString: string;
51
+ invalid: string;
52
+ options: string;
53
+ };
54
+ /**
55
+ * Creates an object composed of the picked source properties.
56
+ */
57
+ export declare function pick(input: PlainObject, options: string[]): PlainObject;
58
+ /**
59
+ * Round decimal numbers.
60
+ */
61
+ export declare function round(input: number, digits?: number): number;
@@ -0,0 +1,199 @@
1
+ export const HSLKeys = ['h', 's', 'l'];
2
+ export const RGBKeys = ['r', 'g', 'b'];
3
+ /**
4
+ * Constrain value into the range
5
+ */
6
+ export function constrain(input, amount, range, sign) {
7
+ invariant(arguments.length === 4, 'All parameters are required');
8
+ const [min, max] = range;
9
+ let value = expr(input + sign + amount);
10
+ if (value < min) {
11
+ value = min;
12
+ }
13
+ else if (value > max) {
14
+ value = max;
15
+ }
16
+ return Math.abs(value);
17
+ }
18
+ /**
19
+ * Constrain an angle
20
+ */
21
+ export function constrainDegrees(input, amount) {
22
+ invariant(isNumber(input), 'input is required');
23
+ let value = input + amount;
24
+ if (value > 360) {
25
+ value %= 360;
26
+ }
27
+ if (value < 0) {
28
+ value += 360;
29
+ }
30
+ return Math.abs(value);
31
+ }
32
+ /**
33
+ * Parse math string expressions
34
+ */
35
+ export function expr(input) {
36
+ const chars = [...input];
37
+ const n = [];
38
+ const op = [];
39
+ let parsed;
40
+ let index = 0;
41
+ let last = true;
42
+ n[index] = '';
43
+ // Parse the string
44
+ for (const char of chars) {
45
+ if (Number.isNaN(parseInt(char, 10)) && char !== '.' && !last) {
46
+ op[index] = char;
47
+ index++;
48
+ n[index] = '';
49
+ last = true;
50
+ }
51
+ else {
52
+ n[index] += char;
53
+ last = false;
54
+ }
55
+ }
56
+ // Calculate the expression
57
+ parsed = parseFloat(n[0]);
58
+ for (const [o, element] of op.entries()) {
59
+ const value = parseFloat(n[o + 1]);
60
+ switch (element) {
61
+ case '+':
62
+ parsed += value;
63
+ break;
64
+ case '-':
65
+ parsed -= value;
66
+ break;
67
+ case '*':
68
+ parsed *= value;
69
+ break;
70
+ case '/':
71
+ parsed /= value;
72
+ break;
73
+ default:
74
+ break;
75
+ }
76
+ }
77
+ return parsed;
78
+ }
79
+ export function invariant(condition, message) {
80
+ if (condition) {
81
+ return;
82
+ }
83
+ /* istanbul ignore else */
84
+ if (process.env.NODE_ENV !== 'production') {
85
+ if (message === undefined) {
86
+ throw new Error('invariant requires an error message argument');
87
+ }
88
+ }
89
+ let error;
90
+ if (!message) {
91
+ throw new Error('Minified exception occurred; use the non-minified dev environment ' +
92
+ 'for the full error message and additional helpful warnings.');
93
+ }
94
+ else {
95
+ error = new Error(message);
96
+ }
97
+ error.name = 'colorizr';
98
+ throw error;
99
+ }
100
+ /**
101
+ * Check if an object contains HSL values
102
+ */
103
+ export function isHSL(input) {
104
+ if (!isPlainObject(input)) {
105
+ return false;
106
+ }
107
+ const entries = Object.entries(input);
108
+ return (!!entries.length &&
109
+ entries.every(([key, value]) => HSLKeys.includes(key) && value >= 0 && value <= (key === 'h' ? 360 : 100)));
110
+ }
111
+ /**
112
+ * Check if the input is a number and not NaN
113
+ */
114
+ export function isNumber(input) {
115
+ return typeof input === 'number' && !Number.isNaN(input);
116
+ }
117
+ /**
118
+ * Check if the input is an object
119
+ */
120
+ export function isPlainObject(input) {
121
+ if (!input) {
122
+ return false;
123
+ }
124
+ const { toString } = Object.prototype;
125
+ const prototype = Object.getPrototypeOf(input);
126
+ return (toString.call(input) === '[object Object]' &&
127
+ (prototype === null || prototype === Object.getPrototypeOf({})));
128
+ }
129
+ /**
130
+ * Check if an object contains RGB values.
131
+ */
132
+ export function isRGB(input) {
133
+ if (!isPlainObject(input)) {
134
+ return false;
135
+ }
136
+ const entries = Object.entries(input);
137
+ return (!!entries.length &&
138
+ entries.every(([key, value]) => RGBKeys.includes(key) && value >= 0 && value <= 255));
139
+ }
140
+ /**
141
+ * Check if an array contains RGB values.
142
+ */
143
+ export function isRGBArray(input) {
144
+ return Array.isArray(input) && input.length === 3 && input.every(d => d >= 0 && d <= 255);
145
+ }
146
+ /**
147
+ * Check if the input is a string
148
+ */
149
+ export function isString(input) {
150
+ return typeof input === 'string';
151
+ }
152
+ /**
153
+ * Limit values per type.
154
+ */
155
+ export function limit(input, type) {
156
+ invariant(isNumber(input), 'Input is not a number');
157
+ /* istanbul ignore else */
158
+ if (RGBKeys.includes(type)) {
159
+ return Math.max(Math.min(input, 255), 0);
160
+ }
161
+ if (['s', 'l'].includes(type)) {
162
+ return Math.max(Math.min(input, 100), 0);
163
+ }
164
+ if (type === 'h') {
165
+ return Math.max(Math.min(input, 360), 0);
166
+ }
167
+ throw new Error('Invalid type');
168
+ }
169
+ export const messages = {
170
+ amount: 'amount must be a number',
171
+ left: 'left is required and must be a string',
172
+ right: 'right is required and must be a string',
173
+ input: 'input is required',
174
+ inputString: 'input is required and must be a string',
175
+ invalid: 'invalid input',
176
+ options: 'invalid options',
177
+ };
178
+ /**
179
+ * Creates an object composed of the picked source properties.
180
+ */
181
+ export function pick(input, options) {
182
+ if (!Array.isArray(options)) {
183
+ throw new TypeError('options must be an array');
184
+ }
185
+ return options
186
+ .filter(d => typeof input[d] !== 'undefined')
187
+ .reduce((acc, d) => {
188
+ acc[d] = input[d];
189
+ return acc;
190
+ }, {});
191
+ }
192
+ /**
193
+ * Round decimal numbers.
194
+ */
195
+ export function round(input, digits = 2) {
196
+ const factor = 10 ** digits;
197
+ return Math.round(input * factor) / factor;
198
+ }
199
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/modules/utils.ts"],"names":[],"mappings":"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"}
package/esm/name.js CHANGED
@@ -1,12 +1,10 @@
1
- import { cssColors, invariant, isString, messages } from './utils';
1
+ import { cssColors } from './modules/css-colors';
2
+ import { invariant, isString, messages } from './modules/utils';
2
3
  import parseCSS from './parse-css';
3
4
  export default function name(input) {
4
- invariant(!isString(input), messages.inputString);
5
- var hex = parseCSS(input);
6
- var color = (Object.entries(cssColors).find(function (_a) {
7
- var value = _a[1];
8
- return value === hex;
9
- }) || [])[0];
5
+ invariant(isString(input), messages.inputString);
6
+ const hex = parseCSS(input);
7
+ const [color] = Object.entries(cssColors).find(([, value]) => value === hex) || [];
10
8
  return color || hex;
11
9
  }
12
10
  //# sourceMappingURL=name.js.map
package/esm/name.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"name.js","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAa;IACxC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAElD,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAErB,IAAA,KAAK,GAAI,CAAA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAC,EAAS;YAAN,KAAK,QAAA;QAAM,OAAA,KAAK,KAAK,GAAG;IAAb,CAAa,CAAC,IAAI,EAAE,CAAA,GAAtE,CAAuE;IAEnF,OAAO,KAAK,IAAI,GAAG,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"name.js","sourceRoot":"","sources":["../src/name.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,QAAQ,MAAM,aAAa,CAAC;AAEnC,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAa;IACxC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEjD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5B,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;IAEnF,OAAO,KAAK,IAAI,GAAG,CAAC;AACtB,CAAC"}
package/esm/palette.js CHANGED
@@ -1,40 +1,28 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  import hex2hsl from './hex2hsl';
13
2
  import hsl2hex from './hsl2hex';
3
+ import { invariant, isPlainObject, isString, messages } from './modules/utils';
14
4
  import parseCSS from './parse-css';
15
5
  import rotate from './rotate';
16
- import { invariant, isPlainObject, isString, messages } from './utils';
17
- export default function palette(input, options) {
18
- if (options === void 0) { options = {}; }
19
- invariant(!isString(input), messages.inputString);
20
- invariant(!isPlainObject(options), messages.options);
21
- var lightness = options.lightness, saturation = options.saturation, _a = options.size, size = _a === void 0 ? 6 : _a, type = options.type;
22
- var hsl = hex2hsl(parseCSS(input));
23
- var output = [];
6
+ export default function palette(input, options = {}) {
7
+ invariant(isString(input), messages.inputString);
8
+ invariant(isPlainObject(options), messages.options);
9
+ const { lightness, saturation, size = 6, type } = options;
10
+ const hsl = hex2hsl(parseCSS(input));
11
+ const output = [];
24
12
  switch (type) {
25
13
  case 'monochromatic': {
26
- var step = 80 / size;
27
- for (var i = size; i > 0; i--) {
28
- output.push(hsl2hex(__assign(__assign({}, hsl), { l: step * i })));
14
+ const step = 80 / size;
15
+ for (let index = size; index > 0; index--) {
16
+ output.push(hsl2hex({ ...hsl, l: step * index }));
29
17
  }
30
18
  break;
31
19
  }
32
20
  default: {
33
- var step = 360 / size;
34
- output.push(hsl2hex(__assign(__assign({}, hsl), { l: lightness || hsl.l, s: saturation || hsl.s })));
35
- for (var i = 1; i < size; i++) {
36
- var color = rotate(input, hsl.h + step * i);
37
- output.push(hsl2hex(__assign(__assign({}, hex2hsl(color)), { l: lightness || hsl.l, s: saturation || hsl.s })));
21
+ const step = 360 / size;
22
+ output.push(hsl2hex({ ...hsl, l: lightness || hsl.l, s: saturation || hsl.s }));
23
+ for (let index = 1; index < size; index++) {
24
+ const color = rotate(input, hsl.h + step * index);
25
+ output.push(hsl2hex({ ...hex2hsl(color), l: lightness || hsl.l, s: saturation || hsl.s }));
38
26
  }
39
27
  break;
40
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"palette.js","sourceRoot":"","sources":["../src/palette.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAIvE,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAa,EAAE,OAA4B;IAA5B,wBAAA,EAAA,YAA4B;IACzE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAClD,SAAS,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAE7C,IAAA,SAAS,GAAiC,OAAO,UAAxC,EAAE,UAAU,GAAqB,OAAO,WAA5B,EAAE,KAAmB,OAAO,KAAlB,EAAR,IAAI,mBAAG,CAAC,KAAA,EAAE,IAAI,GAAK,OAAO,KAAZ,CAAa;IAC1D,IAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,IAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,QAAQ,IAAI,EAAE;QACZ,KAAK,eAAe,CAAC,CAAC;YACpB,IAAM,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC;YAEvB,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,uBAAM,GAAG,KAAE,CAAC,EAAE,IAAI,GAAG,CAAC,IAAG,CAAC,CAAC;aAC/C;YAED,MAAM;SACP;QACD,OAAO,CAAC,CAAC;YACP,IAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,OAAO,uBAAM,GAAG,KAAE,CAAC,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,IAAG,CAAC,CAAC;YAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;gBAE9C,MAAM,CAAC,IAAI,CAAC,OAAO,uBAAM,OAAO,CAAC,KAAK,CAAC,KAAE,CAAC,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,IAAG,CAAC,CAAC;aAC5F;YAED,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"palette.js","sourceRoot":"","sources":["../src/palette.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC/E,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAa,EAAE,UAA0B,EAAE;IACzE,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjD,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEpD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,QAAQ,IAAI,EAAE;QACZ,KAAK,eAAe,CAAC,CAAC;YACpB,MAAM,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC;YAEvB,KAAK,IAAI,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE;gBACzC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;aACnD;YAED,MAAM;SACP;QACD,OAAO,CAAC,CAAC;YACP,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;YAExB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAEhF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,EAAE;gBACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;gBAElD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,SAAS,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC5F;YAED,MAAM;SACP;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}