@design-edito/tools 0.4.23 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/agnostic/arrays/find-duplicates/index.d.ts +1 -1
  2. package/agnostic/arrays/find-duplicates/index.js +3 -2
  3. package/agnostic/arrays/index.d.ts +1 -1
  4. package/agnostic/arrays/index.js +1 -1
  5. package/agnostic/arrays/is-array-of/index.d.ts +1 -1
  6. package/agnostic/arrays/is-array-of/index.js +3 -1
  7. package/agnostic/arrays/make/index.d.ts +1 -1
  8. package/agnostic/arrays/random-pick/index.js +2 -1
  9. package/agnostic/arrays/shuffle/index.js +1 -1
  10. package/agnostic/booleans/is-falsy/index.d.ts +3 -3
  11. package/agnostic/booleans/is-falsy/index.js +2 -3
  12. package/agnostic/colors/channels/index.d.ts +16 -16
  13. package/agnostic/colors/channels/index.js +15 -15
  14. package/agnostic/colors/contrast/index.d.ts +6 -6
  15. package/agnostic/colors/contrast/index.js +6 -8
  16. package/agnostic/colors/contrast/index.test.js +1 -1
  17. package/agnostic/colors/convert/index.d.ts +43 -43
  18. package/agnostic/colors/convert/index.js +60 -55
  19. package/agnostic/colors/distance/index.d.ts +5 -5
  20. package/agnostic/colors/distance/index.js +5 -4
  21. package/agnostic/colors/grayscale/index.d.ts +3 -3
  22. package/agnostic/colors/grayscale/index.js +3 -3
  23. package/agnostic/colors/index.d.ts +3 -3
  24. package/agnostic/colors/index.js +3 -3
  25. package/agnostic/colors/invert/index.d.ts +4 -4
  26. package/agnostic/colors/invert/index.js +3 -3
  27. package/agnostic/colors/lerp/index.d.ts +6 -7
  28. package/agnostic/colors/lerp/index.js +5 -6
  29. package/agnostic/colors/luminance/index.d.ts +4 -4
  30. package/agnostic/colors/luminance/index.js +3 -3
  31. package/agnostic/colors/palette/index.d.ts +3 -3
  32. package/agnostic/colors/palette/index.js +4 -3
  33. package/agnostic/colors/rotate/index.d.ts +4 -4
  34. package/agnostic/colors/rotate/index.js +4 -4
  35. package/agnostic/colors/tidy/index.d.ts +2 -2
  36. package/agnostic/colors/tidy/index.js +2 -2
  37. package/agnostic/colors/typechecks/index.d.ts +21 -21
  38. package/agnostic/colors/typechecks/index.js +22 -21
  39. package/agnostic/colors/types.d.ts +33 -33
  40. package/agnostic/css/bem/index.d.ts +11 -11
  41. package/agnostic/css/bem/index.js +9 -8
  42. package/agnostic/css/clss/index.d.ts +1 -1
  43. package/agnostic/css/clss/index.js +1 -1
  44. package/agnostic/css/index.d.ts +2 -2
  45. package/agnostic/css/index.js +2 -2
  46. package/agnostic/css/is-valid-css-class-name/index.d.ts +2 -2
  47. package/agnostic/css/is-valid-css-class-name/index.js +3 -3
  48. package/agnostic/css/scale/index.d.ts +18 -18
  49. package/agnostic/css/scale/index.js +18 -18
  50. package/agnostic/css/styles-set/index.d.ts +1 -1
  51. package/agnostic/css/styles-set/index.js +0 -2
  52. package/agnostic/errors/register/index.d.ts +1 -1
  53. package/agnostic/errors/register/index.js +3 -0
  54. package/agnostic/errors/unknown-to-string/index.d.ts +2 -2
  55. package/agnostic/errors/unknown-to-string/index.js +2 -3
  56. package/agnostic/html/deep-select/index.d.ts +3 -3
  57. package/agnostic/html/deep-select/index.js +11 -7
  58. package/agnostic/html/get-node-ancestors/index.d.ts +3 -3
  59. package/agnostic/html/get-node-ancestors/index.js +3 -3
  60. package/agnostic/html/get-position-inside-parent/index.d.ts +2 -2
  61. package/agnostic/html/get-position-inside-parent/index.js +2 -2
  62. package/agnostic/html/hyper-json/cast/index.d.ts +1 -1
  63. package/agnostic/html/hyper-json/cast/index.js +6 -5
  64. package/agnostic/html/hyper-json/method/index.d.ts +2 -2
  65. package/agnostic/html/hyper-json/serialize/index.d.ts +1 -1
  66. package/agnostic/html/hyper-json/serialize/index.js +9 -5
  67. package/agnostic/html/hyper-json/smart-tags/coalesced/addclass/index.js +1 -0
  68. package/agnostic/html/hyper-json/smart-tags/coalesced/and/index.d.ts +1 -1
  69. package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.d.ts +1 -1
  70. package/agnostic/html/hyper-json/smart-tags/coalesced/append/index.js +1 -0
  71. package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.d.ts +1 -1
  72. package/agnostic/html/hyper-json/smart-tags/coalesced/at/index.js +1 -0
  73. package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.d.ts +1 -1
  74. package/agnostic/html/hyper-json/smart-tags/coalesced/call/index.js +1 -1
  75. package/agnostic/html/hyper-json/smart-tags/coalesced/clone/index.d.ts +1 -1
  76. package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.d.ts +1 -1
  77. package/agnostic/html/hyper-json/smart-tags/coalesced/deleteproperties/index.js +0 -1
  78. package/agnostic/html/hyper-json/smart-tags/coalesced/equals/index.d.ts +1 -1
  79. package/agnostic/html/hyper-json/smart-tags/coalesced/getattribute/index.js +1 -0
  80. package/agnostic/html/hyper-json/smart-tags/coalesced/getproperties/index.d.ts +1 -1
  81. package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.d.ts +1 -1
  82. package/agnostic/html/hyper-json/smart-tags/coalesced/getproperty/index.js +1 -2
  83. package/agnostic/html/hyper-json/smart-tags/coalesced/hjparse/index.d.ts +1 -1
  84. package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.d.ts +1 -1
  85. package/agnostic/html/hyper-json/smart-tags/coalesced/hjstringify/index.js +4 -0
  86. package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.d.ts +1 -1
  87. package/agnostic/html/hyper-json/smart-tags/coalesced/if/index.js +1 -0
  88. package/agnostic/html/hyper-json/smart-tags/coalesced/index.d.ts +12 -12
  89. package/agnostic/html/hyper-json/smart-tags/coalesced/index.js +12 -12
  90. package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.d.ts +1 -1
  91. package/agnostic/html/hyper-json/smart-tags/coalesced/initialize/index.js +1 -0
  92. package/agnostic/html/hyper-json/smart-tags/coalesced/join/index.d.ts +1 -1
  93. package/agnostic/html/hyper-json/smart-tags/coalesced/length/index.d.ts +1 -1
  94. package/agnostic/html/hyper-json/smart-tags/coalesced/map/index.d.ts +1 -1
  95. package/agnostic/html/hyper-json/smart-tags/coalesced/or/index.d.ts +1 -1
  96. package/agnostic/html/hyper-json/smart-tags/coalesced/pickrandom/index.d.ts +1 -1
  97. package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.d.ts +1 -1
  98. package/agnostic/html/hyper-json/smart-tags/coalesced/populate/index.js +1 -0
  99. package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.d.ts +1 -1
  100. package/agnostic/html/hyper-json/smart-tags/coalesced/print/index.js +2 -0
  101. package/agnostic/html/hyper-json/smart-tags/coalesced/push/index.d.ts +1 -1
  102. package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.d.ts +1 -1
  103. package/agnostic/html/hyper-json/smart-tags/coalesced/pusheach/index.js +1 -0
  104. package/agnostic/html/hyper-json/smart-tags/coalesced/recordtoarray/index.d.ts +1 -1
  105. package/agnostic/html/hyper-json/smart-tags/coalesced/removeattribute/index.js +3 -0
  106. package/agnostic/html/hyper-json/smart-tags/coalesced/removeclass/index.js +1 -0
  107. package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.d.ts +1 -1
  108. package/agnostic/html/hyper-json/smart-tags/coalesced/renameproperty/index.js +1 -0
  109. package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.d.ts +1 -1
  110. package/agnostic/html/hyper-json/smart-tags/coalesced/replace/index.js +1 -0
  111. package/agnostic/html/hyper-json/smart-tags/coalesced/select/index.js +1 -0
  112. package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.d.ts +1 -1
  113. package/agnostic/html/hyper-json/smart-tags/coalesced/set/index.js +1 -0
  114. package/agnostic/html/hyper-json/smart-tags/coalesced/setattribute/index.js +3 -0
  115. package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.d.ts +1 -1
  116. package/agnostic/html/hyper-json/smart-tags/coalesced/setproperty/index.js +4 -2
  117. package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.d.ts +1 -1
  118. package/agnostic/html/hyper-json/smart-tags/coalesced/sorton/index.js +5 -0
  119. package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.d.ts +1 -1
  120. package/agnostic/html/hyper-json/smart-tags/coalesced/spread/index.js +1 -0
  121. package/agnostic/html/hyper-json/smart-tags/coalesced/toarray/index.d.ts +1 -1
  122. package/agnostic/html/hyper-json/smart-tags/coalesced/toboolean/index.d.ts +1 -1
  123. package/agnostic/html/hyper-json/smart-tags/coalesced/toelement/index.d.ts +1 -1
  124. package/agnostic/html/hyper-json/smart-tags/coalesced/toggleclass/index.js +3 -2
  125. package/agnostic/html/hyper-json/smart-tags/coalesced/tonodelist/index.d.ts +1 -1
  126. package/agnostic/html/hyper-json/smart-tags/coalesced/tonull/index.d.ts +1 -1
  127. package/agnostic/html/hyper-json/smart-tags/coalesced/tonumber/index.d.ts +1 -1
  128. package/agnostic/html/hyper-json/smart-tags/coalesced/torecord/index.d.ts +1 -1
  129. package/agnostic/html/hyper-json/smart-tags/coalesced/toref/index.d.ts +1 -1
  130. package/agnostic/html/hyper-json/smart-tags/coalesced/tostring/index.d.ts +1 -1
  131. package/agnostic/html/hyper-json/smart-tags/coalesced/totext/index.d.ts +1 -1
  132. package/agnostic/html/hyper-json/smart-tags/coalesced/transformselected/index.d.ts +1 -1
  133. package/agnostic/html/hyper-json/smart-tags/coalesced/trim/index.js +1 -1
  134. package/agnostic/html/hyper-json/smart-tags/index.d.ts +1 -1
  135. package/agnostic/html/hyper-json/smart-tags/isolated/any/index.d.ts +1 -1
  136. package/agnostic/html/hyper-json/smart-tags/isolated/array/index.d.ts +1 -1
  137. package/agnostic/html/hyper-json/smart-tags/isolated/get/index.d.ts +1 -1
  138. package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.d.ts +1 -1
  139. package/agnostic/html/hyper-json/smart-tags/isolated/guess/index.js +3 -1
  140. package/agnostic/html/hyper-json/smart-tags/isolated/index.d.ts +2 -2
  141. package/agnostic/html/hyper-json/smart-tags/isolated/index.js +2 -2
  142. package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.d.ts +1 -1
  143. package/agnostic/html/hyper-json/smart-tags/isolated/nodelist/index.js +1 -0
  144. package/agnostic/html/hyper-json/smart-tags/isolated/null/index.d.ts +1 -1
  145. package/agnostic/html/hyper-json/smart-tags/isolated/record/index.d.ts +1 -1
  146. package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.d.ts +1 -1
  147. package/agnostic/html/hyper-json/smart-tags/isolated/ref/index.js +3 -1
  148. package/agnostic/html/hyper-json/smart-tags/isolated/text/index.js +2 -2
  149. package/agnostic/html/hyper-json/transformer/index.d.ts +5 -5
  150. package/agnostic/html/hyper-json/tree/index.d.ts +1 -1
  151. package/agnostic/html/hyper-json/tree/index.js +14 -8
  152. package/agnostic/html/hyper-json/types/index.d.ts +11 -11
  153. package/agnostic/html/hyper-json/utils/index.d.ts +3 -3
  154. package/agnostic/html/hyper-json/utils/index.js +8 -3
  155. package/agnostic/html/index.d.ts +4 -4
  156. package/agnostic/html/index.js +4 -4
  157. package/agnostic/html/insert-node/index.d.ts +4 -4
  158. package/agnostic/html/insert-node/index.js +4 -4
  159. package/agnostic/html/replace-in-element/index.d.ts +3 -3
  160. package/agnostic/html/replace-in-element/index.js +4 -4
  161. package/agnostic/html/selector-to-element/index.d.ts +2 -2
  162. package/agnostic/html/selector-to-element/index.js +11 -11
  163. package/agnostic/html/string-to-nodes/index.d.ts +3 -3
  164. package/agnostic/html/string-to-nodes/index.js +3 -3
  165. package/agnostic/html/watch-selection/index.d.ts +4 -5
  166. package/agnostic/html/watch-selection/index.js +5 -6
  167. package/agnostic/index.d.ts +3 -3
  168. package/agnostic/index.js +3 -3
  169. package/agnostic/misc/assert/index.js +3 -1
  170. package/agnostic/misc/cast/index.d.ts +16 -16
  171. package/agnostic/misc/cast/index.js +18 -18
  172. package/agnostic/misc/connection/index.d.ts +5 -5
  173. package/agnostic/misc/connection/index.js +4 -2
  174. package/agnostic/misc/crawler/index.d.ts +18 -18
  175. package/agnostic/misc/crawler/index.js +10 -9
  176. package/agnostic/misc/crawler/index.test.js +2 -2
  177. package/agnostic/misc/crossenv/detect-runtime/index.d.ts +1 -1
  178. package/agnostic/misc/crossenv/detect-runtime/index.js +10 -11
  179. package/agnostic/misc/crossenv/window/index.d.ts +6 -6
  180. package/agnostic/misc/crossenv/window/index.js +6 -5
  181. package/agnostic/misc/data-size/index.js +2 -0
  182. package/agnostic/misc/index.d.ts +3 -3
  183. package/agnostic/misc/index.js +3 -3
  184. package/agnostic/misc/is-constructor-function/index.d.ts +2 -2
  185. package/agnostic/misc/is-constructor-function/index.js +3 -2
  186. package/agnostic/misc/is-constructor-function/index.test.js +2 -2
  187. package/agnostic/misc/is-nullish/index.d.ts +5 -5
  188. package/agnostic/misc/is-nullish/index.js +5 -4
  189. package/agnostic/misc/logs/index.d.ts +1 -1
  190. package/agnostic/misc/logs/index.js +1 -1
  191. package/agnostic/misc/logs/logger/index.js +2 -2
  192. package/agnostic/misc/lorem-ipsum/index.js +4 -4
  193. package/agnostic/misc/normalize-extension/index.d.ts +3 -3
  194. package/agnostic/misc/normalize-extension/index.js +4 -4
  195. package/agnostic/misc/outcome/index.d.ts +14 -14
  196. package/agnostic/misc/outcome/index.js +6 -4
  197. package/agnostic/numbers/absolute-modulo/index.d.ts +3 -3
  198. package/agnostic/numbers/absolute-modulo/index.js +3 -3
  199. package/agnostic/numbers/approximate-rational/index.d.ts +6 -6
  200. package/agnostic/numbers/approximate-rational/index.js +9 -9
  201. package/agnostic/numbers/clamp/index.d.ts +4 -4
  202. package/agnostic/numbers/clamp/index.js +4 -4
  203. package/agnostic/numbers/geometric-progressions/index.d.ts +5 -5
  204. package/agnostic/numbers/geometric-progressions/index.js +7 -5
  205. package/agnostic/numbers/geometric-progressions/index.test.js +2 -2
  206. package/agnostic/numbers/index.d.ts +3 -3
  207. package/agnostic/numbers/index.js +3 -3
  208. package/agnostic/numbers/interpolate/index.d.ts +8 -8
  209. package/agnostic/numbers/interpolate/index.js +8 -8
  210. package/agnostic/numbers/round/index.d.ts +9 -9
  211. package/agnostic/numbers/round/index.js +9 -9
  212. package/agnostic/objects/deep-get-property/index.d.ts +4 -4
  213. package/agnostic/objects/deep-get-property/index.js +3 -3
  214. package/agnostic/objects/enums/is-in-enum/index.d.ts +3 -3
  215. package/agnostic/objects/enums/is-in-enum/index.js +3 -3
  216. package/agnostic/objects/flatten-getters/index.d.ts +2 -2
  217. package/agnostic/objects/flatten-getters/index.js +3 -2
  218. package/agnostic/objects/index.d.ts +4 -4
  219. package/agnostic/objects/index.js +4 -4
  220. package/agnostic/objects/is-object/index.d.ts +4 -4
  221. package/agnostic/objects/is-object/index.js +4 -4
  222. package/agnostic/objects/is-record/index.d.ts +2 -2
  223. package/agnostic/objects/is-record/index.js +2 -2
  224. package/agnostic/objects/record-format/index.d.ts +9 -9
  225. package/agnostic/objects/record-format/index.js +8 -3
  226. package/agnostic/objects/record-map/index.d.ts +4 -4
  227. package/agnostic/objects/record-map/index.js +5 -3
  228. package/agnostic/objects/sort-keys/index.d.ts +3 -3
  229. package/agnostic/objects/sort-keys/index.js +4 -3
  230. package/agnostic/objects/validation/index.d.ts +3 -3
  231. package/agnostic/objects/validation/index.js +4 -3
  232. package/agnostic/optim/memoize/index.d.ts +2 -2
  233. package/agnostic/optim/memoize/index.js +4 -2
  234. package/agnostic/optim/throttle-debounce/index.d.ts +2 -2
  235. package/agnostic/optim/throttle-debounce/index.js +7 -6
  236. package/agnostic/optim/throttle-debounce/types.d.ts +2 -1
  237. package/agnostic/random/index.d.ts +1 -1
  238. package/agnostic/random/index.js +1 -1
  239. package/agnostic/random/random/index.d.ts +7 -8
  240. package/agnostic/random/random/index.js +3 -3
  241. package/agnostic/random/uuid/index.d.ts +6 -6
  242. package/agnostic/random/uuid/index.js +6 -6
  243. package/agnostic/regexps/index.d.ts +30 -60
  244. package/agnostic/regexps/index.js +27 -26
  245. package/agnostic/sanitization/file-name/index.d.ts +3 -3
  246. package/agnostic/sanitization/file-name/index.js +10 -10
  247. package/agnostic/sanitization/html/index.d.ts +6 -6
  248. package/agnostic/sanitization/html/index.js +9 -6
  249. package/agnostic/sanitization/index.d.ts +1 -1
  250. package/agnostic/sanitization/index.js +1 -1
  251. package/agnostic/sanitization/path/index.d.ts +2 -2
  252. package/agnostic/sanitization/path/index.js +2 -2
  253. package/agnostic/sanitization/user-input/index.js +1 -0
  254. package/agnostic/strings/char-codes/index.js +2 -6
  255. package/agnostic/strings/index.d.ts +3 -3
  256. package/agnostic/strings/index.js +3 -3
  257. package/agnostic/strings/normalize-indent/index.js +2 -2
  258. package/agnostic/strings/parse-table/index.d.ts +13 -13
  259. package/agnostic/strings/parse-table/index.js +31 -16
  260. package/agnostic/strings/replace-all/index.d.ts +1 -1
  261. package/agnostic/strings/replace-all/index.js +1 -0
  262. package/agnostic/strings/to-alphanum/index.js +2 -2
  263. package/agnostic/strings/trim/index.js +2 -2
  264. package/agnostic/time/dates/format-date/index.js +3 -1
  265. package/agnostic/time/dates/index.d.ts +1 -0
  266. package/agnostic/time/dates/index.js +1 -0
  267. package/agnostic/time/dates/to-french-republican/index.d.ts +16 -0
  268. package/agnostic/time/dates/to-french-republican/index.js +82 -0
  269. package/agnostic/time/dates/to-french-republican/index.test.d.ts +1 -0
  270. package/agnostic/time/dates/to-french-republican/index.test.js +112 -0
  271. package/agnostic/time/dates/to-french-republican/types.d.ts +91 -0
  272. package/agnostic/time/dates/to-french-republican/types.js +47 -0
  273. package/agnostic/time/dates/to-french-republican/utils.d.ts +32 -0
  274. package/agnostic/time/dates/to-french-republican/utils.js +155 -0
  275. package/agnostic/time/duration/index.js +2 -0
  276. package/agnostic/time/index.d.ts +2 -2
  277. package/agnostic/time/index.js +2 -2
  278. package/agnostic/time/timeout/index.js +9 -9
  279. package/agnostic/time/transitions/index.js +8 -7
  280. package/components/BeforeAfter/index.controlled.js +1 -0
  281. package/components/BeforeAfter/index.js +4 -0
  282. package/components/Button/index.d.ts +1 -1
  283. package/components/Clippable/index.js +1 -0
  284. package/components/Drawer/index.js +1 -1
  285. package/components/Gallery/index.js +2 -1
  286. package/components/Gallery/utils.js +5 -1
  287. package/components/Iframe/index.js +3 -0
  288. package/components/Image/index.js +2 -0
  289. package/components/Input/index.controlled.js +3 -2
  290. package/components/IntersectionObserver/index.js +5 -2
  291. package/components/JsonEditor/index.js +1 -1
  292. package/components/Overlayer/index.d.ts +1 -1
  293. package/components/ScrollListener/utils.d.ts +29 -0
  294. package/components/Select/index.controlled.js +3 -2
  295. package/components/Sequencer/index.controlled.js +1 -1
  296. package/components/Subtitles/index.js +3 -1
  297. package/components/Subtitles/types.d.ts +14 -0
  298. package/components/Subtitles/utils.d.ts +19 -15
  299. package/components/Subtitles/utils.js +29 -24
  300. package/components/Textarea/index.controlled.js +3 -2
  301. package/components/UIModule/index.js +3 -1
  302. package/components/Video/index.controlled.d.ts +1 -1
  303. package/components/Video/index.controlled.js +11 -10
  304. package/components/Video/index.js +27 -20
  305. package/components/Video/utils.d.ts +1 -1
  306. package/components/Video/utils.js +11 -2
  307. package/components/index.d.ts +5 -5
  308. package/components/index.js +5 -5
  309. package/components/utils/types.d.ts +5 -0
  310. package/node/@aws-s3/storage/directory/copy-dir/index.d.ts +9 -9
  311. package/node/@aws-s3/storage/directory/copy-dir/index.js +15 -12
  312. package/node/@aws-s3/storage/directory/list/index.d.ts +5 -5
  313. package/node/@aws-s3/storage/directory/list/index.js +5 -5
  314. package/node/@aws-s3/storage/directory/move-dir/index.d.ts +6 -6
  315. package/node/@aws-s3/storage/directory/move-dir/index.js +11 -7
  316. package/node/@aws-s3/storage/directory/remove-dir/index.d.ts +5 -5
  317. package/node/@aws-s3/storage/directory/remove-dir/index.js +5 -5
  318. package/node/@aws-s3/storage/file/copy/index.d.ts +8 -8
  319. package/node/@aws-s3/storage/file/copy/index.js +12 -9
  320. package/node/@aws-s3/storage/file/download/index.d.ts +6 -6
  321. package/node/@aws-s3/storage/file/download/index.js +6 -5
  322. package/node/@aws-s3/storage/file/exists/index.d.ts +6 -6
  323. package/node/@aws-s3/storage/file/exists/index.js +15 -12
  324. package/node/@aws-s3/storage/file/move/index.d.ts +9 -9
  325. package/node/@aws-s3/storage/file/move/index.js +18 -15
  326. package/node/@aws-s3/storage/file/remove/index.d.ts +5 -5
  327. package/node/@aws-s3/storage/file/remove/index.js +16 -11
  328. package/node/@aws-s3/storage/file/stat/index.d.ts +5 -5
  329. package/node/@aws-s3/storage/file/stat/index.js +10 -7
  330. package/node/@aws-s3/storage/file/upload/index.d.ts +7 -7
  331. package/node/@aws-s3/storage/file/upload/index.js +11 -9
  332. package/node/@express/@multer/index.d.ts +12 -12
  333. package/node/@express/@multer/index.js +27 -25
  334. package/node/@google-cloud/storage/bucket/get-metadata/index.d.ts +4 -4
  335. package/node/@google-cloud/storage/bucket/get-metadata/index.js +3 -3
  336. package/node/@google-cloud/storage/directory/copy-dir/index.d.ts +7 -7
  337. package/node/@google-cloud/storage/directory/copy-dir/index.js +6 -6
  338. package/node/@google-cloud/storage/directory/index.d.ts +2 -2
  339. package/node/@google-cloud/storage/directory/index.js +2 -2
  340. package/node/@google-cloud/storage/directory/list/index.d.ts +6 -6
  341. package/node/@google-cloud/storage/directory/list/index.js +5 -5
  342. package/node/@google-cloud/storage/directory/move-dir/index.d.ts +6 -6
  343. package/node/@google-cloud/storage/directory/move-dir/index.js +5 -5
  344. package/node/@google-cloud/storage/directory/remove-dir/index.d.ts +7 -7
  345. package/node/@google-cloud/storage/directory/remove-dir/index.js +6 -6
  346. package/node/@google-cloud/storage/file/copy/index.d.ts +9 -9
  347. package/node/@google-cloud/storage/file/copy/index.js +8 -8
  348. package/node/@google-cloud/storage/file/download/index.d.ts +7 -7
  349. package/node/@google-cloud/storage/file/download/index.js +5 -5
  350. package/node/@google-cloud/storage/file/exists/index.d.ts +7 -7
  351. package/node/@google-cloud/storage/file/exists/index.js +6 -6
  352. package/node/@google-cloud/storage/file/generate-signed-url/index.d.ts +7 -7
  353. package/node/@google-cloud/storage/file/generate-signed-url/index.js +6 -6
  354. package/node/@google-cloud/storage/file/get-metadata/index.d.ts +5 -5
  355. package/node/@google-cloud/storage/file/get-metadata/index.js +4 -4
  356. package/node/@google-cloud/storage/file/get-permissions/index.d.ts +6 -6
  357. package/node/@google-cloud/storage/file/get-permissions/index.js +4 -4
  358. package/node/@google-cloud/storage/file/index.d.ts +3 -3
  359. package/node/@google-cloud/storage/file/index.js +3 -3
  360. package/node/@google-cloud/storage/file/move/index.d.ts +10 -10
  361. package/node/@google-cloud/storage/file/move/index.js +9 -9
  362. package/node/@google-cloud/storage/file/remove/index.d.ts +5 -5
  363. package/node/@google-cloud/storage/file/remove/index.js +4 -4
  364. package/node/@google-cloud/storage/file/revoke-signed-urls/index.d.ts +5 -5
  365. package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +5 -5
  366. package/node/@google-cloud/storage/file/stat/index.d.ts +5 -5
  367. package/node/@google-cloud/storage/file/stat/index.js +4 -4
  368. package/node/@google-cloud/storage/file/update-metadata/index.d.ts +7 -7
  369. package/node/@google-cloud/storage/file/update-metadata/index.js +5 -5
  370. package/node/@google-cloud/storage/file/upload/index.d.ts +7 -7
  371. package/node/@google-cloud/storage/file/upload/index.js +5 -5
  372. package/node/@google-cloud/storage/index.d.ts +1 -1
  373. package/node/@google-cloud/storage/index.js +1 -1
  374. package/node/cloud-storage/clients/index.d.ts +8 -8
  375. package/node/cloud-storage/clients/index.js +8 -8
  376. package/node/cloud-storage/operations/copy-dir/index.d.ts +22 -22
  377. package/node/cloud-storage/operations/copy-dir/index.js +5 -5
  378. package/node/cloud-storage/operations/copy-file/index.d.ts +22 -22
  379. package/node/cloud-storage/operations/copy-file/index.js +5 -5
  380. package/node/cloud-storage/operations/download-file/index.d.ts +19 -19
  381. package/node/cloud-storage/operations/download-file/index.js +6 -6
  382. package/node/cloud-storage/operations/exists-file/index.d.ts +15 -26
  383. package/node/cloud-storage/operations/exists-file/index.js +4 -4
  384. package/node/cloud-storage/operations/index.d.ts +2 -2
  385. package/node/cloud-storage/operations/index.js +2 -2
  386. package/node/cloud-storage/operations/list-dir/index.d.ts +15 -25
  387. package/node/cloud-storage/operations/list-dir/index.js +4 -4
  388. package/node/cloud-storage/operations/move-dir/index.d.ts +22 -22
  389. package/node/cloud-storage/operations/move-dir/index.js +5 -5
  390. package/node/cloud-storage/operations/move-file/index.d.ts +22 -22
  391. package/node/cloud-storage/operations/move-file/index.js +5 -5
  392. package/node/cloud-storage/operations/remove-dir/index.d.ts +18 -18
  393. package/node/cloud-storage/operations/remove-dir/index.js +4 -4
  394. package/node/cloud-storage/operations/remove-file/index.d.ts +18 -18
  395. package/node/cloud-storage/operations/remove-file/index.js +4 -4
  396. package/node/cloud-storage/operations/stat-file/index.d.ts +16 -16
  397. package/node/cloud-storage/operations/stat-file/index.js +4 -4
  398. package/node/cloud-storage/operations/upload-file/index.d.ts +23 -23
  399. package/node/cloud-storage/operations/upload-file/index.js +5 -5
  400. package/node/encryption/@aes-256-gcm/buffer/index.d.ts +6 -6
  401. package/node/encryption/@aes-256-gcm/buffer/index.js +6 -6
  402. package/node/encryption/@aes-256-gcm/uint8-array/index.d.ts +8 -8
  403. package/node/encryption/@aes-256-gcm/uint8-array/index.js +8 -8
  404. package/node/encryption/key/index.d.ts +6 -6
  405. package/node/encryption/key/index.js +6 -6
  406. package/node/files/get-size/index.d.ts +56 -0
  407. package/node/files/get-size/index.js +167 -0
  408. package/node/files/get-size/index.test.d.ts +1 -0
  409. package/node/files/get-size/index.test.js +143 -0
  410. package/node/files/index.d.ts +1 -0
  411. package/node/files/index.js +1 -0
  412. package/node/files/read-write/index.d.ts +16 -16
  413. package/node/files/subpaths/index.d.ts +8 -8
  414. package/node/files/subpaths/index.js +11 -13
  415. package/node/ftps/directory/copy-dir/index.d.ts +6 -6
  416. package/node/ftps/directory/copy-dir/index.js +6 -6
  417. package/node/ftps/directory/index.d.ts +1 -1
  418. package/node/ftps/directory/index.js +1 -1
  419. package/node/ftps/directory/list/index.d.ts +4 -4
  420. package/node/ftps/directory/list/index.js +3 -3
  421. package/node/ftps/directory/move-dir/index.d.ts +6 -6
  422. package/node/ftps/directory/move-dir/index.js +5 -5
  423. package/node/ftps/directory/remove-dir/index.d.ts +6 -6
  424. package/node/ftps/directory/remove-dir/index.js +8 -7
  425. package/node/ftps/file/copy/index.d.ts +6 -6
  426. package/node/ftps/file/copy/index.js +5 -5
  427. package/node/ftps/file/download/index.d.ts +6 -6
  428. package/node/ftps/file/download/index.js +5 -5
  429. package/node/ftps/file/exists/index.d.ts +3 -3
  430. package/node/ftps/file/exists/index.js +3 -3
  431. package/node/ftps/file/index.d.ts +2 -2
  432. package/node/ftps/file/index.js +2 -2
  433. package/node/ftps/file/move/index.d.ts +8 -8
  434. package/node/ftps/file/move/index.js +11 -9
  435. package/node/ftps/file/remove/index.d.ts +5 -5
  436. package/node/ftps/file/remove/index.js +4 -4
  437. package/node/ftps/file/stat/index.d.ts +4 -4
  438. package/node/ftps/file/stat/index.js +4 -4
  439. package/node/ftps/file/upload/index.d.ts +7 -7
  440. package/node/ftps/file/upload/index.js +5 -5
  441. package/node/images/create/index.d.ts +2 -2
  442. package/node/images/create/index.js +1 -1
  443. package/node/images/format/index.d.ts +8 -8
  444. package/node/images/index.d.ts +1 -1
  445. package/node/images/index.js +1 -1
  446. package/node/images/metadata/index.d.ts +2 -2
  447. package/node/images/transform/index.d.ts +2 -2
  448. package/node/images/transform/index.js +12 -2
  449. package/node/images/transform/operations/blur/index.d.ts +2 -2
  450. package/node/images/transform/operations/blur/index.js +1 -0
  451. package/node/images/transform/operations/brighten/index.d.ts +2 -2
  452. package/node/images/transform/operations/brighten/index.js +1 -0
  453. package/node/images/transform/operations/extend/index.d.ts +2 -2
  454. package/node/images/transform/operations/extend/index.js +1 -0
  455. package/node/images/transform/operations/extract/index.d.ts +2 -2
  456. package/node/images/transform/operations/extract/index.js +1 -0
  457. package/node/images/transform/operations/flatten/index.d.ts +2 -2
  458. package/node/images/transform/operations/flatten/index.js +1 -0
  459. package/node/images/transform/operations/flip/index.d.ts +2 -2
  460. package/node/images/transform/operations/flip/index.js +1 -0
  461. package/node/images/transform/operations/flop/index.d.ts +2 -2
  462. package/node/images/transform/operations/flop/index.js +1 -0
  463. package/node/images/transform/operations/hue/index.d.ts +2 -2
  464. package/node/images/transform/operations/hue/index.js +1 -0
  465. package/node/images/transform/operations/index.d.ts +2 -2
  466. package/node/images/transform/operations/index.js +2 -2
  467. package/node/images/transform/operations/level/index.d.ts +2 -2
  468. package/node/images/transform/operations/level/index.js +1 -0
  469. package/node/images/transform/operations/lighten/index.d.ts +2 -2
  470. package/node/images/transform/operations/lighten/index.js +1 -0
  471. package/node/images/transform/operations/normalize/index.d.ts +2 -2
  472. package/node/images/transform/operations/normalize/index.js +1 -0
  473. package/node/images/transform/operations/overlay/index.d.ts +2 -2
  474. package/node/images/transform/operations/resize/index.d.ts +2 -2
  475. package/node/images/transform/operations/resize/index.js +1 -0
  476. package/node/images/transform/operations/rotate/index.d.ts +2 -2
  477. package/node/images/transform/operations/rotate/index.js +1 -0
  478. package/node/images/transform/operations/saturate/index.d.ts +2 -2
  479. package/node/images/transform/operations/saturate/index.js +1 -0
  480. package/node/images/types.d.ts +41 -2
  481. package/node/images/utils/index.d.ts +10 -5
  482. package/node/index.d.ts +2 -2
  483. package/node/index.js +2 -2
  484. package/node/process/on-exit/index.js +2 -4
  485. package/node/process/prompt-continue/index.d.ts +3 -3
  486. package/node/process/prompt-continue/index.js +4 -3
  487. package/node/process/spawner/index.js +7 -6
  488. package/node/sftp/directory/copy-dir/index.d.ts +6 -6
  489. package/node/sftp/directory/copy-dir/index.js +6 -6
  490. package/node/sftp/directory/index.d.ts +1 -1
  491. package/node/sftp/directory/index.js +1 -1
  492. package/node/sftp/directory/list/index.d.ts +3 -3
  493. package/node/sftp/directory/list/index.js +4 -4
  494. package/node/sftp/directory/move-dir/index.d.ts +7 -7
  495. package/node/sftp/directory/move-dir/index.js +7 -7
  496. package/node/sftp/directory/remove-dir/index.d.ts +5 -5
  497. package/node/sftp/directory/remove-dir/index.js +8 -7
  498. package/node/sftp/file/copy/index.d.ts +6 -6
  499. package/node/sftp/file/copy/index.js +5 -5
  500. package/node/sftp/file/download/index.d.ts +7 -7
  501. package/node/sftp/file/download/index.js +5 -5
  502. package/node/sftp/file/exists/index.d.ts +3 -3
  503. package/node/sftp/file/exists/index.js +3 -3
  504. package/node/sftp/file/index.d.ts +2 -2
  505. package/node/sftp/file/index.js +2 -2
  506. package/node/sftp/file/move/index.d.ts +7 -7
  507. package/node/sftp/file/move/index.js +7 -7
  508. package/node/sftp/file/remove/index.d.ts +4 -4
  509. package/node/sftp/file/remove/index.js +4 -4
  510. package/node/sftp/file/stat/index.d.ts +3 -3
  511. package/node/sftp/file/stat/index.js +6 -5
  512. package/node/sftp/file/upload/index.d.ts +6 -6
  513. package/node/sftp/file/upload/index.js +5 -5
  514. package/package.json +47 -39
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/no-unsafe-type-assertion -- TransformedColor<C> can't be narrowed from a generic type param at compile time; every assertion here is guarded by an isX(...) runtime check immediately prior */
2
+ /* eslint-disable max-lines */
1
3
  import { absoluteModulo } from '../../numbers/absolute-modulo/index.js';
2
4
  import { tidy } from '../tidy/index.js';
3
5
  import { cssColors } from '../cssColorsMap.js';
@@ -10,7 +12,6 @@ import { unknownToString } from '../../errors/unknown-to-string/index.js';
10
12
  // [WIP] maybe use absoluteModulo where needed?
11
13
  // needs rewrite, hex char checks, etc
12
14
  function _hex2rgb(hex) {
13
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
14
15
  if (!isHex(hex))
15
16
  throw new Error(`invalid hex color ${unknownToString(hex)}`);
16
17
  let hexString = hex;
@@ -20,13 +21,13 @@ function _hex2rgb(hex) {
20
21
  throw new Error(`invalid hex color ${inputHex}`);
21
22
  hexString = hexString.slice(1);
22
23
  if (hexString.length === 3) {
23
- hexString = hexString.split('').map(c => c + c).join('') + 'ff';
24
+ hexString = `${hexString.split('').map(c => c + c).join('')}ff`;
24
25
  }
25
26
  else if (hexString.length === 4) {
26
27
  hexString = hexString.split('').map(c => c + c).join('');
27
28
  }
28
29
  else if (hexString.length === 6) {
29
- hexString = hexString + 'ff';
30
+ hexString = `${hexString}ff`;
30
31
  }
31
32
  else if (hexString.length !== 8)
32
33
  throw new Error(`invalid hex color ${inputHex}`);
@@ -73,10 +74,14 @@ function _hsl2rgb(hsl) {
73
74
  const L = Math.max(0, Math.min(1, l / 100));
74
75
  const A = Math.max(0, Math.min(1, a));
75
76
  const hue2rgb = (p, q, t) => {
76
- if (t < 0)
77
+ // eslint-disable-next-line no-param-reassign
78
+ if (t < 0) {
77
79
  t += 1;
78
- if (t > 1)
80
+ }
81
+ // eslint-disable-next-line no-param-reassign
82
+ if (t > 1) {
79
83
  t -= 1;
84
+ }
80
85
  if (t < 1 / 6)
81
86
  return p + (q - p) * 6 * t;
82
87
  if (t < 1 / 2)
@@ -85,13 +90,10 @@ function _hsl2rgb(hsl) {
85
90
  return p + (q - p) * (2 / 3 - t) * 6;
86
91
  return p;
87
92
  };
88
- let r;
89
- let g;
90
- let b;
91
- if (S === 0) {
92
- r = g = b = L; // achromatic
93
- }
94
- else {
93
+ let r = L;
94
+ let g = L;
95
+ let b = L;
96
+ if (S !== 0) {
95
97
  const q = L < 0.5 ? L * (1 + S) : L + S - L * S;
96
98
  const p = 2 * L - q;
97
99
  r = hue2rgb(p, q, H + 1 / 3);
@@ -181,7 +183,10 @@ function _hsb2rgb(hsb) {
181
183
  g = p;
182
184
  blue = q;
183
185
  break;
184
- default: r = g = blue = 0;
186
+ default:
187
+ r = 0;
188
+ g = 0;
189
+ blue = 0;
185
190
  }
186
191
  return {
187
192
  r: Math.round(r * 255),
@@ -329,7 +334,7 @@ function _rgb2xyz(rgb) {
329
334
  }
330
335
  // XYZ ↔ LAB
331
336
  function _lab2xyz(lab) {
332
- const { l, a: A = 0, b: B = 0, al: alpha = 1 } = lab;
337
+ const { l, a: A, b: B, al: alpha = 1 } = lab;
333
338
  // D65 reference white
334
339
  const REF_X = 95.047;
335
340
  const REF_Y = 100.0;
@@ -398,8 +403,8 @@ function _lch2lab(lch) {
398
403
  /**
399
404
  * Converts any supported color format to RGBA.
400
405
  *
401
- * @param {Color} color - The color to convert.
402
- * @returns {Rgba} The color in RGBA format.
406
+ * @param color - The color to convert.
407
+ * @returns The color in RGBA format.
403
408
  * @throws {Error} If the color format is invalid or unsupported.
404
409
  */
405
410
  export function toRgb(color) {
@@ -426,8 +431,8 @@ export function toRgb(color) {
426
431
  /**
427
432
  * Converts any supported color format to CIE XYZ.
428
433
  *
429
- * @param {Color} color - The color to convert.
430
- * @returns {Xyza} The color in CIE XYZ format.
434
+ * @param color - The color to convert.
435
+ * @returns The color in CIE XYZ format.
431
436
  * @throws {Error} If the color format is invalid or unsupported.
432
437
  */
433
438
  export function toXyz(color) {
@@ -454,8 +459,8 @@ export function toXyz(color) {
454
459
  /**
455
460
  * Converts any supported color format to CIELAB.
456
461
  *
457
- * @param {Color} color - The color to convert.
458
- * @returns {Laba} The color in CIELAB format.
462
+ * @param color - The color to convert.
463
+ * @returns The color in CIELAB format.
459
464
  * @throws {Error} If the color format is invalid or unsupported.
460
465
  */
461
466
  export function toLab(color) {
@@ -469,8 +474,8 @@ export function toLab(color) {
469
474
  /**
470
475
  * Converts any supported color format to CIELCh.
471
476
  *
472
- * @param {Color} color - The color to convert.
473
- * @returns {Lcha} The color in CIELCh format.
477
+ * @param color - The color to convert.
478
+ * @returns The color in CIELCh format.
474
479
  * @throws {Error} If the color format is invalid or unsupported.
475
480
  */
476
481
  export function toLch(color) {
@@ -482,8 +487,8 @@ export function toLch(color) {
482
487
  /**
483
488
  * Converts any supported color format to HSLA.
484
489
  *
485
- * @param {Color} color - The color to convert.
486
- * @returns {Hsla} The color in HSLA format.
490
+ * @param color - The color to convert.
491
+ * @returns The color in HSLA format.
487
492
  * @throws {Error} If the color format is invalid or unsupported.
488
493
  */
489
494
  export function toHsl(color) {
@@ -495,8 +500,8 @@ export function toHsl(color) {
495
500
  /**
496
501
  * Converts any supported color format to HSBA (HSB/HSV).
497
502
  *
498
- * @param {Color} color - The color to convert.
499
- * @returns {Hsba} The color in HSBA format.
503
+ * @param color - The color to convert.
504
+ * @returns The color in HSBA format.
500
505
  * @throws {Error} If the color format is invalid or unsupported.
501
506
  */
502
507
  export function toHsb(color) {
@@ -508,8 +513,8 @@ export function toHsb(color) {
508
513
  /**
509
514
  * Converts any supported color format to CMYK.
510
515
  *
511
- * @param {Color} color - The color to convert.
512
- * @returns {Cmyka} The color in CMYK format.
516
+ * @param color - The color to convert.
517
+ * @returns The color in CMYK format.
513
518
  * @throws {Error} If the color format is invalid or unsupported.
514
519
  */
515
520
  export function toCmyk(color) {
@@ -527,8 +532,8 @@ export function toCss(color) {
527
532
  /**
528
533
  * Converts any supported color format to hexadecimal.
529
534
  *
530
- * @param {Color} color - The color to convert.
531
- * @returns {Hex} The color in hexadecimal format.
535
+ * @param color - The color to convert.
536
+ * @returns The color in hexadecimal format.
532
537
  * @throws {Error} If the color format is invalid or unsupported.
533
538
  */
534
539
  export function toHex(color) {
@@ -545,9 +550,9 @@ export function toHex(color) {
545
550
  * then converting back to the original color format.
546
551
  *
547
552
  * @template C - The input color type.
548
- * @param {C} color - The color to transform.
549
- * @param {(rgb: Rgba) => Rgba} transformer - Function that transforms the RGBA representation.
550
- * @returns {TransformedColor<C>} The transformed color in the original format.
553
+ * @param color - The color to transform.
554
+ * @param transformer - Function that transforms the RGBA representation.
555
+ * @returns The transformed color in the original format.
551
556
  * @throws {Error} If the color format is invalid or unsupported.
552
557
  */
553
558
  export function viaRgb(color, transformer) {
@@ -581,9 +586,9 @@ export function viaRgb(color, transformer) {
581
586
  * then converting back to the original color format.
582
587
  *
583
588
  * @template C - The input color type.
584
- * @param {C} color - The color to transform.
585
- * @param {(hsl: Hsla) => Hsla} transformer - Function that transforms the HSLA representation.
586
- * @returns {TransformedColor<C>} The transformed color in the original format.
589
+ * @param color - The color to transform.
590
+ * @param transformer - Function that transforms the HSLA representation.
591
+ * @returns The transformed color in the original format.
587
592
  * @throws {Error} If the color format is invalid or unsupported.
588
593
  */
589
594
  export function viaHsl(color, transformer) {
@@ -617,9 +622,9 @@ export function viaHsl(color, transformer) {
617
622
  * then converting back to the original color format.
618
623
  *
619
624
  * @template C - The input color type.
620
- * @param {C} color - The color to transform.
621
- * @param {(hsb: Hsba) => Hsba} transformer - Function that transforms the HSBA representation.
622
- * @returns {TransformedColor<C>} The transformed color in the original format.
625
+ * @param color - The color to transform.
626
+ * @param transformer - Function that transforms the HSBA representation.
627
+ * @returns The transformed color in the original format.
623
628
  * @throws {Error} If the color format is invalid or unsupported.
624
629
  */
625
630
  export function viaHsb(color, transformer) {
@@ -653,9 +658,9 @@ export function viaHsb(color, transformer) {
653
658
  * then converting back to the original color format.
654
659
  *
655
660
  * @template C - The input color type.
656
- * @param {C} color - The color to transform.
657
- * @param {(cmyk: Cmyka) => Cmyka} transformer - Function that transforms the CMYK representation.
658
- * @returns {TransformedColor<C>} The transformed color in the original format.
661
+ * @param color - The color to transform.
662
+ * @param transformer - Function that transforms the CMYK representation.
663
+ * @returns The transformed color in the original format.
659
664
  * @throws {Error} If the color format is invalid or unsupported.
660
665
  */
661
666
  export function viaCmyk(color, transformer) {
@@ -689,9 +694,9 @@ export function viaCmyk(color, transformer) {
689
694
  * then converting back to the original color format.
690
695
  *
691
696
  * @template C - The input color type.
692
- * @param {C} color - The color to transform.
693
- * @param {(xyz: Xyza) => Xyza} transformer - Function that transforms the XYZ representation.
694
- * @returns {TransformedColor<C>} The transformed color in the original format.
697
+ * @param color - The color to transform.
698
+ * @param transformer - Function that transforms the XYZ representation.
699
+ * @returns The transformed color in the original format.
695
700
  * @throws {Error} If the color format is invalid or unsupported.
696
701
  */
697
702
  export function viaXyz(color, transformer) {
@@ -725,9 +730,9 @@ export function viaXyz(color, transformer) {
725
730
  * then converting back to the original color format.
726
731
  *
727
732
  * @template C - The input color type.
728
- * @param {C} color - The color to transform.
729
- * @param {(lab: Laba) => Laba} transformer - Function that transforms the CIELAB representation.
730
- * @returns {TransformedColor<C>} The transformed color in the original format.
733
+ * @param color - The color to transform.
734
+ * @param transformer - Function that transforms the CIELAB representation.
735
+ * @returns The transformed color in the original format.
731
736
  * @throws {Error} If the color format is invalid or unsupported.
732
737
  */
733
738
  export function viaLab(color, transformer) {
@@ -761,9 +766,9 @@ export function viaLab(color, transformer) {
761
766
  * then converting back to the original color format.
762
767
  *
763
768
  * @template C - The input color type.
764
- * @param {C} color - The color to transform.
765
- * @param {(lch: Lcha) => Lcha} transformer - Function that transforms the CIELCh representation.
766
- * @returns {TransformedColor<C>} The transformed color in the original format.
769
+ * @param color - The color to transform.
770
+ * @param transformer - Function that transforms the CIELCh representation.
771
+ * @returns The transformed color in the original format.
767
772
  * @throws {Error} If the color format is invalid or unsupported.
768
773
  */
769
774
  export function viaLch(color, transformer) {
@@ -798,8 +803,8 @@ export function viaLch(color, transformer) {
798
803
  /**
799
804
  * Converts an RGBA color to linear sRGB color space by applying inverse gamma correction.
800
805
  *
801
- * @param {Rgba} rgb - The RGBA color to linearize.
802
- * @returns {Srgba} The linearized color in sRGB color space.
806
+ * @param rgb - The RGBA color to linearize.
807
+ * @returns The linearized color in sRGB color space.
803
808
  */
804
809
  export function linearizeToSRgb(rgb) {
805
810
  const cleanRgb = tidy(rgb);
@@ -820,8 +825,8 @@ export function linearizeToSRgb(rgb) {
820
825
  /**
821
826
  * Converts a linear sRGB color to RGBA by applying gamma correction.
822
827
  *
823
- * @param {Srgba} srgb - The linear sRGB color to delinearize.
824
- * @returns {Rgba} The delinearized color in RGBA format.
828
+ * @param srgb - The linear sRGB color to delinearize.
829
+ * @returns The delinearized color in RGBA format.
825
830
  */
826
831
  export function delinearizeToRgb(srgb) {
827
832
  const gammaChannel = (v) => {
@@ -1,10 +1,10 @@
1
- import { type Color, type DistanceMethod } from '../types.js';
1
+ import type { Color, DistanceMethod } from '../types.js';
2
2
  /**
3
3
  * Calculates the perceptual distance between two colors using the specified method.
4
4
  *
5
- * @param {Color} c1 - The first color.
6
- * @param {Color} c2 - The second color.
7
- * @param {DistanceMethod} [method='ciede2000'] - The calculation method to use.
8
- * @returns {number} The perceptual distance between the colors. Lower values indicate more similar colors.
5
+ * @param c1 - The first color.
6
+ * @param c2 - The second color.
7
+ * @param [method='ciede2000'] - The calculation method to use.
8
+ * @returns The perceptual distance between the colors. Lower values indicate more similar colors.
9
9
  */
10
10
  export declare function distance(c1: Color, c2: Color, method?: DistanceMethod): number;
@@ -56,13 +56,14 @@ function distanceCiede2000(c1, c2) {
56
56
  /**
57
57
  * Calculates the perceptual distance between two colors using the specified method.
58
58
  *
59
- * @param {Color} c1 - The first color.
60
- * @param {Color} c2 - The second color.
61
- * @param {DistanceMethod} [method='ciede2000'] - The calculation method to use.
62
- * @returns {number} The perceptual distance between the colors. Lower values indicate more similar colors.
59
+ * @param c1 - The first color.
60
+ * @param c2 - The second color.
61
+ * @param [method='ciede2000'] - The calculation method to use.
62
+ * @returns The perceptual distance between the colors. Lower values indicate more similar colors.
63
63
  */
64
64
  export function distance(c1, c2, method = 'ciede2000') {
65
65
  switch (method) {
66
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
66
67
  case 'ciede2000': return distanceCiede2000(toLab(c1), toLab(c2));
67
68
  }
68
69
  }
@@ -3,8 +3,8 @@ import type { Color, TransformedColor, GrayscaleMethod } from '../types.js';
3
3
  * Converts a color to grayscale using the specified method.
4
4
  *
5
5
  * @template C - The input color type.
6
- * @param {C} color - The color to convert to grayscale.
7
- * @param {GrayscaleMethod} [method='lab'] - The grayscale conversion method to use.
8
- * @returns {TransformedColor<C>} The grayscale color in the original format.
6
+ * @param color - The color to convert to grayscale.
7
+ * @param [method='lab'] - The grayscale conversion method to use.
8
+ * @returns The grayscale color in the original format.
9
9
  */
10
10
  export declare function grayscale<C extends Color>(color: C, method?: GrayscaleMethod): TransformedColor<C>;
@@ -88,9 +88,9 @@ function grayscaleLch(lch) { return { ...lch, c: 0 }; }
88
88
  * Converts a color to grayscale using the specified method.
89
89
  *
90
90
  * @template C - The input color type.
91
- * @param {C} color - The color to convert to grayscale.
92
- * @param {GrayscaleMethod} [method='lab'] - The grayscale conversion method to use.
93
- * @returns {TransformedColor<C>} The grayscale color in the original format.
91
+ * @param color - The color to convert to grayscale.
92
+ * @param [method='lab'] - The grayscale conversion method to use.
93
+ * @returns The grayscale color in the original format.
94
94
  */
95
95
  export function grayscale(color, method = 'lab') {
96
96
  switch (method) {
@@ -1,12 +1,12 @@
1
1
  export * as channels from './channels/index.js'
2
+ export * as convert from './convert/index.js'
2
3
  export * as contrast from './contrast/index.js'
3
- export * as grayscale from './grayscale/index.js'
4
4
  export * as distance from './distance/index.js'
5
+ export * as grayscale from './grayscale/index.js'
6
+ export * as invert from './invert/index.js'
5
7
  export * as lerp from './lerp/index.js'
6
8
  export * as luminance from './luminance/index.js'
7
9
  export * as palette from './palette/index.js'
8
- export * as convert from './convert/index.js'
9
10
  export * as rotate from './rotate/index.js'
10
11
  export * as tidy from './tidy/index.js'
11
12
  export * as typechecks from './typechecks/index.js'
12
- export * as invert from './invert/index.js'
@@ -1,12 +1,12 @@
1
1
  export * as channels from './channels/index.js'
2
+ export * as convert from './convert/index.js'
2
3
  export * as contrast from './contrast/index.js'
3
- export * as grayscale from './grayscale/index.js'
4
4
  export * as distance from './distance/index.js'
5
+ export * as grayscale from './grayscale/index.js'
6
+ export * as invert from './invert/index.js'
5
7
  export * as lerp from './lerp/index.js'
6
8
  export * as luminance from './luminance/index.js'
7
9
  export * as palette from './palette/index.js'
8
- export * as convert from './convert/index.js'
9
10
  export * as rotate from './rotate/index.js'
10
11
  export * as tidy from './tidy/index.js'
11
12
  export * as typechecks from './typechecks/index.js'
12
- export * as invert from './invert/index.js'
@@ -1,10 +1,10 @@
1
- import { type Color, type TransformedColor, type InvertMethod } from '../types.js';
1
+ import type { Color, TransformedColor, InvertMethod } from '../types.js';
2
2
  /**
3
3
  * Inverts a color using the specified method.
4
4
  *
5
5
  * @template C - The input color type.
6
- * @param {C} color - The color to invert.
7
- * @param {InvertMethod} [method='lch'] - The inversion method to use.
8
- * @returns {TransformedColor<C>} The inverted color in the original format.
6
+ * @param color - The color to invert.
7
+ * @param [method='lch'] - The inversion method to use.
8
+ * @returns The inverted color in the original format.
9
9
  */
10
10
  export declare function invert<C extends Color>(color: C, method?: InvertMethod): TransformedColor<C>;
@@ -27,9 +27,9 @@ function invertLch(color) {
27
27
  * Inverts a color using the specified method.
28
28
  *
29
29
  * @template C - The input color type.
30
- * @param {C} color - The color to invert.
31
- * @param {InvertMethod} [method='lch'] - The inversion method to use.
32
- * @returns {TransformedColor<C>} The inverted color in the original format.
30
+ * @param color - The color to invert.
31
+ * @param [method='lch'] - The inversion method to use.
32
+ * @returns The inverted color in the original format.
33
33
  */
34
34
  export function invert(color, method = 'lch') {
35
35
  switch (method) {
@@ -3,11 +3,10 @@ import type { Color, LerpMethod, TransformedColor } from '../types.js';
3
3
  * Linearly interpolates between two colors using the specified method.
4
4
  *
5
5
  * @template C1 - The first color type.
6
- * @template C2 - The second color type.
7
- * @param {C1} c1 - The starting color.
8
- * @param {C2} c2 - The ending color.
9
- * @param {number} amount - The interpolation amount (0-1), where 0 returns c1 and 1 returns c2.
10
- * @param {LerpMethod} [method='rgb'] - The interpolation method to use.
11
- * @returns {TransformedColor<C1>} The interpolated color in the format of c1.
6
+ * @param c1 - The starting color.
7
+ * @param c2 - The ending color.
8
+ * @param amount - The interpolation amount (0-1), where 0 returns c1 and 1 returns c2.
9
+ * @param [method='rgb'] - The interpolation method to use.
10
+ * @returns The interpolated color in the format of c1.
12
11
  */
13
- export declare function lerp<C1 extends Color, C2 extends Color>(c1: C1, c2: C2, amount: number, method?: LerpMethod): TransformedColor<C1>;
12
+ export declare function lerp<C1 extends Color>(c1: C1, c2: Color, amount: number, method?: LerpMethod): TransformedColor<C1>;
@@ -69,12 +69,11 @@ function lerpXyz(xyz1, xyz2, amount) {
69
69
  * Linearly interpolates between two colors using the specified method.
70
70
  *
71
71
  * @template C1 - The first color type.
72
- * @template C2 - The second color type.
73
- * @param {C1} c1 - The starting color.
74
- * @param {C2} c2 - The ending color.
75
- * @param {number} amount - The interpolation amount (0-1), where 0 returns c1 and 1 returns c2.
76
- * @param {LerpMethod} [method='rgb'] - The interpolation method to use.
77
- * @returns {TransformedColor<C1>} The interpolated color in the format of c1.
72
+ * @param c1 - The starting color.
73
+ * @param c2 - The ending color.
74
+ * @param amount - The interpolation amount (0-1), where 0 returns c1 and 1 returns c2.
75
+ * @param [method='rgb'] - The interpolation method to use.
76
+ * @returns The interpolated color in the format of c1.
78
77
  */
79
78
  export function lerp(c1, c2, amount, method = 'rgb') {
80
79
  switch (method) {
@@ -1,9 +1,9 @@
1
- import { type Color, type LuminanceMethod } from '../types.js';
1
+ import type { Color, LuminanceMethod } from '../types.js';
2
2
  /**
3
3
  * Calculates the relative luminance of a color using the specified method.
4
4
  *
5
- * @param {Color} color - The color to analyze.
6
- * @param {LuminanceMethod} [method='lab'] - The calculation method to use.
7
- * @returns {number} The relative luminance value (0-1).
5
+ * @param color - The color to analyze.
6
+ * @param [method='lab'] - The calculation method to use.
7
+ * @returns The relative luminance value (0-1).
8
8
  */
9
9
  export declare function luminance(color: Color, method?: LuminanceMethod): number;
@@ -6,9 +6,9 @@ function luminanceRgb(rgb) {
6
6
  /**
7
7
  * Calculates the relative luminance of a color using the specified method.
8
8
  *
9
- * @param {Color} color - The color to analyze.
10
- * @param {LuminanceMethod} [method='lab'] - The calculation method to use.
11
- * @returns {number} The relative luminance value (0-1).
9
+ * @param color - The color to analyze.
10
+ * @param [method='lab'] - The calculation method to use.
11
+ * @returns The relative luminance value (0-1).
12
12
  */
13
13
  export function luminance(color, method = 'lab') {
14
14
  switch (method) {
@@ -4,8 +4,8 @@ import type { Color, PaletteType, Palette } from '../types.js';
4
4
  *
5
5
  * @template C - The input color type.
6
6
  * @template T - The palette generation scheme type.
7
- * @param {C} color - The base color for palette generation.
8
- * @param {T} type - The type of palette to generate (e.g., 'complementary', 'triadic', 'tetradic').
9
- * @returns {Palette<C, T>} An array of colors forming the requested palette, in the original color format.
7
+ * @param color - The base color for palette generation.
8
+ * @param type - The type of palette to generate (e.g., 'complementary', 'triadic', 'tetradic').
9
+ * @returns An array of colors forming the requested palette, in the original color format.
10
10
  */
11
11
  export declare function palette<C extends Color, T extends PaletteType>(color: C, type: T): Palette<C, T>;
@@ -82,9 +82,9 @@ function tetradicLch(color) {
82
82
  *
83
83
  * @template C - The input color type.
84
84
  * @template T - The palette generation scheme type.
85
- * @param {C} color - The base color for palette generation.
86
- * @param {T} type - The type of palette to generate (e.g., 'complementary', 'triadic', 'tetradic').
87
- * @returns {Palette<C, T>} An array of colors forming the requested palette, in the original color format.
85
+ * @param color - The base color for palette generation.
86
+ * @param type - The type of palette to generate (e.g., 'complementary', 'triadic', 'tetradic').
87
+ * @returns An array of colors forming the requested palette, in the original color format.
88
88
  */
89
89
  export function palette(color, type) {
90
90
  switch (type) {
@@ -100,6 +100,7 @@ export function palette(color, type) {
100
100
  case 'tetradic': return tetradicHsl(color);
101
101
  case 'tetradic-lab': return tetradicLab(color);
102
102
  case 'tetradic-lch': return tetradicLch(color);
103
+ // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check
103
104
  default: throw new Error(`Invalid palette type: ${type}`);
104
105
  }
105
106
  }
@@ -3,9 +3,9 @@ import type { Color, TransformedColor, RotateMethod } from '../types.js';
3
3
  * Rotates the hue of a color by a specified number of degrees.
4
4
  *
5
5
  * @template C - The input color type.
6
- * @param {C} color - The color to rotate.
7
- * @param {number} degrees - The number of degrees to rotate the hue (positive or negative).
8
- * @param {RotateMethod} [method='hsl'] - The color space to use for rotation.
9
- * @returns {TransformedColor<C>} The rotated color in the original format.
6
+ * @param color - The color to rotate.
7
+ * @param degrees - The number of degrees to rotate the hue (positive or negative).
8
+ * @param [method='hsl'] - The color space to use for rotation.
9
+ * @returns The rotated color in the original format.
10
10
  */
11
11
  export declare function rotate<C extends Color>(color: C, degrees: number, method?: RotateMethod): TransformedColor<C>;
@@ -27,10 +27,10 @@ function rotateLch(color, degrees) {
27
27
  * Rotates the hue of a color by a specified number of degrees.
28
28
  *
29
29
  * @template C - The input color type.
30
- * @param {C} color - The color to rotate.
31
- * @param {number} degrees - The number of degrees to rotate the hue (positive or negative).
32
- * @param {RotateMethod} [method='hsl'] - The color space to use for rotation.
33
- * @returns {TransformedColor<C>} The rotated color in the original format.
30
+ * @param color - The color to rotate.
31
+ * @param degrees - The number of degrees to rotate the hue (positive or negative).
32
+ * @param [method='hsl'] - The color space to use for rotation.
33
+ * @returns The rotated color in the original format.
34
34
  */
35
35
  export function rotate(color, degrees, method = 'hsl') {
36
36
  switch (method) {
@@ -3,8 +3,8 @@ import type { Color, TransformedColor } from '../types.js';
3
3
  * Clamps and normalizes a color's channel values to their valid ranges.
4
4
  *
5
5
  * @template C - The input color type.
6
- * @param {C} color - The color to tidy.
7
- * @returns {TransformedColor<C>} The color with all channels clamped to valid ranges, in the original format.
6
+ * @param color - The color to tidy.
7
+ * @returns The color with all channels clamped to valid ranges, in the original format.
8
8
  * @throws {Error} If the color format is invalid or unsupported.
9
9
  */
10
10
  export declare function tidy<C extends Color>(color: C): TransformedColor<C>;
@@ -7,8 +7,8 @@ import { unknownToString } from '../../errors/unknown-to-string/index.js';
7
7
  * Clamps and normalizes a color's channel values to their valid ranges.
8
8
  *
9
9
  * @template C - The input color type.
10
- * @param {C} color - The color to tidy.
11
- * @returns {TransformedColor<C>} The color with all channels clamped to valid ranges, in the original format.
10
+ * @param color - The color to tidy.
11
+ * @returns The color with all channels clamped to valid ranges, in the original format.
12
12
  * @throws {Error} If the color format is invalid or unsupported.
13
13
  */
14
14
  export function tidy(color) {