@rzl-zone/utils-js 3.11.1 → 3.12.1-beta.0

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 (286) hide show
  1. package/{LICENSE.md → LICENSE} +3 -3
  2. package/README.md +62 -89
  3. package/dist/.references/index.d.cts +25 -0
  4. package/dist/.references/index.d.ts +25 -0
  5. package/dist/assertIsArray-BChqwPiP.cjs +26 -0
  6. package/dist/assertIsArray-BChqwPiP.cjs.map +1 -0
  7. package/dist/assertIsArray-BfAbIUfa.js +20 -0
  8. package/dist/assertIsArray-BfAbIUfa.js.map +1 -0
  9. package/dist/assertIsBoolean-BlBct0Fc.js +1073 -0
  10. package/dist/assertIsBoolean-BlBct0Fc.js.map +1 -0
  11. package/dist/assertIsBoolean-DozdtbNi.cjs +1283 -0
  12. package/dist/assertIsBoolean-DozdtbNi.cjs.map +1 -0
  13. package/dist/assertIsString-Bvk7bUL7.cjs +26 -0
  14. package/dist/assertIsString-Bvk7bUL7.cjs.map +1 -0
  15. package/dist/assertIsString-DqV9NwbI.js +20 -0
  16. package/dist/assertIsString-DqV9NwbI.js.map +1 -0
  17. package/dist/assertions/index.cjs +37 -40
  18. package/dist/assertions/index.cjs.map +1 -0
  19. package/dist/assertions/index.d.cts +12 -0
  20. package/dist/assertions/index.d.ts +10 -824
  21. package/dist/assertions/index.js +30 -13
  22. package/dist/assertions/index.js.map +1 -0
  23. package/dist/conversions/index.cjs +34 -103
  24. package/dist/conversions/index.d.cts +12 -0
  25. package/dist/conversions/index.d.ts +10 -1791
  26. package/dist/conversions/index.js +14 -24
  27. package/dist/conversions-CBs8-REq.cjs +448 -0
  28. package/dist/conversions-CBs8-REq.cjs.map +1 -0
  29. package/dist/conversions-EMJa3g-D.js +382 -0
  30. package/dist/conversions-EMJa3g-D.js.map +1 -0
  31. package/dist/events/index.cjs +55 -31
  32. package/dist/events/index.cjs.map +1 -0
  33. package/dist/events/index.d.cts +174 -0
  34. package/dist/events/index.d.ts +31 -35
  35. package/dist/events/index.js +50 -12
  36. package/dist/events/index.js.map +1 -0
  37. package/dist/formatEnvPort-DpIXzPAZ.js +159 -0
  38. package/dist/formatEnvPort-DpIXzPAZ.js.map +1 -0
  39. package/dist/formatEnvPort-hHNvOim-.cjs +171 -0
  40. package/dist/formatEnvPort-hHNvOim-.cjs.map +1 -0
  41. package/dist/formatters/index.cjs +21 -61
  42. package/dist/formatters/index.d.cts +12 -0
  43. package/dist/formatters/index.d.ts +10 -2152
  44. package/dist/formatters/index.js +10 -18
  45. package/dist/formatters-QcZO_Cpx.js +367 -0
  46. package/dist/formatters-QcZO_Cpx.js.map +1 -0
  47. package/dist/formatters-lAYgA11L.cjs +427 -0
  48. package/dist/formatters-lAYgA11L.cjs.map +1 -0
  49. package/dist/generators/index.cjs +161 -41
  50. package/dist/generators/index.cjs.map +1 -0
  51. package/dist/generators/index.d.cts +12 -0
  52. package/dist/generators/index.d.ts +10 -338
  53. package/dist/generators/index.js +154 -14
  54. package/dist/generators/index.js.map +1 -0
  55. package/dist/index-26W7ItWx.d.ts +760 -0
  56. package/dist/index-BPPQjAfs.d.cts +2359 -0
  57. package/dist/index-BXjlgBLz.d.cts +2139 -0
  58. package/dist/index-B_Wwo91H.d.ts +2359 -0
  59. package/dist/index-CpufydcI.d.cts +704 -0
  60. package/dist/index-Czc4O526.d.ts +333 -0
  61. package/dist/index-DPs1_p5G.d.cts +760 -0
  62. package/dist/index-DRpOyBSC.d.ts +1703 -0
  63. package/dist/index-DWWvtHUn.d.cts +822 -0
  64. package/dist/index-DnM0LD0n.d.cts +333 -0
  65. package/dist/index-GUZ9fK6T.d.ts +2139 -0
  66. package/dist/index-I4fAzwXV.d.ts +704 -0
  67. package/dist/index-JDrOl_19.d.ts +822 -0
  68. package/dist/index-b66P49Qe.d.cts +1703 -0
  69. package/dist/isBigInt-B1cijjqm.cjs +20 -0
  70. package/dist/isBigInt-B1cijjqm.cjs.map +1 -0
  71. package/dist/isBigInt-C0bN0Rhu.js +14 -0
  72. package/dist/isBigInt-C0bN0Rhu.js.map +1 -0
  73. package/dist/isEmptyObject-DI42NEo0.cjs +37 -0
  74. package/dist/isEmptyObject-DI42NEo0.cjs.map +1 -0
  75. package/dist/isEmptyObject-DeLVIJpl.js +25 -0
  76. package/dist/isEmptyObject-DeLVIJpl.js.map +1 -0
  77. package/dist/isEmptyString-BTUWYTbw.js +15 -0
  78. package/dist/isEmptyString-BTUWYTbw.js.map +1 -0
  79. package/dist/isEmptyString-CCK3bP74.cjs +21 -0
  80. package/dist/isEmptyString-CCK3bP74.cjs.map +1 -0
  81. package/dist/isEmptyValue-DMSMFTU8.cjs +30 -0
  82. package/dist/isEmptyValue-DMSMFTU8.cjs.map +1 -0
  83. package/dist/isEmptyValue-fjnfQnt5.js +24 -0
  84. package/dist/isEmptyValue-fjnfQnt5.js.map +1 -0
  85. package/dist/isEqual-B1fRgEuU.cjs +111 -0
  86. package/dist/isEqual-B1fRgEuU.cjs.map +1 -0
  87. package/dist/isEqual-DhyP8fB_.js +87 -0
  88. package/dist/isEqual-DhyP8fB_.js.map +1 -0
  89. package/dist/isFinite-BYMOo0os.js +15 -0
  90. package/dist/isFinite-BYMOo0os.js.map +1 -0
  91. package/dist/isFinite-sFkps2TY.cjs +21 -0
  92. package/dist/isFinite-sFkps2TY.cjs.map +1 -0
  93. package/dist/isInteger-DS9V7l_f.js +14 -0
  94. package/dist/isInteger-DS9V7l_f.js.map +1 -0
  95. package/dist/isInteger-FTCthMre.cjs +20 -0
  96. package/dist/isInteger-FTCthMre.cjs.map +1 -0
  97. package/dist/isPlainObject-DcFGh3_5.d.ts +530 -0
  98. package/dist/isPlainObject-doTI11Ib.d.cts +530 -0
  99. package/dist/isServer-D1TXfOs3.js +14 -0
  100. package/dist/isServer-D1TXfOs3.js.map +1 -0
  101. package/dist/isServer-q-QLFCqE.cjs +20 -0
  102. package/dist/isServer-q-QLFCqE.cjs.map +1 -0
  103. package/dist/isTypedArray-47R0wdrc.js +31 -0
  104. package/dist/isTypedArray-47R0wdrc.js.map +1 -0
  105. package/dist/isTypedArray-DiCoqffZ.cjs +43 -0
  106. package/dist/isTypedArray-DiCoqffZ.cjs.map +1 -0
  107. package/dist/isURL-CQiowFq2.js +14 -0
  108. package/dist/isURL-CQiowFq2.js.map +1 -0
  109. package/dist/isURL-WZypXsax.cjs +20 -0
  110. package/dist/isURL-WZypXsax.cjs.map +1 -0
  111. package/dist/isValidDomain-BSXshgkC.cjs +1788 -0
  112. package/dist/isValidDomain-BSXshgkC.cjs.map +1 -0
  113. package/dist/isValidDomain-DwA2EN79.js +1782 -0
  114. package/dist/isValidDomain-DwA2EN79.js.map +1 -0
  115. package/dist/next/index.cjs +119 -212
  116. package/dist/next/index.cjs.map +1 -0
  117. package/dist/next/index.d.cts +226 -0
  118. package/dist/next/index.d.ts +26 -31
  119. package/dist/next/index.js +117 -210
  120. package/dist/next/index.js.map +1 -0
  121. package/dist/next/server/index.cjs +25 -40
  122. package/dist/next/server/index.cjs.map +1 -0
  123. package/dist/next/server/index.d.cts +39 -0
  124. package/dist/next/server/index.d.ts +9 -10
  125. package/dist/next/server/index.js +23 -38
  126. package/dist/next/server/index.js.map +1 -0
  127. package/dist/noop-B2mTBhW-.cjs +18 -0
  128. package/dist/noop-B2mTBhW-.cjs.map +1 -0
  129. package/dist/noop-BzktGBVz.js +12 -0
  130. package/dist/noop-BzktGBVz.js.map +1 -0
  131. package/dist/normalizeSpaces-DQHR3Tlr.cjs +29 -0
  132. package/dist/normalizeSpaces-DQHR3Tlr.cjs.map +1 -0
  133. package/dist/normalizeSpaces-WS_iERJk.js +23 -0
  134. package/dist/normalizeSpaces-WS_iERJk.js.map +1 -0
  135. package/dist/normalizeString-2WLth_Gj.js +15 -0
  136. package/dist/normalizeString-2WLth_Gj.js.map +1 -0
  137. package/dist/normalizeString-D8euBcRD.cjs +21 -0
  138. package/dist/normalizeString-D8euBcRD.cjs.map +1 -0
  139. package/dist/operations/index.cjs +65 -32
  140. package/dist/operations/index.cjs.map +1 -0
  141. package/dist/operations/index.d.cts +139 -0
  142. package/dist/operations/index.d.ts +10 -15
  143. package/dist/operations/index.js +61 -17
  144. package/dist/operations/index.js.map +1 -0
  145. package/dist/parsers/index.cjs +12 -19
  146. package/dist/parsers/index.d.cts +239 -0
  147. package/dist/parsers/index.d.ts +71 -72
  148. package/dist/parsers/index.js +10 -12
  149. package/dist/parsers-DXtpsDyj.cjs +649 -0
  150. package/dist/parsers-DXtpsDyj.cjs.map +1 -0
  151. package/dist/parsers-Dpuq-V4u.js +643 -0
  152. package/dist/parsers-Dpuq-V4u.js.map +1 -0
  153. package/dist/parsing-B43x1sxn.js +50 -0
  154. package/dist/parsing-B43x1sxn.js.map +1 -0
  155. package/dist/parsing-lRoxn1Nz.cjs +56 -0
  156. package/dist/parsing-lRoxn1Nz.cjs.map +1 -0
  157. package/dist/predicates/index.cjs +91 -296
  158. package/dist/predicates/index.d.cts +13 -0
  159. package/dist/predicates/index.d.ts +12 -2482
  160. package/dist/predicates/index.js +23 -25
  161. package/dist/predicates-DiaYA7Ps.cjs +413 -0
  162. package/dist/predicates-DiaYA7Ps.cjs.map +1 -0
  163. package/dist/predicates-gNepszvo.js +257 -0
  164. package/dist/predicates-gNepszvo.js.map +1 -0
  165. package/dist/promises/index.cjs +76 -24
  166. package/dist/promises/index.cjs.map +1 -0
  167. package/dist/promises/index.d.cts +123 -0
  168. package/dist/promises/index.d.ts +28 -31
  169. package/dist/promises/index.js +73 -13
  170. package/dist/promises/index.js.map +1 -0
  171. package/dist/punyCode-CTWXVVFo.cjs +185 -0
  172. package/dist/punyCode-CTWXVVFo.cjs.map +1 -0
  173. package/dist/punyCode-hmiFzLWT.js +179 -0
  174. package/dist/punyCode-hmiFzLWT.js.map +1 -0
  175. package/dist/removeSpaces-BE8lfh-4.js +19 -0
  176. package/dist/removeSpaces-BE8lfh-4.js.map +1 -0
  177. package/dist/removeSpaces-DRRxNWlb.cjs +25 -0
  178. package/dist/removeSpaces-DRRxNWlb.cjs.map +1 -0
  179. package/dist/safeJsonParse-BBnQElk8.cjs +208 -0
  180. package/dist/safeJsonParse-BBnQElk8.cjs.map +1 -0
  181. package/dist/safeJsonParse-CXruaP0p.js +184 -0
  182. package/dist/safeJsonParse-CXruaP0p.js.map +1 -0
  183. package/dist/safeStableStringify-BNh3D0K0.js +88 -0
  184. package/dist/safeStableStringify-BNh3D0K0.js.map +1 -0
  185. package/dist/safeStableStringify-Cc62pfRp.cjs +106 -0
  186. package/dist/safeStableStringify-Cc62pfRp.cjs.map +1 -0
  187. package/dist/strings/index.cjs +76 -81
  188. package/dist/strings/index.cjs.map +1 -0
  189. package/dist/strings/index.d.cts +12 -0
  190. package/dist/strings/index.d.ts +10 -775
  191. package/dist/strings/index.js +59 -14
  192. package/dist/strings/index.js.map +1 -0
  193. package/dist/tailwind/index.cjs +19 -47
  194. package/dist/tailwind/index.d.cts +12 -0
  195. package/dist/tailwind/index.d.ts +11 -712
  196. package/dist/tailwind/index.js +10 -12
  197. package/dist/tailwind-DJ4cmLUw.cjs +247 -0
  198. package/dist/tailwind-DJ4cmLUw.cjs.map +1 -0
  199. package/dist/tailwind-IJvOdkZp.js +199 -0
  200. package/dist/tailwind-IJvOdkZp.js.map +1 -0
  201. package/dist/toStringArrayUnRecursive-CFs0jTEg.js +39 -0
  202. package/dist/toStringArrayUnRecursive-CFs0jTEg.js.map +1 -0
  203. package/dist/toStringArrayUnRecursive-xUaU8Ot9.cjs +51 -0
  204. package/dist/toStringArrayUnRecursive-xUaU8Ot9.cjs.map +1 -0
  205. package/dist/urls/index.cjs +129 -57
  206. package/dist/urls/index.cjs.map +1 -0
  207. package/dist/urls/index.d.cts +740 -0
  208. package/dist/urls/index.d.ts +218 -224
  209. package/dist/urls/index.js +121 -26
  210. package/dist/urls/index.js.map +1 -0
  211. package/package.json +203 -194
  212. package/dist/chunk-22V4WP3H.js +0 -53
  213. package/dist/chunk-2XSZ2ANI.js +0 -63
  214. package/dist/chunk-3T6VSWYX.js +0 -21
  215. package/dist/chunk-5WIEDF2J.js +0 -1823
  216. package/dist/chunk-6EDFZJZ5.cjs +0 -598
  217. package/dist/chunk-6LXWT2I5.js +0 -32
  218. package/dist/chunk-6YGBRENU.js +0 -209
  219. package/dist/chunk-7FGNVDEV.cjs +0 -38
  220. package/dist/chunk-AXDYWO67.js +0 -119
  221. package/dist/chunk-B6PMNZ4M.cjs +0 -35
  222. package/dist/chunk-BAV5T2E3.cjs +0 -15
  223. package/dist/chunk-BLF7SD66.js +0 -95
  224. package/dist/chunk-BMZZXZJ2.cjs +0 -30
  225. package/dist/chunk-BOYP3ARU.js +0 -264
  226. package/dist/chunk-BPYW5YL7.js +0 -16
  227. package/dist/chunk-C2PV3VWC.cjs +0 -118
  228. package/dist/chunk-CCJ2MSN7.js +0 -16
  229. package/dist/chunk-DAPAK2W3.cjs +0 -123
  230. package/dist/chunk-DLS3G6WQ.cjs +0 -23
  231. package/dist/chunk-DNMCR5JH.js +0 -370
  232. package/dist/chunk-DVMHRLKP.cjs +0 -16
  233. package/dist/chunk-EBYFYZW4.cjs +0 -26
  234. package/dist/chunk-ENMRZ4BE.js +0 -302
  235. package/dist/chunk-FJ4BQFVO.js +0 -587
  236. package/dist/chunk-GIKL4PUF.cjs +0 -106
  237. package/dist/chunk-GOFINGT6.js +0 -35
  238. package/dist/chunk-GXKQ3LHF.js +0 -101
  239. package/dist/chunk-HNBRGN4R.js +0 -24
  240. package/dist/chunk-HYN6FC5A.cjs +0 -249
  241. package/dist/chunk-IZGVBYFN.js +0 -242
  242. package/dist/chunk-JIE447J5.js +0 -676
  243. package/dist/chunk-JXEIJM5M.cjs +0 -237
  244. package/dist/chunk-K47GZDBH.js +0 -115
  245. package/dist/chunk-K5536YHG.cjs +0 -269
  246. package/dist/chunk-KHO2SBNA.cjs +0 -16
  247. package/dist/chunk-KXJ7X325.cjs +0 -308
  248. package/dist/chunk-L5RDAVVH.js +0 -14
  249. package/dist/chunk-LJHPTLWB.js +0 -109
  250. package/dist/chunk-M7ELWZXM.cjs +0 -1825
  251. package/dist/chunk-MSUW5VHZ.js +0 -1590
  252. package/dist/chunk-MUHRPRR7.cjs +0 -65
  253. package/dist/chunk-MV3TSQSH.cjs +0 -397
  254. package/dist/chunk-NLZLXWAU.cjs +0 -678
  255. package/dist/chunk-NVRZPF5M.cjs +0 -18
  256. package/dist/chunk-ONZFBJVW.js +0 -14
  257. package/dist/chunk-PGNL7JXO.cjs +0 -251
  258. package/dist/chunk-Q4GEQS7X.cjs +0 -564
  259. package/dist/chunk-QNKGP5DY.js +0 -14
  260. package/dist/chunk-QYI2VJLS.cjs +0 -211
  261. package/dist/chunk-RBWZII5I.js +0 -59
  262. package/dist/chunk-RMP7VMPB.cjs +0 -33
  263. package/dist/chunk-RZOGBYIS.js +0 -21
  264. package/dist/chunk-SU3UELUB.cjs +0 -36
  265. package/dist/chunk-SYHPSOUU.cjs +0 -1626
  266. package/dist/chunk-SZUNAEMR.js +0 -246
  267. package/dist/chunk-TER22LO4.cjs +0 -64
  268. package/dist/chunk-TJHGRQ4P.js +0 -33
  269. package/dist/chunk-U23I7JPB.cjs +0 -56
  270. package/dist/chunk-U7HHN47R.js +0 -552
  271. package/dist/chunk-UDA26MCU.cjs +0 -16
  272. package/dist/chunk-UIAWUZ4H.js +0 -31
  273. package/dist/chunk-ULQPCIA2.js +0 -16
  274. package/dist/chunk-VJDDGRIK.cjs +0 -16
  275. package/dist/chunk-WETQI6HM.js +0 -232
  276. package/dist/chunk-WLOQQFDS.cjs +0 -18
  277. package/dist/chunk-WVSPXFTY.js +0 -14
  278. package/dist/chunk-WXFTVXBF.cjs +0 -23
  279. package/dist/chunk-XPVTIGU2.cjs +0 -113
  280. package/dist/chunk-XX6RUGTM.cjs +0 -18
  281. package/dist/chunk-YWHHVDT4.js +0 -13
  282. package/dist/chunk-ZPDMWDGZ.cjs +0 -101
  283. package/dist/chunk-ZVWZEGQP.js +0 -28
  284. package/dist/index.d.ts +0 -24
  285. package/dist/isPlainObject-0p3VveWr.d.ts +0 -534
  286. package/dist/rzl-utils.global.js +0 -10
@@ -1,552 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.11.1.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- import { isNonEmptyValue, isTypedArray } from './chunk-TJHGRQ4P.js';
11
- import { filterNilArray } from './chunk-22V4WP3H.js';
12
- import { isEmptyString } from './chunk-ULQPCIA2.js';
13
- import { assertIsString } from './chunk-3T6VSWYX.js';
14
- import { isRegExp, isEqual } from './chunk-GXKQ3LHF.js';
15
- import { isEmptyObject, isEmptyArray } from './chunk-GOFINGT6.js';
16
- import { assertIsArray } from './chunk-RZOGBYIS.js';
17
- import { safeStableStringify, isDate, isMap } from './chunk-AXDYWO67.js';
18
- import { isBigInt } from './chunk-QNKGP5DY.js';
19
- import { assertIsPlainObject, hasOwnProp, assertIsBoolean, isArray, isNull, getPreciseType, isNaN, isString, isNumber, isBoolean, isNil, isNumberObject, isBooleanObject, isStringObject, isSymbol, isFunction, isObjectOrArray, isError, isSet, isObject, isNonEmptyString, isPlainObject, isUndefined, isInfinityNumber, isBuffer } from './chunk-MSUW5VHZ.js';
20
-
21
- function toNumberArrayUnRecursive(array, options = {}) {
22
- assertIsPlainObject(options, {
23
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
24
- });
25
- const riv = hasOwnProp(options, "removeInvalidValueNumber") ? options.removeInvalidValueNumber : true;
26
- assertIsBoolean(riv, {
27
- message: ({ currentType, validType }) => `Parameter \`removeInvalidValueNumber\` property of the \`options\` (second parameter) must be of type \`${validType}\`, but received: \`${currentType}\`.`
28
- });
29
- if (isArray(array)) {
30
- const result = Array.from(array, (x) => {
31
- if (isBigInt(x)) return Number(x);
32
- const str = String(x).trim();
33
- const match = str.match(/-?\d+(\.\d+)?/);
34
- return match ? Number(match[0]) : isNull(x) ? null : void 0;
35
- });
36
- return riv ? filterNilArray(result) : result;
37
- }
38
- return void 0;
39
- }
40
-
41
- function toStringDeepForce(value, forceToString) {
42
- if (!(forceToString === false || forceToString === "stringOrNumber" || forceToString === "primitives" || forceToString === "all")) {
43
- throw new TypeError(
44
- `Second parameter \`forceToString\` must be of type \`false\` or \`string\` with value one of "stringOrNumber" | "primitives" | "all", but received: \`${getPreciseType(
45
- forceToString
46
- )}\`, with value: \`${safeStableStringify(forceToString, {
47
- keepUndefined: true
48
- })}\`.`
49
- );
50
- }
51
- if (isNaN(value)) {
52
- return forceToString === "primitives" || forceToString === "all" ? "NaN" : NaN;
53
- }
54
- if (isString(value) || isNumber(value)) {
55
- return forceToString === "stringOrNumber" || forceToString === "primitives" || forceToString === "all" ? String(value) : value;
56
- }
57
- if (isBoolean(value) || isBigInt(value) || isNil(value)) {
58
- return forceToString === "primitives" || forceToString === "all" ? String(value) : value;
59
- }
60
- if (isNumberObject(value) || isBooleanObject(value) || isStringObject(value)) {
61
- return forceToString === "all" ? value.valueOf().toString() : value;
62
- }
63
- if (isSymbol(value)) {
64
- return forceToString === "all" ? value.toString() : value;
65
- }
66
- if (isFunction(value)) {
67
- return forceToString === "all" ? value.toString() : value;
68
- }
69
- if (isArray(value)) {
70
- return value.map((v) => toStringDeepForce(v, forceToString));
71
- }
72
- if (isObjectOrArray(value)) {
73
- if (isDate(value)) {
74
- return forceToString === "all" ? value.toISOString() : value;
75
- }
76
- if (isRegExp(value)) {
77
- return forceToString === "all" ? value.toString() : value;
78
- }
79
- if (isError(value) || value instanceof Promise) {
80
- return forceToString === "all" ? value.toString() : value;
81
- }
82
- if (isSet(value)) {
83
- return forceToString === "all" ? [...value].map((v) => toStringDeepForce(v, forceToString)) : value;
84
- }
85
- if (isMap(value)) {
86
- return forceToString === "all" ? [...value.entries()].map(([k, v]) => [
87
- toStringDeepForce(k, forceToString),
88
- toStringDeepForce(v, forceToString)
89
- ]) : value;
90
- }
91
- const result = {};
92
- if (isObject(value)) {
93
- for (const key of Object.keys(value)) {
94
- result[key] = toStringDeepForce(value[key], forceToString);
95
- }
96
- }
97
- return result;
98
- }
99
- return value;
100
- }
101
-
102
- var dedupeArray = (inputArray, options = {}) => {
103
- assertIsArray(inputArray, {
104
- message: ({ currentType, validType }) => `First parameter (\`inputArray\`) must be of type \`${validType}\` (array literal or instance), but received: \`${currentType}\`.`
105
- });
106
- assertIsPlainObject(options, {
107
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
108
- });
109
- const flatten = hasOwnProp(options, "flatten") ? options.flatten : false;
110
- const forceToString = hasOwnProp(options, "forceToString") ? options.forceToString : false;
111
- if (!(forceToString === false || forceToString === "stringOrNumber" || forceToString === "primitives" || forceToString === "all")) {
112
- throw new TypeError(
113
- `Parameter \`forceToString\` property of the \`options\` (second parameter) must be of type \`false\` or \`string\` with value one of "stringOrNumber" | "primitives" | "all", but received: \`${getPreciseType(
114
- forceToString
115
- )}\`, with value: \`${safeStableStringify(forceToString, {
116
- keepUndefined: true
117
- })}\`.`
118
- );
119
- }
120
- assertIsBoolean(flatten, {
121
- message: ({ currentType, validType }) => `Parameter \`flatten\` property of the \`options\` (second parameter) must be of type \`${validType}\`, but received: \`${currentType}\`.`
122
- });
123
- const process = (arr) => {
124
- const seen = [];
125
- return arr.reduce((acc, item) => {
126
- const value = isArray(item) ? process(item) : toStringDeepForce(item, forceToString);
127
- if (!seen.some((s) => isEqual(s, value))) {
128
- seen.push(value);
129
- acc.push(value);
130
- }
131
- return acc;
132
- }, []);
133
- };
134
- const deepFlatten = (value) => {
135
- if (isArray(value)) {
136
- return value.flatMap(deepFlatten);
137
- }
138
- if (isSet(value)) {
139
- return [...value].flatMap(deepFlatten);
140
- }
141
- if (isMap(value)) {
142
- return [...value.values()].flatMap(deepFlatten);
143
- }
144
- return [value];
145
- };
146
- return flatten ? process(deepFlatten(inputArray)) : process(inputArray);
147
- };
148
-
149
- var toBooleanContent = (value) => {
150
- if (isNil(value)) return false;
151
- if (isString(value)) return isNonEmptyString(value);
152
- if (isBoolean(value)) return value;
153
- if (isNumber(value, { includeNaN: true })) return value !== 0;
154
- if (isArray(value) || isObject(value)) return isNonEmptyValue(value);
155
- return Boolean(value);
156
- };
157
-
158
- var toBooleanContentDeep = (value) => {
159
- if (isNil(value)) return false;
160
- if (isString(value)) return isNonEmptyString(value);
161
- if (isBoolean(value)) return value;
162
- if (isNumber(value, { includeNaN: true })) return value !== 0;
163
- if (isArray(value)) return value.some(toBooleanContentDeep);
164
- if (isObject(value)) return Object.values(value).some(toBooleanContentDeep);
165
- return false;
166
- };
167
-
168
- var toBooleanExplicit = (value, options = {}) => {
169
- if (isNil(value)) return false;
170
- if (!isPlainObject(options)) options = {};
171
- const ci = hasOwnProp(options, "caseInsensitive") ? options.caseInsensitive : false;
172
- const ts = hasOwnProp(options, "trimString") ? options.trimString : true;
173
- const incInd = hasOwnProp(options, "includeIndeterminate") ? options.includeIndeterminate : false;
174
- if (!isBoolean(ci) || !isBoolean(ts) || !isBoolean(incInd)) {
175
- throw new TypeError(
176
- `Parameters \`caseInsensitive\`, \`trimString\` and \`includeIndeterminate\` property of the \`options\` (second parameter) expected to be a \`boolean\` type, but received: ['caseInsensitive': \`${getPreciseType(
177
- ci
178
- )}\`, 'trimString': \`${getPreciseType(
179
- ts
180
- )}\`, 'includeIndeterminate': \`${getPreciseType(incInd)}\`].`
181
- );
182
- }
183
- if (isString(value)) {
184
- let normalized = value;
185
- if (ts) normalized = normalized.trim();
186
- if (ci) normalized = normalized.toLowerCase();
187
- const validTrueStrings = ["true", "on", "yes", "1"];
188
- if (incInd) validTrueStrings.push("indeterminate");
189
- return validTrueStrings.includes(normalized);
190
- }
191
- if (isNumber(value)) return value === 1;
192
- if (isBoolean(value)) return value;
193
- return false;
194
- };
195
-
196
- var toBooleanLoose = (value) => {
197
- if (isNil(value)) return false;
198
- if (isString(value)) return !isEmptyString(value);
199
- if (isBoolean(value)) return value;
200
- if (isNumber(value, { includeNaN: true })) return value !== 0;
201
- if (isArray(value)) return value.length > 0;
202
- return Boolean(value);
203
- };
204
-
205
- var convertType = (value) => {
206
- const predefinedValues = {
207
- undefined: void 0,
208
- null: null,
209
- nan: NaN,
210
- true: true,
211
- false: false,
212
- yes: true,
213
- no: false
214
- };
215
- if (isString(value)) {
216
- const normalized = value.trim().toLowerCase();
217
- if (Object.prototype.hasOwnProperty.call(predefinedValues, normalized)) {
218
- return predefinedValues[normalized];
219
- }
220
- const numericString = normalized.replace(/,/g, "");
221
- const numberString = Number(numericString);
222
- if (!isNaN(numberString) && isNonEmptyString(numericString)) {
223
- return numberString;
224
- }
225
- return value.trim();
226
- }
227
- return value;
228
- };
229
-
230
- var deepCloneSafe = (obj) => {
231
- try {
232
- if (isFunction(structuredClone)) {
233
- return structuredClone(obj);
234
- }
235
- } catch {
236
- }
237
- return JSON.parse(JSON.stringify(obj));
238
- };
239
-
240
- var deleteNestedKey = (obj, path) => {
241
- if (!isObjectOrArray(obj)) return obj;
242
- const [currentKey, ...rest] = path;
243
- if (isArray(obj)) {
244
- for (const item of obj) {
245
- if (isObjectOrArray(item)) deleteNestedKey(item, path);
246
- }
247
- } else if (isEmptyArray(rest)) {
248
- if (isPlainObject(obj)) delete obj[currentKey];
249
- } else if (isPlainObject(obj) && isObjectOrArray(obj[currentKey])) {
250
- deleteNestedKey(obj[currentKey], rest);
251
- }
252
- return obj;
253
- };
254
-
255
- var deleteExactPathOnce = (obj, path) => {
256
- if (!isPlainObject(obj)) return obj;
257
- const [currentKey, ...rest] = path;
258
- if (rest.length === 0) {
259
- if (isPlainObject(obj)) delete obj[currentKey];
260
- } else if (isPlainObject(obj[currentKey])) {
261
- deleteExactPathOnce(obj[currentKey], rest);
262
- }
263
- return obj;
264
- };
265
-
266
- function removeObjectPaths(object, keysToDelete, deepClone = true) {
267
- if (isEmptyObject(object, { checkSymbols: true }))
268
- return {};
269
- assertIsArray(keysToDelete, {
270
- message: ({ currentType, validType }) => `Second parameter (\`keysToDelete\`) must be of type \`${validType}\` with value of { key: string, deep?: boolean } plain-object, but received: \`${currentType}\`, with value: \`${safeStableStringify(
271
- keysToDelete,
272
- {
273
- keepUndefined: true
274
- }
275
- )}\`.`
276
- });
277
- if (!keysToDelete.every((k) => isPlainObject(k) && "key" in k)) {
278
- throw new TypeError(
279
- `Each element in Second Parameter (\`keysToDelete\`) must be of type \`plain-object\` with at least a "key" property (optionally "deep"), but received: \`${safeStableStringify(
280
- keysToDelete,
281
- {
282
- keepUndefined: true
283
- }
284
- )}\`.`
285
- );
286
- }
287
- let result = deepClone ? deepCloneSafe(object) : object;
288
- for (const { key, deep } of keysToDelete) {
289
- assertIsString(key, {
290
- message: ({ currentType, validType }) => `Parameter \`key\` at Second Parameter (\`keysToDelete\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
291
- });
292
- if (!isUndefined(deep) && !isBoolean(deep)) {
293
- throw new TypeError(
294
- `Parameter \`deep\` at Second Parameter (\`keysToDelete\`) \u2794 (key: "${key}", deep: ${deep}) must be of type \`boolean\` or \`undefined\`, but received: \`${getPreciseType(
295
- deep
296
- )}\`.`
297
- );
298
- }
299
- const path = key.split(".");
300
- result = deep ? deleteNestedKey(result, path) : deleteExactPathOnce(result, path);
301
- }
302
- return result;
303
- }
304
-
305
- function toNumberDeep(input, options = {}) {
306
- assertIsPlainObject(options, {
307
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
308
- });
309
- const removeEmptyObjects = hasOwnProp(options, "removeEmptyObjects") ? options.removeEmptyObjects : false;
310
- const removeEmptyArrays = hasOwnProp(options, "removeEmptyArrays") ? options.removeEmptyArrays : false;
311
- function _internal(input2, options2) {
312
- if (isNil(input2) || isRegExp(input2)) return void 0;
313
- const { removeEmptyArrays: removeEmptyArrays2, removeEmptyObjects: removeEmptyObjects2, isRoot } = options2;
314
- if (!isBoolean(removeEmptyObjects2) || !isBoolean(removeEmptyArrays2)) {
315
- throw new TypeError(
316
- `Parameters \`removeEmptyObjects\` and \`removeEmptyArrays\` property of the \`options\` (second parameter) must be of type \`boolean\`, but received: ['removeEmptyObjects': \`${getPreciseType(
317
- removeEmptyObjects2
318
- )}\`, 'removeEmptyArrays': \`${getPreciseType(removeEmptyArrays2)}\`].`
319
- );
320
- }
321
- if (isNumber(input2) || isBoolean(input2) || isNonEmptyString(input2)) {
322
- const num = Number(input2);
323
- return isInfinityNumber(num) || isNaN(num) ? void 0 : num;
324
- }
325
- if (isNumberObject(input2) || isStringObject(input2) || isBooleanObject(input2)) {
326
- const valOf = Number(input2.valueOf());
327
- return isInfinityNumber(valOf) || isNaN(valOf) ? void 0 : valOf;
328
- }
329
- if (isDate(input2, { skipInvalidDate: true })) {
330
- try {
331
- return !isNaN(input2.getTime()) ? input2.getTime() : 0;
332
- } catch {
333
- return 0;
334
- }
335
- }
336
- if (isBuffer(input2)) {
337
- const arr = Array.from(input2).map(
338
- (n) => _internal(n, {
339
- removeEmptyObjects: removeEmptyObjects2,
340
- removeEmptyArrays: removeEmptyArrays2,
341
- isRoot: false
342
- })
343
- ).filter((item) => !isUndefined(item));
344
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
345
- return arr;
346
- }
347
- if (isTypedArray(input2)) {
348
- if (input2 instanceof BigInt64Array || input2 instanceof BigUint64Array) {
349
- const newArray = Array.from(input2).map(
350
- (item) => _internal(item, {
351
- removeEmptyObjects: removeEmptyObjects2,
352
- removeEmptyArrays: removeEmptyArrays2,
353
- isRoot: false
354
- })
355
- ).filter((item) => !isUndefined(item));
356
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
357
- return newArray;
358
- } else {
359
- const newArray = Array.from(input2).map(
360
- (item) => _internal(item, {
361
- removeEmptyObjects: removeEmptyObjects2,
362
- removeEmptyArrays: removeEmptyArrays2,
363
- isRoot: false
364
- })
365
- ).filter((item) => !isUndefined(item));
366
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
367
- return newArray;
368
- }
369
- }
370
- if (isSet(input2)) {
371
- const newArray = Array.from(input2).map(
372
- (item) => _internal(item, {
373
- removeEmptyObjects: removeEmptyObjects2,
374
- removeEmptyArrays: removeEmptyArrays2,
375
- isRoot: false
376
- })
377
- ).filter((item) => !isUndefined(item));
378
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
379
- return newArray;
380
- }
381
- if (isMap(input2)) {
382
- let newArray = Array.from(input2.entries()).map(([k, v]) => {
383
- const key = _internal(k, {
384
- removeEmptyObjects: removeEmptyObjects2,
385
- removeEmptyArrays: removeEmptyArrays2,
386
- isRoot: false
387
- });
388
- const value = _internal(v, {
389
- removeEmptyObjects: removeEmptyObjects2,
390
- removeEmptyArrays: removeEmptyArrays2,
391
- isRoot: false
392
- });
393
- return !isUndefined(key) && !isUndefined(value) ? [key, value] : void 0;
394
- }).filter((item) => !isUndefined(item));
395
- if (removeEmptyArrays2) {
396
- newArray = newArray.filter((v) => !isEmptyArray(v));
397
- }
398
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
399
- return newArray;
400
- }
401
- if (isArray(input2)) {
402
- const newArray = input2.map(
403
- (item) => _internal(item, {
404
- removeEmptyObjects: removeEmptyObjects2,
405
- removeEmptyArrays: removeEmptyArrays2,
406
- isRoot: false
407
- })
408
- ).filter((item) => !isUndefined(item));
409
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
410
- return newArray;
411
- }
412
- if (isObject(input2)) {
413
- const newObject = {};
414
- for (const [key, value] of Object.entries(input2)) {
415
- const convertedValue = _internal(value, {
416
- removeEmptyObjects: removeEmptyObjects2,
417
- removeEmptyArrays: removeEmptyArrays2,
418
- isRoot: false
419
- });
420
- if (!isUndefined(convertedValue)) {
421
- newObject[key] = convertedValue;
422
- }
423
- }
424
- if (removeEmptyObjects2 && isEmptyObject(newObject)) {
425
- return isRoot ? {} : void 0;
426
- }
427
- return newObject;
428
- }
429
- return void 0;
430
- }
431
- return _internal(input, {
432
- removeEmptyObjects,
433
- removeEmptyArrays,
434
- isRoot: true
435
- });
436
- }
437
-
438
- function toStringDeep(input, options = {}) {
439
- assertIsPlainObject(options, {
440
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
441
- });
442
- const removeEmptyObjects = hasOwnProp(options, "removeEmptyObjects") ? options.removeEmptyObjects : false;
443
- const removeEmptyArrays = hasOwnProp(options, "removeEmptyArrays") ? options.removeEmptyArrays : false;
444
- function _internal(input2, options2) {
445
- if (isNil(input2) || isInfinityNumber(input2)) return void 0;
446
- const { removeEmptyArrays: removeEmptyArrays2, removeEmptyObjects: removeEmptyObjects2, isRoot } = options2;
447
- if (!isBoolean(removeEmptyObjects2) || !isBoolean(removeEmptyArrays2)) {
448
- throw new TypeError(
449
- `Parameters \`removeEmptyObjects\` and \`removeEmptyArrays\` property of the \`options\` (second parameter) must be of type \`boolean\`, but received: ['removeEmptyObjects': \`${getPreciseType(
450
- removeEmptyObjects2
451
- )}\`, 'removeEmptyArrays': \`${getPreciseType(removeEmptyArrays2)}\`].`
452
- );
453
- }
454
- if (isNumber(input2) || isString(input2) || isBoolean(input2)) return String(input2);
455
- if (isNumberObject(input2)) {
456
- const valOf = input2.valueOf();
457
- return isInfinityNumber(valOf) || isNaN(valOf) ? void 0 : valOf.toString();
458
- }
459
- if (isStringObject(input2)) return input2.valueOf();
460
- if (isBooleanObject(input2)) return input2.valueOf().toString();
461
- if (isDate(input2, { skipInvalidDate: true })) {
462
- try {
463
- return input2.toISOString();
464
- } catch {
465
- return input2.toString();
466
- }
467
- }
468
- if (isRegExp(input2)) return input2.toString();
469
- if (isBuffer(input2)) {
470
- return Array.from(input2).map((v) => String(v)).filter((v) => !isUndefined(v));
471
- }
472
- if (isTypedArray(input2)) {
473
- if (input2 instanceof BigInt64Array || input2 instanceof BigUint64Array) {
474
- const newArray = Array.from(input2).map(
475
- (item) => _internal(item, {
476
- removeEmptyObjects: removeEmptyObjects2,
477
- removeEmptyArrays: removeEmptyArrays2,
478
- isRoot: false
479
- })
480
- ).map((v) => String(v)).filter((item) => !isUndefined(item));
481
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
482
- return newArray;
483
- } else {
484
- const newArray = Array.from(input2).map(
485
- (item) => _internal(item, {
486
- removeEmptyObjects: removeEmptyObjects2,
487
- removeEmptyArrays: removeEmptyArrays2,
488
- isRoot: false
489
- })
490
- ).map((v) => String(v)).filter((item) => !isUndefined(item));
491
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
492
- return newArray;
493
- }
494
- }
495
- if (isSet(input2)) {
496
- const arr = Array.from(input2).map(
497
- (v) => _internal(v, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false })
498
- ).filter((v) => !isUndefined(v));
499
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
500
- return arr;
501
- }
502
- if (isMap(input2)) {
503
- const arr = Array.from(input2.entries()).map(([k, v]) => [
504
- _internal(k, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false }),
505
- _internal(v, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false })
506
- ]).filter(([k, v]) => !isUndefined(k) && !isUndefined(v));
507
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
508
- return arr;
509
- }
510
- if (isArray(input2)) {
511
- let newArray = input2.map(
512
- (item) => _internal(item, {
513
- removeEmptyObjects: removeEmptyObjects2,
514
- removeEmptyArrays: removeEmptyArrays2,
515
- isRoot: false
516
- })
517
- ).filter((item) => !isUndefined(item));
518
- if (removeEmptyArrays2) {
519
- newArray = newArray.filter((v) => !(isArray(v) && v.length === 0));
520
- }
521
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
522
- return newArray;
523
- }
524
- if (isObject(input2)) {
525
- const newObject = {};
526
- for (const [key, value] of Object.entries(input2)) {
527
- const convertedValue = _internal(value, {
528
- removeEmptyObjects: removeEmptyObjects2,
529
- removeEmptyArrays: removeEmptyArrays2,
530
- isRoot: false
531
- });
532
- if (!isUndefined(convertedValue)) {
533
- newObject[key] = convertedValue;
534
- } else if (isArray(value) && !removeEmptyArrays2) {
535
- newObject[key] = [];
536
- }
537
- }
538
- if (removeEmptyObjects2 && Object.keys(newObject).length === 0) {
539
- return isRoot ? {} : void 0;
540
- }
541
- return newObject;
542
- }
543
- return void 0;
544
- }
545
- return _internal(input, {
546
- removeEmptyObjects,
547
- removeEmptyArrays,
548
- isRoot: true
549
- });
550
- }
551
-
552
- export { convertType, dedupeArray, removeObjectPaths, toBooleanContent, toBooleanContentDeep, toBooleanExplicit, toBooleanLoose, toNumberArrayUnRecursive, toNumberDeep, toStringDeep, toStringDeepForce };
@@ -1,16 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.11.1.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- 'use strict';
11
-
12
- var isBigInt = (value) => {
13
- return typeof value === "bigint";
14
- };
15
-
16
- exports.isBigInt = isBigInt;
@@ -1,31 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.11.1.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- import { isEmptyString } from './chunk-ULQPCIA2.js';
11
- import { isEmptyArray, isEmptyObject } from './chunk-GOFINGT6.js';
12
- import { assertIsPlainObject, hasOwnProp, assertIsBoolean, isNil, isNaN, isString, isArray, isObject } from './chunk-MSUW5VHZ.js';
13
-
14
- var isEmptyValue = (value, options = {}) => {
15
- assertIsPlainObject(options, {
16
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
17
- });
18
- const checkSymbols = hasOwnProp(options, "checkSymbols") ? options.checkSymbols : false;
19
- assertIsBoolean(checkSymbols, {
20
- message: ({ currentType, validType }) => `Parameter \`checkSymbols\` property of the \`options\` (second parameter) must be of type \`${validType}\`, but received: \`${currentType}\`.`
21
- });
22
- if (isNil(value) || value === false || isNaN(value)) return true;
23
- if (isString(value)) return isEmptyString(value);
24
- if (isArray(value)) return isEmptyArray(value);
25
- if (isObject(value)) {
26
- return isEmptyObject(value, { checkSymbols });
27
- }
28
- return false;
29
- };
30
-
31
- export { isEmptyValue };
@@ -1,16 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.11.1.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- import { isNonEmptyString } from './chunk-MSUW5VHZ.js';
11
-
12
- var isEmptyString = (value, options = {}) => {
13
- return !isNonEmptyString(value, options);
14
- };
15
-
16
- export { isEmptyString };
@@ -1,16 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.11.1.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- 'use strict';
11
-
12
- var isServer = () => {
13
- return typeof window === "undefined" || typeof document === "undefined";
14
- };
15
-
16
- exports.isServer = isServer;