@satoshibits/functional 1.1.3 → 1.2.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 (77) hide show
  1. package/dist/array-utils.test.d.ts +2 -0
  2. package/dist/array-utils.test.d.ts.map +1 -0
  3. package/dist/array-utils.test.js +256 -0
  4. package/dist/array-utils.test.js.map +1 -0
  5. package/dist/composition.test.d.ts +2 -0
  6. package/dist/composition.test.d.ts.map +1 -0
  7. package/dist/composition.test.js +409 -0
  8. package/dist/composition.test.js.map +1 -0
  9. package/dist/integration.test.d.mts +2 -0
  10. package/dist/integration.test.d.mts.map +1 -0
  11. package/dist/integration.test.mjs +486 -0
  12. package/dist/integration.test.mjs.map +1 -0
  13. package/dist/io.test.d.mts +2 -0
  14. package/dist/io.test.d.mts.map +1 -0
  15. package/dist/io.test.mjs +373 -0
  16. package/dist/io.test.mjs.map +1 -0
  17. package/dist/laws.test.d.mts +2 -0
  18. package/dist/laws.test.d.mts.map +1 -0
  19. package/dist/laws.test.mjs +614 -0
  20. package/dist/laws.test.mjs.map +1 -0
  21. package/dist/object-utils.test.d.ts +2 -0
  22. package/dist/object-utils.test.d.ts.map +1 -0
  23. package/dist/object-utils.test.js +286 -0
  24. package/dist/object-utils.test.js.map +1 -0
  25. package/dist/option-additions.test.d.mts +2 -0
  26. package/dist/option-additions.test.d.mts.map +1 -0
  27. package/dist/option-additions.test.mjs +325 -0
  28. package/dist/option-additions.test.mjs.map +1 -0
  29. package/dist/option.test.d.ts +6 -0
  30. package/dist/option.test.d.ts.map +1 -0
  31. package/dist/option.test.js +606 -0
  32. package/dist/option.test.js.map +1 -0
  33. package/dist/performance.test.d.ts +2 -0
  34. package/dist/performance.test.d.ts.map +1 -0
  35. package/dist/performance.test.js +424 -0
  36. package/dist/performance.test.js.map +1 -0
  37. package/dist/pipeline.test.d.ts +2 -0
  38. package/dist/pipeline.test.d.ts.map +1 -0
  39. package/dist/pipeline.test.js +445 -0
  40. package/dist/pipeline.test.js.map +1 -0
  41. package/dist/predicates.test.d.ts +2 -0
  42. package/dist/predicates.test.d.ts.map +1 -0
  43. package/dist/predicates.test.js +375 -0
  44. package/dist/predicates.test.js.map +1 -0
  45. package/dist/reader-result.d.mts +72 -0
  46. package/dist/reader-result.d.mts.map +1 -1
  47. package/dist/reader-result.mjs +89 -0
  48. package/dist/reader-result.mjs.map +1 -1
  49. package/dist/reader-result.test.d.ts +2 -0
  50. package/dist/reader-result.test.d.ts.map +1 -0
  51. package/dist/reader-result.test.js +1397 -0
  52. package/dist/reader-result.test.js.map +1 -0
  53. package/dist/reader.test.d.mts +2 -0
  54. package/dist/reader.test.d.mts.map +1 -0
  55. package/dist/reader.test.mjs +288 -0
  56. package/dist/reader.test.mjs.map +1 -0
  57. package/dist/result-additions.test.d.mts +2 -0
  58. package/dist/result-additions.test.d.mts.map +1 -0
  59. package/dist/result-additions.test.mjs +325 -0
  60. package/dist/result-additions.test.mjs.map +1 -0
  61. package/dist/result.test.d.ts +2 -0
  62. package/dist/result.test.d.ts.map +1 -0
  63. package/dist/result.test.js +453 -0
  64. package/dist/result.test.js.map +1 -0
  65. package/dist/task.test.d.mts +2 -0
  66. package/dist/task.test.d.mts.map +1 -0
  67. package/dist/task.test.mjs +1004 -0
  68. package/dist/task.test.mjs.map +1 -0
  69. package/dist/types.test.d.ts +6 -0
  70. package/dist/types.test.d.ts.map +1 -0
  71. package/dist/types.test.js +447 -0
  72. package/dist/types.test.js.map +1 -0
  73. package/dist/validation.test.d.ts +2 -0
  74. package/dist/validation.test.d.ts.map +1 -0
  75. package/dist/validation.test.js +518 -0
  76. package/dist/validation.test.js.map +1 -0
  77. package/package.json +13 -12
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=array-utils.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-utils.test.d.ts","sourceRoot":"","sources":["../src/array-utils.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var vitest_1 = require("vitest");
4
+ var array_utils_mjs_1 = require("./array-utils.mjs");
5
+ (0, vitest_1.describe)('array-utils', function () {
6
+ (0, vitest_1.describe)('mapWithIndex', function () {
7
+ (0, vitest_1.it)('should map elements with their indices', function () {
8
+ var result = (0, array_utils_mjs_1.mapWithIndex)(function (item, i) { return "".concat(i, ": ").concat(item); })(['a', 'b', 'c']);
9
+ (0, vitest_1.expect)(result).toEqual(['0: a', '1: b', '2: c']);
10
+ });
11
+ (0, vitest_1.it)('should handle empty arrays', function () {
12
+ var result = (0, array_utils_mjs_1.mapWithIndex)(function (item, i) { return item + i; })([]);
13
+ (0, vitest_1.expect)(result).toEqual([]);
14
+ });
15
+ (0, vitest_1.it)('should work with complex transformations', function () {
16
+ var items = ['First', 'Second', 'Third'];
17
+ var numbered = (0, array_utils_mjs_1.mapWithIndex)(function (item, i) { return ({
18
+ index: i + 1,
19
+ value: item,
20
+ label: "".concat(i + 1, ". ").concat(item)
21
+ }); })(items);
22
+ (0, vitest_1.expect)(numbered).toEqual([
23
+ { index: 1, value: 'First', label: '1. First' },
24
+ { index: 2, value: 'Second', label: '2. Second' },
25
+ { index: 3, value: 'Third', label: '3. Third' }
26
+ ]);
27
+ });
28
+ });
29
+ (0, vitest_1.describe)('filterMap', function () {
30
+ (0, vitest_1.it)('should filter and map in a single pass', function () {
31
+ var nums = (0, array_utils_mjs_1.filterMap)(function (s) {
32
+ var n = parseInt(s);
33
+ return isNaN(n) ? undefined : n;
34
+ })(['1', 'a', '2', 'b', '3']);
35
+ (0, vitest_1.expect)(nums).toEqual([1, 2, 3]);
36
+ });
37
+ (0, vitest_1.it)('should handle empty arrays', function () {
38
+ var result = (0, array_utils_mjs_1.filterMap)(function (x) { return x > 0 ? x * 2 : undefined; })([]);
39
+ (0, vitest_1.expect)(result).toEqual([]);
40
+ });
41
+ (0, vitest_1.it)('should filter out all undefined values', function () {
42
+ var result = (0, array_utils_mjs_1.filterMap)(function (x) { return x > 10 ? x : undefined; })([1, 2, 3, 4, 5]);
43
+ (0, vitest_1.expect)(result).toEqual([]);
44
+ });
45
+ (0, vitest_1.it)('should work with complex objects', function () {
46
+ var users = [
47
+ { name: 'Alice', profile: { age: 25 } },
48
+ { name: 'Bob', profile: null },
49
+ { name: 'Charlie', profile: { age: 30 } }
50
+ ];
51
+ var ages = (0, array_utils_mjs_1.filterMap)(function (u) {
52
+ return u.profile ? { name: u.name, age: u.profile.age } : undefined;
53
+ })(users);
54
+ (0, vitest_1.expect)(ages).toEqual([
55
+ { name: 'Alice', age: 25 },
56
+ { name: 'Charlie', age: 30 }
57
+ ]);
58
+ });
59
+ (0, vitest_1.it)('should provide index to the mapping function', function () {
60
+ var result = (0, array_utils_mjs_1.filterMap)(function (x, i) {
61
+ return i % 2 === 0 ? x * 2 : undefined;
62
+ })([1, 2, 3, 4, 5]);
63
+ (0, vitest_1.expect)(result).toEqual([2, 6, 10]); // indices 0, 2, 4
64
+ });
65
+ (0, vitest_1.it)('should not create intermediate arrays', function () {
66
+ // This test verifies the optimization by checking behavior
67
+ // The function should process each element exactly once
68
+ var processCount = 0;
69
+ var result = (0, array_utils_mjs_1.filterMap)(function (x) {
70
+ processCount++;
71
+ return x > 2 ? x * 10 : undefined;
72
+ })([1, 2, 3, 4, 5]);
73
+ (0, vitest_1.expect)(processCount).toBe(5); // Each element processed exactly once
74
+ (0, vitest_1.expect)(result).toEqual([30, 40, 50]);
75
+ });
76
+ });
77
+ (0, vitest_1.describe)('chunk', function () {
78
+ (0, vitest_1.it)('should chunk array into specified size', function () {
79
+ var chunks = (0, array_utils_mjs_1.chunk)(2)([1, 2, 3, 4, 5]);
80
+ (0, vitest_1.expect)(chunks).toEqual([[1, 2], [3, 4], [5]]);
81
+ });
82
+ (0, vitest_1.it)('should throw when size is zero or negative', function () {
83
+ (0, vitest_1.expect)(function () { return (0, array_utils_mjs_1.chunk)(0)([1, 2, 3]); }).toThrowError(new RangeError('chunk size must be greater than 0'));
84
+ (0, vitest_1.expect)(function () { return (0, array_utils_mjs_1.chunk)(-1)([1, 2, 3]); }).toThrowError(RangeError);
85
+ });
86
+ (0, vitest_1.it)('should handle arrays that divide evenly', function () {
87
+ var chunks = (0, array_utils_mjs_1.chunk)(3)([1, 2, 3, 4, 5, 6]);
88
+ (0, vitest_1.expect)(chunks).toEqual([[1, 2, 3], [4, 5, 6]]);
89
+ });
90
+ (0, vitest_1.it)('should handle empty arrays', function () {
91
+ var chunks = (0, array_utils_mjs_1.chunk)(3)([]);
92
+ (0, vitest_1.expect)(chunks).toEqual([]);
93
+ });
94
+ (0, vitest_1.it)('should handle chunk size larger than array', function () {
95
+ var chunks = (0, array_utils_mjs_1.chunk)(10)([1, 2, 3]);
96
+ (0, vitest_1.expect)(chunks).toEqual([[1, 2, 3]]);
97
+ });
98
+ (0, vitest_1.it)('should handle chunk size of 1', function () {
99
+ var chunks = (0, array_utils_mjs_1.chunk)(1)([1, 2, 3]);
100
+ (0, vitest_1.expect)(chunks).toEqual([[1], [2], [3]]);
101
+ });
102
+ (0, vitest_1.it)('should work with strings', function () {
103
+ var items = ['A', 'B', 'C', 'D', 'E', 'F'];
104
+ var rows = (0, array_utils_mjs_1.chunk)(3)(items);
105
+ (0, vitest_1.expect)(rows).toEqual([['A', 'B', 'C'], ['D', 'E', 'F']]);
106
+ });
107
+ });
108
+ (0, vitest_1.describe)('groupBy', function () {
109
+ (0, vitest_1.it)('should group by key function', function () {
110
+ var users = [
111
+ { name: 'Alice', age: 25 },
112
+ { name: 'Bob', age: 30 },
113
+ { name: 'Charlie', age: 25 }
114
+ ];
115
+ var byAge = (0, array_utils_mjs_1.groupBy)(function (u) { return u.age; })(users);
116
+ (0, vitest_1.expect)(byAge).toEqual({
117
+ 25: [
118
+ { name: 'Alice', age: 25 },
119
+ { name: 'Charlie', age: 25 }
120
+ ],
121
+ 30: [{ name: 'Bob', age: 30 }]
122
+ });
123
+ });
124
+ (0, vitest_1.it)('should handle empty arrays', function () {
125
+ var result = (0, array_utils_mjs_1.groupBy)(function (x) { return x % 2; })([]);
126
+ (0, vitest_1.expect)(result).toEqual({});
127
+ });
128
+ (0, vitest_1.it)('should group strings by first letter', function () {
129
+ var words = ['apple', 'banana', 'apricot', 'cherry', 'avocado'];
130
+ var byFirstLetter = (0, array_utils_mjs_1.groupBy)(function (word) { return word[0]; })(words);
131
+ (0, vitest_1.expect)(byFirstLetter).toEqual({
132
+ a: ['apple', 'apricot', 'avocado'],
133
+ b: ['banana'],
134
+ c: ['cherry']
135
+ });
136
+ });
137
+ (0, vitest_1.it)('should handle numeric grouping', function () {
138
+ var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
139
+ var byRemainder = (0, array_utils_mjs_1.groupBy)(function (n) { return n % 3; })(numbers);
140
+ (0, vitest_1.expect)(byRemainder).toEqual({
141
+ 0: [3, 6, 9],
142
+ 1: [1, 4, 7],
143
+ 2: [2, 5, 8]
144
+ });
145
+ });
146
+ (0, vitest_1.it)('should preserve order within groups', function () {
147
+ var _a, _b;
148
+ var items = [
149
+ { id: 1, type: 'a' },
150
+ { id: 2, type: 'b' },
151
+ { id: 3, type: 'a' },
152
+ { id: 4, type: 'b' },
153
+ { id: 5, type: 'a' }
154
+ ];
155
+ var byType = (0, array_utils_mjs_1.groupBy)(function (item) { return item.type; })(items);
156
+ (0, vitest_1.expect)((_a = byType.a) === null || _a === void 0 ? void 0 : _a.map(function (i) { return i.id; })).toEqual([1, 3, 5]);
157
+ (0, vitest_1.expect)((_b = byType.b) === null || _b === void 0 ? void 0 : _b.map(function (i) { return i.id; })).toEqual([2, 4]);
158
+ });
159
+ });
160
+ (0, vitest_1.describe)('findSafe', function () {
161
+ (0, vitest_1.it)('should return success result when item is found', function () {
162
+ var result = (0, array_utils_mjs_1.findSafe)(function (n) { return n > 3; })([1, 2, 3, 4, 5]);
163
+ (0, vitest_1.expect)(result).toEqual({ success: true, data: 4 });
164
+ });
165
+ (0, vitest_1.it)('should return error result when item is not found', function () {
166
+ var result = (0, array_utils_mjs_1.findSafe)(function (n) { return n > 10; })([1, 2, 3]);
167
+ (0, vitest_1.expect)(result).toEqual({ success: false, error: 'Item not found' });
168
+ });
169
+ (0, vitest_1.it)('should handle empty arrays', function () {
170
+ var result = (0, array_utils_mjs_1.findSafe)(function (n) { return n > 0; })([]);
171
+ (0, vitest_1.expect)(result).toEqual({ success: false, error: 'Item not found' });
172
+ });
173
+ (0, vitest_1.it)('should find first matching item', function () {
174
+ var result = (0, array_utils_mjs_1.findSafe)(function (n) { return n % 2 === 0; })([1, 2, 3, 4, 5]);
175
+ (0, vitest_1.expect)(result).toEqual({ success: true, data: 2 });
176
+ });
177
+ (0, vitest_1.it)('should work with objects', function () {
178
+ var users = [
179
+ { id: 1, email: 'alice@example.com' },
180
+ { id: 2, email: 'bob@example.com' }
181
+ ];
182
+ var result = (0, array_utils_mjs_1.findSafe)(function (u) { return u.email === 'bob@example.com'; })(users);
183
+ (0, vitest_1.expect)(result).toEqual({
184
+ success: true,
185
+ data: { id: 2, email: 'bob@example.com' }
186
+ });
187
+ });
188
+ (0, vitest_1.it)('should handle falsy values correctly', function () {
189
+ var result = (0, array_utils_mjs_1.findSafe)(function (n) { return n === 0; })([null, undefined, 0, 1, 2]);
190
+ (0, vitest_1.expect)(result).toEqual({ success: true, data: 0 });
191
+ });
192
+ (0, vitest_1.it)('should treat undefined value as found when present', function () {
193
+ var result = (0, array_utils_mjs_1.findSafe)(function (value) { return value === undefined; })([
194
+ 'a',
195
+ undefined,
196
+ 'b'
197
+ ]);
198
+ (0, vitest_1.expect)(result).toEqual({ success: true, data: undefined });
199
+ });
200
+ });
201
+ (0, vitest_1.describe)('partition', function () {
202
+ (0, vitest_1.it)('should partition based on predicate', function () {
203
+ var _a = (0, array_utils_mjs_1.partition)(function (n) { return n % 2 === 0; })([1, 2, 3, 4, 5]), evens = _a[0], odds = _a[1];
204
+ (0, vitest_1.expect)(evens).toEqual([2, 4]);
205
+ (0, vitest_1.expect)(odds).toEqual([1, 3, 5]);
206
+ });
207
+ (0, vitest_1.it)('should handle empty arrays', function () {
208
+ var _a = (0, array_utils_mjs_1.partition)(function (n) { return n > 0; })([]), left = _a[0], right = _a[1];
209
+ (0, vitest_1.expect)(left).toEqual([]);
210
+ (0, vitest_1.expect)(right).toEqual([]);
211
+ });
212
+ (0, vitest_1.it)('should handle all elements matching predicate', function () {
213
+ var _a = (0, array_utils_mjs_1.partition)(function (n) { return n > 0; })([1, 2, 3, 4, 5]), positive = _a[0], negative = _a[1];
214
+ (0, vitest_1.expect)(positive).toEqual([1, 2, 3, 4, 5]);
215
+ (0, vitest_1.expect)(negative).toEqual([]);
216
+ });
217
+ (0, vitest_1.it)('should handle no elements matching predicate', function () {
218
+ var _a = (0, array_utils_mjs_1.partition)(function (n) { return n > 10; })([1, 2, 3, 4, 5]), positive = _a[0], negative = _a[1];
219
+ (0, vitest_1.expect)(positive).toEqual([]);
220
+ (0, vitest_1.expect)(negative).toEqual([1, 2, 3, 4, 5]);
221
+ });
222
+ (0, vitest_1.it)('should work with objects', function () {
223
+ var data = [
224
+ { id: 1, valid: true },
225
+ { id: 2, valid: false },
226
+ { id: 3, valid: true }
227
+ ];
228
+ var _a = (0, array_utils_mjs_1.partition)(function (item) { return item.valid; })(data), valid = _a[0], invalid = _a[1];
229
+ (0, vitest_1.expect)(valid).toEqual([
230
+ { id: 1, valid: true },
231
+ { id: 3, valid: true }
232
+ ]);
233
+ (0, vitest_1.expect)(invalid).toEqual([
234
+ { id: 2, valid: false }
235
+ ]);
236
+ });
237
+ (0, vitest_1.it)('should preserve order in both arrays', function () {
238
+ var items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
239
+ var _a = (0, array_utils_mjs_1.partition)(function (n) { return n % 3 === 0; })(items), multiples = _a[0], others = _a[1];
240
+ (0, vitest_1.expect)(multiples).toEqual([3, 6, 9]);
241
+ (0, vitest_1.expect)(others).toEqual([1, 2, 4, 5, 7, 8, 10]);
242
+ });
243
+ (0, vitest_1.it)('should work with date comparisons', function () {
244
+ var users = [
245
+ { name: 'Alice', lastLogin: new Date('2024-01-10') },
246
+ { name: 'Bob', lastLogin: new Date('2023-12-01') },
247
+ { name: 'Charlie', lastLogin: new Date('2024-01-14') }
248
+ ];
249
+ var cutoffDate = new Date('2024-01-01');
250
+ var _a = (0, array_utils_mjs_1.partition)(function (u) { return u.lastLogin > cutoffDate; })(users), active = _a[0], inactive = _a[1];
251
+ (0, vitest_1.expect)(active.map(function (u) { return u.name; })).toEqual(['Alice', 'Charlie']);
252
+ (0, vitest_1.expect)(inactive.map(function (u) { return u.name; })).toEqual(['Bob']);
253
+ });
254
+ });
255
+ });
256
+ //# sourceMappingURL=array-utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-utils.test.js","sourceRoot":"","sources":["../src/array-utils.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=composition.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composition.test.d.ts","sourceRoot":"","sources":["../src/composition.test.ts"],"names":[],"mappings":""}