@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,4 +1,4 @@
1
- /* eslint-disable @typescript-eslint/no-throw-literal */
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
  import * as Window from '../../../misc/crossenv/window/index.js';
3
3
  import { trimStart, trimEnd } from '../../../strings/trim/index.js';
4
4
  import { Serialize } from '../serialize/index.js';
@@ -158,7 +158,7 @@ export var Tree;
158
158
  this.isMethod = isMethod;
159
159
  this.tagName = rawTagName;
160
160
  this.smartTagName = hasTrailingUnderscore
161
- ? rawTagName.replace(/_+$/g, '')
161
+ ? rawTagName.replace(/_+$/gv, '')
162
162
  : rawTagName;
163
163
  }
164
164
  else {
@@ -187,6 +187,7 @@ export var Tree;
187
187
  return attr.name === Tree.modeAttribute
188
188
  && Utils.Tree.TypeChecks.isTreeMode(attr.value);
189
189
  });
190
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- value already validated by isTreeMode(...) in the find() predicate above
190
191
  this.mode = hasModeAttribute?.value
191
192
  ?? this.smartTagData?.defaultMode
192
193
  ?? 'isolation';
@@ -212,11 +213,13 @@ export var Tree;
212
213
  this.isolationInitType = 'array';
213
214
  }
214
215
  else {
216
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- value already validated (and 'transformer'/'method' excluded) by the find() predicate above
215
217
  const initAttributeValue = hasInitAttribute?.value;
216
218
  if (initAttributeValue !== undefined) {
217
219
  this.isolationInitType = initAttributeValue;
218
220
  }
219
221
  else if (this.smartTagData !== null) {
222
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
220
223
  this.isolationInitType = this.smartTagData?.isolationInitType ?? 'array';
221
224
  }
222
225
  else {
@@ -247,7 +250,7 @@ export var Tree;
247
250
  if (lastReducedItem instanceof Element)
248
251
  return [...reduced, child];
249
252
  const lastReducedTrimmed = trimEnd(lastReducedItem?.textContent ?? '');
250
- const childTrimmed = trimStart(child.textContent ?? '');
253
+ const childTrimmed = trimStart(child.textContent);
251
254
  const merged = document.createTextNode(`${lastReducedTrimmed}${childTrimmed}`);
252
255
  const returned = [...reduced];
253
256
  returned.pop();
@@ -258,17 +261,17 @@ export var Tree;
258
261
  // Filter out empty Text nodes after merging neighbours
259
262
  if (child instanceof Element)
260
263
  return true;
261
- const textContent = child.textContent ?? '';
264
+ const textContent = child.textContent;
262
265
  return textContent.trim() !== '';
263
266
  })
264
267
  .forEach(childNode => {
265
268
  if (childNode instanceof Text) {
266
- const rawTextContent = childNode.textContent ?? '';
269
+ const rawTextContent = childNode.textContent;
267
270
  // Strips padding whitespaces (before and after)
268
271
  // if they contain at least one line return character
269
272
  const textContent = rawTextContent
270
- .replace(/^\s*\n+\s*/, '')
271
- .replace(/\s*\n+\s*$/, '');
273
+ .replace(/^\s*\n+\s*/v, '')
274
+ .replace(/\s*\n+\s*$/v, '');
272
275
  const returnedChildNode = document.createTextNode(textContent);
273
276
  mutableSubtrees.set(positionnedChildrenCount, new Tree(returnedChildNode, this, positionnedChildrenCount));
274
277
  positionnedChildrenCount += 1;
@@ -287,7 +290,7 @@ export var Tree;
287
290
  this.subtrees = mutableSubtrees;
288
291
  }
289
292
  resolve = function (path) {
290
- // eslint-disable-next-line @typescript-eslint/no-this-alias
293
+ // eslint-disable-next-line consistent-this, @typescript-eslint/no-this-alias
291
294
  let currentTree = this;
292
295
  for (const chunk of path) {
293
296
  if (chunk === '.')
@@ -342,6 +345,7 @@ export var Tree;
342
345
  performSafetyChecks();
343
346
  // If node is text, returns the node itself
344
347
  const { Text } = Window.get();
348
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- cloneNode() preserves the node's concrete type; Text here comes from Window.get() so TS can't carry the instanceof narrowing through
345
349
  if (node instanceof Text)
346
350
  return node.cloneNode(true);
347
351
  // Inner value calculation
@@ -356,6 +360,7 @@ export var Tree;
356
360
  // If no smartTagData, then treat it as an HTMLElement
357
361
  if (smartTagData === null) {
358
362
  const nodelist = Cast.toNodeList(innerValue);
363
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- node is Element here (the Text case returned above); cloneNode() preserves the concrete type
359
364
  const clone = node.cloneNode();
360
365
  clone.append(...Array.from(nodelist));
361
366
  return clone;
@@ -414,6 +419,7 @@ export var Tree;
414
419
  setCachedValue(evaluated);
415
420
  const end = Date.now();
416
421
  const time = end - start;
422
+ // eslint-disable-next-line no-console
417
423
  if (time > 20)
418
424
  console.warn(`${this.pathString} took ${time}ms to evaluate, maybe there's something wrong here`);
419
425
  return evaluated;
@@ -1,7 +1,7 @@
1
1
  import type * as Outcome from '../../../misc/outcome/index.js';
2
- import { type Tree as TreeNamespace } from '../tree/index.js';
3
- import { type Transformer } from '../transformer/index.js';
4
- import { type Method } from '../method/index.js';
2
+ import type { Tree as TreeNamespace } from '../tree/index.js';
3
+ import type { Transformer } from '../transformer/index.js';
4
+ import type { Method } from '../method/index.js';
5
5
  export declare namespace Types {
6
6
  namespace Transformations {
7
7
  type FunctionMainValueFailure = {
@@ -112,22 +112,22 @@ export declare namespace Types {
112
112
  };
113
113
  }
114
114
  namespace SmartTags {
115
- type SmartTag<Main extends Types.Tree.RestingValue | undefined = Types.Tree.RestingValue | undefined, Args extends Types.Tree.RestingArrayValue = Types.Tree.RestingArrayValue, Output extends Types.Tree.RestingValue = Types.Tree.RestingValue> = {
116
- defaultMode: Types.Tree.Mode;
117
- isolationInitType: Exclude<Types.Tree.ValueTypeName, 'transformer' | 'method'>;
118
- generator: (innerValue: Types.Tree.RestingValue, mode: Types.Tree.Mode, sourceTree: TreeNamespace.Tree) => {
115
+ type SmartTag<Main extends Tree.RestingValue | undefined = Tree.RestingValue | undefined, Args extends Tree.RestingArrayValue = Tree.RestingArrayValue, Output extends Tree.RestingValue = Tree.RestingValue> = {
116
+ defaultMode: Tree.Mode;
117
+ isolationInitType: Exclude<Tree.ValueTypeName, 'transformer' | 'method'>;
118
+ generator: (innerValue: Tree.RestingValue, mode: Tree.Mode, sourceTree: TreeNamespace.Tree) => {
119
119
  transformer: Transformer<Main, Args, Output>;
120
120
  method: Method<Main, Args, Output>;
121
121
  };
122
122
  };
123
- type Descriptor<Main extends Types.Tree.RestingValue | undefined = Types.Tree.RestingValue | undefined, Args extends Types.Tree.RestingArrayValue = Types.Tree.RestingArrayValue, Output extends Types.Tree.RestingValue = Types.Tree.RestingValue> = {
123
+ type Descriptor<Main extends Tree.RestingValue | undefined = Tree.RestingValue | undefined, Args extends Tree.RestingArrayValue = Tree.RestingArrayValue, Output extends Tree.RestingValue = Tree.RestingValue> = {
124
124
  name: string;
125
- defaultMode: Types.Tree.Mode;
126
- isolationInitType: Exclude<Types.Tree.ValueTypeName, 'transformer' | 'method'>;
125
+ defaultMode: Tree.Mode;
126
+ isolationInitType: Exclude<Tree.ValueTypeName, 'transformer' | 'method'>;
127
127
  mainValueCheck: Transformer<Main, Args, Output>['typeChecks']['mainValue'];
128
128
  argsValueCheck: Transformer<Main, Args, Output>['typeChecks']['argsValue'];
129
129
  func: Transformer<Main, Args, Output>['func'];
130
130
  };
131
- type Register = Map<string, Types.SmartTags.SmartTag<any, any, any>>;
131
+ type Register = Map<string, SmartTag<any, any, any>>;
132
132
  }
133
133
  }
@@ -50,8 +50,8 @@ export declare namespace Utils {
50
50
  expected: string;
51
51
  found: string;
52
52
  }>;
53
- const makeMainValueError: (expected: string, found: string, details?: any) => Types.Transformations.FunctionMainValueFailure;
54
- const makeArgsValueError: (expected: string, found: string, position?: number, details?: any) => Types.Transformations.FunctionArgsValueFailure;
55
- const makeTransformationError: (details?: any) => Types.Transformations.FunctionTransformationFailure;
53
+ const makeMainValueError: (expected: string, found: string, details?: unknown) => Types.Transformations.FunctionMainValueFailure;
54
+ const makeArgsValueError: (expected: string, found: string, position?: number, details?: unknown) => Types.Transformations.FunctionArgsValueFailure;
55
+ const makeTransformationError: (details?: unknown) => Types.Transformations.FunctionTransformationFailure;
56
56
  }
57
57
  }
@@ -1,3 +1,4 @@
1
+ /* eslint-disable max-lines, @typescript-eslint/no-unsafe-type-assertion -- generic type params (T/K/Value) and DOM NodeList casts here can't be narrowed from a generic/runtime check at compile time; guarded by runtime typeCheck(s)/instanceof checks immediately prior */
1
2
  import * as Window from '../../../misc/crossenv/window/index.js';
2
3
  import { isRecord } from '../../../objects/is-record/index.js';
3
4
  import { recordMap } from '../../../objects/record-map/index.js';
@@ -35,6 +36,7 @@ export var Utils;
35
36
  return [...value.map(clone)];
36
37
  if (isRecord(value))
37
38
  return recordMap(value, prop => clone(prop));
39
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
38
40
  throw new Error(`Cannot clone value: ${value}`);
39
41
  }
40
42
  Utils.clone = clone;
@@ -45,11 +47,13 @@ export var Utils;
45
47
  const transformer = toCoalesce;
46
48
  const transformationResult = transformer.apply(currentValue);
47
49
  if (!transformationResult.success) {
50
+ // eslint-disable-next-line no-console
48
51
  console.warn({ ...transformationResult.error });
49
52
  return currentValue;
50
53
  }
51
54
  const evaluated = transformationResult.payload;
52
55
  if (transformer.mode === 'isolation') {
56
+ // eslint-disable-next-line no-param-reassign
53
57
  toCoalesce = evaluated; // We set toCoalesce to the result of the evaluation, and process this result below as a non-Transformer value
54
58
  }
55
59
  else {
@@ -78,12 +82,12 @@ export var Utils;
78
82
  return `${currentValue}${toCoalesce.textContent}`;
79
83
  if (toCoalesce instanceof Element) {
80
84
  const frag = document.createDocumentFragment();
81
- frag.append(currentValue, Utils.clone(toCoalesce));
85
+ frag.append(currentValue, clone(toCoalesce));
82
86
  return frag.childNodes;
83
87
  }
84
88
  if (toCoalesce instanceof NodeList) {
85
89
  const frag = document.createDocumentFragment();
86
- frag.append(currentValue, ...Array.from(Utils.clone(toCoalesce)));
90
+ frag.append(currentValue, ...Array.from(clone(toCoalesce)));
87
91
  return frag.childNodes;
88
92
  }
89
93
  return toCoalesce;
@@ -164,7 +168,7 @@ export var Utils;
164
168
  const { document, Element, Text, NodeList } = Window.get();
165
169
  if (value instanceof Text) {
166
170
  const elt = document.createElement('text');
167
- elt.innerHTML = value.textContent ?? '';
171
+ elt.innerHTML = value.textContent;
168
172
  return elt;
169
173
  }
170
174
  if (value instanceof Element)
@@ -367,6 +371,7 @@ export var Utils;
367
371
  return document.createElement('div');
368
372
  if (name === 'array')
369
373
  return [];
374
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
370
375
  if (name === 'record')
371
376
  return {};
372
377
  throw new Error(`Unknown value type name: ${name}`);
@@ -1,10 +1,10 @@
1
1
  export * as getNodeAncestors from './get-node-ancestors/index.js'
2
- export * as getPositionInsideParent from './get-position-inside-parent/index.js'
3
2
  export * as deepSelect from './deep-select/index.js'
3
+ export * as getPositionInsideParent from './get-position-inside-parent/index.js'
4
4
  export * as hyperJson from './hyper-json/index.js'
5
+ export * as insertNode from './insert-node/index.js'
6
+ export * as replaceInElement from './replace-in-element/index.js'
5
7
  export * as placeholders from './placeholders/index.js'
6
- export * as selectorToElement from './selector-to-element/index.js'
7
8
  export * as stringToNodes from './string-to-nodes/index.js'
9
+ export * as selectorToElement from './selector-to-element/index.js'
8
10
  export * as watchSelection from './watch-selection/index.js'
9
- export * as insertNode from './insert-node/index.js'
10
- export * as replaceInElement from './replace-in-element/index.js'
@@ -1,10 +1,10 @@
1
1
  export * as getNodeAncestors from './get-node-ancestors/index.js'
2
- export * as getPositionInsideParent from './get-position-inside-parent/index.js'
3
2
  export * as deepSelect from './deep-select/index.js'
3
+ export * as getPositionInsideParent from './get-position-inside-parent/index.js'
4
4
  export * as hyperJson from './hyper-json/index.js'
5
+ export * as insertNode from './insert-node/index.js'
6
+ export * as replaceInElement from './replace-in-element/index.js'
5
7
  export * as placeholders from './placeholders/index.js'
6
- export * as selectorToElement from './selector-to-element/index.js'
7
8
  export * as stringToNodes from './string-to-nodes/index.js'
9
+ export * as selectorToElement from './selector-to-element/index.js'
8
10
  export * as watchSelection from './watch-selection/index.js'
9
- export * as insertNode from './insert-node/index.js'
10
- export * as replaceInElement from './replace-in-element/index.js'
@@ -11,9 +11,9 @@ export type InsertNodePosition = 'after' | 'before' | 'startof' | 'endof';
11
11
  /**
12
12
  * Inserts a DOM node at a specific position relative to a reference node.
13
13
  *
14
- * @param {Node} node - The node to insert.
15
- * @param {InsertNodePosition} position - The insertion position relative to the reference node.
16
- * @param {Node} reference - The reference node used to determine the insertion point.
17
- * @returns {void}
14
+ * @param node - The node to insert.
15
+ * @param position - The insertion position relative to the reference node.
16
+ * @param reference - The reference node used to determine the insertion point.
17
+ * @returns
18
18
  */
19
19
  export declare function insertNode(node: Node, position: InsertNodePosition, reference: Node): void;
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Inserts a DOM node at a specific position relative to a reference node.
3
3
  *
4
- * @param {Node} node - The node to insert.
5
- * @param {InsertNodePosition} position - The insertion position relative to the reference node.
6
- * @param {Node} reference - The reference node used to determine the insertion point.
7
- * @returns {void}
4
+ * @param node - The node to insert.
5
+ * @param position - The insertion position relative to the reference node.
6
+ * @param reference - The reference node used to determine the insertion point.
7
+ * @returns
8
8
  */
9
9
  export function insertNode(node, position, reference) {
10
10
  if (position === 'after') {
@@ -6,10 +6,10 @@
6
6
  * are applied. Each target node is removed after its replacement node(s)
7
7
  * are inserted in its place.
8
8
  *
9
- * @param {Element} inputElement - The root element within which replacements are applied.
10
- * @param {Map<Node, Node | NodeListOf<Node>>} replaceMap
9
+ * @param inputElement - The root element within which replacements are applied.
10
+ * @param replaceMap
11
11
  * - A map associating nodes to be replaced with either a single replacement
12
12
  * node or a list of replacement nodes.
13
- * @returns {Element} The original `inputElement`, after replacements have been applied.
13
+ * @returns The original `inputElement`, after replacements have been applied.
14
14
  */
15
15
  export declare function replaceInElement(inputElement: Element, replaceMap: Map<Node, Node | NodeListOf<Node>>): Element;
@@ -7,11 +7,11 @@ import { getNodeAncestors } from '../get-node-ancestors/index.js';
7
7
  * are applied. Each target node is removed after its replacement node(s)
8
8
  * are inserted in its place.
9
9
  *
10
- * @param {Element} inputElement - The root element within which replacements are applied.
11
- * @param {Map<Node, Node | NodeListOf<Node>>} replaceMap
10
+ * @param inputElement - The root element within which replacements are applied.
11
+ * @param replaceMap
12
12
  * - A map associating nodes to be replaced with either a single replacement
13
13
  * node or a list of replacement nodes.
14
- * @returns {Element} The original `inputElement`, after replacements have been applied.
14
+ * @returns The original `inputElement`, after replacements have been applied.
15
15
  */
16
16
  export function replaceInElement(inputElement, replaceMap) {
17
17
  const actualReplaceMap = new Map(Array.from(replaceMap).filter(([toReplace]) => {
@@ -24,7 +24,7 @@ export function replaceInElement(inputElement, replaceMap) {
24
24
  }
25
25
  else {
26
26
  const replacerNodes = Array.from(replacer);
27
- replacerNodes.forEach(rpl => toReplace.parentNode?.insertBefore(rpl, toReplace));
27
+ replacerNodes.forEach(rpl => { toReplace.parentNode?.insertBefore(rpl, toReplace); });
28
28
  }
29
29
  toReplace.parentNode?.removeChild(toReplace);
30
30
  });
@@ -8,8 +8,8 @@
8
8
  * - Classes (e.g., `".class1.class2"`)
9
9
  * - Attributes (e.g., `"[attr=value]"`)
10
10
  *
11
- * @param {string} selector - The selector string used to construct the element.
12
- * @returns {Element} A newly created DOM element corresponding to the selector.
11
+ * @param selector - The selector string used to construct the element.
12
+ * @returns A newly created DOM element corresponding to the selector.
13
13
  *
14
14
  * @throws Will throw an error if no document object is available for element creation.
15
15
  */
@@ -10,19 +10,19 @@ import * as Window from '../../misc/crossenv/window/index.js';
10
10
  * - Classes (e.g., `".class1.class2"`)
11
11
  * - Attributes (e.g., `"[attr=value]"`)
12
12
  *
13
- * @param {string} selector - The selector string used to construct the element.
14
- * @returns {Element} A newly created DOM element corresponding to the selector.
13
+ * @param selector - The selector string used to construct the element.
14
+ * @returns A newly created DOM element corresponding to the selector.
15
15
  *
16
16
  * @throws Will throw an error if no document object is available for element creation.
17
17
  */
18
18
  export function selectorToElement(selector) {
19
19
  // RegExps
20
- const tagRegexp = /^[A-Za-z]+/;
20
+ const tagRegexp = /^[A-Za-z]+/v;
21
21
  // The dot is apparently a valid character but is prevented here
22
22
  // in order to be able to match class elements
23
- const idRegexp = /#[A-Za-z]+[\w\-\:]*/;
24
- const classRegexp = /\.[A-Za-z]+[\w\-]*/g;
25
- const attributeRegexp = /\[[A-Za-z]+[\w\-]*(="[\w\-]+")?\]/g;
23
+ const idRegexp = /#[A-Za-z]+[\w\-\:]*/v;
24
+ const classRegexp = /\.[A-Za-z]+[\w\-]*/gv;
25
+ const attributeRegexp = /\[[A-Za-z]+[\w\-]*(="[\w\-]+")?\]/gv;
26
26
  // Matched
27
27
  const matchedTags = selector.match(tagRegexp) ?? [];
28
28
  const matchedIds = selector.match(idRegexp) ?? [];
@@ -31,12 +31,12 @@ export function selectorToElement(selector) {
31
31
  // Extracted
32
32
  const tag = matchedTags[matchedTags.length - 1] ?? 'div';
33
33
  const id = matchedIds.length > 0
34
- ? matchedIds[matchedIds.length - 1]?.replace(/^#/, '') ?? null
34
+ ? matchedIds[matchedIds.length - 1]?.replace(/^#/v, '') ?? null
35
35
  : null;
36
- const classes = matchedClasses.map(matchedClass => matchedClass.replace(/^\./, ''));
36
+ const classes = matchedClasses.map(matchedClass => matchedClass.replace(/^\./v, ''));
37
37
  const attributes = matchedAttrs.map(matchedAttr => matchedAttr
38
- .replace(/^\[/, '')
39
- .replace(/\]$/, '')
38
+ .replace(/^\[/v, '')
39
+ .replace(/\]$/v, '')
40
40
  .split('='));
41
41
  // Returning
42
42
  const element = Window.get().document.createElement(tag);
@@ -47,7 +47,7 @@ export function selectorToElement(selector) {
47
47
  attributes.forEach(([name, value = '']) => {
48
48
  if (name === undefined)
49
49
  return;
50
- const cleanValue = value.replace(/^"(.*)"$/, '$1');
50
+ const cleanValue = value.replace(/^"(.*)"$/v, '$1');
51
51
  element.setAttribute(name, cleanValue);
52
52
  });
53
53
  return element;
@@ -7,8 +7,8 @@
7
7
  * Only element and text nodes are included in the returned array; comment
8
8
  * and other node types are ignored.
9
9
  *
10
- * @param {string} inputStr - The input string to convert into nodes.
11
- * @param {SanitizeHtmlOptions} [options.sanitize] - Sanitization options for the input string.
12
- * @returns {Node[]} An array of DOM nodes created from the string.
10
+ * @param inputStr - The input string to convert into nodes.
11
+ * @param [options.sanitize] - Sanitization options for the input string.
12
+ * @returns An array of DOM nodes created from the string.
13
13
  */
14
14
  export declare function stringToNodes(inputStr: string): Node[];
@@ -8,9 +8,9 @@ import * as Window from '../../misc/crossenv/window/index.js';
8
8
  * Only element and text nodes are included in the returned array; comment
9
9
  * and other node types are ignored.
10
10
  *
11
- * @param {string} inputStr - The input string to convert into nodes.
12
- * @param {SanitizeHtmlOptions} [options.sanitize] - Sanitization options for the input string.
13
- * @returns {Node[]} An array of DOM nodes created from the string.
11
+ * @param inputStr - The input string to convert into nodes.
12
+ * @param [options.sanitize] - Sanitization options for the input string.
13
+ * @returns An array of DOM nodes created from the string.
14
14
  */
15
15
  export function stringToNodes(inputStr) {
16
16
  const window = Window.get();
@@ -16,13 +16,12 @@ type Options = {
16
16
  *
17
17
  * Requires a browser environment with `window` and `document`.
18
18
  *
19
- * @param {string} selector - CSS selector passed to `deepSelect`.
20
- * @param {Options} options - Callbacks and polling configuration:
19
+ * @param selector - CSS selector passed to `deepSelect`.
20
+ * @param options - Callbacks and polling configuration:
21
21
  * - `watch`: Handler for elements that enter the selection.
22
22
  * - `unwatch`: Handler for elements that leave the selection.
23
23
  * - `selectIntervalMs`: Delay between polls in milliseconds.
24
- * @returns {Promise<{ kill: () => void }>}
25
- * Resolves after the initial selection is processed. `kill` stops polling and calls `unwatch`
24
+ * @returns Resolves after the initial selection is processed. `kill` stops polling and calls `unwatch`
26
25
  * on every element still watched.
27
26
  *
28
27
  * @example
@@ -35,7 +34,7 @@ type Options = {
35
34
  * // later, when tearing down:
36
35
  * kill()
37
36
  */
38
- export declare const watchSelection: (selector: string, options: Options) => Promise<{
37
+ export declare const watchSelection: (selector: string, options?: Options) => Promise<{
39
38
  kill: () => void;
40
39
  }>;
41
40
  export {};
@@ -8,13 +8,12 @@ import { deepSelect } from '../deep-select/index.js';
8
8
  *
9
9
  * Requires a browser environment with `window` and `document`.
10
10
  *
11
- * @param {string} selector - CSS selector passed to `deepSelect`.
12
- * @param {Options} options - Callbacks and polling configuration:
11
+ * @param selector - CSS selector passed to `deepSelect`.
12
+ * @param options - Callbacks and polling configuration:
13
13
  * - `watch`: Handler for elements that enter the selection.
14
14
  * - `unwatch`: Handler for elements that leave the selection.
15
15
  * - `selectIntervalMs`: Delay between polls in milliseconds.
16
- * @returns {Promise<{ kill: () => void }>}
17
- * Resolves after the initial selection is processed. `kill` stops polling and calls `unwatch`
16
+ * @returns Resolves after the initial selection is processed. `kill` stops polling and calls `unwatch`
18
17
  * on every element still watched.
19
18
  *
20
19
  * @example
@@ -28,8 +27,8 @@ import { deepSelect } from '../deep-select/index.js';
28
27
  * kill()
29
28
  */
30
29
  export const watchSelection = async (selector, options) => {
31
- const watch = options?.watch ?? (() => { });
32
- const unwatch = options?.unwatch ?? (() => { });
30
+ const watch = options?.watch ?? (() => undefined);
31
+ const unwatch = options?.unwatch ?? (() => undefined);
33
32
  let watched = await deepSelect(selector);
34
33
  watched.forEach(watch);
35
34
  const selectIntervalMs = options?.selectIntervalMs ?? 100;
@@ -1,16 +1,16 @@
1
- export * as arrays from './arrays/index.js'
2
1
  export * as booleans from './booleans/index.js'
3
2
  export * as colors from './colors/index.js'
3
+ export * as arrays from './arrays/index.js'
4
4
  export * as css from './css/index.js'
5
5
  export * as errors from './errors/index.js'
6
- export * as html from './html/index.js'
7
6
  export * as misc from './misc/index.js'
7
+ export * as html from './html/index.js'
8
8
  export * as numbers from './numbers/index.js'
9
9
  export * as objects from './objects/index.js'
10
10
  export * as optim from './optim/index.js'
11
11
  export * as random from './random/index.js'
12
- export * as regexps from './regexps/index.js'
13
12
  export * as sanitization from './sanitization/index.js'
14
13
  export * as strings from './strings/index.js'
14
+ export * as regexps from './regexps/index.js'
15
15
  export * as time from './time/index.js'
16
16
  export * as typescript from './typescript/index.js'
package/agnostic/index.js CHANGED
@@ -1,16 +1,16 @@
1
- export * as arrays from './arrays/index.js'
2
1
  export * as booleans from './booleans/index.js'
3
2
  export * as colors from './colors/index.js'
3
+ export * as arrays from './arrays/index.js'
4
4
  export * as css from './css/index.js'
5
5
  export * as errors from './errors/index.js'
6
- export * as html from './html/index.js'
7
6
  export * as misc from './misc/index.js'
7
+ export * as html from './html/index.js'
8
8
  export * as numbers from './numbers/index.js'
9
9
  export * as objects from './objects/index.js'
10
10
  export * as optim from './optim/index.js'
11
11
  export * as random from './random/index.js'
12
- export * as regexps from './regexps/index.js'
13
12
  export * as sanitization from './sanitization/index.js'
14
13
  export * as strings from './strings/index.js'
14
+ export * as regexps from './regexps/index.js'
15
15
  export * as time from './time/index.js'
16
16
  export * as typescript from './typescript/index.js'
@@ -1,7 +1,9 @@
1
+ /* eslint-disable @typescript-eslint/no-deprecated */
1
2
  import { unknownToString } from '../../errors/unknown-to-string/index.js';
2
3
  import * as Outcome from '../outcome/index.js';
3
4
  function makeSuccess(label) {
4
5
  const formattedLabel = label.split('\n').join('\n ');
6
+ // eslint-disable-next-line no-console
5
7
  console.info(`✅ SUCCESS:\n ${formattedLabel}`);
6
8
  }
7
9
  function makeFailure(label) {
@@ -58,7 +60,7 @@ export async function assert(label, assertion) {
58
60
  }
59
61
  export async function assertVerbose(label, assertion) {
60
62
  const asserted = await assert(label, assertion);
61
- if (asserted?.success) {
63
+ if (asserted.success) {
62
64
  makeSuccess(asserted.payload);
63
65
  return asserted;
64
66
  }
@@ -5,8 +5,8 @@
5
5
  * - Strings equal to `"true"` (case-insensitive, trimmed) are `true`, others `false`.
6
6
  * - Other values are coerced using `!isFalsy`.
7
7
  *
8
- * @param {unknown} value - The value to convert.
9
- * @returns {boolean} The boolean representation of the input.
8
+ * @param value - The value to convert.
9
+ * @returns The boolean representation of the input.
10
10
  */
11
11
  export declare function toBoolean(value: unknown): boolean;
12
12
  /**
@@ -16,8 +16,8 @@ export declare function toBoolean(value: unknown): boolean;
16
16
  * - Strings are parsed as floats.
17
17
  * - Other values return 0.
18
18
  *
19
- * @param {unknown} value - The value to convert.
20
- * @returns {number} The numeric representation of the input.
19
+ * @param value - The value to convert.
20
+ * @returns The numeric representation of the input.
21
21
  */
22
22
  export declare function toNumber(value: unknown): number;
23
23
  /**
@@ -26,15 +26,15 @@ export declare function toNumber(value: unknown): number;
26
26
  * - Strings are returned as-is.
27
27
  * - Other values are converted using `String()`.
28
28
  *
29
- * @param {unknown} value - The value to convert.
30
- * @returns {string} The string representation of the input.
29
+ * @param value - The value to convert.
30
+ * @returns The string representation of the input.
31
31
  */
32
32
  export declare function toString(value: unknown): string;
33
33
  /**
34
34
  * Converts any value to `null`.
35
35
  *
36
- * @param {unknown} _value - The input value (ignored).
37
- * @returns {null} Always returns `null`.
36
+ * @param _value - The input value (ignored).
37
+ * @returns Always returns `null`.
38
38
  */
39
39
  export declare function toNull(_value: unknown): null;
40
40
  /**
@@ -44,8 +44,8 @@ export declare function toNull(_value: unknown): null;
44
44
  * - Objects are converted to an array of `[key, value]` pairs.
45
45
  * - Other values are wrapped in a single-element array.
46
46
  *
47
- * @param {unknown} value - The value to convert.
48
- * @returns {Array<unknown>} The array representation of the input.
47
+ * @param value - The value to convert.
48
+ * @returns The array representation of the input.
49
49
  */
50
50
  export declare function toArray(value: unknown): unknown[];
51
51
  /**
@@ -54,8 +54,8 @@ export declare function toArray(value: unknown): unknown[];
54
54
  * - Uses `toArray` to ensure an array.
55
55
  * - Each element is converted to a number using `toNumber`.
56
56
  *
57
- * @param {unknown} value - The value to convert.
58
- * @returns {number[]} Array of numeric values.
57
+ * @param value - The value to convert.
58
+ * @returns Array of numeric values.
59
59
  */
60
60
  export declare function toNumberArr(value: unknown): number[];
61
61
  /**
@@ -64,8 +64,8 @@ export declare function toNumberArr(value: unknown): number[];
64
64
  * - Keys and values of objects are copied.
65
65
  * - Non-object values return an empty object.
66
66
  *
67
- * @param {unknown} value - The value to convert.
68
- * @returns {Record<string, unknown>} The object representation of the input.
67
+ * @param value - The value to convert.
68
+ * @returns The object representation of the input.
69
69
  */
70
70
  export declare function toRecord(value: unknown): Record<string, unknown>;
71
71
  /**
@@ -75,7 +75,7 @@ export declare function toRecord(value: unknown): Record<string, unknown>;
75
75
  * - Strings are used as the error message.
76
76
  * - Other values are converted to string and used as the error message.
77
77
  *
78
- * @param {unknown} value - The value to convert.
79
- * @returns {Error} An `Error` instance representing the input.
78
+ * @param value - The value to convert.
79
+ * @returns An `Error` instance representing the input.
80
80
  */
81
81
  export declare function toError(value: unknown): Error;