@fluixi/utils 1.0.0-alpha.100

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 (364) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +68 -0
  3. package/dist/index.cjs +2858 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +1 -0
  7. package/dist/index.mjs +2838 -0
  8. package/dist/lib/array/advanced.cjs +2227 -0
  9. package/dist/lib/array/advanced.d.ts +1116 -0
  10. package/dist/lib/array/advanced.d.ts.map +1 -0
  11. package/dist/lib/array/advanced.js +2429 -0
  12. package/dist/lib/array/advanced.mjs +2204 -0
  13. package/dist/lib/array/array.cjs +57 -0
  14. package/dist/lib/array/array.d.ts +6 -0
  15. package/dist/lib/array/array.d.ts.map +1 -0
  16. package/dist/lib/array/array.js +31 -0
  17. package/dist/lib/array/array.mjs +36 -0
  18. package/dist/lib/array/index.cjs +2344 -0
  19. package/dist/lib/array/index.d.ts +4 -0
  20. package/dist/lib/array/index.d.ts.map +1 -0
  21. package/dist/lib/array/index.js +3 -0
  22. package/dist/lib/array/index.mjs +2322 -0
  23. package/dist/lib/array/utils.cjs +103 -0
  24. package/dist/lib/array/utils.d.ts +100 -0
  25. package/dist/lib/array/utils.d.ts.map +1 -0
  26. package/dist/lib/array/utils.js +165 -0
  27. package/dist/lib/array/utils.mjs +82 -0
  28. package/dist/lib/color/color.cjs +2190 -0
  29. package/dist/lib/color/color.d.ts +366 -0
  30. package/dist/lib/color/color.d.ts.map +1 -0
  31. package/dist/lib/color/color.js +722 -0
  32. package/dist/lib/color/color.mjs +2167 -0
  33. package/dist/lib/color/constants.cjs +380 -0
  34. package/dist/lib/color/constants.d.ts +361 -0
  35. package/dist/lib/color/constants.d.ts.map +1 -0
  36. package/dist/lib/color/constants.js +358 -0
  37. package/dist/lib/color/constants.mjs +359 -0
  38. package/dist/lib/color/conversions.cjs +629 -0
  39. package/dist/lib/color/conversions.d.ts +166 -0
  40. package/dist/lib/color/conversions.d.ts.map +1 -0
  41. package/dist/lib/color/conversions.js +766 -0
  42. package/dist/lib/color/conversions.mjs +608 -0
  43. package/dist/lib/color/helpers.cjs +2534 -0
  44. package/dist/lib/color/helpers.d.ts +75 -0
  45. package/dist/lib/color/helpers.d.ts.map +1 -0
  46. package/dist/lib/color/helpers.js +419 -0
  47. package/dist/lib/color/helpers.mjs +2511 -0
  48. package/dist/lib/color/index.cjs +2641 -0
  49. package/dist/lib/color/index.d.ts +12 -0
  50. package/dist/lib/color/index.d.ts.map +1 -0
  51. package/dist/lib/color/index.js +15 -0
  52. package/dist/lib/color/index.mjs +2619 -0
  53. package/dist/lib/color/types.cjs +18 -0
  54. package/dist/lib/color/types.d.ts +179 -0
  55. package/dist/lib/color/types.d.ts.map +1 -0
  56. package/dist/lib/color/types.js +1 -0
  57. package/dist/lib/color/types.mjs +0 -0
  58. package/dist/lib/color/utils.cjs +962 -0
  59. package/dist/lib/color/utils.d.ts +199 -0
  60. package/dist/lib/color/utils.d.ts.map +1 -0
  61. package/dist/lib/color/utils.js +858 -0
  62. package/dist/lib/color/utils.mjs +939 -0
  63. package/dist/lib/compare/comparators.cjs +171 -0
  64. package/dist/lib/compare/comparators.d.ts +65 -0
  65. package/dist/lib/compare/comparators.d.ts.map +1 -0
  66. package/dist/lib/compare/comparators.js +210 -0
  67. package/dist/lib/compare/comparators.mjs +150 -0
  68. package/dist/lib/compare/index.cjs +172 -0
  69. package/dist/lib/compare/index.d.ts +2 -0
  70. package/dist/lib/compare/index.d.ts.map +1 -0
  71. package/dist/lib/compare/index.js +1 -0
  72. package/dist/lib/compare/index.mjs +152 -0
  73. package/dist/lib/cookie/codec.cjs +72 -0
  74. package/dist/lib/cookie/codec.d.ts +22 -0
  75. package/dist/lib/cookie/codec.d.ts.map +1 -0
  76. package/dist/lib/cookie/codec.js +67 -0
  77. package/dist/lib/cookie/codec.mjs +51 -0
  78. package/dist/lib/cookie/index.cjs +75 -0
  79. package/dist/lib/cookie/index.d.ts +2 -0
  80. package/dist/lib/cookie/index.d.ts.map +1 -0
  81. package/dist/lib/cookie/index.js +1 -0
  82. package/dist/lib/cookie/index.mjs +53 -0
  83. package/dist/lib/crypto/hash.cjs +83 -0
  84. package/dist/lib/crypto/hash.d.ts +6 -0
  85. package/dist/lib/crypto/hash.d.ts.map +1 -0
  86. package/dist/lib/crypto/hash.js +53 -0
  87. package/dist/lib/crypto/hash.mjs +62 -0
  88. package/dist/lib/crypto/index.cjs +85 -0
  89. package/dist/lib/crypto/index.d.ts +2 -0
  90. package/dist/lib/crypto/index.d.ts.map +1 -0
  91. package/dist/lib/crypto/index.js +1 -0
  92. package/dist/lib/crypto/index.mjs +62 -0
  93. package/dist/lib/dom/events.cjs +40 -0
  94. package/dist/lib/dom/events.d.ts +159 -0
  95. package/dist/lib/dom/events.d.ts.map +1 -0
  96. package/dist/lib/dom/events.js +50 -0
  97. package/dist/lib/dom/events.mjs +19 -0
  98. package/dist/lib/dom/index.cjs +78 -0
  99. package/dist/lib/dom/index.d.ts +3 -0
  100. package/dist/lib/dom/index.d.ts.map +1 -0
  101. package/dist/lib/dom/index.js +2 -0
  102. package/dist/lib/dom/index.mjs +56 -0
  103. package/dist/lib/dom/utils.cjs +57 -0
  104. package/dist/lib/dom/utils.d.ts +6 -0
  105. package/dist/lib/dom/utils.d.ts.map +1 -0
  106. package/dist/lib/dom/utils.js +37 -0
  107. package/dist/lib/dom/utils.mjs +36 -0
  108. package/dist/lib/functions/functions.cjs +366 -0
  109. package/dist/lib/functions/functions.d.ts +329 -0
  110. package/dist/lib/functions/functions.d.ts.map +1 -0
  111. package/dist/lib/functions/functions.js +585 -0
  112. package/dist/lib/functions/functions.mjs +345 -0
  113. package/dist/lib/functions/index.cjs +369 -0
  114. package/dist/lib/functions/index.d.ts +3 -0
  115. package/dist/lib/functions/index.d.ts.map +1 -0
  116. package/dist/lib/functions/index.js +1 -0
  117. package/dist/lib/functions/index.mjs +347 -0
  118. package/dist/lib/functions/types.cjs +18 -0
  119. package/dist/lib/functions/types.d.ts +2 -0
  120. package/dist/lib/functions/types.d.ts.map +1 -0
  121. package/dist/lib/functions/types.js +1 -0
  122. package/dist/lib/functions/types.mjs +0 -0
  123. package/dist/lib/helpers.cjs +78 -0
  124. package/dist/lib/helpers.d.ts +13 -0
  125. package/dist/lib/helpers.d.ts.map +1 -0
  126. package/dist/lib/helpers.js +66 -0
  127. package/dist/lib/helpers.mjs +59 -0
  128. package/dist/lib/index.cjs +2857 -0
  129. package/dist/lib/index.d.ts +6 -0
  130. package/dist/lib/index.d.ts.map +1 -0
  131. package/dist/lib/index.js +8 -0
  132. package/dist/lib/index.mjs +2836 -0
  133. package/dist/lib/maths/constants.cjs +70 -0
  134. package/dist/lib/maths/constants.d.ts +84 -0
  135. package/dist/lib/maths/constants.d.ts.map +1 -0
  136. package/dist/lib/maths/constants.js +79 -0
  137. package/dist/lib/maths/constants.mjs +50 -0
  138. package/dist/lib/maths/fn/advanced.cjs +231 -0
  139. package/dist/lib/maths/fn/advanced.d.ts +149 -0
  140. package/dist/lib/maths/fn/advanced.d.ts.map +1 -0
  141. package/dist/lib/maths/fn/advanced.js +264 -0
  142. package/dist/lib/maths/fn/advanced.mjs +208 -0
  143. package/dist/lib/maths/fn/basic.cjs +212 -0
  144. package/dist/lib/maths/fn/basic.d.ts +182 -0
  145. package/dist/lib/maths/fn/basic.d.ts.map +1 -0
  146. package/dist/lib/maths/fn/basic.js +343 -0
  147. package/dist/lib/maths/fn/basic.mjs +191 -0
  148. package/dist/lib/maths/fn/complex.cjs +268 -0
  149. package/dist/lib/maths/fn/complex.d.ts +153 -0
  150. package/dist/lib/maths/fn/complex.d.ts.map +1 -0
  151. package/dist/lib/maths/fn/complex.js +383 -0
  152. package/dist/lib/maths/fn/complex.mjs +247 -0
  153. package/dist/lib/maths/fn/index.cjs +877 -0
  154. package/dist/lib/maths/fn/index.d.ts +10 -0
  155. package/dist/lib/maths/fn/index.d.ts.map +1 -0
  156. package/dist/lib/maths/fn/index.js +9 -0
  157. package/dist/lib/maths/fn/index.mjs +855 -0
  158. package/dist/lib/maths/fn/trigo.cjs +179 -0
  159. package/dist/lib/maths/fn/trigo.d.ts +147 -0
  160. package/dist/lib/maths/fn/trigo.d.ts.map +1 -0
  161. package/dist/lib/maths/fn/trigo.js +227 -0
  162. package/dist/lib/maths/fn/trigo.mjs +156 -0
  163. package/dist/lib/maths/fn/vector.cjs +728 -0
  164. package/dist/lib/maths/fn/vector.d.ts +512 -0
  165. package/dist/lib/maths/fn/vector.d.ts.map +1 -0
  166. package/dist/lib/maths/fn/vector.js +1136 -0
  167. package/dist/lib/maths/fn/vector.mjs +707 -0
  168. package/dist/lib/maths/formatter.cjs +61 -0
  169. package/dist/lib/maths/formatter.d.ts +35 -0
  170. package/dist/lib/maths/formatter.d.ts.map +1 -0
  171. package/dist/lib/maths/formatter.js +56 -0
  172. package/dist/lib/maths/formatter.mjs +40 -0
  173. package/dist/lib/maths/guards.cjs +164 -0
  174. package/dist/lib/maths/guards.d.ts +166 -0
  175. package/dist/lib/maths/guards.d.ts.map +1 -0
  176. package/dist/lib/maths/guards.js +315 -0
  177. package/dist/lib/maths/guards.mjs +144 -0
  178. package/dist/lib/maths/index.cjs +1152 -0
  179. package/dist/lib/maths/index.d.ts +24 -0
  180. package/dist/lib/maths/index.d.ts.map +1 -0
  181. package/dist/lib/maths/index.js +29 -0
  182. package/dist/lib/maths/index.mjs +1130 -0
  183. package/dist/lib/maths/parser.cjs +75 -0
  184. package/dist/lib/maths/parser.d.ts +20 -0
  185. package/dist/lib/maths/parser.d.ts.map +1 -0
  186. package/dist/lib/maths/parser.js +78 -0
  187. package/dist/lib/maths/parser.mjs +54 -0
  188. package/dist/lib/maths/random.cjs +49 -0
  189. package/dist/lib/maths/random.d.ts +27 -0
  190. package/dist/lib/maths/random.d.ts.map +1 -0
  191. package/dist/lib/maths/random.js +49 -0
  192. package/dist/lib/maths/random.mjs +28 -0
  193. package/dist/lib/maths/types/advanced.cjs +18 -0
  194. package/dist/lib/maths/types/advanced.d.ts +357 -0
  195. package/dist/lib/maths/types/advanced.d.ts.map +1 -0
  196. package/dist/lib/maths/types/advanced.js +5 -0
  197. package/dist/lib/maths/types/advanced.mjs +0 -0
  198. package/dist/lib/maths/types/basic.cjs +18 -0
  199. package/dist/lib/maths/types/basic.d.ts +95 -0
  200. package/dist/lib/maths/types/basic.d.ts.map +1 -0
  201. package/dist/lib/maths/types/basic.js +5 -0
  202. package/dist/lib/maths/types/basic.mjs +0 -0
  203. package/dist/lib/maths/types/index.cjs +19 -0
  204. package/dist/lib/maths/types/index.d.ts +4 -0
  205. package/dist/lib/maths/types/index.d.ts.map +1 -0
  206. package/dist/lib/maths/types/index.js +3 -0
  207. package/dist/lib/maths/types/index.mjs +1 -0
  208. package/dist/lib/maths/types/negative.cjs +18 -0
  209. package/dist/lib/maths/types/negative.d.ts +51 -0
  210. package/dist/lib/maths/types/negative.d.ts.map +1 -0
  211. package/dist/lib/maths/types/negative.js +5 -0
  212. package/dist/lib/maths/types/negative.mjs +0 -0
  213. package/dist/lib/maths/types/operations.cjs +18 -0
  214. package/dist/lib/maths/types/operations.d.ts +188 -0
  215. package/dist/lib/maths/types/operations.d.ts.map +1 -0
  216. package/dist/lib/maths/types/operations.js +6 -0
  217. package/dist/lib/maths/types/operations.mjs +0 -0
  218. package/dist/lib/object/clone.cjs +88 -0
  219. package/dist/lib/object/clone.d.ts +46 -0
  220. package/dist/lib/object/clone.d.ts.map +1 -0
  221. package/dist/lib/object/clone.js +104 -0
  222. package/dist/lib/object/clone.mjs +65 -0
  223. package/dist/lib/object/diff.cjs +573 -0
  224. package/dist/lib/object/diff.d.ts +203 -0
  225. package/dist/lib/object/diff.d.ts.map +1 -0
  226. package/dist/lib/object/diff.js +805 -0
  227. package/dist/lib/object/diff.mjs +550 -0
  228. package/dist/lib/object/getter-setter.cjs +2351 -0
  229. package/dist/lib/object/getter-setter.d.ts +361 -0
  230. package/dist/lib/object/getter-setter.d.ts.map +1 -0
  231. package/dist/lib/object/getter-setter.js +1771 -0
  232. package/dist/lib/object/getter-setter.mjs +2330 -0
  233. package/dist/lib/object/index.cjs +3956 -0
  234. package/dist/lib/object/index.d.ts +13 -0
  235. package/dist/lib/object/index.d.ts.map +1 -0
  236. package/dist/lib/object/index.js +12 -0
  237. package/dist/lib/object/index.mjs +3936 -0
  238. package/dist/lib/object/merge.cjs +1029 -0
  239. package/dist/lib/object/merge.d.ts +93 -0
  240. package/dist/lib/object/merge.d.ts.map +1 -0
  241. package/dist/lib/object/merge.js +474 -0
  242. package/dist/lib/object/merge.mjs +1006 -0
  243. package/dist/lib/object/object.cjs +280 -0
  244. package/dist/lib/object/object.d.ts +128 -0
  245. package/dist/lib/object/object.d.ts.map +1 -0
  246. package/dist/lib/object/object.js +432 -0
  247. package/dist/lib/object/object.mjs +257 -0
  248. package/dist/lib/object/omit.cjs +2022 -0
  249. package/dist/lib/object/omit.d.ts +351 -0
  250. package/dist/lib/object/omit.d.ts.map +1 -0
  251. package/dist/lib/object/omit.js +656 -0
  252. package/dist/lib/object/omit.mjs +1999 -0
  253. package/dist/lib/object/reconcile.cjs +126 -0
  254. package/dist/lib/object/reconcile.d.ts +7 -0
  255. package/dist/lib/object/reconcile.d.ts.map +1 -0
  256. package/dist/lib/object/reconcile.js +122 -0
  257. package/dist/lib/object/reconcile.mjs +105 -0
  258. package/dist/lib/object/selector.cjs +303 -0
  259. package/dist/lib/object/selector.d.ts +50 -0
  260. package/dist/lib/object/selector.d.ts.map +1 -0
  261. package/dist/lib/object/selector.js +371 -0
  262. package/dist/lib/object/selector.mjs +282 -0
  263. package/dist/lib/object/sort.cjs +209 -0
  264. package/dist/lib/object/sort.d.ts +149 -0
  265. package/dist/lib/object/sort.d.ts.map +1 -0
  266. package/dist/lib/object/sort.js +298 -0
  267. package/dist/lib/object/sort.mjs +186 -0
  268. package/dist/lib/object/transform.cjs +2211 -0
  269. package/dist/lib/object/transform.d.ts +620 -0
  270. package/dist/lib/object/transform.d.ts.map +1 -0
  271. package/dist/lib/object/transform.js +1058 -0
  272. package/dist/lib/object/transform.mjs +2190 -0
  273. package/dist/lib/object/types.cjs +18 -0
  274. package/dist/lib/object/types.d.ts +250 -0
  275. package/dist/lib/object/types.d.ts.map +1 -0
  276. package/dist/lib/object/types.js +1 -0
  277. package/dist/lib/object/types.mjs +0 -0
  278. package/dist/lib/object/utils.cjs +326 -0
  279. package/dist/lib/object/utils.d.ts +165 -0
  280. package/dist/lib/object/utils.d.ts.map +1 -0
  281. package/dist/lib/object/utils.js +444 -0
  282. package/dist/lib/object/utils.mjs +305 -0
  283. package/dist/lib/primitive/boolean/boolean.cjs +407 -0
  284. package/dist/lib/primitive/boolean/boolean.d.ts +276 -0
  285. package/dist/lib/primitive/boolean/boolean.d.ts.map +1 -0
  286. package/dist/lib/primitive/boolean/boolean.js +615 -0
  287. package/dist/lib/primitive/boolean/boolean.mjs +386 -0
  288. package/dist/lib/primitive/boolean/index.cjs +382 -0
  289. package/dist/lib/primitive/boolean/index.d.ts +3 -0
  290. package/dist/lib/primitive/boolean/index.d.ts.map +1 -0
  291. package/dist/lib/primitive/boolean/index.js +2 -0
  292. package/dist/lib/primitive/boolean/index.mjs +359 -0
  293. package/dist/lib/primitive/boolean/types.cjs +18 -0
  294. package/dist/lib/primitive/boolean/types.d.ts +14 -0
  295. package/dist/lib/primitive/boolean/types.d.ts.map +1 -0
  296. package/dist/lib/primitive/boolean/types.js +1 -0
  297. package/dist/lib/primitive/boolean/types.mjs +0 -0
  298. package/dist/lib/primitive/date/date.cjs +1126 -0
  299. package/dist/lib/primitive/date/date.d.ts +641 -0
  300. package/dist/lib/primitive/date/date.d.ts.map +1 -0
  301. package/dist/lib/primitive/date/date.js +1998 -0
  302. package/dist/lib/primitive/date/date.mjs +1105 -0
  303. package/dist/lib/primitive/date/index.cjs +1128 -0
  304. package/dist/lib/primitive/date/index.d.ts +3 -0
  305. package/dist/lib/primitive/date/index.d.ts.map +1 -0
  306. package/dist/lib/primitive/date/index.js +2 -0
  307. package/dist/lib/primitive/date/index.mjs +1105 -0
  308. package/dist/lib/primitive/date/types.cjs +18 -0
  309. package/dist/lib/primitive/date/types.d.ts +205 -0
  310. package/dist/lib/primitive/date/types.d.ts.map +1 -0
  311. package/dist/lib/primitive/date/types.js +7 -0
  312. package/dist/lib/primitive/date/types.mjs +0 -0
  313. package/dist/lib/primitive/index.cjs +2338 -0
  314. package/dist/lib/primitive/index.d.ts +5 -0
  315. package/dist/lib/primitive/index.d.ts.map +1 -0
  316. package/dist/lib/primitive/index.js +4 -0
  317. package/dist/lib/primitive/index.mjs +2316 -0
  318. package/dist/lib/primitive/string/index.cjs +875 -0
  319. package/dist/lib/primitive/string/index.d.ts +3 -0
  320. package/dist/lib/primitive/string/index.d.ts.map +1 -0
  321. package/dist/lib/primitive/string/index.js +2 -0
  322. package/dist/lib/primitive/string/index.mjs +852 -0
  323. package/dist/lib/primitive/string/parser-2.cjs +543 -0
  324. package/dist/lib/primitive/string/parser-2.d.ts +17 -0
  325. package/dist/lib/primitive/string/parser-2.d.ts.map +1 -0
  326. package/dist/lib/primitive/string/parser-2.js +656 -0
  327. package/dist/lib/primitive/string/parser-2.mjs +522 -0
  328. package/dist/lib/primitive/string/parser.cjs +236 -0
  329. package/dist/lib/primitive/string/parser.d.ts +9 -0
  330. package/dist/lib/primitive/string/parser.d.ts.map +1 -0
  331. package/dist/lib/primitive/string/parser.js +775 -0
  332. package/dist/lib/primitive/string/parser.mjs +215 -0
  333. package/dist/lib/primitive/string/string.cjs +926 -0
  334. package/dist/lib/primitive/string/string.d.ts +535 -0
  335. package/dist/lib/primitive/string/string.d.ts.map +1 -0
  336. package/dist/lib/primitive/string/string.js +1301 -0
  337. package/dist/lib/primitive/string/string.mjs +903 -0
  338. package/dist/lib/primitive/string/types.cjs +18 -0
  339. package/dist/lib/primitive/string/types.d.ts +318 -0
  340. package/dist/lib/primitive/string/types.d.ts.map +1 -0
  341. package/dist/lib/primitive/string/types.js +5 -0
  342. package/dist/lib/primitive/string/types.mjs +0 -0
  343. package/dist/lib/primitive/types.cjs +18 -0
  344. package/dist/lib/primitive/types.d.ts +27 -0
  345. package/dist/lib/primitive/types.d.ts.map +1 -0
  346. package/dist/lib/primitive/types.js +1 -0
  347. package/dist/lib/primitive/types.mjs +0 -0
  348. package/dist/lib/url/index.cjs +327 -0
  349. package/dist/lib/url/index.d.ts +3 -0
  350. package/dist/lib/url/index.d.ts.map +1 -0
  351. package/dist/lib/url/index.js +2 -0
  352. package/dist/lib/url/index.mjs +304 -0
  353. package/dist/lib/url/parser.cjs +325 -0
  354. package/dist/lib/url/parser.d.ts +216 -0
  355. package/dist/lib/url/parser.d.ts.map +1 -0
  356. package/dist/lib/url/parser.js +488 -0
  357. package/dist/lib/url/parser.mjs +304 -0
  358. package/dist/lib/url/types.cjs +18 -0
  359. package/dist/lib/url/types.d.ts +18 -0
  360. package/dist/lib/url/types.d.ts.map +1 -0
  361. package/dist/lib/url/types.js +1 -0
  362. package/dist/lib/url/types.mjs +0 -0
  363. package/dist/tsconfig.lib.tsbuildinfo +1 -0
  364. package/package.json +127 -0
@@ -0,0 +1,280 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/lib/object/object.ts
21
+ var object_exports = {};
22
+ __export(object_exports, {
23
+ clean: () => clean,
24
+ deepFreeze: () => deepFreeze,
25
+ defaults: () => defaults,
26
+ filter: () => filter,
27
+ fromQueryString: () => fromQueryString,
28
+ groupBy: () => groupBy,
29
+ invert: () => invert,
30
+ isNonNullObject: () => isNonNullObject,
31
+ size: () => size,
32
+ toQueryString: () => toQueryString,
33
+ transform: () => transform
34
+ });
35
+ module.exports = __toCommonJS(object_exports);
36
+
37
+ // src/lib/object/utils.ts
38
+ var isObject = (value) => {
39
+ if (value == null) return false;
40
+ if (Array.isArray(value)) return false;
41
+ if (typeof value === "function") return false;
42
+ if (value instanceof Date) return false;
43
+ if (value instanceof RegExp) return false;
44
+ if (value instanceof Map) return false;
45
+ if (value instanceof Set) return false;
46
+ if (value instanceof Error) return false;
47
+ return typeof value === "object";
48
+ };
49
+
50
+ // src/lib/object/clone.ts
51
+ var deepClone = (obj, skipKeys) => {
52
+ if (obj == null || typeof obj !== "object") {
53
+ return obj;
54
+ }
55
+ if (obj instanceof Date) {
56
+ return new Date(obj.getTime());
57
+ }
58
+ if (obj instanceof RegExp) {
59
+ return new RegExp(obj.source, obj.flags);
60
+ }
61
+ if (obj instanceof Map) {
62
+ const clone = /* @__PURE__ */ new Map();
63
+ obj.forEach((value, key) => {
64
+ if (!skipKeys || !skipKeys.some((k) => k.toString() === key.toString())) {
65
+ clone.set(key, deepClone(value));
66
+ }
67
+ });
68
+ return clone;
69
+ }
70
+ if (obj instanceof Set) {
71
+ const clone = /* @__PURE__ */ new Set();
72
+ obj.forEach((value) => {
73
+ clone.add(deepClone(value));
74
+ });
75
+ return clone;
76
+ }
77
+ if (Array.isArray(obj)) {
78
+ return Array.from(obj).map((item) => deepClone(item));
79
+ }
80
+ if (isObject(obj)) {
81
+ const clone = {};
82
+ for (const key in obj) {
83
+ if (Object.prototype.hasOwnProperty.call(obj, key)) {
84
+ if (!skipKeys || !skipKeys.some((k) => k.toString() === key.toString())) {
85
+ clone[key] = deepClone(obj[key]);
86
+ }
87
+ }
88
+ }
89
+ const symbols = Object.getOwnPropertySymbols(obj);
90
+ for (const symbol of symbols) {
91
+ if (!skipKeys || !skipKeys.some((s) => s.toString() === symbol.toString())) {
92
+ clone[symbol] = deepClone(obj[symbol]);
93
+ }
94
+ }
95
+ return clone;
96
+ }
97
+ return obj;
98
+ };
99
+
100
+ // src/lib/object/object.ts
101
+ var invert = (obj, deep = false) => {
102
+ if (Array.isArray(obj)) {
103
+ return obj.map((item) => invert(item, deep));
104
+ }
105
+ if (!isObject(obj)) {
106
+ return {};
107
+ }
108
+ const result = {};
109
+ for (const key in obj) {
110
+ let value = obj[key];
111
+ if (typeof value === "string" || typeof value === "number" || typeof value === "symbol") {
112
+ result[value] = key;
113
+ } else if (isObject(value)) {
114
+ if (deep) {
115
+ result[key] = invert(value, deep);
116
+ }
117
+ } else if (Array.isArray(value)) {
118
+ if (deep) {
119
+ result[key] = value.map((item) => invert(item, deep));
120
+ }
121
+ }
122
+ }
123
+ return result;
124
+ };
125
+ var filter = (obj, predicate) => {
126
+ if (Array.isArray(obj)) {
127
+ return obj.filter(predicate);
128
+ }
129
+ if (!isObject(obj)) {
130
+ return {};
131
+ }
132
+ const result = {};
133
+ for (const key in obj) {
134
+ if (predicate(obj[key], key)) {
135
+ result[key] = obj[key];
136
+ }
137
+ }
138
+ return result;
139
+ };
140
+ var clean = (obj, deep = false) => {
141
+ if (!isObject(obj)) {
142
+ return {};
143
+ }
144
+ const result = {};
145
+ for (const key in obj) {
146
+ const value = obj[key];
147
+ if (value != null) {
148
+ if (deep && isObject(value)) {
149
+ const cleaned = clean(value, true);
150
+ if (Object.keys(cleaned).length > 0) {
151
+ result[key] = cleaned;
152
+ }
153
+ } else {
154
+ result[key] = value;
155
+ }
156
+ }
157
+ }
158
+ return result;
159
+ };
160
+ var defaults = (current, overrides) => {
161
+ if (Array.isArray(current)) {
162
+ if (Array.isArray(overrides)) {
163
+ return [...current, ...overrides];
164
+ }
165
+ return [...current, overrides];
166
+ }
167
+ const result = deepClone(current);
168
+ for (const key in overrides) {
169
+ if (result[key] === void 0) {
170
+ result[key] = overrides[key];
171
+ }
172
+ }
173
+ return result;
174
+ };
175
+ var size = (obj) => {
176
+ if (!isObject(obj)) {
177
+ return 0;
178
+ }
179
+ return Object.keys(obj).length;
180
+ };
181
+ var transform = (obj, transformer) => {
182
+ if (Array.isArray(obj)) {
183
+ return obj.map(transformer);
184
+ }
185
+ if (!isObject(obj)) {
186
+ return {};
187
+ }
188
+ const result = {};
189
+ for (const key in obj) {
190
+ const [newKey, newValue] = transformer(key, obj[key]);
191
+ result[newKey] = newValue;
192
+ }
193
+ return result;
194
+ };
195
+ var groupBy = (array, key) => {
196
+ if (!Array.isArray(array)) {
197
+ return {};
198
+ }
199
+ return array.reduce((groups, item) => {
200
+ const groupKey = item[key];
201
+ if (groupKey == null) {
202
+ return groups;
203
+ }
204
+ const keyStr = String(groupKey);
205
+ if (!groups[keyStr]) {
206
+ groups[keyStr] = [];
207
+ }
208
+ groups[keyStr].push(item);
209
+ return groups;
210
+ }, {});
211
+ };
212
+ var toQueryString = (obj) => {
213
+ if (!isObject(obj)) {
214
+ return "";
215
+ }
216
+ const params = [];
217
+ const addParam = (key, value) => {
218
+ if (value == null) return;
219
+ if (Array.isArray(value)) {
220
+ value.forEach((item) => {
221
+ params.push(`${encodeURIComponent(key)}=${encodeURIComponent(item)}`);
222
+ });
223
+ } else {
224
+ params.push(`${encodeURIComponent(key)}=${encodeURIComponent(value)}`);
225
+ }
226
+ };
227
+ for (const key in obj) {
228
+ addParam(key, obj[key]);
229
+ }
230
+ return params.join("&");
231
+ };
232
+ var fromQueryString = (queryString) => {
233
+ if (!queryString || typeof queryString !== "string") {
234
+ return {};
235
+ }
236
+ const str = queryString.startsWith("?") ? queryString.slice(1) : queryString;
237
+ if (!str) {
238
+ return {};
239
+ }
240
+ const result = {};
241
+ const pairs = str.split("&");
242
+ for (const pair of pairs) {
243
+ const [key, value] = pair.split("=").map(decodeURIComponent);
244
+ if (key) {
245
+ if (key in result) {
246
+ if (Array.isArray(result[key])) {
247
+ result[key].push(value || "");
248
+ } else {
249
+ result[key] = [result[key], value || ""];
250
+ }
251
+ } else {
252
+ result[key] = value || "";
253
+ }
254
+ }
255
+ }
256
+ return result;
257
+ };
258
+ var deepFreeze = (obj) => {
259
+ if (obj == null || typeof obj !== "object") {
260
+ return obj;
261
+ }
262
+ Object.freeze(obj);
263
+ for (const key in obj) {
264
+ const value = obj[key];
265
+ if (value != null && typeof value === "object") {
266
+ deepFreeze(value);
267
+ }
268
+ }
269
+ const symbols = Object.getOwnPropertySymbols(obj);
270
+ for (const symbol of symbols) {
271
+ const value = obj[symbol];
272
+ if (value != null && typeof value === "object") {
273
+ deepFreeze(value);
274
+ }
275
+ }
276
+ return obj;
277
+ };
278
+ var isNonNullObject = (value) => {
279
+ return value != null && typeof value === "object" && !Array.isArray(value);
280
+ };
@@ -0,0 +1,128 @@
1
+ import type { AnyObject, DeepReadonly, RecordObject } from './types.js';
2
+ /**
3
+ * Inverts an object (swaps keys and values)
4
+ * @param obj - Source object
5
+ * @returns Inverted object
6
+ * @example
7
+ * invert({a: 1, b: 2}) // {1: 'a', 2: 'b'}
8
+ */
9
+ export declare const invert: (obj: AnyObject, deep?: boolean) => AnyObject;
10
+ /**
11
+ * Maps object values using a callback function
12
+ * @param obj - Source object
13
+ * @param callback - Mapping function
14
+ * @returns New object with mapped values
15
+ * @example
16
+ * mapValues({a: 1, b: 2}, (value) => value * 2) // {a: 2, b: 4}
17
+ */
18
+ /**
19
+ * Maps object keys using a callback function
20
+ * @param obj - Source object
21
+ * @param callback - Mapping function
22
+ * @returns New object with mapped keys
23
+ * @example
24
+ * mapKeys({a: 1, b: 2}, (key) => key.toUpperCase()) // {A: 1, B: 2}
25
+ */
26
+ /**
27
+ * Filters object properties using a predicate
28
+ * @param obj - Source object
29
+ * @param predicate - Filter function
30
+ * @returns New object with filtered properties
31
+ * @example
32
+ * filter({a: 1, b: 2, c: 3}, (value) => value > 1) // {b: 2, c: 3}
33
+ */
34
+ export declare const filter: <T extends AnyObject>(obj: T, predicate: (value: T[keyof T], key: keyof T) => boolean) => T extends RecordObject ? Partial<T> : Partial<T>[];
35
+ /**
36
+ * Flattens a nested object
37
+ * @param obj - Source object
38
+ * @param separator - Separator for nested keys (default: '.')
39
+ * @returns Flattened object
40
+ * @example
41
+ * flatten({a: {b: {c: 1}}, d: 2}) // {'a.b.c': 1, d: 2}
42
+ */
43
+ /**
44
+ * Unflattens an object (reverse of flatten)
45
+ * @param obj - Source object
46
+ * @param separator - Separator used for nested keys (default: '.')
47
+ * @returns Unflattened object
48
+ * @example
49
+ * unflatten({'a.b.c': 1, d: 2}) // {a: {b: {c: 1}}, d: 2}
50
+ */
51
+ /**
52
+ * Removes undefined or null properties from an object
53
+ * @param obj - Source object
54
+ * @param deep - Whether to clean recursively (default: false)
55
+ * @returns Cleaned object
56
+ * @example
57
+ * clean({a: 1, b: null, c: undefined, d: {e: null}}) // {a: 1, d: {}}
58
+ * clean({a: 1, b: null, d: {e: null}}, true) // {a: 1}
59
+ */
60
+ export declare const clean: <T extends AnyObject>(obj: T, deep?: boolean) => Partial<T>;
61
+ /**
62
+ * Creates a new object with default values
63
+ * @param defaults - Default values
64
+ * @param overrides - Override values
65
+ * @returns Merged object with defaults
66
+ * @example
67
+ * defaults({a: 1, b: 2}, {b: 3, c: 4}) // {a: 1, b: 3, c: 4}
68
+ */
69
+ export declare const defaults: <T extends AnyObject, U extends AnyObject>(current: T, overrides: U) => T & U;
70
+ /**
71
+ * Gets the size of an object (number of own enumerable properties)
72
+ * @param obj - Source object
73
+ * @returns Number of properties
74
+ * @example
75
+ * size({a: 1, b: 2, c: 3}) // 3
76
+ */
77
+ export declare const size: (obj: AnyObject) => number;
78
+ /**
79
+ * Creates a new object with the same keys but transformed values
80
+ * @param obj - Source object
81
+ * @param transformer - Transformation function
82
+ * @returns Transformed object
83
+ * @example
84
+ * transform({a: 1, b: 2}, (key, value) => ({[key]: value * 2})) // {a: 2, b: 4}
85
+ */
86
+ export declare const transform: <T extends AnyObject>(obj: T, transformer: (key: keyof T, value: T[keyof T]) => [string, any]) => AnyObject;
87
+ /**
88
+ * Groups an array of objects by a key
89
+ * @param array - Array of objects
90
+ * @param key - Key to group by
91
+ * @returns Grouped object
92
+ * @example
93
+ * groupBy([{type: 'a', value: 1}, {type: 'b', value: 2}, {type: 'a', value: 3}], 'type')
94
+ * // {a: [{type: 'a', value: 1}, {type: 'a', value: 3}], b: [{type: 'b', value: 2}]}
95
+ */
96
+ export declare const groupBy: <T extends AnyObject>(array: T[], key: keyof T) => Record<string | number, T[]>;
97
+ /**
98
+ * Converts an object to a query string
99
+ * @param obj - Source object
100
+ * @returns Query string
101
+ * @example
102
+ * toQueryString({a: 1, b: 'test', c: [1, 2, 3]}) // 'a=1&b=test&c=1&c=2&c=3'
103
+ */
104
+ export declare const toQueryString: (obj: AnyObject) => string;
105
+ /**
106
+ * Parses a query string to an object
107
+ * @param queryString - Query string
108
+ * @returns Parsed object
109
+ * @example
110
+ * fromQueryString('a=1&b=test&c=1&c=2&c=3') // {a: '1', b: 'test', c: ['1', '2', '3']}
111
+ */
112
+ export declare const fromQueryString: (queryString: string) => AnyObject;
113
+ /**
114
+ * Creates a frozen deep clone of an object
115
+ * @param obj - Source object
116
+ * @returns Deep frozen object
117
+ * @example
118
+ * const frozen = deepFreeze({a: {b: 1}})
119
+ * frozen.a.b = 2 // Error in strict mode
120
+ */
121
+ export declare const deepFreeze: <T>(obj: T) => DeepReadonly<T>;
122
+ /**
123
+ * Type guard for non-null object
124
+ * @param value - Value to check
125
+ * @returns True if value is a non-null object
126
+ */
127
+ export declare const isNonNullObject: (value: unknown) => value is AnyObject;
128
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/lib/object/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAIxE;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,EAAE,OAAM,OAAe,KAAG,SAgC9D,CAAC;AAEF;;;;;;;GAOG;AAqBH;;;;;;;GAOG;AAsBH;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,SAAS,EACxC,KAAK,CAAC,EACN,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,OAAO,KACtD,CAAC,SAAS,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAiBlD,CAAC;AAEF;;;;;;;GAOG;AA+CH;;;;;;;GAOG;AA4DH;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,SAAS,EACvC,KAAK,CAAC,EACN,OAAM,OAAe,KACpB,OAAO,CAAC,CAAC,CAuBX,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,SAAS,EAC/D,SAAS,CAAC,EACV,WAAW,CAAC,KACX,CAAC,GAAG,CAgBN,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,KAAK,SAAS,KAAG,MAMrC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,SAAS,EAC3C,KAAK,CAAC,EACN,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,KAC9D,SAgBF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,SAAS,EACzC,OAAO,CAAC,EAAE,EACV,KAAK,MAAM,CAAC,KACX,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAqB7B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,SAAS,KAAG,MAwB9C,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,aAAa,MAAM,KAAG,SAkCrD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,KAAK,CAAC,KAAG,YAAY,CAAC,CAAC,CA4BpD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,SAEzD,CAAC"}