@fluixi/utils 1.0.0-alpha.53

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 (354) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -0
  3. package/dist/index.cjs +1 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +1 -0
  7. package/dist/index.mjs +1 -0
  8. package/dist/lib/array/advanced.cjs +1 -0
  9. package/dist/lib/array/advanced.d.ts +1116 -0
  10. package/dist/lib/array/advanced.d.ts.map +1 -0
  11. package/dist/lib/array/advanced.js +2429 -0
  12. package/dist/lib/array/advanced.mjs +1 -0
  13. package/dist/lib/array/array.cjs +1 -0
  14. package/dist/lib/array/array.d.ts +6 -0
  15. package/dist/lib/array/array.d.ts.map +1 -0
  16. package/dist/lib/array/array.js +31 -0
  17. package/dist/lib/array/array.mjs +1 -0
  18. package/dist/lib/array/index.cjs +1 -0
  19. package/dist/lib/array/index.d.ts +4 -0
  20. package/dist/lib/array/index.d.ts.map +1 -0
  21. package/dist/lib/array/index.js +3 -0
  22. package/dist/lib/array/index.mjs +1 -0
  23. package/dist/lib/array/utils.cjs +1 -0
  24. package/dist/lib/array/utils.d.ts +100 -0
  25. package/dist/lib/array/utils.d.ts.map +1 -0
  26. package/dist/lib/array/utils.js +165 -0
  27. package/dist/lib/array/utils.mjs +1 -0
  28. package/dist/lib/color/color.cjs +1 -0
  29. package/dist/lib/color/color.d.ts +366 -0
  30. package/dist/lib/color/color.d.ts.map +1 -0
  31. package/dist/lib/color/color.js +722 -0
  32. package/dist/lib/color/color.mjs +1 -0
  33. package/dist/lib/color/constants.cjs +1 -0
  34. package/dist/lib/color/constants.d.ts +361 -0
  35. package/dist/lib/color/constants.d.ts.map +1 -0
  36. package/dist/lib/color/constants.js +358 -0
  37. package/dist/lib/color/constants.mjs +1 -0
  38. package/dist/lib/color/conversions.cjs +1 -0
  39. package/dist/lib/color/conversions.d.ts +166 -0
  40. package/dist/lib/color/conversions.d.ts.map +1 -0
  41. package/dist/lib/color/conversions.js +766 -0
  42. package/dist/lib/color/conversions.mjs +1 -0
  43. package/dist/lib/color/helpers.cjs +1 -0
  44. package/dist/lib/color/helpers.d.ts +75 -0
  45. package/dist/lib/color/helpers.d.ts.map +1 -0
  46. package/dist/lib/color/helpers.js +419 -0
  47. package/dist/lib/color/helpers.mjs +1 -0
  48. package/dist/lib/color/index.cjs +1 -0
  49. package/dist/lib/color/index.d.ts +12 -0
  50. package/dist/lib/color/index.d.ts.map +1 -0
  51. package/dist/lib/color/index.js +15 -0
  52. package/dist/lib/color/index.mjs +1 -0
  53. package/dist/lib/color/types.cjs +1 -0
  54. package/dist/lib/color/types.d.ts +179 -0
  55. package/dist/lib/color/types.d.ts.map +1 -0
  56. package/dist/lib/color/types.js +1 -0
  57. package/dist/lib/color/types.mjs +0 -0
  58. package/dist/lib/color/utils.cjs +1 -0
  59. package/dist/lib/color/utils.d.ts +199 -0
  60. package/dist/lib/color/utils.d.ts.map +1 -0
  61. package/dist/lib/color/utils.js +858 -0
  62. package/dist/lib/color/utils.mjs +1 -0
  63. package/dist/lib/compare/comparators.cjs +1 -0
  64. package/dist/lib/compare/comparators.d.ts +65 -0
  65. package/dist/lib/compare/comparators.d.ts.map +1 -0
  66. package/dist/lib/compare/comparators.js +210 -0
  67. package/dist/lib/compare/comparators.mjs +1 -0
  68. package/dist/lib/compare/index.cjs +1 -0
  69. package/dist/lib/compare/index.d.ts +2 -0
  70. package/dist/lib/compare/index.d.ts.map +1 -0
  71. package/dist/lib/compare/index.js +1 -0
  72. package/dist/lib/compare/index.mjs +1 -0
  73. package/dist/lib/crypto/hash.cjs +1 -0
  74. package/dist/lib/crypto/hash.d.ts +6 -0
  75. package/dist/lib/crypto/hash.d.ts.map +1 -0
  76. package/dist/lib/crypto/hash.js +53 -0
  77. package/dist/lib/crypto/hash.mjs +1 -0
  78. package/dist/lib/crypto/index.cjs +1 -0
  79. package/dist/lib/crypto/index.d.ts +2 -0
  80. package/dist/lib/crypto/index.d.ts.map +1 -0
  81. package/dist/lib/crypto/index.js +1 -0
  82. package/dist/lib/crypto/index.mjs +1 -0
  83. package/dist/lib/dom/events.cjs +1 -0
  84. package/dist/lib/dom/events.d.ts +159 -0
  85. package/dist/lib/dom/events.d.ts.map +1 -0
  86. package/dist/lib/dom/events.js +50 -0
  87. package/dist/lib/dom/events.mjs +1 -0
  88. package/dist/lib/dom/index.cjs +1 -0
  89. package/dist/lib/dom/index.d.ts +3 -0
  90. package/dist/lib/dom/index.d.ts.map +1 -0
  91. package/dist/lib/dom/index.js +2 -0
  92. package/dist/lib/dom/index.mjs +1 -0
  93. package/dist/lib/dom/utils.cjs +1 -0
  94. package/dist/lib/dom/utils.d.ts +6 -0
  95. package/dist/lib/dom/utils.d.ts.map +1 -0
  96. package/dist/lib/dom/utils.js +37 -0
  97. package/dist/lib/dom/utils.mjs +1 -0
  98. package/dist/lib/functions/functions.cjs +1 -0
  99. package/dist/lib/functions/functions.d.ts +329 -0
  100. package/dist/lib/functions/functions.d.ts.map +1 -0
  101. package/dist/lib/functions/functions.js +585 -0
  102. package/dist/lib/functions/functions.mjs +1 -0
  103. package/dist/lib/functions/index.cjs +1 -0
  104. package/dist/lib/functions/index.d.ts +3 -0
  105. package/dist/lib/functions/index.d.ts.map +1 -0
  106. package/dist/lib/functions/index.js +1 -0
  107. package/dist/lib/functions/index.mjs +1 -0
  108. package/dist/lib/functions/types.cjs +1 -0
  109. package/dist/lib/functions/types.d.ts +2 -0
  110. package/dist/lib/functions/types.d.ts.map +1 -0
  111. package/dist/lib/functions/types.js +1 -0
  112. package/dist/lib/functions/types.mjs +0 -0
  113. package/dist/lib/helpers.cjs +1 -0
  114. package/dist/lib/helpers.d.ts +13 -0
  115. package/dist/lib/helpers.d.ts.map +1 -0
  116. package/dist/lib/helpers.js +66 -0
  117. package/dist/lib/helpers.mjs +1 -0
  118. package/dist/lib/index.cjs +1 -0
  119. package/dist/lib/index.d.ts +6 -0
  120. package/dist/lib/index.d.ts.map +1 -0
  121. package/dist/lib/index.js +8 -0
  122. package/dist/lib/index.mjs +1 -0
  123. package/dist/lib/maths/constants.cjs +1 -0
  124. package/dist/lib/maths/constants.d.ts +84 -0
  125. package/dist/lib/maths/constants.d.ts.map +1 -0
  126. package/dist/lib/maths/constants.js +79 -0
  127. package/dist/lib/maths/constants.mjs +1 -0
  128. package/dist/lib/maths/fn/advanced.cjs +1 -0
  129. package/dist/lib/maths/fn/advanced.d.ts +149 -0
  130. package/dist/lib/maths/fn/advanced.d.ts.map +1 -0
  131. package/dist/lib/maths/fn/advanced.js +264 -0
  132. package/dist/lib/maths/fn/advanced.mjs +1 -0
  133. package/dist/lib/maths/fn/basic.cjs +1 -0
  134. package/dist/lib/maths/fn/basic.d.ts +182 -0
  135. package/dist/lib/maths/fn/basic.d.ts.map +1 -0
  136. package/dist/lib/maths/fn/basic.js +343 -0
  137. package/dist/lib/maths/fn/basic.mjs +1 -0
  138. package/dist/lib/maths/fn/complex.cjs +1 -0
  139. package/dist/lib/maths/fn/complex.d.ts +153 -0
  140. package/dist/lib/maths/fn/complex.d.ts.map +1 -0
  141. package/dist/lib/maths/fn/complex.js +383 -0
  142. package/dist/lib/maths/fn/complex.mjs +1 -0
  143. package/dist/lib/maths/fn/index.cjs +1 -0
  144. package/dist/lib/maths/fn/index.d.ts +10 -0
  145. package/dist/lib/maths/fn/index.d.ts.map +1 -0
  146. package/dist/lib/maths/fn/index.js +9 -0
  147. package/dist/lib/maths/fn/index.mjs +1 -0
  148. package/dist/lib/maths/fn/trigo.cjs +1 -0
  149. package/dist/lib/maths/fn/trigo.d.ts +147 -0
  150. package/dist/lib/maths/fn/trigo.d.ts.map +1 -0
  151. package/dist/lib/maths/fn/trigo.js +227 -0
  152. package/dist/lib/maths/fn/trigo.mjs +1 -0
  153. package/dist/lib/maths/fn/vector.cjs +1 -0
  154. package/dist/lib/maths/fn/vector.d.ts +512 -0
  155. package/dist/lib/maths/fn/vector.d.ts.map +1 -0
  156. package/dist/lib/maths/fn/vector.js +1136 -0
  157. package/dist/lib/maths/fn/vector.mjs +1 -0
  158. package/dist/lib/maths/formatter.cjs +1 -0
  159. package/dist/lib/maths/formatter.d.ts +35 -0
  160. package/dist/lib/maths/formatter.d.ts.map +1 -0
  161. package/dist/lib/maths/formatter.js +56 -0
  162. package/dist/lib/maths/formatter.mjs +1 -0
  163. package/dist/lib/maths/guards.cjs +1 -0
  164. package/dist/lib/maths/guards.d.ts +166 -0
  165. package/dist/lib/maths/guards.d.ts.map +1 -0
  166. package/dist/lib/maths/guards.js +315 -0
  167. package/dist/lib/maths/guards.mjs +1 -0
  168. package/dist/lib/maths/index.cjs +1 -0
  169. package/dist/lib/maths/index.d.ts +24 -0
  170. package/dist/lib/maths/index.d.ts.map +1 -0
  171. package/dist/lib/maths/index.js +29 -0
  172. package/dist/lib/maths/index.mjs +1 -0
  173. package/dist/lib/maths/parser.cjs +1 -0
  174. package/dist/lib/maths/parser.d.ts +20 -0
  175. package/dist/lib/maths/parser.d.ts.map +1 -0
  176. package/dist/lib/maths/parser.js +78 -0
  177. package/dist/lib/maths/parser.mjs +1 -0
  178. package/dist/lib/maths/random.cjs +1 -0
  179. package/dist/lib/maths/random.d.ts +27 -0
  180. package/dist/lib/maths/random.d.ts.map +1 -0
  181. package/dist/lib/maths/random.js +49 -0
  182. package/dist/lib/maths/random.mjs +1 -0
  183. package/dist/lib/maths/types/advanced.cjs +1 -0
  184. package/dist/lib/maths/types/advanced.d.ts +357 -0
  185. package/dist/lib/maths/types/advanced.d.ts.map +1 -0
  186. package/dist/lib/maths/types/advanced.js +5 -0
  187. package/dist/lib/maths/types/advanced.mjs +0 -0
  188. package/dist/lib/maths/types/basic.cjs +1 -0
  189. package/dist/lib/maths/types/basic.d.ts +95 -0
  190. package/dist/lib/maths/types/basic.d.ts.map +1 -0
  191. package/dist/lib/maths/types/basic.js +5 -0
  192. package/dist/lib/maths/types/basic.mjs +0 -0
  193. package/dist/lib/maths/types/index.cjs +1 -0
  194. package/dist/lib/maths/types/index.d.ts +4 -0
  195. package/dist/lib/maths/types/index.d.ts.map +1 -0
  196. package/dist/lib/maths/types/index.js +3 -0
  197. package/dist/lib/maths/types/index.mjs +0 -0
  198. package/dist/lib/maths/types/negative.cjs +1 -0
  199. package/dist/lib/maths/types/negative.d.ts +51 -0
  200. package/dist/lib/maths/types/negative.d.ts.map +1 -0
  201. package/dist/lib/maths/types/negative.js +5 -0
  202. package/dist/lib/maths/types/negative.mjs +0 -0
  203. package/dist/lib/maths/types/operations.cjs +1 -0
  204. package/dist/lib/maths/types/operations.d.ts +188 -0
  205. package/dist/lib/maths/types/operations.d.ts.map +1 -0
  206. package/dist/lib/maths/types/operations.js +6 -0
  207. package/dist/lib/maths/types/operations.mjs +0 -0
  208. package/dist/lib/object/clone.cjs +1 -0
  209. package/dist/lib/object/clone.d.ts +46 -0
  210. package/dist/lib/object/clone.d.ts.map +1 -0
  211. package/dist/lib/object/clone.js +104 -0
  212. package/dist/lib/object/clone.mjs +1 -0
  213. package/dist/lib/object/diff.cjs +1 -0
  214. package/dist/lib/object/diff.d.ts +203 -0
  215. package/dist/lib/object/diff.d.ts.map +1 -0
  216. package/dist/lib/object/diff.js +805 -0
  217. package/dist/lib/object/diff.mjs +1 -0
  218. package/dist/lib/object/getter-setter.cjs +1 -0
  219. package/dist/lib/object/getter-setter.d.ts +361 -0
  220. package/dist/lib/object/getter-setter.d.ts.map +1 -0
  221. package/dist/lib/object/getter-setter.js +1771 -0
  222. package/dist/lib/object/getter-setter.mjs +1 -0
  223. package/dist/lib/object/index.cjs +6 -0
  224. package/dist/lib/object/index.d.ts +13 -0
  225. package/dist/lib/object/index.d.ts.map +1 -0
  226. package/dist/lib/object/index.js +12 -0
  227. package/dist/lib/object/index.mjs +6 -0
  228. package/dist/lib/object/merge.cjs +1 -0
  229. package/dist/lib/object/merge.d.ts +93 -0
  230. package/dist/lib/object/merge.d.ts.map +1 -0
  231. package/dist/lib/object/merge.js +474 -0
  232. package/dist/lib/object/merge.mjs +1 -0
  233. package/dist/lib/object/object.cjs +1 -0
  234. package/dist/lib/object/object.d.ts +128 -0
  235. package/dist/lib/object/object.d.ts.map +1 -0
  236. package/dist/lib/object/object.js +432 -0
  237. package/dist/lib/object/object.mjs +1 -0
  238. package/dist/lib/object/omit.cjs +1 -0
  239. package/dist/lib/object/omit.d.ts +351 -0
  240. package/dist/lib/object/omit.d.ts.map +1 -0
  241. package/dist/lib/object/omit.js +656 -0
  242. package/dist/lib/object/omit.mjs +1 -0
  243. package/dist/lib/object/reconcile.cjs +1 -0
  244. package/dist/lib/object/reconcile.d.ts +7 -0
  245. package/dist/lib/object/reconcile.d.ts.map +1 -0
  246. package/dist/lib/object/reconcile.js +122 -0
  247. package/dist/lib/object/reconcile.mjs +1 -0
  248. package/dist/lib/object/selector.cjs +1 -0
  249. package/dist/lib/object/selector.d.ts +50 -0
  250. package/dist/lib/object/selector.d.ts.map +1 -0
  251. package/dist/lib/object/selector.js +371 -0
  252. package/dist/lib/object/selector.mjs +1 -0
  253. package/dist/lib/object/sort.cjs +1 -0
  254. package/dist/lib/object/sort.d.ts +149 -0
  255. package/dist/lib/object/sort.d.ts.map +1 -0
  256. package/dist/lib/object/sort.js +298 -0
  257. package/dist/lib/object/sort.mjs +1 -0
  258. package/dist/lib/object/transform.cjs +1 -0
  259. package/dist/lib/object/transform.d.ts +620 -0
  260. package/dist/lib/object/transform.d.ts.map +1 -0
  261. package/dist/lib/object/transform.js +1058 -0
  262. package/dist/lib/object/transform.mjs +1 -0
  263. package/dist/lib/object/types.cjs +1 -0
  264. package/dist/lib/object/types.d.ts +250 -0
  265. package/dist/lib/object/types.d.ts.map +1 -0
  266. package/dist/lib/object/types.js +1 -0
  267. package/dist/lib/object/types.mjs +0 -0
  268. package/dist/lib/object/utils.cjs +6 -0
  269. package/dist/lib/object/utils.d.ts +165 -0
  270. package/dist/lib/object/utils.d.ts.map +1 -0
  271. package/dist/lib/object/utils.js +444 -0
  272. package/dist/lib/object/utils.mjs +6 -0
  273. package/dist/lib/primitive/boolean/boolean.cjs +1 -0
  274. package/dist/lib/primitive/boolean/boolean.d.ts +276 -0
  275. package/dist/lib/primitive/boolean/boolean.d.ts.map +1 -0
  276. package/dist/lib/primitive/boolean/boolean.js +615 -0
  277. package/dist/lib/primitive/boolean/boolean.mjs +1 -0
  278. package/dist/lib/primitive/boolean/index.cjs +1 -0
  279. package/dist/lib/primitive/boolean/index.d.ts +3 -0
  280. package/dist/lib/primitive/boolean/index.d.ts.map +1 -0
  281. package/dist/lib/primitive/boolean/index.js +2 -0
  282. package/dist/lib/primitive/boolean/index.mjs +1 -0
  283. package/dist/lib/primitive/boolean/types.cjs +1 -0
  284. package/dist/lib/primitive/boolean/types.d.ts +14 -0
  285. package/dist/lib/primitive/boolean/types.d.ts.map +1 -0
  286. package/dist/lib/primitive/boolean/types.js +1 -0
  287. package/dist/lib/primitive/boolean/types.mjs +0 -0
  288. package/dist/lib/primitive/date/date.cjs +1 -0
  289. package/dist/lib/primitive/date/date.d.ts +641 -0
  290. package/dist/lib/primitive/date/date.d.ts.map +1 -0
  291. package/dist/lib/primitive/date/date.js +1998 -0
  292. package/dist/lib/primitive/date/date.mjs +1 -0
  293. package/dist/lib/primitive/date/index.cjs +1 -0
  294. package/dist/lib/primitive/date/index.d.ts +3 -0
  295. package/dist/lib/primitive/date/index.d.ts.map +1 -0
  296. package/dist/lib/primitive/date/index.js +2 -0
  297. package/dist/lib/primitive/date/index.mjs +1 -0
  298. package/dist/lib/primitive/date/types.cjs +1 -0
  299. package/dist/lib/primitive/date/types.d.ts +205 -0
  300. package/dist/lib/primitive/date/types.d.ts.map +1 -0
  301. package/dist/lib/primitive/date/types.js +7 -0
  302. package/dist/lib/primitive/date/types.mjs +0 -0
  303. package/dist/lib/primitive/index.cjs +5 -0
  304. package/dist/lib/primitive/index.d.ts +5 -0
  305. package/dist/lib/primitive/index.d.ts.map +1 -0
  306. package/dist/lib/primitive/index.js +4 -0
  307. package/dist/lib/primitive/index.mjs +5 -0
  308. package/dist/lib/primitive/string/index.cjs +5 -0
  309. package/dist/lib/primitive/string/index.d.ts +3 -0
  310. package/dist/lib/primitive/string/index.d.ts.map +1 -0
  311. package/dist/lib/primitive/string/index.js +2 -0
  312. package/dist/lib/primitive/string/index.mjs +5 -0
  313. package/dist/lib/primitive/string/parser-2.cjs +8 -0
  314. package/dist/lib/primitive/string/parser-2.d.ts +17 -0
  315. package/dist/lib/primitive/string/parser-2.d.ts.map +1 -0
  316. package/dist/lib/primitive/string/parser-2.js +656 -0
  317. package/dist/lib/primitive/string/parser-2.mjs +8 -0
  318. package/dist/lib/primitive/string/parser.cjs +3 -0
  319. package/dist/lib/primitive/string/parser.d.ts +9 -0
  320. package/dist/lib/primitive/string/parser.d.ts.map +1 -0
  321. package/dist/lib/primitive/string/parser.js +775 -0
  322. package/dist/lib/primitive/string/parser.mjs +3 -0
  323. package/dist/lib/primitive/string/string.cjs +5 -0
  324. package/dist/lib/primitive/string/string.d.ts +535 -0
  325. package/dist/lib/primitive/string/string.d.ts.map +1 -0
  326. package/dist/lib/primitive/string/string.js +1301 -0
  327. package/dist/lib/primitive/string/string.mjs +5 -0
  328. package/dist/lib/primitive/string/types.cjs +1 -0
  329. package/dist/lib/primitive/string/types.d.ts +318 -0
  330. package/dist/lib/primitive/string/types.d.ts.map +1 -0
  331. package/dist/lib/primitive/string/types.js +5 -0
  332. package/dist/lib/primitive/string/types.mjs +0 -0
  333. package/dist/lib/primitive/types.cjs +1 -0
  334. package/dist/lib/primitive/types.d.ts +27 -0
  335. package/dist/lib/primitive/types.d.ts.map +1 -0
  336. package/dist/lib/primitive/types.js +1 -0
  337. package/dist/lib/primitive/types.mjs +0 -0
  338. package/dist/lib/url/index.cjs +1 -0
  339. package/dist/lib/url/index.d.ts +3 -0
  340. package/dist/lib/url/index.d.ts.map +1 -0
  341. package/dist/lib/url/index.js +2 -0
  342. package/dist/lib/url/index.mjs +1 -0
  343. package/dist/lib/url/parser.cjs +1 -0
  344. package/dist/lib/url/parser.d.ts +216 -0
  345. package/dist/lib/url/parser.d.ts.map +1 -0
  346. package/dist/lib/url/parser.js +488 -0
  347. package/dist/lib/url/parser.mjs +1 -0
  348. package/dist/lib/url/types.cjs +1 -0
  349. package/dist/lib/url/types.d.ts +18 -0
  350. package/dist/lib/url/types.d.ts.map +1 -0
  351. package/dist/lib/url/types.js +1 -0
  352. package/dist/lib/url/types.mjs +0 -0
  353. package/dist/tsconfig.lib.tsbuildinfo +1 -0
  354. package/package.json +150 -0
@@ -0,0 +1,199 @@
1
+ /**
2
+ * @fileoverview Comprehensive color management utility with support for multiple color formats,
3
+ * conversions, and color manipulation operations.
4
+ */
5
+ import type { ColorAdjustmentOptions, ColorMixOptions, PaletteOptions, ContrastOptions } from './types.js';
6
+ /**
7
+ * Comprehensive RGB/RGBA regex patterns
8
+ */
9
+ export declare const RGB_PATTERNS: {
10
+ /**
11
+ * Matches legacy comma-separated RGB
12
+ * @example rgb(255, 0, 0)
13
+ */
14
+ readonly LEGACY_RGB: RegExp;
15
+ /**
16
+ * Matches modern space-separated RGB
17
+ * @example rgb(255 0 0)
18
+ */
19
+ readonly MODERN_RGB: RegExp;
20
+ /**
21
+ * Matches legacy comma-separated RGBA
22
+ * @example rgba(255, 0, 0, 0.5)
23
+ * @example rgba(255, 0, 0, 50%)
24
+ */
25
+ readonly LEGACY_RGBA: RegExp;
26
+ /**
27
+ * Matches modern space-separated RGBA with slash
28
+ * @example rgb(255 0 0 / 0.5)
29
+ * @example rgb(255 0 0 / 50%)
30
+ * @example rgba(255 0 0 / 0.5)
31
+ */
32
+ readonly MODERN_RGBA: RegExp;
33
+ /**
34
+ * Combined pattern that matches all RGB/RGBA variations
35
+ * Supports:
36
+ * - Legacy comma-separated: rgb(255, 0, 0), rgba(255, 0, 0, 0.5)
37
+ * - Modern space-separated: rgb(255 0 0), rgb(255 0 0 / 0.5)
38
+ * - Mixed separators: rgb(255,0,0), rgb(255 0 0)
39
+ * - Percentages: rgb(100% 0% 0%), rgb(100% 0% 0% / 50%)
40
+ * - Decimal numbers: rgb(255.5 0 0), rgba(255, 0, 0, 0.5)
41
+ * - CSS variables: rgb(var(--red) var(--green) var(--blue))
42
+ */
43
+ readonly COMPREHENSIVE: RegExp;
44
+ /**
45
+ * Strict RGB pattern with validation
46
+ * Matches integers (0-255) or percentages (0-100%)
47
+ */
48
+ readonly STRICT_RGB: RegExp;
49
+ /**
50
+ * Strict RGBA pattern with validation
51
+ */
52
+ readonly STRICT_RGBA: RegExp;
53
+ /**
54
+ * Modern RGB with optional alpha
55
+ */
56
+ readonly MODERN_RGB_ALPHA: RegExp;
57
+ };
58
+ /**
59
+ * Enhanced RGB/RGBA parsing function
60
+ * @param colorString - RGB/RGBA color string
61
+ * @returns Parsed RGBA values or null if invalid
62
+ */
63
+ export declare const parseRgbaColor: (colorString: string) => [number, number, number, number] | null;
64
+ /**
65
+ * Enhanced color pattern collection with improved RGB support
66
+ */
67
+ export declare const COLOR_PATTERNS: {
68
+ readonly HEX: RegExp;
69
+ readonly RGB: RegExp;
70
+ readonly HSL: RegExp;
71
+ readonly OKLCH: RegExp;
72
+ readonly OKLAB: RegExp;
73
+ readonly HSV: RegExp;
74
+ readonly CMYK: RegExp;
75
+ readonly COLOR_FUNCTION: RegExp;
76
+ readonly LAB: RegExp;
77
+ readonly LCH: RegExp;
78
+ };
79
+ /**
80
+ * Test RGB/RGBA strings against all patterns
81
+ * @param colorString - Color string to test
82
+ * @returns Array of matching pattern names
83
+ */
84
+ export declare const testRgbaPatterns: (colorString: string) => string[];
85
+ /**
86
+ * Enhanced parseColor function with better RGB support
87
+ */
88
+ export declare const parseColor: (color: string) => [number, number, number, number] | null;
89
+ /**
90
+ * Convert HSL to RGB
91
+ */
92
+ export declare const hslToRgb: (h: number, s: number, l: number, a?: number) => [number, number, number, number];
93
+ /**
94
+ * Convert OKLCH to RGB (simplified approximation)
95
+ */
96
+ export declare const oklchToRgb: (L: number, C: number, H: number, a?: number) => [number, number, number, number];
97
+ /**
98
+ * Formats RGBA values into a CSS rgba() or rgb() string
99
+ * @param r - Red value (0-255) or CSS variable
100
+ * @param g - Green value (0-255) or CSS variable
101
+ * @param b - Blue value (0-255) or CSS variable
102
+ * @param a - Alpha value (0-1) or CSS variable (default: 1)
103
+ * @returns Formatted rgba string
104
+ * @example
105
+ * formatRgba(255, 0, 0, 0.5) // returns "rgba(255, 0, 0, 0.5)"
106
+ * formatRgba(255, 0, 0, 'var(--opacity)') // returns "rgba(255, 0, 0, var(--opacity))"
107
+ */
108
+ export declare const formatRgba: <R extends number | string, G extends number | string, B extends number | string, A extends number | string = 1>(r: R, g: G, b: B, a?: A) => string;
109
+ /**
110
+ * Parses any color string to RGBA values
111
+ * @param color - Color string in any supported format
112
+ * @returns RGBA array [r, g, b, a] or null if invalid
113
+ */
114
+ /**
115
+ * Validates if a string is a valid color
116
+ * @param color - Color string to validate
117
+ * @returns True if valid color
118
+ */
119
+ export declare const isValidColor: (color: string) => boolean;
120
+ /**
121
+ * Converts RGBA values to hex string
122
+ * @param r - Red value (0-255)
123
+ * @param g - Green value (0-255)
124
+ * @param b - Blue value (0-255)
125
+ * @param a - Alpha value (0-1)
126
+ * @returns Hex color string
127
+ */
128
+ export declare const rgbaToHex: (r: number, g: number, b: number, a?: number) => string;
129
+ /**
130
+ * Converts RGBA values to HSL string
131
+ * @param r - Red value (0-255)
132
+ * @param g - Green value (0-255)
133
+ * @param b - Blue value (0-255)
134
+ * @param a - Alpha value (0-1)
135
+ * @returns HSL/HSLA color string
136
+ */
137
+ export declare const rgbaToHsl: (r: number, g: number, b: number, a?: number) => string;
138
+ /**
139
+ * Converts RGBA values to HSV string
140
+ * @param r - Red value (0-255)
141
+ * @param g - Green value (0-255)
142
+ * @param b - Blue value (0-255)
143
+ * @param a - Alpha value (0-1)
144
+ * @returns HSV/HSVA color string
145
+ */
146
+ export declare const rgbaToHsv: (r: number, g: number, b: number, a?: number) => string;
147
+ /**
148
+ * Converts RGBA values to CMYK string
149
+ * @param r - Red value (0-255)
150
+ * @param g - Green value (0-255)
151
+ * @param b - Blue value (0-255)
152
+ * @param a - Alpha value (0-1)
153
+ * @returns CMYK color string
154
+ */
155
+ export declare const rgbaToCmyk: (r: number, g: number, b: number, a?: number) => string;
156
+ /**
157
+ * Calculates relative luminance for contrast ratio
158
+ * @param r - Red value (0-255)
159
+ * @param g - Green value (0-255)
160
+ * @param b - Blue value (0-255)
161
+ * @returns Relative luminance (0-1)
162
+ * @private
163
+ */
164
+ export declare const calculateLuminance: (r: number, g: number, b: number) => number;
165
+ /**
166
+ * Calculates contrast ratio between two colors
167
+ * @param color1 - First color string
168
+ * @param color2 - Second color string
169
+ * @returns Contrast ratio (1-21)
170
+ */
171
+ export declare const calculateContrastRatio: (color1: string, color2: string) => number;
172
+ /**
173
+ * Adjusts color based on options
174
+ * @param color - Input color string
175
+ * @param options - Adjustment options
176
+ * @returns Adjusted color string
177
+ */
178
+ export declare const adjustColor: (color: string, options: ColorAdjustmentOptions) => string;
179
+ /**
180
+ * Mixes two colors
181
+ * @param options - Mixing options
182
+ * @returns Mixed color string
183
+ */
184
+ export declare const mixColors: (options: ColorMixOptions) => string;
185
+ /**
186
+ * Generates a color palette from a base color
187
+ * @param baseColor - Base color string
188
+ * @param options - Palette generation options
189
+ * @returns Object with color shades
190
+ */
191
+ export declare const generatePalette: (baseColor: string, options?: PaletteOptions) => Record<string, string>;
192
+ /**
193
+ * Creates a contrasting color for accessibility
194
+ * @param color - Base color string
195
+ * @param options - Contrast options
196
+ * @returns Contrasting color string
197
+ */
198
+ export declare const createContrastColor: (color: string, options?: ContrastOptions) => string;
199
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/color/utils.ts"],"names":[],"mappings":"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"}