@rzl-zone/utils-js 3.9.1 → 3.11.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 (122) hide show
  1. package/README.md +111 -73
  2. package/dist/assertions/index.cjs +11 -11
  3. package/dist/assertions/index.d.ts +487 -215
  4. package/dist/assertions/index.js +5 -5
  5. package/dist/{chunk-SN5HAK3Y.js → chunk-22V4WP3H.js} +4 -4
  6. package/dist/{chunk-EJV5AF4L.js → chunk-2XSZ2ANI.js} +2 -2
  7. package/dist/{chunk-OSSFLQDD.js → chunk-3T6VSWYX.js} +2 -2
  8. package/dist/{chunk-3LE6NX57.js → chunk-5WIEDF2J.js} +4 -4
  9. package/dist/{chunk-WLEZ2KSG.cjs → chunk-6EDFZJZ5.cjs} +126 -126
  10. package/dist/{chunk-GHU356XQ.js → chunk-6LXWT2I5.js} +3 -3
  11. package/dist/{chunk-GKDSBOYE.js → chunk-6YGBRENU.js} +3 -3
  12. package/dist/{chunk-NAOVH4OH.cjs → chunk-7FGNVDEV.cjs} +7 -7
  13. package/dist/{chunk-X6ULJZ3X.js → chunk-AXDYWO67.js} +2 -2
  14. package/dist/{chunk-UV5BKAYW.cjs → chunk-B6PMNZ4M.cjs} +7 -7
  15. package/dist/chunk-BAV5T2E3.cjs +1 -1
  16. package/dist/{chunk-YHFRCVTN.js → chunk-BLF7SD66.js} +3 -3
  17. package/dist/{chunk-QZI5PVCI.cjs → chunk-BMZZXZJ2.cjs} +4 -4
  18. package/dist/{chunk-DXPM4NOU.js → chunk-BOYP3ARU.js} +4 -4
  19. package/dist/{chunk-UXT4XSUK.js → chunk-BPYW5YL7.js} +2 -2
  20. package/dist/{chunk-QGTFQ7RO.cjs → chunk-C2PV3VWC.cjs} +6 -6
  21. package/dist/{chunk-MZ3T6L7Z.js → chunk-CCJ2MSN7.js} +2 -2
  22. package/dist/{chunk-H44QVAZL.cjs → chunk-DAPAK2W3.cjs} +31 -31
  23. package/dist/{chunk-OYFUBKEG.cjs → chunk-DLS3G6WQ.cjs} +4 -4
  24. package/dist/{chunk-MS2KSKD7.js → chunk-DNMCR5JH.js} +9 -9
  25. package/dist/chunk-DVMHRLKP.cjs +1 -1
  26. package/dist/{chunk-IX6PF5ZP.cjs → chunk-EBYFYZW4.cjs} +4 -4
  27. package/dist/{chunk-5Y6JL47L.js → chunk-ENMRZ4BE.js} +3 -3
  28. package/dist/{chunk-7EIFPHV3.js → chunk-FJ4BQFVO.js} +8 -8
  29. package/dist/{chunk-TJ5OY6MC.cjs → chunk-GIKL4PUF.cjs} +10 -10
  30. package/dist/{chunk-M5QB2GM5.js → chunk-GOFINGT6.js} +2 -2
  31. package/dist/{chunk-J6VLFVIL.js → chunk-GXKQ3LHF.js} +3 -3
  32. package/dist/{chunk-5KDVIEVO.js → chunk-HNBRGN4R.js} +2 -2
  33. package/dist/{chunk-OCTHWEZK.cjs → chunk-HYN6FC5A.cjs} +34 -34
  34. package/dist/{chunk-MBFVTGYS.js → chunk-IZGVBYFN.js} +4 -4
  35. package/dist/{chunk-QXTJVDWE.js → chunk-JIE447J5.js} +3 -3
  36. package/dist/{chunk-UFYMRRJH.cjs → chunk-JXEIJM5M.cjs} +61 -61
  37. package/dist/{chunk-WB3FT62A.js → chunk-K47GZDBH.js} +3 -3
  38. package/dist/{chunk-KUVRZ2JW.cjs → chunk-K5536YHG.cjs} +50 -50
  39. package/dist/chunk-KHO2SBNA.cjs +1 -1
  40. package/dist/{chunk-NJ24M6ZH.cjs → chunk-KXJ7X325.cjs} +37 -37
  41. package/dist/chunk-L5RDAVVH.js +1 -1
  42. package/dist/{chunk-SRWL4YCP.js → chunk-LJHPTLWB.js} +7 -7
  43. package/dist/{chunk-6AMDHVS2.cjs → chunk-M7ELWZXM.cjs} +9 -9
  44. package/dist/chunk-MSUW5VHZ.js +1590 -0
  45. package/dist/{chunk-2XGQQZ6A.cjs → chunk-MUHRPRR7.cjs} +3 -3
  46. package/dist/{chunk-XYWC4EQ3.cjs → chunk-MV3TSQSH.cjs} +71 -71
  47. package/dist/{chunk-VCYXNIZ2.cjs → chunk-NLZLXWAU.cjs} +9 -9
  48. package/dist/{chunk-76ATVDCR.cjs → chunk-NVRZPF5M.cjs} +3 -3
  49. package/dist/chunk-ONZFBJVW.js +1 -1
  50. package/dist/{chunk-62FS7WMB.cjs → chunk-PGNL7JXO.cjs} +31 -31
  51. package/dist/{chunk-JI57K7D4.cjs → chunk-Q4GEQS7X.cjs} +161 -161
  52. package/dist/chunk-QNKGP5DY.js +1 -1
  53. package/dist/{chunk-ZTHJQJ5F.cjs → chunk-QYI2VJLS.cjs} +9 -9
  54. package/dist/{chunk-C7GC2PFX.js → chunk-RBWZII5I.js} +3 -3
  55. package/dist/{chunk-MMRHKYT6.cjs → chunk-RMP7VMPB.cjs} +12 -12
  56. package/dist/{chunk-TXOVQZPU.js → chunk-RZOGBYIS.js} +2 -2
  57. package/dist/{chunk-ALRISPTL.cjs → chunk-SU3UELUB.cjs} +3 -3
  58. package/dist/chunk-SYHPSOUU.cjs +1626 -0
  59. package/dist/{chunk-R2DR7SPJ.js → chunk-SZUNAEMR.js} +6 -6
  60. package/dist/{chunk-YVRUY4EW.cjs → chunk-TER22LO4.cjs} +8 -8
  61. package/dist/{chunk-WRGN6UBK.js → chunk-TJHGRQ4P.js} +2 -2
  62. package/dist/{chunk-I33PB44Q.cjs → chunk-U23I7JPB.cjs} +15 -15
  63. package/dist/{chunk-VBSLIIDB.js → chunk-U7HHN47R.js} +10 -10
  64. package/dist/chunk-UDA26MCU.cjs +1 -1
  65. package/dist/{chunk-44X74C26.js → chunk-UIAWUZ4H.js} +4 -4
  66. package/dist/{chunk-5O66AUEC.js → chunk-ULQPCIA2.js} +2 -2
  67. package/dist/chunk-VJDDGRIK.cjs +1 -1
  68. package/dist/{chunk-6WVOUVWD.js → chunk-WETQI6HM.js} +9 -9
  69. package/dist/{chunk-FWWPEL7J.cjs → chunk-WLOQQFDS.cjs} +3 -3
  70. package/dist/chunk-WVSPXFTY.js +1 -1
  71. package/dist/{chunk-WKM6UVMG.cjs → chunk-WXFTVXBF.cjs} +4 -4
  72. package/dist/{chunk-YQHJB7KR.cjs → chunk-XPVTIGU2.cjs} +26 -26
  73. package/dist/{chunk-PWKOFPAH.cjs → chunk-XX6RUGTM.cjs} +3 -3
  74. package/dist/chunk-YWHHVDT4.js +1 -1
  75. package/dist/{chunk-7NXFGJJE.cjs → chunk-ZPDMWDGZ.cjs} +14 -14
  76. package/dist/{chunk-JYOCB6OV.js → chunk-ZVWZEGQP.js} +2 -2
  77. package/dist/conversions/index.cjs +34 -34
  78. package/dist/conversions/index.d.ts +489 -333
  79. package/dist/conversions/index.js +15 -15
  80. package/dist/events/index.cjs +8 -8
  81. package/dist/events/index.d.ts +35 -29
  82. package/dist/events/index.js +4 -4
  83. package/dist/formatters/index.cjs +19 -19
  84. package/dist/formatters/index.d.ts +917 -873
  85. package/dist/formatters/index.js +9 -9
  86. package/dist/generators/index.cjs +9 -9
  87. package/dist/generators/index.d.ts +104 -86
  88. package/dist/generators/index.js +4 -4
  89. package/dist/index.d.ts +1 -1
  90. package/dist/isPlainObject-0p3VveWr.d.ts +534 -0
  91. package/dist/next/index.cjs +37 -37
  92. package/dist/next/index.d.ts +36 -21
  93. package/dist/next/index.js +9 -9
  94. package/dist/next/server/index.cjs +4 -4
  95. package/dist/next/server/index.d.ts +6 -3
  96. package/dist/next/server/index.js +2 -2
  97. package/dist/operations/index.cjs +11 -11
  98. package/dist/operations/index.d.ts +14 -5
  99. package/dist/operations/index.js +8 -8
  100. package/dist/parsers/index.cjs +6 -6
  101. package/dist/parsers/index.d.ts +68 -65
  102. package/dist/parsers/index.js +5 -5
  103. package/dist/predicates/index.cjs +77 -77
  104. package/dist/predicates/index.d.ts +442 -258
  105. package/dist/predicates/index.js +14 -14
  106. package/dist/promises/index.cjs +6 -6
  107. package/dist/promises/index.d.ts +28 -16
  108. package/dist/promises/index.js +4 -4
  109. package/dist/rzl-utils.global.js +2 -2
  110. package/dist/strings/index.cjs +23 -23
  111. package/dist/strings/index.d.ts +82 -54
  112. package/dist/strings/index.js +7 -7
  113. package/dist/tailwind/index.cjs +13 -13
  114. package/dist/tailwind/index.d.ts +186 -169
  115. package/dist/tailwind/index.js +5 -5
  116. package/dist/urls/index.cjs +23 -23
  117. package/dist/urls/index.d.ts +252 -229
  118. package/dist/urls/index.js +16 -16
  119. package/package.json +3 -3
  120. package/dist/chunk-7C7TQC5J.cjs +0 -620
  121. package/dist/chunk-J4TT33ZX.js +0 -584
  122. package/dist/isPlainObject-BTPjv6zB.d.ts +0 -178
package/README.md CHANGED
@@ -1,42 +1,46 @@
1
- <div align="center" style="display: flex; flex-direction: column; align-items: center;gap: 0.25rem">
1
+ <div align="center" style="display: flex; flex-direction: column; align-items: center;gap: 0rem">
2
2
  <a target="_blank" rel="noopener noreferrer" href="https://raw.githubusercontent.com/rzl-zone/utils-js/main/logo-circle.png">
3
3
  <img src="https://raw.githubusercontent.com/rzl-zone/utils-js/main/logo-circle.png" align="middle" alt="RzlZone Logo" width="110" style="max-width: 100%;">
4
4
  </a>
5
-
6
- <h1><strong>⚡️ <code>@rzl-zone/utils-js</code> 🚀</strong></h1>
7
5
  </div>
8
6
 
9
- <p align="center">
10
- 🚀 <strong><u>Rzl Utility JS</u></strong> 🚀<br/>
11
- <i>A lightweight, modern TypeScript utility library for Node.js & browser (via bundlers like Webpack/Vite).</i><br/>
12
- <i>Provides reusable helpers to simplify your JavaScript or TypeScript projects.</i><br/>
13
- <strong><i>Built with ❤️ by <a href="https://github.com/rzl-app" target="_blank" rel="nofollow noreferrer noopener">@rzl-app</a>.</i></strong>
7
+ <h1 align="center"><strong>UtilsJS</strong></h1>
8
+
9
+ <p align="center">
10
+ <i>
11
+ A lightweight, modern TypeScript utility library for Node.js & browser (via bundlers like <a href="https://webpack.js.org"><code>Webpack</code></a>, <a href="https://vercel.com/blog/turbopack"><code>Turbopack</code></a>, or <a href="https://vite.dev/"><code>Vite</code></a>).
12
+ </i><br/>
13
+ <i>Provides reusable helpers to simplify your JavaScript or TypeScript projects.</i><br/>
14
+ <strong><i>Built with ❤️ by <a href="https://github.com/rzl-zone" target="_blank" rel="nofollow noreferrer noopener">@rzl-zone</a>.</i></strong>
14
15
  </p>
15
16
 
16
17
  <div align="center">
17
18
 
18
19
  <p>
19
- <a href="https://npmjs.com/package/@rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
20
- <img src="https://img.shields.io/npm/v/@rzl-zone/utils-js?color=blue&style=flat-rounded" alt="Latest Version on NPM" data-canonical-src="https://img.shields.io/npm/v/@rzl-zone/utils-js?color=blue&amp;style=flat-rounded">
21
- </a>
22
- <a href="https://npmjs.com/package/@rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
23
- <img src="https://img.shields.io/npm/dt/@rzl-zone/utils-js?style=flat-rounded" alt="Downloads">
24
- </a>
25
- <a href="https://nodejs.org/en/" target="_blank" rel="nofollow noreferrer noopener">
26
- <img src="https://img.shields.io/badge/node-≥16.0.0-blue.svg?logo=node.js&style=flat-rounded" alt="Node.js">
27
- </a>
28
- <a href="https://github.com/rzl-zone/utils-js/blob/main/CONTRIBUTING.md" target="_blank" rel="nofollow noreferrer noopener">
29
- <img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg" alt="PRs Welcome">
30
- </a>
31
- <a href="https://github.com/rzl-zone/utils-js/blob/main/LICENSE.md" target="_blank" rel="nofollow noreferrer noopener">
32
- <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="GitHub license">
33
- </a>
34
- <a href="https://github.com/rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
35
- <img src="https://img.shields.io/badge/GitHub-rzl--zone%2Futils--js-181717?logo=github" alt="GitHub">
36
- </a>
37
- <a href="https://github.com/rzl-app" target="_blank" rel="nofollow noreferrer noopener">
38
- <img src="https://img.shields.io/badge/Repo-on%20GitHub-181717?logo=github&style=flat-rounded" alt="Repo on GitHub">
39
- </a>
20
+ <a href="https://npmjs.com/package/@rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
21
+ <img src="https://img.shields.io/npm/v/@rzl-zone/utils-js?logo=npm&label=Latest%20Version&color=4CAF50&logoColor=CB3837&style=flat-rounded" alt="Latest Version on NPM">
22
+ </a>
23
+ <a href="https://npmjs.com/package/@rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
24
+ <img src="https://img.shields.io/npm/dt/@rzl-zone/utils-js?logo=npm&label=Total%20Downloads&color=007EC6&logoColor=CB3837&style=flat-rounded" alt="NPM Total Downloads">
25
+ </a>
26
+ <a href="https://npmjs.com/package/@rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
27
+ <img src="https://img.shields.io/npm/dw/@rzl-zone/utils-js?logo=npm&label=Weekly%20Downloads&color=CB3837&logoColor=CB3837&style=flat-rounded" alt="NPM Weekly Downloads">
28
+ </a>
29
+ <a href="https://nodejs.org/en/" target="_blank" rel="nofollow noreferrer noopener">
30
+ <img src="https://img.shields.io/badge/Node.js-18.18.0%2B-green.svg?logo=node.js&color=339933&style=flat-rounded" alt="Node.js">
31
+ </a>
32
+ <a href="https://github.com/rzl-zone/utils-js/blob/main/CONTRIBUTING.md" target="_blank" rel="nofollow noreferrer noopener">
33
+ <img src="https://img.shields.io/badge/PRs-Welcome-brightgreen.svg?color=28A745" alt="PRs Welcome">
34
+ </a>
35
+ <a href="https://github.com/rzl-zone/utils-js/blob/main/LICENSE.md" target="_blank" rel="nofollow noreferrer noopener">
36
+ <img src="https://img.shields.io/badge/License-MIT-blue.svg?color=3DA639" alt="GitHub license">
37
+ </a>
38
+ <a href="https://github.com/rzl-zone/utils-js" target="_blank" rel="nofollow noreferrer noopener">
39
+ <img src="https://img.shields.io/badge/Repo-on%20GitHub-181717?logo=github" alt="GitHub">
40
+ </a>
41
+ <a href="https://github.com/orgs/rzl-zone/repositories" target="_blank" rel="nofollow noreferrer noopener">
42
+ <img src="https://img.shields.io/badge/Org-rzl--zone-24292e?logo=github&style=flat-rounded" alt="Repo on GitHub">
43
+ </a>
40
44
  </p>
41
45
 
42
46
  </div>
@@ -50,8 +54,9 @@
50
54
  - ✨ [Features](#features)
51
55
  - 🧬 [NextJS Support](#nextjs-support)
52
56
  - 💎 [Detailed Features](#detailed-features)
53
- - [Full documentation](#full-documentation-rzl-utilsjs-is-currently-under-construction-%EF%B8%8F)
54
- - [Hint Autocomplete](#hint-autocomplete)
57
+ - [Full Documentation](#detailed-features--full-documentation)
58
+ - [CDN Usage](#detailed-features--cdn-usage)
59
+ - [Hint Autocomplete](#detailed-features--hint-autocomplete-setup)
55
60
  - 🔥 [Usage](#usage)
56
61
  - ❤️ [Sponsor](#sponsor-this-package)
57
62
  - 📜 [Changelog](#changelog)
@@ -64,22 +69,25 @@
64
69
 
65
70
  <h2 id="requirements">💻 <strong>Requirements</strong></h2>
66
71
 
67
- - **Node.js `≥16.0.0`**
68
- This package leverages modern JavaScript & TypeScript features that require Node.js version 16.0.0 if not using Next.js, and for Next.js it must follow the official minimum Node.js version requirement depending on the version you use.
69
- - 🔗 See official Next.js documentation:
70
- <a href="https://nextjs.org/docs/getting-started/installation#system-requirements" target="_blank" rel="nofollow noreferrer noopener"><i>NextJS Installation Requirements.</i></a>
72
+ - **Node.js `≥18.18.0`**
73
+ This package leverages modern JavaScript & TypeScript features that require Node.js version 18.18.0 if not using Next.js, and for Next.js it must follow the official minimum Node.js version requirement depending on the version you use.
74
+ - 🔗 See official Next.js documentation:
75
+ <a href="https://nextjs.org/docs/getting-started/installation#system-requirements" target="_blank" rel="nofollow noreferrer noopener"><i><strong>NextJS System Requirements</strong></i></a>.
71
76
 
72
77
  - **Works with:**
73
- - ✅ Node.js (16.0.0+) - Without NextJS
74
- - ✅ Node.js (18.17.0, or higher depending on NextJS version) - With NextJS
75
- - ✅ Modern browsers (via bundlers like Webpack / Vite)
78
+ - ✅ Node.js (18.18.0+) - ***Without NextJS***.
79
+ - ✅ Node.js (20.9.0, or higher depending on NextJS version) - ***With NextJS***.
80
+ - ✅ Modern browsers (via bundlers like [`Webpack`](https://webpack.js.org), [`Turbopack`](https://vercel.com/blog/turbopack), or [`Vite`](https://vite.dev)).
76
81
 
77
82
  - **TypeScript Build Info:**
78
83
  - Target: `ES2022`
79
84
  - Module: `ES2022`
80
85
  - Module Resolution: `bundler`
81
86
 
82
- > ℹ️ Note: These TypeScript settings are used to build the package. Consumers do **not** need to match these settings unless they plan to build or modify the source code.
87
+ <br/>
88
+
89
+ > ℹ️ Note:
90
+ > These TypeScript settings are used to build the package, consumers do **not** need to match these settings unless they plan to build or modify the source code.
83
91
 
84
92
  ---
85
93
 
@@ -88,19 +96,19 @@
88
96
  #### *With NPM*
89
97
 
90
98
  ```bash
91
- npm install @rzl-zone/utils-js
99
+ npm install @rzl-zone/utils-js@latest
92
100
  ```
93
101
 
94
102
  #### *With Yarn*
95
103
 
96
104
  ```bash
97
- yarn add @rzl-zone/utils-js
105
+ yarn add @rzl-zone/utils-js@latest
98
106
  ```
99
107
 
100
108
  #### *With PNPM*
101
109
 
102
110
  ```bash
103
- pnpm add @rzl-zone/utils-js
111
+ pnpm add @rzl-zone/utils-js@latest
104
112
  ```
105
113
 
106
114
  ---
@@ -118,27 +126,33 @@
118
126
 
119
127
  **This package also provides utilities specially built for Next.js environments, neatly separated into their own entry points:**
120
128
 
121
- - <h3 id="nextjs-support--globals">`@rzl-zone/utils-js/next`</h3>
129
+ - <h4 id="nextjs-support--globals"><strong><code>@rzl-zone/utils-js/next</code></strong></h4>
122
130
  Helpers for building URLs, generating dynamic routes, reading environment variables, etc.
123
131
 
124
132
  ✅ Safe to use in both Next.js pages & API routes.
125
133
 
126
- [Read More Docs](/docs/next-js/global.md#docs-sub-main--title)
134
+ [**Read More Docs**](/docs/next-js/global.md#docs-sub-main--title)
127
135
 
128
136
  ***
129
137
 
130
- - <h3 id="nextjs-support--server-only">`@rzl-zone/utils-js/next/server`</h3>
138
+ - <h4 id="nextjs-support--server-only"><strong><code>@rzl-zone/utils-js/next/server</code></strong></h4>
131
139
  Utilities meant to run in Next.js server-only contexts (like middleware or server actions) for tasks such as extracting real client IPs.
132
140
 
133
- ⚠️ Will throw if used outside a Next.js server environment.
141
+ > ⚠️ Will throw Error if used outside a ***Next.js* server environment**.
134
142
 
135
- [Read More Docs](/docs/next-js/server-only.md#docs-sub-main--title)
143
+ [**Read More Docs**](/docs/next-js/server-only.md#docs-sub-main--title)
136
144
 
137
145
  ---
138
146
 
139
147
  <h2 id="detailed-features">💎 <strong>Detailed Features</strong></h2>
140
148
 
141
- ### **Full documentation <a href="https://rzlzone.pages.dev/docs/utils-js" target="_blank" rel="nofollow noreferrer noopener">Rzl UtilsJS</a> is **currently under construction** 🏗️.**
149
+ <h3 id="detailed-features--full-documentation">
150
+ <strong>
151
+ Full documentation <a href="https://rzlzone.vercel.app/docs/utils-js" target="_blank" rel="nofollow noreferrer noopener">UtilsJS</a> is
152
+ <strong>currently under construction 🏗️</strong>.
153
+ </strong>
154
+ </h3>
155
+
142
156
  #### For now, explore the examples or dive into the source — all utilities are documented via **TSDoc** and typed properly.
143
157
 
144
158
  ```ts
@@ -159,20 +173,15 @@
159
173
  ```
160
174
  #### Place your cursor inside { } or after "@rzl-zone/utils-js/{{ | }}" then press Ctrl+Space to see all available functions/types with full TSDoc hints.
161
175
 
162
- > ***⚠️ Note:*** Starting from version `3.4.0+`, the extra TypeScript types (e.g., `OmitStrict`, `PartialOnly`, etc), have been removed from the package. To use them, you now need to install **[`@rzl-zone/ts-types-plus`](https://www.npmjs.com/package/@rzl-zone/ts-types-plus)** separately.
176
+ > ***⚠️ Note:*** Starting from version `3.4.0+`, the extra TypeScript types (e.g., `OmitStrict`, `PartialOnly`, etc), have been removed from the package, to use them, you now need to install **[`@rzl-zone/ts-types-plus`](https://www.npmjs.com/package/@rzl-zone/ts-types-plus)** separately.
163
177
 
164
178
  ---
165
179
 
166
- ### **CDN Usage [@rzl-zone/utils-js](https://www.npmjs.com/package/@rzl-zone/utils-js)**
167
-
168
- > ⚠️ **Note:**
169
- > When using the library via CDN in the browser:
170
- > - Always include first the \<script\> tag before your own scripts when using the CDN version.
171
- > - Some Node.js-specific utilities may **not** be available, e.g.:
172
- > - Category utils of `tailwind`, `next`, `next/server`.
173
- > - Server-only features (like Next.js helpers) will **not** be available.
174
- > - The global object provided is `RzlUtilsJs`.
175
- > - The CDN bundle is **~350KB minified**. For production, consider using bundlers or npm packages for smaller size and tree-shaking.
180
+ <h3 id="detailed-features--cdn-usage">
181
+ <strong>
182
+ CDN Usage.
183
+ </strong>
184
+ </h3>
176
185
 
177
186
  #### **Including via CDN**
178
187
  ```xml
@@ -183,9 +192,21 @@
183
192
  <script src="https://unpkg.com/@rzl-zone/utils-js@latest"></script>
184
193
  ```
185
194
 
195
+ > ⚠️ **Note:**
196
+ > When using the library via CDN in the browser:
197
+ > - Always include first the \<script\> tag before your own scripts when using the CDN version.
198
+ > - Some Node.js-specific utilities may **not** be available, e.g.:
199
+ > - Category utils of `tailwind`, `next`, `next/server`.
200
+ > - Server-only features (like Next.js helpers) will **not** be available.
201
+ > - The global object provided is `RzlUtilsJs`.
202
+ > - The CDN bundle is **~350KB minified**, for production, consider using bundlers or npm packages for smaller size and tree-shaking.
186
203
 
187
204
  ---
188
- ### **Hint: Autocomplete Setup (Step by Step)**
205
+ <h3 id="detailed-features--hint-autocomplete-setup">
206
+ <strong>
207
+ Hint: Autocomplete Setup (Step by Step).
208
+ </strong>
209
+ </h3>
189
210
 
190
211
  #### Make TypeScript & VSCode automatically provide autocomplete for `@rzl-zone/utils-js` without needing triple-slash references in every file:
191
212
 
@@ -194,11 +215,11 @@
194
215
  - Make sure the package is installed:
195
216
 
196
217
  ```bash
197
- npm install @rzl-zone/utils-js
218
+ npm install @rzl-zone/utils-js@latest
198
219
  # or
199
- yarn add @rzl-zone/utils-js
220
+ yarn add @rzl-zone/utils-js@latest
200
221
  # or
201
- pnpm add @rzl-zone/utils-js
222
+ pnpm add @rzl-zone/utils-js@latest
202
223
  ```
203
224
 
204
225
  - 2️⃣ **Create a types folder.**
@@ -220,14 +241,17 @@
220
241
 
221
242
  ```ts
222
243
  /// <reference types="@rzl-zone/utils-js" />
223
- ```
244
+ ```
224
245
 
225
246
  - This tells TypeScript to include the types from `@rzl-zone/utils-js` globally.
226
247
  - You can add more references here if needed, for example:
227
248
 
228
249
  ```ts
229
- /// <reference types="node" />
230
250
  /// <reference types="@rzl-zone/utils-js" />
251
+
252
+ // eg more references (if needed):
253
+ /// <reference types="node" />
254
+ /// <reference types="react" />
231
255
  ```
232
256
 
233
257
  - 4️⃣ **Update tsconfig.json.**
@@ -238,10 +262,17 @@
238
262
  // tsconfig.json
239
263
  {
240
264
  "compilerOptions": {
241
- "typeRoots": ["./types", "./node_modules/@types"],
265
+ "strict": true,
266
+ "typeRoots": [
267
+ "./types",
268
+ "./node_modules/@types"
269
+ ],
242
270
  // other your config...
243
271
  },
244
- "include": ["src", "types"],
272
+ "include": [
273
+ "src",
274
+ "types"
275
+ ],
245
276
  // other your config...
246
277
  }
247
278
  ```
@@ -257,16 +288,22 @@
257
288
  {
258
289
  "compilerOptions": {
259
290
  "checkJs": true, // Optional, enables type checking
260
- "typeRoots": ["./types", "./node_modules/@types"],
291
+ "typeRoots": [
292
+ "./types",
293
+ "./node_modules/@types"
294
+ ],
261
295
  // other your config...
262
296
  },
263
- "include": ["src", "types"],
297
+ "include": [
298
+ "src",
299
+ "types"
300
+ ],
264
301
  // other your config...
265
302
  }
266
303
  ```
267
304
  >ℹ️ ***Tip:*** *For JS projects, consider adding "checkJs": true for better IntelliSense.*
268
305
 
269
- **Now, all types from @rzl-zone/utils-js are globally available, and you don’t need "types": ["@rzl-zone/utils-js"] in tsconfig.json.**
306
+ #### **Now, all types from `@rzl-zone/utils-js` are globally available, and you don’t need `"types": ["@rzl-zone/utils-js"]` in tsconfig.json.**
270
307
 
271
308
  <!-- - <h4 id="detailed-features--assertions">
272
309
  Assertions -
@@ -309,7 +346,7 @@ console.log(isServer());
309
346
  <h2 id="sponsor-this-package">❤️ <strong>Sponsor this package</strong></h2>
310
347
 
311
348
  **Help support development:**
312
- *[👉 **Become a sponsor**](https://github.com/sponsors/rzl-app)*
349
+ *[👉 **Become a sponsor**](https://github.com/sponsors/rzl-app).*
313
350
 
314
351
  ---
315
352
 
@@ -327,7 +364,7 @@ console.log(isServer());
327
364
 
328
365
  <h2 id="security">🔒 <strong>Security</strong></h2>
329
366
 
330
- **Please report issues to [rizalvindwiky1998@gmail.com](mailto:rizalvindwiky1998@gmail.com).**
367
+ **Please report issues to [rzlzone.dev@gmail.com](mailto:rzlzone.dev@gmail.com).**
331
368
 
332
369
  ---
333
370
 
@@ -345,7 +382,8 @@ console.log(isServer());
345
382
 
346
383
  ---
347
384
 
348
- **Enjoy using `@rzl-zone/utils-js`?**
385
+ <h2>✅ <strong>Enjoy using <code>@rzl-zone/utils-js</code>?</strong></h2>
386
+
349
387
  *Star this repo [⭐](https://github.com/rzl-zone/utils-js) and share it with other JavaScript developers!*
350
388
 
351
389
  ---
@@ -2,40 +2,40 @@
2
2
  * ====================================================
3
3
  * Rzl Utils-JS.
4
4
  * ----------------------------------------------------
5
- * Version: 3.9.1.
5
+ * Version: 3.11.0.
6
6
  * Author: Rizalvin Dwiky.
7
7
  * Repository: https://github.com/rzl-zone/utils-js.
8
8
  * ====================================================
9
9
  */
10
10
  'use strict';
11
11
 
12
- var chunkUV5BKAYW_cjs = require('../chunk-UV5BKAYW.cjs');
13
- var chunkWKM6UVMG_cjs = require('../chunk-WKM6UVMG.cjs');
14
- var chunkOYFUBKEG_cjs = require('../chunk-OYFUBKEG.cjs');
12
+ var chunkB6PMNZ4M_cjs = require('../chunk-B6PMNZ4M.cjs');
13
+ var chunkWXFTVXBF_cjs = require('../chunk-WXFTVXBF.cjs');
14
+ var chunkDLS3G6WQ_cjs = require('../chunk-DLS3G6WQ.cjs');
15
15
  require('../chunk-UDA26MCU.cjs');
16
- var chunk7C7TQC5J_cjs = require('../chunk-7C7TQC5J.cjs');
16
+ var chunkSYHPSOUU_cjs = require('../chunk-SYHPSOUU.cjs');
17
17
 
18
18
  Object.defineProperty(exports, "assertIsBigInt", {
19
19
  enumerable: true,
20
- get: function () { return chunkUV5BKAYW_cjs.assertIsBigInt; }
20
+ get: function () { return chunkB6PMNZ4M_cjs.assertIsBigInt; }
21
21
  });
22
22
  Object.defineProperty(exports, "assertIsNumber", {
23
23
  enumerable: true,
24
- get: function () { return chunkUV5BKAYW_cjs.assertIsNumber; }
24
+ get: function () { return chunkB6PMNZ4M_cjs.assertIsNumber; }
25
25
  });
26
26
  Object.defineProperty(exports, "assertIsString", {
27
27
  enumerable: true,
28
- get: function () { return chunkWKM6UVMG_cjs.assertIsString; }
28
+ get: function () { return chunkWXFTVXBF_cjs.assertIsString; }
29
29
  });
30
30
  Object.defineProperty(exports, "assertIsArray", {
31
31
  enumerable: true,
32
- get: function () { return chunkOYFUBKEG_cjs.assertIsArray; }
32
+ get: function () { return chunkDLS3G6WQ_cjs.assertIsArray; }
33
33
  });
34
34
  Object.defineProperty(exports, "assertIsBoolean", {
35
35
  enumerable: true,
36
- get: function () { return chunk7C7TQC5J_cjs.assertIsBoolean; }
36
+ get: function () { return chunkSYHPSOUU_cjs.assertIsBoolean; }
37
37
  });
38
38
  Object.defineProperty(exports, "assertIsPlainObject", {
39
39
  enumerable: true,
40
- get: function () { return chunk7C7TQC5J_cjs.assertIsPlainObject; }
40
+ get: function () { return chunkSYHPSOUU_cjs.assertIsPlainObject; }
41
41
  });