@rzl-zone/utils-js 2.1.0 → 3.0.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 (129) hide show
  1. package/README.md +56 -27
  2. package/dist/NumberRangeUnion-DC-C3_Kq.d.ts +26 -0
  3. package/dist/any-BmdI8UbK.d.ts +67 -0
  4. package/dist/arrays-normalize-recursive-CnjYJ9xg.d.ts +72 -0
  5. package/dist/assertions/index.cjs +1 -0
  6. package/dist/assertions/index.d.ts +408 -0
  7. package/dist/assertions/index.js +1 -0
  8. package/dist/chunk-2HSNUPEO.cjs +1 -0
  9. package/dist/chunk-3YCFMGRB.js +1 -0
  10. package/dist/chunk-4Z75R3IT.cjs +1 -0
  11. package/dist/chunk-5C2SMIGX.cjs +1 -0
  12. package/dist/chunk-5Z2G23WP.js +1 -0
  13. package/dist/chunk-6C3ATUGM.cjs +1 -0
  14. package/dist/chunk-AJ25PWXX.cjs +1 -0
  15. package/dist/chunk-BHIBDDQF.js +1 -0
  16. package/dist/chunk-CE4JI2YB.js +1 -0
  17. package/dist/chunk-CMJ6UYWW.cjs +1 -0
  18. package/dist/chunk-D3VSHABU.cjs +1 -0
  19. package/dist/chunk-DG2GWBTS.cjs +1 -0
  20. package/dist/chunk-DVMHRLKP.cjs +1 -0
  21. package/dist/chunk-ECRNH4FW.js +1 -0
  22. package/dist/chunk-EKS4IZJR.cjs +1 -0
  23. package/dist/chunk-EOZKYR5S.cjs +1 -0
  24. package/dist/chunk-EUANTHVN.js +1 -0
  25. package/dist/chunk-EW3I4O7X.js +1 -0
  26. package/dist/chunk-F3E77L46.js +1 -0
  27. package/dist/chunk-FIAAX3UE.js +1 -0
  28. package/dist/chunk-FV7SEBKD.cjs +1 -0
  29. package/dist/chunk-G5LXIEFO.js +0 -0
  30. package/dist/chunk-GGWPB23G.cjs +1 -0
  31. package/dist/chunk-GVWGQNLF.js +1 -0
  32. package/dist/chunk-H3FXL4DU.cjs +1 -0
  33. package/dist/chunk-HHPDLSX2.cjs +1 -0
  34. package/dist/chunk-IMCLPT5V.cjs +1 -0
  35. package/dist/chunk-IRGE5W7L.js +1 -0
  36. package/dist/chunk-J2RGTPGK.cjs +1 -0
  37. package/dist/chunk-JARPXKBM.cjs +1 -0
  38. package/dist/chunk-JFJUPYDT.cjs +1 -0
  39. package/dist/chunk-JLP56WSM.js +1 -0
  40. package/dist/chunk-K3MV4AIN.cjs +1 -0
  41. package/dist/chunk-KHO2SBNA.cjs +1 -0
  42. package/dist/chunk-KOVO72OM.js +1 -0
  43. package/dist/chunk-LJ4M3VGE.js +1 -0
  44. package/dist/chunk-LJVGJLP4.js +1 -0
  45. package/dist/chunk-M47QIBXI.cjs +1 -0
  46. package/dist/chunk-MC3LXMCQ.js +1 -0
  47. package/dist/chunk-MISCBZJC.js +1 -0
  48. package/dist/chunk-MMSYCIJ2.cjs +1 -0
  49. package/dist/chunk-MTUBDVJ2.js +1 -0
  50. package/dist/chunk-O7UT5AN3.cjs +1 -0
  51. package/dist/chunk-OGPPP2S3.js +1 -0
  52. package/dist/chunk-OLPKAX7F.cjs +1 -0
  53. package/dist/chunk-ONZFBJVW.js +1 -0
  54. package/dist/chunk-ORZFHBEY.js +1 -0
  55. package/dist/chunk-OWV2P376.js +1 -0
  56. package/dist/chunk-QNKGP5DY.js +1 -0
  57. package/dist/chunk-RV2WK5E6.js +1 -0
  58. package/dist/chunk-SBF43G3B.cjs +1 -0
  59. package/dist/chunk-T4CIAKEK.js +1 -0
  60. package/dist/chunk-UDA26MCU.cjs +1 -0
  61. package/dist/chunk-VCFXNV3Q.cjs +1 -0
  62. package/dist/chunk-VHAPTHEA.cjs +1 -0
  63. package/dist/chunk-WVSPXFTY.js +1 -0
  64. package/dist/chunk-X74TUJSE.cjs +1 -0
  65. package/dist/chunk-XC3QHAK2.cjs +1 -0
  66. package/dist/chunk-XLDAIZRK.js +1 -0
  67. package/dist/chunk-XZJ7C4N6.js +1 -0
  68. package/dist/chunk-YV3K2EKJ.js +1 -0
  69. package/dist/chunk-ZHV5ZYVN.cjs +1 -0
  70. package/dist/chunk-ZL7J6GTP.js +1 -0
  71. package/dist/chunk-ZTCLKKMB.js +1 -0
  72. package/dist/conversions/index.cjs +1 -0
  73. package/dist/conversions/index.d.ts +1436 -0
  74. package/dist/conversions/index.js +1 -0
  75. package/dist/env/index.cjs +1 -0
  76. package/dist/env/index.d.ts +16 -0
  77. package/dist/env/index.js +1 -0
  78. package/dist/events/index.cjs +1 -0
  79. package/dist/events/index.d.ts +122 -0
  80. package/dist/events/index.js +1 -0
  81. package/dist/extends-Bk_SBGdT.d.ts +367 -0
  82. package/dist/formatting/index.cjs +1 -0
  83. package/dist/formatting/index.d.ts +950 -0
  84. package/dist/formatting/index.js +1 -0
  85. package/dist/generator/index.cjs +1 -0
  86. package/dist/generator/index.d.ts +186 -0
  87. package/dist/generator/index.js +1 -0
  88. package/dist/if-CvT4R7Kh.d.ts +18 -0
  89. package/dist/is-array--YjXV-Wx.d.ts +1207 -0
  90. package/dist/isPlainObject-BVhBAPHX.d.ts +169 -0
  91. package/dist/never-BfayMBF9.d.ts +75 -0
  92. package/dist/next/index.cjs +1 -1
  93. package/dist/next/index.d.ts +130 -110
  94. package/dist/next/index.js +1 -1
  95. package/dist/next/server/index.cjs +1 -1
  96. package/dist/next/server/index.d.ts +9 -23
  97. package/dist/next/server/index.js +1 -1
  98. package/dist/nils-DMz3kU7M.d.ts +177 -0
  99. package/dist/omit-VvmIsZmX.d.ts +28 -0
  100. package/dist/operations/index.cjs +1 -0
  101. package/dist/operations/index.d.ts +127 -0
  102. package/dist/operations/index.js +1 -0
  103. package/dist/parsers/index.cjs +1 -0
  104. package/dist/parsers/index.d.ts +36 -0
  105. package/dist/parsers/index.js +1 -0
  106. package/dist/predicates/index.cjs +1 -0
  107. package/dist/predicates/index.d.ts +1865 -0
  108. package/dist/predicates/index.js +1 -0
  109. package/dist/prettify-C4xLcYOP.d.ts +353 -0
  110. package/dist/promise/index.cjs +1 -0
  111. package/dist/promise/index.d.ts +31 -0
  112. package/dist/promise/index.js +1 -0
  113. package/dist/rzl-utils.global.js +1 -1
  114. package/dist/string-XA-til3C.d.ts +351 -0
  115. package/dist/strings/index.cjs +1 -0
  116. package/dist/strings/index.d.ts +741 -0
  117. package/dist/strings/index.js +1 -0
  118. package/dist/tailwind/index.cjs +1 -0
  119. package/dist/tailwind/index.d.ts +565 -0
  120. package/dist/tailwind/index.js +1 -0
  121. package/dist/type-data-DDs-u2kq.d.ts +261 -0
  122. package/dist/types/index.d.ts +3054 -1555
  123. package/dist/urls/index.cjs +1 -0
  124. package/dist/urls/index.d.ts +393 -0
  125. package/dist/urls/index.js +1 -0
  126. package/package.json +196 -27
  127. package/dist/index.cjs +0 -1
  128. package/dist/index.d.ts +0 -4334
  129. package/dist/index.js +0 -1
@@ -0,0 +1 @@
1
+ export{censorEmail,chunkString,formatCurrency,formatDateFns,formatDateIntl,formatDateTime,formatNumber,formatPhoneNumber,getGMTOffset,truncateString}from"../chunk-ZL7J6GTP.js";import"../chunk-EUANTHVN.js";import"../chunk-OWV2P376.js";import"../chunk-MISCBZJC.js";import"../chunk-KOVO72OM.js";import"../chunk-T4CIAKEK.js";import"../chunk-WVSPXFTY.js";import"../chunk-BHIBDDQF.js";import"../chunk-QNKGP5DY.js";import"../chunk-EW3I4O7X.js";
@@ -0,0 +1 @@
1
+ "use strict";var e=require("../chunk-FV7SEBKD.cjs"),r=require("../chunk-5C2SMIGX.cjs");require("../chunk-DVMHRLKP.cjs"),require("../chunk-ZHV5ZYVN.cjs"),require("../chunk-UDA26MCU.cjs"),require("../chunk-D3VSHABU.cjs"),Object.defineProperty(exports,"getRandomItem",{enumerable:!0,get:function(){return e.getRandomItem}}),Object.defineProperty(exports,"randomInt",{enumerable:!0,get:function(){return e.randomInt}}),Object.defineProperty(exports,"randomIntByLength",{enumerable:!0,get:function(){return e.randomIntByLength}}),Object.defineProperty(exports,"randomStr",{enumerable:!0,get:function(){return e.randomStr}}),Object.defineProperty(exports,"noop",{enumerable:!0,get:function(){return r.noop}});
@@ -0,0 +1,186 @@
1
+ import{f as IfNonEmptyArray,E as Extends}from'../extends-Bk_SBGdT.js';import{F as FixNeverArrayRecursive}from'../arrays-normalize-recursive-CnjYJ9xg.js';import{g as NullToUndefined}from'../nils-DMz3kU7M.js';import'../if-CvT4R7Kh.js';import'../never-BfayMBF9.js';type OptionsRandomStr={
2
+ /** Ensures no whitespace characters in the generated string, defaultValue: `true`.
3
+ *
4
+ * @default true
5
+ */
6
+ avoidWhiteSpace?:boolean;
7
+ /** Custom characters to replace the default number set if `type` is `"number"`, defaultValue: `undefined`.
8
+ *
9
+ * @default undefined
10
+ */
11
+ replaceGenInt?:string;
12
+ /** Custom characters to replace the default string set if `type` is `"string"`, defaultValue: `undefined`.
13
+ *
14
+ * @default undefined
15
+ */
16
+ replaceGenStr?:string;
17
+ /** Additional characters to include in the generated string, defaultValue: `undefined`.
18
+ *
19
+ * @default undefined
20
+ */
21
+ addChar?:string;
22
+ /** Minimum length of the generated string (1 to 5000), defaultValue: `40`.
23
+ *
24
+ * @default 40
25
+ */
26
+ minLength?:number;
27
+ /** Maximum length of the generated string (1 to 5000), defaultValue: `40`.
28
+ *
29
+ * @default 40
30
+ */
31
+ maxLength?:number;
32
+ /** Type of output: `"string"` or `"number"`, defaultValue: `"string"`.
33
+ *
34
+ * @default "string"
35
+ */
36
+ type?:"string"|"number";};
37
+ /** ---------------------------------
38
+ * * ***Returns a random element from a given array.***
39
+ * ---------------------------------
40
+ * @template T - The type of the input array.
41
+ * @param {*} array - The input array. Can be `null`, `undefined`, or an empty array.
42
+ * @returns
43
+ * - If `array` is a non-empty tuple, returns one of its elements.
44
+ * - If `array` is empty, `null`, or `undefined`, returns `undefined`.
45
+ * @example
46
+ * getRandomItem([]);
47
+ * // ➔ undefined
48
+ * getRandomItem(null);
49
+ * // ➔ undefined
50
+ * getRandomItem(undefined);
51
+ * // ➔ undefined
52
+ * getRandomItem([1, 2, 3, 4]);
53
+ * // ➔ number
54
+ * getRandomItem(["apple", "banana", "cherry"]);
55
+ * // ➔ string
56
+ * getRandomItem(["apple", 123, true]);
57
+ * // ➔ string | number | boolean
58
+ * getRandomItem(["apple", 123, true, null]);
59
+ * // ➔ string | number | boolean | undefined
60
+ * getRandomItem(["apple", 123, true, undefined]);
61
+ * // ➔ string | number | boolean | undefined
62
+ *
63
+ * // Tuple example:
64
+ * const tuple = [1, "two", true] as const;
65
+ * getRandomItem(tuple); // 1 | "two" | true
66
+ */
67
+ declare function getRandomItem(array:undefined):undefined;declare function getRandomItem(array:null):undefined;declare function getRandomItem(array:[]):undefined;declare function getRandomItem<T extends readonly unknown[]>(array:T):T extends never[][]?[]:number extends T["length"]?NullToUndefined<FixNeverArrayRecursive<T[number]>>:IfNonEmptyArray<T,NullToUndefined<FixNeverArrayRecursive<T[number]>>,undefined>;declare function getRandomItem<T extends readonly unknown[]|undefined|null>(array:T):T extends readonly unknown[]?NullToUndefined<FixNeverArrayRecursive<T[number]>>|undefined:undefined;declare function getRandomItem<T>(array:T):unknown extends T?unknown:Extends<any[]|readonly any[],T>extends true?Extract<T,unknown[]|readonly unknown[]>[number]|undefined:Extends<any[],T>extends true?Extract<T,unknown[]|readonly unknown[]>[number]|undefined:Extends<readonly any[],T>extends true?Extract<T,unknown[]|readonly unknown[]>[number]|undefined:undefined;
68
+ /** -----------------------------------------------------------------------
69
+ * * ***Generates a random integer within a specified range (inclusive).***
70
+ * ------------------------------------------------------------------------
71
+ * Generates a random integer between `min` and `max` (inclusive), with safety constraints:
72
+ * - `min` will be forced to be at least `1`.
73
+ * - `max` will be capped at `Number.MAX_SAFE_INTEGER`.
74
+ *
75
+ * Validates input parameters to ensure robust behavior.
76
+ * @param {number} min - The minimum value (inclusive), must be an integer.
77
+ * @param {number} max - The maximum value (inclusive), must be an integer.
78
+ * @returns {number} A random integer N where `min ≤ N ≤ max`.
79
+ * @throws {TypeError} If:
80
+ * - `min` or `max` is not an integer and value is `Number.MIN_VALUE`.
81
+ * - `min` is greater than `max`.
82
+ * @example
83
+ * randomInt(1, 10); // ➔ returns 1 to 10
84
+ * randomInt(50, 100); // ➔ returns 50 to 100
85
+ * randomInt(5, 5); // ➔ always returns 5
86
+ * randomInt(-5, 3); // ➔ always returns ≥ 1, since min is adjusted
87
+ * randomInt(1, Number.MAX_SAFE_INTEGER + 10000);
88
+ * // ➔ still safely capped at MAX_SAFE_INTEGER
89
+ * randomInt(Number.MIN_VALUE, 3);
90
+ * // ➔ Error, min or max cant be as `Number.MIN_VALUE` value.
91
+ */
92
+ declare const randomInt:(min:number,max:number)=>number;type OptionsRandomIntByLength={
93
+ /** * Minimum length of the random number, the `allowed minimal value` `integer` is `1` `and not bigger than value of` `maxLength`, defaultValue: `1`.
94
+ *
95
+ * @default 1
96
+ */
97
+ minLength?:number;
98
+ /** * Maximum length of the random number, the `allowed maximal value` `integer` is `16`, defaultValue: `16`.
99
+ *
100
+ * @default 16
101
+ */
102
+ maxLength?:number;
103
+ /** * If true, prevents the result from being zero, defaultValue: `false`.
104
+ *
105
+ * @default false
106
+ */
107
+ avoidZero?:boolean;};
108
+ /** ----------------------------------------------------------------------------
109
+ * * ***Generates a random integer within a specified range of digit lengths.***
110
+ * -----------------------------------------------------------------------------
111
+ * **This function allows generating random integers that strictly conform to a specified minimum and
112
+ * maximum digit length, it is useful for scenarios such as generating realistic-looking IDs, codes,
113
+ * or random test data.**
114
+ * - **The function ensures:**
115
+ * - `minLength` is at least 1 and not greater than `maxLength`.
116
+ * - `maxLength` is no more than 16 (due to JavaScript's Number.MAX_SAFE_INTEGER).
117
+ * - If `avoidZero` is `true`, ensures that `0` is never returned.
118
+ * @param {OptionsRandomIntByLength} [options] - Configuration options.
119
+ * @param {OptionsRandomIntByLength["minLength"]} [options.minLength=1] - Minimum number of digits (must be ≥1 and ≤ `maxLength`).
120
+ * @param {OptionsRandomIntByLength["maxLength"]} [options.maxLength=16] - Maximum number of digits (must be ≤16).
121
+ * @param {OptionsRandomIntByLength["avoidZero"]} [options.avoidZero=false] - If true, will ensure the result is never zero.
122
+ * @returns {number} A randomly generated integer within the specified constraints.
123
+ * @throws {TypeError} If parameters are invalid, such as:
124
+ * - `minLength` < `1`
125
+ * - `maxLength` > `16`
126
+ * - `minLength` > `maxLength`
127
+ * - non-integer values for `minLength` or `maxLength`
128
+ * @example
129
+ * randomIntByLength({ minLength: 3, maxLength: 5 });
130
+ * // ➔ (`4829` << random), (`192` << random) or (`71492` << random).
131
+ * randomIntByLength({ minLength: 4, maxLength: 4 });
132
+ * // ➔ `5930` (exact 4 digits)
133
+ * randomIntByLength({ avoidZero: true });
134
+ * // ➔ never 0
135
+ */
136
+ declare const randomIntByLength:(options?:OptionsRandomIntByLength)=>number;
137
+ /** ---------------------------------------------------------------------------------
138
+ * * ***Generates a random alphanumeric string or number with a specified length range.***
139
+ * ---------------------------------------------------------------------------------
140
+ * **This function allows you to generate random strings or numbers with fully
141
+ * customizable options, such as length range, character sets, inclusion of
142
+ * additional characters, and whether to avoid whitespace.**
143
+ * @param {OptionsRandomStr} [options] - Configuration options for generating the string.
144
+ * @param {OptionsRandomStr["minLength"]} [options.minLength=40] - Minimum length of the generated string (must be `≥` `1`).
145
+ * @param {OptionsRandomStr["maxLength"]} [options.maxLength=40] - Maximum length of the generated string (must be `≤` `5000`).
146
+ * @param {OptionsRandomStr["type"]} [options.type="string"] - Whether to generate a general alphanumeric string or purely numeric string.
147
+ * @param {OptionsRandomStr["avoidWhiteSpace"]} [options.avoidWhiteSpace=true] - If true, removes all whitespace, tabs, and newlines from the character set before generating.
148
+ * @param {OptionsRandomStr["replaceGenStr"]} [options.replaceGenStr] - A custom character set to use when `type` is `"string"`.
149
+ * @param {OptionsRandomStr["replaceGenInt"]} [options.replaceGenInt] - A custom character set to use when `type` is `"number"`.
150
+ * @param {OptionsRandomStr["addChar"]} [options.addChar] - Additional characters to always include in the character set.
151
+ * @returns {string} The randomly generated string or numeric string of the desired length.
152
+ * @throws {TypeError} If provided options are invalid (such as minLength > maxLength, invalid type, or empty character set).
153
+ * @example
154
+ * randomStr();
155
+ * // ➔ Generates a 40-character random alphanumeric string
156
+ * randomStr({ minLength: 10, maxLength: 20 });
157
+ * // ➔ Generates a string between 10 and 20 characters
158
+ * randomStr({ type: "number", minLength: 5, maxLength: 5 });
159
+ * // ➔ "48302"
160
+ * randomStr({ replaceGenStr: "ABC ", avoidWhiteSpace: false });
161
+ * // ➔ String using A, B, C and space
162
+ * randomStr({ addChar: "!@#", minLength: 15, maxLength: 15 });
163
+ * // ➔ Guaranteed to include !@# in the set
164
+ */
165
+ declare const randomStr:(options?:OptionsRandomStr)=>string;
166
+ /** --------------------------------------------------
167
+ * * ***A no-operation function that always returns `undefined`.***
168
+ * --------------------------------------------------
169
+ * **Useful as a default callback, placeholder, or stub function.**
170
+ * @returns {undefined} Always returns `undefined`.
171
+ * @example
172
+ * // Direct call returns undefined
173
+ * noop();
174
+ * // ➔ undefined
175
+ *
176
+ * // Can be used with type-checking helpers
177
+ * isUndefined(noop()); // ➔ true
178
+ * isFunction(noop); // ➔ true
179
+ * isFunction(noop()); // ➔ false
180
+ *
181
+ * // Often used as a default function
182
+ * const callback = noop;
183
+ * callback();
184
+ * // ➔ undefined
185
+ */
186
+ declare const noop:()=>void;export{getRandomItem,noop,randomInt,randomIntByLength,randomStr};
@@ -0,0 +1 @@
1
+ export{getRandomItem,randomInt,randomIntByLength,randomStr}from"../chunk-3YCFMGRB.js";export{noop}from"../chunk-FIAAX3UE.js";import"../chunk-WVSPXFTY.js";import"../chunk-BHIBDDQF.js";import"../chunk-QNKGP5DY.js";import"../chunk-EW3I4O7X.js";
@@ -0,0 +1,18 @@
1
+ /** -------------------------------------------------------
2
+ * * ***If.***
3
+ * -------------------------------------------------------
4
+ * Conditional: returns the second argument if the first argument is `true`, otherwise returns the third argument.
5
+ * - Defaults: `IfTrue = true`, `IfFalse = false`.
6
+ *
7
+ * @template Condition - The boolean condition to check.
8
+ * @template IfTrue - The branch type if condition is `true`. (default: `true`)
9
+ * @template IfFalse - The branch type if condition is `false`. (default: `false`)
10
+ * @example
11
+ * ```ts
12
+ * type A = If<true, "valid">;
13
+ * // ➔ "valid"
14
+ * type B = If<false, "valid", "invalid">;
15
+ * // ➔ "invalid"
16
+ * ```
17
+ */
18
+ type If<Condition,IfTrue=true,IfFalse=false>=Condition extends true?IfTrue:IfFalse;export type{If as I};