@rzl-zone/utils-js 3.12.0 → 3.12.1-beta.1

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 +69 -96
  3. package/dist/.references/index.d.cts +25 -0
  4. package/dist/.references/index.d.ts +25 -0
  5. package/dist/assertIsArray-DJXkjHZs.cjs +26 -0
  6. package/dist/assertIsArray-DJXkjHZs.cjs.map +1 -0
  7. package/dist/assertIsArray-bTA3XLjq.js +20 -0
  8. package/dist/assertIsArray-bTA3XLjq.js.map +1 -0
  9. package/dist/assertIsBoolean-C8WEXVr2.cjs +1283 -0
  10. package/dist/assertIsBoolean-C8WEXVr2.cjs.map +1 -0
  11. package/dist/assertIsBoolean-DR1SaXPD.js +1073 -0
  12. package/dist/assertIsBoolean-DR1SaXPD.js.map +1 -0
  13. package/dist/assertIsString-BiHQSrB2.cjs +26 -0
  14. package/dist/assertIsString-BiHQSrB2.cjs.map +1 -0
  15. package/dist/assertIsString-CEB07_83.js +20 -0
  16. package/dist/assertIsString-CEB07_83.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-BNIh_tCH.js +380 -0
  28. package/dist/conversions-BNIh_tCH.js.map +1 -0
  29. package/dist/conversions-D_Kh0a_C.cjs +446 -0
  30. package/dist/conversions-D_Kh0a_C.cjs.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 +176 -0
  34. package/dist/events/index.d.ts +164 -166
  35. package/dist/events/index.js +50 -12
  36. package/dist/events/index.js.map +1 -0
  37. package/dist/formatEnvPort-B3OLxQk9.cjs +171 -0
  38. package/dist/formatEnvPort-B3OLxQk9.cjs.map +1 -0
  39. package/dist/formatEnvPort-ByFVLjSV.js +159 -0
  40. package/dist/formatEnvPort-ByFVLjSV.js.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--1m_vpE8.js +369 -0
  46. package/dist/formatters--1m_vpE8.js.map +1 -0
  47. package/dist/formatters-Cbij0XLU.cjs +429 -0
  48. package/dist/formatters-Cbij0XLU.cjs.map +1 -0
  49. package/dist/generators/index.cjs +165 -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 +158 -14
  54. package/dist/generators/index.js.map +1 -0
  55. package/dist/index-59zbLcPr.d.ts +340 -0
  56. package/dist/index-B6tawc8L.d.cts +1716 -0
  57. package/dist/index-C267akkJ.d.ts +2158 -0
  58. package/dist/index-CeBC2Vvl.d.cts +2361 -0
  59. package/dist/index-CgRDTI6f.d.ts +822 -0
  60. package/dist/index-CoiUBVmr.d.ts +720 -0
  61. package/dist/index-D4fcasfZ.d.cts +720 -0
  62. package/dist/index-DDrSQKIc.d.ts +1716 -0
  63. package/dist/index-DsGxO31H.d.cts +765 -0
  64. package/dist/index-Hg1qJkjl.d.ts +765 -0
  65. package/dist/index-Qm3iFwd0.d.cts +2158 -0
  66. package/dist/index-UPp94Agr.d.ts +2361 -0
  67. package/dist/index-gBA_8SuF.d.cts +340 -0
  68. package/dist/index-jyDqzicx.d.cts +822 -0
  69. package/dist/isBigInt-C4krUeAw.cjs +20 -0
  70. package/dist/isBigInt-C4krUeAw.cjs.map +1 -0
  71. package/dist/isBigInt-DKe0M6hp.js +14 -0
  72. package/dist/isBigInt-DKe0M6hp.js.map +1 -0
  73. package/dist/isEmptyObject-DCipFwxJ.js +25 -0
  74. package/dist/isEmptyObject-DCipFwxJ.js.map +1 -0
  75. package/dist/isEmptyObject-ZkSwRC_D.cjs +37 -0
  76. package/dist/isEmptyObject-ZkSwRC_D.cjs.map +1 -0
  77. package/dist/isEmptyString-BXzKAC2j.js +15 -0
  78. package/dist/isEmptyString-BXzKAC2j.js.map +1 -0
  79. package/dist/isEmptyString-UiiUsSQj.cjs +21 -0
  80. package/dist/isEmptyString-UiiUsSQj.cjs.map +1 -0
  81. package/dist/isEmptyValue-BQzcjVaL.cjs +30 -0
  82. package/dist/isEmptyValue-BQzcjVaL.cjs.map +1 -0
  83. package/dist/isEmptyValue-jqOr7OHD.js +24 -0
  84. package/dist/isEmptyValue-jqOr7OHD.js.map +1 -0
  85. package/dist/isEqual-BX49cF9m.js +87 -0
  86. package/dist/isEqual-BX49cF9m.js.map +1 -0
  87. package/dist/isEqual-BvumA3RA.cjs +111 -0
  88. package/dist/isEqual-BvumA3RA.cjs.map +1 -0
  89. package/dist/isFinite-BCnaDpod.js +15 -0
  90. package/dist/isFinite-BCnaDpod.js.map +1 -0
  91. package/dist/isFinite-D24ZaE6c.cjs +21 -0
  92. package/dist/isFinite-D24ZaE6c.cjs.map +1 -0
  93. package/dist/isInteger-Caeuz0rB.cjs +20 -0
  94. package/dist/isInteger-Caeuz0rB.cjs.map +1 -0
  95. package/dist/isInteger-naMbJsxJ.js +14 -0
  96. package/dist/isInteger-naMbJsxJ.js.map +1 -0
  97. package/dist/isPlainObject-BF-2-phb.d.cts +339 -0
  98. package/dist/isPlainObject-DxNDL8XU.d.ts +339 -0
  99. package/dist/isServer-BJHVnixd.cjs +20 -0
  100. package/dist/isServer-BJHVnixd.cjs.map +1 -0
  101. package/dist/isServer-Da3o3XSs.js +14 -0
  102. package/dist/isServer-Da3o3XSs.js.map +1 -0
  103. package/dist/isTypedArray-DuNA8tK6.js +31 -0
  104. package/dist/isTypedArray-DuNA8tK6.js.map +1 -0
  105. package/dist/isTypedArray-TJptiw2b.cjs +43 -0
  106. package/dist/isTypedArray-TJptiw2b.cjs.map +1 -0
  107. package/dist/isURL-C-kSk6KJ.js +14 -0
  108. package/dist/isURL-C-kSk6KJ.js.map +1 -0
  109. package/dist/isURL-DeUPO_oR.cjs +20 -0
  110. package/dist/isURL-DeUPO_oR.cjs.map +1 -0
  111. package/dist/isValidDomain-BB9IGhJs.cjs +1845 -0
  112. package/dist/isValidDomain-BB9IGhJs.cjs.map +1 -0
  113. package/dist/isValidDomain-DoE98yhJ.js +1827 -0
  114. package/dist/isValidDomain-DoE98yhJ.js.map +1 -0
  115. package/dist/next/index.cjs +119 -214
  116. package/dist/next/index.cjs.map +1 -0
  117. package/dist/next/index.d.cts +220 -0
  118. package/dist/next/index.d.ts +203 -214
  119. package/dist/next/index.js +117 -212
  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 +34 -35
  125. package/dist/next/server/index.js +23 -38
  126. package/dist/next/server/index.js.map +1 -0
  127. package/dist/noop-B13_ii35.cjs +18 -0
  128. package/dist/noop-B13_ii35.cjs.map +1 -0
  129. package/dist/noop-ubqAIbHD.js +12 -0
  130. package/dist/noop-ubqAIbHD.js.map +1 -0
  131. package/dist/normalizeSpaces-Bg2IZW7W.js +23 -0
  132. package/dist/normalizeSpaces-Bg2IZW7W.js.map +1 -0
  133. package/dist/normalizeSpaces-ZXnR4Qzp.cjs +29 -0
  134. package/dist/normalizeSpaces-ZXnR4Qzp.cjs.map +1 -0
  135. package/dist/normalizeString-BDdkaXui.js +15 -0
  136. package/dist/normalizeString-BDdkaXui.js.map +1 -0
  137. package/dist/normalizeString-BE6ELqEb.cjs +21 -0
  138. package/dist/normalizeString-BE6ELqEb.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 +129 -134
  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 +234 -235
  148. package/dist/parsers/index.js +10 -12
  149. package/dist/parsers-BSBPgvsq.js +643 -0
  150. package/dist/parsers-BSBPgvsq.js.map +1 -0
  151. package/dist/parsers-OqDeffqc.cjs +649 -0
  152. package/dist/parsers-OqDeffqc.cjs.map +1 -0
  153. package/dist/parsing-Cao8b358.js +50 -0
  154. package/dist/parsing-Cao8b358.js.map +1 -0
  155. package/dist/parsing-DOGSCH6N.cjs +56 -0
  156. package/dist/parsing-DOGSCH6N.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-Bj6meyXV.js +256 -0
  162. package/dist/predicates-Bj6meyXV.js.map +1 -0
  163. package/dist/predicates-D0ubqgqy.cjs +412 -0
  164. package/dist/predicates-D0ubqgqy.cjs.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 +116 -119
  169. package/dist/promises/index.js +73 -13
  170. package/dist/promises/index.js.map +1 -0
  171. package/dist/punyCode-8SrbMWfM.js +179 -0
  172. package/dist/punyCode-8SrbMWfM.js.map +1 -0
  173. package/dist/punyCode-D-Qu6nj6.cjs +185 -0
  174. package/dist/punyCode-D-Qu6nj6.cjs.map +1 -0
  175. package/dist/removeSpaces-Bmc5DX4F.js +19 -0
  176. package/dist/removeSpaces-Bmc5DX4F.js.map +1 -0
  177. package/dist/removeSpaces-CWIvhZHg.cjs +25 -0
  178. package/dist/removeSpaces-CWIvhZHg.cjs.map +1 -0
  179. package/dist/rzl-utils.global.js +20 -9
  180. package/dist/safeJsonParse-BP38mwlj.js +184 -0
  181. package/dist/safeJsonParse-BP38mwlj.js.map +1 -0
  182. package/dist/safeJsonParse-Sms2CJf4.cjs +208 -0
  183. package/dist/safeJsonParse-Sms2CJf4.cjs.map +1 -0
  184. package/dist/safeStableStringify-CJtP89qn.cjs +106 -0
  185. package/dist/safeStableStringify-CJtP89qn.cjs.map +1 -0
  186. package/dist/safeStableStringify-CXOZ9Ub8.js +88 -0
  187. package/dist/safeStableStringify-CXOZ9Ub8.js.map +1 -0
  188. package/dist/strings/index.cjs +79 -81
  189. package/dist/strings/index.cjs.map +1 -0
  190. package/dist/strings/index.d.cts +12 -0
  191. package/dist/strings/index.d.ts +10 -775
  192. package/dist/strings/index.js +62 -14
  193. package/dist/strings/index.js.map +1 -0
  194. package/dist/tailwind/index.cjs +19 -47
  195. package/dist/tailwind/index.d.cts +12 -0
  196. package/dist/tailwind/index.d.ts +11 -712
  197. package/dist/tailwind/index.js +10 -12
  198. package/dist/tailwind-B2ssevxq.js +199 -0
  199. package/dist/tailwind-B2ssevxq.js.map +1 -0
  200. package/dist/tailwind-CHIx9uxu.cjs +247 -0
  201. package/dist/tailwind-CHIx9uxu.cjs.map +1 -0
  202. package/dist/toStringArrayUnRecursive-C4zYCja7.cjs +51 -0
  203. package/dist/toStringArrayUnRecursive-C4zYCja7.cjs.map +1 -0
  204. package/dist/toStringArrayUnRecursive-DJGtPsFb.js +39 -0
  205. package/dist/toStringArrayUnRecursive-DJGtPsFb.js.map +1 -0
  206. package/dist/urls/index.cjs +130 -57
  207. package/dist/urls/index.cjs.map +1 -0
  208. package/dist/urls/index.d.cts +737 -0
  209. package/dist/urls/index.d.ts +699 -708
  210. package/dist/urls/index.js +122 -26
  211. package/dist/urls/index.js.map +1 -0
  212. package/package.json +203 -194
  213. package/dist/chunk-2AFQ33D3.cjs +0 -64
  214. package/dist/chunk-2CYDJVGM.js +0 -246
  215. package/dist/chunk-2MW4JDQ2.cjs +0 -598
  216. package/dist/chunk-2VTDXC3N.cjs +0 -1825
  217. package/dist/chunk-44XX2P34.js +0 -209
  218. package/dist/chunk-4YLBKLGS.cjs +0 -18
  219. package/dist/chunk-566CXQW7.cjs +0 -560
  220. package/dist/chunk-57EPKYID.cjs +0 -397
  221. package/dist/chunk-5MGEC3YG.js +0 -63
  222. package/dist/chunk-6EF52423.cjs +0 -249
  223. package/dist/chunk-6SCOKU3S.js +0 -109
  224. package/dist/chunk-6VUXD3CF.js +0 -119
  225. package/dist/chunk-7B76BSNK.cjs +0 -118
  226. package/dist/chunk-7Y6I2DSU.cjs +0 -101
  227. package/dist/chunk-A7S7E2EE.cjs +0 -308
  228. package/dist/chunk-AJZ6PMMZ.js +0 -16
  229. package/dist/chunk-AXGBL2IO.cjs +0 -251
  230. package/dist/chunk-B4TC6FBV.cjs +0 -678
  231. package/dist/chunk-BAV5T2E3.cjs +0 -15
  232. package/dist/chunk-BKIJBNIE.js +0 -21
  233. package/dist/chunk-BNIMTFK5.js +0 -59
  234. package/dist/chunk-BXW7YXB7.js +0 -1823
  235. package/dist/chunk-CFYZC4S6.js +0 -53
  236. package/dist/chunk-CSG4SCL3.js +0 -1587
  237. package/dist/chunk-CWQW7AKK.js +0 -676
  238. package/dist/chunk-DVMHRLKP.cjs +0 -16
  239. package/dist/chunk-EN7LVZBZ.js +0 -548
  240. package/dist/chunk-EV4Y7HCY.cjs +0 -26
  241. package/dist/chunk-F66VDYIZ.cjs +0 -18
  242. package/dist/chunk-FLJX37EL.cjs +0 -30
  243. package/dist/chunk-GKC3UDMC.cjs +0 -1623
  244. package/dist/chunk-H65I3GRZ.cjs +0 -106
  245. package/dist/chunk-HHYWB7VZ.js +0 -24
  246. package/dist/chunk-HNGGISFL.cjs +0 -65
  247. package/dist/chunk-HNSQAVSZ.cjs +0 -35
  248. package/dist/chunk-HSP6IWZK.js +0 -17
  249. package/dist/chunk-IDZS7J6T.js +0 -242
  250. package/dist/chunk-JS6R55VL.js +0 -302
  251. package/dist/chunk-JZVT5FK7.js +0 -232
  252. package/dist/chunk-KHO2SBNA.cjs +0 -16
  253. package/dist/chunk-KIDJCMNJ.js +0 -33
  254. package/dist/chunk-KOLEURVT.cjs +0 -38
  255. package/dist/chunk-L4V53MQK.cjs +0 -269
  256. package/dist/chunk-L5RDAVVH.js +0 -14
  257. package/dist/chunk-NODTV4F3.js +0 -16
  258. package/dist/chunk-NYK5K3V2.cjs +0 -211
  259. package/dist/chunk-ODUO3RTL.cjs +0 -113
  260. package/dist/chunk-ONZFBJVW.js +0 -14
  261. package/dist/chunk-PFXCTE37.js +0 -28
  262. package/dist/chunk-PPST7QAQ.js +0 -587
  263. package/dist/chunk-Q5IMYDFL.cjs +0 -33
  264. package/dist/chunk-QFFBIOJ4.js +0 -31
  265. package/dist/chunk-QNKGP5DY.js +0 -14
  266. package/dist/chunk-RRQHMOPE.cjs +0 -19
  267. package/dist/chunk-RU5OSRBU.js +0 -95
  268. package/dist/chunk-SDMPEJ4F.js +0 -35
  269. package/dist/chunk-SYNL5IKP.js +0 -115
  270. package/dist/chunk-TCDOWZQE.js +0 -16
  271. package/dist/chunk-TQPGXGKB.cjs +0 -123
  272. package/dist/chunk-TULOI4GL.js +0 -370
  273. package/dist/chunk-UBHCP4N5.cjs +0 -36
  274. package/dist/chunk-UCHF3M34.cjs +0 -56
  275. package/dist/chunk-UDA26MCU.cjs +0 -16
  276. package/dist/chunk-V3C4FYZL.cjs +0 -18
  277. package/dist/chunk-VAAHZFBF.js +0 -32
  278. package/dist/chunk-VJDDGRIK.cjs +0 -16
  279. package/dist/chunk-WVSPXFTY.js +0 -14
  280. package/dist/chunk-WYP76WXB.js +0 -101
  281. package/dist/chunk-YDE4ZBB7.cjs +0 -237
  282. package/dist/chunk-YKQEOO7C.cjs +0 -23
  283. package/dist/chunk-YSZC56SZ.js +0 -264
  284. package/dist/chunk-YWHHVDT4.js +0 -13
  285. package/dist/index.d.ts +0 -24
  286. package/dist/isPlainObject-DTJVV2Kf.d.ts +0 -536
@@ -1,548 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.12.0.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- import { isNonEmptyValue, isTypedArray } from './chunk-KIDJCMNJ.js';
11
- import { filterNilArray } from './chunk-CFYZC4S6.js';
12
- import { isEmptyString } from './chunk-TCDOWZQE.js';
13
- import { assertIsString } from './chunk-BKIJBNIE.js';
14
- import { isRegExp, isEqual } from './chunk-WYP76WXB.js';
15
- import { isEmptyObject, isEmptyArray } from './chunk-SDMPEJ4F.js';
16
- import { assertIsArray } from './chunk-HSP6IWZK.js';
17
- import { safeStableStringify, isDate, isMap } from './chunk-6VUXD3CF.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-CSG4SCL3.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
- { keepUndefined: true }
273
- )}\`.`
274
- });
275
- if (!keysToDelete.every((k) => isPlainObject(k) && "key" in k)) {
276
- throw new TypeError(
277
- `Each element in Second Parameter (\`keysToDelete\`) must be of type \`plain-object\` with at least a "key" property (optionally "deep"), but received: \`${safeStableStringify(
278
- keysToDelete,
279
- { keepUndefined: true }
280
- )}\`.`
281
- );
282
- }
283
- let result = deepClone ? deepCloneSafe(object) : object;
284
- for (const { key, deep } of keysToDelete) {
285
- assertIsString(key, {
286
- message: ({ currentType, validType }) => `Parameter \`key\` at Second Parameter (\`keysToDelete\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
287
- });
288
- if (!isUndefined(deep) && !isBoolean(deep)) {
289
- throw new TypeError(
290
- `Parameter \`deep\` at Second Parameter (\`keysToDelete\`) \u2794 (key: "${key}", deep: ${deep}) must be of type \`boolean\` or \`undefined\`, but received: \`${getPreciseType(
291
- deep
292
- )}\`.`
293
- );
294
- }
295
- const path = key.split(".");
296
- result = deep ? deleteNestedKey(result, path) : deleteExactPathOnce(result, path);
297
- }
298
- return result;
299
- }
300
-
301
- function toNumberDeep(input, options = {}) {
302
- assertIsPlainObject(options, {
303
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
304
- });
305
- const removeEmptyObjects = hasOwnProp(options, "removeEmptyObjects") ? options.removeEmptyObjects : false;
306
- const removeEmptyArrays = hasOwnProp(options, "removeEmptyArrays") ? options.removeEmptyArrays : false;
307
- function _internal(input2, options2) {
308
- if (isNil(input2) || isRegExp(input2)) return void 0;
309
- const { removeEmptyArrays: removeEmptyArrays2, removeEmptyObjects: removeEmptyObjects2, isRoot } = options2;
310
- if (!isBoolean(removeEmptyObjects2) || !isBoolean(removeEmptyArrays2)) {
311
- throw new TypeError(
312
- `Parameters \`removeEmptyObjects\` and \`removeEmptyArrays\` property of the \`options\` (second parameter) must be of type \`boolean\`, but received: ['removeEmptyObjects': \`${getPreciseType(
313
- removeEmptyObjects2
314
- )}\`, 'removeEmptyArrays': \`${getPreciseType(removeEmptyArrays2)}\`].`
315
- );
316
- }
317
- if (isNumber(input2) || isBoolean(input2) || isNonEmptyString(input2)) {
318
- const num = Number(input2);
319
- return isInfinityNumber(num) || isNaN(num) ? void 0 : num;
320
- }
321
- if (isNumberObject(input2) || isStringObject(input2) || isBooleanObject(input2)) {
322
- const valOf = Number(input2.valueOf());
323
- return isInfinityNumber(valOf) || isNaN(valOf) ? void 0 : valOf;
324
- }
325
- if (isDate(input2, { skipInvalidDate: true })) {
326
- try {
327
- return !isNaN(input2.getTime()) ? input2.getTime() : 0;
328
- } catch {
329
- return 0;
330
- }
331
- }
332
- if (isBuffer(input2)) {
333
- const arr = Array.from(input2).map(
334
- (n) => _internal(n, {
335
- removeEmptyObjects: removeEmptyObjects2,
336
- removeEmptyArrays: removeEmptyArrays2,
337
- isRoot: false
338
- })
339
- ).filter((item) => !isUndefined(item));
340
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
341
- return arr;
342
- }
343
- if (isTypedArray(input2)) {
344
- if (input2 instanceof BigInt64Array || input2 instanceof BigUint64Array) {
345
- const newArray = Array.from(input2).map(
346
- (item) => _internal(item, {
347
- removeEmptyObjects: removeEmptyObjects2,
348
- removeEmptyArrays: removeEmptyArrays2,
349
- isRoot: false
350
- })
351
- ).filter((item) => !isUndefined(item));
352
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
353
- return newArray;
354
- } else {
355
- const newArray = Array.from(input2).map(
356
- (item) => _internal(item, {
357
- removeEmptyObjects: removeEmptyObjects2,
358
- removeEmptyArrays: removeEmptyArrays2,
359
- isRoot: false
360
- })
361
- ).filter((item) => !isUndefined(item));
362
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
363
- return newArray;
364
- }
365
- }
366
- if (isSet(input2)) {
367
- const newArray = Array.from(input2).map(
368
- (item) => _internal(item, {
369
- removeEmptyObjects: removeEmptyObjects2,
370
- removeEmptyArrays: removeEmptyArrays2,
371
- isRoot: false
372
- })
373
- ).filter((item) => !isUndefined(item));
374
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
375
- return newArray;
376
- }
377
- if (isMap(input2)) {
378
- let newArray = Array.from(input2.entries()).map(([k, v]) => {
379
- const key = _internal(k, {
380
- removeEmptyObjects: removeEmptyObjects2,
381
- removeEmptyArrays: removeEmptyArrays2,
382
- isRoot: false
383
- });
384
- const value = _internal(v, {
385
- removeEmptyObjects: removeEmptyObjects2,
386
- removeEmptyArrays: removeEmptyArrays2,
387
- isRoot: false
388
- });
389
- return !isUndefined(key) && !isUndefined(value) ? [key, value] : void 0;
390
- }).filter((item) => !isUndefined(item));
391
- if (removeEmptyArrays2) {
392
- newArray = newArray.filter((v) => !isEmptyArray(v));
393
- }
394
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
395
- return newArray;
396
- }
397
- if (isArray(input2)) {
398
- const newArray = input2.map(
399
- (item) => _internal(item, {
400
- removeEmptyObjects: removeEmptyObjects2,
401
- removeEmptyArrays: removeEmptyArrays2,
402
- isRoot: false
403
- })
404
- ).filter((item) => !isUndefined(item));
405
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
406
- return newArray;
407
- }
408
- if (isObject(input2)) {
409
- const newObject = {};
410
- for (const [key, value] of Object.entries(input2)) {
411
- const convertedValue = _internal(value, {
412
- removeEmptyObjects: removeEmptyObjects2,
413
- removeEmptyArrays: removeEmptyArrays2,
414
- isRoot: false
415
- });
416
- if (!isUndefined(convertedValue)) {
417
- newObject[key] = convertedValue;
418
- }
419
- }
420
- if (removeEmptyObjects2 && isEmptyObject(newObject)) {
421
- return isRoot ? {} : void 0;
422
- }
423
- return newObject;
424
- }
425
- return void 0;
426
- }
427
- return _internal(input, {
428
- removeEmptyObjects,
429
- removeEmptyArrays,
430
- isRoot: true
431
- });
432
- }
433
-
434
- function toStringDeep(input, options = {}) {
435
- assertIsPlainObject(options, {
436
- message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
437
- });
438
- const removeEmptyObjects = hasOwnProp(options, "removeEmptyObjects") ? options.removeEmptyObjects : false;
439
- const removeEmptyArrays = hasOwnProp(options, "removeEmptyArrays") ? options.removeEmptyArrays : false;
440
- function _internal(input2, options2) {
441
- if (isNil(input2) || isInfinityNumber(input2)) return void 0;
442
- const { removeEmptyArrays: removeEmptyArrays2, removeEmptyObjects: removeEmptyObjects2, isRoot } = options2;
443
- if (!isBoolean(removeEmptyObjects2) || !isBoolean(removeEmptyArrays2)) {
444
- throw new TypeError(
445
- `Parameters \`removeEmptyObjects\` and \`removeEmptyArrays\` property of the \`options\` (second parameter) must be of type \`boolean\`, but received: ['removeEmptyObjects': \`${getPreciseType(
446
- removeEmptyObjects2
447
- )}\`, 'removeEmptyArrays': \`${getPreciseType(removeEmptyArrays2)}\`].`
448
- );
449
- }
450
- if (isNumber(input2) || isString(input2) || isBoolean(input2)) return String(input2);
451
- if (isNumberObject(input2)) {
452
- const valOf = input2.valueOf();
453
- return isInfinityNumber(valOf) || isNaN(valOf) ? void 0 : valOf.toString();
454
- }
455
- if (isStringObject(input2)) return input2.valueOf();
456
- if (isBooleanObject(input2)) return input2.valueOf().toString();
457
- if (isDate(input2, { skipInvalidDate: true })) {
458
- try {
459
- return input2.toISOString();
460
- } catch {
461
- return input2.toString();
462
- }
463
- }
464
- if (isRegExp(input2)) return input2.toString();
465
- if (isBuffer(input2)) {
466
- return Array.from(input2).map((v) => String(v)).filter((v) => !isUndefined(v));
467
- }
468
- if (isTypedArray(input2)) {
469
- if (input2 instanceof BigInt64Array || input2 instanceof BigUint64Array) {
470
- const newArray = Array.from(input2).map(
471
- (item) => _internal(item, {
472
- removeEmptyObjects: removeEmptyObjects2,
473
- removeEmptyArrays: removeEmptyArrays2,
474
- isRoot: false
475
- })
476
- ).map((v) => String(v)).filter((item) => !isUndefined(item));
477
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
478
- return newArray;
479
- } else {
480
- const newArray = Array.from(input2).map(
481
- (item) => _internal(item, {
482
- removeEmptyObjects: removeEmptyObjects2,
483
- removeEmptyArrays: removeEmptyArrays2,
484
- isRoot: false
485
- })
486
- ).map((v) => String(v)).filter((item) => !isUndefined(item));
487
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
488
- return newArray;
489
- }
490
- }
491
- if (isSet(input2)) {
492
- const arr = Array.from(input2).map(
493
- (v) => _internal(v, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false })
494
- ).filter((v) => !isUndefined(v));
495
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
496
- return arr;
497
- }
498
- if (isMap(input2)) {
499
- const arr = Array.from(input2.entries()).map(([k, v]) => [
500
- _internal(k, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false }),
501
- _internal(v, { removeEmptyObjects: removeEmptyObjects2, removeEmptyArrays: removeEmptyArrays2, isRoot: false })
502
- ]).filter(([k, v]) => !isUndefined(k) && !isUndefined(v));
503
- if (removeEmptyArrays2 && isEmptyArray(arr)) return void 0;
504
- return arr;
505
- }
506
- if (isArray(input2)) {
507
- let newArray = input2.map(
508
- (item) => _internal(item, {
509
- removeEmptyObjects: removeEmptyObjects2,
510
- removeEmptyArrays: removeEmptyArrays2,
511
- isRoot: false
512
- })
513
- ).filter((item) => !isUndefined(item));
514
- if (removeEmptyArrays2) {
515
- newArray = newArray.filter((v) => !(isArray(v) && v.length === 0));
516
- }
517
- if (removeEmptyArrays2 && isEmptyArray(newArray)) return void 0;
518
- return newArray;
519
- }
520
- if (isObject(input2)) {
521
- const newObject = {};
522
- for (const [key, value] of Object.entries(input2)) {
523
- const convertedValue = _internal(value, {
524
- removeEmptyObjects: removeEmptyObjects2,
525
- removeEmptyArrays: removeEmptyArrays2,
526
- isRoot: false
527
- });
528
- if (!isUndefined(convertedValue)) {
529
- newObject[key] = convertedValue;
530
- } else if (isArray(value) && !removeEmptyArrays2) {
531
- newObject[key] = [];
532
- }
533
- }
534
- if (removeEmptyObjects2 && Object.keys(newObject).length === 0) {
535
- return isRoot ? {} : void 0;
536
- }
537
- return newObject;
538
- }
539
- return void 0;
540
- }
541
- return _internal(input, {
542
- removeEmptyObjects,
543
- removeEmptyArrays,
544
- isRoot: true
545
- });
546
- }
547
-
548
- export { convertType, dedupeArray, removeObjectPaths, toBooleanContent, toBooleanContentDeep, toBooleanExplicit, toBooleanLoose, toNumberArrayUnRecursive, toNumberDeep, toStringDeep, toStringDeepForce };
@@ -1,26 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.12.0.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- 'use strict';
11
-
12
- var chunkGKC3UDMC_cjs = require('./chunk-GKC3UDMC.cjs');
13
-
14
- var removeSpaces = (value, options = {
15
- trimOnly: false
16
- }) => {
17
- if (!chunkGKC3UDMC_cjs.isNonEmptyString(value)) return "";
18
- if (!chunkGKC3UDMC_cjs.isPlainObject(options)) {
19
- options = {};
20
- }
21
- const { trimOnly = false } = options;
22
- if (trimOnly) return value.trim();
23
- return value.replace(/\s+/g, "");
24
- };
25
-
26
- exports.removeSpaces = removeSpaces;
@@ -1,18 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.12.0.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- 'use strict';
11
-
12
- var chunkGKC3UDMC_cjs = require('./chunk-GKC3UDMC.cjs');
13
-
14
- var normalizeString = (input) => {
15
- return chunkGKC3UDMC_cjs.isNonEmptyString(input) ? input.trim() : "";
16
- };
17
-
18
- exports.normalizeString = normalizeString;
@@ -1,30 +0,0 @@
1
- /*!
2
- * ====================================================
3
- * Rzl Utils-JS.
4
- * ----------------------------------------------------
5
- * Version: 3.12.0.
6
- * Author: Rizalvin Dwiky.
7
- * Repository: https://github.com/rzl-zone/utils-js.
8
- * ====================================================
9
- */
10
- 'use strict';
11
-
12
- var chunkGKC3UDMC_cjs = require('./chunk-GKC3UDMC.cjs');
13
-
14
- var normalizeSpaces = (value, options = {
15
- withTrim: true,
16
- trimOnly: false
17
- }) => {
18
- if (!chunkGKC3UDMC_cjs.isNonEmptyString(value)) return "";
19
- if (!chunkGKC3UDMC_cjs.isPlainObject(options)) {
20
- options = {};
21
- }
22
- const { trimOnly = false, withTrim = true } = options;
23
- if (trimOnly) return value.trim();
24
- if (withTrim) {
25
- value = value.trim();
26
- }
27
- return value.replace(/\s+/g, " ");
28
- };
29
-
30
- exports.normalizeSpaces = normalizeSpaces;