@satoshibits/functional 1.1.0 → 1.1.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 (130) hide show
  1. package/README.md +28 -145
  2. package/dist/array-utils.d.mts +13 -0
  3. package/dist/array-utils.d.mts.map +1 -1
  4. package/dist/array-utils.mjs +13 -0
  5. package/dist/array-utils.mjs.map +1 -1
  6. package/dist/array-utils.test.d.ts +2 -0
  7. package/dist/array-utils.test.d.ts.map +1 -0
  8. package/dist/array-utils.test.js +256 -0
  9. package/dist/array-utils.test.js.map +1 -0
  10. package/dist/composition.d.mts +13 -0
  11. package/dist/composition.d.mts.map +1 -1
  12. package/dist/composition.mjs +13 -0
  13. package/dist/composition.mjs.map +1 -1
  14. package/dist/composition.test.d.ts +2 -0
  15. package/dist/composition.test.d.ts.map +1 -0
  16. package/dist/composition.test.js +409 -0
  17. package/dist/composition.test.js.map +1 -0
  18. package/dist/integration.test.d.mts +2 -0
  19. package/dist/integration.test.d.mts.map +1 -0
  20. package/dist/integration.test.mjs +486 -0
  21. package/dist/integration.test.mjs.map +1 -0
  22. package/dist/io.d.mts +12 -0
  23. package/dist/io.d.mts.map +1 -1
  24. package/dist/io.mjs +12 -0
  25. package/dist/io.mjs.map +1 -1
  26. package/dist/io.test.d.mts +2 -0
  27. package/dist/io.test.d.mts.map +1 -0
  28. package/dist/io.test.mjs +373 -0
  29. package/dist/io.test.mjs.map +1 -0
  30. package/dist/laws.test.d.mts +2 -0
  31. package/dist/laws.test.d.mts.map +1 -0
  32. package/dist/laws.test.mjs +614 -0
  33. package/dist/laws.test.mjs.map +1 -0
  34. package/dist/object-utils.d.mts +11 -0
  35. package/dist/object-utils.d.mts.map +1 -1
  36. package/dist/object-utils.mjs +11 -0
  37. package/dist/object-utils.mjs.map +1 -1
  38. package/dist/object-utils.test.d.ts +2 -0
  39. package/dist/object-utils.test.d.ts.map +1 -0
  40. package/dist/object-utils.test.js +286 -0
  41. package/dist/object-utils.test.js.map +1 -0
  42. package/dist/option-additions.test.d.mts +2 -0
  43. package/dist/option-additions.test.d.mts.map +1 -0
  44. package/dist/option-additions.test.mjs +325 -0
  45. package/dist/option-additions.test.mjs.map +1 -0
  46. package/dist/option.d.mts +20 -3
  47. package/dist/option.d.mts.map +1 -1
  48. package/dist/option.mjs +20 -3
  49. package/dist/option.mjs.map +1 -1
  50. package/dist/option.test.d.ts +6 -0
  51. package/dist/option.test.d.ts.map +1 -0
  52. package/dist/option.test.js +606 -0
  53. package/dist/option.test.js.map +1 -0
  54. package/dist/performance.d.mts +26 -9
  55. package/dist/performance.d.mts.map +1 -1
  56. package/dist/performance.mjs +26 -9
  57. package/dist/performance.mjs.map +1 -1
  58. package/dist/performance.test.d.ts +2 -0
  59. package/dist/performance.test.d.ts.map +1 -0
  60. package/dist/performance.test.js +424 -0
  61. package/dist/performance.test.js.map +1 -0
  62. package/dist/pipeline.d.mts +12 -0
  63. package/dist/pipeline.d.mts.map +1 -1
  64. package/dist/pipeline.mjs +12 -0
  65. package/dist/pipeline.mjs.map +1 -1
  66. package/dist/pipeline.test.d.ts +2 -0
  67. package/dist/pipeline.test.d.ts.map +1 -0
  68. package/dist/pipeline.test.js +445 -0
  69. package/dist/pipeline.test.js.map +1 -0
  70. package/dist/predicates.d.mts +12 -0
  71. package/dist/predicates.d.mts.map +1 -1
  72. package/dist/predicates.mjs +12 -0
  73. package/dist/predicates.mjs.map +1 -1
  74. package/dist/predicates.test.d.ts +2 -0
  75. package/dist/predicates.test.d.ts.map +1 -0
  76. package/dist/predicates.test.js +375 -0
  77. package/dist/predicates.test.js.map +1 -0
  78. package/dist/reader-result.d.mts +37 -16
  79. package/dist/reader-result.d.mts.map +1 -1
  80. package/dist/reader-result.mjs +37 -16
  81. package/dist/reader-result.mjs.map +1 -1
  82. package/dist/reader-result.test.d.ts +2 -0
  83. package/dist/reader-result.test.d.ts.map +1 -0
  84. package/dist/reader-result.test.js +1259 -0
  85. package/dist/reader-result.test.js.map +1 -0
  86. package/dist/reader.d.mts +12 -0
  87. package/dist/reader.d.mts.map +1 -1
  88. package/dist/reader.mjs +12 -0
  89. package/dist/reader.mjs.map +1 -1
  90. package/dist/reader.test.d.mts +2 -0
  91. package/dist/reader.test.d.mts.map +1 -0
  92. package/dist/reader.test.mjs +288 -0
  93. package/dist/reader.test.mjs.map +1 -0
  94. package/dist/result-additions.test.d.mts +2 -0
  95. package/dist/result-additions.test.d.mts.map +1 -0
  96. package/dist/result-additions.test.mjs +325 -0
  97. package/dist/result-additions.test.mjs.map +1 -0
  98. package/dist/result.d.mts +12 -0
  99. package/dist/result.d.mts.map +1 -1
  100. package/dist/result.mjs +12 -0
  101. package/dist/result.mjs.map +1 -1
  102. package/dist/result.test.d.ts +2 -0
  103. package/dist/result.test.d.ts.map +1 -0
  104. package/dist/result.test.js +453 -0
  105. package/dist/result.test.js.map +1 -0
  106. package/dist/task.d.mts +13 -0
  107. package/dist/task.d.mts.map +1 -1
  108. package/dist/task.mjs +13 -0
  109. package/dist/task.mjs.map +1 -1
  110. package/dist/task.test.d.mts +2 -0
  111. package/dist/task.test.d.mts.map +1 -0
  112. package/dist/task.test.mjs +1006 -0
  113. package/dist/task.test.mjs.map +1 -0
  114. package/dist/types.d.mts +12 -0
  115. package/dist/types.d.mts.map +1 -1
  116. package/dist/types.mjs +12 -0
  117. package/dist/types.mjs.map +1 -1
  118. package/dist/types.test.d.ts +6 -0
  119. package/dist/types.test.d.ts.map +1 -0
  120. package/dist/types.test.js +447 -0
  121. package/dist/types.test.js.map +1 -0
  122. package/dist/validation.d.mts +12 -0
  123. package/dist/validation.d.mts.map +1 -1
  124. package/dist/validation.mjs +12 -0
  125. package/dist/validation.mjs.map +1 -1
  126. package/dist/validation.test.d.ts +2 -0
  127. package/dist/validation.test.d.ts.map +1 -0
  128. package/dist/validation.test.js +518 -0
  129. package/dist/validation.test.js.map +1 -0
  130. package/package.json +77 -13
@@ -0,0 +1 @@
1
+ {"version":3,"file":"laws.test.mjs","sourceRoot":"","sources":["../src/laws.test.mts"],"names":[],"mappings":"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"}
@@ -4,6 +4,17 @@
4
4
  * These functions are designed to be composed and follow functional programming principles.
5
5
  * All operations return new objects, preserving immutability of the original data.
6
6
  *
7
+ * ### For Dummies
8
+ * - These helpers let you copy objects with surgical precision—no accidental mutations.
9
+ * - Think "clone and tweak" rather than "reach in and change"; every function returns a fresh object.
10
+ * - Great for building DTOs, filtering config, or remapping values without side effects.
11
+ *
12
+ * ### Decision Tree
13
+ * - Only need certain keys? Use `pick(['id', 'name'])(obj)`.
14
+ * - Need to hide sensitive fields? Reach for `omit(['password'])(obj)`.
15
+ * - Want to remap values while keeping keys? Use `mapValues(transform)`.
16
+ * - Merging configs safely? Call `merge(defaults, overrides)` for a deep, non-mutating merge.
17
+ *
7
18
  * @example
8
19
  * ```typescript
9
20
  * import { pick, omit, mapValues, merge } from './object-utils.mts';
@@ -1 +1 @@
1
- {"version":3,"file":"object-utils.d.mts","sourceRoot":"","sources":["../src/object-utils.mts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,eAAO,MAAM,SAAS,GACnB,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,WACpB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAMzC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,eAAO,MAAM,IAAI,GACd,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,WACzC,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAQlB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,IAAI,GACd,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,WAC1B,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAMlB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH;;;;;;GAMG;AACH,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CAC9E,CAAC;AAEF,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,WAAW,CAAC,CAAC,CAAC,KAAG,CAwB5F,CAAC"}
1
+ {"version":3,"file":"object-utils.d.mts","sourceRoot":"","sources":["../src/object-utils.mts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,eAAO,MAAM,SAAS,GACnB,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,WACpB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAMzC,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,eAAO,MAAM,IAAI,GACd,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,WACzC,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAQlB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,IAAI,GACd,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,CAAC,EAAE,WAC1B,CAAC,KAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAMlB,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH;;;;;;GAMG;AACH,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CAC9E,CAAC;AAEF,eAAO,MAAM,KAAK,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,UAAU,WAAW,CAAC,CAAC,CAAC,KAAG,CAwB5F,CAAC"}
@@ -5,6 +5,17 @@
5
5
  * These functions are designed to be composed and follow functional programming principles.
6
6
  * All operations return new objects, preserving immutability of the original data.
7
7
  *
8
+ * ### For Dummies
9
+ * - These helpers let you copy objects with surgical precision—no accidental mutations.
10
+ * - Think "clone and tweak" rather than "reach in and change"; every function returns a fresh object.
11
+ * - Great for building DTOs, filtering config, or remapping values without side effects.
12
+ *
13
+ * ### Decision Tree
14
+ * - Only need certain keys? Use `pick(['id', 'name'])(obj)`.
15
+ * - Need to hide sensitive fields? Reach for `omit(['password'])(obj)`.
16
+ * - Want to remap values while keeping keys? Use `mapValues(transform)`.
17
+ * - Merging configs safely? Call `merge(defaults, overrides)` for a deep, non-mutating merge.
18
+ *
8
19
  * @example
9
20
  * ```typescript
10
21
  * import { pick, omit, mapValues, merge } from './object-utils.mts';
@@ -1 +1 @@
1
- {"version":3,"file":"object-utils.mjs","sourceRoot":"","sources":["../src/object-utils.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-utils.mjs","sourceRoot":"","sources":["../src/object-utils.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=object-utils.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-utils.test.d.ts","sourceRoot":"","sources":["../src/object-utils.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var vitest_1 = require("vitest");
4
+ var object_utils_mjs_1 = require("./object-utils.mjs");
5
+ (0, vitest_1.describe)('object-utils', function () {
6
+ (0, vitest_1.describe)('mapValues', function () {
7
+ (0, vitest_1.it)('should map over object values', function () {
8
+ var doubled = (0, object_utils_mjs_1.mapValues)(function (n) { return n * 2; })({ a: 1, b: 2, c: 3 });
9
+ (0, vitest_1.expect)(doubled).toEqual({ a: 2, b: 4, c: 6 });
10
+ });
11
+ (0, vitest_1.it)('should handle empty objects', function () {
12
+ var result = (0, object_utils_mjs_1.mapValues)(function (n) { return n * 2; })({});
13
+ (0, vitest_1.expect)(result).toEqual({});
14
+ });
15
+ (0, vitest_1.it)('should work with string transformations', function () {
16
+ var config = { host: 'localhost', env: 'dev', mode: 'debug' };
17
+ var upperConfig = (0, object_utils_mjs_1.mapValues)(function (s) { return s.toUpperCase(); })(config);
18
+ (0, vitest_1.expect)(upperConfig).toEqual({ host: 'LOCALHOST', env: 'DEV', mode: 'DEBUG' });
19
+ });
20
+ (0, vitest_1.it)('should handle type transformations', function () {
21
+ var scores = { math: 85, science: 92, history: 78 };
22
+ var percentages = (0, object_utils_mjs_1.mapValues)(function (score) { return "".concat(score, "%"); })(scores);
23
+ (0, vitest_1.expect)(percentages).toEqual({ math: '85%', science: '92%', history: '78%' });
24
+ });
25
+ (0, vitest_1.it)('should preserve keys exactly', function () {
26
+ var input = { 'key-with-dash': 1, 'key.with.dot': 2, 'key with space': 3 };
27
+ var result = (0, object_utils_mjs_1.mapValues)(function (n) { return n * 10; })(input);
28
+ (0, vitest_1.expect)(result).toEqual({
29
+ 'key-with-dash': 10,
30
+ 'key.with.dot': 20,
31
+ 'key with space': 30
32
+ });
33
+ });
34
+ (0, vitest_1.it)('should handle complex transformations', function () {
35
+ var users = {
36
+ alice: { age: 25, role: 'admin' },
37
+ bob: { age: 30, role: 'user' },
38
+ };
39
+ var summaries = (0, object_utils_mjs_1.mapValues)(function (user) {
40
+ return "".concat(user.role, " (").concat(user.age, " years old)");
41
+ })(users);
42
+ (0, vitest_1.expect)(summaries).toEqual({
43
+ alice: 'admin (25 years old)',
44
+ bob: 'user (30 years old)',
45
+ });
46
+ });
47
+ (0, vitest_1.it)('should handle undefined values', function () {
48
+ var input = { a: 1, b: undefined, c: 3 };
49
+ var result = (0, object_utils_mjs_1.mapValues)(function (n) { return n !== null && n !== void 0 ? n : 0; })(input);
50
+ (0, vitest_1.expect)(result).toEqual({ a: 1, b: 0, c: 3 });
51
+ });
52
+ });
53
+ (0, vitest_1.describe)('pick', function () {
54
+ (0, vitest_1.it)('should pick specified keys', function () {
55
+ var user = { id: 1, name: 'Alice', email: 'alice@example.com', password: 'secret' };
56
+ var publicData = (0, object_utils_mjs_1.pick)(['id', 'name', 'email'])(user);
57
+ (0, vitest_1.expect)(publicData).toEqual({ id: 1, name: 'Alice', email: 'alice@example.com' });
58
+ });
59
+ (0, vitest_1.it)('should handle empty key array', function () {
60
+ var user = { id: 1, name: 'Alice' };
61
+ var result = (0, object_utils_mjs_1.pick)([])(user);
62
+ (0, vitest_1.expect)(result).toEqual({});
63
+ });
64
+ (0, vitest_1.it)('should ignore non-existent keys', function () {
65
+ var user = { id: 1, name: 'Alice' };
66
+ var result = (0, object_utils_mjs_1.pick)(['id', 'name'])(user);
67
+ (0, vitest_1.expect)(result).toEqual({ id: 1, name: 'Alice' });
68
+ });
69
+ (0, vitest_1.it)('should preserve property types', function () {
70
+ var data = {
71
+ str: 'hello',
72
+ num: 42,
73
+ bool: true,
74
+ obj: { nested: 'value' },
75
+ arr: [1, 2, 3],
76
+ };
77
+ var picked = (0, object_utils_mjs_1.pick)(['str', 'num', 'obj'])(data);
78
+ (0, vitest_1.expect)(picked).toEqual({
79
+ str: 'hello',
80
+ num: 42,
81
+ obj: { nested: 'value' },
82
+ });
83
+ (0, vitest_1.expect)(Array.isArray(picked.obj)).toBe(false);
84
+ });
85
+ (0, vitest_1.it)('should work with nested objects', function () {
86
+ var config = {
87
+ apiUrl: 'https://api.example.com',
88
+ apiKey: 'secret-key',
89
+ timeout: 5000,
90
+ debug: true,
91
+ version: '1.0.0'
92
+ };
93
+ var clientConfig = (0, object_utils_mjs_1.pick)(['apiUrl', 'timeout'])(config);
94
+ (0, vitest_1.expect)(clientConfig).toEqual({
95
+ apiUrl: 'https://api.example.com',
96
+ timeout: 5000
97
+ });
98
+ });
99
+ (0, vitest_1.it)('should handle duplicate keys', function () {
100
+ var obj = { a: 1, b: 2, c: 3 };
101
+ var result = (0, object_utils_mjs_1.pick)(['a', 'b', 'a'])(obj);
102
+ (0, vitest_1.expect)(result).toEqual({ a: 1, b: 2 });
103
+ });
104
+ (0, vitest_1.it)('should maintain key order', function () {
105
+ var obj = { c: 3, a: 1, b: 2 };
106
+ var result = (0, object_utils_mjs_1.pick)(['a', 'b', 'c'])(obj);
107
+ var keys = Object.keys(result);
108
+ (0, vitest_1.expect)(keys).toEqual(['a', 'b', 'c']);
109
+ });
110
+ });
111
+ (0, vitest_1.describe)('omit', function () {
112
+ (0, vitest_1.it)('should omit specified keys', function () {
113
+ var user = { id: 1, name: 'Alice', email: 'alice@example.com', password: 'secret' };
114
+ var safeUser = (0, object_utils_mjs_1.omit)(['password'])(user);
115
+ (0, vitest_1.expect)(safeUser).toEqual({ id: 1, name: 'Alice', email: 'alice@example.com' });
116
+ });
117
+ (0, vitest_1.it)('should handle empty key array', function () {
118
+ var user = { id: 1, name: 'Alice' };
119
+ var result = (0, object_utils_mjs_1.omit)([])(user);
120
+ (0, vitest_1.expect)(result).toEqual({ id: 1, name: 'Alice' });
121
+ });
122
+ (0, vitest_1.it)('should ignore non-existent keys', function () {
123
+ var user = { id: 1, name: 'Alice' };
124
+ var result = (0, object_utils_mjs_1.omit)([])(user);
125
+ (0, vitest_1.expect)(result).toEqual({ id: 1, name: 'Alice' });
126
+ });
127
+ (0, vitest_1.it)('should remove internal fields', function () {
128
+ var data = {
129
+ value: 42,
130
+ label: 'Answer',
131
+ _internal: true,
132
+ _timestamp: Date.now()
133
+ };
134
+ var publicData = (0, object_utils_mjs_1.omit)(['_internal', '_timestamp'])(data);
135
+ (0, vitest_1.expect)(publicData).toEqual({ value: 42, label: 'Answer' });
136
+ });
137
+ (0, vitest_1.it)('should work with multiple keys', function () {
138
+ var entity = {
139
+ id: '123',
140
+ name: 'Updated Name',
141
+ createdAt: '2024-01-01',
142
+ updatedAt: '2024-01-15',
143
+ deletedAt: null,
144
+ };
145
+ var updatePayload = (0, object_utils_mjs_1.omit)(['id', 'createdAt', 'deletedAt'])(entity);
146
+ (0, vitest_1.expect)(updatePayload).toEqual({
147
+ name: 'Updated Name',
148
+ updatedAt: '2024-01-15'
149
+ });
150
+ });
151
+ (0, vitest_1.it)('should handle duplicate keys', function () {
152
+ var obj = { a: 1, b: 2, c: 3 };
153
+ var result = (0, object_utils_mjs_1.omit)(['a', 'b', 'a'])(obj);
154
+ (0, vitest_1.expect)(result).toEqual({ c: 3 });
155
+ });
156
+ (0, vitest_1.it)('should create a new object', function () {
157
+ var original = { a: 1, b: 2 };
158
+ var result = (0, object_utils_mjs_1.omit)(['a'])(original);
159
+ (0, vitest_1.expect)(result).not.toBe(original);
160
+ (0, vitest_1.expect)(original).toEqual({ a: 1, b: 2 }); // original unchanged
161
+ });
162
+ });
163
+ (0, vitest_1.describe)('merge', function () {
164
+ (0, vitest_1.it)('should merge two objects', function () {
165
+ var base = { a: 1, b: { x: 2, y: 3 }, c: 4 };
166
+ var updates = { b: { y: 5, z: 6 }, d: 7 };
167
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
168
+ (0, vitest_1.expect)(merged).toEqual({ a: 1, b: { x: 2, y: 5, z: 6 }, c: 4, d: 7 });
169
+ });
170
+ (0, vitest_1.it)('should handle empty objects', function () {
171
+ var base = { a: 1, b: 2 };
172
+ (0, vitest_1.expect)((0, object_utils_mjs_1.merge)(base, {})).toEqual({ a: 1, b: 2 });
173
+ (0, vitest_1.expect)((0, object_utils_mjs_1.merge)({}, base)).toEqual({ a: 1, b: 2 });
174
+ });
175
+ (0, vitest_1.it)('should handle null values', function () {
176
+ var base = { a: { b: 2 }, c: 3 };
177
+ var updates = { a: null, c: null };
178
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
179
+ (0, vitest_1.expect)(merged).toEqual({ a: null, c: null });
180
+ });
181
+ (0, vitest_1.it)('should replace arrays, not merge them', function () {
182
+ var base = { arr: [1, 2, 3], other: 'value' };
183
+ var updates = { arr: [4, 5] };
184
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
185
+ (0, vitest_1.expect)(merged).toEqual({ arr: [4, 5], other: 'value' });
186
+ });
187
+ (0, vitest_1.it)('should ignore undefined values in source', function () {
188
+ var base = { a: 1, b: 2, c: 3 };
189
+ var updates = { a: undefined, b: 4, d: undefined };
190
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
191
+ (0, vitest_1.expect)(merged).toEqual({ a: 1, b: 4, c: 3 });
192
+ });
193
+ (0, vitest_1.it)('should handle deep nesting', function () {
194
+ var defaults = {
195
+ server: { port: 3000, host: 'localhost' },
196
+ database: { pool: { min: 2, max: 10 } },
197
+ logging: { level: 'info' }
198
+ };
199
+ var userConfig = {
200
+ server: { port: 8080 },
201
+ database: { pool: { max: 20 } }
202
+ };
203
+ var finalConfig = (0, object_utils_mjs_1.merge)(defaults, userConfig);
204
+ (0, vitest_1.expect)(finalConfig).toEqual({
205
+ server: { port: 8080, host: 'localhost' },
206
+ database: { pool: { min: 2, max: 20 } },
207
+ logging: { level: 'info' }
208
+ });
209
+ });
210
+ (0, vitest_1.it)('should handle nested state updates', function () {
211
+ var state = {
212
+ user: { id: 1, preferences: { theme: 'light', lang: 'en' } },
213
+ app: { version: '1.0.0' }
214
+ };
215
+ var updates = {
216
+ user: { preferences: { theme: 'dark' } }
217
+ };
218
+ var newState = (0, object_utils_mjs_1.merge)(state, updates);
219
+ (0, vitest_1.expect)(newState).toEqual({
220
+ user: { id: 1, preferences: { theme: 'dark', lang: 'en' } },
221
+ app: { version: '1.0.0' }
222
+ });
223
+ });
224
+ (0, vitest_1.it)('should create new objects during merge', function () {
225
+ var base = { a: { b: 1 } };
226
+ var updates = { a: { c: 2 } };
227
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
228
+ // Verify immutability
229
+ (0, vitest_1.expect)(merged).not.toBe(base);
230
+ (0, vitest_1.expect)(merged.a).not.toBe(base.a);
231
+ (0, vitest_1.expect)(base.a).toEqual({ b: 1 }); // original unchanged
232
+ });
233
+ (0, vitest_1.it)('should handle missing nested objects', function () {
234
+ var base = { a: 1 };
235
+ var updates = { b: { c: { d: 2 } } };
236
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
237
+ (0, vitest_1.expect)(merged).toEqual({ a: 1, b: { c: { d: 2 } } });
238
+ });
239
+ (0, vitest_1.it)('should handle Date objects', function () {
240
+ var date1 = new Date('2024-01-01');
241
+ var date2 = new Date('2024-02-01');
242
+ var base = { date: date1, other: 'value' };
243
+ var updates = { date: date2 };
244
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
245
+ (0, vitest_1.expect)(merged).toEqual({ date: date2, other: 'value' });
246
+ (0, vitest_1.expect)(merged.date).toBe(date2); // Date replaced, not merged
247
+ });
248
+ (0, vitest_1.it)('should handle complex nested structures', function () {
249
+ var base = {
250
+ level1: {
251
+ level2: {
252
+ level3: {
253
+ value: 'original',
254
+ keep: 'this'
255
+ }
256
+ },
257
+ sibling: 'value'
258
+ }
259
+ };
260
+ var updates = {
261
+ level1: {
262
+ level2: {
263
+ level3: {
264
+ value: 'updated',
265
+ new: 'field'
266
+ }
267
+ }
268
+ }
269
+ };
270
+ var merged = (0, object_utils_mjs_1.merge)(base, updates);
271
+ (0, vitest_1.expect)(merged).toEqual({
272
+ level1: {
273
+ level2: {
274
+ level3: {
275
+ value: 'updated',
276
+ keep: 'this',
277
+ new: 'field'
278
+ }
279
+ },
280
+ sibling: 'value'
281
+ }
282
+ });
283
+ });
284
+ });
285
+ });
286
+ //# sourceMappingURL=object-utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-utils.test.js","sourceRoot":"","sources":["../src/object-utils.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=option-additions.test.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-additions.test.d.mts","sourceRoot":"","sources":["../src/option-additions.test.mts"],"names":[],"mappings":""}