@rzl-zone/utils-js 3.0.2-beta.2 → 3.1.0-beta.2

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 (152) hide show
  1. package/dist/assertions/index.cjs +1 -1
  2. package/dist/assertions/index.d.ts +96 -116
  3. package/dist/assertions/index.js +1 -1
  4. package/dist/chunk-25G6B35W.js +1 -0
  5. package/dist/chunk-2AUUPGMN.js +1 -0
  6. package/dist/chunk-2JQQQ625.js +1 -0
  7. package/dist/chunk-445TAVT4.cjs +1 -0
  8. package/dist/chunk-467VEMJH.js +1 -0
  9. package/dist/chunk-6Q4I2RPC.cjs +1 -0
  10. package/dist/chunk-6SMJMZ7G.cjs +1 -0
  11. package/dist/chunk-BLCANGFS.js +1 -0
  12. package/dist/chunk-CK3BZGEU.js +1 -0
  13. package/dist/{chunk-JWHM3WZQ.cjs → chunk-D43GV6EF.cjs} +1 -1
  14. package/dist/chunk-DFSTVQFI.cjs +1 -0
  15. package/dist/chunk-DYRDBYPF.cjs +1 -0
  16. package/dist/chunk-EXXLUO7L.cjs +1 -0
  17. package/dist/chunk-G72VSVGO.js +1 -0
  18. package/dist/chunk-GAJTFCUA.js +1 -0
  19. package/dist/chunk-GOJNH55O.cjs +1 -0
  20. package/dist/chunk-HXST7RJB.js +1 -0
  21. package/dist/{chunk-BYZAD3XN.cjs → chunk-HXTACM3O.cjs} +1 -1
  22. package/dist/chunk-IJTZWWRJ.cjs +1 -0
  23. package/dist/chunk-ISJ33O2J.cjs +1 -0
  24. package/dist/chunk-JISH2VGG.js +1 -0
  25. package/dist/{chunk-FF76ISQ2.js → chunk-JQZUWBIX.js} +1 -1
  26. package/dist/{chunk-XH6MCRLP.js → chunk-K4PLGD7C.js} +1 -1
  27. package/dist/chunk-KZQB7H4E.cjs +1 -0
  28. package/dist/chunk-LUVV5KSD.cjs +2 -0
  29. package/dist/chunk-LVUSFXQS.cjs +1 -0
  30. package/dist/chunk-ME5OV5HN.js +1 -0
  31. package/dist/chunk-MF5Y5K4N.cjs +1 -0
  32. package/dist/chunk-MJAW5RAK.js +1 -0
  33. package/dist/chunk-MWLEM7ED.js +1 -0
  34. package/dist/chunk-NSVLG7NY.js +4 -0
  35. package/dist/chunk-NUHOOAUN.cjs +1 -0
  36. package/dist/chunk-NUVGETPD.js +2 -0
  37. package/dist/chunk-O5VXBNUQ.cjs +4 -0
  38. package/dist/chunk-O7SJR4CY.cjs +1 -0
  39. package/dist/chunk-OX6RLS2F.cjs +1 -0
  40. package/dist/chunk-PFLNHD4B.cjs +1 -0
  41. package/dist/chunk-PSWITZK5.js +1 -0
  42. package/dist/chunk-PYUVKHUF.cjs +1 -0
  43. package/dist/chunk-REFMEB4A.js +1 -0
  44. package/dist/chunk-RHE3M2NJ.cjs +1 -0
  45. package/dist/chunk-RHIBYOFQ.js +1 -0
  46. package/dist/chunk-S7GMG4TB.js +1 -0
  47. package/dist/chunk-TQMZ2LPI.js +1 -0
  48. package/dist/{chunk-RN3TP3S3.js → chunk-U4TZO7WV.js} +1 -1
  49. package/dist/chunk-UUMKL74S.js +1 -0
  50. package/dist/{chunk-EXZ47NOW.js → chunk-VQLAPEL3.js} +1 -1
  51. package/dist/chunk-VTR75UID.cjs +1 -0
  52. package/dist/chunk-XFCJDSB2.cjs +1 -0
  53. package/dist/chunk-XOYX4PLZ.cjs +1 -0
  54. package/dist/chunk-Z6FLCEN6.js +1 -0
  55. package/dist/chunk-ZO5364A6.cjs +1 -0
  56. package/dist/conversions/index.cjs +1 -1
  57. package/dist/conversions/index.d.ts +396 -593
  58. package/dist/conversions/index.js +1 -1
  59. package/dist/env/index.d.ts +5 -8
  60. package/dist/events/index.cjs +1 -1
  61. package/dist/events/index.d.ts +80 -77
  62. package/dist/events/index.js +1 -1
  63. package/dist/{array-CIZRbqTF.d.ts → extends-Bk_SBGdT.d.ts} +145 -1
  64. package/dist/formatting/index.cjs +1 -1
  65. package/dist/formatting/index.d.ts +478 -440
  66. package/dist/formatting/index.js +1 -1
  67. package/dist/generator/index.cjs +1 -1
  68. package/dist/generator/index.d.ts +135 -112
  69. package/dist/generator/index.js +1 -1
  70. package/dist/index.cjs +1 -1
  71. package/dist/index.d.ts +1 -1
  72. package/dist/index.js +1 -1
  73. package/dist/{is-array-Ckm_47hw.d.ts → is-array--YjXV-Wx.d.ts} +2 -352
  74. package/dist/{isPlainObject-BKYaI6a8.d.ts → isPlainObject-BVhBAPHX.d.ts} +49 -62
  75. package/dist/next/index.cjs +6 -6
  76. package/dist/next/index.d.ts +125 -105
  77. package/dist/next/index.js +5 -5
  78. package/dist/next/server/index.cjs +1 -1
  79. package/dist/next/server/index.d.ts +8 -22
  80. package/dist/next/server/index.js +1 -1
  81. package/dist/operations/index.cjs +1 -1
  82. package/dist/operations/index.d.ts +72 -127
  83. package/dist/operations/index.js +1 -1
  84. package/dist/parsers/index.cjs +1 -1
  85. package/dist/parsers/index.d.ts +26 -27
  86. package/dist/parsers/index.js +1 -1
  87. package/dist/predicates/index.cjs +1 -1
  88. package/dist/predicates/index.d.ts +686 -660
  89. package/dist/predicates/index.js +1 -1
  90. package/dist/promise/index.cjs +1 -1
  91. package/dist/promise/index.d.ts +14 -23
  92. package/dist/promise/index.js +1 -1
  93. package/dist/rzl-utils.global.js +3 -3
  94. package/dist/string-XA-til3C.d.ts +351 -0
  95. package/dist/strings/index.cjs +1 -1
  96. package/dist/strings/index.d.ts +301 -376
  97. package/dist/strings/index.js +1 -1
  98. package/dist/stylings/index.cjs +1 -1
  99. package/dist/stylings/index.d.ts +15 -23
  100. package/dist/stylings/index.js +1 -1
  101. package/dist/types/index.d.ts +1 -1
  102. package/dist/urls/index.cjs +1 -1
  103. package/dist/urls/index.d.ts +276 -301
  104. package/dist/urls/index.js +1 -1
  105. package/package.json +53 -11
  106. package/dist/chunk-2TRAPBZ7.cjs +0 -1
  107. package/dist/chunk-3D74QO5D.cjs +0 -1
  108. package/dist/chunk-4DK3RCC4.js +0 -2
  109. package/dist/chunk-4JOQ45HL.js +0 -1
  110. package/dist/chunk-55CZALRS.js +0 -1
  111. package/dist/chunk-5JFV3GDE.cjs +0 -4
  112. package/dist/chunk-62HX5Z45.cjs +0 -1
  113. package/dist/chunk-7NA6DUHR.cjs +0 -2
  114. package/dist/chunk-BVPMMWDL.cjs +0 -1
  115. package/dist/chunk-CEFYHEM4.cjs +0 -1
  116. package/dist/chunk-CN53M4QZ.cjs +0 -1
  117. package/dist/chunk-D47MHBSD.cjs +0 -1
  118. package/dist/chunk-DGH75GJD.js +0 -1
  119. package/dist/chunk-E5NUI7PN.js +0 -1
  120. package/dist/chunk-FDITZ5C6.cjs +0 -1
  121. package/dist/chunk-FSSV24W7.cjs +0 -1
  122. package/dist/chunk-GCGU2WB7.js +0 -1
  123. package/dist/chunk-GECI2YBP.js +0 -1
  124. package/dist/chunk-GQE4OVHC.cjs +0 -1
  125. package/dist/chunk-GRVZXQXL.cjs +0 -1
  126. package/dist/chunk-I4AVNHPA.cjs +0 -1
  127. package/dist/chunk-JFRL7NKU.js +0 -4
  128. package/dist/chunk-KCQDDZJE.cjs +0 -1
  129. package/dist/chunk-L54ZPSYJ.js +0 -1
  130. package/dist/chunk-LVKAYEZ4.js +0 -1
  131. package/dist/chunk-MBDWTK54.cjs +0 -1
  132. package/dist/chunk-MNGGDB2G.js +0 -1
  133. package/dist/chunk-MY7BA4GI.cjs +0 -1
  134. package/dist/chunk-N2IJPIND.cjs +0 -1
  135. package/dist/chunk-NIMNTEGV.js +0 -1
  136. package/dist/chunk-PVJF2JHM.js +0 -1
  137. package/dist/chunk-QCFXEUKL.js +0 -1
  138. package/dist/chunk-QFCGBBSY.js +0 -1
  139. package/dist/chunk-QQYAUPSK.cjs +0 -1
  140. package/dist/chunk-TC4VBE4Y.cjs +0 -1
  141. package/dist/chunk-TUXDINHF.cjs +0 -1
  142. package/dist/chunk-U5Y2FXMN.cjs +0 -1
  143. package/dist/chunk-UUPQI6ND.cjs +0 -1
  144. package/dist/chunk-VYCGZ2S6.js +0 -1
  145. package/dist/chunk-W5EDKJK3.js +0 -1
  146. package/dist/chunk-WHAVUFEU.js +0 -1
  147. package/dist/chunk-XCFIOTCV.js +0 -1
  148. package/dist/chunk-XE27XPJR.js +0 -1
  149. package/dist/chunk-XVB3ZZEB.js +0 -1
  150. package/dist/chunk-ZBSIGJFO.cjs +0 -1
  151. package/dist/chunk-ZYAML74V.js +0 -1
  152. package/dist/extends-Mp81Hq9-.d.ts +0 -145
@@ -0,0 +1,351 @@
1
+ import{I as If}from'./if-CvT4R7Kh.js';import{I as IsNever}from'./never-BfayMBF9.js';
2
+ /** -------------------------------------------------------
3
+ * * ***IfNot.***
4
+ * -------------------------------------------------------
5
+ *
6
+ * Conditional: returns the second argument if the first argument is `false`, otherwise returns the third argument.
7
+ * - Defaults: `IfTrue = true`, `IfFalse = false`.
8
+ *
9
+ * @template Condition - The boolean condition to check.
10
+ * @template IfTrue - The branch type if condition is `false`. (default: `true`)
11
+ * @template IfFalse - The branch type if condition is `true`. (default: `false`)
12
+ *
13
+ * ### Examples
14
+ * ```ts
15
+ * type A = IfNot<false, "valid">;
16
+ * // ➔ "valid"
17
+ * type B = IfNot<false, "valid", "invalid">;
18
+ * // ➔ "invalid"
19
+ * ```
20
+ */
21
+ type IfNot<Condition,IfTrue=true,IfFalse=false>=If<Condition,IfFalse,IfTrue>;
22
+ /** -------------------------------------------------------
23
+ * * ***WordSeparator.***
24
+ * -------------------------------------------------------
25
+ * A type-level utility that defines all valid ***word separators***.
26
+ * - Can be a space `" "`, a dash `"-"`, or an underscore `"_"`.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * type A = WordSeparator; // ➔ " " | "-" | "_"
31
+ * ```
32
+ */
33
+ type WordSeparator=" "|"-"|"_";
34
+ /** --------------------------------------------------
35
+ * * ***Whitespace.***
36
+ * --------------------------------------------------
37
+ * Represents common whitespace characters.
38
+ *
39
+ * ✅ Used as the default trimming characters in string utility types.
40
+ *
41
+ * @example
42
+ * type W = Whitespace;
43
+ * // ➔ " " | "\t" | "\r" | "\n"
44
+ */
45
+ type Whitespace=" "|"\t"|"\r"|"\n";
46
+ /** **Helper Internal.** */
47
+ type SafeKeyTrimming<T>=Exclude<T,symbol>;
48
+ /** --------------------------------------------------
49
+ * * ***TrimLeft.***
50
+ * --------------------------------------------------
51
+ * Recursively trims specified characters (default: **{@link Whitespace}**)
52
+ * from the **start (left)** of a string.
53
+ *
54
+ * @template Text - The string to trim.
55
+ * @template Chars - The characters to remove (default: `Whitespace`).
56
+ *
57
+ * @example
58
+ * type T1 = TrimLeft<"\n hello", " " | "\n">;
59
+ * // ➔ "hello"
60
+ *
61
+ * type T2 = TrimLeft<" world">;
62
+ * // ➔ "world"
63
+ *
64
+ * type T3 = TrimLeft<" world ">;
65
+ * // ➔ "world "
66
+ */
67
+ type TrimLeft<Text extends PropertyKey,Chars extends PropertyKey=Whitespace>=Text extends`${SafeKeyTrimming<Chars>}${infer Rest}`?TrimLeft<Rest,Chars>:Text;
68
+ /** --------------------------------------------------
69
+ * * ***TrimRight.***
70
+ * --------------------------------------------------
71
+ * Recursively trims specified characters (default: **{@link Whitespace}**)
72
+ * from the **end (right)** of a string.
73
+ *
74
+ * @template Text - The string to trim.
75
+ * @template Chars - The characters to remove (default: `Whitespace`).
76
+ *
77
+ * @example
78
+ * type T1 = TrimRight<"hello \t", " " | "\t">;
79
+ * // ➔ "hello"
80
+ *
81
+ * type T2 = TrimRight<"world ">;
82
+ * // ➔ "world"
83
+ *
84
+ * type T2 = TrimRight<" world ">;
85
+ * // ➔ " world"
86
+ */
87
+ type TrimRight<Text extends PropertyKey,Chars extends PropertyKey=Whitespace>=Text extends`${infer Rest}${SafeKeyTrimming<Chars>}`?TrimRight<Rest,Chars>:Text;
88
+ /** --------------------------------------------------
89
+ * * ***Trim.***
90
+ * --------------------------------------------------
91
+ * Trims specified characters (default: **{@link Whitespace}**)
92
+ * from **both the start and end** of a string.
93
+ *
94
+ * @template Text - The string to trim.
95
+ * @template Chars - The characters to remove (default: `Whitespace`).
96
+ *
97
+ * @example
98
+ * type T1 = Trim<" hello ", " ">;
99
+ * // ➔ "hello"
100
+ *
101
+ * type T2 = Trim<"\n world \t">;
102
+ * // ➔ "world"
103
+ */
104
+ type Trim<Text extends PropertyKey,Chars extends PropertyKey=Whitespace>=TrimRight<TrimLeft<Text,Chars>,Chars>;
105
+ /** -------------------------------------------------------
106
+ * * ***TrimsLower***
107
+ * -------------------------------------------------------
108
+ * Trims leading & trailing whitespace from a string and
109
+ * converts it to **lowercase**.
110
+ *
111
+ * Utilizes **{@link Trim}** to remove whitespace and **{@link Lowercase}** to convert the string to lowercase.
112
+ *
113
+ * @template S - The input string to transform.
114
+ *
115
+ * @example
116
+ * ```ts
117
+ * type T1 = TrimsLower<" HeLLo \n">;
118
+ * // ➔ "hello"
119
+ *
120
+ * type T2 = TrimsLower<" WoRLD ">;
121
+ * // ➔ "world"
122
+ * ```
123
+ */
124
+ type TrimsLower<S extends string>=Lowercase<Trim<S>>;
125
+ /** -------------------------------------------------------
126
+ * * ***TrimsUpper***
127
+ * -------------------------------------------------------
128
+ * Trims leading & trailing whitespace from a string and
129
+ * converts it to **uppercase**.
130
+ *
131
+ * Utilizes **{@link Trim}** to remove whitespace and **{@link Uppercase}** to convert the string to uppercase.
132
+ *
133
+ * @template S - The input string to transform.
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * type T1 = TrimsUpper<" HeLLo \n">;
138
+ * // ➔ "HELLO"
139
+ *
140
+ * type T2 = TrimsUpper<" WoRLD ">;
141
+ * // ➔ "WORLD"
142
+ * ```
143
+ */
144
+ type TrimsUpper<S extends string>=Uppercase<Trim<S>>;
145
+ /** -------------------------------------------------------
146
+ * * ***AnyString.***
147
+ * -------------------------------------------------------
148
+ *
149
+ * A utility type that represents **any string value** while
150
+ * preventing unwanted widening of string literals to `string`.
151
+ *
152
+ * 🔹 This is achieved by intersecting `string` with `{}`,
153
+ * ensuring that the type remains assignable to `string`
154
+ * but is treated as a unique type in generic constraints.
155
+ *
156
+ * 📌 Useful in scenarios where:
157
+ * - You want to accept **any string**, but still preserve
158
+ * literal types in inference.
159
+ * - You need stricter typing than just `string`.
160
+ *
161
+ * @example
162
+ * ```ts
163
+ * declare function acceptsAnyString<T extends AnyString>(value: T): T;
164
+ *
165
+ * // Preserves literal
166
+ * const a = acceptsAnyString("hello");
167
+ * // ➔ "hello"
168
+ *
169
+ * // Also allows generic string
170
+ * const b = acceptsAnyString(String("world"));
171
+ * // ➔ string
172
+ * ```
173
+ */
174
+ type AnyString={}& string;
175
+ /** -------------------------------------------------------
176
+ * * ***EmptyString.***
177
+ * -------------------------------------------------------
178
+ * Returns the type `T` only if it is the empty string `""`.
179
+ * Optionally trims whitespace before checking.
180
+ *
181
+ * Behavior:
182
+ * - If `WithTrim` is `true` (default), trims `T` before checking.
183
+ * - If `T` is the general `string` type, returns `never`.
184
+ * - If `T` is empty (after optional trimming), returns `T` or `Trim<T>`.
185
+ *
186
+ * @template T - The string type to check.
187
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
188
+ *
189
+ * @example
190
+ * ```ts
191
+ * // Basic empty string
192
+ * type Case1 = EmptyString<"">;
193
+ * // ➔ ""
194
+ *
195
+ * // Non-empty string
196
+ * type Case2 = EmptyString<"abc">;
197
+ * // ➔ never
198
+ *
199
+ * // General string type
200
+ * type Case3 = EmptyString<string>;
201
+ * // ➔ never
202
+ *
203
+ * // With leading/trailing whitespace
204
+ * type Case4 = EmptyString<" ", true>;
205
+ * // ➔ "" (trimmed)
206
+ * type Case5 = EmptyString<" ", false>;
207
+ * // ➔ never (not trimmed)
208
+ * ```
209
+ */
210
+ type EmptyString<T extends string,WithTrim extends boolean=true>=""extends(WithTrim extends true?Trim<T>:T)?string extends(WithTrim extends true?Trim<T>:T)?never:WithTrim extends true?Trim<T>:T:never;
211
+ /** -------------------------------------------------------
212
+ * * ***NonEmptyString.***
213
+ * -------------------------------------------------------
214
+ * Returns the type `T` only if it is a non-empty string.
215
+ * Optionally trims whitespace before checking.
216
+ *
217
+ * Behavior:
218
+ * - If `WithTrim` is `true` (default), trims `T` before checking.
219
+ * - If `T` is the general `string` type, returns `string`.
220
+ * - If `T` is empty (after optional trimming), returns `never`.
221
+ *
222
+ * @template T - The string type to check.
223
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
224
+ *
225
+ * @example
226
+ * ```ts
227
+ * // Non-empty string
228
+ * type Case1 = NonEmptyString<"abc">; // ➔ "abc"
229
+ *
230
+ * // Empty string
231
+ * type Case2 = NonEmptyString<"">; // ➔ never
232
+ *
233
+ * // General string type
234
+ * type Case3 = NonEmptyString<string>; // ➔ string
235
+ *
236
+ * // String with whitespace
237
+ * type Case4 = NonEmptyString<" ", true>; // ➔ never (trimmed to empty)
238
+ * type Case5 = NonEmptyString<" ", false>; // ➔ " " (not trimmed)
239
+ * ```
240
+ */
241
+ type NonEmptyString<T extends string,WithTrim extends boolean=true>=string extends T?string:If<IsNever<EmptyString<T,WithTrim>>,WithTrim extends true?Trim<T>:T,never>;
242
+ /** -------------------------------------------------------
243
+ * * ***IsEmptyString.***
244
+ * -------------------------------------------------------
245
+ * Returns `true` if `T` is exactly the empty string `""`.
246
+ * Optionally trims whitespace before checking.
247
+ *
248
+ * Behavior:
249
+ * - If `WithTrim` is `true` (default), trims `T` before checking.
250
+ * - If `T` is empty after optional trimming, returns `true`.
251
+ * - Otherwise, returns `false`.
252
+ *
253
+ * @template T - The string type to check.
254
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
255
+ *
256
+ * @example
257
+ * ```ts
258
+ * type Case1 = IsEmptyString<"">;
259
+ * // ➔ true
260
+ * type Case2 = IsEmptyString<"abc">;
261
+ * // ➔ false
262
+ * type Case3 = IsEmptyString<" ", true>;
263
+ * // ➔ true (trimmed)
264
+ * type Case4 = IsEmptyString<" ", false>;
265
+ * // ➔ false (not trimmed)
266
+ * ```
267
+ */
268
+ type IsEmptyString<T extends string,WithTrim extends boolean=true>=IfNot<IsNever<EmptyString<T,WithTrim>>>;
269
+ /** -------------------------------------------------------
270
+ * * ***IsNonEmptyString.***
271
+ * -------------------------------------------------------
272
+ * Returns `true` if `T` is a non-empty string.
273
+ * Optionally trims whitespace before checking.
274
+ *
275
+ * Behavior:
276
+ * - If `WithTrim` is `true` (default), trims `T` before checking.
277
+ * - Returns `true` if `T` is non-empty after optional trimming.
278
+ * - Returns `false` if `T` is empty (after trimming if `WithTrim=true`).
279
+ *
280
+ * @template T - The string type to check.
281
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
282
+ *
283
+ * @example
284
+ * ```ts
285
+ * type Case1 = IsNonEmptyString<"abc">;
286
+ * // ➔ true
287
+ * type Case2 = IsNonEmptyString<"">;
288
+ * // ➔ false
289
+ * type Case3 = IsNonEmptyString<" ", true>;
290
+ * // ➔ false (trimmed)
291
+ * type Case4 = IsNonEmptyString<" ", false>;
292
+ * // ➔ true (not trimmed)
293
+ * ```
294
+ */
295
+ type IsNonEmptyString<T extends string,WithTrim extends boolean=true>=IfNot<IsNever<NonEmptyString<T,WithTrim>>>;
296
+ /** -------------------------------------------------------
297
+ * * ***IfEmptyString.***
298
+ * -------------------------------------------------------
299
+ * Conditional type: returns `IfTrue` if `T` is an empty string `""`,
300
+ * otherwise returns `IfFalse`. Optionally trims whitespace before checking.
301
+ *
302
+ * @template T - The string type to check.
303
+ * @template IfTrue - Type returned if `T` is empty (default `true`).
304
+ * @template IfFalse - Type returned if `T` is not empty (default `false`).
305
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
306
+ *
307
+ * @example
308
+ * ```ts
309
+ * type Case1 = IfEmptyString<"">;
310
+ * // ➔ true
311
+ * type Case2 = IfEmptyString<"abc">;
312
+ * // ➔ false
313
+ * type Case3 = IfEmptyString<"", "yes", "no">;
314
+ * // ➔ "yes"
315
+ * type Case4 = IfEmptyString<"abc", "yes", "no">;
316
+ * // ➔ "no"
317
+ * type Case5 = IfEmptyString<" ", "yes", "no", true>;
318
+ * // ➔ "yes" (trimmed)
319
+ * type Case6 = IfEmptyString<" ", "yes", "no", false>;
320
+ * // ➔ "no" (not trimmed)
321
+ * ```
322
+ */
323
+ type IfEmptyString<T extends string,IfTrue=true,IfFalse=false,WithTrim extends boolean=true>=IfNot<IsNever<EmptyString<T,WithTrim>>,IfTrue,IfFalse>;
324
+ /** -------------------------------------------------------
325
+ * * ***IfNonEmptyString.***
326
+ * -------------------------------------------------------
327
+ * Conditional type: returns `IfTrue` if `T` is a non-empty string,
328
+ * otherwise returns `IfFalse`. Optionally trims whitespace before checking.
329
+ *
330
+ * @template T - The string type to check.
331
+ * @template IfTrue - Type returned if `T` is non-empty (default `true`).
332
+ * @template IfFalse - Type returned if `T` is empty (default `false`).
333
+ * @template WithTrim - Whether to trim whitespace before checking (default `true`).
334
+ *
335
+ * @example
336
+ * ```ts
337
+ * type Case1 = IfNonEmptyString<"abc">;
338
+ * // ➔ true
339
+ * type Case2 = IfNonEmptyString<"">;
340
+ * // ➔ false
341
+ * type Case3 = IfNonEmptyString<"abc", "yes", "no">;
342
+ * // ➔ "yes"
343
+ * type Case4 = IfNonEmptyString<"", "yes", "no">;
344
+ * // ➔ "no"
345
+ * type Case5 = IfNonEmptyString<" ", "yes", "no", true>;
346
+ * // ➔ "no" (trimmed)
347
+ * type Case6 = IfNonEmptyString<" ", "yes", "no", false>;
348
+ * // ➔ "yes" (not trimmed)
349
+ * ```
350
+ */
351
+ type IfNonEmptyString<T extends string,IfTrue=true,IfFalse=false,WithTrim extends boolean=true>=IfNot<IsNever<NonEmptyString<T,WithTrim>>,IfTrue,IfFalse>;export type{AnyString as A,EmptyString as E,IfNot as I,NonEmptyString as N,Trim as T,Whitespace as W,IsEmptyString as a,IfEmptyString as b,WordSeparator as c,IfNonEmptyString as d,IsNonEmptyString as e,TrimLeft as f,TrimRight as g,TrimsLower as h,TrimsUpper as i};
@@ -1 +1 @@
1
- 'use strict';var chunkTUXDINHF_cjs=require('../chunk-TUXDINHF.cjs'),chunkN2IJPIND_cjs=require('../chunk-N2IJPIND.cjs');require('../chunk-2TRAPBZ7.cjs');var chunkCN53M4QZ_cjs=require('../chunk-CN53M4QZ.cjs');Object.defineProperty(exports,"getInitialsName",{enumerable:true,get:function(){return chunkTUXDINHF_cjs.b}});Object.defineProperty(exports,"replaceAt",{enumerable:true,get:function(){return chunkTUXDINHF_cjs.a}});Object.defineProperty(exports,"normalizeSpaces",{enumerable:true,get:function(){return chunkN2IJPIND_cjs.a}});Object.defineProperty(exports,"normalizeString",{enumerable:true,get:function(){return chunkN2IJPIND_cjs.b}});Object.defineProperty(exports,"removeSpaces",{enumerable:true,get:function(){return chunkN2IJPIND_cjs.c}});Object.defineProperty(exports,"stripHtmlTags",{enumerable:true,get:function(){return chunkN2IJPIND_cjs.d}});Object.defineProperty(exports,"capitalizeFirst",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.s}});Object.defineProperty(exports,"capitalizeWords",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.t}});Object.defineProperty(exports,"slugify",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.B}});Object.defineProperty(exports,"toCamelCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.u}});Object.defineProperty(exports,"toDotCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.A}});Object.defineProperty(exports,"toKebabCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.y}});Object.defineProperty(exports,"toLowerCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.x}});Object.defineProperty(exports,"toPascalCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.w}});Object.defineProperty(exports,"toPascalCaseSpace",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.v}});Object.defineProperty(exports,"toSnakeCase",{enumerable:true,get:function(){return chunkCN53M4QZ_cjs.z}});
1
+ 'use strict';var chunkXOYX4PLZ_cjs=require('../chunk-XOYX4PLZ.cjs'),chunk445TAVT4_cjs=require('../chunk-445TAVT4.cjs');require('../chunk-6Q4I2RPC.cjs');var chunkLVUSFXQS_cjs=require('../chunk-LVUSFXQS.cjs');Object.defineProperty(exports,"getInitialsName",{enumerable:true,get:function(){return chunkXOYX4PLZ_cjs.b}});Object.defineProperty(exports,"replaceAt",{enumerable:true,get:function(){return chunkXOYX4PLZ_cjs.a}});Object.defineProperty(exports,"normalizeSpaces",{enumerable:true,get:function(){return chunk445TAVT4_cjs.a}});Object.defineProperty(exports,"normalizeString",{enumerable:true,get:function(){return chunk445TAVT4_cjs.b}});Object.defineProperty(exports,"removeSpaces",{enumerable:true,get:function(){return chunk445TAVT4_cjs.c}});Object.defineProperty(exports,"stripHtmlTags",{enumerable:true,get:function(){return chunk445TAVT4_cjs.d}});Object.defineProperty(exports,"capitalizeFirst",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.s}});Object.defineProperty(exports,"capitalizeWords",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.t}});Object.defineProperty(exports,"slugify",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.B}});Object.defineProperty(exports,"toCamelCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.u}});Object.defineProperty(exports,"toDotCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.A}});Object.defineProperty(exports,"toKebabCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.y}});Object.defineProperty(exports,"toLowerCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.x}});Object.defineProperty(exports,"toPascalCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.w}});Object.defineProperty(exports,"toPascalCaseSpace",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.v}});Object.defineProperty(exports,"toSnakeCase",{enumerable:true,get:function(){return chunkLVUSFXQS_cjs.z}});