@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.
- package/{LICENSE.md → LICENSE} +3 -3
- package/README.md +69 -96
- package/dist/.references/index.d.cts +25 -0
- package/dist/.references/index.d.ts +25 -0
- package/dist/assertIsArray-DJXkjHZs.cjs +26 -0
- package/dist/assertIsArray-DJXkjHZs.cjs.map +1 -0
- package/dist/assertIsArray-bTA3XLjq.js +20 -0
- package/dist/assertIsArray-bTA3XLjq.js.map +1 -0
- package/dist/assertIsBoolean-C8WEXVr2.cjs +1283 -0
- package/dist/assertIsBoolean-C8WEXVr2.cjs.map +1 -0
- package/dist/assertIsBoolean-DR1SaXPD.js +1073 -0
- package/dist/assertIsBoolean-DR1SaXPD.js.map +1 -0
- package/dist/assertIsString-BiHQSrB2.cjs +26 -0
- package/dist/assertIsString-BiHQSrB2.cjs.map +1 -0
- package/dist/assertIsString-CEB07_83.js +20 -0
- package/dist/assertIsString-CEB07_83.js.map +1 -0
- package/dist/assertions/index.cjs +37 -40
- package/dist/assertions/index.cjs.map +1 -0
- package/dist/assertions/index.d.cts +12 -0
- package/dist/assertions/index.d.ts +10 -824
- package/dist/assertions/index.js +30 -13
- package/dist/assertions/index.js.map +1 -0
- package/dist/conversions/index.cjs +34 -103
- package/dist/conversions/index.d.cts +12 -0
- package/dist/conversions/index.d.ts +10 -1791
- package/dist/conversions/index.js +14 -24
- package/dist/conversions-BNIh_tCH.js +380 -0
- package/dist/conversions-BNIh_tCH.js.map +1 -0
- package/dist/conversions-D_Kh0a_C.cjs +446 -0
- package/dist/conversions-D_Kh0a_C.cjs.map +1 -0
- package/dist/events/index.cjs +55 -31
- package/dist/events/index.cjs.map +1 -0
- package/dist/events/index.d.cts +176 -0
- package/dist/events/index.d.ts +164 -166
- package/dist/events/index.js +50 -12
- package/dist/events/index.js.map +1 -0
- package/dist/formatEnvPort-B3OLxQk9.cjs +171 -0
- package/dist/formatEnvPort-B3OLxQk9.cjs.map +1 -0
- package/dist/formatEnvPort-ByFVLjSV.js +159 -0
- package/dist/formatEnvPort-ByFVLjSV.js.map +1 -0
- package/dist/formatters/index.cjs +21 -61
- package/dist/formatters/index.d.cts +12 -0
- package/dist/formatters/index.d.ts +10 -2152
- package/dist/formatters/index.js +10 -18
- package/dist/formatters--1m_vpE8.js +369 -0
- package/dist/formatters--1m_vpE8.js.map +1 -0
- package/dist/formatters-Cbij0XLU.cjs +429 -0
- package/dist/formatters-Cbij0XLU.cjs.map +1 -0
- package/dist/generators/index.cjs +165 -41
- package/dist/generators/index.cjs.map +1 -0
- package/dist/generators/index.d.cts +12 -0
- package/dist/generators/index.d.ts +10 -338
- package/dist/generators/index.js +158 -14
- package/dist/generators/index.js.map +1 -0
- package/dist/index-59zbLcPr.d.ts +340 -0
- package/dist/index-B6tawc8L.d.cts +1716 -0
- package/dist/index-C267akkJ.d.ts +2158 -0
- package/dist/index-CeBC2Vvl.d.cts +2361 -0
- package/dist/index-CgRDTI6f.d.ts +822 -0
- package/dist/index-CoiUBVmr.d.ts +720 -0
- package/dist/index-D4fcasfZ.d.cts +720 -0
- package/dist/index-DDrSQKIc.d.ts +1716 -0
- package/dist/index-DsGxO31H.d.cts +765 -0
- package/dist/index-Hg1qJkjl.d.ts +765 -0
- package/dist/index-Qm3iFwd0.d.cts +2158 -0
- package/dist/index-UPp94Agr.d.ts +2361 -0
- package/dist/index-gBA_8SuF.d.cts +340 -0
- package/dist/index-jyDqzicx.d.cts +822 -0
- package/dist/isBigInt-C4krUeAw.cjs +20 -0
- package/dist/isBigInt-C4krUeAw.cjs.map +1 -0
- package/dist/isBigInt-DKe0M6hp.js +14 -0
- package/dist/isBigInt-DKe0M6hp.js.map +1 -0
- package/dist/isEmptyObject-DCipFwxJ.js +25 -0
- package/dist/isEmptyObject-DCipFwxJ.js.map +1 -0
- package/dist/isEmptyObject-ZkSwRC_D.cjs +37 -0
- package/dist/isEmptyObject-ZkSwRC_D.cjs.map +1 -0
- package/dist/isEmptyString-BXzKAC2j.js +15 -0
- package/dist/isEmptyString-BXzKAC2j.js.map +1 -0
- package/dist/isEmptyString-UiiUsSQj.cjs +21 -0
- package/dist/isEmptyString-UiiUsSQj.cjs.map +1 -0
- package/dist/isEmptyValue-BQzcjVaL.cjs +30 -0
- package/dist/isEmptyValue-BQzcjVaL.cjs.map +1 -0
- package/dist/isEmptyValue-jqOr7OHD.js +24 -0
- package/dist/isEmptyValue-jqOr7OHD.js.map +1 -0
- package/dist/isEqual-BX49cF9m.js +87 -0
- package/dist/isEqual-BX49cF9m.js.map +1 -0
- package/dist/isEqual-BvumA3RA.cjs +111 -0
- package/dist/isEqual-BvumA3RA.cjs.map +1 -0
- package/dist/isFinite-BCnaDpod.js +15 -0
- package/dist/isFinite-BCnaDpod.js.map +1 -0
- package/dist/isFinite-D24ZaE6c.cjs +21 -0
- package/dist/isFinite-D24ZaE6c.cjs.map +1 -0
- package/dist/isInteger-Caeuz0rB.cjs +20 -0
- package/dist/isInteger-Caeuz0rB.cjs.map +1 -0
- package/dist/isInteger-naMbJsxJ.js +14 -0
- package/dist/isInteger-naMbJsxJ.js.map +1 -0
- package/dist/isPlainObject-BF-2-phb.d.cts +339 -0
- package/dist/isPlainObject-DxNDL8XU.d.ts +339 -0
- package/dist/isServer-BJHVnixd.cjs +20 -0
- package/dist/isServer-BJHVnixd.cjs.map +1 -0
- package/dist/isServer-Da3o3XSs.js +14 -0
- package/dist/isServer-Da3o3XSs.js.map +1 -0
- package/dist/isTypedArray-DuNA8tK6.js +31 -0
- package/dist/isTypedArray-DuNA8tK6.js.map +1 -0
- package/dist/isTypedArray-TJptiw2b.cjs +43 -0
- package/dist/isTypedArray-TJptiw2b.cjs.map +1 -0
- package/dist/isURL-C-kSk6KJ.js +14 -0
- package/dist/isURL-C-kSk6KJ.js.map +1 -0
- package/dist/isURL-DeUPO_oR.cjs +20 -0
- package/dist/isURL-DeUPO_oR.cjs.map +1 -0
- package/dist/isValidDomain-BB9IGhJs.cjs +1845 -0
- package/dist/isValidDomain-BB9IGhJs.cjs.map +1 -0
- package/dist/isValidDomain-DoE98yhJ.js +1827 -0
- package/dist/isValidDomain-DoE98yhJ.js.map +1 -0
- package/dist/next/index.cjs +119 -214
- package/dist/next/index.cjs.map +1 -0
- package/dist/next/index.d.cts +220 -0
- package/dist/next/index.d.ts +203 -214
- package/dist/next/index.js +117 -212
- package/dist/next/index.js.map +1 -0
- package/dist/next/server/index.cjs +25 -40
- package/dist/next/server/index.cjs.map +1 -0
- package/dist/next/server/index.d.cts +39 -0
- package/dist/next/server/index.d.ts +34 -35
- package/dist/next/server/index.js +23 -38
- package/dist/next/server/index.js.map +1 -0
- package/dist/noop-B13_ii35.cjs +18 -0
- package/dist/noop-B13_ii35.cjs.map +1 -0
- package/dist/noop-ubqAIbHD.js +12 -0
- package/dist/noop-ubqAIbHD.js.map +1 -0
- package/dist/normalizeSpaces-Bg2IZW7W.js +23 -0
- package/dist/normalizeSpaces-Bg2IZW7W.js.map +1 -0
- package/dist/normalizeSpaces-ZXnR4Qzp.cjs +29 -0
- package/dist/normalizeSpaces-ZXnR4Qzp.cjs.map +1 -0
- package/dist/normalizeString-BDdkaXui.js +15 -0
- package/dist/normalizeString-BDdkaXui.js.map +1 -0
- package/dist/normalizeString-BE6ELqEb.cjs +21 -0
- package/dist/normalizeString-BE6ELqEb.cjs.map +1 -0
- package/dist/operations/index.cjs +65 -32
- package/dist/operations/index.cjs.map +1 -0
- package/dist/operations/index.d.cts +139 -0
- package/dist/operations/index.d.ts +129 -134
- package/dist/operations/index.js +61 -17
- package/dist/operations/index.js.map +1 -0
- package/dist/parsers/index.cjs +12 -19
- package/dist/parsers/index.d.cts +239 -0
- package/dist/parsers/index.d.ts +234 -235
- package/dist/parsers/index.js +10 -12
- package/dist/parsers-BSBPgvsq.js +643 -0
- package/dist/parsers-BSBPgvsq.js.map +1 -0
- package/dist/parsers-OqDeffqc.cjs +649 -0
- package/dist/parsers-OqDeffqc.cjs.map +1 -0
- package/dist/parsing-Cao8b358.js +50 -0
- package/dist/parsing-Cao8b358.js.map +1 -0
- package/dist/parsing-DOGSCH6N.cjs +56 -0
- package/dist/parsing-DOGSCH6N.cjs.map +1 -0
- package/dist/predicates/index.cjs +91 -296
- package/dist/predicates/index.d.cts +13 -0
- package/dist/predicates/index.d.ts +12 -2482
- package/dist/predicates/index.js +23 -25
- package/dist/predicates-Bj6meyXV.js +256 -0
- package/dist/predicates-Bj6meyXV.js.map +1 -0
- package/dist/predicates-D0ubqgqy.cjs +412 -0
- package/dist/predicates-D0ubqgqy.cjs.map +1 -0
- package/dist/promises/index.cjs +76 -24
- package/dist/promises/index.cjs.map +1 -0
- package/dist/promises/index.d.cts +123 -0
- package/dist/promises/index.d.ts +116 -119
- package/dist/promises/index.js +73 -13
- package/dist/promises/index.js.map +1 -0
- package/dist/punyCode-8SrbMWfM.js +179 -0
- package/dist/punyCode-8SrbMWfM.js.map +1 -0
- package/dist/punyCode-D-Qu6nj6.cjs +185 -0
- package/dist/punyCode-D-Qu6nj6.cjs.map +1 -0
- package/dist/removeSpaces-Bmc5DX4F.js +19 -0
- package/dist/removeSpaces-Bmc5DX4F.js.map +1 -0
- package/dist/removeSpaces-CWIvhZHg.cjs +25 -0
- package/dist/removeSpaces-CWIvhZHg.cjs.map +1 -0
- package/dist/rzl-utils.global.js +20 -9
- package/dist/safeJsonParse-BP38mwlj.js +184 -0
- package/dist/safeJsonParse-BP38mwlj.js.map +1 -0
- package/dist/safeJsonParse-Sms2CJf4.cjs +208 -0
- package/dist/safeJsonParse-Sms2CJf4.cjs.map +1 -0
- package/dist/safeStableStringify-CJtP89qn.cjs +106 -0
- package/dist/safeStableStringify-CJtP89qn.cjs.map +1 -0
- package/dist/safeStableStringify-CXOZ9Ub8.js +88 -0
- package/dist/safeStableStringify-CXOZ9Ub8.js.map +1 -0
- package/dist/strings/index.cjs +79 -81
- package/dist/strings/index.cjs.map +1 -0
- package/dist/strings/index.d.cts +12 -0
- package/dist/strings/index.d.ts +10 -775
- package/dist/strings/index.js +62 -14
- package/dist/strings/index.js.map +1 -0
- package/dist/tailwind/index.cjs +19 -47
- package/dist/tailwind/index.d.cts +12 -0
- package/dist/tailwind/index.d.ts +11 -712
- package/dist/tailwind/index.js +10 -12
- package/dist/tailwind-B2ssevxq.js +199 -0
- package/dist/tailwind-B2ssevxq.js.map +1 -0
- package/dist/tailwind-CHIx9uxu.cjs +247 -0
- package/dist/tailwind-CHIx9uxu.cjs.map +1 -0
- package/dist/toStringArrayUnRecursive-C4zYCja7.cjs +51 -0
- package/dist/toStringArrayUnRecursive-C4zYCja7.cjs.map +1 -0
- package/dist/toStringArrayUnRecursive-DJGtPsFb.js +39 -0
- package/dist/toStringArrayUnRecursive-DJGtPsFb.js.map +1 -0
- package/dist/urls/index.cjs +130 -57
- package/dist/urls/index.cjs.map +1 -0
- package/dist/urls/index.d.cts +737 -0
- package/dist/urls/index.d.ts +699 -708
- package/dist/urls/index.js +122 -26
- package/dist/urls/index.js.map +1 -0
- package/package.json +203 -194
- package/dist/chunk-2AFQ33D3.cjs +0 -64
- package/dist/chunk-2CYDJVGM.js +0 -246
- package/dist/chunk-2MW4JDQ2.cjs +0 -598
- package/dist/chunk-2VTDXC3N.cjs +0 -1825
- package/dist/chunk-44XX2P34.js +0 -209
- package/dist/chunk-4YLBKLGS.cjs +0 -18
- package/dist/chunk-566CXQW7.cjs +0 -560
- package/dist/chunk-57EPKYID.cjs +0 -397
- package/dist/chunk-5MGEC3YG.js +0 -63
- package/dist/chunk-6EF52423.cjs +0 -249
- package/dist/chunk-6SCOKU3S.js +0 -109
- package/dist/chunk-6VUXD3CF.js +0 -119
- package/dist/chunk-7B76BSNK.cjs +0 -118
- package/dist/chunk-7Y6I2DSU.cjs +0 -101
- package/dist/chunk-A7S7E2EE.cjs +0 -308
- package/dist/chunk-AJZ6PMMZ.js +0 -16
- package/dist/chunk-AXGBL2IO.cjs +0 -251
- package/dist/chunk-B4TC6FBV.cjs +0 -678
- package/dist/chunk-BAV5T2E3.cjs +0 -15
- package/dist/chunk-BKIJBNIE.js +0 -21
- package/dist/chunk-BNIMTFK5.js +0 -59
- package/dist/chunk-BXW7YXB7.js +0 -1823
- package/dist/chunk-CFYZC4S6.js +0 -53
- package/dist/chunk-CSG4SCL3.js +0 -1587
- package/dist/chunk-CWQW7AKK.js +0 -676
- package/dist/chunk-DVMHRLKP.cjs +0 -16
- package/dist/chunk-EN7LVZBZ.js +0 -548
- package/dist/chunk-EV4Y7HCY.cjs +0 -26
- package/dist/chunk-F66VDYIZ.cjs +0 -18
- package/dist/chunk-FLJX37EL.cjs +0 -30
- package/dist/chunk-GKC3UDMC.cjs +0 -1623
- package/dist/chunk-H65I3GRZ.cjs +0 -106
- package/dist/chunk-HHYWB7VZ.js +0 -24
- package/dist/chunk-HNGGISFL.cjs +0 -65
- package/dist/chunk-HNSQAVSZ.cjs +0 -35
- package/dist/chunk-HSP6IWZK.js +0 -17
- package/dist/chunk-IDZS7J6T.js +0 -242
- package/dist/chunk-JS6R55VL.js +0 -302
- package/dist/chunk-JZVT5FK7.js +0 -232
- package/dist/chunk-KHO2SBNA.cjs +0 -16
- package/dist/chunk-KIDJCMNJ.js +0 -33
- package/dist/chunk-KOLEURVT.cjs +0 -38
- package/dist/chunk-L4V53MQK.cjs +0 -269
- package/dist/chunk-L5RDAVVH.js +0 -14
- package/dist/chunk-NODTV4F3.js +0 -16
- package/dist/chunk-NYK5K3V2.cjs +0 -211
- package/dist/chunk-ODUO3RTL.cjs +0 -113
- package/dist/chunk-ONZFBJVW.js +0 -14
- package/dist/chunk-PFXCTE37.js +0 -28
- package/dist/chunk-PPST7QAQ.js +0 -587
- package/dist/chunk-Q5IMYDFL.cjs +0 -33
- package/dist/chunk-QFFBIOJ4.js +0 -31
- package/dist/chunk-QNKGP5DY.js +0 -14
- package/dist/chunk-RRQHMOPE.cjs +0 -19
- package/dist/chunk-RU5OSRBU.js +0 -95
- package/dist/chunk-SDMPEJ4F.js +0 -35
- package/dist/chunk-SYNL5IKP.js +0 -115
- package/dist/chunk-TCDOWZQE.js +0 -16
- package/dist/chunk-TQPGXGKB.cjs +0 -123
- package/dist/chunk-TULOI4GL.js +0 -370
- package/dist/chunk-UBHCP4N5.cjs +0 -36
- package/dist/chunk-UCHF3M34.cjs +0 -56
- package/dist/chunk-UDA26MCU.cjs +0 -16
- package/dist/chunk-V3C4FYZL.cjs +0 -18
- package/dist/chunk-VAAHZFBF.js +0 -32
- package/dist/chunk-VJDDGRIK.cjs +0 -16
- package/dist/chunk-WVSPXFTY.js +0 -14
- package/dist/chunk-WYP76WXB.js +0 -101
- package/dist/chunk-YDE4ZBB7.cjs +0 -237
- package/dist/chunk-YKQEOO7C.cjs +0 -23
- package/dist/chunk-YSZC56SZ.js +0 -264
- package/dist/chunk-YWHHVDT4.js +0 -13
- package/dist/index.d.ts +0 -24
- package/dist/isPlainObject-DTJVV2Kf.d.ts +0 -536
package/dist/chunk-YDE4ZBB7.cjs
DELETED
|
@@ -1,237 +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 chunkKHO2SBNA_cjs = require('./chunk-KHO2SBNA.cjs');
|
|
13
|
-
var chunkF66VDYIZ_cjs = require('./chunk-F66VDYIZ.cjs');
|
|
14
|
-
var chunkUCHF3M34_cjs = require('./chunk-UCHF3M34.cjs');
|
|
15
|
-
var chunkQ5IMYDFL_cjs = require('./chunk-Q5IMYDFL.cjs');
|
|
16
|
-
var chunkDVMHRLKP_cjs = require('./chunk-DVMHRLKP.cjs');
|
|
17
|
-
var chunk6EF52423_cjs = require('./chunk-6EF52423.cjs');
|
|
18
|
-
var chunk4YLBKLGS_cjs = require('./chunk-4YLBKLGS.cjs');
|
|
19
|
-
var chunkRRQHMOPE_cjs = require('./chunk-RRQHMOPE.cjs');
|
|
20
|
-
var chunkTQPGXGKB_cjs = require('./chunk-TQPGXGKB.cjs');
|
|
21
|
-
var chunkGKC3UDMC_cjs = require('./chunk-GKC3UDMC.cjs');
|
|
22
|
-
|
|
23
|
-
var constructURL = (baseUrl, queryParams, removeParams) => {
|
|
24
|
-
if (chunkGKC3UDMC_cjs.isString(baseUrl)) {
|
|
25
|
-
if (chunk4YLBKLGS_cjs.isEmptyString(baseUrl)) {
|
|
26
|
-
throw new TypeError(`First parameter (\`baseUrl\`) cannot be an empty-string.`);
|
|
27
|
-
}
|
|
28
|
-
baseUrl = chunkF66VDYIZ_cjs.normalizeString(baseUrl);
|
|
29
|
-
} else if (!chunkKHO2SBNA_cjs.isURL(baseUrl)) {
|
|
30
|
-
throw new TypeError(
|
|
31
|
-
`First parameter (\`baseUrl\`) must be of type an URL instance or a \`string\` and a non empty-string, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
32
|
-
baseUrl
|
|
33
|
-
)}\`, with current value: \`${chunkTQPGXGKB_cjs.safeStableStringify(baseUrl, {
|
|
34
|
-
keepUndefined: true
|
|
35
|
-
})}\`.`
|
|
36
|
-
);
|
|
37
|
-
}
|
|
38
|
-
if (!chunkGKC3UDMC_cjs.isUndefined(removeParams)) {
|
|
39
|
-
chunkRRQHMOPE_cjs.assertIsArray(removeParams, {
|
|
40
|
-
message: ({ currentType, validType }) => `Third parameter (\`removeParams\`) must be of type \`${validType} of strings\`, but received: \`${currentType}\`.`
|
|
41
|
-
});
|
|
42
|
-
if (!removeParams.every((param) => chunkGKC3UDMC_cjs.isNonEmptyString(param))) {
|
|
43
|
-
throw new TypeError(
|
|
44
|
-
`Third parameter (\`removeParams\`) must be of type \`array\` and contains \`string\` only and non empty-string.`
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
try {
|
|
49
|
-
if (!chunkGKC3UDMC_cjs.isUndefined(queryParams) && !chunkGKC3UDMC_cjs.isFunction(queryParams[Symbol.iterator])) {
|
|
50
|
-
throw new TypeError(
|
|
51
|
-
`Second parameter (\`queryParams\`) must be iterable (like URLSearchParams.entries() or an array of [[string, string | number]...]), but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
52
|
-
queryParams
|
|
53
|
-
)}\`, with value: \`${chunkTQPGXGKB_cjs.safeStableStringify(queryParams, {
|
|
54
|
-
keepUndefined: true
|
|
55
|
-
})}\`.`
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
const urlInstance = new URL(baseUrl);
|
|
59
|
-
if (!chunkGKC3UDMC_cjs.isUndefined(queryParams)) {
|
|
60
|
-
const paramObject = Object.fromEntries(queryParams);
|
|
61
|
-
if (!chunkQ5IMYDFL_cjs.isEmptyValue(paramObject)) {
|
|
62
|
-
const mergedParams = new URLSearchParams(urlInstance.search);
|
|
63
|
-
for (const [key, value] of Object.entries(paramObject)) {
|
|
64
|
-
if (!chunkGKC3UDMC_cjs.isNonEmptyString(value) && !chunkGKC3UDMC_cjs.isNumber(value, { includeNaN: true })) {
|
|
65
|
-
throw new TypeError(
|
|
66
|
-
`Second parameter (\`queryParams\`) must be iterable (like URLSearchParams.entries() or an array of [[string, string | number]...]), but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
67
|
-
queryParams
|
|
68
|
-
)}\`, with value: \`${chunkTQPGXGKB_cjs.safeStableStringify(queryParams, {
|
|
69
|
-
keepUndefined: true
|
|
70
|
-
})}\`.`
|
|
71
|
-
);
|
|
72
|
-
}
|
|
73
|
-
mergedParams.set(key, String(value));
|
|
74
|
-
}
|
|
75
|
-
if (removeParams?.length) {
|
|
76
|
-
chunkUCHF3M34_cjs.toStringArrayUnRecursive(removeParams).map((paramKey) => {
|
|
77
|
-
mergedParams.delete(paramKey);
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
urlInstance.search = mergedParams.toString();
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
removeParams?.forEach((param) => urlInstance.searchParams.delete(param));
|
|
84
|
-
return urlInstance;
|
|
85
|
-
} catch (error) {
|
|
86
|
-
if (chunkGKC3UDMC_cjs.isError(error)) throw error;
|
|
87
|
-
throw new Error(
|
|
88
|
-
"Failed to construct a valid URL in `constructURL()`, Error:" + error
|
|
89
|
-
);
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
var extractURLs = (url) => {
|
|
94
|
-
if (!chunkGKC3UDMC_cjs.isNonEmptyString(url)) return null;
|
|
95
|
-
let decoded;
|
|
96
|
-
try {
|
|
97
|
-
decoded = decodeURIComponent(url);
|
|
98
|
-
} catch {
|
|
99
|
-
return null;
|
|
100
|
-
}
|
|
101
|
-
const urlPattern = /https?:\/\/.*?(?=https?:\/\/|\s|$)/g;
|
|
102
|
-
const matches = decoded.match(urlPattern);
|
|
103
|
-
if (!matches) return null;
|
|
104
|
-
const cleaned = matches.map((url2) => url2.replace(/[.,;:!?)]*$/, "")).filter((url2) => {
|
|
105
|
-
try {
|
|
106
|
-
const u = new URL(url2);
|
|
107
|
-
return u.protocol === "http:" || u.protocol === "https:";
|
|
108
|
-
} catch {
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
return cleaned.length ? cleaned : null;
|
|
113
|
-
};
|
|
114
|
-
|
|
115
|
-
var getFirstPrefixPathname = (result, defaultValue = "/") => {
|
|
116
|
-
if (!chunkGKC3UDMC_cjs.isNonEmptyString(defaultValue)) {
|
|
117
|
-
throw new TypeError(
|
|
118
|
-
`Second parameter (\`defaultValue\`) must be of type \`string\` and not an \`empty-string\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
119
|
-
defaultValue
|
|
120
|
-
)}\`, with value: \`${chunkTQPGXGKB_cjs.safeStableStringify(defaultValue, {
|
|
121
|
-
keepUndefined: true
|
|
122
|
-
})}\`.`
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
if (chunkGKC3UDMC_cjs.isArray(result)) {
|
|
126
|
-
if (!result.every((item) => chunkGKC3UDMC_cjs.isString(item))) {
|
|
127
|
-
throw new TypeError(
|
|
128
|
-
`First parameter (\`result\`) must be of type \`string\` or \`array of string\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
129
|
-
result
|
|
130
|
-
)}\`, with value: \`${chunkTQPGXGKB_cjs.safeStableStringify(result, {
|
|
131
|
-
keepUndefined: true
|
|
132
|
-
})}\`.`
|
|
133
|
-
);
|
|
134
|
-
}
|
|
135
|
-
for (const item of result) {
|
|
136
|
-
const normalized = chunk6EF52423_cjs.normalizePathname(item);
|
|
137
|
-
if (normalized !== "/") {
|
|
138
|
-
return normalized;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
return chunk6EF52423_cjs.normalizePathname(defaultValue);
|
|
142
|
-
}
|
|
143
|
-
if (chunkGKC3UDMC_cjs.isString(result)) {
|
|
144
|
-
const normalized = chunk6EF52423_cjs.normalizePathname(result);
|
|
145
|
-
return normalized !== "/" ? normalized : chunk6EF52423_cjs.normalizePathname(defaultValue);
|
|
146
|
-
}
|
|
147
|
-
if (!chunkGKC3UDMC_cjs.isNil(result)) {
|
|
148
|
-
throw new TypeError(
|
|
149
|
-
`First parameter (\`result\`) must be of type \`string\`, \`array-string\`, \`null\` or \`undefined\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
150
|
-
result
|
|
151
|
-
)}\`.`
|
|
152
|
-
);
|
|
153
|
-
}
|
|
154
|
-
return chunk6EF52423_cjs.normalizePathname(defaultValue);
|
|
155
|
-
};
|
|
156
|
-
|
|
157
|
-
var getPrefixPathname = (url, base = null, options = {}) => {
|
|
158
|
-
const errors = [];
|
|
159
|
-
if (!chunkGKC3UDMC_cjs.isString(url) && !chunkGKC3UDMC_cjs.isArray(url)) {
|
|
160
|
-
errors.push(
|
|
161
|
-
`First parameter (\`url\`) must be of type \`string\` or \`array-string\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
162
|
-
url
|
|
163
|
-
)}\`.`
|
|
164
|
-
);
|
|
165
|
-
}
|
|
166
|
-
if (!chunkGKC3UDMC_cjs.isString(base) && !chunkGKC3UDMC_cjs.isArray(base) && !chunkGKC3UDMC_cjs.isNull(base)) {
|
|
167
|
-
errors.push(
|
|
168
|
-
`Second parameter (\`base\`) must be of type \`string\`, \`array-string\` or \`null\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
169
|
-
base
|
|
170
|
-
)}\`.`
|
|
171
|
-
);
|
|
172
|
-
}
|
|
173
|
-
if (!chunkGKC3UDMC_cjs.isPlainObject(options)) {
|
|
174
|
-
errors.push(
|
|
175
|
-
`Second parameter (\`options\`) must be of type \`plain-object\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
176
|
-
options
|
|
177
|
-
)}\`.`
|
|
178
|
-
);
|
|
179
|
-
}
|
|
180
|
-
const { levels = 1, removeDuplicates = true } = options;
|
|
181
|
-
if (!chunkDVMHRLKP_cjs.isInteger(levels) || chunkDVMHRLKP_cjs.isInteger(levels) && levels < 0) {
|
|
182
|
-
errors.push(
|
|
183
|
-
`Parameter \`levels\` property of the \`options\` (second parameter) must be of type \`integer-number\` and minimum is \`0\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
184
|
-
levels
|
|
185
|
-
)}\`, with value: \`${chunkTQPGXGKB_cjs.safeStableStringify(levels, {
|
|
186
|
-
keepUndefined: true
|
|
187
|
-
})}\`.`
|
|
188
|
-
);
|
|
189
|
-
}
|
|
190
|
-
if (!chunkGKC3UDMC_cjs.isBoolean(removeDuplicates)) {
|
|
191
|
-
errors.push(
|
|
192
|
-
`Parameter \`removeDuplicates\` property of the \`options\` (second parameter) must be of type \`boolean\`, but received: \`${chunkGKC3UDMC_cjs.getPreciseType(
|
|
193
|
-
removeDuplicates
|
|
194
|
-
)}\`.`
|
|
195
|
-
);
|
|
196
|
-
}
|
|
197
|
-
if (chunkGKC3UDMC_cjs.isNonEmptyArray(errors)) {
|
|
198
|
-
throw new TypeError(
|
|
199
|
-
`Invalid parameter(s) in \`getPrefixPathname\` function:
|
|
200
|
-
- ${errors.join("\n- ")}`
|
|
201
|
-
);
|
|
202
|
-
}
|
|
203
|
-
function getLevel(singleUrl) {
|
|
204
|
-
const parts = chunk6EF52423_cjs.normalizePathname(singleUrl).split("/").filter(Boolean);
|
|
205
|
-
return `/${parts.slice(0, levels).join("/")}`;
|
|
206
|
-
}
|
|
207
|
-
function processUrl(singleUrl) {
|
|
208
|
-
if (base) {
|
|
209
|
-
singleUrl = chunk6EF52423_cjs.normalizePathname(singleUrl);
|
|
210
|
-
if (chunkGKC3UDMC_cjs.isArray(base)) {
|
|
211
|
-
for (const b of base) {
|
|
212
|
-
if (singleUrl.startsWith(chunk6EF52423_cjs.normalizePathname(b))) {
|
|
213
|
-
return getLevel(singleUrl);
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
} else if (chunkGKC3UDMC_cjs.isNonEmptyString(base) && singleUrl.startsWith(chunk6EF52423_cjs.normalizePathname(base))) {
|
|
217
|
-
return getLevel(singleUrl);
|
|
218
|
-
}
|
|
219
|
-
return null;
|
|
220
|
-
}
|
|
221
|
-
return getLevel(singleUrl);
|
|
222
|
-
}
|
|
223
|
-
if (chunkGKC3UDMC_cjs.isArray(url)) {
|
|
224
|
-
const result = url.map(processUrl).filter((r) => !chunkGKC3UDMC_cjs.isNull(r));
|
|
225
|
-
const uniqueResult = removeDuplicates ? [...new Set(result)] : result;
|
|
226
|
-
if (uniqueResult.length === 1) {
|
|
227
|
-
return uniqueResult[0];
|
|
228
|
-
}
|
|
229
|
-
return uniqueResult;
|
|
230
|
-
}
|
|
231
|
-
return processUrl(url);
|
|
232
|
-
};
|
|
233
|
-
|
|
234
|
-
exports.constructURL = constructURL;
|
|
235
|
-
exports.extractURLs = extractURLs;
|
|
236
|
-
exports.getFirstPrefixPathname = getFirstPrefixPathname;
|
|
237
|
-
exports.getPrefixPathname = getPrefixPathname;
|
package/dist/chunk-YKQEOO7C.cjs
DELETED
|
@@ -1,23 +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 assertIsString = (value, options = {}) => {
|
|
15
|
-
if (chunkGKC3UDMC_cjs.isString(value)) return;
|
|
16
|
-
chunkGKC3UDMC_cjs.resolveErrorMessageAssertions({
|
|
17
|
-
value,
|
|
18
|
-
options,
|
|
19
|
-
requiredValidType: "string"
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
exports.assertIsString = assertIsString;
|
package/dist/chunk-YSZC56SZ.js
DELETED
|
@@ -1,264 +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 { isEmptyArray, isEmptyObject } from './chunk-SDMPEJ4F.js';
|
|
11
|
-
import { noop } from './chunk-YWHHVDT4.js';
|
|
12
|
-
import { safeStableStringify } from './chunk-6VUXD3CF.js';
|
|
13
|
-
import { isNonEmptyString, getPreciseType, isNull, isUndefined, isString, isArray, isObject, isNumber, isNaN as isNaN$1, isError, assertIsPlainObject, hasOwnProp, isBoolean, isFunction } from './chunk-CSG4SCL3.js';
|
|
14
|
-
|
|
15
|
-
var parseCustomDate = (dateString, format) => {
|
|
16
|
-
if (!isNonEmptyString(dateString) || !isNonEmptyString(format)) {
|
|
17
|
-
throw new TypeError(
|
|
18
|
-
`Parameter \`dateString\` and \`format\` must be of type \`string\` and not empty-string, but received: "['dateString': \`${getPreciseType(
|
|
19
|
-
dateString
|
|
20
|
-
)}\` - (current value: \`${safeStableStringify(dateString, {
|
|
21
|
-
keepUndefined: true
|
|
22
|
-
})}\`), 'format': \`${getPreciseType(
|
|
23
|
-
format
|
|
24
|
-
)}\` - (current value: \`${safeStableStringify(format, {
|
|
25
|
-
keepUndefined: true
|
|
26
|
-
})}\`)]".`
|
|
27
|
-
);
|
|
28
|
-
}
|
|
29
|
-
const dateParts = dateString.split(/[-/]/).map(Number);
|
|
30
|
-
if (dateParts.length !== 3 || dateParts.some(isNaN)) return null;
|
|
31
|
-
let day, month, year;
|
|
32
|
-
if (format === "DD/MM/YYYY") {
|
|
33
|
-
[day, month, year] = dateParts;
|
|
34
|
-
} else if (format === "MM/DD/YYYY") {
|
|
35
|
-
[month, day, year] = dateParts;
|
|
36
|
-
} else {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
month -= 1;
|
|
40
|
-
const date = new Date(year, month, day);
|
|
41
|
-
if (date.getFullYear() !== year || date.getMonth() !== month || date.getDate() !== day) {
|
|
42
|
-
return null;
|
|
43
|
-
}
|
|
44
|
-
return date;
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
var validateJsonParsingOptions = (optionsValue = {}) => {
|
|
48
|
-
assertIsPlainObject(optionsValue, {
|
|
49
|
-
message: ({ currentType, validType }) => `Second parameter (\`options\`) must be of type \`${validType}\`, but received: \`${currentType}\`.`
|
|
50
|
-
});
|
|
51
|
-
const convertBooleans = hasOwnProp(optionsValue, "convertBooleans") ? optionsValue.convertBooleans : false;
|
|
52
|
-
const convertDates = hasOwnProp(optionsValue, "convertDates") ? optionsValue.convertDates : false;
|
|
53
|
-
const convertNumbers = hasOwnProp(optionsValue, "convertNumbers") ? optionsValue.convertNumbers : false;
|
|
54
|
-
const loggingOnFail = hasOwnProp(optionsValue, "loggingOnFail") ? optionsValue.loggingOnFail : false;
|
|
55
|
-
const removeEmptyArrays = hasOwnProp(optionsValue, "removeEmptyArrays") ? optionsValue.removeEmptyArrays : false;
|
|
56
|
-
const removeEmptyObjects = hasOwnProp(optionsValue, "removeEmptyObjects") ? optionsValue.removeEmptyObjects : false;
|
|
57
|
-
const removeNulls = hasOwnProp(optionsValue, "removeNulls") ? optionsValue.removeNulls : false;
|
|
58
|
-
const removeUndefined = hasOwnProp(optionsValue, "removeUndefined") ? optionsValue.removeUndefined : false;
|
|
59
|
-
const strictMode = hasOwnProp(optionsValue, "strictMode") ? optionsValue.strictMode : false;
|
|
60
|
-
const checkSymbols = hasOwnProp(optionsValue, "checkSymbols") ? optionsValue.checkSymbols : false;
|
|
61
|
-
const convertNaN = hasOwnProp(optionsValue, "convertNaN") ? optionsValue.convertNaN : false;
|
|
62
|
-
const customDateFormats = hasOwnProp(optionsValue, "customDateFormats") ? optionsValue.customDateFormats : [];
|
|
63
|
-
const onError = hasOwnProp(optionsValue, "onError") ? optionsValue.onError : noop;
|
|
64
|
-
if (!(isBoolean(convertBooleans) && isBoolean(convertDates) && isBoolean(convertNumbers) && isBoolean(convertNaN) && isBoolean(checkSymbols) && isBoolean(loggingOnFail) && isBoolean(removeEmptyArrays) && isBoolean(removeEmptyObjects) && isBoolean(removeNulls) && isBoolean(removeUndefined) && isBoolean(strictMode) && isArray(customDateFormats) && isFunction(onError))) {
|
|
65
|
-
throw new TypeError(
|
|
66
|
-
`Invalid \`options\` parameter (second argument): \`convertBooleans\`, \`convertDates\`, \`convertNumbers\`, \`loggingOnFail\`, \`removeEmptyArrays\`, \`removeEmptyObjects\`, \`removeNulls\`, \`removeUndefined\`, \`strictMode\` expected to be a \`boolean\` type, \`customDateFormats\` expected to be a \`array\` type and \`onError\` expected to be a \`void function\` type. But received: ['convertBooleans': \`${getPreciseType(
|
|
67
|
-
convertBooleans
|
|
68
|
-
)}\`, 'convertDates': \`${getPreciseType(
|
|
69
|
-
convertDates
|
|
70
|
-
)}\`, 'convertNumbers': \`${getPreciseType(
|
|
71
|
-
convertNumbers
|
|
72
|
-
)}\`, 'loggingOnFail': \`${getPreciseType(
|
|
73
|
-
loggingOnFail
|
|
74
|
-
)}\`, 'removeEmptyArrays': \`${getPreciseType(
|
|
75
|
-
removeEmptyArrays
|
|
76
|
-
)}\`, 'removeEmptyObjects': \`${getPreciseType(
|
|
77
|
-
removeEmptyObjects
|
|
78
|
-
)}\`, 'removeNulls': \`${getPreciseType(
|
|
79
|
-
removeNulls
|
|
80
|
-
)}\`, 'removeUndefined': \`${getPreciseType(
|
|
81
|
-
removeUndefined
|
|
82
|
-
)}\`, 'strictMode': \`${getPreciseType(
|
|
83
|
-
strictMode
|
|
84
|
-
)}\`, 'customDateFormats': \`${getPreciseType(
|
|
85
|
-
customDateFormats
|
|
86
|
-
)}\`, 'onError': \`${getPreciseType(onError)}\`].`
|
|
87
|
-
);
|
|
88
|
-
}
|
|
89
|
-
return {
|
|
90
|
-
convertBooleans,
|
|
91
|
-
convertDates,
|
|
92
|
-
convertNumbers,
|
|
93
|
-
convertNaN,
|
|
94
|
-
loggingOnFail,
|
|
95
|
-
removeEmptyArrays,
|
|
96
|
-
removeEmptyObjects,
|
|
97
|
-
removeNulls,
|
|
98
|
-
removeUndefined,
|
|
99
|
-
strictMode,
|
|
100
|
-
customDateFormats,
|
|
101
|
-
onError,
|
|
102
|
-
checkSymbols
|
|
103
|
-
};
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
var cleanParsedData = (data, options = {}) => {
|
|
107
|
-
const validOptions = validateJsonParsingOptions(options);
|
|
108
|
-
if (isNull(data)) return validOptions.removeNulls ? void 0 : null;
|
|
109
|
-
if (isUndefined(data)) return validOptions.removeUndefined ? void 0 : void 0;
|
|
110
|
-
if (isString(data)) {
|
|
111
|
-
const trimmed = data.trim();
|
|
112
|
-
if (validOptions.convertNaN && trimmed === "NaN") return NaN;
|
|
113
|
-
if (validOptions.convertNumbers && !isNaN(Number(trimmed))) {
|
|
114
|
-
return Number(trimmed);
|
|
115
|
-
}
|
|
116
|
-
if (validOptions.convertBooleans) {
|
|
117
|
-
if (trimmed === "true") return true;
|
|
118
|
-
if (trimmed === "false") return false;
|
|
119
|
-
}
|
|
120
|
-
if (validOptions.convertDates) {
|
|
121
|
-
if (/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$/.test(trimmed)) {
|
|
122
|
-
return new Date(trimmed);
|
|
123
|
-
}
|
|
124
|
-
if (validOptions.customDateFormats?.length) {
|
|
125
|
-
for (const format of validOptions.customDateFormats) {
|
|
126
|
-
const date = parseCustomDate(trimmed, format);
|
|
127
|
-
if (date) return date;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return validOptions.strictMode ? void 0 : trimmed;
|
|
132
|
-
}
|
|
133
|
-
if (isArray(data)) {
|
|
134
|
-
const cleanedArray = data.map((item) => cleanParsedData(item, validOptions)).filter((item) => !isUndefined(item));
|
|
135
|
-
return validOptions.removeEmptyArrays && isEmptyArray(cleanedArray) ? void 0 : cleanedArray;
|
|
136
|
-
}
|
|
137
|
-
if (isObject(data)) {
|
|
138
|
-
const cleanedObject = {};
|
|
139
|
-
for (const key in data) {
|
|
140
|
-
if (Object.prototype.hasOwnProperty.call(data, key)) {
|
|
141
|
-
const cleanedValue = cleanParsedData(data[key], validOptions);
|
|
142
|
-
if (!isUndefined(cleanedValue)) {
|
|
143
|
-
cleanedObject[key] = cleanedValue;
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
return validOptions.removeEmptyObjects && isEmptyObject(cleanedObject, { checkSymbols: validOptions.checkSymbols }) ? void 0 : cleanedObject;
|
|
148
|
-
}
|
|
149
|
-
return validOptions.strictMode ? void 0 : data;
|
|
150
|
-
};
|
|
151
|
-
|
|
152
|
-
var extractDigits = (value) => {
|
|
153
|
-
if (!isString(value) && !isNumber(value)) return 0;
|
|
154
|
-
const cleaned = String(value).trim().replace(/[^0-9]/g, "");
|
|
155
|
-
return Number(cleaned) || 0;
|
|
156
|
-
};
|
|
157
|
-
|
|
158
|
-
function fixSingleQuotesEscapeBackslash(input) {
|
|
159
|
-
const validEscapes = /* @__PURE__ */ new Set(["\\", '"', "/", "b", "f", "n", "r", "t", "u"]);
|
|
160
|
-
let output = "";
|
|
161
|
-
let inSingleQuote = false;
|
|
162
|
-
let inDoubleQuote = false;
|
|
163
|
-
let escapeNext = false;
|
|
164
|
-
for (let i = 0; i < input.length; i++) {
|
|
165
|
-
const c = input[i];
|
|
166
|
-
if (escapeNext) {
|
|
167
|
-
if (inSingleQuote) {
|
|
168
|
-
if (c === "'") {
|
|
169
|
-
output += "'";
|
|
170
|
-
} else if (validEscapes.has(c)) {
|
|
171
|
-
if (c === "\\") {
|
|
172
|
-
output += "\\\\";
|
|
173
|
-
} else if (c === '"') {
|
|
174
|
-
output += '\\"';
|
|
175
|
-
} else {
|
|
176
|
-
output += "\\" + c;
|
|
177
|
-
}
|
|
178
|
-
} else {
|
|
179
|
-
output += "\\\\" + c;
|
|
180
|
-
}
|
|
181
|
-
} else if (inDoubleQuote) {
|
|
182
|
-
if (c === '"') {
|
|
183
|
-
output += '\\"';
|
|
184
|
-
} else if (validEscapes.has(c)) {
|
|
185
|
-
output += "\\" + c;
|
|
186
|
-
} else {
|
|
187
|
-
output += "\\\\" + c;
|
|
188
|
-
}
|
|
189
|
-
} else {
|
|
190
|
-
output += "\\" + c;
|
|
191
|
-
}
|
|
192
|
-
escapeNext = false;
|
|
193
|
-
continue;
|
|
194
|
-
}
|
|
195
|
-
if (c === "\\") {
|
|
196
|
-
escapeNext = true;
|
|
197
|
-
continue;
|
|
198
|
-
}
|
|
199
|
-
if (!inSingleQuote && !inDoubleQuote) {
|
|
200
|
-
if (c === "'") {
|
|
201
|
-
output += '"';
|
|
202
|
-
inSingleQuote = true;
|
|
203
|
-
continue;
|
|
204
|
-
}
|
|
205
|
-
if (c === '"') {
|
|
206
|
-
output += '"';
|
|
207
|
-
inDoubleQuote = true;
|
|
208
|
-
continue;
|
|
209
|
-
}
|
|
210
|
-
} else if (inSingleQuote) {
|
|
211
|
-
if (c === "'") {
|
|
212
|
-
output += '"';
|
|
213
|
-
inSingleQuote = false;
|
|
214
|
-
continue;
|
|
215
|
-
}
|
|
216
|
-
} else if (inDoubleQuote) {
|
|
217
|
-
if (c === '"') {
|
|
218
|
-
output += '"';
|
|
219
|
-
inDoubleQuote = false;
|
|
220
|
-
continue;
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
output += c;
|
|
224
|
-
}
|
|
225
|
-
return output;
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
function safeJsonParse(value, options = {}) {
|
|
229
|
-
if (isNull(value)) return null;
|
|
230
|
-
const validOptions = validateJsonParsingOptions(options);
|
|
231
|
-
if (validOptions.convertNaN && (isNaN$1(value) || isNonEmptyString(value) && value === "NaN")) {
|
|
232
|
-
return NaN;
|
|
233
|
-
}
|
|
234
|
-
if (validOptions.convertNumbers && !isNaN$1(Number(value)) && isNumber(extractDigits(value))) {
|
|
235
|
-
return Number(value);
|
|
236
|
-
}
|
|
237
|
-
if (!isString(value)) return void 0;
|
|
238
|
-
try {
|
|
239
|
-
let normalized = fixSingleQuotesEscapeBackslash(value);
|
|
240
|
-
if (validOptions.removeUndefined) {
|
|
241
|
-
normalized = normalized.replace(/,\s*"[^"]*"\s*:\s*undefined(?=\s*[},])/g, "").replace(/"[^"]*"\s*:\s*undefined\s*(,)?/g, "");
|
|
242
|
-
} else {
|
|
243
|
-
normalized = normalized.replace(/:\s*undefined(?=\s*[,}])/g, ":null");
|
|
244
|
-
}
|
|
245
|
-
if (validOptions.convertNaN) {
|
|
246
|
-
normalized = normalized.replace(/:\s*NaN(?=\s*[,}])/g, ':"NaN"');
|
|
247
|
-
} else {
|
|
248
|
-
normalized = normalized.replace(/:\s*NaN(?=\s*[,}])/g, ':"NaN"').replace(/,\s*"[^"]*"\s*:\s*NaN(?=\s*[},])/g, "").replace(/"[^"]*"\s*:\s*NaN\s*(,)?/g, "");
|
|
249
|
-
}
|
|
250
|
-
normalized = normalized.replace(/,(\s*[}\]])/g, "$1");
|
|
251
|
-
const parsed = JSON.parse(normalized);
|
|
252
|
-
return cleanParsedData(parsed, validOptions);
|
|
253
|
-
} catch (error) {
|
|
254
|
-
if (validOptions.loggingOnFail) {
|
|
255
|
-
console.error("Failed to parsing at `safeJsonParse`:", error);
|
|
256
|
-
}
|
|
257
|
-
validOptions.onError(
|
|
258
|
-
isError(error) ? new Error(error.message.replace(/^JSON\.parse:/, "Failed to parsing")) : new Error(String(error))
|
|
259
|
-
);
|
|
260
|
-
return void 0;
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
export { cleanParsedData, extractDigits, parseCustomDate, safeJsonParse };
|
package/dist/chunk-YWHHVDT4.js
DELETED
|
@@ -1,13 +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
|
-
var noop = () => {
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
export { noop };
|
package/dist/index.d.ts
DELETED
|
@@ -1,24 +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
|
-
//! References Paths:
|
|
11
|
-
/// <reference path="./assertions/index.d.ts" />
|
|
12
|
-
/// <reference path="./conversions/index.d.ts" />
|
|
13
|
-
/// <reference path="./events/index.d.ts" />
|
|
14
|
-
/// <reference path="./formatters/index.d.ts" />
|
|
15
|
-
/// <reference path="./generators/index.d.ts" />
|
|
16
|
-
/// <reference path="./next/index.d.ts" />
|
|
17
|
-
/// <reference path="./next/server/index.d.ts" />
|
|
18
|
-
/// <reference path="./operations/index.d.ts" />
|
|
19
|
-
/// <reference path="./parsers/index.d.ts" />
|
|
20
|
-
/// <reference path="./predicates/index.d.ts" />
|
|
21
|
-
/// <reference path="./promises/index.d.ts" />
|
|
22
|
-
/// <reference path="./strings/index.d.ts" />
|
|
23
|
-
/// <reference path="./tailwind/index.d.ts" />
|
|
24
|
-
/// <reference path="./urls/index.d.ts" />
|