@bitfiber/utils 1.1.1 → 1.1.2

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 (418) hide show
  1. package/CONTRIBUTING.md +26 -17
  2. package/LICENSE.txt +1 -1
  3. package/README.md +46 -36
  4. package/dist/cjs/arr/at/at.js +7 -7
  5. package/dist/cjs/arr/at/at.js.map +1 -1
  6. package/dist/cjs/arr/cnd/cnd.js +94 -94
  7. package/dist/cjs/arr/cnd/cnd.js.map +1 -1
  8. package/dist/cjs/arr/diff-arr/diff-arr.js +33 -33
  9. package/dist/cjs/arr/diff-arr/diff-arr.js.map +1 -1
  10. package/dist/cjs/arr/fill/fill.js +7 -7
  11. package/dist/cjs/arr/for-each-arr/for-each-arr.js +21 -21
  12. package/dist/cjs/arr/for-each-arr/for-each-arr.js.map +1 -1
  13. package/dist/cjs/arr/index-by/index-by.js +15 -15
  14. package/dist/cjs/arr/index-by/index-by.js.map +1 -1
  15. package/dist/cjs/arr/index.js +19 -19
  16. package/dist/cjs/arr/pluck/pluck.js +11 -11
  17. package/dist/cjs/arr/within/within.js +9 -9
  18. package/dist/cjs/common/copy/copy.js +83 -83
  19. package/dist/cjs/common/copy/copy.js.map +1 -1
  20. package/dist/cjs/common/equals/equals.js +119 -119
  21. package/dist/cjs/common/equals/equals.js.map +1 -1
  22. package/dist/cjs/common/error.js +13 -13
  23. package/dist/cjs/common/error.js.map +1 -1
  24. package/dist/cjs/common/for-each/for-each.js +36 -36
  25. package/dist/cjs/common/for-each/for-each.js.map +1 -1
  26. package/dist/cjs/common/get-unique-num-id/get-unique-num-id.js +8 -8
  27. package/dist/cjs/common/get-unique-str-id/get-unique-str-id.js +10 -10
  28. package/dist/cjs/common/get-unique-str-id/get-unique-str-id.js.map +1 -1
  29. package/dist/cjs/common/has-iterator/has-iterator.js +7 -7
  30. package/dist/cjs/common/index.js +61 -61
  31. package/dist/cjs/common/interrupt.js +4 -4
  32. package/dist/cjs/common/is/is.js +130 -128
  33. package/dist/cjs/common/is/is.js.map +1 -1
  34. package/dist/cjs/common/is-empty/is-empty.js +28 -28
  35. package/dist/cjs/common/is-empty/is-empty.js.map +1 -1
  36. package/dist/cjs/common/random/random.js +9 -8
  37. package/dist/cjs/common/random/random.js.map +1 -1
  38. package/dist/cjs/common/same/same.js +7 -7
  39. package/dist/cjs/common/stub/stub.js +7 -7
  40. package/dist/cjs/common/to-float/to-float.js +9 -9
  41. package/dist/cjs/common/to-int/to-int.js +9 -9
  42. package/dist/cjs/common/to-sorted-string/to-sorted-string.js +52 -52
  43. package/dist/cjs/common/to-sorted-string/to-sorted-string.js.map +1 -1
  44. package/dist/cjs/common/types.js +2 -2
  45. package/dist/cjs/dom/closest/closest.js +20 -24
  46. package/dist/cjs/dom/closest/closest.js.map +1 -1
  47. package/dist/cjs/dom/document/document.js +18 -18
  48. package/dist/cjs/dom/document/document.js.map +1 -1
  49. package/dist/cjs/dom/download-file/download-file.js +27 -29
  50. package/dist/cjs/dom/download-file/download-file.js.map +1 -1
  51. package/dist/cjs/dom/for-each-elements/for-each-elements.js +12 -12
  52. package/dist/cjs/dom/for-each-elements/for-each-elements.js.map +1 -1
  53. package/dist/cjs/dom/for-each-nodes/for-each-nodes.js +12 -12
  54. package/dist/cjs/dom/for-each-nodes/for-each-nodes.js.map +1 -1
  55. package/dist/cjs/dom/get-all-styles/get-all-styles.js +9 -9
  56. package/dist/cjs/dom/get-body/get-body.js +9 -9
  57. package/dist/cjs/dom/get-html/get-html.js +9 -9
  58. package/dist/cjs/dom/get-non-static-parent/get-non-static-parent.js +8 -8
  59. package/dist/cjs/dom/get-offset-from-doc/get-offset-from-doc.js +17 -17
  60. package/dist/cjs/dom/get-offset-from-parent/get-offset-from-parent.js +41 -41
  61. package/dist/cjs/dom/get-offset-from-parent/get-offset-from-parent.js.map +1 -1
  62. package/dist/cjs/dom/get-offset-from-win/get-offset-from-win.js +7 -7
  63. package/dist/cjs/dom/get-scroll-width/get-scroll-width.js +28 -27
  64. package/dist/cjs/dom/get-scroll-width/get-scroll-width.js.map +1 -1
  65. package/dist/cjs/dom/get-style/get-style.js +21 -21
  66. package/dist/cjs/dom/get-style/get-style.js.map +1 -1
  67. package/dist/cjs/dom/get-styles/get-styles.js +10 -10
  68. package/dist/cjs/dom/get-valid-style-name/get-valid-style-name.js +39 -39
  69. package/dist/cjs/dom/get-valid-style-name/get-valid-style-name.js.map +1 -1
  70. package/dist/cjs/dom/get-window/get-window.js +17 -17
  71. package/dist/cjs/dom/get-window/get-window.js.map +1 -1
  72. package/dist/cjs/dom/has-name/has-name.js +7 -7
  73. package/dist/cjs/dom/index.js +52 -52
  74. package/dist/cjs/dom/is-comment/is-comment.js +7 -7
  75. package/dist/cjs/dom/is-element/is-element.js +7 -7
  76. package/dist/cjs/dom/is-text/is-text.js +7 -7
  77. package/dist/cjs/dom/set-offset-from-parent/set-offset-from-parent.js +38 -38
  78. package/dist/cjs/dom/set-offset-from-parent/set-offset-from-parent.js.map +1 -1
  79. package/dist/cjs/dom/set-style/set-style.js +10 -10
  80. package/dist/cjs/dom/set-styles/set-styles.js +13 -13
  81. package/dist/cjs/dom/types.js +2 -2
  82. package/dist/cjs/env/get-browser/get-browser.js +54 -54
  83. package/dist/cjs/env/get-browser/get-browser.js.map +1 -1
  84. package/dist/cjs/env/get-engine/get-engine.js +18 -18
  85. package/dist/cjs/env/get-engine/get-engine.js.map +1 -1
  86. package/dist/cjs/env/get-os/get-os.js +32 -32
  87. package/dist/cjs/env/get-os/get-os.js.map +1 -1
  88. package/dist/cjs/env/get-platform/get-platform.js +32 -32
  89. package/dist/cjs/env/get-platform/get-platform.js.map +1 -1
  90. package/dist/cjs/env/index.js +44 -44
  91. package/dist/cjs/env/is-browser/is-browser.js +9 -9
  92. package/dist/cjs/env/is-chrome-like/is-chrome-like.js +9 -9
  93. package/dist/cjs/env/is-desktop/is-desktop.js +9 -9
  94. package/dist/cjs/env/is-engine/is-engine.js +9 -9
  95. package/dist/cjs/env/is-firefox-like/is-firefox-like.js +9 -9
  96. package/dist/cjs/env/is-mobile/is-mobile.js +9 -9
  97. package/dist/cjs/env/is-os/is-os.js +9 -9
  98. package/dist/cjs/env/is-portable/is-portable.js +8 -8
  99. package/dist/cjs/env/is-safari-like/is-safari-like.js +9 -9
  100. package/dist/cjs/env/is-stationary/is-stationary.js +8 -8
  101. package/dist/cjs/env/is-tablet/is-tablet.js +9 -9
  102. package/dist/cjs/env/is-tv/is-tv.js +9 -9
  103. package/dist/cjs/env/matches/matches.js +23 -23
  104. package/dist/cjs/env/matches/matches.js.map +1 -1
  105. package/dist/cjs/env/matches-with-browsers/matches-with-browsers.js +35 -35
  106. package/dist/cjs/env/matches-with-browsers/matches-with-browsers.js.map +1 -1
  107. package/dist/cjs/env/matches-with-version/matches-with-version.js +39 -39
  108. package/dist/cjs/env/matches-with-version/matches-with-version.js.map +1 -1
  109. package/dist/cjs/env/private/private.js +58 -58
  110. package/dist/cjs/env/private/private.js.map +1 -1
  111. package/dist/cjs/env/types.js +2 -2
  112. package/dist/cjs/env/user-agent/user-agent.js +24 -24
  113. package/dist/cjs/env/user-agent/user-agent.js.map +1 -1
  114. package/dist/cjs/index.js +10 -10
  115. package/dist/cjs/num/in-range/in-range.js +27 -25
  116. package/dist/cjs/num/in-range/in-range.js.map +1 -1
  117. package/dist/cjs/num/index.js +7 -7
  118. package/dist/cjs/num/round/round.js +8 -8
  119. package/dist/cjs/obj/constant/constant.js +7 -7
  120. package/dist/cjs/obj/deep-constant/deep-constant.js +22 -15
  121. package/dist/cjs/obj/deep-constant/deep-constant.js.map +1 -1
  122. package/dist/cjs/obj/diff-obj/diff-obj.js +45 -45
  123. package/dist/cjs/obj/diff-obj/diff-obj.js.map +1 -1
  124. package/dist/cjs/obj/exclude/exclude.js +15 -15
  125. package/dist/cjs/obj/exclude/exclude.js.map +1 -1
  126. package/dist/cjs/obj/extend/extend.js +44 -40
  127. package/dist/cjs/obj/extend/extend.js.map +1 -1
  128. package/dist/cjs/obj/for-each-obj/for-each-obj.js +13 -13
  129. package/dist/cjs/obj/for-each-obj/for-each-obj.js.map +1 -1
  130. package/dist/cjs/obj/has-own/has-own.js +7 -7
  131. package/dist/cjs/obj/has-own/has-own.js.map +1 -1
  132. package/dist/cjs/obj/include/include.js +15 -15
  133. package/dist/cjs/obj/include/include.js.map +1 -1
  134. package/dist/cjs/obj/index.js +28 -28
  135. package/dist/cjs/obj/keys/keys.js +7 -7
  136. package/dist/cjs/obj/map-obj/map-obj.js +10 -10
  137. package/dist/cjs/obj/map-obj-to-arr/map-obj-to-arr.js +10 -10
  138. package/dist/cjs/obj/values/values.js +10 -10
  139. package/dist/cjs/str/index.js +9 -9
  140. package/dist/cjs/str/to-camel-case/to-camel-case.js +16 -12
  141. package/dist/cjs/str/to-camel-case/to-camel-case.js.map +1 -1
  142. package/dist/cjs/str/to-hash/to-hash.js +17 -18
  143. package/dist/cjs/str/to-hash/to-hash.js.map +1 -1
  144. package/dist/cjs/str/with-capital/with-capital.js +7 -7
  145. package/dist/esm/arr/at/at.js +3 -3
  146. package/dist/esm/arr/at/at.js.map +1 -1
  147. package/dist/esm/arr/cnd/cnd.js +90 -90
  148. package/dist/esm/arr/cnd/cnd.js.map +1 -1
  149. package/dist/esm/arr/diff-arr/diff-arr.js +29 -29
  150. package/dist/esm/arr/diff-arr/diff-arr.js.map +1 -1
  151. package/dist/esm/arr/fill/fill.js +3 -3
  152. package/dist/esm/arr/for-each-arr/for-each-arr.js +17 -17
  153. package/dist/esm/arr/for-each-arr/for-each-arr.js.map +1 -1
  154. package/dist/esm/arr/index-by/index-by.js +11 -11
  155. package/dist/esm/arr/index-by/index-by.js.map +1 -1
  156. package/dist/esm/arr/index.js +8 -8
  157. package/dist/esm/arr/pluck/pluck.js +7 -7
  158. package/dist/esm/arr/within/within.js +5 -5
  159. package/dist/esm/common/copy/copy.js +79 -79
  160. package/dist/esm/common/copy/copy.js.map +1 -1
  161. package/dist/esm/common/equals/equals.js +115 -115
  162. package/dist/esm/common/equals/equals.js.map +1 -1
  163. package/dist/esm/common/error.js +9 -9
  164. package/dist/esm/common/error.js.map +1 -1
  165. package/dist/esm/common/for-each/for-each.js +32 -32
  166. package/dist/esm/common/for-each/for-each.js.map +1 -1
  167. package/dist/esm/common/get-unique-num-id/get-unique-num-id.js +4 -4
  168. package/dist/esm/common/get-unique-str-id/get-unique-str-id.js +6 -6
  169. package/dist/esm/common/get-unique-str-id/get-unique-str-id.js.map +1 -1
  170. package/dist/esm/common/has-iterator/has-iterator.js +3 -3
  171. package/dist/esm/common/index.js +16 -16
  172. package/dist/esm/common/interrupt.js +1 -1
  173. package/dist/esm/common/is/is.js +100 -98
  174. package/dist/esm/common/is/is.js.map +1 -1
  175. package/dist/esm/common/is-empty/is-empty.js +24 -24
  176. package/dist/esm/common/is-empty/is-empty.js.map +1 -1
  177. package/dist/esm/common/random/random.js +5 -4
  178. package/dist/esm/common/random/random.js.map +1 -1
  179. package/dist/esm/common/same/same.js +3 -3
  180. package/dist/esm/common/stub/stub.js +3 -3
  181. package/dist/esm/common/to-float/to-float.js +5 -5
  182. package/dist/esm/common/to-int/to-int.js +5 -5
  183. package/dist/esm/common/to-sorted-string/to-sorted-string.js +48 -48
  184. package/dist/esm/common/to-sorted-string/to-sorted-string.js.map +1 -1
  185. package/dist/esm/common/types.js +1 -1
  186. package/dist/esm/dom/closest/closest.js +16 -20
  187. package/dist/esm/dom/closest/closest.js.map +1 -1
  188. package/dist/esm/dom/document/document.js +13 -13
  189. package/dist/esm/dom/document/document.js.map +1 -1
  190. package/dist/esm/dom/download-file/download-file.js +23 -25
  191. package/dist/esm/dom/download-file/download-file.js.map +1 -1
  192. package/dist/esm/dom/for-each-elements/for-each-elements.js +8 -8
  193. package/dist/esm/dom/for-each-elements/for-each-elements.js.map +1 -1
  194. package/dist/esm/dom/for-each-nodes/for-each-nodes.js +8 -8
  195. package/dist/esm/dom/for-each-nodes/for-each-nodes.js.map +1 -1
  196. package/dist/esm/dom/get-all-styles/get-all-styles.js +5 -5
  197. package/dist/esm/dom/get-body/get-body.js +5 -5
  198. package/dist/esm/dom/get-html/get-html.js +5 -5
  199. package/dist/esm/dom/get-non-static-parent/get-non-static-parent.js +4 -4
  200. package/dist/esm/dom/get-offset-from-doc/get-offset-from-doc.js +13 -13
  201. package/dist/esm/dom/get-offset-from-parent/get-offset-from-parent.js +37 -37
  202. package/dist/esm/dom/get-offset-from-parent/get-offset-from-parent.js.map +1 -1
  203. package/dist/esm/dom/get-offset-from-win/get-offset-from-win.js +3 -3
  204. package/dist/esm/dom/get-scroll-width/get-scroll-width.js +24 -23
  205. package/dist/esm/dom/get-scroll-width/get-scroll-width.js.map +1 -1
  206. package/dist/esm/dom/get-style/get-style.js +17 -17
  207. package/dist/esm/dom/get-style/get-style.js.map +1 -1
  208. package/dist/esm/dom/get-styles/get-styles.js +6 -6
  209. package/dist/esm/dom/get-valid-style-name/get-valid-style-name.js +35 -35
  210. package/dist/esm/dom/get-valid-style-name/get-valid-style-name.js.map +1 -1
  211. package/dist/esm/dom/get-window/get-window.js +13 -13
  212. package/dist/esm/dom/get-window/get-window.js.map +1 -1
  213. package/dist/esm/dom/has-name/has-name.js +3 -3
  214. package/dist/esm/dom/index.js +24 -24
  215. package/dist/esm/dom/is-comment/is-comment.js +3 -3
  216. package/dist/esm/dom/is-element/is-element.js +3 -3
  217. package/dist/esm/dom/is-text/is-text.js +3 -3
  218. package/dist/esm/dom/set-offset-from-parent/set-offset-from-parent.js +34 -34
  219. package/dist/esm/dom/set-offset-from-parent/set-offset-from-parent.js.map +1 -1
  220. package/dist/esm/dom/set-style/set-style.js +6 -6
  221. package/dist/esm/dom/set-styles/set-styles.js +9 -9
  222. package/dist/esm/dom/types.js +1 -1
  223. package/dist/esm/env/get-browser/get-browser.js +49 -49
  224. package/dist/esm/env/get-browser/get-browser.js.map +1 -1
  225. package/dist/esm/env/get-engine/get-engine.js +13 -13
  226. package/dist/esm/env/get-engine/get-engine.js.map +1 -1
  227. package/dist/esm/env/get-os/get-os.js +27 -27
  228. package/dist/esm/env/get-os/get-os.js.map +1 -1
  229. package/dist/esm/env/get-platform/get-platform.js +27 -27
  230. package/dist/esm/env/get-platform/get-platform.js.map +1 -1
  231. package/dist/esm/env/index.js +20 -20
  232. package/dist/esm/env/is-browser/is-browser.js +5 -5
  233. package/dist/esm/env/is-chrome-like/is-chrome-like.js +5 -5
  234. package/dist/esm/env/is-desktop/is-desktop.js +5 -5
  235. package/dist/esm/env/is-engine/is-engine.js +5 -5
  236. package/dist/esm/env/is-firefox-like/is-firefox-like.js +5 -5
  237. package/dist/esm/env/is-mobile/is-mobile.js +5 -5
  238. package/dist/esm/env/is-os/is-os.js +5 -5
  239. package/dist/esm/env/is-portable/is-portable.js +4 -4
  240. package/dist/esm/env/is-safari-like/is-safari-like.js +5 -5
  241. package/dist/esm/env/is-stationary/is-stationary.js +4 -4
  242. package/dist/esm/env/is-tablet/is-tablet.js +5 -5
  243. package/dist/esm/env/is-tv/is-tv.js +5 -5
  244. package/dist/esm/env/matches/matches.js +19 -19
  245. package/dist/esm/env/matches/matches.js.map +1 -1
  246. package/dist/esm/env/matches-with-browsers/matches-with-browsers.js +31 -31
  247. package/dist/esm/env/matches-with-browsers/matches-with-browsers.js.map +1 -1
  248. package/dist/esm/env/matches-with-version/matches-with-version.js +35 -35
  249. package/dist/esm/env/matches-with-version/matches-with-version.js.map +1 -1
  250. package/dist/esm/env/private/private.js +52 -52
  251. package/dist/esm/env/private/private.js.map +1 -1
  252. package/dist/esm/env/types.js +1 -1
  253. package/dist/esm/env/user-agent/user-agent.js +19 -19
  254. package/dist/esm/env/user-agent/user-agent.js.map +1 -1
  255. package/dist/esm/index.js +7 -7
  256. package/dist/esm/num/in-range/in-range.js +23 -21
  257. package/dist/esm/num/in-range/in-range.js.map +1 -1
  258. package/dist/esm/num/index.js +2 -2
  259. package/dist/esm/num/round/round.js +4 -4
  260. package/dist/esm/obj/constant/constant.js +3 -3
  261. package/dist/esm/obj/deep-constant/deep-constant.js +18 -11
  262. package/dist/esm/obj/deep-constant/deep-constant.js.map +1 -1
  263. package/dist/esm/obj/diff-obj/diff-obj.js +41 -41
  264. package/dist/esm/obj/diff-obj/diff-obj.js.map +1 -1
  265. package/dist/esm/obj/exclude/exclude.js +11 -11
  266. package/dist/esm/obj/exclude/exclude.js.map +1 -1
  267. package/dist/esm/obj/extend/extend.js +39 -35
  268. package/dist/esm/obj/extend/extend.js.map +1 -1
  269. package/dist/esm/obj/for-each-obj/for-each-obj.js +9 -9
  270. package/dist/esm/obj/for-each-obj/for-each-obj.js.map +1 -1
  271. package/dist/esm/obj/has-own/has-own.js +3 -3
  272. package/dist/esm/obj/has-own/has-own.js.map +1 -1
  273. package/dist/esm/obj/include/include.js +11 -11
  274. package/dist/esm/obj/include/include.js.map +1 -1
  275. package/dist/esm/obj/index.js +12 -12
  276. package/dist/esm/obj/keys/keys.js +3 -3
  277. package/dist/esm/obj/map-obj/map-obj.js +6 -6
  278. package/dist/esm/obj/map-obj-to-arr/map-obj-to-arr.js +6 -6
  279. package/dist/esm/obj/values/values.js +6 -6
  280. package/dist/esm/str/index.js +3 -3
  281. package/dist/esm/str/to-camel-case/to-camel-case.js +12 -8
  282. package/dist/esm/str/to-camel-case/to-camel-case.js.map +1 -1
  283. package/dist/esm/str/to-hash/to-hash.js +13 -14
  284. package/dist/esm/str/to-hash/to-hash.js.map +1 -1
  285. package/dist/esm/str/with-capital/with-capital.js +3 -3
  286. package/dist/types/arr/at/at.d.ts +7 -7
  287. package/dist/types/arr/at/at.d.ts.map +1 -1
  288. package/dist/types/arr/cnd/cnd.d.ts +117 -117
  289. package/dist/types/arr/cnd/cnd.d.ts.map +1 -1
  290. package/dist/types/arr/diff-arr/diff-arr.d.ts +30 -30
  291. package/dist/types/arr/fill/fill.d.ts +8 -8
  292. package/dist/types/arr/for-each-arr/for-each-arr.d.ts +9 -9
  293. package/dist/types/arr/index-by/index-by.d.ts +9 -9
  294. package/dist/types/arr/index.d.ts +8 -8
  295. package/dist/types/arr/pluck/pluck.d.ts +7 -7
  296. package/dist/types/arr/within/within.d.ts +9 -9
  297. package/dist/types/common/copy/copy.d.ts +6 -6
  298. package/dist/types/common/equals/equals.d.ts +12 -12
  299. package/dist/types/common/error.d.ts +25 -25
  300. package/dist/types/common/for-each/for-each.d.ts +9 -9
  301. package/dist/types/common/get-unique-num-id/get-unique-num-id.d.ts +4 -4
  302. package/dist/types/common/get-unique-str-id/get-unique-str-id.d.ts +6 -4
  303. package/dist/types/common/get-unique-str-id/get-unique-str-id.d.ts.map +1 -1
  304. package/dist/types/common/has-iterator/has-iterator.d.ts +5 -5
  305. package/dist/types/common/index.d.ts +17 -17
  306. package/dist/types/common/interrupt.d.ts +4 -4
  307. package/dist/types/common/is/is.d.ts +136 -136
  308. package/dist/types/common/is-empty/is-empty.d.ts +6 -6
  309. package/dist/types/common/random/random.d.ts +7 -5
  310. package/dist/types/common/random/random.d.ts.map +1 -1
  311. package/dist/types/common/same/same.d.ts +6 -6
  312. package/dist/types/common/stub/stub.d.ts +4 -4
  313. package/dist/types/common/to-float/to-float.d.ts +6 -6
  314. package/dist/types/common/to-int/to-int.d.ts +6 -6
  315. package/dist/types/common/to-sorted-string/to-sorted-string.d.ts +7 -7
  316. package/dist/types/common/types.d.ts +64 -64
  317. package/dist/types/common/types.d.ts.map +1 -1
  318. package/dist/types/dom/closest/closest.d.ts +6 -6
  319. package/dist/types/dom/closest/closest.d.ts.map +1 -1
  320. package/dist/types/dom/document/document.d.ts +12 -12
  321. package/dist/types/dom/download-file/download-file.d.ts +7 -7
  322. package/dist/types/dom/download-file/download-file.d.ts.map +1 -1
  323. package/dist/types/dom/for-each-elements/for-each-elements.d.ts +8 -8
  324. package/dist/types/dom/for-each-nodes/for-each-nodes.d.ts +7 -7
  325. package/dist/types/dom/get-all-styles/get-all-styles.d.ts +5 -5
  326. package/dist/types/dom/get-body/get-body.d.ts +4 -4
  327. package/dist/types/dom/get-html/get-html.d.ts +4 -4
  328. package/dist/types/dom/get-non-static-parent/get-non-static-parent.d.ts +5 -5
  329. package/dist/types/dom/get-offset-from-doc/get-offset-from-doc.d.ts +6 -6
  330. package/dist/types/dom/get-offset-from-parent/get-offset-from-parent.d.ts +7 -7
  331. package/dist/types/dom/get-offset-from-win/get-offset-from-win.d.ts +6 -6
  332. package/dist/types/dom/get-scroll-width/get-scroll-width.d.ts +8 -8
  333. package/dist/types/dom/get-scroll-width/get-scroll-width.d.ts.map +1 -1
  334. package/dist/types/dom/get-style/get-style.d.ts +6 -6
  335. package/dist/types/dom/get-styles/get-styles.d.ts +9 -9
  336. package/dist/types/dom/get-valid-style-name/get-valid-style-name.d.ts +6 -6
  337. package/dist/types/dom/get-window/get-window.d.ts +4 -4
  338. package/dist/types/dom/has-name/has-name.d.ts +6 -6
  339. package/dist/types/dom/index.d.ts +25 -25
  340. package/dist/types/dom/is-comment/is-comment.d.ts +5 -5
  341. package/dist/types/dom/is-element/is-element.d.ts +5 -5
  342. package/dist/types/dom/is-text/is-text.d.ts +5 -5
  343. package/dist/types/dom/set-offset-from-parent/set-offset-from-parent.d.ts +8 -8
  344. package/dist/types/dom/set-style/set-style.d.ts +8 -8
  345. package/dist/types/dom/set-styles/set-styles.d.ts +8 -8
  346. package/dist/types/dom/types.d.ts +19 -19
  347. package/dist/types/env/get-browser/get-browser.d.ts +10 -10
  348. package/dist/types/env/get-engine/get-engine.d.ts +7 -7
  349. package/dist/types/env/get-os/get-os.d.ts +8 -8
  350. package/dist/types/env/get-platform/get-platform.d.ts +7 -7
  351. package/dist/types/env/index.d.ts +21 -21
  352. package/dist/types/env/is-browser/is-browser.d.ts +11 -11
  353. package/dist/types/env/is-chrome-like/is-chrome-like.d.ts +4 -4
  354. package/dist/types/env/is-desktop/is-desktop.d.ts +4 -4
  355. package/dist/types/env/is-engine/is-engine.d.ts +8 -8
  356. package/dist/types/env/is-firefox-like/is-firefox-like.d.ts +4 -4
  357. package/dist/types/env/is-mobile/is-mobile.d.ts +4 -4
  358. package/dist/types/env/is-os/is-os.d.ts +9 -9
  359. package/dist/types/env/is-portable/is-portable.d.ts +4 -4
  360. package/dist/types/env/is-safari-like/is-safari-like.d.ts +4 -4
  361. package/dist/types/env/is-stationary/is-stationary.d.ts +4 -4
  362. package/dist/types/env/is-tablet/is-tablet.d.ts +4 -4
  363. package/dist/types/env/is-tv/is-tv.d.ts +4 -4
  364. package/dist/types/env/matches/matches.d.ts +34 -34
  365. package/dist/types/env/matches-with-browsers/matches-with-browsers.d.ts +23 -23
  366. package/dist/types/env/matches-with-version/matches-with-version.d.ts +6 -6
  367. package/dist/types/env/private/private.d.ts +4 -4
  368. package/dist/types/env/types.d.ts +106 -106
  369. package/dist/types/env/types.d.ts.map +1 -1
  370. package/dist/types/env/user-agent/user-agent.d.ts +9 -9
  371. package/dist/types/index.d.ts +7 -7
  372. package/dist/types/num/in-range/in-range.d.ts +31 -31
  373. package/dist/types/num/in-range/in-range.d.ts.map +1 -1
  374. package/dist/types/num/index.d.ts +2 -2
  375. package/dist/types/num/round/round.d.ts +7 -7
  376. package/dist/types/obj/constant/constant.d.ts +6 -6
  377. package/dist/types/obj/deep-constant/deep-constant.d.ts +7 -6
  378. package/dist/types/obj/deep-constant/deep-constant.d.ts.map +1 -1
  379. package/dist/types/obj/diff-obj/diff-obj.d.ts +37 -37
  380. package/dist/types/obj/exclude/exclude.d.ts +7 -7
  381. package/dist/types/obj/extend/extend.d.ts +18 -16
  382. package/dist/types/obj/extend/extend.d.ts.map +1 -1
  383. package/dist/types/obj/for-each-obj/for-each-obj.d.ts +8 -8
  384. package/dist/types/obj/has-own/has-own.d.ts +8 -8
  385. package/dist/types/obj/has-own/has-own.d.ts.map +1 -1
  386. package/dist/types/obj/include/include.d.ts +7 -7
  387. package/dist/types/obj/index.d.ts +12 -12
  388. package/dist/types/obj/keys/keys.d.ts +6 -6
  389. package/dist/types/obj/map-obj/map-obj.d.ts +7 -7
  390. package/dist/types/obj/map-obj-to-arr/map-obj-to-arr.d.ts +7 -7
  391. package/dist/types/obj/values/values.d.ts +6 -6
  392. package/dist/types/str/index.d.ts +3 -3
  393. package/dist/types/str/to-camel-case/to-camel-case.d.ts +10 -10
  394. package/dist/types/str/to-camel-case/to-camel-case.d.ts.map +1 -1
  395. package/dist/types/str/to-hash/to-hash.d.ts +7 -7
  396. package/dist/types/str/to-hash/to-hash.d.ts.map +1 -1
  397. package/dist/types/str/with-capital/with-capital.d.ts +6 -6
  398. package/package.json +10 -10
  399. package/src/arr/at/at.ts +1 -2
  400. package/src/arr/diff-arr/diff-arr.ts +1 -1
  401. package/src/common/error.ts +2 -2
  402. package/src/common/get-unique-str-id/get-unique-str-id.ts +2 -0
  403. package/src/common/is/is.ts +2 -2
  404. package/src/common/is-empty/is-empty.ts +1 -1
  405. package/src/common/random/random.ts +6 -3
  406. package/src/dom/closest/closest.ts +4 -5
  407. package/src/dom/download-file/download-file.ts +3 -2
  408. package/src/dom/get-offset-from-parent/get-offset-from-parent.ts +2 -2
  409. package/src/dom/get-scroll-width/get-scroll-width.ts +3 -2
  410. package/src/dom/get-style/get-style.ts +3 -3
  411. package/src/dom/set-offset-from-parent/set-offset-from-parent.ts +3 -3
  412. package/src/env/matches-with-browsers/matches-with-browsers.ts +1 -1
  413. package/src/num/in-range/in-range.ts +3 -1
  414. package/src/obj/deep-constant/deep-constant.ts +12 -4
  415. package/src/obj/extend/extend.ts +11 -3
  416. package/src/obj/has-own/has-own.ts +1 -2
  417. package/src/str/to-camel-case/to-camel-case.ts +7 -1
  418. package/src/str/to-hash/to-hash.ts +1 -2
package/CONTRIBUTING.md CHANGED
@@ -2,7 +2,8 @@
2
2
 
3
3
  Thank you for considering contributing to our "@bitfiber/utils" library!
4
4
  We welcome contributions from the community to help improve and expand the functionality of our library.
5
- By contributing, you can help make our library more useful for developers across different projects and domains.
5
+ By contributing, you can help make our library more useful for developers across different projects
6
+ and domains.
6
7
 
7
8
  ## Code of Conduct
8
9
 
@@ -22,12 +23,12 @@ To contribute to our "@bitfiber/utils" library, follow these steps:
22
23
  see [guide](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository).
23
24
  Branch naming conventions:
24
25
 
25
- - For features: `feature/<your-feature-branch-name>`
26
- - For bug fixes: `fix/<your-bugfix-branch-name>`.
27
- - For tests: `tests/<your-tests-branch-name>`.
28
- - For docs: `docs/<your-docs-branch-name>`.
29
- - For refactoring: `refactor/<your-refactoring-branch-name>`
30
- - For performance improving: `perf/<your-performance-branch-name>`
26
+ - For features: `feature/<your-feature-branch-name>`
27
+ - For bug fixes: `fix/<your-bugfix-branch-name>`.
28
+ - For tests: `tests/<your-tests-branch-name>`.
29
+ - For docs: `docs/<your-docs-branch-name>`.
30
+ - For refactoring: `refactor/<your-refactoring-branch-name>`
31
+ - For performance improving: `perf/<your-performance-branch-name>`
31
32
 
32
33
  4. Switch to the newly created branch.
33
34
 
@@ -80,25 +81,33 @@ To contribute to our "@bitfiber/utils" library, follow these steps:
80
81
 
81
82
  ## Guidelines and Best Practices
82
83
 
83
- To ensure that your contributions are accepted and integrated smoothly, please adhere to the following guidelines and
84
- best practices:
84
+ To ensure that your contributions are accepted and integrated smoothly, please adhere to
85
+ the following guidelines and best practices:
85
86
 
86
- * **Follow the Style Guide**: Maintain consistency with the existing codebase by following our eslint coding style.
87
+ * **Follow the Style Guide**:
88
+ Maintain consistency with the existing codebase by following our eslint coding style.
87
89
 
88
- * **Write Tests**: Ensure that your changes are covered by tests. Write unit tests for new functionality and update
90
+ * **Write Tests**:
91
+ Ensure that your changes are covered by tests. Write unit tests for new functionality and update
89
92
  existing tests for changes to ensure full test coverage.
90
93
 
91
- * **Document Changes**: Provide clear and concise documentation for any new functionality or changes made to existing
92
- functionality. This includes updating README.md, adding JSDoc comments, and any other relevant documentation.
94
+ * **Document Changes**:
95
+ Provide clear and concise documentation for any new functionality or changes made to existing
96
+ functionality. This includes updating README.md, adding JSDoc comments, and any other relevant
97
+ documentation.
93
98
 
94
- * **Keep PRs Small and Focused**: Submit separate PRs for each logical change or set of related changes. This makes it
99
+ * **Keep PRs Small and Focused**:
100
+ Submit separate PRs for each logical change or set of related changes. This makes it
95
101
  easier to review and merge your contributions.
96
102
 
97
- * **Be Responsive**: Be responsive to feedback and comments on your PRs. Address any review comments promptly and make
103
+ * **Be Responsive**:
104
+ Be responsive to feedback and comments on your PRs. Address any review comments promptly and make
98
105
  necessary adjustments to your code.
99
106
 
100
- * **Respect Licensing**: Ensure that your contributions adhere to the licensing terms of the project. If you're
101
- introducing dependencies with different licenses, make sure they are compatible with our project's license.
107
+ * **Respect Licensing**:
108
+ Ensure that your contributions adhere to the licensing terms of the project. If you're
109
+ introducing dependencies with different licenses, make sure they are compatible with our project's
110
+ license.
102
111
 
103
112
  ## Need Help?
104
113
 
package/LICENSE.txt CHANGED
@@ -186,7 +186,7 @@
186
186
  same "printed page" as the copyright notice for easier
187
187
  identification within third-party archives.
188
188
 
189
- Copyright © 2023-2024 Oleksandr Zmanovskyi
189
+ Copyright © 2023-2026 Oleksandr Zmanovskyi
190
190
 
191
191
  Licensed under the Apache License, Version 2.0 (the "License");
192
192
  you may not use this file except in compliance with the License.
package/README.md CHANGED
@@ -4,36 +4,39 @@
4
4
  [![GitHub star chart](https://img.shields.io/github/stars/bitfiber/utils?style=social)](https://star-history.com/#bitfiber/utils)
5
5
  [![GitHub fork](https://img.shields.io/github/forks/bitfiber/utils?style=social)](https://github.com/bitfiber/utils/fork)
6
6
 
7
- The "@bitfiber/utils" library is a collection of versatile utility functions designed to streamline common tasks and
8
- enhance the development experience in JavaScript. With a focus on simplicity and reusability, this library provides a
9
- range of functions that cover various aspects of programming, making it a valuable resource for developers across
10
- different projects and domains.
7
+ The "@bitfiber/utils" library is a collection of versatile utility functions designed to streamline
8
+ common tasks and enhance the development experience in JavaScript. With a focus on simplicity and
9
+ reusability, this library provides a range of functions that cover various aspects of programming,
10
+ making it a valuable resource for developers across different projects and domains.
11
11
 
12
12
  ---
13
13
 
14
14
  ## Key Features
15
15
 
16
- 1. **Strict Typing:** The library leverages TypeScript to enforce strict typing, ensuring robust
17
- type checking at compile time. This reduces the likelihood of runtime errors and enhances code
18
- reliability. TypeScript's type inference capabilities also aid in writing cleaner and more
19
- maintainable code.
16
+ 1. **Strict Typing:**
17
+ The library leverages TypeScript to enforce strict typing, ensuring robust type checking at
18
+ compile time. This reduces the likelihood of runtime errors and enhances code reliability.
19
+ TypeScript's type inference capabilities also aid in writing cleaner and more maintainable code.
20
20
 
21
- 2. **Tree Shaking:** The library's modular design enables tree shaking, allowing developers to
22
- optimize bundle sizes by selectively importing only the necessary functionalities.
23
- This eliminates unused code, resulting in smaller and more efficient applications.
21
+ 2. **Tree Shaking:**
22
+ The library's modular design enables tree shaking, allowing developers to optimize bundle sizes
23
+ by selectively importing only the necessary functionalities. This eliminates unused code,
24
+ resulting in smaller and more efficient applications.
24
25
 
25
26
  3. **Common Use Cases:**
26
27
 
27
28
  * Common Functions: Additional general-purpose utilities for tasks such as type checking, and more.
28
29
  * String Manipulation: Functions for capitalizing strings, converting case, and more.
29
- * Working with Numbers: Functions for numerical operations, such as rounding, formatting, converting, and more.
30
- * Array Operations: Helper functions for working with arrays, such as comparison, traversal, mapping, and more.
31
- * Object Operations: Utilities for working with objects, including functions for merging objects, deep cloning,
32
- property access, and more.
33
- * DOM Manipulation: Utilities for interacting with the Document Object Model (DOM), including functions for style
34
- manipulation, traversal, and more.
35
- * Environment Handling: Functions for utilizing User Agent information for tailored content delivery and feature
36
- adaptation.
30
+ * Working with Numbers: Functions for numerical operations, such as rounding, formatting, converting,
31
+ and more.
32
+ * Array Operations: Helper functions for working with arrays, such as comparison, traversal, mapping,
33
+ and more.
34
+ * Object Operations: Utilities for working with objects, including functions for merging objects,
35
+ deep cloning, property access, and more.
36
+ * DOM Manipulation: Utilities for interacting with the Document Object Model (DOM), including
37
+ functions for style manipulation, traversal, and more.
38
+ * Environment Handling: Functions for utilizing User Agent information for tailored content delivery
39
+ and feature adaptation.
37
40
 
38
41
  ---
39
42
 
@@ -86,7 +89,7 @@ By participating, you are expected to uphold this code.
86
89
  This project is released under the Apache 2.0 License.
87
90
  You can find the full text of the license in the [LICENSE](https://github.com/bitfiber/utils/blob/main/LICENSE.txt)
88
91
  file.
89
- Copyright © 2023-2024 Oleksandr Zmanovskyi. All rights reserved.
92
+ Copyright © 2023-2026 Oleksandr Zmanovskyi. All rights reserved.
90
93
 
91
94
  ---
92
95
 
@@ -319,7 +322,9 @@ getUniqueNumId(); // 11116
319
322
 
320
323
  ### `getUniqueStrId`
321
324
 
322
- Returns a unique string identifier for the current session
325
+ Returns a unique string identifier for the current session.
326
+ Uses Math.random for salt generation which is NOT cryptographically secure.
327
+ Do not use for security-sensitive purposes such as tokens or passwords
323
328
  `@returns string`
324
329
 
325
330
  **Example:**
@@ -817,7 +822,7 @@ isUsualObject([]); // false
817
822
 
818
823
  ### `isEmpty`
819
824
 
820
- Returns true if the value is empty (null, undefined, NaN, Infinity, '', {}, [], Int32Array(), Set(), Map()),
825
+ Returns true if the value is empty (null, undefined, '', {}, [], Int32Array(), Set(), Map()),
821
826
  otherwise false
822
827
  `@param value: any`
823
828
  `@returns boolean`
@@ -844,8 +849,10 @@ isEmpty(new Map([[1, 1]])); // false
844
849
 
845
850
  ### `random`
846
851
 
847
- Returns a random integer between 0 and number, not exceeding a certain number of digits
848
- `@param numberOfDigits?: number` - number of digits (default: 7, maximum: 15)
852
+ Returns a random integer between 0 and 10^numberOfDigits - 1.
853
+ Uses Math.random which is NOT cryptographically secure.
854
+ Do not use for security-sensitive purposes such as tokens or passwords
855
+ `@param numberOfDigits?: number` - number of digits (default: 7, maximum: 15)
849
856
  `@returns number`
850
857
 
851
858
  **Example:**
@@ -973,7 +980,8 @@ const readOnlyObj = constant({a: 1});
973
980
 
974
981
  ### `deepConstant`
975
982
 
976
- Makes an object and its nested objects read-only
983
+ Makes an object and its nested objects read-only.
984
+ Objects that have been visited will be ignored to prevent looping
977
985
  `<T extends Obj>`
978
986
  `@param obj: T` - any object
979
987
  `@returns Readonly<T>`
@@ -1041,11 +1049,12 @@ const obj = exclude({a: 1, b: 2}, 'b'); // {a: 1}
1041
1049
 
1042
1050
  ### `extend`
1043
1051
 
1044
- Copies all enumerable own properties from one or more source objects to a target object.
1045
- It returns the modified target object
1046
- `<T extends Obj, U extends Obj[]>`
1047
- `@param target: T` - target object
1048
- `@param ...sources: U` - source objects
1052
+ Copies all enumerable own properties from one or more source objects to a target object.
1053
+ It returns the modified target object.
1054
+ Keys __proto__, constructor and prototype are skipped to prevent prototype pollution
1055
+ `<T extends Obj, U extends Obj[]>`
1056
+ `@param target: T` - target object
1057
+ `@param ...sources: U` - source objects
1049
1058
  `@returns T & ValueIntersection<typeof sources>`
1050
1059
 
1051
1060
  **Example:**
@@ -1061,8 +1070,9 @@ const obj = extend({a: 1}, {b: 2}); // {a: 1, b: 2}
1061
1070
  ### `extendAll`
1062
1071
 
1063
1072
  Copies all enumerable own properties from one or more source objects to a target object
1064
- and copies enumerable properties from nested source objects to nested target objects
1065
- It returns the modified target object
1073
+ and copies enumerable properties from nested source objects to nested target objects.
1074
+ It returns the modified target object.
1075
+ Keys __proto__, constructor and prototype are skipped to prevent prototype pollution
1066
1076
  `<T extends Obj, U extends Obj[]>`
1067
1077
  `@param target: T` - target object
1068
1078
  `@param ...sources: U` - source objects
@@ -1303,9 +1313,9 @@ arr.filter(cnd({name: {notEqual: [/^Alex$/, /^Mary$/]}})); // [{name: 'Jack'}]
1303
1313
 
1304
1314
  ### `diffArr`
1305
1315
 
1306
- Returns the difference between two arrays
1307
- Strict comparison of array items is applied
1308
- The order doesn't matter
1316
+ Returns the difference between two arrays
1317
+ Strict comparison of array items is applied
1318
+ The order doesn't matter, duplicate values are ignored
1309
1319
  `<T extends NumStr>`
1310
1320
  `@param arr1: T[]` - array 1
1311
1321
  `@param arr2: T[]` - array 2
@@ -2386,7 +2396,7 @@ to browser version conditions
2386
2396
  {
2387
2397
  browserName?: versionCondition(x.x...x | [~ >= > <= <]x.x...x),
2388
2398
  engines?: engineName | {
2389
- engineNane: versionCondition(x.x...x | [~ >= > <= <]x.x...x)
2399
+ engineName: versionCondition(x.x...x | [~ >= > <= <]x.x...x)
2390
2400
  ...
2391
2401
  }
2392
2402
  ...
@@ -1,8 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.at = void 0;
4
- function at(arr, index) {
5
- return index < 0 ? arr[arr.length + index] : arr[index];
6
- }
7
- exports.at = at;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.at = void 0;
4
+ function at(arr, index) {
5
+ return arr.at(index);
6
+ }
7
+ exports.at = at;
8
8
  //# sourceMappingURL=at.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"at.js","sourceRoot":"","sources":["../../../../src/arr/at/at.ts"],"names":[],"mappings":";;;AAMA,SAAgB,EAAE,CAAI,GAAQ,EAAE,KAAa;IAE3C,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC1D,CAAC;AAHD,gBAGC"}
1
+ {"version":3,"file":"at.js","sourceRoot":"","sources":["../../../../src/arr/at/at.ts"],"names":[],"mappings":";;;AAMA,SAAgB,EAAE,CAAI,GAAQ,EAAE,KAAa;IAC3C,OAAO,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAFD,gBAEC"}
@@ -1,95 +1,95 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cnd = void 0;
4
- const common_1 = require("../../common");
5
- const obj_1 = require("../../obj");
6
- function cnd(conditions) {
7
- if ((0, common_1.isFunction)(conditions)) {
8
- return conditions;
9
- }
10
- else if ('is' in conditions) {
11
- return value => (0, common_1.same)(conditions.is, value);
12
- }
13
- else if ('or' in conditions) {
14
- return value => ((0, common_1.isArray)(conditions.or)
15
- ? conditions.or.some(item => (0, common_1.same)(item, value))
16
- : cndErr());
17
- }
18
- else if ('not' in conditions) {
19
- return value => ((0, common_1.isArray)(conditions.not)
20
- ? !conditions.not.some(item => (0, common_1.same)(item, value))
21
- : cndErr());
22
- }
23
- else if ('equal' in conditions) {
24
- return value => fit(conditions.equal, value);
25
- }
26
- else if ('orEqual' in conditions) {
27
- return value => ((0, common_1.isArray)(conditions.orEqual)
28
- ? conditions.orEqual.some(item => fit(item, value))
29
- : cndErr());
30
- }
31
- else if ('notEqual' in conditions) {
32
- return value => ((0, common_1.isArray)(conditions.notEqual)
33
- ? !conditions.notEqual.some(item => fit(item, value))
34
- : cndErr());
35
- }
36
- else {
37
- return obj => {
38
- if ((0, common_1.isObject)(obj)) {
39
- for (const key in conditions) {
40
- if ((0, obj_1.hasOwn)(conditions, key)) {
41
- const value = obj[key];
42
- const condition = conditions[key];
43
- if ((0, common_1.isRegExp)(condition)) {
44
- if (!fit(condition, value)) {
45
- return false;
46
- }
47
- }
48
- else if ('is' in condition) {
49
- if (!(0, common_1.same)(condition.is, value)) {
50
- return false;
51
- }
52
- }
53
- else if ('or' in condition) {
54
- if (!condition.or.some(item => (0, common_1.same)(item, value))) {
55
- return false;
56
- }
57
- }
58
- else if ('not' in condition) {
59
- if (condition.not.some(item => (0, common_1.same)(item, value))) {
60
- return false;
61
- }
62
- }
63
- else if ('equal' in condition) {
64
- if (!fit(condition.equal, value)) {
65
- return false;
66
- }
67
- }
68
- else if ('orEqual' in condition) {
69
- if (!condition.orEqual.some(item => fit(item, value))) {
70
- return false;
71
- }
72
- }
73
- else if ('notEqual' in condition) {
74
- if (condition.notEqual.some(item => fit(item, value))) {
75
- return false;
76
- }
77
- }
78
- }
79
- }
80
- return true;
81
- }
82
- else {
83
- return false;
84
- }
85
- };
86
- }
87
- }
88
- exports.cnd = cnd;
89
- function fit(condition, value) {
90
- return (0, common_1.isRegExp)(condition) ? (0, common_1.isString)(value) && condition.test(value) : (0, common_1.equals)(condition, value);
91
- }
92
- function cndErr() {
93
- throw new common_1.BfError('"or", "not", "orEqual" and "notEqual" must be an array', { code: 'bf_utils_arr_cnd_1' });
94
- }
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cnd = void 0;
4
+ const common_1 = require("../../common");
5
+ const obj_1 = require("../../obj");
6
+ function cnd(conditions) {
7
+ if ((0, common_1.isFunction)(conditions)) {
8
+ return conditions;
9
+ }
10
+ else if ('is' in conditions) {
11
+ return value => (0, common_1.same)(conditions.is, value);
12
+ }
13
+ else if ('or' in conditions) {
14
+ return value => ((0, common_1.isArray)(conditions.or)
15
+ ? conditions.or.some(item => (0, common_1.same)(item, value))
16
+ : cndErr());
17
+ }
18
+ else if ('not' in conditions) {
19
+ return value => ((0, common_1.isArray)(conditions.not)
20
+ ? !conditions.not.some(item => (0, common_1.same)(item, value))
21
+ : cndErr());
22
+ }
23
+ else if ('equal' in conditions) {
24
+ return value => fit(conditions.equal, value);
25
+ }
26
+ else if ('orEqual' in conditions) {
27
+ return value => ((0, common_1.isArray)(conditions.orEqual)
28
+ ? conditions.orEqual.some(item => fit(item, value))
29
+ : cndErr());
30
+ }
31
+ else if ('notEqual' in conditions) {
32
+ return value => ((0, common_1.isArray)(conditions.notEqual)
33
+ ? !conditions.notEqual.some(item => fit(item, value))
34
+ : cndErr());
35
+ }
36
+ else {
37
+ return obj => {
38
+ if ((0, common_1.isObject)(obj)) {
39
+ for (const key in conditions) {
40
+ if ((0, obj_1.hasOwn)(conditions, key)) {
41
+ const value = obj[key];
42
+ const condition = conditions[key];
43
+ if ((0, common_1.isRegExp)(condition)) {
44
+ if (!fit(condition, value)) {
45
+ return false;
46
+ }
47
+ }
48
+ else if ('is' in condition) {
49
+ if (!(0, common_1.same)(condition.is, value)) {
50
+ return false;
51
+ }
52
+ }
53
+ else if ('or' in condition) {
54
+ if (!condition.or.some(item => (0, common_1.same)(item, value))) {
55
+ return false;
56
+ }
57
+ }
58
+ else if ('not' in condition) {
59
+ if (condition.not.some(item => (0, common_1.same)(item, value))) {
60
+ return false;
61
+ }
62
+ }
63
+ else if ('equal' in condition) {
64
+ if (!fit(condition.equal, value)) {
65
+ return false;
66
+ }
67
+ }
68
+ else if ('orEqual' in condition) {
69
+ if (!condition.orEqual.some(item => fit(item, value))) {
70
+ return false;
71
+ }
72
+ }
73
+ else if ('notEqual' in condition) {
74
+ if (condition.notEqual.some(item => fit(item, value))) {
75
+ return false;
76
+ }
77
+ }
78
+ }
79
+ }
80
+ return true;
81
+ }
82
+ else {
83
+ return false;
84
+ }
85
+ };
86
+ }
87
+ }
88
+ exports.cnd = cnd;
89
+ function fit(condition, value) {
90
+ return (0, common_1.isRegExp)(condition) ? (0, common_1.isString)(value) && condition.test(value) : (0, common_1.equals)(condition, value);
91
+ }
92
+ function cndErr() {
93
+ throw new common_1.BfError('"or", "not", "orEqual" and "notEqual" must be an array', { code: 'bf_utils_arr_cnd_1' });
94
+ }
95
95
  //# sourceMappingURL=cnd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cnd.js","sourceRoot":"","sources":["../../../../src/arr/cnd/cnd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cnd.js","sourceRoot":"","sources":["../../../../src/arr/cnd/cnd.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,34 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.diffArr = void 0;
4
- function diffArr(arr1, arr2) {
5
- let isEqual = true;
6
- const only1 = [];
7
- const only2 = [];
8
- const equal = [];
9
- const map1 = new Map(arr1.map(value => [value, true]));
10
- const map2 = new Map(arr2.map(value => [value, true]));
11
- for (const value of map1.keys()) {
12
- if (!map2.has(value)) {
13
- isEqual = false;
14
- only1.push(value);
15
- }
16
- else {
17
- equal.push(value);
18
- }
19
- }
20
- for (const value of map2.keys()) {
21
- if (!map1.has(value)) {
22
- isEqual = false;
23
- only2.push(value);
24
- }
25
- }
26
- return {
27
- only1,
28
- only2,
29
- equal,
30
- isEqual,
31
- };
32
- }
33
- exports.diffArr = diffArr;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.diffArr = void 0;
4
+ function diffArr(arr1, arr2) {
5
+ let isEqual = true;
6
+ const only1 = [];
7
+ const only2 = [];
8
+ const equal = [];
9
+ const map1 = new Map(arr1.map(value => [value, true]));
10
+ const map2 = new Map(arr2.map(value => [value, true]));
11
+ for (const value of map1.keys()) {
12
+ if (!map2.has(value)) {
13
+ isEqual = false;
14
+ only1.push(value);
15
+ }
16
+ else {
17
+ equal.push(value);
18
+ }
19
+ }
20
+ for (const value of map2.keys()) {
21
+ if (!map1.has(value)) {
22
+ isEqual = false;
23
+ only2.push(value);
24
+ }
25
+ }
26
+ return {
27
+ only1,
28
+ only2,
29
+ equal,
30
+ isEqual,
31
+ };
32
+ }
33
+ exports.diffArr = diffArr;
34
34
  //# sourceMappingURL=diff-arr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diff-arr.js","sourceRoot":"","sources":["../../../../src/arr/diff-arr/diff-arr.ts"],"names":[],"mappings":";;;AAmCA,SAAgB,OAAO,CAAmB,IAAS,EAAE,IAAS;IAC5D,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACpB,OAAO,GAAG,KAAK,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnB;aAAM;YACL,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnB;KACF;IAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;QAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACpB,OAAO,GAAG,KAAK,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnB;KACF;IAED,OAAO;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,OAAO;KACR,CAAC;AACJ,CAAC;AA9BD,0BA8BC"}
1
+ {"version":3,"file":"diff-arr.js","sourceRoot":"","sources":["../../../../src/arr/diff-arr/diff-arr.ts"],"names":[],"mappings":";;;AAmCA,SAAgB,OAAO,CAAmB,IAAS,EAAE,IAAS;IAC5D,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,GAAG,KAAK,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,GAAG,KAAK,CAAC;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK;QACL,KAAK;QACL,KAAK;QACL,OAAO;KACR,CAAC;AACJ,CAAC;AA9BD,0BA8BC"}
@@ -1,8 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fill = void 0;
4
- function fill(quantity, handler, offset = 1) {
5
- return Array(quantity).fill(null).map((item, index) => handler(index + offset, index));
6
- }
7
- exports.fill = fill;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fill = void 0;
4
+ function fill(quantity, handler, offset = 1) {
5
+ return Array(quantity).fill(null).map((item, index) => handler(index + offset, index));
6
+ }
7
+ exports.fill = fill;
8
8
  //# sourceMappingURL=fill.js.map
@@ -1,22 +1,22 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.forEachArr = void 0;
4
- const common_1 = require("../../common");
5
- function forEachArr(arr, handler, reverse) {
6
- if (reverse) {
7
- for (let i = arr.length - 1; i >= 0; i--) {
8
- if (handler(arr[i], i, arr) === common_1.INTERRUPT) {
9
- return;
10
- }
11
- }
12
- }
13
- else {
14
- for (let i = 0; i < arr.length; i++) {
15
- if (handler(arr[i], i, arr) === common_1.INTERRUPT) {
16
- return;
17
- }
18
- }
19
- }
20
- }
21
- exports.forEachArr = forEachArr;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.forEachArr = void 0;
4
+ const common_1 = require("../../common");
5
+ function forEachArr(arr, handler, reverse) {
6
+ if (reverse) {
7
+ for (let i = arr.length - 1; i >= 0; i--) {
8
+ if (handler(arr[i], i, arr) === common_1.INTERRUPT) {
9
+ return;
10
+ }
11
+ }
12
+ }
13
+ else {
14
+ for (let i = 0; i < arr.length; i++) {
15
+ if (handler(arr[i], i, arr) === common_1.INTERRUPT) {
16
+ return;
17
+ }
18
+ }
19
+ }
20
+ }
21
+ exports.forEachArr = forEachArr;
22
22
  //# sourceMappingURL=for-each-arr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"for-each-arr.js","sourceRoot":"","sources":["../../../../src/arr/for-each-arr/for-each-arr.ts"],"names":[],"mappings":";;;AAAA,yCAAwD;AASxD,SAAgB,UAAU,CAAyC,GAAM,EACvE,OAAiD,EAAE,OAAiB;IACpE,IAAI,OAAO,EAAE;QACX,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACxC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,kBAAS,EAAE;gBACzC,OAAO;aACR;SACF;KACF;SAAM;QACL,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,kBAAS,EAAE;gBACzC,OAAO;aACR;SACF;KACF;AACH,CAAC;AAfD,gCAeC"}
1
+ {"version":3,"file":"for-each-arr.js","sourceRoot":"","sources":["../../../../src/arr/for-each-arr/for-each-arr.ts"],"names":[],"mappings":";;;AAAA,yCAAwD;AASxD,SAAgB,UAAU,CAAyC,GAAM,EACvE,OAAiD,EAAE,OAAiB;IACpE,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,kBAAS,EAAE,CAAC;gBAC1C,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,kBAAS,EAAE,CAAC;gBAC1C,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAfD,gCAeC"}