yummies 5.4.6 → 5.4.8

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 (508) hide show
  1. package/async.cjs +70 -0
  2. package/async.d.cts +28 -0
  3. package/async.d.cts.map +1 -0
  4. package/async.d.ts +28 -0
  5. package/async.d.ts.map +1 -0
  6. package/async.js +62 -0
  7. package/common.cjs +18 -0
  8. package/common.d.cts +15 -0
  9. package/common.d.cts.map +1 -0
  10. package/common.d.ts +15 -0
  11. package/common.d.ts.map +1 -0
  12. package/common.js +14 -0
  13. package/complex/counter.cjs +21 -0
  14. package/complex/counter.d.cts +15 -0
  15. package/complex/counter.d.cts.map +1 -0
  16. package/complex/counter.d.ts +15 -0
  17. package/complex/counter.d.ts.map +1 -0
  18. package/complex/counter.js +17 -0
  19. package/complex/global-config.cjs +46 -0
  20. package/complex/global-config.d.cts +11 -0
  21. package/complex/global-config.d.cts.map +1 -0
  22. package/complex/global-config.d.ts +11 -0
  23. package/complex/global-config.d.ts.map +1 -0
  24. package/complex/global-config.js +41 -0
  25. package/complex/index.cjs +19 -0
  26. package/complex/index.d.cts +4 -0
  27. package/complex/index.d.cts.map +1 -0
  28. package/complex/index.d.ts +4 -0
  29. package/complex/index.d.ts.map +1 -0
  30. package/complex/index.js +3 -0
  31. package/complex/modules-factory.cjs +50 -0
  32. package/complex/modules-factory.d.cts +49 -0
  33. package/complex/modules-factory.d.cts.map +1 -0
  34. package/complex/modules-factory.d.ts +49 -0
  35. package/complex/modules-factory.d.ts.map +1 -0
  36. package/complex/modules-factory.js +46 -0
  37. package/cookie.cjs +13 -0
  38. package/cookie.d.cts +3 -0
  39. package/cookie.d.cts.map +1 -0
  40. package/cookie.d.ts +3 -0
  41. package/cookie.d.ts.map +1 -0
  42. package/cookie.js +9 -0
  43. package/css.cjs +28 -0
  44. package/css.d.cts +36 -0
  45. package/css.d.cts.map +1 -0
  46. package/css.d.ts +36 -0
  47. package/css.d.ts.map +1 -0
  48. package/css.js +20 -0
  49. package/data.cjs +58 -0
  50. package/data.d.cts +4 -0
  51. package/data.d.cts.map +1 -0
  52. package/data.d.ts +4 -0
  53. package/data.d.ts.map +1 -0
  54. package/data.js +52 -0
  55. package/date-time.cjs +171 -0
  56. package/date-time.d.cts +28 -0
  57. package/date-time.d.cts.map +1 -0
  58. package/date-time.d.ts +28 -0
  59. package/date-time.d.ts.map +1 -0
  60. package/date-time.js +160 -0
  61. package/device.cjs +28 -0
  62. package/device.d.cts +8 -0
  63. package/device.d.cts.map +1 -0
  64. package/device.d.ts +8 -0
  65. package/device.d.ts.map +1 -0
  66. package/device.js +21 -0
  67. package/encodings.cjs +270 -0
  68. package/encodings.d.cts +2 -0
  69. package/encodings.d.cts.map +1 -0
  70. package/encodings.d.ts +2 -0
  71. package/encodings.d.ts.map +1 -0
  72. package/encodings.js +267 -0
  73. package/errors.cjs +34 -0
  74. package/errors.d.cts +19 -0
  75. package/errors.d.cts.map +1 -0
  76. package/errors.d.ts +19 -0
  77. package/errors.d.ts.map +1 -0
  78. package/errors.js +30 -0
  79. package/file.cjs +29 -0
  80. package/file.d.cts +3 -0
  81. package/file.d.cts.map +1 -0
  82. package/file.d.ts +3 -0
  83. package/file.d.ts.map +1 -0
  84. package/file.js +24 -0
  85. package/format/_exports.cjs +20 -0
  86. package/format/_exports.d.cts +5 -0
  87. package/format/_exports.d.cts.map +1 -0
  88. package/format/_exports.d.ts +5 -0
  89. package/format/_exports.d.ts.map +1 -0
  90. package/format/_exports.js +4 -0
  91. package/format/constants.cjs +6 -0
  92. package/format/constants.d.cts +4 -0
  93. package/format/constants.d.cts.map +1 -0
  94. package/format/constants.d.ts +4 -0
  95. package/format/constants.d.ts.map +1 -0
  96. package/{src/format/constants.ts → format/constants.js} +0 -2
  97. package/format/index.cjs +40 -0
  98. package/format/index.d.cts +3 -0
  99. package/format/index.d.cts.map +1 -0
  100. package/format/index.d.ts +3 -0
  101. package/format/index.d.ts.map +1 -0
  102. package/{src/format/index.ts → format/index.js} +1 -2
  103. package/format/number.cjs +48 -0
  104. package/format/number.d.cts +36 -0
  105. package/format/number.d.cts.map +1 -0
  106. package/format/number.d.ts +36 -0
  107. package/format/number.d.ts.map +1 -0
  108. package/format/number.js +44 -0
  109. package/format/percent.cjs +27 -0
  110. package/format/percent.d.cts +15 -0
  111. package/format/percent.d.cts.map +1 -0
  112. package/format/percent.d.ts +15 -0
  113. package/format/percent.d.ts.map +1 -0
  114. package/format/percent.js +23 -0
  115. package/format/skip-spaces.cjs +8 -0
  116. package/format/skip-spaces.d.cts +5 -0
  117. package/format/skip-spaces.d.cts.map +1 -0
  118. package/format/skip-spaces.d.ts +5 -0
  119. package/format/skip-spaces.d.ts.map +1 -0
  120. package/format/skip-spaces.js +4 -0
  121. package/html.cjs +202 -0
  122. package/html.d.cts +44 -0
  123. package/html.d.cts.map +1 -0
  124. package/html.d.ts +44 -0
  125. package/html.d.ts.map +1 -0
  126. package/html.js +182 -0
  127. package/id.cjs +76 -0
  128. package/id.d.cts +63 -0
  129. package/id.d.cts.map +1 -0
  130. package/id.d.ts +63 -0
  131. package/id.d.ts.map +1 -0
  132. package/{src/id.ts → id.js} +6 -16
  133. package/imports.cjs +45 -0
  134. package/imports.d.cts +15 -0
  135. package/imports.d.cts.map +1 -0
  136. package/imports.d.ts +15 -0
  137. package/imports.d.ts.map +1 -0
  138. package/imports.js +40 -0
  139. package/math.cjs +23 -0
  140. package/math.d.cts +13 -0
  141. package/math.d.cts.map +1 -0
  142. package/math.d.ts +13 -0
  143. package/math.d.ts.map +1 -0
  144. package/math.js +17 -0
  145. package/media.cjs +115 -0
  146. package/media.d.cts +20 -0
  147. package/media.d.cts.map +1 -0
  148. package/media.d.ts +20 -0
  149. package/media.d.ts.map +1 -0
  150. package/media.js +103 -0
  151. package/mobx/apply-observable.cjs +16 -0
  152. package/mobx/apply-observable.d.cts +4 -0
  153. package/mobx/apply-observable.d.cts.map +1 -0
  154. package/mobx/apply-observable.d.ts +4 -0
  155. package/mobx/apply-observable.d.ts.map +1 -0
  156. package/mobx/apply-observable.js +12 -0
  157. package/mobx/create-enhanced-atom.cjs +16 -0
  158. package/mobx/create-enhanced-atom.d.cts +11 -0
  159. package/mobx/create-enhanced-atom.d.cts.map +1 -0
  160. package/mobx/create-enhanced-atom.d.ts +11 -0
  161. package/mobx/create-enhanced-atom.d.ts.map +1 -0
  162. package/mobx/create-enhanced-atom.js +12 -0
  163. package/mobx/deep-observable-struct.cjs +61 -0
  164. package/mobx/deep-observable-struct.d.cts +7 -0
  165. package/mobx/deep-observable-struct.d.cts.map +1 -0
  166. package/mobx/deep-observable-struct.d.ts +7 -0
  167. package/mobx/deep-observable-struct.d.ts.map +1 -0
  168. package/mobx/deep-observable-struct.js +57 -0
  169. package/mobx/get-mobx-administration.cjs +6 -0
  170. package/mobx/get-mobx-administration.d.cts +6 -0
  171. package/mobx/get-mobx-administration.d.cts.map +1 -0
  172. package/mobx/get-mobx-administration.d.ts +6 -0
  173. package/mobx/get-mobx-administration.d.ts.map +1 -0
  174. package/mobx/get-mobx-administration.js +2 -0
  175. package/mobx/index.cjs +21 -0
  176. package/mobx/index.d.cts +6 -0
  177. package/mobx/index.d.cts.map +1 -0
  178. package/mobx/index.d.ts +6 -0
  179. package/mobx/index.d.ts.map +1 -0
  180. package/mobx/index.js +5 -0
  181. package/mobx/lazy-observe.cjs +47 -0
  182. package/mobx/lazy-observe.d.cts +8 -0
  183. package/mobx/lazy-observe.d.cts.map +1 -0
  184. package/mobx/lazy-observe.d.ts +8 -0
  185. package/mobx/lazy-observe.d.ts.map +1 -0
  186. package/mobx/lazy-observe.js +43 -0
  187. package/ms.cjs +22 -0
  188. package/ms.d.cts +19 -0
  189. package/ms.d.cts.map +1 -0
  190. package/ms.d.ts +19 -0
  191. package/ms.d.ts.map +1 -0
  192. package/ms.js +18 -0
  193. package/number.cjs +16 -0
  194. package/number.d.cts +8 -0
  195. package/number.d.cts.map +1 -0
  196. package/number.d.ts +8 -0
  197. package/number.d.ts.map +1 -0
  198. package/number.js +13 -0
  199. package/package.json +163 -5
  200. package/parser/_exports.cjs +19 -0
  201. package/parser/_exports.d.cts +4 -0
  202. package/parser/_exports.d.cts.map +1 -0
  203. package/parser/_exports.d.ts +4 -0
  204. package/parser/_exports.d.ts.map +1 -0
  205. package/parser/_exports.js +3 -0
  206. package/parser/index.cjs +40 -0
  207. package/parser/index.d.cts +3 -0
  208. package/parser/index.d.cts.map +1 -0
  209. package/parser/index.d.ts +3 -0
  210. package/parser/index.d.ts.map +1 -0
  211. package/{src/parser/index.ts → parser/index.js} +1 -2
  212. package/parser/number.cjs +48 -0
  213. package/parser/number.d.cts +21 -0
  214. package/parser/number.d.cts.map +1 -0
  215. package/parser/number.d.ts +21 -0
  216. package/parser/number.d.ts.map +1 -0
  217. package/parser/number.js +44 -0
  218. package/parser/percent.cjs +8 -0
  219. package/parser/percent.d.cts +4 -0
  220. package/parser/percent.d.cts.map +1 -0
  221. package/parser/percent.d.ts +4 -0
  222. package/parser/percent.d.ts.map +1 -0
  223. package/parser/percent.js +4 -0
  224. package/parser/string.cjs +18 -0
  225. package/parser/string.d.cts +7 -0
  226. package/parser/string.d.cts.map +1 -0
  227. package/parser/string.d.ts +7 -0
  228. package/parser/string.d.ts.map +1 -0
  229. package/parser/string.js +14 -0
  230. package/price.cjs +21 -0
  231. package/price.d.cts +6 -0
  232. package/price.d.cts.map +1 -0
  233. package/price.d.ts +6 -0
  234. package/price.d.ts.map +1 -0
  235. package/price.js +17 -0
  236. package/random.cjs +25 -0
  237. package/random.d.cts +9 -0
  238. package/random.d.cts.map +1 -0
  239. package/random.d.ts +9 -0
  240. package/random.d.ts.map +1 -0
  241. package/random.js +14 -0
  242. package/react/hooks/index.cjs +37 -0
  243. package/react/hooks/index.d.cts +22 -0
  244. package/react/hooks/index.d.cts.map +1 -0
  245. package/react/hooks/index.d.ts +22 -0
  246. package/react/hooks/index.d.ts.map +1 -0
  247. package/react/hooks/index.js +21 -0
  248. package/react/hooks/use-abort-controller.cjs +15 -0
  249. package/react/hooks/use-abort-controller.d.cts +2 -0
  250. package/react/hooks/use-abort-controller.d.cts.map +1 -0
  251. package/react/hooks/use-abort-controller.d.ts +2 -0
  252. package/react/hooks/use-abort-controller.d.ts.map +1 -0
  253. package/react/hooks/use-abort-controller.js +11 -0
  254. package/react/hooks/use-abort-signal.cjs +8 -0
  255. package/react/hooks/use-abort-signal.d.cts +2 -0
  256. package/react/hooks/use-abort-signal.d.cts.map +1 -0
  257. package/react/hooks/use-abort-signal.d.ts +2 -0
  258. package/react/hooks/use-abort-signal.d.ts.map +1 -0
  259. package/react/hooks/use-abort-signal.js +4 -0
  260. package/react/hooks/use-click-outside.cjs +17 -0
  261. package/react/hooks/use-click-outside.d.cts +9 -0
  262. package/react/hooks/use-click-outside.d.cts.map +1 -0
  263. package/react/hooks/use-click-outside.d.ts +9 -0
  264. package/react/hooks/use-click-outside.d.ts.map +1 -0
  265. package/react/hooks/use-click-outside.js +13 -0
  266. package/react/hooks/use-constant.cjs +19 -0
  267. package/react/hooks/use-constant.d.cts +9 -0
  268. package/react/hooks/use-constant.d.cts.map +1 -0
  269. package/react/hooks/use-constant.d.ts +9 -0
  270. package/react/hooks/use-constant.d.ts.map +1 -0
  271. package/{src/react/hooks/use-constant.ts → react/hooks/use-constant.js} +6 -9
  272. package/react/hooks/use-define-ref.cjs +19 -0
  273. package/react/hooks/use-define-ref.d.cts +10 -0
  274. package/react/hooks/use-define-ref.d.cts.map +1 -0
  275. package/react/hooks/use-define-ref.d.ts +10 -0
  276. package/react/hooks/use-define-ref.d.ts.map +1 -0
  277. package/{src/react/hooks/use-define-ref.ts → react/hooks/use-define-ref.js} +7 -10
  278. package/react/hooks/use-element-ref.cjs +12 -0
  279. package/react/hooks/use-element-ref.d.cts +2 -0
  280. package/react/hooks/use-element-ref.d.cts.map +1 -0
  281. package/react/hooks/use-element-ref.d.ts +2 -0
  282. package/react/hooks/use-element-ref.d.ts.map +1 -0
  283. package/react/hooks/use-element-ref.js +8 -0
  284. package/react/hooks/use-event-listener.cjs +17 -0
  285. package/react/hooks/use-event-listener.d.cts +8 -0
  286. package/react/hooks/use-event-listener.d.cts.map +1 -0
  287. package/react/hooks/use-event-listener.d.ts +8 -0
  288. package/react/hooks/use-event-listener.d.ts.map +1 -0
  289. package/react/hooks/use-event-listener.js +13 -0
  290. package/react/hooks/use-event.cjs +23 -0
  291. package/react/hooks/use-event.d.cts +3 -0
  292. package/react/hooks/use-event.d.cts.map +1 -0
  293. package/react/hooks/use-event.d.ts +3 -0
  294. package/react/hooks/use-event.d.ts.map +1 -0
  295. package/react/hooks/use-event.js +19 -0
  296. package/react/hooks/use-flag.cjs +19 -0
  297. package/react/hooks/use-flag.d.cts +8 -0
  298. package/react/hooks/use-flag.d.cts.map +1 -0
  299. package/react/hooks/use-flag.d.ts +8 -0
  300. package/react/hooks/use-flag.d.ts.map +1 -0
  301. package/react/hooks/use-flag.js +15 -0
  302. package/react/hooks/use-force-update.cjs +11 -0
  303. package/react/hooks/use-force-update.d.cts +2 -0
  304. package/react/hooks/use-force-update.d.cts.map +1 -0
  305. package/react/hooks/use-force-update.d.ts +2 -0
  306. package/react/hooks/use-force-update.d.ts.map +1 -0
  307. package/react/hooks/use-force-update.js +7 -0
  308. package/react/hooks/use-initial-height.cjs +15 -0
  309. package/react/hooks/use-initial-height.d.cts +5 -0
  310. package/react/hooks/use-initial-height.d.cts.map +1 -0
  311. package/react/hooks/use-initial-height.d.ts +5 -0
  312. package/react/hooks/use-initial-height.d.ts.map +1 -0
  313. package/react/hooks/use-initial-height.js +11 -0
  314. package/react/hooks/use-instance.cjs +31 -0
  315. package/react/hooks/use-instance.d.cts +27 -0
  316. package/react/hooks/use-instance.d.cts.map +1 -0
  317. package/react/hooks/use-instance.d.ts +27 -0
  318. package/react/hooks/use-instance.d.ts.map +1 -0
  319. package/{src/react/hooks/use-instance.ts → react/hooks/use-instance.js} +9 -31
  320. package/react/hooks/use-intersection-observer.cjs +14 -0
  321. package/react/hooks/use-intersection-observer.d.cts +2 -0
  322. package/react/hooks/use-intersection-observer.d.cts.map +1 -0
  323. package/react/hooks/use-intersection-observer.d.ts +2 -0
  324. package/react/hooks/use-intersection-observer.d.ts.map +1 -0
  325. package/react/hooks/use-intersection-observer.js +10 -0
  326. package/react/hooks/use-last-defined-value.cjs +12 -0
  327. package/react/hooks/use-last-defined-value.d.cts +2 -0
  328. package/react/hooks/use-last-defined-value.d.cts.map +1 -0
  329. package/react/hooks/use-last-defined-value.d.ts +2 -0
  330. package/react/hooks/use-last-defined-value.d.ts.map +1 -0
  331. package/react/hooks/use-last-defined-value.js +8 -0
  332. package/react/hooks/use-last-value-ref.cjs +12 -0
  333. package/react/hooks/use-last-value-ref.d.cts +2 -0
  334. package/react/hooks/use-last-value-ref.d.cts.map +1 -0
  335. package/react/hooks/use-last-value-ref.d.ts +2 -0
  336. package/react/hooks/use-last-value-ref.d.ts.map +1 -0
  337. package/react/hooks/use-last-value-ref.js +8 -0
  338. package/react/hooks/use-life-cycle.cjs +14 -0
  339. package/react/hooks/use-life-cycle.d.cts +5 -0
  340. package/react/hooks/use-life-cycle.d.cts.map +1 -0
  341. package/react/hooks/use-life-cycle.d.ts +5 -0
  342. package/react/hooks/use-life-cycle.d.ts.map +1 -0
  343. package/react/hooks/use-life-cycle.js +10 -0
  344. package/react/hooks/use-resize-observer.cjs +15 -0
  345. package/react/hooks/use-resize-observer.d.cts +2 -0
  346. package/react/hooks/use-resize-observer.d.cts.map +1 -0
  347. package/react/hooks/use-resize-observer.d.ts +2 -0
  348. package/react/hooks/use-resize-observer.d.ts.map +1 -0
  349. package/react/hooks/use-resize-observer.js +11 -0
  350. package/react/hooks/use-sync-ref.cjs +10 -0
  351. package/react/hooks/use-sync-ref.d.cts +2 -0
  352. package/react/hooks/use-sync-ref.d.cts.map +1 -0
  353. package/react/hooks/use-sync-ref.d.ts +2 -0
  354. package/react/hooks/use-sync-ref.d.ts.map +1 -0
  355. package/react/hooks/use-sync-ref.js +6 -0
  356. package/react/hooks/use-toggle.cjs +10 -0
  357. package/react/hooks/use-toggle.d.cts +2 -0
  358. package/react/hooks/use-toggle.d.cts.map +1 -0
  359. package/react/hooks/use-toggle.d.ts +2 -0
  360. package/react/hooks/use-toggle.d.ts.map +1 -0
  361. package/react/hooks/use-toggle.js +6 -0
  362. package/react/hooks/use-value.cjs +12 -0
  363. package/react/hooks/use-value.d.cts +5 -0
  364. package/react/hooks/use-value.d.cts.map +1 -0
  365. package/react/hooks/use-value.d.ts +5 -0
  366. package/react/hooks/use-value.d.ts.map +1 -0
  367. package/react/hooks/use-value.js +8 -0
  368. package/react/hooks/use-visibility-state.cjs +18 -0
  369. package/react/hooks/use-visibility-state.d.cts +2 -0
  370. package/react/hooks/use-visibility-state.d.cts.map +1 -0
  371. package/react/hooks/use-visibility-state.d.ts +2 -0
  372. package/react/hooks/use-visibility-state.d.ts.map +1 -0
  373. package/react/hooks/use-visibility-state.js +14 -0
  374. package/react/index.cjs +17 -0
  375. package/react/index.d.cts +2 -0
  376. package/react/index.d.cts.map +1 -0
  377. package/react/index.d.ts +2 -0
  378. package/react/index.d.ts.map +1 -0
  379. package/react/index.js +1 -0
  380. package/sound.cjs +16 -0
  381. package/sound.d.cts +7 -0
  382. package/sound.d.cts.map +1 -0
  383. package/sound.d.ts +7 -0
  384. package/sound.d.ts.map +1 -0
  385. package/sound.js +12 -0
  386. package/storage.cjs +48 -0
  387. package/storage.d.cts +39 -0
  388. package/storage.d.cts.map +1 -0
  389. package/storage.d.ts +39 -0
  390. package/storage.d.ts.map +1 -0
  391. package/storage.js +43 -0
  392. package/text.cjs +53 -0
  393. package/text.d.cts +15 -0
  394. package/text.d.cts.map +1 -0
  395. package/text.d.ts +15 -0
  396. package/text.d.ts.map +1 -0
  397. package/text.js +48 -0
  398. package/type-guard/_exports.cjs +129 -0
  399. package/type-guard/_exports.d.cts +86 -0
  400. package/type-guard/_exports.d.cts.map +1 -0
  401. package/type-guard/_exports.d.ts +86 -0
  402. package/type-guard/_exports.d.ts.map +1 -0
  403. package/type-guard/_exports.js +125 -0
  404. package/type-guard/index.cjs +40 -0
  405. package/type-guard/index.d.cts +3 -0
  406. package/type-guard/index.d.cts.map +1 -0
  407. package/type-guard/index.d.ts +3 -0
  408. package/type-guard/index.d.ts.map +1 -0
  409. package/{src/type-guard/index.ts → type-guard/index.js} +1 -2
  410. package/utility-types.d.ts +396 -0
  411. package/utils/types.cjs +2 -0
  412. package/utils/types.d.cts +395 -0
  413. package/utils/types.d.cts.map +1 -0
  414. package/utils/types.d.ts +395 -0
  415. package/utils/types.d.ts.map +1 -0
  416. package/utils/types.js +1 -0
  417. package/vibrate.cjs +12 -0
  418. package/vibrate.d.cts +5 -0
  419. package/vibrate.d.cts.map +1 -0
  420. package/vibrate.d.ts +5 -0
  421. package/vibrate.d.ts.map +1 -0
  422. package/vibrate.js +8 -0
  423. package/.changeset/README.md +0 -8
  424. package/.changeset/config.json +0 -11
  425. package/.github/FUNDING.yml +0 -1
  426. package/.github/workflows/main.yml +0 -34
  427. package/.github/workflows/version-or-publish.yml +0 -45
  428. package/.nvmrc +0 -1
  429. package/.vscode/settings.json +0 -19
  430. package/CHANGELOG.md +0 -215
  431. package/CONTRIBUTING.md +0 -8
  432. package/Makefile +0 -7
  433. package/biome.json +0 -3
  434. package/commitfmt.toml +0 -18
  435. package/lefthook.yml +0 -14
  436. package/scripts/post-build.ts +0 -71
  437. package/src/async.ts +0 -86
  438. package/src/common.ts +0 -26
  439. package/src/complex/counter.test.ts +0 -41
  440. package/src/complex/counter.ts +0 -40
  441. package/src/complex/global-config.ts +0 -55
  442. package/src/complex/index.ts +0 -3
  443. package/src/complex/modules-factory.ts +0 -65
  444. package/src/cookie.ts +0 -11
  445. package/src/css.ts +0 -60
  446. package/src/data.test.ts +0 -99
  447. package/src/data.ts +0 -65
  448. package/src/date-time.test.ts +0 -119
  449. package/src/date-time.ts +0 -236
  450. package/src/device.ts +0 -42
  451. package/src/encodings.ts +0 -270
  452. package/src/errors.ts +0 -40
  453. package/src/file.ts +0 -25
  454. package/src/format/_exports.ts +0 -4
  455. package/src/format/number.test.ts +0 -16
  456. package/src/format/number.ts +0 -96
  457. package/src/format/percent.ts +0 -40
  458. package/src/format/skip-spaces.ts +0 -4
  459. package/src/html.ts +0 -238
  460. package/src/imports.ts +0 -52
  461. package/src/math.ts +0 -20
  462. package/src/media.ts +0 -134
  463. package/src/mobx/apply-observable.ts +0 -20
  464. package/src/mobx/create-enhanced-atom.ts +0 -28
  465. package/src/mobx/deep-observable-struct.test.ts +0 -69
  466. package/src/mobx/deep-observable-struct.ts +0 -69
  467. package/src/mobx/get-mobx-administration.ts +0 -10
  468. package/src/mobx/index.ts +0 -5
  469. package/src/mobx/lazy-observe.ts +0 -59
  470. package/src/ms.ts +0 -20
  471. package/src/number.ts +0 -14
  472. package/src/parser/_exports.ts +0 -3
  473. package/src/parser/number.test.ts +0 -38
  474. package/src/parser/number.ts +0 -73
  475. package/src/parser/percent.ts +0 -11
  476. package/src/parser/string.ts +0 -29
  477. package/src/price.ts +0 -33
  478. package/src/random.ts +0 -27
  479. package/src/react/hooks/index.ts +0 -21
  480. package/src/react/hooks/use-abort-controller.ts +0 -15
  481. package/src/react/hooks/use-abort-signal.ts +0 -5
  482. package/src/react/hooks/use-click-outside.ts +0 -27
  483. package/src/react/hooks/use-element-ref.ts +0 -11
  484. package/src/react/hooks/use-event-listener.ts +0 -29
  485. package/src/react/hooks/use-event.ts +0 -23
  486. package/src/react/hooks/use-flag.ts +0 -27
  487. package/src/react/hooks/use-force-update.ts +0 -9
  488. package/src/react/hooks/use-initial-height.ts +0 -16
  489. package/src/react/hooks/use-intersection-observer.ts +0 -18
  490. package/src/react/hooks/use-last-defined-value.ts +0 -9
  491. package/src/react/hooks/use-last-value-ref.ts +0 -11
  492. package/src/react/hooks/use-life-cycle.ts +0 -17
  493. package/src/react/hooks/use-resize-observer.ts +0 -14
  494. package/src/react/hooks/use-sync-ref.ts +0 -7
  495. package/src/react/hooks/use-toggle.ts +0 -9
  496. package/src/react/hooks/use-value.ts +0 -10
  497. package/src/react/hooks/use-visibility-state.ts +0 -19
  498. package/src/react/index.ts +0 -1
  499. package/src/sound.ts +0 -15
  500. package/src/storage.ts +0 -137
  501. package/src/text.test.ts +0 -91
  502. package/src/text.ts +0 -60
  503. package/src/type-guard/_exports.ts +0 -154
  504. package/src/type-guard/index.test.ts +0 -127
  505. package/src/vibrate.ts +0 -8
  506. package/tsconfig.json +0 -26
  507. package/tsconfig.test.json +0 -33
  508. package/vitest.config.ts +0 -20
@@ -1,59 +0,0 @@
1
- import { onBecomeObserved, onBecomeUnobserved } from 'mobx';
2
-
3
- export const lazyObserve = <TMetaData = void>({
4
- context,
5
- property,
6
- onStart,
7
- onEnd,
8
- endDelay = 0,
9
- }: {
10
- context?: any;
11
- property: any | any[];
12
- onStart: () => TMetaData;
13
- onEnd: (metaData: TMetaData, cleanupFn: VoidFunction) => void;
14
- endDelay?: number;
15
- }) => {
16
- let timeoutId: ReturnType<typeof setTimeout> | undefined;
17
- let metaData: TMetaData | undefined;
18
- const properties = Array.isArray(property) ? property : [property];
19
- let isObserving = false;
20
-
21
- const start = () => {
22
- if (isObserving) {
23
- return;
24
- }
25
- isObserving = true;
26
- if (timeoutId) {
27
- clearTimeout(timeoutId);
28
- timeoutId = undefined;
29
- }
30
- metaData = onStart();
31
- };
32
-
33
- const cleanup = () => {
34
- if (!isObserving) {
35
- return;
36
- }
37
- if (timeoutId) {
38
- clearTimeout(timeoutId);
39
- timeoutId = undefined;
40
- }
41
- timeoutId = setTimeout(() => {
42
- onEnd(metaData!, cleanup);
43
- timeoutId = undefined;
44
- metaData = undefined;
45
- }, endDelay);
46
- };
47
-
48
- properties.forEach((property) => {
49
- if (context) {
50
- onBecomeObserved(context, property, start);
51
- onBecomeUnobserved(context, property, cleanup);
52
- } else {
53
- onBecomeObserved(property, start);
54
- onBecomeUnobserved(property, cleanup);
55
- }
56
- });
57
-
58
- return cleanup;
59
- };
package/src/ms.ts DELETED
@@ -1,20 +0,0 @@
1
- export const unitsToMs = {
2
- ms: 1,
3
- sec: 1000,
4
- min: 1000 * 60,
5
- hour: 1000 * 60 * 60,
6
- day: 1000 * 60 * 60 * 24,
7
- week: 1000 * 60 * 60 * 24 * 7,
8
- } as const;
9
-
10
- /**
11
- * Переводит значение в юнитах в миллисекунды
12
- *
13
- * @example
14
- * ```ts
15
- * ms(1, 'min') // 60_000
16
- * ms(30, 'sec') // 30_000
17
- * ```
18
- */
19
- export const ms = (value: number, unit: keyof typeof unitsToMs = 'ms') =>
20
- value * unitsToMs[unit];
package/src/number.ts DELETED
@@ -1,14 +0,0 @@
1
- /**
2
- * Works like `parseFloat(number.toFixed(4))` but performance better
3
- *
4
- * @example
5
- * round(191.212999999999999999999999, 4) // 191.213
6
- */
7
- export function round(value: number, decimalPlaces: number = 0): number {
8
- if (!decimalPlaces) {
9
- return Math.round(value);
10
- }
11
-
12
- const factor = 10 ** decimalPlaces;
13
- return Math.round(value * factor) / factor;
14
- }
@@ -1,3 +0,0 @@
1
- export * from './number.js';
2
- export * from './percent.js';
3
- export * from './string.js';
@@ -1,38 +0,0 @@
1
- import { describe, expect, test } from 'vitest';
2
- import { number } from './number';
3
-
4
- describe('parser.number', () => {
5
- test('empty string should return 0', () => {
6
- expect(number('')).toBe(0);
7
- });
8
-
9
- test('empty string with fallback should return fallback', () => {
10
- expect(number('', { fallback: 'kek' })).toBe('kek');
11
- });
12
-
13
- test('Checking the logic of the function', () => {
14
- expect(number(1)).toBe(1);
15
- expect(number(100)).toBe(100);
16
- expect(number(500)).toBe(500);
17
- expect(number(1, { clamped: [400] })).toBe(400);
18
- expect(number(1001, { clamped: [null, 1000] })).toBe(1000);
19
- });
20
-
21
- test('Rounding down', () => {
22
- expect(number(5.9, { floor: true })).toBe(5);
23
- });
24
-
25
- test('Rounding up', () => {
26
- expect(number(5.1, { ceil: true })).toBe(6);
27
- });
28
-
29
- test('Processing invalid values', () => {
30
- expect(number(null)).toBe(0);
31
- expect(number(undefined)).toBe(0);
32
- expect(number('-')).toBe(0);
33
- expect(number('test')).toBe(0);
34
-
35
- expect(number(null, null)).toBe(0);
36
- expect(number(undefined, undefined)).toBe(0);
37
- });
38
- });
@@ -1,73 +0,0 @@
1
- import { skipSpaces } from '../format/skip-spaces.js';
2
- import { typeGuard } from '../type-guard/index.js';
3
- import type { Maybe } from '../utils/types.js';
4
-
5
- export interface NumberParserSettings<TFallback = number> {
6
- digits?: number;
7
- fallback?: TFallback;
8
- /**
9
- * Round to upper boundary
10
- * 5.1 -> 6
11
- */
12
- ceil?: boolean;
13
- /**
14
- * Round to bottom boundary
15
- * 5.9 -> 5
16
- */
17
- floor?: boolean;
18
- clamped?: [min?: Maybe<number>, max?: Maybe<number>];
19
- }
20
-
21
- export const number = <TFallback = number>(
22
- input: Maybe<unknown>,
23
- userSettings?: Maybe<NumberParserSettings<TFallback>>,
24
- ): number | TFallback => {
25
- const settings = {
26
- ...number.defaultSettings,
27
- ...userSettings,
28
- };
29
-
30
- const fallback = settings?.fallback ?? 0;
31
-
32
- let result: number;
33
-
34
- if (typeGuard.isNumber(input)) {
35
- result = input;
36
- } else if (typeGuard.isString(input)) {
37
- const formattedInput = skipSpaces(input).replace(',', '.');
38
- if (formattedInput === '') {
39
- result = fallback as any;
40
- } else {
41
- result = Number(formattedInput);
42
- }
43
- } else {
44
- result = fallback as any;
45
- }
46
-
47
- if (typeGuard.isNumber(result)) {
48
- if (settings?.clamped != null) {
49
- result = Math.max(
50
- settings.clamped[0] ?? -Infinity,
51
- Math.min(result, settings.clamped[1] ?? Infinity),
52
- );
53
- }
54
-
55
- if (settings?.ceil != null) {
56
- result = Math.ceil(result);
57
- }
58
-
59
- if (settings?.floor != null) {
60
- result = Math.floor(result);
61
- }
62
-
63
- if (settings?.digits != null) {
64
- result = +result.toFixed(settings.digits);
65
- }
66
-
67
- return result;
68
- } else {
69
- return fallback;
70
- }
71
- };
72
-
73
- number.defaultSettings = {} as NumberParserSettings;
@@ -1,11 +0,0 @@
1
- import type { Maybe } from '../utils/types.js';
2
-
3
- import { type NumberParserSettings, number } from './number.js';
4
-
5
- export const percent = <TFallback = number>(
6
- value: Maybe<string | number>,
7
- maxValue?: Maybe<string | number>,
8
- settings?: Maybe<NumberParserSettings<TFallback>>,
9
- ) => {
10
- return number<TFallback>((Number(value) / Number(maxValue)) * 100, settings);
11
- };
@@ -1,29 +0,0 @@
1
- import { typeGuard } from '../type-guard/index.js';
2
- import type { Maybe } from '../utils/types.js';
3
-
4
- export interface StringParserSettings<TFallback = string> {
5
- fallback?: TFallback;
6
- prettyJson?: boolean;
7
- }
8
-
9
- export const string = <TFallback = string>(
10
- input: Maybe<unknown>,
11
- settings?: Maybe<StringParserSettings<TFallback>>,
12
- ): string | TFallback => {
13
- const fallback =
14
- settings && 'fallback' in settings ? (settings.fallback as TFallback) : '';
15
-
16
- if (input == null) {
17
- return fallback;
18
- }
19
-
20
- if (typeGuard.isObject(input)) {
21
- if (settings?.prettyJson) {
22
- return JSON.stringify(input, null, 2);
23
- }
24
-
25
- return JSON.stringify(input);
26
- }
27
-
28
- return String(input);
29
- };
package/src/price.ts DELETED
@@ -1,33 +0,0 @@
1
- export interface PriceFormatOptions
2
- extends Partial<Omit<Intl.NumberFormatOptions, 'currency'>> {
3
- withoutSymbol?: boolean;
4
- customSymbol?: string;
5
- }
6
-
7
- export const formatPrice = (
8
- price: number,
9
- locale: string,
10
- currency?: string,
11
- { withoutSymbol, customSymbol, ...options }: PriceFormatOptions = {},
12
- ) => {
13
- const priceFormatter = new Intl.NumberFormat(locale, {
14
- style: 'currency',
15
- currency,
16
- minimumFractionDigits: 0,
17
- currencyDisplay: 'narrowSymbol',
18
- ...options,
19
- });
20
-
21
- const zeroPrice = priceFormatter.format(0);
22
- const currencySymbol = zeroPrice.replace('0', '');
23
- const rawPrice = priceFormatter.format(price);
24
- const priceWithoutCurrency = rawPrice.replace(currencySymbol, '');
25
-
26
- if (withoutSymbol) {
27
- return priceWithoutCurrency;
28
- }
29
-
30
- return `${priceWithoutCurrency} ${
31
- customSymbol ?? (currency === 'RUB' ? 'р' : currencySymbol)
32
- }`.replace(/\s{2,}/, ' ');
33
- };
package/src/random.ts DELETED
@@ -1,27 +0,0 @@
1
- export const getRandomFloat = <T extends number = number>(
2
- min = 0,
3
- max = 1,
4
- ): T => (Math.random() * (max - min) + min) as T;
5
-
6
- export const getRandomInt = <T extends number = number>(min = 0, max = 1): T =>
7
- min === max ? (min as T) : (Math.round(getRandomFloat(min, max)) as T);
8
-
9
- export const getRandomChoice = <T>(arr: T[]): T =>
10
- arr[getRandomInt(0, arr.length - 1)];
11
-
12
- export const getRandomSizeArray = (min = 0, max = 10) =>
13
- Array.from({ length: getRandomInt(min, max) }).fill(null);
14
-
15
- export const getRandomBool = () => getRandomInt(0, 1) === 1;
16
-
17
- export const getMajorRandomBool = () => {
18
- return getRandomInt(0, 10) <= 6;
19
- };
20
-
21
- export const getMinorRandomBool = () => {
22
- return !getMajorRandomBool();
23
- };
24
-
25
- export const getFrequencyValue = (frequency: number) => {
26
- return Math.random() < frequency;
27
- };
@@ -1,21 +0,0 @@
1
- export * from './use-abort-controller.js';
2
- export * from './use-abort-signal.js';
3
- export * from './use-click-outside.js';
4
- export * from './use-constant.js';
5
- export * from './use-define-ref.js';
6
- export * from './use-element-ref.js';
7
- export * from './use-event.js';
8
- export * from './use-event-listener.js';
9
- export * from './use-flag.js';
10
- export * from './use-force-update.js';
11
- export * from './use-initial-height.js';
12
- export * from './use-instance.js';
13
- export * from './use-intersection-observer.js';
14
- export * from './use-last-defined-value.js';
15
- export * from './use-last-value-ref.js';
16
- export * from './use-life-cycle.js';
17
- export * from './use-resize-observer.js';
18
- export * from './use-sync-ref.js';
19
- export * from './use-toggle.js';
20
- export * from './use-value.js';
21
- export * from './use-visibility-state.js';
@@ -1,15 +0,0 @@
1
- import { useEffect } from 'react';
2
-
3
- import { useConstant } from './use-constant.js';
4
-
5
- export const useAbortController = () => {
6
- const controller = useConstant(() => new AbortController());
7
-
8
- useEffect(() => {
9
- return () => {
10
- controller.abort();
11
- };
12
- }, []);
13
-
14
- return controller;
15
- };
@@ -1,5 +0,0 @@
1
- import { useAbortController } from './use-abort-controller.js';
2
-
3
- export const useAbortSignal = () => {
4
- return useAbortController().signal;
5
- };
@@ -1,27 +0,0 @@
1
- import type { MutableRefObject } from 'react';
2
- import { useEventListener } from './use-event-listener.js';
3
-
4
- type ClickOutsideInput = {
5
- contentRef: MutableRefObject<HTMLElement | null>;
6
- onClick: VoidFunction;
7
- options?: AddEventListenerOptions;
8
- };
9
-
10
- export const useClickOutside = ({
11
- contentRef,
12
- onClick,
13
- options,
14
- }: ClickOutsideInput) => {
15
- useEventListener({
16
- event: 'mousedown',
17
- handler: (event) => {
18
- if (
19
- contentRef.current &&
20
- !contentRef.current.contains(event.target as Node)
21
- ) {
22
- onClick();
23
- }
24
- },
25
- options,
26
- });
27
- };
@@ -1,11 +0,0 @@
1
- import { useLayoutEffect, useRef } from 'react';
2
-
3
- export const useElementRef = <T extends HTMLElement>(selector: () => T) => {
4
- const ref = useRef<T>();
5
-
6
- useLayoutEffect(() => {
7
- ref.current = selector();
8
- }, []);
9
-
10
- return ref;
11
- };
@@ -1,29 +0,0 @@
1
- /* eslint-disable @typescript-eslint/ban-ts-comment */
2
- import { useEffect } from 'react';
3
- import { useSyncRef } from './use-sync-ref.js';
4
-
5
- export const useEventListener = <EventName extends keyof HTMLElementEventMap>({
6
- event,
7
- handler,
8
- options,
9
- deps = [],
10
- node = document,
11
- }: {
12
- event: EventName;
13
- handler: (e: HTMLElementEventMap[EventName]) => void;
14
- options?: boolean | AddEventListenerOptions;
15
- deps?: unknown[];
16
- node?: HTMLElement | Document | Window;
17
- }) => {
18
- const handlerRef = useSyncRef(handler);
19
-
20
- useEffect(() => {
21
- const handleEvent = (e: HTMLElementEventMap[EventName]) =>
22
- handlerRef.current(e);
23
-
24
- // @ts-expect-error
25
- node.addEventListener(event, handleEvent, options);
26
- // @ts-expect-error
27
- return () => node.removeEventListener(event, handleEvent, options);
28
- }, deps);
29
- };
@@ -1,23 +0,0 @@
1
- /**
2
- * A Hook to define an event handler with an always-stable function identity.
3
- *
4
- * borrowed from @gaeron
5
- * https://github.com/reactjs/rfcs/blob/useevent/text/0000-useevent.md
6
- */
7
- import { useCallback, useLayoutEffect, useRef } from 'react';
8
- import type { AnyFunction } from '../../utils/types.js';
9
-
10
- export const useEvent = <H extends AnyFunction>(handler: H): H => {
11
- const handlerRef = useRef<H>(handler);
12
-
13
- // In a real implementation, this would run before layout effects
14
- useLayoutEffect(() => {
15
- handlerRef.current = handler;
16
- });
17
-
18
- return useCallback((...args: unknown[]) => {
19
- // In a real implementation, this would throw if called during render
20
- const fn = handlerRef.current as AnyFunction;
21
- return fn(...args);
22
- }, []) as unknown as H;
23
- };
@@ -1,27 +0,0 @@
1
- import { useCallback, useRef, useState } from 'react';
2
-
3
- export interface FlagHook {
4
- enabled: boolean;
5
- toggle: VoidFunction;
6
- enable: VoidFunction;
7
- disable: VoidFunction;
8
- }
9
-
10
- export const useFlag = (defaultValue = false): FlagHook => {
11
- const [enabled, setEnabled] = useState(defaultValue);
12
-
13
- const toggle = useCallback(() => setEnabled((value) => !value), []);
14
- const enable = useCallback(() => setEnabled(true), []);
15
- const disable = useCallback(() => setEnabled(false), []);
16
-
17
- const flagObjRef = useRef<FlagHook>({
18
- enabled,
19
- toggle,
20
- enable,
21
- disable,
22
- });
23
-
24
- flagObjRef.current.enabled = enabled;
25
-
26
- return flagObjRef.current;
27
- };
@@ -1,9 +0,0 @@
1
- import { useCallback, useState } from 'react';
2
-
3
- export const useForceUpdate = () => {
4
- const [, setState] = useState<unknown>(null);
5
-
6
- return useCallback(() => {
7
- setState({});
8
- }, []);
9
- };
@@ -1,16 +0,0 @@
1
- import { useEffect, useRef, useState } from 'react';
2
-
3
- export const useInitialHeight = <T extends HTMLElement>() => {
4
- const ref = useRef<T | null>(null);
5
- const [initialHeight, setInitialHeight] = useState<number | undefined>(
6
- undefined,
7
- );
8
-
9
- useEffect(() => {
10
- if (ref.current && !initialHeight) {
11
- setInitialHeight(ref.current.offsetHeight);
12
- }
13
- }, [initialHeight]);
14
-
15
- return { ref, initialHeight };
16
- };
@@ -1,18 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
-
3
- export const useIntersectionObserver = (
4
- callback: IntersectionObserverCallback,
5
- options?: IntersectionObserverInit,
6
- ) => {
7
- const [intersectionObserver] = useState(
8
- () => new IntersectionObserver(callback, options),
9
- );
10
-
11
- useEffect(() => {
12
- return () => {
13
- intersectionObserver.disconnect();
14
- };
15
- }, []);
16
-
17
- return intersectionObserver;
18
- };
@@ -1,9 +0,0 @@
1
- import { useRef } from 'react';
2
-
3
- export const useLastDefinedValue = <T>(value: T) => {
4
- const ref = useRef(value);
5
- if (value != null) {
6
- ref.current = value;
7
- }
8
- return ref.current;
9
- };
@@ -1,11 +0,0 @@
1
- import { useRef } from 'react';
2
-
3
- export const useLastValueRef = <T>(value: T | null | undefined) => {
4
- const ref = useRef(value);
5
-
6
- if (value != null) {
7
- ref.current = value;
8
- }
9
-
10
- return ref;
11
- };
@@ -1,17 +0,0 @@
1
- import { useEffect } from 'react';
2
- import { useSyncRef } from './use-sync-ref.js';
3
-
4
- export const useLifeCycle = (
5
- fn: () => {
6
- mount?: VoidFunction;
7
- unmount?: VoidFunction;
8
- },
9
- ) => {
10
- const fnRef = useSyncRef(fn);
11
-
12
- useEffect(() => {
13
- const fnOperation = fnRef.current();
14
- fnOperation.mount?.();
15
- return fnOperation.unmount?.();
16
- }, []);
17
- };
@@ -1,14 +0,0 @@
1
- import { useLayoutEffect } from 'react';
2
- import { useDefineRef } from './use-define-ref.js';
3
-
4
- export const useResizeObserver = (callback: ResizeObserverCallback) => {
5
- const resizeObserverRef = useDefineRef(() => new ResizeObserver(callback));
6
-
7
- useLayoutEffect(() => {
8
- return () => {
9
- resizeObserverRef.current.disconnect();
10
- };
11
- }, []);
12
-
13
- return resizeObserverRef;
14
- };
@@ -1,7 +0,0 @@
1
- import { useRef } from 'react';
2
-
3
- export const useSyncRef = <T>(value: T) => {
4
- const ref = useRef(value);
5
- ref.current = value;
6
- return ref;
7
- };
@@ -1,9 +0,0 @@
1
- import { useCallback, useState } from 'react';
2
-
3
- export const useToggle = (initialState?: boolean) => {
4
- const [toggled, setToggled] = useState(!!initialState);
5
-
6
- const toggle = useCallback(() => setToggled((toggled) => !toggled), []);
7
-
8
- return [toggled, toggle, setToggled] as const;
9
- };
@@ -1,10 +0,0 @@
1
- import { useState } from 'react';
2
-
3
- export const useValue = <T>(defaults: T | (() => T)) => {
4
- const [value, setValue] = useState<T>(defaults);
5
-
6
- return {
7
- value,
8
- set: setValue,
9
- };
10
- };
@@ -1,19 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
-
3
- export const useVisibilityState = () => {
4
- const [state, setState] = useState<DocumentVisibilityState>();
5
-
6
- useEffect(() => {
7
- const handleVisibilityChange = () => {
8
- setState(document.visibilityState);
9
- };
10
-
11
- document.addEventListener('visibilitychange', handleVisibilityChange);
12
-
13
- return () => {
14
- document.removeEventListener('visibilitychange', handleVisibilityChange);
15
- };
16
- }, []);
17
-
18
- return state;
19
- };
@@ -1 +0,0 @@
1
- export * from './hooks/index.js';
package/src/sound.ts DELETED
@@ -1,15 +0,0 @@
1
- /**
2
- * Воспроизводит звук из файла
3
- */
4
- export const playSound = async (
5
- file: string,
6
- { volume = 1 }: { volume?: number } = {},
7
- ) => {
8
- let audio = new Audio(file);
9
- audio.volume = volume;
10
- audio.muted = !volume;
11
- await audio.play();
12
- audio.remove();
13
- // @ts-expect-error
14
- audio = null;
15
- };