yummies 5.4.5 → 5.4.6

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 (516) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/config.json +11 -0
  3. package/.github/FUNDING.yml +1 -0
  4. package/.github/workflows/main.yml +34 -0
  5. package/.github/workflows/version-or-publish.yml +45 -0
  6. package/.nvmrc +1 -0
  7. package/.vscode/settings.json +19 -0
  8. package/CHANGELOG.md +215 -0
  9. package/CONTRIBUTING.md +8 -0
  10. package/Makefile +7 -0
  11. package/assets/logo.png +0 -0
  12. package/assets/logo.pxz +0 -0
  13. package/biome.json +3 -0
  14. package/commitfmt.toml +18 -0
  15. package/lefthook.yml +14 -0
  16. package/package.json +3 -389
  17. package/scripts/post-build.ts +71 -0
  18. package/src/async.ts +86 -0
  19. package/src/common.ts +26 -0
  20. package/src/complex/counter.test.ts +41 -0
  21. package/src/complex/counter.ts +40 -0
  22. package/src/complex/global-config.ts +55 -0
  23. package/src/complex/index.ts +3 -0
  24. package/src/complex/modules-factory.ts +65 -0
  25. package/src/cookie.ts +11 -0
  26. package/src/css.ts +60 -0
  27. package/src/data.test.ts +99 -0
  28. package/src/data.ts +65 -0
  29. package/src/date-time.test.ts +119 -0
  30. package/src/date-time.ts +236 -0
  31. package/src/device.ts +42 -0
  32. package/src/encodings.ts +270 -0
  33. package/src/errors.ts +40 -0
  34. package/src/file.ts +25 -0
  35. package/src/format/_exports.ts +4 -0
  36. package/{dist/format/constants.js → src/format/constants.ts} +2 -0
  37. package/{dist/format/index.js → src/format/index.ts} +2 -1
  38. package/src/format/number.test.ts +16 -0
  39. package/src/format/number.ts +96 -0
  40. package/src/format/percent.ts +40 -0
  41. package/src/format/skip-spaces.ts +4 -0
  42. package/src/html.ts +238 -0
  43. package/{dist/id.js → src/id.ts} +16 -6
  44. package/src/imports.ts +52 -0
  45. package/src/math.ts +20 -0
  46. package/src/media.ts +134 -0
  47. package/src/mobx/apply-observable.ts +20 -0
  48. package/src/mobx/create-enhanced-atom.ts +28 -0
  49. package/src/mobx/deep-observable-struct.test.ts +69 -0
  50. package/src/mobx/deep-observable-struct.ts +69 -0
  51. package/src/mobx/get-mobx-administration.ts +10 -0
  52. package/src/mobx/index.ts +5 -0
  53. package/src/mobx/lazy-observe.ts +59 -0
  54. package/src/ms.ts +20 -0
  55. package/src/number.ts +14 -0
  56. package/src/parser/_exports.ts +3 -0
  57. package/{dist/parser/index.js → src/parser/index.ts} +2 -1
  58. package/src/parser/number.test.ts +38 -0
  59. package/src/parser/number.ts +73 -0
  60. package/src/parser/percent.ts +11 -0
  61. package/src/parser/string.ts +29 -0
  62. package/src/price.ts +33 -0
  63. package/src/random.ts +27 -0
  64. package/src/react/hooks/index.ts +21 -0
  65. package/src/react/hooks/use-abort-controller.ts +15 -0
  66. package/src/react/hooks/use-abort-signal.ts +5 -0
  67. package/src/react/hooks/use-click-outside.ts +27 -0
  68. package/{dist/react/hooks/use-constant.js → src/react/hooks/use-constant.ts} +9 -6
  69. package/{dist/react/hooks/use-define-ref.js → src/react/hooks/use-define-ref.ts} +10 -7
  70. package/src/react/hooks/use-element-ref.ts +11 -0
  71. package/src/react/hooks/use-event-listener.ts +29 -0
  72. package/src/react/hooks/use-event.ts +23 -0
  73. package/src/react/hooks/use-flag.ts +27 -0
  74. package/src/react/hooks/use-force-update.ts +9 -0
  75. package/src/react/hooks/use-initial-height.ts +16 -0
  76. package/{dist/react/hooks/use-instance.js → src/react/hooks/use-instance.ts} +31 -9
  77. package/src/react/hooks/use-intersection-observer.ts +18 -0
  78. package/src/react/hooks/use-last-defined-value.ts +9 -0
  79. package/src/react/hooks/use-last-value-ref.ts +11 -0
  80. package/src/react/hooks/use-life-cycle.ts +17 -0
  81. package/src/react/hooks/use-resize-observer.ts +14 -0
  82. package/src/react/hooks/use-sync-ref.ts +7 -0
  83. package/src/react/hooks/use-toggle.ts +9 -0
  84. package/src/react/hooks/use-value.ts +10 -0
  85. package/src/react/hooks/use-visibility-state.ts +19 -0
  86. package/src/react/index.ts +1 -0
  87. package/src/sound.ts +15 -0
  88. package/src/storage.ts +137 -0
  89. package/src/text.test.ts +91 -0
  90. package/src/text.ts +60 -0
  91. package/src/type-guard/_exports.ts +154 -0
  92. package/src/type-guard/index.test.ts +127 -0
  93. package/{dist/type-guard/index.js → src/type-guard/index.ts} +2 -1
  94. package/src/vibrate.ts +8 -0
  95. package/tsconfig.json +26 -0
  96. package/tsconfig.test.json +33 -0
  97. package/vitest.config.ts +20 -0
  98. package/dist/async.cjs +0 -70
  99. package/dist/async.d.cts +0 -28
  100. package/dist/async.d.cts.map +0 -1
  101. package/dist/async.d.ts +0 -28
  102. package/dist/async.d.ts.map +0 -1
  103. package/dist/async.js +0 -62
  104. package/dist/common.cjs +0 -18
  105. package/dist/common.d.cts +0 -15
  106. package/dist/common.d.cts.map +0 -1
  107. package/dist/common.d.ts +0 -15
  108. package/dist/common.d.ts.map +0 -1
  109. package/dist/common.js +0 -14
  110. package/dist/complex/counter.cjs +0 -21
  111. package/dist/complex/counter.d.cts +0 -15
  112. package/dist/complex/counter.d.cts.map +0 -1
  113. package/dist/complex/counter.d.ts +0 -15
  114. package/dist/complex/counter.d.ts.map +0 -1
  115. package/dist/complex/counter.js +0 -17
  116. package/dist/complex/global-config.cjs +0 -46
  117. package/dist/complex/global-config.d.cts +0 -11
  118. package/dist/complex/global-config.d.cts.map +0 -1
  119. package/dist/complex/global-config.d.ts +0 -11
  120. package/dist/complex/global-config.d.ts.map +0 -1
  121. package/dist/complex/global-config.js +0 -41
  122. package/dist/complex/index.cjs +0 -19
  123. package/dist/complex/index.d.cts +0 -4
  124. package/dist/complex/index.d.cts.map +0 -1
  125. package/dist/complex/index.d.ts +0 -4
  126. package/dist/complex/index.d.ts.map +0 -1
  127. package/dist/complex/index.js +0 -3
  128. package/dist/complex/modules-factory.cjs +0 -50
  129. package/dist/complex/modules-factory.d.cts +0 -49
  130. package/dist/complex/modules-factory.d.cts.map +0 -1
  131. package/dist/complex/modules-factory.d.ts +0 -49
  132. package/dist/complex/modules-factory.d.ts.map +0 -1
  133. package/dist/complex/modules-factory.js +0 -46
  134. package/dist/cookie.cjs +0 -13
  135. package/dist/cookie.d.cts +0 -3
  136. package/dist/cookie.d.cts.map +0 -1
  137. package/dist/cookie.d.ts +0 -3
  138. package/dist/cookie.d.ts.map +0 -1
  139. package/dist/cookie.js +0 -9
  140. package/dist/css.cjs +0 -28
  141. package/dist/css.d.cts +0 -36
  142. package/dist/css.d.cts.map +0 -1
  143. package/dist/css.d.ts +0 -36
  144. package/dist/css.d.ts.map +0 -1
  145. package/dist/css.js +0 -20
  146. package/dist/data.cjs +0 -58
  147. package/dist/data.d.cts +0 -4
  148. package/dist/data.d.cts.map +0 -1
  149. package/dist/data.d.ts +0 -4
  150. package/dist/data.d.ts.map +0 -1
  151. package/dist/data.js +0 -52
  152. package/dist/date-time.cjs +0 -171
  153. package/dist/date-time.d.cts +0 -28
  154. package/dist/date-time.d.cts.map +0 -1
  155. package/dist/date-time.d.ts +0 -28
  156. package/dist/date-time.d.ts.map +0 -1
  157. package/dist/date-time.js +0 -160
  158. package/dist/device.cjs +0 -28
  159. package/dist/device.d.cts +0 -8
  160. package/dist/device.d.cts.map +0 -1
  161. package/dist/device.d.ts +0 -8
  162. package/dist/device.d.ts.map +0 -1
  163. package/dist/device.js +0 -21
  164. package/dist/encodings.cjs +0 -270
  165. package/dist/encodings.d.cts +0 -2
  166. package/dist/encodings.d.cts.map +0 -1
  167. package/dist/encodings.d.ts +0 -2
  168. package/dist/encodings.d.ts.map +0 -1
  169. package/dist/encodings.js +0 -267
  170. package/dist/errors.cjs +0 -34
  171. package/dist/errors.d.cts +0 -19
  172. package/dist/errors.d.cts.map +0 -1
  173. package/dist/errors.d.ts +0 -19
  174. package/dist/errors.d.ts.map +0 -1
  175. package/dist/errors.js +0 -30
  176. package/dist/file.cjs +0 -29
  177. package/dist/file.d.cts +0 -3
  178. package/dist/file.d.cts.map +0 -1
  179. package/dist/file.d.ts +0 -3
  180. package/dist/file.d.ts.map +0 -1
  181. package/dist/file.js +0 -24
  182. package/dist/format/_exports.cjs +0 -20
  183. package/dist/format/_exports.d.cts +0 -5
  184. package/dist/format/_exports.d.cts.map +0 -1
  185. package/dist/format/_exports.d.ts +0 -5
  186. package/dist/format/_exports.d.ts.map +0 -1
  187. package/dist/format/_exports.js +0 -4
  188. package/dist/format/constants.cjs +0 -6
  189. package/dist/format/constants.d.cts +0 -4
  190. package/dist/format/constants.d.cts.map +0 -1
  191. package/dist/format/constants.d.ts +0 -4
  192. package/dist/format/constants.d.ts.map +0 -1
  193. package/dist/format/index.cjs +0 -40
  194. package/dist/format/index.d.cts +0 -3
  195. package/dist/format/index.d.cts.map +0 -1
  196. package/dist/format/index.d.ts +0 -3
  197. package/dist/format/index.d.ts.map +0 -1
  198. package/dist/format/number.cjs +0 -48
  199. package/dist/format/number.d.cts +0 -36
  200. package/dist/format/number.d.cts.map +0 -1
  201. package/dist/format/number.d.ts +0 -36
  202. package/dist/format/number.d.ts.map +0 -1
  203. package/dist/format/number.js +0 -44
  204. package/dist/format/percent.cjs +0 -27
  205. package/dist/format/percent.d.cts +0 -15
  206. package/dist/format/percent.d.cts.map +0 -1
  207. package/dist/format/percent.d.ts +0 -15
  208. package/dist/format/percent.d.ts.map +0 -1
  209. package/dist/format/percent.js +0 -23
  210. package/dist/format/skip-spaces.cjs +0 -8
  211. package/dist/format/skip-spaces.d.cts +0 -5
  212. package/dist/format/skip-spaces.d.cts.map +0 -1
  213. package/dist/format/skip-spaces.d.ts +0 -5
  214. package/dist/format/skip-spaces.d.ts.map +0 -1
  215. package/dist/format/skip-spaces.js +0 -4
  216. package/dist/html.cjs +0 -202
  217. package/dist/html.d.cts +0 -44
  218. package/dist/html.d.cts.map +0 -1
  219. package/dist/html.d.ts +0 -44
  220. package/dist/html.d.ts.map +0 -1
  221. package/dist/html.js +0 -182
  222. package/dist/id.cjs +0 -76
  223. package/dist/id.d.cts +0 -63
  224. package/dist/id.d.cts.map +0 -1
  225. package/dist/id.d.ts +0 -63
  226. package/dist/id.d.ts.map +0 -1
  227. package/dist/imports.cjs +0 -45
  228. package/dist/imports.d.cts +0 -15
  229. package/dist/imports.d.cts.map +0 -1
  230. package/dist/imports.d.ts +0 -15
  231. package/dist/imports.d.ts.map +0 -1
  232. package/dist/imports.js +0 -40
  233. package/dist/math.cjs +0 -23
  234. package/dist/math.d.cts +0 -13
  235. package/dist/math.d.cts.map +0 -1
  236. package/dist/math.d.ts +0 -13
  237. package/dist/math.d.ts.map +0 -1
  238. package/dist/math.js +0 -17
  239. package/dist/media.cjs +0 -115
  240. package/dist/media.d.cts +0 -20
  241. package/dist/media.d.cts.map +0 -1
  242. package/dist/media.d.ts +0 -20
  243. package/dist/media.d.ts.map +0 -1
  244. package/dist/media.js +0 -103
  245. package/dist/mobx/apply-observable.cjs +0 -16
  246. package/dist/mobx/apply-observable.d.cts +0 -4
  247. package/dist/mobx/apply-observable.d.cts.map +0 -1
  248. package/dist/mobx/apply-observable.d.ts +0 -4
  249. package/dist/mobx/apply-observable.d.ts.map +0 -1
  250. package/dist/mobx/apply-observable.js +0 -12
  251. package/dist/mobx/create-enhanced-atom.cjs +0 -16
  252. package/dist/mobx/create-enhanced-atom.d.cts +0 -11
  253. package/dist/mobx/create-enhanced-atom.d.cts.map +0 -1
  254. package/dist/mobx/create-enhanced-atom.d.ts +0 -11
  255. package/dist/mobx/create-enhanced-atom.d.ts.map +0 -1
  256. package/dist/mobx/create-enhanced-atom.js +0 -12
  257. package/dist/mobx/deep-observable-struct.cjs +0 -61
  258. package/dist/mobx/deep-observable-struct.d.cts +0 -7
  259. package/dist/mobx/deep-observable-struct.d.cts.map +0 -1
  260. package/dist/mobx/deep-observable-struct.d.ts +0 -7
  261. package/dist/mobx/deep-observable-struct.d.ts.map +0 -1
  262. package/dist/mobx/deep-observable-struct.js +0 -57
  263. package/dist/mobx/get-mobx-administration.cjs +0 -6
  264. package/dist/mobx/get-mobx-administration.d.cts +0 -6
  265. package/dist/mobx/get-mobx-administration.d.cts.map +0 -1
  266. package/dist/mobx/get-mobx-administration.d.ts +0 -6
  267. package/dist/mobx/get-mobx-administration.d.ts.map +0 -1
  268. package/dist/mobx/get-mobx-administration.js +0 -2
  269. package/dist/mobx/index.cjs +0 -21
  270. package/dist/mobx/index.d.cts +0 -6
  271. package/dist/mobx/index.d.cts.map +0 -1
  272. package/dist/mobx/index.d.ts +0 -6
  273. package/dist/mobx/index.d.ts.map +0 -1
  274. package/dist/mobx/index.js +0 -5
  275. package/dist/mobx/lazy-observe.cjs +0 -47
  276. package/dist/mobx/lazy-observe.d.cts +0 -8
  277. package/dist/mobx/lazy-observe.d.cts.map +0 -1
  278. package/dist/mobx/lazy-observe.d.ts +0 -8
  279. package/dist/mobx/lazy-observe.d.ts.map +0 -1
  280. package/dist/mobx/lazy-observe.js +0 -43
  281. package/dist/ms.cjs +0 -22
  282. package/dist/ms.d.cts +0 -19
  283. package/dist/ms.d.cts.map +0 -1
  284. package/dist/ms.d.ts +0 -19
  285. package/dist/ms.d.ts.map +0 -1
  286. package/dist/ms.js +0 -18
  287. package/dist/number.cjs +0 -16
  288. package/dist/number.d.cts +0 -8
  289. package/dist/number.d.cts.map +0 -1
  290. package/dist/number.d.ts +0 -8
  291. package/dist/number.d.ts.map +0 -1
  292. package/dist/number.js +0 -13
  293. package/dist/parser/_exports.cjs +0 -19
  294. package/dist/parser/_exports.d.cts +0 -4
  295. package/dist/parser/_exports.d.cts.map +0 -1
  296. package/dist/parser/_exports.d.ts +0 -4
  297. package/dist/parser/_exports.d.ts.map +0 -1
  298. package/dist/parser/_exports.js +0 -3
  299. package/dist/parser/index.cjs +0 -40
  300. package/dist/parser/index.d.cts +0 -3
  301. package/dist/parser/index.d.cts.map +0 -1
  302. package/dist/parser/index.d.ts +0 -3
  303. package/dist/parser/index.d.ts.map +0 -1
  304. package/dist/parser/number.cjs +0 -48
  305. package/dist/parser/number.d.cts +0 -21
  306. package/dist/parser/number.d.cts.map +0 -1
  307. package/dist/parser/number.d.ts +0 -21
  308. package/dist/parser/number.d.ts.map +0 -1
  309. package/dist/parser/number.js +0 -44
  310. package/dist/parser/percent.cjs +0 -8
  311. package/dist/parser/percent.d.cts +0 -4
  312. package/dist/parser/percent.d.cts.map +0 -1
  313. package/dist/parser/percent.d.ts +0 -4
  314. package/dist/parser/percent.d.ts.map +0 -1
  315. package/dist/parser/percent.js +0 -4
  316. package/dist/parser/string.cjs +0 -18
  317. package/dist/parser/string.d.cts +0 -7
  318. package/dist/parser/string.d.cts.map +0 -1
  319. package/dist/parser/string.d.ts +0 -7
  320. package/dist/parser/string.d.ts.map +0 -1
  321. package/dist/parser/string.js +0 -14
  322. package/dist/price.cjs +0 -21
  323. package/dist/price.d.cts +0 -6
  324. package/dist/price.d.cts.map +0 -1
  325. package/dist/price.d.ts +0 -6
  326. package/dist/price.d.ts.map +0 -1
  327. package/dist/price.js +0 -17
  328. package/dist/random.cjs +0 -25
  329. package/dist/random.d.cts +0 -9
  330. package/dist/random.d.cts.map +0 -1
  331. package/dist/random.d.ts +0 -9
  332. package/dist/random.d.ts.map +0 -1
  333. package/dist/random.js +0 -14
  334. package/dist/react/hooks/index.cjs +0 -37
  335. package/dist/react/hooks/index.d.cts +0 -22
  336. package/dist/react/hooks/index.d.cts.map +0 -1
  337. package/dist/react/hooks/index.d.ts +0 -22
  338. package/dist/react/hooks/index.d.ts.map +0 -1
  339. package/dist/react/hooks/index.js +0 -21
  340. package/dist/react/hooks/use-abort-controller.cjs +0 -15
  341. package/dist/react/hooks/use-abort-controller.d.cts +0 -2
  342. package/dist/react/hooks/use-abort-controller.d.cts.map +0 -1
  343. package/dist/react/hooks/use-abort-controller.d.ts +0 -2
  344. package/dist/react/hooks/use-abort-controller.d.ts.map +0 -1
  345. package/dist/react/hooks/use-abort-controller.js +0 -11
  346. package/dist/react/hooks/use-abort-signal.cjs +0 -8
  347. package/dist/react/hooks/use-abort-signal.d.cts +0 -2
  348. package/dist/react/hooks/use-abort-signal.d.cts.map +0 -1
  349. package/dist/react/hooks/use-abort-signal.d.ts +0 -2
  350. package/dist/react/hooks/use-abort-signal.d.ts.map +0 -1
  351. package/dist/react/hooks/use-abort-signal.js +0 -4
  352. package/dist/react/hooks/use-click-outside.cjs +0 -17
  353. package/dist/react/hooks/use-click-outside.d.cts +0 -9
  354. package/dist/react/hooks/use-click-outside.d.cts.map +0 -1
  355. package/dist/react/hooks/use-click-outside.d.ts +0 -9
  356. package/dist/react/hooks/use-click-outside.d.ts.map +0 -1
  357. package/dist/react/hooks/use-click-outside.js +0 -13
  358. package/dist/react/hooks/use-constant.cjs +0 -19
  359. package/dist/react/hooks/use-constant.d.cts +0 -9
  360. package/dist/react/hooks/use-constant.d.cts.map +0 -1
  361. package/dist/react/hooks/use-constant.d.ts +0 -9
  362. package/dist/react/hooks/use-constant.d.ts.map +0 -1
  363. package/dist/react/hooks/use-define-ref.cjs +0 -19
  364. package/dist/react/hooks/use-define-ref.d.cts +0 -10
  365. package/dist/react/hooks/use-define-ref.d.cts.map +0 -1
  366. package/dist/react/hooks/use-define-ref.d.ts +0 -10
  367. package/dist/react/hooks/use-define-ref.d.ts.map +0 -1
  368. package/dist/react/hooks/use-element-ref.cjs +0 -12
  369. package/dist/react/hooks/use-element-ref.d.cts +0 -2
  370. package/dist/react/hooks/use-element-ref.d.cts.map +0 -1
  371. package/dist/react/hooks/use-element-ref.d.ts +0 -2
  372. package/dist/react/hooks/use-element-ref.d.ts.map +0 -1
  373. package/dist/react/hooks/use-element-ref.js +0 -8
  374. package/dist/react/hooks/use-event-listener.cjs +0 -17
  375. package/dist/react/hooks/use-event-listener.d.cts +0 -8
  376. package/dist/react/hooks/use-event-listener.d.cts.map +0 -1
  377. package/dist/react/hooks/use-event-listener.d.ts +0 -8
  378. package/dist/react/hooks/use-event-listener.d.ts.map +0 -1
  379. package/dist/react/hooks/use-event-listener.js +0 -13
  380. package/dist/react/hooks/use-event.cjs +0 -23
  381. package/dist/react/hooks/use-event.d.cts +0 -3
  382. package/dist/react/hooks/use-event.d.cts.map +0 -1
  383. package/dist/react/hooks/use-event.d.ts +0 -3
  384. package/dist/react/hooks/use-event.d.ts.map +0 -1
  385. package/dist/react/hooks/use-event.js +0 -19
  386. package/dist/react/hooks/use-flag.cjs +0 -19
  387. package/dist/react/hooks/use-flag.d.cts +0 -8
  388. package/dist/react/hooks/use-flag.d.cts.map +0 -1
  389. package/dist/react/hooks/use-flag.d.ts +0 -8
  390. package/dist/react/hooks/use-flag.d.ts.map +0 -1
  391. package/dist/react/hooks/use-flag.js +0 -15
  392. package/dist/react/hooks/use-force-update.cjs +0 -11
  393. package/dist/react/hooks/use-force-update.d.cts +0 -2
  394. package/dist/react/hooks/use-force-update.d.cts.map +0 -1
  395. package/dist/react/hooks/use-force-update.d.ts +0 -2
  396. package/dist/react/hooks/use-force-update.d.ts.map +0 -1
  397. package/dist/react/hooks/use-force-update.js +0 -7
  398. package/dist/react/hooks/use-initial-height.cjs +0 -15
  399. package/dist/react/hooks/use-initial-height.d.cts +0 -5
  400. package/dist/react/hooks/use-initial-height.d.cts.map +0 -1
  401. package/dist/react/hooks/use-initial-height.d.ts +0 -5
  402. package/dist/react/hooks/use-initial-height.d.ts.map +0 -1
  403. package/dist/react/hooks/use-initial-height.js +0 -11
  404. package/dist/react/hooks/use-instance.cjs +0 -31
  405. package/dist/react/hooks/use-instance.d.cts +0 -27
  406. package/dist/react/hooks/use-instance.d.cts.map +0 -1
  407. package/dist/react/hooks/use-instance.d.ts +0 -27
  408. package/dist/react/hooks/use-instance.d.ts.map +0 -1
  409. package/dist/react/hooks/use-intersection-observer.cjs +0 -14
  410. package/dist/react/hooks/use-intersection-observer.d.cts +0 -2
  411. package/dist/react/hooks/use-intersection-observer.d.cts.map +0 -1
  412. package/dist/react/hooks/use-intersection-observer.d.ts +0 -2
  413. package/dist/react/hooks/use-intersection-observer.d.ts.map +0 -1
  414. package/dist/react/hooks/use-intersection-observer.js +0 -10
  415. package/dist/react/hooks/use-last-defined-value.cjs +0 -12
  416. package/dist/react/hooks/use-last-defined-value.d.cts +0 -2
  417. package/dist/react/hooks/use-last-defined-value.d.cts.map +0 -1
  418. package/dist/react/hooks/use-last-defined-value.d.ts +0 -2
  419. package/dist/react/hooks/use-last-defined-value.d.ts.map +0 -1
  420. package/dist/react/hooks/use-last-defined-value.js +0 -8
  421. package/dist/react/hooks/use-last-value-ref.cjs +0 -12
  422. package/dist/react/hooks/use-last-value-ref.d.cts +0 -2
  423. package/dist/react/hooks/use-last-value-ref.d.cts.map +0 -1
  424. package/dist/react/hooks/use-last-value-ref.d.ts +0 -2
  425. package/dist/react/hooks/use-last-value-ref.d.ts.map +0 -1
  426. package/dist/react/hooks/use-last-value-ref.js +0 -8
  427. package/dist/react/hooks/use-life-cycle.cjs +0 -14
  428. package/dist/react/hooks/use-life-cycle.d.cts +0 -5
  429. package/dist/react/hooks/use-life-cycle.d.cts.map +0 -1
  430. package/dist/react/hooks/use-life-cycle.d.ts +0 -5
  431. package/dist/react/hooks/use-life-cycle.d.ts.map +0 -1
  432. package/dist/react/hooks/use-life-cycle.js +0 -10
  433. package/dist/react/hooks/use-resize-observer.cjs +0 -15
  434. package/dist/react/hooks/use-resize-observer.d.cts +0 -2
  435. package/dist/react/hooks/use-resize-observer.d.cts.map +0 -1
  436. package/dist/react/hooks/use-resize-observer.d.ts +0 -2
  437. package/dist/react/hooks/use-resize-observer.d.ts.map +0 -1
  438. package/dist/react/hooks/use-resize-observer.js +0 -11
  439. package/dist/react/hooks/use-sync-ref.cjs +0 -10
  440. package/dist/react/hooks/use-sync-ref.d.cts +0 -2
  441. package/dist/react/hooks/use-sync-ref.d.cts.map +0 -1
  442. package/dist/react/hooks/use-sync-ref.d.ts +0 -2
  443. package/dist/react/hooks/use-sync-ref.d.ts.map +0 -1
  444. package/dist/react/hooks/use-sync-ref.js +0 -6
  445. package/dist/react/hooks/use-toggle.cjs +0 -10
  446. package/dist/react/hooks/use-toggle.d.cts +0 -2
  447. package/dist/react/hooks/use-toggle.d.cts.map +0 -1
  448. package/dist/react/hooks/use-toggle.d.ts +0 -2
  449. package/dist/react/hooks/use-toggle.d.ts.map +0 -1
  450. package/dist/react/hooks/use-toggle.js +0 -6
  451. package/dist/react/hooks/use-value.cjs +0 -12
  452. package/dist/react/hooks/use-value.d.cts +0 -5
  453. package/dist/react/hooks/use-value.d.cts.map +0 -1
  454. package/dist/react/hooks/use-value.d.ts +0 -5
  455. package/dist/react/hooks/use-value.d.ts.map +0 -1
  456. package/dist/react/hooks/use-value.js +0 -8
  457. package/dist/react/hooks/use-visibility-state.cjs +0 -18
  458. package/dist/react/hooks/use-visibility-state.d.cts +0 -2
  459. package/dist/react/hooks/use-visibility-state.d.cts.map +0 -1
  460. package/dist/react/hooks/use-visibility-state.d.ts +0 -2
  461. package/dist/react/hooks/use-visibility-state.d.ts.map +0 -1
  462. package/dist/react/hooks/use-visibility-state.js +0 -14
  463. package/dist/react/index.cjs +0 -17
  464. package/dist/react/index.d.cts +0 -2
  465. package/dist/react/index.d.cts.map +0 -1
  466. package/dist/react/index.d.ts +0 -2
  467. package/dist/react/index.d.ts.map +0 -1
  468. package/dist/react/index.js +0 -1
  469. package/dist/sound.cjs +0 -16
  470. package/dist/sound.d.cts +0 -7
  471. package/dist/sound.d.cts.map +0 -1
  472. package/dist/sound.d.ts +0 -7
  473. package/dist/sound.d.ts.map +0 -1
  474. package/dist/sound.js +0 -12
  475. package/dist/storage.cjs +0 -48
  476. package/dist/storage.d.cts +0 -39
  477. package/dist/storage.d.cts.map +0 -1
  478. package/dist/storage.d.ts +0 -39
  479. package/dist/storage.d.ts.map +0 -1
  480. package/dist/storage.js +0 -43
  481. package/dist/text.cjs +0 -53
  482. package/dist/text.d.cts +0 -15
  483. package/dist/text.d.cts.map +0 -1
  484. package/dist/text.d.ts +0 -15
  485. package/dist/text.d.ts.map +0 -1
  486. package/dist/text.js +0 -48
  487. package/dist/type-guard/_exports.cjs +0 -129
  488. package/dist/type-guard/_exports.d.cts +0 -86
  489. package/dist/type-guard/_exports.d.cts.map +0 -1
  490. package/dist/type-guard/_exports.d.ts +0 -86
  491. package/dist/type-guard/_exports.d.ts.map +0 -1
  492. package/dist/type-guard/_exports.js +0 -125
  493. package/dist/type-guard/index.cjs +0 -40
  494. package/dist/type-guard/index.d.cts +0 -3
  495. package/dist/type-guard/index.d.cts.map +0 -1
  496. package/dist/type-guard/index.d.ts +0 -3
  497. package/dist/type-guard/index.d.ts.map +0 -1
  498. package/dist/utils/types.cjs +0 -2
  499. package/dist/utils/types.d.cts +0 -395
  500. package/dist/utils/types.d.cts.map +0 -1
  501. package/dist/utils/types.d.ts +0 -395
  502. package/dist/utils/types.d.ts.map +0 -1
  503. package/dist/utils/types.js +0 -1
  504. package/dist/vibrate.cjs +0 -12
  505. package/dist/vibrate.d.cts +0 -5
  506. package/dist/vibrate.d.cts.map +0 -1
  507. package/dist/vibrate.d.ts +0 -5
  508. package/dist/vibrate.d.ts.map +0 -1
  509. package/dist/vibrate.js +0 -8
  510. package/utility-types.d.ts +0 -395
  511. package/utils/types.cjs +0 -2
  512. package/utils/types.d.cts +0 -395
  513. package/utils/types.d.cts.map +0 -1
  514. package/utils/types.d.ts +0 -395
  515. package/utils/types.d.ts.map +0 -1
  516. package/utils/types.js +0 -1
package/dist/html.cjs DELETED
@@ -1,202 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.isPrefersLightTheme = exports.isPrefersDarkTheme = exports.calcScrollbarWidth = exports.startViewTransitionSafety = exports.checkElementHasParent = exports.sanitizeHtml = exports.globalScrollIntoViewForY = exports.skipEvent = exports.collectOffsetTop = exports.downloadUsingAnchor = exports.getComputedColor = void 0;
7
- exports.wrapTextToTagLink = wrapTextToTagLink;
8
- exports.getElementInnerHeight = getElementInnerHeight;
9
- exports.getElementInnerWidth = getElementInnerWidth;
10
- const dompurify_1 = __importDefault(require("dompurify"));
11
- const media_js_1 = require("./media.cjs");
12
- /**
13
- * Вытаскивает RGB из любого цвета
14
- *
15
- * Не рекомендуется к использованию так как вызывает reflow
16
- */
17
- const getComputedColor = (color) => {
18
- if (!color)
19
- return null;
20
- const d = document.createElement('div');
21
- d.style.color = color;
22
- document.body.append(d);
23
- const rgbcolor = globalThis.getComputedStyle(d).color;
24
- const match = /rgba?\((\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*\d+[.d+]*)*\)/g.exec(rgbcolor);
25
- d.remove();
26
- if (!match)
27
- return null;
28
- return `${match[1]}, ${match[2]}, ${match[3]}`;
29
- };
30
- exports.getComputedColor = getComputedColor;
31
- const downloadUsingAnchor = (urlOrBlob, fileName) => {
32
- const url = (0, media_js_1.blobToUrl)(urlOrBlob);
33
- const a = document.createElement('a');
34
- a.href = url;
35
- a.download = fileName ?? 'file';
36
- a.target = '_blank';
37
- document.body.append(a);
38
- a.click();
39
- a.remove();
40
- };
41
- exports.downloadUsingAnchor = downloadUsingAnchor;
42
- /**
43
- * Surrounds string in an anchor tag
44
- */
45
- function wrapTextToTagLink(link) {
46
- const descr = String(link).replace(/^(https?:\/{0,2})?(w{3}\.)?/, 'www.');
47
- if (!/^https?:\/{2}/.test(link))
48
- link = `http://${link}`;
49
- return `<a href=${link} target="_blank">${descr}</a>`;
50
- }
51
- const collectOffsetTop = (element) => {
52
- let offsetTop = 0;
53
- let node = element;
54
- while (node != null) {
55
- offsetTop += node.offsetTop;
56
- node = node.parentElement;
57
- }
58
- return offsetTop;
59
- };
60
- exports.collectOffsetTop = collectOffsetTop;
61
- const skipEvent = (e) => {
62
- e.preventDefault();
63
- e.stopPropagation();
64
- return false;
65
- };
66
- exports.skipEvent = skipEvent;
67
- const globalScrollIntoViewForY = (node) => {
68
- const scrollContainer = document.body;
69
- const pageHeight = window.innerHeight;
70
- const nodeBounding = node.getBoundingClientRect();
71
- const scrollPagesCount = scrollContainer.scrollHeight / pageHeight;
72
- const scrollPageNumber = Math.min(Math.max(nodeBounding.top / pageHeight, 1), scrollPagesCount);
73
- window.scroll({
74
- top: scrollPageNumber * pageHeight,
75
- behavior: 'smooth',
76
- });
77
- };
78
- exports.globalScrollIntoViewForY = globalScrollIntoViewForY;
79
- const sanitizeDefaults = {
80
- ALLOWED_TAGS: [
81
- 'a',
82
- 'article',
83
- 'b',
84
- 'blockquote',
85
- 'br',
86
- 'caption',
87
- 'code',
88
- 'del',
89
- 'details',
90
- 'div',
91
- 'em',
92
- 'h1',
93
- 'h2',
94
- 'h3',
95
- 'h4',
96
- 'h5',
97
- 'h6',
98
- 'hr',
99
- 'i',
100
- 'img',
101
- 'ins',
102
- 'kbd',
103
- 'li',
104
- 'main',
105
- 'ol',
106
- 'p',
107
- 'pre',
108
- 'section',
109
- 'span',
110
- 'strong',
111
- 'sub',
112
- 'summary',
113
- 'sup',
114
- 'table',
115
- 'tbody',
116
- 'td',
117
- 'th',
118
- 'thead',
119
- 'tr',
120
- 'u',
121
- 'ul',
122
- ],
123
- ALLOWED_ATTR: ['href', 'target', 'name', 'src', 'class'],
124
- };
125
- const sanitizeHtml = (html, config) => {
126
- return dompurify_1.default.sanitize(html || '', {
127
- ...sanitizeDefaults,
128
- ...config,
129
- });
130
- };
131
- exports.sanitizeHtml = sanitizeHtml;
132
- const checkElementHasParent = (element, parent) => {
133
- let node = element;
134
- if (!parent)
135
- return false;
136
- while (node != null) {
137
- if (node === parent) {
138
- return true;
139
- }
140
- else {
141
- node = node.parentElement;
142
- }
143
- }
144
- return false;
145
- };
146
- exports.checkElementHasParent = checkElementHasParent;
147
- /**
148
- * Executes a function within a view transition if supported by the browser.
149
- *
150
- * @param {VoidFunction} fn - The function to be executed.
151
- * @returns {ViewTransition} - The result of the executed function.
152
- *
153
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/startViewTransition | MDN: Document.startViewTransition}
154
- */
155
- const startViewTransitionSafety = (fn, params) => {
156
- if (document.startViewTransition && !params?.disabled) {
157
- return document.startViewTransition(fn);
158
- }
159
- fn();
160
- };
161
- exports.startViewTransitionSafety = startViewTransitionSafety;
162
- /**
163
- * Вычисляет размер скроллбара
164
- */
165
- const calcScrollbarWidth = () => {
166
- const outer = document.createElement('div');
167
- outer.style.visibility = 'hidden';
168
- outer.style.width = '100px';
169
- outer.style.overflow = 'scroll';
170
- document.body.append(outer);
171
- const inner = document.createElement('div');
172
- inner.style.width = '100%';
173
- outer.append(inner);
174
- const scrollbarWidth = outer.offsetWidth - inner.offsetWidth;
175
- outer.parentNode?.removeChild(outer);
176
- return scrollbarWidth;
177
- };
178
- exports.calcScrollbarWidth = calcScrollbarWidth;
179
- /**
180
- * Calculates the inner height of an HTML element, accounting for padding.
181
- */
182
- function getElementInnerHeight(element) {
183
- const { clientHeight } = element;
184
- const { paddingTop, paddingBottom } = getComputedStyle(element);
185
- return (clientHeight -
186
- Number.parseFloat(paddingTop) -
187
- Number.parseFloat(paddingBottom));
188
- }
189
- /**
190
- * Calculates the inner width of an HTML element, accounting for padding.
191
- */
192
- function getElementInnerWidth(el) {
193
- const { clientWidth } = el;
194
- const { paddingLeft, paddingRight } = getComputedStyle(el);
195
- return (clientWidth -
196
- Number.parseFloat(paddingLeft) -
197
- Number.parseFloat(paddingRight));
198
- }
199
- const isPrefersDarkTheme = () => !!globalThis.matchMedia?.('(prefers-color-scheme: dark)')?.matches;
200
- exports.isPrefersDarkTheme = isPrefersDarkTheme;
201
- const isPrefersLightTheme = () => !!globalThis.matchMedia?.('(prefers-color-scheme: light)')?.matches;
202
- exports.isPrefersLightTheme = isPrefersLightTheme;
package/dist/html.d.cts DELETED
@@ -1,44 +0,0 @@
1
- import { type Config as DOMPurifyConfig } from 'dompurify';
2
- import type { Maybe } from "./utils/types.cjs";
3
- /**
4
- * Вытаскивает RGB из любого цвета
5
- *
6
- * Не рекомендуется к использованию так как вызывает reflow
7
- */
8
- export declare const getComputedColor: (color?: string) => string | null;
9
- export declare const downloadUsingAnchor: (urlOrBlob: string | Blob, fileName?: string) => void;
10
- /**
11
- * Surrounds string in an anchor tag
12
- */
13
- export declare function wrapTextToTagLink(link: string): string;
14
- export declare const collectOffsetTop: (element: HTMLElement | null) => number;
15
- export declare const skipEvent: (e: Event) => boolean;
16
- export declare const globalScrollIntoViewForY: (node: HTMLElement) => void;
17
- export declare const sanitizeHtml: (html: Maybe<string>, config?: DOMPurifyConfig) => string;
18
- export declare const checkElementHasParent: (element: HTMLElement | null, parent: Maybe<HTMLElement>) => boolean;
19
- /**
20
- * Executes a function within a view transition if supported by the browser.
21
- *
22
- * @param {VoidFunction} fn - The function to be executed.
23
- * @returns {ViewTransition} - The result of the executed function.
24
- *
25
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/startViewTransition | MDN: Document.startViewTransition}
26
- */
27
- export declare const startViewTransitionSafety: (fn: VoidFunction, params?: {
28
- disabled?: boolean;
29
- }) => ViewTransition | undefined;
30
- /**
31
- * Вычисляет размер скроллбара
32
- */
33
- export declare const calcScrollbarWidth: () => number;
34
- /**
35
- * Calculates the inner height of an HTML element, accounting for padding.
36
- */
37
- export declare function getElementInnerHeight(element: HTMLElement): number;
38
- /**
39
- * Calculates the inner width of an HTML element, accounting for padding.
40
- */
41
- export declare function getElementInnerWidth(el: HTMLElement): number;
42
- export declare const isPrefersDarkTheme: () => boolean;
43
- export declare const isPrefersLightTheme: () => boolean;
44
- //# sourceMappingURL=html.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../src/html.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,KAAK,MAAM,IAAI,eAAe,EAAE,MAAM,WAAW,CAAC;AAGtE,OAAO,KAAK,EAAE,KAAK,EAAE,0BAAyB;AAE9C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,IAe1D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,WAAW,MAAM,GAAG,IAAI,EACxB,WAAW,MAAM,SAgBlB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAI7C;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,WAAW,GAAG,IAAI,WAU3D,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,GAAG,KAAK,YAKjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,MAAM,WAAW,SAezD,CAAC;AAiDF,eAAO,MAAM,YAAY,GAAI,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,eAAe,WAKzE,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,SAAS,WAAW,GAAG,IAAI,EAC3B,QAAQ,KAAK,CAAC,WAAW,CAAC,YAe3B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GACpC,IAAI,YAAY,EAChB,SAAS;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,+BAMhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAmB9B,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,UAQzD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,UAQnD;AAED,eAAO,MAAM,kBAAkB,eACqC,CAAC;AAErE,eAAO,MAAM,mBAAmB,eACqC,CAAC"}
package/dist/html.d.ts DELETED
@@ -1,44 +0,0 @@
1
- import { type Config as DOMPurifyConfig } from 'dompurify';
2
- import type { Maybe } from "./utils/types.js";
3
- /**
4
- * Вытаскивает RGB из любого цвета
5
- *
6
- * Не рекомендуется к использованию так как вызывает reflow
7
- */
8
- export declare const getComputedColor: (color?: string) => string | null;
9
- export declare const downloadUsingAnchor: (urlOrBlob: string | Blob, fileName?: string) => void;
10
- /**
11
- * Surrounds string in an anchor tag
12
- */
13
- export declare function wrapTextToTagLink(link: string): string;
14
- export declare const collectOffsetTop: (element: HTMLElement | null) => number;
15
- export declare const skipEvent: (e: Event) => boolean;
16
- export declare const globalScrollIntoViewForY: (node: HTMLElement) => void;
17
- export declare const sanitizeHtml: (html: Maybe<string>, config?: DOMPurifyConfig) => string;
18
- export declare const checkElementHasParent: (element: HTMLElement | null, parent: Maybe<HTMLElement>) => boolean;
19
- /**
20
- * Executes a function within a view transition if supported by the browser.
21
- *
22
- * @param {VoidFunction} fn - The function to be executed.
23
- * @returns {ViewTransition} - The result of the executed function.
24
- *
25
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/startViewTransition | MDN: Document.startViewTransition}
26
- */
27
- export declare const startViewTransitionSafety: (fn: VoidFunction, params?: {
28
- disabled?: boolean;
29
- }) => ViewTransition | undefined;
30
- /**
31
- * Вычисляет размер скроллбара
32
- */
33
- export declare const calcScrollbarWidth: () => number;
34
- /**
35
- * Calculates the inner height of an HTML element, accounting for padding.
36
- */
37
- export declare function getElementInnerHeight(element: HTMLElement): number;
38
- /**
39
- * Calculates the inner width of an HTML element, accounting for padding.
40
- */
41
- export declare function getElementInnerWidth(el: HTMLElement): number;
42
- export declare const isPrefersDarkTheme: () => boolean;
43
- export declare const isPrefersLightTheme: () => boolean;
44
- //# sourceMappingURL=html.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../src/html.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,KAAK,MAAM,IAAI,eAAe,EAAE,MAAM,WAAW,CAAC;AAGtE,OAAO,KAAK,EAAE,KAAK,EAAE,yBAAyB;AAE9C;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,IAe1D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,WAAW,MAAM,GAAG,IAAI,EACxB,WAAW,MAAM,SAgBlB,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,UAI7C;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,WAAW,GAAG,IAAI,WAU3D,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,GAAG,KAAK,YAKjC,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,MAAM,WAAW,SAezD,CAAC;AAiDF,eAAO,MAAM,YAAY,GAAI,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,eAAe,WAKzE,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,SAAS,WAAW,GAAG,IAAI,EAC3B,QAAQ,KAAK,CAAC,WAAW,CAAC,YAe3B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GACpC,IAAI,YAAY,EAChB,SAAS;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,+BAMhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,cAmB9B,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,UAQzD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,WAAW,UAQnD;AAED,eAAO,MAAM,kBAAkB,eACqC,CAAC;AAErE,eAAO,MAAM,mBAAmB,eACqC,CAAC"}
package/dist/html.js DELETED
@@ -1,182 +0,0 @@
1
- import DOMPurify from 'dompurify';
2
- import { blobToUrl } from "./media.js";
3
- /**
4
- * Вытаскивает RGB из любого цвета
5
- *
6
- * Не рекомендуется к использованию так как вызывает reflow
7
- */
8
- export const getComputedColor = (color) => {
9
- if (!color)
10
- return null;
11
- const d = document.createElement('div');
12
- d.style.color = color;
13
- document.body.append(d);
14
- const rgbcolor = globalThis.getComputedStyle(d).color;
15
- const match = /rgba?\((\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*\d+[.d+]*)*\)/g.exec(rgbcolor);
16
- d.remove();
17
- if (!match)
18
- return null;
19
- return `${match[1]}, ${match[2]}, ${match[3]}`;
20
- };
21
- export const downloadUsingAnchor = (urlOrBlob, fileName) => {
22
- const url = blobToUrl(urlOrBlob);
23
- const a = document.createElement('a');
24
- a.href = url;
25
- a.download = fileName ?? 'file';
26
- a.target = '_blank';
27
- document.body.append(a);
28
- a.click();
29
- a.remove();
30
- };
31
- /**
32
- * Surrounds string in an anchor tag
33
- */
34
- export function wrapTextToTagLink(link) {
35
- const descr = String(link).replace(/^(https?:\/{0,2})?(w{3}\.)?/, 'www.');
36
- if (!/^https?:\/{2}/.test(link))
37
- link = `http://${link}`;
38
- return `<a href=${link} target="_blank">${descr}</a>`;
39
- }
40
- export const collectOffsetTop = (element) => {
41
- let offsetTop = 0;
42
- let node = element;
43
- while (node != null) {
44
- offsetTop += node.offsetTop;
45
- node = node.parentElement;
46
- }
47
- return offsetTop;
48
- };
49
- export const skipEvent = (e) => {
50
- e.preventDefault();
51
- e.stopPropagation();
52
- return false;
53
- };
54
- export const globalScrollIntoViewForY = (node) => {
55
- const scrollContainer = document.body;
56
- const pageHeight = window.innerHeight;
57
- const nodeBounding = node.getBoundingClientRect();
58
- const scrollPagesCount = scrollContainer.scrollHeight / pageHeight;
59
- const scrollPageNumber = Math.min(Math.max(nodeBounding.top / pageHeight, 1), scrollPagesCount);
60
- window.scroll({
61
- top: scrollPageNumber * pageHeight,
62
- behavior: 'smooth',
63
- });
64
- };
65
- const sanitizeDefaults = {
66
- ALLOWED_TAGS: [
67
- 'a',
68
- 'article',
69
- 'b',
70
- 'blockquote',
71
- 'br',
72
- 'caption',
73
- 'code',
74
- 'del',
75
- 'details',
76
- 'div',
77
- 'em',
78
- 'h1',
79
- 'h2',
80
- 'h3',
81
- 'h4',
82
- 'h5',
83
- 'h6',
84
- 'hr',
85
- 'i',
86
- 'img',
87
- 'ins',
88
- 'kbd',
89
- 'li',
90
- 'main',
91
- 'ol',
92
- 'p',
93
- 'pre',
94
- 'section',
95
- 'span',
96
- 'strong',
97
- 'sub',
98
- 'summary',
99
- 'sup',
100
- 'table',
101
- 'tbody',
102
- 'td',
103
- 'th',
104
- 'thead',
105
- 'tr',
106
- 'u',
107
- 'ul',
108
- ],
109
- ALLOWED_ATTR: ['href', 'target', 'name', 'src', 'class'],
110
- };
111
- export const sanitizeHtml = (html, config) => {
112
- return DOMPurify.sanitize(html || '', {
113
- ...sanitizeDefaults,
114
- ...config,
115
- });
116
- };
117
- export const checkElementHasParent = (element, parent) => {
118
- let node = element;
119
- if (!parent)
120
- return false;
121
- while (node != null) {
122
- if (node === parent) {
123
- return true;
124
- }
125
- else {
126
- node = node.parentElement;
127
- }
128
- }
129
- return false;
130
- };
131
- /**
132
- * Executes a function within a view transition if supported by the browser.
133
- *
134
- * @param {VoidFunction} fn - The function to be executed.
135
- * @returns {ViewTransition} - The result of the executed function.
136
- *
137
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Document/startViewTransition | MDN: Document.startViewTransition}
138
- */
139
- export const startViewTransitionSafety = (fn, params) => {
140
- if (document.startViewTransition && !params?.disabled) {
141
- return document.startViewTransition(fn);
142
- }
143
- fn();
144
- };
145
- /**
146
- * Вычисляет размер скроллбара
147
- */
148
- export const calcScrollbarWidth = () => {
149
- const outer = document.createElement('div');
150
- outer.style.visibility = 'hidden';
151
- outer.style.width = '100px';
152
- outer.style.overflow = 'scroll';
153
- document.body.append(outer);
154
- const inner = document.createElement('div');
155
- inner.style.width = '100%';
156
- outer.append(inner);
157
- const scrollbarWidth = outer.offsetWidth - inner.offsetWidth;
158
- outer.parentNode?.removeChild(outer);
159
- return scrollbarWidth;
160
- };
161
- /**
162
- * Calculates the inner height of an HTML element, accounting for padding.
163
- */
164
- export function getElementInnerHeight(element) {
165
- const { clientHeight } = element;
166
- const { paddingTop, paddingBottom } = getComputedStyle(element);
167
- return (clientHeight -
168
- Number.parseFloat(paddingTop) -
169
- Number.parseFloat(paddingBottom));
170
- }
171
- /**
172
- * Calculates the inner width of an HTML element, accounting for padding.
173
- */
174
- export function getElementInnerWidth(el) {
175
- const { clientWidth } = el;
176
- const { paddingLeft, paddingRight } = getComputedStyle(el);
177
- return (clientWidth -
178
- Number.parseFloat(paddingLeft) -
179
- Number.parseFloat(paddingRight));
180
- }
181
- export const isPrefersDarkTheme = () => !!globalThis.matchMedia?.('(prefers-color-scheme: dark)')?.matches;
182
- export const isPrefersLightTheme = () => !!globalThis.matchMedia?.('(prefers-color-scheme: light)')?.matches;
package/dist/id.cjs DELETED
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateStackBasedId = exports.generateLinearNumericId = exports.createLinearNumericIdGenerator = exports.generateNumericShortId = exports.generateNumericId = exports.generateShortId = exports.generateId = void 0;
4
- const nanoid_1 = require("nanoid");
5
- const DIGITS = '0123456789';
6
- const LATIN_CHARS = 'abcdefghijklmnopqrstuvwxyz';
7
- const ALPHABET = `${LATIN_CHARS}${DIGITS}`;
8
- /**
9
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
10
- * Размер 6
11
- */
12
- exports.generateId = (0, nanoid_1.customAlphabet)(ALPHABET, 6);
13
- /**
14
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
15
- * Размер 4
16
- */
17
- exports.generateShortId = (0, nanoid_1.customAlphabet)(ALPHABET, 4);
18
- /**
19
- * Использует алфавит 0123456789
20
- * Размер 6
21
- */
22
- exports.generateNumericId = (0, nanoid_1.customAlphabet)(DIGITS, 6);
23
- /**
24
- * Использует алфавит 0123456789
25
- * Размер 4
26
- */
27
- exports.generateNumericShortId = (0, nanoid_1.customAlphabet)(DIGITS, 4);
28
- /**
29
- * Создает функцию, которая будет создавать уникальную строку, уникальность которой основана на порядке вызова этой функции
30
- *
31
- * @example
32
- * ```ts
33
- * generateLinearNumericId = createLinearNumericIdGenerator(6);
34
- * generateLinearNumericId() // '000000'
35
- * generateLinearNumericId() // '000001'
36
- * ...
37
- * generateLinearNumericId() // '999999'
38
- * generateLinearNumericId() // '1000000'
39
- * ...
40
- * generateLinearNumericId() // '9999999'
41
- * generateLinearNumericId() // '10000000'
42
- * ```
43
- *
44
- * @param size размер
45
- * @returns {()=>string}
46
- */
47
- const createLinearNumericIdGenerator = (size = 9) => {
48
- let lastCount = 0;
49
- return () => {
50
- return (lastCount++).toString().padStart(size, '0');
51
- };
52
- };
53
- exports.createLinearNumericIdGenerator = createLinearNumericIdGenerator;
54
- /**
55
- *
56
- * @example
57
- * ```ts
58
- * generateLinearNumericId() // '000000000'
59
- * generateLinearNumericId() // '000000001'
60
- * ...
61
- * generateLinearNumericId() // '999999999'
62
- * generateLinearNumericId() // '1000000000'
63
- * ...
64
- * generateLinearNumericId() // '9999999999'
65
- * generateLinearNumericId() // '10000000000'
66
- * ```
67
- *
68
- */
69
- exports.generateLinearNumericId = (0, exports.createLinearNumericIdGenerator)();
70
- /**
71
- * Is not recommended to use.
72
- *
73
- * Generates execution stack based pseudo-id (just sliced string from error stack)
74
- */
75
- const generateStackBasedId = () => new Error().stack.split('\n').slice(1, 4).join('');
76
- exports.generateStackBasedId = generateStackBasedId;
package/dist/id.d.cts DELETED
@@ -1,63 +0,0 @@
1
- /**
2
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
3
- * Размер 6
4
- */
5
- export declare const generateId: (size?: number) => string;
6
- /**
7
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
8
- * Размер 4
9
- */
10
- export declare const generateShortId: (size?: number) => string;
11
- /**
12
- * Использует алфавит 0123456789
13
- * Размер 6
14
- */
15
- export declare const generateNumericId: (size?: number) => string;
16
- /**
17
- * Использует алфавит 0123456789
18
- * Размер 4
19
- */
20
- export declare const generateNumericShortId: (size?: number) => string;
21
- /**
22
- * Создает функцию, которая будет создавать уникальную строку, уникальность которой основана на порядке вызова этой функции
23
- *
24
- * @example
25
- * ```ts
26
- * generateLinearNumericId = createLinearNumericIdGenerator(6);
27
- * generateLinearNumericId() // '000000'
28
- * generateLinearNumericId() // '000001'
29
- * ...
30
- * generateLinearNumericId() // '999999'
31
- * generateLinearNumericId() // '1000000'
32
- * ...
33
- * generateLinearNumericId() // '9999999'
34
- * generateLinearNumericId() // '10000000'
35
- * ```
36
- *
37
- * @param size размер
38
- * @returns {()=>string}
39
- */
40
- export declare const createLinearNumericIdGenerator: (size?: number) => () => string;
41
- /**
42
- *
43
- * @example
44
- * ```ts
45
- * generateLinearNumericId() // '000000000'
46
- * generateLinearNumericId() // '000000001'
47
- * ...
48
- * generateLinearNumericId() // '999999999'
49
- * generateLinearNumericId() // '1000000000'
50
- * ...
51
- * generateLinearNumericId() // '9999999999'
52
- * generateLinearNumericId() // '10000000000'
53
- * ```
54
- *
55
- */
56
- export declare const generateLinearNumericId: () => string;
57
- /**
58
- * Is not recommended to use.
59
- *
60
- * Generates execution stack based pseudo-id (just sliced string from error stack)
61
- */
62
- export declare const generateStackBasedId: () => string;
63
- //# sourceMappingURL=id.d.ts.map
package/dist/id.d.cts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../src/id.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,eAAO,MAAM,UAAU,2BAA8B,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,eAAe,2BAA8B,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,iBAAiB,2BAA4B,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,2BAA4B,CAAC;AAEhE;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,GAAI,OAAM,MAAU,iBAK9D,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,cAAmC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,cACoB,CAAC"}
package/dist/id.d.ts DELETED
@@ -1,63 +0,0 @@
1
- /**
2
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
3
- * Размер 6
4
- */
5
- export declare const generateId: (size?: number) => string;
6
- /**
7
- * Использует алфавит abcdefghijklmnopqrstuvwxyz0123456789
8
- * Размер 4
9
- */
10
- export declare const generateShortId: (size?: number) => string;
11
- /**
12
- * Использует алфавит 0123456789
13
- * Размер 6
14
- */
15
- export declare const generateNumericId: (size?: number) => string;
16
- /**
17
- * Использует алфавит 0123456789
18
- * Размер 4
19
- */
20
- export declare const generateNumericShortId: (size?: number) => string;
21
- /**
22
- * Создает функцию, которая будет создавать уникальную строку, уникальность которой основана на порядке вызова этой функции
23
- *
24
- * @example
25
- * ```ts
26
- * generateLinearNumericId = createLinearNumericIdGenerator(6);
27
- * generateLinearNumericId() // '000000'
28
- * generateLinearNumericId() // '000001'
29
- * ...
30
- * generateLinearNumericId() // '999999'
31
- * generateLinearNumericId() // '1000000'
32
- * ...
33
- * generateLinearNumericId() // '9999999'
34
- * generateLinearNumericId() // '10000000'
35
- * ```
36
- *
37
- * @param size размер
38
- * @returns {()=>string}
39
- */
40
- export declare const createLinearNumericIdGenerator: (size?: number) => () => string;
41
- /**
42
- *
43
- * @example
44
- * ```ts
45
- * generateLinearNumericId() // '000000000'
46
- * generateLinearNumericId() // '000000001'
47
- * ...
48
- * generateLinearNumericId() // '999999999'
49
- * generateLinearNumericId() // '1000000000'
50
- * ...
51
- * generateLinearNumericId() // '9999999999'
52
- * generateLinearNumericId() // '10000000000'
53
- * ```
54
- *
55
- */
56
- export declare const generateLinearNumericId: () => string;
57
- /**
58
- * Is not recommended to use.
59
- *
60
- * Generates execution stack based pseudo-id (just sliced string from error stack)
61
- */
62
- export declare const generateStackBasedId: () => string;
63
- //# sourceMappingURL=id.d.ts.map