@lowentry/utils 2.0.2 → 2.0.3

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 (169) hide show
  1. package/dist/src/LeTypes.d.ts +73 -0
  2. package/dist/src/LeTypes.d.ts.map +1 -0
  3. package/dist/src/LeTypes.js +235 -0
  4. package/dist/src/LeTypes.js.map +1 -0
  5. package/dist/src/LeUtils.d.ts +745 -0
  6. package/dist/src/LeUtils.d.ts.map +1 -0
  7. package/dist/src/LeUtils.js +3168 -0
  8. package/dist/src/LeUtils.js.map +1 -0
  9. package/dist/src/classes/EventEmitter.d.ts +51 -0
  10. package/dist/src/classes/EventEmitter.d.ts.map +1 -0
  11. package/dist/src/classes/EventEmitter.js +94 -0
  12. package/dist/src/classes/EventEmitter.js.map +1 -0
  13. package/dist/src/classes/LinkedList.d.ts +35 -0
  14. package/dist/src/classes/LinkedList.d.ts.map +1 -0
  15. package/dist/src/classes/LinkedList.js +99 -0
  16. package/dist/src/classes/LinkedList.js.map +1 -0
  17. package/dist/src/classes/SerializableMap.d.ts +14 -0
  18. package/dist/src/classes/SerializableMap.d.ts.map +1 -0
  19. package/dist/src/classes/SerializableMap.js +27 -0
  20. package/dist/src/classes/SerializableMap.js.map +1 -0
  21. package/dist/src/classes/TreeSet.d.ts +123 -0
  22. package/dist/src/classes/TreeSet.d.ts.map +1 -0
  23. package/dist/src/classes/TreeSet.js +210 -0
  24. package/dist/src/classes/TreeSet.js.map +1 -0
  25. package/dist/src/index.d.ts +148 -0
  26. package/dist/src/index.d.ts.map +1 -0
  27. package/dist/src/index.js +13 -0
  28. package/dist/src/index.js.map +1 -0
  29. package/dist/tests/CustomClasses.test.d.ts +2 -0
  30. package/dist/tests/CustomClasses.test.d.ts.map +1 -0
  31. package/dist/tests/CustomClasses.test.js +138 -0
  32. package/dist/tests/CustomClasses.test.js.map +1 -0
  33. package/dist/tests/LeClasses.EventEmitter.test.d.ts +2 -0
  34. package/dist/tests/LeClasses.EventEmitter.test.d.ts.map +1 -0
  35. package/dist/tests/LeClasses.EventEmitter.test.js +39 -0
  36. package/dist/tests/LeClasses.EventEmitter.test.js.map +1 -0
  37. package/dist/tests/LeClasses.LinkedList.test.d.ts +2 -0
  38. package/dist/tests/LeClasses.LinkedList.test.d.ts.map +1 -0
  39. package/dist/tests/LeClasses.LinkedList.test.js +36 -0
  40. package/dist/tests/LeClasses.LinkedList.test.js.map +1 -0
  41. package/dist/tests/LeClasses.SerializableMap.test.d.ts +2 -0
  42. package/dist/tests/LeClasses.SerializableMap.test.d.ts.map +1 -0
  43. package/dist/tests/LeClasses.SerializableMap.test.js +25 -0
  44. package/dist/tests/LeClasses.SerializableMap.test.js.map +1 -0
  45. package/dist/tests/LeClasses.TreeSet.test.d.ts +2 -0
  46. package/dist/tests/LeClasses.TreeSet.test.d.ts.map +1 -0
  47. package/dist/tests/LeClasses.TreeSet.test.js +28 -0
  48. package/dist/tests/LeClasses.TreeSet.test.js.map +1 -0
  49. package/dist/tests/LeTypes.ARRAY.test.d.ts +2 -0
  50. package/dist/tests/LeTypes.ARRAY.test.d.ts.map +1 -0
  51. package/dist/tests/LeTypes.ARRAY.test.js +103 -0
  52. package/dist/tests/LeTypes.ARRAY.test.js.map +1 -0
  53. package/dist/tests/LeTypes.BOOL.test.d.ts +2 -0
  54. package/dist/tests/LeTypes.BOOL.test.d.ts.map +1 -0
  55. package/dist/tests/LeTypes.BOOL.test.js +138 -0
  56. package/dist/tests/LeTypes.BOOL.test.js.map +1 -0
  57. package/dist/tests/LeTypes.FLOAT.test.d.ts +2 -0
  58. package/dist/tests/LeTypes.FLOAT.test.d.ts.map +1 -0
  59. package/dist/tests/LeTypes.FLOAT.test.js +120 -0
  60. package/dist/tests/LeTypes.FLOAT.test.js.map +1 -0
  61. package/dist/tests/LeTypes.FLOAT_ANY.test.d.ts +2 -0
  62. package/dist/tests/LeTypes.FLOAT_ANY.test.d.ts.map +1 -0
  63. package/dist/tests/LeTypes.FLOAT_ANY.test.js +47 -0
  64. package/dist/tests/LeTypes.FLOAT_ANY.test.js.map +1 -0
  65. package/dist/tests/LeTypes.INT.test.d.ts +2 -0
  66. package/dist/tests/LeTypes.INT.test.d.ts.map +1 -0
  67. package/dist/tests/LeTypes.INT.test.js +80 -0
  68. package/dist/tests/LeTypes.INT.test.js.map +1 -0
  69. package/dist/tests/LeTypes.INT_ANY.test.d.ts +2 -0
  70. package/dist/tests/LeTypes.INT_ANY.test.d.ts.map +1 -0
  71. package/dist/tests/LeTypes.INT_ANY.test.js +37 -0
  72. package/dist/tests/LeTypes.INT_ANY.test.js.map +1 -0
  73. package/dist/tests/LeTypes.ISSET.test.d.ts +2 -0
  74. package/dist/tests/LeTypes.ISSET.test.d.ts.map +1 -0
  75. package/dist/tests/LeTypes.ISSET.test.js +113 -0
  76. package/dist/tests/LeTypes.ISSET.test.js.map +1 -0
  77. package/dist/tests/LeTypes.IS_ARRAY.test.d.ts +2 -0
  78. package/dist/tests/LeTypes.IS_ARRAY.test.d.ts.map +1 -0
  79. package/dist/tests/LeTypes.IS_ARRAY.test.js +81 -0
  80. package/dist/tests/LeTypes.IS_ARRAY.test.js.map +1 -0
  81. package/dist/tests/LeTypes.IS_OBJECT.test.d.ts +2 -0
  82. package/dist/tests/LeTypes.IS_OBJECT.test.d.ts.map +1 -0
  83. package/dist/tests/LeTypes.IS_OBJECT.test.js +98 -0
  84. package/dist/tests/LeTypes.IS_OBJECT.test.js.map +1 -0
  85. package/dist/tests/LeTypes.LAX.test.d.ts +2 -0
  86. package/dist/tests/LeTypes.LAX.test.d.ts.map +1 -0
  87. package/dist/tests/LeTypes.LAX.test.js +89 -0
  88. package/dist/tests/LeTypes.LAX.test.js.map +1 -0
  89. package/dist/tests/LeTypes.OBJECT.test.d.ts +2 -0
  90. package/dist/tests/LeTypes.OBJECT.test.d.ts.map +1 -0
  91. package/dist/tests/LeTypes.OBJECT.test.js +81 -0
  92. package/dist/tests/LeTypes.OBJECT.test.js.map +1 -0
  93. package/dist/tests/LeTypes.STRING.test.d.ts +2 -0
  94. package/dist/tests/LeTypes.STRING.test.d.ts.map +1 -0
  95. package/dist/tests/LeTypes.STRING.test.js +204 -0
  96. package/dist/tests/LeTypes.STRING.test.js.map +1 -0
  97. package/dist/tests/LeTypes.STRING_ANY.test.d.ts +2 -0
  98. package/dist/tests/LeTypes.STRING_ANY.test.d.ts.map +1 -0
  99. package/dist/tests/LeTypes.STRING_ANY.test.js +58 -0
  100. package/dist/tests/LeTypes.STRING_ANY.test.js.map +1 -0
  101. package/dist/tests/LeUtils.clone.test.d.ts +2 -0
  102. package/dist/tests/LeUtils.clone.test.d.ts.map +1 -0
  103. package/dist/tests/LeUtils.clone.test.js +180 -0
  104. package/dist/tests/LeUtils.clone.test.js.map +1 -0
  105. package/dist/tests/LeUtils.collections.test.d.ts +2 -0
  106. package/dist/tests/LeUtils.collections.test.d.ts.map +1 -0
  107. package/dist/tests/LeUtils.collections.test.js +149 -0
  108. package/dist/tests/LeUtils.collections.test.js.map +1 -0
  109. package/dist/tests/LeUtils.comparison.test.d.ts +2 -0
  110. package/dist/tests/LeUtils.comparison.test.d.ts.map +1 -0
  111. package/dist/tests/LeUtils.comparison.test.js +125 -0
  112. package/dist/tests/LeUtils.comparison.test.js.map +1 -0
  113. package/dist/tests/LeUtils.contains.test.d.ts +2 -0
  114. package/dist/tests/LeUtils.contains.test.d.ts.map +1 -0
  115. package/dist/tests/LeUtils.contains.test.js +52 -0
  116. package/dist/tests/LeUtils.contains.test.js.map +1 -0
  117. package/dist/tests/LeUtils.each.test.d.ts +2 -0
  118. package/dist/tests/LeUtils.each.test.d.ts.map +1 -0
  119. package/dist/tests/LeUtils.each.test.js +267 -0
  120. package/dist/tests/LeUtils.each.test.js.map +1 -0
  121. package/dist/tests/LeUtils.eachAsync.test.d.ts +2 -0
  122. package/dist/tests/LeUtils.eachAsync.test.d.ts.map +1 -0
  123. package/dist/tests/LeUtils.eachAsync.test.js +80 -0
  124. package/dist/tests/LeUtils.eachAsync.test.js.map +1 -0
  125. package/dist/tests/LeUtils.encoding.test.d.ts +2 -0
  126. package/dist/tests/LeUtils.encoding.test.d.ts.map +1 -0
  127. package/dist/tests/LeUtils.encoding.test.js +45 -0
  128. package/dist/tests/LeUtils.encoding.test.js.map +1 -0
  129. package/dist/tests/LeUtils.equals.test.d.ts +2 -0
  130. package/dist/tests/LeUtils.equals.test.d.ts.map +1 -0
  131. package/dist/tests/LeUtils.equals.test.js +328 -0
  132. package/dist/tests/LeUtils.equals.test.js.map +1 -0
  133. package/dist/tests/LeUtils.flatten.test.d.ts +2 -0
  134. package/dist/tests/LeUtils.flatten.test.d.ts.map +1 -0
  135. package/dist/tests/LeUtils.flatten.test.js +30 -0
  136. package/dist/tests/LeUtils.flatten.test.js.map +1 -0
  137. package/dist/tests/LeUtils.misc.test.d.ts +2 -0
  138. package/dist/tests/LeUtils.misc.test.d.ts.map +1 -0
  139. package/dist/tests/LeUtils.misc.test.js +50 -0
  140. package/dist/tests/LeUtils.misc.test.js.map +1 -0
  141. package/dist/tests/LeUtils.misc2.test.d.ts +2 -0
  142. package/dist/tests/LeUtils.misc2.test.d.ts.map +1 -0
  143. package/dist/tests/LeUtils.misc2.test.js +58 -0
  144. package/dist/tests/LeUtils.misc2.test.js.map +1 -0
  145. package/dist/tests/LeUtils.newlyAdded.test.d.ts +2 -0
  146. package/dist/tests/LeUtils.newlyAdded.test.d.ts.map +1 -0
  147. package/dist/tests/LeUtils.newlyAdded.test.js +121 -0
  148. package/dist/tests/LeUtils.newlyAdded.test.js.map +1 -0
  149. package/dist/tests/LeUtils.strings.test.d.ts +2 -0
  150. package/dist/tests/LeUtils.strings.test.d.ts.map +1 -0
  151. package/dist/tests/LeUtils.strings.test.js +125 -0
  152. package/dist/tests/LeUtils.strings.test.js.map +1 -0
  153. package/dist/tests/LeUtils.timing.test.d.ts +2 -0
  154. package/dist/tests/LeUtils.timing.test.d.ts.map +1 -0
  155. package/dist/tests/LeUtils.timing.test.js +72 -0
  156. package/dist/tests/LeUtils.timing.test.js.map +1 -0
  157. package/dist/tests/LeUtils.transactional.test.d.ts +2 -0
  158. package/dist/tests/LeUtils.transactional.test.d.ts.map +1 -0
  159. package/dist/tests/LeUtils.transactional.test.js +39 -0
  160. package/dist/tests/LeUtils.transactional.test.js.map +1 -0
  161. package/dist/tests/setup.d.ts +2 -0
  162. package/dist/tests/setup.d.ts.map +1 -0
  163. package/dist/tests/setup.js +6 -0
  164. package/dist/tests/setup.js.map +1 -0
  165. package/dist/vitest.config.d.ts +3 -0
  166. package/dist/vitest.config.d.ts.map +1 -0
  167. package/dist/vitest.config.js +21 -0
  168. package/dist/vitest.config.js.map +1 -0
  169. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.LAX.test.js","sourceRoot":"","sources":["../../tests/LeTypes.LAX.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LeTypes.OBJECT.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.OBJECT.test.d.ts","sourceRoot":"","sources":["../../tests/LeTypes.OBJECT.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,81 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { OBJECT } from '../src/index';
3
+ /**
4
+ * OBJECT() - Baseline Tests
5
+ * Old behavior: IS_OBJECT(value) ? value : {}
6
+ * - If object: return as-is
7
+ * - Otherwise: return empty object
8
+ */
9
+ describe('OBJECT() - Happy Path', () => {
10
+ it('returns object unchanged', () => {
11
+ const obj = { a: 1 };
12
+ expect(OBJECT(obj)).toBe(obj); // Same reference
13
+ });
14
+ it('returns Map unchanged', () => {
15
+ const map = new Map();
16
+ expect(OBJECT(map)).toBe(map);
17
+ });
18
+ it('returns Set unchanged', () => {
19
+ const set = new Set();
20
+ expect(OBJECT(set)).toBe(set);
21
+ });
22
+ it('returns Date unchanged', () => {
23
+ const date = new Date();
24
+ expect(OBJECT(date)).toBe(date);
25
+ });
26
+ });
27
+ describe('OBJECT() - Negative Inputs', () => {
28
+ it('returns empty object for null', () => {
29
+ expect(OBJECT(null)).toEqual({});
30
+ });
31
+ it('returns empty object for undefined', () => {
32
+ expect(OBJECT(undefined)).toEqual({});
33
+ });
34
+ it('returns empty object for string', () => {
35
+ expect(OBJECT('test')).toEqual({});
36
+ });
37
+ it('returns empty object for number', () => {
38
+ expect(OBJECT(123)).toEqual({});
39
+ });
40
+ it('returns empty object for boolean', () => {
41
+ expect(OBJECT(true)).toEqual({});
42
+ });
43
+ it('returns empty object for array', () => {
44
+ expect(OBJECT([1, 2])).toEqual({});
45
+ });
46
+ });
47
+ describe('OBJECT() - Empty Values', () => {
48
+ it('returns empty object unchanged', () => {
49
+ const empty = {};
50
+ expect(OBJECT(empty)).toBe(empty);
51
+ });
52
+ it('returns empty object for zero', () => {
53
+ expect(OBJECT(0)).toEqual({});
54
+ });
55
+ it('returns empty object for empty string', () => {
56
+ expect(OBJECT('')).toEqual({});
57
+ });
58
+ it('returns empty object for empty array', () => {
59
+ expect(OBJECT([])).toEqual({});
60
+ });
61
+ });
62
+ describe('OBJECT() - Edge Cases', () => {
63
+ it('returns frozen object unchanged', () => {
64
+ const frozen = Object.freeze({ a: 1 });
65
+ expect(OBJECT(frozen)).toBe(frozen);
66
+ });
67
+ it('returns object with null prototype unchanged', () => {
68
+ const obj = Object.create(null);
69
+ expect(OBJECT(obj)).toBe(obj);
70
+ });
71
+ it('returns empty object for function', () => {
72
+ expect(OBJECT(() => { })).toEqual({});
73
+ });
74
+ it('returns empty object for Symbol', () => {
75
+ expect(OBJECT(Symbol('test'))).toEqual({});
76
+ });
77
+ it('returns empty object for BigInt', () => {
78
+ expect(OBJECT(BigInt(123))).toEqual({});
79
+ });
80
+ });
81
+ //# sourceMappingURL=LeTypes.OBJECT.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.OBJECT.test.js","sourceRoot":"","sources":["../../tests/LeTypes.OBJECT.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LeTypes.STRING.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.STRING.test.d.ts","sourceRoot":"","sources":["../../tests/LeTypes.STRING.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,204 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { STRING } from '../src/index';
3
+ /**
4
+ * STRING() - Baseline Tests
5
+ *
6
+ * Old behavior: ISSET(value) ? ('' + value) : ''
7
+ * - If value is not null/undefined: convert to string
8
+ * - If value is null/undefined: return empty string
9
+ */
10
+ describe('STRING() - Happy Path', () => {
11
+ it('returns string unchanged', () => {
12
+ expect(STRING('hello')).toBe('hello');
13
+ });
14
+ it('converts number to string', () => {
15
+ expect(STRING(123)).toBe('123');
16
+ expect(STRING(0)).toBe('0');
17
+ expect(STRING(-456)).toBe('-456');
18
+ });
19
+ it('converts boolean to string', () => {
20
+ expect(STRING(true)).toBe('true');
21
+ expect(STRING(false)).toBe('false');
22
+ });
23
+ it('converts object to string', () => {
24
+ expect(STRING({ a: 1 })).toBe('[object Object]');
25
+ });
26
+ it('converts array to string', () => {
27
+ expect(STRING([1, 2, 3])).toBe('1,2,3');
28
+ });
29
+ });
30
+ describe('STRING() - Negative Inputs', () => {
31
+ it('returns empty string for null', () => {
32
+ expect(STRING(null)).toBe('');
33
+ });
34
+ it('returns empty string for undefined', () => {
35
+ expect(STRING(undefined)).toBe('');
36
+ });
37
+ });
38
+ describe('STRING() - Empty Values', () => {
39
+ it('returns empty string unchanged', () => {
40
+ expect(STRING('')).toBe('');
41
+ });
42
+ it('converts empty array to string', () => {
43
+ expect(STRING([])).toBe('');
44
+ });
45
+ it('converts empty object to string', () => {
46
+ expect(STRING({})).toBe('[object Object]');
47
+ });
48
+ });
49
+ describe('STRING() - Boundary Values', () => {
50
+ it('converts NaN to string', () => {
51
+ expect(STRING(NaN)).toBe('NaN');
52
+ });
53
+ it('converts Infinity to string', () => {
54
+ expect(STRING(Infinity)).toBe('Infinity');
55
+ });
56
+ it('converts -Infinity to string', () => {
57
+ expect(STRING(-Infinity)).toBe('-Infinity');
58
+ });
59
+ it('converts -0 to string', () => {
60
+ expect(STRING(-0)).toBe('0');
61
+ });
62
+ it('converts Number.MAX_VALUE', () => {
63
+ const result = STRING(Number.MAX_VALUE);
64
+ expect(typeof result).toBe('string');
65
+ expect(result).toContain('e+'); // Scientific notation
66
+ });
67
+ it('converts Number.MIN_VALUE', () => {
68
+ const result = STRING(Number.MIN_VALUE);
69
+ expect(typeof result).toBe('string');
70
+ });
71
+ });
72
+ describe('STRING() - Edge Cases', () => {
73
+ it('handles unicode characters', () => {
74
+ expect(STRING('你好')).toBe('你好');
75
+ expect(STRING('مرحبا')).toBe('مرحبا');
76
+ });
77
+ it('handles emoji', () => {
78
+ expect(STRING('👋🌍')).toBe('👋🌍');
79
+ });
80
+ it('handles newlines', () => {
81
+ expect(STRING('hello\nworld')).toBe('hello\nworld');
82
+ });
83
+ it('handles tabs', () => {
84
+ expect(STRING('hello\tworld')).toBe('hello\tworld');
85
+ });
86
+ it('handles whitespace-only string', () => {
87
+ expect(STRING(' ')).toBe(' ');
88
+ });
89
+ it('handles very long string (100k chars)', () => {
90
+ const long = 'a'.repeat(100000);
91
+ expect(STRING(long)).toBe(long);
92
+ });
93
+ it('returns description for Symbol', () => {
94
+ const sym = Symbol('test');
95
+ expect(STRING(sym)).toBe('test');
96
+ });
97
+ it('converts BigInt to string', () => {
98
+ expect(STRING(BigInt(123))).toBe('123');
99
+ expect(STRING(BigInt(999999999999999999n))).toBe('999999999999999999');
100
+ });
101
+ it('converts function to string', () => {
102
+ const fn = function test() {
103
+ return 42;
104
+ };
105
+ const result = STRING(fn);
106
+ expect(typeof result).toBe('string');
107
+ expect(result).toContain('function');
108
+ });
109
+ it('converts arrow function to string', () => {
110
+ const fn = () => 42;
111
+ const result = STRING(fn);
112
+ expect(typeof result).toBe('string');
113
+ });
114
+ it('converts Date to string', () => {
115
+ const date = new Date('2024-01-01T00:00:00.000Z');
116
+ const result = STRING(date);
117
+ expect(typeof result).toBe('string');
118
+ expect(result).toContain('2024');
119
+ });
120
+ it('converts RegExp to string', () => {
121
+ expect(STRING(/abc/gi)).toBe('/abc/gi');
122
+ });
123
+ it('converts Error to string', () => {
124
+ const err = new Error('test error');
125
+ const result = STRING(err);
126
+ expect(typeof result).toBe('string');
127
+ expect(result).toContain('Error');
128
+ });
129
+ it('converts Map to string', () => {
130
+ const map = new Map([['a', 1]]);
131
+ expect(STRING(map)).toBe('[object Map]');
132
+ });
133
+ it('converts Set to string', () => {
134
+ const set = new Set([1, 2]);
135
+ expect(STRING(set)).toBe('[object Set]');
136
+ });
137
+ it('converts custom class instance', () => {
138
+ class Custom {
139
+ }
140
+ const instance = new Custom();
141
+ expect(STRING(instance)).toBe('[object Object]');
142
+ });
143
+ it('uses custom toString() method if present', () => {
144
+ const obj = {
145
+ toString: () => 'custom string representation',
146
+ };
147
+ expect(STRING(obj)).toBe('custom string representation');
148
+ });
149
+ it('returns empty string for object with throwing toString()', () => {
150
+ const obj = {
151
+ toString: () => {
152
+ throw new Error('toString throws');
153
+ },
154
+ };
155
+ expect(STRING(obj)).toBe('');
156
+ });
157
+ it('converts frozen object', () => {
158
+ const frozen = Object.freeze({ a: 1 });
159
+ expect(STRING(frozen)).toBe('[object Object]');
160
+ });
161
+ it('converts sealed object', () => {
162
+ const sealed = Object.seal({ a: 1 });
163
+ expect(STRING(sealed)).toBe('[object Object]');
164
+ });
165
+ it('returns empty string for object with null prototype', () => {
166
+ const obj = Object.create(null);
167
+ obj.a = 1;
168
+ expect(STRING(obj)).toBe('');
169
+ });
170
+ it('converts TypedArray', () => {
171
+ const arr = new Uint8Array([1, 2, 3]);
172
+ expect(STRING(arr)).toBe('1,2,3');
173
+ });
174
+ it('converts ArrayBuffer', () => {
175
+ const buffer = new ArrayBuffer(10);
176
+ const result = STRING(buffer);
177
+ expect(typeof result).toBe('string');
178
+ expect(result).toContain('ArrayBuffer');
179
+ });
180
+ it('converts Promise', () => {
181
+ const promise = Promise.resolve(42);
182
+ const result = STRING(promise);
183
+ expect(typeof result).toBe('string');
184
+ expect(result).toContain('Promise');
185
+ });
186
+ it('handles circular reference in object', () => {
187
+ const obj = { a: 1 };
188
+ obj.self = obj;
189
+ // toString doesn't traverse, so this should be safe
190
+ expect(STRING(obj)).toBe('[object Object]');
191
+ });
192
+ it('handles very large string', () => {
193
+ const huge = 'a'.repeat(2000000); // 2MB
194
+ const result = STRING(huge);
195
+ expect(result.length).toBe(2000000);
196
+ });
197
+ it('handles nested objects with toString', () => {
198
+ const obj = {
199
+ toString: () => 'custom',
200
+ };
201
+ expect(STRING(obj)).toBe('custom');
202
+ });
203
+ });
204
+ //# sourceMappingURL=LeTypes.STRING.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.STRING.test.js","sourceRoot":"","sources":["../../tests/LeTypes.STRING.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LeTypes.STRING_ANY.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.STRING_ANY.test.d.ts","sourceRoot":"","sources":["../../tests/LeTypes.STRING_ANY.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { STRING_ANY } from '../src/LeTypes';
3
+ describe('STRING_ANY() - Happy Path', () => {
4
+ it('returns first value as string', () => {
5
+ expect(STRING_ANY('first', 'second')).toBe('first');
6
+ });
7
+ it('skips null, returns first set value', () => {
8
+ expect(STRING_ANY(null, 'second')).toBe('second');
9
+ });
10
+ it('skips undefined, returns first set value', () => {
11
+ expect(STRING_ANY(undefined, 'second')).toBe('second');
12
+ });
13
+ it('skips multiple nullish, returns first set value', () => {
14
+ expect(STRING_ANY(null, undefined, null, 'third')).toBe('third');
15
+ });
16
+ it('converts first number to string', () => {
17
+ expect(STRING_ANY(123, 'second')).toBe('123');
18
+ });
19
+ it('uses first non-nullish even if empty string', () => {
20
+ // Legacy behavior: returns first non-nullish
21
+ expect(STRING_ANY(null, '', 'second')).toBe('');
22
+ });
23
+ it('uses first non-nullish even if zero', () => {
24
+ expect(STRING_ANY(null, 0, 'second')).toBe('0');
25
+ });
26
+ it('uses first non-nullish even if false', () => {
27
+ expect(STRING_ANY(null, false, 'second')).toBe('false');
28
+ });
29
+ });
30
+ describe('STRING_ANY() - Negative Inputs', () => {
31
+ it('returns empty string when all null', () => {
32
+ expect(STRING_ANY(null, null)).toBe('');
33
+ });
34
+ it('returns empty string when all undefined', () => {
35
+ expect(STRING_ANY(undefined, undefined)).toBe('');
36
+ });
37
+ it('returns empty string when no arguments', () => {
38
+ expect(STRING_ANY()).toBe('');
39
+ });
40
+ it('returns empty string for mixed null/undefined', () => {
41
+ expect(STRING_ANY(null, undefined)).toBe('');
42
+ });
43
+ });
44
+ describe('STRING_ANY() - Edge Cases', () => {
45
+ it('returns first value even if later values are "better"', () => {
46
+ expect(STRING_ANY('a', 'better string')).toBe('a');
47
+ });
48
+ it('handles many arguments', () => {
49
+ expect(STRING_ANY(null, null, null, null, null, 'finally')).toBe('finally');
50
+ });
51
+ it('converts object if first non-nullish', () => {
52
+ expect(STRING_ANY({ a: 1 })).toBe('[object Object]');
53
+ });
54
+ it('converts array if first non-nullish', () => {
55
+ expect(STRING_ANY([1, 2])).toBe('1,2');
56
+ });
57
+ });
58
+ //# sourceMappingURL=LeTypes.STRING_ANY.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeTypes.STRING_ANY.test.js","sourceRoot":"","sources":["../../tests/LeTypes.STRING_ANY.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LeUtils.clone.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeUtils.clone.test.d.ts","sourceRoot":"","sources":["../../tests/LeUtils.clone.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,180 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { clone } from '../src/index';
3
+ /**
4
+ * clone() - Baseline Tests
5
+ * Uses clone-deep library - test actual behavior
6
+ */
7
+ describe('clone() - Primitives', () => {
8
+ it('returns number unchanged', () => {
9
+ expect(clone(123)).toBe(123);
10
+ });
11
+ it('returns string unchanged', () => {
12
+ expect(clone('hello')).toBe('hello');
13
+ });
14
+ it('returns boolean unchanged', () => {
15
+ expect(clone(true)).toBe(true);
16
+ });
17
+ it('returns null unchanged', () => {
18
+ expect(clone(null)).toBe(null);
19
+ });
20
+ it('returns undefined unchanged', () => {
21
+ expect(clone(undefined)).toBe(undefined);
22
+ });
23
+ });
24
+ describe('clone() - Objects', () => {
25
+ it('creates independent copy of object', () => {
26
+ const original = { a: 1, b: 2 };
27
+ const cloned = clone(original);
28
+ expect(cloned).toEqual(original);
29
+ expect(cloned).not.toBe(original); // Different reference
30
+ });
31
+ it('mutations to clone dont affect original', () => {
32
+ const original = { a: 1 };
33
+ const cloned = clone(original);
34
+ cloned.a = 999;
35
+ expect(original.a).toBe(1);
36
+ });
37
+ it('deeply clones nested objects', () => {
38
+ const original = { a: { b: { c: 1 } } };
39
+ const cloned = clone(original);
40
+ cloned.a.b.c = 999;
41
+ expect(original.a.b.c).toBe(1);
42
+ });
43
+ it('clones empty object', () => {
44
+ const cloned = clone({});
45
+ expect(cloned).toEqual({});
46
+ });
47
+ });
48
+ describe('clone() - Arrays', () => {
49
+ it('creates independent copy of array', () => {
50
+ const original = [1, 2, 3];
51
+ const cloned = clone(original);
52
+ expect(cloned).toEqual(original);
53
+ expect(cloned).not.toBe(original);
54
+ });
55
+ it('deeply clones nested arrays', () => {
56
+ const original = [[1, 2], [3, 4]];
57
+ const cloned = clone(original);
58
+ cloned[0][0] = 999;
59
+ expect(original[0][0]).toBe(1);
60
+ });
61
+ it('clones sparse arrays', () => {
62
+ const original = [1, , 3];
63
+ const cloned = clone(original);
64
+ expect(cloned).toEqual(original);
65
+ });
66
+ it('clones empty array', () => {
67
+ const cloned = clone([]);
68
+ expect(cloned).toEqual([]);
69
+ });
70
+ });
71
+ describe('clone() - Special Objects', () => {
72
+ it('clones Date', () => {
73
+ const original = new Date('2024-01-01');
74
+ const cloned = clone(original);
75
+ expect(cloned.getTime()).toBe(original.getTime());
76
+ expect(cloned).not.toBe(original);
77
+ });
78
+ it('clones RegExp', () => {
79
+ const original = /abc/gi;
80
+ const cloned = clone(original);
81
+ expect(cloned.source).toBe(original.source);
82
+ expect(cloned.flags).toBe(original.flags);
83
+ expect(cloned).not.toBe(original);
84
+ });
85
+ it('clones Map', () => {
86
+ const original = new Map([['a', 1]]);
87
+ const cloned = clone(original);
88
+ expect(cloned.get('a')).toBe(1);
89
+ expect(cloned).not.toBe(original);
90
+ });
91
+ it('clones Set', () => {
92
+ const original = new Set([1, 2]);
93
+ const cloned = clone(original);
94
+ expect(cloned.has(1)).toBe(true);
95
+ expect(cloned).not.toBe(original);
96
+ });
97
+ });
98
+ describe('clone() - Edge Cases', () => {
99
+ it('handles circular references without throwing', () => {
100
+ const original = { a: 1 };
101
+ original.self = original;
102
+ const cloned = clone(original);
103
+ expect(cloned.a).toBe(1);
104
+ expect(cloned.self).toBe(cloned);
105
+ expect(cloned.self).not.toBe(original);
106
+ });
107
+ it('clones frozen object', () => {
108
+ const original = Object.freeze({ a: 1 });
109
+ const cloned = clone(original);
110
+ expect(cloned).toEqual({ a: 1 });
111
+ // Note: Clone might not be frozen
112
+ });
113
+ it('clones sealed object', () => {
114
+ const original = Object.seal({ a: 1 });
115
+ const cloned = clone(original);
116
+ expect(cloned).toEqual({ a: 1 });
117
+ });
118
+ it('clones object with null prototype', () => {
119
+ const original = Object.create(null);
120
+ original.a = 1;
121
+ const cloned = clone(original);
122
+ expect(cloned.a).toBe(1);
123
+ expect(Object.getPrototypeOf(cloned)).toBe(null);
124
+ });
125
+ it('handles very large object', () => {
126
+ const original = {};
127
+ for (let i = 0; i < 10000; i++) {
128
+ original[`key${i}`] = i;
129
+ }
130
+ const cloned = clone(original);
131
+ expect(cloned.key5000).toBe(5000);
132
+ });
133
+ it('handles deeply nested object', () => {
134
+ let original = { value: 1 };
135
+ for (let i = 0; i < 100; i++) {
136
+ original = { nested: original };
137
+ }
138
+ const cloned = clone(original);
139
+ expect(typeof cloned).toBe('object');
140
+ });
141
+ it('TypedArray clone does NOT share buffer (NEW BEHAVIOR)', () => {
142
+ const original = new Uint8Array([1, 2, 3]);
143
+ const cloned = clone(original);
144
+ cloned[0] = 123;
145
+ expect(original[0]).toBe(1);
146
+ expect(cloned[0]).toBe(123);
147
+ });
148
+ it('clones custom class instance', () => {
149
+ class Custom {
150
+ value = 42;
151
+ }
152
+ const original = new Custom();
153
+ const cloned = clone(original);
154
+ expect(cloned.value).toBe(42);
155
+ });
156
+ it('clones Map', () => {
157
+ const m = new Map([['a', 1]]);
158
+ const cloned = clone(m);
159
+ expect(cloned).not.toBe(m);
160
+ expect(cloned.get('a')).toBe(1);
161
+ cloned.set('a', 2);
162
+ expect(m.get('a')).toBe(1);
163
+ });
164
+ it('clones Set', () => {
165
+ const s = new Set([1]);
166
+ const cloned = clone(s);
167
+ expect(cloned).not.toBe(s);
168
+ expect(cloned.has(1)).toBe(true);
169
+ cloned.add(2);
170
+ expect(s.has(2)).toBe(false);
171
+ });
172
+ it('handles deep nesting', () => {
173
+ const deep = { a: { b: { c: { d: 1 } } } };
174
+ const cloned = clone(deep);
175
+ expect(cloned.a.b.c.d).toBe(1);
176
+ cloned.a.b.c.d = 2;
177
+ expect(deep.a.b.c.d).toBe(1);
178
+ });
179
+ });
180
+ //# sourceMappingURL=LeUtils.clone.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeUtils.clone.test.js","sourceRoot":"","sources":["../../tests/LeUtils.clone.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LeUtils.collections.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeUtils.collections.test.d.ts","sourceRoot":"","sources":["../../tests/LeUtils.collections.test.ts"],"names":[],"mappings":""}